Timeline



Mar 5, 2012:

11:59 PM Changeset in webkit [109870] by Philippe Normand
  • 4 edits in trunk/Source/WebCore

WebAudio JSC-related fixes
https://bugs.webkit.org/show_bug.cgi?id=80299

Reviewed by Adam Barth.

  • bindings/js/JSAudioContextCustom.cpp:

(WebCore::JSAudioContextConstructor::constructJSAudioContext):
Wrap the audio context in a DOM wrapper.

  • webaudio/AudioContext.idl: No need to protect EventTarget by V8

guards, I think.

  • webaudio/JavaScriptAudioNode.idl: Ditto.
11:40 PM Changeset in webkit [109869] by barraclough@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed windows build fix pt 1.

11:35 PM Changeset in webkit [109868] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip new crashing tests,
because crashes aren't bugs but features. :)

  • platform/qt-5.0-wk2/Skipped:
11:31 PM Changeset in webkit [109867] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk

Element not fully repainted after application and removal of transform
https://bugs.webkit.org/show_bug.cgi?id=61338

Source/WebCore:

Patch by Kishore Bolisetty <kbolisetty@innominds.com> on 2012-03-05
Reviewed by Simon Fraser.
RenderLayer is created and removed when a transform is applied and removed to element.
To render the element properly after removal of transform on it, preferred widths and dimensions of
the element and its containing block needs to be recalculated.

Test: fast/repaint/transform-rotate-and-remove.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore):
(WebCore::RenderBoxModelObject::styleWillChange):
(WebCore::RenderBoxModelObject::styleDidChange):

  • rendering/RenderBoxModelObject.h:

(RenderBoxModelObject):

LayoutTests:

Patch by Kishore Bolisetty <kbolisetty@innominds.com> on 2012-03-05
Reviewed by Simon Fraser.
Test to remove the transform property of an element upon onload event.

  • fast/repaint/transform-rotate-and-remove.html: Added.
  • platform/chromium-linux/fast/repaint/transform-rotate-and-remove-expected.png: Added.
  • platform/chromium-linux/fast/repaint/transform-rotate-and-remove-expected.txt: Added.
11:23 PM Changeset in webkit [109866] by barraclough@apple.com
  • 56 edits in trunk

putByIndex should throw in strict mode
https://bugs.webkit.org/show_bug.cgi?id=80335

Reviewed by Filip Pizlo.

Make the MethodTable PutByIndex trap take a boolean 'shouldThrow' parameter.

Source/JavaScriptCore:

This is a largely mechanical change, simply adding an extra parameter to a number
of functions. Some call sites need perform additional exception checks, and
operationPutByValBeyondArrayBounds needs to know whether it is strict or not.

This patch doesn't fix a missing throw from some cases of shift/unshift (this is
an existing bug), I'll follow up with a third patch to handle that.

  • API/JSObjectRef.cpp:

(JSObjectSetPropertyAtIndex):

  • JSCTypedArrayStubs.h:

(JSC):

  • dfg/DFGOperations.cpp:

(JSC::DFG::putByVal):

  • dfg/DFGOperations.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • jsc.cpp:

(GlobalObject::finishCreation):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • runtime/Arguments.cpp:

(JSC::Arguments::putByIndex):

  • runtime/Arguments.h:

(Arguments):

  • runtime/ArrayPrototype.cpp:

(JSC::arrayProtoFuncPush):
(JSC::arrayProtoFuncReverse):
(JSC::arrayProtoFuncShift):
(JSC::arrayProtoFuncSort):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):

  • runtime/ClassInfo.h:

(MethodTable):

  • runtime/JSArray.cpp:

(JSC::SparseArrayValueMap::put):
(JSC::JSArray::put):
(JSC::JSArray::putByIndex):
(JSC::JSArray::putByIndexBeyondVectorLength):
(JSC::JSArray::push):
(JSC::JSArray::shiftCount):
(JSC::JSArray::unshiftCount):

  • runtime/JSArray.h:

(SparseArrayValueMap):
(JSArray):

  • runtime/JSByteArray.cpp:

(JSC::JSByteArray::putByIndex):

  • runtime/JSByteArray.h:

(JSByteArray):

  • runtime/JSCell.cpp:

(JSC::JSCell::putByIndex):

  • runtime/JSCell.h:

(JSCell):

  • runtime/JSNotAnObject.cpp:

(JSC::JSNotAnObject::putByIndex):

  • runtime/JSNotAnObject.h:

(JSNotAnObject):

  • runtime/JSONObject.cpp:

(JSC::Walker::walk):

  • runtime/JSObject.cpp:

(JSC::JSObject::putByIndex):

  • runtime/JSObject.h:

(JSC::JSValue::putByIndex):

  • runtime/RegExpConstructor.cpp:

(JSC::RegExpMatchesArray::fillArrayInstance):

  • runtime/RegExpMatchesArray.h:

(JSC::RegExpMatchesArray::putByIndex):

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncSplit):

Source/WebCore:

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneDeserializer::putProperty):

  • bindings/objc/WebScriptObject.mm:

(-[WebScriptObject setWebScriptValueAtIndex:value:]):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

  • bridge/NP_jsobject.cpp:

(_NPN_SetProperty):

  • bridge/jni/jni_jsobject.mm:

(JavaJSObject::setSlot):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::putByIndex):

  • bridge/runtime_array.h:

(RuntimeArray):

Source/WebKit/mac:

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::setProperty):

Source/WebKit2:

  • WebProcess/Plugins/Netscape/NPJSObject.cpp:

(WebKit::NPJSObject::setProperty):

LayoutTests:

  • fast/js/Object-defineProperty-expected.txt:
  • fast/js/mozilla/strict/15.4.4.12-expected.txt:
  • fast/js/mozilla/strict/15.4.4.13-expected.txt:
  • fast/js/mozilla/strict/15.4.4.8-expected.txt:
  • fast/js/mozilla/strict/15.4.4.9-expected.txt:
  • fast/js/mozilla/strict/15.5.5.2-expected.txt:
  • fast/js/mozilla/strict/8.12.5-expected.txt:
  • fast/js/preventExtensions-expected.txt:
  • fast/js/primitive-property-access-edge-cases-expected.txt:
    • Checking in passing test results.
  • fast/js/script-tests/Object-defineProperty.js:
    • Added test cases for putting to numeric properties where property is read-only, length is read-only, or property is accessor with missing set function.
  • fast/js/script-tests/preventExtensions.js:
    • Added test case, putting numeric property to non-extensible array.
  • fast/js/script-tests/primitive-property-access-edge-cases.js:
    • Enabled test cases for putting numeric properties to primitive strings.
11:02 PM Changeset in webkit [109865] by yuqiang.xian@intel.com
  • 2 edits in trunk/Source/JavaScriptCore

PredictNone is incorrectly treated as isDoublePrediction
https://bugs.webkit.org/show_bug.cgi?id=80365

Reviewed by Filip Pizlo.

Also it is incorrectly treated as isFixedIndexedStorageObjectPrediction.

  • bytecode/PredictedType.h:

(JSC::isFixedIndexedStorageObjectPrediction):
(JSC::isDoublePrediction):

10:59 PM Changeset in webkit [109864] by shinyak@chromium.org
  • 3 edits in trunk/Source/WebCore

InsertionPoint::attach should be consistent with Element.
https://bugs.webkit.org/show_bug.cgi?id=80373

Reviewed by Hajime Morita.

This patch is preparation for coming <shadow> patches.

InsertionPoint used to attach fallback elements before attaching distributed elements.
To be consistent with Element::attach behavior, attaching distributed elements first is
natural, because Element attaches a shadow tree first.

Also, this patch extracts a few methods form InsretionPoint::attach() and detach()
to keep code clean. They will become messy without this refactoring when adding
<shadow> patch.

No new tests. Should be covered by existing tests.

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::attach):
(WebCore::InsertionPoint::detach):
(WebCore::InsertionPoint::distributeHostChildren):
(WebCore):
(WebCore::InsertionPoint::clearDistribution):
(WebCore::InsertionPoint::attachDistributedNode):

  • html/shadow/InsertionPoint.h:

(InsertionPoint):

10:54 PM Changeset in webkit [109863] by fpizlo@apple.com
  • 16 edits in trunk/Source/JavaScriptCore

The LLInt should work even when the JIT is disabled
https://bugs.webkit.org/show_bug.cgi?id=80340
<rdar://problem/10922235>

Reviewed by Gavin Barraclough.

  • assembler/MacroAssemblerCodeRef.h:

(JSC::MacroAssemblerCodePtr::createLLIntCodePtr):
(MacroAssemblerCodeRef):
(JSC::MacroAssemblerCodeRef::createLLIntCodeRef):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::initialize):
(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):

  • jit/JIT.h:

(JSC::JIT::compileCTINativeCall):

  • jit/JITStubs.h:

(JSC::JITThunks::ctiNativeCall):
(JSC::JITThunks::ctiNativeConstruct):

  • llint/LLIntEntrypoints.cpp:

(JSC::LLInt::getFunctionEntrypoint):
(JSC::LLInt::getEvalEntrypoint):
(JSC::LLInt::getProgramEntrypoint):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(LLInt):

  • llint/LLIntSlowPaths.h:

(LLInt):

  • llint/LowLevelInterpreter.h:
  • llint/LowLevelInterpreter32_64.asm:
  • runtime/Executable.h:

(NativeExecutable):
(JSC::NativeExecutable::create):
(JSC::NativeExecutable::finishCreation):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/Options.cpp:

(Options):
(JSC::Options::parse):
(JSC::Options::initializeOptions):

  • runtime/Options.h:

(Options):

  • wtf/Platform.h:
10:31 PM Changeset in webkit [109862] by Csaba Osztrogonác
  • 6 edits
    2 deletes in trunk/Tools

Unreviewed, rolling out r109733.
http://trac.webkit.org/changeset/109733
https://bugs.webkit.org/show_bug.cgi?id=80378

It broke Qt5 build system (Requested by Ossy on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-03-05

  • Tools.pro:
  • qmake/config.tests/gccdepends/empty.cpp: Removed.
  • qmake/config.tests/gccdepends/gccdepends.pro: Removed.
  • qmake/mkspecs/features/default_pre.prf:
  • qmake/mkspecs/features/features.prf:
  • qmake/mkspecs/features/unix/default_pre.prf:
  • qmake/sync.profile:
10:28 PM WikiStart edited by eric@webkit.org
Add a page about the EWS bots. (diff)
10:21 PM Changeset in webkit [109861] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Attempt to fix a number of GTK tests.

  • GNUmakefile.list.am:
10:16 PM Changeset in webkit [109860] by Joseph Pecoraro
  • 21 edits in trunk/Source

Unreviewed rollout of r109858 for restructuring.

10:11 PM Changeset in webkit [109859] by yuqiang.xian@intel.com
  • 2 edits in trunk/Source/JavaScriptCore

Checks for dead variables are not sufficient when fixing the expected
values in DFG OSR entry
https://bugs.webkit.org/show_bug.cgi?id=80371

Reviewed by Filip Pizlo.

A dead variable should be identified when there's no node referencing it.
But we currently failed to catch the case where there are some nodes
referencing a variable but those nodes are actually not referenced by
others so will be ignored in code generation. In such case we should
also consider that variable to be a dead variable in the block and fix
the expected values.
This is performance neutral on SunSpider, V8 and Kraken.

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::noticeOSREntry):

10:03 PM Changeset in webkit [109858] by Joseph Pecoraro
  • 21 edits in trunk/Source

<http://webkit.org/b/78575> Web Inspector: Hide dock button when not allowed to dock

Source/WebCore:

There are times when an undocked inspector frontend is not allowed to
attach to the main window. We can remove the dock button in those cases.

Reviewed by Timothy Hatcher.

No new tests. This functionality is port specific right now.

  • page/FrameView.cpp:

(WebCore::FrameView::performPostLayoutTasks):
When the main frame is resized we let the inspector frontend client
update its docked availability.

  • WebCore.exp.in:
  • inspector/InspectorInstrumentation.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didResizeMainFrameImpl):
(WebCore::InspectorInstrumentation::didResizeMainFrame):

  • inspector/InspectorClient.h:

(WebCore::InspectorClient::updateDockingAvailability):

  • inspector/InspectorController.h:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::resume):
(WebCore::InspectorController::updateDockingAvailability):
When the main frame is resized call up to the InspectorClient to let
it update docking availability of the inspector frontend.

  • inspector/InspectorFrontendClient.h:
  • inspector/InspectorFrontendClientLocal.h:
  • inspector/InspectorFrontendClientLocal.cpp:

(WebCore::InspectorFrontendClientLocal::frontendLoaded):
(WebCore::InspectorFrontendClientLocal::setDockingUnavailable):
On ports where the inspector frontend client is local, provide a
setDockingUnavailable InspectorFrontendAPI to update the docking state.
Automatically update availablity when the frontend completes loading.

  • inspector/front-end/InspectorFrontendAPI.js:

(InspectorFrontendAPI.setDockingUnavailable):

  • inspector/front-end/inspector.js:

(WebInspector._createGlobalStatusBarItems):
(WebInspector.setAttachedWindow):
(WebInspector.setDockingUnavailable):
(WebInspector.updateDockToggleButtonVisibility):
Update the dock button's visibility when its created, when the attached
state changes, when get a frontend API notification that we cannot attach.

Source/WebKit/mac:

  • WebCoreSupport/WebInspectorClient.h:

(WebInspectorClient):

  • WebCoreSupport/WebInspectorClient.mm:

(WebInspectorClient::updateDockingAvailability):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::updateDockingAvailability):

  • WebProcess/WebCoreSupport/WebInspectorClient.h:
  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::updateDockingAvailability):

  • WebProcess/WebPage/WebInspector.h:
9:26 PM Changeset in webkit [109857] by Lucas Forschler
  • 2 edits in tags/Safari-536.2.1/Source/WebCore

Merged r109847.

9:24 PM Changeset in webkit [109856] by Lucas Forschler
  • 10 edits in tags/Safari-536.2.1/Source

Merged r109843.

9:23 PM Changeset in webkit [109855] by Lucas Forschler
  • 7 edits in tags/Safari-536.2.1/Source

Merged r109812.

9:20 PM Changeset in webkit [109854] by Lucas Forschler
  • 6 edits in tags/Safari-536.2.1/Source

Merged r109801.

9:19 PM Changeset in webkit [109853] by Lucas Forschler
  • 12 edits in tags/Safari-536.2.1/Source/WebCore

Merged r109788.

9:15 PM Changeset in webkit [109852] by Lucas Forschler
  • 6 edits
    4 copies in tags/Safari-536.2.1

Merged r109594.

9:13 PM Changeset in webkit [109851] by enne@google.com
  • 7 edits
    4 adds in trunk

Compositing overlap testing can throw layers into compositing when they should not be.
https://bugs.webkit.org/show_bug.cgi?id=50192

Reviewed by Simon Fraser.

Source/WebCore:

The previous overlap map behavior was that a non-composited query
layer would become composited due to overlap if and only if the query
layer's absolute bounds overlapped the absolute bounds of some other
layer which:

  • draws before the query layer
  • is or has a compositing ancestor

This behavior, while correct, was too permissive in throwing layers
into compositing, causing many layers to get their own backing when
they could have just gone into their compositing ancestor's backing.

The correct logic is that non-composited query layer needs to be
composited due to overlap if and only if the query layer's absolute
bounds overlap the absolute bounds of some other layer which:

  • draws before the query layer
  • has a different compositing ancestor than the query layer
  • is or has a compositing ancestor that is a descendent of the query layer's compositing ancestor

This patch changes the semantics of the overlap map to enable this
behavior.

Rather than having one global overlap map, there is now a stack of
overlap maps. New (empty) overlap maps are pushed onto the stack
whenever a layer becomes a compositing ancestor and popped after all
of the compositing requirements for that layer's children have been
computed.

The compositing ancestor and all of its non-composited children of a
compositing ancestor do not get considered for overlap until their
composited ancestor has been popped off the stack. If a compositing
ancestor has a compositing subtree, then any descendents of that
compositing ancestor that draw after that subtree will consider
everything in the compositing subtree for overlap.

Test: compositing/layer-creation/stacking-context-overlap.html

  • platform/graphics/Region.cpp:

(WebCore::Region::intersects):
(WebCore):

  • platform/graphics/Region.h:

(Region):

  • rendering/RenderLayerCompositor.cpp:

(RenderLayerCompositor::OverlapMap):
(WebCore::RenderLayerCompositor::OverlapMap::OverlapMap):
(WebCore::RenderLayerCompositor::OverlapMap::add):
(WebCore::RenderLayerCompositor::OverlapMap::contains):
(WebCore::RenderLayerCompositor::OverlapMap::overlapsLayers):
(WebCore::RenderLayerCompositor::OverlapMap::isEmpty):
(WebCore::RenderLayerCompositor::OverlapMap::popCompositingContainer):
(WebCore::RenderLayerCompositor::OverlapMap::pushCompositingContainer):
(WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):

  • rendering/RenderLayerCompositor.h:

(RenderLayerCompositor):

LayoutTests:

  • compositing/layer-creation/stacking-context-overlap-expected.txt: Added.
  • compositing/layer-creation/stacking-context-overlap.html: Added.
  • compositing/layer-creation/stacking-context-overlap-nested-expected.txt: Added.
  • compositing/layer-creation/stacking-context-overlap-nested.html: Added.
  • platform/chromium/test_expectations.txt:
9:09 PM Changeset in webkit [109850] by Lucas Forschler
  • 2 edits in tags/Safari-536.2.1/Source/WebCore

Merged r109486.

9:07 PM Changeset in webkit [109849] by Lucas Forschler
  • 4 edits in tags/Safari-536.2.1/Source

Versioning.

9:04 PM Changeset in webkit [109848] by Lucas Forschler
  • 2 edits in tags/Safari-536.2.1/Source/WebCore

Merged r109379.

8:57 PM Changeset in webkit [109847] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Address review comments from https://bugs.webkit.org/show_bug.cgi?id=80368

  • platform/graphics/ca/mac/TileCache.mm:

(WebCore::TileCache::setNeedsDisplayInRect):

8:54 PM Changeset in webkit [109846] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

[Forms] HTMLFieldSetForms.idl doesn't have type attribute.
https://bugs.webkit.org/show_bug.cgi?id=80109

Patch by Yoshifumi Inoue <yosin@chromium.org> on 2012-03-05
Reviewed by Hajime Morita.

Source/WebCore:

Test: fast/forms/fieldset/fieldset-type.html

  • html/HTMLFieldSetElement.idl: Add attribute "type"

LayoutTests:

  • fast/forms/fieldset/fieldset-type-expected.txt: Added.
  • fast/forms/fieldset/fieldset-type.html: Added.
8:54 PM Changeset in webkit [109845] by oliver@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Fix Qt build.

8:51 PM Changeset in webkit [109844] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Fix build.

  • platform/graphics/ca/mac/TileCache.mm:

(WebCore::TileCache::setScale):

8:33 PM Changeset in webkit [109843] by andersca@apple.com
  • 10 edits in trunk/Source

pinch-to-zoom and double-tap flicker when using the new scrolling model
https://bugs.webkit.org/show_bug.cgi?id=80368
<rdar://problem/10866221>

Reviewed by Sam Weinig.

Source/WebCore:

In order to work better with zooming, make the tile cache undo the scale transformation
and handle the scaling manually. This avoids creating huge tile backing stores when zoomed in.

  • platform/graphics/ca/mac/TileCache.mm:

(WebCore::TileCache::TileCache):
Initialize m_scale to 1.

(WebCore::TileCache::setNeedsDisplayInRect):
Scale the given rect appropriately.

(WebCore::TileCache::drawLayer):
Apply a scale context transform.

(WebCore::TileCache::setScale):
No longer set the contents scale. Instead, update the scale and revalidate the tiles.

(WebCore::TileCache::revalidateTiles):
Return early if the bounds are empty. This avoids showing a single tile if that happens due to a race condition.

(WebCore::TileCache::getTileIndexRangeForRect):
Apply the scale to the bounds.

(WebCore::TileCache::createTileLayer):
Don't set the contents scale.

  • platform/graphics/ca/mac/WebTileCacheLayer.mm:

(-[WebTileCacheLayer setContentsScale:]):
Call TileCache::setScale.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateCompositedBounds):
Make sure to give the tile cache layer sane composited bounds, even if the page has absolutely positioned
elements that are outside of the page.

Source/WebKit2:

Add a way for drawing areas to respond to callback based force repaint requests asynchronously.
This is currently needed for the tiled drawing area when there might be outstanding scroll updates
that are sent from the scrolling thread to the main thread and we need to ensure that they're processed
before sending a message back.

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::forceRepaintAsync):
Add new member function.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::forceRepaint):
Try forceRepaintAsync first.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::forceRepaintAndSendMessage):
Force the repaint and send the message.

(WebKit::dispatchBackToMainThread):
Dispatch a call to forceRepaintAndSendMessage to the main thread.

(WebKit::TiledCoreAnimationDrawingArea::forceRepaintAsync):
Dispatch a function on the scrolling thread. Its sole purpose is to dispatch a function back to the
main thread, ensuring that all previously dispatched functions have been executed.

8:32 PM Changeset in webkit [109842] by Lucas Forschler
  • 1 copy in tags/Safari-536.2.1

New Tag.

8:24 PM Changeset in webkit [109841] by leo.yang@torchmobile.com.cn
  • 2 edits in trunk/Source/WebCore

GraphicsContext3D.h should include RefCounted.h explicitly
https://bugs.webkit.org/show_bug.cgi?id=80251

Reviewed by Rob Buis.

GraphicsContext3D.h was using RefCounted but including RefCounted.h indirectly
through GraphicsLayer.h through Animation.h. However Animation.h is included
by GraphicsLayer.h only when ACCELERATED_COMPOSITING is on. For some configurations
that don't use ACCELERATED_COMPOSITING but use GraphicsContext3D, like the
BlackBerry x86 configuration, the indirect inclusion will fail.

This patch is adding explicit inclusion of RefCounted.h to avoid that kind of
problem.

  • platform/graphics/GraphicsContext3D.h:
8:20 PM Changeset in webkit [109840] by bashi@chromium.org
  • 6 edits
    4 adds in trunk

[WebSocket] Should raise SYNTAX_ERR when message contains unpaired surrogates
https://bugs.webkit.org/show_bug.cgi?id=80103

Reviewed by Kent Tamura.

Source/WebCore:

Add UTF8 validation checks for WebSocket message and close reason.

Tests: http/tests/websocket/tests/hybi/unpaired-surrogates-in-close-reason.html

http/tests/websocket/tests/hybi/unpaired-surrogates-in-message.html

  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::send): Raise SYNTAX_ERR if the message is invalid.
