Timeline



Jan 31, 2013:

11:43 PM Changeset in webkit [141545] by commit-queue@webkit.org
  • 16 edits in trunk

Editor::m_compositionNode not updated on HTMLInputElement::setValue()
https://bugs.webkit.org/show_bug.cgi?id=107737

Patch by Aurimas Liutikas <aurimas@chromium.org> on 2013-01-31
Reviewed by Ryosuke Niwa.

Source/WebCore:

Chromium has a bug where the IME composition did not get cancelled on JavaScript changes
to the focused editing field. Most of other WebKit ports were already doing this check
in their EditorClient::respondToChangedSelection. I took that logic and moved it to the
Editor so every port and use the same code.

An existing test editing/input/setting-input-value-cancel-ime-composition.html covers this change.
This test used to have an expectation to fail on Chromium and after this patch it will start passing.

  • editing/Editor.cpp:

(WebCore::Editor::cancelCompositionIfSelectionIsInvalid):

Adding a call that can be used by any the port to cancel the composition if it's no longer valid.

(WebCore):

  • editing/Editor.h:

(Editor):

Source/WebKit/chromium:

  • public/WebViewClient.h:

(WebKit::WebViewClient::didCancelCompositionOnSelectionChange):

Adding a callback to let the WebViewClient know that the composition has been cancelled.

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::respondToChangedSelection):

Adding a call composition if it is no longer valid.

Source/WebKit/efl:

  • WebCoreSupport/EditorClientEfl.cpp:

(WebCore::EditorClientEfl::respondToChangedSelection):

Adding a call to the newly refactored method.

Source/WebKit/gtk:

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::respondToChangedSelection):

Adding a call to the newly refactored Editor method.

Source/WebKit/mac:

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _updateSelectionForInputManager]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::updateSelectionForIME):

Adding a call to the newly refactored method.

LayoutTests:

11:40 PM Changeset in webkit [141544] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG::CFGSimplificationPhase::keepOperandAlive() conflates liveness and availability
https://bugs.webkit.org/show_bug.cgi?id=108580

Reviewed by Oliver Hunt.

This is a harmless bug in that it only results in us keeping a bit too many things
for OSR. But it's worth fixing so that the code is consistent.

keepOperandAlive() is called when block A has a branch to blocks B and C, but the
A->B edge is proven to never be taken and we want to optimize the code to have A
unconditionally jump to C. In that case, for the purposes of OSR, we need to
preserve the knowledge that the state that B expected to be live incoming from A
ought still to be live up to the point of where the A->B,C branch used to be. The
way we keep things alive is by using the variablesAtTail of A (i.e., we use the
knowledge of in what manner A made state available to B and C). The way we choose
which state should be kept alive ought to be chosen by the variablesAtHead of B
(i.e. the things B says it needs from its predecessors, including A), except that
keepOperandAlive() was previously just using variablesAtTail of A for this
purpose.

The fix is to have keepOperandAlive() use both liveness and availability in its
logic. It should use liveness (i.e. B->variablesAtHead) to decide what to keep
alive, and it should use availability (i.e. A->variablesAtTail) to decide how to
keep it alive.

This might be a microscopic win on some programs, but it's mainly intended to be
a code clean-up so that I don't end up scratching my head in confusion the next
time I look at this code.

  • dfg/DFGCFGSimplificationPhase.cpp:

(JSC::DFG::CFGSimplificationPhase::keepOperandAlive):
(JSC::DFG::CFGSimplificationPhase::jettisonBlock):
(JSC::DFG::CFGSimplificationPhase::mergeBlocks):

11:32 PM Changeset in webkit [141543] by commit-queue@webkit.org
  • 25 edits
    20 moves
    1 add in trunk/Source

Coordinated Graphics : Move CoordinatedGraphics related files to WebCore
https://bugs.webkit.org/show_bug.cgi?id=108149

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-01-31
Reviewed by Noam Rosenthal.

This patch moves Coordinated Graphics related code to WebCore. To
implement Threaded Coordinated Graphics, most of Coordianted Graphics
code should be shared. Therefore, they should reside in WebCore instead of
WebKit2.

When moving to WebCore, two renamings have been done.

  1. Rename LayerTreeRenderer to CoordinatedGraphicsScene.
  1. Rename WebCustomFilterProgram and WebCustomFilterOperation to

CoordinatedCustomFilterProgram and CoordinatedCustomFilterOperation,
respectively.

No new tests, covered by existing tests.

Source/WebCore:

  • CMakeLists.txt:
  • Target.pri:
  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:
  • platform/graphics/texmap/coordinated/AreaAllocator.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.cpp.
  • platform/graphics/texmap/coordinated/AreaAllocator.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.h.
  • platform/graphics/texmap/coordinated/CoordinatedBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp.
  • platform/graphics/texmap/coordinated/CoordinatedBackingStore.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h.
  • platform/graphics/texmap/coordinated/CoordinatedCustomFilterOperation.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/WebCustomFilterOperation.h.
  • platform/graphics/texmap/coordinated/CoordinatedCustomFilterProgram.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/WebCustomFilterProgram.h.
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp.
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h.
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp.
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.h.
  • platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.cpp.
  • platform/graphics/texmap/coordinated/CoordinatedImageBacking.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h.
  • platform/graphics/texmap/coordinated/CoordinatedLayerInfo.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedLayerInfo.h.
  • platform/graphics/texmap/coordinated/CoordinatedSurface.cpp: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedSurface.cpp.
  • platform/graphics/texmap/coordinated/CoordinatedSurface.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedSurface.h.
  • platform/graphics/texmap/coordinated/CoordinatedTile.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp.
  • platform/graphics/texmap/coordinated/CoordinatedTile.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h.
  • platform/graphics/texmap/coordinated/SurfaceUpdateInfo.h: Renamed from Source/WebKit2/Shared/CoordinatedGraphics/SurfaceUpdateInfo.h.
  • platform/graphics/texmap/coordinated/UpdateAtlas.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp.
  • platform/graphics/texmap/coordinated/UpdateAtlas.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h.

Source/WebKit2:

  • CMakeLists.txt:
  • Scripts/webkit2/messages.py:
  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
  • Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
  • Target.pri:
  • UIProcess/API/efl/EwkView.cpp:
  • UIProcess/API/efl/EwkView.h:
  • UIProcess/API/qt/qquickwebpage.cpp:
  • UIProcess/API/qt/raw/qrawwebview.cpp:
  • UIProcess/API/qt/raw/qrawwebview_p.h:
  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
  • UIProcess/efl/PageClientBase.cpp:
  • UIProcess/efl/PageViewportControllerClientEfl.cpp:
  • UIProcess/qt/QtWebPageSGNode.cpp:
  • UIProcess/qt/QtWebPageSGNode.h:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
11:26 PM Changeset in webkit [141542] by commit-queue@webkit.org
  • 3 edits
    5 adds in trunk

[Qt] Add support for text decoration "wavy" style
https://bugs.webkit.org/show_bug.cgi?id=93507

Patch by Lamarque V. Souza <Lamarque.Souza@basyskom.com> on 2013-01-31
Reviewed by Simon Hausmann.

Source/WebCore:

Add support for text decoration "wavy" style for Qt platform.

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::toQPenStyle):
Remove FIXME comments obsoleted by this patch.
(WebCore::GraphicsContext::drawLine):
Implement wavy style line tracer.

LayoutTests:

Add pixel-test expected results for CSS3 text decoration tests for Qt port.

  • platform/qt-5.0-wk1/fast/css3-text/css3-text-decoration/repaint/repaint-text-decoration-style-expected.png: Added.
  • platform/qt-5.0-wk1/fast/css3-text/css3-text-decoration/text-decoration-style-expected.png: Added.
11:07 PM Changeset in webkit [141541] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[CPP,GObject,ObjC] Add 'enum' skip to CodeGenerator{CPP,GObject,ObjC}.pm
https://bugs.webkit.org/show_bug.cgi?id=108565

Patch by Nils Barth <nbarth@google.com> on 2013-01-31
Reviewed by Kentaro Hara.

Since legacy code generators (CodeGenerator{CPP,GObject,ObjC}.pm)
do not support enumerations, add test to skip attributes of enum type.
This lets us remove #if macro from enum in test file and not need
these in future.
Also minor associated code cleaning:

auxiliary variable: $type = $attribute->signature->type.

Test: bindings/scripts/test/TestObj.idl (run-bindings-test)

  • bindings/scripts/CodeGeneratorCPP.pm:

(SkipAttribute):

  • bindings/scripts/CodeGeneratorGObject.pm:

(SkipAttribute):

  • bindings/scripts/CodeGeneratorObjC.pm:

(SkipAttribute):

  • bindings/scripts/test/TestObj.idl: remove #if macro
10:56 PM Changeset in webkit [141540] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] WebViewTest.SetCompositionFromExistingText failing after r141479
https://bugs.webkit.org/show_bug.cgi?id=108543

Patch by Aurimas Liutikas <aurimas@chromium.org> on 2013-01-31
Reviewed by Ryosuke Niwa.

Fixing a bug that was uncovered after fixing http://trac.webkit.org/changeset/141479

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setCompositionFromExistingText):

  • tests/WebViewTest.cpp:

Re-enabling the test

10:52 PM Changeset in webkit [141539] by loislo@chromium.org
  • 3 edits in trunk/Source/WTF

Web Inspector: Native Memory Instrumentation: replace nodeName argument with className
https://bugs.webkit.org/show_bug.cgi?id=107278

Reviewed by Yury Semikhatsky.

I replaced nodeName with className because we newer report node name for private and raw buffers
but need to report their class names.

  • wtf/MemoryInstrumentation.cpp:

(WTF::MemoryInstrumentation::reportLinkToBuffer):
(WTF::MemoryClassInfo::addRawBuffer):
(WTF::MemoryClassInfo::addPrivateBuffer):

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::addRawBuffer):
(MemoryClassInfo):

10:36 PM Changeset in webkit [141538] by morrita@google.com
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, followup fix for r141535.

  • tests/WebFrameTest.cpp:
10:28 PM Changeset in webkit [141537] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r180023. Requested by
thakis_ via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-31

  • DEPS:
9:54 PM Changeset in webkit [141536] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION (r141192): Crash beneath cti_op_get_by_id_generic @ discussions.apple.com
https://bugs.webkit.org/show_bug.cgi?id=108576

Reviewed by Filip Pizlo.

This was a long-standing bug. The DFG would destructively reuse a register
in op_convert_this, but:

  • The bug only presented during speculation failure for type Other
  • The bug presented by removing the low bits of a pointer, which used to be harmless, since all objects were so aligned anyway.
  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile): Don't reuse our this register as
our scratch register. The whole point of our scratch register is to
avoid destructively modifying our this register. I'm pretty sure this
was a copy-paste error.

9:37 PM Changeset in webkit [141535] by morrita@google.com
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, disabling failing test.

  • tests/WebFrameTest.cpp:
9:01 PM Changeset in webkit [141534] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Provide a sensible default architecture when building on iOS SDKs
https://bugs.webkit.org/show_bug.cgi?id=108395

Patch by David Farler <dfarler@apple.com> on 2013-01-31
Reviewed by Anders Carlsson.

  • Scripts/webkitdirs.pm:

(determineArchitecture): Anchor SDK regex matches at the beginning.

8:25 PM Changeset in webkit [141533] by tkent@chromium.org
  • 5 edits in trunk/Source/WebCore

Refactoring: Remove the default argument value for Node::setFocus
https://bugs.webkit.org/show_bug.cgi?id=108554

Reviewed by Kentaro Hara.

There is no code to use the default argument.
No new tests. Just a refactoring.

  • dom/Node.h: Remove default argument value for setFocus.
  • dom/ContainerNode.h:

(ContainerNode): Ditto.

  • html/HTMLAreaElement.h:

(HTMLAreaElement): Add OVERRIDE to setFocus.

  • html/HTMLFrameElementBase.h:

(HTMLFrameElementBase): Ditto.

8:20 PM Changeset in webkit [141532] by morrita@google.com
  • 1 edit
    5 adds in trunk/LayoutTests

[Chromium] Unreviewed, rebaselining expectations.

  • platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-e-expected.txt: Added.
  • platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-n-expected.txt: Added.
  • platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-s-expected.txt: Added.
  • platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-w-expected.txt: Added.
8:03 PM Changeset in webkit [141531] by vcarbune@chromium.org
  • 7 edits in trunk

[Track] Closed Caption button shouldn't be visible if all the track resources have failed loading
https://bugs.webkit.org/show_bug.cgi?id=106285

Reviewed by Eric Carlson.

Source/WebCore:

Updated existing test cases.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTracksAreReady): Checked whether there are tracks not loaded
when the algorithm began.
(WebCore::HTMLMediaElement::textTrackReadyStateChanged): If the ready state changed to
FailedToLoad the media controls should check whether there are other caption tracks
and hide the button if not.
(WebCore::HTMLMediaElement::didAddTrack): Added trigger to closedCaptionsTrackChanged.
(WebCore::HTMLMediaElement::hasClosedCaptions): Updated check to skip tracks that
failed to load.

  • html/shadow/MediaControls.cpp:

(WebCore::MediaControls::reset): Used the newly added method.
(WebCore::MediaControls::refreshClosedCaptionsButtonVisibility): Added container method for
default behaviour for refreshing the visibility of the caption button.
(WebCore::MediaControls::closedCaptionTracksChanged): Used the newly added method.
(WebCore):

  • html/shadow/MediaControls.h:

(MediaControls):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTracksAreReady):
(WebCore::HTMLMediaElement::textTrackReadyStateChanged):
(WebCore::HTMLMediaElement::setReadyState):
(WebCore::HTMLMediaElement::didAddTrack):
(WebCore::HTMLMediaElement::hasClosedCaptions):

  • html/shadow/MediaControls.cpp:

(WebCore::MediaControls::reset):
(WebCore::MediaControls::refreshClosedCaptionsButtonVisibility):
(WebCore::MediaControls::closedCaptionTracksChanged):
(WebCore):

  • html/shadow/MediaControls.h:

(MediaControls):

LayoutTests:

Updated tests to include improved behavior.

  • media/video-controls-captions-expected.txt: Updated.
  • media/video-controls-captions.html: Updated.
8:01 PM Changeset in webkit [141530] by rniwa@webkit.org
  • 3 edits
    4 moves in trunk/Tools

buildbot should not rely on webkitpy
https://bugs.webkit.org/show_bug.cgi?id=107379

Reviewed by Eric Seidel.

Move all Python files used in buildbot configuration into BuildSlaveSupport directory.
Once this patch is landed, we can stop restarting the master on webkitpy changes.

  • BuildSlaveSupport/build.webkit.org-config/committer_auth.py:
  • BuildSlaveSupport/build.webkit.org-config/htdigestparser.py: Copied from Tools/Scripts/webkitpy/common/net/htdigestparser.py.
  • BuildSlaveSupport/build.webkit.org-config/htdigestparser_unittest.py: Copied from Tools/Scripts/webkitpy/common/net/htdigestparser_unittest.py.
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:
  • BuildSlaveSupport/build.webkit.org-config/wkbuild.py: Copied from Tools/Scripts/webkitpy/common/config/build.py.
  • BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py: Copied from Tools/Scripts/webkitpy/common/config/build_unittest.py.

(ShouldBuildTest.test_should_build):

  • Scripts/webkitpy/common/config/build.py: Removed.
  • Scripts/webkitpy/common/config/build_unittest.py: Removed.
  • Scripts/webkitpy/common/net/htdigestparser.py: Removed.
  • Scripts/webkitpy/common/net/htdigestparser_unittest.py: Removed.
7:57 PM Changeset in webkit [141529] by commit-queue@webkit.org
  • 10 edits in trunk

REGRESSION(r140231): media track layout tests crashing
https://bugs.webkit.org/show_bug.cgi?id=107579

Patch by Dima Gorbik <dgorbik@apple.com> on 2013-01-31
Reviewed by Eric Carlson.

Source/WebCore:

We were using non-standard element names with HTMLElement, which made v8 try to cast
WebVTTElements to HTMLUnknownElements which was not possible. Subclassing Element instead
of HTMLElement, though this requires building HTMLElements from WebVTTElements for creating
a DOM tree. The code has been refactored to move WebVTT node type to QuialifiedName mappings
inside the WebVTTElement class. All WebVTTElements in the shadow dom tree now are in the
namespace defined by 'NullAtom'. This prevents regular styles from being applied to <b>, <i>
and similar tags. Those have to be styled separately without reusing existing QualifiedNames
and their styles. https://bugs.webkit.org/show_bug.cgi?id=107214

Unskipping tests to cover this.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRules):
(WebCore::StyleResolver::canShareStyleWithElement):

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::copyWebVTTNodeToDOMTree):
(WebCore::TextTrackCue::getCueAsHTML):
(WebCore::TextTrackCue::createCueRenderingTree):
(WebCore::TextTrackCue::markFutureAndPastNodes):

  • html/track/TextTrackCue.h:

(WebCore::TextTrackCue::cueShadowPseudoId):

  • html/track/WebVTTElement.cpp:

(WebCore::nodeTypeToTagName): get a QualifiedName to use in the shadow DOM tree.
(WebCore::WebVTTElement::WebVTTElement):
(WebCore::WebVTTElement::create):
(WebCore::WebVTTElement::cloneElementWithoutAttributesAndChildren):
(WebCore::WebVTTElement::createEquivalentHTMLElement): create an HTMLElement to use in the DOM tree.

  • html/track/WebVTTElement.h:

(WebCore::WebVTTElement::setWebVTTNodeType):
(WebCore::WebVTTElement::webVTTNodeType):
(WebCore::WebVTTElement::isPastNode):
(WebCore::WebVTTElement::setIsPastNode):
(WebCore::WebVTTElement::voiceAttributeName):

  • html/track/WebVTTParser.cpp:

(WebCore::tokenToNodeType): determine a WebVTT node type for the token.
(WebCore::WebVTTParser::constructTreeFromToken):

LayoutTests:

  • platform/chromium/TestExpectations:
7:52 PM Changeset in webkit [141528] by rafael.lobo@openbossa.org
  • 4 edits in trunk/Source/WebKit2

[Qt][WK2] Another attempt to fix build after recent WebKit2 changes
https://bugs.webkit.org/show_bug.cgi?id=108548

Reviewed by Anders Carlsson.

  • Platform/CoreIPC/unix/ConnectionUnix.cpp:

(CoreIPC::Connection::platformInvalidate):
(CoreIPC::Connection::processMessage): Change Deque to Vector and do similar
logic as on patch for https://bugs.webkit.org/show_bug.cgi?id=108517
(CoreIPC::Connection::open):
(CoreIPC::Connection::setShouldCloseConnectionOnProcessTermination):

  • Platform/qt/WorkQueueQt.cpp: Reflect changes on Qt WorkQueue to increase ref

count when the execution is started and decrease it when the work item is deleted,
following the logic on https://bugs.webkit.org/show_bug.cgi?id=108544
(WorkQueue::WorkItemQt::~WorkItemQt):
(WorkQueue::WorkItemQt::execute):
(WorkQueue::dispatch):
(WorkQueue::dispatchAfterDelay):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::getPluginPath): This function was moved from WebProcessProxy but
mac specific code was not protected properly: https://bugs.webkit.org/show_bug.cgi?id=108407

7:51 PM Changeset in webkit [141527] by morrita@google.com
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, marking a failing test.

  • platform/chromium/TestExpectations:
7:28 PM Changeset in webkit [141526] by tkent@chromium.org
  • 13 edits
    2 copies in branches/chromium/1364

Merge 141195

INPUT_MULTIPLE_FIELDS_UI: The content should not overflow the <input> boundary
https://bugs.webkit.org/show_bug.cgi?id=108069

Reviewed by Hajime Morita.

Source/WebCore:

To avoid the overflow, we do:
A) Specify overflow:hidden to <input>.

However, we need to make sub-fields and buttons workable even if the
width is smaller than the intrinsic size. So, we do:
B) Make DateTimeEditElement shrinkable, and
C) Make the sub-fields scrollable horizontally like input[type=text].

To achieve B, we need to remove -webkit-date-and-time-container (D)
because width property for <input> can shrink only the direct child
elements.

Tests: fast/forms/time-multiple-fields/time-multiple-fields-narrow-width-scroll.html
and new test cases in fast/forms/date/date-appearance-basic.html.

  • css/html.css:

(input[type="date"]):
Change -webkit-align-items value. (D)
Specify overflow:hidden. (A)
(input[type="datetime"]): Ditto.
(input[type="datetime-local"]): Ditto.
(input[type="month"]): Ditto.
(input[type="time"]): Ditto.
(input[type="week"]): Ditto.
(input::-webkit-datetime-edit):
Add min-width:0 (B), and overflow:hidden. (C)
Remove unnecessary white-space:pre because of white-space:nowrap below.
(input::-webkit-datetime-edit-fields-wrapper):
Added. This is the child of -webkit-datetime-edit, and contains
sub-fields. (C)

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::createShadowSubtree):
Remove -webkit-date-and-time-container, and append DateTimeEditElement,
spin button, and picker indicator element to the ShadowRoot. (D)
(WebCore::BaseMultipleFieldsDateAndTimeInputType::shouldApplyLocaleDirection):
<input> for multiple fields UI should have the direction of the browser
locale. This is a replacement of the code for dir attribute in
updateInnerTextValue below. (D)
(WebCore::BaseMultipleFieldsDateAndTimeInputType::updateInnerTextValue):
Remove the code to set dir= to -webkit-date-and-time-container.

  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType):
Declare shouldApplyLocaleDirection. (D)

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::HTMLInputElement):
Calls setHasCustomCallbacks for customStyleForRenderer. (D)
(WebCore::HTMLInputElement::customStyleForRenderer):
Set direction to RenderStyle if shouldApplyLocaleDirection is true. This
is a replacement of the dir setting code in
BaseMultipleFieldsDateAndTimeInputType::updateInnerTextValue. (D)

  • html/HTMLInputElement.h:

(HTMLInputElement): Declare customStyleForRenderer. (D)

  • html/InputType.cpp:

(WebCore::InputType::shouldApplyLocaleDirection):
Add default implmentation of shouldApplyLocaleDirection. (D)

  • html/InputType.h:

(InputType): Declare shouldApplyLocaleDirection. (D)

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditBuilder::visitLiteral):
Add elements to -webkit-datetime-edit-fields-wrapper element. (C)
(WebCore::DateTimeEditElement::fieldsWrapperElement):
A helper to get -webkit-datetime-edit-fields-wrapper element. (C)
(WebCore::DateTimeEditElement::addField):
Add elements to -webkit-datetime-edit-fields-wrapper element. (C)
(WebCore::DateTimeEditElement::customStyleForRenderer):

  • Iterate over children of -webkit-datetime-edit-fields-wrapper element. (C)
  • Set width property instead of min-width. (B)

(WebCore::DateTimeEditElement::layout):

  • Prepare -webkit-datetime-edit-fields-wrapper element. (C)
  • Handle children of -webkit-datetime-edit-fields-wrapper element. (C)
  • Need to do style recalc because child structure is changed. (C)
  • html/shadow/DateTimeEditElement.h:

(DateTimeEditElement): Declare fieldsWrapperElement. (C)

LayoutTests:

  • fast/forms/date/date-appearance-basic-expected.txt:
  • fast/forms/date/date-appearance-basic.html:

Add test cases for small width and small height.

  • fast/forms/time-multiple-fields/time-multiple-fields-focus-style.html:

Update the code because of shadow tree structure change.

  • fast/forms/time-multiple-fields/time-multiple-fields-narrow-width-scroll.html:

Added.

  • fast/forms/time-multiple-fields/time-multiple-fields-narrow-width-scroll-expected.txt:

Added.

  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium/TestExpectations:
    • date-appearance-basic.html: New test cases are added.
    • *-appearance-pseudo-element.html: :before :after position is slightly changed because of the -webkit-align-items change.
    • suggestion-picker/*.html: RTL behavior is changed. The direction of suggestion pickers matches to the direction of the input content (browser locale).

TBR=tkent@chromium.org
BUG=crbug.com/172029
Review URL: https://codereview.chromium.org/12159003

7:20 PM Changeset in webkit [141525] by commit-queue@webkit.org
  • 16 edits in trunk

Unreviewed, rolling out r141479.
http://trac.webkit.org/changeset/141479
https://bugs.webkit.org/show_bug.cgi?id=108564

breaks chromium test (Requested by morrita on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-31

Source/WebCore:

  • editing/Editor.cpp:
  • editing/Editor.h:

(Editor):

Source/WebKit/chromium:

  • public/WebViewClient.h:
  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::respondToChangedSelection):

Source/WebKit/efl:

  • WebCoreSupport/EditorClientEfl.cpp:

(WebCore::EditorClientEfl::respondToChangedSelection):

Source/WebKit/gtk:

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::respondToChangedSelection):

Source/WebKit/mac:

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _updateSelectionForInputManager]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::updateSelectionForIME):

LayoutTests:

  • platform/chromium/TestExpectations:
7:17 PM Changeset in webkit [141524] by commit-queue@webkit.org
  • 43 edits in trunk/Source

Rename from parentOrHost* to parentOrShadowHost* in Node.h.
https://bugs.webkit.org/show_bug.cgi?id=108308

Source/WebCore:

Patch by Changhun Kang <temoochin@company100.net> on 2013-01-31
Reviewed by Dimitri Glazkov.

No new tests. No change in behavior.

Source/WebKit2:

Patch by Changhun Kang <temoochin@company100.net> on 2013-01-31
Reviewed by Dimitri Glazkov.

7:01 PM Changeset in webkit [141523] by alecflett@chromium.org
  • 25 edits
    12 deletes in trunk/Source

IndexedDB: remove old transaction backend bootstrap code
https://bugs.webkit.org/show_bug.cgi?id=103923

Reviewed by Dimitri Glazkov.

Source/WebCore:

Finally remove all leftover code from the IndexedDB "giant
async refactor of 2012." This includes removal of all
IDBTransaction* interfaces that were shared between
the frontend and backend and a few straggling methods
like onUpgradeNeeded and onSuccess that were left from
the last stage of refactoring.

  • Modules/indexeddb/IDBCallbacks.h:
  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(WebCore):
(WebCore::IDBDatabaseBackendImpl::metadata):
(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBDatabaseBackendInterface.h:

(WebCore):
(IDBDatabaseBackendInterface):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.h:

(WebCore):

  • Modules/indexeddb/IDBTransaction.h:

(WebCore):
(IDBTransaction):

  • Modules/indexeddb/IDBTransactionBackendImpl.h:

(WebCore):
(IDBTransactionBackendImpl):

  • Modules/indexeddb/IDBTransactionBackendInterface.h: Removed.
  • Modules/indexeddb/IDBTransactionCallbacks.h: Removed.
  • Modules/indexeddb/IDBTransactionCoordinator.h:

(WebCore):

  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit/chromium:

Remove all deprecated WebKit APIs from
the IDB backend.

  • WebKit.gyp:
  • public/WebIDBCallbacks.h:

(WebKit):

  • public/WebIDBDatabase.h:

(WebKit):

  • public/WebIDBTransaction.h: Removed.
  • public/WebIDBTransactionCallbacks.h: Removed.
  • src/AssertMatchingEnums.cpp:
  • src/IDBCallbacksProxy.cpp:
  • src/IDBDatabaseBackendProxy.cpp:
  • src/IDBDatabaseBackendProxy.h:

(IDBDatabaseBackendProxy):

  • src/IDBTransactionBackendProxy.cpp: Removed.
  • src/IDBTransactionBackendProxy.h: Removed.
  • src/IDBTransactionCallbacksProxy.cpp: Removed.
  • src/IDBTransactionCallbacksProxy.h: Removed.
  • src/WebIDBCallbacksImpl.cpp:
  • src/WebIDBDatabaseImpl.cpp:

(WebKit):

  • src/WebIDBDatabaseImpl.h:

(WebKit):
(WebIDBDatabaseImpl):

  • src/WebIDBTransactionCallbacksImpl.cpp: Removed.
  • src/WebIDBTransactionCallbacksImpl.h: Removed.
  • src/WebIDBTransactionImpl.cpp: Removed.
  • src/WebIDBTransactionImpl.h: Removed.
  • tests/IDBAbortOnCorruptTest.cpp:
  • tests/IDBDatabaseBackendTest.cpp:
6:44 PM Changeset in webkit [141522] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r141349.
http://trac.webkit.org/changeset/141349
https://bugs.webkit.org/show_bug.cgi?id=108422

"yet another windows ews fix needed" (Requested by lforschler
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-31

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

(WinEWS):

6:42 PM Changeset in webkit [141521] by roger_fong@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. Windows build fix.

6:41 PM Changeset in webkit [141520] by hayato@chromium.org
  • 2 edits in trunk/LayoutTests

Use TouchEvent.targetTouches rather than TouchEvent.touches since the order of Touches in TouchList is not guaranteed.
https://bugs.webkit.org/show_bug.cgi?id=108426

Reviewed by Dimitri Glazkov.

Neat fix for LayoutTest in http://trac.webkit.org/changeset/141054.

In this LayoutTest context, the length of touchEvent.touches is 2.
The Touch order in TouchList is not guaranteed. Therefore
touchEvent.touches[0] can be another touch. Rather, we should use
touchEvent.targetTouches here since its length is 1 in this context.

  • fast/dom/shadow/touch-event.html:
6:05 PM Changeset in webkit [141519] by commit-queue@webkit.org
  • 10 edits in trunk

Source/WebKit/chromium: [Chromium] Select multi-word misspelling on context click
https://bugs.webkit.org/show_bug.cgi?id=108509

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-01-31
Reviewed by Tony Chang.

  • src/ContextMenuClientImpl.cpp:

(WebKit):
(WebKit::selectMisspellingAsync): Added utility function to get the misspelling for asynchronous spellcheck.
(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems): Select multi-word misspelling on context click.

Tools: [Chromium] Suggest 'uppercase' for multi-word misspelling 'upper case'
https://bugs.webkit.org/show_bug.cgi?id=108509

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-01-31
Reviewed by Tony Chang.

  • DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.cpp:

(append): Added utility function to append WebString to WebVector.
(MockSpellCheck::fillSuggestionList): Suggest 'uppercase' for misspelling 'upper case'.

LayoutTests: [Chromium] Expect spellcheck to select multi-word misspelling on context click
https://bugs.webkit.org/show_bug.cgi?id=108509

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-01-31
Reviewed by Tony Chang.

  • editing/spelling/spelling-exactly-selected-multiple-words.html: Check spelling suggestion for multi-word misspelling.
  • editing/spelling/spelling-should-select-multiple-words.html: Check spelling suggestion for multi-word misspelling.
  • editing/spelling/spelling-exactly-selected-multiple-words-expected.txt:
  • editing/spelling/spelling-should-select-multiple-words-expected.txt:
  • platform/chromium/TestExpectations: Expect spellcheck to select multi-word misspelling on context click
5:57 PM Changeset in webkit [141518] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling out r141502.
http://trac.webkit.org/changeset/141502
https://bugs.webkit.org/show_bug.cgi?id=108441

Hit assert in SVGElementInstance

  • bindings/scripts/CodeGeneratorV8.pm:

(GetInternalFields):

  • dom/EventTarget.idl:
  • svg/SVGElementInstance.idl:
5:48 PM Changeset in webkit [141517] by ojan@chromium.org
  • 7 edits in trunk/Source/WebCore

Assert that computePreferredLogicalWidths never calls setNeedsLayout
https://bugs.webkit.org/show_bug.cgi?id=108539

Reviewed by Tony Chang.

computePreferredLogicalWidths should only set m_minPreferredLogicalWidth
and m_maxPreferredLogicalWidth. It shouldn't have other side-effects.
This is take 2 after this was rolled out because it was missing the guards
in RenderCounter/RenderQuote.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::minPreferredLogicalWidth):
(WebCore::RenderBox::maxPreferredLogicalWidth):

  • rendering/RenderCounter.cpp:

(WebCore::RenderCounter::computePreferredLogicalWidths):

  • rendering/RenderQuote.cpp:

(WebCore::RenderQuote::computePreferredLogicalWidths):

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::computePreferredLogicalWidths):

  • rendering/mathml/RenderMathMLRoot.cpp:

(WebCore::RenderMathMLRoot::computePreferredLogicalWidths):

  • rendering/mathml/RenderMathMLRow.cpp:

(WebCore::RenderMathMLRow::computePreferredLogicalWidths):

5:39 PM Changeset in webkit [141516] by inferno@chromium.org
  • 25 edits in trunk/Source/WebCore

Use ASSERT_WITH_SECURITY_IMPLICATION to catch bad casts in DOM
https://bugs.webkit.org/show_bug.cgi?id=108490

Reviewed by Eric Seidel.

  • dom/ContainerNode.h:

(WebCore::toContainerNode):

  • dom/Element.h:

(WebCore::toElement):

  • dom/ShadowRoot.h:

(WebCore::toShadowRoot):

  • dom/Text.h:

(WebCore::toText):

  • html/HTMLElement.h:

(HTMLElement):
(WebCore::toHTMLElement):

  • html/HTMLFrameOwnerElement.h:

(WebCore::toFrameOwnerElement):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::hasMediaControls):

  • html/HTMLTemplateElement.cpp:

(WebCore::toHTMLTemplateElement):

  • html/HTMLUnknownElement.h:

(WebCore::toHTMLUnknownElement):

  • html/shadow/InsertionPoint.h:

(WebCore::toInsertionPoint):

  • html/shadow/MediaControlElementTypes.cpp:

(WebCore::mediaControlElementType):

  • html/shadow/MediaControls.h:

(WebCore::toMediaControls):

  • html/shadow/SliderThumbElement.h:

(WebCore::toSliderThumbElement):

  • html/shadow/TextControlInnerElements.h:

(WebCore::toInputFieldSpeechButtonElement):

  • html/shadow/TextFieldDecorationElement.h:

(WebCore::toTextFieldDecorationElement):

  • html/track/WebVTTElement.h:

(WebCore::toWebVTTElement):

  • mathml/MathMLElement.h:

(WebCore::toMathMLElement):

  • page/scrolling/ScrollingStateFixedNode.h:

(WebCore::toScrollingStateFixedNode):

  • page/scrolling/ScrollingStateScrollingNode.h:

(WebCore::toScrollingStateScrollingNode):

  • page/scrolling/ScrollingStateStickyNode.h:

(WebCore::toScrollingStateStickyNode):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::resize):

  • rendering/svg/SVGResources.cpp:

(WebCore::registerPendingResource):
(WebCore::SVGResources::buildCachedResources):

  • svg/SVGElement.h:

(WebCore::toSVGElement):

  • svg/SVGStyledElement.h:

(WebCore::toSVGStyledElement):

5:34 PM Changeset in webkit [141515] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Provide a sensible default architecture when building on iOS SDKs
https://bugs.webkit.org/show_bug.cgi?id=108395

Patch by David Farler <dfarler@apple.com> on 2013-01-31
Reviewed by Joseph Pecoraro.

  • Scripts/webkitdirs.pm:

(determineArchitecture):
Check for iphoneos and iphonesimulator SDKs for a default arch.
(determineXcodeSDK): Added.
(xcodeSDK): Added.
(XcodeOptions): Add ARCHS= if defined.

5:32 PM Changeset in webkit [141514] by commit-queue@webkit.org
  • 6 edits
    12 adds in trunk

Fix rubber-band effect on non-scrollable pages
https://bugs.webkit.org/show_bug.cgi?id=107611

Source/WebCore:

Patch by Christopher Cameron <ccameron@chromium.org> on 2013-01-31
Reviewed by Antonio Gomes.

Handle a FrameView's wheel event even if it is not scrollable
because Chrome relies on handling these wheel events for the
over-scroll rubber-band effect.

This had been removed in r138378
[EFL][WK2] Never create WebCore scrollbars for EFL/WK2
by kenneth@chromium.org

Tests: platform/chromium/rubberbanding/wheelevent-overhang-e.html

platform/chromium/rubberbanding/wheelevent-overhang-n.html
platform/chromium/rubberbanding/wheelevent-overhang-s.html
platform/chromium/rubberbanding/wheelevent-overhang-w.html

  • page/FrameView.cpp:

(WebCore::FrameView::wheelEvent):

Tools:

Add mouseWheelBegin function to EventSender to allow
event-based rubber-banding tests.

Patch by Christopher Cameron <ccameron@chromium.org> on 2013-01-31
Reviewed by Antonio Gomes.

  • DumpRenderTree/chromium/TestRunner/src/EventSender.cpp:

(WebTestRunner):
(WebTestRunner::EventSender::EventSender):
(WebTestRunner::EventSender::mouseDragBegin):

  • DumpRenderTree/chromium/TestRunner/src/EventSender.h:

(EventSender):

LayoutTests:

Patch by Christopher Cameron <ccameron@chromium.org> on 2013-01-31
Reviewed by Antonio Gomes.

  • platform/chromium/rubberbanding/event-overhang-e-expected.png: Added.
  • platform/chromium/rubberbanding/event-overhang-e-expected.txt: Added.
  • platform/chromium/rubberbanding/event-overhang-e.html: Added.
  • platform/chromium/rubberbanding/event-overhang-n-expected.png: Added.
  • platform/chromium/rubberbanding/event-overhang-n-expected.txt: Added.
  • platform/chromium/rubberbanding/event-overhang-n.html: Added.
  • platform/chromium/rubberbanding/event-overhang-s-expected.png: Added.
  • platform/chromium/rubberbanding/event-overhang-s-expected.txt: Added.
  • platform/chromium/rubberbanding/event-overhang-s.html: Added.
  • platform/chromium/rubberbanding/event-overhang-w-expected.png: Added.
  • platform/chromium/rubberbanding/event-overhang-w-expected.txt: Added.
  • platform/chromium/rubberbanding/event-overhang-w.html: Added.
5:25 PM Changeset in webkit [141513] by enrica@apple.com
  • 5 edits in trunk/Source

Mac: Editor::baseWritingDirectionForSelectionStart should return WritingDirection instead of NSWritingDirection.
https://bugs.webkit.org/show_bug.cgi?id=108519.

Reviewed by Sam Weinig.

Source/WebCore:

No new tests, no change in behavior.

There is no need to use AppKit types here.
baseWritingDirectionForSelectionStart now returns WritingDirection and
WebHTMLView toggleWritingDirection has been modified accordingly.

  • editing/Editor.h:
  • editing/mac/EditorMac.mm:

(WebCore::Editor::baseWritingDirectionForSelectionStart):

Source/WebKit/mac:

There is no need to use AppKit types here.
baseWritingDirectionForSelectionStart now returns WritingDirection and
WebHTMLView toggleWritingDirection has been modified accordingly.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView toggleBaseWritingDirection:]):

5:23 PM Changeset in webkit [141512] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[chromium] Notify the WebWidget when the WebViewHost is about to tear down compositing support
https://bugs.webkit.org/show_bug.cgi?id=108518

Patch by James Robinson <jamesr@chromium.org> on 2013-01-31
Reviewed by Adrienne Walker.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::shutdown):

5:21 PM Changeset in webkit [141511] by haraken@chromium.org
  • 6 edits in trunk/Source/WebCore

[V8] Pass an Isolate to GetTemplate() in CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=108445

Reviewed by Adam Barth.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateDomainSafeFunctionGetter):
(GenerateDomainSafeFunctionSetter):
(GenerateNormalAttrGetter):
(GenerateNamedConstructorCallback):
(GenerateImplementation):

  • bindings/scripts/test/V8/V8Float64Array.cpp:

(WebCore::ConfigureV8Float64ArrayTemplate):

  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:

(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::TestActiveDOMObjectV8Internal::TestActiveDOMObjectDomainSafeFunctionSetter):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructorConstructor::GetTemplate):

  • bindings/scripts/test/V8/V8TestNode.cpp:

(WebCore::ConfigureV8TestNodeTemplate):

5:16 PM Changeset in webkit [141510] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

StorageManager should be ref-counted
https://bugs.webkit.org/show_bug.cgi?id=108553

Reviewed by Beth Dakin.

It's likely we'd want to have the storage manager outlive its context at times, so make it
reference counted.

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::create):
(WebKit):

  • UIProcess/Storage/StorageManager.h:

(StorageManager):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):

  • UIProcess/WebContext.h:

(WebContext):

5:12 PM Changeset in webkit [141509] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Clean up Dictionary::get() by removing redundant FindInstanceInPrototypeChain()
https://bugs.webkit.org/show_bug.cgi?id=108443

Reviewed by Adam Barth.

In Dictionary::get(), wrapper->FindInstanceInPrototypeChain(V8XXX::GetTemplate())
is unnecessary for DOM wrappers other than DOMWindow. For wrappers other than
DOMWindow, we can simply use V8XXX::HasInstance(wrapper).

Tests: fast/events/constructors/*

  • bindings/v8/Dictionary.cpp:

(WebCore::Dictionary::get):

5:10 PM Changeset in webkit [141508] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

REGRESSION(r141136): Apple's internal PLT test suite doesn't finish
https://bugs.webkit.org/show_bug.cgi?id=108380

Mark another test whose results depend on main resource caching being enabled as failing until
main resource caching can be re-enabled on mac.

  • platform/mac/TestExpectations:
5:05 PM Changeset in webkit [141507] by jamesr@google.com
  • 2 edits in branches/chromium/1364/Source/WebCore

Merge 141226

Scrollbar and scroll corner composited layers positioned incorrectly
https://bugs.webkit.org/show_bug.cgi?id=108255

Patch by James Robinson <jamesr@chromium.org> on 2013-01-29
Reviewed by Simon Fraser.

ScrollView::updateScrollbars() needs to update the overflow controls composited layers if scrollbars are added
or removed. It was doing this by recording on entry to the function if it had horizontal or vertical scrollbars
and then comparing that to m_horizontal/verticalScrollbar on exit. Unfortunately updateScrollbars is recursive
and exits without running the postamble code when nested on the callstack. As a result, scrollbars may be
added or removed several times during the recursion, possibly leaving the overflow control layers in an
inconsistent state, while ending up with the same set of scrollbars.

This changes the "has anything changed" logic to only compare local state (hasXXXScrollbar vs
newHasXXXScrollbar) so changes in recursive calls are not considered.

  • platform/ScrollView.cpp:

(WebCore::ScrollView::updateScrollbars):

TBR=jamesr@chromium.org
BUG=170264
Review URL: https://codereview.chromium.org/12084101

4:52 PM Changeset in webkit [141506] by timothy_horton@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

Land failing baselines for Lion after r141333. Unreviewed.
https://bugs.webkit.org/show_bug.cgi?id=108523

  • platform/mac-lion/fast/canvas/canvas-composite-alpha-expected.txt: Added.
4:48 PM Changeset in webkit [141505] by jchaffraix@webkit.org
  • 5 edits
    4 adds in trunk

[CSS Grid Layout] Support implicit rows and columns
https://bugs.webkit.org/show_bug.cgi?id=103573

Reviewed by Ojan Vafai.

Source/WebCore:

Tests: fast/css-grid-layout/implicit-columns-auto-resolution.html

fast/css-grid-layout/implicit-rows-auto-resolution.html

This change makes us properly initialize our GridTrack vectors's size
so that we can safely query any items during layout.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::gridTrackSize):
Added this helper function to return the track size from the grid
element's columns' / rows' definitions or the default value.

(WebCore::RenderGrid::maximumIndexInDirection):
Added this helper function to get the maximum index in a direction
taking grid item's implicit indexes into account.

(WebCore::RenderGrid::computedUsedBreadthOfGridTracks):
Changed the funtion to not append the new tracks as we are properly
sized now.

(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
(WebCore::RenderGrid::tracksAreWiderThanMinTrackBreadth):
Updated these functions to use the new helper functions.

(WebCore::RenderGrid::layoutGridItems):
Changed this function to size both vectors when initializing them.
Also removed an unneeded bounds check as it shouldn't be needed anymore.

  • rendering/RenderGrid.h:

Added the new helper functions.

  • rendering/style/GridTrackSize.h:

(WebCore::GridTrackSize::GridTrackSize):
Added a constructor taking a LengthType.

LayoutTests:

  • fast/css-grid-layout/implicit-columns-auto-resolution-expected.txt: Added.
  • fast/css-grid-layout/implicit-columns-auto-resolution.html: Added.
  • fast/css-grid-layout/implicit-rows-auto-resolution-expected.txt: Added.
  • fast/css-grid-layout/implicit-rows-auto-resolution.html: Added.
4:37 PM Changeset in webkit [141504] by jberlin@webkit.org
  • 7 edits in trunk/Source

Rolling out r141407 because it is causing crashes under
WTF::TCMalloc_Central_FreeList::FetchFromSpans() in Release builds.

Source/JavaScriptCore:

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

Source/WTF:

  • wtf/Deque.h:

(WTF::::expandCapacity):

  • wtf/FastMalloc.cpp:
  • wtf/FastMalloc.h:

(WTF):

  • wtf/Vector.h:

(WTF::VectorBufferBase::allocateBuffer):
(WTF::VectorBufferBase::tryAllocateBuffer):
(WTF::VectorBufferBase::reallocateBuffer):

4:37 PM Changeset in webkit [141503] by commit-queue@webkit.org
  • 4 edits in trunk

[GTK] fast/css/relative-positioned-block-crash.html is intermittently crashing
https://bugs.webkit.org/show_bug.cgi?id=108200

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2013-01-31
Reviewed by Martin Robinson.

Source/WebCore:

Getting the Position of a PseudoElement now triggers an assertion.
This can occur when clicking on empty space in a render block.
Looking to the unignored parent's node (and passing that accessible
object on in a signal to Assistive Technologies) seems like the most
reasonable thing to do here.

No new tests; instead skipping two tests that were crashing as a result.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(objectFocusedAndCaretOffsetUnignored):

LayoutTests:

Unskip two crashing tests having fixed the underlying bug.

  • platform/gtk/TestExpectations:
4:25 PM Changeset in webkit [141502] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Simplify CodeGeneratorV8.pm by using InheritsExtendedAttribute("EventTarget")
https://bugs.webkit.org/show_bug.cgi?id=108441

Reviewed by Adam Barth.

A complicated condition in GetInternalFields() can be simplified
by using InheritsExtendedAttribute("EventTarget").

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GetInternalFields):

  • dom/EventTarget.idl: Added [EventTarget] which should have been added.
  • svg/SVGElementInstance.idl: Ditto.
3:59 PM Changeset in webkit [141501] by ojan@chromium.org
  • 3 edits
    2 moves
    2 deletes in trunk/LayoutTests

Rebaseline after r141459.

  • fast/multicol/shrink-to-column-height-for-pagination-expected.png: Renamed from LayoutTests/platform/efl/fast/multicol/shrink-to-column-height-for-pagination-expected.png.
  • fast/multicol/shrink-to-column-height-for-pagination-expected.txt: Renamed from LayoutTests/platform/chromium/fast/multicol/shrink-to-column-height-for-pagination-expected.txt.
  • platform/efl/fast/multicol/shrink-to-column-height-for-pagination-expected.txt:
  • platform/gtk/fast/multicol/shrink-to-column-height-for-pagination-expected.png: Removed.
  • platform/gtk/fast/multicol/shrink-to-column-height-for-pagination-expected.txt:
  • platform/qt/fast/multicol/shrink-to-column-height-for-pagination-expected.txt: Removed.
3:51 PM Changeset in webkit [141500] by commit-queue@webkit.org
  • 6 edits
    4 adds in trunk

Source/WebCore: Quadratic and bezier curves with coincident endpoints rendered incorrectly
https://bugs.webkit.org/show_bug.cgi?id=105650

Patch by Youenn Fablet <youennf@gmail.com> on 2013-01-31
Reviewed by Kenneth Russell.

Tests: fast/canvas/canvas-bezier-same-endpoint.html

fast/canvas/canvas-quadratic-same-endpoint.html

  • html/canvas/CanvasPathMethods.cpp:

(WebCore::CanvasPathMethods::quadraticCurveTo):
(WebCore::CanvasPathMethods::bezierCurveTo):

LayoutTests: Quadratic and bezier curves with coincident endpoints rendered incorrectly
https://bugs.webkit.org/show_bug.cgi?id=105650
Modified TestExpectations for Mac, efl and Qt platforms as quadratic curves
may not be rendered correctly
(see https://bugs.webkit.org/show_bug.cgi?id=107118)

Patch by Youenn Fablet <youennf@gmail.com> on 2013-01-31
Reviewed by Kenneth Russell.

  • fast/canvas/canvas-bezier-same-endpoint-expected.txt: Added.
  • fast/canvas/canvas-bezier-same-endpoint.html: Added.
  • fast/canvas/canvas-quadratic-same-endpoint-expected.txt: Added.
  • fast/canvas/canvas-quadratic-same-endpoint.html: Added.
  • platform/efl/TestExpectations: Skipped quad test
  • platform/mac/TestExpectations: Skipped quad test
  • platform/qt/TestExpectations: Skipped quad test
3:49 PM Changeset in webkit [141499] by mark.lam@apple.com
  • 4 edits
    1 move in trunk/Source

Abstraction for hiding enum class.
https://bugs.webkit.org/show_bug.cgi?id=108533

Reviewed by Anders Carlsson.

../WebCore:

No new tests.

  • Modules/webdatabase/DatabaseError.h:

(WebCore::ENUM_CLASS_BEGIN):

../WTF:

  • wtf/Compiler.h:
  • wtf/EnumClass.h: Copied from Source/WTF/wtf/TypeSafeEnum.h.

(WTF::EnumClass::EnumClass):
(WTF::EnumClass::operator==):
(WTF::EnumClass::operator!=):
(WTF::EnumClass::operator<):
(WTF::EnumClass::operator<=):
(WTF::EnumClass::operator>):
(WTF::EnumClass::operator>=):

  • wtf/TypeSafeEnum.h: Removed.
3:46 PM Changeset in webkit [141498] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[Gtk] drag and drop has black background without composition
https://bugs.webkit.org/show_bug.cgi?id=108376

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2013-01-31
Reviewed by Martin Robinson.

Use gtk_drag_set_icon_surface (or gtk_drag_set_icon_pixbuf) when the
screen is not composited. That way, drag window will be decomposited
and rendered transparent with Xshape.

To determine which parts of the window must be transparent, gtk checks
if a pixel is more than 50% opaque. With dissolveDragImageToFraction,
all pixels are made 25% transparent. With antialiasing, opacity goes
below the threshold for some pixels, which makes the resulting image
messy. So, we need to skip dissolveDragImageToFraction when we use
gtk_drag_set_icon_surface.

  • platform/gtk/DragIcon.cpp:

(WebCore::DragIcon::DragIcon):
(WebCore::DragIcon::~DragIcon):
(WebCore::DragIcon::setImage):
(WebCore::DragIcon::useForDrag):

  • platform/gtk/DragIcon.h:

(DragIcon):

  • platform/gtk/DragImageGtk.cpp:

(WebCore::dissolveDragImageToFraction):

3:43 PM Changeset in webkit [141497] by andersca@apple.com
  • 10 edits in trunk/Source/WebKit2

WorkQueue should be a ref-counted class
https://bugs.webkit.org/show_bug.cgi?id=108544

Reviewed by Sam Weinig.

Make WorkQueue a ref-counted class that's implicitly ref()'d when dispatching a function to it, and then
implicitly deref()'d when the function is done executing. This matches the behavior of dispatch queues,
and ensures that the WorkQueue object won't go away while dispatched functions are running.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::Connection):
(CoreIPC::Connection::~Connection):
(CoreIPC::Connection::addQueueClient):
(CoreIPC::Connection::removeQueueClient):
(CoreIPC::Connection::invalidate):
(CoreIPC::Connection::sendMessage):
(CoreIPC::Connection::postConnectionDidCloseOnConnectionWorkQueue):
(CoreIPC::Connection::connectionDidClose):

  • Platform/CoreIPC/Connection.h:

(Connection):

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::createDataAvailableSource):
(CoreIPC::Connection::open):
(CoreIPC::Connection::initializeDeadNameSource):

  • Platform/WorkQueue.cpp:

(WorkQueue::create):
(WorkQueue::WorkQueue):
(WorkQueue::~WorkQueue):

  • Platform/WorkQueue.h:

(WorkQueue):

  • Platform/mac/WorkQueueMac.cpp:

(WorkQueue::dispatch):
(WorkQueue::dispatchAfterDelay):

  • Shared/ChildProcess.cpp:

(WebKit::didCloseOnConnectionWorkQueue):

  • UIProcess/Launcher/ProcessLauncher.cpp:

(WebKit::processLauncherWorkQueue):
(WebKit::ProcessLauncher::ProcessLauncher):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::pluginWorkQueue):
(WebKit::WebProcessProxy::getPlugins):

3:38 PM Changeset in webkit [141496] by fmalita@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Unreviewed gardening.

WebViewTest.SetCompositionFromExistingText failing after r141479.

  • tests/WebViewTest.cpp:
3:26 PM Changeset in webkit [141495] by rafael.lobo@openbossa.org
  • 7 edits in trunk/Source/WebKit2

[Qt][WK2] Fix build after removal of MessageID.h
https://bugs.webkit.org/show_bug.cgi?id=108534

Reviewed by Anders Carlsson.

  • Platform/CoreIPC/unix/ConnectionUnix.cpp:

(CoreIPC::MessageInfo::MessageInfo):
(CoreIPC::MessageInfo::setMessageBodyIsOutOfLine):
(CoreIPC::MessageInfo::isMessageBodyIsOutOfLine):
(MessageInfo):
(CoreIPC::Connection::processMessage):
(CoreIPC::Connection::sendOutgoingMessage):

  • Target.pri:
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
  • UIProcess/DrawingAreaProxy.cpp:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
  • WebProcess/soup/WebSoupRequestManager.cpp:
3:18 PM Changeset in webkit [141494] by tonyg@chromium.org
  • 14 edits
    2 adds in trunk/Source/WebCore

Begin to make XSSAuditor thread aware
https://bugs.webkit.org/show_bug.cgi?id=108394

Reviewed by Adam Barth.

This patch moves the parts of filterToken() that depend on Frame, Document, etc. to a delegate class.
The new didBlockScript delegate method is invoked with the resulting DidBlockScriptRequest which will
be owned by the CompactHTMLToken in the threaded case.

This is just the first step as there is more to do to make XSSAuditor thread safe.

No new tests because covered by existing tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::pumpTokenizer):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore::HTMLDocumentParser::processTokensFromBackgroundParser):
(WebCore::HTMLDocumentParser::pumpTokenizer):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::filterToken):

  • html/parser/XSSAuditor.h:

(WebCore):
(XSSAuditor):

  • html/parser/XSSAuditorDelegate.cpp: Added.

(WebCore):
(WebCore::XSSAuditorDelegate::XSSAuditorDelegate):
(WebCore::XSSAuditorDelegate::didBlockScript):

  • html/parser/XSSAuditorDelegate.h: Added.

(WebCore):
(DidBlockScriptRequest):
(WebCore::DidBlockScriptRequest::create):
(WebCore::DidBlockScriptRequest::DidBlockScriptRequest):
(XSSAuditorDelegate):

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::pumpTokenizer):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
(WebCore::HTMLDocumentParser::pumpTokenizer):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::XSSAuditor):
(WebCore::XSSAuditor::filterToken):

  • html/parser/XSSAuditor.h:

(WebCore):
(XSSAuditor):

  • html/parser/XSSAuditorDelegate.cpp: Added.

(WebCore):
(WebCore::XSSAuditorDelegate::XSSAuditorDelegate):
(WebCore::XSSAuditorDelegate::didBlockScript):

  • html/parser/XSSAuditorDelegate.h: Added.

(WebCore):
(DidBlockScriptRequest):
(WebCore::DidBlockScriptRequest::create):
(WebCore::DidBlockScriptRequest::DidBlockScriptRequest):
(XSSAuditorDelegate):

3:13 PM Changeset in webkit [141493] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Assertion failure in WebResourceLoadScheduler::remove when loading .webarchives
<rdar://problem/12888145> and https://bugs.webkit.org/show_bug.cgi?id=108520

Reviewed by Alexey Proskuryakov.

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::scheduleLoad): Even if it isn't to be scheduled with the

NetworkProcess, still add this ResourceLoader to the scheduler's records.

3:12 PM Changeset in webkit [141492] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

CSS3's vh attribute is not adjusting while browser resizes
https://bugs.webkit.org/show_bug.cgi?id=86418

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-01-31
Reviewed by Antti Koivisto.

Source/WebCore:

Elements with viewport percentage units needs layout whenever
viewport size changes. Check for viewport percentage unit
was missing for height.

Test: css3/viewport-percentage-lengths/vh-resize.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateBlockChildDirtyBitsBeforeLayout):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::hasViewportPercentageLogicalHeight): Check if style
is specified in viewport percentage units.
(WebCore):

  • rendering/RenderBox.h:

(RenderBox):

  • rendering/RenderView.cpp:

(WebCore::RenderView::layout): Elements with viewport percentage units
needs relayout when viewport size changes.

LayoutTests:

Added test to check element with vh units gets resized when
viewport height is increased or decreased.

  • css3/viewport-percentage-lengths/vh-resize-expected.html: Added.
  • css3/viewport-percentage-lengths/vh-resize.html: Added.
2:56 PM Changeset in webkit [141491] by psolanki@apple.com
  • 2 edits in trunk/Tools

DumpRenderTree should put NSSound calls inside USE(APPKIT)
https://bugs.webkit.org/show_bug.cgi?id=108499

Reviewed by Andy Estes.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(dumpRenderTree):

2:38 PM CoordinatedGraphicsSystem edited by luxtella@company100.net
(diff)
2:36 PM CoordinatedGraphicsSystem edited by luxtella@company100.net
(diff)
2:33 PM Changeset in webkit [141490] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Objective-C API: JSContext exception property causes reference cycle
https://bugs.webkit.org/show_bug.cgi?id=107778

Reviewed by Darin Adler.

JSContext has a (retain) JSValue * exception property which, when non-null, creates a
reference cycle (since the JSValue * holds a strong reference back to the JSContext *).

  • API/JSContext.mm: Instead of JSValue *, we now use a plain JSValueRef, which eliminates the reference cycle.

(-[JSContext initWithVirtualMachine:]):
(-[JSContext setException:]):
(-[JSContext exception]):

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

TextAutosizing: refactor the cluster related method parameters into a single struct.
https://bugs.webkit.org/show_bug.cgi?id=108384

This anticipates adding more cluster related information in the following patches.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-01-31
Reviewed by Kenneth Rohde Christiansen.

Just a refactoring so no new tests.

  • rendering/TextAutosizer.cpp: define the new struct and pass it to every method instead of

a cluster and its descendant block containing all text.

  • rendering/TextAutosizer.h: change method prototypes to receive the new struct

as a parameter defining an autosizing cluster.

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizingClusterInfo::TextAutosizingClusterInfo):
(TextAutosizingClusterInfo):
(WebCore):
(WebCore::TextAutosizer::processSubtree):
(WebCore::TextAutosizer::processCluster):
(WebCore::TextAutosizer::processContainer):
(WebCore::TextAutosizer::isAutosizingCluster):
(WebCore::TextAutosizer::clusterShouldBeAutosized):
(WebCore::TextAutosizer::measureDescendantTextWidth):

  • rendering/TextAutosizer.h:

(WebCore):

2:28 PM Changeset in webkit [141488] by Simon Hausmann
  • 2 edits in trunk/Source/WebKit2

Unreviewed trivial Unix build fix.

Use Vector<> instead of Deque<> when iterating
over m_attachments in the USE(UNIX_DOMAIN_SOCKETS)
case.

  • Platform/CoreIPC/ArgumentDecoder.cpp:
2:23 PM Changeset in webkit [141487] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Rebaseline after r141459.

  • platform/mac/fast/multicol/shrink-to-column-height-for-pagination-expected.txt:
2:17 PM Changeset in webkit [141486] by bweinstein@apple.com
  • 16 edits in trunk

Add a call to the page UI client to determine if a plug-in should load
https://bugs.webkit.org/show_bug.cgi?id=108407
<rdar://problem/13066332>

Source/WebKit2:

Reviewed by Anders Carlsson.

This patch adds a client call to the WKPageUIClient to be called to determine
whether or not a plug-in should load.

  • UIProcess/API/C/WKPage.h: Add shouldLoadPlugin.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::getPluginPath): Moved from WebProcessProxy, and added a call to

m_uiClient.shouldInstantiatePlugin.

  • UIProcess/WebPageProxy.h:
  • UIProcss/WebPageProxy.messages.in: Moved GetPluginPath from WebProcessProxy to WebPageProxy.
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::getPluginPath): Moved to WebPageProxy.

  • UIProcess/WebProcessProxy.h:
  • UIProcess/WebUIClient.cpp:

(WebKit::WebUIClient::shouldInstantiatePlugin): Return that we should load the plug-in if

the client function isn't defined, and call the function if it is.

  • UIProcess/WebUIClient.h:
  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformCreateInspectorPage): Add an entry for the new

client function.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin): Send the message to the WebPageProxy, not the WebProcessProxy.
(WebKit::WebPage::canPluginHandleResponse): Made a member function, so it can call sendSync, and

send the message to the WebPageProxy, not the WebProcessProxy.

  • WebProcess/WebPage/WebPage.h:

Tools:

Add entries for the new function in the necessary structs.

Reviewed by Anders Carlsson.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createOtherPage):
(WTR::TestController::createWebViewWithOptions):

2:13 PM Changeset in webkit [141485] by roger_fong@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed build fix. Win7 port.

2:12 PM Changeset in webkit [141484] by andersca@apple.com
  • 1 edit in trunk/Source/WebKit2/ChangeLog

Tweak ChangeLog.

2:02 PM Changeset in webkit [141483] by aelias@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

[chromium] Rework page scale factor limits initialization
https://bugs.webkit.org/show_bug.cgi?id=108446

Reviewed by James Robinson.

When loading a page with viewportEnabled, both the limits
specified by the viewport tag and the content width need to be
considered before we initialize the minimum page scale (and
pageScaleFactor itself usually to the same value). The timing has
proven tricky to get correct.

This patch simplifies the flow by computing the
limits only at the end of layouts and at no other time. In combination
with https://bugs.webkit.org/show_bug.cgi?id=107922 which sets
needsLayout() appropriately, this results in a more robust and easy
to understand sequence.

Fixes FixedLayoutInitializeAtMinimumPageScale test.

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::dispatchViewportPropertiesDidChange):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::resize):
(WebKit::WebViewImpl::setPageScaleFactorLimits):
(WebKit::WebViewImpl::computePageScaleFactorLimits):
(WebKit::WebViewImpl::layoutUpdated):
(WebKit::WebViewImpl::didChangeContentsSize):

  • src/WebViewImpl.h:

(WebKit::WebViewImpl::setInitialPageScaleFactor):
(WebViewImpl):

  • tests/WebFrameTest.cpp:
2:00 PM Changeset in webkit [141482] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Use a Vector for IPC attachments
https://bugs.webkit.org/show_bug.cgi?id=108517

Reviewed by Sam Weinig.

  • Platform/CoreIPC/ArgumentDecoder.cpp:

(CoreIPC::ArgumentDecoder::create):
(CoreIPC::ArgumentDecoder::ArgumentDecoder):
(CoreIPC::ArgumentDecoder::removeAttachment):

  • Platform/CoreIPC/ArgumentDecoder.h:

(ArgumentDecoder):

  • Platform/CoreIPC/Connection.h:
  • Platform/CoreIPC/MessageDecoder.cpp:

(CoreIPC::MessageDecoder::create):
(CoreIPC::MessageDecoder::MessageDecoder):

  • Platform/CoreIPC/MessageDecoder.h:

(MessageDecoder):

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::createMessageDecoder):

1:57 PM Changeset in webkit [141481] by zhajiang@rim.com
  • 7 edits in trunk/Source

[BlackBerry] Bing Images viewport causes layout "fun"
https://bugs.webkit.org/show_bug.cgi?id=108393

Patch by Jacky Jiang <zhajiang@rim.com>.
Reviewed by Yong Li.
Internally reviewed by Arvid Nilsson and partially reviewed by Konrad Piascik.

Source/WebCore:

PR: 277855
On bing.com image search page, JS generated styles for the divs which
contained images based on the window.screen and window.innerWidth.
Unfortunately the styles for the divs weren't good enough on our device
which resulted in three images being overlapped in the same viewport.
On our port, we calculate the screen rect base on the physical screen
pixels. However, iOS and lastest Android Chrome port already changed it
to density-independent (logical) pixels. And also to my knowledge that
some websites would generate bad styles for us as well through
@media device-width/device-height.
To be consistent and fix such kinds of issues, we should use
density-independent pixels instead of physical screen pixels. Mainly
ported from Chrome port change r139356. The patch will affect
screen.width/height, window.outerWidth/outerHeight and
@media device-width/device-height.

  • platform/blackberry/PlatformScreenBlackBerry.cpp:

(WebCore):
(WebCore::toUserSpace):
(WebCore::screenAvailableRect):
(WebCore::screenRect):

Source/WebKit/blackberry:

PR: 277855
Set applyPageScaleFactorInCompositor settting to false by default.
Scale down chrome window rect to density-independent pixels.

  • Api/WebPage.cpp:

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

  • Api/WebSettings.cpp:

(WebKit):
(BlackBerry::WebKit::WebSettings::standardSettings):
(BlackBerry::WebKit::WebSettings::applyDeviceScaleFactorInCompositor):
(BlackBerry::WebKit::WebSettings::setApplyPageScaleFactorInCompositor):

  • Api/WebSettings.h:
  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::windowRect):

1:52 PM Changeset in webkit [141480] by mvujovic@adobe.com
  • 7 edits
    8 adds in trunk

[CSS Shaders] Parse custom filter function with the at-rule reference syntax
https://bugs.webkit.org/show_bug.cgi?id=108351

Reviewed by Dean Jackson.

Source/WebCore:

This patch implements the parsing for the new custom filter function "at-rule reference"
syntax. It does not implement the style resolution yet.

The custom function syntax has changed in the spec. Instead of including all of the custom
filter information inline, the custom function can now reference an @filter rule by name.
The custom function can still accept a list of parameters.

The syntax is defined as the following, where IDENT is the name of the @filter rule:
filter: custom(IDENT [, <param>]*)

In practice, it can look like this:
filter: custom(page-curl, direction 90, amount 0.5);

Spec: https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#customident-ltparamgt

Tests: css3/filters/custom-with-at-rule-syntax/parsing-custom-function-invalid.html

css3/filters/custom-with-at-rule-syntax/parsing-custom-function-valid.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseCustomFilterParameters):

Factor out a new function that just parses custom filter parameters. This is used by the
previous inline syntax and the new at-rule reference syntax.

(WebCore):
(WebCore::CSSParser::parseCustomFilterFunctionWithAtRuleReferenceSyntax):

This method parses the new at-rule reference syntax. When we remove the inline syntax,
we can rename this method to "parseCustomFilterFunction" and call it directly.

(WebCore::CSSParser::parseCustomFilterFunctionWithInlineSyntax):

Move the previous inline syntax parsing code into a new function.

(WebCore::CSSParser::parseCustomFilterFunction):

This method looks ahead in the CSS parser values and decides whether to parse the custom
function with the previous inline syntax or with the new at-rule reference syntax.

(WebCore::CSSParser::parseFilter):

I renamed the "parseCustomFilter" method to "parseCustomFilterFunction" to be more
explicit. Here, we update the name in the call site.

  • css/CSSParser.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::createCustomFilterOperationWithAtRuleReferenceSyntax):

This is a stub method. In the future, style resolution for the at-rule reference
syntax will happen here. When we remove the inline syntax, we can rename this method

(WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):

This method contains the previous inline syntax style resolution code.

(WebCore):
(WebCore::StyleResolver::createCustomFilterOperation):

This method decides which syntax we should use to resolve the style.

  • css/StyleResolver.h:

(StyleResolver):

LayoutTests:

Add positive and negative parsing tests for the new custom function syntax.

Add a new folder "css3/filters/custom-with-at-rule-syntax". This will contain all the tests
using the new custom filters at-rule syntax. We will gradually copy tests in
"css3/filters/custom" over to "css3/filters/custom-with-at-rule-syntax" and modify them to
use the new at-rule syntax. When all of the tests have been replicated using the new syntax,
we will remove the previous syntax and the tests in "css3/filters/custom".

  • css3/filters/custom-with-at-rule-syntax/parsing-custom-function-invalid-expected.txt: Added.
  • css3/filters/custom-with-at-rule-syntax/parsing-custom-function-invalid.html: Added.
  • css3/filters/custom-with-at-rule-syntax/parsing-custom-function-valid-expected.txt: Added.
  • css3/filters/custom-with-at-rule-syntax/parsing-custom-function-valid.html: Added.
  • css3/filters/custom-with-at-rule-syntax/script-tests/parsing-custom-function-invalid.js: Added.

(testInvalidFilterRule):

  • css3/filters/custom-with-at-rule-syntax/script-tests/parsing-custom-function-valid.js: Added.

(testFilterProperty):

  • css3/filters/script-tests/custom-filter-parsing-common.js:

(heading):

New function to print a heading to make groups of related parsing tests easier to see.

(shouldHaveConstructor):

New function to check the JS type of an object on JSC as well as V8. This is intended to
eventually replace shouldBeType, which works differently on V8 vs. JSC and requires us
to create Chromium-specific expectations for the custom filters parsing tests.

1:50 PM Changeset in webkit [141479] by commit-queue@webkit.org
  • 16 edits in trunk

Editor::m_compositionNode not updated on HTMLInputElement::setValue()
https://bugs.webkit.org/show_bug.cgi?id=107737

Patch by Aurimas Liutikas <aurimas@chromium.org> on 2013-01-31
Reviewed by Ryosuke Niwa.

Source/WebCore:

Chromium has a bug where the IME composition did not get cancelled on JavaScript changes
to the focused editing field. Most of other WebKit ports were already doing this check
in their EditorClient::respondToChangedSelection. I took that logic and moved it to the
Editor so every port and use the same code.

An existing test editing/input/setting-input-value-cancel-ime-composition.html covers this change.
This test used to have an expectation to fail on Chromium and after this patch it will start passing.

  • editing/Editor.cpp:

(WebCore::Editor::cancelCompositionIfSelectionIsInvalid):

Adding a call that can be used by any the port to cancel the composition if it's no longer valid.

(WebCore):

  • editing/Editor.h:

(Editor):

Source/WebKit/chromium:

  • public/WebViewClient.h:

(WebKit::WebViewClient::didCancelCompositionOnSelectionChange):

Adding a callback to let the WebViewClient know that the composition has been cancelled.

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::respondToChangedSelection):

Adding a call composition if it is no longer valid.

Source/WebKit/efl:

  • WebCoreSupport/EditorClientEfl.cpp:

(WebCore::EditorClientEfl::respondToChangedSelection):

Adding a call to the newly refactored method.

Source/WebKit/gtk:

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::respondToChangedSelection):

Adding a call to the newly refactored Editor method.

Source/WebKit/mac:

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _updateSelectionForInputManager]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::updateSelectionForIME):

Adding a call to the newly refactored method.

LayoutTests:

1:47 PM Changeset in webkit [141478] by fmalita@chromium.org
  • 2 edits in trunk/Tools

[Chromium] Unreviewed gardening.

Win build fix after http://trac.webkit.org/changeset/141471.

  • DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.cpp:

(MockSpellCheck::spellCheckWord):

1:42 PM Changeset in webkit [141477] by Joseph Pecoraro
  • 8 edits in trunk/Source

Disable ENABLE_FULLSCREEN_API on iOS
https://bugs.webkit.org/show_bug.cgi?id=108250

Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
1:25 PM Changeset in webkit [141476] by kerz@chromium.org
  • 2 edits in branches/chromium/1364/Source/WebKit/chromium

Merge 141454

WebFrameTest.DisambiguationPopup is failing
https://bugs.webkit.org/show_bug.cgi?id=108160

Patch by Dan Alcantara <dfalcantara@chromium.org> on 2013-01-31
Reviewed by Adam Barth.

Fix the unit test so that it is using the right HTML file.

  • tests/WebFrameTest.cpp:

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12087118

1:24 PM Changeset in webkit [141475] by kerz@chromium.org
  • 4 edits
    1 copy in branches/chromium/1364/Source/WebKit/chromium

Merge 141019

[Chromium, Mobile] Do not show disambiguation pop up in mobile sites
https://bugs.webkit.org/show_bug.cgi?id=107607

Patch by Dan Alcantara <dfalcantara@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

Add a check before showing the disambiguation popup to prevent it from appearing
on mobile sites. Makes a similar test to the current disambiguation popup test
that expects the popup to never appear.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):
(WebKit):
(WebKit::WebViewImpl::isLikelyMobileSite):

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp:
  • tests/data/disambiguation_popup_mobile_site.html: Added.
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):
(WebKit):
(WebKit::WebViewImpl::shouldDisableDesktopWorkarounds):

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp:
  • tests/data/disambiguation_popup_mobile_site.html: Added.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12086096

1:18 PM Changeset in webkit [141474] by pilgrim@chromium.org
  • 4 edits
    1 move in trunk/Source

[Chromium] Move LocalizedStrings to WebCore
https://bugs.webkit.org/show_bug.cgi?id=108488

Reviewed by Adam Barth.

Part of a larger refactoring series; see tracking bug 106829.

Source/WebCore:

  • WebCore.gypi:
  • platform/chromium/LocalizedStringsChromium.cpp: Copied from Source/WebKit/chromium/src/LocalizedStrings.cpp.

(WebCore::imageTitle):

Source/WebKit/chromium:

  • WebKit.gyp:
  • src/LocalizedStrings.cpp: Removed.
1:14 PM Changeset in webkit [141473] by enrica@apple.com
  • 49 edits
    11 adds in trunk

WebKit2: provide new bundle APIs to allow bundle clients to be notified of pasteboard access.
https://bugs.webkit.org/show_bug.cgi?id=108396.
<rdar://problem/12920461>

Source/WebCore:

Reviewed by Alexey Proskuryakov.

Adds support in WebCore to new EditorClient methods to support the modified
client bundle API in WebKit2.

  • WebCore.exp.in:
  • editing/Editor.cpp:

(WebCore::Editor::cut): Added call to willWriteSelectionToPasteboard.
(WebCore::Editor::copy): Ditto.
(WebCore::Editor::willWriteSelectionToPasteboard): Added.

  • editing/Editor.h:
  • loader/EmptyClients.h: Added empty client implementation

for the new methods.
(WebCore::EmptyEditorClient::willWriteSelectionToPasteboard):
(WebCore::EmptyEditorClient::getClientPasteboardDataForRange):

  • page/EditorClient.h:
  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::writeSelectionForTypes): Added call to getClientPasteboardDataForRange.

Source/WebKit/blackberry:

Reviewed by Alexey Proskuryakov.

Adds stub implementation for WebKit of the new EditorClient methods.

  • WebCoreSupport/EditorClientBlackBerry.cpp:

(WebCore::EditorClientBlackBerry::willWriteSelectionToPasteboard):
(WebCore::EditorClientBlackBerry::getClientPasteboardDataForRange):

  • WebCoreSupport/EditorClientBlackBerry.h:

Source/WebKit/chromium:

Reviewed by Alexey Proskuryakov.

Adds stub implementation for WebKit of the new EditorClient methods.

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::willWriteSelectionToPasteboard):
(WebKit::EditorClientImpl::getClientPasteboardDataForRange):

  • src/EditorClientImpl.h:

Source/WebKit/efl:

Reviewed by Alexey Proskuryakov.

Adds stub implementation for WebKit of the new EditorClient methods.

  • WebCoreSupport/EditorClientEfl.cpp:

(WebCore::EditorClientEfl::willWriteSelectionToPasteboard):
(WebCore::EditorClientEfl::getClientPasteboardDataForRange):

  • WebCoreSupport/EditorClientEfl.h:

Source/WebKit/gtk:

Reviewed by Alexey Proskuryakov.

Adds stub implementation for WebKit of the new EditorClient methods.

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::willWriteSelectionToPasteboard):
(WebKit::EditorClient::getClientPasteboardDataForRange):

  • WebCoreSupport/EditorClientGtk.h:

Source/WebKit/mac:

Reviewed by Alexey Proskuryakov.

Adds stub implementation for WebKit of the new EditorClient methods.

  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::willWriteSelectionToPasteboard):
(WebEditorClient::getClientPasteboardDataForRange):

Source/WebKit/qt:

Reviewed by Alexey Proskuryakov.

Adds stub implementation for WebKit of the new EditorClient methods.

  • WebCoreSupport/EditorClientQt.cpp:

(WebCore::EditorClientQt::willWriteSelectionToPasteboard):
(WebCore::EditorClientQt::getClientPasteboardDataForRange):

  • WebCoreSupport/EditorClientQt.h:

Source/WebKit/win:

Reviewed by Alexey Proskuryakov.

Adds stub implementation for WebKit of the new EditorClient methods.

  • WebCoreSupport/WebEditorClient.cpp:

(WebEditorClient::willWriteSelectionToPasteboard):
(WebEditorClient::getClientPasteboardDataForRange):

  • WebCoreSupport/WebEditorClient.h:

Source/WebKit/wince:

Reviewed by Alexey Proskuryakov.

Adds stub implementation for WebKit of the new EditorClient methods.

  • WebCoreSupport/EditorClientWinCE.cpp:

(WebKit::EditorClientWinCE::willWriteSelectionToPasteboard):
(WebKit::EditorClientWinCE::getClientPasteboardDataForRange):

  • WebCoreSupport/EditorClientWinCE.h:

Source/WebKit/wx:

Reviewed by Alexey Proskuryakov.

Adds stub implementation for WebKit of the new EditorClient methods.

  • WebKitSupport/EditorClientWx.cpp:

(WebCore::EditorClientWx::willWriteSelectionToPasteboard):
(WebCore::EditorClientWx::getClientPasteboardDataForRange):

  • WebKitSupport/EditorClientWx.h:

Source/WebKit2:

Reviewed by Alexey Proskuryakov.

This patch adds new bundle client API to receive notifications
relative the pasteboard activity. There are 2 new API added to
InjectedBundleEditorClient, to receive notification before and
after the pasteboard content is added and one API to provide
additional content to add to the pasteboard.
In order to create content to add to the pasteboard, WKWebArchiveRef
and WKWebArchiveResourcesRef have been added to the set of API level
object.
This work is a joint effort with Sam Weinig who contributed the
support for WKWebArchiveRef, WKWebArchiveResourcesRef and related
files. Sam is the author of the first chunk of changes listed below.

  • Shared/API/c/WKBase.h:
  • Shared/API/c/WKSharedAPICast.h:
  • Shared/API/c/mac/WKWebArchive.cpp: Added.

(WKWebArchiveGetTypeID):
(WKWebArchiveCreate):
(WKWebArchiveCreateWithData):
(WKWebArchiveCreateFromRange):
(WKWebArchiveCopyMainResource):
(WKWebArchiveCopySubresources):
(WKWebArchiveCopySubframeArchives):
(WKWebArchiveCopyData):

  • Shared/API/c/mac/WKWebArchive.h: Added.
  • Shared/API/c/mac/WKWebArchiveResource.cpp: Added.

(WKWebArchiveResourceGetTypeID):
(WKWebArchiveResourceCreate):
(WKWebArchiveResourceCopyData):
(WKWebArchiveResourceCopyURL):
(WKWebArchiveResourceCopyMIMEType):
(WKWebArchiveResourceCopyTextEncoding):

  • Shared/API/c/mac/WKWebArchiveResource.h: Added.
  • Shared/APIObject.h:
  • Shared/WebArchive.cpp: Added.

(WebKit::WebArchive::create):
(WebKit::WebArchive::WebArchive):
(WebKit::WebArchive::~WebArchive):
(WebKit::WebArchive::mainResource):
(WebKit::WebArchive::subresources):
(WebKit::WebArchive::subframeArchives):
(WebKit::releaseCFData):
(WebKit::WebArchive::data):
(WebKit::WebArchive::coreLegacyWebArchive):

  • Shared/WebArchive.h: Added.

(WebKit::WebArchive::type):

  • Shared/WebArchiveResource.cpp: Added.

(WebKit::WebArchiveResource::create):
(WebKit::WebArchiveResource::WebArchiveResource):
(WebKit::WebArchiveResource::~WebArchiveResource):
(WebKit::releaseCFData):
(WebKit::WebArchiveResource::data):
(WebKit::WebArchiveResource::URL):
(WebKit::WebArchiveResource::MIMEType):
(WebKit::WebArchiveResource::textEncoding):
(WebKit::WebArchiveResource::coreArchiveResource):

  • Shared/WebArchiveResource.h: Added.

(WebKit::WebArchiveResource::type):

  • WebKit2.xcodeproj/project.pbxproj:


  • Shared/APIClientTraits.cpp: Added versioning to InjectedBundlePageEditorClient.
  • Shared/APIClientTraits.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:

(WebKit::InjectedBundlePageEditorClient::willWriteToPasteboard): Added.
(WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange): Added.
(WebKit::InjectedBundlePageEditorClient::didWriteToPasteboard): Added.

  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::didWriteSelectionToPasteboard):
(WebKit::WebEditorClient::willWriteSelectionToPasteboard):
(WebKit::WebEditorClient::getClientPasteboardDataForRange):

  • WebProcess/WebCoreSupport/WebEditorClient.h:

Tools:

Reviewed by Alexey Proskuryakov.

Adding new WebKit2 test with relevant bundle, to test the new APIs.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/PasteboardNotifications.mm: Added.

(TestWebKitAPI::didReceiveMessageFromInjectedBundle):
(TestWebKitAPI::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/PasteboardNotifications_Bundle.cpp: Added.

(PasteboardNotificationsTest):
(TestWebKitAPI::willWriteToPasteboard):
(TestWebKitAPI::getPasteboardDataForRange):
(TestWebKitAPI::didWriteToPasteboard):
(TestWebKitAPI::PasteboardNotificationsTest::PasteboardNotificationsTest):
(TestWebKitAPI::PasteboardNotificationsTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/execCopy.html: Added.
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: Updated to reflect

changes in InjectedBundleEditorClient.
(WTR::InjectedBundlePage::InjectedBundlePage):

1:03 PM Changeset in webkit [141472] by andersca@apple.com
  • 25 edits
    2 deletes in trunk/Source/WebKit2

Remove MessageID.h
https://bugs.webkit.org/show_bug.cgi?id=108516

Reviewed by Sam Weinig.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::processIncomingMessage):
(CoreIPC::Connection::sendOutgoingMessages):
(CoreIPC::Connection::dispatchSyncMessage):
(CoreIPC::Connection::dispatchMessage):

  • Platform/CoreIPC/Connection.h:

(CoreIPC):
(Connection):

  • Platform/CoreIPC/MessageID.h: Removed.
  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::Connection::sendOutgoingMessage):
(CoreIPC::Connection::receiveSourceEventHandler):

  • Shared/CoreIPCSupport/WebConnectionMessageKinds.h: Removed.
  • Shared/CoreIPCSupport/WebContextMessageKinds.h:
  • UIProcess/DrawingAreaProxy.h:

(CoreIPC):

  • UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
  • UIProcess/WebApplicationCacheManagerProxy.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):
(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):

  • UIProcess/WebCookieManagerProxy.h:
  • UIProcess/WebFrameProxy.h:

(CoreIPC):

  • UIProcess/WebFullScreenManagerProxy.h:

(CoreIPC):

  • UIProcess/WebIconDatabase.h:

(CoreIPC):

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

(CoreIPC):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/FullScreen/WebFullScreenManager.cpp:
  • WebProcess/FullScreen/WebFullScreenManager.h:

(CoreIPC):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::postMessage):
(WebKit::InjectedBundle::postSynchronousMessage):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(CoreIPC):

  • WebProcess/WebPage/DrawingArea.h:

(CoreIPC):

  • WebProcess/WebPage/LayerTreeHost.h:

(CoreIPC):

  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:

(CoreIPC):

  • WebProcess/WebPage/WebPageGroupProxy.h:

(CoreIPC):

12:58 PM Changeset in webkit [141471] by commit-queue@webkit.org
  • 5 edits in trunk

Tools: [Chromium] Add two-word misspelling to mock spellchecker
https://bugs.webkit.org/show_bug.cgi?id=108498

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-01-31
Reviewed by Tony Chang.

Some layout tests verify spellcheck behavior when multiple words are
marked as a single misspelling. This change adds a two-word misspelling
'upper case' to the mock spellchecker used by layout tests.

  • DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.cpp:

(MockSpellCheck::spellCheckWord): Modified to handle spaces in misspellings.
(MockSpellCheck::initializeIfNeeded): Modified to use a vector instead of a hash table.

  • DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.h:

(MockSpellCheck): Changed misspellings container from hash table to vector.

LayoutTests: [Chromium] Expect spellcheck to work for exactly-selected multi-word misspellings
https://bugs.webkit.org/show_bug.cgi?id=108498

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-01-31
Reviewed by Tony Chang.

  • platform/chromium/TestExpectations: Update spellcheck tests expectations.
12:55 PM Changeset in webkit [141470] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Make selection handling work in applyPageScaleInCompositor mode
https://bugs.webkit.org/show_bug.cgi?id=107831

Patch by Chris Hopman <cjhopman@chromium.org> on 2013-01-31
Reviewed by Ryosuke Niwa.

These functions expect a window point. When in
applyPageScaleFactorInCompositor mode, the points need to be unscaled
by the page scale factor.

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::selectRange):
(WebKit::WebFrameImpl::moveCaretSelectionTowardsWindowPoint):

12:55 PM Changeset in webkit [141469] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

REGRESSION(r141136): Apple's internal PLT test suite doesn't finish
https://bugs.webkit.org/show_bug.cgi?id=108380

Mark some tests whose results depend on main resource caching being enabled as failing until
main resource caching can be re-enabled on mac.

  • platform/mac/TestExpectations:
12:52 PM Changeset in webkit [141468] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Use OS() and PLATFORM() macros in WebCorePrefix.h for readability
<http://webkit.org/b/108374>

Reviewed by Laszlo Gombos.

  • WebCorePrefix.h: Replaced all possible checks with OS() or

PLATFORM() macros other than APPLE.

12:51 PM Changeset in webkit [141467] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] Prospective build fix.

Reviewed by Jocelyn Turcotte.

Don't create .prl files for intermediate libs as their contents get
injected within -Wl,-whole-archive -lFoo -wl,-no-whole-archive.

  • qmake/mkspecs/features/default_post.prf:
12:48 PM Changeset in webkit [141466] by mkwst@chromium.org
  • 7 edits in trunk/Source

Cleanup: Use ScriptExecutionContext::topOrigin when relevant.
https://bugs.webkit.org/show_bug.cgi?id=108476

Source/WebCore:

Reviewed by Jochen Eisinger.

Rather than diving through 'frame()->top()' or 'topDocument()' to get
the SecurityOrigin of the top-level document in a frame, we can now
directly grab the 'topOrigin()' off of a ScriptExecutionContext. This
patch adjusts a few callsites to use the new hotness rather than the
old brokenness.

This is a pure refactoring: No web-visible changes should result.

  • Modules/webdatabase/DOMWindowWebDatabase.cpp:

(WebCore::DOMWindowWebDatabase::openDatabase):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::sessionStorage):
(WebCore::DOMWindow::localStorage):

  • workers/SharedWorker.cpp:

(WebCore::SharedWorker::create):

  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::startWorkerContext):

Source/WebKit2:

Reviewed by Anders Carlsson.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::storageBlockingStateChanged):
(WebKit::PluginView::isPrivateBrowsingEnabled):

12:47 PM Changeset in webkit [141465] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Get rid of IncomingMessage
https://bugs.webkit.org/show_bug.cgi?id=108514

Reviewed by Sam Weinig.

  • Platform/CoreIPC/Connection.cpp:

(Connection::SyncMessageState):
(ConnectionAndIncomingMessage):
(CoreIPC::Connection::SyncMessageState::~SyncMessageState):
(CoreIPC::Connection::SyncMessageState::processIncomingMessage):
(CoreIPC::Connection::SyncMessageState::dispatchMessages):
(CoreIPC::Connection::waitForMessage):
(CoreIPC::Connection::processIncomingMessage):
(CoreIPC::Connection::enqueueIncomingMessage):
(CoreIPC::Connection::dispatchMessage):
(CoreIPC::Connection::dispatchOneMessage):

  • Platform/CoreIPC/Connection.h:

(Connection):

12:44 PM Changeset in webkit [141464] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Curl] There is no way for a WebKit client to set the Curl cookie jar path
https://bugs.webkit.org/show_bug.cgi?id=107692

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-01-31
Reviewed by Brent Fulgham.

Set default cookie jar path.
Get the cookie jar path for Curl from the environment variable CURL_COOKIE_JAR_PATH.

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::cookieJarPath): Added helper function to set cookie jar path.
(WebCore::ResourceHandleManager::ResourceHandleManager): Call helper function.

12:41 PM Changeset in webkit [141463] by Patrick Gansterer
  • 2 edits in trunk/Source/WebKit2

Remove PLATFORM(WIN_CAIRO) from NetscapePluginX11.cpp
https://bugs.webkit.org/show_bug.cgi?id=108439

Reviewed by Brent Fulgham.

PLATFORM(WIN_CAIRO) is Windows only, where no X11 exists.

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
12:38 PM Changeset in webkit [141462] by mjs@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION (r138962): Fails to show "confirm form resubmission", hangs browser
https://bugs.webkit.org/show_bug.cgi?id=108214

Reviewed by Adam Barth.

Attempt a workaround suggested by Nate Chapin by putting some code
in #ifdef !PLATFORM(CHROMIUM).

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::notifyFinished):

12:24 PM Changeset in webkit [141461] by tsepez@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[v8] Enable binding integrity on mac
https://bugs.webkit.org/show_bug.cgi?id=108500

Reviewed by Adam Barth.

Patch is correct if existing tests pass without new crashes.

  • features.gypi:

Set ENABLE_BINDING_INTEGRITY=1 when OS=="mac"

12:02 PM Changeset in webkit [141460] by jchaffraix@webkit.org
  • 1 edit in branches/chromium/1364/Source/WebCore/rendering/RenderBlockLineLayout.cpp

Merge 141009

Crash inside RenderBlock::layoutRunsAndFloatsInRange in the widow code
https://bugs.webkit.org/show_bug.cgi?id=108084

Reviewed by Dean Jackson.

This is a blind fix based on the code and Chromium's stack-traces.

Unfortunately no new test as I couldn't get a local reproduction.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
Added a missing NULL-check: the previous 'while' finish if |lineBox|
is NULL and we don't want to crash in this case.

TBR=jchaffraix@webkit.org
Review URL: https://codereview.chromium.org/12084093

12:00 PM Changeset in webkit [141459] by ojan@chromium.org
  • 7 edits
    6 adds in trunk

REGRESSION(r128517): Percentage heights in quirks mode collapse when printing
https://bugs.webkit.org/show_bug.cgi?id=108382

Reviewed by David Hyatt.

Source/WebCore:

r128517 clean up our containing block finding logic, but broke percentage
heights in quirks mode during printing since the RenderView would have 0 height.
Turns out we already had a long-standing bug where we'd incorrectly
treat collapse percentage heights on the body when printing as well.

Fix both bugs by changing the way we grab the logical height on the RenderView.
RenderView::computeLogicalHeight returns 0 when printing. For the purposes of
stretching and percentage heights, we instead need to return the pageLogicalHeight.

Tests: printing/quirks-percentage-height-body.html

printing/quirks-percentage-height.html
printing/standards-percentage-heights.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeLogicalHeight):
This FIXME is outdated and already fixed. Also, call viewLogicalHeightForPercentages
which does the same logic except also correctly handles column RenderViews.
(WebCore::RenderBox::viewLogicalHeightForPercentages):
(WebCore::RenderBox::computePercentageLogicalHeight):

  • rendering/RenderBox.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::viewLogicalHeightForPercentages):
(WebCore):
(WebCore::RenderBox::computePercentageLogicalHeight):

  • rendering/RenderBox.h:

(RenderBox):

LayoutTests:

  • platform/chromium/fast/multicol/shrink-to-column-height-for-pagination-expected.txt:

We're just clipping more content that you can't scroll to anyways. This looks
like an improvement to me.

  • printing/css2.1/page-break-inside-000-expected.txt:

We pass this test now!

  • printing/quirks-percentage-height-body-expected.html: Added.
  • printing/quirks-percentage-height-body.html: Added.
  • printing/quirks-percentage-height-expected.html: Added.
  • printing/quirks-percentage-height.html: Added.
  • printing/standards-percentage-heights-expected.html: Added.
  • printing/standards-percentage-heights.html: Added.
11:56 AM Changeset in webkit [141458] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

inspector/editor/text-editor-ctrl-movements.html was renamed to
inspector/editor/text-editor-word-jumps.html in r141399. Update the TestExpectations file.

  • platform/mac/TestExpectations:
11:56 AM Changeset in webkit [141457] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

ASSERTION FAILED: m_clipRectsCache->m_respectingOverflowClip[clipRectsType] == (clipRectsContext.respectOverflowClip == RespectOverflowClip) in RenderLayer.
https://bugs.webkit.org/show_bug.cgi?id=108257

  • platform/mac/TestExpectations:

Mark the tests as "crashing" in debug.

11:46 AM Changeset in webkit [141456] by krit@webkit.org
  • 14 edits
    3 adds in trunk

[canvas] Implement currentPath to get and set the current path of the context
https://bugs.webkit.org/show_bug.cgi?id=108246

Patch by Dirk Schulze <krit@webkit.org> on 2013-01-31
Reviewed by Dean Jackson.

Source/WebCore:

Add currentPath attribute to CanvasRenderingContext2d interface. This allows
setting the current context path by an existing Path object as well as getting
the current context path as new Path object. The returned and the set Paths
are not live.

This feature is behind the CANVAS_PATH compiler flag which is disabled by
default for now.

Test: fast/canvas/canvas-currentPath.html

  • html/canvas/CanvasPathMethods.cpp: Rename transformIsInvertible to

isTransformInvertible for harmonizing naming schema.

(WebCore::CanvasPathMethods::moveTo): Ditto.
(WebCore::CanvasPathMethods::lineTo): Ditto.
(WebCore::CanvasPathMethods::quadraticCurveTo): Ditto.
(WebCore::CanvasPathMethods::bezierCurveTo): Ditto.
(WebCore::CanvasPathMethods::arcTo): Ditto.
(WebCore::CanvasPathMethods::arc): Ditto.
(WebCore::CanvasPathMethods::rect): Ditto.

  • html/canvas/CanvasPathMethods.h: Ditto.

(CanvasPathMethods):
(WebCore::CanvasPathMethods::isTransformInvertible):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore):
(WebCore::CanvasRenderingContext2D::currentPath): Getter for currentPath.
(WebCore::CanvasRenderingContext2D::setCurrentPath): Setter for currentPath.

  • html/canvas/CanvasRenderingContext2D.h:

(WebCore):
(CanvasRenderingContext2D):
(WebCore::CanvasRenderingContext2D::isTransformInvertible):

  • html/canvas/CanvasRenderingContext2D.idl: Add currentPath attribute.
  • html/canvas/DOMPath.h: Add new constructor and getter for Path object.

(WebCore::DOMPath::create): New static function for new ctor.
(DOMPath):
(WebCore::DOMPath::path): Getter for Path object.
(WebCore::DOMPath::DOMPath):

LayoutTests:

Added tests for canvas.currentPath in various combinations of the context state.

  • fast/canvas/canvas-currentPath-expected.txt: Added.
  • fast/canvas/canvas-currentPath.html: Added.
  • fast/canvas/script-tests/canvas-currentPath.js: Added.

(testPointCollection):

  • platform/chromium/TestExpectations: Skip test until enabling CANVAS_PATH.
  • platform/efl/TestExpectations: Ditto.
  • platform/gtk/TestExpectations: Ditto.
  • platform/mac/TestExpectations: Ditto.
  • platform/qt/TestExpectations: Ditto.
11:42 AM Changeset in webkit [141455] by Simon Hausmann
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix: Remove Web Intents files from
the Qt build system.

  • Target.pri:
11:40 AM Changeset in webkit [141454] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

WebFrameTest.DisambiguationPopup is failing
https://bugs.webkit.org/show_bug.cgi?id=108160

Patch by Dan Alcantara <dfalcantara@chromium.org> on 2013-01-31
Reviewed by Adam Barth.

Fix the unit test so that it is using the right HTML file.

  • tests/WebFrameTest.cpp:
11:37 AM Changeset in webkit [141453] by tony@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] webkit_unit_tests should depend on base/allocator for ASAN
https://bugs.webkit.org/show_bug.cgi?id=108497

Reviewed by James Robinson.

  • WebKitUnitTests.gyp:
11:35 AM Changeset in webkit [141452] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix.
Removing build targets for Web Intents files that were removed in r141448.

  • GNUmakefile.list.am:
11:34 AM Changeset in webkit [141451] by commit-queue@webkit.org
  • 7 edits
    2 copies in trunk/Tools

EWS graphs have unusual data for patch waiting times
https://bugs.webkit.org/show_bug.cgi?id=108427

Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-31
Reviewed by Eric Seidel.

The max_patches_waiting QueueLog property may have missed recording patches waiting in idle times when no events are fired to update it. I added a cron job to take care of this issue.
The patch wait duration in PatchLogs was being incorrectly updated after a patch expired and was picked up again from the queue. That period should really count towards the processing time instead.
Added a WarningLog to record if any erroneous situations occur due to invalid contents in the datastore. These basically highlight if any "impossible" execution paths get executed.

  • QueueStatusServer/app.yaml:
  • QueueStatusServer/cron.yaml:
  • QueueStatusServer/handlers/syncqueuelogs.py: Copied from Tools/QueueStatusServer/model/patchlog.py.

(SyncQueueLogs):
(SyncQueueLogs.get):

  • QueueStatusServer/loggers/recordpatchevent.py:

(RecordPatchEvent.added):
(RecordPatchEvent.retrying):
(RecordPatchEvent.started):
(RecordPatchEvent.stopped):
(RecordPatchEvent.updated):

  • QueueStatusServer/main.py:
  • QueueStatusServer/model/patchlog.py:

(PatchLog.lookup):
(PatchLog):
(PatchLog.lookup_if_exists):
(PatchLog.calculate_process_duration):
(PatchLog._generate_key):

  • QueueStatusServer/model/queuelog.py:

(QueueLog.update_max_patches_waiting):
(QueueLog._get_or_create_txn):
(QueueLog):
(QueueLog._get_patches_waiting):

  • QueueStatusServer/model/warninglog.py: Copied from Tools/QueueStatusServer/model/patchlog.py.

(WarningLog):
(WarningLog.record):

11:25 AM Changeset in webkit [141450] by aelias@chromium.org
  • 5 edits in trunk/Source

Call FrameView::contentsResized() when setting fixed layout size
https://bugs.webkit.org/show_bug.cgi?id=107922

Reviewed by James Robinson.

In fixed layout mode, we should be calling contentsResized() when the
fixed layout size is changed, but not laying out when the visible
content rect changes.

Previously landed as r140869 but was reverted due to a bug in bundled
Chromium-specific code. This patch includes just the minimum needed in
WebCore.

New WebFrameTest: FrameViewNeedsLayoutOnFixedLayoutResize. Some
flaky and obsolete tests for the old page scale mode are also deleted.

Source/WebCore:

  • page/FrameView.cpp:

(WebCore::FrameView::visibleContentsResized):

  • platform/ScrollView.cpp:

(WebCore::ScrollView::setFixedLayoutSize):
(WebCore::ScrollView::setUseFixedLayout):

Source/WebKit/chromium:

  • tests/WebFrameTest.cpp:
11:16 AM Changeset in webkit [141449] by tony@chromium.org
  • 3 edits
    1 delete in trunk/LayoutTests

Unreviewed, update expectation after the order of elements was codified.
https://bugs.webkit.org/show_bug.cgi?id=98686

Also delete the Qt result since this test is skipped on Qt.

  • editing/pasteboard/data-transfer-items-expected.txt:
  • platform/qt/editing/pasteboard/data-transfer-items-expected.txt: Removed.
11:11 AM Changeset in webkit [141448] by andersca@apple.com
  • 35 edits
    20 deletes in trunk

Remove Web Intents code from WebKit2
https://bugs.webkit.org/show_bug.cgi?id=108506

Reviewed by Simon Fraser.

Source/WebKit2:

Since nobody builds with Web Intents enabled anymore, and since the code is going to
be removed from WebCore, remove it from WebKit2.

  • Shared/API/c/WKBase.h:
  • Shared/APIClientTraits.cpp:

(WebKit):

  • Shared/APIObject.h:
  • Shared/IntentData.cpp: Removed.
  • Shared/IntentData.h: Removed.
  • Shared/IntentServiceInfo.cpp: Removed.
  • Shared/IntentServiceInfo.h: Removed.
  • Shared/WebIntentServiceInfo.cpp: Removed.
  • Shared/WebIntentServiceInfo.h: Removed.
  • UIProcess/API/C/WKAPICast.h:

(WebKit):

  • UIProcess/API/C/WKIntentData.cpp: Removed.
  • UIProcess/API/C/WKIntentData.h: Removed.
  • UIProcess/API/C/WKIntentServiceInfo.cpp: Removed.
  • UIProcess/API/C/WKIntentServiceInfo.h: Removed.
  • UIProcess/API/C/WKPage.cpp:
  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebIntentData.cpp: Removed.
  • UIProcess/WebIntentData.h: Removed.
  • UIProcess/WebLoaderClient.cpp:
  • UIProcess/WebLoaderClient.h:

(WebKit):
(WebLoaderClient):

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

(WebKit):
(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebProcessProxy.cpp:
  • UIProcess/WebProcessProxy.h:

(WebProcessProxy):

  • WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:

(WebKit):

  • WebProcess/InjectedBundle/API/c/WKBundleIntent.cpp: Removed.
  • WebProcess/InjectedBundle/API/c/WKBundleIntent.h: Removed.
  • WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.cpp: Removed.
  • WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.h: Removed.
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/InjectedBundleIntent.cpp: Removed.
  • WebProcess/InjectedBundle/InjectedBundleIntent.h: Removed.
  • WebProcess/InjectedBundle/InjectedBundleIntentRequest.cpp: Removed.
  • WebProcess/InjectedBundle/InjectedBundleIntentRequest.h: Removed.
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:

(WebKit):
(InjectedBundlePageLoaderClient):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

(WebFrameLoaderClient):

  • WebProcess/WebPage/WebFrame.cpp:
  • WebProcess/WebPage/WebFrame.h:

(WebCore):
(WebKit):
(WebFrame):

  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:

(WebCore):
(WebKit):
(WebPage):

  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebProcess.cpp:
  • WebProcess/WebProcess.h:

(WebCore):
(WebProcess):

  • WebProcess/WebProcess.messages.in:

Tools:

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::InjectedBundlePage):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:

(InjectedBundlePage):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:
  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

11:06 AM Changeset in webkit [141447] by beidson@apple.com
  • 4 edits in trunk/Source

Lack of a log level string should not obliterate compiled in logging channel state.
https://bugs.webkit.org/show_bug.cgi?id=108502

Reviewed by Alexey Proskuryakov and Sam Weinig.

Source/WebKit/mac:

  • Misc/WebKitLogging.m: If there's no log level string, leave the channel state alone.

Source/WebKit2:

  • Platform/mac/Logging.mac.mm:

(WebKit::initializeLogChannel): If there's no log level string, leave the channel state alone.

11:06 AM Changeset in webkit [141446] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] CookieParser should ignore invalid/unsupported attributes instead of ignoring the cookie
https://bugs.webkit.org/show_bug.cgi?id=108494

PR 287832
Patch by Otto Derek Cheung <otcheung@rim.com> on 2013-01-31
Reviewed by Rob Buis.
Internally Reviewed by Liam Quinn.

A short-term fix for CookieParser to not blow up when a Set-Cookie header has an invalid
or unsupported cookie attribute.

We will ignore the attribute only, not the entire cookie.

Also, making sure the parser won't replace values of valid attributes when evaluating an unsupported
cookie with the same length and same first character as a supported attribute.

Tested using opera cookie and browser.swlab.rim.net cookies test suite. Tested using regular sites that
has a login mechanism.

  • platform/blackberry/CookieParser.cpp:

(WebCore::CookieParser::parseOneCookie):

11:05 AM Changeset in webkit [141445] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

WebProcess sandbox profile overhaul.

Reviewed by Sam Weinig.

Moves some rules together by susbystem for easier maintenance.

Addresses <rdar://problem/9276393>, <rdar://problem/10844321>, <rdar://problem/12408537>,
<rdar://problem/12558524>.

  • WebProcess/com.apple.WebProcess.sb.in:
11:01 AM Changeset in webkit [141444] by tommyw@google.com
  • 27 edits
    1 copy
    3 adds
    2 deletes in trunk

[chromium] MediaStream API: Rename WebMediaStreamDescriptor and WebMediaStreamComponent to WebMediaStream and WebMediaStreamTrack
https://bugs.webkit.org/show_bug.cgi?id=108458

Source/Platform:

Only renames, no other code changes.

Reviewed by Adam Barth.

  • Platform.gypi:
  • chromium/public/WebMediaStream.h: Copied from Source/Platform/chromium/public/WebMediaStreamDescriptor.h.

(WebCore):
(WebKit):
(WebMediaStream):
(ExtraData):
(WebKit::WebMediaStream::ExtraData::~ExtraData):
(WebKit::WebMediaStream::WebMediaStream):
(WebKit::WebMediaStream::~WebMediaStream):
(WebKit::WebMediaStream::operator=):
(WebKit::WebMediaStream::isNull):

  • chromium/public/WebMediaStreamCenter.h:

(WebKit):
(WebMediaStreamCenter):
(WebKit::WebMediaStreamCenter::didAddMediaStreamTrack):
(WebKit::WebMediaStreamCenter::didRemoveMediaStreamTrack):

  • chromium/public/WebMediaStreamCenterClient.h:

(WebKit):
(WebMediaStreamCenterClient):

  • chromium/public/WebMediaStreamComponent.h:
  • chromium/public/WebMediaStreamDescriptor.h:
  • chromium/public/WebMediaStreamTrack.h: Added.

(WebCore):
(WebKit):
(WebMediaStreamTrack):
(WebKit::WebMediaStreamTrack::WebMediaStreamTrack):
(WebKit::WebMediaStreamTrack::~WebMediaStreamTrack):
(WebKit::WebMediaStreamTrack::operator=):
(WebKit::WebMediaStreamTrack::isNull):

  • chromium/public/WebRTCPeerConnectionHandler.h:

(WebKit):
(WebRTCPeerConnectionHandler):

  • chromium/public/WebRTCPeerConnectionHandlerClient.h:

(WebKit):
(WebRTCPeerConnectionHandlerClient):

  • chromium/public/WebRTCStatsRequest.h:

(WebKit):
(WebRTCStatsRequest):

Source/WebCore:

Reviewed by Adam Barth.

Only renames, no other code changes.

  • WebCore.gypi:
  • platform/chromium/support/WebMediaStream.cpp: Added.

(WebKit::WebMediaStream::WebMediaStream):
(WebKit):
(WebKit::WebMediaStream::reset):
(WebKit::WebMediaStream::label):
(WebKit::WebMediaStream::id):
(WebKit::WebMediaStream::extraData):
(WebKit::WebMediaStream::setExtraData):
(WebKit::WebMediaStream::audioSources):
(WebKit::WebMediaStream::videoSources):
(WebKit::WebMediaStream::operator=):
(WebKit::WebMediaStream::operator PassRefPtr<WebCore::MediaStreamDescriptor>):
(WebKit::WebMediaStream::operator WebCore::MediaStreamDescriptor*):
(WebKit::WebMediaStream::initialize):
(WebKit::WebMediaStream::assign):

  • platform/chromium/support/WebMediaStreamComponent.cpp: Removed.
  • platform/chromium/support/WebMediaStreamDescriptor.cpp: Removed.
  • platform/chromium/support/WebMediaStreamTrack.cpp: Added.

(WebKit):
(WebKit::WebMediaStreamTrack::WebMediaStreamTrack):
(WebKit::WebMediaStreamTrack::operator=):
(WebKit::WebMediaStreamTrack::initialize):
(WebKit::WebMediaStreamTrack::reset):
(WebKit::WebMediaStreamTrack::operator PassRefPtr<MediaStreamComponent>):
(WebKit::WebMediaStreamTrack::operator MediaStreamComponent*):
(WebKit::WebMediaStreamTrack::isEnabled):
(WebKit::WebMediaStreamTrack::id):
(WebKit::WebMediaStreamTrack::stream):
(WebKit::WebMediaStreamTrack::source):
(WebKit::WebMediaStreamTrack::assign):

  • platform/chromium/support/WebRTCStatsRequest.cpp:

(WebKit::WebRTCStatsRequest::stream):
(WebKit::WebRTCStatsRequest::component):

  • platform/mediastream/chromium/MediaStreamCenterChromium.cpp:

(WebCore::MediaStreamCenterChromium::didCreateMediaStream):
(WebCore::MediaStreamCenterChromium::stopLocalMediaStream):
(WebCore::MediaStreamCenterChromium::addMediaStreamTrack):
(WebCore::MediaStreamCenterChromium::removeMediaStreamTrack):

  • platform/mediastream/chromium/MediaStreamCenterChromium.h:

(WebKit):
(MediaStreamCenterChromium):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:

(WebCore::RTCPeerConnectionHandlerChromium::didAddRemoteStream):
(WebCore::RTCPeerConnectionHandlerChromium::didRemoveRemoteStream):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:

(WebKit):
(RTCPeerConnectionHandlerChromium):

Source/WebKit/chromium:

Reviewed by Adam Barth.

Only renames, no other code changes.

  • public/WebMediaStreamRegistry.h:

(WebKit):
(WebMediaStreamRegistry):

  • public/WebUserMediaRequest.h:

(WebKit):
(WebUserMediaRequest):

  • src/WebMediaStreamRegistry.cpp:

(WebKit::WebMediaStreamRegistry::lookupMediaStreamDescriptor):

  • src/WebUserMediaRequest.cpp:

(WebKit::WebUserMediaRequest::requestSucceeded):

Tools:

Reviewed by Adam Barth.

Only renames, no other code changes.

  • DumpRenderTree/chromium/MockWebMediaStreamCenter.cpp:

(MockWebMediaStreamCenter::didEnableMediaStreamTrack):
(MockWebMediaStreamCenter::didDisableMediaStreamTrack):
(MockWebMediaStreamCenter::didAddMediaStreamTrack):
(MockWebMediaStreamCenter::didRemoveMediaStreamTrack):
(MockWebMediaStreamCenter::didStopLocalMediaStream):
(MockWebMediaStreamCenter::didCreateMediaStream):

  • DumpRenderTree/chromium/MockWebMediaStreamCenter.h:

(MockWebMediaStreamCenter):

  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:

(MockWebRTCPeerConnectionHandler::addStream):
(MockWebRTCPeerConnectionHandler::removeStream):
(MockWebRTCPeerConnectionHandler::getStats):

  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:

(MockWebRTCPeerConnectionHandler):

  • DumpRenderTree/chromium/WebUserMediaClientMock.cpp:

(UserMediaRequestTask::UserMediaRequestTask):
(WebUserMediaClientMock::requestUserMedia):

10:54 AM Changeset in webkit [141443] by mhahnenberg@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Objective-C API: Fix insertion of values greater than the max index allowed by the spec
https://bugs.webkit.org/show_bug.cgi?id=108264

Reviewed by Oliver Hunt.

Fixed a bug, added a test to the API tests, cleaned up some code.

  • API/JSValue.h: Changed some of the documentation on setValue:atIndex: to indicate that

setting values at indices greater than UINT_MAX - 1 wont' affect the length of JS arrays.

  • API/JSValue.mm:

(-[JSValue valueAtIndex:]): We weren't returning when we should have been.
(-[JSValue setValue:atIndex:]): Added a comment about why we do the early check for being larger than UINT_MAX.
(objectToValueWithoutCopy): Removed two redundant cases that were already checked previously.

  • API/tests/testapi.mm:
10:54 AM Changeset in webkit [141442] by Simon Hausmann
  • 3 edits in trunk/Source/WebKit2

Unreviewed trivial build fix: Pre C++11 the use of

in nested templates is ambiguous in the grammar and

requires the insertion of a space here. Since these files are
not Mac specific we don't require C++11 yet and a space
fixes the build.

  • Platform/CoreIPC/Connection.h:

(Connection):

  • Shared/ChildProcessProxy.h:

(ChildProcessProxy):

10:50 AM Changeset in webkit [141441] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

REGRESSION (r141402): incorrectly set injected bundle path when running GTK unit tests
https://bugs.webkit.org/show_bug.cgi?id=108496

Reviewed by Philippe Normand.

  • Scripts/run-gtk-tests:

(TestRunner.init): Add the build type as a member on the TestRunner interface.
(TestRunner._setup_testing_environment): Use the build type member to determine correct path
to the injected bundle.

10:46 AM Changeset in webkit [141440] by fmalita@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening.

  • platform/chromium/TestExpectations:
10:43 AM Changeset in webkit [141439] by commit-queue@webkit.org
  • 29 edits
    14 deletes in trunk

[EFL] Disable Web Intents
https://bugs.webkit.org/show_bug.cgi?id=108457

Patch by Christophe Dumez <dchris@gmail.com> on 2013-01-31
Reviewed by Alexey Proskuryakov.

.:

Turn off WEB_INTENTS flag in EFL CMake project.

  • Source/cmake/OptionsEfl.cmake:

Source/WebKit:

Remove intents files from EFL CMake project.

  • PlatformEfl.cmake:

Source/WebKit/efl:

Remove code related to Web Intents from EFL
WebKit.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
  • WebCoreSupport/DumpRenderTreeSupportEfl.h:
  • WebCoreSupport/FrameLoaderClientEfl.cpp:
  • WebCoreSupport/FrameLoaderClientEfl.h:

(FrameLoaderClientEfl):

  • ewk/EWebKit.h:
  • ewk/ewk_frame.cpp:
  • ewk/ewk_frame.h:
  • ewk/ewk_frame_private.h:
  • ewk/ewk_intent.cpp: Removed.
  • ewk/ewk_intent.h: Removed.
  • ewk/ewk_intent_private.h: Removed.
  • ewk/ewk_intent_request.cpp: Removed.
  • ewk/ewk_intent_request.h: Removed.

Source/WebKit2:

Remove code related to Web Intents from EFL
WebKit2.

  • CMakeLists.txt:
  • PlatformEfl.cmake:
  • UIProcess/API/efl/EWebKit2.h:
  • UIProcess/API/efl/EwkViewCallbacks.h:
  • UIProcess/API/efl/ewk_intent.cpp: Removed.
  • UIProcess/API/efl/ewk_intent.h: Removed.
  • UIProcess/API/efl/ewk_intent_private.h: Removed.
  • UIProcess/API/efl/ewk_intent_service.cpp: Removed.
  • UIProcess/API/efl/ewk_intent_service.h: Removed.
  • UIProcess/API/efl/ewk_intent_service_private.h: Removed.
  • UIProcess/API/efl/ewk_view.cpp:
  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/tests/resources/intent-request.html: Removed.
  • UIProcess/API/efl/tests/resources/intent-service.html: Removed.
  • UIProcess/API/efl/tests/test_ewk2_intents.cpp: Removed.
  • UIProcess/efl/PageLoadClientEfl.cpp:

(WebKit::PageLoadClientEfl::PageLoadClientEfl):

  • UIProcess/efl/PageLoadClientEfl.h:

(PageLoadClientEfl):

Tools:

Remove EFL DRT code related to Web intents.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::createView):
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):
(DumpRenderTreeChrome::onFrameCreated):

  • DumpRenderTree/efl/DumpRenderTreeChrome.h:

(DumpRenderTreeChrome):

  • DumpRenderTree/efl/TestRunnerEfl.cpp:

(TestRunner::sendWebIntentResponse):
(TestRunner::deliverWebIntent):

  • Scripts/webkitperl/FeatureList.pm: Turn off WEB_INTENTS flag

for EFL port.

LayoutTests:

Skip webintents/ test cases for EFL port now that
the feature is disabled.

  • platform/efl/TestExpectations:
10:39 AM Changeset in webkit [141438] by alecflett@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

IndexedDB: Remove WebKit API for old onSuccess/onUpgradeNeeded
https://bugs.webkit.org/show_bug.cgi?id=108399

Reviewed by Dimitri Glazkov.

Cleanup now that chromium proxies the new signatures through.

  • src/IDBCallbacksProxy.cpp:

(WebKit::IDBCallbacksProxy::onSuccess):
(WebKit::IDBCallbacksProxy::onUpgradeNeeded):

  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

  • src/WebIDBCallbacksImpl.cpp:
  • src/WebIDBCallbacksImpl.h:

(WebIDBCallbacksImpl):

10:38 AM Changeset in webkit [141437] by tony@chromium.org
  • 118 edits
    1 delete in trunk/LayoutTests

[chromium] Unreviewed, land baselines with textarea resizer enabled.
https://bugs.webkit.org/show_bug.cgi?id=108383

  • platform/chromium-linux/fast/block/float/overhanging-tall-block-expected.png: Removed.
  • platform/chromium-mac-lion/editing/inserting/4960120-1-expected.png:
  • platform/chromium-mac-lion/editing/pasteboard/pasting-tabs-expected.png:
  • platform/chromium-mac-lion/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
  • platform/chromium-mac-lion/fast/forms/basic-textareas-expected.png:
  • platform/chromium-mac-lion/fast/forms/basic-textareas-quirks-expected.png:
  • platform/chromium-mac-lion/fast/forms/form-element-geometry-expected.png:
  • platform/chromium-mac-lion/fast/forms/linebox-overflow-in-textarea-padding-expected.png:
  • platform/chromium-mac-lion/fast/forms/negativeLineHeight-expected.png:
  • platform/chromium-mac-lion/fast/forms/placeholder-position-expected.png:
  • platform/chromium-mac-lion/fast/forms/textAreaLineHeight-expected.png:
  • platform/chromium-mac-lion/fast/forms/textarea-align-expected.png:
  • platform/chromium-mac-lion/fast/forms/textarea-placeholder-pseudo-style-expected.png:
  • platform/chromium-mac-lion/fast/forms/textarea-placeholder-visibility-1-expected.png:
  • platform/chromium-mac-lion/fast/forms/textarea-placeholder-visibility-2-expected.png:
  • platform/chromium-mac-lion/fast/forms/textarea-scroll-height-expected.png:
  • platform/chromium-mac-lion/fast/forms/textarea-scrollbar-expected.png:
  • platform/chromium-mac-lion/fast/forms/textarea-scrolled-type-expected.png:
  • platform/chromium-mac-lion/fast/forms/textarea-setinnerhtml-expected.png:
  • platform/chromium-mac-lion/fast/forms/textarea-width-expected.png:
  • platform/chromium-mac-lion/fast/overflow/overflow-x-y-expected.png:
  • platform/chromium-mac-lion/fast/parser/entity-comment-in-textarea-expected.png:
  • platform/chromium-mac-lion/fast/parser/open-comment-in-textarea-expected.png:
  • platform/chromium-mac-lion/fast/replaced/width100percent-textarea-expected.png:
  • platform/chromium-mac-lion/fast/table/003-expected.png:
  • platform/chromium-mac-lion/fast/text/international/rtl-white-space-pre-wrap-expected.png:
  • platform/chromium-mac-lion/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png:
  • platform/chromium-mac-lion/tables/mozilla/bugs/bug194024-expected.png:
  • platform/chromium-mac-lion/tables/mozilla/bugs/bug30559-expected.png:
  • platform/chromium-mac-lion/tables/mozilla/bugs/bug30692-expected.png:
  • platform/chromium-mac-snowleopard/editing/inserting/4960120-1-expected.png:
  • platform/chromium-mac-snowleopard/editing/pasteboard/pasting-tabs-expected.png:
  • platform/chromium-mac-snowleopard/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-quirks-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/form-element-geometry-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/linebox-overflow-in-textarea-padding-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/negativeLineHeight-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/placeholder-position-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/textAreaLineHeight-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/textarea-align-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/textarea-placeholder-pseudo-style-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/textarea-placeholder-visibility-1-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/textarea-placeholder-visibility-2-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/textarea-scroll-height-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/textarea-scrollbar-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/textarea-scrolled-type-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/textarea-width-expected.png:
  • platform/chromium-mac-snowleopard/fast/overflow/overflow-x-y-expected.png:
  • platform/chromium-mac-snowleopard/fast/parser/entity-comment-in-textarea-expected.png:
  • platform/chromium-mac-snowleopard/fast/parser/open-comment-in-textarea-expected.png:
  • platform/chromium-mac-snowleopard/fast/replaced/width100percent-textarea-expected.png:
  • platform/chromium-mac-snowleopard/fast/table/003-expected.png:
  • platform/chromium-mac-snowleopard/fast/text/international/rtl-white-space-pre-wrap-expected.png:
  • platform/chromium-mac-snowleopard/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug194024-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug30559-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug30692-expected.png:
  • platform/chromium-mac/editing/inserting/4960120-1-expected.png:
  • platform/chromium-mac/editing/pasteboard/pasting-tabs-expected.png:
  • platform/chromium-mac/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
  • platform/chromium-mac/fast/forms/basic-textareas-expected.png:
  • platform/chromium-mac/fast/forms/basic-textareas-quirks-expected.png:
  • platform/chromium-mac/fast/forms/form-element-geometry-expected.png:
  • platform/chromium-mac/fast/forms/linebox-overflow-in-textarea-padding-expected.png:
  • platform/chromium-mac/fast/forms/negativeLineHeight-expected.png:
  • platform/chromium-mac/fast/forms/placeholder-position-expected.png:
  • platform/chromium-mac/fast/forms/textAreaLineHeight-expected.png:
  • platform/chromium-mac/fast/forms/textarea-align-expected.png:
  • platform/chromium-mac/fast/forms/textarea-placeholder-pseudo-style-expected.png:
  • platform/chromium-mac/fast/forms/textarea-placeholder-visibility-1-expected.png:
  • platform/chromium-mac/fast/forms/textarea-placeholder-visibility-2-expected.png:
  • platform/chromium-mac/fast/forms/textarea-scroll-height-expected.png:
  • platform/chromium-mac/fast/forms/textarea-scrollbar-expected.png:
  • platform/chromium-mac/fast/forms/textarea-scrolled-type-expected.png:
  • platform/chromium-mac/fast/forms/textarea-setinnerhtml-expected.png:
  • platform/chromium-mac/fast/forms/textarea-width-expected.png:
  • platform/chromium-mac/fast/overflow/overflow-x-y-expected.png:
  • platform/chromium-mac/fast/parser/entity-comment-in-textarea-expected.png:
  • platform/chromium-mac/fast/parser/open-comment-in-textarea-expected.png:
  • platform/chromium-mac/fast/repaint/textarea-set-disabled-expected.png:
  • platform/chromium-mac/fast/replaced/width100percent-textarea-expected.png:
  • platform/chromium-mac/fast/table/003-expected.png:
  • platform/chromium-mac/fast/text/international/rtl-white-space-pre-wrap-expected.png:
  • platform/chromium-mac/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug194024-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug30559-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug30692-expected.png:
  • platform/chromium-win/editing/inserting/4960120-1-expected.png:
  • platform/chromium-win/editing/pasteboard/pasting-tabs-expected.png:
  • platform/chromium-win/fast/block/float/overhanging-tall-block-expected.png:
  • platform/chromium-win/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
  • platform/chromium-win/fast/forms/basic-textareas-expected.png:
  • platform/chromium-win/fast/forms/basic-textareas-quirks-expected.png:
  • platform/chromium-win/fast/forms/form-element-geometry-expected.png:
  • platform/chromium-win/fast/forms/linebox-overflow-in-textarea-padding-expected.png:
  • platform/chromium-win/fast/forms/negativeLineHeight-expected.png:
  • platform/chromium-win/fast/forms/placeholder-position-expected.png:
  • platform/chromium-win/fast/forms/textAreaLineHeight-expected.png:
  • platform/chromium-win/fast/forms/textarea-align-expected.png:
  • platform/chromium-win/fast/forms/textarea-placeholder-pseudo-style-expected.png:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-1-expected.png:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-2-expected.png:
  • platform/chromium-win/fast/forms/textarea-scroll-height-expected.png:
  • platform/chromium-win/fast/forms/textarea-scrollbar-expected.png:
  • platform/chromium-win/fast/forms/textarea-scrolled-type-expected.png:
  • platform/chromium-win/fast/forms/textarea-setinnerhtml-expected.png:
  • platform/chromium-win/fast/forms/textarea-width-expected.png:
  • platform/chromium-win/fast/overflow/overflow-x-y-expected.png:
  • platform/chromium-win/fast/parser/entity-comment-in-textarea-expected.png:
  • platform/chromium-win/fast/parser/open-comment-in-textarea-expected.png:
  • platform/chromium-win/fast/replaced/width100percent-textarea-expected.png:
  • platform/chromium-win/fast/table/003-expected.png:
  • platform/chromium-win/fast/text/international/rtl-white-space-pre-wrap-expected.png:
  • platform/chromium-win/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png:
  • platform/chromium-win/tables/mozilla/bugs/bug194024-expected.png:
  • platform/chromium-win/tables/mozilla/bugs/bug30559-expected.png:
  • platform/chromium-win/tables/mozilla/bugs/bug30692-expected.png:
  • platform/chromium/TestExpectations:
10:34 AM Changeset in webkit [141436] by commit-queue@webkit.org
  • 5 edits in trunk

Web Inspector: searching for <u> in elements panel finds all tags containing "u"
https://bugs.webkit.org/show_bug.cgi?id=108176

Patch by Dmitry Zvorygin <zvorygin@chromium.org> on 2013-01-31
Reviewed by Pavel Feldman.

When searching for tag name check that tag name must either start from
search query, or must end with it.

Source/WebCore:

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::performSearch):

LayoutTests:

  • inspector/elements/elements-panel-search-expected.txt:
  • inspector/elements/elements-panel-search.html:
10:32 AM Changeset in webkit [141435] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] Disable force_static_libs_as_shared in developer builds if wk2 is enabled

Reviewed by Jocelyn Turcotte.

This is a temporary workaround during the development of #108471, where we move files around
but some link time dependencies might remain.

  • qmake/mkspecs/features/default_post.prf:
10:24 AM Changeset in webkit [141434] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding a flaky crasher expectation for fast/css-generated-content/block-and-box-hit-testing.html.
Removing failure expectations for SVGViewSpec tests.

  • platform/gtk-wk1/TestExpectations:
  • platform/gtk/TestExpectations:
10:22 AM Changeset in webkit [141433] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/12695827> PPT: Make loading file URLs work with a sandboxed NetworkProcess

Address review comments.

  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
  • WebProcess/com.apple.WebProcess.sb.in:
10:18 AM Changeset in webkit [141432] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Stop using OutgoingMessage
https://bugs.webkit.org/show_bug.cgi?id=108495

Reviewed by Sam Weinig.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::sendMessage):
(CoreIPC::Connection::sendOutgoingMessages):

  • Platform/CoreIPC/Connection.h:

(Connection):

  • Shared/ChildProcessProxy.cpp:

(WebKit::ChildProcessProxy::~ChildProcessProxy):
(WebKit::ChildProcessProxy::sendMessage):
(WebKit::ChildProcessProxy::didFinishLaunching):

  • Shared/ChildProcessProxy.h:

(ChildProcessProxy):

10:12 AM Changeset in webkit [141431] by mark.lam@apple.com
  • 4 edits in trunk/Source/WebCore

DatabaseContext needs to outlive the ScriptExecutionContext.
https://bugs.webkit.org/show_bug.cgi?id=108355.

Reviewed by Geoffrey Garen.

Added a RefPtr<DatabaseContext> in ScriptExecutionContext to keep the
DatabaseContext alive until after ScriptExecutionContext destructs.

No new tests.

  • Modules/webdatabase/DatabaseContext.cpp:

(WebCore::DatabaseContext::DatabaseContext):

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::setDatabaseContext):

  • dom/ScriptExecutionContext.h:

(ScriptExecutionContext):

10:04 AM Changeset in webkit [141430] by Simon Hausmann
  • 8 edits
    1 copy
    1 add in trunk

[Qt] Make it possible to compile WebKit2 Qt related files without access to internal WK2 C++ API
https://bugs.webkit.org/show_bug.cgi?id=108472

Reviewed by Andreas Kling.

.:

When linking WebKit2, also link the WebKit2QML module.

  • Source/api.pri:

Source/WebKit2:

Add a new module to the qmake build system that represents the part of the WebKit2 Qt integration
that doesn't depend on WebKit2 internals.

Changed qwebnavigationhistory.cpp to not use any internal headers and compile it as part of the
internals-free module.

  • Target.pri:
  • UIProcess/API/qt/qwebnavigationhistory.cpp:
  • WebKit2.pro:
  • WebKit2QML.pri: Added.

Tools:

Add a new module to the qmake build system that represents the part of the WebKit2 Qt integration
that doesn't depend on WebKit2 internals.

  • qmake/mkspecs/features/webkit_modules.prf:
  • qmake/mkspecs/modules/webkit2qml.prf: Copied from Source/WebKit2/WebKit2.pro.
9:59 AM Changeset in webkit [141429] by g.czajkowski@samsung.com
  • 2 edits in trunk/Source/WebCore

On Linux, can't get spelling suggestions without selection when unified text checker is enabled
https://bugs.webkit.org/show_bug.cgi?id=107684

Reviewed by Ryosuke Niwa.

No new tests, covered by context-menu-suggestions.html.

  • editing/Editor.cpp:

(WebCore::Editor::guessesForMisspelledOrUngrammatical):
For Linux, extend selection range to the closest word to get
the spelling suggestions when unified text checker is enabled.

9:44 AM Changeset in webkit [141428] by commit-queue@webkit.org
  • 7 edits in trunk

[chromium] Remove dead transitional code from WebViewImpl
https://bugs.webkit.org/show_bug.cgi?id=107889

Patch by James Robinson <jamesr@chromium.org> on 2013-01-31
Reviewed by Adam Barth.

Source/WebKit/chromium:

The chromium side of this landed at r178256 and seems stable.

  • public/WebWidget.h:

(WebKit::WebWidget::setCompositorSurfaceReady):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit):
(WebKit::WebViewImpl::setIsTransparent):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

  • src/WebViewImpl.h:
  • tests/ScrollingCoordinatorChromiumTest.cpp:

(WebKit::FakeWebViewClient::initializeLayerTreeView):
(FakeWebViewClient):
(WebKit::FakeWebViewClient::layerTreeView):
(WebKit::ScrollingCoordinatorChromiumTest::ScrollingCoordinatorChromiumTest):
(ScrollingCoordinatorChromiumTest):

Tools:

ScrollingCoordinatorChromiumTests need to initialize compositing, so its implementation of
WebWidgetClient has to support the new compositor initialization path.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::initializeLayerTreeView):
(WebViewHost::setWebWidget):

9:36 AM Changeset in webkit [141427] by fmalita@chromium.org
  • 2 edits in trunk/Source/WebCore

[Skia] Update SkiaImageFilterBuilder's brightness matrix to match Chromium's implementation
https://bugs.webkit.org/show_bug.cgi?id=107841

Reviewed by Stephen White.

Update Skia's brightness filter to match the spec after http://trac.webkit.org/changeset/139770.

No new tests: covered by existing tests (currently disabled pending rebaseline).

  • platform/graphics/filters/skia/SkiaImageFilterBuilder.cpp:
9:17 AM Changeset in webkit [141426] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: show cursor location in DTE
https://bugs.webkit.org/show_bug.cgi?id=108478

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-31
Reviewed by Pavel Feldman.

Add a new status bar element to SourceFrame to display current
DefaultTextEditor cursor position.

No new tests.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.DefaultTextEditor.prototype.copyRange):

  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame):
(WebInspector.SourceFrame.prototype.statusBarItems):
(WebInspector.SourceFrame.prototype.selectionChanged):
(WebInspector.SourceFrame.prototype._updateSourcePosition):

  • inspector/front-end/TextEditor.js:

(WebInspector.TextEditor.prototype.copyRange):

  • inspector/front-end/inspector.css:

(.source-frame-position):

8:45 AM Changeset in webkit [141425] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

WebKitTestRunner needs an implementation of eventSender.beginDragWithFiles
https://bugs.webkit.org/show_bug.cgi?id=64285

  • platform/wk2/TestExpectations:

Skip another test that uses eventSender.beginDragWithFiles.

8:33 AM Changeset in webkit [141424] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: overlay highlight in DTE gets messed up when zoom factor changes.
https://bugs.webkit.org/show_bug.cgi?id=108486

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-31
Reviewed by Pavel Feldman.

Repaint overlay highlight when zoom factor changes.

No new tests.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorMainPanel.prototype.highlightRegex):
(WebInspector.TextEditorMainPanel.prototype.removeHighlight):
(WebInspector.TextEditorMainPanel.prototype.highlightRange):
(WebInspector.TextEditorMainPanel.prototype._repaintLineRowsAffectedByHighlightDescriptors):
(WebInspector.TextEditorMainPanel.prototype.resize):

8:13 AM Changeset in webkit [141423] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip a failing test after r141269.
https://bugs.webkit.org/show_bug.cgi?id=108481.
Renamed inspector/editor/text-editor-ctrl-movements.html after r141399.

  • platform/qt/TestExpectations:
7:48 AM PortIntegrationArchitectureIssues edited by Noam Rosenthal
(diff)
7:40 AM PortIntegrationArchitectureIssues created by Noam Rosenthal
7:16 AM Changeset in webkit [141422] by Lucas Forschler
  • 1 copy in tags/Safari-537.29

New Tag.

7:16 AM Changeset in webkit [141421] by Lucas Forschler
  • 1 delete in tags/Safari-537.29

Remove Tag.

7:07 AM Changeset in webkit [141420] by Simon Hausmann
  • 2 edits in trunk/Source/WebCore

[Qt] Fix minor memory leak in slot execution

Reviewed by Allan Sandfeld Jensen.

Don't leak the "length" string when executing a slot in JavaScript.

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::QtConnectionObject::execute):

6:59 AM Changeset in webkit [141419] by Simon Hausmann
  • 2 edits in trunk/Source/WebKit2

Unreviewed trivial build fix: Add missing virtual destructor to
LayerTreeRendererClient. Otherwise the build with -Werror breaks, which
complains (rightly so) that we're deleting a sub-class where the super class
doesn't have a virtual destructor.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(WebKit::LayerTreeRendererClient::~LayerTreeRendererClient):

6:57 AM Changeset in webkit [141418] by mkwst@chromium.org
  • 13 edits
    12 adds in trunk

Allow blocking of IndexedDB in third-party contexts
https://bugs.webkit.org/show_bug.cgi?id=94171

Reviewed by Jochen Eisinger.

Source/WebCore:

This patch ensures that the origin of the top window is passed into
SecurityOrigin::canAccessDatabase when working with IndexedDB. Giving
SecurityOrigin access to this data means that it can properly check
whether the database is being opened in a third-party context, and
therefore properly enforce the third-party access checks that were
added in http://trac.webkit.org/changeset/125736.

Third-party checks are added to IDBFactory::open,
IDBFactory::deleteDatabase, and IDBFactory::getDatabaseNames; each will
now throw a SECURITY_ERR exception when access in a third-party context
if third-party access checks are enabled.

To make this process slightly more clear, and avoid some ugly casting
logic, this patch adds a 'topOrigin' method to ScriptExecutionContext,
and implements it on both WorkerContext and Document.

Tests: http/tests/security/cross-origin-indexeddb-allowed.html

http/tests/security/cross-origin-indexeddb.html
http/tests/security/cross-origin-worker-indexeddb-allowed.html
http/tests/security/cross-origin-worker-indexeddb.html

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::getDatabaseNames):
(WebCore::IDBFactory::openInternal):
(WebCore::IDBFactory::deleteDatabase):

Grab the SecurityOrigin of the current context's top-level origin,
and pass it to SecurityOrigin::canAccessDatabase to ensure that
access checks are properly applied to these three methods.

  • dom/Document.cpp:

(WebCore::Document::topOrigin):
(WebCore):

  • dom/Document.h:

(Document):

  • dom/ScriptExecutionContext.h:

(ScriptExecutionContext):

Add a topOrigin() method to ScriptExecutionContext, and implement it
on Document in order to give callers access to the top document's
SecurityOrigin without casting ScriptExecutionContext.

  • workers/WorkerContext.h:

Change the existing topOrigin() method to override the new method
on ScriptExecutionContext.

LayoutTests:

Add tests to ensure that IndexedDB can be blocked in a third-party
context in both normal documents and in workers. These tests are
modeled after the existing cross-origin-websql* tests; it might be
possible to reuse some code in the future.

  • http/tests/security/cross-origin-indexeddb-allowed-expected.txt: Added.
  • http/tests/security/cross-origin-indexeddb-allowed.html: Added.
  • http/tests/security/cross-origin-indexeddb-expected.txt: Added.
  • http/tests/security/cross-origin-indexeddb.html: Added.
  • http/tests/security/cross-origin-worker-indexeddb-allowed-expected.txt: Added.
  • http/tests/security/cross-origin-worker-indexeddb-allowed.html: Added.
  • http/tests/security/cross-origin-worker-indexeddb-expected.txt: Added.
  • http/tests/security/cross-origin-worker-indexeddb.html: Added.
  • http/tests/security/resources/cross-origin-iframe-for-indexeddb.html: Added.
  • http/tests/security/resources/cross-origin-iframe-for-worker-indexeddb.html: Added.
  • http/tests/security/resources/document-for-cross-origin-worker-indexeddb.html: Added.
  • http/tests/security/resources/worker-for-indexeddb.js: Added.

(self.onmessage):

Add exciting new tests, with more boilerplate than I expected!

  • platform/efl/TestExpectations:
  • platform/mac-snowleopard/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:

Skip these IndexedDB tests on platforms where the feature isn't
enabled.

6:52 AM Changeset in webkit [141417] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Network] Add cookie column to show presence of request/response cookies.
https://bugs.webkit.org/show_bug.cgi?id=107441

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2013-01-31
Reviewed by Pavel Feldman.

In some use cases only responses that contain "set-cookie" headers
are interesting.

  • English.lproj/localizedStrings.js: Added "Set-Cookies" string.
  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkLogView.prototype._createTable): Added columns.
(WebInspector.NetworkLogView.prototype._createSortingFunctions): Ditto.
(WebInspector.NetworkDataGridNode.prototype.createCells): Ditto.
(WebInspector.NetworkDataGridNode.prototype.refreshRequest): Ditto.
(WebInspector.NetworkDataGridNode.prototype._refreshCookiesCell): Added.
(WebInspector.NetworkDataGridNode.prototype._refreshSetCookiesCell): Added.
(WebInspector.NetworkDataGridNode.RequestCookiesCountComparator): Added.
(WebInspector.NetworkDataGridNode.ResponseCookiesCountComparator): Added.

6:30 AM Changeset in webkit [141416] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip two compositing tests, because They hit assertion fail after 140999.
https://bugs.webkit.org/show_bug.cgi?id=108257.

  • platform/qt/TestExpectations:
6:15 AM Changeset in webkit [141415] by aandrey@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Exception in HeapSnapshotView.js
https://bugs.webkit.org/show_bug.cgi?id=108456

Reviewed by Yury Semikhatsky.

Listen "profile added" events in the HeapSnapshotView targeted only to the Heap Snapshot type.

  • inspector/front-end/HeapSnapshotView.js:

(WebInspector.HeapSnapshotView.prototype._onProfileHeaderAdded):

6:10 AM Changeset in webkit [141414] by commit-queue@webkit.org
  • 7 edits in trunk

Web Inspector: do not set any textContent in overlay highlight spans
https://bugs.webkit.org/show_bug.cgi?id=108460

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-31
Reviewed by Pavel Feldman.

Source/WebCore:

Do not set any text content for overlay highlight spans to implicitly
set its height. Instead, measure its height in the same manner as its
done for "width" and "left" and set it explicitly.

No new tests: no change in behaviour.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorMainPanel.prototype._appendOverlayHighlight):
(WebInspector.TextEditorMainPanel.ElementMetrics):

  • inspector/front-end/textEditor.css:

(.text-editor-token-highlight): Update highlight to correspond to
slightly different elements height.

LayoutTests:

Replace "height" pixel value with "<number>" to avoid difference in
test expectations on varioius platforms and correct test expectations.

  • inspector/editor/editor-test.js:

(initialize_EditorTests.InspectorTest.dumpEditorHTML):

  • inspector/editor/text-editor-highlight-api-expected.txt:
  • inspector/editor/text-editor-highlight-token-expected.txt:
6:07 AM Changeset in webkit [141413] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Box shadows on a transparency layer is very slow
https://bugs.webkit.org/show_bug.cgi?id=107547

Reviewed by Noam Rosenthal.

Include the window boundaries in the clip returned by GraphicsContext,
since QPainter may remember clips larger than the destination, but
ShadowBlur uses the clipBounds to determine the size of the shadow layer.

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::GraphicsContext::clipBounds):

6:07 AM Changeset in webkit [141412] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Coordinated Graphics: view the debug border/repaint count of the non composited layer.
https://bugs.webkit.org/show_bug.cgi?id=108401

Patch by Seulgi Kim <seulgikim@company100.net> on 2013-01-31
Reviewed by Noam Rosenthal.

Make non-compositing layer draw debug border and show repaint counter
accroding to settings.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):

6:05 AM Changeset in webkit [141411] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: highlight backend languages as scripts
https://bugs.webkit.org/show_bug.cgi?id=108336

Reviewed by Vsevolod Vlasov.

Most languages have structure similar to js, so enabling default highlighter for them won't hurt.

  • inspector/front-end/FileSystemWorkspaceProvider.js:

(WebInspector.FileSystemWorkspaceProvider.prototype._contentTypeForPath):

5:58 AM EFLWebKitBuildBots edited by dchris@gmail.com
(diff)
5:57 AM EFLWebKitBuildBots edited by dchris@gmail.com
(diff)
5:56 AM WebKit Team edited by dchris@gmail.com
Update my affiliation. (diff)
5:48 AM Changeset in webkit [141410] by akling@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/ChangeLog

Unjumble ChangeLog authors after r141407.

5:42 AM Changeset in webkit [141409] by aandrey@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Profiles] show launcher view upon deleting last profile type's header
https://bugs.webkit.org/show_bug.cgi?id=108468

Reviewed by Pavel Feldman.

We should show launcher view and hide profile type sidebar section upon deleting last profile type's header from the sidebar.
Right now we only show launcher view upon deleting the last profile header (of any profile type).

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfilesPanel.prototype._removeProfileHeader):

5:39 AM Changeset in webkit [141408] by fmalita@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening.

  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-expected.png:
5:34 AM Changeset in webkit [141407] by akling@apple.com
  • 7 edits in trunk/Source

Vector should consult allocator about ideal size when choosing capacity.
<http://webkit.org/b/108410>
<rdar://problem/13124002>

Source/JavaScriptCore:

Patch by Filip Pizlo <fpizlo@apple.com> on 2013-01-30
Reviewed by Benjamin Poulain.

Remove assertion about Vector capacity that won't hold anymore since capacity()
may not be what you passed to reserveCapacity().

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

Source/WTF:

Reviewed by Benjamin Poulain.

Added WTF::fastMallocGoodSize(), a workalike/wrapper for OS X's malloc_good_size().
It returns the actual size of the block that will get allocated for a given byte size.

Vector's internal buffer now checks with the allocator if the resulting allocation
could actually house more objects and updates its capacity to make use of the space.

  • wtf/Deque.h:

(WTF::::expandCapacity):

  • wtf/FastMalloc.cpp:

(WTF::fastMallocGoodSize):

  • wtf/FastMalloc.h:
  • wtf/Vector.h:

(WTF::VectorBufferBase::allocateBuffer):
(WTF::VectorBufferBase::tryAllocateBuffer):
(WTF::VectorBufferBase::reallocateBuffer):

5:25 AM Changeset in webkit [141406] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Network] Columns are misaligned as first row goes out of sight.
https://bugs.webkit.org/show_bug.cgi?id=107933

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2013-01-31
Reviewed by Pavel Feldman.

For some reason if "td" elements in first table row have "display: none"
style, then column width calculation breaks.

  • inspector/front-end/networkLogView.css:

(.network-log-grid.data-grid tr.offscreen > td > div):
Hide content instead of "td" element itself.

5:01 AM Changeset in webkit [141405] by Vineet
  • 5 edits
    2 adds in trunk

formMethod to have empty string as default value and 'get' as invalid.
https://bugs.webkit.org/show_bug.cgi?id=108263

Reviewed by Kent Tamura.

The spec says formmethod should only have an invalid value default, not a missing value default.
Spec: http://www.whatwg.org/specs/web-apps/current-work/#form-submission-0

http://www.w3.org/html/wg/drafts/html/master/forms.html#attr-fs-formmethod

Source/WebCore:

Test: fast/forms/formmethod-attribute-test.html

  • html/HTMLFormControlElement.cpp: For the missing formMethod attr return empty string.

(WebCore::HTMLFormControlElement::formMethod):

LayoutTests:

  • fast/forms/formmethod-attribute-test-expected.txt: Added.
  • fast/forms/formmethod-attribute-test.html: Added.
  • fast/forms/submit-form-attributes-expected.txt:
  • fast/forms/submit-form-attributes.html: Modified test to behave as expected.
4:47 AM Changeset in webkit [141404] by commit-queue@webkit.org
  • 6 edits
    1 add in trunk/Source/WebCore

[Efl][WebGL] Add better support to track and free XResources.
https://bugs.webkit.org/show_bug.cgi?id=107397

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2013-01-20
Reviewed by Noam Rosenthal.

We leak Memory during config selection as we dont free temporary
allocated visuals, config etc. This patch ensures that we dont leak any
memory.

Covered by existing WebGL tests.

  • platform/graphics/surfaces/egl/EGLSurface.cpp:

(WebCore::EGLWindowTransportSurface::EGLWindowTransportSurface):

  • platform/graphics/surfaces/glx/GLXConfigSelector.h:

(WebCore::GLXConfigSelector::GLXConfigSelector):
(WebCore::GLXConfigSelector::visualInfo):
(WebCore::GLXConfigSelector::pBufferContextConfig):
(WebCore::GLXConfigSelector::surfaceContextConfig):
(WebCore::GLXConfigSelector::createSurfaceConfig):
(GLXConfigSelector):
Removed XVisualInfo as member variable. Fixed memory leaks.

  • platform/graphics/surfaces/glx/GLXSurface.cpp:

(WebCore::GLXTransportSurface::GLXTransportSurface):

  • platform/graphics/surfaces/glx/OwnPtrX11.h: Added.

(OwnPtrX11):
(WebCore::OwnPtrX11::OwnPtrX11):
(WebCore::OwnPtrX11::~OwnPtrX11):
(WebCore::OwnPtrX11::operator=):
(WebCore::OwnPtrX11::operator T*):
(WebCore::OwnPtrX11::operator->):
(WebCore::OwnPtrX11::get):
Calls XFree on pointer to memory allocated by X when the class goes out of scope.
OwnPtr cannot be used here as GLXFBConfig is a pointer to an array of pointers.

  • platform/graphics/surfaces/glx/X11WindowResources.cpp:

(WebCore::X11OffScreenWindow::X11OffScreenWindow):
(WebCore::X11OffScreenWindow::~X11OffScreenWindow):
(WebCore):
(WebCore::X11OffScreenWindow::createOffScreenWindow):
(WebCore::X11OffScreenWindow::destroyWindow):
(WebCore::X11OffScreenWindow::nativeSharedDisplay):

  • platform/graphics/surfaces/glx/X11WindowResources.h:

(X11OffScreenWindow):
Removed unused code. Fixed memory leaks.

4:45 AM Changeset in webkit [141403] by aandrey@chromium.org
  • 11 edits in trunk

Web Inspector: [Canvas] remove invalid canvas profile trace logs upon frame navigation
https://bugs.webkit.org/show_bug.cgi?id=108454

Reviewed by Pavel Feldman.

Source/WebCore:

When canvas profile trace logs stored in the backend get destroyed (for example, on frame navigation), send an event to frontend and update the UI.
Drive-by: replace String types to corresponding TypeBuilder::Canvas::* typedefs.

  • inspector/InjectedScriptCanvasModule.cpp:

(WebCore::InjectedScriptCanvasModule::captureFrame):
(WebCore::InjectedScriptCanvasModule::startCapturing):
(WebCore::InjectedScriptCanvasModule::callStartCapturingFunction):
(WebCore::InjectedScriptCanvasModule::stopCapturing):
(WebCore::InjectedScriptCanvasModule::dropTraceLog):
(WebCore::InjectedScriptCanvasModule::callVoidFunctionWithTraceLogIdArgument):
(WebCore::InjectedScriptCanvasModule::traceLog):
(WebCore::InjectedScriptCanvasModule::replayTraceLog):
(WebCore::InjectedScriptCanvasModule::resourceInfo):
(WebCore::InjectedScriptCanvasModule::resourceState):

  • inspector/InjectedScriptCanvasModule.h:

(InjectedScriptCanvasModule):

  • inspector/Inspector.json:
  • inspector/InspectorCanvasAgent.cpp:

(WebCore::InspectorCanvasAgent::dropTraceLog):
(WebCore::InspectorCanvasAgent::stopCapturing):
(WebCore::InspectorCanvasAgent::getTraceLog):
(WebCore::InspectorCanvasAgent::replayTraceLog):
(WebCore::InspectorCanvasAgent::getResourceInfo):
(WebCore::InspectorCanvasAgent::getResourceState):
(WebCore::InspectorCanvasAgent::frameNavigated):

  • inspector/InspectorCanvasAgent.h:

(InspectorCanvasAgent):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::hasIdForFrame):
(WebCore):

  • inspector/InspectorPageAgent.h:

(InspectorPageAgent):

  • inspector/front-end/CanvasProfileView.js:

(WebInspector.CanvasProfileType.prototype._runSingleFrameCapturing):
(WebInspector.CanvasProfileType.prototype._startFrameCapturing):
(WebInspector.CanvasProfileType.prototype._didStartCapturingFrame):
(WebInspector.CanvasProfileType.prototype._traceLogsRemoved):
(WebInspector.CanvasDispatcher.prototype.contextCreated):
(WebInspector.CanvasDispatcher.prototype.traceLogsRemoved):
(WebInspector.CanvasProfileHeader):
(WebInspector.CanvasProfileHeader.prototype.frameId):

LayoutTests:

  • inspector/profiler/canvas-profiler-test.js:

(initialize_CanvasWebGLProfilerTest.InspectorTest.enableCanvasAgent.InspectorBackend.registerCanvasDispatcher):

4:43 AM Changeset in webkit [141402] by kov@webkit.org
  • 3 edits in trunk/Tools

[GTK] run-gtk-tests does not respect the -d argument
https://bugs.webkit.org/show_bug.cgi?id=107822

Reviewed by Philippe Normand.

  • Scripts/run-gtk-tests:

(TestRunner.init): use the value for the debug option to decide what
build_type to request a path for.

  • gtk/common.py:

(get_build_path): now accepts a build_type argument instead of trying both
Release and Debug in order, defaults to release.
(build_path): takes and passes a build_type argument, no default value.

4:04 AM Changeset in webkit [141401] by commit-queue@webkit.org
  • 5 edits in trunk

Web Inspector: DTE doesn't highlight words if the selected one is the last in the line
https://bugs.webkit.org/show_bug.cgi?id=108344

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-31
Reviewed by Pavel Feldman.

Source/WebCore:

Fix error in _isWord function which made an erroneous line-end check.

Improved test: inspector/editor/text-editor-highlight-token.html

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorMainPanel.TokenHighlighter.prototype._isWord):

LayoutTests:

Add a test to cover specific case which caused the bug.

  • inspector/editor/text-editor-highlight-token-expected.txt:
  • inspector/editor/text-editor-highlight-token.html:
4:01 AM Changeset in webkit [141400] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

InjectedBundle is being built even with --disable-webkit2
https://bugs.webkit.org/show_bug.cgi?id=108364

Patch by Paweł Forysiuk <tuxator@o2.pl> on 2013-01-31
Reviewed by Gustavo Noronha Silva.

  • GNUmakefile.am: Wrap Injected bundle with ENABLE_WEBKIT2 condition
4:01 AM Changeset in webkit [141399] by commit-queue@webkit.org
  • 2 edits
    2 moves in trunk/LayoutTests

Web Inspector: text-editor-ctrl-movements.html timeouts on mac
https://bugs.webkit.org/show_bug.cgi?id=108440

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-31
Reviewed by Pavel Feldman.

Use "alt-arrows" key shortcuts to jump over words instead of
"ctrl-arrows" on Mac platform.

  • inspector/editor/text-editor-word-jumps-expected.txt: Renamed from LayoutTests/inspector/editor/text-editor-ctrl-movements-expected.txt.
  • inspector/editor/text-editor-word-jumps.html: Renamed from LayoutTests/inspector/editor/text-editor-ctrl-movements.html.
  • platform/chromium/TestExpectations: Do not skip this test anymore.
3:44 AM Changeset in webkit [141398] by Philippe Normand
  • 2 edits in trunk/Source/WebCore

Unreviewed, Qt build fix after r141265.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

Avoid uninitialized variable error when NATIVE_FULLSCREEN_VIDEO is disabled.

3:44 AM Changeset in webkit [141397] by mikhail.pozdnyakov@intel.com
  • 2 edits in trunk/Tools

Update Christophe Dumez's email address
https://bugs.webkit.org/show_bug.cgi?id=108453

Patch by Christophe Dumez <dchris@gmail.com> on 2013-01-31
Reviewed by Kenneth Rohde Christiansen.

Update my email address in committers.py.

  • Scripts/webkitpy/common/config/committers.py:
3:25 AM Changeset in webkit [141396] by yurys@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

Web Inspector: test that references from DOM nodes to event listeners are presented in heap snapshots
https://bugs.webkit.org/show_bug.cgi?id=108322

Reviewed by Vsevolod Vlasov.

Test that links from DOM node wrappers to event listener functions are presented
in heap snapshots.

  • inspector-protocol/heap-profiler/heap-snapshot-with-event-listener-expected.txt: Added.
  • inspector-protocol/heap-profiler/heap-snapshot-with-event-listener.html: Added.
3:17 AM Changeset in webkit [141395] by tkent@chromium.org
  • 13 edits
    2 adds in trunk

Click on a label element won't select input[type=date]
https://bugs.webkit.org/show_bug.cgi?id=108428

Reviewed by Kentaro Hara.

Source/WebCore:

date/time input types with INPUT_MULTIPLE_FIELDS_UI are not
mouse-focusable. <input> as a shadow host never gets focus and
sub-fields in its shadow tree are focusable. Howevever, the click
handling of <label> checked isMouseFocusable. We introduce new function
isFocusableByClickOnLabel to HTMLElement. It's default implementation is
same as isMouseFocusable, and we add special handling for
BaseMultipleFieldsDateAndTimeInputType::isFocusableByClickOnLabel.

Also, date/time input types without INPUT_MULTIPLE_FIELDS_UI were not
mouse-focusable by a mistake. It should be mouse-focusable.

Test: fast/forms/date/date-click-on-label.html

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::isFocusableByClickOnLabel):
Added. Just calls isMouseFocusable.

  • html/HTMLElement.h:

(HTMLElement): Declare isFocusableByClickOnLabel.

  • html/HTMLLabelElement.cpp:

(WebCore::HTMLLabelElement::defaultEventHandler):
Calls isFocusableByClickOnLabel instead of isMouseFocusable.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::isFocusableByClickOnLabel):
Delegate to InputType::isFocusableByClickOnLabel.

  • html/HTMLInputElement.h:

(HTMLInputElement): Declare isFocusableByClickOnLabel.

  • html/InputType.cpp:

(WebCore::InputType::isFocusableByClickOnLabel):
Added. Calls isMouseFocusable.

  • html/InputType.h:

(InputType): Declare isFocusableByClickOnLabel.

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::isFocusableByClickOnLabel):
Added. Use the same logic with textfields.

  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType): Declare isFocusableByClickOnLabel.

  • html/BaseChooserOnlyDateAndTimeInputType.cpp:

(WebCore::BaseChooserOnlyDateAndTimeInputType::isMouseFocusable):
Added. Use the same logic with textfields.

  • html/BaseChooserOnlyDateAndTimeInputType.h:

(BaseChooserOnlyDateAndTimeInputType): Declare isMouseFocusable.

LayoutTests:

  • fast/forms/date/date-click-on-label-expected.txt: Added.
  • fast/forms/date/date-click-on-label.html: Added.
3:10 AM Changeset in webkit [141394] by haraken@chromium.org
  • 6 edits in trunk/Source

Rename WheelEvent::Granularity to WheelEvent::DeltaMode
https://bugs.webkit.org/show_bug.cgi?id=108434

Reviewed by Ryosuke Niwa.

Per the spec, WheelEvent::Granularity should be renamed to WheelEvent::DeltaMode.

Spec: http://www.w3.org/TR/DOM-Level-3-Events/#events-WheelEvent
https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm#constructor-wheelevent

No tests. No change in behavior.

Source/WebCore:

  • dom/WheelEvent.cpp:

(WebCore::WheelEvent::WheelEvent):
(WebCore::WheelEvent::initWheelEvent):
(WebCore::deltaMode):
(WebCore::WheelEventDispatchMediator::WheelEventDispatchMediator):

  • dom/WheelEvent.h:

(WebCore::WheelEvent::create):
(WebCore::WheelEvent::deltaMode):
(WheelEvent):

  • page/EventHandler.cpp:

(WebCore::wheelGranularityToScrollGranularity):
(WebCore::EventHandler::defaultWheelEventHandler):

Source/WebKit/chromium:

  • src/WebInputEventConversion.cpp:

(WebKit::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
(WebKit::WebMouseWheelEventBuilder::WebMouseWheelEventBuilder):

2:52 AM Changeset in webkit [141393] by yurys@chromium.org
  • 4 edits
    3 adds in trunk

Web Inspector: test that nodes from the same detached DOM tree will get into one group in heap snapshot
https://bugs.webkit.org/show_bug.cgi?id=108202

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: inspector-protocol/heap-profiler/heap-snapshot-with-detached-dom-tree.html

  • inspector/front-end/JSHeapSnapshot.js:

(WebInspector.JSHeapSnapshotNode.prototype.className): removed unnecessary i18n.

LayoutTests:

Test that JS wrappers for all DOM nodes from the same detached DOM tree will get into
single "Detached DOM Tree" entry in the JS heap snapshot.

  • http/tests/inspector-protocol/resources/InspectorTest.js:

(InspectorTest.importScript):

  • inspector-protocol/heap-profiler/heap-snapshot-with-detached-dom-tree-expected.txt: Added.
  • inspector-protocol/heap-profiler/heap-snapshot-with-detached-dom-tree.html: Added. I started

with writing simplified version of WebInspector.JSHeapSnapshot just for tests
but it soon it became clear that we would need to reimplement too much functionality
of WebInspector.JSHeapSnapshot so I decided not to reinvent the wheel and just import
original heap snapshot model.

  • inspector-protocol/heap-profiler/resources/heap-snapshot-common.js: Added.

(InspectorTest.takeHeapSnapshot):

2:02 AM Changeset in webkit [141392] by jochen@chromium.org
  • 5 edits in trunk/Tools

[chromium] move runModalBeforeUnloadDialog to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=108442

Reviewed by Adam Barth.

  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebTestRunner::WebTestProxy::runModalBeforeUnloadDialog):

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:

(WebTestRunner::WebTestProxyBase::runModalBeforeUnloadDialog):

  • DumpRenderTree/chromium/WebViewHost.cpp:
  • DumpRenderTree/chromium/WebViewHost.h:
1:46 AM Changeset in webkit [141391] by yurys@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Bump Chromium dependency to 179332

  • DEPS:
12:52 AM Changeset in webkit [141390] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Trace not only major DOM GCs but also minor DOM GCs
https://bugs.webkit.org/show_bug.cgi?id=108436

Reviewed by Adam Barth.

Currently only major DOM GCs are traced.
We should also trace minor DOM GCs.

No tests. No change in behavior.

  • bindings/v8/V8GCController.cpp:

(WebCore::V8GCController::minorGCPrologue):
(WebCore::V8GCController::minorGCEpilogue):

12:49 AM Changeset in webkit [141389] by mikhail.pozdnyakov@intel.com
  • 8 edits in trunk/Source/WebKit2

[EFL][WK2] RequestManagerClientEfl, DownloadManagerEfl and ContextHistoryClientEfl should be based on C API
https://bugs.webkit.org/show_bug.cgi?id=107685

Reviewed by Benjamin Poulain.

RequestManagerClientEfl, DownloadManagerEfl and ContextHistoryClientEfl
should be based on C API so that API layering is not violated.

  • UIProcess/API/efl/ewk_context.cpp:

(EwkContext::EwkContext):

  • UIProcess/efl/ContextHistoryClientEfl.cpp:

(WebKit::ContextHistoryClientEfl::ContextHistoryClientEfl):
(WebKit::ContextHistoryClientEfl::~ContextHistoryClientEfl):

  • UIProcess/efl/ContextHistoryClientEfl.h:

(WebKit::ContextHistoryClientEfl::create):
(ContextHistoryClientEfl):

  • UIProcess/efl/DownloadManagerEfl.cpp:

(WebKit::DownloadManagerEfl::DownloadManagerEfl):
(WebKit::DownloadManagerEfl::~DownloadManagerEfl):

  • UIProcess/efl/DownloadManagerEfl.h:

(WebKit::DownloadManagerEfl::create):
(DownloadManagerEfl):

  • UIProcess/efl/RequestManagerClientEfl.cpp:

(WebKit::RequestManagerClientEfl::RequestManagerClientEfl):

  • UIProcess/efl/RequestManagerClientEfl.h:

(WebKit::RequestManagerClientEfl::create):
(RequestManagerClientEfl):

12:45 AM Changeset in webkit [141388] by yurys@chromium.org
  • 8 edits in trunk

Layout Test inspector-protocol/take-heap-snapshot.html crashes in the Debug mode
https://bugs.webkit.org/show_bug.cgi?id=104800

Reviewed by Jochen Eisinger.

Source/WebCore:

The test crashed because during snapshot generation Profiler.reportHeapSnapshotProgress
events were sent to the inspector front-end, then parsed and dispatched there.
Since in case of layout tests the front-end resides in the same process
as the inspected page parsing the event broke an assumption that there are
no JS heap allocations while heap snapshot is being taken.

I added optional boolean parameter 'reportProgress' to Profiler.takeHeapSnapshot
command so that the protocol client can control whether progress events should
be sent during snapshot generation. The protocol test is not interested in the
progress events and sets reportProgress to false.

Test: inspector-protocol/heap-profiler/take-heap-snapshot.html

  • inspector/Inspector.json:
  • inspector/InspectorProfilerAgent.cpp:

(WebCore::InspectorProfilerAgent::takeHeapSnapshot):

  • inspector/InspectorProfilerAgent.h:

(InspectorProfilerAgent):

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):

LayoutTests:

Marked the test as not crashing in the debug mode.

  • inspector-protocol/heap-profiler/take-heap-snapshot.html:
  • platform/chromium/TestExpectations:
12:38 AM Changeset in webkit [141387] by commit-queue@webkit.org
  • 10 edits in trunk

Unreviewed, rolling out r141110.
http://trac.webkit.org/changeset/141110
https://bugs.webkit.org/show_bug.cgi?id=108349

This patch broke WK2-EFL unit tests (Requested by grzegorz on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-31

Source/WebCore:

  • platform/text/TextChecking.h:

(WebCore):

Source/WebKit/efl:

  • WebCoreSupport/EditorClientEfl.h:

Source/WebKit2:

  • UIProcess/efl/TextCheckerEfl.cpp:
  • WebProcess/WebCoreSupport/WebEditorClient.h:
  • WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:

LayoutTests:

  • platform/efl-wk2/TestExpectations:
12:33 AM Changeset in webkit [141386] by haraken@chromium.org
  • 3 edits
    2 adds in trunk/LayoutTests

Add composition-event-constructor.html, which I forgot to add in r141028
https://bugs.webkit.org/show_bug.cgi?id=107919

Reviewed by Adam Barth.

r141028 implemented a CompositionEvent constructor, but I forgot to add a test
when I landed the patch manually. This patch adds the test.

  • fast/events/constructors/composition-event-constructor-expected.txt: Added.
  • fast/events/constructors/composition-event-constructor.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
12:30 AM Changeset in webkit [141385] by jochen@chromium.org
  • 4 edits in trunk/Tools

[chromium] move postMessage related methods to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=108343

Reviewed by Adam Barth.

  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebKit):
(WebTestProxyBase):
(WebTestRunner::WebTestProxy::willCheckAndDispatchMessageEvent):

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:

(WebTestRunner::WebTestProxyBase::willCheckAndDispatchMessageEvent):
(WebTestRunner):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::willCheckAndDispatchMessageEvent):

12:29 AM Changeset in webkit [141384] by commit-queue@webkit.org
  • 7 edits
    1 add in trunk/Source/WebKit2

Coordinated Graphics : Remove WebCoordinatedSurface dependency from CoordinatedSurface
https://bugs.webkit.org/show_bug.cgi?id=108259

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-01-31
Reviewed by Noam Rosenthal.

This is a preparation patch for Threaded Coordinated Graphics.

WebCoordinatedSurface dependency should be removed from
CoordinatedSurface so as to share CoordinatedSurface between
WebCoordinatedSurface and CoordinatedSurface of WebKit1, which will be
implemented for Threaded Coordinated Graphics.

This patch introduces CoordinatedSurface::Factory, which is a function
pointer that creates CoordinatedSurfaces. CoordinatedLayerTreeHost sets
static CoordinatedSurface::Factory member variable. Classes that use
CoordinatedSurface, which are CoordinatedImageBacking and UpdateAtlas,
create CoordinatedSurfaces by calling CoordinatedSurface::create, which
will call the function set by CoordinatedLayerTreeHost.

This way, we can remove the WebCoordinatedSurface dependency from
CoordinatedSurface and be able to share the code in Threaded Coordinated
Graphics.

No new tests. No change in behavior.

  • CMakeLists.txt:
  • Shared/CoordinatedGraphics/CoordinatedSurface.cpp: Added.

(WebKit):
(WebKit::CoordinatedSurface::setFactory):
(WebKit::CoordinatedSurface::create):

  • Shared/CoordinatedGraphics/CoordinatedSurface.h:

(CoordinatedSurface):

  • Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
  • Target.pri:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::createCoordinatedSurface):
(WebKit):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
12:12 AM Changeset in webkit [141383] by haraken@chromium.org
  • 5 edits in trunk

[V8] 'new MouseEvent("click", {relatedTarget: window}).window' should return window
https://bugs.webkit.org/show_bug.cgi?id=108432

Reviewed by Adam Barth.

In V8 'new MouseEvent("click", {relatedTarget: window}).window'
returns null. JSC returns window, which is a correct behavior.
V8 should also return window.

Source/WebCore:

The point is that we need to handle a DOMWindow wrapper specially
before converting it to an EventTarget object. A wrapper returned by
Dictionary::get("relatedTarget") is not an expected DOMWindow wrapper.
To get the expected DOMWindow wrapper, we need to look up a prototype
chain of the DOMWindow wrapper.

In JSC, this special handling is done by JSEventTargetCustom::toEventTarget().

Test: fast/events/constructors/mouse-event-constructor.html

  • bindings/v8/Dictionary.cpp:

(WebCore::Dictionary::get):

LayoutTests:

  • fast/events/constructors/mouse-event-constructor-expected.txt:
  • fast/events/constructors/mouse-event-constructor.html:
12:05 AM Changeset in webkit [141382] by pilgrim@chromium.org
  • 6 edits
    1 move in trunk/Source

[Chromium] Move MediaPlayerPrivateChromium to WebCore
https://bugs.webkit.org/show_bug.cgi?id=108415

Reviewed by Adam Barth.

Part of a larger refactoring series; see tracking bug 106829.

Source/WebCore:

  • WebCore.gypi:
  • platform/graphics/chromium/MediaPlayerPrivateChromium.cpp: Added.

(WebCore):
(WebCore::MediaPlayerPrivate::registerMediaEngine): call
registerMediaEngine through static function pointer that was set
during WebKit initializeWithoutV8
(WebCore::MediaPlayerPrivate::setMediaEngineRegisterSelfFunction):
new setter function that takes a function pointer that is used by registerMediaEngine

  • platform/graphics/chromium/MediaPlayerPrivateChromium.h:

(WebCore):
(MediaPlayerPrivate):

Source/WebKit/chromium:

  • WebKit.gyp:
  • src/MediaPlayerPrivateChromium.cpp: Removed.
  • src/WebKit.cpp:

(WebKit::initializeWithoutV8): call new setter function in
WebCore::MediaPlayerPrivate

12:00 AM Changeset in webkit [141381] by jochen@chromium.org
  • 6 edits in trunk/Tools

[chromium] move remaining resource load related methods to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=108334

Reviewed by Adam Barth.

  • DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:

(WebTestRunner::WebTestDelegate::allowExternalPages):

  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebKit):
(WebTestProxyBase):
(WebTestRunner::WebTestProxy::canHandleRequest):
(WebTestRunner::WebTestProxy::cannotHandleRequestError):
(WebTestRunner::WebTestProxy::didCreateDataSource):

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:

(WebTestRunner::WebTestProxyBase::canHandleRequest):
(WebTestRunner):
(WebTestRunner::WebTestProxyBase::cannotHandleRequestError):
(WebTestRunner::WebTestProxyBase::didCreateDataSource):
(WebTestRunner::WebTestProxyBase::willSendRequest):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::canHandleRequest):
(WebViewHost::didCreateDataSource):
(WebViewHost::willSendRequest):
(WebViewHost::allowExternalPages):

  • DumpRenderTree/chromium/WebViewHost.h:

Jan 30, 2013:

11:24 PM Changeset in webkit [141380] by morrita@google.com
  • 2 edits
    1 delete in trunk/LayoutTests

[Chromium] Unreviewed, rebaselining expectations.

  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-expected.txt: Removed.
  • platform/chromium/TestExpectations:
10:05 PM Changeset in webkit [141379] by morrita@google.com
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, marking video-error-does-not-exist.html as a fail.

  • platform/chromium/TestExpectations:
10:00 PM Changeset in webkit [141378] by Patrick Gansterer
  • 3 edits
    1 delete in trunk/Source/WebCore

Port DragImageWin.cpp to WinCE
https://bugs.webkit.org/show_bug.cgi?id=108329

Reviewed by Brent Fulgham.

Add #if !OS(WINCE) around a few lines of the code, so it can be used by the WinCE port too.

  • PlatformWinCE.cmake:
  • platform/win/DragImageWin.cpp:

(WebCore::dragLabelFont):

  • platform/wince/DragImageWinCE.cpp: Removed.
9:27 PM Changeset in webkit [141377] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix after http://trac.webkit.org/changeset/141372.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::performDictionaryLookupAtLocation):

9:22 PM Changeset in webkit [141376] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

Coordinated Graphics : Remove CoordinatedLayerTreeHostProxy dependency from LayerTreeRenderer
https://bugs.webkit.org/show_bug.cgi?id=108164

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-01-30
Reviewed by Benjamin Poulain.

This is a preparation patch for Threaded Coordinated Graphics.

LayerTreeRenderer should not depend on CoordinatedLayerTreeHostProxy so that it
can be moved to WebCore. This patch introduces LayerTreeRendererClient which
is implemented in CoordinatedLayerTreeHostProxy. LayerTreeRenderer uses this
client, instead of using CoordinatedLayerTreeHostProxy directly.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(CoordinatedLayerTreeHostProxy):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::LayerTreeRenderer):
(WebKit::LayerTreeRenderer::animationFrameReady):
(WebKit::LayerTreeRenderer::updateViewport):
(WebKit::LayerTreeRenderer::renderNextFrame):
(WebKit::LayerTreeRenderer::purgeBackingStores):
(WebKit::LayerTreeRenderer::detach):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(WebKit):
(LayerTreeRendererClient):
(LayerTreeRenderer):

9:15 PM Changeset in webkit [141375] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

9:11 PM Changeset in webkit [141374] by Lucas Forschler
  • 1 copy in tags/Safari-537.29

New Tag.

9:03 PM Changeset in webkit [141373] by hayato@chromium.org
  • 4 edits in trunk/Source/WebCore

Split CSSOMWrapper data and functions out from StyleResolver into its own class.
https://bugs.webkit.org/show_bug.cgi?id=107779

Reviewed by Dimitri Glazkov.

Factored CSSOMWrapper logic and data out from StyleResolver into a
InspectorCSSOMWrappers class. Since InspectorCSSOMWrappers
depends on static variables defined in StyleResolver.cpp, this
patch does not extract a new class into a new file, which makes a
review easier since it produces readable diffs.

After we factor static variables related to default style sheets
in a following patch (bug 107780), I'll move
InspectorCSSOMWrappers into a its own file.

No new tests, refactoring only.

  • css/StyleResolver.cpp:

(WebCore):
(WebCore::StyleResolver::appendAuthorStyleSheets):
(WebCore::InspectorCSSOMWrappers::collectFromStyleSheetIfNeeded):
(WebCore::InspectorCSSOMWrappers::collect):
(WebCore::InspectorCSSOMWrappers::collectFromStyleSheetContents): Name it explicitly rather than overloading.
(WebCore::InspectorCSSOMWrappers::collectFromStyleSheets): Name it explicitly rather than overloading.
(WebCore::InspectorCSSOMWrappers::collectFromDocumentStyleSheetCollection): Name it explicitly rather than overloading.
(WebCore::InspectorCSSOMWrappers::getWrapperForRuleInSheets): Renamed from ensureFullCSSOMWrapperForInspector().
(WebCore::InspectorCSSOMWrappers::reportMemoryUsage):
(WebCore::StyleResolver::reportMemoryUsage):

  • css/StyleResolver.h:

(InspectorCSSOMWrappers):
(WebCore):
(StyleResolver):
(WebCore::StyleResolver::inspectorCSSOMWrappers):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::willMatchRule):
(WebCore::InspectorCSSAgent::willProcessRule):
(WebCore::InspectorCSSAgent::buildObjectForRule):

9:02 PM Changeset in webkit [141372] by timothy_horton@apple.com
  • 11 edits in trunk/Source/WebKit2

PDFPlugin: Should respond to three-finger tap for dictionary definitions
https://bugs.webkit.org/show_bug.cgi?id=108418
<rdar://problem/13121409>

Reviewed by Simon Fraser.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h: Add default implementation of performDictionaryLookupAtLocation.
  • WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add getSelectionForWordAtPoint and searchInDictionaryWithSelection.
  • WebProcess/Plugins/PDF/PDFPlugin.h: Add performDictionaryLookupAtLocation.
  • WebProcess/Plugins/PDF/PDFPlugin.mm: Grab a PDFSelection representing the word encompassing the given point, and

throw up a dictionary popover.
(WebKit::PDFPlugin::performDictionaryLookupAtLocation):

  • WebProcess/Plugins/PDF/SimplePDFPlugin.h: Add default implementation of performDictionaryLookupAtLocation.
  • WebProcess/Plugins/Plugin.h: Add performDictionaryLookupAtLocation.
  • WebProcess/Plugins/PluginProxy.h: Add default implementation of performDictionaryLookupAtLocation.
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::performDictionaryLookupAtLocation): Forward performDictionaryLookupAtLocation to the plugin.

  • WebProcess/Plugins/PluginView.h: Add performDictionaryLookupAtLocation.
  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performDictionaryLookupAtLocation): Intercept performDictionaryLookupAtLocation, and give
the main-frame plugin (if it exists) a chance to handle it.

8:57 PM Changeset in webkit [141371] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Unreviewed, rolling out r141358.
http://trac.webkit.org/changeset/141358
https://bugs.webkit.org/show_bug.cgi?id=108421

breaks android builder (Requested by morrita on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-30

Source/WebCore:

  • bindings/v8/custom/V8IntentCustom.cpp:

Source/WebKit/chromium:

  • WebKit.gyp:
  • features.gypi:
  • src/WebFrameImpl.cpp:
8:46 PM Changeset in webkit [141370] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

8:42 PM Changeset in webkit [141369] by morrita@google.com
  • 3 edits in trunk/Tools

Unreviewed test failure fix for r141341.

  • Scripts/webkitpy/tool/steps/runtests.py:

(RunTests.run):

  • Scripts/webkitpy/tool/steps/runtests_unittest.py:
8:32 PM Changeset in webkit [141368] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Use state->isolate() when state is not 0
https://bugs.webkit.org/show_bug.cgi?id=107674

Reviewed by Adam Barth.

No tests. No change in behavior.

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::start):
(WebCore::ScriptProfiler::stop):

8:07 PM Changeset in webkit [141367] by tkent@chromium.org
  • 90 edits
    2 adds in trunk/LayoutTests

[Chromium] Rebaline for form-related tests
https://bugs.webkit.org/show_bug.cgi?id=105574
https://bugs.webkit.org/show_bug.cgi?id=108069

  • platform/chromium-linux-x86/fast/forms/time/time-appearance-pseudo-elements-expected.png: Added.
  • platform/chromium-linux/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-linux/fast/forms/date/date-appearance-pseudo-elements-expected.png:
  • platform/chromium-linux/fast/forms/month/month-appearance-pseudo-elements-expected.png:
  • platform/chromium-linux/fast/forms/time/time-appearance-pseudo-elements-expected.png:
  • platform/chromium-linux/fast/forms/week/week-appearance-pseudo-elements-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-lion/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac-lion/fast/forms/date/date-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac-lion/fast/forms/month/month-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac-lion/fast/forms/time/time-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac-lion/fast/forms/week/week-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/month/month-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/time/time-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/week/week-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/date/date-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac/fast/forms/month/month-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac/fast/forms/time/time-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac/fast/forms/week/week-appearance-pseudo-elements-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-win-xp/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-win/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-win/fast/forms/date/date-appearance-pseudo-elements-expected.png:
  • platform/chromium-win/fast/forms/month/month-appearance-pseudo-elements-expected.png:
  • platform/chromium-win/fast/forms/time/time-appearance-pseudo-elements-expected.png:
  • platform/chromium-win/fast/forms/week/week-appearance-pseudo-elements-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-locale-hebrew-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/time-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium/TestExpectations:
7:57 PM Changeset in webkit [141366] by gyuyoung.kim@samsung.com
  • 14 edits in trunk/Source/WebKit2

[WK2] Cleanup MessageID parameter after r141332
https://bugs.webkit.org/show_bug.cgi?id=108419

Unreviewed to fix build breaks.

r141332 didn't remove MessageID parameter on some features.
(battery, vibration, coordinate graphics, network info and so on)

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(CoordinatedLayerTreeHostProxy):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::didReceiveCoordinatedLayerTreeHostProxyMessage):

  • UIProcess/WebBatteryManagerProxy.h:

(WebBatteryManagerProxy):

  • UIProcess/WebNetworkInfoManagerProxy.h:

(WebNetworkInfoManagerProxy):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveMessage):

  • UIProcess/WebVibrationProxy.h:

(WebVibrationProxy):

  • UIProcess/soup/WebSoupRequestManagerProxy.h:

(WebSoupRequestManagerProxy):

  • WebProcess/Battery/WebBatteryManager.h:

(WebBatteryManager):

  • WebProcess/NetworkInfo/WebNetworkInfoManager.h:

(WebNetworkInfoManager):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::didReceiveCoordinatedLayerTreeHostMessage):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::didReceiveMessage):

  • WebProcess/soup/WebSoupRequestManager.h:

(WebSoupRequestManager):

7:38 PM Changeset in webkit [141365] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Re-enabling fast/workers/storage tests after fix(r141320).

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
7:14 PM Changeset in webkit [141364] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG bytecode parser should have more assertions about the status of local accesses
https://bugs.webkit.org/show_bug.cgi?id=108417

Reviewed by Mark Hahnenberg.

Assert some things that we already know to be true, just to reassure ourselves that they are true.
This is meant as a prerequisite for https://bugs.webkit.org/show_bug.cgi?id=108414, which will
make these rules even stricter.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::getArgument):

6:40 PM Changeset in webkit [141363] by abarth@webkit.org
  • 14 edits
    4 adds in trunk

The background HTML parser should be able to parse speculatively
https://bugs.webkit.org/show_bug.cgi?id=107753

Reviewed by Eric Seidel.

Source/WebCore:

This patch adds the ability for the foreground HTML parser to
invalidate speculative parsing done by the background HTML parser.
Currently, we're a bit overly agressive an invalidate all speculations
on document.write. We plan to refine that in the future.

Test: fast/parser/document-write-partial-script.html

  • WebCore.gypi:
  • html/parser/BackgroundHTMLInputStream.cpp: Added.

(WebCore):
(WebCore::BackgroundHTMLInputStream::BackgroundHTMLInputStream):
(WebCore::BackgroundHTMLInputStream::append):
(WebCore::BackgroundHTMLInputStream::close):
(WebCore::BackgroundHTMLInputStream::createCheckpoint):
(WebCore::BackgroundHTMLInputStream::rewindTo):

  • html/parser/BackgroundHTMLInputStream.h: Added.

(WebCore):
(BackgroundHTMLInputStream):
(WebCore::BackgroundHTMLInputStream::current):
(WebCore::BackgroundHTMLInputStream::Checkpoint::Checkpoint):
(Checkpoint):

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::append):
(WebCore):
(WebCore::BackgroundHTMLParser::resumeFrom):
(WebCore::BackgroundHTMLParser::markEndOfFile):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):
(WebCore::BackgroundHTMLParser::resumeFromPartial):

  • html/parser/BackgroundHTMLParser.h:

(BackgroundHTMLParser):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::didReceiveParsedChunkFromBackgroundParser):
(WebCore::HTMLDocumentParser::didFailSpeculation):
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
(WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):

  • html/parser/HTMLDocumentParser.h:

(ParsedChunk):
(HTMLDocumentParser):

LayoutTests:

  • fast/parser/document-write-partial-script-expected.txt: Added.
  • fast/parser/document-write-partial-script.html: Added.
6:38 PM Changeset in webkit [141362] by jberlin@webkit.org
  • 4 edits
    70 moves
    4 adds in trunk/LayoutTests

[Mac Lion] [WK2] tiled-drawing tests are being run when they shouldn't be
https://bugs.webkit.org/show_bug.cgi?id=106187

Reviewed by Ryosuke Niwa.

Since the feature is mac-wk2 only, move the tests from platform mac to platform mac-wk2 and just
skip the tests on Lion entirely.

  • platform/mac-lion/TestExpectations:
  • platform/mac-wk2/TestExpectations:
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-no-image-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-background-no-image-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-no-image.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-background-no-image.html.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.png: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.png.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-body-layer.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-body-layer.html.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-expected.png: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-expected.png.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.png: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.png.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-opacity-html.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-opacity-html.html.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.png: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.png.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-positioned.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-positioned.html.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.png: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.png.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-transformed-html.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-transformed-html.html.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.png: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.png.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-zoomed.html.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background.html.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-html-background-expected.png: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-html-background-expected.png.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-html-background-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-html-background-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-html-background.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-html-background.html.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.png: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.png.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-non-propagated-body-background.html.
  • platform/mac-wk2/tiled-drawing/fixed/absolute-inside-fixed-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/absolute-inside-fixed-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/absolute-inside-fixed.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/absolute-inside-fixed.html.
  • platform/mac-wk2/tiled-drawing/fixed/absolute-inside-out-of-view-fixed-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/absolute-inside-out-of-view-fixed-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/absolute-inside-out-of-view-fixed.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/absolute-inside-out-of-view-fixed.html.
  • platform/mac-wk2/tiled-drawing/fixed/fixed-in-overflow-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/fixed-in-overflow-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/fixed-in-overflow.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/fixed-in-overflow.html.
  • platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/fixed-position-out-of-view-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex.html.
  • platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/fixed-position-out-of-view.html.
  • platform/mac-wk2/tiled-drawing/fixed/four-bars-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/four-bars-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/four-bars-zoomed-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/four-bars-zoomed-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/four-bars-zoomed.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/four-bars-zoomed.html.
  • platform/mac-wk2/tiled-drawing/fixed/four-bars.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/four-bars.html.
  • platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/negative-scroll-offset-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-in-view-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/negative-scroll-offset-in-view-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-in-view.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/negative-scroll-offset-in-view.html.
  • platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/negative-scroll-offset.html.
  • platform/mac-wk2/tiled-drawing/fixed/nested-fixed-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/nested-fixed-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/nested-fixed.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/nested-fixed.html.
  • platform/mac-wk2/tiled-drawing/fixed/percentage-inside-fixed-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/percentage-inside-fixed-expected.txt.
  • platform/mac-wk2/tiled-drawing/fixed/percentage-inside-fixed.html: Renamed from LayoutTests/platform/mac/tiled-drawing/fixed/percentage-inside-fixed.html.
  • platform/mac-wk2/tiled-drawing/scrolling-tree-after-scroll-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/scrolling-tree-after-scroll-expected.txt.
  • platform/mac-wk2/tiled-drawing/scrolling-tree-after-scroll.html: Renamed from LayoutTests/platform/mac/tiled-drawing/scrolling-tree-after-scroll.html.
  • platform/mac-wk2/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt.
  • platform/mac-wk2/tiled-drawing/scrolling-tree-slow-scrolling.html: Renamed from LayoutTests/platform/mac/tiled-drawing/scrolling-tree-slow-scrolling.html.
  • platform/mac-wk2/tiled-drawing/sticky/negative-scroll-offset-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/sticky/negative-scroll-offset-expected.txt.
  • platform/mac-wk2/tiled-drawing/sticky/negative-scroll-offset.html: Renamed from LayoutTests/platform/mac/tiled-drawing/sticky/negative-scroll-offset.html.
  • platform/mac-wk2/tiled-drawing/sticky/sticky-horizontal-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/sticky/sticky-horizontal-expected.txt.
  • platform/mac-wk2/tiled-drawing/sticky/sticky-horizontal.html: Renamed from LayoutTests/platform/mac/tiled-drawing/sticky/sticky-horizontal.html.
  • platform/mac-wk2/tiled-drawing/sticky/sticky-vertical-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/sticky/sticky-vertical-expected.txt.
  • platform/mac-wk2/tiled-drawing/sticky/sticky-vertical.html: Renamed from LayoutTests/platform/mac/tiled-drawing/sticky/sticky-vertical.html.
  • platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/tile-coverage-after-scroll-expected.txt.
  • platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll.html: Renamed from LayoutTests/platform/mac/tiled-drawing/tile-coverage-after-scroll.html.
  • platform/mac-wk2/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt.
  • platform/mac-wk2/tiled-drawing/tile-coverage-scroll-to-bottom.html: Renamed from LayoutTests/platform/mac/tiled-drawing/tile-coverage-scroll-to-bottom.html.
  • platform/mac-wk2/tiled-drawing/tile-coverage-slow-scrolling-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/tile-coverage-slow-scrolling-expected.txt.
  • platform/mac-wk2/tiled-drawing/tile-coverage-slow-scrolling.html: Renamed from LayoutTests/platform/mac/tiled-drawing/tile-coverage-slow-scrolling.html.
  • platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/tiled-drawing-zoom-expected.txt.
  • platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt.
  • platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled.html: Renamed from LayoutTests/platform/mac/tiled-drawing/tiled-drawing-zoom-scrolled.html.
  • platform/mac-wk2/tiled-drawing/tiled-drawing-zoom.html: Renamed from LayoutTests/platform/mac/tiled-drawing/tiled-drawing-zoom.html.
  • platform/mac-wk2/tiled-drawing/use-tiled-drawing-expected.txt: Renamed from LayoutTests/platform/mac/tiled-drawing/use-tiled-drawing-expected.txt.
  • platform/mac-wk2/tiled-drawing/use-tiled-drawing.html: Renamed from LayoutTests/platform/mac/tiled-drawing/use-tiled-drawing.html.
  • platform/mac/TestExpectations:
6:30 PM Changeset in webkit [141361] by andersca@apple.com
  • 97 edits in trunk/Source/WebKit2

Remove MessageID from MessageSender
https://bugs.webkit.org/show_bug.cgi?id=108413

Reviewed by Andreas Kling.

This is another step towards eliminating MessageID.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
(WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):

  • NetworkProcess/NetworkConnectionToWebProcess.h:

(NetworkConnectionToWebProcess):

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::didReceiveMessage):
(WebKit::NetworkProcess::didReceiveSyncMessage):

  • NetworkProcess/NetworkProcess.h:

(NetworkProcess):

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::processIncomingMessage):
(CoreIPC::Connection::dispatchSyncMessage):
(CoreIPC::Connection::dispatchMessage):

  • Platform/CoreIPC/Connection.h:

(QueueClient):
(CoreIPC::Connection::waitForAndDispatchImmediately):

  • Platform/CoreIPC/MessageReceiver.h:

(MessageReceiver):
(CoreIPC::MessageReceiver::didReceiveSyncMessage):

  • Platform/CoreIPC/MessageReceiverMap.cpp:

(CoreIPC::MessageReceiverMap::dispatchMessage):
(CoreIPC::MessageReceiverMap::dispatchSyncMessage):

  • Platform/CoreIPC/MessageReceiverMap.h:

(MessageReceiverMap):

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::didReceiveMessage):

  • PluginProcess/PluginProcess.h:

(PluginProcess):

  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::didReceiveMessage):
(WebKit::WebProcessConnection::didReceiveSyncMessage):

  • PluginProcess/WebProcessConnection.h:

(WebProcessConnection):

  • Scripts/webkit2/messages.py:

(forward_declarations_and_headers):
(generate_message_handler):

  • Scripts/webkit2/messages_unittest.py:
  • Shared/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::didReceiveMessage):

  • Shared/Authentication/AuthenticationManager.h:

(AuthenticationManager):

  • Shared/ChildProcessProxy.cpp:

(WebKit::ChildProcessProxy::sendMessage):

  • Shared/ChildProcessProxy.h:

(ChildProcessProxy):
(WebKit::ChildProcessProxy::send):

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:

(CustomProtocolManager):

  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

(WebKit::CustomProtocolManager::didReceiveMessage):

  • Shared/Plugins/NPRemoteObjectMap.cpp:

(WebKit::NPRemoteObjectMap::didReceiveSyncMessage):

  • Shared/Plugins/NPRemoteObjectMap.h:

(NPRemoteObjectMap):

  • Shared/WebConnection.cpp:

(WebKit::WebConnection::didReceiveMessage):

  • Shared/WebConnection.h:

(WebConnection):

  • Shared/mac/SecItemShim.cpp:

(WebKit::SecItemShim::didReceiveMessageOnConnectionWorkQueue):

  • Shared/mac/SecItemShim.h:

(SecItemShim):

  • SharedWorkerProcess/SharedWorkerProcess.cpp:

(WebKit::SharedWorkerProcess::didReceiveMessage):

  • SharedWorkerProcess/SharedWorkerProcess.h:

(SharedWorkerProcess):

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didReceiveMessage):
(WebKit::DownloadProxy::didReceiveSyncMessage):

  • UIProcess/Downloads/DownloadProxy.h:

(DownloadProxy):

  • UIProcess/DrawingAreaProxy.cpp:

(WebKit::DrawingAreaProxy::didReceiveCoordinatedLayerTreeHostProxyMessage):

  • UIProcess/DrawingAreaProxy.h:

(DrawingAreaProxy):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::didReceiveCoordinatedLayerTreeHostProxyMessage):

  • UIProcess/DrawingAreaProxyImpl.h:
  • UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:

(CustomProtocolManagerProxy):

  • UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:

(WebKit::CustomProtocolManagerProxy::didReceiveMessage):

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didReceiveMessage):
(WebKit::NetworkProcessProxy::didReceiveSyncMessage):

  • UIProcess/Network/NetworkProcessProxy.h:

(NetworkProcessProxy):

  • UIProcess/Notifications/WebNotificationManagerProxy.h:

(WebNotificationManagerProxy):

  • UIProcess/Plugins/PluginProcessProxy.cpp:

(WebKit::PluginProcessProxy::didReceiveMessage):

  • UIProcess/Plugins/PluginProcessProxy.h:

(PluginProcessProxy):

  • UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:

(WebKit::SharedWorkerProcessProxy::didReceiveMessage):

  • UIProcess/SharedWorkers/SharedWorkerProcessProxy.h:

(SharedWorkerProcessProxy):

  • UIProcess/WebApplicationCacheManagerProxy.cpp:

(WebKit::WebApplicationCacheManagerProxy::didReceiveMessage):

  • UIProcess/WebApplicationCacheManagerProxy.h:

(WebApplicationCacheManagerProxy):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::dispatchMessage):
(WebKit::WebContext::dispatchSyncMessage):
(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):

  • UIProcess/WebContext.h:

(WebContext):

  • UIProcess/WebCookieManagerProxy.cpp:

(WebKit::WebCookieManagerProxy::didReceiveMessage):

  • UIProcess/WebCookieManagerProxy.h:

(WebCookieManagerProxy):

  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::didReceiveMessage):

  • UIProcess/WebDatabaseManagerProxy.h:

(WebDatabaseManagerProxy):

  • UIProcess/WebFullScreenManagerProxy.cpp:

(WebKit::WebFullScreenManagerProxy::didReceiveMessage):
(WebKit::WebFullScreenManagerProxy::didReceiveSyncMessage):

  • UIProcess/WebFullScreenManagerProxy.h:

(WebFullScreenManagerProxy):

  • UIProcess/WebGeolocationManagerProxy.h:

(WebGeolocationManagerProxy):

  • UIProcess/WebIconDatabase.h:

(WebIconDatabase):

  • UIProcess/WebKeyValueStorageManagerProxy.h:

(WebKeyValueStorageManagerProxy):

  • UIProcess/WebMediaCacheManagerProxy.h:

(WebMediaCacheManagerProxy):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveMessage):
(WebKit::WebPageProxy::didReceiveSyncMessage):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveMessage):
(WebKit::WebProcessProxy::didReceiveSyncMessage):
(WebKit::WebProcessProxy::didReceiveMessageOnConnectionWorkQueue):

  • UIProcess/WebProcessProxy.h:

(WebProcessProxy):

  • UIProcess/WebResourceCacheManagerProxy.h:

(WebResourceCacheManagerProxy):

  • UIProcess/mac/RemoteLayerTreeHost.h:

(RemoteLayerTreeHost):

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::didReceiveMessage):

  • UIProcess/mac/SecItemShimProxy.cpp:

(WebKit::SecItemShimProxy::didReceiveMessageOnConnectionWorkQueue):

  • UIProcess/mac/SecItemShimProxy.h:

(SecItemShimProxy):

  • WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:

(WebKit::WebApplicationCacheManager::didReceiveMessage):

  • WebProcess/ApplicationCache/WebApplicationCacheManager.h:

(WebApplicationCacheManager):

  • WebProcess/Cookies/WebCookieManager.cpp:

(WebKit::WebCookieManager::didReceiveMessage):

  • WebProcess/Cookies/WebCookieManager.h:

(WebCookieManager):

  • WebProcess/FullScreen/WebFullScreenManager.cpp:

(WebKit::WebFullScreenManager::didReceiveMessage):

  • WebProcess/FullScreen/WebFullScreenManager.h:

(WebFullScreenManager):

  • WebProcess/Geolocation/WebGeolocationManager.h:

(WebGeolocationManager):

  • WebProcess/IconDatabase/WebIconDatabaseProxy.h:

(WebIconDatabaseProxy):

  • WebProcess/MediaCache/WebMediaCacheManager.h:

(WebMediaCacheManager):

  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::didReceiveMessage):
(WebKit::NetworkProcessConnection::didReceiveSyncMessage):

  • WebProcess/Network/NetworkProcessConnection.h:

(NetworkProcessConnection):

  • WebProcess/Notifications/WebNotificationManager.h:

(WebNotificationManager):

  • WebProcess/Plugins/PluginProcessConnection.cpp:

(WebKit::PluginProcessConnection::didReceiveMessage):
(WebKit::PluginProcessConnection::didReceiveSyncMessage):

  • WebProcess/Plugins/PluginProcessConnection.h:

(PluginProcessConnection):

  • WebProcess/ResourceCache/WebResourceCacheManager.h:

(WebResourceCacheManager):

  • WebProcess/Storage/WebKeyValueStorageManager.h:

(WebKeyValueStorageManager):

  • WebProcess/WebCoreSupport/WebDatabaseManager.cpp:

(WebKit::WebDatabaseManager::didReceiveMessage):

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:

(WebDatabaseManager):

  • WebProcess/WebPage/DrawingArea.h:

(DrawingArea):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::didReceiveCoordinatedLayerTreeHostMessage):

  • WebProcess/WebPage/DrawingAreaImpl.h:

(DrawingAreaImpl):

  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/WebPage/EventDispatcher.h:

(EventDispatcher):

  • WebProcess/WebPage/LayerTreeHost.h:

(LayerTreeHost):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::didReceiveMessage):
(WebKit::WebPage::didReceiveSyncMessage):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

  • WebProcess/WebPage/WebPageGroupProxy.h:

(WebPageGroupProxy):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didReceiveSyncMessage):
(WebKit::WebProcess::didReceiveMessage):
(WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/WebProcess.h:

(WebProcess):

6:21 PM Changeset in webkit [141360] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebCore

[V8] Add IDL 'enum' support to CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=106553

Patch by Nils Barth <nbarth@google.com> on 2013-01-30
Reviewed by Kentaro Hara.

Add partial support for Web IDL enumerations in V8 bindings

Binding generators currently cannot handle IDL enumerations.
(An enumeration is an DOMString with a limited set of values, thus
treated internally as DOMString, with validation code added in
bindings.)
This adds support for enumerations in V8, adding validation checking
to setters.
It does not add validation checking to operations (no test case), and
does not add support in JSC.

Test: bindings/scripts/test/TestObj.idl (run-bindings-test)

  • bindings/scripts/IDLParser.pm:
    • Parser assumes all IDL definitions are interfaces; add support for other definitions
    • Parser parses but discards enum definitions; instead, record parsed data

(Parse): Sort definitions into interfaces and enums.
Remove "@definitions eq (someIdlDocument)" test, as this never
happens (fossil code) -- parseDefinitions returns list of definitions,
never a one-item list consisting of a document (no nested documents).
(unquoteString): new utility function to unquote StringToken (token
itself still quoted)
(parseEnum):
(parseEnumValueList):
(parseEnumValues):
(parseEnumOld):

  • bindings/scripts/CodeGenerator.pm:
    • Expose parsed enum data to backends (detect enums, list valid values)
    • Enums treated as DOMString type in internal function

(ProcessDocument):
(IsEnumType):
(ValidEnumValues):
(IsRefPtrType):

  • bindings/scripts/CodeGeneratorV8.pm:
    • Enums treated as DOMString type in internal functions
    • Add validation to setter

(GenerateNormalAttrSetter):
(GetNativeType):
(JSValueToNative):
(NativeToJSValue):
(ConvertToV8StringResource):

  • bindings/scripts/test/TestObj.idl:
    • New enum type and enum variable test for IDL enumeration support
  • bindings/scripts/test/V8/V8TestObj.cpp:
    • Generated code, desired behavior

(WebCore::TestObjV8Internal::enumAttrAttrGetter):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::enumAttrAttrSetter):
(WebCore):

  • bindings/scripts/test/JS/JSTestObj.cpp:
    • Generated code, currently incorrect

(WebCore):
(WebCore::jsTestObjEnumAttr):
(WebCore::setJSTestObjEnumAttr):

  • bindings/scripts/test/JS/JSTestObj.h:
    • Generated code, currently incorrect

(WebCore):

6:19 PM Changeset in webkit [141359] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

PDFPlugin: Update scrollbars if PDFLayerController's display mode changes
https://bugs.webkit.org/show_bug.cgi?id=108412
<rdar://problem/13002261>

Reviewed by Simon Fraser.

  • WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add pdfLayerController:didChangeDisplayMode:
  • WebProcess/Plugins/PDF/PDFPlugin.h: Add notifyDisplayModeChanged().
  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(-[WKPDFLayerControllerDelegate pdfLayerController:didChangeDisplayMode:]): Forward didChangeDisplayMode to notifyDisplayModeChanged.
(WebKit::PDFPlugin::notifyDisplayModeChanged): Update content size and scrollbar size when display mode changes.

6:17 PM Changeset in webkit [141358] by thakis@chromium.org
  • 6 edits in trunk/Source

[chromium] Build webkit with enable_web_intents set to 0.
https://bugs.webkit.org/show_bug.cgi?id=108408

Reviewed by Kentaro Hara.

I'll then make chromium build fine with that, then switch
enable_web_intents to 0, roll that into webkit, and then
actually remove the code hidden behind this flag.

Source/WebCore:

  • bindings/v8/custom/V8IntentCustom.cpp:

Source/WebKit/chromium:

  • WebKit.gyp:
  • features.gypi:
  • src/WebFrameImpl.cpp:
6:15 PM Changeset in webkit [141357] by leviw@chromium.org
  • 5 edits
    2 adds in trunk

[Chromium] WebPluginContainerImpl adding imbalanced touch handler refs
https://bugs.webkit.org/show_bug.cgi?id=108381

Reviewed by James Robinson.

Source/WebKit/chromium:

WebPluginContainerImpl would call Document::didAddTouchEventHandler every time the plugin requested
touch events. Some plugins make this request more than once, leading to an imbalance in Document's
touch event handler map, and a stale node pointer when the plugin is destroyed. This change
has WebPluginContainerImpl only add one ref for the plugin at a time.

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::requestTouchEventType):

Tools:

  • DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp: Adding an attribute that

tickles the case in WebPluginContainerImpl that imbalanced touch handler refs in Document.

LayoutTests:

  • platform/chromium/plugins/re-request-touch-events-crash-expected.txt: Added.
  • platform/chromium/plugins/re-request-touch-events-crash.html: Added.
6:13 PM Changeset in webkit [141356] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Start sending scrollType as NonBubblingGesture for flings
https://bugs.webkit.org/show_bug.cgi?id=108372

Patch by Yusuf Ozuysal <yusufo@google.com> on 2013-01-30
Reviewed by James Robinson.

Source/Platform:

Using the newly defined scrollType layerTreeHostImpl will stop bubbling flings to
parent layers. It will only bubble if the child layer is at the end of its scroll
range

  • chromium/public/WebInputHandlerClient.h:

Source/WebKit/chromium:

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):

6:11 PM Changeset in webkit [141355] by jparent@chromium.org
  • 6 edits in trunk/Tools

Add a concept of dashboard parameters that invalidate others
https://bugs.webkit.org/show_bug.cgi?id=108362

Reviewed by Dirk Pranke.

There are certain parameters to the dashboards, that when selected,
invalidate others, such as selecting the test type invalidates the
builder group. Add this concept to dashboard_base and allow specifc
dashboard to add their own invalidating parameters.

The result is that when the user takes a specific action, like changing
the test type, the builder would get reset to the default for the new
test type, rather than erroring or not matching the query param, as is
the current behavior.

Also deletes some unused code (selectBuilder).

  • TestResultServer/static-dashboards/dashboard_base.js:

(invalidateQueryParameters):
(setQueryParameter):

  • TestResultServer/static-dashboards/flakiness_dashboard.js:
  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
  • TestResultServer/static-dashboards/timeline_explorer.html:
  • TestResultServer/static-dashboards/treemap.html:
6:07 PM Changeset in webkit [141354] by commit-queue@webkit.org
  • 9 edits
    24 adds in trunk/LayoutTests

Tests for spellcheck behavior
https://bugs.webkit.org/show_bug.cgi?id=108405

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-01-30
Reviewed by Tony Chang.

  • editing/spelling/resources/util.js: Added. Boilerplate for spellcheck tests.
  • editing/spelling/spelling-double-clicked-word.html: Added. Spelling should work for double-clicked misspellings.
  • editing/spelling/spelling-double-clicked-word-with-underscores.html: Added. Underscores should be treated as whitespace: spelling should ignore them.
  • editing/spelling/spelling-exactly-selected-multiple-words.html: Added. Spelling should work when the user selects a multi-word misspelling exactly.
  • editing/spelling/spelling-exactly-selected-word.html: Added. Spelling should work when the user selects the misspelled word exactly.
  • editing/spelling/spelling-multiword-selection.html: Added. Spelling should be disabled when user selects multiple words that are not a single misspelling.
  • editing/spelling/spelling-should-select-multiple-words.html: Added. Spellcheck should select multi-word misspellings on context click.
  • editing/spelling/spelling-should-select-single-word.html: Added. Spellcheck should select the misspelled word on context click.
  • editing/spelling/spelling-subword-selection.html: Added. Spelling should be disabled when user selects a part of misspelling.
  • editing/spelling/spelling-with-punctuation-selection.html: Added. Punctuation marks should be treated as whitespace: spelling should ignore them.
  • editing/spelling/spelling-with-underscore-selection.html: Added. Underscores should be treated as whitespace: spelling should ignore them.
  • editing/spelling/spelling-with-whitespace-selection.html: Added. Spelling should ignore whitespace.
  • editing/spelling/spelling-double-clicked-word-expected.txt: Added.
  • editing/spelling/spelling-double-clicked-word-with-underscores-expected.txt: Added.
  • editing/spelling/spelling-exactly-selected-multiple-words-expected.txt: Added.
  • editing/spelling/spelling-exactly-selected-word-expected.txt: Added.
  • editing/spelling/spelling-multiword-selection-expected.txt: Added.
  • editing/spelling/spelling-should-select-multiple-words-expected.txt: Added.
  • editing/spelling/spelling-should-select-single-word-expected.txt: Added.
  • editing/spelling/spelling-subword-selection-expected.txt: Added.
  • editing/spelling/spelling-with-punctuation-selection-expected.txt: Added.
  • editing/spelling/spelling-with-underscore-selection-expected.txt: Added.
  • editing/spelling/spelling-with-whitespace-selection-expected.txt: Added.
  • platform/chromium/TestExpectations: Skip the tests until the platform implements the behavior.
  • platform/efl/TestExpectations: Skip the tests until the platform implements the behavior.
  • platform/gtk/TestExpectations: Skip the tests until the platform implements the behavior.
  • platform/mac/TestExpectations: Skip the tests until the platform implements the behavior.
  • platform/qt/TestExpectations: Skip the tests until the platform implements the behavior.
  • platform/wincairo/TestExpectations: Skip the tests until the platform implements the behavior.
  • platform/win/TestExpectations: Skip the tests until the platform implements the behavior.
  • platform/wk2/TestExpectations: Skip the tests until the platform implements the behavior.
6:07 PM Changeset in webkit [141353] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Disable process suppression of DumpRenderTree on Mac
https://bugs.webkit.org/show_bug.cgi?id=108400

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-01-30
Reviewed by Jessie Berlin.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(prepareConsistentTestingEnvironment): Take assertion to prevent
process suppression.

5:39 PM Changeset in webkit [141352] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Add WebFrame::visibleContentRect()
https://bugs.webkit.org/show_bug.cgi?id=108311

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-01-30
Reviewed by James Robinson.

  • public/WebFrame.h:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::visibleContentRect):
(WebKit):

  • src/WebFrameImpl.h:

(WebFrameImpl):

5:31 PM Changeset in webkit [141351] by jsbell@chromium.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: Remove speculative dispatchEvent crash fix now that root cause is addressed
https://bugs.webkit.org/show_bug.cgi?id=108131

Reviewed by Tony Chang.

A patch was landed in r140027 to prevent a null pointer crash in
IDBRequest::dispatchEvent and confirm the source of the crash (which
we couldn't repro locally). Following confirmation from user reports,
the root cause was tracked down to a race condition in MessageQueue,
and was fixed in r140483. This patch is no longer needed, and there's
always been an ASSERT in place to catch regressions while debugging.

No new tests - no behavior change.

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::dispatchEvent): Remove extraneous test.

5:26 PM Changeset in webkit [141350] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[BlackBerry] Store both proxy and host credentials simultaneously for NetworkJob
https://bugs.webkit.org/show_bug.cgi?id=108388

Patch by Joe Mason <jmason@rim.com> on 2013-01-30
Reviewed by Yong Li.

The platform NetworkRequest interface has been updated again, to store both a proxy and host
credential for each request (to prevent an infinite loop when a request authenticates against a
proxy but fails the host authentication, and then the followup contains the host credential but not
the proxy credential so it fails proxy authentication, so the next followup contains the proxy
credential but not the host credential...)

Complying with the new interface requires the host and proxy challenge to be stored separately in
webkit so they can both be added to the same NetworkRequest.

Internal PR: 281172
Internal Reviewer: Leo Yang

  • platform/network/ResourceHandleInternal.h:

(ResourceHandleInternal):

  • platform/network/blackberry/AuthenticationChallenge.h:

(WebCore::AuthenticationChallenge::hasCredentials):
(AuthenticationChallenge):

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::notifyAuthReceived):
(WebCore::NetworkJob::handleRedirect):
(WebCore::NetworkJob::sendRequestWithCredentials):
(WebCore::NetworkJob::storeCredentials):
(WebCore):
(WebCore::NetworkJob::purgeCredentials):
(WebCore::NetworkJob::notifyChallengeResult):
(WebCore::NetworkJob::updateCurrentWebChallenge):

  • platform/network/blackberry/NetworkJob.h:

(NetworkJob):

  • platform/network/blackberry/NetworkManager.cpp:

(WebCore::setAuthCredentials):
(WebCore):
(WebCore::NetworkManager::startJob):

5:22 PM Changeset in webkit [141349] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Enable tests for Windows EWS!
https://bugs.webkit.org/show_bug.cgi?id=107968.
Patch by Lucas Forschler.

Reviewed by Adam Barth.

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

(WinEWS):

5:08 PM Changeset in webkit [141348] by oliver@apple.com
  • 2 edits in trunk/Source/WebCore

Make JSEventListener more robust in the event of the compiled handler being released.
https://bugs.webkit.org/show_bug.cgi?id=108390

Reviewed by Michael Saboff.

It shouldn't be possible for a handler to be collected for any object that
might still trigger an event. Nonetheless it does still happen, and the
only point of failure that currently exists is compiling the handler.

This patch is mostly just assertions, but also removes a bunch of field
clearing that was previously being performed. Given we do seem to periodically
end up needing to recompile a handler this appears to be necessary. That
said there does not appear to be a memory hit from this as the event handlers
that make us use JSLazyEventListener are not frequently compiled, and the bulk
of the functions that are compiled end up causing us to keep the strings around
anyway.

  • bindings/js/JSLazyEventListener.cpp:

(WebCore::JSLazyEventListener::JSLazyEventListener):
(WebCore::JSLazyEventListener::initializeJSFunction):

5:05 PM Changeset in webkit [141347] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed, update expectations on Mac for textarea change.

  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch-expected.txt:
4:56 PM Changeset in webkit [141346] by haraken@chromium.org
  • 17 edits
    2 adds in trunk

Implement KeyboardEvent constructor
https://bugs.webkit.org/show_bug.cgi?id=108320

Reviewed by Adam Barth.

Source/WebCore:

This patch implements KeyboardEvent constructor under a DOM4_EVENTS_CONSTRUCTOR flag,
which is enabled on Chromium and Safari.

This significantly simplifies a code to construct a KeyboardEvent.

Before:

e = document.createEvent("KeyboardEvent");
e.initKeyboardEvent("keypress", true, true, null, false, false, false, false, 0, 0);

After:

e = new KeyboardEvent("keypress");

Editor's draft: https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm

  • 'char' and 'code' are not yet supported due to lack of WebCore implementation.
  • 'altGraphKey' is not supported because it's an extended attribute in WebKit

and is not speced.

  • Renamed keyboard event constant variables to avoid style errors.

Test: fast/events/constructors/keyboard-event-constructor.html

  • dom/KeyboardEvent.cpp:

(WebCore::keyLocationCode):
(WebCore::KeyboardEventInit::KeyboardEventInit):
(WebCore):
(WebCore::KeyboardEvent::KeyboardEvent):

  • dom/KeyboardEvent.h:

(WebCore):
(WebCore::KeypressCommand::KeypressCommand):
(KeypressCommand):
(KeyboardEventInit):
(KeyboardEvent):
(WebCore::KeyboardEvent::create):
(WebCore::KeyboardEvent::keyIdentifier):
(WebCore::KeyboardEvent::keyLocation):
(WebCore::KeyboardEvent::altGraphKey):
(WebCore::KeyboardEvent::keyEvent):
(WebCore::KeyboardEvent::keypressCommands):

  • dom/KeyboardEvent.idl:

Source/WebKit/chromium:

Renamed keyboard event constant variables to avoid style errors.

  • src/WebInputEventConversion.cpp:

(WebKit::WebKeyboardEventBuilder::WebKeyboardEventBuilder):

  • tests/WebInputEventConversionTest.cpp:
  • tests/WebInputEventFactoryTestGtk.cpp:

LayoutTests:

Editor's draft: https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm

This patch implements KeyboardEvent constructor under a DOM4_EVENTS_CONSTRUCTOR flag,
which is enabled on Chromium and Safari.

  • fast/dom/constructed-objects-prototypes-expected.txt:
  • fast/dom/dom-constructors-expected.txt:
  • fast/dom/dom-constructors.html:
  • fast/events/constructors/keyboard-event-constructor-expected.txt: Added.
  • fast/events/constructors/keyboard-event-constructor.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
4:55 PM Changeset in webkit [141345] by Lucas Forschler
  • 4 edits in branches/safari-536.28-branch/Source

Versioning.

4:54 PM Changeset in webkit [141344] by tony@chromium.org
  • 1 edit
    2 deletes in trunk/LayoutTests

[chromium] Unreviewed, update expectations Linux 32 textarea tests.

  • platform/chromium-linux-x86/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png: Removed.
  • platform/chromium-linux-x86/fast/forms/form-element-geometry-expected.png: Removed.
4:53 PM Changeset in webkit [141343] by Lucas Forschler
  • 1 copy in tags/Safari-536.28.10

New Tag.

4:50 PM Changeset in webkit [141342] by Christophe Dumez
  • 5 edits in trunk

Add a StringTypeAdapter for ASCIILiteral
https://bugs.webkit.org/show_bug.cgi?id=108338

Reviewed by Benjamin Poulain.

Source/WTF:

Add StringTypeAdapter for ASCIILiteral type so that concatenation of an
ASCIILiteral and a String using + operator is efficiently handled.

  • wtf/text/StringConcatenate.h:
  • wtf/text/StringOperators.h:

(WTF::operator+): Inline some of the operator+ functions that were not
yet.
(WTF):

Tools:

Add API tests for operator+() taking an ASCIILiteral.

  • TestWebKitAPI/Tests/WTF/StringOperators.cpp:

(TestWebKitAPI::TEST):

4:49 PM Changeset in webkit [141341] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Modify runtests.py script so that --skip-failing-tests option is not added when platform is cygwin.

Rubberstamped by Timothy Horton.

  • Scripts/webkitpy/tool/steps/runtests.py:

(RunTests.run):

4:32 PM Changeset in webkit [141340] by tony@chromium.org
  • 3 edits in trunk/LayoutTests

[chromium] Unreviewed, update expectations for Win/Mac
Rebaseline one more textarea test on Linux.

  • platform/chromium-linux/fast/forms/placeholder-position-expected.png:
  • platform/chromium/TestExpectations:
4:28 PM Changeset in webkit [141339] by pdr@google.com
  • 2 edits in trunk/LayoutTests

Mark tests as failing after r141303.

These tests were rebaselined before the bots had correct results. This change
marks these tests as [ ImageOnlyFailure Pass ] again while the bots catch up.

Unreviewed test expectations update.

  • platform/chromium/TestExpectations:
4:25 PM Changeset in webkit [141338] by jsbell@chromium.org
  • 5 edits in trunk/Source/WebCore

IndexedDB: IDBKeyRange::isOnlyKey() does pointer equality comparison
https://bugs.webkit.org/show_bug.cgi?id=107582

Reviewed by Tony Chang.

Per the bug title, IDBKeyRange::isOnlyKey() was testing the upper/lower pointers to
determine if this was a "trivial" range, which can be used to fast-path lookups. This
is insufficient in multi-process ports where range values may be thrown across the wire.
This is addressed by using the existing key equality tests.

In addition, the bounds type check incorrectly checked m_lowerType == LowerBoundOpen, which
meant the function could never return true (since upper == lower implies closed bounds).
Therefore, the fast-path case wasn't used even in single-process ports (e.g. DRT). The
slow-path case contructed a backing store cursor over the range, and exited early if the
cursor yielded nothing. The fast-path case doesn't need to create a cursor, so needs to
deal with lookup misses. This revealed two similar (but trivial) lurking bugs in the
fast-path.

No new behavior; covered by tests such as: storage/indexeddb/get-keyrange.html

  • Modules/indexeddb/IDBBackingStore.cpp:

(WebCore::IDBBackingStore::getRecord): Handle backing store read miss case.

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::GetOperation::perform): Handle backing store read miss case.

  • Modules/indexeddb/IDBKeyRange.cpp:

(WebCore::IDBKeyRange::isOnlyKey): Compare keys by value, not pointer, correct
type checks, add assertions.

  • Modules/indexeddb/IDBKeyRange.h:

(IDBKeyRange): Move implementation to CPP file.

4:05 PM Changeset in webkit [141337] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r141205.
http://trac.webkit.org/changeset/141205
https://bugs.webkit.org/show_bug.cgi?id=108353

Command for running tests on windows needs to be investigated.
(Requested by lforschler on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-30

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

(WinEWS):

4:03 PM Changeset in webkit [141336] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Never store empty credentials in NetworkJob::storeCredentials
https://bugs.webkit.org/show_bug.cgi?id=108387

Patch by Joe Mason <jmason@rim.com> on 2013-01-30
Reviewed by Yong Li.

There is a code path that can cause NetworkJob::storeCredentials to be called with empty
credentials, causing the existing credentials to be overwritten even though authentication
succeeded. PR 287791 has been filed to investigate why this happens; in the meantime, ignore empty
credentials.

Internal PR: 281172
Internally Reviewed By: Leo Yang

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::storeCredentials):

3:52 PM Changeset in webkit [141335] by ap@apple.com
  • 4 edits
    1 add in trunk/Source/WebKit2

<rdar://problem/12695827> PPT: Make loading file URLs work with a sandboxed NetworkProcess

Reviewed by Sam Weinig.

  • DerivedSources.make: Preprocess a .sb.in file to build the profile.
  • NetworkProcess/mac/NetworkProcessMac.mm: Don't prevent entering the sandbox. Override sandbox path, because service gets a differnt one by default.
  • WebKit2.xcodeproj/project.pbxproj:
  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: Added.
3:45 PM Changeset in webkit [141334] by aestes@apple.com
  • 4 edits in trunk/Source/WebCore

ContentFilter should be a ref-counted class
https://bugs.webkit.org/show_bug.cgi?id=108392

Reviewed by David Kilzer.

  • loader/MainResourceLoader.h:

(MainResourceLoader): Store a RefPtr to m_contentFilter.

  • platform/ContentFilter.h: Inherit from RefCounted<ContentFilter>.
  • platform/mac/ContentFilterMac.mm:

(WebCore::ContentFilter::create): Return a PassRefPtr.

3:34 PM Changeset in webkit [141333] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebCore

[mac] ImageBuffer should create accelerated buffers for small canvases, but we shouldn't force them to create compositing layers
https://bugs.webkit.org/show_bug.cgi?id=107804
<rdar://problem/11752381>

Reviewed by Simon Fraser.

Make all canvases IOSurface-backed if requested, instead of having a size threshold
under which we won't use accelerated canvas.

Make requiresCompositingForCanvas take the size of the canvas into account, using
the threshold which was previously in ImageBuffer to determine whether or not a
canvas should be forced into a compositing layer.

This improves canvas performance on some benchmarks
(http://www.mikechambers.com/html5/javascript/QuadTree/examples/collision.html, for example)
significantly, in cases where canvases which fall below the size limit
(and thus are unaccelerated) are being drawn rapidly into either accelerated
tiles or another accelerated canvas, by preventing excessive copying to/from the GPU.

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore):
(WebCore::ImageBuffer::ImageBuffer):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForCanvas):

3:30 PM Changeset in webkit [141332] by alecflett@chromium.org
  • 4 edits in trunk/Source/WebCore

IndexedDB: clean up scheduleTask return type
https://bugs.webkit.org/show_bug.cgi?id=108361

Reviewed by Tony Chang.

This is just a code simplification now that the
synchronous consumers of scheduleTask are gone.

No new tests: pure refactor.

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::setIndexesReady):
(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::scheduleTask):

  • Modules/indexeddb/IDBTransactionBackendImpl.h:

(WebCore::IDBTransactionBackendImpl::scheduleTask):
(IDBTransactionBackendImpl):

3:27 PM Changeset in webkit [141331] by tony@chromium.org
  • 37 edits in trunk

[Chromium] Enable textarea resize corner for tests
https://bugs.webkit.org/show_bug.cgi?id=108385

Reviewed by Ojan Vafai.

Tools:

We should test what we ship. Also, this makes us pass more tests in content_shell.

  • DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:

(WebTestRunner::WebPreferences::reset): Turn on resize corner.

LayoutTests:

  • compositing/overflow/textarea-scroll-touch-expected.txt:
  • fast/dom/shadow/shadowdom-for-textarea-with-placeholder-expected.html:

This ref test would overlay 2 textarea on top of each other. Turn off the resize corner on one of them.

  • fast/dom/shadow/shadowdom-for-textarea-without-shadow.html: Turn off the resize corner since the reference

file doesn't use a textarea.

  • fast/repaint/textarea-set-disabled-expected.png:
  • platform/chromium-linux/editing/inserting/4960120-1-expected.png:
  • platform/chromium-linux/editing/pasteboard/pasting-tabs-expected.png:
  • platform/chromium-linux/fast/block/float/overhanging-tall-block-expected.png:
  • platform/chromium-linux/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
  • platform/chromium-linux/fast/forms/basic-textareas-expected.png:
  • platform/chromium-linux/fast/forms/basic-textareas-quirks-expected.png:
  • platform/chromium-linux/fast/forms/form-element-geometry-expected.png:
  • platform/chromium-linux/fast/forms/linebox-overflow-in-textarea-padding-expected.png:
  • platform/chromium-linux/fast/forms/negativeLineHeight-expected.png:
  • platform/chromium-linux/fast/forms/textAreaLineHeight-expected.png:
  • platform/chromium-linux/fast/forms/textarea-align-expected.png:
  • platform/chromium-linux/fast/forms/textarea-placeholder-pseudo-style-expected.png:
  • platform/chromium-linux/fast/forms/textarea-placeholder-visibility-1-expected.png:
  • platform/chromium-linux/fast/forms/textarea-placeholder-visibility-2-expected.png:
  • platform/chromium-linux/fast/forms/textarea-scroll-height-expected.png:
  • platform/chromium-linux/fast/forms/textarea-scrollbar-expected.png:
  • platform/chromium-linux/fast/forms/textarea-scrolled-type-expected.png:
  • platform/chromium-linux/fast/forms/textarea-setinnerhtml-expected.png:
  • platform/chromium-linux/fast/forms/textarea-width-expected.png:
  • platform/chromium-linux/fast/overflow/overflow-x-y-expected.png:
  • platform/chromium-linux/fast/parser/entity-comment-in-textarea-expected.png:
  • platform/chromium-linux/fast/parser/open-comment-in-textarea-expected.png:
  • platform/chromium-linux/fast/replaced/width100percent-textarea-expected.png:
  • platform/chromium-linux/fast/table/003-expected.png:
  • platform/chromium-linux/fast/text/international/rtl-white-space-pre-wrap-expected.png:
  • platform/chromium-linux/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.png:
  • platform/chromium-linux/tables/mozilla/bugs/bug194024-expected.png:
  • platform/chromium-linux/tables/mozilla/bugs/bug30559-expected.png:
  • platform/chromium-linux/tables/mozilla/bugs/bug30692-expected.png:
  • platform/chromium/TestExpectations: Mark image failures for Mac and Win.
3:22 PM Changeset in webkit [141330] by Simon Fraser
  • 12 edits in trunk

Elements that dynamically become fixed sometimes jump to the top left on scrolling
https://bugs.webkit.org/show_bug.cgi?id=108389

Source/WebCore:

Reviewed by Beth Dakin.

When an element became position:fixed and gained a compositing layer
as a result, we would compute its viewport constraints (including the
last GraphicsLayer position) before we had actually updated the GraphicsLayer
geometry for the first time. This would cause a jump to 0,0 on scrolling.

Fix by removing the call to updateViewportConstraintStatus() just after
creating the backing. Instead, hook in to registerScrollingLayers(),
which is called on every geometry update, to update the viewport
constraints for this layer.

Tested via existing tests, which now show correct positions at last
layout.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::registerScrollingLayers):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateBacking):

LayoutTests:

Reviewed by Beth Dakin.

Update test results; these results now correctly reflect the last layout
positions.

  • platform/mac/tiled-drawing/fixed/absolute-inside-fixed-expected.txt:
  • platform/mac/tiled-drawing/fixed/absolute-inside-out-of-view-fixed-expected.txt:
  • platform/mac/tiled-drawing/fixed/fixed-in-overflow-expected.txt:
  • platform/mac/tiled-drawing/fixed/four-bars-expected.txt:
  • platform/mac/tiled-drawing/fixed/nested-fixed-expected.txt:
  • platform/mac/tiled-drawing/fixed/percentage-inside-fixed-expected.txt:
  • platform/mac/tiled-drawing/sticky/sticky-horizontal-expected.txt:
  • platform/mac/tiled-drawing/sticky/sticky-vertical-expected.txt:
3:19 PM Changeset in webkit [141329] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Revert r138912, the right fix for https://bugs.webkit.org/show_bug.cgi?id=106187 is in
r141323.

  • platform/mac-wk2/TestExpectations:
3:16 PM Changeset in webkit [141328] by abarth@webkit.org
  • 5 edits in trunk/Source/WebCore

HTMLDocumentParser::insert should be aware of threaded parsing
https://bugs.webkit.org/show_bug.cgi?id=107764

Reviewed by Eric Seidel.

This patch is an incremental step towards recovering from
document.write invalidating our speculative parsing buffer. The
approach I've taken is to make it possible to transfer the
HTMLDocumentParser's HTMLTokenizer and HTMLToken to the background
thread. To make that possible, I've taught the HTMLDocumentParser how
to operate without a tokenizer or a token.

Not having a tokenizer or a token while parsing in the background also
helps us avoid accidentially feeding input to the main thread's
tokenizer when we're supposed to feed it to the background thread.

This patch shouldn't have any behavior change (other than possibly
fixing a crash in fast/parser when threading parsing is enabled).

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore::HTMLDocumentParser::didFailSpeculation):
(WebCore):
(WebCore::HTMLDocumentParser::insert):
(WebCore::HTMLDocumentParser::finish):
(WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::constructTree):
(WebCore::HTMLTreeBuilder::processStartTagForInBody):
(WebCore::HTMLTreeBuilder::processEndTag):
(WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
(WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
(WebCore::HTMLTreeBuilder::processScriptStartTag):

  • html/parser/TextDocumentParser.cpp:

(WebCore::TextDocumentParser::TextDocumentParser):

3:11 PM Changeset in webkit [141327] by rafaelw@chromium.org
  • 6 edits in trunk

[HTMLTemplateElement] prevent the parser from removing nodes from the content when the foster agency is processing formatting elements
https://bugs.webkit.org/show_bug.cgi?id=108377

Reviewed by Adam Barth.

Source/WebCore:

https://dvcs.w3.org/hg/webcomponents/raw-file/50ce1f368c1a/spec/templates/index.html#in-body-addition

callTheAdoptionAgency now appends to the template's content when it previously would have appended to the template element itself.

New test added to html5lib.

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::parserInsertBefore):
(WebCore::ContainerNode::parserAppendChild):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

LayoutTests:

Note that dump-as-markup.js is modified here to put both template content and its direct children. This was an oversight and fixing it will make it
easier to spot parse errors like ones that arise from this bug, where nodes are appended directly to the template element.

  • html5lib/resources/template.dat:
  • resources/dump-as-markup.js:

(Markup._get):

3:06 PM Changeset in webkit [141326] by pdr@google.com
  • 5 edits
    4 deletes in trunk/LayoutTests

Update fast/backgrounds/size/contain-and-cover-zoomed test expectations.

Unreviewed update of test expectations.

  • platform/chromium-linux-x86/fast/backgrounds/size/contain-and-cover-zoomed-expected.png: Removed.
  • platform/chromium-linux/fast/backgrounds/size/contain-and-cover-zoomed-expected.png:
  • platform/chromium-mac-lion/fast/backgrounds/size/contain-and-cover-zoomed-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/backgrounds/size/contain-and-cover-zoomed-expected.png: Removed.
  • platform/chromium-mac/fast/backgrounds/size/contain-and-cover-zoomed-expected.png:
  • platform/chromium-win-xp/fast/backgrounds/size/contain-and-cover-zoomed-expected.png: Removed.
  • platform/chromium-win/fast/backgrounds/size/contain-and-cover-zoomed-expected.png:
  • platform/chromium/TestExpectations:
3:00 PM Changeset in webkit [141325] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

Coordinated Graphics: LayerTreeRenderer manages the surface of UpdateAtlas.
https://bugs.webkit.org/show_bug.cgi?id=107224

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-30
Reviewed by Benjamin Poulain.

Currently, CoordinatedLayerTreeHostProxy manages the surface of UpdateAtlas, but
all other resources are managed by LayerTreeRenderer. This patch matches the
surface of UpdateAtlas to other resources.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::updateTileForLayer):
(WebKit::CoordinatedLayerTreeHostProxy::createUpdateAtlas):
(WebKit::CoordinatedLayerTreeHostProxy::removeUpdateAtlas):
(WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(CoordinatedLayerTreeHostProxy):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::updateTile):
(WebKit::LayerTreeRenderer::createUpdateAtlas):
(WebKit):
(WebKit::LayerTreeRenderer::removeUpdateAtlas):
(WebKit::LayerTreeRenderer::purgeGLResources):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(TileUpdate):
(WebKit::LayerTreeRenderer::TileUpdate::TileUpdate):
(LayerTreeRenderer):

2:58 PM Changeset in webkit [141324] by pdr@google.com
  • 4 edits in trunk/LayoutTests

Update chromium-mac svg/zoom test expectations after r141303

Unreviewed update of test expectations.

  • platform/chromium-mac-lion/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac-snowleopard/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
2:49 PM Changeset in webkit [141323] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Don't run the tiled-drawing tests on Lion WK2.

  • platform/mac-wk2/TestExpectations:

Even though the platform/mac/tiled-drawing tests were skipped in the Lion TestExpectations
file, the Pass value in the mac-wk2 TestExpectations file was causing them to be run on
Lion WK2. Explicity skip the tests on Lion here as well.

2:48 PM Changeset in webkit [141322] by andersca@apple.com
  • 75 edits in trunk/Source/WebKit2

Remove MessageID parameter from generated message receivers
https://bugs.webkit.org/show_bug.cgi?id=108379

Reviewed by Beth Dakin.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
(WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):

  • NetworkProcess/NetworkConnectionToWebProcess.h:

(NetworkConnectionToWebProcess):

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::didReceiveMessage):

  • NetworkProcess/NetworkProcess.h:

(NetworkProcess):

  • PluginProcess/PluginControllerProxy.h:

(PluginControllerProxy):

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::didReceiveMessage):

  • PluginProcess/PluginProcess.h:

(PluginProcess):

  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::didReceiveMessage):
(WebKit::WebProcessConnection::didReceiveSyncMessage):

  • PluginProcess/WebProcessConnection.h:

(WebProcessConnection):

  • Scripts/webkit2/messages.py:

(generate_message_handler):

  • Scripts/webkit2/messages_unittest.py:
  • Shared/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::didReceiveMessage):

  • Shared/Authentication/AuthenticationManager.h:

(AuthenticationManager):

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:

(CustomProtocolManager):

  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

(WebKit::CustomProtocolManager::didReceiveMessage):

  • Shared/Plugins/NPObjectMessageReceiver.h:

(NPObjectMessageReceiver):

  • Shared/Plugins/NPRemoteObjectMap.cpp:

(WebKit::NPRemoteObjectMap::didReceiveSyncMessage):

  • Shared/WebConnection.cpp:

(WebKit::WebConnection::didReceiveMessage):

  • Shared/WebConnection.h:

(WebConnection):

  • Shared/mac/SecItemShim.cpp:

(WebKit::SecItemShim::didReceiveMessageOnConnectionWorkQueue):

  • Shared/mac/SecItemShim.h:

(SecItemShim):

  • SharedWorkerProcess/SharedWorkerProcess.cpp:

(WebKit::SharedWorkerProcess::didReceiveMessage):

  • SharedWorkerProcess/SharedWorkerProcess.h:

(SharedWorkerProcess):

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didReceiveMessage):
(WebKit::DownloadProxy::didReceiveSyncMessage):

  • UIProcess/Downloads/DownloadProxy.h:

(DownloadProxy):

  • UIProcess/DrawingAreaProxy.h:

(DrawingAreaProxy):

  • UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:

(CustomProtocolManagerProxy):

  • UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:

(WebKit::CustomProtocolManagerProxy::didReceiveMessage):

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didReceiveMessage):

  • UIProcess/Network/NetworkProcessProxy.h:

(NetworkProcessProxy):

  • UIProcess/Plugins/PluginProcessProxy.cpp:

(WebKit::PluginProcessProxy::didReceiveMessage):

  • UIProcess/Plugins/PluginProcessProxy.h:

(PluginProcessProxy):

  • UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:

(WebKit::SharedWorkerProcessProxy::didReceiveMessage):

  • UIProcess/SharedWorkers/SharedWorkerProcessProxy.h:

(SharedWorkerProcessProxy):

  • UIProcess/WebApplicationCacheManagerProxy.cpp:

(WebKit::WebApplicationCacheManagerProxy::didReceiveMessage):

  • UIProcess/WebApplicationCacheManagerProxy.h:

(WebApplicationCacheManagerProxy):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):

  • UIProcess/WebContext.h:

(WebContext):

  • UIProcess/WebCookieManagerProxy.cpp:

(WebKit::WebCookieManagerProxy::didReceiveMessage):

  • UIProcess/WebCookieManagerProxy.h:

(WebCookieManagerProxy):

  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::didReceiveMessage):

  • UIProcess/WebDatabaseManagerProxy.h:

(WebDatabaseManagerProxy):

  • UIProcess/WebFullScreenManagerProxy.cpp:

(WebKit::WebFullScreenManagerProxy::didReceiveMessage):
(WebKit::WebFullScreenManagerProxy::didReceiveSyncMessage):

  • UIProcess/WebFullScreenManagerProxy.h:

(WebFullScreenManagerProxy):

  • UIProcess/WebInspectorProxy.h:

(WebInspectorProxy):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveMessage):
(WebKit::WebPageProxy::didReceiveSyncMessage):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveMessage):
(WebKit::WebProcessProxy::didReceiveSyncMessage):
(WebKit::WebProcessProxy::didReceiveMessageOnConnectionWorkQueue):

  • UIProcess/WebProcessProxy.h:

(WebProcessProxy):

  • UIProcess/mac/RemoteLayerTreeHost.h:

(RemoteLayerTreeHost):

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::didReceiveMessage):

  • UIProcess/mac/SecItemShimProxy.cpp:

(WebKit::SecItemShimProxy::didReceiveMessageOnConnectionWorkQueue):

  • UIProcess/mac/SecItemShimProxy.h:

(SecItemShimProxy):

  • WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:

(WebKit::WebApplicationCacheManager::didReceiveMessage):

  • WebProcess/ApplicationCache/WebApplicationCacheManager.h:

(WebApplicationCacheManager):

  • WebProcess/Cookies/WebCookieManager.cpp:

(WebKit::WebCookieManager::didReceiveMessage):

  • WebProcess/Cookies/WebCookieManager.h:

(WebCookieManager):

  • WebProcess/FullScreen/WebFullScreenManager.cpp:

(WebKit::WebFullScreenManager::didReceiveMessage):

  • WebProcess/FullScreen/WebFullScreenManager.h:

(WebFullScreenManager):

  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::didReceiveMessage):
(WebKit::NetworkProcessConnection::didReceiveSyncMessage):

  • WebProcess/Network/WebResourceLoader.h:

(WebResourceLoader):

  • WebProcess/Plugins/PluginProcessConnection.cpp:

(WebKit::PluginProcessConnection::didReceiveMessage):
(WebKit::PluginProcessConnection::didReceiveSyncMessage):

  • WebProcess/Plugins/PluginProcessConnection.h:

(PluginProcessConnection):

  • WebProcess/Plugins/PluginProxy.h:

(PluginProxy):

  • WebProcess/WebCoreSupport/WebDatabaseManager.cpp:

(WebKit::WebDatabaseManager::didReceiveMessage):

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:

(WebDatabaseManager):

  • WebProcess/WebPage/DrawingArea.h:

(DrawingArea):

  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/WebPage/EventDispatcher.h:

(EventDispatcher):

  • WebProcess/WebPage/WebInspector.h:

(WebInspector):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::didReceiveMessage):
(WebKit::WebPage::didReceiveSyncMessage):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didReceiveMessage):
(WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/WebProcess.h:

(WebProcess):

2:46 PM Changeset in webkit [141321] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Objective-C API: JSContext's dealloc causes ASSERT due to ordering of releases
https://bugs.webkit.org/show_bug.cgi?id=107978

Reviewed by Filip Pizlo.

We need to add the Identifier table save/restore in JSContextGroupRelease so that we
have the correct table if we end up destroying the JSGlobalData/Heap.

  • API/JSContextRef.cpp:

(JSContextGroupRelease):

2:45 PM Changeset in webkit [141320] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebCore

DatabaseContext should implement ThreadSafeRefCounted.
https://bugs.webkit.org/show_bug.cgi?id=108285.

Reviewed by Alexey Proskuryakov.

DatabaseManager::interruptAllDatabasesForContext() can ref a
DatabaseContext from another thread. Hence, the DatabaseContext needs
to be a ThreadSafeRefCounted instead of a RefCounted.

No new tests.

  • Modules/webdatabase/DatabaseContext.h:
2:44 PM Changeset in webkit [141319] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][UNIX] g_spawn_sync() generates warning in PluginProcessProxy::scanPlugin()
https://bugs.webkit.org/show_bug.cgi?id=108371

Patch by Christophe Dumez <dchris@gmail.com> on 2013-01-30
Reviewed by Martin Robinson.

g_spawn_sync() was sometimes displaying a warning about the SIGCHLD
signal disposition not being set to SIG_DFL, despite the fix in r133755.
The reason was that the code was only setting the disposition to SIG_DFL
if the previous disposition was SIG_IGN.

In this patch, we set the SIGCHLD signal disposition to SIG_DFL, no
matter what its previous disposition was. Also, the signal disposition
is now restored to its previous state after the call to g_spawn_sync()
to avoid side effects. Finally, we now use SIGCHLD instead of SIDCLD
since this is the more compatible POSIX name.

  • UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:

(WebKit::spawnProcessSync):
(WebKit):
(WebKit::PluginProcessProxy::scanPlugin):

2:43 PM Changeset in webkit [141318] by haraken@chromium.org
  • 15 edits
    2 adds in trunk

Implement WheelEvent constructor
https://bugs.webkit.org/show_bug.cgi?id=108303

Reviewed by Adam Barth.

Source/WebCore:

Editor's draft: https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm

This patch implements UIEvent constructor under a DOM4_EVENTS_CONSTRUCTOR flag,
which is enabled on Chromium and Safari.

Test: fast/events/constructors/wheel-event-constructor.html

  • dom/WheelEvent.cpp:

(WebCore::WheelEventInit::WheelEventInit):
(WebCore):
(WebCore::WheelEvent::WheelEvent):
(WebCore::WheelEvent::initWheelEvent):

  • dom/WheelEvent.h:

(WheelEventInit):
(WebCore):
(WheelEvent):
(WebCore::WheelEvent::create):
(WebCore::WheelEvent::wheelDelta):
(WebCore::WheelEvent::wheelDeltaX):
(WebCore::WheelEvent::wheelDeltaY):
(WebCore::WheelEvent::rawDeltaX):
(WebCore::WheelEvent::rawDeltaY):
(WebCore::WheelEvent::granularity):
(WebCore::WheelEvent::webkitDirectionInvertedFromDevice):
(WebCore::WheelEvent::isHorizontal):

  • dom/WheelEvent.idl:

Source/WebKit/chromium:

This patch just renames an enum value to avoid style check error.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::scrollBy):

LayoutTests:

Editor's draft: https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm

This patch implements UIEvent constructor under a DOM4_EVENTS_CONSTRUCTOR flag,
which is enabled on Chromium and Safari.

Test: fast/events/constructors/wheel-event-constructor.html

  • fast/events/constructors/wheel-event-constructor-expected.txt: Added.
  • fast/events/constructors/wheel-event-constructor.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
2:41 PM Changeset in webkit [141317] by jchaffraix@webkit.org
  • 3 edits
    4 adds in trunk

[CSS Grid Layout] Support 'auto' sized grid items
https://bugs.webkit.org/show_bug.cgi?id=103332

Reviewed by Tony Chang.

Source/WebCore:

Tests: fast/css-grid-layout/auto-content-resolution-columns.html

fast/css-grid-layout/auto-content-resolution-rows.html

The specification interprets 'auto' as minmax(min-content, max-content).
Because we stored the grid definitions as an 'auto' length, we wouldn't
handle it properly during layout.

This change makes us do the translation when we query the information for
layout.

  • rendering/style/GridTrackSize.h:

(WebCore::GridTrackSize::minTrackBreadth):
(WebCore::GridTrackSize::maxTrackBreadth):
Translate 'auto' to minmax(min-content, max-content). This works as getComputedStyle
still sees the GridTrackSize as a single length and thus query length() instead of the
individual component of minmax().

LayoutTests:

  • fast/css-grid-layout/auto-content-resolution-columns-expected.txt: Added.
  • fast/css-grid-layout/auto-content-resolution-columns.html: Added.
  • fast/css-grid-layout/auto-content-resolution-rows-expected.txt: Added.
  • fast/css-grid-layout/auto-content-resolution-rows.html: Added.
2:39 PM Changeset in webkit [141316] by alecflett@chromium.org
  • 4 edits
    3 adds in trunk

IndexedDB: Avoid crashing when deleting indexes
https://bugs.webkit.org/show_bug.cgi?id=108356

Reviewed by Tony Chang.

Source/WebCore:

It is reasonable that the backend aborts a transaction before
the frontend is aware, depending on the timing of events. This
allows the transactionId to be invalid rather than asserting.

Test: storage/indexeddb/createIndex-after-failure.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::createObjectStore):
(WebCore::IDBDatabaseBackendImpl::deleteObjectStore):
(WebCore::IDBDatabaseBackendImpl::createIndex):
(WebCore::IDBDatabaseBackendImpl::deleteIndex):
(WebCore::IDBDatabaseBackendImpl::get):
(WebCore::IDBDatabaseBackendImpl::put):
(WebCore::IDBDatabaseBackendImpl::setIndexKeys):
(WebCore::IDBDatabaseBackendImpl::setIndexesReady):
(WebCore::IDBDatabaseBackendImpl::openCursor):
(WebCore::IDBDatabaseBackendImpl::count):
(WebCore::IDBDatabaseBackendImpl::deleteRange):
(WebCore::IDBDatabaseBackendImpl::clear):

LayoutTests:

This test works on an edge case around the asynchronous
creation/deletion of indexes that used to crash. It doesn't fail/crash even
without this patch but was the test condition that uncovered the overall problem
before https://bugs.webkit.org/show_bug.cgi?id=107311 changed the timing of
some of the events.

  • storage/indexeddb/createIndex-after-failure.html: Added.
  • storage/indexeddb/resources/createIndex-after-failure.js: Added.

(sleep):
(prepareDatabase):
(deleteIndexAfterGet):

  • storage/indexeddb/resources/shared.js:

(.requests.forEach):
(waitForRequests):

  • storage/indexeddb/createIndex-after-failure.html: Added.
  • storage/indexeddb/resources/createIndex-after-failure.js: Added.

(prepareDatabase):
(deleteIndexAfterGet):

  • storage/indexeddb/resources/shared.js:

(.requests.forEach):
(waitForRequests):

2:36 PM Changeset in webkit [141315] by haraken@chromium.org
  • 5 edits in trunk/Source/WebCore

isSameAsCurrentState() should take SerializedScriptValue* instead of PassRefPtr
https://bugs.webkit.org/show_bug.cgi?id=107904

Reviewed by Darin Adler.

Applied Darin's comment: https://bugs.webkit.org/show_bug.cgi?id=107904#c5

No tests. No change in behavior.

  • bindings/js/JSPopStateEventCustom.cpp:

(WebCore::JSPopStateEvent::state):

  • bindings/v8/custom/V8PopStateEventCustom.cpp:

(WebCore::V8PopStateEvent::stateAccessorGetter):

  • page/History.cpp:

(WebCore::History::isSameAsCurrentState):

  • page/History.h:

(History):

2:32 PM Changeset in webkit [141314] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Remove unnecessary setAnimating() method
https://bugs.webkit.org/show_bug.cgi?id=107495

Patch by Douglas Stockwell <dstockwell@chromium.org> on 2013-01-30
Reviewed by Dean Jackson.

The corresponding accessor and uses were removed in r39211.

No new tests: no change in behaviour.

  • page/animation/AnimationBase.cpp:

(WebCore::AnimationBase::AnimationBase):

  • page/animation/AnimationBase.h:

(AnimationBase):

  • page/animation/CompositeAnimation.cpp:
  • page/animation/CompositeAnimation.h:
  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::animate):

  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::animate):

2:30 PM Changeset in webkit [141313] by esprehn@chromium.org
  • 4 edits in trunk/Source/WebCore

Clean up interface to ShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=108300

Reviewed by Dimitri Glazkov.

Lots of general clean up to ShadowRoot removing unused headers and forward
declarations, moving short inline methods into the class definition so it's
easier to understand what methods do what, and replacing macros with methods
with inline methods.

No new tests, just refactoring.

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::addShadowRoot):
(WebCore::ElementShadow::removeAllShadowRoots):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::ShadowRoot):
(WebCore::ShadowRoot::setInnerHTML): Use isOrphan instead of macro.
(WebCore::ShadowRoot::setApplyAuthorStyles): Use isOrphan instead of macro.
(WebCore::ShadowRoot::setResetStyleInheritance): Use isOrphan instead of macro.
(WebCore::ShadowRoot::childrenChanged): Use isOrphan instead of macro.

  • dom/ShadowRoot.h:

(WebCore::ShadowRoot::setHost): Removed.
(WebCore::ShadowRoot::host):
(WebCore::ShadowRoot::owner):
(ShadowRoot):
(WebCore::ShadowRoot::isOrphan): Replacement of GuardOrphanShadowRoot macro.

2:30 PM Changeset in webkit [141312] by ddkilzer@apple.com
  • 2 edits in trunk/Source/ThirdParty/ANGLE

Remove useless comment from Base.xcconfig

Rubber-stamped by Mark Rowe.

  • Configurations/Base.xcconfig: Remove comment.
2:29 PM Changeset in webkit [141311] by pdr@google.com
  • 7 edits in trunk/LayoutTests

Update svg/zoom test expectations after r141303


Unreviewed update of test expectations.

  • platform/chromium-linux/svg/zoom/page/zoom-background-images-expected.png:
  • platform/chromium-linux/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-linux/svg/zoom/page/zoom-svg-as-background-with-relative-size-expected.png:
  • platform/chromium-win/svg/zoom/page/zoom-background-images-expected.png:
  • platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-win/svg/zoom/page/zoom-svg-as-background-with-relative-size-expected.png:
2:27 PM Changeset in webkit [141310] by commit-queue@webkit.org
  • 16 edits in trunk/Source/WebKit2

[EFL][Qt][WK2] We should consider a page scale factor in WebCore instead of our own scale factor.
https://bugs.webkit.org/show_bug.cgi?id=105978

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-30
Reviewed by Simon Fraser.

Currently, PageViewportController sends a page scale factor to Coordinated
Graphics System regardless of the page scale factor in WebCore. This patch makes
Coordinated Graphics System use the page scale factor in WebCore to match other
ports.

When it is needed to change a page scale, PageViewportController sends the scale
to Page in Web Process via WebPageProxy::scalePage. When the page scale in
WebCore is changed, CoordinatedGraphicsLayer gets notified via
deviceOrPageScaleFactorChanged callback. CoordinatedGraphicsLayer uses the page
scale factor like previous our own scale factor.

We set true to applyDeviceScaleFactorInCompositor and
ApplyPageScaleFactorInCompositor in Settings like chromium, because
TiledBackingStore that is a backing store of each GraphicsLayer applies the
scale to our raster graphics engines instead of applying the scale to the local
transform of each render object.

Thank Kenneth Rohde Christiansen for implementing the base patch of this patch.

No new tests. Covered by existing tests.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewLegacyPrivate::updateViewportSize):

  • UIProcess/API/qt/raw/qrawwebview.cpp:

(QRawWebView::setSize):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):

Does not receive a pageScaleFactor argument because
PageViewportController sends a page scale factor to Page.
However, this method still receives a scroll position because we
enable delegates scrolling.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(CoordinatedLayerTreeHostProxy):

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::setVisibleContentsRect):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):

  • UIProcess/DrawingAreaProxyImpl.h:
  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::didRenderFrame):
(WebKit::PageViewportController::didChangeContentsVisibility):
(WebKit::PageViewportController::syncVisibleContents):
(WebKit::PageViewportController::applyScaleAfterRenderingContents):
(WebKit::PageViewportController::applyPositionAfterRenderingContents):

  • UIProcess/efl/PageClientLegacyImpl.cpp:

(WebKit::PageClientLegacyImpl::updateViewportSize):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::deviceOrPageScaleFactorChanged):
(WebCore::CoordinatedGraphicsLayer::effectiveContentsScale):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
(WebKit::CoordinatedLayerTreeHost::deviceScaleFactor):
(WebKit):
(WebKit::CoordinatedLayerTreeHost::pageScaleFactor):
(WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

(CoordinatedLayerTreeHost):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::setUseFixedLayout):

2:27 PM Changeset in webkit [141309] by Lucas Forschler
  • 12 edits in branches/safari-536.28-branch

Merged r138606. <rdar://problem/13117769>

2:24 PM Changeset in webkit [141308] by ddkilzer@apple.com
  • 6 edits
    1 add in trunk/Source/WTF

Upstream iOS build file changes for WTF
<http://webkit.org/b/108221>

Reviewed by Mark Rowe.

  • Configurations/Base.xcconfig:
  • Import iOS.xcconfig.
  • Remove VALID_ARCHS. Modern Xcodes define these correctly.
  • Make HEADER_SEARCH_PATHS work with iOS Simulator builds.
  • Add SUPPORTED_PLATFORMS so both Mac and iOS SDKs appear in schemes.
  • Define INSTALL_PATH when building for macosx SDK.
  • Configurations/CopyWTFHeaders.xcconfig:
  • Make PRIVATE_HEADERS_FOLDER_PATH work with iOS Simulator builds.
  • Configurations/DebugRelease.xcconfig:
  • Simplify ARCHS. This works correctly on 32-bit-only SDKs.
  • Configurations/WTF.xcconfig:
  • Fix installation directory for iOS Simulator builds by defining INSTALL_PATH_ACTUAL.
  • Configurations/iOS.xcconfig: Add.
  • WTF.xcodeproj/project.pbxproj:
  • Add iOS.xcconfig to the project.
2:20 PM Changeset in webkit [141307] by enne@google.com
  • 2 edits in trunk/LayoutTests

[Chromium] Temporarily change expectations for tests affected by tiling shaders
https://bugs.webkit.org/show_bug.cgi?id=108367

Patch by Brian Anderson <brianderson@chromium.org> on 2013-01-30
Reviewed by Adrienne Walker.

  • platform/chromium/TestExpectations:
2:17 PM Changeset in webkit [141306] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Apple's internal PLT test suite doesn't finish after r141136
https://bugs.webkit.org/show_bug.cgi?id=108380

Reviewed by Alexey Proskuryakov.

Temporarily disable the feature to see if that fixes it.

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource):

2:16 PM Changeset in webkit [141305] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Objective-C API: exceptionHandler needs to be released in JSContext dealloc
https://bugs.webkit.org/show_bug.cgi?id=108378

Reviewed by Filip Pizlo.

JSContext has a (copy) exceptionHandler property that it doesn't release in dealloc.
That sounds like the potential for a leak. It should be released.

  • API/JSContext.mm:

(-[JSContext dealloc]):

1:55 PM Changeset in webkit [141304] by fmalita@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Unreviewed gardening.

Attempted Mac build fix after http://trac.webkit.org/changeset/141291.

  • platform/graphics/harfbuzz/HarfBuzzFaceCoreText.cpp:

(WebCore::harfBuzzCoreTextGetFontFuncs):

1:09 PM Changeset in webkit [141303] by pdr@google.com
  • 8 edits in trunk

Track scale and zoom together when drawing SVG images
https://bugs.webkit.org/show_bug.cgi?id=108108

Reviewed by Tim Horton.

Source/WebCore:

This patch refactors SVGImage::drawSVGToImageBuffer to take a single zoomAndScale parameter
and removes two messy calls to setPageZoomFactor. This patch makes progress towards an
SVG image cache keyed on just container size and scale.

This refactoring is covered by existing tests.

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::imageSizeForRenderer):

This complex logic has been refactored out of CachedImage and into SVGImageCache.
In addition to the code move, we no longer divide by the zoom factor because the
container size is stored without zoom.

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::drawSVGToImageBuffer):

This method signature has changed to take a FloatSize for the container size and
a combined zoom and scale parameter (zoomAndScale). A FloatSize is needed for the
container size because we now store the container size unzoomed, and in this process
we do not want to lose precision.

The messy setPageZoomFactor calls have also been removed which cleans this function up.

  • svg/graphics/SVGImage.h:
  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::setContainerSizeForRenderer):

This function now stores the container size unzoomed. The container size was changed
to a FloatSize so that precision is not lost.

(WebCore::SVGImageCache::imageSizeForRenderer):

Note that the ImageBuffer size will stay the same. We now store the size as:

containerSize (without zoom) * zoom * scale

Previously this was:

containerSize (with zoom) * scale

(WebCore::SVGImageCache::redraw):
(WebCore::SVGImageCache::lookupOrCreateBitmapImageForRenderer):

  • svg/graphics/SVGImageCache.h:

(WebCore::SVGImageCache::SizeAndScales::SizeAndScales):
(SizeAndScales):
(SVGImageCache):

LayoutTests:

  • platform/chromium/TestExpectations:
1:03 PM Changeset in webkit [141302] by danakj@chromium.org
  • 7 edits in trunk/Source

[chromium] Add recordRenderingStats to WebSettings
https://bugs.webkit.org/show_bug.cgi?id=108358

Reviewed by James Robinson.

Source/Platform:

  • chromium/public/WebLayerTreeView.h:

(WebKit::WebLayerTreeView::Settings::Settings):
(Settings):

Source/WebKit/chromium:

  • public/WebSettings.h:
  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setRecordRenderingStats):
(WebKit):

  • src/WebSettingsImpl.h:

(WebSettingsImpl):
(WebKit::WebSettingsImpl::recordRenderingStats):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

1:02 PM Changeset in webkit [141301] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

REGRESSION(140504): pure CSE no longer matches things, 10% regression on Kraken
https://bugs.webkit.org/show_bug.cgi?id=108366

Reviewed by Geoffrey Garen and Mark Hahnenberg.

This was a longstanding bug that was revealed by http://trac.webkit.org/changeset/140504.
Pure CSE requires that the Node::flags() that may affect the behavior of a node match,
when comparing a possibly redundant node to its possible replacement. It was doing this
by comparing Node::arithNodeFlags(), which as the name might appear to suggest, returns
just those flag bits that correspond to actual node behavior and not auxiliary things.
Unfortunately, Node::arithNodeFlags() wasn't actually masking off the irrelevant bits.
This worked prior to r140504 because CSE itself didn't mutate the flags, so there was a
very high probability that matching nodes would also have completely identical flag bits
(even the ones that aren't relevant to arithmetic behavior, like NodeDoesNotExit). But
r140504 moved one of CSE's side-tables (m_relevantToOSR) into a flag bit for quicker
access. These bits would be mutated as the CSE ran over a basic block, in such a way that
there was a very high probability that the possible replacement would already have the
bit set, while the redundant node did not have the bit set. Since Node::arithNodeFlags()
returned all of the bits, this would cause CSEPhase::pureCSE() to reject the match
almost every time.

The solution is to make Node::arithNodeFlags() do as its name suggests: only return those
flags that are relevant to arithmetic behavior. This patch introduces a new mask that
represents those bits, and includes NodeBehaviorMask and NodeBackPropMask, which are both
used for queries on Node::arithNodeFlags(), and both affect arithmetic code gen. None of
the other flags are relevant to Node::arithNodeFlags() since they either correspond to
information already conveyed by the opcode (like NodeResultMask, NodeMustGenerate,
NodeHasVarArgs, NodeClobbersWorld, NodeMightClobber) or information that doesn't affect
the result that the node will produce or any of the queries performed on the result of
Node::arithNodeFlags (NodeDoesNotExit and of course NodeRelevantToOSR).

This is a 10% speed-up on Kraken, undoing the regression from r140504.

  • dfg/DFGNode.h:

(JSC::DFG::Node::arithNodeFlags):

  • dfg/DFGNodeFlags.h:

(DFG):

12:51 PM Changeset in webkit [141300] by benjamin@webkit.org
  • 5 edits in trunk/Source/WebCore

Do not convert to String->AtomicString for NamedNodeMap
https://bugs.webkit.org/show_bug.cgi?id=108289

Reviewed by Kentaro Hara.

NamedNodeMap's API was taking a WTF::String. Internally, attribute
names are AtomicString.

The conversions String->AtomicString was causing an additional ref-deref
for the JS/V8 bindings. And could cause an additional memory allocation for the Objective-C
bindings.

This patch changes the API to use AtomicString, and update the custom bindings accordingly.

  • bindings/js/JSNamedNodeMapCustom.cpp:

(WebCore::JSNamedNodeMap::canGetItemsForName):
(WebCore::JSNamedNodeMap::nameGetter):

  • bindings/v8/custom/V8NamedNodeMapCustom.cpp:

(WebCore::V8NamedNodeMap::namedPropertyGetter):

  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::getNamedItem):
(WebCore::NamedNodeMap::getNamedItemNS):
(WebCore::NamedNodeMap::removeNamedItem):
(WebCore::NamedNodeMap::removeNamedItemNS):

  • dom/NamedNodeMap.h:

(NamedNodeMap):

12:47 PM Changeset in webkit [141299] by zandobersek@gmail.com
  • 4 edits in trunk

[GTK] http/tests/w3c/webperf/submission/Intel/user-timing/test_user_timing_entry_type.html is failing
https://bugs.webkit.org/show_bug.cgi?id=108100

Reviewed by Tony Gentilcore.

Source/WebCore:

Similarly to the changes to V8 bindings in r140882, wrap the PerformanceEntry
as a PerformanceMark or PerformanceMeasure if possible.

No new tests - the relevant test now passes.

  • bindings/js/JSPerformanceEntryCustom.cpp:

(WebCore::toJS):

LayoutTests:

  • platform/gtk/TestExpectations: Remove the failure expectation.
12:46 PM Changeset in webkit [141298] by jochen@chromium.org
  • 9 edits in trunk/Tools

[chromium] move custom policy delegate to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=108328

Reviewed by Adam Barth.

  • DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:
  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebTestProxyBase):
(WebTestRunner::WebTestProxy::decidePolicyForNavigation):

  • DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:

(WebTestRunner::WebTestRunner::policyDelegateEnabled):
(WebTestRunner::WebTestRunner::policyDelegateIsPermissive):
(WebTestRunner::WebTestRunner::policyDelegateShouldNotifyDone):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::reset):
(WebTestRunner::TestRunner::policyDelegateEnabled):
(WebTestRunner):
(WebTestRunner::TestRunner::policyDelegateIsPermissive):
(WebTestRunner::TestRunner::policyDelegateShouldNotifyDone):
(WebTestRunner::TestRunner::setCustomPolicyDelegate):
(WebTestRunner::TestRunner::waitForPolicyDelegate):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:

(WebTestRunner::WebTestProxyBase::decidePolicyForNavigation):
(WebTestRunner):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::decidePolicyForNavigation):
(WebViewHost::reset):

  • DumpRenderTree/chromium/WebViewHost.h:

(WebViewHost):

12:42 PM Changeset in webkit [141297] by tonyg@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Fix compile error in WebFrameTest
https://bugs.webkit.org/show_bug.cgi?id=108360

Unreviewed build fix.

Fixes compile error:
../../Source/WebKit/chromium/tests/WebFrameTest.cpp:330:5: error: converting false to pointer type for argument 1 of char testing::internal::IsNullLiteralHelper(testing::internal::Secret*) [-Werror=conversion-null]

  • tests/WebFrameTest.cpp:
12:22 PM Changeset in webkit [141296] by adamk@chromium.org
  • 15 edits
    2 adds
    2 deletes in trunk/Source/WebCore

[JSC] MutationObservers should not create circular, leaky references
https://bugs.webkit.org/show_bug.cgi?id=93661

Reviewed by Adam Barth.

This patch makes JSMutationCallback an entirely-custom class that
holds a weak reference to the function it wraps. To keep that function
alive, it also adds a PrivateName between the JSMutationObserver
wrapper and the function when the MutationObserver is constructed.

Unlike the generated JSC callbacks, JSMutationCallback doesn't hold a
reference to the JSDOMGlobalObject, instead holding the
DOMWrapperWorld it was created in. As an ActiveDOMCallback, it also
holds a weak pointer to ScriptExecutionContext (via ContextDestructionObserver).

It's not clear to me how to write a test for this. There's an existing
manual test in ManualTests/leak-cycle-observer-wrapper.html which may
be of use but which doesn't seem to currently give meaningful output.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • UseJSC.cmake:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSMutationCallback.cpp: Added.

(WebCore):
(WebCore::JSMutationCallback::JSMutationCallback):
(WebCore::JSMutationCallback::~JSMutationCallback):
(WebCore::JSMutationCallback::handleEvent):

  • bindings/js/JSMutationCallback.h: Added.

(WebCore):
(JSMutationCallback): Instead of a JSCallbackData, hold a weak ref to the callback and a RefPtr to the DOMWrapperWorld.
(WebCore::JSMutationCallback::create):

  • bindings/js/JSMutationCallbackCustom.cpp: Removed.
  • bindings/js/JSMutationObserverCustom.cpp:

(WebCore::JSMutationObserverConstructor::constructJSMutationObserver):
When constructing the JSMutationObserver, add a reference via PrivateName from the MutationObserver to the callback function.

  • dom/MutationCallback.idl: Removed. Neither JSC nor V8 use an IDL file to generate this class any more.
12:05 PM Changeset in webkit [141295] by mhahnenberg@apple.com
  • 5 edits in trunk/Source

Structure::m_outOfLineCapacity is unnecessary
https://bugs.webkit.org/show_bug.cgi?id=108206

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

We can calculate our out of line capacity by using the outOfLineSize and our knowledge about our resize policy.
According to GDB, this knocks Structures down from 136 bytes to 128 bytes (I'm guessing the extra bytes are from
better alignment of object fields), which puts Structures in a smaller size class. Woohoo! Looks neutral on our
benchmarks.

  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC):
(JSC::Structure::suggestedNewOutOfLineStorageCapacity):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::addPropertyWithoutTransition):

  • runtime/Structure.h:

(Structure):
(JSC::Structure::outOfLineCapacity):
(JSC::Structure::totalStorageCapacity):

Source/WTF:

We're adding a new function that gives us the ability to round a value up to the next power of a certain base.

  • wtf/MathExtras.h:

(WTF::roundUpToPowerOf):

12:03 PM Changeset in webkit [141294] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening: Add expectations for flaky crashers
https://bugs.webkit.org/show_bug.cgi?id=108359

Unreviewed gardening: add a bunch of flaky results.

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2013-01-30

  • platform/efl-wk2/TestExpectations:
12:01 PM Changeset in webkit [141293] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding failure expectations for a couple of fullscreen tests, probably
regressed with r141265.
Adding a crash expectation for an HTTP test that regressed with r141136.

  • platform/gtk/TestExpectations:
11:41 AM Changeset in webkit [141292] by esprehn@chromium.org
  • 10 edits in trunk/Source/WebCore

Remove willAddAuthorShadowRoot and replace with alwaysCreateUserAgentShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=108248

Reviewed by Dimitri Glazkov.

The only reason willAddAuthorShadowRoot exists is so that a handful of
other elements can create the user agent shadow root right before the
author shadow root is created. Instead of providing this generic hook
just expose a virtual method on Element that requests this behavior.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::createShadowRoot):

  • dom/Element.h:

(Element):
(WebCore::Element::alwaysCreateUserAgentShadowRoot): Added.

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::addShadowRoot): Remove willAddAuthorShadowRoot notification.

  • html/HTMLButtonElement.cpp:
  • html/HTMLButtonElement.h:
  • html/HTMLFormControlElement.cpp:
  • html/HTMLFormControlElement.h:
  • html/HTMLMediaElement.cpp:
  • html/HTMLMediaElement.h:
11:39 AM Changeset in webkit [141291] by dominik.rottsches@intel.com
  • 12 edits
    7 moves in trunk/Source/WebCore

[HarfBuzz] Naming fixes after removing old HarfBuzz code
https://bugs.webkit.org/show_bug.cgi?id=108170

Reviewed by Tony Chang.

Since the old harfbuzz code is gone in r141241, it makes sense to get rid
of the now unnecessray NG suffix in a number of places. While at it,
I am also fixing some naming inconsistencies.

Renamed all occurences of HarfBuzzNG* to HarfBuzz*,
renamed lowercase variants of harfbuzz* in variable and function names to camel-case harfBuzz*,
moved files in platform/graphics/harfbuzz/ng/* one level up and removed ng folder.
Updated corresponding entries in Chromium, GTK and EFL build system files.

No new tests, no change in behavior.

  • GNUmakefile.list.am:
  • PlatformEfl.cmake:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • platform/graphics/FontPlatformData.cpp:
  • platform/graphics/FontPlatformData.h:

(WebCore):
(FontPlatformData):

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::platformDataInit):
(WebCore::FontPlatformData::platformDataAssign):
(WebCore::FontPlatformData::harfBuzzFace):

  • platform/graphics/freetype/FontPlatformData.h:

(FontPlatformData):

  • platform/graphics/freetype/FontPlatformDataFreeType.cpp:

(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::harfBuzzFace):

  • platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:

(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::harfBuzzFace):

  • platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h:

(WebCore):
(FontPlatformData):

  • platform/graphics/harfbuzz/HarfBuzzFace.cpp: Renamed from Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzNGFace.cpp.

(WebCore):
(FaceCacheEntry):
(WebCore::FaceCacheEntry::create):
(WebCore::FaceCacheEntry::~FaceCacheEntry):
(WebCore::FaceCacheEntry::face):
(WebCore::FaceCacheEntry::glyphCache):
(WebCore::FaceCacheEntry::FaceCacheEntry):
(WebCore::harfBuzzFaceCache):
(WebCore::HarfBuzzFace::HarfBuzzFace):
(WebCore::HarfBuzzFace::~HarfBuzzFace):
(WebCore::findScriptForVerticalGlyphSubstitution):
(WebCore::HarfBuzzFace::setScriptForVerticalGlyphSubstitution):

  • platform/graphics/harfbuzz/HarfBuzzFace.h: Renamed from Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzNGFace.h.

(WebCore):
(HarfBuzzFace):
(WebCore::HarfBuzzFace::create):

  • platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp: Renamed from Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzNGFaceCairo.cpp.

(WebCore):
(CairoFtFaceLocker):
(WebCore::CairoFtFaceLocker::CairoFtFaceLocker):
(WebCore::CairoFtFaceLocker::lock):
(WebCore::CairoFtFaceLocker::~CairoFtFaceLocker):
(WebCore::floatToHarfBuzzPosition):
(WebCore::doubleToHarfBuzzPosition):
(WebCore::CairoGetGlyphWidthAndExtents):
(WebCore::harfBuzzGetGlyph):
(WebCore::harfBuzzGetGlyphHorizontalAdvance):
(WebCore::harfBuzzGetGlyphHorizontalOrigin):
(WebCore::harfBuzzGetGlyphExtents):
(WebCore::harfBuzzCairoTextGetFontFuncs):
(WebCore::harfBuzzCairoGetTable):
(WebCore::HarfBuzzFace::createFace):
(WebCore::HarfBuzzFace::createFont):
(WebCore::HarfBuzzShaper::createGlyphBufferAdvance):

  • platform/graphics/harfbuzz/HarfBuzzFaceCoreText.cpp: Renamed from Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzNGFaceCoreText.cpp.

(WebCore):
(WebCore::floatToHarfBuzzPosition):
(WebCore::getGlyph):
(WebCore::getGlyphHorizontalAdvance):
(WebCore::getGlyphHorizontalOrigin):
(WebCore::getGlyphExtents):
(WebCore::harfbuzzCoreTextGetFontFuncs):
(WebCore::releaseTableData):
(WebCore::harfBuzzCoreTextGetTable):
(WebCore::HarfBuzzFace::createFace):
(WebCore::HarfBuzzFace::createFont):
(WebCore::HarfBuzzShaper::createGlyphBufferAdvance):

  • platform/graphics/harfbuzz/HarfBuzzFaceSkia.cpp: Renamed from Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzNGFaceSkia.cpp.

(WebCore):
(WebCore::HarfBuzzFontData::HarfBuzzFontData):
(HarfBuzzFontData):
(WebCore::SkiaScalarToHarfBuzzPosition):
(WebCore::SkiaGetGlyphWidthAndExtents):
(WebCore::harfBuzzGetGlyph):
(WebCore::harfBuzzGetGlyphHorizontalAdvance):
(WebCore::harfBuzzGetGlyphHorizontalOrigin):
(WebCore::harfBuzzGetGlyphExtents):
(WebCore::harfBuzzSkiaGetFontFuncs):
(WebCore::harfBuzzSkiaGetTable): Also fixed style checker whitespace complaint / indentation.
(WebCore::destroyHarfBuzzFontData):
(WebCore::HarfBuzzFace::createFace):
(WebCore::HarfBuzzFace::createFont):
(WebCore::HarfBuzzShaper::createGlyphBufferAdvance):

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp: Renamed from Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp.

(WebCore):
(HarfBuzzScopedPtr):
(WebCore::HarfBuzzScopedPtr::HarfBuzzScopedPtr):
(WebCore::HarfBuzzScopedPtr::~HarfBuzzScopedPtr):
(WebCore::HarfBuzzScopedPtr::get):
(WebCore::harfBuzzPositionToFloat):
(WebCore::HarfBuzzShaper::HarfBuzzRun::HarfBuzzRun):
(WebCore::HarfBuzzShaper::HarfBuzzRun::applyShapeResult):
(WebCore::HarfBuzzShaper::HarfBuzzRun::setGlyphAndPositions):
(WebCore::HarfBuzzShaper::HarfBuzzRun::characterIndexForXPosition):
(WebCore::HarfBuzzShaper::HarfBuzzRun::xPositionForOffset):
(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):
(WebCore::HarfBuzzShaper::~HarfBuzzShaper):
(WebCore::HarfBuzzShaper::setDrawRange):
(WebCore::HarfBuzzShaper::setFontFeatures):
(WebCore::HarfBuzzShaper::shape):
(WebCore::HarfBuzzShaper::adjustStartPoint):
(WebCore::HarfBuzzShaper::collectHarfBuzzRuns):
(WebCore::HarfBuzzShaper::shapeHarfBuzzRuns):
(WebCore::HarfBuzzShaper::setGlyphPositionsForHarfBuzzRun):
(WebCore::HarfBuzzShaper::fillGlyphBufferFromHarfBuzzRun):
(WebCore::HarfBuzzShaper::fillGlyphBuffer):
(WebCore::HarfBuzzShaper::offsetForPosition):
(WebCore::HarfBuzzShaper::selectionRect):

  • platform/graphics/harfbuzz/HarfBuzzShaper.h: Renamed from Source/WebCore/platform/graphics/harfbuzz/ng/HarfBuzzShaper.h.

(WebCore):
(HarfBuzzShaper):
(WebCore::HarfBuzzShaper::totalWidth):
(HarfBuzzRun):
(WebCore::HarfBuzzShaper::HarfBuzzRun::create):
(WebCore::HarfBuzzShaper::HarfBuzzRun::setWidth):
(WebCore::HarfBuzzShaper::HarfBuzzRun::fontData):
(WebCore::HarfBuzzShaper::HarfBuzzRun::startIndex):
(WebCore::HarfBuzzShaper::HarfBuzzRun::numCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzRun::numGlyphs):
(WebCore::HarfBuzzShaper::HarfBuzzRun::glyphs):
(WebCore::HarfBuzzShaper::HarfBuzzRun::advances):
(WebCore::HarfBuzzShaper::HarfBuzzRun::offsets):
(WebCore::HarfBuzzShaper::HarfBuzzRun::glyphToCharacterIndexes):
(WebCore::HarfBuzzShaper::HarfBuzzRun::width):
(WebCore::HarfBuzzShaper::HarfBuzzRun::rtl):
(WebCore::HarfBuzzShaper::HarfBuzzRun::script):

11:21 AM Changeset in webkit [141290] by tony@chromium.org
  • 3 edits
    2 adds in trunk

REGRESSION(r136324): Flexbox should relayout flex children when width changes
https://bugs.webkit.org/show_bug.cgi?id=108231

Reviewed by Ojan Vafai.

Source/WebCore:

If the width of a block changes, we need to set relayoutChildren = true
to relayout the children. This broke when we optimized the layout calls
in layoutAndPlaceChildren.

Test: css3/flexbox/width-change-and-relayout-children.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock): Also reorder the code to match RenderBlock.
The bug fix is to use updateLogicalWidthAndColumnWidth() and its return value to set
relayoutChildren = true.

LayoutTests:

  • css3/flexbox/width-change-and-relayout-children-expected.txt: Added.
  • css3/flexbox/width-change-and-relayout-children.html: Added.
11:19 AM Changeset in webkit [141289] by Lucas Forschler
  • 6 edits in tags/Safari-537.26.5

Merged r141045. <rdar://problem/12960662>

11:18 AM Changeset in webkit [141288] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebCore

GraphicsContext3DCG needs to copy image data in paintToCanvas
https://bugs.webkit.org/show_bug.cgi?id=108310

Reviewed by Simon Fraser.

Make the CG implementation of GraphicsContext3D::paintToCanvas copy image data
before drawing if we're drawing into an accelerated context, matching the fix made
in http://trac.webkit.org/changeset/106095 for 2D canvas.

No new tests, depends on acceleration and would be flaky at best.

  • platform/graphics/GraphicsContext3D.h:

(GraphicsContext3D): Make CG's paintToCanvas take a GraphicsContext instead of a CGContextRef.

  • platform/graphics/cg/GraphicsContext3DCG.cpp:

(WebCore::releaseImageData): Added.
(WebCore::GraphicsContext3D::paintToCanvas): Copy image data if the destination is
an accelerated context. Also, use GraphicsContext API instead of CGContext.

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):

11:12 AM Changeset in webkit [141287] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt] Fix Win build after r141177
https://bugs.webkit.org/show_bug.cgi?id=108325

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2013-01-30
Reviewed by Anders Carlsson.

  • Platform/CoreIPC/win/ConnectionWin.cpp:

(CoreIPC::Connection::readEventHandler):
(CoreIPC::Connection::sendOutgoingMessage):

11:02 AM Changeset in webkit [141286] by fmalita@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening.

inspector/editor/text-editor-ctrl-movements.html is timing out after r141245.

  • platform/chromium/TestExpectations:
10:54 AM Changeset in webkit [141285] by ap@apple.com
  • 4 edits in trunk/WebKitLibraries

Update WebKitSystemInterface for <rdar://problem/13111288>.

  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:
  • WebKitSystemInterface.h: Removed WKEnterPluginSandbox, which has been unused now.
10:52 AM Changeset in webkit [141284] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Screenshot is clipped when content is smaller than the desintation size
https://bugs.webkit.org/show_bug.cgi?id=107735

Patch by Ed Baker <edbaker@rim.com> on 2013-01-30
Reviewed by Rob Buis.

Internal PR #284662
Don't scale the transformed content rect when the content is smaller than the destination
size. Scale the graphics context when it has a scale factor that isn't 1.0.

Internally reviewed by Andrew Lo

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::renderContents):

10:52 AM Changeset in webkit [141283] by Lucas Forschler
  • 4 edits in tags/Safari-537.26.5/Source

Versioning.

10:40 AM Changeset in webkit [141282] by Lucas Forschler
  • 1 copy in tags/Safari-537.26.5

New Tag.

10:20 AM Changeset in webkit [141281] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

MediaPlayerPrivateQTKit claims it supports application/x-diskcopy, breaking downloads.
https://bugs.webkit.org/show_bug.cgi?id=108237

Reviewed by Eric Carlson.

Disclaim any non-'video/' or 'audio/' types which QTKit purports to support.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::addFileTypesToCache):

9:55 AM Changeset in webkit [141280] by fmalita@chromium.org
  • 2 edits in trunk/Source/WebCore

Do not restart the matched properties cache timer if active
https://bugs.webkit.org/show_bug.cgi?id=108345

Reviewed by Andreas Kling.

StyleResolver::addToMatchedPropertiesCache() keeps resetting the timer as more than
matchedDeclarationCacheAdditionsBetweenSweeps entries are added. When armed, we should let
the timer expire at its scheduled time - otherwise it may never get a chance to fire if
entries keep getting added.

No new tests. This is a long lived timer (1min) which makes testing impractical.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::addToMatchedPropertiesCache):

9:55 AM Changeset in webkit [141279] by jknotten@chromium.org
  • 5 edits in branches/chromium/1364/Source/WebKit/chromium

Merge 141252

BUG=163887

[Chromium] Fix find in page rects for overflowing content.
https://bugs.webkit.org/show_bug.cgi?id=104924

Reviewed by Julien Chaffraix.

If a div has overflowing content, we should only normalise its
coordinates against the renderview or the containing scrollable block.

TEST=WebFrameTest.FindInPageMatchRects

  • src/FindInPageCoordinates.cpp:

(WebKit::enclosingScrollableAncestor):

Helper function to find the enclosing containing block with an overflow clip.

(WebKit::toNormalizedRect):

Pass in the container as an argument.

(WebKit::findInPageRectFromAbsoluteRect):

Compute the container for toNormalizedRect using enclosingScrollableAncestor.

  • tests/WebFrameTest.cpp:

Add expectations for new tests in WebFrameTest::FindInPageMatchRects and WebFrameTest::FindInPage.

  • tests/data/find.html:

Add test case for <select> element.

  • tests/data/find_in_page_frame.html:

Add test cases:

  • Result 15, 16 tests that containing <div> with style float:left and height:0px does not impact coordinate normalization.
  • Result 17, 18 tests that matches with absolute positioning are normalized containing relative positioned block, even if there is a closer parent block with overflow clip.
  • Result 19 adds a test case for <select> element.

TBR=jknotten@chromium.org
Review URL: https://codereview.chromium.org/12092069

9:39 AM Changeset in webkit [141278] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Temporarily disable assertions related to clip rect computation in RenderLayer
https://bugs.webkit.org/show_bug.cgi?id=108265

Reviewed by Dean Jackson.

These assertions are killing the test bots, so disable them temporarily
until we figure out the underlying bug (tracked by https://bugs.webkit.org/show_bug.cgi?id=103432).

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateLayerPositionsAfterScroll):

9:15 AM Changeset in webkit [141277] by esprehn@chromium.org
  • 7 edits in trunk/Source/WebCore

Element::areAuthorShadowsAllowed should be private
https://bugs.webkit.org/show_bug.cgi?id=108298

Reviewed by Darin Adler.

There's no reason for areAuthorShadowsAllowed to be exposed publically
on Element since it just controls the behavior of createShadowRoot. Make
it private and fix all places where it wasn't in subclasses.

No new tests, just refactoring.

  • dom/Element.h:

(WebCore::Element::areAuthorShadowsAllowed): Made private.

  • html/HTMLFrameElementBase.h:

(HTMLFrameElementBase):

  • html/HTMLInputElement.h:

(HTMLInputElement):

  • html/HTMLMediaElement.h:

(HTMLMediaElement):

  • html/HTMLPlugInElement.h:

(HTMLPlugInElement):

  • svg/SVGElement.h:

(SVGElement):

9:12 AM Changeset in webkit [141276] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Webpage was cut off after rotating to landscape and then rotating back to portrait on specific website
https://bugs.webkit.org/show_bug.cgi?id=108281
PR 284985

Patch by Xiaobo Wang <xbwang@torchmobile.com.cn> on 2013-01-30
Reviewed by Rob Buis.
Internally reviewed by Jacky Jiang.

Return correct fixedLayoutSize when overflow exceeds contents size.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::fixedLayoutSize):

8:58 AM Changeset in webkit [141275] by thiago.santos@intel.com
  • 11 edits in trunk

REGRESSION (r141051): Broke plugin support on non-Mac WebKit2 Ports
https://bugs.webkit.org/show_bug.cgi?id=108182

Reviewed by Sam Weinig.

Source/WebKit2:

Send the plugin path to the PluginProcess as a parameter.

  • PluginProcess/qt/PluginProcessMainQt.cpp:

(WebKit::PluginProcessMain):

  • PluginProcess/unix/PluginProcessMainUnix.cpp:

(WebKit::PluginProcessMainUnix):

  • UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:

(WebKit::ProcessLauncher::launchProcess):

  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:

(WebKit::ProcessLauncher::launchProcess):

  • UIProcess/Launcher/qt/ProcessLauncherQt.cpp:

(WebKit::ProcessLauncher::launchProcess):

  • UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:

(WebKit::PluginProcessProxy::platformInitializeLaunchOptions):

  • UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:

(WebKit::PluginProcessProxy::platformInitializeLaunchOptions):

LayoutTests:

Unskip failing tests.

  • platform/efl-wk2/TestExpectations:
  • platform/qt-5.0-wk2/TestExpectations:
8:52 AM Changeset in webkit [141274] by Christophe Dumez
  • 6 edits in trunk/Source/WebKit2

[EFL][WK2] Use C API inside ewk_window_features
https://bugs.webkit.org/show_bug.cgi?id=107924

Reviewed by Sam Weinig.

Use C API inside ewk_window_features instead of accessing
internal C++ classes directly, to avoid violating API
layering.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::createNewPage):

  • UIProcess/API/efl/EwkView.h:

(EwkView):

  • UIProcess/API/efl/ewk_window_features.cpp:

(EwkWindowFeatures::EwkWindowFeatures):
(getWindowFeatureValue):
(EwkWindowFeatures::getWindowFeatureBoolValue):
(EwkWindowFeatures::getWindowFeatureDoubleValue):
(ewk_window_features_geometry_get):

  • UIProcess/API/efl/ewk_window_features_private.h:

(EwkWindowFeatures::create):
(EwkWindowFeatures::geometry):
(EwkWindowFeatures::setGeometry):
(EwkWindowFeatures):

  • UIProcess/efl/PageUIClientEfl.cpp:

(WebKit::PageUIClientEfl::createNewPage):

8:15 AM Changeset in webkit [141273] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: Script Profiler: Make profiler output typed.
https://bugs.webkit.org/show_bug.cgi?id=102792

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2013-01-30
Reviewed by Yury Semikhatsky.

Currently fields "head" and "bottomUpHead" of Profile object
returned by Profiler.getCPUProfile is untyped (type = object).

That's not good both for client side (protocol users may
only guess on output content) and backend side (field names
are hardcoded in source code).

This patch defines "head" and "bottomUpHead" to be of new
"CPUProfileNode" type and updates serialization code to use
builders to create output.

  • bindings/js/ScriptProfile.cpp: Used buiders for serialization.
  • bindings/js/ScriptProfile.h: Ditto.
  • bindings/v8/ScriptProfile.cpp: Ditto.
  • bindings/v8/ScriptProfile.h: Ditto.
  • inspector/Inspector.json: Added and used new ProfileNode type.
8:12 AM Changeset in webkit [141272] by yurys@chromium.org
  • 7 edits
    1 delete in trunk/Source/WebCore

Web Inspector: remove NativeHeapGraph.js
https://bugs.webkit.org/show_bug.cgi?id=108342

Reviewed by Pavel Feldman.

NativeHeapGraph.js was removed as NativeHeapSnapshot.js provides more
features and shares its implementation with JSHeapSnapshot.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/NativeHeapGraph.js: Removed.
  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeSnapshotProfileType.prototype.buttonClicked.didReceiveMemorySnapshot):
(WebInspector.NativeSnapshotProfileType.prototype.buttonClicked):
(WebInspector.NativeSnapshotProfileHeader.prototype.startSnapshotTransfer):

  • inspector/front-end/ProfilesPanel.js:
  • inspector/front-end/WebKit.qrc:
8:11 AM QtWebKitBuildBots edited by kadam@inf.u-szeged.hu
(diff)
7:33 AM Changeset in webkit [141271] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening
https://bugs.webkit.org/show_bug.cgi?id=108341

Add a few failing results for EFL.

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2013-01-30

  • platform/efl/TestExpectations:
7:12 AM Changeset in webkit [141270] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Sidebar splitter is invisible in Elements and Sources panels
https://bugs.webkit.org/show_bug.cgi?id=108331

Patch by Vladislav Kaznacheev <kaznacheev@chromium.org> on 2013-01-30
Reviewed by Pavel Feldman.

This was a regression caused by https://bugs.webkit.org/show_bug.cgi?id=108181.
The splitter element did not get the correct class at the initialization.

  • inspector/front-end/SidebarView.js:

(WebInspector.SidebarView):
(WebInspector.SidebarView.prototype._updateSidebarPosition):

7:10 AM Changeset in webkit [141269] by commit-queue@webkit.org
  • 10 edits
    3 adds in trunk

Web Inspector: Filters on Console panel
https://bugs.webkit.org/show_bug.cgi?id=107813

Source/WebCore:

The problem is that third-party libraries may spam javascript console with internal
messages. Now there's filter context-menu option, which allows to hide/show messages
sent from specific scripts or urls.

Patch by Dmitry Zvorygin <zvorygin@chromium.org> on 2013-01-30
Reviewed by Pavel Feldman.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/ConsoleMessage.js:

(WebInspector.ConsoleMessageImpl.prototype.appendUndefined):
(WebInspector.ConsoleMessageImpl.prototype._printArray):
(WebInspector.ConsoleMessageImpl.prototype._highlightSearchResultsInElement):

  • inspector/front-end/ConsolePanel.js:

(WebInspector.ConsolePanel.prototype.performSearch):

  • inspector/front-end/ConsoleView.js:

(WebInspector.ConsoleView.get this):
(WebInspector.ConsoleView.prototype._consoleMessageAdded):
(WebInspector.ConsoleView.prototype._appendConsoleMessage):
(WebInspector.ConsoleView.prototype._consoleCleared):
(WebInspector.ConsoleView.prototype._handleContextMenuEvent.get var):
(WebInspector.ConsoleView.prototype._handleContextMenuEvent.set get contextMenu):
(WebInspector.ConsoleView.prototype._shouldBeVisible):
(WebInspector.ConsoleView.prototype._updateMessageList):
(WebInspector.ConsoleGroup.prototype.addMessage):

  • inspector/front-end/ContextMenu.js:

(WebInspector.ContextMenuItem.prototype.isEnabled):
(WebInspector.ContextMenuItem.prototype.setEnabled):

  • inspector/front-end/Settings.js:

LayoutTests:

The problem is that third-party libraries may spam javascript console
with internal messages. Now there's filter context-menu option, which
allows to hide/show messages sent from specific scripts or urls.

Patch by Dmitry Zvorygin <zvorygin@chromium.org> on 2013-01-30
Reviewed by Pavel Feldman.

  • http/tests/inspector/console-test.js:

(initialize_ConsoleTest.InspectorTest.dumpConsoleMessages):
(initialize_ConsoleTest.InspectorTest.dumpConsoleMessagesWithStyles):
(initialize_ConsoleTest.InspectorTest.dumpConsoleMessagesWithClasses):
(initialize_ConsoleTest.InspectorTest.expandConsoleMessages):
(initialize_ConsoleTest.InspectorTest.checkConsoleMessagesDontHaveParameters):
(initialize_ConsoleTest):

  • http/tests/inspector/stacktraces/resources/stacktrace-test.js:

(test.addMessage):
(test):

  • inspector/console/console-filter-test-expected.txt: Added.
  • inspector/console/console-filter-test.html: Added.
  • inspector/console/resources/log-source.js: Added.

(log2):

7:07 AM Changeset in webkit [141268] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Fix minimal build after r141259.

Unreviewed build fix.

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::clearNotificationPermissions):

7:06 AM Changeset in webkit [141267] by junov@google.com
  • 1 edit
    2 copies in branches/chromium/1364

Merge 141160

REGRESSION (r135628-135632): Double box shadow failure to render
https://bugs.webkit.org/show_bug.cgi?id=107833

Reviewed by Simon Fraser.

Source/WebCore:

Regression caused by http://trac.webkit.org/changeset/135629
The regression was due to faulty occlusion logic that was assuming
that drawing the background color of a render box background layer
could be skipped when the same layer also has an opaque image attached.
In the case where the background color is drawn for the purpose of
rendering a box shadow, the shadow is typically not
completely occluded by the background image because of the shadow
blur and/or offset. This patch fixes the problem by not culling a
background draw if it is used to draw a box shadow.

Test: fast/backgrounds/gradient-background-shadow.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):
Changing occlusion culling test to never cull background color
draw if it is used to draw a box shadow. This is because box shadows
can draw outside the border fill region.

LayoutTests:

New ref test verifies that box shadow is drawn when
background is an opaque image. Test uses an blue gradient
as background image. Reference uses blue background color.

  • fast/backgrounds/gradient-background-shadow-expected.html: Added.
  • fast/backgrounds/gradient-background-shadow.html: Added.

TBR=junov@google.com
Review URL: https://codereview.chromium.org/12089070

7:00 AM Changeset in webkit [141266] by fmalita@chromium.org
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip some failing tests.
https://bugs.webkit.org/show_bug.cgi?id=108340.

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2013-01-30

  • platform/qt/TestExpectations:
6:55 AM Changeset in webkit [141265] by Philippe Normand
  • 18 edits
    2 adds in trunk/Source

[GStreamer] USE(NATIVE_FULLSCREEN_VIDEO) support
https://bugs.webkit.org/show_bug.cgi?id=106760

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Initial support for NATIVE_FULLSCREEN_VIDEO in the GStreamer media
player. A new FullscreenVideoControllerGStreamer class is
introduced, ports interested to implement native fullscreen video
support should inherit from it (see FullscreenVideoControllerGtk)
and hook it in the MediaPlayerPrivateGStreamer backend.

The GStreamerGWorld port to GStreamer 1.x is partly based on a
patch by Sebastian Dröge <sebastian.droge@collabora.com>.

  • GNUmakefile.am: Enable NATIVE_FULLSCREEN_VIDEO support.
  • GNUmakefile.list.am: New

FullscreenVideoController{GStreamer,Gtk} modules.

  • platform/graphics/gstreamer/FullscreenVideoControllerGStreamer.cpp: Added.

(WebCore):
(WebCore::playerVolumeChangedCallback): Playbin notify::volume
signal callback.
(WebCore::playerMuteChangedCallback): Playbin notify::mute signal callback.
(WebCore::FullscreenVideoControllerGStreamer::FullscreenVideoControllerGStreamer):
(WebCore::FullscreenVideoControllerGStreamer::~FullscreenVideoControllerGStreamer):
(WebCore::FullscreenVideoControllerGStreamer::enterFullscreen):
Switch GStreamerGWorld to full screen, hook in to playbin's
notify::volume and mute signals and initialize the full screen window.
(WebCore::FullscreenVideoControllerGStreamer::exitFullscreen):
Destroy the full screen window, disconnect from playbin signals
and switch GStreamerGWorld out of full screen.
(WebCore::FullscreenVideoControllerGStreamer::exitOnUserRequest):
Trigger exit from full screen mode. This method is meant to be
called when the user explicitely requests to exit from full screen
by pressing a key or something similar.
(WebCore::FullscreenVideoControllerGStreamer::togglePlay): Switch
between play and pause states. Useful for child classes.
(WebCore::FullscreenVideoControllerGStreamer::increaseVolume):
Useful for child classes as well.
(WebCore::FullscreenVideoControllerGStreamer::decreaseVolume): Ditto.
(WebCore::FullscreenVideoControllerGStreamer::setVolume): Ditto.
(WebCore::FullscreenVideoControllerGStreamer::timeToString): Ditto.

  • platform/graphics/gstreamer/FullscreenVideoControllerGStreamer.h: Added.

(WebCore):
(FullscreenVideoControllerGStreamer):
(WebCore::FullscreenVideoControllerGStreamer::playStateChanged):
To be implemented by child class to reflect the player's state changed.
(WebCore::FullscreenVideoControllerGStreamer::volumeChanged): To
be implemented by child class as well.
(WebCore::FullscreenVideoControllerGStreamer::muteChanged): Ditto.
(WebCore::FullscreenVideoControllerGStreamer::initializeWindow): Ditto.
(WebCore::FullscreenVideoControllerGStreamer::destroyWindow): Ditto.

  • platform/graphics/gstreamer/GStreamerGWorld.cpp:

(WebCore::gstGWorldSyncMessageCallback): Adapt for GStreamer video
overlay API changes.
(WebCore::GStreamerGWorld::GStreamerGWorld):
gst_bus_set_sync_handler takes one more argument in GStreamer 1.x.
(WebCore::GStreamerGWorld::enterFullscreen): ffmpegcolorspace was
renamed to videoconvert in GStreamer 1.x and the tee src pad
template was renamed to src_%u. There is no need to send a new
segment query either.
(WebCore):
(WebCore::gstGWorldPadProbeCallback): Remove the platform video
sink branch once the tee source pad starting it has been blocked.
(WebCore::GStreamerGWorld::exitFullscreen): Refactor to use an
asynchronous pad probe.
(WebCore::GStreamerGWorld::removePlatformVideoSink): Refactored
from exitFullscreen.
(WebCore::GStreamerGWorld::setWindowOverlay): Adapt for GStreamer video
overlay API changes.

  • platform/graphics/gstreamer/GStreamerGWorld.h:

(GStreamerGWorld):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
Hook NATIVE_FULLSCREEN_VIDEO support.
(WebCore::MediaPlayerPrivateGStreamer::volume): Playbin volume
query used by the FullscreenVideoController.
(WebCore):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

(WebCore):
(MediaPlayerPrivateGStreamer): volume(), muted() and MediaPlayer
accessor methods added. NATIVE_FULLSCREEN_VIDEO methods added as well.
(WebCore::MediaPlayerPrivateGStreamer::canEnterFullscreen):
(WebCore::MediaPlayerPrivateGStreamer::mediaPlayer):

  • platform/graphics/gstreamer/PlatformVideoWindow.h: Re-enable

module if NATIVE_FULLSCREEN_VIDEO is turned on.

  • platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: Ditto.
  • platform/graphics/gstreamer/VideoSinkGStreamer.cpp: Re-enable

GStreamerGWorld support.
(_WebKitVideoSinkPrivate):
(webkitVideoSinkRender):

  • platform/graphics/gstreamer/VideoSinkGStreamer.h: Ditto.

Source/WebKit/qt:

Build fixes for GStreamer NATIVE_FULLSCREEN_VIDEO support. Some
more changes will be needed to use the new
FullscreenVideoController though.

  • WebCoreSupport/ChromeClientQt.cpp:

(WebCore::ChromeClientQt::ChromeClientQt):
(WebCore::ChromeClientQt::~ChromeClientQt):

  • WebCoreSupport/FullScreenVideoQt.cpp:

(WebCore):
(WebCore::FullScreenVideoQt::FullScreenVideoQt):
(WebCore::FullScreenVideoQt::~FullScreenVideoQt):
(WebCore::FullScreenVideoQt::enterFullScreenForNode):
(WebCore::FullScreenVideoQt::exitFullScreenForNode):
(WebCore::FullScreenVideoQt::isValid):

  • WebCoreSupport/FullScreenVideoQt.h:

(WebCore):
(FullScreenVideoQt):

6:49 AM Changeset in webkit [141264] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip some failing tests.
https://bugs.webkit.org/show_bug.cgi?id=108340.

  • platform/qt/TestExpectations:
6:48 AM Changeset in webkit [141263] by zeno.albisser@digia.com
  • 4 edits in trunk/Source

[Qt] Fix Qt/Mac build after r141024 and r141037
https://bugs.webkit.org/show_bug.cgi?id=108318

Reviewed by Kentaro Hara.

Source/WebKit2:

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::Connection::platformInvalidate):

Replace nullptr with 0 to allow compiling without C++11 support.

Source/WTF:

  • wtf/Functional.h:

Make sure Block.h is included and its functionality
is enabled for Qt on Mac.

6:36 AM Changeset in webkit [141262] by vollick@chromium.org
  • 6 edits in branches/chromium/1364/Source

Promote composited scrolling render layers to stacking containers.

https://bugs.webkit.org/show_bug.cgi?id=106142
https://code.google.com/p/chromium/issues/detail?id=167201

6:31 AM Changeset in webkit [141261] by fmalita@chromium.org
  • 12 edits
    6 adds in trunk/LayoutTests

[Chromium] Unreviewed gaedening.

Updated results after http://trac.webkit.org/changeset/141243.

  • platform/chromium-linux/fast/repaint/4774354-expected.png:
  • platform/chromium-linux/fast/repaint/4776765-expected.png:
  • platform/chromium-linux/fast/repaint/caret-with-transformation-expected.png: Added.
  • platform/chromium-mac-lion/fast/repaint/4774354-expected.png:
  • platform/chromium-mac-lion/fast/repaint/4776765-expected.png:
  • platform/chromium-mac-lion/fast/repaint/caret-with-transformation-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/repaint/4774354-expected.png:
  • platform/chromium-mac-snowleopard/fast/repaint/4776765-expected.png:
  • platform/chromium-mac/fast/repaint/4774354-expected.png:
  • platform/chromium-mac/fast/repaint/4776765-expected.png:
  • platform/chromium-mac/fast/repaint/caret-with-transformation-expected.png: Added.
  • platform/chromium-mac/fast/repaint/caret-with-transformation-expected.txt: Added.
  • platform/chromium-win/fast/repaint/4774354-expected.png:
  • platform/chromium-win/fast/repaint/4776765-expected.png:
  • platform/chromium-win/fast/repaint/caret-with-transformation-expected.png: Added.
  • platform/chromium-win/fast/repaint/caret-with-transformation-expected.txt: Added.
  • platform/chromium/TestExpectations:
6:03 AM Changeset in webkit [141260] by pfeldman@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: beautify file selector dialog to render as two rows
https://bugs.webkit.org/show_bug.cgi?id=108335

Reviewed by Vsevolod Vlasov.

Go-to-file is now rendered in two rows.

  • inspector/front-end/FilteredItemSelectionDialog.js:

(WebInspector.FilteredItemSelectionDialog):
(WebInspector.FilteredItemSelectionDialog.prototype.focus):
(WebInspector.FilteredItemSelectionDialog.prototype.renderAsTwoRows):
(WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
(WebInspector.OpenResourceDialog.show):

  • inspector/front-end/ViewportControl.js:

(WebInspector.ViewportControl):
(WebInspector.ViewportControl.prototype.refresh):

  • inspector/front-end/filteredItemSelectionDialog.css:

(.filtered-item-list-dialog > input):
(.filtered-item-list-dialog > div.progress):
(.filtered-item-list-dialog > div.container):
(.filtered-item-list-dialog-item):
(.filtered-item-list-dialog-subtitle):
(.filtered-item-list-dialog-item.one-row .filtered-item-list-dialog-subtitle):
(.filtered-item-list-dialog-item.two-rows):
(.filtered-item-list-dialog-item.selected):
(.filtered-item-list-dialog-item span.highlight):

5:59 AM Changeset in webkit [141259] by allan.jensen@digia.com
  • 17 edits in trunk

[Qt][WK1] Support better testing of Web Notifications
https://bugs.webkit.org/show_bug.cgi?id=107696

Reviewed by Jocelyn Turcotte.

Source/WebKit/qt:

Implement support for the DRT to clear notification permissions.

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::clearNotificationPermissions):

  • WebCoreSupport/DumpRenderTreeSupportQt.h:
  • WebCoreSupport/NotificationPresenterClientQt.cpp:

(WebCore::NotificationPresenterClientQt::clearCachedPermissions):
(WebCore):

  • WebCoreSupport/NotificationPresenterClientQt.h:

(NotificationPresenterClientQt):

Tools:

Do not dump notification output to the console by default, instead allow the
tests that need this feature to enable it.

Implement denyWebNotificationPermission and removeAllWebNotificationPermissions.
Remove unused m_desktopNotificationAllowedOrigins variable.

  • DumpRenderTree/qt/TestRunnerQt.cpp:

(TestRunner::TestRunner):
(TestRunner::reset):
(TestRunner::dumpNotifications):
(TestRunner::grantWebNotificationPermission):
(TestRunner::denyWebNotificationPermission):
(TestRunner::removeAllWebNotificationPermissions):

  • DumpRenderTree/qt/TestRunnerQt.h:

(TestRunner):

LayoutTests:

Unskip the now working tests in http/tests/notifications.
Skip four tests that still fail on WebKit1.
Update tests that need notifications dumped.

  • fast/notifications/notifications-click-event.html:
  • fast/notifications/notifications-display-close-events.html:
  • fast/notifications/notifications-no-icon.html:
  • fast/notifications/notifications-replace.html:
  • fast/notifications/notifications-rtl.html:
  • fast/notifications/notifications-with-permission.html:
  • platform/qt-5.0-wk1/TestExpectations:
  • platform/qt/TestExpectations:
4:47 AM Changeset in webkit [141258] by pfeldman@chromium.org
  • 9 edits
    1 add in trunk/Source/WebCore

Web Inspector: migrate file selection dialog to the viewport.
https://bugs.webkit.org/show_bug.cgi?id=108313

Reviewed by Vsevolod Vlasov.

Otherwise it takes too long to render.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/FilteredItemSelectionDialog.js:

(WebInspector.FilteredItemSelectionDialog):
(WebInspector.FilteredItemSelectionDialog.prototype.focus):
(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.FilteredItemSelectionDialog.prototype._itemsLoaded):
(WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._filterItems):
(WebInspector.FilteredItemSelectionDialog.prototype._onKeyDown.updateSelection):
(WebInspector.FilteredItemSelectionDialog.prototype._onKeyDown):
(WebInspector.FilteredItemSelectionDialog.prototype._updateSelection):
(WebInspector.FilteredItemSelectionDialog.prototype._onClick):
(WebInspector.FilteredItemSelectionDialog.prototype._onMouseMove):
(WebInspector.FilteredItemSelectionDialog.prototype.itemCount):
(WebInspector.FilteredItemSelectionDialog.prototype.itemElement):

  • inspector/front-end/ViewportControl.js: Added.

(WebInspector.ViewportControl):
(WebInspector.ViewportControl.Provider):
(WebInspector.ViewportControl.Provider.prototype.itemCount):
(WebInspector.ViewportControl.Provider.prototype.itemElement):
(WebInspector.ViewportControl.prototype.contentElement):
(WebInspector.ViewportControl.prototype.refresh):
(WebInspector.ViewportControl.prototype._onScroll):
(WebInspector.ViewportControl.prototype.rowsPerViewport):
(WebInspector.ViewportControl.prototype.firstVisibleIndex):
(WebInspector.ViewportControl.prototype.lastVisibleIndex):
(WebInspector.ViewportControl.prototype.renderedElementAt):
(WebInspector.ViewportControl.prototype.scrollItemIntoView):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/filteredItemSelectionDialog.css:

(.js-outline-dialog .container div.item.selected):
(.js-outline-dialog .container div.item span.highlight):

  • inspector/front-end/inspector.html:
4:43 AM Changeset in webkit [141257] by commit-queue@webkit.org
  • 4 edits
    2 adds
    2 deletes in trunk

Web Inspector: implement highlight range API
https://bugs.webkit.org/show_bug.cgi?id=108317

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-30
Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/editor/text-editor-highlight-api.html

Introduce RangeHighlightDescriptor class and implement Highlight Range
api.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.DefaultTextEditor.prototype.removeHighlight):
(WebInspector.DefaultTextEditor.prototype.highlightRange):
(WebInspector.TextEditorMainPanel.prototype.removeHighlight):
(WebInspector.TextEditorMainPanel.prototype.highlightRange):
(WebInspector.TextEditorMainPanel.RangeHighlightDescriptor):
(WebInspector.TextEditorMainPanel.RangeHighlightDescriptor.prototype.affectsLine):
(WebInspector.TextEditorMainPanel.RangeHighlightDescriptor.prototype.rangesForLine):
(WebInspector.TextEditorMainPanel.RangeHighlightDescriptor.prototype.cssClass):
(WebInspector.TextEditorMainPanel.TokenHighlighter.prototype._removeHighlight):

  • inspector/front-end/TextEditor.js:

(WebInspector.TextEditor.prototype.highlightRange):
(WebInspector.TextEditor.prototype.removeHighlight):

LayoutTests:

Added test cases to the existed test to cover highlight range
functionality.

  • inspector/editor/text-editor-highlight-api-expected.txt: Added.
  • inspector/editor/text-editor-highlight-api.html: Added.
  • inspector/editor/text-editor-highlight-regexp-expected.txt: Removed.
  • inspector/editor/text-editor-highlight-regexp.html: Removed.
4:39 AM Changeset in webkit [141256] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/accessibility/aria-combobox-expected.txt: Rebaselining after r141186.
4:27 AM Changeset in webkit [141255] by Simon Hausmann
  • 12 edits
    3 deletes in trunk/Source

[Qt] Remove QT4_UNICODE related code paths
https://bugs.webkit.org/show_bug.cgi?id=108316

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Get rid of QT4_UNICODE and any related code paths. The Qt port
requires Qt5 and ICU these days. This also allows for the removal
of TextCodecQt.

  • Target.pri:
  • platform/KURL.cpp:

(WebCore::appendEncodedHostname):

  • platform/graphics/SurrogatePairAwareTextIterator.cpp:

(WebCore::SurrogatePairAwareTextIterator::normalizeVoicingMarks):

  • platform/text/TextEncoding.cpp:

(WebCore::TextEncoding::encode):

  • platform/text/TextEncodingRegistry.cpp:

(WebCore::extendTextCodecMaps):

  • platform/text/qt/TextCodecQt.cpp: Removed.
  • platform/text/qt/TextCodecQt.h: Removed.

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataUseFeatures.in: The feature macro has been removed.

Source/WTF:

Get rid of QT4_UNICODE and any related code paths. The Qt port
requires Qt5 and ICU these days.

  • WTF.gypi:
  • WTF.pro:
  • wtf/unicode/Unicode.h:
  • wtf/unicode/qt4/UnicodeQt4.h: Removed.
4:21 AM Changeset in webkit [141254] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

BUILD FIX: Make WebCorePrefix.h build on iOS
<http://webkit.org/b/108224>

Reviewed by Sam Weinig.

  • WebCorePrefix.h:
  • Include <wtf/Platform.h>.
  • Do not include <CoreServices/CoreServices.h> on iOS.
  • Include <Foundation/Foundation.h> instead of <Cocoa/Cocoa.h> on iOS.
4:20 AM Changeset in webkit [141253] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

Build fix for WinCE after r141156.

  • PlatformWinCE.cmake:
4:13 AM Changeset in webkit [141252] by jknotten@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

[Chromium] Fix find in page rects for overflowing content.
https://bugs.webkit.org/show_bug.cgi?id=104924

Reviewed by Julien Chaffraix.

If a div has overflowing content, we should only normalise its
coordinates against the renderview or the containing scrollable block.

TEST=WebFrameTest.FindInPageMatchRects

  • src/FindInPageCoordinates.cpp:

(WebKit::enclosingScrollableAncestor):

Helper function to find the enclosing containing block with an overflow clip.

(WebKit::toNormalizedRect):

Pass in the container as an argument.

(WebKit::findInPageRectFromAbsoluteRect):

Compute the container for toNormalizedRect using enclosingScrollableAncestor.

  • tests/WebFrameTest.cpp:

Add expectations for new tests in WebFrameTest::FindInPageMatchRects and WebFrameTest::FindInPage.

  • tests/data/find.html:

Add test case for <select> element.

  • tests/data/find_in_page_frame.html:

Add test cases:

  • Result 15, 16 tests that containing <div> with style float:left and height:0px does not impact coordinate normalization.
  • Result 17, 18 tests that matches with absolute positioning are normalized containing relative positioned block, even if there is a closer parent block with overflow clip.
  • Result 19 adds a test case for <select> element.
4:07 AM Changeset in webkit [141251] by yurys@chromium.org
  • 7 edits
    3 moves
    2 adds in trunk/LayoutTests

Web Inspector: move heap profiler protocol tests into heap-profiler subfolder
https://bugs.webkit.org/show_bug.cgi?id=108324

Reviewed by Vsevolod Vlasov.

Moved heap profiler protocol tests into LayoutTests/inspector-protocol/heap-profiler

  • inspector-protocol/heap-profiler/resources/page-with-function.html: Renamed from LayoutTests/inspector-protocol/resources/page-with-function.html.
  • inspector-protocol/heap-profiler/take-heap-snapshot-expected.txt: Renamed from LayoutTests/inspector-protocol/take-heap-snapshot-expected.txt.
  • inspector-protocol/heap-profiler/take-heap-snapshot.html: Renamed from LayoutTests/inspector-protocol/take-heap-snapshot.html.
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
4:01 AM Changeset in webkit [141250] by aandrey@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: [Canvas] support instrumenting canvases in iframes (frontend side)
https://bugs.webkit.org/show_bug.cgi?id=108319

Reviewed by Pavel Feldman.

Add a frame selector to choose between frames with canvases. Show this selector in the status
bar only if there are 2 or more frames with canvses. Otherwise, assume silently the only
frame with canvases (most common use case).

  • English.lproj/localizedStrings.js:
  • inspector/front-end/CanvasProfileView.js:

(WebInspector.CanvasProfileType):
(WebInspector.CanvasProfileType.prototype.get statusBarItems):
(WebInspector.CanvasProfileType.prototype._runSingleFrameCapturing):
(WebInspector.CanvasProfileType.prototype._startFrameCapturing):
(WebInspector.CanvasProfileType.prototype._frameAdded):
(WebInspector.CanvasProfileType.prototype._addFrame):
(WebInspector.CanvasProfileType.prototype._frameRemoved):
(WebInspector.CanvasProfileType.prototype._contextCreated):
(WebInspector.CanvasProfileType.prototype._selectedFrameId):
(WebInspector.CanvasProfileType.prototype._dispatchViewUpdatedEvent):
(WebInspector.CanvasDispatcher):
(WebInspector.CanvasDispatcher.prototype.contextCreated):

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfileType.prototype.createProfile):
(WebInspector.ProfilesPanel.prototype._onProfileTypeSelected):
(WebInspector.ProfilesPanel.prototype._updateProfileTypeSpecificUI):
(WebInspector.ProfilesPanel.prototype._registerProfileType):

  • inspector/front-end/StatusBarButton.js:

(WebInspector.StatusBarComboBox.prototype.size):

3:59 AM Changeset in webkit [141249] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

Web Inspector: Change the Elements panel sidebar layout based on its aspect ratio.
https://bugs.webkit.org/show_bug.cgi?id=108181

Patch by Vladislav Kaznacheev <kaznacheev@chromium.org> on 2013-01-30
Reviewed by Pavel Feldman.

Sidebar aspect ratio proved to be a better trigger for the sidebar layout change that the docking mode.
Moved the sidebar layout handling completely into WebInspector.SidebarView which now only accepts
two positions: Start (corresponding to Left or Top) and End (corresponding to Right or Bottom).

No new tests.

  • inspector/front-end/CSSNamedFlowCollectionsView.js:

(WebInspector.CSSNamedFlowCollectionsView):

  • inspector/front-end/DockController.js:

(WebInspector.DockController.prototype._updateUI):
(WebInspector.DockController.prototype._toggleDockState):

  • inspector/front-end/ElementsPanel.js:

(WebInspector.ElementsPanel.prototype.onResize):

  • inspector/front-end/FileSystemView.js:

(WebInspector.FileSystemView):

  • inspector/front-end/MemoryStatistics.js:
  • inspector/front-end/Panel.js:

(WebInspector.Panel.prototype.createSidebarView):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel):

  • inspector/front-end/Settings.js:

(WebInspector.ExperimentsSettings):

  • inspector/front-end/SidebarView.js:

(WebInspector.SidebarView):
(WebInspector.SidebarView.prototype.setAutoOrientation):
(WebInspector.SidebarView.prototype._updateSidebarPosition):
(WebInspector.SidebarView.prototype.onResize):

3:58 AM Changeset in webkit [141248] by Patrick Gansterer
  • 3 edits
    1 delete in trunk/Source/WebCore

Port SharedTimerWin.cpp to WinCE
https://bugs.webkit.org/show_bug.cgi?id=103724

Reviewed by Brent Fulgham.

Add #if !OS(WINCE) around some parts of the code, so it can be used by the WinCE port too.

  • PlatformWinCE.cmake:
  • platform/win/SharedTimerWin.cpp:

(WebCore):
(WebCore::TimerWindowWndProc):
(WebCore::initializeOffScreenTimerWindow):
(WebCore::setSharedTimerFireInterval):
(WebCore::stopSharedTimer):

  • platform/wince/SharedTimerWinCE.cpp: Removed.
3:56 AM Changeset in webkit [141247] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

[EFL][Qt][WebGL] Avoid deleting an uncreated canvas.
https://bugs.webkit.org/show_bug.cgi?id=106878

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2013-01-30
Reviewed by Benjamin Poulain.

Source/WebKit2:

setContentsToCanvas is responsible for marking canvas for creation or deletion.
The issue here is that the canvas is marked for deletion even though it has not
been created. This causes an assert in LayerTreeRenderer::destroyCanvas.
This patch adds a seperate check to ensure that CoordinatedGraphicsLayer
tries to issue a request for canvas deletion only after request for canvas
creation has been handled.

New test: fast/canvas/webgl/canvas-resize-crash.html

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
(WebCore::CoordinatedGraphicsLayer::destroyCanvasIfNeeded):
(WebCore::CoordinatedGraphicsLayer::createCanvasIfNeeded):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::fixedToViewport):

LayoutTests:

  • fast/canvas/webgl/canvas-resize-crash-expected.txt: Added.
  • fast/canvas/webgl/canvas-resize-crash.html: Added.
3:55 AM Changeset in webkit [141246] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: Include GraphicsLayerTextureMapper.h

as a forwarding header from WebCore.

3:53 AM Changeset in webkit [141245] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Source/WebCore: ctrl-arrows, ctrl-shift-arrow, ctrl-backspace

Web Inspector: implmenet Ctrl-Arrow/Ctrl-Backspace in DefaultTextEditor
https://bugs.webkit.org/show_bug.cgi?id=107944

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-30
Reviewed by Pavel Feldman.

Add ctrl-arrows/ctrl-shift-arrow/ctrl-backspace shortcuts to jump over
and delete words.

New test: inspector/editor/text-editor-ctrl-movements.html

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.DefaultTextEditor):
(WebInspector.DefaultTextEditor.prototype._registerShortcuts):
(WebInspector.DefaultTextEditor.prototype.selection):
(WebInspector.DefaultTextEditor.WordMovementController): Added.
(WebInspector.DefaultTextEditor.WordMovementController.prototype._registerShortcuts):
(WebInspector.DefaultTextEditor.WordMovementController.prototype.):
(WebInspector.DefaultTextEditor.WordMovementController.prototype._rangeForCtrlArrowMove):
(WebInspector.DefaultTextEditor.WordMovementController.prototype._handleCtrlArrow):
(WebInspector.DefaultTextEditor.WordMovementController.prototype._handleCtrlShiftArrow):
(WebInspector.DefaultTextEditor.WordMovementController.prototype._handleCtrlBackspace):

LayoutTests: Web Inspector: implmenet Ctrl-Arrow/Ctrl-Backspace in DefaultTextEditor
https://bugs.webkit.org/show_bug.cgi?id=107944

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-30
Reviewed by Pavel Feldman.

Add new test to verify ctrl-arrow/ctrl-backspace behavior. Exclude
this test on the platforms that do not currently support eventSender.

  • inspector/editor/text-editor-ctrl-movements-expected.txt: Added.
  • inspector/editor/text-editor-ctrl-movements.html: Added.
  • platform/efl/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
3:49 AM Changeset in webkit [141244] by commit-queue@webkit.org
  • 5 edits in trunk

Web Inspector: do not repaint all lines in highlight regex API in DTE
https://bugs.webkit.org/show_bug.cgi?id=108081

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-30
Reviewed by Pavel Feldman.

Source/WebCore:

Implement repaintLineRowsAffectedByHighlightDescriptor method that
will go through the visible lineRows and repaint only those of them
which were outdated by highlight change.

Improved test: inspector/editor/text-editor-highlight-regexp.html

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorMainPanel.prototype.highlightRegex):
(WebInspector.TextEditorMainPanel.prototype.removeRegexHighlight):
(WebInspector.TextEditorMainPanel.prototype._repaintLineRowsAffectedByHighlightDescriptor):
(WebInspector.TextEditorMainPanel.prototype._paintLines):
(WebInspector.TextEditorMainPanel.prototype._paintLineRows):

LayoutTests:

Modify layout test to add a verification that highlight does not
repaint more DefaultTextEditor line rows than it needs to.

  • inspector/editor/text-editor-highlight-regexp-expected.txt:
  • inspector/editor/text-editor-highlight-regexp.html:
3:20 AM Changeset in webkit [141243] by commit-queue@webkit.org
  • 5 edits in trunk

REGRESSION (r139282): Caret repainting is broken for text-align: center'd <input>
https://bugs.webkit.org/show_bug.cgi?id=108283

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-01-30
Reviewed by Tim Horton.

Occasionally carets won't be fully erased when blinking.
There used to be 1-pixel padding but removed since r139282.
This patch adds back the same workaround.

Source/WebCore:

Need to rebaseline test expectations.

  • editing/FrameSelection.cpp:

(WebCore::repaintCaretForLocalRect):

LayoutTests:

  • platform/chromium/TestExpectations:
  • platform/mac/TestExpectations:
2:52 AM Changeset in webkit [141242] by dominik.rottsches@intel.com
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening.

More plugin test cases skipped, failing after r141051,
plugins/document-open.html is not crashing, but currently timing out.

  • platform/efl-wk2/TestExpectations:
2:45 AM Changeset in webkit [141241] by dominik.rottsches@intel.com
  • 15 edits
    4 deletes in trunk

[HarfBuzz] Remove the HarfBuzz-old code
https://bugs.webkit.org/show_bug.cgi?id=108077

Reviewed by Benjamin Poulain.

.:

Rename WTF_USE_HARFBUZZ_NG to WTF_USE_HARFBUZZ since there
won't be a distinction between ng and non-ng HarfBuzz after
removing the old code.

  • Source/cmake/OptionsEfl.cmake:

Source/WebCore:

Removing unused old variant of the HarfBuzz code.

No new tests, no change in functionality.

  • GNUmakefile.am: Rename WTF_USE_HARFBUZZ_NG to WTF_USE_HARFBUZZ
  • WebCore.gypi: Removing ComplexTextControllerHarfBuzz* and HarfBuzzSkia* files,
  • platform/graphics/SimpleFontData.h:

(SimpleFontData): USE(HARFBUZZ_NG) renamed to USE(HARFBUZZ).

  • platform/graphics/freetype/FontPlatformData.h:

(FontPlatformData): Removing USE(HARFBUZZ_NG) ifdefs.

  • platform/graphics/freetype/FontPlatformDataFreeType.cpp: Removing USE(HARFBUZZ_NG) ifdefs.

(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::harfbuzzFace):

  • platform/graphics/freetype/SimpleFontDataFreeType.cpp: USE(HARFBUZZ_NG) renamed to USE(HARFBUZZ).

(WebCore):

  • platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp: Removed.
  • platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.h: Removed.
  • platform/graphics/harfbuzz/FontHarfBuzz.cpp: Removing USE(HARFBUZZ_NG) ifdefs.

(WebCore::Font::drawComplexText):
(WebCore::Font::floatWidthForComplexText):
(WebCore::Font::offsetForPositionForComplexText):
(WebCore::Font::selectionRectForComplexText):

  • platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Removing USE(HARFBUZZ_NG) ifdefs.

(WebCore::FontPlatformData::harfbuzzFace):

  • platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Removing USE(HARFBUZZ_NG) ifdefs.

(WebCore):
(FontPlatformData):

  • platform/graphics/harfbuzz/HarfBuzzSkia.cpp: Removed.
  • platform/graphics/harfbuzz/HarfBuzzSkia.h: Removed.
  • platform/graphics/skia/SimpleFontDataSkia.cpp: USE(HARFBUZZ_NG) renamed to USE(HARFBUZZ).

(WebCore):

Source/WebKit/chromium:

Rename WTF_USE_HARFBUZZ_NG to WTF_USE_HARFBUZZ since there
won't be a distinction between ng and non-ng HarfBuzz after
removing the old code.

  • features.gypi:
2:34 AM Changeset in webkit [141240] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Major performance improvement in Qt's PluginDatabase implementation
https://bugs.webkit.org/show_bug.cgi?id=106140

Patch by David Faure <faure@kde.org> on 2013-01-30
Reviewed by Simon Hausmann.

No new tests, only a performance improvement.

  • plugins/qt/PluginPackageQt.cpp:

(WebCore::PluginPackage::fetchInfo): Don't do a full-fledged load(), load the module directly.
Keep the refcounting as it was before (broken, but otherwise flash crashes).
(WebCore::PluginPackage::load): Use existing module if fetchInfo created it.

2:31 AM Changeset in webkit [141239] by dominik.rottsches@intel.com
  • 3 edits in trunk/LayoutTests

[EFL] Unreviewed gardening.

More plugin test cases skipped, failing after r141051,

  • platform/efl-wk2/TestExpectations: r140999 leads to assertions in two stacking container tests.
  • platform/efl/TestExpectations: r140613 introduced fast/ruby/select-ruby.html - failing on our port.
2:20 AM Changeset in webkit [141238] by commit-queue@webkit.org
  • 11 edits in trunk/Source

[TexMap] Remove GraphicsLayer in TextureMapperLayer.
https://bugs.webkit.org/show_bug.cgi?id=107073

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-30
Reviewed by Noam Rosenthal.

Source/WebCore:

Remove the dependency of TextureMapperLayer on GraphicsLayer. It is needed to
remove GraphicsLayerTextureMapper in LayerTreeRenderer.

This is in preparation for refactoring TextureMapper to work in an actor
model (http://webkit.org/b/103854).

Covered by existing tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::toTextureMapperLayer):
(WebCore):
(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
(WebCore::GraphicsLayerTextureMapper::notifyChange):
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplay):
(WebCore::GraphicsLayerTextureMapper::setContentsNeedsDisplay):

Set BackgroundColorChange to m_changeMask instead of ContentChange.

(WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
(WebCore::GraphicsLayerTextureMapper::setChildren):
(WebCore::GraphicsLayerTextureMapper::addChild):
(WebCore::GraphicsLayerTextureMapper::addChildAtIndex):
(WebCore::GraphicsLayerTextureMapper::addChildAbove):
(WebCore::GraphicsLayerTextureMapper::addChildBelow):
(WebCore::GraphicsLayerTextureMapper::replaceChild):
(WebCore::GraphicsLayerTextureMapper::setMaskLayer):
(WebCore::GraphicsLayerTextureMapper::setReplicatedByLayer):
(WebCore::GraphicsLayerTextureMapper::setPosition):
(WebCore::GraphicsLayerTextureMapper::setAnchorPoint):
(WebCore::GraphicsLayerTextureMapper::setSize):
(WebCore::GraphicsLayerTextureMapper::setTransform):
(WebCore::GraphicsLayerTextureMapper::setChildrenTransform):
(WebCore::GraphicsLayerTextureMapper::setPreserves3D):
(WebCore::GraphicsLayerTextureMapper::setMasksToBounds):
(WebCore::GraphicsLayerTextureMapper::setDrawsContent):
(WebCore::GraphicsLayerTextureMapper::setContentsVisible):
(WebCore::GraphicsLayerTextureMapper::setContentsOpaque):
(WebCore::GraphicsLayerTextureMapper::setBackfaceVisibility):
(WebCore::GraphicsLayerTextureMapper::setOpacity):
(WebCore::GraphicsLayerTextureMapper::setContentsRect):
(WebCore::GraphicsLayerTextureMapper::setContentsToSolidColor):
(WebCore::GraphicsLayerTextureMapper::setContentsToImage):
(WebCore::GraphicsLayerTextureMapper::setContentsToMedia):
(WebCore::GraphicsLayerTextureMapper::setShowDebugBorder):
(WebCore::GraphicsLayerTextureMapper::setShowRepaintCounter):
(WebCore::GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly):
(WebCore::GraphicsLayerTextureMapper::prepareBackingStoreIfNeeded):
(WebCore::GraphicsLayerTextureMapper::updateDebugBorderAndRepaintCount):
(WebCore::GraphicsLayerTextureMapper::setDebugBorder):
(WebCore::toTextureMapperLayerVector):
(WebCore::GraphicsLayerTextureMapper::commitLayerChanges):

Flush pending changes into TextureMapperLayer.

(WebCore::GraphicsLayerTextureMapper::addAnimation):
(WebCore::GraphicsLayerTextureMapper::setAnimations):
(WebCore::GraphicsLayerTextureMapper::setFilters):
(WebCore::GraphicsLayerTextureMapper::setBackingStore):
(WebCore::GraphicsLayerTextureMapper::setFixedToViewport):
(WebCore::GraphicsLayerTextureMapper::setRepaintCount):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):
(WebCore):

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::setChildren):
(WebCore::TextureMapperLayer::setMaskLayer):
(WebCore):
(WebCore::TextureMapperLayer::setReplicaLayer):
(WebCore::TextureMapperLayer::setPosition):
(WebCore::TextureMapperLayer::setSize):
(WebCore::TextureMapperLayer::setAnchorPoint):
(WebCore::TextureMapperLayer::setPreserves3D):
(WebCore::TextureMapperLayer::setTransform):
(WebCore::TextureMapperLayer::setChildrenTransform):
(WebCore::TextureMapperLayer::setContentsRect):
(WebCore::TextureMapperLayer::setMasksToBounds):
(WebCore::TextureMapperLayer::setDrawsContent):
(WebCore::TextureMapperLayer::setContentsVisible):
(WebCore::TextureMapperLayer::setContentsOpaque):
(WebCore::TextureMapperLayer::setBackfaceVisibility):
(WebCore::TextureMapperLayer::setOpacity):
(WebCore::TextureMapperLayer::setSolidColor):
(WebCore::TextureMapperLayer::setFilters):
(WebCore::TextureMapperLayer::setDebugVisuals):
(WebCore::TextureMapperLayer::setRepaintCount):
(WebCore::TextureMapperLayer::setContentsLayer):
(WebCore::TextureMapperLayer::setAnimations):
(WebCore::TextureMapperLayer::setFixedToViewport):
(WebCore::TextureMapperLayer::setBackingStore):

  • platform/graphics/texmap/TextureMapperLayer.h:

(WebCore):
(TextureMapperLayer):
(WebCore::TextureMapperLayer::TextureMapperLayer):

Source/WebKit/efl:

Include GraphicsLayerTextureMapper.h to use toTextureMapperLayer().

  • WebCoreSupport/AcceleratedCompositingContextEfl.cpp:

Source/WebKit/gtk:

Include GraphicsLayerTextureMapper.h to use toTextureMapperLayer().

  • WebCoreSupport/AcceleratedCompositingContextGL.cpp:

Source/WebKit/qt:

Include GraphicsLayerTextureMapper.h to use toTextureMapperLayer().

  • WebCoreSupport/TextureMapperLayerClientQt.cpp:
2:13 AM Changeset in webkit [141237] by jochen@chromium.org
  • 10 edits in trunk/Tools

[chromium] move methods from WebTestDelegate to WebTestRunner
https://bugs.webkit.org/show_bug.cgi?id=108309

Reviewed by Adam Barth.

By moving more logic to the TestRunner library, we can share more
code with content shell.

  • DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:
  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebTestProxyBase):
(WebTestRunner::WebTestProxy::createView):
(WebTestRunner::WebTestProxy::isSmartInsertDeleteEnabled):
(WebTestRunner::WebTestProxy::isSelectTrailingWhitespaceEnabled):

  • DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:

(WebTestRunner::WebTestRunner::isSmartInsertDeleteEnabled):
(WebTestRunner::WebTestRunner::isSelectTrailingWhitespaceEnabled):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::reset):
(WebTestRunner::TestRunner::isSmartInsertDeleteEnabled):
(WebTestRunner):
(WebTestRunner::TestRunner::isSelectTrailingWhitespaceEnabled):
(WebTestRunner::TestRunner::setSmartInsertDeleteEnabled):
(WebTestRunner::TestRunner::setSelectTrailingWhitespaceEnabled):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:

(WebTestRunner::WebTestProxyBase::createView):
(WebTestRunner::WebTestProxyBase::isSmartInsertDeleteEnabled):
(WebTestRunner):
(WebTestRunner::WebTestProxyBase::isSelectTrailingWhitespaceEnabled):

  • DumpRenderTree/chromium/TestShell.h:

(TestShell):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::createView):
(WebViewHost::didStartLoading):
(WebViewHost::didStopLoading):
(WebViewHost::isSmartInsertDeleteEnabled):
(WebViewHost::isSelectTrailingWhitespaceEnabled):
(WebViewHost::reset):

  • DumpRenderTree/chromium/WebViewHost.h:

(WebViewHost):

1:50 AM Changeset in webkit [141236] by kseo@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Add Jae Hyun Park to contributor list.

  • Scripts/webkitpy/common/config/committers.py:
1:41 AM Changeset in webkit [141235] by esprehn@chromium.org
  • 2 edits in trunk/Source/WebCore

getDecorationRootAndDecoratedRoot should add new user agent shadow roots
https://bugs.webkit.org/show_bug.cgi?id=108301

Reviewed by Hajime Morita.

getDecorationRootAndDecoratedRoot intended to add a second UserAgentShadowRoot
to the input, not just reuse the existing one so it could insert icons into
the inputs. Add back in this behavior for now so we can sort out the right thing
to do.

This behavior is wrong in the current architecture since it means if you had an
input type=submit, add an author shadow root, and then change the type to text
and then the browser decorates it your shadow magically becomes inaccessible since
input.shadowRoot is no longer available. This feature is currently only used for
decorating type=password fields in Chromium with an icon for password generation.

No new tests, there's no way to test this because it's only used in Chromium
by way of the ChromeClient.

  • html/shadow/TextFieldDecorationElement.cpp:

(WebCore::getDecorationRootAndDecoratedRoot):

1:37 AM Changeset in webkit [141234] by jochen@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] WebConsoleMessage is missing LevelDebug (chromium bug 172416)
https://bugs.webkit.org/show_bug.cgi?id=108004
http://code.google.com/p/chromium/issues/detail?id=172416

console.debug triggers a NOTREACHED() assertation in Chromium. This
is because WebCore::MessageLevel contains 5 levels, including debug,
where WebConsoleMessage::Level is missing a "debug" level. Add a
WebConsoleMessage::LevelDebug so that it can get passed up to the
renderer even if it doesn't make use of that now.

Requires another patch to chromium itself to fix chromium bug 172416
but this is a prerequisite.

Also add an enum compile time check to AssertMatchingEnums.cpp,

Patch by Kevin Day <kevinday@gmail.com> on 2013-01-28
Reviewed by Jochen Eisinger.

  • public/WebConsoleMessage.h:
  • src/AssertMatchingEnums.cpp:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::addMessageToConsole):

1:28 AM Changeset in webkit [141233] by allan.jensen@digia.com
  • 6 edits in trunk/Source/WebKit/qt

[Qt][WK1] Remember denied permission for notifications
https://bugs.webkit.org/show_bug.cgi?id=107694

Reviewed by Jocelyn Turcotte.

Store denied permissions. According to the specification, we should
ask the user again if he has already granted or denied permission.

  • WebCoreSupport/NotificationPresenterClientQt.cpp:

(WebCore::NotificationPresenterClientQt::requestPermission):
(WebCore::NotificationPresenterClientQt::setNotificationsAllowedForFrame):

  • WebCoreSupport/NotificationPresenterClientQt.h:

(NotificationPresenterClientQt):

  • WebCoreSupport/QWebPageAdapter.cpp:

(QWebPageAdapter::setNotificationsAllowedForFrame):

  • WebCoreSupport/QWebPageAdapter.h:
  • WidgetApi/qwebpage.cpp:

(QWebPage::setFeaturePermission):

12:22 AM Changeset in webkit [141232] by commit-queue@webkit.org
  • 8 edits in trunk/Source

Coordinated Graphics: Remove m_pendingSyncBackingStores in LayerTreeRenderer.
https://bugs.webkit.org/show_bug.cgi?id=107099

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-30
Reviewed by Noam Rosenthal.

Source/WebCore:

Add GraphicsLayerTextureMapper::setBackingStore() so that
LayerTreeRenderer sets a backing store to GraphicsLayerTextureMapper.

Remove three methods of TextureMapperLayer related to a backing store
because they are no longer used.

Covered by existing compositing tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly):
(WebCore::GraphicsLayerTextureMapper::prepareBackingStoreIfNeeded):
(WebCore):
(WebCore::GraphicsLayerTextureMapper::updateDebugBorderAndRepaintCount):
(WebCore::GraphicsLayerTextureMapper::updateBackingStoreIfNeeded):
(WebCore::GraphicsLayerTextureMapper::setBackingStore):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::flushCompositingStateForThisLayerOnly):

  • platform/graphics/texmap/TextureMapperLayer.h:

(TextureMapperLayer):

Source/WebKit2:

Instead of queuing the setting of backing stores in LayerTreeRenderer,
and then setting them directly to TextureMapperLayer, we allow
GraphicsLayerTextureMapper's existing queuing mechanism to handle that.
Instead of a m_pendingSyncBackingStores queue, we have a m_backingStores
queue which can be applied much more easily to the layer tree.

In addition, LayerTreeRenderer::purgeGLResources() does not call
TextureMapperLayer::clearBackingStoresRecursive() because
TextureMapperLayer will be destructed soon.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::deleteLayer):
(WebKit::LayerTreeRenderer::createBackingStoreIfNeeded):
(WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):
(WebKit::LayerTreeRenderer::resetBackingStoreSizeToLayerSize):
(WebKit::LayerTreeRenderer::createTile):
(WebKit::LayerTreeRenderer::removeTile):
(WebKit::LayerTreeRenderer::updateTile):
(WebKit::LayerTreeRenderer::commitPendingBackingStoreOperations):
(WebKit::LayerTreeRenderer::purgeGLResources):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
12:22 AM Changeset in webkit [141231] by wangxianzhu@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

[Chromium] Correct zoom for focused node when using compositor scaling
https://bugs.webkit.org/show_bug.cgi?id=107599

Reviewed by Adam Barth.

When applyDeviceScaleFactorInCompositor, targetScale should exclude device scale factor.
When applyPageScaleFactorInCompositor, caret size and content sizes are in css pixels and they should be in the viewport of the new scale.

Reapply r141153. Added font-size in html to ensure same caret size across platforms.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::scrollFocusedNodeIntoRect):
(WebKit):
(WebKit::WebViewImpl::computeScaleAndScrollForFocusedNode): Extracted from scrollFocusedNodeIntoRect() to ease testing.

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp: Updated test DivScrollEditableTest
  • tests/data/get_scale_for_zoom_into_editable_test.html: Moved the logic of onload script (which seems not to work) into WebFrameTest.cpp.
12:05 AM Changeset in webkit [141230] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: DTE adds additional space to the end of line.
https://bugs.webkit.org/show_bug.cgi?id=108192

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-30
Reviewed by Pavel Feldman.

Append overlay highlight spans before decorations elements and skip
them in _collectLinesFromDom method.

No new tests.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorMainPanel.prototype._appendOverlayHighlight):
(WebInspector.TextEditorMainPanel.prototype._collectLinesFromDOM):

Jan 29, 2013:

11:48 PM Changeset in webkit [141229] by zandobersek@gmail.com
  • 2 edits in trunk

Unreviewed GTK build fix after r141175.

  • Source/autotools/symbols.filter: Export the WebCore::Element::createShadowRoot symbol.
11:28 PM Changeset in webkit [141228] by shinyak@chromium.org
  • 3 edits
    2 adds in trunk

Renderer is recreated unexpectedly after detach in HTMLInputElement
https://bugs.webkit.org/show_bug.cgi?id=108150

Reviewed by Kent Tamura.

Source/WebCore:

After r140659, destoryShadowSubtree() may update style in removeChild(). It causes
attaching HTMLInputElement before creating shadowsubtree in HTMLInputElement::updateType().

For safe, destroyShadowSubtree() should be done before detach().

Test: fast/forms/number/number-change-type-on-focus-2.html

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::updateType):

LayoutTests:

  • fast/forms/time-multiple-fields/time-multiple-fields-change-type-on-focus-2.html: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-change-type-on-focus-2-expected.txt: Added.
10:31 PM Changeset in webkit [141227] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed. EFL Gradening.

fast/events/constructors/composition-event-constructor.html isn't exist anymore.

  • platform/efl/TestExpectations:
10:30 PM Changeset in webkit [141226] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Scrollbar and scroll corner composited layers positioned incorrectly
https://bugs.webkit.org/show_bug.cgi?id=108255

Patch by James Robinson <jamesr@chromium.org> on 2013-01-29
Reviewed by Simon Fraser.

ScrollView::updateScrollbars() needs to update the overflow controls composited layers if scrollbars are added
or removed. It was doing this by recording on entry to the function if it had horizontal or vertical scrollbars
and then comparing that to m_horizontal/verticalScrollbar on exit. Unfortunately updateScrollbars is recursive
and exits without running the postamble code when nested on the callstack. As a result, scrollbars may be
added or removed several times during the recursion, possibly leaving the overflow control layers in an
inconsistent state, while ending up with the same set of scrollbars.

This changes the "has anything changed" logic to only compare local state (hasXXXScrollbar vs
newHasXXXScrollbar) so changes in recursive calls are not considered.

  • platform/ScrollView.cpp:

(WebCore::ScrollView::updateScrollbars):

10:14 PM Changeset in webkit [141225] by shinyak@chromium.org
  • 2 edits in trunk/Source/WebCore

Convert deprecatedShadowAncestorNode() to shadowHost() in Editor.cpp
https://bugs.webkit.org/show_bug.cgi?id=108287

Reviewed by Hajime Morita.

This is the effort to convert deprecatedShadowAncestorNode() to shadowHost().

Since all the caller object of deprecatedShadowAncestorNode() is in a shadow tree, calling deprecatedShadowAncestorNode()
is equiavalent to calling shadowHost(). Also, for all the occurence of deprecatedShadowAncestorNode(), we don't need to
worry about nested ShadowDOM issues. So directly converting deprecatedShadowAncestorNode() to shadowHost() should be safe.

No new tests, simple refactoring.

  • editing/Editor.cpp:

(WebCore::Editor::rangeOfString):
(WebCore::Editor::countMatchesForText):

10:07 PM Changeset in webkit [141224] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Update the expected generated message results
https://bugs.webkit.org/show_bug.cgi?id=108293

Reviewed by Beth Dakin.

  • Scripts/webkit2/messages.py:

(generate_messages_header):

  • Scripts/webkit2/messages_unittest.py:
10:02 PM Changeset in webkit [141223] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk/Tools

Need a cr-linux debug EWS bot
https://bugs.webkit.org/show_bug.cgi?id=98957

Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-29
Reviewed by Eric Seidel.

Added cr-linux-debug-ews bot to webkit-patch, QueueStatusServer and GCE build scripts.

  • EWSTools/GoogleComputeEngine/build-cr-linux-debug-ews.sh: Added.
  • QueueStatusServer/app.yaml:
  • QueueStatusServer/config/queues.py: Added.
  • QueueStatusServer/model/queues.py:

(Queue.init):
(Queue.queue_with_name):
(Queue.all):

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

(ChromiumLinuxDebugEWS):

9:43 PM Changeset in webkit [141222] by ggaren@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Be a little more conservative about emitting table-based switches
https://bugs.webkit.org/show_bug.cgi?id=108292

Reviewed by Filip Pizlo.

Profiling shows we're using op_switch in cases where it's a regression.

  • bytecompiler/NodesCodegen.cpp:

(JSC):
(JSC::length):
(JSC::CaseBlockNode::tryTableSwitch):
(JSC::CaseBlockNode::emitBytecodeForBlock):

  • parser/Nodes.h:

(CaseBlockNode):

9:37 PM Changeset in webkit [141221] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Rubberband scrolling on news.google.com causes text to blink repeatedly
https://bugs.webkit.org/show_bug.cgi?id=107326

Reviewed by Beth Dakin.

When in the middle of layout, RenderBlock::updateScrollInfoAfterLayout()
could cause us to re-evaluate reasons for compositing, via the call
to updateLayerCompositingState() in RenderLayer::updateScrollInfoAfterLayout().

At this time, when layout is still happening, it's bad to look at render
geometry to decide when to do compositing (e.g. for fixed position); we might
incorrectly conclude that the layer is outside the viewport.

Fix by having RenderLayerCompositing store in a member whether it's safe
to look at layout information. requiresCompositingForPosition() then consults
this bit, and, if it needs to make decisions based on layout but layout is not
complete, it doesn't change the compositing state of the layer.

Not testable, since dumping the layer tree will update layout and mask the bug.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::RenderLayerCompositor):
(WebCore::RenderLayerCompositor::updateCompositingLayers):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

  • rendering/RenderLayerCompositor.h:

(RenderLayerCompositor):

9:36 PM Changeset in webkit [141220] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a failing Mac Lion test expectation per bug 108291.

  • platform/mac/TestExpectations:
9:17 PM Changeset in webkit [141219] by mark.lam@apple.com
  • 9 edits
    2 adds in trunk/Source

Introducing WTF::TypeSafeEnum and DatabaseError.
https://bugs.webkit.org/show_bug.cgi?id=108279.

Reviewed by Geoffrey Garen.

Source/WebCore:

DatabaseError will be used later in the webdatabase refactoring effort.
It is currently unused.

No new tests.

  • GNUmakefile.list.am:
  • Modules/webdatabase/DatabaseError.h: Added.

(WebCore):

  • Target.pri:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:

Source/WTF:

  • WTF.xcodeproj/project.pbxproj:
  • wtf/TypeSafeEnum.h: Added.

(WTF):
(TypeSafeEnum):
(WTF::TypeSafeEnum::TypeSafeEnum):
(WTF::TypeSafeEnum::value):
(WTF::TypeSafeEnum::operator==):
(WTF::TypeSafeEnum::operator!=):
(WTF::TypeSafeEnum::operator<):
(WTF::TypeSafeEnum::operator<=):
(WTF::TypeSafeEnum::operator>):
(WTF::TypeSafeEnum::operator>=):

8:55 PM Changeset in webkit [141218] by esprehn@chromium.org
  • 6 edits in trunk/Source/WebCore

Move ShadowRoot creation into ElementShadow
https://bugs.webkit.org/show_bug.cgi?id=108267

Reviewed by Hajime Morita.

Instead of the ShadowRoot::create method doing crazy factory things and
then needing to assert about the state of the ShadowRoot in addShadowRoot,
just create ShadowRoots from inside ElementShadow.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::createShadowRoot): Use addShadowRoot().
(WebCore::Element::ensureUserAgentShadowRoot): Use addShadowRoot().

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::addShadowRoot): Now returns the new ShadowRoot.

  • dom/ElementShadow.h:

(ElementShadow):

  • dom/ShadowRoot.cpp:
  • dom/ShadowRoot.h:

(WebCore::ShadowRoot::create): No longer does the association.
(WebCore::ShadowRoot::setHost): Sets parent tree scope automatically.

8:33 PM Changeset in webkit [141217] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Marking fixed-position-composited-page-scale-down tests as failing.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
8:05 PM Changeset in webkit [141216] by mark.lam@apple.com
  • 12 edits
    2 moves in trunk/Source/WebCore

Rename DBBackend::Server to DatabaseServer.
https://bugs.webkit.org/show_bug.cgi?id=108278.

Rubber stamped by Geoffrey Garen.

This is only a renaming operation as part of the webdatabase refactoring
effort. There is no semantic change.

No new tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/webdatabase/DBBackendServer.cpp: Removed.
  • Modules/webdatabase/DBBackendServer.h: Removed.
  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::DatabaseManager):

  • Modules/webdatabase/DatabaseServer.cpp: Copied from Source/WebCore/Modules/webdatabase/DBBackendServer.cpp.

(WebCore::DatabaseServer::initialize):
(WebCore::DatabaseServer::setClient):
(WebCore::DatabaseServer::databaseDirectoryPath):
(WebCore::DatabaseServer::setDatabaseDirectoryPath):
(WebCore::DatabaseServer::fullPathForDatabase):
(WebCore::DatabaseServer::hasEntryForOrigin):
(WebCore::DatabaseServer::origins):
(WebCore::DatabaseServer::databaseNamesForOrigin):
(WebCore::DatabaseServer::detailsForNameAndOrigin):
(WebCore::DatabaseServer::usageForOrigin):
(WebCore::DatabaseServer::quotaForOrigin):
(WebCore::DatabaseServer::setQuota):
(WebCore::DatabaseServer::deleteAllDatabases):
(WebCore::DatabaseServer::deleteOrigin):
(WebCore::DatabaseServer::deleteDatabase):
(WebCore::DatabaseServer::scheduleNotifyDatabaseChanged):
(WebCore::DatabaseServer::databaseChanged):
(WebCore::DatabaseServer::closeDatabasesImmediately):
(WebCore::DatabaseServer::interruptAllDatabasesForContext):
(WebCore::DatabaseServer::canEstablishDatabase):
(WebCore::DatabaseServer::addOpenDatabase):
(WebCore::DatabaseServer::removeOpenDatabase):
(WebCore::DatabaseServer::setDatabaseDetails):
(WebCore::DatabaseServer::getMaxSizeForDatabase):
(WebCore):

  • Modules/webdatabase/DatabaseServer.h: Copied from Source/WebCore/Modules/webdatabase/DBBackendServer.h.
  • Target.pri:
  • WebCore.gypi:
  • WebCore.order:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/DatabaseStrategy.cpp:

(WebCore::DatabaseStrategy::getDatabaseServer):

8:02 PM Changeset in webkit [141215] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Marking terminate-during-sync-operation.html as crashing after r141166.

Unreviwed. Gardening.

  • platform/chromium/TestExpectations:
7:57 PM Changeset in webkit [141214] by keishi@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

[Chromium] Rebaselining probably after r141136.

Unreviwed. Gardening.

  • platform/chromium-win/http/tests/loading/redirect-methods-expected.txt: Added.
7:49 PM Changeset in webkit [141213] by tkent@chromium.org
  • 3 adds in branches/chromium/1364/Source/WebCore/Resources/pagepopups/chromium

Add leftover files for r141211

7:41 PM Changeset in webkit [141212] by Chris Fleizach
  • 3 edits
    2 adds in trunk

AX: VoiceOver not reading bullets correctly in the text of notes
https://bugs.webkit.org/show_bug.cgi?id=107980

Reviewed by Ryosuke Niwa.

Source/WebCore:

Accessibility code should not assume that all list markers end with the same "." suffix.
We need to use the actual suffix.

Test: platform/mac/accessibility/listmarker-suffix.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::listMarkerTextForNodeAndPosition):

LayoutTests:

  • platform/mac/accessibility/listmarker-suffix-expected.txt: Added.
  • platform/mac/accessibility/listmarker-suffix.html: Added.
7:36 PM Changeset in webkit [141211] by tkent@chromium.org
  • 19 edits
    1 delete in branches/chromium/1364

Merge 140778

Adjust design of the Calendar Picker
https://bugs.webkit.org/show_bug.cgi?id=107507

Reviewed by Kent Tamura.

.:

  • ManualTests/forms/calendar-picker.html: Use pickerCommonChromium.css and calendarPickerChromium.css.

Source/WebCore:

Covered by existing calendar picker appearance tests.

  • Resources/pagepopups/calendarPicker.css:

(body): Use bigger font.
(.calendar-picker):
(.month-selector):
(.month-selector svg):
(.month-selector-popup-contents):
(.year-month-button-left .year-month-button):
(.year-month-button-right .year-month-button):
(.days-area-container):
(.days-area):
(.day-label):
(.day):
(.available):
(.month-mode .day):
(.today-clear-area .today-button):

  • Resources/pagepopups/calendarPicker.js:

(CalendarPicker.prototype.fixWindowSize): Calculate the width of today-clear-area too.
(YearMonthController.prototype.attachTo):
(YearMonthController.prototype._attachLeftButtonsTo): Use svg icons inside buttons.
(YearMonthController.prototype._attachRightButtonsTo): Use svg icons inside buttons.
(YearMonthController.prototype.setMonth):
(YearMonthController.prototype._handleButtonClick):

  • Resources/pagepopups/calendarPickerMac.css: Removed.
  • Resources/pagepopups/chromium/calendarPickerChromium.css: Added.

(.year-month-button):
(.days-area-container:focus):

  • Resources/pagepopups/chromium/pickerCommonChromium.css: Added. Use Chrome-style buttons.

(button):
(:enabled:hover:-webkit-any(button, input[type='button'])):
(:enabled:active:-webkit-any(button, input[type='button'])):
(:disabled:-webkit-any(button, input[type='button'])):
(:enabled:focus:-webkit-any(button, input[type='button'])):

  • WebCore.gyp/WebCore.gyp: Include pickerCommonChromium.css and calendarPickerChromium.css.
  • rendering/RenderTheme.cpp: Remove extraCalendarPickerStyleSheet
  • rendering/RenderTheme.h: Ditto.
  • rendering/RenderThemeChromiumMac.h: Ditto.
  • rendering/RenderThemeChromiumMac.mm: Ditto.

(WebCore):

Source/WebKit/chromium:

  • src/DateTimeChooserImpl.cpp:

(WebKit::DateTimeChooserImpl::writeDocument): Include pickerCommonChromium.css and calendarPickerChromium.css.

LayoutTests:

  • platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations.html:
  • platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations-expected.txt:
  • platform/chromium/fast/forms/calendar-picker/month-picker-key-operations-expected.txt:
  • platform/chromium/fast/forms/calendar-picker/month-picker-key-operations.html:
  • platform/chromium/fast/forms/calendar-picker/week-picker-key-operations-expected.txt:
  • platform/chromium-win/platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations-expected.txt:
  • platform/chromium-win/platform/chromium/fast/forms/calendar-picker/month-picker-key-operations-expected.txt:
  • platform/chromium-win/platform/chromium/fast/forms/calendar-picker/week-picker-key-operations-expected.txt:
  • platform/chromium/fast/forms/calendar-picker/week-picker-key-operations.html:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ru-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-step-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-step-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-step-expected.png:
  • platform/chromium/TestExpectations: Marking calendar picker appearance tests as needing rebaseline.

TBR=keishi@webkit.org
BUG=crbug.com/172514
Review URL: https://codereview.chromium.org/12082066

7:34 PM Changeset in webkit [141210] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] fast/workers/storage crashing after r141166

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
7:29 PM Changeset in webkit [141209] by weinig@apple.com
  • 21 edits in trunk/Source/WebKit2

Replace unnecessary ArgumentDecoder member functions with decode overloads
https://bugs.webkit.org/show_bug.cgi?id=102013

Reviewed by Anders Carlsson.

  • Platform/CoreIPC/ArgumentCoders.cpp:

(CoreIPC::::decode):

  • Platform/CoreIPC/ArgumentCoders.h:
  • Platform/CoreIPC/ArgumentDecoder.cpp:

(CoreIPC::ArgumentDecoder::decodeVariableLengthByteArray):
(CoreIPC::ArgumentDecoder::decode):

  • Platform/CoreIPC/ArgumentDecoder.h:

(ArgumentDecoder):
(CoreIPC::ArgumentDecoder::decodeEnum):
(CoreIPC):

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::dispatchSyncMessage):

  • Platform/CoreIPC/MessageDecoder.cpp:

(CoreIPC::MessageDecoder::MessageDecoder):

  • Platform/mac/SharedMemoryMac.cpp:

(WebKit::SharedMemory::Handle::decode):

  • Platform/win/SharedMemoryWin.cpp:

(WebKit::SharedMemory::Handle::decode):

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(CoreIPC::::decode):
(CoreIPC::decodeTimingFunction):

  • Shared/DictionaryPopupInfo.cpp:

(WebKit::DictionaryPopupInfo::decode):

  • Shared/UserMessageCoders.h:

(WebKit::UserMessageDecoder::baseDecode):

  • Shared/cf/ArgumentCodersCF.cpp:

(CoreIPC::decode):

  • Shared/mac/ArgumentCodersMac.mm:

(CoreIPC::decode):

  • Shared/mac/ObjCObjectGraphCoders.mm:

(WebKit::ObjCObjectGraphDecoder::baseDecode):

  • Shared/mac/SandboxExtensionMac.mm:

(WebKit::SandboxExtension::HandleArray::decode):

  • Shared/mac/SecItemRequestData.cpp:

(WebKit::SecItemRequestData::decode):

  • Shared/mac/SecItemResponseData.cpp:

(WebKit::SecItemResponseData::decode):

  • Shared/qt/ArgumentCodersQt.cpp:

(CoreIPC::::decode):

  • Shared/qt/QtNetworkReplyData.cpp:

(WebKit::QtNetworkReplyData::decode):

  • WebProcess/WebPage/DecoderAdapter.cpp:

(WebKit::DecoderAdapter::decodeBool):
(WebKit::DecoderAdapter::decodeUInt16):
(WebKit::DecoderAdapter::decodeUInt32):
(WebKit::DecoderAdapter::decodeUInt64):
(WebKit::DecoderAdapter::decodeInt32):
(WebKit::DecoderAdapter::decodeInt64):
(WebKit::DecoderAdapter::decodeFloat):
(WebKit::DecoderAdapter::decodeDouble):

7:21 PM Changeset in webkit [141208] by keishi@webkit.org
  • 18 edits in trunk/LayoutTests

[Chromium] Rebaselining after r141195

Unreviewed. Gardening.

  • platform/chromium-mac-lion/fast/forms/date/date-appearance-l10n-expected.png:
  • platform/chromium-mac-lion/fast/forms/datetime/datetime-appearance-l10n-expected.png:
  • platform/chromium-mac-lion/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png:
  • platform/chromium-mac-lion/fast/forms/month/month-appearance-l10n-expected.png:
  • platform/chromium-mac-lion/fast/forms/week/week-appearance-basic-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-l10n-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/datetime/datetime-appearance-l10n-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/month/month-appearance-l10n-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/week/week-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/date/date-appearance-l10n-expected.png:
  • platform/chromium-mac/fast/forms/datetime/datetime-appearance-l10n-expected.png:
  • platform/chromium-mac/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png:
  • platform/chromium-mac/fast/forms/month/month-appearance-l10n-expected.png:
  • platform/chromium-mac/fast/forms/time/time-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/week/week-appearance-basic-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-expected.png:
7:20 PM Changeset in webkit [141207] by mark.lam@apple.com
  • 32 edits
    2 moves in trunk/Source

Rename AbstractDatabase to DatabaseBackend.
https://bugs.webkit.org/show_bug.cgi?id=108275.

Reviewed by Sam Weinig.

This is a pure rename operation as part of the webdatabase refactoring
effort. There is no semantic change in this patch.

Source/WebCore:

No new tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/webdatabase/AbstractDatabase.cpp: Removed.
  • Modules/webdatabase/AbstractDatabase.h: Removed.
  • Modules/webdatabase/AbstractDatabaseServer.h:

(WebCore):
(AbstractDatabaseServer):

  • Modules/webdatabase/DBBackendServer.cpp:

(WebCore::DBBackend::Server::databaseChanged):
(WebCore::DBBackend::Server::addOpenDatabase):
(WebCore::DBBackend::Server::removeOpenDatabase):
(WebCore::DBBackend::Server::getMaxSizeForDatabase):

  • Modules/webdatabase/DBBackendServer.h:
  • Modules/webdatabase/Database.cpp:

(WebCore::Database::Database):
(WebCore::Database::version):
(WebCore::Database::performOpenAndVerify):

  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackend.cpp: Copied from Source/WebCore/Modules/webdatabase/AbstractDatabase.cpp.

(WebCore):
(WebCore::DatabaseBackend::databaseInfoTableName):
(WebCore::DatabaseBackend::DatabaseBackend):
(WebCore::DatabaseBackend::~DatabaseBackend):
(WebCore::DatabaseBackend::closeDatabase):
(WebCore::DatabaseBackend::version):
(WebCore::DatabaseBackend::performOpenAndVerify):
(WebCore::DatabaseBackend::scriptExecutionContext):
(WebCore::DatabaseBackend::securityOrigin):
(WebCore::DatabaseBackend::stringIdentifier):
(WebCore::DatabaseBackend::displayName):
(WebCore::DatabaseBackend::estimatedSize):
(WebCore::DatabaseBackend::fileName):
(WebCore::DatabaseBackend::details):
(WebCore::DatabaseBackend::getVersionFromDatabase):
(WebCore::DatabaseBackend::setVersionInDatabase):
(WebCore::DatabaseBackend::setExpectedVersion):
(WebCore::DatabaseBackend::getCachedVersion):
(WebCore::DatabaseBackend::setCachedVersion):
(WebCore::DatabaseBackend::getActualVersionForTransaction):
(WebCore::DatabaseBackend::disableAuthorizer):
(WebCore::DatabaseBackend::enableAuthorizer):
(WebCore::DatabaseBackend::setAuthorizerReadOnly):
(WebCore::DatabaseBackend::setAuthorizerPermissions):
(WebCore::DatabaseBackend::lastActionChangedDatabase):
(WebCore::DatabaseBackend::lastActionWasInsert):
(WebCore::DatabaseBackend::resetDeletes):
(WebCore::DatabaseBackend::hadDeletes):
(WebCore::DatabaseBackend::resetAuthorizer):
(WebCore::DatabaseBackend::maximumSize):
(WebCore::DatabaseBackend::incrementalVacuumIfNeeded):
(WebCore::DatabaseBackend::interrupt):
(WebCore::DatabaseBackend::isInterrupted):
(WebCore::DatabaseBackend::logErrorMessage):
(WebCore::DatabaseBackend::reportOpenDatabaseResult):
(WebCore::DatabaseBackend::reportChangeVersionResult):
(WebCore::DatabaseBackend::reportStartTransactionResult):
(WebCore::DatabaseBackend::reportCommitTransactionResult):
(WebCore::DatabaseBackend::reportExecuteStatementResult):
(WebCore::DatabaseBackend::reportVacuumDatabaseResult):

  • Modules/webdatabase/DatabaseBackend.h: Copied from Source/WebCore/Modules/webdatabase/AbstractDatabase.h.

(DatabaseBackend):

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::databaseChanged):
(WebCore::DatabaseManager::addOpenDatabase):
(WebCore::DatabaseManager::removeOpenDatabase):
(WebCore::DatabaseManager::getMaxSizeForDatabase):

  • Modules/webdatabase/DatabaseManager.h:

(DatabaseManager):

  • Modules/webdatabase/DatabaseSync.cpp:

(WebCore::DatabaseSync::DatabaseSync):

  • Modules/webdatabase/DatabaseSync.h:
  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::getMaxSizeForDatabase):
(WebCore::DatabaseTracker::databaseChanged):
(WebCore::DatabaseTracker::interruptAllDatabasesForContext):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::getOpenDatabases):
(WebCore::DatabaseTracker::deleteDatabaseFile):

  • Modules/webdatabase/DatabaseTracker.h:

(WebCore):
(DatabaseTracker):

  • Modules/webdatabase/OriginQuotaManager.cpp:

(WebCore::OriginQuotaManager::markDatabase):

  • Modules/webdatabase/OriginQuotaManager.h:

(WebCore):
(OriginQuotaManager):

  • Modules/webdatabase/SQLTransactionClient.cpp:

(WebCore::SQLTransactionClient::didCommitWriteTransaction):
(WebCore::SQLTransactionClient::didExecuteStatement):
(WebCore::SQLTransactionClient::didExceedQuota):

  • Modules/webdatabase/SQLTransactionClient.h:

(WebCore):
(SQLTransactionClient):

  • Modules/webdatabase/chromium/DatabaseObserver.h:

(WebCore):
(DatabaseObserver):

  • Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp:

(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::NotifyDatabaseObserverOnCloseTask::create):
(WebCore::NotifyDatabaseObserverOnCloseTask::NotifyDatabaseObserverOnCloseTask):
(NotifyDatabaseObserverOnCloseTask):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::getMaxSizeForDatabase):
(WebCore::DatabaseTracker::CloseOneDatabaseImmediatelyTask::create):
(WebCore::DatabaseTracker::CloseOneDatabaseImmediatelyTask::CloseOneDatabaseImmediatelyTask):
(DatabaseTracker::CloseOneDatabaseImmediatelyTask):
(WebCore::DatabaseTracker::closeOneDatabaseImmediately):

  • Modules/webdatabase/chromium/SQLTransactionClientChromium.cpp:

(WebCore::NotifyDatabaseChangedTask::create):
(WebCore::NotifyDatabaseChangedTask::NotifyDatabaseChangedTask):
(NotifyDatabaseChangedTask):
(WebCore::SQLTransactionClient::didCommitWriteTransaction):
(WebCore::SQLTransactionClient::didExecuteStatement):
(WebCore::SQLTransactionClient::didExceedQuota):

  • Target.pri:
  • WebCore.gypi:
  • WebCore.order:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit/chromium:

  • public/WebDatabase.h:

(WebDatabase):

  • src/DatabaseObserver.cpp:

(WebCore::DatabaseObserver::databaseOpened):
(WebCore::DatabaseObserver::databaseModified):
(WebCore::DatabaseObserver::databaseClosed):
(WebCore::DatabaseObserver::reportOpenDatabaseResult):
(WebCore::DatabaseObserver::reportChangeVersionResult):
(WebCore::DatabaseObserver::reportStartTransactionResult):
(WebCore::DatabaseObserver::reportCommitTransactionResult):
(WebCore::DatabaseObserver::reportExecuteStatementResult):
(WebCore::DatabaseObserver::reportVacuumDatabaseResult):

  • src/WebDatabase.cpp:

(WebKit::WebDatabase::WebDatabase):

7:00 PM Changeset in webkit [141206] by commit-queue@webkit.org
  • 3 edits
    5 deletes in trunk/Tools

Tidy up Sheriffbot's Sheriffs command's unit tests
https://bugs.webkit.org/show_bug.cgi?id=108262

Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-29
Reviewed by Eric Seidel.

Added the use of MockWeb instead of the filesystem to test the sheriffs command.

  • Scripts/webkitpy/tool/bot/irc_command.py:

(Sheriffs._retrieve_webkit_sheriffs):
(Sheriffs.execute):

  • Scripts/webkitpy/tool/bot/irc_command_unittest.py:

(IRCCommandTest.test_sheriffs):

  • Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_0.js: Removed.
  • Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_1.js: Removed.
  • Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_2.js: Removed.
  • Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_malformed.js: Removed.
  • Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_zero.js: Removed.
6:43 PM Changeset in webkit [141205] by Lucas Forschler
  • 2 edits in trunk/Tools

Enable tests for Windows EWS!
https://bugs.webkit.org/show_bug.cgi?id=107968

Reviewed by Adam Barth.

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

(WinEWS):

6:37 PM Changeset in webkit [141204] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r141153.
http://trac.webkit.org/changeset/141153
https://bugs.webkit.org/show_bug.cgi?id=108280

Caused WebFrameTest.DivScrollIntoEditableTest to fail on Mac.
(Requested by keishi on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-29

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::scrollFocusedNodeIntoRect):

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp:
  • tests/data/get_scale_for_zoom_into_editable_test.html:
6:32 PM Changeset in webkit [141203] by gyuyoung.kim@samsung.com
  • 5 edits in trunk/Source/WebKit2

[WK2] Adjust missing MessageID removals to fix build breaks
https://bugs.webkit.org/show_bug.cgi?id=108276

Unreviewed to fix build breaks.

Some MessageID removals wasn't adjusted into ConnectionUnix.cpp and coordinated graphics.

  • Platform/CoreIPC/unix/ConnectionUnix.cpp:

(CoreIPC::MessageInfo::MessageInfo):
(CoreIPC::MessageInfo::setMessageBodyIsOutOfLine):
(CoreIPC::MessageInfo::isMessageBodyIsOutOfLine):
(CoreIPC::Connection::processMessage):
(CoreIPC::Connection::sendOutgoingMessage):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveMessage):

  • UIProcess/WebProcessProxy.cpp:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::didReceiveMessage):

6:30 PM Changeset in webkit [141202] by commit-queue@webkit.org
  • 24 edits in trunk

Unreviewed, rolling out r140983.
http://trac.webkit.org/changeset/140983
https://bugs.webkit.org/show_bug.cgi?id=108277

Unfortunately, this API has one last client (Requested by
abarth on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-29

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • Modules/notifications/Notification.cpp:

(WebCore::Notification::Notification):
(WebCore):
(WebCore::Notification::create):

  • Modules/notifications/Notification.h:

(Notification):
(WebCore::Notification::isHTML):
(WebCore::Notification::setHTML):
(WebCore::Notification::url):
(WebCore::Notification::setURL):

  • Modules/notifications/NotificationCenter.h:

(WebCore::NotificationCenter::createHTMLNotification):
(NotificationCenter):

  • Modules/notifications/NotificationCenter.idl:
  • page/FeatureObserver.h:

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataEnableFeatures.in:

Source/WebKit/chromium:

  • src/WebNotification.cpp:

(WebKit::WebNotification::isHTML):
(WebKit::WebNotification::url):
(WebKit::WebNotification::iconURL):
(WebKit::WebNotification::title):
(WebKit::WebNotification::body):

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/qt:

  • WebCoreSupport/NotificationPresenterClientQt.cpp:

(WebCore::NotificationPresenterClientQt::displayNotification):
(WebCore::NotificationPresenterClientQt::cancel):
(WebCore::NotificationPresenterClientQt::notificationClicked):
(WebCore::NotificationPresenterClientQt::removeReplacedNotificationFromQueue):
(WebCore::NotificationPresenterClientQt::dumpReplacedIdText):
(WebCore::NotificationPresenterClientQt::dumpShowText):

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/Platform.h:

LayoutTests:

  • fast/notifications/notifications-with-permission-expected.txt:
  • fast/notifications/notifications-with-permission.html:
6:22 PM Changeset in webkit [141201] by tkent@chromium.org
  • 10 edits
    1 copy in branches/chromium/1364

Merge 140803

INPUT_MULTIPLE_FIELDS_UI: Inconsistent value of aria-valuetext attribute
https://bugs.webkit.org/show_bug.cgi?id=107897

Reviewed by Kentaro Hara.

Source/WebCore:

aria-valuetext and aria-valuenow attributes had inconsistent values in
a case of initial empty state and a case that a user clears a field.

  • aria-valuetext attribute should have "blank" message in the initial empty state.
  • aria-valuenow attribute should be removed in the cleared empty state.

Also, we have a bug that aira-valuenow had a symbolic value such as "AM"
"January". It should always have a numeric value according to the
specification.
http://www.w3.org/TR/wai-aria/states_and_properties#aria-valuenow

No new tests. Updates fast/forms/*-multiple-fields/*-multiple-fields-ax-aria-attributes.html.

  • html/shadow/DateTimeFieldElement.cpp:

(WebCore::DateTimeFieldElement::DateTimeFieldElement):
Set "blank" message to aria-valuetext attribute.
(WebCore::DateTimeFieldElement::updateVisibleValue):
aria-valuenow attribute should be a numeric value. Apply String::number
to the return value of valueForARIAValueNow.
Remove aria-valuenow attribute if nothing is selected.
(WebCore::DateTimeFieldElement::valueForARIAValueNow):
Added.

  • html/shadow/DateTimeFieldElement.h:

(DateTimeFieldElement): Declare valueForARIAValueNow.

  • html/shadow/DateTimeSymbolicFieldElement.cpp:

(WebCore::DateTimeSymbolicFieldElement::valueForARIAValueNow):
Added. Returns 1 + internal selection index.
For example, the function returns 1 for January.

  • html/shadow/DateTimeSymbolicFieldElement.h:

(DateTimeSymbolicFieldElement): Declare valueForARIAValueNow.

LayoutTests:

Fix existing tests to show aria-valuenow attribute values.

  • fast/forms/resources/multiple-fields-ax-aria-attributes.js: Added.
  • fast/forms/date-multiple-fields/date-multiple-fields-ax-aria-attributes-expected.txt:
  • fast/forms/date-multiple-fields/date-multiple-fields-ax-aria-attributes.html:

Use multiple-fields-ax-aria-attributes.js.
Add tests for initial empty-value state.

  • fast/forms/month-multiple-fields/month-multiple-fields-ax-aria-attributes-expected.txt:
  • fast/forms/month-multiple-fields/month-multiple-fields-ax-aria-attributes.html:

Use multiple-fields-ax-aria-attributes.js.

  • fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes.html:

Use multiple-fields-ax-aria-attributes.js.

TBR=tkent@chromium.org
BUG=crbug.com/172199
Review URL: https://codereview.chromium.org/12086056

6:19 PM Changeset in webkit [141200] by tkent@chromium.org
  • 6 edits in branches/chromium/1364/Source/WebCore/html/shadow

Merge 140791

INPUT_MULTIPLE_FIELDS_UI: Refactoring: Remove confusing minimum() and maximum() of DateTimeSymbolicFieldElement
https://bugs.webkit.org/show_bug.cgi?id=107918

Reviewed by Kentaro Hara.

DateTimeSymbolicFieldElement::minimum() and maximum() are very
confusing. They don't return minimum/maximum value of 0-based symbol
index though valueAsInteger is 0-based. These functions are used only
for ARIA attributes in DateTimeFieldElement::initialize().

  • Remove DateTimeFieldElement::minimum() and maximum(), and pass

minimum/maximum values for ARIA attributes as function arguments.

  • DateTimeNumericFieldElement::maximum() is now non-virtual. It is called by subclasses.

No new tests. This should not change any behavior.

  • html/shadow/DateTimeFieldElement.cpp:

(WebCore::DateTimeFieldElement::initialize):
Add axMimimum/axMaximum arguments. Don't use minimum() and maximum().

  • html/shadow/DateTimeFieldElement.h:

(DateTimeFieldElement): Ditto.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::initialize):
Pass m_range.minimum and maximum to DateTimeFieldElement::initialize().

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement):

  • Add initialize()
  • Make maximum() non-virtual
  • Remove minimum().
  • html/shadow/DateTimeSymbolicFieldElement.cpp:

(WebCore::DateTimeSymbolicFieldElement::initialize):
Pass m_minimumIndex + 1 and m_maximumIndex + 1 to
DateTimeFieldElement::initialize().

  • html/shadow/DateTimeSymbolicFieldElement.h:

(DateTimeSymbolicFieldElement):
Add initialize() and remove minimum() and maximum().

TBR=tkent@chromium.org
BUG=crbug.com/172199
Review URL: https://codereview.chromium.org/12079062

6:17 PM Changeset in webkit [141199] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Objective-C API: JSObjCClassInfo creates reference cycle with JSContext
https://bugs.webkit.org/show_bug.cgi?id=107839

Reviewed by Geoffrey Garen.

Fixing several ASSERTs that were incorrect along with some of the reallocation of m_prototype and
m_constructor that they were based on.

  • API/JSWrapperMap.mm:

(-[JSObjCClassInfo allocateConstructorAndPrototypeWithSuperClassInfo:]): We now only allocate those
fields that are null (i.e. have been collected or have never been allocated to begin with).
(-[JSObjCClassInfo reallocateConstructorAndOrPrototype]): Renamed to better indicate that we're
reallocating one or both of the prototype/constructor combo.
(-[JSObjCClassInfo wrapperForObject:]): Call new reallocate function.
(-[JSObjCClassInfo constructor]): Ditto.

6:17 PM Changeset in webkit [141198] by rafaelw@chromium.org
  • 4 edits
    2 adds in trunk

parserAppendChild and parserInsertBefore should ensure that child nodes are in the same document
https://bugs.webkit.org/show_bug.cgi?id=108260

Reviewed by Eric Seidel.

Source/WebCore:

Test: fast/parser/xml-error-adopted.xml

The check and adoption if the documents don't match is now moved into ContainerNode::parser* from HTMLConstructionSite.

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::parserInsertBefore):
(WebCore::ContainerNode::parserAppendChild):

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::insertTextNode):
(WebCore::HTMLConstructionSite::findFosterSite):
(WebCore::HTMLConstructionSite::fosterParent):

LayoutTests:

  • fast/parser/xml-error-adopted-expected.txt: Added.
  • fast/parser/xml-error-adopted.xml: Added.
6:11 PM Changeset in webkit [141197] by tkent@chromium.org
  • 4 edits in branches/chromium/1364/Source/WebCore/html/shadow

Merge 140788

INPUT_MULTIPLE_FIELDS_UI: Refactoring: Remove unused DateTimeHourFieldElement::valueAsInteger
https://bugs.webkit.org/show_bug.cgi?id=107915

Reviewed by Kentaro Hara.

DateTimeHourFieldElement::valueAsInteger is never called. Remove it and
make valueAsInteger non-public.

No new tests. This shouldn't change any behavior.

  • html/shadow/DateTimeFieldElement.h:

(DateTimeFieldElement): Make valueAsInteger protected.

  • html/shadow/DateTimeFieldElements.cpp:

Remove DateTimeHourFieldElement::valueAsInteger.
(WebCore::DateTimeHourFieldElement::populateDateTimeFieldsState):
Remove unnecessary DateTimeNumericFieldElement:: prefix.

  • html/shadow/DateTimeFieldElements.h:

(DateTimeHourFieldElement): Remove valueAsInteger.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement):
Make valueAsInteger FINAL.

BUG=crbug.com/172199
TBR=tkent@chromium.org
Review URL: https://codereview.chromium.org/12090060

6:08 PM Changeset in webkit [141196] by shinyak@chromium.org
  • 13 edits
    2 adds in trunk

[Chromium] Cannot copy text when selecting readonly (or disabled) input elements
https://bugs.webkit.org/show_bug.cgi?id=106287

Reviewed by Hajime Morita.

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

When an input element is disabled or readonly, its inner element is not editable. So its rootEditableElement
does not exist. In WebViewImpl::caretOrSelectionRange, if rootEditableElement does not exist, it uses
a document element. However, the inner element and document element have a different tree scope, the selection range
cannot be gotten correctly.

We should use ShadowRoot instead of document so that we can stay in the same tree scope.

  • WebCore.exp.in:
  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::rootEditableElementOrTreeScopeRootNode): Added. Returns ShadowRoot so that we can
stay in the same tree scope.
(WebCore):

  • editing/FrameSelection.h:

(FrameSelection):

  • editing/TextIterator.cpp:

(WebCore::TextIterator::getLocationAndLengthFromRange):

  • editing/TextIterator.h:

(TextIterator):

Source/WebKit/chromium:

When an input element is disabled or readonly, its inner element is not editable. So its rootEditableElement
does not exist. In WebViewImpl::caretOrSelectionRange, if rootEditableElement does not exist, it uses
a document element. However, the inner element and document element have a different tree scope, selection range
cannot be gotten correctly.

We should use ShadowRoot instead of document so that we can stay in the same tree scope.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::caretOrSelectionRange):

  • tests/WebViewTest.cpp:
  • tests/data/selection_disabled.html: Added.
  • tests/data/selection_readonly.html: Added.

Source/WebKit/win:

  • WebKit.vcproj/WebKitExports.def.in:
6:05 PM Changeset in webkit [141195] by tkent@chromium.org
  • 16 edits
    2 adds in trunk

INPUT_MULTIPLE_FIELDS_UI: The content should not overflow the <input> boundary
https://bugs.webkit.org/show_bug.cgi?id=108069

Reviewed by Hajime Morita.

Source/WebCore:

To avoid the overflow, we do:
A) Specify overflow:hidden to <input>.

However, we need to make sub-fields and buttons workable even if the
width is smaller than the intrinsic size. So, we do:
B) Make DateTimeEditElement shrinkable, and
C) Make the sub-fields scrollable horizontally like input[type=text].

To achieve B, we need to remove -webkit-date-and-time-container (D)
because width property for <input> can shrink only the direct child
elements.

Tests: fast/forms/time-multiple-fields/time-multiple-fields-narrow-width-scroll.html
and new test cases in fast/forms/date/date-appearance-basic.html.

  • css/html.css:

(input[type="date"]):
Change -webkit-align-items value. (D)
Specify overflow:hidden. (A)
(input[type="datetime"]): Ditto.
(input[type="datetime-local"]): Ditto.
(input[type="month"]): Ditto.
(input[type="time"]): Ditto.
(input[type="week"]): Ditto.
(input::-webkit-datetime-edit):
Add min-width:0 (B), and overflow:hidden. (C)
Remove unnecessary white-space:pre because of white-space:nowrap below.
(input::-webkit-datetime-edit-fields-wrapper):
Added. This is the child of -webkit-datetime-edit, and contains
sub-fields. (C)

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::createShadowSubtree):
Remove -webkit-date-and-time-container, and append DateTimeEditElement,
spin button, and picker indicator element to the ShadowRoot. (D)
(WebCore::BaseMultipleFieldsDateAndTimeInputType::shouldApplyLocaleDirection):
<input> for multiple fields UI should have the direction of the browser
locale. This is a replacement of the code for dir attribute in
updateInnerTextValue below. (D)
(WebCore::BaseMultipleFieldsDateAndTimeInputType::updateInnerTextValue):
Remove the code to set dir= to -webkit-date-and-time-container.

  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType):
Declare shouldApplyLocaleDirection. (D)

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::HTMLInputElement):
Calls setHasCustomCallbacks for customStyleForRenderer. (D)
(WebCore::HTMLInputElement::customStyleForRenderer):
Set direction to RenderStyle if shouldApplyLocaleDirection is true. This
is a replacement of the dir setting code in
BaseMultipleFieldsDateAndTimeInputType::updateInnerTextValue. (D)

  • html/HTMLInputElement.h:

(HTMLInputElement): Declare customStyleForRenderer. (D)

  • html/InputType.cpp:

(WebCore::InputType::shouldApplyLocaleDirection):
Add default implmentation of shouldApplyLocaleDirection. (D)

  • html/InputType.h:

(InputType): Declare shouldApplyLocaleDirection. (D)

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditBuilder::visitLiteral):
Add elements to -webkit-datetime-edit-fields-wrapper element. (C)
(WebCore::DateTimeEditElement::fieldsWrapperElement):
A helper to get -webkit-datetime-edit-fields-wrapper element. (C)
(WebCore::DateTimeEditElement::addField):
Add elements to -webkit-datetime-edit-fields-wrapper element. (C)
(WebCore::DateTimeEditElement::customStyleForRenderer):

  • Iterate over children of -webkit-datetime-edit-fields-wrapper element. (C)
  • Set width property instead of min-width. (B)

(WebCore::DateTimeEditElement::layout):

  • Prepare -webkit-datetime-edit-fields-wrapper element. (C)
  • Handle children of -webkit-datetime-edit-fields-wrapper element. (C)
  • Need to do style recalc because child structure is changed. (C)
  • html/shadow/DateTimeEditElement.h:

(DateTimeEditElement): Declare fieldsWrapperElement. (C)

LayoutTests:

  • fast/forms/date/date-appearance-basic-expected.txt:
  • fast/forms/date/date-appearance-basic.html:

Add test cases for small width and small height.

  • fast/forms/time-multiple-fields/time-multiple-fields-focus-style.html:

Update the code because of shadow tree structure change.

  • fast/forms/time-multiple-fields/time-multiple-fields-narrow-width-scroll.html:

Added.

  • fast/forms/time-multiple-fields/time-multiple-fields-narrow-width-scroll-expected.txt:

Added.

  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium/TestExpectations:
    • date-appearance-basic.html: New test cases are added.
    • *-appearance-pseudo-element.html: :before :after position is slightly changed because of the -webkit-align-items change.
    • suggestion-picker/*.html: RTL behavior is changed. The direction of suggestion pickers matches to the direction of the input content (browser locale).
5:51 PM Changeset in webkit [141194] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. More Windows7 gardening.

  • platform/win/TestExpectations:
5:48 PM Changeset in webkit [141193] by tsepez@chromium.org
  • 4 edits in trunk/Source

[v8] Enable binding integrity on linux
https://bugs.webkit.org/show_bug.cgi?id=108242

Reviewed by Adam Barth.

Source/WebCore:

Patch is correct if existing tests pass.

  • html/TextMetrics.idl:

Suppress check to allow link on linux.

Source/WebKit/chromium:

  • features.gypi:
5:44 PM Changeset in webkit [141192] by ggaren@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Make precise size classes more precise
https://bugs.webkit.org/show_bug.cgi?id=108270

Reviewed by Mark Hahnenberg.

Size inference makes this profitable.

I chose 8 byte increments because JSString is 24 bytes. Otherwise, 16
byte increments might be better.

  • heap/Heap.h:

(Heap): Removed firstAllocatorWithoutDestructors because it's unused now.

  • heap/MarkedBlock.h:

(MarkedBlock): Updated constants.

  • heap/MarkedSpace.h:

(MarkedSpace):
(JSC): Also reduced the maximum precise size class because my testing
has shown that the smaller size classes are much more common. This
offsets some of the size class explosion caused by reducing the precise
increment.

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions): No need for this ASSERT anymore
because we don't rely on firstAllocatorWithoutDestructors anymore, since
we pick size classes dynamically now.

5:38 PM Changeset in webkit [141191] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Remove MessageID parameter from Connection::sendMessage
https://bugs.webkit.org/show_bug.cgi?id=108269

Reviewed by Sam Weinig.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::sendMessage):
(CoreIPC::Connection::sendSyncReply):
(CoreIPC::Connection::sendSyncMessage):
(CoreIPC::Connection::sendSyncMessageFromSecondaryThread):

  • Platform/CoreIPC/Connection.h:

(Connection):
(CoreIPC::Connection::send):
(CoreIPC::Connection::sendSync):

  • Platform/CoreIPC/MessageSender.h:

(CoreIPC::MessageSender::send):
(CoreIPC::MessageSender::sendMessage):

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::Connection::open):

  • Shared/ChildProcessProxy.cpp:

(WebKit::ChildProcessProxy::sendMessage):
(WebKit::ChildProcessProxy::didFinishLaunching):

  • Shared/WebConnection.cpp:

(WebKit::WebConnection::postMessage):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::postMessage):
(WebKit::InjectedBundle::postSynchronousMessage):

5:31 PM Changeset in webkit [141190] by oliver@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Add some hardening to methodTable()
https://bugs.webkit.org/show_bug.cgi?id=108253

Reviewed by Mark Hahnenberg.

When accessing methodTable() we now always make sure that our
structure _could_ be valid. Added a separate method to get a
classes methodTable during destruction as it's not possible to
validate the structure at that point. This separation might
also make it possible to improve the performance of methodTable
access more generally in future.

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::callDestructor):

  • runtime/JSCell.h:

(JSCell):

  • runtime/JSCellInlines.h:

(JSC::JSCell::methodTableForDestruction):
(JSC):
(JSC::JSCell::methodTable):

5:18 PM Changeset in webkit [141189] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

offlineasm BaseIndex handling is broken on ARM due to MIPS changes
https://bugs.webkit.org/show_bug.cgi?id=108261

Reviewed by Oliver Hunt.

Backends shouldn't override each other's methods. That's not cool.

  • offlineasm/mips.rb:
5:14 PM Changeset in webkit [141188] by aelias@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Disable layout tests impacted by page scale change
https://bugs.webkit.org/show_bug.cgi?id=108232

Unreviewed, gardening.

After https://codereview.chromium.org/12045002/, these
tests are expected to fail. Disabling and creating bugs for follow-up.

  • platform/chromium/TestExpectations:
5:10 PM Changeset in webkit [141187] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Don't updateTileCoverageMap() from setScrollingModeIndication if we don't need to.

Reviewed by Simon Fraser.

Only do the work if the tiled scrolling indicator/map is enabled.

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

(WebCore::TileCache::setScrollingModeIndication):

4:59 PM Changeset in webkit [141186] by Chris Fleizach
  • 4 edits
    2 adds in trunk

AX: Add support for aria-autocomplete="list" on ARIA combobox
https://bugs.webkit.org/show_bug.cgi?id=108228

Reviewed by Ryosuke Niwa.

Source/WebCore:

Comboboxes behave much like textfields, and so they need
to respond like text controls.

Test: platform/mac/accessibility/combox-box-value.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::isTextControl):
(WebCore):

  • accessibility/AccessibilityObject.h:

(AccessibilityObject):

LayoutTests:

  • platform/mac/accessibility/combox-box-value-expected.txt: Added.
  • platform/mac/accessibility/combox-box-value.html: Added.
4:59 PM Changeset in webkit [141185] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

cloop.rb shouldn't use a method called 'dump' for code generation
https://bugs.webkit.org/show_bug.cgi?id=108251

Reviewed by Mark Hahnenberg.

Revert http://trac.webkit.org/changeset/141178 and rename 'dump' to 'clDump'.

Also made trivial build fixes for !ENABLE(JIT).

  • offlineasm/cloop.rb:
  • runtime/Executable.h:

(ExecutableBase):
(JSC::ExecutableBase::intrinsicFor):

  • runtime/JSGlobalData.h:
4:57 PM Changeset in webkit [141184] by thakis@chromium.org
  • 2 edits in trunk/Source/WebCore

[chromium] Do not mark translation-unit-local functions as extern "C"
https://bugs.webkit.org/show_bug.cgi?id=108218

Reviewed by Adam Barth.

Requested by darin in https://bugs.webkit.org/show_bug.cgi?id=107845
This also allows enabling -Wreturn-type-c-linkage again, but I'd like to
wait for the next clang roll (which tweaks this warning) before undoing
r140800 (which removed that warning).

No behavior change.

  • bindings/v8/npruntime.cpp:
4:57 PM Changeset in webkit [141183] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Stop generating the message kind enum
https://bugs.webkit.org/show_bug.cgi?id=108258

Reviewed by Beth Dakin.

  • Platform/CoreIPC/Connection.h:

(CoreIPC::Connection::send):
(CoreIPC::Connection::sendSync):
(CoreIPC::Connection::waitForAndDispatchImmediately):

  • Platform/CoreIPC/MessageSender.h:

(CoreIPC::MessageSender::send):

  • Scripts/webkit2/messages.py:

(surround_in_condition):
(message_to_struct_declaration):
(generate_messages_header):

  • Scripts/webkit2/messages_unittest.py:
  • Scripts/webkit2/model.py:

(Message.init):

  • Shared/ChildProcessProxy.h:

(WebKit::ChildProcessProxy::send):

  • Shared/WebConnection.cpp:

(WebKit::WebConnection::postMessage):

4:56 PM Changeset in webkit [141182] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

MockWeb should be able to serve mock web content
https://bugs.webkit.org/show_bug.cgi?id=108240

Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-29
Reviewed by Dirk Pranke.

Added the ability to have MockWeb serve mock web data.

  • Scripts/webkitpy/common/host_mock.py:

(MockHost.init):

  • Scripts/webkitpy/common/net/web_mock.py:

(MockWeb.init):
(MockWeb.get_binary):

4:50 PM Changeset in webkit [141181] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip a bunch of tests on Win7 in preparation of turning on EWS testers.
https://bugs.webkit.org/show_bug.cgi?id=108249

  • platform/win/TestExpectations:
4:43 PM Changeset in webkit [141180] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix erroneous semicolon causing build failure: if statement has empty body [-Werror,-Wempty-body]
https://bugs.webkit.org/show_bug.cgi?id=108241

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-01-29
Reviewed by Anders Carlsson.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::addExistingWebPage): Remove erroneous
semicolon following the if condition.

4:36 PM Changeset in webkit [141179] by ggaren@apple.com
  • 18 edits
    2 deletes in trunk/Source

Removed GGC because it has been disabled for a long time
https://bugs.webkit.org/show_bug.cgi?id=108245

Reviewed by Filip Pizlo.

../JavaScriptCore:

(JSC::DFG::emitPutReplaceStub):
(JSC::DFG::emitPutTransitionStub):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::writeBarrier):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • heap/CardSet.h: Removed.
  • heap/Heap.cpp:

(JSC::Heap::markRoots):
(JSC::Heap::collect):

  • heap/Heap.h:

(Heap):
(JSC::Heap::shouldCollect):
(JSC::Heap::isWriteBarrierEnabled):
(JSC):
(JSC::Heap::writeBarrier):

  • heap/MarkedBlock.h:

(MarkedBlock):
(JSC):

  • heap/MarkedSpace.cpp:

(JSC):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitWriteBarrier):

../WebCore:

  • ForwardingHeaders/heap/CardSet.h: Removed.
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
4:30 PM Changeset in webkit [141178] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove redundant AST dump method from cloop.rb, since they are already defined in ast.rb
https://bugs.webkit.org/show_bug.cgi?id=108247

Reviewed by Oliver Hunt.

Makes offlineasm dumping easier to read and less likely to cause assertion failures.
Also fixes the strange situation where cloop.rb and ast.rb both defined dump methods,
but cloop.rb was winning.

  • offlineasm/cloop.rb:
4:22 PM Changeset in webkit [141177] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Remove almost everything from MessageID
https://bugs.webkit.org/show_bug.cgi?id=108244

Reviewed by Beth Dakin.

  • Platform/CoreIPC/MessageID.h:

(CoreIPC::MessageID::MessageID):

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC):
(CoreIPC::Connection::sendOutgoingMessage):
(CoreIPC::createMessageDecoder):
(CoreIPC::Connection::receiveSourceEventHandler):

4:07 PM Changeset in webkit [141176] by mhahnenberg@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Objective-C API: JSObjCClassInfo creates reference cycle with JSContext
https://bugs.webkit.org/show_bug.cgi?id=107839

Reviewed by Oliver Hunt.

JSContext has a JSWrapperMap, which has an NSMutableDictionary m_classMap, which has values that
are JSObjCClassInfo objects, which have strong references to two JSValue *'s, m_prototype and
m_constructor, which in turn have strong references to the JSContext, creating a reference cycle.
We should make m_prototype and m_constructor Weak<JSObject>. This gets rid of the strong reference
to the JSContext and also prevents clients from accidentally creating reference cycles by assigning
to the prototype of the constructor. If Weak<JSObject> fields are ever garbage collected, we will
reallocate them.

  • API/JSContext.mm:

(-[JSContext wrapperMap]):

  • API/JSContextInternal.h:
  • API/JSWrapperMap.mm:

(-[JSObjCClassInfo initWithContext:forClass:superClassInfo:]):
(-[JSObjCClassInfo dealloc]):
(-[JSObjCClassInfo allocateConstructorAndPrototypeWithSuperClassInfo:]):
(-[JSObjCClassInfo allocateConstructorAndPrototype]):
(-[JSObjCClassInfo wrapperForObject:]):
(-[JSObjCClassInfo constructor]):

4:02 PM Changeset in webkit [141175] by esprehn@chromium.org
  • 12 edits in trunk/Source

Refactor ShadowRoot exception handling
https://bugs.webkit.org/show_bug.cgi?id=108209

Reviewed by Dimitri Glazkov.

Source/WebCore:

Many of the exception cases for ShadowRoot are actually impossible and
should be asserts instead. We can also move the one case of exception logic,
for elements that don't allow author shadows into Element::createShadowRoot
instead of having it all over the ShadowRoot and ElementShadow classes. This
is the first step in centralizing all ShadowRoot creation inside ElementShadow.

No new tests, covered by existing tests.

  • WebCore.exp.in:
  • dom/Element.cpp:

(WebCore::Element::createShadowRoot): Be explicit about what kind of ShadowRoot you're creating.
(WebCore::Element::ensureUserAgentShadowRoot): No more exceptions.

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::addShadowRoot): This never actually throws exceptions, remove ExceptionCode.

  • dom/ElementShadow.h:

(ElementShadow):

  • dom/ShadowRoot.cpp:

(WebCore::determineUsageType): Merge with Element::createShadowRoot.
(WebCore):
(WebCore::ShadowRoot::ShadowRoot): Moved Histogram logic here since it's actually about the constructor anyway.
(WebCore::ShadowRoot::create): Removed overload that made the code less obvious.

  • dom/ShadowRoot.h:

(ShadowRoot):

  • html/HTMLKeygenElement.cpp:

(WebCore::HTMLKeygenElement::HTMLKeygenElement):

  • html/shadow/TextFieldDecorationElement.cpp:

(WebCore::getDecorationRootAndDecoratedRoot):

  • testing/Internals.cpp:

(WebCore::Internals::ensureShadowRoot):
(WebCore::Internals::createShadowRoot):

Source/WebKit/win:

  • WebKit.vcproj/WebKitExports.def.in: Swap ShadowRoot::create export with Element::createShadowRoot.
4:00 PM Changeset in webkit [141174] by andersca@apple.com
  • 15 edits in trunk/Source/WebKit2

Get rid of MessageID::is()
https://bugs.webkit.org/show_bug.cgi?id=108234

Reviewed by Beth Dakin.

Add explicit message receiver name equality checks instead of using MessageID::is.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
(WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):

  • Platform/CoreIPC/MessageID.h:
  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::didReceiveMessage):
(WebKit::WebProcessConnection::didReceiveSyncMessage):

  • Shared/mac/SecItemShim.cpp:

(WebKit::SecItemShim::didReceiveMessageOnConnectionWorkQueue):

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didReceiveMessage):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveMessage):
(WebKit::WebPageProxy::didReceiveSyncMessage):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveMessage):
(WebKit::WebProcessProxy::didReceiveSyncMessage):
(WebKit::WebProcessProxy::didReceiveMessageOnConnectionWorkQueue):

  • UIProcess/mac/SecItemShimProxy.cpp:

(WebKit::SecItemShimProxy::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::didReceiveMessage):
(WebKit::NetworkProcessConnection::didReceiveSyncMessage):

  • WebProcess/Plugins/PluginProcessConnection.cpp:

(WebKit::PluginProcessConnection::didReceiveSyncMessage):

  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::didReceiveMessage):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didReceiveMessage):
(WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue):

3:54 PM Changeset in webkit [141173] by jer.noble@apple.com
  • 9 edits in trunk/Source

Allow clients to ask for the WebView/WKView placeholder view when in full screen mode.
https://bugs.webkit.org/show_bug.cgi?id=103558
<rdar://problem/12763112>

Reviewed by Benjamin Poulain.

Source/WebKit/mac:

Clients may want to behave differently when their WebView/WKView has been swapped out by a placeholder
view when in full screen mode. Add a simple accessor for the existing placeholder view to
WebFullScreenController and WebView.

  • WebView/WebFullScreenController.h:
  • WebView/WebFullScreenController.mm:

(-[WebFullScreenController webViewPlaceholder]): Added simple accessor.

  • WebView/WebView.mm:

(-[WebView fullScreenPlaceholderView]): Added simple accessor.

Source/WebKit2:

Clients may want to behave differently when their WebView/WKView has been swapped out by a placeholder
view when in full screen mode. Add a simple accessor for the existing placeholder view to
WKFullScreenWindowController and WKView.

  • UIProcess/API/mac/WKView.mm:

(-[WKView fullScreenPlaceholderView]): Added simple accessor.

  • UIProcess/API/mac/WKViewPrivate.h:
  • UIProcess/mac/WKFullScreenWindowController.h:
  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController webViewPlaceholder]): Added simple accessor.

3:35 PM Changeset in webkit [141172] by jberlin@webkit.org
  • 2 edits in trunk/Tools

run-api-tests should have an option to specify root
https://bugs.webkit.org/show_bug.cgi?id=108210

Reviewed by Ryosuke Niwa.

  • Scripts/run-api-tests:

Add the option and use it to set the configuration product directory. Since it is supposed
to point to the built products, do not build the products if root is specified (this mimics
the behavior of run-javascriptcore-tests).

3:24 PM Changeset in webkit [141171] by commit-queue@webkit.org
  • 9 edits in trunk/Source/WebKit2

[WK2] Call LayerTreeHost::deviceOrPageScaleFactorChanged() when a device or page scale factor is changed.
https://bugs.webkit.org/show_bug.cgi?id=107802

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-29
Reviewed by Simon Fraser.

Currently, LayerTreeHostMac and *GTK call deviceOrPageScaleFactorChanged()
of the non compositing GraphicsLayer when a device scale factor is changed.

There are two problems.

  1. We don't notify LayerTreeHost when a page scale factor is changed.
  2. When using TiledCoreAnimationDrawingAreaProxy, LayerTreeHostMac does

not receive the device scale factor changed callback.

So this patch changes three points.

  1. Rename from deviceScaleFactorDidChange() to deviceOrPageScaleFactorChanged()

in LayerTreeHost.

  1. WebPage::setDeviceScaleFactor() calls LayerTreeHost::deviceScaleFactorDidChange()

because of dealing with TiledCoreAnimationDrawingAreaProxy.

  1. WebPage::pageScaleFactor() calls LayerTreeHost::deviceScaleFactorDidChange()

to call deviceOrPageScaleFactorChanged() of the non compositing GraphicsLayer.

Unfortunately, I couldn't think of a way to test this in an automated fashion.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

(WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::updateBackingStoreState):

Don't call LayerTreeHost::deviceScaleFactorDidChange() because this
method calls WebPage::setDeviceScaleFactor() and then
LayerTreeHost::deviceScaleFactorDidChange() is called.

  • WebProcess/WebPage/LayerTreeHost.h:

(LayerTreeHost):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::scalePage):
(WebKit::WebPage::setDeviceScaleFactor):

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::deviceOrPageScaleFactorChanged):

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.h:

(LayerTreeHostGtk):

  • WebProcess/WebPage/mac/LayerTreeHostMac.h:

(LayerTreeHostMac):

  • WebProcess/WebPage/mac/LayerTreeHostMac.mm:

(WebKit::LayerTreeHostMac::deviceOrPageScaleFactorChanged):

3:15 PM Changeset in webkit [141170] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Get rid of MessageID::get()
https://bugs.webkit.org/show_bug.cgi?id=108235

Reviewed by Beth Dakin.

Just check for the message receiver name and message name explicitly instead.

  • Platform/CoreIPC/MessageID.h:

(CoreIPC::MessageID::is):

  • Shared/CoreIPCSupport/WebContextMessageKinds.h:

(WebContextLegacyMessage::messageReceiverName):
(WebContextLegacyMessage):
(WebContextLegacyMessage::postMessageMessageName):
(WebContextLegacyMessage::postSynchronousMessageMessageName):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):

3:00 PM Changeset in webkit [141169] by jsbell@chromium.org
  • 4 edits in branches/chromium/1364/Source

Merge 140483

Prevent race condition during Worker shutdown
https://bugs.webkit.org/show_bug.cgi?id=107577

Reviewed by Dmitry Titov.

Source/WebCore:

During worker shutdown, from the main thread a cleanup task is posted followed by
terminating the message queue, which prevents further tasks from being processed. It was
possible for another task be posted by another thread between the main thread calls
to postTask and terminate(), which would cause that task to run after cleanup. Expose
a new WTF::MessageQueue::appendAndKill() method which keeps a mutex around the two steps,
and use that during worker shutdown.

No reliable tests for the race - problem identified by inspection of user crash stacks.

  • workers/WorkerRunLoop.cpp:

(WebCore::WorkerRunLoop::postTaskAndTerminate): New method, uses MessageQueue::appendAndKill()

  • workers/WorkerRunLoop.h:
  • workers/WorkerThread.cpp:

(WebCore::WorkerThread::stop): Uses postTaskAndTerminate() to avoid race.

Source/WTF:

Add MessageQueue::appendAndKill() which wraps those two steps with a mutex so other
threads can't sneak a message in between.

  • wtf/MessageQueue.h: Added appendAndKill() method.

TBR=jsbell@chromium.org
Review URL: https://codereview.chromium.org/12096050

2:52 PM Changeset in webkit [141168] by oliver@apple.com
  • 5 edits in trunk

REGRESSION (r140594): RELEASE_ASSERT_NOT_REACHED in JSC::Interpreter::execute
https://bugs.webkit.org/show_bug.cgi?id=108097

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

LiteralParser was accepting a bogus 'var a.b = c' statement

  • runtime/LiteralParser.cpp:

(JSC::::tryJSONPParse):

LayoutTests:

Add parser test for invalid var a.b syntax

  • fast/js/parser-syntax-check-expected.txt:
  • fast/js/script-tests/parser-syntax-check.js:
2:52 PM Changeset in webkit [141167] by commit-queue@webkit.org
  • 29 edits in trunk/Source/WebKit2

Add support for enabling process suppression in WebProcesses with no visible pages
https://bugs.webkit.org/show_bug.cgi?id=108054

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-01-29
Reviewed by Anders Carlsson.

Provide a preference to enable process suppression in WebProcesses with
no visible pages even if the application is not completely occluded.
This provides more opportunities for process suppression to take effect.

Replace the messaging of application occlusion status from UI process to
ChildProcesses with messages that indicate the current required process
suppression state. WebProcessProxy should determine if the process is
eligible for process suppression based on both application occlusion
and page visibility. When either of these parameters changes,
the proxy should message the child process of the updated process
suppression state.

  • NetworkProcess/NetworkProcess.messages.in: Rename

SetApplicationIsOccluded to SetProcessSuppressionEnabled.

  • PluginProcess/PluginProcess.messages.in: Ditto.
  • Shared/ChildProcess.h:

(WebKit::ChildProcess::processSuppressionEnabled): Rename
applicationIsOccluded.

  • Shared/WebPreferencesStore.h: Add a new preference

pageVisibilityBasedProcessSuppressionEnabled, to enabled/disable
process suppression of WebProcesses when all pages are hidden.

  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::setProcessSuppressionEnabled): Rename
setApplicationIsOccluded.
(WebKit::ChildProcess::platformInitialize): Replace call to
setApplicationIsOccluded with setProcessSuppressionEnabled.

  • SharedWorkerProcess/SharedWorkerProcess.messages.in: Rename

SetApplicationIsOccluded to SetProcessSuppressionEnabled.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetPageVisibilityBasedProcessSuppressionEnabled):
(WKPreferencesGetPageVisibilityBasedProcessSuppressionEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didFinishLaunching): Use setter
to update process suppression state instead of messaging directly.
Use WebContext::canEnableProcessSuppressionForNetworkProcess() helper
method to determine if process suppression should be enabled.

  • UIProcess/Network/NetworkProcessProxy.h: Rename

setApplicationIsOccluded to setProcessSuppresionEnabled.

  • UIProcess/Network/mac/NetworkProcessProxyMac.mm:

(WebKit::NetworkProcessProxy::setProcessSuppressionEnabled): Ditto.

  • UIProcess/Plugins/PluginProcessManager.h: Ditto.
  • UIProcess/Plugins/PluginProcessProxy.cpp:

(WebKit::PluginProcessProxy::didFinishLaunching): Use setter
to update process suppression state instead of messaging directly.
Use WebContext::canEnableProcessSuppressionForGlobalChildProcesses()
helper method to determine if process suppression should be enabled.

  • UIProcess/Plugins/PluginProcessProxy.h: Rename

setApplicationIsOccluded to setProcessSuppresionEnabled.

  • UIProcess/Plugins/mac/PluginProcessManagerMac.mm:

(WebKit::PluginProcessManager::setProcessSuppressionEnabled): Ditto.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::PluginProcessProxy::setProcessSuppressionEnabled): Ditto.

  • UIProcess/SharedWorkers/SharedWorkerProcessManager.h: Ditto.
  • UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:

(WebKit::SharedWorkerProcessProxy::didFinishLaunching): Use setter
to update process suppression state instead of messaging directly.
Use WebContext::canEnableProcessSuppressionForGlobalChildProcesses()
helper method to determine if process suppression should be enabled.

  • UIProcess/SharedWorkers/SharedWorkerProcessProxy.h: Rename

setApplicationIsOccluded to setProcessSuppresionEnabled.

  • UIProcess/SharedWorkers/mac/SharedWorkerProcessManagerMac.mm:

(WebKit::SharedWorkerProcessManager::setProcessSuppressionEnabled):
Ditto.

  • UIProcess/SharedWorkers/mac/SharedWorkerProcessProxyMac.mm:

(WebKit::SharedWorkerProcessProxy::setProcessSuppressionEnabled): Ditto.

  • UIProcess/WebContext.h: Replace applicationIsOccluded() getter with

helper methods to determine if a child process can have process
suppression enabled.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::viewStateDidChange): Notify WebProcessProxy of
page visibility change.
(WebKit::WebPageProxy::preferencesDidChange): Notify WebProcessProxy of
change in preferences.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::WebProcessProxy): Initialize member variable
tracking process suppression state to false.
(WebKit::WebProcessProxy::createWebPage): Update set of pages which can
be process suppressed and the resulting process suppression state for
the child process.
(WebKit::WebProcessProxy::addExistingWebPage): Ditto.
(WebKit::WebProcessProxy::removeWebPage): Ditto.
(WebKit::WebProcessProxy::pageVisibilityChanged): Ditto.
(WebKit::WebProcessProxy::pagePreferencesChanged): Ditto.
(WebKit::WebProcessProxy::didFinishLaunching): Call
updateProcessSuppressionState().

  • UIProcess/WebProcessProxy.h:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::updateProcessSuppressionStateOfGlobalChildProcesses): Use new
helper method canEnableProcessSuppressionForGlobalChildProcesses() to
determine if process suppression should be enabled.
(WebKit::applicationOcclusionStateChanged): Update renamed methods
and variables.
(WebKit::enableOcclusionNotifications): Move OmitProcessSuppression
user default check into canEnableProcessSuppression methods.
(WebKit::omitProcessSuppression):
(WebKit::WebContext::updateProcessSuppressionStateOfChildProcesses):
Use new helper method canEnableProcessSuppressionForNetworkProcess() to
determine if process suppression should be enabled for NetworkProcess.
Let WebProcess update process suppression state based on application
occlusion state and page visibility.
(WebKit::WebContext::canEnableProcessSuppressionForNetworkProcess):
(WebKit::WebContext::canEnableProcessSuppressionForWebProcess):
(WebKit::WebContext::canEnableProcessSuppressionForGlobalChildProcesses):
(WebKit::WebContext::processSuppressionEnabledChanged): Reevaluate if
process suppression is enabled for all contexts and update process
suppression state of global child processes.

  • UIProcess/mac/WebProcessProxyMac.mm:

(WebKit::WebProcessProxy::pageIsProcessSuppressible):
(WebKit::WebProcessProxy::allPagesAreProcessSuppressible):
(WebKit::WebProcessProxy::updateProcessSuppressionState):

  • WebProcess/WebProcess.messages.in:
2:51 PM Changeset in webkit [141166] by mark.lam@apple.com
  • 14 edits in trunk/Source/WebCore

Change DatabaseContext lookup to be thread-safe.
https://bugs.webkit.org/show_bug.cgi?id=107784.

Reviewed by Geoffrey Garen.

DatabaseContext will no longer be a Supplement of ScriptExecutionContext.
Instead we will maintain a mutex guarded contextMap in the DatabaseManager
which maps ScriptExecutionContexts to DatabaseContexts.

Also cleaned up the shutdown mechanism of the DatabaseContext,
DatabaseThread, and Databases when their owner ScriptExecutionContext
destructs.

No new tests.

  • Modules/webdatabase/AbstractDatabase.cpp:

(WebCore::AbstractDatabase::AbstractDatabase):

  • Modules/webdatabase/AbstractDatabase.h:

(WebCore::AbstractDatabase::databaseContext):
(AbstractDatabase):

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::Database):

  • Modules/webdatabase/Database.h:

(WebCore):
(Database):

  • Modules/webdatabase/DatabaseContext.cpp:

(WebCore):
(WebCore::DatabaseContext::DatabaseContext):
(WebCore::DatabaseContext::~DatabaseContext):
(WebCore::DatabaseContext::contextDestroyed):
(WebCore::DatabaseContext::stop):
(WebCore::DatabaseContext::databaseThread):
(WebCore::DatabaseContext::stopDatabases):

  • Modules/webdatabase/DatabaseContext.h:

(DatabaseContext):
(WebCore::DatabaseContext::scriptExecutionContext):
(WebCore::DatabaseContext::hasOpenDatabases):
(WebCore::DatabaseContext::stopDatabases):

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::manager):
(WebCore::DatabaseManager::DatabaseManager):
(WebCore::DatabaseManager::getExistingDatabaseContext):
(WebCore):
(WebCore::DatabaseManager::getDatabaseContext):
(WebCore::DatabaseManager::registerDatabaseContext):
(WebCore::DatabaseManager::unregisterDatabaseContext):
(WebCore::DatabaseManager::notifyDatabaseContextConstructed):
(WebCore::DatabaseManager::notifyDatabaseContextDestructed):
(WebCore::DatabaseManager::openDatabase):
(WebCore::DatabaseManager::openDatabaseSync):
(WebCore::DatabaseManager::hasOpenDatabases):
(WebCore::DatabaseManager::stopDatabases):
(WebCore::DatabaseManager::interruptAllDatabasesForContext):

  • Modules/webdatabase/DatabaseManager.h:

(WebCore):
(DatabaseManager):
(WebCore::DatabaseManager::notifyDatabaseContextConstructed):
(WebCore::DatabaseManager::notifyDatabaseContextDestructed):

  • Modules/webdatabase/DatabaseSync.cpp:

(WebCore::DatabaseSync::DatabaseSync):

  • Modules/webdatabase/DatabaseSync.h:

(WebCore):
(DatabaseSync):

  • Modules/webdatabase/DatabaseThread.cpp:

(WebCore::DatabaseThread::~DatabaseThread):
(WebCore::DatabaseThread::requestTermination):

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::canEstablishDatabase):

  • dom/ActiveDOMObject.cpp:

(WebCore::ActiveDOMObject::~ActiveDOMObject):

2:24 PM Changeset in webkit [141165] by andersca@apple.com
  • 9 edits
    1 copy in trunk/Source/WebKit2

Start using the message flag in MessageEncoder/MessageDecoder
https://bugs.webkit.org/show_bug.cgi?id=108227

Reviewed by Beth Dakin.

Stop using the flags in MessageID and store the flags directly in the message instead.
This is another step towards eliminating MessageID.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::SyncMessageState::processIncomingMessage):
(CoreIPC::Connection::createSyncMessageEncoder):
(CoreIPC::Connection::sendMessage):
(CoreIPC::Connection::sendSyncMessage):
(CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
(CoreIPC::Connection::dispatchSyncMessage):
(CoreIPC::Connection::dispatchMessage):

  • Platform/CoreIPC/Connection.h:
  • Platform/CoreIPC/MessageDecoder.cpp:

(CoreIPC::MessageDecoder::MessageDecoder):
(CoreIPC::MessageDecoder::isSyncMessage):
(CoreIPC):
(CoreIPC::MessageDecoder::shouldDispatchMessageWhenWaitingForSyncReply):

  • Platform/CoreIPC/MessageDecoder.h:

(MessageDecoder):

  • Platform/CoreIPC/MessageEncoder.cpp:

(CoreIPC):
(CoreIPC::MessageEncoder::MessageEncoder):
(CoreIPC::MessageEncoder::~MessageEncoder):
(CoreIPC::MessageEncoder::setIsSyncMessage):
(CoreIPC::MessageEncoder::setShouldDispatchMessageWhenWaitingForSyncReply):

  • Platform/CoreIPC/MessageEncoder.h:

(MessageEncoder):

  • Platform/CoreIPC/MessageFlags.h: Copied from Source/WebKit2/Platform/CoreIPC/MessageEncoder.h.

(CoreIPC):

  • Platform/CoreIPC/MessageID.h:
  • WebKit2.xcodeproj/project.pbxproj:
2:14 PM Changeset in webkit [141164] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Temporarily disable inspector tests.
They are all timing out due to some configuration problem on the bots.

  • platform/win/TestExpectations:
2:11 PM Changeset in webkit [141163] by jchaffraix@webkit.org
  • 3 edits in trunk/Source/WebCore

[CSS Grid Layout] Make resolveContentBasedTrackSizingFunctionsForItems reuse distributeSpaceToTracks
https://bugs.webkit.org/show_bug.cgi?id=108110

Reviewed by Tony Chang.

This change makes us match more closely the specification by reusing distributeSpaceToTracks inside
resolveContentBasedTrackSizingFunctionsForItems. This also removes some existing code duplication.

Refactoring covered by existing tests.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computedUsedBreadthOfGridTracks):
Updated after distributeSpaceToTracks new arguments. Copying the tracks to a Vector<GridTrack*> is
now done here.

(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
Removed code duplication and switched to using distributeSpaceToTracks.

(WebCore::RenderGrid::distributeSpaceToTracks):
Refactored distributeSpaceToTracks to implement the distribution of any extra space above max breadth
as it was required to pass the tests (required to properly handling min-content > max). Also changed
the arguments of the function to better match the intent of the function.

  • rendering/RenderGrid.h: Updated distributeSpaceToTracks's arguments.
1:51 PM Changeset in webkit [141162] by esprehn@chromium.org
  • 3 edits in trunk/Source/WebCore

Remove all ShadowRoots during ElementShadow destruction
https://bugs.webkit.org/show_bug.cgi?id=108207

Reviewed by Dimitri Glazkov.

There's no reason to expose removeAllShadowRoots since the only legitimate
place to call it is right as we're destroying the ElementShadow.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::~Element): Remove call to removeAllShadowRoots()

  • dom/ElementShadow.h:

(WebCore::ElementShadow::~ElementShadow): Call removeAllShadowRoots().
(ElementShadow): Make removeAllShadowRoots() private.

1:49 PM Changeset in webkit [141161] by cevans@google.com
  • 2 edits
    2 copies in branches/chromium/1364

Merge 140834
BUG=164581
Review URL: https://codereview.chromium.org/12087064

1:32 PM Changeset in webkit [141160] by junov@google.com
  • 4 edits
    2 adds in trunk

REGRESSION (r135628-135632): Double box shadow failure to render
https://bugs.webkit.org/show_bug.cgi?id=107833

Reviewed by Simon Fraser.

Source/WebCore:

Regression caused by http://trac.webkit.org/changeset/135629
The regression was due to faulty occlusion logic that was assuming
that drawing the background color of a render box background layer
could be skipped when the same layer also has an opaque image attached.
In the case where the background color is drawn for the purpose of
rendering a box shadow, the shadow is typically not
completely occluded by the background image because of the shadow
blur and/or offset. This patch fixes the problem by not culling a
background draw if it is used to draw a box shadow.

Test: fast/backgrounds/gradient-background-shadow.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):
Changing occlusion culling test to never cull background color
draw if it is used to draw a box shadow. This is because box shadows
can draw outside the border fill region.

LayoutTests:

New ref test verifies that box shadow is drawn when
background is an opaque image. Test uses an blue gradient
as background image. Reference uses blue background color.

  • fast/backgrounds/gradient-background-shadow-expected.html: Added.
  • fast/backgrounds/gradient-background-shadow.html: Added.
1:22 PM Changeset in webkit [141159] by vollick@chromium.org
  • 2 edits in trunk/Source/WebCore

Add RenderLayer::enclosingStackingContainer
https://bugs.webkit.org/show_bug.cgi?id=108211

Reviewed by Simon Fraser.

No new tests, no change in functionality.

  • rendering/RenderLayer.h:

(WebCore::RenderLayer::enclosingStackingContainer):

This function is similar to RenderLayer::stackingContainer, but may return the
layer itself if it's a stacking container.

1:19 PM Changeset in webkit [141158] by kerz@chromium.org
  • 7 edits
    4 deletes in branches/chromium/1364

Revert 141139

Merge 140202

Fix scrollRectToVisible in the presence of transforms
https://bugs.webkit.org/show_bug.cgi?id=105574

Patch by Chris Hopman <cjhopman@google.com> on 2013-01-18
Reviewed by Simon Fraser.

Source/WebCore:

When scrolling to reveal an overflow layer, the required scroll was
being calculated in absolute coordinates. To properly account for
transforms, this calculation should be done in the local coordinates
of the renderBox.

Tests: editing/input/reveal-selection-transformed-overflow-parent.html

editing/input/reveal-selection-transformed-textarea.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollRectToVisible):
When scrolling to reveal an overflow layer, calculate the required
scroll in the local coordinates of the RenderBox.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::absoluteToLocalQuad):
(WebCore):

  • rendering/RenderObject.h:

(RenderObject):
Add function to convert an absolute quad to a local quad.

LayoutTests:

  • editing/input/reveal-caret-of-transformed-input-scrollable-parent.html: Added.
  • editing/input/reveal-caret-of-transformed-input-scrollable-parent-expected.txt: Added.

Test that when scrolling an overflow layer to reveal a rect, the rect
passed to the parent to scroll is calculated properly.

  • editing/input/reveal-caret-of-transformed-multiline-input.html: Added.
  • editing/input/reveal-caret-of-transformed-multiline-input-expected.txt: Added.

Test that scrolling to reveal a rect works properly on a transformed
overflow layer.

  • platform/chromium/TestExpectations:
  • platform/mac/TestExpectations:

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12084049

TBR=kerz@chromium.org
Review URL: https://codereview.chromium.org/12087062

1:18 PM Changeset in webkit [141157] by Patrick Gansterer
  • 2 edits in trunk

[CMake] Add minimum version information for tool dependencies
https://bugs.webkit.org/show_bug.cgi?id=97592

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-01-29
Reviewed by Kenneth Rohde Christiansen.

Capture the minimum version information for the tools that are required
to build WebKit for all CMake based build systems.

  • CMakeLists.txt:
1:14 PM Changeset in webkit [141156] by Patrick Gansterer
  • 1 edit
    1 move
    1 add in trunk/Source/WebCore

Rename TextBreakIteratorWinCE to TextBreakIteratorWchar
https://bugs.webkit.org/show_bug.cgi?id=108094

Reviewed by Ryosuke Niwa.

TextBreakIteratorWinCE does not contain any Windows CE specific code.
Rename it to TextBreakIteratorWchar to match the name in wtf/unicode.

  • platform/text/wchar/TextBreakIteratorWchar.cpp: Renamed from Source/WebCore/platform/text/wince/TextBreakIteratorWinCE.cpp.
1:13 PM Changeset in webkit [141155] by cevans@google.com
  • 1 edit in branches/chromium/1364/Source/WebCore/Modules/webdatabase/AbstractDatabase.cpp

Merge 141057
BUG=171951
Review URL: https://codereview.chromium.org/12094043

1:11 PM Changeset in webkit [141154] by oliver@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

Force debug builds to do bounds checks on contiguous property storage
https://bugs.webkit.org/show_bug.cgi?id=108212

Reviewed by Mark Hahnenberg.

Add a ContiguousData type that we use to represent contiguous property
storage. In release builds it is simply a pointer to the correct type,
but in debug builds it also carries the data length and performs bounds
checks. This means we don't have to add as many manual bounds assertions
when performing operations over contiguous data.

  • dfg/DFGOperations.cpp:
  • runtime/ArrayStorage.h:

(ArrayStorage):
(JSC::ArrayStorage::vector):

  • runtime/Butterfly.h:

(JSC::ContiguousData::ContiguousData):
(ContiguousData):
(JSC::ContiguousData::operator[]):
(JSC::ContiguousData::data):
(JSC::ContiguousData::length):
(JSC):
(JSC::Butterfly::contiguousInt32):
(Butterfly):
(JSC::Butterfly::contiguousDouble):
(JSC::Butterfly::contiguous):

  • runtime/JSArray.cpp:

(JSC::JSArray::sortNumericVector):
(ContiguousTypeAccessor):
(JSC::ContiguousTypeAccessor::getAsValue):
(JSC::ContiguousTypeAccessor::setWithValue):
(JSC::ContiguousTypeAccessor::replaceDataReference):
(JSC):
(JSC::JSArray::sortCompactedVector):
(JSC::JSArray::sort):
(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToArguments):

  • runtime/JSArray.h:

(JSArray):

  • runtime/JSObject.cpp:

(JSC::JSObject::copyButterfly):
(JSC::JSObject::visitButterfly):
(JSC::JSObject::createInitialInt32):
(JSC::JSObject::createInitialDouble):
(JSC::JSObject::createInitialContiguous):
(JSC::JSObject::convertUndecidedToInt32):
(JSC::JSObject::convertUndecidedToDouble):
(JSC::JSObject::convertUndecidedToContiguous):
(JSC::JSObject::convertInt32ToDouble):
(JSC::JSObject::convertInt32ToContiguous):
(JSC::JSObject::genericConvertDoubleToContiguous):
(JSC::JSObject::convertDoubleToContiguous):
(JSC::JSObject::rageConvertDoubleToContiguous):
(JSC::JSObject::ensureInt32Slow):
(JSC::JSObject::ensureDoubleSlow):
(JSC::JSObject::ensureContiguousSlow):
(JSC::JSObject::rageEnsureContiguousSlow):
(JSC::JSObject::ensureLengthSlow):

  • runtime/JSObject.h:

(JSC::JSObject::ensureInt32):
(JSC::JSObject::ensureDouble):
(JSC::JSObject::ensureContiguous):
(JSC::JSObject::rageEnsureContiguous):
(JSObject):
(JSC::JSObject::indexingData):
(JSC::JSObject::currentIndexingData):

1:08 PM Changeset in webkit [141153] by wangxianzhu@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

[Chromium] Correct zoom for focused node when using compositor scaling
https://bugs.webkit.org/show_bug.cgi?id=107599

Reviewed by Adam Barth.

When applyDeviceScaleFactorInCompositor, targetScale should exclude device scale factor.
When applyPageScaleFactorInCompositor, caret size and content sizes are in css pixels and they should be in the viewport of the new scale.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::scrollFocusedNodeIntoRect):
(WebKit):
(WebKit::WebViewImpl::computeScaleAndScrollForFocusedNode): Extracted from scrollFocusedNodeIntoRect() to ease testing.

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp: Updated test DivScrollEditableTest
  • tests/data/get_scale_for_zoom_into_editable_test.html: Moved the logic of onload script (which seems not to work) into WebFrameTest.cpp.
1:04 PM Changeset in webkit [141152] by Bruno de Oliveira Abinader
  • 2 edits in trunk/Tools

[EFL] Add Toggle fullscreen (F11) to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=108122

Reviewed by Antonio Gomes.

Adds fullscreen mode toggle (F11) option to MiniBrowser using native API.

  • MiniBrowser/efl/main.c:

(on_key_down): Add 'F11' key handler.

1:04 PM WinCE edited by Patrick Gansterer
(diff)
12:59 PM Changeset in webkit [141151] by tommyw@google.com
  • 10 edits in trunk/Source

MediaStream API: A MediaStreamComponent should be able to return the MediaStreamDescriptor it belongs to
https://bugs.webkit.org/show_bug.cgi?id=108173

Reviewed by Adam Barth.

Source/Platform:

  • chromium/public/WebMediaStreamComponent.h:

(WebKit):
(WebMediaStreamComponent):

Source/WebCore:

To be able to return the MediaStreamDescriptor a MediaStreamComponent belongs to the "ownership"
of the MediaStreamDescriptor needed to move from a MediaStreamTrack to the MediaStreamComponent.
This is also better from an architectonic view as well.

Patch covered by existing tests.

  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::MediaStream):
(WebCore::MediaStream::addTrack):
(WebCore::MediaStream::addRemoteTrack):

  • Modules/mediastream/MediaStreamTrack.cpp:

(WebCore::MediaStreamTrack::create):
(WebCore::MediaStreamTrack::MediaStreamTrack):
(WebCore::MediaStreamTrack::setEnabled):

  • Modules/mediastream/MediaStreamTrack.h:

(MediaStreamTrack):

  • Modules/mediastream/RTCStatsRequestImpl.cpp:

(WebCore::RTCStatsRequestImpl::RTCStatsRequestImpl):

  • platform/chromium/support/WebMediaStreamComponent.cpp:

(WebKit::WebMediaStreamComponent::stream):
(WebKit):

  • platform/mediastream/MediaStreamComponent.h:

(WebCore):
(WebCore::MediaStreamComponent::create):
(MediaStreamComponent):
(WebCore::MediaStreamComponent::stream):
(WebCore::MediaStreamComponent::setStream):
(WebCore::MediaStreamComponent::MediaStreamComponent):

  • platform/mediastream/MediaStreamDescriptor.h:

(WebCore::MediaStreamDescriptor::MediaStreamDescriptor):

12:56 PM Changeset in webkit [141150] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

Encode/decode message send flags in the message
https://bugs.webkit.org/show_bug.cgi?id=108208

Reviewed by Beth Dakin.

This is another step towards getting rid of MessageID.

  • Platform/CoreIPC/ArgumentDecoder.cpp:

(CoreIPC::ArgumentDecoder::decodeUInt8):
(CoreIPC):

  • Platform/CoreIPC/ArgumentDecoder.h:

(ArgumentDecoder):
(CoreIPC::ArgumentDecoder::decode):
(CoreIPC):

  • Platform/CoreIPC/ArgumentEncoder.cpp:

(CoreIPC::ArgumentEncoder::encode):
(CoreIPC):

  • Platform/CoreIPC/ArgumentEncoder.h:

(ArgumentEncoder):

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::sendMessage):

  • Platform/CoreIPC/MessageDecoder.cpp:

(CoreIPC::MessageDecoder::MessageDecoder):

  • Platform/CoreIPC/MessageDecoder.h:

(CoreIPC::MessageDecoder::messageSendFlags):
(MessageDecoder):

  • Platform/CoreIPC/MessageEncoder.cpp:

(CoreIPC):
(CoreIPC::MessageEncoder::MessageEncoder):
(CoreIPC::MessageEncoder::~MessageEncoder):
(CoreIPC::MessageEncoder::setMessageSendFlags):

  • Platform/CoreIPC/MessageEncoder.h:

(MessageEncoder):

  • UIProcess/Authentication/AuthenticationChallengeProxy.h:

(CoreIPC):

12:56 PM Changeset in webkit [141149] by bfulgham@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[Windows, WinCairo] Unreviewed build fix after r141050

to match JavaScriptCore.vcproj version.

12:55 PM Changeset in webkit [141148] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1364

Merge 140520
BUG=170188
Review URL: https://codereview.chromium.org/12084050

12:54 PM Changeset in webkit [141147] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Current error reporting method used by check-layout.js should not affect subsequent sub-tests using checking data-offset-y.
https://bugs.webkit.org/show_bug.cgi?id=105407

Patch by Pravin D <pravind.2k4@gmail.com> on 2013-01-29
Reviewed by Tony Chang.

When a testcase is processed by check-layout.js, the result is written just after the node being processed. This causes
offsetTop of subsequent sub-testcases to altered. If however if we process the nodes in the reverse order in which they
appear in the DOM tree, the result of node being processed will not affect the offsetTop of susequent nodes.

  • resources/check-layout.js:
12:51 PM Changeset in webkit [141146] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1364

Merge 139806
BUG=168489
Review URL: https://codereview.chromium.org/12087060

12:48 PM Changeset in webkit [141145] by cevans@google.com
  • 8 edits in branches/chromium/1364/Source/WebCore/inspector

Merge 140127
BUG=170237
Review URL: https://codereview.chromium.org/12077053

12:40 PM Changeset in webkit [141144] by cevans@google.com
  • 1 edit in branches/chromium/1364/Source/WebCore/html/parser/HTMLConstructionSite.cpp

Merge 140537
BUG=170381
Review URL: https://codereview.chromium.org/12091046

12:37 PM Changeset in webkit [141143] by cevans@google.com
  • 1 edit
    4 copies in branches/chromium/1364

Merge 140101
BUG=170381
Review URL: https://codereview.chromium.org/12088052

12:32 PM Changeset in webkit [141142] by alecflett@chromium.org
  • 13 edits in trunk/Source

IndexedDB: Pass metadata in to IDBOpenDBRequest.onUpgradeNeeded/onSuccess
https://bugs.webkit.org/show_bug.cgi?id=103920

Reviewed by Dimitri Glazkov.

Source/WebCore:

Update IDBCallbacks::onSuccess and IDBCallbacks::onUpgradeNeeded to
pass through a metadata parameter. While there, remove the unused
IDBTransactionBackendInterface parameter to onUpgradeNeeded.

As this is another step in the IDB refactor, I've simplified future cleanup
work by making the WebKit API code still use the old API. This
will make it possible to outright remove code on the chromium side rather
than another three-step checkin.

No new tests, as this is more refactoring.

  • Modules/indexeddb/IDBCallbacks.h:

(WebCore::IDBCallbacks::onUpgradeNeeded): new method signature.
(WebCore::IDBCallbacks::onSuccess): new method signature.

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::openConnection):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::onUpgradeNeeded): use passed-in metadata.
(WebCore::IDBOpenDBRequest::onSuccess): use passed-in metadata.

  • Modules/indexeddb/IDBOpenDBRequest.h:

(IDBOpenDBRequest):

Source/WebKit/chromium:

Support the new IDBCallbacks::onSuccess and IDBCallbacks::onUpgradeNeeded
while maintaining chromium compatibility by shimming in the old API
in the WebKit side. Future code will clean this up so that it is just a
pass-through as it was before.

  • public/WebIDBCallbacks.h:

(WebKit):
(WebKit::WebIDBCallbacks::onSuccess): new method signature.
(WebKit::WebIDBCallbacks::onUpgradeNeeded): new method signature.

  • src/IDBCallbacksProxy.cpp:

(WebKit::IDBCallbacksProxy::onSuccess): call on new method signature proxies through old API.
(WebKit):
(WebKit::IDBCallbacksProxy::onUpgradeNeeded): call on new method signature proxies through old API.

  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

  • src/WebIDBCallbacksImpl.cpp:

(WebKit::WebIDBCallbacksImpl::onSuccess): call on old WebKit proxy signature calls new API.
(WebKit):
(WebKit::WebIDBCallbacksImpl::onUpgradeNeeded): call on old WebKit proxy signature calls new API.

  • src/WebIDBCallbacksImpl.h:

(WebIDBCallbacksImpl):

  • tests/IDBAbortOnCorruptTest.cpp: new method signature.

(WebCore::MockIDBCallbacks::onSuccess):

  • tests/IDBDatabaseBackendTest.cpp: new method signature.
12:26 PM Changeset in webkit [141141] by krit@webkit.org
  • 6 edits
    3 adds in trunk

Canvas support for isPointInStroke
https://bugs.webkit.org/show_bug.cgi?id=108185

Reviewed by Dean Jackson.

Source/WebCore:

isPointInStroke(x,y) returns true if a point hits the stroke
with applied stroke styles like dashArray, lineCap, lineJoin, lineWidth.
The syntax is similar to isPointInPath, which returns true if a point hits
the fill area of a path.
Firefox implemented isPointInStroke originally and unprefixed it recently:

https://bugzilla.mozilla.org/show_bug.cgi?id=803124

Test: fast/canvas/canvas-isPointInStroke.html

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasStrokeStyleApplier::strokeStyle): Take dashArray and lineDashOffset into account.
(WebCore):
(WebCore::CanvasRenderingContext2D::isPointInStroke): The implementation of the function.

  • html/canvas/CanvasRenderingContext2D.h:

(CanvasRenderingContext2D):

  • html/canvas/CanvasRenderingContext2D.idl: Added operation to interface.

LayoutTests:

Test the implementation of isPointOfStroke with all stroke style
properties in Canvas.

  • fast/canvas/canvas-isPointInStroke-expected.txt: Added.
  • fast/canvas/canvas-isPointInStroke.html: Added.
  • fast/canvas/script-tests/canvas-isPointInStroke.js: Added.
  • fast/canvas/canvas-isPointInStroke-expected.txt: Added.
  • fast/canvas/canvas-isPointInStroke.html: Added.
  • fast/canvas/script-tests/canvas-isPointInStroke.js: Added.
  • inspector/profiler/canvas2d/canvas2d-api-changes.html: Added property for isPointInStroke.
12:19 PM Changeset in webkit [141140] by zandobersek@gmail.com
  • 4 edits
    4 moves in trunk/LayoutTests

Unreviewed GTK gardening.

Rebaselining after r141122.
Removing a few duplicate test expectations.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/text/midword-break-before-surrogate-pair-expected.txt:
  • platform/gtk/fonts/complex-text-shadows-expected.txt: Replaced with LayoutTests/platform/gtk/platform/gtk/fonts/complex-text-shadows-expected.txt.
  • platform/gtk/fonts/font-face-with-complex-text-expected.txt: Replaced with LayoutTests/platform/gtk/platform/gtk/fonts/font-face-with-complex-text-expected.txt.
  • platform/gtk/fonts/non-bmp-characters-expected.png: Copied from LayoutTests/platform/gtk/platform/gtk/fonts/non-bmp-characters-expected.png.
  • platform/gtk/fonts/non-bmp-characters-expected.txt: Copied from LayoutTests/platform/gtk/platform/gtk/fonts/non-bmp-characters-expected.txt.
  • platform/gtk/platform/gtk/fonts/complex-text-shadows-expected.txt: Removed.
  • platform/gtk/platform/gtk/fonts/font-face-with-complex-text-expected.txt: Removed.
  • platform/gtk/platform/gtk/fonts/non-bmp-characters-expected.png: Removed.
  • platform/gtk/platform/gtk/fonts/non-bmp-characters-expected.txt: Removed.
  • platform/gtk/svg/text/non-bmp-positioning-lists-expected.txt:
12:12 PM Changeset in webkit [141139] by kerz@chromium.org
  • 7 edits
    4 copies in branches/chromium/1364

Merge 140202

Fix scrollRectToVisible in the presence of transforms
https://bugs.webkit.org/show_bug.cgi?id=105574

Patch by Chris Hopman <cjhopman@google.com> on 2013-01-18
Reviewed by Simon Fraser.

Source/WebCore:

When scrolling to reveal an overflow layer, the required scroll was
being calculated in absolute coordinates. To properly account for
transforms, this calculation should be done in the local coordinates
of the renderBox.

Tests: editing/input/reveal-selection-transformed-overflow-parent.html

editing/input/reveal-selection-transformed-textarea.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollRectToVisible):
When scrolling to reveal an overflow layer, calculate the required
scroll in the local coordinates of the RenderBox.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::absoluteToLocalQuad):
(WebCore):

  • rendering/RenderObject.h:

(RenderObject):
Add function to convert an absolute quad to a local quad.

LayoutTests:

  • editing/input/reveal-caret-of-transformed-input-scrollable-parent.html: Added.
  • editing/input/reveal-caret-of-transformed-input-scrollable-parent-expected.txt: Added.

Test that when scrolling an overflow layer to reveal a rect, the rect
passed to the parent to scroll is calculated properly.

  • editing/input/reveal-caret-of-transformed-multiline-input.html: Added.
  • editing/input/reveal-caret-of-transformed-multiline-input-expected.txt: Added.

Test that scrolling to reveal a rect works properly on a transformed
overflow layer.

  • platform/chromium/TestExpectations:
  • platform/mac/TestExpectations:

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12084049

12:10 PM Changeset in webkit [141138] by cevans@google.com
  • 6 edits
    2 copies in branches/chromium/1364

Merge 140748
BUG=171907
Review URL: https://codereview.chromium.org/12092048

12:07 PM Changeset in webkit [141137] by Patrick Gansterer
  • 2 edits in trunk/Tools

[CMake] Use offical Windows CE support
https://bugs.webkit.org/show_bug.cgi?id=108061

Reviewed by Laszlo Gombos.

Recent version of CMake has added Windows CE support, but uses a
slightly different interface than the patched version used before.
Change the command line parameters to use the offical CMake binaries.

  • Scripts/webkitdirs.pm:

(cmakeBasedPortArguments):

12:06 PM Changeset in webkit [141136] by Nate Chapin
  • 25 edits
    3 adds in trunk

.: Enable reuse of cached main resources
https://bugs.webkit.org/show_bug.cgi?id=105667

Reviewed by Adam Barth.

  • Source/autotools/symbols.filter: Expose MemoryCache::resourceForURL().

Source/WebCore: Enable reuse of cached main resources
https://bugs.webkit.org/show_bug.cgi?id=105667

Reviewed by Adam Barth.

Test: http/tests/cache/cached-main-resource.html

  • WebCore.exp.in:
  • dom/Document.cpp:

(WebCore::Document::hasManifest): Returns true if the <html> element has a non-empty manifest attribute.
(WebCore):

  • dom/Document.h:

(Document):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadedResourceFromMemoryCache): Don't send delegate callbacks for cache hit here, since

MainResourceLoader will take care of it.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::receivedError):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::responseReceived): Don't try to cache loads from the application cache.
(WebCore::MainResourceLoader::didFinishLoading): Don't try to cache loads from the application cache.
(WebCore::MainResourceLoader::load): Ensure we create a resource load identifier for cache hits. Also,

ensure we correctly popualate fragment identifiers in the ResourceRequest reported to DocumentLoader.

(WebCore::MainResourceLoader::identifier):

  • loader/MainResourceLoader.h: Rename m_substituteDataLoadIdentifier to m_identifierForLoadWithoutResourceLoader

to better describe when it is used.

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::didAddClient): Synthesize redirect notifications for cache hits if necessary.
(WebCore::CachedRawResource::willSendRequest): Note the redirects we received.
(WebCore::CachedRawResource::canReuse): Don't reuse a resource if the redirect chain included a "Cache-control: no-store".

  • loader/cache/CachedRawResource.h:

(CachedRawResource):
(RedirectPair):
(WebCore::CachedRawResource::RedirectPair::RedirectPair):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::addClientToSet): Don't return cached data for a main resource synchronously

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::canReuse):
(CachedResource):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource): Leave cahce reuse of main resources off for chromium for now.
(WebCore::CachedResourceLoader::determineRevalidationPolicy): Permit cache reuse for main resources.

  • testing/Internals.cpp:

(WebCore::Internals::isPreloaded):
(WebCore):
(WebCore::Internals::isLoadingFromMemoryCache):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit/win: Enable reuse of cached main resources
https://bugs.webkit.org/show_bug.cgi?id=105667

Reviewed by Adam Barth.

  • WebKit.vcproj/WebKitExports.def.in: Expose some MemoryCache symbols for use in Internals.

LayoutTests: Enable reuse of cached main resources
https://bugs.webkit.org/show_bug.cgi?id=105667.

Reviewed by Adam Barth.

  • http/tests/cache/cached-main-resource-expected.txt: Added.
  • http/tests/cache/cached-main-resource.html: Added.
  • http/tests/cache/resources/cacheable-iframe.php: Added.
  • http/tests/inspector/resource-har-pages-expected.txt:
  • http/tests/loading/redirect-methods-expected.txt:
  • http/tests/misc/favicon-loads-with-images-disabled-expected.txt:
  • http/tests/misc/link-rel-icon-beforeload-expected.txt:
  • platform/chromium/TestExpectations:
11:09 AM Changeset in webkit [141135] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix a problem that deferred image decoding is enabled for multiframe images
https://bugs.webkit.org/show_bug.cgi?id=108152

Patch by Min Qin <qinmin@chromium.org> on 2013-01-29
Reviewed by Stephen White.

Deferred image decoding should only work for single frame images now.
However, using ImageDecoder::repetitionCount() does not capture all the cases.
Enforce the rule using ImageDecoder::frameCount()==1.
Fixing a failing layout test: platform/chromium/virtual/deferred/fast/images/icon-0colors.html

  • platform/graphics/chromium/DeferredImageDecoder.cpp:

(WebCore::DeferredImageDecoder::frameBufferAtIndex):

11:01 AM Changeset in webkit [141134] by aelias@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Fix contents size calculation for page scale initialization
https://bugs.webkit.org/show_bug.cgi?id=108204

Reviewed by enne.

My previous patch http://webk.it/107424 had a few issues that are
blocking WebKit roll.

  • We still need the layout in resize() given that

http://webk.it/107922 was reverted.

  • I deleted code used only for the old page-scale mode in

contentsSize(), but this needs to wait until WebKit roll since it's
making bots fail in this short term.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::resize):
(WebKit::WebViewImpl::contentsSize):

10:47 AM WebKitIDL edited by tsepez@chromium.org
Typos. (diff)
10:30 AM WebKitIDL edited by tsepez@chromium.org
(diff)
10:22 AM Changeset in webkit [141133] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add back test expectations that got erroneously removed in r140981.

  • platform/mac/TestExpectations:
10:22 AM Changeset in webkit [141132] by esprehn@chromium.org
  • 3 edits in trunk/Source/WebCore

Move ElementShadow creation to ElementRareData
https://bugs.webkit.org/show_bug.cgi?id=108195

Reviewed by Dimitri Glazkov.

Move the creation of ElementShadow to ElementRareData
for better encapsulation, and get rid of ElementRareData::setShadow.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::~Element): Use clearShadow() instead of setShadow which is removed.
(WebCore::Element::shadow):
(WebCore::Element::ensureShadow): Use ElementRareData::ensureShadow().

  • dom/ElementRareData.h:

(WebCore::ElementRareData::clearShadow): Added.
(WebCore::ElementRareData::ensureShadow): Added.

10:16 AM Changeset in webkit [141131] by hclam@chromium.org
  • 3 edits in trunk/Source/WebCore

[chromium] Unreviewed build fix.

Revert my revert at 141033 which can cause deadlock.

  • platform/graphics/chromium/DiscardablePixelRef.cpp:

(WebCore::DiscardablePixelRefAllocator::allocPixelRef):
(WebCore::DiscardablePixelRef::DiscardablePixelRef):

  • platform/graphics/chromium/DiscardablePixelRef.h:

(DiscardablePixelRef):

10:09 AM Changeset in webkit [141130] by hclam@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Unreviewed DEPS roll.

Roll Chromium DEPS to 179332.

  • DEPS:
10:07 AM Changeset in webkit [141129] by commit-queue@webkit.org
  • 8 edits
    1 copy
    3 adds in trunk/Tools

QueueStatusServer needs pages to display historical queue data
https://bugs.webkit.org/show_bug.cgi?id=107659

Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-29
Reviewed by Eric Seidel.

Created a /queue-charts/<queue-name> handler to present queue and patch data using Google Chart Tools.

  • QueueStatusServer/app.yaml:
  • QueueStatusServer/config/charts.py: Copied from Tools/QueueStatusServer/model/queuelog.py.

(get_time_unit):

  • QueueStatusServer/filters/webkit_extras.py:

(webkit_linkify):
(webkit_bug_id):
(webkit_attachment_id):
(results_link):
(queue_status_link):
(queue_charts_link):

  • QueueStatusServer/handlers/queuecharts.py: Added.

(QueueCharts):
(QueueCharts.get):
(QueueCharts._get_min_med_max):
(QueueCharts._get_patch_data):
(QueueCharts._get_patch_logs):
(QueueCharts._get_queue_data):
(QueueCharts._get_queue_logs):
(QueueCharts._get_time_unit):
(QueueCharts._get_timestamp):
(QueueCharts._get_view_range):

  • QueueStatusServer/handlers/queuestatus.py:

(QueueStatus.get):

  • QueueStatusServer/index.yaml:
  • QueueStatusServer/main.py:
  • QueueStatusServer/model/queuelog.py:

(QueueLog):
(QueueLog.create_key):
(QueueLog.get_at):
(QueueLog.get_current):
(QueueLog.get_or_create):
(QueueLog._get_or_create_txn):

  • QueueStatusServer/stylesheets/charts.css: Added.

(.chart):
(.choices):

  • QueueStatusServer/templates/queuecharts.html: Added.
  • QueueStatusServer/templates/queuestatus.html:
9:58 AM Changeset in webkit [141128] by jsbell@chromium.org
  • 13 edits in trunk/Source

[Chromium] IndexedDB: Let callers specify reason (error) for aborting transaction
https://bugs.webkit.org/show_bug.cgi?id=107851

Reviewed by Tony Chang.

Source/WebCore:

Internal to the back-end, callers are able to abort transactions and specify a reason
as an IDBDatabaseError, e.g. ConstraintError. Expose this to the WebKit/chromium/public
API so that intermediate layers can specify reasons as well, e.g. QuotaExceededError.

Test will land in Chromium as fix for crbug.com/113118

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::abort): Added overload that takes error.

  • Modules/indexeddb/IDBDatabaseBackendImpl.h: Ditto.
  • Modules/indexeddb/IDBDatabaseBackendInterface.h: Ditto.

Source/WebKit/chromium:

Let Chromium call abort() on a transaction and specify a reason, specifically for
QuotaExceededError.

  • public/WebIDBDatabase.h:

(WebKit::WebIDBDatabase::abort): New overload for abort() that takes an error.

  • public/WebIDBDatabaseError.h:

(WebKit::WebIDBDatabaseError::WebIDBDatabaseError): Overloaded constructor/assign that takes error.

  • src/IDBDatabaseBackendProxy.cpp:

(WebKit::IDBDatabaseBackendProxy::abort): New overload for abort() that takes an error.

  • src/IDBDatabaseBackendProxy.h:

(IDBDatabaseBackendProxy): Ditto.

  • src/WebIDBDatabaseError.cpp: Implementation of overload ctor/assign.
  • src/WebIDBDatabaseImpl.cpp:

(WebKit::WebIDBDatabaseImpl::abort): New overload for abort() that takes an error.

  • src/WebIDBDatabaseImpl.h: Ditto.
  • tests/IDBDatabaseBackendTest.cpp: Overload stubs for Mock class.
9:52 AM Changeset in webkit [141127] by vcarbune@chromium.org
  • 4 edits
    2 adds in trunk

Heap-use-after-free in WebCore::RenderTextTrackCue::layout
https://bugs.webkit.org/show_bug.cgi?id=108197

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/track/track-cue-rendering-tree-is-removed-properly.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTrackRemoveCue): Ensure the display tree
is removed when the cue is removed from the list of cues.

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::~TextTrackCue): Enfore display tree removal.

LayoutTests:

Added test that triggers the crash. Verified proper removal of the tree.

  • media/track/track-cue-rendering-tree-is-removed-properly-expected.txt: Added.
  • media/track/track-cue-rendering-tree-is-removed-properly.html: Added.
9:50 AM Changeset in webkit [141126] by mario@webkit.org
  • 9 edits in trunk

[GTK] Missing build flags when building with Harfbuzz
https://bugs.webkit.org/show_bug.cgi?id=108174

Reviewed by Martin Robinson.

Add FREETYPE_CFLAGS and FREETYPE_LIBS to makefiles so -lharfbuzz
parameter will be added to linking lines when needed.

Source/WebKit/gtk:

  • GNUmakefile.am: Added FREETYPE_CFLAGS and FREETYPE_LIBS.

Source/WebKit2:

  • GNUmakefile.am: Added FREETYPE_CFLAGS and FREETYPE_LIBS.
  • UIProcess/API/gtk/tests/GNUmakefile.am: Ditto.

Tools:

  • GNUmakefile.am: Added FREETYPE_CFLAGS and FREETYPE_LIBS.
  • MiniBrowser/gtk/GNUmakefile.am: Ditto.
  • TestWebKitAPI/GNUmakefile.am: Ditto.
9:44 AM Changeset in webkit [141125] by fmalita@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Unreviewed gardening.

Disable WebFrameTest.pageScaleFactorShrinksViewport (pending investigation after r141053).

  • tests/WebFrameTest.cpp:
9:32 AM Changeset in webkit [141124] by efidler@rim.com
  • 2 edits
    2 adds in trunk

On HarfbuzzNG ports, Arabic TATWEEL is not joined.
https://bugs.webkit.org/show_bug.cgi?id=108037

Reviewed by Tony Chang.

The tatweel (U+0640) is being split into a separate run, because its script is USCRIPT_COMMON.
It has script extensions for USCRIPT_ARABIC, so I think it shouldn't trigger a new run.

Test: fast/text/international/arabic-tatweel-join.html

  • platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::collectHarfBuzzRuns):

9:29 AM Changeset in webkit [141123] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip a failing ref html test.

  • platform/qt/TestExpectations:
9:25 AM Changeset in webkit [141122] by commit-queue@webkit.org
  • 6 edits
    4 adds in trunk

[Freetype] Cannot use characters outside the BMP
https://bugs.webkit.org/show_bug.cgi?id=108102

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-01-29
Reviewed by Carlos Garcia Campos.

Source/WebCore:

Test: platform/gtk/fonts/non-bmp-characters.html

Instead of never handling surrogate pairs when dealing with UChar arrays,
abstract way the logic for this into UTF16UChar32Iterator and use it
everywhere in Freetype. This allows the Freetype backend to render
non-BMP characters which are always represented as surrogate pairs in
UTF-16.

  • GNUmakefile.list.am: Added UTF16UChar32Iterator to the source list.
  • platform/graphics/freetype/FontCacheFreeType.cpp:

(WebCore::createFontConfigPatternForCharacters): Use the new iterator.
(WebCore::FontCache::getFontDataForCharacters): Ditto.

  • platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp:

(WebCore::GlyphPage::fill): Ditto. Remove the early return when dealing
with non-BMP data.

  • platform/graphics/freetype/SimpleFontDataFreeType.cpp:

(WebCore::SimpleFontData::containsCharacters): Use the new iterator.

  • platform/graphics/freetype/UTF16UChar32Iterator.h: Added. An iterator that

extracts UChar32 from UTF-16 UChar arrays.

  • GNUmakefile.list.am:
  • platform/graphics/freetype/FontCacheFreeType.cpp:

(WebCore::createFontConfigPatternForCharacters):
(WebCore::FontCache::getFontDataForCharacters):

  • platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp:

(WebCore::GlyphPage::fill):

  • platform/graphics/freetype/SimpleFontDataFreeType.cpp:

(WebCore::SimpleFontData::containsCharacters):

  • platform/graphics/freetype/UTF16UChar32Iterator.h: Added.

(WebCore):
(UTF16UChar32Iterator):
(WebCore::UTF16UChar32Iterator::UTF16UChar32Iterator):
(WebCore::UTF16UChar32Iterator::end):
(WebCore::UTF16UChar32Iterator::next):

  • GNUmakefile.list.am:
  • platform/graphics/freetype/FontCacheFreeType.cpp:

(WebCore::createFontConfigPatternForCharacters):

  • platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp:

(WebCore::GlyphPage::fill):

  • platform/graphics/freetype/SimpleFontDataFreeType.cpp:

(WebCore::SimpleFontData::containsCharacters):

  • platform/graphics/freetype/UTF16UChar32Iterator.h: Added.

(WebCore):
(UTF16UChar32Iterator):
(WebCore::UTF16UChar32Iterator::UTF16UChar32Iterator):
(WebCore::UTF16UChar32Iterator::end):
(WebCore::UTF16UChar32Iterator::next):

LayoutTests:

Added a pixel test for rendering non-BMP characters.

  • platform/gtk/fonts/non-bmp-characters.html: Added.
  • platform/gtk/platform/gtk/fonts/non-bmp-characters-expected.png: Added.
  • platform/gtk/platform/gtk/fonts/non-bmp-characters-expected.txt: Added.
9:04 AM Changeset in webkit [141121] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Don't overlap test for composited scroll DIVs after scroll
https://bugs.webkit.org/show_bug.cgi?id=107471

Patch by Glenn Hartmann <hartmanng@chromium.org> on 2013-01-29
Reviewed by Simon Fraser.

We don't need to test for overlap after scroll when both
usesCompositedScrolling and !hasOutOfFlowPositionedDescendant
because:

a) Since we're using composited-scrolling, the composited region
presented by the composited-scrolling element to other non-descendant
layers doesn't change during composited scrolling (it's always the
entire scroll layer), and

b) Since we have no out of flow positioned descendants, the scrolling
descendants all move together, so their overlap with respect to each
other cannot change.

So no descendants nor any non-descendants can have their overlap
affected, so it's safe to skip testing.

No new tests (no change in behaviour).

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateCompositingLayersAfterScroll):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateCompositingLayers):

  • rendering/RenderLayerCompositor.h:
8:55 AM Changeset in webkit [141120] by kareng@chromium.org
  • 13 edits in branches/chromium/1397/Source/WebCore/bindings/v8

Revert 140611

[V8] Reduce usage of deprecatedV8String() and deprecatedV8Integer()
https://bugs.webkit.org/show_bug.cgi?id=107674

Reviewed by Adam Barth.

No tests. No change in behavior.

  • bindings/v8/JavaScriptCallFrame.cpp:

(WebCore::JavaScriptCallFrame::evaluate):

  • bindings/v8/NPV8Object.cpp:

(_NPN_Enumerate):

  • bindings/v8/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::addListener):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::bindToWindowObject):
(WebCore::ScriptController::disableEval):

  • bindings/v8/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::removeBreakpoint):
(WebCore::ScriptDebugServer::setScriptSource):
(WebCore::ScriptDebugServer::ensureDebuggerScriptCompiled):
(WebCore::ScriptDebugServer::compileScript):

  • bindings/v8/ScriptFunctionCall.cpp:

(WebCore::ScriptCallArgumentHandler::appendArgument):
(WebCore::ScriptFunctionCall::call):
(WebCore::ScriptFunctionCall::construct):

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::start):
(WebCore::ScriptProfiler::stop):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::initializeIfNeeded):
(WebCore::V8DOMWindowShell::namedItemAdded):
(WebCore::V8DOMWindowShell::namedItemRemoved):

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject):

  • bindings/v8/V8MutationCallback.cpp:

(WebCore::V8MutationCallback::handleEvent):

  • bindings/v8/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::evaluate):

  • bindings/v8/WorkerScriptDebugServer.cpp:

(WebCore::WorkerScriptDebugServer::addListener):

  • bindings/v8/custom/V8InjectedScriptManager.cpp:

(WebCore::InjectedScriptManager::createInjectedScript):

TBR=haraken@chromium.org
Review URL: https://codereview.chromium.org/12087054

8:55 AM Changeset in webkit [141119] by alexis@webkit.org
  • 17 edits
    2 adds in trunk

Implement pseudoElement attribute on transition DOM events.
https://bugs.webkit.org/show_bug.cgi?id=107986

Reviewed by Julien Chaffraix.

Source/WebCore:

Implement the pseudoElement attribute documented here :
http://dev.w3.org/csswg/css3-transitions/#transition-events.
This add a new attribute to the transition DOM event useful when
animating pseudo elements. As they are not accessible in JS, it's
very useful to get on which pseudo element the transition just ended.
This patch adds the new attribute on the IDLs of DOM transition events as well
as adding it to the C++ classes representing them. The event
dispatching code have been patched to change the target of the event
(we can't send the current target as it is the actual DOM
representation of the pseudo element).

Test: fast/css-generated-content/pseudo-transition-event.html

  • dom/EventDispatcher.cpp:

(WebCore::eventTargetRespectingTargetRules): Change the target of the
event in the case of a pseudo element. We can't expose them through the
public interface so the target is the node they belong to.
(WebCore::EventDispatcher::ensureEventAncestors):
(WebCore::EventDispatcher::dispatchScopedEvent):
(WebCore::EventDispatcher::dispatchEvent):
(WebCore::EventDispatcher::dispatchEventPostProcess):

  • dom/EventTarget.cpp:

(WebCore::createMatchingPrefixedEvent):

  • dom/PseudoElement.cpp:

(WebCore::PseudoElement::pseudoElementNameForEvents):
(WebCore):

  • dom/PseudoElement.h:
  • dom/TransitionEvent.cpp:

(WebCore::TransitionEventInit::TransitionEventInit):
(WebCore::TransitionEvent::TransitionEvent):
(WebCore::TransitionEvent::pseudoElement):
(WebCore):

  • dom/TransitionEvent.h:

(TransitionEventInit):
(WebCore::TransitionEvent::create):
(TransitionEvent):

  • dom/TransitionEvent.idl:
  • dom/WebKitTransitionEvent.cpp:

(WebCore::WebKitTransitionEventInit::WebKitTransitionEventInit):
(WebCore::WebKitTransitionEvent::WebKitTransitionEvent):
(WebCore::WebKitTransitionEvent::pseudoElement):
(WebCore):

  • dom/WebKitTransitionEvent.h:

(WebKitTransitionEventInit):
(WebCore::WebKitTransitionEvent::create):
(WebKitTransitionEvent):

  • dom/WebKitTransitionEvent.idl:
  • page/animation/AnimationController.cpp:

(WebCore::AnimationControllerPrivate::fireEventsAndUpdateStyle): Pass
the pseudo element name when creating the Event objects. If the element
is not a pseudo element then the name will be empty which is what the
spec is telling to do. If the element is a pseudo element then the name
will be the pseudo element's name with "::" as a prefix.

LayoutTests:

Add new tests to cover the feature.

  • fast/css-generated-content/pseudo-transition-event-expected.txt: Added.
  • fast/css-generated-content/pseudo-transition-event.html: Added.
  • fast/events/constructors/transition-event-constructor-expected.txt:
  • fast/events/constructors/transition-event-constructor.html:
  • fast/events/constructors/webkit-transition-event-constructor-expected.txt:
  • fast/events/constructors/webkit-transition-event-constructor.html:
8:54 AM Changeset in webkit [141118] by kareng@chromium.org
  • 14 edits in branches/chromium/1397/Source/WebCore

Revert 138962

ResourceHandle::willLoadFromCache is evil
https://bugs.webkit.org/show_bug.cgi?id=106147

Reviewed by Brady Eidson.

For back/forward navigations to a page that's a result of form submission, we may
never silently re-submit the form. So, we show a warning dialog when about to re-submit,
but try to load from cache if possible.

This patch changes the logic so that we always try to fetch from cache, without
any preflighting. If cache load fails, we restart the load as a known re-submit.

No behavior change expected, so no tests.

  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::handleClick): Added a FIXME.
  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::startLoadingMainResource): Amended a FIXME with some information about why this call may still be needed.
  • loader/FrameLoader.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadURLIntoChildFrame): Pass an explicit argument for unchanged caching behavior. (WebCore::FrameLoader::reloadWithOverrideEncoding): Added a FIXME. This function can silently re-submit a form. (WebCore::FrameLoader::addExtraFieldsToMainResourceRequest): Added a FIXME about an incorrect use of current load type. (WebCore::FrameLoader::addExtraFieldsToRequest): Make sure that a correct caching policy is used for subresources even if main resource was loaded from cache. We didn't need that before because initial request had wrong extra fields due to a use of m_loadType when it was first called. Removed code to change caching policy for b/f navigations. This function does not have enough context to decide what the policy should be. (WebCore::FrameLoader::loadDifferentDocumentItem): Added an argument telling the function whether it should attempt loading from cache. It should do that on first attempt to navigate to a form submission result, but not if that failed. Pass a correct loadType - m_loadType is one for _previous_ load. Removed a special case for https - we've long stopped prohibiting caching of https resources, and using a resource that's already cached should definitely be allowed. (WebCore::FrameLoader::loadItem): Pass an explicit argument for unchanged caching behavior. (WebCore::FrameLoader::retryAfterFailedCacheOnlyMainResourceLoad): Added.
  • loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::notifyFinished): Removed a check for m_resource being null, because we were immediately dereferencing it anyway. Call retryAfterFailedCacheOnlyMainResourceLoad() to let FrameLoader restart the navigation.
  • platform/network/ResourceHandle.h:
  • platform/network/blackberry/ResourceHandleBlackBerry.cpp:
  • platform/network/cf/ResourceHandleCFNet.cpp:
  • platform/network/chromium/ResourceHandle.cpp:
  • platform/network/curl/ResourceHandleCurl.cpp:
  • platform/network/mac/ResourceHandleMac.mm:
  • platform/network/qt/ResourceHandleQt.cpp:
  • platform/network/soup/ResourceHandleSoup.cpp:
  • platform/network/win/ResourceHandleWin.cpp: Removed willLoadFromCache() - the new logic is cross-platform.

TBR=ap@apple.com
Review URL: https://codereview.chromium.org/12090050

8:51 AM Changeset in webkit [141117] by kareng@chromium.org
  • 1 add in branches/chromium/1397/codereview.settings

for drovering

8:50 AM Changeset in webkit [141116] by kareng@chromium.org
  • 1 copy in branches/chromium/1397

branching to do dev

8:49 AM Changeset in webkit [141115] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Reclassified one IDB failure as a flaky crasher.
Added a test expectation for a flaky crasher that's failnig
due to probably malfunctioning accessibility code.

  • platform/gtk/TestExpectations:
8:45 AM Changeset in webkit [141114] by allan.jensen@digia.com
  • 6 edits in trunk/Source

[Qt] Implement GCActivityCallback
https://bugs.webkit.org/show_bug.cgi?id=103998

Reviewed by Simon Hausmann.

Source/JavaScriptCore:

Implements the activity triggered garbage collector.

  • runtime/GCActivityCallback.cpp:

(JSC::DefaultGCActivityCallback::DefaultGCActivityCallback):
(JSC::DefaultGCActivityCallback::scheduleTimer):
(JSC::DefaultGCActivityCallback::cancelTimer):

  • runtime/GCActivityCallback.h:

(GCActivityCallback):
(DefaultGCActivityCallback):

Source/WebCore:

Implements the activity triggered garbage collector,
and disables the timer based fallback.

  • bindings/js/GCController.cpp:

(WebCore::GCController::GCController):
(WebCore::GCController::garbageCollectSoon):

  • bindings/js/GCController.h:

(GCController):

8:09 AM Changeset in webkit [141113] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: fix bottom span in token highlight in DTE
https://bugs.webkit.org/show_bug.cgi?id=108194

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-29
Reviewed by Pavel Feldman.

Change css style for token highlight from "border" to "outline" to
avoid border included in box dimensions.

No new tests: no change in behaviour.

  • inspector/front-end/textEditor.css:

(.text-editor-token-highlight):

8:02 AM Changeset in webkit [141112] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip failing tests after r140927.
https://bugs.webkit.org/show_bug.cgi?id=108190.

  • platform/qt/TestExpectations:
7:52 AM Changeset in webkit [141111] by commit-queue@webkit.org
  • 5 edits in trunk

Web Inspector: introduce HighlightDescriptor interface in DTE.
https://bugs.webkit.org/show_bug.cgi?id=108161

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-29
Reviewed by Pavel Feldman.

Source/WebCore:

Introduce new HighlightDescriptor interface and its
RegexHighlightDescriptor implementation and use it in DTE to
support overlay highlight.

No new tests: no change in behaviour.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.DefaultTextEditor.prototype.highlightRegex):
(WebInspector.DefaultTextEditor.prototype.removeRegexHighlight):
(WebInspector.TextEditorMainPanel):
(WebInspector.TextEditorMainPanel.prototype.highlightRegex):
(WebInspector.TextEditorMainPanel.prototype.removeRegexHighlight):
(WebInspector.TextEditorMainPanel.prototype._paintLines):
(WebInspector.TextEditorMainPanel.prototype._measureHighlightDescriptor):
(WebInspector.TextEditorMainPanel.HighlightDescriptor): Added.
(WebInspector.TextEditorMainPanel.HighlightDescriptor.prototype.affectsLine):
(WebInspector.TextEditorMainPanel.HighlightDescriptor.prototype.rangesForLine):
(WebInspector.TextEditorMainPanel.HighlightDescriptor.prototype.cssClass):
(WebInspector.TextEditorMainPanel.RegexHighlightDescriptor): Added.
(WebInspector.TextEditorMainPanel.RegexHighlightDescriptor.prototype.affectsLine):
(WebInspector.TextEditorMainPanel.RegexHighlightDescriptor.prototype.rangesForLine):
(WebInspector.TextEditorMainPanel.RegexHighlightDescriptor.prototype.cssClass):
(WebInspector.TextEditorMainPanel.TokenHighlighter.prototype._highlight):
(WebInspector.TextEditorMainPanel.TokenHighlighter.prototype._removeHighlight):

  • inspector/front-end/TextEditor.js:

(WebInspector.TextEditor.prototype.removeRegexHighlight):

LayoutTests:

Correct layout test according to refactoring changes.

  • inspector/editor/text-editor-highlight-regexp.html:
7:29 AM Changeset in webkit [141110] by g.czajkowski@samsung.com
  • 10 edits in trunk

[EFL] Unified text checker implementation.
https://bugs.webkit.org/show_bug.cgi?id=107682

Reviewed by Anders Carlsson.

Source/WebCore:

No new tests, covered by editing/spelling tests.

  • platform/text/TextChecking.h:

(WebCore):
Enabling unified text checker feature for WebKit-EFL.

Source/WebKit/efl:

Add an empty checkTextOfParagraph implementation for WK1-EFL
to do not break build when WTF_USE_UNIFIED_TEXT_CHECKING
is enabled.

  • WebCoreSupport/EditorClientEfl.h:

(EditorClientEfl):
(WebCore::EditorClientEfl::checkTextOfParagraph):

Source/WebKit2:

  • UIProcess/efl/TextCheckerEfl.cpp:

(WebKit):
(WebKit::TextChecker::checkTextOfParagraph):
Allow to check spelling for multiple words,
their misspelling location and length are saved to the vector.

  • WebProcess/WebCoreSupport/WebEditorClient.h:
  • WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:

(WebKit::WebEditorClient::checkTextOfParagraph):
(WebKit):
As spelling implementation is exposed to UIProcess,
send a meesage to UIProcess to call TextChecker::checkTextOfParagraph.

LayoutTests:

  • platform/efl-wk2/TestExpectations:

Skip context-menu-suggestions.html until
https://bugs.webkit.org/show_bug.cgi?id=107684 lands.

7:01 AM Changeset in webkit [141109] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Wrong indent in Styles sidebar pane
https://bugs.webkit.org/show_bug.cgi?id=108186

Patch by Vladislav Kaznacheev <kaznacheev@chromium.org> on 2013-01-29
Reviewed by Alexander Pavlov.

Added an extra selector to prevent a conflict with a rule in elementsPanel.css.

No new tests.

  • inspector/front-end/inspector.css:

(.pane.expanded .section .properties, .event-bar .event-properties):

6:53 AM Changeset in webkit [141108] by commit-queue@webkit.org
  • 4 edits in trunk

Enable Workers for WinCE
https://bugs.webkit.org/show_bug.cgi?id=108099

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-01-29
Reviewed by Gyuyoung Kim.

WORKERS are enabled for all CMake based ports except WinCE.
Turn on WORKERS for all CMake based ports.

  • Source/cmake/OptionsBlackBerry.cmake:
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/WebKitFeatures.cmake:
6:48 AM Changeset in webkit [141107] by michael.bruning@digia.com
  • 2 edits in trunk/Source/WebKit/qt

[Qt][WK1] Fix QObject Bridge tests expected output.
https://bugs.webkit.org/show_bug.cgi?id=107827

Reviewed by Simon Hausmann.

The "not a function" TypeError now includes the call that caused the error.
Correct expected values accordingly.

  • tests/qobjectbridge/tst_qobjectbridge.cpp:

(tst_QObjectBridge::connectAndDisconnect):

6:37 AM Changeset in webkit [141106] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2013-01-29

  • platform/qt-5.0-wk2/TestExpectations: Skip broken plugin tests after r141051.
6:19 AM Changeset in webkit [141105] by fmalita@chromium.org
  • 14 edits in trunk/Source/WebCore

[Chromium] Unreviewed gardening.

Update bindings-tests results after http://trac.webkit.org/changeset/141034.

  • bindings/scripts/test/V8/V8Float64Array.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8Float64Array::createWrapper):

  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestActiveDOMObject::createWrapper):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestCustomNamedGetter::createWrapper):

  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestEventConstructor::createWrapper):

  • bindings/scripts/test/V8/V8TestEventTarget.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestEventTarget::createWrapper):

  • bindings/scripts/test/V8/V8TestException.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestException::createWrapper):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestInterface::createWrapper):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestMediaQueryListListener::createWrapper):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestNamedConstructor::createWrapper):

  • bindings/scripts/test/V8/V8TestNode.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestNode::createWrapper):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestObj::createWrapper):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestOverloadedConstructors::createWrapper):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore):
(WebCore::checkTypeOrDieTrying):
(WebCore::V8TestSerializedScriptValueInterface::createWrapper):

6:14 AM Changeset in webkit [141104] by kadam@inf.u-szeged.hu
  • 2 edits
    3 deletes in trunk/LayoutTests

Unreviewed gardening. Update generic expected file after r141031.
Remove Chromium, GTK and Qt specific expected files, because they are the same as the generic expected file.

  • fast/js/regress/integer-modulo-expected.txt:
  • platform/chromium/fast/js/regress/integer-modulo-expected.txt: Removed after r141044.
  • platform/gtk/fast/js/regress/integer-modulo-expected.txt: Removed after r141084.
  • platform/qt/fast/js/regress/integer-modulo-expected.txt: Removed after r141101.
6:07 AM FeatureFlags edited by Laszlo Gombos
Remove SPEECH_INPUT - see 141092 (diff)
5:49 AM Changeset in webkit [141103] by thiago.santos@intel.com
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening.

Skipping tests broken by r141051.

  • platform/efl-wk2/TestExpectations:
5:22 AM Changeset in webkit [141102] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebKit2

[GTK] Add API to prefetch DNS of a given hostname to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=99695

Reviewed by Anders Carlsson.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(webkit_web_context_prefetch_dns): Public method to resolve the
domain name in advance for the given hostname.

  • UIProcess/API/gtk/WebKitWebContext.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add

webkit_web_context_prefetch_dns.

  • WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:

(webkitWebExtensionDidReceiveMessage): Parse PrefetchDNS message
and call WebCore::prefetchDNS() with the given hostname.
(didReceiveMessage): Call webkitWebExtensionDidReceiveMessage().
(webkitWebExtensionCreate): Add implementation for
didReceiveMessage callback.

4:59 AM Changeset in webkit [141101] by kadam@inf.u-szeged.hu
  • 2 edits
    3 adds in trunk/LayoutTests

[Qt] Unreviewed gardening.

4:57 AM Changeset in webkit [141100] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Web Inspector: in inspector-protocol tests do not swallow errors
https://bugs.webkit.org/show_bug.cgi?id=108087

Patch by Peter Rybin <peter.rybin@gmail.com> on 2013-01-29
Reviewed by Pavel Feldman.
Additional checks are added. Debuggee is more aggressive at
when to kill the test.

  • http/tests/inspector-protocol/resources/InspectorTest.js:
  • http/tests/inspector-protocol/resources/protocol-test.js:

(runTest):

4:54 AM Changeset in webkit [141099] by mikhail.pozdnyakov@intel.com
  • 2 edits in trunk/Source/JavaScriptCore

Compilation warning in JSC
https://bugs.webkit.org/show_bug.cgi?id=108178

Reviewed by Kentaro Hara.

Fixed 'comparison between signed and unsigned integer' warning in JSC::Structure constructor.

  • runtime/Structure.cpp:

(JSC::Structure::Structure):

4:43 AM Changeset in webkit [141098] by aandrey@chromium.org
  • 8 edits in trunk

Web Inspector: [Canvas] support instrumenting canvases in iframes (backend side)
https://bugs.webkit.org/show_bug.cgi?id=107951

Reviewed by Pavel Feldman.

Source/WebCore:

Accept optional FrameId argument for captureFrame and startCapturing commands.
Add event to the protocol to inform about instrumented canvas context creation.

  • inspector/Inspector.json:
  • inspector/InspectorCanvasAgent.cpp:

(WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
(WebCore::InspectorCanvasAgent::hasUninstrumentedCanvases):
(WebCore::InspectorCanvasAgent::captureFrame):
(WebCore::InspectorCanvasAgent::startCapturing):
(WebCore::InspectorCanvasAgent::getTraceLog):
(WebCore::InspectorCanvasAgent::replayTraceLog):
(WebCore::InspectorCanvasAgent::getResourceInfo):
(WebCore::InspectorCanvasAgent::getResourceState):
(WebCore::InspectorCanvasAgent::wrapCanvas2DRenderingContextForInstrumentation):
(WebCore::InspectorCanvasAgent::wrapWebGLRenderingContextForInstrumentation):
(WebCore::InspectorCanvasAgent::notifyRenderingContextWasWrapped):
(WebCore):
(WebCore::InspectorCanvasAgent::findFramesWithUninstrumentedCanvases):
(WebCore::InspectorCanvasAgent::frameNavigated):
(WebCore::InspectorCanvasAgent::frameDetached):

  • inspector/InspectorCanvasAgent.h:

(WebCore):
(WebCore::InspectorCanvasAgent::create):
(InspectorCanvasAgent):

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::frameDetachedFromParentImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):

LayoutTests:

Stub Canvas dispatcher for now to silence alerts in tests.

  • inspector/profiler/canvas-profiler-test.js:

(initialize_CanvasWebGLProfilerTest.InspectorTest.enableCanvasAgent.InspectorBackend.registerCanvasDispatcher):

4:34 AM Changeset in webkit [141097] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Source/JavaScriptCore

[Qt] Fix the JSC build on Mac

Unreviewed, build fix.

  • heap/HeapTimer.h:

Qt on Mac has USE(CF) true, and should use the CF HeapTimer in that case.

4:01 AM Changeset in webkit [141096] by Carlos Garcia Campos
  • 10 edits
    2 adds in trunk

[GTK] Implement resources API using injected bundle
https://bugs.webkit.org/show_bug.cgi?id=107457

Reviewed by Sam Weinig.

Source/WebKit2:

The ResourceLoaderClient was removed from the UI process in
r140285, and most of the GTK+ API depends on resources. This patch
implements the same API using the ResourceLoaderClient from
injected bundle. It fixes the resources unit tests, as well as
other 14 unit tests that are timing out because they depend on
resource API.

  • GNUmakefile.list.am: Add new files to compilation.
  • Shared/UserMessageCoders.h:

(WebKit::UserMessageEncoder::baseEncode): Add support for encoding
WebURLResponse and WebError objects in user messages.
(WebKit::UserMessageDecoder::baseDecode): Add support for decoding
WebURLResponse and WebError objects from user messages.

  • UIProcess/API/gtk/WebKitInjectedBundleClient.cpp: Added.

(didReceiveWebViewMessageFromInjectedBundle): Handle messages sent
to the WebView. For now it hanldes all the sresource loader client
messages.
(didReceiveMessageFromInjectedBundle): Handle messages received
from injected bundle.
(attachInjectedBundleClientToContext): Initialize the injected
bundle client.

  • UIProcess/API/gtk/WebKitInjectedBundleClient.h: Added.
  • UIProcess/API/gtk/WebKitWebContext.cpp:

(_WebKitWebContextPrivate): Add a HashMap to map page IDs to
WebKitWebViews.
(createDefaultWebContext): Call
attachInjectedBundleClientToContext() to intialize the injected
bundle client.
(webkitWebContextCreatePageForWebView): Use
webkitWebViewBaseCreateWebPage() to create and initialize a new
WebPageProxy and map the newly created page with the given
WebKitWebView.
(webkitWebContextWebViewDestroyed): Called when the given
WebKitWebView is being destroyed to remove it from the views map.
(webkitWebContextGetWebViewForPage): Returns the WebKitWebView
associated to the given page ID.

  • UIProcess/API/gtk/WebKitWebContextPrivate.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewConstructed): Use
webkitWebContextCreatePageForWebView() instead of
webkitWebViewBaseCreateWebPage() directly.
(webkitWebViewDispose): Call webkitWebContextWebViewDestroyed() to
notify the context.

  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:

(didInitiateLoadForResource): Send a message to the UI process
with the callback parameters encoded.
(willSendRequestForFrame): Ditto.
(didReceiveResponseForResource): Ditto.
(didReceiveContentLengthForResource): Ditto.
(didFinishLoadForResource): Ditto.
(didFailLoadForResource): Ditto.
(webkitWebPageCreate): Initialize the
WKBundlePageResourceLoadClient.

Tools:

  • Scripts/run-gtk-tests:

(TestRunner): Unksip resources unit tests.

3:58 AM Changeset in webkit [141095] by michael.bruning@digia.com
  • 2 edits in trunk/Tools

Unreviewed, updated my email information.

  • Scripts/webkitpy/common/config/committers.py:
3:55 AM Changeset in webkit [141094] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Web Inspector: [CPU Profile] Taking profile crashes renderer.
https://bugs.webkit.org/show_bug.cgi?id=108072

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2013-01-29
Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: inspector/profiler/cpu-profiler-agent-crash-on-start.html

Fixed null-pointer access.

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::start): Fixed null-pointer access.
(WebCore::ScriptProfiler::stop): Ditto.

LayoutTests:

Added test to check that ProfilerAgent start/stop doesn't crash.

  • inspector/profiler/cpu-profiler-agent-crash-on-start-expected.txt: Added.
  • inspector/profiler/cpu-profiler-agent-crash-on-start.html: Added.
3:36 AM Changeset in webkit [141093] by allan.jensen@digia.com
  • 5 edits
    4 adds in trunk

REGRESSION: ChildrenAffectedBy flags lost between siblings which have child elements sharing style
https://bugs.webkit.org/show_bug.cgi?id=105672

Reviewed by Andreas Kling.

Source/WebCore:

Change in how childrenAffectedBy bits were stored made it easier to trigger an issue where childrenAffectedBy bits
were not set due to sharing of styles between cousin elements.

This patch fixes the issue by not sharing styles from children with parents who prevent sharing.

Tests: fast/selectors/cousin-stylesharing-adjacent-selector.html

fast/selectors/cousin-stylesharing-last-child-selector.html

  • css/StyleResolver.cpp:

(WebCore::parentElementPreventsSharing):
(WebCore::StyleResolver::locateCousinList):

  • dom/Element.cpp:

(WebCore::Element::hasFlagsSetDuringStylingOfChildren):

  • dom/Element.h:

(Element):

LayoutTests:

Two test cases by Philippe Wittenbergh that triggers the issue.

  • fast/selectors/cousin-stylesharing-adjacent-selector-expected.html: Added.
  • fast/selectors/cousin-stylesharing-adjacent-selector.html: Added.
  • fast/selectors/cousin-stylesharing-last-child-selector-expected.html: Added.
  • fast/selectors/cousin-stylesharing-last-child-selector.html: Added.
3:32 AM Changeset in webkit [141092] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt] Remove misspelled ENABLE(SPEECH_INPUT) guard
https://bugs.webkit.org/show_bug.cgi?id=105683

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-01-29
Reviewed by Simon Hausmann.

The ENABLE(SPEECH_INPUT) guard is only used in one location
in the source tree and as such it is always 0.

I believe that this guard is a left over and is not needed any more
as the code guarded is not guarded anywhere else.

  • WebProcess/qt/WebProcessQt.cpp:

(WebKit::WebProcess::platformInitializeWebProcess):

3:08 AM Changeset in webkit [141091] by vsevik@chromium.org
  • 3 edits
    2 adds in trunk

Web Inspector: [Regression] Search across all sources is broken.
https://bugs.webkit.org/show_bug.cgi?id=108157

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/search/scripts-search-scope.html

  • inspector/front-end/ScriptsSearchScope.js:

(WebInspector.ScriptsSearchScope.prototype._sortedUISourceCodes):

LayoutTests:

  • http/tests/inspector/search/scripts-search-scope-expected.txt: Added.
  • http/tests/inspector/search/scripts-search-scope.html: Added.
3:06 AM Changeset in webkit [141090] by mkwst@chromium.org
  • 5 edits in trunk/Source/WebCore

IDBFactory::webkitGetDatabaseNames should raise DOMExceptions.
https://bugs.webkit.org/show_bug.cgi?id=108154

Reviewed by Jochen Eisinger.

In order to properly support blocking third-party IndexedDB usage,
open(), getDatabaseNames(), and deleteDatabase() should all throw
SECURITY_ERR when used in a blocked third-party context. That's possible
now for open() and deleteDatabase(), but getDatabaseNames() can't
currently raise exceptions.

This patch adjusts the IDL file and implementation. No exceptions are
currently thrown, but that will change as soon as wkbug.com/94171 lands.

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::getDatabaseNames):

  • Modules/indexeddb/IDBFactory.h:

(IDBFactory):

  • Modules/indexeddb/IDBFactory.idl:

Add "raises (DOMException)" to getDatabaseNames, and adjust the
implementation to match.

  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore::InspectorIndexedDBAgent::requestDatabaseNamesForFrame):

Pass in an ExceptionCode when calling getDatabaseNames, and handle
possible exceptions.

2:51 AM Changeset in webkit [141089] by allan.jensen@digia.com
  • 5 edits in trunk/Source/JavaScriptCore

[Qt] Implement IncrementalSweeper and HeapTimer
https://bugs.webkit.org/show_bug.cgi?id=103996

Reviewed by Simon Hausmann.

Implements the incremental sweeping garbage collection for the Qt platform.

  • heap/HeapTimer.cpp:

(JSC::HeapTimer::HeapTimer):
(JSC::HeapTimer::~HeapTimer):
(JSC::HeapTimer::timerEvent):
(JSC::HeapTimer::synchronize):
(JSC::HeapTimer::invalidate):
(JSC::HeapTimer::didStartVMShutdown):

  • heap/HeapTimer.h:

(HeapTimer):

  • heap/IncrementalSweeper.cpp:

(JSC::IncrementalSweeper::IncrementalSweeper):
(JSC::IncrementalSweeper::scheduleTimer):

  • heap/IncrementalSweeper.h:

(IncrementalSweeper):

2:15 AM Changeset in webkit [141088] by hayato@chromium.org
  • 2 edits in trunk/Source/WebCore

Revert an accidentally changed line of EventHander::handleMousePressEvent(PlatformMouseEvent&) in r135650.
https://bugs.webkit.org/show_bug.cgi?id=108165

Reviewed by Hajime Morita.

No new tests.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):

2:01 AM Changeset in webkit [141087] by kadam@inf.u-szeged.hu
  • 1 edit
    78 deletes in trunk/LayoutTests

Unreviewed, rolling out r140959 and r140977.
http://trac.webkit.org/changeset/140959
http://trac.webkit.org/changeset/140977
https://bugs.webkit.org/show_bug.cgi?id=108171

Reverting rebaseline because after r141067 the expected
results should be the old values. (Requested by kadam on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-29

  • platform/qt-5.0-wk1/compositing/absolute-inside-out-of-view-fixed-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/backing/no-backing-for-clip-overlap-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/bounds-in-flipped-writing-mode-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/clip-child-by-non-stacking-ancestor-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-clipped-composited-child-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-clipped-composited-child-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-dynamic-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/clip-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/clip-inside-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/composited-in-columns-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/composited-in-columns-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/flipped-writing-mode-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/flipped-writing-mode-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/foreground-layer-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/foreground-layer-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/geometry/preserve-3d-switching-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/become-composited-nested-iframes-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/become-overlapped-iframe-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/composited-parent-iframe-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/connect-compositing-iframe-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/connect-compositing-iframe2-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/connect-compositing-iframe3-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/enter-compositing-iframe-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/iframe-resize-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/overlapped-iframe-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/overlapped-iframe-iframe-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/overlapped-nested-iframes-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/iframes/scrolling-iframe-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/images/clip-on-directly-composited-image-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/animation-overlap-with-children-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/fixed-position-out-of-view-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/fixed-position-under-transform-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/fixed-position-under-transform-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-animation-clipping-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-animation-container-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-child-layer-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-child-layer-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-transformed-layer-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-transformed-layer-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/rotate3d-overlap-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/stacking-context-overlap-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/layer-creation/stacking-context-overlap-nested-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/masks/mask-layer-size-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/repaint/resize-repaint-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-absolute-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-absolute-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-fixed-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-fixed-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-relative-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-relative-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/tiling/backface-preserve-3d-tiled-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/tiling/backface-preserve-3d-tiled-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/tiling/huge-layer-img-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/tiling/huge-layer-img-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/tiling/rotated-tiled-clamped-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/tiling/rotated-tiled-clamped-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/tiling/tiled-layer-resize-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/visibility/layer-visible-content-expected.png: Removed.
  • platform/qt-5.0-wk1/compositing/visibility/layer-visible-content-expected.txt: Removed.
  • platform/qt-5.0-wk1/compositing/visibility/visibility-image-layers-dynamic-expected.txt: Removed.
  • platform/qt-5.0-wk1/css3/filters/composited-during-transition-layertree-expected.txt: Removed.
  • platform/qt-5.0-wk1/css3/filters/filtered-compositing-descendant-expected.png: Removed.
  • platform/qt-5.0-wk1/css3/filters/filtered-compositing-descendant-expected.txt: Removed.
2:01 AM Changeset in webkit [141086] by tkent@chromium.org
  • 32 edits in trunk/Source/WebCore

FeatureObserver: Input types are counted unexpectedly in a page with Modernizr
https://bugs.webkit.org/show_bug.cgi?id=108141

Reviewed by Kentaro Hara.

We don't want to record input type instantiation by Modernizr. Modernizr
creates input elements with these types, append it to document.body, and
render it with visibility:hidden. So, we record input types only when
they are attached without visibility:hidden.

No new tests. FeatureObserver is not testable by layout test.

  • html/InputType.cpp:

(WebCore::InputType::create): Remove FeatureObserver::observe
callsites. They are moved to TextInputType::attach.
(WebCore::InputType::observeFeatureIfVisible):
Added. A helper for attach().

  • html/InputType.h:

(InputType): Add observeFeatureIfVisible.

  • html/ColorInputType.cpp:

(WebCore::ColorInputType::create):
Remove a FeatureObserver::observe callsite.
(WebCore::ColorInputType::attach):
Calls FetureObserver through InputType::observeFeatureIfVisible.

  • html/ColorInputType.h:

(ColorInputType): Declare attach.

  • html/DateInputType.cpp: Ditto.
  • html/DateInputType.h: Ditto.
  • html/DateTimeInputType.cpp: Ditto.
  • html/DateTimeInputType.h: Ditto.
  • html/DateTimeLocalInputType.cpp: Ditto.
  • html/DateTimeLocalInputType.h: Ditto.
  • html/MonthInputType.cpp: Ditto.
  • html/MonthInputType.h: Ditto.
  • html/RangeInputType.cpp: Ditt
  • html/RangeInputType.h: Ditto.
  • html/TimeInputType.cpp: Ditto.
  • html/TimeInputType.h: Ditto.
  • html/WeekInputType.cpp: Ditto.
  • html/WeekInputType.h: Ditto.
  • html/TextFieldInputType.h:

(TextFieldInputType):
Make attach protected in order that sub classes can call it.

  • html/EmailInputType.cpp:

(WebCore::EmailInputType::create):
Remove a FeatureObserver::observe callsite.
(WebCore::EmailInputType::attach): Calls FetureObserver through
InputType::observeFeatureIfVisible after TextFieldInptuType::attach.

  • html/EmailInputType.h:

(EmailInputType):Declare attach.

  • html/NumberInputType.cpp: Ditto.
  • html/NumberInputType.h: Ditto.
  • html/SearchInputType.cpp: Ditto.
  • html/SearchInputType.h: Ditto.
  • html/TelephoneInputType.cpp: Ditto.
  • html/TelephoneInputType.h: Ditto.
  • html/URLInputType.cpp: Ditto.
  • html/URLInputType.h: Ditto.
  • html/TextInputType.cpp:

(WebCore::TextInputType::attach):
Move the code for type fallback from InputType::create.

  • html/TextInputType.h:

(TextInputType): Declare attach.

1:41 AM Changeset in webkit [141085] by michael.bruning@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt][WK1] Reflect recursion limit and loop checks also for list conversions.
https://bugs.webkit.org/show_bug.cgi?id=107950

Reviewed by Allan Sandfeld Jensen.

No new tests, bugfix, no behavioral change.

Make conversions from Javascript values to QLists take the maximum
recursion depth into consideration and check for objects that were
already visited. Otherwise, the conversion may recurse until the
stack is full and then cause a segmentation fault.

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::convertToList):
(JSC::Bindings::convertValueToQVariant):

1:37 AM Changeset in webkit [141084] by zandobersek@gmail.com
  • 2 edits
    2 adds in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Added failure/flaky crash expectations for two layout tests.
  • platform/gtk/fast/js/regress: Added.
  • platform/gtk/fast/js/regress/integer-modulo-expected.txt: Added the baseline after r141031.
1:35 AM Changeset in webkit [141083] by esprehn@chromium.org
  • 4 edits in trunk/Source/WebCore

Clean up interface to ElementShadow
https://bugs.webkit.org/show_bug.cgi?id=108158

Reviewed by Hajime Morita.

Lots of general clean up to ElementShadow removing unused headers,
adding a create() method that returns a PassOwnPtr, adding missing const,
and moving short inline methods into the class definition so it's easier
to understand what methods do what.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::ensureShadow):

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::childNeedsStyleRecalc):
(WebCore::ElementShadow::needsStyleRecalc):

  • dom/ElementShadow.h:

(WebCore::ElementShadow::create):
(ElementShadow):
(WebCore::ElementShadow::~ElementShadow):
(WebCore::ElementShadow::youngestShadowRoot):
(WebCore::ElementShadow::oldestShadowRoot):
(WebCore::ElementShadow::distributor):
(WebCore::ElementShadow::ElementShadow):
(WebCore::ElementShadow::containingShadow):

1:30 AM Changeset in webkit [141082] by jochen@chromium.org
  • 10 edits
    2 deletes in trunk/Tools

[chromium] delete DRTTestRunner
https://bugs.webkit.org/show_bug.cgi?id=108082

Reviewed by Adam Barth.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/DRTTestRunner.cpp: Removed.
  • DumpRenderTree/chromium/DRTTestRunner.h: Removed.
  • DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:

(WebTestRunner::WebTestDelegate::testFinished):
(WebTestRunner::WebTestDelegate::testTimedOut):
(WebTestRunner::WebTestDelegate::isBeingDebugged):
(WebTestRunner::WebTestDelegate::layoutTestTimeout):
(WebTestRunner::WebTestDelegate::closeRemainingWindows):
(WebTestRunner::WebTestDelegate::navigationEntryCount):
(WebTestRunner::WebTestDelegate::windowCount):
(WebTestRunner::WebTestDelegate::setCustomPolicyDelegate):
(WebTestRunner::WebTestDelegate::waitForPolicyDelegate):
(WebTestRunner::WebTestDelegate::goToOffset):
(WebTestRunner::WebTestDelegate::reload):
(WebTestRunner::WebTestDelegate::loadURLForFrame):

  • DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:

(WebTestRunner::WebTestRunner::policyDelegateDone):
(WebTestRunner::WebTestRunner::shouldInterceptPostMessage):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::WorkQueue::~WorkQueue):
(WebTestRunner):
(WebTestRunner::TestRunner::WorkQueue::processWorkSoon):
(WebTestRunner::TestRunner::WorkQueue::processWork):
(WebTestRunner::TestRunner::WorkQueue::reset):
(WebTestRunner::TestRunner::WorkQueue::addWork):
(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::reset):
(WebTestRunner::TestRunner::policyDelegateDone):
(WebTestRunner::TestRunner::shouldInterceptPostMessage):
(WebTestRunner::TestRunner::waitUntilDone):
(WebTestRunner::TestRunner::notifyDone):
(WebTestRunner::TestRunner::completeNotifyDone):
(WorkItemBackForward):
(WebTestRunner::WorkItemBackForward::WorkItemBackForward):
(WebTestRunner::WorkItemBackForward::run):
(WebTestRunner::TestRunner::queueBackNavigation):
(WebTestRunner::TestRunner::queueForwardNavigation):
(WorkItemReload):
(WebTestRunner::WorkItemReload::run):
(WebTestRunner::TestRunner::queueReload):
(WorkItemLoadingScript):
(WebTestRunner::WorkItemLoadingScript::WorkItemLoadingScript):
(WebTestRunner::WorkItemLoadingScript::run):
(WorkItemNonLoadingScript):
(WebTestRunner::WorkItemNonLoadingScript::WorkItemNonLoadingScript):
(WebTestRunner::WorkItemNonLoadingScript::run):
(WebTestRunner::TestRunner::queueLoadingScript):
(WebTestRunner::TestRunner::queueNonLoadingScript):
(WorkItemLoad):
(WebTestRunner::WorkItemLoad::WorkItemLoad):
(WebTestRunner::WorkItemLoad::run):
(WebTestRunner::TestRunner::queueLoad):
(WorkItemLoadHTMLString):
(WebTestRunner::WorkItemLoadHTMLString::WorkItemLoadHTMLString):
(WebTestRunner::WorkItemLoadHTMLString::run):
(WebTestRunner::TestRunner::queueLoadHTMLString):
(WebTestRunner::TestRunner::locationChangeDone):
(WebTestRunner::TestRunner::windowCount):
(WebTestRunner::TestRunner::setCloseRemainingWindowsWhenComplete):
(WebTestRunner::TestRunner::setCustomPolicyDelegate):
(WebTestRunner::TestRunner::waitForPolicyDelegate):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):
(WorkItem):
(WebTestRunner::TestRunner::WorkItem::~WorkItem):
(WorkQueue):
(WebTestRunner::TestRunner::WorkQueue::WorkQueue):
(WebTestRunner::TestRunner::WorkQueue::setFrozen):
(WebTestRunner::TestRunner::WorkQueue::isEmpty):
(WebTestRunner::TestRunner::WorkQueue::taskList):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::initialize):
(TestShell::runFileTest):
(TestShell::loadURL):
(TestShell::createNewWindow):

  • DumpRenderTree/chromium/TestShell.h:

(TestShell::testRunner):
(TestShell):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::testFinished):
(WebViewHost::testTimedOut):
(WebViewHost::isBeingDebugged):
(WebViewHost::layoutTestTimeout):
(WebViewHost::closeRemainingWindows):
(WebViewHost::navigationEntryCount):
(WebViewHost::windowCount):
(WebViewHost::setCustomPolicyDelegate):
(WebViewHost::waitForPolicyDelegate):
(WebViewHost::goToOffset):
(WebViewHost::reload):
(WebViewHost::loadURLForFrame):
(WebViewHost::shutdown):
(WebViewHost::testRunner):

  • DumpRenderTree/chromium/WebViewHost.h:

(WebTestRunner):
(WebViewHost):

1:21 AM Changeset in webkit [141081] by keishi@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Disabling WebFrameTest.DisambiguationPopupMobileSite because WebFrameTest is still failing after r141073.

Unreviewed. Gardening.

  • tests/WebFrameTest.cpp:
1:16 AM Changeset in webkit [141080] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r141064.
http://trac.webkit.org/changeset/141064
https://bugs.webkit.org/show_bug.cgi?id=108166

[Chromium] WebFrameTest.DivScrollIntoEditableTest is failing
on WinXP. (Requested by keishi on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-29

  • tests/WebFrameTest.cpp:
  • tests/data/get_scale_for_zoom_into_editable_test.html:
12:58 AM Changeset in webkit [141079] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebKit2

Unreviewed build fix after r141024.
Adding new files to the build.

  • GNUmakefile.am:
  • GNUmakefile.list.am:
12:55 AM Changeset in webkit [141078] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2] Fix unused parameter build warning
https://bugs.webkit.org/show_bug.cgi?id=108156

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2013-01-29
Reviewed by Kentaro Hara.

Comment out the unused parameters to fix the build warnings.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:
  • WebProcess/Plugins/PluginProxy.h:
12:51 AM Changeset in webkit [141077] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Marking icon-0colors.html as crashing.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
12:39 AM Changeset in webkit [141076] by jochen@chromium.org
  • 2 edits
    2 copies in branches/chromium/1364

Merge 140928

[chromium] add missing plumbing for Notification.requestPermission
https://bugs.webkit.org/show_bug.cgi?id=108012

Reviewed by Adam Barth.

Source/WebKit/chromium:

  • src/NotificationPresenterImpl.cpp:

(WebKit):
(WebKit::VoidCallbackClient::VoidCallbackClient):
(NotificationPermissionCallbackClient):
(WebKit::NotificationPermissionCallbackClient::NotificationPermissionCallbackClient):
(WebKit::NotificationPermissionCallbackClient::permissionRequestComplete):
(WebKit::NotificationPermissionCallbackClient::~NotificationPermissionCallbackClient):
(WebKit::NotificationPresenterImpl::requestPermission):

  • src/NotificationPresenterImpl.h:

(NotificationPresenterImpl):

LayoutTests:

  • fast/notifications/notifications-constructor-request-permission-expected.txt: Added.
  • fast/notifications/notifications-constructor-request-permission.html: Added.

TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/12086041

12:33 AM Changeset in webkit [141075] by esprehn@chromium.org
  • 3 edits in trunk/Source/WebCore

Store ShadowRootType inside the bitfield
https://bugs.webkit.org/show_bug.cgi?id=108147

Reviewed by Dimitri Glazkov.

We can simplify the interface to ShadowRoot by storing the enum value of
ShadowRootType inside the bitfield like we do in the rest of WebCore.

No new tests, just refactoring.

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::ShadowRoot):
(WebCore::ShadowRoot::create):

  • dom/ShadowRoot.h:

(WebCore::ShadowRoot::type):
(ShadowRoot):

12:31 AM Changeset in webkit [141074] by vsevik@chromium.org
  • 2 edits
    1 delete in branches/chromium/1364

Merge 139616

Web Inspector: Audit Tool's False Positive on Set-Cookie header
https://bugs.webkit.org/show_bug.cgi?id=106794

Reviewed by Pavel Feldman.

Source/WebCore:

Header value is now returned as undefined if there is no such header as it was before regression.

Test: http/tests/inspector/audits/set-cookie-header-audit-no-false-positive.html

  • inspector/front-end/AuditRules.js:

(WebInspector.AuditRules.CSSRuleBase.prototype.sheetsCallback): Drive-by fix, callback should be called even when there is no headers.

  • inspector/front-end/NetworkRequest.js:

(WebInspector.NetworkRequest.prototype._headerValue):

LayoutTests:

  • http/tests/inspector/audits/resources/abe.png: Renamed from LayoutTests/inspector/audits/resources/abe.png.
  • http/tests/inspector/audits/set-cookie-header-audit-no-false-positive-expected.txt: Added.
  • http/tests/inspector/audits/set-cookie-header-audit-no-false-positive.html: Added.

TBR=vsevik@chromium.org
BUG=169771
Review URL: https://codereview.chromium.org/12089042

12:30 AM Changeset in webkit [141073] by keishi@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Disabling WebFrameTest.DisambiguationPopup because it is failing.

Unreviewed. Gardening.

  • tests/WebFrameTest.cpp:
12:25 AM Changeset in webkit [141072] by jochen@chromium.org
  • 1 edit
    4 copies in branches/chromium/1364

Merge 140927

Check notification permissions in the show() method
https://bugs.webkit.org/show_bug.cgi?id=108009

Reviewed by Adam Barth.

Source/WebCore:

Tests: fast/notifications/notifications-constructor-with-permission.html

fast/notifications/notifications-constructor-without-permission.html

  • Modules/notifications/Notification.cpp:

(WebCore::Notification::show):
(WebCore::Notification::taskTimerFired):

LayoutTests:

  • fast/notifications/notifications-constructor-with-permission-expected.txt: Added.
  • fast/notifications/notifications-constructor-with-permission.html: Added.
  • fast/notifications/notifications-constructor-without-permission-expected.txt: Added.
  • fast/notifications/notifications-constructor-without-permission.html: Added.

TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/12087048

12:18 AM Changeset in webkit [141071] by jochen@chromium.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r141070): Broke debug build
https://bugs.webkit.org/show_bug.cgi?id=108159

Unreviewed build fix.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::pumpTokenizer):

12:01 AM Changeset in webkit [141070] by abarth@webkit.org
  • 7 edits in trunk/Source/WebCore

HTMLDocumentParser should hold the HTMLToken using an OwnPtr
https://bugs.webkit.org/show_bug.cgi?id=107762

Reviewed by Eric Seidel.

Using an OwnPtr will let us detach the HTMLToken from the
HTMLDocumentParser and send it to the BackgroundHTMLParser for further
processing.

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::BackgroundHTMLParser):
(WebCore::BackgroundHTMLParser::pumpTokenizer):

  • html/parser/BackgroundHTMLParser.h:

(BackgroundHTMLParser):

  • html/parser/CompactHTMLToken.cpp:

(WebCore::CompactHTMLToken::CompactHTMLToken):

  • html/parser/CompactHTMLToken.h:

(CompactHTMLToken):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore::HTMLDocumentParser::pumpTokenizer):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):

12:01 AM Changeset in webkit [141069] by fpizlo@apple.com
  • 63 edits
    9 adds in trunk/Source/JavaScriptCore

DFG should not use a graph that is a vector, Nodes shouldn't move after allocation, and we should always refer to nodes by Node*
https://bugs.webkit.org/show_bug.cgi?id=106868

Reviewed by Oliver Hunt.

This adds a pool allocator for Nodes, and uses that instead of a Vector. Changes all
uses of Node& and NodeIndex to be simply Node*. Nodes no longer have an index except
for debugging (Node::index(), which is not guaranteed to be O(1)).

1% speed-up on SunSpider, presumably because this improves compile times.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/DataFormat.h:

(JSC::dataFormatToString):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::initialize):
(JSC::DFG::AbstractState::booleanResult):
(JSC::DFG::AbstractState::execute):
(JSC::DFG::AbstractState::mergeStateAtTail):
(JSC::DFG::AbstractState::mergeToSuccessors):
(JSC::DFG::AbstractState::mergeVariableBetweenBlocks):
(JSC::DFG::AbstractState::dump):

  • dfg/DFGAbstractState.h:

(DFG):
(JSC::DFG::AbstractState::forNode):
(AbstractState):
(JSC::DFG::AbstractState::speculateInt32Unary):
(JSC::DFG::AbstractState::speculateNumberUnary):
(JSC::DFG::AbstractState::speculateBooleanUnary):
(JSC::DFG::AbstractState::speculateInt32Binary):
(JSC::DFG::AbstractState::speculateNumberBinary):
(JSC::DFG::AbstractState::trySetConstant):

  • dfg/DFGAbstractValue.h:

(AbstractValue):

  • dfg/DFGAdjacencyList.h:

(JSC::DFG::AdjacencyList::AdjacencyList):
(JSC::DFG::AdjacencyList::initialize):

  • dfg/DFGAllocator.h: Added.

(DFG):
(Allocator):
(JSC::DFG::Allocator::Region::size):
(JSC::DFG::Allocator::Region::headerSize):
(JSC::DFG::Allocator::Region::numberOfThingsPerRegion):
(JSC::DFG::Allocator::Region::data):
(JSC::DFG::Allocator::Region::isInThisRegion):
(JSC::DFG::Allocator::Region::regionFor):
(Region):
(JSC::DFG::::Allocator):
(JSC::DFG::::~Allocator):
(JSC::DFG::::allocate):
(JSC::DFG::::free):
(JSC::DFG::::freeAll):
(JSC::DFG::::reset):
(JSC::DFG::::indexOf):
(JSC::DFG::::allocatorOf):
(JSC::DFG::::bumpAllocate):
(JSC::DFG::::freeListAllocate):
(JSC::DFG::::allocateSlow):
(JSC::DFG::::freeRegionsStartingAt):
(JSC::DFG::::startBumpingIn):

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):
(JSC::DFG::ArgumentsSimplificationPhase::observeBadArgumentsUse):
(JSC::DFG::ArgumentsSimplificationPhase::observeBadArgumentsUses):
(JSC::DFG::ArgumentsSimplificationPhase::observeProperArgumentsUse):
(JSC::DFG::ArgumentsSimplificationPhase::isOKToOptimize):
(JSC::DFG::ArgumentsSimplificationPhase::removeArgumentsReferencingPhantomChild):

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::originalArrayStructure):
(JSC::DFG::ArrayMode::alreadyChecked):

  • dfg/DFGArrayMode.h:

(ArrayMode):

  • dfg/DFGArrayifySlowPathGenerator.h:

(JSC::DFG::ArrayifySlowPathGenerator::ArrayifySlowPathGenerator):

  • dfg/DFGBasicBlock.h:

(JSC::DFG::BasicBlock::node):
(JSC::DFG::BasicBlock::isInPhis):
(JSC::DFG::BasicBlock::isInBlock):
(BasicBlock):

  • dfg/DFGBasicBlockInlines.h:

(DFG):

  • dfg/DFGByteCodeParser.cpp:

(ByteCodeParser):
(JSC::DFG::ByteCodeParser::getDirect):
(JSC::DFG::ByteCodeParser::get):
(JSC::DFG::ByteCodeParser::setDirect):
(JSC::DFG::ByteCodeParser::set):
(JSC::DFG::ByteCodeParser::setPair):
(JSC::DFG::ByteCodeParser::injectLazyOperandSpeculation):
(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::setLocal):
(JSC::DFG::ByteCodeParser::getArgument):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::flushDirect):
(JSC::DFG::ByteCodeParser::getToInt32):
(JSC::DFG::ByteCodeParser::toInt32):
(JSC::DFG::ByteCodeParser::getJSConstantForValue):
(JSC::DFG::ByteCodeParser::getJSConstant):
(JSC::DFG::ByteCodeParser::getCallee):
(JSC::DFG::ByteCodeParser::getThis):
(JSC::DFG::ByteCodeParser::setThis):
(JSC::DFG::ByteCodeParser::isJSConstant):
(JSC::DFG::ByteCodeParser::isInt32Constant):
(JSC::DFG::ByteCodeParser::valueOfJSConstant):
(JSC::DFG::ByteCodeParser::valueOfInt32Constant):
(JSC::DFG::ByteCodeParser::constantUndefined):
(JSC::DFG::ByteCodeParser::constantNull):
(JSC::DFG::ByteCodeParser::one):
(JSC::DFG::ByteCodeParser::constantNaN):
(JSC::DFG::ByteCodeParser::cellConstant):
(JSC::DFG::ByteCodeParser::addToGraph):
(JSC::DFG::ByteCodeParser::insertPhiNode):
(JSC::DFG::ByteCodeParser::addVarArgChild):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::addStructureTransitionCheck):
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):
(JSC::DFG::ByteCodeParser::getPrediction):
(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):
(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::makeDivSafe):
(JSC::DFG::ByteCodeParser::ConstantRecord::ConstantRecord):
(ConstantRecord):
(JSC::DFG::ByteCodeParser::PhiStackEntry::PhiStackEntry):
(PhiStackEntry):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::emitFunctionChecks):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::setIntrinsicResult):
(JSC::DFG::ByteCodeParser::handleMinMax):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::handleGetByOffset):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::getScope):
(JSC::DFG::ByteCodeParser::parseResolveOperations):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::processPhiStack):
(JSC::DFG::ByteCodeParser::linkBlock):
(JSC::DFG::ByteCodeParser::parseCodeBlock):
(JSC::DFG::ByteCodeParser::parse):

  • dfg/DFGCFAPhase.cpp:

(JSC::DFG::CFAPhase::performBlockCFA):

  • dfg/DFGCFGSimplificationPhase.cpp:

(JSC::DFG::CFGSimplificationPhase::run):
(JSC::DFG::CFGSimplificationPhase::keepOperandAlive):
(JSC::DFG::CFGSimplificationPhase::fixPossibleGetLocal):
(JSC::DFG::CFGSimplificationPhase::fixPhis):
(JSC::DFG::CFGSimplificationPhase::removePotentiallyDeadPhiReference):
(JSC::DFG::CFGSimplificationPhase::OperandSubstitution::OperandSubstitution):
(JSC::DFG::CFGSimplificationPhase::OperandSubstitution::dump):
(OperandSubstitution):
(JSC::DFG::CFGSimplificationPhase::skipGetLocal):
(JSC::DFG::CFGSimplificationPhase::recordNewTarget):
(JSC::DFG::CFGSimplificationPhase::fixTailOperand):
(JSC::DFG::CFGSimplificationPhase::mergeBlocks):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::canonicalize):
(JSC::DFG::CSEPhase::endIndexForPureCSE):
(JSC::DFG::CSEPhase::pureCSE):
(JSC::DFG::CSEPhase::constantCSE):
(JSC::DFG::CSEPhase::weakConstantCSE):
(JSC::DFG::CSEPhase::getCalleeLoadElimination):
(JSC::DFG::CSEPhase::getArrayLengthElimination):
(JSC::DFG::CSEPhase::globalVarLoadElimination):
(JSC::DFG::CSEPhase::scopedVarLoadElimination):
(JSC::DFG::CSEPhase::globalVarWatchpointElimination):
(JSC::DFG::CSEPhase::globalVarStoreElimination):
(JSC::DFG::CSEPhase::scopedVarStoreElimination):
(JSC::DFG::CSEPhase::getByValLoadElimination):
(JSC::DFG::CSEPhase::checkFunctionElimination):
(JSC::DFG::CSEPhase::checkExecutableElimination):
(JSC::DFG::CSEPhase::checkStructureElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::putStructureStoreElimination):
(JSC::DFG::CSEPhase::getByOffsetLoadElimination):
(JSC::DFG::CSEPhase::putByOffsetStoreElimination):
(JSC::DFG::CSEPhase::getPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::checkArrayElimination):
(JSC::DFG::CSEPhase::getIndexedPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::getMyScopeLoadElimination):
(JSC::DFG::CSEPhase::getLocalLoadElimination):
(JSC::DFG::CSEPhase::setLocalStoreElimination):
(JSC::DFG::CSEPhase::performSubstitution):
(JSC::DFG::CSEPhase::eliminateIrrelevantPhantomChildren):
(JSC::DFG::CSEPhase::setReplacement):
(JSC::DFG::CSEPhase::eliminate):
(JSC::DFG::CSEPhase::performNodeCSE):
(JSC::DFG::CSEPhase::performBlockCSE):
(CSEPhase):

  • dfg/DFGCommon.cpp: Added.

(DFG):
(JSC::DFG::NodePointerTraits::dump):

  • dfg/DFGCommon.h:

(DFG):
(JSC::DFG::NodePointerTraits::defaultValue):
(NodePointerTraits):
(JSC::DFG::verboseCompilationEnabled):
(JSC::DFG::shouldDumpGraphAtEachPhase):
(JSC::DFG::validationEnabled):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::isCapturedAtOrAfter):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):
(JSC::DFG::ConstantFoldingPhase::paintUnreachableCode):

  • dfg/DFGDisassembler.cpp:

(JSC::DFG::Disassembler::Disassembler):
(JSC::DFG::Disassembler::createDumpList):
(JSC::DFG::Disassembler::dumpDisassembly):

  • dfg/DFGDisassembler.h:

(JSC::DFG::Disassembler::setForNode):
(Disassembler):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGEdge.cpp: Added.

(DFG):
(JSC::DFG::Edge::dump):

  • dfg/DFGEdge.h:

(JSC::DFG::Edge::Edge):
(JSC::DFG::Edge::node):
(JSC::DFG::Edge::operator*):
(JSC::DFG::Edge::operator->):
(Edge):
(JSC::DFG::Edge::setNode):
(JSC::DFG::Edge::useKind):
(JSC::DFG::Edge::setUseKind):
(JSC::DFG::Edge::isSet):
(JSC::DFG::Edge::shift):
(JSC::DFG::Edge::makeWord):
(JSC::DFG::operator==):
(JSC::DFG::operator!=):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupBlock):
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::checkArray):
(JSC::DFG::FixupPhase::blessArrayOperation):
(JSC::DFG::FixupPhase::fixIntEdge):
(JSC::DFG::FixupPhase::fixDoubleEdge):
(JSC::DFG::FixupPhase::injectInt32ToDoubleNode):
(FixupPhase):

  • dfg/DFGGenerationInfo.h:

(JSC::DFG::GenerationInfo::GenerationInfo):
(JSC::DFG::GenerationInfo::initConstant):
(JSC::DFG::GenerationInfo::initInteger):
(JSC::DFG::GenerationInfo::initJSValue):
(JSC::DFG::GenerationInfo::initCell):
(JSC::DFG::GenerationInfo::initBoolean):
(JSC::DFG::GenerationInfo::initDouble):
(JSC::DFG::GenerationInfo::initStorage):
(GenerationInfo):
(JSC::DFG::GenerationInfo::node):
(JSC::DFG::GenerationInfo::noticeOSRBirth):
(JSC::DFG::GenerationInfo::use):
(JSC::DFG::GenerationInfo::appendFill):
(JSC::DFG::GenerationInfo::appendSpill):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::Graph):
(JSC::DFG::Graph::~Graph):
(DFG):
(JSC::DFG::Graph::dumpCodeOrigin):
(JSC::DFG::Graph::amountOfNodeWhiteSpace):
(JSC::DFG::Graph::printNodeWhiteSpace):
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::dumpBlockHeader):
(JSC::DFG::Graph::refChildren):
(JSC::DFG::Graph::derefChildren):
(JSC::DFG::Graph::predictArgumentTypes):
(JSC::DFG::Graph::collectGarbage):
(JSC::DFG::Graph::determineReachability):
(JSC::DFG::Graph::resetExitStates):

  • dfg/DFGGraph.h:

(Graph):
(JSC::DFG::Graph::ref):
(JSC::DFG::Graph::deref):
(JSC::DFG::Graph::changeChild):
(JSC::DFG::Graph::compareAndSwap):
(JSC::DFG::Graph::clearAndDerefChild):
(JSC::DFG::Graph::clearAndDerefChild1):
(JSC::DFG::Graph::clearAndDerefChild2):
(JSC::DFG::Graph::clearAndDerefChild3):
(JSC::DFG::Graph::convertToConstant):
(JSC::DFG::Graph::getJSConstantSpeculation):
(JSC::DFG::Graph::addSpeculationMode):
(JSC::DFG::Graph::valueAddSpeculationMode):
(JSC::DFG::Graph::arithAddSpeculationMode):
(JSC::DFG::Graph::addShouldSpeculateInteger):
(JSC::DFG::Graph::mulShouldSpeculateInteger):
(JSC::DFG::Graph::negateShouldSpeculateInteger):
(JSC::DFG::Graph::isConstant):
(JSC::DFG::Graph::isJSConstant):
(JSC::DFG::Graph::isInt32Constant):
(JSC::DFG::Graph::isDoubleConstant):
(JSC::DFG::Graph::isNumberConstant):
(JSC::DFG::Graph::isBooleanConstant):
(JSC::DFG::Graph::isCellConstant):
(JSC::DFG::Graph::isFunctionConstant):
(JSC::DFG::Graph::isInternalFunctionConstant):
(JSC::DFG::Graph::valueOfJSConstant):
(JSC::DFG::Graph::valueOfInt32Constant):
(JSC::DFG::Graph::valueOfNumberConstant):
(JSC::DFG::Graph::valueOfBooleanConstant):
(JSC::DFG::Graph::valueOfFunctionConstant):
(JSC::DFG::Graph::valueProfileFor):
(JSC::DFG::Graph::methodOfGettingAValueProfileFor):
(JSC::DFG::Graph::numSuccessors):
(JSC::DFG::Graph::successor):
(JSC::DFG::Graph::successorForCondition):
(JSC::DFG::Graph::isPredictedNumerical):
(JSC::DFG::Graph::byValIsPure):
(JSC::DFG::Graph::clobbersWorld):
(JSC::DFG::Graph::varArgNumChildren):
(JSC::DFG::Graph::numChildren):
(JSC::DFG::Graph::varArgChild):
(JSC::DFG::Graph::child):
(JSC::DFG::Graph::voteNode):
(JSC::DFG::Graph::voteChildren):
(JSC::DFG::Graph::substitute):
(JSC::DFG::Graph::substituteGetLocal):
(JSC::DFG::Graph::addImmediateShouldSpeculateInteger):
(JSC::DFG::Graph::mulImmediateShouldSpeculateInteger):

  • dfg/DFGInsertionSet.h:

(JSC::DFG::Insertion::Insertion):
(JSC::DFG::Insertion::element):
(Insertion):
(JSC::DFG::InsertionSet::insert):
(InsertionSet):

  • dfg/DFGJITCompiler.cpp:
  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::setForNode):
(JSC::DFG::JITCompiler::addressOfDoubleConstant):
(JSC::DFG::JITCompiler::noticeOSREntry):

  • dfg/DFGLongLivedState.cpp: Added.

(DFG):
(JSC::DFG::LongLivedState::LongLivedState):
(JSC::DFG::LongLivedState::~LongLivedState):
(JSC::DFG::LongLivedState::shrinkToFit):

  • dfg/DFGLongLivedState.h: Added.

(DFG):
(LongLivedState):

  • dfg/DFGMinifiedID.h:

(JSC::DFG::MinifiedID::MinifiedID):
(JSC::DFG::MinifiedID::node):

  • dfg/DFGMinifiedNode.cpp:

(JSC::DFG::MinifiedNode::fromNode):

  • dfg/DFGMinifiedNode.h:

(MinifiedNode):

  • dfg/DFGNode.cpp: Added.

(DFG):
(JSC::DFG::Node::index):
(WTF):
(WTF::printInternal):

  • dfg/DFGNode.h:

(DFG):
(JSC::DFG::Node::Node):
(Node):
(JSC::DFG::Node::convertToGetByOffset):
(JSC::DFG::Node::convertToPutByOffset):
(JSC::DFG::Node::ref):
(JSC::DFG::Node::shouldSpeculateInteger):
(JSC::DFG::Node::shouldSpeculateIntegerForArithmetic):
(JSC::DFG::Node::shouldSpeculateIntegerExpectingDefined):
(JSC::DFG::Node::shouldSpeculateDoubleForArithmetic):
(JSC::DFG::Node::shouldSpeculateNumber):
(JSC::DFG::Node::shouldSpeculateNumberExpectingDefined):
(JSC::DFG::Node::shouldSpeculateFinalObject):
(JSC::DFG::Node::shouldSpeculateArray):
(JSC::DFG::Node::dumpChildren):
(WTF):

  • dfg/DFGNodeAllocator.h: Added.

(DFG):
(operator new ):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::OSRExit):

  • dfg/DFGOSRExit.h:

(OSRExit):
(SpeculationFailureDebugInfo):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGOSRExitCompiler32_64.cpp:

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

  • dfg/DFGOSRExitCompiler64.cpp:

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

  • dfg/DFGOperations.cpp:
  • dfg/DFGPhase.cpp:

(DFG):
(JSC::DFG::Phase::beginPhase):
(JSC::DFG::Phase::endPhase):

  • dfg/DFGPhase.h:

(Phase):
(JSC::DFG::runAndLog):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::setPrediction):
(JSC::DFG::PredictionPropagationPhase::mergePrediction):
(JSC::DFG::PredictionPropagationPhase::isNotNegZero):
(JSC::DFG::PredictionPropagationPhase::isNotZero):
(JSC::DFG::PredictionPropagationPhase::isWithinPowerOfTwoForConstant):
(JSC::DFG::PredictionPropagationPhase::isWithinPowerOfTwoNonRecursive):
(JSC::DFG::PredictionPropagationPhase::isWithinPowerOfTwo):
(JSC::DFG::PredictionPropagationPhase::propagate):
(JSC::DFG::PredictionPropagationPhase::mergeDefaultFlags):
(JSC::DFG::PredictionPropagationPhase::propagateForward):
(JSC::DFG::PredictionPropagationPhase::propagateBackward):
(JSC::DFG::PredictionPropagationPhase::doDoubleVoting):
(PredictionPropagationPhase):
(JSC::DFG::PredictionPropagationPhase::doRoundOfDoubleVoting):

  • dfg/DFGScoreBoard.h:

(JSC::DFG::ScoreBoard::ScoreBoard):
(JSC::DFG::ScoreBoard::use):
(JSC::DFG::ScoreBoard::useIfHasResult):
(ScoreBoard):

  • dfg/DFGSilentRegisterSavePlan.h:

(JSC::DFG::SilentRegisterSavePlan::SilentRegisterSavePlan):
(JSC::DFG::SilentRegisterSavePlan::node):
(SilentRegisterSavePlan):

  • dfg/DFGSlowPathGenerator.h:

(JSC::DFG::SlowPathGenerator::SlowPathGenerator):
(JSC::DFG::SlowPathGenerator::generate):
(SlowPathGenerator):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):
(JSC::DFG::SpeculativeJIT::convertLastOSRExitToForward):
(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):
(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):
(JSC::DFG::SpeculativeJIT::silentSavePlanForGPR):
(JSC::DFG::SpeculativeJIT::silentSavePlanForFPR):
(JSC::DFG::SpeculativeJIT::silentSpill):
(JSC::DFG::SpeculativeJIT::silentFill):
(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::arrayify):
(JSC::DFG::SpeculativeJIT::fillStorage):
(JSC::DFG::SpeculativeJIT::useChildren):
(JSC::DFG::SpeculativeJIT::isStrictInt32):
(JSC::DFG::SpeculativeJIT::isKnownInteger):
(JSC::DFG::SpeculativeJIT::isKnownNumeric):
(JSC::DFG::SpeculativeJIT::isKnownCell):
(JSC::DFG::SpeculativeJIT::isKnownNotCell):
(JSC::DFG::SpeculativeJIT::isKnownNotInteger):
(JSC::DFG::SpeculativeJIT::isKnownNotNumber):
(JSC::DFG::SpeculativeJIT::writeBarrier):
(JSC::DFG::SpeculativeJIT::nonSpeculativeCompare):
(JSC::DFG::SpeculativeJIT::nonSpeculativeStrictEq):
(JSC::DFG::GPRTemporary::GPRTemporary):
(JSC::DFG::FPRTemporary::FPRTemporary):
(JSC::DFG::SpeculativeJIT::compilePeepHoleDoubleBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleIntegerBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleBranch):
(JSC::DFG::SpeculativeJIT::noticeOSRBirth):
(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):
(JSC::DFG::SpeculativeJIT::compileDoublePutByVal):
(JSC::DFG::SpeculativeJIT::compileGetCharCodeAt):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::checkGeneratedTypeForToInt32):
(JSC::DFG::SpeculativeJIT::compileValueToInt32):
(JSC::DFG::SpeculativeJIT::compileUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::compileDoubleAsInt32):
(JSC::DFG::SpeculativeJIT::compileInt32ToDouble):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileInstanceOfForObject):
(JSC::DFG::SpeculativeJIT::compileInstanceOf):
(JSC::DFG::SpeculativeJIT::compileSoftModulo):
(JSC::DFG::SpeculativeJIT::compileAdd):
(JSC::DFG::SpeculativeJIT::compileArithSub):
(JSC::DFG::SpeculativeJIT::compileArithNegate):
(JSC::DFG::SpeculativeJIT::compileArithMul):
(JSC::DFG::SpeculativeJIT::compileIntegerArithDivForX86):
(JSC::DFG::SpeculativeJIT::compileArithMod):
(JSC::DFG::SpeculativeJIT::compare):
(JSC::DFG::SpeculativeJIT::compileStrictEqForConstant):
(JSC::DFG::SpeculativeJIT::compileStrictEq):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetByValOnArguments):
(JSC::DFG::SpeculativeJIT::compileGetArgumentsLength):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):
(JSC::DFG::SpeculativeJIT::compileNewFunctionNoCheck):
(JSC::DFG::SpeculativeJIT::compileNewFunctionExpression):
(JSC::DFG::SpeculativeJIT::compileRegExpExec):
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::canReuse):
(JSC::DFG::SpeculativeJIT::isFilled):
(JSC::DFG::SpeculativeJIT::isFilledDouble):
(JSC::DFG::SpeculativeJIT::use):
(JSC::DFG::SpeculativeJIT::isConstant):
(JSC::DFG::SpeculativeJIT::isJSConstant):
(JSC::DFG::SpeculativeJIT::isInt32Constant):
(JSC::DFG::SpeculativeJIT::isDoubleConstant):
(JSC::DFG::SpeculativeJIT::isNumberConstant):
(JSC::DFG::SpeculativeJIT::isBooleanConstant):
(JSC::DFG::SpeculativeJIT::isFunctionConstant):
(JSC::DFG::SpeculativeJIT::valueOfInt32Constant):
(JSC::DFG::SpeculativeJIT::valueOfNumberConstant):
(JSC::DFG::SpeculativeJIT::valueOfNumberConstantAsInt32):
(JSC::DFG::SpeculativeJIT::addressOfDoubleConstant):
(JSC::DFG::SpeculativeJIT::valueOfJSConstant):
(JSC::DFG::SpeculativeJIT::valueOfBooleanConstant):
(JSC::DFG::SpeculativeJIT::valueOfFunctionConstant):
(JSC::DFG::SpeculativeJIT::isNullConstant):
(JSC::DFG::SpeculativeJIT::valueOfJSConstantAsImm64):
(JSC::DFG::SpeculativeJIT::detectPeepHoleBranch):
(JSC::DFG::SpeculativeJIT::integerResult):
(JSC::DFG::SpeculativeJIT::noResult):
(JSC::DFG::SpeculativeJIT::cellResult):
(JSC::DFG::SpeculativeJIT::booleanResult):
(JSC::DFG::SpeculativeJIT::jsValueResult):
(JSC::DFG::SpeculativeJIT::storageResult):
(JSC::DFG::SpeculativeJIT::doubleResult):
(JSC::DFG::SpeculativeJIT::initConstantInfo):
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheck):
(JSC::DFG::SpeculativeJIT::isInteger):
(JSC::DFG::SpeculativeJIT::temporaryRegisterForPutByVal):
(JSC::DFG::SpeculativeJIT::emitAllocateBasicStorage):
(JSC::DFG::SpeculativeJIT::setNodeForOperand):
(JSC::DFG::IntegerOperand::IntegerOperand):
(JSC::DFG::IntegerOperand::node):
(JSC::DFG::IntegerOperand::gpr):
(JSC::DFG::IntegerOperand::use):
(IntegerOperand):
(JSC::DFG::DoubleOperand::DoubleOperand):
(JSC::DFG::DoubleOperand::node):
(JSC::DFG::DoubleOperand::fpr):
(JSC::DFG::DoubleOperand::use):
(DoubleOperand):
(JSC::DFG::JSValueOperand::JSValueOperand):
(JSC::DFG::JSValueOperand::node):
(JSC::DFG::JSValueOperand::gpr):
(JSC::DFG::JSValueOperand::fill):
(JSC::DFG::JSValueOperand::use):
(JSValueOperand):
(JSC::DFG::StorageOperand::StorageOperand):
(JSC::DFG::StorageOperand::node):
(JSC::DFG::StorageOperand::gpr):
(JSC::DFG::StorageOperand::use):
(StorageOperand):
(JSC::DFG::SpeculateIntegerOperand::SpeculateIntegerOperand):
(JSC::DFG::SpeculateIntegerOperand::node):
(JSC::DFG::SpeculateIntegerOperand::gpr):
(JSC::DFG::SpeculateIntegerOperand::use):
(SpeculateIntegerOperand):
(JSC::DFG::SpeculateStrictInt32Operand::SpeculateStrictInt32Operand):
(JSC::DFG::SpeculateStrictInt32Operand::node):
(JSC::DFG::SpeculateStrictInt32Operand::gpr):
(JSC::DFG::SpeculateStrictInt32Operand::use):
(SpeculateStrictInt32Operand):
(JSC::DFG::SpeculateDoubleOperand::SpeculateDoubleOperand):
(JSC::DFG::SpeculateDoubleOperand::node):
(JSC::DFG::SpeculateDoubleOperand::fpr):
(JSC::DFG::SpeculateDoubleOperand::use):
(SpeculateDoubleOperand):
(JSC::DFG::SpeculateCellOperand::SpeculateCellOperand):
(JSC::DFG::SpeculateCellOperand::node):
(JSC::DFG::SpeculateCellOperand::gpr):
(JSC::DFG::SpeculateCellOperand::use):
(SpeculateCellOperand):
(JSC::DFG::SpeculateBooleanOperand::SpeculateBooleanOperand):
(JSC::DFG::SpeculateBooleanOperand::node):
(JSC::DFG::SpeculateBooleanOperand::gpr):
(JSC::DFG::SpeculateBooleanOperand::use):
(SpeculateBooleanOperand):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillInteger):
(JSC::DFG::SpeculativeJIT::fillDouble):
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::nonSpeculativeValueToNumber):
(JSC::DFG::SpeculativeJIT::nonSpeculativeValueToInt32):
(JSC::DFG::SpeculativeJIT::nonSpeculativeUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntStrict):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compileIntegerCompare):
(JSC::DFG::SpeculativeJIT::compileDoubleCompare):
(JSC::DFG::SpeculativeJIT::compileValueAdd):
(JSC::DFG::SpeculativeJIT::compileNonStringCellOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitNonStringCellOrOtherBranch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compileContiguousPutByVal):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillInteger):
(JSC::DFG::SpeculativeJIT::fillDouble):
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::nonSpeculativeValueToNumber):
(JSC::DFG::SpeculativeJIT::nonSpeculativeValueToInt32):
(JSC::DFG::SpeculativeJIT::nonSpeculativeUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntStrict):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compileIntegerCompare):
(JSC::DFG::SpeculativeJIT::compileDoubleCompare):
(JSC::DFG::SpeculativeJIT::compileValueAdd):
(JSC::DFG::SpeculativeJIT::compileNonStringCellOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitNonStringCellOrOtherBranch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGStructureAbstractValue.h:

(StructureAbstractValue):

  • dfg/DFGStructureCheckHoistingPhase.cpp:

(JSC::DFG::StructureCheckHoistingPhase::run):

  • dfg/DFGValidate.cpp:

(DFG):
(Validate):
(JSC::DFG::Validate::validate):
(JSC::DFG::Validate::reportValidationContext):

  • dfg/DFGValidate.h:
  • dfg/DFGValueSource.cpp:

(JSC::DFG::ValueSource::dump):

  • dfg/DFGValueSource.h:

(JSC::DFG::ValueSource::ValueSource):

  • dfg/DFGVirtualRegisterAllocationPhase.cpp:

(JSC::DFG::VirtualRegisterAllocationPhase::run):

  • runtime/FunctionExecutableDump.cpp: Added.

(JSC):
(JSC::FunctionExecutableDump::dump):

  • runtime/FunctionExecutableDump.h: Added.

(JSC):
(FunctionExecutableDump):
(JSC::FunctionExecutableDump::FunctionExecutableDump):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSC):
(DFG):
(JSGlobalData):

  • runtime/Options.h:

(JSC):

Jan 28, 2013:

11:57 PM Changeset in webkit [141068] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt] Build fix
https://bugs.webkit.org/show_bug.cgi?id=108142

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-01-28
Reviewed by Gyuyoung Kim.

Build fix. Though StorageManager was added to WK2 in r141024,
it is not added to Target.pri for qt port.

  • Target.pri:
11:48 PM Changeset in webkit [141067] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Texmap] Refactor code related to debug border and repaint count.
https://bugs.webkit.org/show_bug.cgi?id=105787

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-28
Reviewed by Noam Rosenthal.

It is a follow-up patch not to change layout test results.

The previous patch sets GraphicsLayer::m_usingTiledLayer to true when using a
backing store. When the variable is true, dumpLayer() adds (usingTiledLayer 1),
but most of ports don't set m_usingTiledLayer to true. So we don't use
m_usingTiledLayer to match the test results of other ports.

After this patch, Texture Mapper draws debug visuals for a tiled backing
with different color from safari.

No new tests. Debug feature, not covered in tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::updateDebugBorderAndRepaintCountIfNeeded):

11:47 PM Changeset in webkit [141066] by esprehn@chromium.org
  • 23 edits in trunk/Source/WebCore

Handle createShadowSubtree inside of ensureUserAgentShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=108116

Reviewed by Dimitri Glazkov.

Instead of making everyone create the UserAgentShadowRoot manually all
over, centralize it in ensureUserAgentShadowRoot() and add a notification
Element::didAddUserAgentShadowRoot that lets elements fill in the subtree.
This lets us get rid of lots of code duplication.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::ensureUserAgentShadowRoot):

  • dom/Element.h:

(WebCore::Element::didAddUserAgentShadowRoot):
(Element):

  • html/HTMLDetailsElement.cpp:

(WebCore::DetailsSummaryElement::create):
(WebCore::HTMLDetailsElement::create):
(WebCore::HTMLDetailsElement::didAddUserAgentShadowRoot):

  • html/HTMLDetailsElement.h:

(HTMLDetailsElement):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::create):
(WebCore::HTMLInputElement::didAddUserAgentShadowRoot):

  • html/HTMLInputElement.h:

(HTMLInputElement):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::willAddAuthorShadowRoot):
(WebCore::HTMLMediaElement::createMediaControls):

  • html/HTMLMediaElement.h:
  • html/HTMLMeterElement.cpp:

(WebCore::HTMLMeterElement::create):
(WebCore::HTMLMeterElement::didAddUserAgentShadowRoot):

  • html/HTMLMeterElement.h:

(HTMLMeterElement):

  • html/HTMLProgressElement.cpp:

(WebCore::HTMLProgressElement::create):
(WebCore::HTMLProgressElement::didAddUserAgentShadowRoot):

  • html/HTMLProgressElement.h:
  • html/HTMLSummaryElement.cpp:

(WebCore::HTMLSummaryElement::create):
(WebCore::HTMLSummaryElement::didAddUserAgentShadowRoot):

  • html/HTMLSummaryElement.h:

(HTMLSummaryElement):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::create):
(WebCore::HTMLTextAreaElement::didAddUserAgentShadowRoot):

  • html/HTMLTextAreaElement.h:
  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlPanelMuteButtonElement::create):
(WebCore::MediaControlVolumeSliderMuteButtonElement::create):
(WebCore::MediaControlPlayButtonElement::create):
(WebCore::MediaControlOverlayPlayButtonElement::create):
(WebCore::MediaControlSeekForwardButtonElement::create):
(WebCore::MediaControlSeekBackButtonElement::create):
(WebCore::MediaControlRewindButtonElement::create):
(WebCore::MediaControlReturnToRealtimeButtonElement::create):
(WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
(WebCore::MediaControlTimelineElement::create):
(WebCore::MediaControlPanelVolumeSliderElement::create):
(WebCore::MediaControlFullscreenVolumeSliderElement::create):
(WebCore::MediaControlFullscreenButtonElement::create):
(WebCore::MediaControlFullscreenVolumeMinButtonElement::create):
(WebCore::MediaControlFullscreenVolumeMaxButtonElement::create):

  • html/shadow/MediaControlsBlackBerry.cpp:

(WebCore::MediaControlFullscreenPlayButtonElement::create):
(WebCore::MediaControlFullscreenFullscreenButtonElement::create):
(WebCore::MediaControlFullscreenTimelineElement::create):
(WebCore::MediaControlAudioMuteButtonElement::create):

  • svg/SVGTRefElement.cpp:

(WebCore::SVGTRefElement::create):

  • svg/SVGTRefElement.h:

(SVGTRefElement):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::create):

  • svg/SVGUseElement.h:

(SVGUseElement):

11:44 PM Changeset in webkit [141065] by commit-queue@webkit.org
  • 13 edits in trunk/Source/WebKit2

Coordinated Graphics: Refactor code related to debug border and repaint count.
https://bugs.webkit.org/show_bug.cgi?id=107910

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-28
Reviewed by Noam Rosenthal.

There are two big changes:

  1. CoordinatedGraphicsLayer sends debugging visuals to UI Process.
  2. When updating a backing store, increment a repaint count.

In addition, we don't use QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
environment. EFL, GTK and QT will use WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
after http://webkit.org/b/107198.

  • Shared/CoordinatedGraphics/CoordinatedLayerInfo.h:

(WebKit::CoordinatedLayerInfo::CoordinatedLayerInfo):
(CoordinatedLayerInfo):

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:

(WebKit::CoordinatedBackingStore::removeAllTiles):
(WebKit::CoordinatedBackingStore::updateTile):
(WebKit::CoordinatedBackingStore::texture):
(WebKit::CoordinatedBackingStore::paintTilesToTextureMapper):
(WebKit::CoordinatedBackingStore::adjustedTransformForRect):
(WebKit::CoordinatedBackingStore::paintToTextureMapper):
(WebKit):
(WebKit::CoordinatedBackingStore::drawBorder):

Override TextureMapperPlatformLayer::drawBorder() to draw the border
for each tile.

(WebKit::CoordinatedBackingStore::drawRepaintCounter):
(WebKit::CoordinatedBackingStore::commitTileOperations):

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:

(WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile):
(CoordinatedBackingStoreTile):
(CoordinatedBackingStore):
(WebKit::CoordinatedBackingStore::rect):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::setLayerRepaintCount):
(WebKit):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(CoordinatedLayerTreeHostProxy):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::setLayerRepaintCount):
(WebKit):
(WebKit::LayerTreeRenderer::setLayerState):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(LayerTreeRenderer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setShowDebugBorder):
(WebCore):
(WebCore::CoordinatedGraphicsLayer::setShowRepaintCounter):
(WebCore::CoordinatedGraphicsLayer::syncLayerState):
(WebCore::CoordinatedGraphicsLayer::setDebugBorder):
(WebCore::CoordinatedGraphicsLayer::tiledBackingStorePaintEnd):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::setLayerRepaintCount):
(WebKit):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
11:40 PM Changeset in webkit [141064] by wangxianzhu@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

Re-enable WebFrameTest.DivScrollIntoEditableTest
https://bugs.webkit.org/show_bug.cgi?id=98558

Reviewed by Adam Barth.

  • tests/WebFrameTest.cpp: Fixed several issues (onload script, the maximum scale factor, etc.) of WebFrameTest.DivScrollIntoEditableTest and enable it.
  • tests/data/get_scale_for_zoom_into_editable_test.html: Moved the logic of onload script (which seems not to work) into WebFrameTest.cpp.
11:31 PM Changeset in webkit [141063] by Vineet
  • 15 edits
    2 deletes in trunk

HTMLOutputElement::htmlFor should be readonly
https://bugs.webkit.org/show_bug.cgi?id=101898

Reviewed by Kentaro Hara.

Source/WebCore:

The spec says htmlFor should be readonly, but WebKit implements it as no-readonly.
Spec: http://dev.w3.org/html5/spec-preview/the-output-element.html

No new tests. Modified existing test fast/dom/HTMLOutputElement/dom-settable-token-list.html
to work as expected.

  • GNUmakefile.list.am: Removed JSHTMLOutputElementCustom.cpp
  • Target.pri: Ditto
  • UseJSC.cmake: Ditto
  • UseV8.cmake: Removed V8HTMLOutputElementCustom.cpp
  • WebCore.gypi: Removed V8HTMLOutputElementCustom.cpp
  • WebCore.vcproj/WebCore.vcproj: Removed JSHTMLOutputElementCustom.cpp
  • WebCore.vcxproj/WebCore.vcxproj: Ditto
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
  • WebCore.xcodeproj/project.pbxproj: Ditto
  • bindings/js/JSBindingsAllInOne.cpp: Ditto
  • bindings/js/JSHTMLOutputElementCustom.cpp: Removed.
  • bindings/v8/custom/V8HTMLOutputElementCustom.cpp: Removed.
  • html/HTMLOutputElement.idl: Made htmlFor attribute readonly.

LayoutTests:

The spec says htmlFor should be readonly, but WebKit implements it as no-readonly.
Spec: http://dev.w3.org/html5/spec-preview/the-output-element.html
Modified tests according to new behavior.

  • fast/dom/HTMLOutputElement/dom-settable-token-list-expected.txt:
  • fast/dom/HTMLOutputElement/script-tests/dom-settable-token-list.js: Test for attribute htmlFor is readonly.
11:29 PM Changeset in webkit [141062] by commit-queue@webkit.org
  • 6 edits
    1 add in trunk/Source

Fix disambiguation popup for new-style page scale
https://bugs.webkit.org/show_bug.cgi?id=107391

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

This patch corrects various coordinate conversion for disambiguation
popup for the new-style page scale mode.

Source/WebCore:

New unit test: WebFrameTest.DisambiguationPopupPageScale

  • page/TouchDisambiguation.cpp:

(WebCore::findGoodTouchTargets):

  • page/TouchDisambiguation.h:

(WebCore):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):
(WebKit::WebViewImpl::handleInputEvent):

  • tests/WebFrameTest.cpp:
  • tests/data/disambiguation_popup_page_scale.html: Added.
11:14 PM Changeset in webkit [141061] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove support from ArgumentEncoder for deprecated encode functions
https://bugs.webkit.org/show_bug.cgi?id=108155

Reviewed by Dan Bernstein.

  • Platform/CoreIPC/ArgumentEncoder.h:

(CoreIPC::ArgumentEncoder::encode):

11:05 PM Changeset in webkit [141060] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Reverting change to chromium/TestExpectation in r141056.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
10:59 PM Changeset in webkit [141059] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Collapse testing for a list of PLATFORM() into OS() and USE() tests
https://bugs.webkit.org/show_bug.cgi?id=108018

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-01-28
Reviewed by Eric Seidel.

No functional change as "OS(DARWIN) && USE(CF)" equals to the
following platforms: MAC, WX, QT and CHROMIUM. CHROMIUM
is not using JavaScriptCore.

  • runtime/DatePrototype.cpp:

(JSC):

10:55 PM Changeset in webkit [141058] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Unreviewed, rolling out r141049.
http://trac.webkit.org/changeset/141049
https://bugs.webkit.org/show_bug.cgi?id=108151

Caused some indexed tests to crash. (Requested by keishi on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-28

Source/WebCore:

  • Modules/indexeddb/IDBCallbacks.h:

(WebCore::IDBCallbacks::onUpgradeNeeded):
(WebCore::IDBCallbacks::onSuccess):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::openConnection):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::onUpgradeNeeded):
(WebCore::IDBOpenDBRequest::onSuccess):

  • Modules/indexeddb/IDBOpenDBRequest.h:

(IDBOpenDBRequest):

Source/WebKit/chromium:

  • public/WebIDBCallbacks.h:

(WebKit):

  • src/IDBCallbacksProxy.cpp:

(WebKit::IDBCallbacksProxy::onUpgradeNeeded):

  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

  • src/WebIDBCallbacksImpl.cpp:

(WebKit::WebIDBCallbacksImpl::onSuccess):
(WebKit::WebIDBCallbacksImpl::onUpgradeNeeded):

  • src/WebIDBCallbacksImpl.h:

(WebIDBCallbacksImpl):

  • tests/IDBAbortOnCorruptTest.cpp:

(WebCore::MockIDBCallbacks::onSuccess):

  • tests/IDBDatabaseBackendTest.cpp:
10:52 PM Changeset in webkit [141057] by abarth@webkit.org
  • 4 edits in trunk

Layout Test http/tests/workers/terminate-during-sync-operation.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=79013

Reviewed by David Levin.

Source/WebCore:

We need to use an isolated copy because we're going to use it on a
different thread.

  • Modules/webdatabase/AbstractDatabase.cpp:

(WebCore::AbstractDatabase::AbstractDatabase):

LayoutTests:

This test shouldn't be flaky anymore.

  • platform/chromium/TestExpectations:
10:50 PM Changeset in webkit [141056] by keishi@webkit.org
  • 5 edits
    6 copies
    11 adds in trunk/LayoutTests

[Chromium] Rebaselining after 141039.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
  • platform/chromium/compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt: Added.
  • platform/chromium/compositing/layer-creation/fixed-position-in-view-dynamic-expected.txt: Added.
  • platform/chromium/compositing/layer-creation/fixed-position-out-of-view-expected.txt: Added.
  • platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
  • platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
  • platform/chromium/compositing/overflow/content-gains-scrollbars-expected.txt:
  • platform/chromium/compositing/overflow/overflow-scrollbar-layers-expected.txt:
  • platform/chromium/compositing/overflow/resize-painting-expected.txt:
  • platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/content-gains-scrollbars-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/content-gains-scrollbars-expected.txt.
  • platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-scrollbar-layers-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/overflow-scrollbar-layers-expected.txt.
  • platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/resize-painting-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/resize-painting-expected.txt.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-in-view-dynamic-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/overflow/content-gains-scrollbars-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/content-gains-scrollbars-expected.txt.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/overflow/overflow-scrollbar-layers-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/overflow-scrollbar-layers-expected.txt.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/overflow/resize-painting-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/resize-painting-expected.txt.
10:35 PM Changeset in webkit [141055] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Expose isRadioButton and isCheckbox API in chromium-webkit glue layer.
https://bugs.webkit.org/show_bug.cgi?id=108031

Patch by Raman Kumar <ramankk@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

In chromium, to know if an InputElement is radiobutton or a checkbox,
we are checking for formControlType (a string comparision), which is
very slow. Exposing these API to chromium will make them faster.

  • public/WebInputElement.h:

(WebInputElement):

  • src/WebInputElement.cpp:

(WebKit::WebInputElement::isRadioButton):
(WebKit):
(WebKit::WebInputElement::isCheckbox):

10:22 PM Changeset in webkit [141054] by shinyak@chromium.org
  • 3 edits
    2 adds in trunk

[Shadow] Gesture event is not fired in ShadowDOM
https://bugs.webkit.org/show_bug.cgi?id=107797

Reviewed by Dimitri Glazkov.

Source/WebCore:

Gesture event (e.g. touchstart) is not fired in ShadowDOM.

We have to run event retargetting algorithm to retarget touchTarget, however it is not implemented yet (Bug 107800).
Until it's implemented, we use the shadow ancestor node of touchTarget in Document treescope as touchTarget
for backward compatibility. If a touch event is fired in nested ShadowDOM, touchTarget will be always element in
document tree, so an event listener in ShadowDOM will get a wrong touchTarget. However we prioritized
the correctness of document tree.

Test: fast/dom/shadow/touch-event.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent): Allows us to take elements in ShadowDOM.

LayoutTests:

  • fast/dom/shadow/touch-event-expected.txt: Added.
  • fast/dom/shadow/touch-event.html: Added.
10:19 PM Changeset in webkit [141053] by aelias@chromium.org
  • 15 edits in trunk/Source

Make page scale shrink FrameView in applyPageScaleInCompositor mode
https://bugs.webkit.org/show_bug.cgi?id=107424

Reviewed by Levi Weintraub.

If applyPageScaleFactorInCompositor is enabled (Chromium-only setting),
instead of the entire document expanding as the user pinch zooms, the
viewport shrinks instead. This patch applies the pageScaleFactor to
visibleContentRect to get this behavior, and simplifies Chromium's
resize logic to stop hiding the true viewport size from WebCore.

I verified that the scaling makes sense for all the callers of
visibleContentRect. The exceptions are clip-layer size,
layout size in non-fixed-layout mode, and text autosizing, which need
the original unscaled size. Therefore I added a new method
unscaledVisibleContentSize() to ScrollView/FrameView.

This patch also modifies Page::setPageScaleFactor to perform no
invalidates or layout when applyPageScaleFactorInCompositor is true,
and also writes pageScaleFactor into HistoryItems instead of using
frameScaleFactor.

Since all behavior changes are tied to applyPageScaleFactorInCompositor,
this patch should be a no-op for non-Chromium ports.

Source/Platform:

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):
(WebKit::WebLayerTreeView::adjustEventPointForPinchZoom):

Source/WebCore:

New unit tests in WebFrameTest.cpp.

  • loader/HistoryController.cpp:

(WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
Use pageScaleFactor here because frameScaleFactor always returns 1
with our setting.

  • page/FrameView.cpp:

(WebCore::FrameView::visibleContentScaleFactor):
(WebCore):

  • page/FrameView.h:

(FrameView):

  • page/Page.cpp:

(WebCore::Page::setPageScaleFactor): Make setPageScaleFactor stop
invalidating/layouting as this is handled by our compositor.

  • platform/ScrollView.cpp:

(WebCore::ScrollView::unscaledVisibleContentSize): This new method
just returns the original visible rect without pageScaleFactor being
applied.
(WebCore):
(WebCore::ScrollView::visibleContentRect): This now is divided by
pageScaleFactor if our setting is active.
(WebCore::ScrollView::layoutSize):

  • platform/ScrollView.h:

(WebCore::ScrollView::visibleContentScaleFactor): Returns
pageScaleFactor if the visible rect is scaled, 1 normally.
(ScrollView):
(WebCore::ScrollView::layoutWidth):
(WebCore::ScrollView::layoutHeight):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::frameViewDidChangeSize):
(WebCore::RenderLayerCompositor::updateRootLayerPosition): Clip layer
should use unscaled size, because it's above the root scroll layer
on the layer tree (i.e. page scale isn't applied on it).

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processSubtree): Text autosizer should use
unscaled size, because it cares about physical screen size.

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::scaledSize): Returns the post page-scale size
similar to what visibleContentRect() now returns, except that it may
be at a different scale than the current one.
(WebKit::WebViewImpl::size): Back to returning density-independent
size without any tricks, not the "layoutSize()" fake viewport.
(WebKit::WebViewImpl::resize):
(WebKit::WebViewImpl::handleInputEvent): No need to apply
implTransform anymore as WebKit knows the true scroll offset; just
divide event coords by pageScaleFactor.
(WebKit::WebViewImpl::clampOffsetAtScale): Make this method support
applyPageScaleFactorInCompositor. This is used to pre-clamp scroll
offsets at a given viewport size.
(WebKit::WebViewImpl::setPageScaleFactorPreservingScrollOffset): Make
this method support applyPageScaleFactorInCompositor (don't scale
scroll offsets as they are now scale-independent).
(WebKit::WebViewImpl::setPageScaleFactor): Make this method always use
clampOffsetAtScale instead of bypassing it, since it's now supported.
Also notify the compositor to update its state.
(WebKit::WebViewImpl::contentsSize): Convenience method, removed
difference between scaled and unscaled.
(WebKit::WebViewImpl::layoutSize): This method returned the "fake"
size we used to give FrameView. Now no longer used for much.
(WebKit::WebViewImpl::computePageScaleFactorLimits):
(WebKit::WebViewImpl::didChangeContentsSize): Remove unnecessary
resize() now that we can give the true size to FrameView.
(WebKit::WebViewImpl::updateLayerTreeViewport): Use layoutSize()
directly now that FrameView no longer uses it.

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp:
10:05 PM Changeset in webkit [141052] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Disable default use of the Plug-in XPCService until we can
figure out how to deal with the 32-bit one.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::shouldUseXPC):
(WebKit::PluginProcessProxy::platformInitializeLaunchOptions):

9:58 PM Changeset in webkit [141051] by weinig@apple.com
  • 27 edits
    2 adds in trunk/Source/WebKit2

Plug-ins should initialize their sandbox at creation time
https://bugs.webkit.org/show_bug.cgi?id=108098

Reviewed by Anders Carlsson.

Add the ability to add string key/value pairs to process creation parameters
to allow the plugin process to get passed the plugin path which in turn allows
the plugin to initialize its sandbox at the correct time.

  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/NetworkServiceMain.Development.mm:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:

(NetworkServiceInitializer):

  • PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:

(WebKit::PluginProcessMainDelegate::getExtraData):
(PluginProcessMainDelegate):

  • PluginProcess/EntryPoint/mac/XPCService/PluginService.32/PluginService.32.Main.mm:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.64/PluginService.64.Main.mm:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/PluginService.Development.Main.mm:
  • PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:

(WebKit):
(PluginServiceInitializerDelegate):
(WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
(WebKit::PluginServiceInitializerDelegate::getExtraData):
(PluginServiceInitializer):

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::initializeProcess):
(WebKit::PluginProcess::initializePluginProcess):
(WebKit::PluginProcess::initializeProcessName):
(WebKit::PluginProcess::initializeSandbox):

  • PluginProcess/PluginProcess.h:
  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::PluginProcess::platformInitializePluginProcess):
(WebKit::PluginProcess::platformInitializeProcess):
(WebKit::PluginProcess::initializeProcessName):
(WebKit::PluginProcess::initializeSandbox):

  • Shared/ChildProcess.h:

(ChildProcessInitializationParameters):

  • Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.h:

(ChildProcessMainDelegate):
(WebKit::ChildProcessMain):

  • Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm:

(WebKit::ChildProcessMainDelegate::getExtraData):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h:

(WebKit::XPCServiceEventHandler):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.h:

(WebKit::XPCServiceEventHandler):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h: Added.

(XPCServiceInitializerDelegate):
(WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
(WebKit::XPCServiceInitializer):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm: Added.

(WebKit::XPCServiceInitializerDelegate::~XPCServiceInitializerDelegate):
(WebKit::XPCServiceInitializerDelegate::getConnectionIdentifier):
(WebKit::XPCServiceInitializerDelegate::getClientIdentifier):
(WebKit::XPCServiceInitializerDelegate::getClientProcessName):
(WebKit::XPCServiceInitializerDelegate::getExtraData):

  • Shared/Plugins/PluginProcessCreationParameters.cpp:

(WebKit::PluginProcessCreationParameters::encode):
(WebKit::PluginProcessCreationParameters::decode):

  • Shared/Plugins/PluginProcessCreationParameters.h:

(PluginProcessCreationParameters):

  • UIProcess/Launcher/ProcessLauncher.h:

(LaunchOptions):

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::connectToService):
(WebKit::connectToReExecService):
(WebKit::createService):
(WebKit::createProcess):
(WebKit::ProcessLauncher::launchProcess):

  • UIProcess/Plugins/PluginProcessProxy.cpp:

(WebKit::PluginProcessProxy::didFinishLaunching):

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
(WebKit::PluginProcessProxy::platformInitializePluginProcess):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm:
  • WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:

(WebContentServiceInitializer):

9:48 PM Changeset in webkit [141050] by ggaren@apple.com
  • 67 edits
    4 adds in trunk/Source

Static size inference for JavaScript objects
https://bugs.webkit.org/show_bug.cgi?id=108093

Reviewed by Phil Pizlo.

../JavaScriptCore:

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode): op_new_object and op_create_this now
have an extra inferredInlineCapacity argument. This is the statically
inferred inline capacity, just from analyzing source text. op_new_object
also gets a pointer to an allocation profile. (For op_create_this, the
profile is in the construtor function.)

(JSC::CodeBlock::CodeBlock): Link op_new_object.

(JSC::CodeBlock::stronglyVisitStrongReferences): Mark our profiles.

  • bytecode/CodeBlock.h:

(CodeBlock): Removed some dead code. Added object allocation profiles.

  • bytecode/Instruction.h:

(JSC): New union type, since an instruction operand may point to an
object allocation profile now.

  • bytecode/ObjectAllocationProfile.h: Added.

(JSC):
(ObjectAllocationProfile):
(JSC::ObjectAllocationProfile::offsetOfAllocator):
(JSC::ObjectAllocationProfile::offsetOfStructure):
(JSC::ObjectAllocationProfile::ObjectAllocationProfile):
(JSC::ObjectAllocationProfile::isNull):
(JSC::ObjectAllocationProfile::initialize):
(JSC::ObjectAllocationProfile::structure):
(JSC::ObjectAllocationProfile::inlineCapacity):
(JSC::ObjectAllocationProfile::clear):
(JSC::ObjectAllocationProfile::visitAggregate):
(JSC::ObjectAllocationProfile::possibleDefaultPropertyCount): New class
for tracking a prediction about object allocation: structure, inline
capacity, allocator to use.

  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName): Updated instruction sizes.

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):

  • bytecode/UnlinkedCodeBlock.h:

(JSC):
(JSC::UnlinkedCodeBlock::addObjectAllocationProfile):
(JSC::UnlinkedCodeBlock::numberOfObjectAllocationProfiles):
(UnlinkedCodeBlock): Unlinked support for allocation profiles.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::generate): Kill all remaining analyses at the
end of codegen, since this is our last opportunity.

(JSC::BytecodeGenerator::BytecodeGenerator): Added a static property
analyzer to bytecode generation. It tracks initializing assignments and
makes a guess about how many will happen.

(JSC::BytecodeGenerator::newObjectAllocationProfile):
(JSC):
(JSC::BytecodeGenerator::emitProfiledOpcode):
(JSC::BytecodeGenerator::emitMove):
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitResolveBase):
(JSC::BytecodeGenerator::emitResolveBaseForPut):
(JSC::BytecodeGenerator::emitResolveWithBaseForPut):
(JSC::BytecodeGenerator::emitResolveWithThis):
(JSC::BytecodeGenerator::emitGetById):
(JSC::BytecodeGenerator::emitPutById):
(JSC::BytecodeGenerator::emitDirectPutById):
(JSC::BytecodeGenerator::emitPutGetterSetter):
(JSC::BytecodeGenerator::emitGetArgumentByVal):
(JSC::BytecodeGenerator::emitGetByVal): Added hooks to the static property
analyzer, so it can observe allocations and stores.

(JSC::BytecodeGenerator::emitCreateThis): Factored this into a helper
function because it was a significant amount of logic, and I wanted to
add to it.

(JSC::BytecodeGenerator::emitNewObject):
(JSC::BytecodeGenerator::emitExpectedFunctionSnippet):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitCallVarargs):
(JSC::BytecodeGenerator::emitConstruct): Added a hook to profiled opcodes
to track their stores, in case a store kills a profiled allocation. Since
profiled opcodes are basically the only interesting stores we do, this
is a convenient place to notice any store that might kill an allocation.

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator): As above.

  • bytecompiler/StaticPropertyAnalysis.h: Added.

(JSC):
(StaticPropertyAnalysis):
(JSC::StaticPropertyAnalysis::create):
(JSC::StaticPropertyAnalysis::addPropertyIndex):
(JSC::StaticPropertyAnalysis::record):
(JSC::StaticPropertyAnalysis::propertyIndexCount):
(JSC::StaticPropertyAnalysis::StaticPropertyAnalysis): Simple helper
class for tracking allocations and stores.

  • bytecompiler/StaticPropertyAnalyzer.h: Added.

(StaticPropertyAnalyzer):
(JSC::StaticPropertyAnalyzer::StaticPropertyAnalyzer):
(JSC::StaticPropertyAnalyzer::createThis):
(JSC::StaticPropertyAnalyzer::newObject):
(JSC::StaticPropertyAnalyzer::putById):
(JSC::StaticPropertyAnalyzer::mov):
(JSC::StaticPropertyAnalyzer::kill): Helper class for observing allocations
and stores and making an inline capacity guess. The heuristics here are
intentionally minimal because we don't want this one class to try to
re-create something like a DFG or a runtime analysis. If we discover that
we need those kinds of analyses, we should just replace this class with
something else.

This class tracks multiple registers that alias the same object -- that
happens a lot, when moving locals into temporary registers -- but it
doesn't track control flow or multiple objects that alias the same register.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute): Updated for rename.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock): Updated for inline capacity and
allocation profile.

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasInlineCapacity):
(Node):
(JSC::DFG::Node::inlineCapacity):
(JSC::DFG::Node::hasFunction): Give the graph a good way to represent
inline capacity for an allocation.

  • dfg/DFGNodeType.h:

(DFG): Updated for rename.

  • dfg/DFGOperations.cpp: Updated for interface change.
  • dfg/DFGOperations.h: We pass the inline capacity to the slow case as

an argument. This is the simplest way, since it's stored as a bytecode operand.

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate): Updated for rename.

  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryCacheGetByID): Fixed a horrible off-by-one-half bug that only
appears when doing an inline cached load for property number 64 on a 32-bit
system. In JSVALUE32_64 land, "offsetRelativeToPatchedStorage" is the
offset of the 64bit JSValue -- but we'll actually issue two loads, one for
the payload at that offset, and one for the tag at that offset + 4. We need
to ensure that both loads have a compact representation, or we'll corrupt
the instruction stream.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::emitAllocateJSArray):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):
(JSC::DFG::SpeculativeJIT::emitAllocateBasicStorage):
(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::emitAllocateJSObject):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile): Lots of refactoring to support
passing an allocator to our allocation function, and/or passing a Structure
as a register instead of an immediate.

  • heap/MarkedAllocator.h:

(DFG):
(MarkedAllocator):
(JSC::MarkedAllocator::offsetOfFreeListHead): Added an accessor to simplify
JIT code generation of allocation from an arbitrary allocator.

  • jit/JIT.h:

(JSC):

  • jit/JITInlines.h:

(JSC):
(JSC::JIT::emitAllocateJSObject):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_new_object):
(JSC::JIT::emitSlow_op_new_object):
(JSC::JIT::emit_op_create_this):
(JSC::JIT::emitSlow_op_create_this):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_new_object):
(JSC::JIT::emitSlow_op_new_object):
(JSC::JIT::emit_op_create_this):
(JSC::JIT::emitSlow_op_create_this): Same refactoring as done for the DFG.

  • jit/JITStubs.cpp:

(JSC::tryCacheGetByID): Fixed the same bug mentioned above.

(JSC::DEFINE_STUB_FUNCTION): Updated for interface changes.

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions): Updated for interface changes.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm: Same refactoring as for the JITs.
  • profiler/ProfilerBytecode.cpp:
  • profiler/ProfilerBytecodes.cpp:
  • profiler/ProfilerCompilation.cpp:
  • profiler/ProfilerCompiledBytecode.cpp:
  • profiler/ProfilerDatabase.cpp:
  • profiler/ProfilerOSRExit.cpp:
  • profiler/ProfilerOrigin.cpp:
  • profiler/ProfilerProfiledBytecodes.cpp: Include ObjectConstructor.h

because that's where createEmptyObject() lives now.

  • runtime/Executable.h:

(JSC::JSFunction::JSFunction): Updated for rename.

  • runtime/JSCellInlines.h:

(JSC::allocateCell): Updated to match the allocator selection code in
the JIT, so it's clearer that both are correct.

  • runtime/JSFunction.cpp:

(JSC::JSFunction::JSFunction):
(JSC::JSFunction::createAllocationProfile):
(JSC::JSFunction::visitChildren):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::put):
(JSC::JSFunction::defineOwnProperty):
(JSC::JSFunction::getConstructData):

  • runtime/JSFunction.h:

(JSC::JSFunction::offsetOfScopeChain):
(JSC::JSFunction::offsetOfExecutable):
(JSC::JSFunction::offsetOfAllocationProfile):
(JSC::JSFunction::allocationProfile):
(JSFunction):
(JSC::JSFunction::tryGetAllocationProfile):
(JSC::JSFunction::addAllocationProfileWatchpoint): Changed inheritorID
data member to be an ObjectAllocationProfile, which includes a pointer
to the desired allocator. This simplifies JIT code, since we don't have
to compute the allocator on the fly. I verified by code inspection that
JSFunction is still only 64 bytes.

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):
(JSC::JSGlobalObject::visitChildren):

  • runtime/JSGlobalObject.h:

(JSGlobalObject):
(JSC::JSGlobalObject::dateStructure): No direct pointer to the empty
object structure anymore, because now clients need to specify how much
inline capacity they want.

  • runtime/JSONObject.cpp:
  • runtime/JSObject.h:

(JSC):
(JSFinalObject):
(JSC::JSFinalObject::defaultInlineCapacity):
(JSC::JSFinalObject::maxInlineCapacity):
(JSC::JSFinalObject::createStructure): A little refactoring to try to
clarify where some of these constants derive from.

(JSC::maxOffsetRelativeToPatchedStorage): Used for bug fix, above.

  • runtime/JSProxy.cpp:

(JSC::JSProxy::setTarget): Ugly, but effective.

  • runtime/LiteralParser.cpp:
  • runtime/ObjectConstructor.cpp:

(JSC::constructObject):
(JSC::constructWithObjectConstructor):
(JSC::callObjectConstructor):
(JSC::objectConstructorCreate): Updated for interface changes.

  • runtime/ObjectConstructor.h:

(JSC::constructEmptyObject): Clarified your options for how to allocate
an empty object, to emphasize what things can actually vary.

  • runtime/PropertyOffset.h: These constants have moved because they're

really higher level concepts to do with the layout of objects and the
collector. PropertyOffset is just an abstract number line, independent
of those things.

  • runtime/PrototypeMap.cpp:

(JSC::PrototypeMap::emptyObjectStructureForPrototype):
(JSC::PrototypeMap::clearEmptyObjectStructureForPrototype):

  • runtime/PrototypeMap.h:

(PrototypeMap): The map key is now a pair of prototype and inline capacity,
since Structure encodes inline capacity.

  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTableForPinning):

  • runtime/Structure.h:

(Structure):
(JSC::Structure::totalStorageSize):
(JSC::Structure::transitionCount):
(JSC::Structure::create): Fixed a nasty refactoring bug that only shows
up after enabling variable-sized inline capacities: we were passing our
type info where our inline capacity was expected. The compiler didn't
notice because both have type int :(.

../WebCore:

  • ForwardingHeaders/runtime/ObjectConstructor.h: Added.
  • bindings/js/JSInjectedScriptHostCustom.cpp:
  • bindings/js/JSSQLResultSetRowListCustom.cpp: Include ObjectConstructor.h because

that's where createEmptyObject() is located now.

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneDeserializer::deserialize): Updated for interface change.

9:40 PM Changeset in webkit [141049] by alecflett@chromium.org
  • 13 edits in trunk/Source

IndexedDB: Pass metadata in to IDBOpenDBRequest.onUpgradeNeeded/onSuccess
https://bugs.webkit.org/show_bug.cgi?id=103920

Reviewed by Dimitri Glazkov.

Source/WebCore:

Update IDBCallbacks::onSuccess and IDBCallbacks::onUpgradeNeeded to
pass through a metadata parameter. While there, remove the unused
IDBTransactionBackendInterface parameter to onUpgradeNeeded.

As this is another step in the IDB refactor, I've simplified future cleanup
work by making the WebKit API code still use the old API. This
will make it possible to outright remove code on the chromium side rather
than another three-step checkin.

No new tests, as this is more refactoring.

  • Modules/indexeddb/IDBCallbacks.h:

(WebCore::IDBCallbacks::onUpgradeNeeded): new method signature.
(WebCore::IDBCallbacks::onSuccess): new method signature.

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::openConnection):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::onUpgradeNeeded): use passed-in metadata.
(WebCore::IDBOpenDBRequest::onSuccess): use passed-in metadata.

  • Modules/indexeddb/IDBOpenDBRequest.h:

(IDBOpenDBRequest):

Source/WebKit/chromium:

Support the new IDBCallbacks::onSuccess and IDBCallbacks::onUpgradeNeeded
while maintaining chromium compatibility by shimming in the old API
in the WebKit side. Future code will clean this up so that it is just a
pass-through as it was before.

  • public/WebIDBCallbacks.h:

(WebKit):
(WebKit::WebIDBCallbacks::onSuccess): new method signature.
(WebKit::WebIDBCallbacks::onUpgradeNeeded): new method signature.

  • src/IDBCallbacksProxy.cpp:

(WebKit::IDBCallbacksProxy::onSuccess): call on new method signature proxies through old API.
(WebKit):
(WebKit::IDBCallbacksProxy::onUpgradeNeeded): call on new method signature proxies through old API.

  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

  • src/WebIDBCallbacksImpl.cpp:

(WebKit::WebIDBCallbacksImpl::onSuccess): call on old WebKit proxy signature calls new API.
(WebKit):
(WebKit::WebIDBCallbacksImpl::onUpgradeNeeded): call on old WebKit proxy signature calls new API.

  • src/WebIDBCallbacksImpl.h:

(WebIDBCallbacksImpl):

  • tests/IDBAbortOnCorruptTest.cpp: new method signature.

(WebCore::MockIDBCallbacks::onSuccess):

  • tests/IDBDatabaseBackendTest.cpp: new method signature.
9:23 PM Changeset in webkit [141048] by Lucas Forschler
  • 2 edits in tags/Safari-537.28.2/Source/WebKit2

Merged r141027. <rdar://problem/13098777>

9:17 PM Changeset in webkit [141047] by Lucas Forschler
  • 4 edits in tags/Safari-537.28.2/Source

Versioning.

9:14 PM Changeset in webkit [141046] by Lucas Forschler
  • 1 copy in tags/Safari-537.28.2

New Tag.

9:11 PM Changeset in webkit [141045] by commit-queue@webkit.org
  • 6 edits in trunk

Add window occlusion criteria to determine page visibility on Mac
https://bugs.webkit.org/show_bug.cgi?id=107494

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-01-28
Reviewed by Simon Fraser.

Source/WebKit2:

  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::isViewVisible): Add window occlusion check.

  • UIProcess/API/mac/WKView.mm:

(-[WKView dealloc]): Remove self from the all views vector.
(-[WKView addWindowObserversForWindow:]): Register observer for
NSWindowWillOrderOffScreenNotification.
(-[WKView removeWindowObservers]): Unregister observer for
NSWindowWillOrderOffScreenNotification.
(-[WKView viewWillMoveToWindow:]): Disable occlusion notifications.
(-[WKView viewDidMoveToWindow]): Enable occlusion notifications.
(-[WKView _windowWillOrderOffScreen:]): Disable occlusion notifications.
(-[WKView _windowDidOrderOnScreen:]): Enable occlusion notifications.
This notification ensures that occlusion notifications are registered
correctly even if the NSWindow object is assigned a window number after
the viewDidMoveToWindow notification has been received. This occurs
for instance during application launch.
(-[WKView _setIsWindowOccluded:]):
(-[WKView _enableWindowOcclusionNotifications]):
(-[WKView _disableWindowOcclusionNotifications]):
(windowBecameVisible):
(windowBecameOccluded):
(+[WKView _registerWindowOcclusionNotificationHandlers]):
(+[WKView _unregisterWindowOcclusionNotificationHandlers]):
(+[WKView _allViews]):
(-[WKView _isWindowOccluded]):
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): Add
self to the all views vector.

  • UIProcess/API/mac/WKViewInternal.h:

WebKitLibraries:

Add enum constants to specify window occlusion notification type to
notification registration/unregistration methods. Add typedef for
window ID data passed to the window occlusion notification handler.
Add method to enable occlusion notifications for a particular window.

  • WebKitSystemInterface.h: Add

WKOcclusionNotificationTypeWindowBecameVisible,
WKOcclusionNotificationTypeWindowBecameOccluded,
WKWindowID,
WKEnableWindowOcclusionNotifications().

8:47 PM Changeset in webkit [141044] by keishi@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[Chromium] Rebaselining integer-modulo after r141031.

Unreviewed. Gardening.

  • platform/chromium/fast/js/regress/integer-modulo-expected.txt: Added.
8:41 PM Changeset in webkit [141043] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Small animated zoom level adjustments are unnecessary
https://bugs.webkit.org/show_bug.cgi?id=108104

Patch by Andrew Lo <anlo@rim.com> on 2013-01-28
Reviewed by Rob Buis.
Internally reviewed by Mike Fenton.

Internal PR 285861.
If the difference between the target scale and current scale is
less than a given threshold, don't perform a zoom animation.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):

8:38 PM Changeset in webkit [141042] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

fix multi-touch-inside-iframes Layout test
https://bugs.webkit.org/show_bug.cgi?id=108113

Patch by Min Qin <qinmin@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

The ordering of OnLoad() of the 2 child iframes is racy.
Fixed by assigning title from the parent frame.

  • fast/events/touch/multi-touch-inside-iframes.html:
  • fast/events/touch/resources/multi-touch-inside-iframes2.html:
8:37 PM Changeset in webkit [141041] by nghanavatian@rim.com
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Reduce the region that is spellchecked on keystroke
https://bugs.webkit.org/show_bug.cgi?id=108115

Reviewed by Rob Buis.

PR288217
Instead of blindly checking text until endOfDocument, we should be honoring the boundaries of
the VisibleSelection that is passed into SpellingHandler. Though this results in the same behavior
on focus, this dramatically reduces the region that is rechecked when a key is hit.

Internally reviewed by Mike Fenton.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::requestCheckingOfString):

  • WebKitSupport/SpellingHandler.cpp:

(BlackBerry::WebKit::SpellingHandler::spellCheckTextBlock):
(BlackBerry::WebKit::SpellingHandler::parseBlockForSpellChecking):

  • WebKitSupport/SpellingHandler.h:

(SpellingHandler):

8:32 PM Changeset in webkit [141040] by commit-queue@webkit.org
  • 10 edits in trunk/Source

[TexMap] Enable debug borders and repaint counter via Settings.
https://bugs.webkit.org/show_bug.cgi?id=107198

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-28
Reviewed by Benjamin Poulain.

Source/WebKit/efl:

If WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS is set to 1, set
showDebugBorders and showRepaintCounter in Settings to true.

  • ewk/ewk_view.cpp:

(_ewk_view_priv_new):

Source/WebKit/gtk:

If WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS is set to 1, set
showDebugBorders and showRepaintCounter in Settings to true.

  • webkit/webkitwebview.cpp:

(webkit_web_view_update_settings):

Source/WebKit/qt:

If WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS is set to 1, set
showDebugBorders and showRepaintCounter in Settings to true.

  • Api/qwebsettings.cpp:

(QWebSettingsPrivate::apply):

Source/WebKit2:

Currently, if the environment variable WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
is set to 1, only CoordinatedBacking shows debug borders and repaint counter.

This patch makes the environment variable change Settings.

In addition, Qt uses WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS instead of
QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS from now.

After Bug 105787, all backing stores and platform layers in TextureMapper can
show debug borders and repaint counter.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::EwkView):

  • UIProcess/API/gtk/WebKitSettings.cpp:

(webKitSettingsSetProperty):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

8:16 PM Changeset in webkit [141039] by Simon Fraser
  • 13 edits
    1 copy
    1 add in trunk

position:fixed that doesn't render any content should not force compositing
https://bugs.webkit.org/show_bug.cgi?id=108112

Source/WebCore:

Reviewed by Beth Dakin.

It's not uncommon for pages to have position:fixed elements with no content.
When these are behind other elements, they can cause those other elements
to become composited, using lots of backing store memory.

Optimize for the case where the position:fixed element has no rendered
content and no children by not making it composited in that case.

Test: compositing/layer-creation/fixed-position-no-content.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::hasNonEmptyChildRenderers): Moved from RenderLayerBacking.cpp.
(WebCore::hasBoxDecorations): Ditto.
(WebCore::RenderLayer::hasBoxDecorationsOrBackground): Ditto.
(WebCore::RenderLayer::hasVisibleBoxDecorations): Check for visibility:visible, box decorations and
overflow controls.
(WebCore::RenderLayer::isVisuallyNonEmpty): Returns true if this layer has some visible
representation.

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Need to call updateDescendantDependentFlags()
to ensure that the visibility flags are up to date.
(WebCore::RenderLayerBacking::updateDrawsContent): Call RenderLayer::hasBoxDecorationsOrBackground() now.
(WebCore::RenderLayerBacking::paintsBoxDecorations): Call RenderLayer::hasVisibleBoxDecorations() now.
(WebCore::RenderLayerBacking::paintsChildren): Call RenderLayer::hasNonEmptyChildRenderers().
(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer): Whitespace.
(WebCore::RenderLayerBacking::containsPaintedContent): Call RenderLayer::hasBoxDecorationsOrBackground().
(WebCore::RenderLayerBacking::isDirectlyCompositedImage): Ditto.

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForPosition): If the layer has no content to paint,
or visible descendant layers, then don't make it composited.

LayoutTests:

Reviewed by Beth Dakin.

Change tests to put a background color on position:fixed elements that need to be composited.
New test with an empty fixed position element.

  • compositing/layer-creation/fixed-position-change-out-of-view-in-view.html:
  • compositing/layer-creation/fixed-position-no-content-expected.txt: Added.
  • compositing/layer-creation/fixed-position-no-content.html: Copied from LayoutTests/compositing/layer-creation/fixed-position-out-of-view.html.
  • compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html:
  • compositing/layer-creation/fixed-position-out-of-view-scaled.html:
  • compositing/layer-creation/fixed-position-out-of-view.html:
  • platform/mac/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex.html:
  • platform/mac/tiled-drawing/fixed/fixed-position-out-of-view.html:
7:51 PM Changeset in webkit [141038] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Skipping mathml tests because MATHML was disasbled.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
7:47 PM Changeset in webkit [141037] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Move Mach port handling from WorkQueue to Connection
https://bugs.webkit.org/show_bug.cgi?id=108140

Reviewed by Sam Weinig.

Instead of having WorkQueue know about Mach port sources, just fold that
functionality directly into Connection. This lets us get rid of the generic source
handling from WorkQueue.

  • Platform/CoreIPC/Connection.h:

(Connection):

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::Connection::platformInvalidate):
(CoreIPC::createDataAvailableSource):
(CoreIPC):
(CoreIPC::Connection::open):
(CoreIPC::Connection::initializeDeadNameSource):

  • Platform/WorkQueue.h:

(WorkQueue::dispatchQueue):
(WorkQueue):

  • Platform/mac/WorkQueueMac.cpp:

(WorkQueue::platformInvalidate):

7:42 PM Changeset in webkit [141036] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Avoid doing work at 60fps for tiled layers when not necessary
https://bugs.webkit.org/show_bug.cgi?id=108135

Reviewed by Dean Jackson.

When there were any tiled layers on the page, we would run a CVDisplayLink
to cause GraphicsLayerCA to flush, in order to update tiled layer visible rects.
This is overkill; we should only do this if the tiled layer is affected by
an accelerated animation.

Fix by tracking whether an ancestor has a running animation when committing
GraphicsLayerCAs.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::flushCompositingState): Start with an empty CommitState.
(WebCore::GraphicsLayerCA::recursiveCommitChanges): Push CommitState for
each layer, which tracks whether an ancestor has a running transform animation.
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): updateLayerAnimations() renamed.
(WebCore::GraphicsLayerCA::updateAnimations): Renamed from updateLayerAnimations().
(WebCore::GraphicsLayerCA::isRunningTransformAnimation): Look in the map of running
animations for one affecting transform. This list is normally small (one item).

  • platform/graphics/ca/GraphicsLayerCA.h:

(WebCore::GraphicsLayerCA::CommitState::CommitState):

7:42 PM Changeset in webkit [141035] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

compositing/reflections/become-simple-composited-reflection.html pixel result shows bug
https://bugs.webkit.org/show_bug.cgi?id=107174

Reviewed by Dean Jackson.

When we have a content layer for solid color, we need to update reflection
clones when that color changes.

Tested by the pixel test for compositing/reflections/become-simple-composited-reflection.html.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateContentsColorLayer):

6:37 PM Changeset in webkit [141034] by abarth@webkit.org
  • 163 edits in trunk/Source

[v8] Security feature: JavaScript Bindings hardening
https://bugs.webkit.org/show_bug.cgi?id=106608

Source/WebCore:

The patch adds a check at wrapper creation time to enuse that the
object being wrapped is not already free, to the extent that we know
the information about the type of the object as provided in the IDL.

Patch by Tom Sepez <tsepez@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

Patch is correct if existing tests pass without new crashes.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementation):
(GenerateToV8Converters):
(GetNativeTypeForConversions):
(GetGnuVTableRefForInterface):
(GetGnuVTableNameForInterface):
(GetGnuMangledNameForInterface):
(GetGnuVTableOffsetForType):
(GetWinVTableRefForInterface):
(GetWinVTableNameForInterface):
(GetWinMangledNameForInterface):
(GetNamespaceForInterface):
(GetImplementationLacksVTableForInterface):
(GetV8SkipVTableValidationForInterface):
Update code generation to add object validity tests under the control
of the ENABLE_BINDING_INTEGRITY option.

  • Modules/filesystem/DirectoryReader.idl:
  • Modules/filesystem/DirectoryReaderSync.idl:
  • Modules/filesystem/EntryArray.idl:
  • Modules/filesystem/EntryArraySync.idl:
  • Modules/filesystem/Metadata.idl:
  • Modules/gamepad/Gamepad.idl:
  • Modules/gamepad/GamepadList.idl:
  • Modules/geolocation/Geoposition.idl:
  • Modules/geolocation/PositionError.idl:
  • Modules/indexeddb/IDBFactory.idl:
  • Modules/indexeddb/IDBIndex.idl:
  • Modules/indexeddb/IDBKeyRange.idl:
  • Modules/indexeddb/IDBObjectStore.idl:
  • Modules/mediastream/RTCStatsElement.idl:
  • Modules/mediastream/RTCStatsReport.idl:
  • Modules/quota/StorageInfo.idl:
  • Modules/speech/SpeechGrammar.idl:
  • Modules/speech/SpeechGrammarList.idl:
  • Modules/speech/SpeechRecognitionAlternative.idl:
  • Modules/speech/SpeechRecognitionResult.idl:
  • Modules/speech/SpeechRecognitionResultList.idl:
  • Modules/webaudio/AudioBuffer.idl:
  • Modules/webaudio/AudioDestinationNode.idl:
  • Modules/webaudio/AudioListener.idl:
  • Modules/webaudio/AudioSourceNode.idl:
  • Modules/webaudio/WaveTable.idl:
  • Modules/webdatabase/SQLError.idl:
  • Modules/webdatabase/SQLException.idl:
  • Modules/webdatabase/SQLResultSet.idl:
  • Modules/webdatabase/SQLResultSetRowList.idl:
  • Modules/webdatabase/SQLTransaction.idl:
  • Modules/webdatabase/SQLTransactionSync.idl:
  • bindings/scripts/IDLAttributes.txt:
  • css/CSSPrimitiveValue.idl:
  • css/CSSRule.idl:
  • css/CSSRuleList.idl:
  • css/CSSStyleDeclaration.idl:
  • css/CSSValue.idl:
  • css/CSSValueList.idl:
  • css/Counter.idl:
  • css/MediaList.idl:
  • css/MediaQueryList.idl:
  • css/RGBColor.idl:
  • css/Rect.idl:
  • css/StyleSheetList.idl:
  • css/WebKitCSSFilterValue.idl:
  • css/WebKitCSSMixFunctionValue.idl:
  • css/WebKitCSSTransformValue.idl:
  • dom/ClientRect.idl:
  • dom/ClientRectList.idl:
  • dom/Clipboard.idl:
  • dom/DOMCoreException.idl:
  • dom/DOMError.idl:
  • dom/DOMImplementation.idl:
  • dom/DOMNamedFlowCollection.idl:
  • dom/DOMStringList.idl:
  • dom/DOMStringMap.idl:
  • dom/DataTransferItem.idl:
  • dom/DataTransferItemList.idl:
  • dom/DocumentFragment.idl:
  • dom/Element.idl:
  • dom/Entity.idl:
  • dom/Event.idl:
  • dom/EventException.idl:
  • dom/MessageChannel.idl:
  • dom/MouseEvent.idl:
  • dom/MutationObserver.idl:
  • dom/MutationRecord.idl:
  • dom/NamedNodeMap.idl:
  • dom/NodeFilter.idl:
  • dom/NodeIterator.idl:
  • dom/NodeList.idl:
  • dom/Range.idl:
  • dom/RangeException.idl:
  • dom/Touch.idl:
  • dom/TouchList.idl:
  • dom/TreeWalker.idl:
  • fileapi/FileError.idl:
  • fileapi/FileException.idl:
  • fileapi/FileList.idl:
  • html/DOMFormData.idl:
  • html/DOMTokenList.idl:
  • html/DOMURL.idl:
  • html/HTMLAllCollection.idl:
  • html/HTMLCollection.idl:
  • html/HTMLDialogElement.idl:
  • html/HTMLDivElement.idl:
  • html/HTMLDocument.idl:
  • html/HTMLElement.idl:
  • html/HTMLImageElement.idl:
  • html/HTMLInputElement.idl:
  • html/HTMLSelectElement.idl:
  • html/HTMLSpanElement.idl:
  • html/HTMLUnknownElement.idl:
  • html/ImageData.idl:
  • html/MediaError.idl:
  • html/MediaKeyError.idl:
  • html/TimeRanges.idl:
  • html/ValidityState.idl:
  • html/canvas/ArrayBuffer.idl:
  • html/canvas/ArrayBufferView.idl:
  • html/canvas/CanvasGradient.idl:
  • html/canvas/CanvasPattern.idl:
  • html/canvas/Float32Array.idl:
  • html/canvas/Float64Array.idl:
  • html/canvas/Int16Array.idl:
  • html/canvas/Int32Array.idl:
  • html/canvas/Int8Array.idl:
  • html/canvas/Uint16Array.idl:
  • html/canvas/Uint32Array.idl:
  • html/canvas/Uint8Array.idl:
  • html/canvas/Uint8ClampedArray.idl:
  • html/canvas/WebGLActiveInfo.idl:
  • html/canvas/WebGLShaderPrecisionFormat.idl:
  • html/track/TextTrack.idl:
  • html/track/TextTrackCue.idl:
  • html/track/TextTrackCueList.idl:
  • inspector/InjectedScriptHost.idl:
  • inspector/InspectorFrontendHost.idl:
  • inspector/JavaScriptCallFrame.idl:
  • page/Coordinates.idl:
  • page/Crypto.idl:
  • page/MemoryInfo.idl:
  • page/PagePopupController.idl:
  • page/PerformanceEntryList.idl:
  • page/SpeechInputResult.idl:
  • page/SpeechInputResultList.idl:
  • page/WebKitPoint.idl:
  • svg/SVGAnimatedAngle.idl:
  • svg/SVGAnimatedBoolean.idl:
  • svg/SVGAnimatedEnumeration.idl:
  • svg/SVGAnimatedInteger.idl:
  • svg/SVGAnimatedLength.idl:
  • svg/SVGAnimatedLengthList.idl:
  • svg/SVGAnimatedNumber.idl:
  • svg/SVGAnimatedNumberList.idl:
  • svg/SVGAnimatedPreserveAspectRatio.idl:
  • svg/SVGAnimatedRect.idl:
  • svg/SVGAnimatedString.idl:
  • svg/SVGAnimatedTransformList.idl:
  • svg/SVGColor.idl:
  • svg/SVGException.idl:
  • svg/SVGPaint.idl:
  • svg/SVGPathSeg.idl:
  • svg/SVGRenderingIntent.idl:
  • svg/SVGUnitTypes.idl:
  • svg/SVGZoomAndPan.idl:
  • testing/MallocStatistics.idl:
  • testing/TypeConversions.idl:
  • workers/WorkerLocation.idl:
  • xml/DOMParser.idl:
  • xml/XMLHttpRequestException.idl:
  • xml/XMLSerializer.idl:
  • xml/XPathEvaluator.idl:
  • xml/XPathException.idl:
  • xml/XPathExpression.idl:
  • xml/XPathNSResolver.idl:
  • xml/XPathResult.idl:
  • xml/XSLTProcessor.idl:

Add exceptions to binding integrity checks to IDL.

Source/WebKit/chromium:

Patch by Tom Sepez <tsepez@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

  • features.gypi:

Added ENABLE_BINDING_INTEGRITY option.

6:28 PM Changeset in webkit [141033] by hclam@chromium.org
  • 3 edits in trunk/Source/WebCore

[chromium] Build fix.

Unreviewed build fix. Remove the use of SkMutex from DiscardablePixelRef.

  • platform/graphics/chromium/DiscardablePixelRef.cpp:

(WebCore::DiscardablePixelRefAllocator::allocPixelRef):
(WebCore::DiscardablePixelRef::DiscardablePixelRef):

  • platform/graphics/chromium/DiscardablePixelRef.h:

(DiscardablePixelRef):

6:03 PM Changeset in webkit [141032] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebKit2

Add StorageManager class to cmake ports

Unreviewed build fix. Though StorageManager was added to WK2 in r141024,
it is not added to cmake ports(EFL).

  • CMakeLists.txt:
  • PlatformEfl.cmake:
5:42 PM Changeset in webkit [141031] by msaboff@apple.com
  • 2 edits in trunk/LayoutTests

Make integer-modulo.js a try JS-Regress test
https://bugs.webkit.org/show_bug.cgi?id=108130

Reviewed by Filip Pizlo.

Eliminated the LayoutTest calls. Sum the values and throw an expection if it doesn't
match up.

  • fast/js/regress/script-tests/integer-modulo.js:
5:29 PM Changeset in webkit [141030] by benjamin@webkit.org
  • 4 edits in trunk/Source

String constructed from Literals should be non-empty
https://bugs.webkit.org/show_bug.cgi?id=108103

Reviewed by Eric Carlson.

Source/WebCore:

Strings from literal should not be constructed from empty strings. Use emptyString()
instead.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::canPlayType):

Source/WTF:

For efficiency, the construction from literal only works with valid non-empty strings.
One of the constructor was changed to fix an error from HTMLMediaElement.

This patch replaces the branch with an assertions.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::createFromLiteral):

5:22 PM Changeset in webkit [141029] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Add more assertions to the property storage use in arrays
https://bugs.webkit.org/show_bug.cgi?id=107728

Reviewed by Filip Pizlo.

Add a bunch of assertions to array and object butterfly
usage. This should make debugging somewhat easier.

I also converted a couple of assertions to release asserts
as they were so low cost it seemed a sensible thing to do.

  • runtime/JSArray.cpp:

(JSC::JSArray::sortVector):
(JSC::JSArray::compactForSorting):

  • runtime/JSObject.h:

(JSC::JSObject::getHolyIndexQuickly):

5:01 PM Changeset in webkit [141028] by haraken@chromium.org
  • 11 edits in trunk

Implement CompositionEvent constructor
https://bugs.webkit.org/show_bug.cgi?id=107919

Reviewed by Sam Weinig.

This patch implements a CompositionEvent constructor under
a DOM4_EVENTS_CONSTRUCTOR flag.

Spec: https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm

Source/WebCore:

Test: fast/events/constructors/composition-event-constructor.html

  • dom/CompositionEvent.cpp:

(WebCore::CompositionEventInit::CompositionEventInit):
(WebCore):
(WebCore::CompositionEvent::CompositionEvent):

  • dom/CompositionEvent.h:

(CompositionEventInit):
(WebCore):
(CompositionEvent):
(WebCore::CompositionEvent::create):
(WebCore::CompositionEvent::data):

  • dom/CompositionEvent.idl:

LayoutTests:

  • fast/dom/constructed-objects-prototypes-expected.txt:
  • fast/events/constructors/composition-event-constructor-expected.txt: Added.
  • fast/events/constructors/composition-event-constructor.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
  • fast/dom/constructed-objects-prototypes-expected.txt:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
5:01 PM Changeset in webkit [141027] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/13098777>
Add (allow mach-lookup (global-name "com.apple.tccd.system"))

Reviewed by Maciej Stachowiak.

  • WebProcess/com.apple.WebProcess.sb.in:
4:41 PM Changeset in webkit [141026] by beidson@apple.com
  • 7 edits in trunk/Source/WebKit2

WebKit2 should notify the client if the NetworkProcess crashes.
<rdar://problem/13090513> and https://bugs.webkit.org/show_bug.cgi?id=108126

Reviewed by Sam Weinig.

Add new client callback to the ContextClient:

  • UIProcess/API/C/WKContext.h:
  • UIProcess/WebContextClient.cpp:

(WebKit::WebContextClient::networkProcessDidCrash):

  • UIProcess/WebContextClient.h:

Call out to the client when the NetworkProcess crashes:

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::networkProcessCrashed):

  • UIProcess/WebContext.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):

4:18 PM Changeset in webkit [141025] by psolanki@apple.com
  • 7 edits in trunk/Source

PLATFORM(IOS) should come before MAC_OS_X_VERSION_MIN_REQUIRED
https://bugs.webkit.org/show_bug.cgi?id=108101

Reviewed by Benjamin Poulain.

Since iOS does not define MAC_OS_X_VERSION_MIN_REQUIRED, any usage of
MAC_OS_X_VERSION_MIN_REQUIRED should be after a PLATFORM(IOS) check.

Source/WebCore:

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac:

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

4:08 PM Changeset in webkit [141024] by andersca@apple.com
  • 3 edits
    3 adds in trunk/Source/WebKit2

Add StorageManager class
https://bugs.webkit.org/show_bug.cgi?id=108127

Reviewed by Sam Weinig.

The StorageManager will be in charge of handling access to local and session storage
in the UI process.

  • UIProcess/Storage/StorageManager.cpp: Added.
  • UIProcess/Storage/StorageManager.h: Added.
  • WebKit2.xcodeproj/project.pbxproj:
4:02 PM Changeset in webkit [141023] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Pass ICU cppflags to libWebCoreSVG.la build
https://bugs.webkit.org/show_bug.cgi?id=108032

Patch by Kalev Lember <kalevlember@gmail.com> on 2013-01-28
Reviewed by Martin Robinson.

Fixes a linking error with new libicu 50 on Fedora rawhide.

  • GNUmakefile.am:
3:53 PM Changeset in webkit [141022] by commit-queue@webkit.org
  • 7 edits in trunk/Tools

Refactor ChangeLog and PrepareChangeLog to use FileSystem objects
https://bugs.webkit.org/show_bug.cgi?id=107903

Patch by Timothy Loh <timloh@chromium.com> on 2013-01-28
Reviewed by Eric Seidel.

To make ChangeLog and PrepareChangeLog easier to test, we can use
FileSystem objects instead of just passing around paths.

  • Scripts/webkitpy/common/checkout/changelog.py:

(ChangeLog.init):
(ChangeLog.parse_latest_entry_from_file):
(ChangeLog.parse_entries_from_file):
(ChangeLog.latest_entry):
(ChangeLog.update_with_unreviewed_message):
(ChangeLog.set_reviewer):
(ChangeLog.set_short_description_and_bug_url):
(ChangeLog.delete_entries):
(ChangeLog.prepend_text):

  • Scripts/webkitpy/common/checkout/changelog_unittest.py:

(ChangeLogTest):
(test_parse_log_entries_from_changelog):
(test_latest_entry_parse_single_entry):
(test_set_reviewer):
(test_set_short_description_and_bug_url):
(test_delete_entries):
(test_prepend_text):

  • Scripts/webkitpy/common/system/filesystem_mock.py:

(ReadableTextFileObject.init):

  • Scripts/webkitpy/tool/steps/preparechangelog.py:

(PrepareChangeLog._ensure_bug_url):
(PrepareChangeLog._resolve_existing_entry):
(PrepareChangeLog.run):

  • Scripts/webkitpy/tool/steps/preparechangelog_unittest.py:

(test_ensure_bug_url):

  • Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py:

(_assert_message_for_revert_output):

3:48 PM Changeset in webkit [141021] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r141006.
http://trac.webkit.org/changeset/141006
https://bugs.webkit.org/show_bug.cgi?id=108123

Broke chromium build (Requested by arv on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-28

  • public/WebConsoleMessage.h:
  • src/AssertMatchingEnums.cpp:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::addMessageToConsole):

3:40 PM Changeset in webkit [141020] by wangxianzhu@chromium.org
  • 11 edits
    3 adds in trunk/Source

adding support for DiscardablePixelRef for caching lazily decoded images
https://bugs.webkit.org/show_bug.cgi?id=106842

Patch by Min Qin <qinmin@chromium.org> on 2013-01-28
Reviewed by Stephen White.

Source/WebCore:

This change allows using discardable memory in the deferred image decoding path.
Fully decoded images are unpinned and stored in ImageDecodingStore.
Partially decoded images are pinned and stored in ImageDecodingStore.
Discardable memory allocation could fail. Fall back to heap allocation in that case.
There is a separate size limit for heap entries and no limit on discardable entries.
New tests are added to ImageDecodingStoreTests

  • WebCore.gypi:
  • platform/graphics/chromium/DiscardablePixelRef.cpp: Added. Added implementation of the DiscardablePixelRef object that is backed by dis