(WebCore::WebSocket::close):Raise SYNTAX_ERR if the reason is invalid.

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::send): Check whether message is a valid UTF8 string.

LayoutTests:

Added tests for unpaired surrogates check for WebSocket message and close reason.
Updated two expectations for close() tests because further error message is added.

  • http/tests/websocket/tests/hybi/close-expected.txt: Updated.
  • http/tests/websocket/tests/hybi/unpaired-surrogates-in-close-reason-expected.txt: Added.
  • http/tests/websocket/tests/hybi/unpaired-surrogates-in-close-reason.html: Added.
  • http/tests/websocket/tests/hybi/unpaired-surrogates-in-message-expected.txt: Added.
  • http/tests/websocket/tests/hybi/unpaired-surrogates-in-message.html: Added.
  • http/tests/websocket/tests/hybi/workers/close-expected.txt: Updated.
8:15 PM Changeset in webkit [109839] by kbr@google.com
  • 10 edits in trunk/Source

[chromium] Notify CCLayerImpl tree of context loss and restoration
https://bugs.webkit.org/show_bug.cgi?id=80339

Reviewed by James Robinson.

Source/WebCore:

Tested by manually killing GPU process while playing Flash video.
Video continues to play after compositor restores its context.

  • platform/graphics/chromium/cc/CCLayerImpl.cpp:

(WebCore::CCLayerImpl::didLoseAndRecreateGraphicsContext):
(WebCore):

  • platform/graphics/chromium/cc/CCLayerImpl.h:

(CCLayerImpl):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::sendContextLostAndRestoredNotification):
(WebCore):
(WebCore::CCLayerTreeHostImpl::sendContextLostAndRestoredNotificationRecursive):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

(CCLayerTreeHostImpl):

  • platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:

(WebCore::CCPluginLayerImpl::didLoseAndRecreateGraphicsContext):
(WebCore):

  • platform/graphics/chromium/cc/CCPluginLayerImpl.h:

(CCPluginLayerImpl):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::recreateContext):

Source/WebKit/chromium:

Unit test for notification of context loss and restoration.

  • tests/CCLayerTreeHostImplTest.cpp:

(WebKit):
(ContextLostNotificationCheckLayer):
(WebKit::ContextLostNotificationCheckLayer::create):
(WebKit::ContextLostNotificationCheckLayer::didLoseAndRecreateGraphicsContext):
(WebKit::ContextLostNotificationCheckLayer::didLoseAndRecreateGraphicsContextCalled):
(WebKit::ContextLostNotificationCheckLayer::ContextLostNotificationCheckLayer):
(WebKit::TEST_F):

8:02 PM Changeset in webkit [109838] by commit-queue@webkit.org
  • 12 edits in trunk/Source

Change the argument orders to match OpenGL's in GraphicsContext3D functions
https://bugs.webkit.org/show_bug.cgi?id=80120

Patch by Changhun Kang <temoochin@company100.net> on 2012-03-05
Reviewed by Kenneth Russell.

No new tests because this patch just change the order of arguments.

Source/WebCore:

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::uniform1fv):
(WebCore::WebGLRenderingContext::uniform1iv):
(WebCore::WebGLRenderingContext::uniform2fv):
(WebCore::WebGLRenderingContext::uniform2iv):
(WebCore::WebGLRenderingContext::uniform3fv):
(WebCore::WebGLRenderingContext::uniform3iv):
(WebCore::WebGLRenderingContext::uniform4fv):
(WebCore::WebGLRenderingContext::uniform4iv):
(WebCore::WebGLRenderingContext::uniformMatrix2fv):
(WebCore::WebGLRenderingContext::uniformMatrix3fv):
(WebCore::WebGLRenderingContext::uniformMatrix4fv):

  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawDebugBorderQuad):
(WebCore::LayerRendererChromium::drawTileQuad):
(WebCore::LayerRendererChromium::drawYUV):
(WebCore::LayerRendererChromium::drawStreamTexture):
(WebCore::LayerRendererChromium::drawTexturedQuad):

  • platform/graphics/chromium/cc/CCRenderSurface.cpp:

(WebCore::CCRenderSurface::drawSurface):

  • platform/graphics/efl/GraphicsContext3DEfl.cpp:

(WebCore::GraphicsContext3D::uniform1fv):
(WebCore::GraphicsContext3D::uniform1iv):
(WebCore::GraphicsContext3D::uniform2fv):
(WebCore::GraphicsContext3D::uniform2iv):
(WebCore::GraphicsContext3D::uniform3fv):
(WebCore::GraphicsContext3D::uniform3iv):
(WebCore::GraphicsContext3D::uniform4fv):
(WebCore::GraphicsContext3D::uniform4iv):
(WebCore::GraphicsContext3D::uniformMatrix2fv):
(WebCore::GraphicsContext3D::uniformMatrix3fv):
(WebCore::GraphicsContext3D::uniformMatrix4fv):

  • platform/graphics/filters/FECustomFilter.cpp:

(WebCore::FECustomFilter::bindProgramAndBuffers):

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::uniform1fv):
(WebCore::GraphicsContext3D::uniform2fv):
(WebCore::GraphicsContext3D::uniform3fv):
(WebCore::GraphicsContext3D::uniform4fv):
(WebCore::GraphicsContext3D::uniform1iv):
(WebCore::GraphicsContext3D::uniform2iv):
(WebCore::GraphicsContext3D::uniform3iv):
(WebCore::GraphicsContext3D::uniform4iv):
(WebCore::GraphicsContext3D::uniformMatrix2fv):
(WebCore::GraphicsContext3D::uniformMatrix3fv):
(WebCore::GraphicsContext3D::uniformMatrix4fv):

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3D::uniform1fv):
(WebCore::GraphicsContext3D::uniform2fv):
(WebCore::GraphicsContext3D::uniform3fv):
(WebCore::GraphicsContext3D::uniform4fv):
(WebCore::GraphicsContext3D::uniform1iv):
(WebCore::GraphicsContext3D::uniform2iv):
(WebCore::GraphicsContext3D::uniform3iv):
(WebCore::GraphicsContext3D::uniform4iv):
(WebCore::GraphicsContext3D::uniformMatrix2fv):
(WebCore::GraphicsContext3D::uniformMatrix3fv):
(WebCore::GraphicsContext3D::uniformMatrix4fv):

Source/WebKit/chromium:

  • src/GraphicsContext3DChromium.cpp:

(WebCore::GraphicsContext3DPrivate::uniform1fv):
(WebCore::GraphicsContext3DPrivate::uniform1iv):
(WebCore::GraphicsContext3DPrivate::uniform2fv):
(WebCore::GraphicsContext3DPrivate::uniform2iv):
(WebCore::GraphicsContext3DPrivate::uniform3fv):
(WebCore::GraphicsContext3DPrivate::uniform3iv):
(WebCore::GraphicsContext3DPrivate::uniform4fv):
(WebCore::GraphicsContext3DPrivate::uniform4iv):
(WebCore::GraphicsContext3DPrivate::uniformMatrix2fv):
(WebCore::GraphicsContext3DPrivate::uniformMatrix3fv):
(WebCore::GraphicsContext3DPrivate::uniformMatrix4fv):
(WebCore):

  • src/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

7:37 PM Changeset in webkit [109837] by eric@webkit.org
  • 36 edits in trunk

Source/JavaScriptCore: Update JavaScriptCore files to use fully-qualified WTF include paths
https://bugs.webkit.org/show_bug.cgi?id=79960

Reviewed by Adam Barth.

This change does 5 small/related things:

  1. Updates JavaScriptCore.xcodeproj to install WTF headers into $BUILD/usr/local/include (WebCore, WebKit were already setup to look there, but JavaScriptCore.xcodeproj was not installing headers there.)
  2. Makes JavaScriptCore targets include $BUILD/usr/local/include in their header search path, as that's where the WTF headers will be installed.
  3. Similarly updates JavaScriptCore.vcproj/copy-files.cmd to copy WTF headers to PrivateHeaders/wtf/* in addition to the current behavior of flattening all headers to PrivateHeaders/*.h.
  4. Updates a bunch of JSC files to use #include <wtf/Foo.h> instead of #include "Foo.h" since soon the WTF headers will not be part of the JavaScriptCore Xcode project.
  5. Makes build-webkit build the WTF XCode project by default.
  • API/tests/JSNode.c:
  • API/tests/JSNodeList.c:
  • Configurations/Base.xcconfig:
  • assembler/MacroAssemblerCodeRef.h:
  • bytecompiler/BytecodeGenerator.h:
  • dfg/DFGOperations.cpp:
  • heap/GCAssertions.h:
  • heap/HandleHeap.h:
  • heap/HandleStack.h:
  • heap/MarkedSpace.h:
  • heap/PassWeak.h:
  • heap/Strong.h:
  • heap/Weak.h:
  • jit/HostCallReturnValue.cpp:
  • jit/JIT.cpp:
  • jit/JITStubs.cpp:
  • jit/ThunkGenerators.cpp:
  • parser/Lexer.cpp:
  • runtime/Completion.cpp:
  • runtime/Executable.cpp:
  • runtime/Identifier.h:
  • runtime/InitializeThreading.cpp:
  • runtime/JSDateMath.cpp:
  • runtime/JSGlobalObjectFunctions.cpp:
  • runtime/JSStringBuilder.h:
  • runtime/JSVariableObject.h:
  • runtime/NumberPrototype.cpp:
  • runtime/WriteBarrier.h:
  • tools/CodeProfile.cpp:
  • tools/TieredMMapArray.h:
  • yarr/YarrJIT.cpp:

Tools: Update JavaScriptCore files to use fully-qualified WTF include path
https://bugs.webkit.org/show_bug.cgi?id=79960

Reviewed by Adam Barth.

Build WTF/WTF.xcodeproj by default on Mac.

  • Scripts/build-webkit:
7:07 PM Changeset in webkit [109836] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

Source/WebCore: [Forms] HTMLFieldSetForms.idl doesn't have name attribute.
https://bugs.webkit.org/show_bug.cgi?id=80108

Patch by Yoshifumi Inoue <yosin@chromium.org> on 2012-03-05
Reviewed by Hajime Morita.

Test: fast/forms/fieldset/fieldset-name.html

  • html/HTMLFieldSetElement.idl: Add "name" attribute.

LayoutTests: [Forms] HTMLFieldSetForms.idl doesn't have name attribute.
https://bugs.webkit.org/show_bug.cgi?id=81008

Test read/write attribute "name" of fieldset element.

Patch by Yoshifumi Inoue <yosin@chromium.org> on 2012-03-05
Reviewed by Hajime Morita.

  • fast/forms/fieldset/fieldset-name-expected.txt: Added.
  • fast/forms/fieldset/fieldset-name.html: Added.
6:42 PM Changeset in webkit [109835] by leviw@chromium.org
  • 6 edits in trunk/Source/WebCore

Update usage of LayoutUnits in RenderBox
https://bugs.webkit.org/show_bug.cgi?id=80039

Reviewed by Julien Chaffraix.

Updating the usage of integers versus LayoutUnits in RenderBox to mirror the
subpixellayout branch. This reverts absoluteRects, intrinsicSize, and focusRingRects
methods to use integers, and flipForWritingMode functions to LayoutUnits.

No new tests. No change in behavior.

  • platform/graphics/FractionalLayoutRect.h:

(WebCore::FractionalLayoutRect::pixelSnappedX): Convenience methods that only calculate
the needed values. This requires less computation than pixelSnappedIntRect(r).x().
(WebCore::FractionalLayoutRect::pixelSnappedY): Ditto.
(WebCore::FractionalLayoutRect::pixelSnappedWidth): Ditto.
(WebCore::FractionalLayoutRect::pixelSnappedHeight): Ditto.
(WebCore::FractionalLayoutRect::pixelSnappedMaxX): Ditto.
(WebCore::FractionalLayoutRect::pixelSnappedMaxY): Ditto.
(FractionalLayoutRect):

  • platform/graphics/IntRect.h:

(IntRect):
(WebCore::IntRect::pixelSnappedX): Stub methods to allow us to use IntRects like we do
FractionalLayoutRects.
(WebCore::IntRect::pixelSnappedY): Ditto.
(WebCore::IntRect::pixelSnappedMaxX): Ditto.
(WebCore::IntRect::pixelSnappedMaxY): Ditto.
(WebCore::IntRect::pixelSnappedWidth): Ditto.
(WebCore::IntRect::pixelSnappedHeight): Ditto.

  • rendering/LayoutTypes.h:

(WebCore::pixelSnappedIntRect): Convenience method for building a pixelSnappedIntRect from
a LayoutPoint and LayoutSize without constructing an intermediate LayoutRect.
(WebCore):
(WebCore::snapSizeToPixel): Stub method for snapping a LayoutUnit representing a size to
its pixel value using its location.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::pixelSnappedClientWidth): Changing to actually call snapSizeToPixel.
(WebCore::RenderBox::pixelSnappedClientHeight): Ditto.
(WebCore::RenderBox::absoluteRects): Switching to return IntRects that represent the actual
rendered location on screen.
(WebCore::RenderBox::addFocusRingRects): Ditto.
(WebCore::RenderBox::paintFillLayer): One-liner switching an IntSize() to LayoutSize() to
avoid unnecessary conversion.
(WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats): Preparing for the conversion by
replacing 0 with zeroLayoutUnit.
(WebCore::RenderBox::positionLineBox): Preparing for conversion by replacing lroundf
with roundedLayoutUnit.
(WebCore::RenderBox::flipForWritingMode): Switching to use LayoutUnits.

  • rendering/RenderBox.h:

(RenderBox):
(WebCore::RenderBox::pixelSnappedBorderBoxRect): Convenience method.
(WebCore::RenderBox::borderBoundingBox): Converting to a pixelSnappedIntRect.
(WebCore::RenderBox::intrinsicSize): Intrinsic sizes should always be integers.

6:40 PM Changeset in webkit [109834] by oliver@apple.com
  • 22 edits in trunk/Source/JavaScriptCore

Add basic support for constant blinding to the JIT
https://bugs.webkit.org/show_bug.cgi?id=80354

Reviewed by Filip Pizlo.

This patch adds basic constant blinding support to the JIT, at the
MacroAssembler level. This means all JITs in JSC (Yarr, baseline, and DFG)
get constant blinding. Woo!

This patch only introduces blinding for Imm32, a later patch will do similar
for ImmPtr. In order to make misuse of Imm32 as a trusted type essentially
impossible, we make TrustedImm32 a private parent of Imm32 and add an explicit
accessor that's needed to access the actual value. This also means you cannot
accidentally pass an untrusted value to a function that does not perform
blinding.

To make everything work sensibly, this patch also corrects some code that was using
Imm32 when TrustedImm32 could be used, and refactors a few callers that use
untrusted immediates, so that they call slightly different varaints of the functions
that they used previously. This is largely necessary to deal with x86-32 not having
sufficient registers to handle the additional work required when we choose to blind
a constant.

  • assembler/AbstractMacroAssembler.h:

(JSC::AbstractMacroAssembler::Imm32::asTrustedImm32):
(Imm32):
(JSC::AbstractMacroAssembler::beginUninterruptedSequence):
(JSC::AbstractMacroAssembler::endUninterruptedSequence):
(JSC::AbstractMacroAssembler::AbstractMacroAssembler):
(AbstractMacroAssembler):
(JSC::AbstractMacroAssembler::inUninterruptedSequence):
(JSC::AbstractMacroAssembler::random):
(JSC::AbstractMacroAssembler::scratchRegisterForBlinding):
(JSC::AbstractMacroAssembler::shouldBlindForSpecificArch):

  • assembler/MacroAssembler.h:

(JSC::MacroAssembler::addressForPoke):
(MacroAssembler):
(JSC::MacroAssembler::poke):
(JSC::MacroAssembler::branchPtr):
(JSC::MacroAssembler::branch32):
(JSC::MacroAssembler::convertInt32ToDouble):
(JSC::MacroAssembler::shouldBlind):
(JSC::MacroAssembler::BlindedImm32::BlindedImm32):
(BlindedImm32):
(JSC::MacroAssembler::keyForConstant):
(JSC::MacroAssembler::xorBlindConstant):
(JSC::MacroAssembler::additionBlindedConstant):
(JSC::MacroAssembler::andBlindedConstant):
(JSC::MacroAssembler::orBlindedConstant):
(JSC::MacroAssembler::loadXorBlindedConstant):
(JSC::MacroAssembler::add32):
(JSC::MacroAssembler::addPtr):
(JSC::MacroAssembler::and32):
(JSC::MacroAssembler::andPtr):
(JSC::MacroAssembler::move):
(JSC::MacroAssembler::or32):
(JSC::MacroAssembler::store32):
(JSC::MacroAssembler::sub32):
(JSC::MacroAssembler::subPtr):
(JSC::MacroAssembler::xor32):
(JSC::MacroAssembler::branchAdd32):
(JSC::MacroAssembler::branchMul32):
(JSC::MacroAssembler::branchSub32):
(JSC::MacroAssembler::trustedImm32ForShift):
(JSC::MacroAssembler::lshift32):
(JSC::MacroAssembler::rshift32):
(JSC::MacroAssembler::urshift32):

  • assembler/MacroAssemblerARMv7.h:

(MacroAssemblerARMv7):
(JSC::MacroAssemblerARMv7::scratchRegisterForBlinding):
(JSC::MacroAssemblerARMv7::shouldBlindForSpecificArch):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::branchSubPtr):
(MacroAssemblerX86_64):
(JSC::MacroAssemblerX86_64::scratchRegisterForBlinding):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::compileBody):
(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileArithSub):
(JSC::DFG::SpeculativeJIT::compileStrictEqForConstant):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileDoubleCompare):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compileDoubleCompare):
(JSC::DFG::SpeculativeJIT::compile):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::privateCompile):

  • jit/JITArithmetic.cpp:

(JSC::JIT::compileBinaryArithOp):
(JSC::JIT::emit_op_add):
(JSC::JIT::emit_op_mul):
(JSC::JIT::emit_op_div):

  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emitAdd32Constant):
(JSC::JIT::emitSub32Constant):
(JSC::JIT::emitBinaryDoubleOp):
(JSC::JIT::emitSlow_op_mul):
(JSC::JIT::emit_op_div):

  • jit/JITCall.cpp:

(JSC::JIT::compileLoadVarargs):

  • jit/JITCall32_64.cpp:

(JSC::JIT::compileLoadVarargs):

  • jit/JITInlineMethods.h:

(JSC::JIT::updateTopCallFrame):
(JSC::JIT::emitValueProfilingSite):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emitSlow_op_jfalse):
(JSC::JIT::emitSlow_op_jtrue):

  • jit/JITStubCall.h:

(JITStubCall):
(JSC::JITStubCall::addArgument):

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::backtrack):

6:30 PM Changeset in webkit [109833] by abarth@webkit.org
  • 13 edits
    3 copies in trunk/Source/WebCore

WorkerContext shouldn't need to know about SQLDatabase
https://bugs.webkit.org/show_bug.cgi?id=80352

Reviewed by Eric Seidel.

This patch removes the SQLDatabase functions from WorkerContext in
preparation for moving the SQLDatabase code into a module. These
functions don't interact with the rest of WorkerContext.

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • storage/DOMWindowSQLDatabase.cpp:
  • storage/WorkerContextSQLDatabase.cpp: Added.

(WebCore):
(WebCore::WorkerContextSQLDatabase::openDatabase):
(WebCore::WorkerContextSQLDatabase::openDatabaseSync):

  • storage/WorkerContextSQLDatabase.h: Added.

(WebCore):
(WorkerContextSQLDatabase):
(WebCore::WorkerContextSQLDatabase::WorkerContextSQLDatabase):
(WebCore::WorkerContextSQLDatabase::~WorkerContextSQLDatabase):

  • storage/WorkerContextSQLDatabase.idl: Added.
  • workers/WorkerContext.cpp:

(WebCore):

  • workers/WorkerContext.h:

(WebCore):
(WorkerContext):

  • workers/WorkerContext.idl:
6:11 PM Changeset in webkit [109832] by bashi@chromium.org
  • 9 edits in trunk/Source/WebCore

[WebSocket] Introduce ThreadableWebSocketChannel::SendResult
https://bugs.webkit.org/show_bug.cgi?id=80356

Reviewed by Kent Tamura.

Introduced ThreadableWebSocketChannel::SendResult type so that
WebSocketChannel can pass the validation result.

No new test. No changes in behavior.

  • Modules/websockets/ThreadableWebSocketChannel.h: Added SendResult.
  • Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:

(WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
(WebCore::ThreadableWebSocketChannelClientWrapper::sendRequestResult): Use ThreadableWebSocketChannel::SendResult instead of bool.
(WebCore::ThreadableWebSocketChannelClientWrapper::setSendRequestResult): Ditto.

  • Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:

(ThreadableWebSocketChannelClientWrapper):

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool. Pass Cstring to enqueTextFrame instead of String.
(WebCore::WebSocketChannel::enqueueTextFrame): Ditto.
(WebCore::WebSocketChannel::processOutgoingFrameQueue): Ditto.

  • Modules/websockets/WebSocketChannel.h:

(WebSocketChannel):
(QueuedFrame): Changed the type of stringData from String to CString.

  • Modules/websockets/WorkerThreadableWebSocketChannel.cpp:

(WebCore::WorkerThreadableWebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool.
(WebCore::workerContextDidSend): Ditto.
(WebCore::WorkerThreadableWebSocketChannel::Peer::send): Ditto.
(WebCore::WorkerThreadableWebSocketChannel::Bridge::send): Ditto.

  • Modules/websockets/WorkerThreadableWebSocketChannel.h:

(WorkerThreadableWebSocketChannel): ditto.
(Bridge): Ditto.

6:04 PM Changeset in webkit [109831] by dpranke@chromium.org
  • 3 edits in trunk/Tools

There should be a way to disable optimizer in webkit-patch rebaseline-expectations
https://bugs.webkit.org/show_bug.cgi?id=69590

Reviewed by Ryosuke Niwa.

Adds a --no-optimize flag to webkit-patch rebaseline-expectations
to skip the 'optimize-expectations' step.

  • Scripts/webkitpy/tool/commands/rebaseline.py:

(RebaselineExpectations.init):
(RebaselineExpectations.execute):

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
5:56 PM Changeset in webkit [109830] by tony@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

add tests for multiline flexbox and flex-pack
https://bugs.webkit.org/show_bug.cgi?id=80342

Reviewed by Ojan Vafai.

  • css3/flexbox/multiline-pack-expected.txt: Added.
  • css3/flexbox/multiline-pack.html: Added.
5:51 PM Changeset in webkit [109829] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[JSC] Cache the CSSPropertyID in JSCSSStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=80250

Reviewed by Benjamin Poulain.

V8CSSStyleDeclaration caches the calculated CSSPropertyID.
Similarly, we can implement the cache in JSCSSStyleDeclaration.

In my local Mac environment, this optimization improves the performance
of CSS property getters by 35%, and the performance of CSS property setters
by 8%.

CSS property getter: for (var i = 0; i < 1000000; i++) span.style.fontWeight;
CSS property setter: for (var i = 0; i < 1000000; i++) span.style.fontWeight = "bold";

Tests: fast/dom/CSSStyleDeclaration/* (No change in test results)

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(CSSPropertyInfo):
(WebCore):
(WebCore::cssPropertyIDForJSCSSPropertyName):
(WebCore::JSCSSStyleDeclaration::nameGetter):
(WebCore::JSCSSStyleDeclaration::putDelegate):

5:41 PM Changeset in webkit [109828] by dgrogan@chromium.org
  • 4 edits
    2 adds in trunk/LayoutTests

Basic IndexedDB shared worker test
https://bugs.webkit.org/show_bug.cgi?id=80189

Reviewed by Tony Chang.

  • fast/js/resources/js-test-pre.js:

(startWorker.worker.port.onmessage):

  • platform/chromium/test_expectations.txt:
  • storage/indexeddb/basics-shared-workers-expected.txt: Added.
  • storage/indexeddb/basics-shared-workers.html: Added.
  • storage/indexeddb/resources/shared.js:

(.self.postMessage):
(.self.onconnect.self.postMessage):
(.self.onconnect):
(done):
(unexpectedErrorCallback):

5:38 PM Changeset in webkit [109827] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] WebOptionElement should inherit WebElement instead of WebFormControlElement
https://bugs.webkit.org/show_bug.cgi?id=80089

Change class hierarchy of WebOptionElement to match with specification.

Patch by Yoshifumi Inoue <yosin@chromium.org> on 2012-03-05
Reviewed by Darin Fisher.

  • public/WebOptionElement.h: Replace to WebElement from WebFormControlElement

(WebKit::WebOptionElement::WebOptionElement):
(WebKit::WebOptionElement::operator=):
(WebKit::WebOptionElement::assign):

  • src/WebOptionElement.cpp:

(WebKit::WebOptionElement::WebOptionElement):

5:35 PM Changeset in webkit [109826] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Can't type on some websites (plug-ins steal key events).
<rdar://problem/10892291>

When the plugin is disabled, it is necessary to reset _pluginComplexTextInputIdentifier
in order to return the correct input context. Failure to do so results in the inputContext
method to return the plugin input context instead of the context of the browser view.

Reviewed by Sam Weinig.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _setPluginComplexTextInputState:]):
(-[WKView _handlePluginComplexTextInputKeyDown:]):

5:33 PM Changeset in webkit [109825] by jsbell@chromium.org
  • 6 edits
    1 add in trunk/Source

IndexedDB: Handle LevelDB database corruption
https://bugs.webkit.org/show_bug.cgi?id=79413

Source/WebCore:

Add LevelDBDatabase::destroy() method so that clients can retry if open() fails.

Reviewed by Tony Chang.

Test: webkit_unit_tests --gtest_filter='LevelDBDatabaseTest.CorruptionTest'

  • Modules/indexeddb/IDBLevelDBBackingStore.cpp: Implement open/destroy/open strategy.

(WebCore::IDBLevelDBBackingStore::open):

  • platform/leveldb/LevelDBDatabase.cpp:

(WebCore::LevelDBDatabase::destroy):
(WebCore):

  • platform/leveldb/LevelDBDatabase.h:

(LevelDBDatabase):

Source/WebKit/chromium:

Reviewed by Tony Chang.

  • WebKit.gypi:
  • tests/LevelDBTest.cpp: Added.

(WebCore):
(SimpleComparator):
(WebCore::SimpleComparator::compare):
(WebCore::SimpleComparator::name):
(WebCore::encodeString):
(WebCore::TEST):

5:18 PM Changeset in webkit [109824] by barraclough@apple.com
  • 11 edits in trunk

putByIndex should throw in strict mode
https://bugs.webkit.org/show_bug.cgi?id=80335

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

We'll need to pass an additional parameter.

Part 1 - rename JSValue::put() for integer indices to JSValue::putByIndex()
to match the method in the MethodTable, make this take a parameter indicating
whether the put should throw. This fixes the cases where the base of the put
is a primitive.

  • dfg/DFGOperations.cpp:

(DFG):
(JSC::DFG::putByVal):
(JSC::DFG::operationPutByValInternal):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):
(JSC::Interpreter::privateExecute):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • runtime/JSObject.h:

(JSC::JSValue::putByIndex):

  • runtime/JSValue.cpp:

(JSC):

  • runtime/JSValue.h:

(JSValue):

LayoutTests:

  • fast/js/primitive-property-access-edge-cases-expected.txt:
  • fast/js/script-tests/primitive-property-access-edge-cases.js:

(checkNumericGet.Object.defineProperty):
(checkNumericSet.Object.defineProperty):
(checkNumericGetStrict.Object.defineProperty):
(checkNumericSetStrict.Object.defineProperty):
(checkNumericRead):
(checkNumericWrite):
(checkNumericReadStrict):
(checkNumericWriteStrict):

  • Added test cases.
5:18 PM Changeset in webkit [109823] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Enable context menu on android

For android, long press is converted into a right mouse down event
So we will use that to invoke the context menu
https://bugs.webkit.org/show_bug.cgi?id=80332

Patch by Min Qin <qinmin@google.com> on 2012-03-05
Reviewed by Adam Barth.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::mouseDown):

5:03 PM Changeset in webkit [109822] by leviw@chromium.org
  • 4 edits in branches/subpixellayout/Source/WebCore

Fixing an improper overloaded method in RenderThemeMac, cleaning up RenderBlock.cpp, and adding a size_t flavor of operator* in FractionalLayoutUnit for RenderBlock.

5:01 PM Changeset in webkit [109821] by rniwa@webkit.org
  • 4 edits in trunk

Perf-o-matic should memcache dashboard images
https://bugs.webkit.org/show_bug.cgi?id=80349

Reviewed by Eric Seidel.

Added DashboardImage.create and DashboardImage.get_image to encapsulate memcache.
Also replaced transaction in DashboardImage.set_cache by a single put since it duplicates
what put does by default.

Also removed redundant cache_* functions and merged them into handler code.

  • Websites/webkit-perf.appspot.com/controller.py:

(ManifestUpdateHandler.post):
(CachedManifestHandler.get):
(DashboardUpdateHandler.post):
(CachedDashboardHandler.get):
(RunsUpdateHandler):
(RunsUpdateHandler.post):
(RunsChartHandler):
(RunsChartHandler.post):
(DashboardImageHandler.get):

  • Websites/webkit-perf.appspot.com/models.py:

(PersistentCache.set_cache):
(DashboardImage):
(DashboardImage.create):
(DashboardImage.get_image):

  • Websites/webkit-perf.appspot.com/models_unittest.py:

(PersistentCacheTests.setUp):
(PersistentCacheTests.test_set_cache):
(PersistentCacheTests.test_get_cache):
(DashboardImageTests.setUp):
(DashboardImageTests):
(DashboardImageTests.test_create):
(DashboardImageTests.test_get):

5:00 PM Changeset in webkit [109820] by schenney@chromium.org
  • 7 edits
    2 adds in trunk

[Chromium] SVG Composite of Offset crashes
https://bugs.webkit.org/show_bug.cgi?id=77245

Reviewed by Stephen White.

The feComposite arithmetic mode filter could readily be made to
generate invalid pre-multiplied pixel values which would then go on to
pollute other filters and cause invalid final output pixels. This
patch checks for filters that require valid inputs, and checks that a
result is valid, and corrects the result if necessary. This matches
the behavior of FF and Opera while preventing crashes or other
undesirable behavior.

Source/WebCore:

Test: svg/filters/feComposite-arithmetic-invalid-rgba.svg

  • platform/graphics/filters/FEComposite.h: Override the default validity checks and image cleanup methods.
  • platform/graphics/filters/FEComposite.cpp:

(WebCore::FEComposite::correctFilterResultIfNeeded): Force valid pixels if this is an arithmetic filter

  • platform/graphics/filters/FilterEffect.cpp:

(WebCore::FilterEffect::apply): Check for validity status and correct
(WebCore::FilterEffect::forceValidPremultipliedPixels): Make an image valid
(WebCore):

  • platform/graphics/filters/FilterEffect.h: New virtual methods for image validity.

(FilterEffect):
(WebCore::FilterEffect::requiresValidPreMulultipliedPixels):
(WebCore::FilterEffect::forceValidPremultipliedPixels):
(WebCore::FilterEffect::correctFilterResultIfNeeded):

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::postApplyResource): Check that the final filter result is valid

LayoutTests:

  • svg/filters/feComposite-arithmetic-invalid-rgba-expected.svg: Added.
  • svg/filters/feComposite-arithmetic-invalid-rgba.svg: Added.
4:54 PM Changeset in webkit [109819] by timothy@apple.com
  • 2 edits in trunk/Source/WebKit2/UIProcess

Fix 32-bit builds.

4:51 PM Changeset in webkit [109818] by alexis.menard@openbossa.org
  • 10 edits
    2 adds in trunk

getComputedStyle gives incorrect information for 'height' property
https://bugs.webkit.org/show_bug.cgi?id=33593

Reviewed by David Hyatt.

Source/WebCore:

Make sure that the contentBoxRect doesn't take into account the
intrinsic padding when querying it. As stated by http://www.w3.org/TR/css3-box/#the-lsquo0
the height is the content area which doesn't include the intrinsic padding, the border, and
the padding.

Test: fast/css/getComputedStyle/getComputedStyle-height.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::removeNode):

  • rendering/RenderBox.h:

(WebCore::RenderBox::contentBoxRect):
(WebCore::RenderBox::contentWidth):
(WebCore::RenderBox::contentHeight):
(WebCore::RenderBox::contentLogicalWidth):
(WebCore::RenderBox::contentLogicalHeight):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paddingTop):
(WebCore::RenderBoxModelObject::paddingBottom):
(WebCore::RenderBoxModelObject::paddingLeft):
(WebCore::RenderBoxModelObject::paddingRight):
(WebCore::RenderBoxModelObject::paddingBefore):
(WebCore::RenderBoxModelObject::paddingAfter):
(WebCore::RenderBoxModelObject::paddingStart):
(WebCore::RenderBoxModelObject::paddingEnd):

  • rendering/RenderBoxModelObject.h:

(RenderBoxModelObject):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::paddingTop):
(WebCore::RenderTableCell::paddingBottom):
(WebCore::RenderTableCell::paddingLeft):
(WebCore::RenderTableCell::paddingRight):
(WebCore::RenderTableCell::paddingBefore):
(WebCore::RenderTableCell::paddingAfter):
(WebCore::RenderTableCell::cellBaselinePosition):

  • rendering/RenderTableCell.h:

(RenderTableCell):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::firstLineBoxBaseline):

LayoutTests:

Make sure that the contentBoxRect doesn't take into account the
intrinsic padding.

  • fast/css/getComputedStyle/getComputedStyle-height-expected.txt: Added.
  • fast/css/getComputedStyle/getComputedStyle-height.html: Added.
4:47 PM Changeset in webkit [109817] by morrita@google.com
  • 4 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=80257
Lifecycle of InternalSettings should be simplified.

Reviewed by Ryosuke Niwa.

  • Moved settings update code to separate restoreTo() method.
  • Eliminated flags which indidate the changed field. Now these modifiable parameters are backed up at the initialization.

No new tests. Refactoring.

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::create):
(WebCore::InternalSettings::InternalSettings):
(WebCore):
(WebCore::InternalSettings::restoreTo):

  • testing/InternalSettings.h:

(InternalSettings):

  • testing/Internals.cpp:

(WebCore::Internals::reset):

4:45 PM Changeset in webkit [109816] by tkent@chromium.org
  • 5 edits
    2 copies in trunk

[Chromium] Add new popup type: PagePopup
https://bugs.webkit.org/show_bug.cgi?id=80106

Reviewed by Darin Fisher.

Source/WebKit/chromium:

This is a preparation of implementing ChromeClient::openPagePopup and
closePagePopup.

  • WebKit.gyp: Add WebPagePopup.h and WebPagePopupImpl.cpp.
  • public/WebPagePopup.h:

(WebPagePopup): Add WebPagePopup interface.

  • public/WebPopupType.h: Add WebPopupTypePage.
  • src/WebPagePopupImpl.cpp:

(WebKit::WebPagePopup::create): Temprary implementation which just returns 0.

Tools:

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::createPopupMenu):

4:41 PM Changeset in webkit [109815] by jberlin@webkit.org
  • 2 edits in trunk/Tools

Add myself as a reviewer.

  • Scripts/webkitpy/common/config/committers.py:

Also, add my IRC nick so it is easier to find and yell at me.

4:31 PM Changeset in webkit [109814] by efidler@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

The minimum font size WebSetting should actually change the LOGICAL font size in WebCore.
https://bugs.webkit.org/show_bug.cgi?id=80312
RIM PR: 139874

Reviewed by George Staikos.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::didChangeSettings):

4:20 PM Changeset in webkit [109813] by commit-queue@webkit.org
  • 2 edits in trunk/Websites/bugs.webkit.org

The Bugzilla autocompleter doesn't support multiple Unicode characters per name
https://bugs.webkit.org/show_bug.cgi?id=80319

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-03-05
Reviewed by Adam Barth.

The current regular expression for matching Unicode characters uses
the global modifier, which means that it will never enter its second
iteration of the match-loop. This patch fixes this by removing the
global modifier from the regex.

  • committers-autocomplete.js:

(WebKitCommitters):

4:13 PM Changeset in webkit [109812] by andersca@apple.com
  • 7 edits in trunk/Source

Be more aggressive about repainting page overlays
https://bugs.webkit.org/show_bug.cgi?id=80336
<rdar://problem/10965943>

Reviewed by Simon Fraser.

Source/WebCore:

Add a way to find out if a given GraphicsLayer is going to be repainted.

  • WebCore.exp.in:
  • platform/graphics/GraphicsLayer.h:

(WebCore::GraphicsLayer::needsDisplay):
(GraphicsLayer):

  • platform/graphics/ca/GraphicsLayerCA.h:

Source/WebKit2:

Whenever we're flushing layers and we have a page overlay, check if the main frame
has scrolled or if the main frame root content layer needs to be repainted and force the
overlay layer to be repainted if either of those conditions are true.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:

(TiledCoreAnimationDrawingArea):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::flushLayers):
(WebKit::TiledCoreAnimationDrawingArea::shouldRepaintPageOverlayLayer):
(WebKit):

4:13 PM Changeset in webkit [109811] by commit-queue@webkit.org
  • 5 edits in trunk

Tools: Correctly compute the positions of GestureScroll* events on
Chromium.
https://bugs.webkit.org/show_bug.cgi?id=80075

Patch by Robert Kroeger <rjkroege@chromium.org> on 2012-03-05
Reviewed by Adam Barth.

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::reset):
(EventSender::gestureEvent):

  • DumpRenderTree/chromium/EventSender.h:

(EventSender):

LayoutTests: Correct a test to work the same on Gtk and non-Gtk chromium in
the presence of correctly synthesized GestureScroll* events.
https://bugs.webkit.org/show_bug.cgi?id=80075

Patch by Robert Kroeger <rjkroege@chromium.org> on 2012-03-05
Reviewed by Adam Barth.

  • fast/events/touch/gesture/gesture-scroll.html:
4:11 PM Changeset in webkit [109810] by dpranke@chromium.org
  • 3 edits in trunk/Tools

flakiness dashboard doesn't display baselines for virtual tests correctly
https://bugs.webkit.org/show_bug.cgi?id=80341

Reviewed by Ojan Vafai.

If the test is part of a virtual test suite, we need to look for
baselines in the underlying fallback path for the actual test
being run, as well as baselines for the virtual version.

This patch adds code to handle both branches and also pulls the
mapping of the test suites up into a constant.

  • TestResultServer/static-dashboards/flakiness_dashboard.html:
  • TestResultServer/static-dashboards/flakiness_dashboard_tests.js:

(testLookupVirtualTestSuite):
(testBaseTest):

3:50 PM Changeset in webkit [109809] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk/Source/WebCore

[BlackBerry] Upstream LayerRendererSurface.{cpp, h}
https://bugs.webkit.org/show_bug.cgi?id=80122

Patch by Robin Cao <robin.cao@torchmobile.com.cn> on 2012-03-05
Reviewed by Rob Buis.

Initial upstream, no new tests.

  • PlatformBlackBerry.cmake:
  • platform/graphics/blackberry/LayerRendererSurface.cpp: Added.

(WebCore):
(WebCore::LayerRendererSurface::LayerRendererSurface):
(WebCore::LayerRendererSurface::~LayerRendererSurface):
(WebCore::LayerRendererSurface::setContentRect):
(WebCore::LayerRendererSurface::drawRect):
(WebCore::LayerRendererSurface::ensureTexture):
(WebCore::LayerRendererSurface::releaseTexture):

  • platform/graphics/blackberry/LayerRendererSurface.h: Added.

(WebCore):
(LayerRendererSurface):
(WebCore::LayerRendererSurface::size):
(WebCore::LayerRendererSurface::contentRect):
(WebCore::LayerRendererSurface::clipRect):
(WebCore::LayerRendererSurface::setClipRect):
(WebCore::LayerRendererSurface::setDrawTransform):
(WebCore::LayerRendererSurface::drawTransform):
(WebCore::LayerRendererSurface::setReplicaDrawTransform):
(WebCore::LayerRendererSurface::replicaDrawTransform):
(WebCore::LayerRendererSurface::texture):
(WebCore::LayerRendererSurface::drawOpacity):
(WebCore::LayerRendererSurface::setDrawOpacity):

3:45 PM Changeset in webkit [109808] by weinig@apple.com
  • 5 edits in trunk/WebKitLibraries

Fix the SnowLeoaprd build.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceSnowLeopard.a:
3:31 PM Changeset in webkit [109807] by mihnea@adobe.com
  • 5 edits
    2 adds in trunk

[CSSRegions][CSSOM]Prevent creation of NamedFlow object for invalid flow name
https://bugs.webkit.org/show_bug.cgi?id=79685

Reviewed by David Hyatt.

Asking for a named flow with an invalid flow name should return a null object.

Source/WebCore:

Test: fast/regions/webkit-named-flow-invalid-name.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseFlowThread):
(WebCore):

  • css/CSSParser.h:
  • dom/Document.cpp:

(WebCore::validFlowName):
(WebCore):
(WebCore::Document::webkitGetFlowByName):

LayoutTests:

  • fast/regions/webkit-named-flow-invalid-name-expected.txt: Added.
  • fast/regions/webkit-named-flow-invalid-name.html: Added.
3:09 PM Changeset in webkit [109806] by rniwa@webkit.org
  • 14 edits
    4 adds in trunk

unicode-bidi should support isolate override and override isolate
https://bugs.webkit.org/show_bug.cgi?id=73164

Reviewed by Eric Seidel.

Source/WebCore:

Updated CSS parser and CSS style selector to support the union of bidi-override and isolate in
unicode-bidi property. Added OverrideIsolate to EUnicodeBidi instead of turning Override and Isolate
into bit flags to avoid increasing the number of bits required to store the unicodeBidi flag.

Also fixed a bug in RenderBlock::constructTextRun to actually check whether an isolated run's direction
is overridden or not when constructing one.

Tests: fast/css/unicode-bidi-computed-value.html

fast/text/bidi-override-isolate.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::renderUnicodeBidiFlagsToCSSValue): Added; Create a CSSValueList when unicode-bidi has both
isolate and bidi-override specified.
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Calls renderUnicodeBidiFlagsToCSSValue.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue): Support parsing combinations of -webkit-isolate and bidi-override;
Create a CSSValueList in such cases.

  • css/CSSPrimitiveValueMappings.h:

(WebCore):

  • css/CSSStyleApplyProperty.cpp:

(ApplyPropertyUnicodeBidi):
(WebCore::ApplyPropertyUnicodeBidi::applyValue): Support combinations of -webkit-isolate and
bidi-override. Set the unicodeBidi flag to OverrideIsolate in such cases.
(WebCore::ApplyPropertyUnicodeBidi::createHandler):
(WebCore):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::drawTextInternal):

  • platform/text/UnicodeBidi.h: Added OverrideIsolate. We don't use bit flags to avoid increasing the

number of bits required to store flags especially because isolate and bidi-override are only values
that can be combined.
(WebCore::isIsolated):
(WebCore):
(WebCore::isOverride):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::constructTextRun):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::statusWithDirection): Takes isOverride; we used to assume it's always false.
(WebCore::constructBidiRuns): Instantiate isolatedResolver with a proper value of isOverride.
(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::determineStartPosition):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::paintItemForeground):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::itemStyle):
(WebCore::RenderMenuList::menuStyle):

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::menuStyle):

  • rendering/svg/SVGTextMetrics.cpp:

(WebCore::SVGTextMetrics::constructTextRun):

LayoutTests:

Added a test for retrieving computed value of unicode-bidi property
and also added a test to render "unicode-bidi: -webkit-isolate bidi-override".

  • fast/css/unicode-bidi-computed-value-expected.txt: Added.
  • fast/css/unicode-bidi-computed-value.html: Added.
  • fast/text/bidi-override-isolate-expected.html: Added.
  • fast/text/bidi-override-isolate.html: Added.
2:58 PM Changeset in webkit [109805] by eae@chromium.org
  • 13 edits in trunk/Source/WebCore

Replace uses of x(), y() and width(), height() pairs with locationOffset and size()
https://bugs.webkit.org/show_bug.cgi?id=80196

Reviewed by Julien Chaffraix.

Replace IntSize(x(), y()) with locationOffset()
Replace IntSize(width(), height()) with size()
Replace IntRect(0, 0, width(), height()) with IntRect(IntPoint(), size())
Replace IntRect::move(x(), y()) with IntRect::move(locationOffset())

No new tests.

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::createImageBuffer):
(WebCore::HTMLCanvasElement::baseTransform):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::simplifiedLayout):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::mapLocalToContainer):
(WebCore::RenderBox::computeRectForRepaint):

  • rendering/RenderBox.h:

(WebCore::RenderBox::borderBoxRect):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):

  • rendering/RenderListMarker.cpp:

(WebCore::RenderListMarker::localSelectionRect):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::localSelectionRect):

  • rendering/RenderScrollbar.cpp:

(WebCore::RenderScrollbar::updateScrollbarParts):
(WebCore::RenderScrollbar::buttonRect):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::setCellLogicalWidths):
(WebCore::RenderTableSection::layoutRows):

  • rendering/RenderView.cpp:

(WebCore::RenderView::viewRect):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::layout):

2:53 PM Changeset in webkit [109804] by weinig@apple.com
  • 35 edits
    2 moves in trunk/Source

Add support for hosting layers in the window server in WebKit2
<rdar://problem/10400246>
https://bugs.webkit.org/show_bug.cgi?id=80310

Reviewed by Anders Carlsson.

Source/JavaScriptCore:

  • wtf/Platform.h:

Add HAVE_LAYER_HOSTING_IN_WINDOW_SERVER.

Source/WebKit2:

This currently only works if you are using TiledCoreAnimation drawing model.

  • Platform/mac/LayerHostingContext.h: Renamed from Source/WebKit2/Platform/mac/RemoteLayerClient.h.
  • Platform/mac/LayerHostingContext.mm: Renamed from Source/WebKit2/Platform/mac/RemoteLayerClient.mm.

(WebKit::LayerHostingContext::createForPort):
(WebKit::LayerHostingContext::LayerHostingContext):
(WebKit::LayerHostingContext::createForWindowServer):
(WebKit::LayerHostingContext::~LayerHostingContext):
(WebKit::LayerHostingContext::setRootLayer):
(WebKit::LayerHostingContext::rootLayer):
(WebKit::LayerHostingContext::contextID):
(WebKit::LayerHostingContext::invalidate):
Renamed RemoteLayerClient to LayerHostingContext and add ability to use the window server
as the remote context.

  • PluginProcess/PluginControllerProxy.cpp:
  • PluginProcess/PluginControllerProxy.h:
  • PluginProcess/mac/PluginControllerProxyMac.mm:

Update for new names.

  • Shared/LayerTreeContext.h:

Add LayerHostingMode enum.

  • UIProcess/PageClient.h:
  • UIProcess/API/mac/PageClientImpl.h:
  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::layerHostingMode):
(WebKit::PageClientImpl::updateAcceleratedCompositingMode):
Add PageClient access points to get the current layer hosting mode,
and a hook to tell the underlying view that the layer hosting context
has changed.

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView _updateAcceleratedCompositingMode:WebKit::]):
Implement responding to a new layer hosting context as a simple
exit and re-entrance of compositing.

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::layerHostingModeDidChange):
(WebKit::DrawingAreaProxy::updateAcceleratedCompositingMode):

  • UIProcess/DrawingAreaProxy.messages.in:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:

(TiledCoreAnimationDrawingAreaProxy):

  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:

(WebKit::TiledCoreAnimationDrawingAreaProxy::layerHostingModeDidChange):
(WebKit::TiledCoreAnimationDrawingAreaProxy::updateAcceleratedCompositingMode):
Pipe layer hosting changes around.

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::layerHostingMode):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::viewStateDidChange):
Cache the current layer hosting mode so we don't overzealously
tell the WebProcess to reset its context. Re-check layer hosting
mode each time we are added/removed from a window.

  • WebProcess/FullScreen/mac/WebFullScreenManagerMac.h:
  • WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm:

Update for new names.

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::setDeviceScaleFactor):
(WebKit::DrawingArea::setLayerHostingMode):

  • WebProcess/WebPage/DrawingArea.messages.in:

Pipe layer hosting changes around.

  • WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.h:
  • WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.mm:

(WebKit::LayerTreeHostCAMac::~LayerTreeHostCAMac):
(WebKit::LayerTreeHostCAMac::platformInitialize):
(WebKit::LayerTreeHostCAMac::invalidate):
Update for new names.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):
Respond to a change in the layer hosting mode by invalidating our old context,
making a new one of the right type, and informing the UIProcess of our new context.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files.

2:33 PM Changeset in webkit [109803] by rwlbuis@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Add missing method to PasteboardBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=80326

Reviewed by Antonio Gomes.

Add missing method.

  • platform/blackberry/PasteboardBlackBerry.cpp:

(WebCore::Pasteboard::writeClipboard):
(WebCore):

2:10 PM Changeset in webkit [109802] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed, attempted build fix for !ENABLE(JIT) after r109705.

  • bytecode/ExecutionCounter.cpp:

(JSC::ExecutionCounter::applyMemoryUsageHeuristics):

  • bytecode/ExecutionCounter.h:
2:01 PM Changeset in webkit [109801] by andersca@apple.com
  • 6 edits in trunk/Source

Always update the scroll layer position on the main thread when we have an overlay
https://bugs.webkit.org/show_bug.cgi?id=80324

Reviewed by Sam Weinig.

Source/WebCore:

Add a way to ensure that scroll layer position updates happen on the main thread.

  • WebCore.exp.in:
  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::ScrollingCoordinator):
(WebCore::ScrollingCoordinator::updateShouldUpdateScrollLayerPositionOnMainThread):
(WebCore):
(WebCore::ScrollingCoordinator::setForceMainThreadScrollLayerPositionUpdates):

  • page/scrolling/ScrollingCoordinator.h:

(ScrollingCoordinator):

Source/WebKit2:

Call setForceMainThreadScrollLayerPositionUpdates when installing and uninstalling page overlays,
so we'll be able to synchronize painting between the tile cache and the page overlays.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::didInstallPageOverlay):
(WebKit::TiledCoreAnimationDrawingArea::didUninstallPageOverlay):

1:59 PM Changeset in webkit [109800] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/rendering/RenderBlockLineLayout.cpp

Cleaning up RenderBlockLineLayout before attempting to land changes in trunk.

1:59 PM Changeset in webkit [109799] by tony@chromium.org
  • 5 edits
    4 adds in trunk

Implement flex-wrap: wrap
https://bugs.webkit.org/show_bug.cgi?id=79930

Reviewed by David Hyatt.

Source/WebCore:

Tests: css3/flexbox/multiline-align.html

css3/flexbox/multiline.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::sizesToIntrinsicLogicalWidth): Don't apply column+stretch optimization to multiline.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::FlexOrderIterator::FlexOrderIterator):
(WebCore::RenderFlexibleBox::FlexOrderIterator::currentChild): Expose the current child so we can pause
in the middle of iteration and resume later.
(RenderFlexibleBox::FlexOrderIterator):
(WebCore::RenderFlexibleBox::isMultiline):
(WebCore):
(WebCore::RenderFlexibleBox::layoutFlexItems): Loop per line.
(WebCore::RenderFlexibleBox::availableAlignmentSpaceForChild): Use the line space, not the whole container space.
(WebCore::RenderFlexibleBox::computeFlexOrder): Return true for each line.
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren): Use the line offset. Also compute the line height as we go.
(WebCore::RenderFlexibleBox::layoutColumnReverse): Use the line offset.
(WebCore::RenderFlexibleBox::alignChildren): Align based on the line height. For multiline + column, we have to relayout
since the width may change (same as the row case above). We'll have to do something smarter when we implement flex-line-pack.

  • rendering/RenderFlexibleBox.h:

(RenderFlexibleBox):

LayoutTests:

  • css3/flexbox/multiline-align-expected.txt: Added.
  • css3/flexbox/multiline-align.html: Added.
  • css3/flexbox/multiline-expected.txt: Added.
  • css3/flexbox/multiline.html: Added.
1:52 PM Changeset in webkit [109798] by commit-queue@webkit.org
  • 16 edits
    3 copies in trunk/Source/WebCore

Implement WebGL extension EXT_texture_filter_anisotropic
https://bugs.webkit.org/show_bug.cgi?id=79541

This exports the EXT_texture_filter_anisotropic extension with the WEBKIT_ prefix as defined at
https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/extensions/proposals/EXT_texture_filter_anisotropic/index.html

Patch by Ben Vanik <benvanik@google.com> on 2012-03-05
Reviewed by Kenneth Russell.

Tested with the Khronos conformance test for the extension, available at https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/extensions/ext-texture-filter-anisotropic.html

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::toJS):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::toV8Object):

  • html/canvas/EXTTextureFilterAnisotropic.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.

(WebCore):
(WebCore::EXTTextureFilterAnisotropic::EXTTextureFilterAnisotropic):
(WebCore::EXTTextureFilterAnisotropic::~EXTTextureFilterAnisotropic):
(WebCore::EXTTextureFilterAnisotropic::getName):
(WebCore::EXTTextureFilterAnisotropic::create):

  • html/canvas/EXTTextureFilterAnisotropic.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.

(WebCore):
(EXTTextureFilterAnisotropic):

  • html/canvas/EXTTextureFilterAnisotropic.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
  • html/canvas/WebGLExtension.h:
  • html/canvas/WebGLObject.cpp:
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getParameter):
(WebCore::WebGLRenderingContext::getSupportedExtensions):
(WebCore::WebGLRenderingContext::getTexParameter):
(WebCore::WebGLRenderingContext::texParameter):

  • html/canvas/WebGLRenderingContext.h:

(WebCore):
(WebGLRenderingContext):

  • platform/graphics/Extensions3D.h:

(Extensions3D):

  • platform/graphics/opengl/Extensions3DOpenGL.cpp:

(WebCore::Extensions3DOpenGL::supports):

1:49 PM Changeset in webkit [109797] by senorblanco@chromium.org
  • 2 edits in trunk/LayoutTests

[chromim] Mark http/tests/incremental/partial-jpeg.html as failing.

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
1:47 PM Changeset in webkit [109796] by eae@chromium.org
  • 1537 edits
    554 copies
    145 deletes in branches/subpixellayout

Merge trunk changes up until 109755 into subpixel branch.

1:45 PM Changeset in webkit [109795] by timothy@apple.com
  • 3 edits
    1 move in trunk/Source/WebKit2

Change how the Web Inspector Develop menu actions work.

This removes the methods used by Safari's Develop menu. They can now be implemented in Safari.

https://webkit.org/b/80308

Reviewed by John Sullivan.

  • UIProcess/API/C/mac/WKInspectorPrivateMac.h: Renamed from Source/WebKit2/UIProcess/API/C/mac/WKInspectorMac.h.
  • UIProcess/mac/WebInspectorProxyMac.mm:

(-[WKWebInspectorProxyObjCAdapter inspectorRef]): Added.

  • WebKit2.xcodeproj/project.pbxproj: Renamed WKInspectorPrivateMac.h to better reflect its private nature.
1:44 PM Changeset in webkit [109794] by shawnsingh@chromium.org
  • 3 edits
    3 copies in branches/chromium/1025

Merge 109060 - RenderLayer ClipRect not accounting for transforms
https://bugs.webkit.org/show_bug.cgi?id=76486

Reviewed by Simon Fraser.

Source/WebCore:

Test: compositing/layer-creation/overlap-transformed-and-clipped.html

This patch changes calculateClipRects() so that the clipRect
offset is allowed to be converted across layers with
transforms. This is necessary because the RenderLayerCompositor
needs clipRects in document space, rather than with respect to
some local clipping layer.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::localToContainerPoint):
(WebCore):

  • rendering/RenderObject.h:

(RenderObject):

LayoutTests:

  • compositing/layer-creation/overlap-transformed-and-clipped-expected.png: Added.
  • compositing/layer-creation/overlap-transformed-and-clipped-expected.txt: Added.
  • compositing/layer-creation/overlap-transformed-and-clipped.html: Added.

TBR=shawnsingh@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9599025

1:42 PM Changeset in webkit [109793] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed, marking a test that is passing on linux as such.

platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html
is passing on the flakiness dashboard.

  • platform/chromium/test_expectations.txt:
1:40 PM Changeset in webkit [109792] by ap@apple.com
  • 2 edits in trunk/LayoutTests

FileReader crashes when file is not readable
https://bugs.webkit.org/show_bug.cgi?id=79715

Unreviewed follow-up - skip the test as uses unimplemented beginDragWithFiles.

  • platform/wk2/Skipped:
1:33 PM Changeset in webkit [109791] by commit-queue@webkit.org
  • 8 edits
    2 deletes in trunk

Unreviewed, rolling out r109760.
http://trac.webkit.org/changeset/109760
https://bugs.webkit.org/show_bug.cgi?id=80320

Caused many GTK+ tests to crash (Requested by mrobinson on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-03-05

.:

  • configure.ac:

Source/WebCore:

  • platform/network/ResourceHandleClient.h:
  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCoreSynchronousLoader):
(WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
(WebCore):
(WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
(WebCore::WebCoreSynchronousLoader::didReceiveResponse):
(WebCore::WebCoreSynchronousLoader::didReceiveData):
(WebCore::WebCoreSynchronousLoader::didFinishLoading):
(WebCore::WebCoreSynchronousLoader::didFail):
(WebCore::WebCoreSynchronousLoader::run):
(WebCore::closeCallback):
(WebCore::readCallback):
(WebCore::ResourceHandle::defaultSession):

Tools:

  • gtk/jhbuild.modules:

LayoutTests:

  • http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers-expected.txt: Removed.
  • http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html: Removed.
1:29 PM Changeset in webkit [109790] by adamk@chromium.org
  • 4 edits
    2 adds in trunk

Never dispatch mutation events in shadow DOM
https://bugs.webkit.org/show_bug.cgi?id=79278

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/dom/shadow/suppress-mutation-events-in-shadow.html

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::removeChildren): Move allowEventDispatch() call later,
now that childrenChanged won't trigger mutation events in shadow dom.
(WebCore::dispatchChildInsertionEvents): Bail out if in shadow tree.
(WebCore::dispatchChildRemovalEvents): ditto.

  • dom/Node.cpp:

(WebCore::Node::dispatchSubtreeModifiedEvent): ditto.

LayoutTests:

  • fast/dom/shadow/suppress-mutation-events-in-shadow-expected.txt: Added.
  • fast/dom/shadow/suppress-mutation-events-in-shadow.html: Added.
1:16 PM Changeset in webkit [109789] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

BlobResourceHandle should keep a reference to itself when calling client code.
https://bugs.webkit.org/show_bug.cgi?id=80318

Reviewed by Brady Eidson.

  • platform/network/BlobResourceHandle.cpp: (WebCore::BlobResourceHandle::doStart): (WebCore::BlobResourceHandle::getSizeForNext): (WebCore::BlobResourceHandle::readSync): (WebCore::BlobResourceHandle::readDataAsync): (WebCore::BlobResourceHandle::consumeData): (WebCore::BlobResourceHandle::failed): Added RefPtrs in functions that can result in calling client code, and use "this" object afterwards.
1:10 PM Changeset in webkit [109788] by andersca@apple.com
  • 12 edits in trunk/Source/WebCore

Let RenderLayerCompositor set the tile cache visible rect
https://bugs.webkit.org/show_bug.cgi?id=80317

Reviewed by Simon Fraser.

We can't compute the visible rect from CALayers, because that breaks when we're updating
the scroll layer position on the main thread (since by the time visibleRectChanged() is called,
the CALayers won't yet have been updated).

  • platform/graphics/GraphicsLayer.h:

(WebCore::GraphicsLayer::visibleRectChanged):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::visibleRectChanged):

  • platform/graphics/ca/GraphicsLayerCA.h:

(GraphicsLayerCA):

  • platform/graphics/ca/PlatformCALayer.h:

(PlatformCALayer):

  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayer::visibleRectChanged):

  • platform/graphics/ca/mac/TileCache.h:

(TileCache):

  • platform/graphics/ca/mac/TileCache.mm:

(WebCore::TileCache::visibleRectChanged):
(WebCore::TileCache::revalidateTiles):

  • platform/graphics/ca/mac/WebTileCacheLayer.h:

(WebCore):

  • platform/graphics/ca/mac/WebTileCacheLayer.mm:

(-[WebTileCacheLayer visibleRectChanged:]):

  • platform/graphics/ca/win/PlatformCALayerWin.cpp:

(PlatformCALayer::visibleRectChanged):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::frameViewDidScroll):

1:02 PM Changeset in webkit [109787] by Patrick Gansterer
  • 6 edits in trunk

[CMake][DRT] Add WebCoreTestSupport.
https://bugs.webkit.org/show_bug.cgi?id=79896

Patch by Kangil Han <kangil.han@samsung.com> on 2012-03-05
Reviewed by Daniel Bates.

Add WebCoreTestSupport library for DRT in CMake.
We will use internals object by linking this library on DRT.

.:

  • CMakeLists.txt:

Source/WebCore:

  • CMakeLists.txt:
  • UseJSC.cmake:
  • UseV8.cmake:
1:00 PM Changeset in webkit [109786] by weinig@apple.com
  • 5 edits in trunk/WebKitLibraries

Update WebKitSystemInterface for WKCAContext additions.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceSnowLeopard.a:
12:44 PM Changeset in webkit [109785] by commit-queue@webkit.org
  • 40 edits
    14 deletes in trunk

Unreviewed, rolling out r109656.
http://trac.webkit.org/changeset/109656
https://bugs.webkit.org/show_bug.cgi?id=80316

This seems to have regressed Parser/html5-full-render by about
10% (Requested by anttik on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-03-05

Source/WebCore:

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::getPositionOffsetValue):
(WebCore::getBorderRadiusCornerValues):
(WebCore::getBorderRadiusCornerValue):
(WebCore::getBorderRadiusShorthandValue):
(WebCore::lineHeightFromStyle):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSGrammar.y:
  • css/CSSParser.cpp:

(WebCore::CSSParser::validUnit):
(WebCore::CSSParser::createPrimitiveNumericValue):
(WebCore::unitFromString):
(WebCore::CSSParser::parseValidPrimitive):
(WebCore::CSSParser::detectNumberToken):

  • css/CSSPrimitiveValue.cpp:

(WebCore::isValidCSSUnitTypeForDoubleConversion):
(WebCore::unitCategory):
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory):
(WebCore::CSSPrimitiveValue::customCssText):

  • css/CSSPrimitiveValue.h:

(CSSPrimitiveValue):

  • css/CSSPrimitiveValue.idl:
  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyLength::applyValue):
(WebCore::ApplyPropertyBorderRadius::applyValue):
(WebCore::ApplyPropertyFontSize::applyValue):
(WebCore::ApplyPropertyLineHeight::applyValue):
(WebCore::ApplyPropertyVerticalAlign::applyValue):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::collectMatchingRulesForList):

  • dom/Document.cpp:

(WebCore::Document::pageSizeAndMarginsInPixels):
(WebCore):

  • dom/Document.h:

(Document):

  • html/HTMLAreaElement.cpp:

(WebCore::HTMLAreaElement::getRegion):

  • platform/Length.h:

(WebCore::Length::calcValue):
(WebCore::Length::calcMinValue):
(WebCore::Length::calcFloatValue):
(WebCore::Length::blend):

  • rendering/RenderBR.cpp:

(WebCore::RenderBR::lineHeight):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::lineHeight):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::reflectionOffset):
(WebCore::RenderBox::paintBoxDecorations):
(WebCore::RenderBox::clipRect):
(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):
(WebCore::RenderBox::computeInlineDirectionMargins):
(WebCore::RenderBox::computeLogicalHeightUsing):
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::computeBlockDirectionMargins):
(WebCore::RenderBox::computePositionedLogicalWidthUsing):
(WebCore::RenderBox::computePositionedLogicalHeightUsing):
(WebCore::RenderBox::computePositionedLogicalWidthReplaced):
(WebCore::RenderBox::computePositionedLogicalHeightReplaced):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::relativePositionOffsetX):
(WebCore::RenderBoxModelObject::relativePositionOffsetY):
(WebCore::RenderBoxModelObject::paddingTop):
(WebCore::RenderBoxModelObject::paddingBottom):
(WebCore::RenderBoxModelObject::paddingLeft):
(WebCore::RenderBoxModelObject::paddingRight):
(WebCore::RenderBoxModelObject::paddingBefore):
(WebCore::RenderBoxModelObject::paddingAfter):
(WebCore::RenderBoxModelObject::paddingStart):
(WebCore::RenderBoxModelObject::paddingEnd):
(WebCore::RenderBoxModelObject::getBackgroundRoundedRect):
(WebCore::RenderBoxModelObject::calculateFillTileSize):
(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
(WebCore::computeBorderImageSide):
(WebCore::RenderBoxModelObject::paintNinePieceImage):
(WebCore::RenderBoxModelObject::paintBorder):
(WebCore::RenderBoxModelObject::paintBoxShadow):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):
(WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
(WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm):

  • rendering/RenderInline.cpp:

(WebCore::computeMargin):
(WebCore::RenderInline::lineHeight):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::updateOptionsWidth):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::repaintAfterLayoutIfNeeded):

  • rendering/RenderObject.h:

(RenderObject):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::paint):

  • rendering/RenderScrollbarPart.cpp:

(WebCore::calcScrollbarThicknessUsing):
(WebCore::RenderScrollbarPart::computeScrollbarWidth):
(WebCore::RenderScrollbarPart::computeScrollbarHeight):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::computeLogicalWidth):
(WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::logicalHeightForRowSizing):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::calcRowLogicalHeight):

  • rendering/RenderText.h:

(WebCore::RenderText::marginLeft):
(WebCore::RenderText::marginRight):

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintMenuListButtonGradients):

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::paint):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::verticalPositionForBox):

  • rendering/style/RenderStyle.cpp:

(WebCore::calcRadiiFor):
(WebCore::RenderStyle::getRoundedBorderFor):

  • rendering/style/RenderStyle.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::resolveLengthAttributeForSVG):
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight):

LayoutTests:

  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-getStyle-expected.txt: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-getStyle.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vh-absolute-expected.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vh-absolute.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vh-expected.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vh.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vmin-absolute-expected.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vmin-absolute.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vmin-expected.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vmin.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vw-absolute-expected.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vw-absolute.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vw-expected.html: Removed.
  • css3/viewport-relative-lengths/css3-viewport-relative-lengths-vw.html: Removed.
  • fast/dom/Window/window-properties-expected.txt:
  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/mac/fast/dom/Window/window-properties-expected.txt:
  • platform/qt/fast/dom/Window/window-properties-expected.txt:
  • platform/win/fast/dom/Window/window-properties-expected.txt:
12:35 PM Changeset in webkit [109784] by Patrick Gansterer
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed. Build fix for !ENABLE(JIT) after r109705.

  • bytecode/ExecutionCounter.cpp:
  • bytecode/ExecutionCounter.h:
12:28 PM Changeset in webkit [109783] by rwlbuis@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] UTF chars printed back from cookie through php shows as ???
https://bugs.webkit.org/show_bug.cgi?id=80307

Reviewed by Antonio Gomes.

PR: 130055

we need to check the cookies encoding first and encode the cookie header data
to pass to the request.

  • platform/network/blackberry/NetworkManager.cpp:

(WebCore::NetworkManager::startJob):

12:15 PM Changeset in webkit [109782] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Use a proper closing tag for shadow element layout test
https://bugs.webkit.org/show_bug.cgi?id=80305

Reviewed by Adam Barth.

  • fast/dom/shadow/shadow-element.html:
12:05 PM Changeset in webkit [109781] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebCore

[chromium] Remove old cleanupResources() code
https://bugs.webkit.org/show_bug.cgi?id=80290

Patch by Dana Jansens <danakj@chromium.org> on 2012-03-05
Reviewed by Adrienne Walker.

cleanupResources() is only called by destructors, and adds no
value, any more, beyond the destructors themselves, but complicates
the code path.

Covered by existing tests.

  • platform/graphics/chromium/cc/CCLayerImpl.cpp:
  • platform/graphics/chromium/cc/CCLayerImpl.h:

(CCLayerImpl):

  • platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:

(WebCore::CCPluginLayerImpl::~CCPluginLayerImpl):

  • platform/graphics/chromium/cc/CCPluginLayerImpl.h:
  • platform/graphics/chromium/cc/CCRenderSurface.cpp:

(WebCore::CCRenderSurface::~CCRenderSurface):

  • platform/graphics/chromium/cc/CCRenderSurface.h:

(CCRenderSurface):

  • platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:

(WebCore::CCVideoLayerImpl::~CCVideoLayerImpl):

11:59 AM Changeset in webkit [109780] by inferno@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/dom/StyledElement.cpp

getElementsByClassName result list no longer changes on class changes on m17 branch.

BUG=114068, 116789
Review URL: https://chromiumcodereview.appspot.com/9602021

11:54 AM Changeset in webkit [109779] by commit-queue@webkit.org
  • 3 edits
    5 adds in trunk

Partially loaded JPEGs should have alpha channel
https://bugs.webkit.org/show_bug.cgi?id=78239

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-03-05
Reviewed by Kenneth Russell.

Source/WebCore:

While a JPEG image is loading, the area outside the decoded region
should be fully transparent. Since currently all JPEG frames are marked
as opaque, a renderer respecting this flag will draw the partially
loaded image with garbage outside the valid image region.

Hence, a partially loaded JPEG image should be marked as having an alpha
channel while decoding is in progress. For performance reasons we mark
the image opaque after decoding has finished.

Graphics corruption caused by this bug was recently observed on
Chromium (http://code.google.com/p/chromium/issues/detail?id=113171). A
recent Skia change (r3036) changed SkBitmap::extractSubset() to produce
a bitmap with the same opaqueness flag as the parent. This meant that
the renderer was now seeing an opaque image from the JPEG decoder, and
drawing it appropriately resulted in garbage outside the decoded region.

Test: http/tests/incremental/partial-jpeg.html

  • platform/image-decoders/jpeg/JPEGImageDecoder.cpp:

(WebCore::JPEGImageDecoder::outputScanlines):
(WebCore::JPEGImageDecoder::jpegComplete):

LayoutTests:

While a JPEG image is being loaded, the parts which have not been
decoded yet should show whatever is behind the image. This tests
verifies this by displaying a JPEG which never fully completes
loading. This is achieved by serving the JPEG from a PHP script that
strips the end of image marker (ff d9) from the data.

The test image is 32x32 pixels, so compresses to 4x4 JPEG MCU blocks.
The expected result is that the final row of MCU blocks (32x4 pixels)
never finishes loading due to the missing end of image marker and the
indicator div is shown through this area.

  • http/tests/incremental/partial-jpeg-expected.png: Added.
  • http/tests/incremental/partial-jpeg-expected.txt: Added.
  • http/tests/incremental/partial-jpeg.html: Added.
  • http/tests/incremental/resources/checkerboard.jpg: Added.
  • http/tests/incremental/resources/partial-jpeg.php: Added.
11:50 AM Changeset in webkit [109778] by commit-queue@webkit.org
  • 8 edits in trunk

[chromium] Pass WebNavigationPolicy to WebViewClient::createView
https://bugs.webkit.org/show_bug.cgi?id=80057

Patch by Charlie Reis <creis@chromium.org> on 2012-03-05
Reviewed by Darin Fisher.

Source/WebKit/chromium:

  • public/WebViewClient.h:

(WebViewClient):
(WebKit::WebViewClient::createView):

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::ChromeClientImpl):
(WebKit::ChromeClientImpl::createWindow):
(WebKit::ChromeClientImpl::getNavigationPolicy):
(WebKit):
(WebKit::ChromeClientImpl::show):
(WebKit::ChromeClientImpl::setNewWindowNavigationPolicy):

  • src/ChromeClientImpl.h:

(ChromeClientImpl):

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchCreatePage):
(WebKit::FrameLoaderClientImpl::dispatchDecidePolicyForNewWindowAction):

Tools:

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::createView):

  • DumpRenderTree/chromium/WebViewHost.h:

(WebViewHost):

11:47 AM Changeset in webkit [109777] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[chromium] Initialize CCOverdrawCounts struct to zero
https://bugs.webkit.org/show_bug.cgi?id=80204

Patch by James Robinson <jamesr@chromium.org> on 2012-03-05
Reviewed by Adrienne Walker.

Source/WebCore:

CCOverdrawCounts is stack allocated but not explicitly initialized, so the values are garbage. This adds a c'tor
to zero out the fields, which is the desired behavior. Bug was initially caught by valgrind, see
http://crbug.com/116475

  • platform/graphics/chromium/cc/CCRenderPass.h:

(WebCore::CCOverdrawCounts::CCOverdrawCounts):

Source/WebKit/chromium:

Update test to use c'tor instead of {} struct initialization.

  • tests/CCQuadCullerTest.cpp:

(WebCore):

11:38 AM Changeset in webkit [109776] by commit-queue@webkit.org
  • 5 edits
    1 add in trunk/Source/WebCore

Add media control css for chromium on android
https://bugs.webkit.org/show_bug.cgi?id=79550

Patch by Min Qin <qinmin@google.com> on 2012-03-05
Reviewed by Adam Barth.

This should not change the any test results as it does not affect the any current bots. New test expectations will be added if we have a android bot on webkit.

  • WebCore.gyp/WebCore.gyp:
  • css/mediaControlsChromiumAndroid.css: Added.

(body:-webkit-full-page-media):
(audio):
(audio:-webkit-full-page-media, video:-webkit-full-page-media):
(audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
(video:-webkit-full-page-media::-webkit-media-controls-panel):
(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
(audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
(audio::-webkit-media-controls-timeline-container):
(video::-webkit-media-controls-timeline-container):
(audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
(audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
(video::-webkit-media-controls-fullscreen-button):
(audio::-webkit-media-controls-fullscreen-button):
(audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
(audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):

  • rendering/RenderMediaControlsChromium.cpp:

(WebCore::paintMediaFullscreenButton):
(WebCore):
(WebCore::RenderMediaControlsChromium::paintMediaControlsPart):

  • rendering/RenderThemeChromiumAndroid.cpp:

(WebCore::RenderThemeChromiumAndroid::extraMediaControlsStyleSheet):
(WebCore):
(WebCore::RenderThemeChromiumAndroid::paintMediaFullscreenButton):

  • rendering/RenderThemeChromiumAndroid.h:
11:26 AM Changeset in webkit [109775] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Fix crash in ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition
https://bugs.webkit.org/show_bug.cgi?id=80303
<rdar://problem/10953682>

Reviewed by Beth Dakin.

Add the same null checks that already exist in updateMainFrameScrollPosition.

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition):

11:15 AM Changeset in webkit [109774] by enne@google.com
  • 3 edits in branches/chromium/1025/Source/WebCore/platform/graphics

Merge 109171 - [chromium] Inform v8 about extra memory used for PatternSkia clamp mode
https://bugs.webkit.org/show_bug.cgi?id=79846

Reviewed by James Robinson.

For large images, creating a non-repeating Pattern in Skia can
allocate a lot of memory. Inform v8 about this so that it can
potentially garbage collect any Pattern objects that aren't being used
and that are holding onto large image copies.

  • platform/graphics/Pattern.cpp:

(WebCore::Pattern::Pattern):

  • platform/graphics/Pattern.h:

(Pattern):

  • platform/graphics/skia/PatternSkia.cpp:

(WebCore::Pattern::platformDestroy):
(WebCore::Pattern::platformPattern):

TBR=enne@google.com
Review URL: https://chromiumcodereview.appspot.com/9599019

11:00 AM Changeset in webkit [109773] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed test expectations update: widen slowness of jquery/offset.html.

  • platform/chromium/test_expectations.txt:
10:57 AM Changeset in webkit [109772] by apavlov@chromium.org
  • 4 edits
    2 adds in trunk

Web Inspector: CSS inactive property check should account for vendor prefixes
https://bugs.webkit.org/show_bug.cgi?id=80225

Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/styles/vendor-prefixes.html

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyle::populateObjectWithStyleProperties):

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylesSidebarPane.alteredHexNumber):
(WebInspector.StylesSidebarPane.canonicalPropertyName):
(WebInspector.StylesSidebarPane.prototype._markUsedProperties):
(WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):

LayoutTests:

  • inspector/styles/vendor-prefixes-expected.txt: Added.
  • inspector/styles/vendor-prefixes.html: Added.
10:57 AM Changeset in webkit [109771] by toyoshim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] [WebSocket] use OVERRIDE in WebSocketImpl.h
https://bugs.webkit.org/show_bug.cgi?id=80192

Reviewed by Kent Tamura.

  • src/WebSocketImpl.h: use OVERRIDE macro.

(WebSocketImpl):

10:57 AM Changeset in webkit [109770] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

10:56 AM Changeset in webkit [109769] by wingo@igalia.com
  • 4 edits in trunk/Source/JavaScriptCore

Lexer: Specialize character predicates for LChar, UChar
https://bugs.webkit.org/show_bug.cgi?id=79677

Reviewed by Oliver Hunt.

This patch specializes isIdentStart, isIdentPart, isWhiteSpace,
and isLineTerminator to perform a more limited number of checks if
the lexer is being instantiated to work on LChar sequences. This
is about a 1.5% win on the --parse-only suite, here.

  • parser/Lexer.cpp:

(JSC::isLatin1): New static helper, specialized for LChar and
UChar.
(JSC::typesOfLatin1Characters): Rename from
typesOfASCIICharacters, and expand to the range of the LChar
type. All uses of isASCII are changed to use isLatin1. Generated
using libunistring.
(JSC::isNonLatin1IdentStart):
(JSC::isIdentStart):
(JSC::isNonLatin1IdentPart):
(JSC::isIdentPart):
(JSC::Lexer::shiftLineTerminator):
(JSC::Lexer::parseIdentifier):
(JSC::Lexer::parseIdentifierSlowCase):
(JSC::Lexer::parseStringSlowCase):
(JSC::Lexer::parseMultilineComment):
(JSC::Lexer::lex):
(JSC::Lexer::scanRegExp):
(JSC::Lexer::skipRegExp): Sprinkle static_cast<T>(_) around.

  • parser/Lexer.h:

(JSC::Lexer::isWhiteSpace):
(JSC::Lexer::isLineTerminator):

  • KeywordLookupGenerator.py:

(Trie.printAsC): Declare specialized isIdentPart static functions.

10:51 AM WebKit Team edited by aroben@webkit.org
(diff)
10:50 AM Changeset in webkit [109768] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Removed the svn:executable properties from a couple of expected test results

10:36 AM Changeset in webkit [109767] by mitz@apple.com
  • 2 edits
    1 copy in trunk/LayoutTests

fast/text/international/spaces-combined-in-vertical-text.html has incorrect expected results
https://bugs.webkit.org/show_bug.cgi?id=80284

Reviewed by Alexey Proskuryakov.

The test was added in r104322 with results from the Chromium port, which are incorrect. This
is the subject of <https://bugs.webkit.org/show_bug.cgi?id=80293>.

  • fast/text/international/spaces-combined-in-vertical-text-expected.txt:
  • platform/chromium/fast/text/international/spaces-combined-in-vertical-text-expected.txt: Copied from LayoutTests/fast/text/international/spaces-combined-in-vertical-text-expected.txt.
10:34 AM Changeset in webkit [109766] by jonlee@apple.com
  • 14 edits in trunk/Source

Add support for notification replaceId in Mac WebKit and WK2
https://bugs.webkit.org/show_bug.cgi?id=80206
<rdar://problem/10965574>

Reviewed by Sam Weinig.

Source/WebKit/mac:

  • WebView/WebNotification.h: Add replaceID method.
  • WebView/WebNotification.mm:

(-[WebNotification replaceID]):

Source/WebKit2:

  • UIProcess/API/C/WKNotification.cpp: Add WK API.

(WKNotificationCopyReplaceID):

  • UIProcess/API/C/WKNotification.h:
  • UIProcess/Notifications/WebNotification.cpp:

(WebKit::WebNotification::WebNotification):

  • UIProcess/Notifications/WebNotification.h: Add replaceID member.

(WebKit::WebNotification::create):
(WebKit::WebNotification::replaceID):
(WebNotification):

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::show):

  • UIProcess/Notifications/WebNotificationManagerProxy.h:

(WebNotificationManagerProxy):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::showNotification):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in: Add replaceID to the showNotification message.
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::show):

10:28 AM WebKitGTK/1.8.x edited by Martin Robinson
(diff)
10:26 AM Changeset in webkit [109765] by Martin Robinson
  • 8 edits
    2 adds in releases/WebKitGTK/webkit-1.8

Merging r109760

10:25 AM Changeset in webkit [109764] by Martin Robinson
  • 13 edits in releases/WebKitGTK/webkit-1.8/Source

Merging r109129

10:23 AM Changeset in webkit [109763] by Nate Chapin
  • 1 edit
    3 copies in branches/chromium/1025

Merge 106476 - Source/WebCore: preventDefault() in a mousedown in a subframe should not
prevent the scrollbar from handling mouse movements if the
cursor leaves the subframe.
https://bugs.webkit.org/show_bug.cgi?id=73097

Reviewed by Darin Adler.

Test: fast/events/scroll-div-with-prevent-default-in-subframe.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=73097.
Test adapted from repro case provided by zacklloyd@google.com.

Reviewed by Darin Adler.

  • fast/events/resources/subframe-with-scrollable-div.html: Added.
  • fast/events/scroll-div-with-prevent-default-in-subframe-expected.txt: Added.
  • fast/events/scroll-div-with-prevent-default-in-subframe.html: Added.

TBR=Nate Chapin
Review URL: https://chromiumcodereview.appspot.com/9600027

10:22 AM Changeset in webkit [109762] by mitz@apple.com
  • 2 edits
    1 delete in trunk/LayoutTests

fast/regions/select-in-region-crash.html has incorrect expected results
https://bugs.webkit.org/show_bug.cgi?id=80289

Reviewed by Alexey Proskuryakov.

  • fast/regions/select-in-region-crash-expected.txt: Updated.
  • platform/chromium/fast/regions/select-in-region-crash-expected.txt: Removed.
10:17 AM Changeset in webkit [109761] by abarth@webkit.org
  • 13 edits in trunk/Source

Geolocation should use a ScriptExecutionContext as its context object
https://bugs.webkit.org/show_bug.cgi?id=80248

Reviewed by Kentaro Hara.

Source/WebCore:

This patch updates Geolocation to use some more modern WebCore
mechanisms. Previously, Geolocation used a Frame as a context object,
which required a bunch of manual integration with the PageCache as well
as custom signaling for Geolocation::reset(). After this patch,
Geolocation subclasses ActiveDOMObject, which does all this work
automatically.

  • Modules/geolocation/Geolocation.cpp:

(WebCore::Geolocation::create):
(WebCore):
(WebCore::Geolocation::Geolocation):
(WebCore::Geolocation::~Geolocation):
(WebCore::Geolocation::document):
(WebCore::Geolocation::frame):
(WebCore::Geolocation::page):
(WebCore::Geolocation::stop):
(WebCore::Geolocation::getCurrentPosition):
(WebCore::Geolocation::watchPosition):
(WebCore::Geolocation::requestPermission):
(WebCore::Geolocation::clearWatch):
(WebCore::Geolocation::setIsAllowed):

  • Modules/geolocation/Geolocation.h:

(WebCore):
(Geolocation):

  • Modules/geolocation/NavigatorGeolocation.cpp:

(WebCore):
(WebCore::NavigatorGeolocation::geolocation):

  • Modules/geolocation/NavigatorGeolocation.h:

(NavigatorGeolocation):

  • dom/Document.cpp:

(WebCore::Document::Document):

  • dom/Document.h:

(Document):

  • history/PageCache.cpp:

(WebCore::logCanCacheFrameDecision):
(WebCore::PageCache::canCachePageContainingThisFrame):

Source/WebKit/chromium:

Rather than indirecting through the Frame to get the SecurityOrigin, we
should get the SecurityOrigin directly from ScriptExecutionContext.

  • src/WebGeolocationPermissionRequest.cpp:

(WebKit::WebGeolocationPermissionRequest::securityOrigin):

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _cacheabilityDictionary]):

  • We no longer special-case Geolocation.
10:15 AM Changeset in webkit [109760] by Martin Robinson
  • 8 edits
    2 adds in trunk

[soup] Crash while loading http://www.jusco.cn
https://bugs.webkit.org/show_bug.cgi?id=68238

Reviewed by Philippe Normand.

.:

  • configure.ac: Bumped the libsoup dependency to 2.37.90.

Source/WebCore:

Test: http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html

When running synchronous XMLHttpRequests, push a new inner thread default
context, so that other sources from timers and network activity do not run.
This will make synchronous requests truly synchronous with the rest of
WebCore.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCoreSynchronousLoader): Clean up the method definitions a bit by writing them inline.
(WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Push a new thread default
context to prevent other sources from running.
(WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Pop the inner thread default context.
(WebCore::closeCallback): If the client is synchronous call didFinishLoading now.
(WebCore::readCallback): Only call didFinishLoading if the client isn't synchronous.
(WebCore::ResourceHandle::defaultSession): Activate use-thread-context so that the soup session
respects the inner thread context.
(ResourceHandleClient):
(WebCore::ResourceHandleClient::isSynchronousClient): Added this virtual method.

Tools:

  • gtk/jhbuild.modules: Bumped the libsoup and glib dependencies

in the jhbuild file.

LayoutTests:

  • http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html: Added.
10:00 AM Changeset in webkit [109759] by Martin Robinson
  • 2 edits in releases/WebKitGTK/webkit-1.8/Source/WebKit2

Merging r109754

9:47 AM Changeset in webkit [109758] by Martin Robinson
  • 2 edits in releases/WebKitGTK/webkit-1.8/Tools

Merging r109722

9:47 AM Changeset in webkit [109757] by Martin Robinson
  • 4 edits in releases/WebKitGTK/webkit-1.8

Merging r109270

9:44 AM Changeset in webkit [109756] by Martin Robinson
  • 5 edits in releases/WebKitGTK/webkit-1.8

Merging r109719

9:15 AM Changeset in webkit [109755] by commit-queue@webkit.org
  • 10 edits
    2 deletes in trunk

Unreviewed, rolling out r109748.
http://trac.webkit.org/changeset/109748
https://bugs.webkit.org/show_bug.cgi?id=80296

Made some tests crash, will fix and recommit (Requested by
noamr on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-03-05

Source/WebKit2:

  • Target.pri:
  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPagePrivate::paintToCurrentGLContext):
(PageProxyNode::PageProxyNode):
(PageProxyNode):
(PageProxyNode::changedStates):
(PageProxyNode::render):
(PageProxyNode::~PageProxyNode):
(QQuickWebPage::updatePaintNode):
(QQuickWebPagePrivate::updateSize):
(QQuickWebPagePrivate::resetPaintNode):
(QQuickWebPagePrivate::~QQuickWebPagePrivate):

  • UIProcess/API/qt/qquickwebpage_p_p.h:

(QQuickWebPagePrivate):

  • UIProcess/DrawingAreaProxy.h:

(WebKit):
(WebKit::DrawingAreaProxy::layerTreeHostProxy):
(DrawingAreaProxy):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):

  • UIProcess/LayerTreeHostProxy.h:

(LayerTreeHostProxy):

  • UIProcess/qt/LayerTreeHostProxyQt.cpp:

(WebKit::LayerTreeHostProxy::syncAnimations):
(WebKit::LayerTreeHostProxy::updateViewport):
(WebKit::LayerTreeHostProxy::syncLayerParameters):
(WebKit::LayerTreeHostProxy::flushLayerChanges):
(WebKit::LayerTreeHostProxy::ensureRootLayer):
(WebKit::LayerTreeHostProxy::syncRemoteContent):
(WebKit::LayerTreeHostProxy::dispatchUpdate):
(WebKit):
(WebKit::LayerTreeHostProxy::createDirectlyCompositedImage):
(WebKit::LayerTreeHostProxy::purgeGLResources):

  • UIProcess/qt/QtWebPageSGNode.cpp: Removed.
  • UIProcess/qt/QtWebPageSGNode.h: Removed.

Tools:

  • MiniBrowser/qt/main.cpp:

(main):

8:55 AM Changeset in webkit [109754] by joone.hur@collabora.co.uk
  • 2 edits in trunk/Source/WebKit2

[GTK] zlib link error with --enable-webkit2
https://bugs.webkit.org/show_bug.cgi?id=79877

Reviewed by Martin Robinson.

zlib should be linked properly.

  • GNUmakefile.am: Link $(ZLIB_LIBS) with libwebkit2gtk instead of

linking it with WebKitWebProcess.

8:54 AM Changeset in webkit [109753] by commit-queue@webkit.org
  • 7 edits in trunk

[GTK] plugins/netscape-plugin-page-cache-works.html fails
https://bugs.webkit.org/show_bug.cgi?id=74409

Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-03-05
Reviewed by Martin Robinson.

Source/WebKit/gtk:

Add a method to override page-cache-for-plugins preference.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::setPageCacheSupportsPlugins):

  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

Tools:

Add support for overriding the page-cache-for-plugins preference
through DumpRenderTreeSupport.

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:

(booleanFromValue): A helper function to convert a string to boolean.
(LayoutTestController::overridePreference):

LayoutTests:

Unskip one new passing test and reclassify one failure.

  • platform/gtk/Skipped:
8:52 AM WebKitGTK/1.8.x edited by Martin Robinson
(diff)
8:40 AM WebKitGTK/1.8.x edited by Martin Robinson
(diff)
8:38 AM Changeset in webkit [109752] by Csaba Osztrogonác
  • 2 edits
    1 add in trunk/LayoutTests

[Qt] Unreviewed gardening.

8:37 AM Changeset in webkit [109751] by jpetsovits@rim.com
  • 7 edits in trunk/Source/WebKit/blackberry

Make accelerated compositing work again with direct rendering.
https://bugs.webkit.org/show_bug.cgi?id=80181
RIM PR: 139110

Reviewed by Antonio Gomes.
Internally reviewed by Arvid Nilsson.

The significant amount of refactoring and optimization work
that has gone into accelerated compositing missed out on
some of the code paths that are being used in direct rendering.

Animations were relying on blitVisibleContents() only (which
is a no-op in direct rendering mode). There were early returns
which are suitable to determine whether screen contents need
to be updated at all; however, when we're already forcing a
re-render then those checks would cause the composition surface
not to appear at all, or avoid drawing new animation frames.

We went through dispatchMessage(), potentially causing
mismatches between rendered (but not yet posted) back content
and layers composited on top of it. As we're rendering onto
the sole target surface (the window) directly and posting
from the same thread, we have to wait for compositing on the
UI thread to finish before posting the window.

In turn, this patch combines both drawSubLayers() and
blendCompositingSurface() calls into one method, reducing
the number of messages to the UI thread within
renderDirectToWindow() to one.

blendCompositingMessage() in renderDirectToScreen() was called
with contents coordinates rather than viewport coordinates.
That caused some of the composited content to be cut off when
the scroll position wasn't (0, 0).

We called copyPreviousContentsToBackSurfaceOfWindow() twice for
one frame, in both renderDirectToWindow() and invalidateWindow().
Only one of those (the latter one) is necessary.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::BackingStorePrivate):
(BlackBerry::WebKit::BackingStorePrivate::renderDirectToWindow):
(BlackBerry::WebKit::BackingStorePrivate::drawSubLayers):
(WebKit):
(BlackBerry::WebKit::BackingStorePrivate::drawAndBlendLayersForDirectRendering):

  • Api/BackingStore.h:

(WebKit):

  • Api/BackingStore_p.h:

(BackingStorePrivate):
(BlackBerry::WebKit::BackingStorePrivate::isDirectRenderingAnimationMessageScheduled):
(BlackBerry::WebKit::BackingStorePrivate::setDirectRenderingAnimationMessageScheduled):

  • Api/WebPage_p.h:

(BlackBerry::WebKit::WebPagePrivate::isAcceleratedCompositingActive):
(WebPagePrivate):

  • WebKitSupport/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositor::WebPageCompositor):
(BlackBerry::WebKit::WebPageCompositor::~WebPageCompositor):
(BlackBerry::WebKit::WebPageCompositor::drawLayers):
(BlackBerry::WebKit::WebPageCompositor::animationTimerFired):

  • WebKitSupport/WebPageCompositor.h:

(WebPageCompositor):

8:34 AM Changeset in webkit [109750] by Carlos Garcia Campos
  • 14 edits
    1 delete in trunk/Source/WebKit2

[WK2] WKPageGetContextMenuFromProposedContextMenuCallback should pass a HitTestResult
https://bugs.webkit.org/show_bug.cgi?id=77208

Reviewed by Anders Carlsson.

A HitTestResultData is now passed to ShowContextMenu WebPageProxy
message instead of the ContextMenuState. ContextMenu client has
been updated to pass the HitTestResult to the
getContextMenuFromProposedMenu callback.

  • GNUmakefile.am: Remove ContextMenuState.h.
  • Shared/APIClientTraits.h:
  • Shared/ContextMenuState.h: Removed.
  • Shared/WebHitTestResult.h:

(WebKit::WebHitTestResult::Data::Data): Add constructor that takes
a WebCore::HitTestResult.

  • UIProcess/API/C/WKPage.h: Add HitTestResult parameter to

getContextMenuFromProposedMenu callback and deprecate the old
version.

  • UIProcess/WebPageContextMenuClient.cpp:

(WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
Pass a HitTestResult to getContextMenuFromProposedMenu or use the
deprecated one if client version is an old one.

  • UIProcess/WebPageContextMenuClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::showContextMenu):
(WebKit::WebPageProxy::internalShowContextMenu): Save the
WebHitTestResult::Data to use it for handling context menu actions.
(WebKit::WebPageProxy::contextMenuItemSelected): Use the saved
WebHitTestResult::Data.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebKit2.xcodeproj/project.pbxproj: Remove ContextMenuState.h.
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::mouseDidMoveOverElement): Use the new
WebHitTestResult::Data constructor that takes a WebCore::HitTestResult.

  • WebProcess/WebPage/WebContextMenu.cpp:

(WebKit::WebContextMenu::show): Create a WebHitTestResult::Data
instead of a ContextMenuState and pass it to ShowContextMenu message.

  • win/WebKit2.vcproj: ContextMenuState.h.
8:26 AM Changeset in webkit [109749] by rwlbuis@webkit.org
  • 6 edits in trunk/Tools

[BlackBerry] Update Tools/DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=80287

Reviewed by Antonio Gomes.

Update so we are sure we can build our implementation of DRT.

  • DumpRenderTree/DumpRenderTree.h: include DumpRenderTreeBlackBerry.h.
  • DumpRenderTree/PixelDumpSupport.cpp: include PixelDumpSupportBlackBerry.h.
  • DumpRenderTree/blackberry/AccessibilityControllerBlackBerry.cpp:

(AccessibilityController::addNotificationListener): add missing hook.
(AccessibilityController::removeNotificationListener): add missing hook.

  • DumpRenderTree/blackberry/AccessibilityUIElementBlackBerry.cpp:

(AccessibilityUIElement::isSelectedOptionActive): add missing hook.

  • DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:

(LayoutTestController::setMockSpeechInputDumpRect): add missing hook.
(LayoutTestController::simulateDesktopNotificationClick): add missing hook.

7:52 AM Changeset in webkit [109748] by noam.rosenthal@nokia.com
  • 10 edits
    2 adds in trunk

[Qt] [WK2] Support threaded renderer in WK2
https://bugs.webkit.org/show_bug.cgi?id=76661

Source/WebKit2:

Made the appropriate fixes in the UI process code to make rendering thread-safe.

  • Separated the scenegraph node code to QtWebPageSGNode. QtWebPageSGNode has direct access to LayerTreeHostProxy.
  • Each function in LayerTreeHostProxy can be either called from the main thread (handling messages from the web process), or from the renderer thread (handling the GL context). The render-queue is locked with a mutex, and messages back to the web process are sent via callOnMainThread.
  • LayerTreeHostProxy is now ThreadSafeRefCounted. That is done to make sure that the GL resources it creates are only freed when the QtWebPageSGNode is deleted, which can be before or after the owning DrawingAreaProxy is deleted. This ensures that the class is deleted only after its GL resources are freed, otherwise those resources may leak.

Based on a patch by Viatcheslav Ostapenko.

Reviewed by Kenneth Rohde Christiansen.

  • Target.pri: Added new files.
  • UIProcess/API/qt/qquickwebpage.cpp: Moved QtWebPageSGNode out.

(QQuickWebPage::updatePaintNode): Call QtWebPageSGNode
(QQuickWebPagePrivate::updateSize): Call QtWebPageSGNode
(QQuickWebPagePrivate::didDeleteSGWebPageNode): Override QtWebPageSGNode::Client
(QQuickWebPagePrivate::~QQuickWebPagePrivate):

  • UIProcess/API/qt/qquickwebpage_p_p.h:

(QQuickWebPagePrivate):

  • UIProcess/DrawingAreaProxy.h:

(WebKit):
(WebKit::DrawingAreaProxy::layerTreeHostProxy): Made LayerTreeHostProxy ref-counted.
(DrawingAreaProxy):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):

  • UIProcess/LayerTreeHostProxy.h:

(WebKit):
(WebKit::LayerTreeHostProxy::create):
(LayerTreeHostProxy):

  • UIProcess/qt/LayerTreeHostProxyQt.cpp:

(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
(WebKit):
(MainThreadGuardedInvoker):

A class that allows invoking functions in the main thread, while guarding a ref-
counted object.

(WebKit::MainThreadGuardedInvoker::call):
(WebKit::MainThreadGuardedInvoker::MainThreadGuardedInvoker):
(WebKit::MainThreadGuardedInvoker::invoke):
(WebKit::LayerTreeHostProxy::syncAnimations):
(WebKit::LayerTreeHostProxy::updateViewport):
(WebKit::LayerTreeHostProxy::detachDrawingArea):
(WebKit::LayerTreeHostProxy::syncLayerParameters):
(WebKit::LayerTreeHostProxy::setShouldRenderNextFrame):
(WebKit::LayerTreeHostProxy::flushLayerChanges):
(WebKit::LayerTreeHostProxy::ensureRootLayer):
(WebKit::LayerTreeHostProxy::syncRemoteContent):
(WebKit::LayerTreeHostProxy::dispatchUpdate):
(WebKit::LayerTreeHostProxy::createDirectlyCompositedImage):
(WebKit::LayerTreeHostProxy::purgeGLResources):

  • UIProcess/qt/QtWebPageSGNode.cpp: Added.
  • UIProcess/qt/QtWebPageSGNode.h: Added.

Tools:

Remove the QML_NO_THREADED_RENDERER environment variable from MiniBrowser.

Reviewed by Kenneth Rohde Christiansen.

  • MiniBrowser/qt/main.cpp:

(main):

7:37 AM Changeset in webkit [109747] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] DOMSupport visibleSelectionForRangeInputElement incorrectly dereferences a null range.
https://bugs.webkit.org/show_bug.cgi?id=80274

Patch by George Staikos <gstaikos@rim.com> on 2012-03-05
Reviewed by Antonio Gomes.

A null range can be returned so we should not blindly deref it.
Reviewed Internally by Mike Fenton.

  • WebKitSupport/DOMSupport.cpp:

(BlackBerry::WebKit::DOMSupport::visibleSelectionForRangeInputElement):

7:36 AM Changeset in webkit [109746] by ahf@0x90.dk
  • 3 edits in trunk/Source/WebCore

Remove pointer to timer and use the timers directly in the tiled backing store https://bugs.webkit.org/show_bug.cgi?id=80283

Patch by Kenneth Rohde Christiansen and Alexander Færøy.

Reviewed by Simon Hausmann.

  • platform/graphics/TiledBackingStore.cpp:

(WebCore::TiledBackingStore::TiledBackingStore):
(WebCore::TiledBackingStore::~TiledBackingStore):
(WebCore::TiledBackingStore::createTiles):
(WebCore::TiledBackingStore::startTileBufferUpdateTimer):
(WebCore::TiledBackingStore::startTileCreationTimer):

  • platform/graphics/TiledBackingStore.h:

(TiledBackingStore):

7:35 AM Changeset in webkit [109745] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Styles] Tabbing an empty new property in the middle of style moves the editor to the next section
https://bugs.webkit.org/show_bug.cgi?id=80264

Reviewed by Pavel Feldman.

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype.element.userInput.previousContent.context.moveDirection.alreadyNew):
(WebInspector.StylePropertyTreeElement.prototype):

7:30 AM Changeset in webkit [109744] by rwlbuis@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Update LocalizedStringsBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=80278

Reviewed by Antonio Gomes.

Update LocalizedStringsBlackBerry.cpp to current HEAD.

  • platform/blackberry/LocalizedStringsBlackBerry.cpp:

(WebCore::inputElementAltText): fall back to "Submit".
(WebCore::imageTitle): choose the format "filename(widthxheight)" like Chrome does.
(WebCore::fileButtonNoFilesSelectedLabel): fall back to "No File Chosen" translation like Chrome does.
(WebCore):

7:24 AM Changeset in webkit [109743] by loislo@chromium.org
  • 3 edits
    1 add in trunk

Web Inspector: [chromium] introduce HeapSnapshot performance test.
https://bugs.webkit.org/show_bug.cgi?id=80280

Reviewed by Pavel Feldman.

PerformanceTests:

  • inspector/detailed-heapshots-smoke-test.html: Added.

Source/WebCore:

  • inspector/front-end/HeapSnapshotProxy.js:

(WebInspector.HeapSnapshotLoaderProxy.prototype.finishLoading.updateStaticData):
(WebInspector.HeapSnapshotLoaderProxy.prototype.finishLoading):
(WebInspector.HeapSnapshotLoaderProxy.prototype._callLoadCallbacks):

7:14 AM Changeset in webkit [109742] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: cannot be launched when localStorage is disabled
https://bugs.webkit.org/show_bug.cgi?id=80252

Reviewed by Vsevolod Vlasov.

  • inspector/front-end/Settings.js:
7:07 AM Changeset in webkit [109741] by pfeldman@chromium.org
  • 4 edits
    2 adds in trunk

Web Inspector: check for the number of parsed css properties.
https://bugs.webkit.org/show_bug.cgi?id=80268

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: inspector/styles/set-property-boundaries.html

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::didRemoveDOMNode):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyle::setPropertyText):

LayoutTests:

  • inspector/styles/set-property-boundaries-expected.txt: Added.
  • inspector/styles/set-property-boundaries.html: Added.
7:00 AM Changeset in webkit [109740] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Tabbed pane should redraw tab elements when tab is closed.
https://bugs.webkit.org/show_bug.cgi?id=80273

Reviewed by Pavel Feldman.

  • inspector/front-end/TabbedPane.js:

(WebInspector.TabbedPane.prototype.closeTab):

6:55 AM WebKitGTK/WebKit2Roadmap edited by Carlos Garcia Campos
1.8 milestones done! (diff)
6:54 AM Changeset in webkit [109739] by ahf@0x90.dk
  • 2 edits in trunk/Source/WebCore

Improve comments in the tiled backing store https://bugs.webkit.org/show_bug.cgi?id=80279

Patch by Kenneth Rohde Christiansen and Alexander Færøy.

Reviewed by Simon Hausmann.

  • platform/graphics/TiledBackingStore.cpp:

(WebCore::TiledBackingStore::createTiles):

6:26 AM Changeset in webkit [109738] by ahf@0x90.dk
  • 3 edits in trunk/Source/WebCore

TiledBackingStore.{h,cpp} contains unclear variable names https://bugs.webkit.org/show_bug.cgi?id=80276

Patch by Kenneth Rohde Christiansen and Alexander Færøy.

Reviewed by Simon Hausmann.

This patch renames some of the variables in TiledBackingStore.cpp to
enhance the clearity and for consistence.

The visibleContentsRect is renamed to visibleRect as it is not in
contents coordinates.

The panningTrajectoryVector and m_visibleRectTrajectoryVector are
renamed to just *[m_]trajectoryVector, as that is descriptive enough.

The previous prefix has also been removed, as it is being used as the
current one in the code. This avoids confusion.

  • platform/graphics/TiledBackingStore.cpp:

(WebCore::TiledBackingStore::coverWithTilesIfNeeded):
(WebCore::TiledBackingStore::visibleRect):
(WebCore::TiledBackingStore::visibleAreaIsCovered):
(WebCore::TiledBackingStore::createTiles):
(WebCore::TiledBackingStore::computeCoverAndKeepRect):
(WebCore::TiledBackingStore::removeAllNonVisibleTiles):

  • platform/graphics/TiledBackingStore.h:

(TiledBackingStore):

6:16 AM Changeset in webkit [109737] by Simon Hausmann
  • 2 edits in trunk/Source/WebCore

[Qt] Fix build with Qt 5 and OpenGL ES 2.0

Reviewed by Noam Rosenthal.

  • platform/graphics/texmap/TextureMapper.h: Since we don't do QT += opengl with Qt 5 anymore

here in WebCore, we cannot check for QT_OPENGL_LIB. But since this is Qt5, we know that the
GLES setting comes qconfig.h and we can rely on it.

6:00 AM Changeset in webkit [109736] by ahf@0x90.dk
  • 2 edits in trunk/Source/WebCore

Whitespace clean-up of TiledBackingStore.cpp.

Rubber-stamped by Kenneth Rohde Christiansen.

Already covered by existing tests.

  • platform/graphics/TiledBackingStore.cpp:

(WebCore):
(WebCore::TiledBackingStore::updateTileBuffers):
(WebCore::TiledBackingStore::paint):

5:57 AM Changeset in webkit [109735] by Carlos Garcia Campos
  • 4 edits in trunk/Source

Unreviewed. Fix make distcheck.

Source/JavaScriptCore:

  • GNUmakefile.list.am: Add missing header file.

Source/WebCore:

  • GNUmakefile.list.am: Add missing header file.
5:29 AM Changeset in webkit [109734] by ahf@0x90.dk
  • 2 edits in trunk/Tools

Unreviewed. Add myself to committer list.

  • Scripts/webkitpy/common/config/committers.py:
5:28 AM WebKitGTK/1.8.x edited by Carlos Garcia Campos
(diff)
5:00 AM Changeset in webkit [109733] by vestbo@webkit.org
  • 6 edits
    3 adds in trunk/Tools

[Qt] Use config test to determine if the compiler supports -MD

We used to assume that unix systems building against Qt5 would have
a compiler that supported -MD. Although this was usually the case,
we failed to take into account broken tools for distributed builds
(e.g. teambuilder or icecream) which would end up producing .d files
in the root of the build dir instead of along-side the object file.

Now that we use a config-test to determine the support, we'll capture
those cases, unless distributed builds are enabled after the initial
build-webkit run.

Reviewed by Csaba Osztrogonác.

4:03 AM Changeset in webkit [109732] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Incorrect appropriateSelectorFor() suggestion for when a DOMNode has more than 2 CSS classes
https://bugs.webkit.org/show_bug.cgi?id=80258

Reviewed by Pavel Feldman.

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMNode.prototype.appropriateSelectorFor):

3:55 AM Changeset in webkit [109731] by wingo@igalia.com
  • 3 edits in trunk/Source/JavaScriptCore

WTF: Micro-optimize cleanup of empty vectors and hash tables
https://bugs.webkit.org/show_bug.cgi?id=79903

Reviewed by Michael Saboff and Geoffrey Garen.

This patch speeds up cleanup of vectors and hash tables whose
backing store was never allocated. This is the case by default
for most vectors / hash tables that never had any entries added.

The result for me is that calling checkSyntax 1000 times on
concat-jquery-mootools-prototype.js goes from 6.234s to 6.068s, a
2.4% speedup.

  • wtf/HashTable.h:

(WTF::HashTable::~HashTable):
(WTF::::clear): Don't deallocate the storage or frob member
variables if there is no backing storage.

  • wtf/Vector.h:

(WTF::VectorBufferBase::deallocateBuffer): Likewise.

2:44 AM Changeset in webkit [109730] by apavlov@chromium.org
  • 7 edits
    2 adds in trunk

Web Inspector: [Styles] [CRASH] Handle rule addition and inline style editing failure due to Content-Security-Policy in the page
https://bugs.webkit.org/show_bug.cgi?id=80024

Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/styles/add-new-rule-inline-style-csp.html

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::viaInspectorStyleSheet):

  • inspector/InspectorCSSAgent.h:

(InlineStyleOverrideScope):
(WebCore::InspectorCSSAgent::InlineStyleOverrideScope::InlineStyleOverrideScope):
(WebCore::InspectorCSSAgent::InlineStyleOverrideScope::~InlineStyleOverrideScope):
(InspectorCSSAgent):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheetForInlineStyle::setStyleText):

  • page/ContentSecurityPolicy.cpp:

(WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
(WebCore::ContentSecurityPolicy::allowInlineStyle):
(WebCore::ContentSecurityPolicy::setOverrideAllowInlineStyle):
(WebCore):

  • page/ContentSecurityPolicy.h:

(ContentSecurityPolicy):

LayoutTests:

  • inspector/styles/add-new-rule-inline-style-csp-expected.txt: Added.
  • inspector/styles/add-new-rule-inline-style-csp.html: Added.
2:26 AM Changeset in webkit [109729] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[Forms] The "optgroup" element should not be a form-associated element
https://bugs.webkit.org/show_bug.cgi?id=80234

Patch by Yoshifumi Inoue <yosin@chromium.org> on 2012-03-05
Reviewed by Kent Tamura.

This patch changes base class of HTMLOptGroup to HTMLElement from
HTMLFormControlElement to avoid the "optgroup" element in form-associate
elements collection.

This patch doesn't affect HTMLOptionElement::disabled's static_cast. However,
it doesn't good at coding style. This patch also fix it.

No new tests. No behavior changes.

  • html/HTMLOptGroupElement.cpp:

(WebCore::HTMLOptGroupElement::HTMLOptGroupElement): Remove "form" parameter.
(WebCore::HTMLOptGroupElement::create): Remove "form" parameter.
(WebCore::HTMLOptGroupElement::childrenChanged): Replace base method call.
(WebCore::HTMLOptGroupElement::parseAttribute): Replace base method call.
(WebCore::HTMLOptGroupElement::attach): Replace base method call.
(WebCore::HTMLOptGroupElement::detach): Replace base method call.

  • html/HTMLOptGroupElement.h:

(HTMLOptGroupElement): Change base class to HTMLElement.

  • html/HTMLOptionElement.cpp:

(WebCore::HTMLOptionElement::disabled): Replace static_cast<HTMLFormControlElement*> to static_cast<HTMLElement*> with checking isHTMLElement.

  • html/HTMLTagNames.in: Remove "constructorNeedsFormElement" for not passing "form" parameter in HTMLElementFactory.
2:01 AM Changeset in webkit [109728] by podivilov@chromium.org
  • 4 edits in trunk

Web Inspector: fix extensions-resource.html test.
https://bugs.webkit.org/show_bug.cgi?id=80183

Reviewed by Vsevolod Vlasov.

Source/WebCore:

  • inspector/front-end/DebuggerPresentationModel.js:

(WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):

LayoutTests:

  • platform/chromium/test_expectations.txt:
1:49 AM Changeset in webkit [109727] by tkent@chromium.org
  • 2 edits
    1 delete in trunk/LayoutTests

[Chromium] Rebaseline search-field-cancel.html for r109503.
Fix an error of the previous rebaseline.

  • platform/chromium-mac-snowleopard/fast/repaint/search-field-cancel-expected.txt: Removed.
  • platform/chromium-win/fast/repaint/search-field-cancel-expected.txt:
1:24 AM Changeset in webkit [109726] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

Qt API test buildstep throws exception after buildmaster update
https://bugs.webkit.org/show_bug.cgi?id=80249

Reviewed by Zoltan Herczeg.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg: Disable API tests on the Qt bot temporarily.

(BuildAndTestFactory.init):

1:05 AM Changeset in webkit [109725] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, skip a new failing test.

  • platform/qt/Skipped:
12:48 AM Changeset in webkit [109724] by caseq@chromium.org
  • 17 edits in trunk

Add instrumentation for frame start/end on timeline.

Web Inspector: add timeline instrumentation for frame events
https://bugs.webkit.org/show_bug.cgi?id=80127

Reviewed by Pavel Feldman.

Source/WebCore:

  • display frame boundaries when vertical overview mode is on
  • aggregate by frame in vertical overview mode
  • switched event filtering criteria from index to time in vertical overview mode
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didBeginFrameImpl):
(WebCore):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didBeginFrame):
(WebCore):

  • inspector/InspectorTimelineAgent.cpp:

(TimelineRecordType):
(WebCore::InspectorTimelineAgent::didBeginFrame):
(WebCore):

  • inspector/InspectorTimelineAgent.h:

(InspectorTimelineAgent):

  • inspector/front-end/TimelineModel.js:
  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineOverviewPane):
(WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
(WebInspector.TimelineOverviewPane.prototype.setStartAtZero):
(WebInspector.TimelineOverviewPane.prototype.updateEventDividers):
(WebInspector.TimelineOverviewPane.prototype.sidebarResized):
(WebInspector.TimelineOverviewPane.prototype.reset):
(WebInspector.TimelineOverviewPane.prototype.accept):
(WebInspector.TimelineOverviewPane.prototype.windowStartTime):
(WebInspector.TimelineOverviewPane.prototype.windowEndTime):
(WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
(WebInspector.TimelineStartAtZeroOverview):
(WebInspector.TimelineStartAtZeroOverview.prototype.reset):
(WebInspector.TimelineStartAtZeroOverview.prototype.update):
(WebInspector.TimelineStartAtZeroOverview.prototype._aggregateFrames):
(WebInspector.TimelineStartAtZeroOverview.prototype._aggregateFrameStatistics):
(WebInspector.TimelineStartAtZeroOverview.prototype._aggregateRecords):
(WebInspector.TimelineStartAtZeroOverview.prototype._buildBar):
(WebInspector.TimelineStartAtZeroOverview.prototype.getWindowTimes):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._updateEventDividers):
(WebInspector.TimelinePanel.prototype._createEventDivider):
(WebInspector.TimelinePanel.prototype._toggleStartAtZeroButtonClicked):
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline.addTimestampRecords):
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
(WebInspector.TimelinePanel.prototype._refresh):
(WebInspector.TimelinePanel.prototype._refreshRecords):
(WebInspector.TimelineCategoryFilter.prototype.accept):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.prototype.get _recordStyles):

  • inspector/front-end/inspectorCommon.css:
  • inspector/front-end/timelinePanel.css:

(#timeline-container):
(.timeline .resources-event-divider):
(.timeline.timeline-start-at-zero .resources-divider):
(.timeline .resources-event-divider.timeline-frame-divider):

Source/WebKit/chromium:

  • expose an instrumentation method from WebWidget to mark frame update start
  • public/WebWidget.h:

(WebWidget):
(WebKit::WebWidget::instrumentBeginFrame):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::instrumentBeginFrame):
(WebKit):

  • src/WebViewImpl.h:

(WebViewImpl):

LayoutTests:

  • inspector/timeline/timeline-enum-stability-expected.txt:
12:44 AM Changeset in webkit [109723] by morrita@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for !ENABLE(SHADOW_DOM).

  • html/shadow/HTMLContentElement.cpp:

(WebCore::contentTagName):

12:42 AM Changeset in webkit [109722] by Martin Robinson
  • 2 edits in trunk/Tools

[GTK] Unit tests are noisy when run under jhbuild
https://bugs.webkit.org/show_bug.cgi?id=80241

Reviewed by Philippe Normand.

Force the 'memory' backend in GSettings so that each unit
test doesn't produce a warning when it's forced to fall back
to the 'memory' backend.

  • Scripts/run-gtk-tests:

(TestRunner.run): Force the 'memory' backend.

12:37 AM Changeset in webkit [109721] by morrita@google.com
  • 14 edits
    2 adds in trunk

Internally used HTMLContentElement subclasses should have correct wrapper.
https://bugs.webkit.org/show_bug.cgi?id=80237

Reviewed by Kent Tamura.

Source/WebCore:

DetailsContentElement and DetailsSummaryElement used to use
<div> as their tag name. But this means they are wrapped by
wrapper objects for HTMLDivElement, which is wrong. This happened
to work though because HTMLDivElement has no extra state or API.

This change introduces "noConstructor" keyword for make_name.pl
sources. This keyword allows a tag name to specify its own
wrapper without making the tag name visible from the parser, or
HTMLElementFactory in precise.

Following this addition, this change also adds a new tag name
"webkitShadowContent" for DetailsContentElement and DetailsSummaryElement,
which has no constructor, and whose wrapper type is HTMLElement.

This change isn't visible from the page author and only matters for testing.

Test: fast/dom/shadow/content-element-user-agent-shadow.html

  • dom/make_names.pl:

(defaultTagPropertyHash):
(buildConstructorMap):
(printConstructors):
(printFunctionInits):

  • html/HTMLDetailsElement.cpp:

(WebCore::DetailsContentElement::DetailsContentElement):
(WebCore::DetailsSummaryElement::DetailsSummaryElement):

  • html/HTMLTagNames.in:
  • html/shadow/HTMLContentElement.cpp:

(WebCore::contentTagName):

LayoutTests:

  • fast/dom/shadow/content-element-user-agent-shadow-expected.txt: Added.
  • fast/dom/shadow/content-element-user-agent-shadow.html: Added.
  • platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt:
  • platform/gtk/fast/html/details-remove-summary-1-and-click-expected.txt:
  • platform/gtk/fast/html/details-remove-summary-4-and-click-expected.txt:
  • platform/mac/fast/html/details-remove-summary-1-and-click-expected.txt:
  • platform/mac/fast/html/details-remove-summary-4-and-click-expected.txt:
  • platform/qt/fast/html/details-remove-summary-1-and-click-expected.txt:
  • platform/qt/fast/html/details-remove-summary-4-and-click-expected.txt:
12:35 AM Changeset in webkit [109720] by Martin Robinson
  • 4 edits in trunk

[GTK] "Console: undefined @0: ReferenceError: Can't find variable: WebInspector" during testwebinspector
https://bugs.webkit.org/show_bug.cgi?id=80235

Reviewed by Philippe Normand.

Source/WebKit/gtk:

Wait to inspect the WebView until the page has finished loading. Also
clean up some minor style errors.

  • tests/testwebinspector.c:

(closeInspector): Small style fixes.
(showInspector): Ditto.
(loadFinished): Ditto.
(test_webkit_web_inspector_close_and_inspect): Wait to inspect until the page has loaded.
(test_webkit_web_inspector_destroy_inspected_web_view): Ditto.
(main): Small style fixes.

Tools:

  • Scripts/run-gtk-tests:

(TestRunner.run): Use the WEBKIT_INSPECTOR_PATH environment variable so that
inspector resources path determination is shared by all tests.

12:28 AM Changeset in webkit [109719] by Martin Robinson
  • 7 edits in trunk

[GTK] REGRESSION: r108278 broke some tests that expect focus
https://bugs.webkit.org/show_bug.cgi?id=79084

Reviewed by Philippe Normand.

Source/WebKit/gtk:

Grab focus before running the test. This ensures that if the
WebView lost focus, it has it before sending events.

  • tests/testcopyandpaste.c:

(test_copy_and_paste): Grab focus.

Tools:

Grab focus when dumping test results and also when sending
events. During the course of testing, the WebView may lose
focus and this seems to snap it back when tests demand it.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(dump): Grab focus.

  • DumpRenderTree/gtk/EventSender.cpp:

(dispatchEvent): Ditto.

LayoutTests:

  • platform/gtk/Skipped: Unskip passing tests.
12:22 AM Changeset in webkit [109718] by shinyak@chromium.org
  • 5 edits in trunk/Source/WebCore

Refactoring: Move HTMLContentElement::attach to InsertionPoint::attach.
https://bugs.webkit.org/show_bug.cgi?id=80243

Reviewed by Hajime Morita.

Since the current code in HTMLContentElement::attach() will be used for coming <shadow>
elements, it is natural that InsertionPoint::attach() has such code.

No new tests, no change in behavior.

  • html/shadow/HTMLContentElement.cpp:
  • html/shadow/HTMLContentElement.h:

(HTMLContentElement):

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::attach):
(WebCore):
(WebCore::InsertionPoint::detach):

  • html/shadow/InsertionPoint.h:

(InsertionPoint):

12:18 AM WebKitGTK/1.8.x edited by Martin Robinson
(diff)
12:18 AM Changeset in webkit [109717] by tkent@chromium.org
  • 5 edits
    3 adds in trunk/LayoutTests

[Chromium] Rebaseline search-field-cancel.html for r109503.

  • platform/chromium-linux/fast/repaint/search-field-cancel-expected.png:
  • platform/chromium-mac-leopard/fast/repaint/search-field-cancel-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/repaint/search-field-cancel-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/repaint/search-field-cancel-expected.txt: Added.
  • platform/chromium-win/fast/repaint/search-field-cancel-expected.png:
  • platform/chromium-win/fast/repaint/search-field-cancel-expected.txt:
  • platform/chromium/test_expectations.txt:
12:13 AM Changeset in webkit [109716] by abarth@webkit.org
  • 12 edits in trunk/Source/WebCore

allowDatabaseAccess and databaseExceededQuota should be part of DatabaseContext not ScriptExecutionContext
https://bugs.webkit.org/show_bug.cgi?id=80178

Reviewed by Eric Seidel.

These functions are only used by SQLDatabase, which means we can move
them to DatabaseContext, removing one more tendril of the SQLDatabase
code.

  • dom/Document.cpp:

(WebCore):

  • dom/Document.h:

(Document):

  • dom/ScriptExecutionContext.h:

(ScriptExecutionContext):

  • storage/DatabaseContext.cpp:

(WebCore::DatabaseContext::DatabaseContext):
(WebCore::DatabaseContext::from):
(WebCore::DatabaseContext::allowDatabaseAccess):
(WebCore):
(WebCore::DatabaseContext::databaseExceededQuota):

  • storage/DatabaseContext.h:

(DatabaseContext):

  • storage/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::canEstablishDatabase):

  • storage/SQLTransaction.cpp:

(WebCore::SQLTransaction::executeSQL):

  • storage/SQLTransactionClient.cpp:

(WebCore::SQLTransactionClient::didExceedQuota):

  • storage/SQLTransactionSync.cpp:

(WebCore::SQLTransactionSync::executeSQL):

  • workers/WorkerContext.cpp:

(WebCore):

  • workers/WorkerContext.h:

(WorkerContext):

12:08 AM Changeset in webkit [109715] by Martin Robinson
  • 2 edits in releases/WebKitGTK/webkit-1.8/Source/WebCore

Merging r109580

12:07 AM WebKitGTK/1.8.x edited by Martin Robinson
(diff)
12:07 AM Changeset in webkit [109714] by Martin Robinson
  • 2 edits in releases/WebKitGTK/webkit-1.8/Tools

Merging r109509

12:05 AM Changeset in webkit [109713] by Martin Robinson
  • 2 edits in releases/WebKitGTK/webkit-1.8/Tools

Merging r109396

12:03 AM Changeset in webkit [109712] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, mark two tests as flaky in GTK.

  • platform/gtk/test_expectations.txt:

editing/selection/select-line-break-with-opposite-directionality.html
and fast/css/hover-update.html are flaky.

12:02 AM Changeset in webkit [109711] by Martin Robinson
  • 13 edits in releases/WebKitGTK/webkit-1.8/Source/WebCore

Merging 109515

Mar 4, 2012:

11:58 PM Changeset in webkit [109710] by Martin Robinson
  • 2 edits in releases/WebKitGTK/webkit-1.8/Tools

Merging r108540

11:57 PM Changeset in webkit [109709] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r107551.
http://trac.webkit.org/changeset/107551
https://bugs.webkit.org/show_bug.cgi?id=80245

caused incorrect style sharing (Requested by kling on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-03-04

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::collectMatchingRulesForList):

11:56 PM WebKitGTK/1.8.x edited by Martin Robinson
(diff)
11:56 PM Changeset in webkit [109708] by Martin Robinson
  • 2 edits in releases/WebKitGTK/webkit-1.8/Source/WebKit2

Merging r108760

11:50 PM Changeset in webkit [109707] by Martin Robinson
  • 4 edits in releases/WebKitGTK/webkit-1.8/Source

Merging r108631

11:47 PM WebKitGTK/1.8.x edited by Martin Robinson
(diff)
10:57 PM Changeset in webkit [109706] by macpherson@chromium.org
  • 2 edits in trunk/Source/WebCore

Remove unused macro HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE_WITH_VALUE.
https://bugs.webkit.org/show_bug.cgi?id=80236

Reviewed by Eric Seidel.

No new tests / unused code deletion only.

  • css/CSSStyleSelector.cpp:

(WebCore):

10:52 PM Changeset in webkit [109705] by fpizlo@apple.com
  • 21 edits
    4 adds in trunk/Source

JIT heuristics should be hyperbolic
https://bugs.webkit.org/show_bug.cgi?id=80055
<rdar://problem/10922260>

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

Added tracking of the amount of executable memory typically used for a bytecode
instruction. Modified the execution counter scheme to use this, and the amount
of free memory, to determine how long to wait before invoking the JIT.

The result is that even if we bomb the VM with more code than can fit in our
executable memory pool, we still keep running and almost never run out of
executable memory - which ensures that if we have to JIT something critical, then
we'll likely have enough memory to do so. This also does not regress performance
on the three main benchmarks.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::predictedMachineCodeSize):
(JSC):
(JSC::CodeBlock::usesOpcode):

  • bytecode/CodeBlock.h:

(CodeBlock):
(JSC::CodeBlock::checkIfJITThresholdReached):
(JSC::CodeBlock::dontJITAnytimeSoon):
(JSC::CodeBlock::jitAfterWarmUp):
(JSC::CodeBlock::jitSoon):
(JSC::CodeBlock::llintExecuteCounter):
(JSC::CodeBlock::counterValueForOptimizeAfterWarmUp):
(JSC::CodeBlock::counterValueForOptimizeAfterLongWarmUp):
(JSC::CodeBlock::addressOfJITExecuteCounter):
(JSC::CodeBlock::offsetOfJITExecuteCounter):
(JSC::CodeBlock::offsetOfJITExecutionActiveThreshold):
(JSC::CodeBlock::offsetOfJITExecutionTotalCount):
(JSC::CodeBlock::jitExecuteCounter):
(JSC::CodeBlock::checkIfOptimizationThresholdReached):
(JSC::CodeBlock::optimizeNextInvocation):
(JSC::CodeBlock::dontOptimizeAnytimeSoon):
(JSC::CodeBlock::optimizeAfterWarmUp):
(JSC::CodeBlock::optimizeAfterLongWarmUp):
(JSC::CodeBlock::optimizeSoon):

  • bytecode/ExecutionCounter.cpp: Added.

(JSC):
(JSC::ExecutionCounter::ExecutionCounter):
(JSC::ExecutionCounter::checkIfThresholdCrossedAndSet):
(JSC::ExecutionCounter::setNewThreshold):
(JSC::ExecutionCounter::deferIndefinitely):
(JSC::ExecutionCounter::applyMemoryUsageHeuristics):
(JSC::ExecutionCounter::applyMemoryUsageHeuristicsAndConvertToInt):
(JSC::ExecutionCounter::hasCrossedThreshold):
(JSC::ExecutionCounter::setThreshold):
(JSC::ExecutionCounter::reset):

  • bytecode/ExecutionCounter.h: Added.

(JSC):
(ExecutionCounter):
(JSC::ExecutionCounter::formattedTotalCount):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • jit/ExecutableAllocator.cpp:

(JSC::DemandExecutableAllocator::allocateNewSpace):
(JSC::ExecutableAllocator::underMemoryPressure):
(JSC):
(JSC::ExecutableAllocator::memoryPressureMultiplier):

  • jit/ExecutableAllocator.h:
  • jit/ExecutableAllocatorFixedVMPool.cpp:

(JSC::ExecutableAllocator::memoryPressureMultiplier):
(JSC):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::jitCompileAndSetHeuristics):

  • llint/LowLevelInterpreter32_64.asm:
  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/Options.cpp:

(Options):
(JSC::Options::initializeOptions):

  • runtime/Options.h:

(Options):

  • wtf/SimpleStats.h: Added.

(WTF):
(SimpleStats):
(WTF::SimpleStats::SimpleStats):
(WTF::SimpleStats::add):
(WTF::SimpleStats::operator!):
(WTF::SimpleStats::count):
(WTF::SimpleStats::sum):
(WTF::SimpleStats::sumOfSquares):
(WTF::SimpleStats::mean):
(WTF::SimpleStats::variance):
(WTF::SimpleStats::standardDeviation):

Source/WebCore:

Reviewed by Oliver Hunt.

No new tests, since there's no new functionality.

  • ForwardingHeaders/wtf/SimpleStats.h: Added.
10:30 PM Changeset in webkit [109704] by shinyak@chromium.org
  • 5 edits in trunk

Source/WebCore: Methods like firstRendererOf of NodeRenderingContext should be extracted.
https://bugs.webkit.org/show_bug.cgi?id=79902

Reviewed by Hajime Morita.

firstRendererOfInsertionPoint should return the first renderer of its child, however
it returns next renderer of parent. The same thing happens lastRendererOfInsertionPoint.

Test: content-element-move.html has another test case.

  • dom/NodeRenderingContext.cpp:

(WebCore):
(WebCore::nextRendererOfInsertionPoint):
(WebCore::previousRendererOfInsertionPoint):
(WebCore::firstRendererOfInsertionPoint):
(WebCore::lastRendererOfInsertionPoint):
(WebCore::firstRendererOf):
(WebCore::lastRendererOf):
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):

LayoutTests: Refactoring: Methods like firstRendererOf of NodeRenderingContext should be extracted.
https://bugs.webkit.org/show_bug.cgi?id=79902

Reviewed by Hajime Morita.

Added a new test case.

  • fast/dom/shadow/content-element-move-expected.txt:
  • fast/dom/shadow/content-element-move.html:
8:43 PM Changeset in webkit [109703] by morrita@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for ENABLE(MATHML).

  • mathml/MathMLElement.h:

(WebCore):

8:09 PM Changeset in webkit [109702] by morrita@google.com
  • 6 edits in trunk/Source/WebCore

WebKit needs toHTMLUnknownElement() and isUnknown() for sanity check.
https://bugs.webkit.org/show_bug.cgi?id=80229

Reviewed by Kent Tamura.

The code generator has naked static_cast<> which could be unsafe.
We can turn it into toHTMLUnknownElement() and the like.

No new tests. Just added a sanity check.

  • dom/make_names.pl:

(printWrapperFactoryCppFile):

  • html/HTMLElement.h:

(HTMLElement):
(WebCore::HTMLElement::isHTMLUnknownElement):

  • html/HTMLUnknownElement.h:

(HTMLUnknownElement):
(WebCore::toHTMLUnknownElement):
(WebCore):

  • mathml/MathMLElement.h:

(toMathMLElement):

  • svg/SVGElement.h:

(WebCore::toSVGElement):
(WebCore):

8:02 PM Changeset in webkit [109701] by charles.wei@torchmobile.com.cn
  • 2 edits in trunk/Tools

Unreviewed, Add myself to committer list.
https://bugs.webkit.org/show_bug.cgi?id=80232

  • Scripts/webkitpy/common/config/committers.py:
7:44 PM Changeset in webkit [109700] by yuzo@google.com
  • 6 edits
    3 copies in branches/chromium/1025

Merge 108574 - REGRESSION (r104060): Web font is not loaded if specified by link element dynamically inserted
https://bugs.webkit.org/show_bug.cgi?id=79186

Reviewed by Andreas Kling.

Source/WebCore:

Test: fast/css/font-face-insert-link.html

If a dynamically inserted stylesheet contains @font-face rules, we may fail to update the rendering.

Before r104060 the style selector was destroyed on every style change, and the font selector along with it.
This is no longer the case and we can't rely on comparing font selector pointers when comparing Fonts
for equality. This patch adds version number to the font selector and checks it in Font::operator==.
The version number is incremented when new font-face rules are added to the font selector.

FontFallbackList is an object shared between Fonts so the extra field shouldn't matter much in terms
of memory.

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::CSSFontSelector):
(WebCore::CSSFontSelector::addFontFaceRule):

  • css/CSSFontSelector.h:

(CSSFontSelector):

  • platform/graphics/Font.cpp:

(WebCore::Font::operator==):

  • platform/graphics/FontFallbackList.cpp:

(WebCore::FontFallbackList::FontFallbackList):
(WebCore::FontFallbackList::invalidate):

  • platform/graphics/FontFallbackList.h:

(FontFallbackList):
(WebCore::FontFallbackList::fontSelectorVersion):

  • platform/graphics/FontSelector.h:

(FontSelector):

LayoutTests:

  • fast/css/font-face-insert-link-expected.txt: Added.
  • fast/css/font-face-insert-link.html: Added.
  • fast/css/resources/ahem.css: Added.

(@font-face):

TBR=karen@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9595009

7:38 PM Changeset in webkit [109699] by macpherson@chromium.org
  • 3 edits in trunk/Source/WebCore

Handle CSSPropertyWebkitColumnBreakAfter, CSSPropertyWebkitColumnBreakBefore and CSSPropertyWebkitColumnBreakInside in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=80226

Reviewed by Eric Seidel.

No new tests / refactoring only.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::collectMatchingRulesForList):

7:29 PM Changeset in webkit [109698] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk/Source/WebKit

[BlackBerry] upstream CredentialManager and CredentialTransformData implementation
https://bugs.webkit.org/show_bug.cgi?id=80107

Patch by Jonathan Dong <Jonathan Dong> on 2012-03-04
Reviewed by Antonio Gomes.

Initial upstream of CredentialManager.[h|cpp] and
CredentialTransformData.[h|cpp].
No new test.

Source/WebKit:

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

  • WebCoreSupport/CredentialManager.cpp: Added.

(WebCore):
(WebCore::CredentialManager::CredentialManager):
(WebCore::CredentialManager::autofillAuthenticationChallenge):
(WebCore::CredentialManager::autofillPasswordForms):
(WebCore::CredentialManager::saveCredentialIfConfirmed):

  • WebCoreSupport/CredentialManager.h: Added.

(WebKit):
(WebCore):
(CredentialManager):

  • WebCoreSupport/CredentialTransformData.cpp: Added.

(WebCore::CredentialTransformData::CredentialTransformData):
(WebCore):
(WebCore::CredentialTransformData::url):
(WebCore::CredentialTransformData::credential):
(WebCore::CredentialTransformData::setCredential):
(WebCore::CredentialTransformData::findPasswordFormFields):

  • WebCoreSupport/CredentialTransformData.h: Added.

(WebCore):
(CredentialTransformData):
(WebCore::CredentialTransformData::isValid):
(WebCore::CredentialTransformData::protectionSpace):

7:23 PM Changeset in webkit [109697] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Credential backing store implementation
https://bugs.webkit.org/show_bug.cgi?id=79650

Patch by Jonathan Dong <Jonathan Dong> on 2012-03-04
Reviewed by Antonio Gomes.

Opened Credential database in CedentialBackingStore::instance().
Added never_remember table and associated sql statment
members to store the never remember sites.
Removed CredentialStorage initialize codes because that
won't give users a chance to re-enter the new credential
information for an already stored site.
Changed login update and has statement to support
autofill feature of multiple credential forms in the
same page; Also added url as a parameter of hasLogin() function.
Added calling reset() after each statement calls step(),
to make it work correctly next time.
Also fixed a macro typo in HANDLE_SQL_EXEC_FAILURE.

No new tests.

  • platform/network/blackberry/CredentialBackingStore.cpp:

(WebCore::CredentialBackingStore::instance):
(WebCore::CredentialBackingStore::CredentialBackingStore):
(WebCore::CredentialBackingStore::open):
(WebCore::CredentialBackingStore::close):
(WebCore::CredentialBackingStore::addLogin):
(WebCore::CredentialBackingStore::updateLogin):
(WebCore::CredentialBackingStore::hasLogin):
(WebCore::CredentialBackingStore::getLogin):
(WebCore):
(WebCore::CredentialBackingStore::removeLogin):
(WebCore::CredentialBackingStore::addNeverRemember):
(WebCore::CredentialBackingStore::hasNeverRemember):
(WebCore::CredentialBackingStore::getNeverRemember):
(WebCore::CredentialBackingStore::removeNeverRemember):
(WebCore::CredentialBackingStore::clearLogins):
(WebCore::CredentialBackingStore::clearNeverRemember):

  • platform/network/blackberry/CredentialBackingStore.h:

(CredentialBackingStore):

7:15 PM Changeset in webkit [109696] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Evas_GL initialization and destruction in GraphicsContext3DPrivate
https://bugs.webkit.org/show_bug.cgi?id=80211

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2012-03-04
Reviewed by Noam Rosenthal.

This patch adds initialization and destruction codes using Evas_GL APIs to GC3DPrivate.

No new tests. No behavior change.

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::create):
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::initialize):
(WebCore::GraphicsContext3DPrivate::createSurface):
(WebCore::GraphicsContext3DPrivate::makeContextCurrent):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

7:01 PM Changeset in webkit [109695] by kubo@profusion.mobi
  • 10 edits in trunk

[CMake] Libraries are installed to /usr/lib and not /usr/lib64 on x86_64
https://bugs.webkit.org/show_bug.cgi?id=71507

Reviewed by Antonio Gomes.

.:

  • Source/cmake/OptionsCommon.cmake: Provide two variables which

can be changed via CMake: LIB_SUFFIX, which is often used in CMake
projects to let the user choose whether a suffix should be added
to the library installation directory (such as 32 or 64), and
LIB_INSTALL_DIR, which takes LIB_SUFFIX into account to determine
whether to install libraries.

Source/JavaScriptCore:

  • CMakeLists.txt: Use ${LIB_INSTALL_DIR} instead of hardcoding "lib".

Source/WebCore:

No new tests, buildsystem change.

  • CMakeLists.txt: Use ${LIB_INSTALL_DIR} instead of hardcoding "lib".

Source/WebKit:

  • CMakeLists.txt: Use ${LIB_INSTALL_DIR} instead of hardcoding "lib".

Source/WebKit2:

  • CMakeLists.txt: Use ${LIB_INSTALL_DIR} instead of hardcoding "lib".
6:43 PM Changeset in webkit [109694] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Implementation of missing functions in GraphicsContext3DPrivate
https://bugs.webkit.org/show_bug.cgi?id=79759

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2012-03-04
Reviewed by Noam Rosenthal.

The initial patch (Bug 62961) only contains implementations for simple functions
which call GL functions through Evas_GL_API.
This patch implements a little complicated functions such as getActiveAttrib(),
getShaderSource() and so on.

No new tests. No behavior change.

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::getActiveAttrib):
(WebCore::GraphicsContext3DPrivate::getActiveUniform):
(WebCore::GraphicsContext3DPrivate::getError):
(WebCore::GraphicsContext3DPrivate::getIntegerv):
(WebCore::GraphicsContext3DPrivate::getProgramInfoLog):
(WebCore::GraphicsContext3DPrivate::getShaderInfoLog):
(WebCore::GraphicsContext3DPrivate::getShaderSource):

6:33 PM Changeset in webkit [109693] by haraken@chromium.org
  • 8 edits
    1 delete in trunk/Source/WebCore

Revert SVG-related APIs from DOMWindowSVG.idl back to DOMWindow.idl
https://bugs.webkit.org/show_bug.cgi?id=80139

Reviewed by Adam Barth.

Based on the discussion on webkit-dev@
(http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
this patch reverts SVG-related APIs from DOMWindowSVG.idl back to DOMWindow.idl.

No tests. No change in behavior.

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • page/DOMWindow.idl:
  • svg/DOMWindowSVG.idl: Removed.
6:32 PM Changeset in webkit [109692] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] We should reset mouse position before calling eventSender.mouseMove in LayoutTest
https://bugs.webkit.org/show_bug.cgi?id=79748

  • platform/chromium/test_expectations.txt: Removed flaky expectations.
6:24 PM Changeset in webkit [109691] by haraken@chromium.org
  • 7 edits
    1 delete in trunk/Source/WebCore

Revert WebGL-related APIs from DOMWindowWebGL.idl back to DOMWindow.idl
https://bugs.webkit.org/show_bug.cgi?id=80144

Reviewed by Adam Barth.

Based on the discussion on webkit-dev@
(http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
this patch reverts WebGL-related APIs from DOMWindowWebGL.idl back to DOMWindow.idl.

No tests. No change in behavior.

  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • html/canvas/DOMWindowWebGL.idl: Removed.
  • page/DOMWindow.idl:
6:01 PM Changeset in webkit [109690] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, gardening.

  • platform/chromium/fast/files/xhr-response-blob-expected.txt:
5:59 PM Changeset in webkit [109689] by morrita@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix.

  • rendering/RenderButton.cpp:

(WebCore::RenderButton::canHaveGeneratedChildren):

5:39 PM Changeset in webkit [109688] by morrita@google.com
  • 7 edits
    2 adds in trunk

REGRESSION(r108758): Assertion failure in WebCore::RenderMenuList::addChild
https://bugs.webkit.org/show_bug.cgi?id=80096

Reviewed by Dimitri Glazkov.

Source/WebCore:

After r108758 RenderBlock allowed <select> to have generated
contents. But it shouldn't. This change stops allowing it again by
replacing some canHaveChildren() invocations with
less permissive canHaveGeneratedChildren().

This change also pulls back original canHaveChildren() logic to
RenderButton to allow <button> to have generated contents.

Then RenderDeprecatedFlexibleBox::buttonText() is morphed to
more intention revealing canHaveGeneratedChildren().

Test: fast/forms/select-generated-content.html

  • rendering/RenderBlock.cpp:

(WebCore):
(WebCore::canHaveGeneratedChildren):
(WebCore::RenderBlock::styleDidChange):
(WebCore::findFirstLetterBlock):
(WebCore::RenderBlock::updateFirstLetter):

  • rendering/RenderButton.cpp:
  • rendering/RenderButton.h:

(RenderButton):

  • rendering/RenderDeprecatedFlexibleBox.h:

(WebCore::RenderDeprecatedFlexibleBox::canHaveGeneratedChildren):

  • rendering/RenderMenuList.h:

LayoutTests:

  • fast/forms/select-generated-content-expected.txt: Added.
  • fast/forms/select-generated-content.html: Added.
5:34 PM Changeset in webkit [109687] by tonikitoo@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

2012-03-04 Antonio Gomes <agomes@rim.com>

Fixed positioned element not correctly positioned after orientation change,
when viewport metatag is used with "initial-scale=1" MKS_2992596
PR #138865

Reviewed by George Staikos.

Viewport size changes in two main scenarios:

  • orientation changes;
  • virtual keyboard pop up/hide.

When we are setting a new viewport size, we need to
update the FixedReportedSize of the mainframe. This size
is used to return innerWidth|Heigth as well as to calculate
the fixed position elements height relative to the RenderView [1].

[1] RenderBox::containingBlockLogicalHeightForPositioned.

When we are rotating, we need to delay setting the new FixedReportedSize
till we layout and are able to figure out the new contents size. At this
time we call setFixedReportedSize, but we do not reposition the fixed elemts
afterwards.

Patch adds a call to FrameView::repaintFixedElementsAfterScrolling, after
setting the new size.

Source/WebKit/blackberry:

  • Api/WebPage.cpp: (BlackBerry::WebKit::WebPagePrivate::setViewportSize):

Source/WebCore:

  • manual-tests/blackberry/meta-viewport-fixed-position-preserved-on-rotation.html: Added.
5:09 PM Changeset in webkit [109686] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, gardening.

  • platform/chromium-mac-leopard/fast/forms/fieldset-legend-padding-unclipped-fieldset-border-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/fieldset-legend-padding-unclipped-fieldset-border-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/fieldset-legend-padding-unclipped-fieldset-border-expected.txt: Added.
4:44 PM Changeset in webkit [109685] by haraken@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed, gardening.

  • platform/chromium-mac-leopard/fast/forms/fieldset-legend-padding-unclipped-fieldset-border-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/fieldset-legend-padding-unclipped-fieldset-border-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/fieldset-legend-padding-unclipped-fieldset-border-expected.txt: Added.
4:30 PM Changeset in webkit [109684] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, gardening.

  • platform/chromium/test_expectations.txt:
4:23 PM Changeset in webkit [109683] by haraken@chromium.org
  • 1 edit
    1 delete in trunk/LayoutTests

Unreviewed, gardening.

  • platform/chromium/fast/js/function-dot-arguments-and-caller-expected.txt: Removed.
1:35 PM Changeset in webkit [109682] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/Source/WebCore

[BlackBerry] Upstream two helper files from platform/graphics/blackberry
https://bugs.webkit.org/show_bug.cgi?id=80125

Patch by Robin Cao <robin.cao@torchmobile.com.cn> on 2012-03-04
Reviewed by Antonio Gomes.

Initial upstream, no new tests.

  • platform/graphics/blackberry/InstrumentedPlatformCanvas.h: Added.

(WebCore):
(InstrumentedPlatformCanvas):
(WebCore::InstrumentedPlatformCanvas::InstrumentedPlatformCanvas):
(WebCore::InstrumentedPlatformCanvas::~InstrumentedPlatformCanvas):
(WebCore::InstrumentedPlatformCanvas::isSolidColor):
(WebCore::InstrumentedPlatformCanvas::solidColor):
(WebCore::InstrumentedPlatformCanvas::save):
(WebCore::InstrumentedPlatformCanvas::saveLayer):
(WebCore::InstrumentedPlatformCanvas::restore):
(WebCore::InstrumentedPlatformCanvas::translate):
(WebCore::InstrumentedPlatformCanvas::scale):
(WebCore::InstrumentedPlatformCanvas::rotate):
(WebCore::InstrumentedPlatformCanvas::skew):
(WebCore::InstrumentedPlatformCanvas::concat):
(WebCore::InstrumentedPlatformCanvas::setMatrix):
(WebCore::InstrumentedPlatformCanvas::clipRect):
(WebCore::InstrumentedPlatformCanvas::clipPath):
(WebCore::InstrumentedPlatformCanvas::clipRegion):
(WebCore::InstrumentedPlatformCanvas::clear):
(WebCore::InstrumentedPlatformCanvas::drawPaint):
(WebCore::InstrumentedPlatformCanvas::drawPoints):
(WebCore::InstrumentedPlatformCanvas::drawRect):
(WebCore::InstrumentedPlatformCanvas::drawPath):
(WebCore::InstrumentedPlatformCanvas::drawBitmap):
(WebCore::InstrumentedPlatformCanvas::drawBitmapRect):
(WebCore::InstrumentedPlatformCanvas::drawBitmapMatrix):
(WebCore::InstrumentedPlatformCanvas::drawSprite):
(WebCore::InstrumentedPlatformCanvas::drawText):
(WebCore::InstrumentedPlatformCanvas::drawPosText):
(WebCore::InstrumentedPlatformCanvas::drawPosTextH):
(WebCore::InstrumentedPlatformCanvas::drawTextOnPath):
(WebCore::InstrumentedPlatformCanvas::drawPicture):
(WebCore::InstrumentedPlatformCanvas::drawVertices):
(WebCore::InstrumentedPlatformCanvas::drawData):

  • platform/graphics/blackberry/LayerMessage.h: Added.

(WebCore):
(WebCore::isCompositingThread):
(WebCore::compositingThread):
(WebCore::isWebKitThread):
(WebCore::webKitThread):
(WebCore::dispatchCompositingMessage):
(WebCore::dispatchSyncCompositingMessage):
(WebCore::dispatchWebKitMessage):

12:46 PM Changeset in webkit [109681] by andersca@apple.com
  • 6 edits in trunk/Tools

Newer versions of clang fail to compile WebKit.

Fix build.

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(descriptionOfValue):
(AccessibilityUIElement::rowIndexRange):
(AccessibilityUIElement::columnIndexRange):
(AccessibilityUIElement::selectedTextRange):

  • DumpRenderTree/mac/EditingDelegate.mm:

(-[DOMRange dump]):

  • DumpRenderTree/mac/PolicyDelegate.mm:

(-[PolicyDelegate webView:unableToImplementPolicyWithError:frame:]):

  • DumpRenderTree/mac/ResourceLoadDelegate.mm:

(-[NSError _drt_descriptionSuitableForTestResult]):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::descriptionOfValue):
(WTR::AccessibilityUIElement::rowIndexRange):
(WTR::AccessibilityUIElement::columnIndexRange):
(WTR::AccessibilityUIElement::selectedTextRange):

12:43 PM Changeset in webkit [109680] by mikelawther@chromium.org
  • 1 edit
    4 adds in trunk/LayoutTests

table tests for CSS3 calc
https://bugs.webkit.org/show_bug.cgi?id=75898

Reviewed by Julien Chaffraix.

Tests CSS3 calc() (see http://webkit.org/b/16662) on some simple examples with tables.

  • css3/calc/table-calcs-expected.txt: Added.
  • css3/calc/table-calcs.html: Added.
  • css3/calc/table-empty-cells-expected.html: Added.
  • css3/calc/table-empty-cells.html: Added.
11:07 AM Changeset in webkit [109679] by Nikolas Zimmermann
  • 7 edits in trunk

Introduce SMIL overrideStyle, to make SVG stop mutating CSS styles directly
https://bugs.webkit.org/show_bug.cgi?id=79790

Reviewed by Dirk Schulze.

Source/WebCore:

Restore SMIL animation behavior back to pre-r109342.
1) Always animate presentation attributes as CSS properties, regardless of the
attributeTypes value. Matches Opera/FF, and makes the attribute optional again
as specified in both SMIL & SVG.

Extend existing svg/animations/attributesTypes.html to verify this.

2) Switch setInstancesUpdatesBlocked calls to the right locations again, to
avoid chromium assertions (and/or extra work being done). Fixing that reveals another
problem: in the instance updating code path, we always called setTargetAttributeAnimatedCSSValue
even for XML animations.

  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::shouldApplyAnimation): Restore old logic.
(WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue): Fix typo, move setInstancesUpdatesBlocked calls.

LayoutTests:

Extended attributesTypes.html test case to check that presentation attributes are
always animated as CSS properties, regardless of their attributeTypes value.

  • platform/chromium/test_expectations.txt: Remove animate-elem-32-t.svg suppression.
  • svg/animations/attributeTypes-expected.txt: Updated expectations.
  • svg/animations/resources/attributeTypes.svg: Fix comment.
  • svg/animations/script-tests/attributeTypes.js: Extend test.

(sample1):
(sample2):
(sample3):

10:53 AM Changeset in webkit [109678] by ddkilzer@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Fix build when the classic interpreter is enabled

Reviewed by Gavin Barraclough.

Fixes the following build error when running the "Generate
Derived Sources" build phase script:

offlineasm: Parsing JavaScriptCore/llint/LowLevelInterpreter.asm and ../../JSCLLIntOffsetsExtractor and creating assembly file LLIntAssembly.h.
./JavaScriptCore/offlineasm/offsets.rb:145:in `offsetsAndConfigurationIndex': unhandled exception

from JavaScriptCore/offlineasm/asm.rb:131

Command /bin/sh failed with exit code 1

Gavin's fix in r109674 avoided the #error statement in
JITStubs.h when compiling LLIntOffsetsExtractor.cpp, but it
caused the "Generate Derived Sources" build phase script to fail
when JavaScriptCore/offlineasm/asm.rb was run. The solution is
to detect when the classic interpreter is being built and simply
exit early from asm.rb in that case.

  • llint/LLIntOffsetsExtractor.cpp:

(JSC::LLIntOffsetsExtractor::dummy): Return NULL pointer if the
JIT is disabled. Note that offsets.rb doesn't care about the
return value here, but instead it cares about finding the magic
values in the binary. The magic values are no longer present
when the JIT is disabled.

  • offlineasm/asm.rb: Catch MissingMagicValuesException and exit

early with a status message.

  • offlineasm/offsets.rb:

(MissingMagicValuesException): Add new exception class.
(offsetsAndConfigurationIndex): Throw
MissingMagicValuesException when no magic values are found.

9:11 AM Changeset in webkit [109677] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk/Source/WebCore

[BlackBerry] upstream MediaPlayerPrivateBlackBerry.[cpp|h]
https://bugs.webkit.org/show_bug.cgi?id=79729

Patch by Jonathan Dong <Jonathan Dong> on 2012-03-04
Reviewed by Rob Buis and Antonio Gomes.

Implementation of MediaPlayerPrivate for BlackBerry porting.
Initial upstream, No new tests.

  • PlatformBlackBerry.cmake:
  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp: Added.

(WebCore):
(WebCore::MediaPlayerPrivate::create):
(WebCore::MediaPlayerPrivate::registerMediaEngine):
(WebCore::MediaPlayerPrivate::getSupportedTypes):
(WebCore::MediaPlayerPrivate::supportsType):
(WebCore::MediaPlayerPrivate::notifyAppActivatedEvent):
(WebCore::MediaPlayerPrivate::setCertificatePath):
(WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::load):
(WebCore::MediaPlayerPrivate::cancelLoad):
(WebCore::MediaPlayerPrivate::prepareToPlay):
(WebCore::MediaPlayerPrivate::play):
(WebCore::MediaPlayerPrivate::pause):
(WebCore::MediaPlayerPrivate::supportsFullscreen):
(WebCore::MediaPlayerPrivate::naturalSize):
(WebCore::MediaPlayerPrivate::hasVideo):
(WebCore::MediaPlayerPrivate::hasAudio):
(WebCore::MediaPlayerPrivate::setVisible):
(WebCore::MediaPlayerPrivate::duration):
(WebCore::MediaPlayerPrivate::currentTime):
(WebCore::MediaPlayerPrivate::seek):
(WebCore::MediaPlayerPrivate::userDrivenSeekTimerFired):
(WebCore::MediaPlayerPrivate::seeking):
(WebCore::MediaPlayerPrivate::setRate):
(WebCore::MediaPlayerPrivate::paused):
(WebCore::MediaPlayerPrivate::setVolume):
(WebCore::MediaPlayerPrivate::networkState):
(WebCore::MediaPlayerPrivate::readyState):
(WebCore::MediaPlayerPrivate::maxTimeSeekable):
(WebCore::MediaPlayerPrivate::buffered):
(WebCore::MediaPlayerPrivate::bytesLoaded):
(WebCore::MediaPlayerPrivate::setSize):
(WebCore::MediaPlayerPrivate::paint):
(WebCore::MediaPlayerPrivate::hasAvailableVideoFrame):
(WebCore::MediaPlayerPrivate::hasSingleSecurityOrigin):
(WebCore::MediaPlayerPrivate::movieLoadType):
(WebCore::MediaPlayerPrivate::userAgent):
(WebCore::MediaPlayerPrivate::resizeSourceDimensions):
(WebCore::MediaPlayerPrivate::setFullscreenWebPageClient):
(WebCore::MediaPlayerPrivate::getWindow):
(WebCore::MediaPlayerPrivate::getPeerWindow):
(WebCore::MediaPlayerPrivate::getWindowPosition):
(WebCore::MediaPlayerPrivate::mmrContextName):
(WebCore::MediaPlayerPrivate::percentLoaded):
(WebCore::MediaPlayerPrivate::sourceWidth):
(WebCore::MediaPlayerPrivate::sourceHeight):
(WebCore::MediaPlayerPrivate::setAllowPPSVolumeUpdates):
(WebCore::MediaPlayerPrivate::updateStates):
(WebCore::MediaPlayerPrivate::onStateChanged):
(WebCore::MediaPlayerPrivate::onMediaStatusChanged):
(WebCore::MediaPlayerPrivate::onError):
(WebCore::MediaPlayerPrivate::onDurationChanged):
(WebCore::MediaPlayerPrivate::onTimeChanged):
(WebCore::MediaPlayerPrivate::onPauseStateChanged):
(WebCore::MediaPlayerPrivate::onRateChanged):
(WebCore::MediaPlayerPrivate::onVolumeChanged):
(WebCore::MediaPlayerPrivate::onRepaint):
(WebCore::MediaPlayerPrivate::onSizeChanged):
(WebCore::MediaPlayerPrivate::onPlayNotified):
(WebCore::MediaPlayerPrivate::onPauseNotified):
(WebCore::MediaPlayerPrivate::onBuffering):
(WebCore::MediaPlayerPrivate::showErrorDialog):
(WebCore::MediaPlayerPrivate::frameView):
(WebCore::MediaPlayerPrivate::platformWindow):
(WebCore::MediaPlayerPrivate::isFullscreen):
(WebCore::MediaPlayerPrivate::platformMedia):
(WebCore::MediaPlayerPrivate::platformLayer):
(WebCore::loadBufferingImageData):
(WebCore::MediaPlayerPrivate::bufferingTimerFired):
(WebCore::MediaPlayerPrivate::setBuffering):
(WebCore::allocateTextureId):
(WebCore::MediaPlayerPrivate::drawBufferingAnimation):

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h: Added.

(WebKit):
(WebCore):
(MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::supportsAcceleratedRendering):
(WebCore::MediaPlayerPrivate::acceleratedRenderingStateChanged):

7:57 AM Changeset in webkit [109676] by kov@webkit.org
  • 2 edits in releases/WebKitGTK/webkit-1.8/Source/JavaScriptCore

Merging http://trac.webkit.org/changeset/109675

7:42 AM Changeset in webkit [109675] by kov@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

SPARC also needs aligned accesses.

Patch by Jurij Smakov <jurij@wooyd.org> on 2012-03-04
Rubber-stamped by Gustavo Noronha Silva.

  • wtf/Platform.h:
7:26 AM BuildingGtk edited by omar.belkhodja@gmail.com
Added gobject-introspection to jhbuild dependencies (diff)
1:04 AM Changeset in webkit [109674] by barraclough@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed build fix.

  • jit/JITStubs.h:
    • Move ENABLE(JIT) to head of file.
Note: See TracTimeline for information about the timeline view.