Timeline



Mar 14, 2013:

11:28 PM Changeset in webkit [145879] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

11:26 PM Changeset in webkit [145878] by Lucas Forschler
  • 1 copy in tags/Safari-537.34

New Tag.

11:22 PM Changeset in webkit [145877] by dominicc@chromium.org
  • 2 edits in trunk/Source/WebCore

Redundant if statement in RenderTextControlSingleLine::layout should be removed
https://bugs.webkit.org/show_bug.cgi?id=112406

Reviewed by Andreas Kling.

Covered by existing tests added in r145239.

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::layout):

11:01 PM Changeset in webkit [145876] by commit-queue@webkit.org
  • 3 edits
    2 deletes in trunk

Unreviewed, rolling out r145864.
http://trac.webkit.org/changeset/145864
https://bugs.webkit.org/show_bug.cgi?id=112408

should fix XMLDocumentParser instead of CSSDefaultStyleSheet
(Requested by tasak on #webkit).

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

Source/WebCore:

  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

LayoutTests:

  • fast/css/ensure-default-style-sheets-crash-expected.txt: Removed.
  • fast/css/ensure-default-style-sheets-crash.xhtml: Removed.
10:29 PM Changeset in webkit [145875] by eustas@chromium.org
  • 16 edits in trunk/Source/WebCore

Web Inspector: [DataGrid] Specify columns with array of descriptors.
https://bugs.webkit.org/show_bug.cgi?id=112338

Reviewed by Pavel Feldman.

Currently columns are specified by Object that maps
column identifiers to column descriptors. Iteration order over
Object keys is not guaranteed.

Array should be used to specify column order.

  • inspector/front-end/DataGrid.js: Change consrtructor parameter type.
  • inspector/front-end/ApplicationCacheItemsView.js: Adopt changes.
  • inspector/front-end/CPUProfileView.js: Ditto.
  • inspector/front-end/CSSSelectorProfileView.js: Ditto.
  • inspector/front-end/CanvasProfileView.js: Ditto.
  • inspector/front-end/CookieItemsView.js: Ditto.
  • inspector/front-end/CookiesTable.js: Ditto.
  • inspector/front-end/DOMStorageItemsView.js: Ditto.
  • inspector/front-end/DirectoryContentView.js: Ditto.
  • inspector/front-end/HeapSnapshot.js: Ditto.
  • inspector/front-end/HeapSnapshotDataGrids.js: Ditto.
  • inspector/front-end/IndexedDBViews.js: Ditto.
  • inspector/front-end/NativeMemorySnapshotView.js: Ditto.
  • inspector/front-end/NetworkPanel.js: Ditto.
  • inspector/front-end/ResourceWebSocketFrameView.js: Ditto.
10:26 PM Changeset in webkit [145874] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Flame Chart. Support scrolling by dragging.
https://bugs.webkit.org/show_bug.cgi?id=112346

Reviewed by Yury Semikhatsky.

Drag hander was added. It seems that simple repaint works well.
When the user starts dragging we hide the popover, change offset
and do update for the new canvas image.
Drive by change: Due to new way of scrolling the canvas I changed
the behaiviour of the wheel events. Now wheel scrolls if Shift key pressed
and zooms if not.

  • inspector/front-end/FlameChart.js:

(WebInspector.FlameChart):
(WebInspector.FlameChart.prototype._startCanvasDragging):
(WebInspector.FlameChart.prototype._canvasDragging):
(WebInspector.FlameChart.prototype._endCanvasDragging):
(WebInspector.FlameChart.prototype._onMouseWheel):

10:14 PM Changeset in webkit [145873] by hayato@chromium.org
  • 12 edits in trunk

[Shadow Dom]: Non Bubbling events in ShadowDOM dispatch in an incorrect order
https://bugs.webkit.org/show_bug.cgi?id=112214

Reviewed by Dimitri Glazkov.

Source/WebCore:

Fix the order of event dispatching for Shadow DOM.

So far, an event whose event phase should be set to AT_TARGET,
e.g. event at shadow hosts, is dispatched in bubbling phase in the
whole event path. This patch fixed the order of event dispatching
so that an event whose event phase must be set to AT_TARGET phase
is dispatched in capturing phase rather than bubbling phase.

The spec is here:
https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#event-dispatch

5.5 Event Dispatch says:

  • When capturing, which entails processing step 3 of the event

dispatch algorithm, the Event eventPhase attribute must return
AT_TARGET if the relative target is same as the node on which
event listeners are invoked

  • When bubbling, which entails

processing step 6 of the event dispatch algorithm, the event
listeners must not be invoked on a node if it is the same as its
relative target

No new tests. Update existing layout tests.

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchEventAtCapturing):
(WebCore::EventDispatcher::dispatchEventAtBubbling):

LayoutTests:

  • fast/dom/shadow/cppevent-in-shadow-expected.txt:
  • fast/dom/shadow/cppevent-input-in-shadow-expected.txt:
  • fast/dom/shadow/events-stopped-at-shadow-boundary-expected.txt:
  • fast/dom/shadow/shadow-boundary-events-expected.txt:
  • fast/dom/shadow/shadow-boundary-events.html:
  • fast/dom/shadow/shadow-dom-event-dispatching-distributed-text-node-expected.txt:
  • fast/dom/shadow/shadow-dom-event-dispatching-fallback-nodes-expected.txt:
  • fast/dom/shadow/shadow-dom-event-dispatching-non-distributed-nodes-expected.txt:
  • fast/dom/shadow/shadow-dom-event-dispatching-text-node-in-shadow-root-expected.txt:
9:47 PM Changeset in webkit [145872] by pfeldman@chromium.org
  • 2 edits in trunk/LayoutTests

Not reviewed: Chromium TestExpectations cleanup prepared by kbr@

  • platform/chromium/TestExpectations:
9:25 PM Changeset in webkit [145871] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

Backspace/delete at start of table cell shouldn't step out of cell
https://bugs.webkit.org/show_bug.cgi?id=35372

Patch by Shezan Baig <Shezan Baig> on 2013-03-14
Reviewed by Ryosuke Niwa.

Source/WebCore:

Make Delete and ForwardDelete commands be no-ops if we are at the first
position or last position of a table cell respectively.

Tests: editing/deleting/backspace-at-table-cell-beginning.html

editing/deleting/forward-delete-at-table-cell-ending.html

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::deleteKeyPressed):
(WebCore::TypingCommand::forwardDeleteKeyPressed):

LayoutTests:

  • editing/deleting/backspace-at-table-cell-beginning-expected.txt: Added.
  • editing/deleting/backspace-at-table-cell-beginning.html: Added.
  • editing/deleting/forward-delete-at-table-cell-ending-expected.txt: Added.
  • editing/deleting/forward-delete-at-table-cell-ending.html: Added.
8:37 PM Changeset in webkit [145870] by commit-queue@webkit.org
  • 9 edits
    2 adds in trunk

Clickable area is incorrect for elements with border-radius
https://bugs.webkit.org/show_bug.cgi?id=95373

Patch by Xidorn Quan <quanxunzhen@gmail.com> on 2013-03-14
Reviewed by Simon Fraser.

Source/WebCore:

As RenderBlock doesn't see rounded rect which comes from border-radius
in nodeAtPoint, the rounded corner seems to have an 'invisible' square
box which catches hits. So we added check on whether hitTestPoint also
intersects the rounded rect when hasBorderRadius is set.

This patch is based on Takashi Sakamoto's work in
https://bugs.webkit.org/show_bug.cgi?id=95373

Test: fast/borders/border-radius-position.html

  • platform/graphics/FloatQuad.cpp:

(WebCore):
(WebCore::lineIntersectsCircle):
(WebCore::FloatQuad::intersectsCircle):
(WebCore::FloatQuad::intersectsEllipse):

  • platform/graphics/FloatQuad.h:

(FloatQuad):

  • platform/graphics/RoundedRect.cpp:

(WebCore::RoundedRect::intersectsQuad):
(WebCore):

  • platform/graphics/RoundedRect.h:

(RoundedRect):

  • rendering/HitTestLocation.cpp:

(WebCore::HitTestLocation::intersects):
(WebCore):

  • rendering/HitTestLocation.h:

(HitTestLocation):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::nodeAtPoint):

LayoutTests:

This test is based on Takashi Sakamoto's work in
https://bugs.webkit.org/show_bug.cgi?id=95373

  • fast/borders/border-radius-position-expected.txt: Added.
  • fast/borders/border-radius-position.html: Added.
8:30 PM Changeset in webkit [145869] by akling@apple.com
  • 12 edits in trunk

REGRESSION(r145169): [Mac][WK2] http/tests/security/cross-frame-access-put.html fails.
<http://webkit.org/b/111815>
<rdar://problem/13380145>

Reviewed by Anders Carlsson.

Source/WebKit2:

Call getWindowFrame() to see if the UI client wants to override the window frame before sending
a WindowAndViewFramesChanged message to the web process.
This fixes a glitch in WTR and the Web Inspector where incorrect window frames were being used.

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::windowAndViewFramesChanged):

Tools:

Add PlatformWebView::didInitializeClients() and call it after setting up all the clients
after creating a PlatformWebView. Otherwise, the initial WindowAndViewFramesChanged message
will be sent before there's a UI client set up to adjust the frame with WTR's fake origin.

  • WebKitTestRunner/PlatformWebView.h:

(PlatformWebView):

  • WebKitTestRunner/TestController.cpp:

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

  • WebKitTestRunner/mac/PlatformWebViewMac.mm:

(WTR::PlatformWebView::didInitializeClients):

LayoutTests:

  • platform/mac-wk2/TestExpectations:
7:41 PM Changeset in webkit [145868] by commit-queue@webkit.org
  • 8 edits in trunk/LayoutTests

plugins/plugin-clip-subframe.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=112324

Patch by John Bauman <jbauman@chromium.org> on 2013-03-14
Reviewed by Ryosuke Niwa.

Ignore duplicate SetWindow calls with identical arguments. Plugins
will ignore these so they're not a problem, and they can cause
flakiness on mac-wk2.

  • platform/chromium-linux/plugins/plugin-clip-subframe-expected.txt:
  • platform/chromium-mac/plugins/plugin-clip-subframe-expected.txt:
  • platform/chromium-win/plugins/plugin-clip-subframe-expected.txt:
  • platform/mac-wk2/plugins/plugin-clip-subframe-expected.txt:
  • platform/mac/plugins/plugin-clip-subframe-expected.txt:
  • plugins/plugin-clip-subframe-expected.txt:
  • plugins/resources/plugin-clip-subframe-iframe.html:
7:18 PM Changeset in webkit [145867] by dominicc@chromium.org
  • 1 edit
    6 copies in branches/chromium/1410

[Chromium] Unreviewed, merge r145239.

7:08 PM Changeset in webkit [145866] by Chris Fleizach
  • 3 edits
    2 adds in trunk

AX: Crash when removing aria-menu item from DOM
https://bugs.webkit.org/show_bug.cgi?id=112396

Reviewed by Tim Horton.

Source/WebCore:

Prevent nil access to items in the ARIA menu flow when deleting
objects from the DOM.

Test: accessibility/menu-item-crash.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::siblingWithAriaRole):
(WebCore::AccessibilityNodeObject::menuButtonForMenu):

LayoutTests:

  • accessibility/menu-item-crash-expected.txt: Added.
  • accessibility/menu-item-crash.html: Added.
7:02 PM Changeset in webkit [145865] by hayato@chromium.org
  • 6 edits
    2 adds in trunk

[Shadow]: left side of ::-webkit-distributed selector not working as expected
https://bugs.webkit.org/show_bug.cgi?id=110825

Reviewed by Dimitri Glazkov.

Source/WebCore:

Make functional pseudo distributed elements work even when a left side element has specifiers.

Test: fast/dom/shadow/distributed-pseudo-element-specifiers-in-left-side.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::rewriteSpecifiersWithNamespaceIfNeeded):
Make it call rewriteSpecifiersForShadowDistributed() if required.

(WebCore::CSSParser::rewriteSpecifiersWithElementName):
Updated so that it can generate a correct chain of
CSSParserSelectors even when '::distributed()' is used with an
element, which might be empty, with specifiers.

e.g. When parsing a selector of 'content.content-class::-webkit-distributed(div)', the following happens:

  1. rewriteSpecifiersWithElementName(...) is called with:

elementName is: "content"
specifiers is: [.content-class] -> [::-webkit-distributed]

  1. Looking for a distributed pseudo element in the specifiers and found it at the end of tagHistory chain of the specifiers.
  1. The result of calling specifiers->prependTagSelector(tag) is:

specifiers is: [content] -> [.content-class] -> [::-webkit-distributed]

  1. rewriteSpecifiersForShadowDistributed() is called with:

specifiers is: [content] -> [.content-class] -> [::-webkit-distributed]
distributedPseudoElementSelector is: [::-webkit-distributed]

  1. An argumentSelector of the distributedPseudoElementSelector is:

argumentSelector is: [div]

  1. Remove the distributed pseudo element selector from the specifiers.

specifiers is: [content] -> [.content-class]

Note that one pseudo-element may appear per complex selector
and the pseudo-element may appear only if the subject of the
selector is the last compound selector in the selector.

  1. Append specifiers to the end of the argument selector with a relation of ShadowDistributed:

argumentSelector is: [div] -(ShadowDistributed)-> [content] -> [.content-class]

  1. Returns the argument selector as a return value.

(WebCore::CSSParser::rewriteSpecifiersForShadowDistributed): As explained.

  • css/CSSParserValues.cpp:

(WebCore):
(WebCore::CSSParserSelector::findDistributedPseudoElementSelector):

  • css/CSSParserValues.h:

(CSSParserSelector):
(WebCore::CSSParserSelector::clearTagHistory):

LayoutTests:

  • fast/dom/shadow/distributed-pseudo-element-specifiers-in-left-side-expected.html: Added.
  • fast/dom/shadow/distributed-pseudo-element-specifiers-in-left-side.html: Added.
6:50 PM Changeset in webkit [145864] by tasak@google.com
  • 3 edits
    2 adds in trunk

Crash at CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement reported by fuzzer
https://bugs.webkit.org/show_bug.cgi?id=112328

Reviewed by Dimitri Glazkov.

Source/WebCore:

ensureDefaultStyleSheets should check whether page() is null or not.

Test: fast/css/ensure-default-style-sheets-crash.xhtml

  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

LayoutTests:

  • fast/css/ensure-default-style-sheets-crash-expected.txt: Added.
  • fast/css/ensure-default-style-sheets-crash.xhtml: Added.
5:52 PM Changeset in webkit [145863] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL][MiniBrowser] Add a search field to the MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=112122

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2013-03-14
Reviewed by Kenneth Rohde Christiansen.

Implement a search field to test API ewk_view_text_find() and add a shortcut 'ctrl' + f.

  • MiniBrowser/efl/main.c:

(_Browser_Window):
(search_box_show):
(search_box_hide):
(on_key_down):
(on_url_changed):
(on_search_field_aborted):
(on_search_field_activated):
(on_search_field_clicked):
(on_search_backward_button_clicked):
(on_search_forward_button_clicked):
(window_create):

5:51 PM Changeset in webkit [145862] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed test expectations update. Expanded suppression.

  • platform/chromium/TestExpectations:
5:48 PM Changeset in webkit [145861] by jparent@chromium.org
  • 8 edits in trunk/Tools

Cleanup: Remove g_resourceLoader.
https://bugs.webkit.org/show_bug.cgi?id=112305

Reviewed by Dirk Pranke.

Removing another global.

Now, each dashboard creates its own loader, rather than having
a general global one.

Remove usage of g_resourceLoader.isLoadingComplete from
handleLocationChange by ensuring that handleLocationChange is
never called before the loader is done. It was called in two
places before: 1 was from the callback when the loader is done,
so that was obviously true, and the other was from onhashchange,
where it would just return rather than running. Instead, lets
only register the onhashchange handler once the loader is
setup, so the check is no longer necessary.

Remove isLoadingComplete since it is now unused.

Callback for loader is now initializeHistory, rather than just
handleLocationChange which will set up the hashchange handler now.
This will all eventually be moving to a new History object.

  • TestResultServer/static-dashboards/aggregate_results.html:
  • TestResultServer/static-dashboards/dashboard_base.js:

(handleLocationChange):
(intializeHistory):
(decompressResults):

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(generatePage):

  • TestResultServer/static-dashboards/loader.js:

(.):

  • TestResultServer/static-dashboards/loader_unittests.js:
  • TestResultServer/static-dashboards/timeline_explorer.html:
  • TestResultServer/static-dashboards/treemap.html:
5:45 PM Changeset in webkit [145860] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r145000): Crash loading arstechnica.com when Safari Web Inspector is open
https://bugs.webkit.org/show_bug.cgi?id=111868

Reviewed by Antti Koivisto.

Don't allow non-local property lookup when the debugger is enabled.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::resolve):

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

Build: Remove XSLT option and depend hard on XSLT.
You will now not be able to give --disable-xslt or --enable-xslt
because it is not optional anymore.
https://bugs.webkit.org/show_bug.cgi?id=112368

Patch by Tobias Mueller <tobiasmue@gnome.org> on 2013-03-14
Reviewed by Martin Robinson.

  • Source/autotools/FindDependencies.m4:

Always check for libxslt

  • Source/autotools/PrintBuildConfiguration.m4:

Removed printing out the value of XSLT

  • Source/autotools/ReadCommandLineArguments.m4:

Removed reading XSLT options

5:07 PM Changeset in webkit [145858] by kbr@google.com
  • 1 edit
    8 adds in trunk/LayoutTests

Unreviewed gardening. Added images for new test.

  • platform/chromium-mac-lion/platform/chromium/scrollbars/short-scrollbar-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/scrollbars/short-scrollbar-expected.png: Added.
  • platform/chromium-mac/platform/chromium/scrollbars/short-scrollbar-expected.png: Added.
  • platform/chromium-win/platform/chromium/scrollbars/short-scrollbar-expected.png: Added.
5:02 PM Changeset in webkit [145857] by jamesr@google.com
  • 20 edits in trunk/LayoutTests

Fix flaky layout tests that rely on setTimeout()s firing after <body> is parsed
https://bugs.webkit.org/show_bug.cgi?id=112306

Reviewed by Eric Seidel.

These tests all rely in one way or another on the body of a setTimeout set in an inline <script> in the <head>
firing after the <body> element is generated by the HTML parser. This is a flaky pattern since the HTML parser
may yield when parsing a </script> or when runnnig out of bytes from the network. In practice, this pattern used
to be not terribly flaky for layout tests loaded from disk unless there was a large GC pause. However, since the
threaded HTML parser yields more frequently when hitting a </script> this flakes more.

These tests were found by identifying layout tests that call setTimeout before the document's body exists by
modifying the code, then intersecting that set with tests that are flaky on the chromium flakiness dashboard.

  • editing/inserting/insert-text-into-empty-frameset-crash.html:
  • editing/style/apply-style-crash.html:
  • fast/block/float/float-originating-line-deleted-crash.html:
  • fast/block/float/floats-not-cleared-crash.html:
  • fast/block/line-layout/inline-box-wrapper-crash.html:
  • fast/css/positioned-in-relative-position-inline-crash.html:
  • fast/css/user-stylesheet-crash.html:
  • fast/encoding/script-in-head.html:
  • fast/forms/textarea-placeholder-relayout-assertion.html:
  • fast/frames/seamless/seamless-form-get.html:
  • fast/frames/seamless/seamless-form-post-named.html:
  • fast/frames/seamless/seamless-window-location-href.html:
  • fast/frames/seamless/seamless-window-location-replace.html:
  • fast/inline/update-always-create-line-boxes-full-layout-crash.html:
  • fast/innerHTML/innerHTML-iframe.html:
  • fast/js/same-origin-subframe-about-blank.html:
  • fast/multicol/span/removal-of-multicol-span-crash.html:
  • fast/text/international/bidi-neutral-in-mixed-direction-run-crash.html:
  • fast/writing-mode/overhanging-float-legend-crash.html:
4:40 PM May 2013 Meeting edited by benjamin@webkit.org
(diff)
4:33 PM Changeset in webkit [145856] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Check to ensure MultisampleRenderbuffer creation succeeds
https://bugs.webkit.org/show_bug.cgi?id=111780

Patch by Brandon Jones <bajones@google.com> on 2013-03-14
Reviewed by Kenneth Russell.

On OSX systems using AMD graphics chips the allocation of large
Multisample Renderbuffers in Chromium would fail without any indication
of failure. Attempting to draw to the buffer resulted in garbage being
rendered onscreen. This could be reproduced by opening a full-page
WebGL app and pressing (Command + "-") several times. This patch adds an
additional check during DrawingBuffer resize to verify that the resized
buffer is valid.

  • platform/graphics/gpu/DrawingBuffer.cpp:

(WebCore):
(WebCore::DrawingBuffer::checkBufferIntegrity):
(WebCore::DrawingBuffer::reset):

  • platform/graphics/gpu/DrawingBuffer.h:

(DrawingBuffer):

4:29 PM Changeset in webkit [145855] by danakj@chromium.org
  • 4 edits in trunk/Source

[chromium] Make zoom filter independent of the layer size.
https://bugs.webkit.org/show_bug.cgi?id=112221

Reviewed by Stephen White.

Source/Platform:

Make the zoom filter hold a zoom amount and an inset.

  • chromium/public/WebFilterOperation.h:

(WebKit::WebFilterOperation::zoomInset):
(WebFilterOperation):
(WebKit::WebFilterOperation::createZoomFilter):
(WebKit::WebFilterOperation::setZoomInset):
(WebKit::WebFilterOperation::WebFilterOperation):

Source/WebKit/chromium:

  • tests/FilterOperationsTest.cpp:

(WebKit):
(WebKit::TEST):

4:22 PM May 2013 Meeting edited by rniwa@webkit.org
Add "improving wiki pages" as a hackathon (diff)
3:43 PM Changeset in webkit [145854] by enrica@apple.com
  • 6 edits
    1 add in trunk

Character orientation should follow UTR50 specs for vertical layout.
https://bugs.webkit.org/show_bug.cgi?id=112213
<rdar://problem/12880943>

Reviewed by Ryosuke Niwa.

Source/WebCore:

platform/mac/fast/text/vertical-no-sideways.html: Modified to cover samples
of the additional character ranges that should not be rotated in vertical layout.
Added pixel results.

This patch modifies shouldIgnoreRotation to include all the characters that
should not be rotated sideways in vertical layout according to the UTR50 draft 6
specifications. It also fixes rotation for Emojii.

  • platform/graphics/FontFastPath.cpp:

(WebCore::shouldIgnoreRotation):
(WebCore::isInRange): Added.

  • platform/graphics/mac/FontMac.mm:

(WebCore::showGlyphsWithAdvances): Adds the proper transforms to ensure
Emojii also are drawn correctly upright.

LayoutTests:

  • platform/mac/fast/text/vertical-no-sideways.html: Modified to cover samples

of the additional character ranges that should not be rotated in vertical layout.

  • platform/mac/platform/mac/fast/text/vertical-no-sideways-expected.txt:
  • platform/mac/platform/mac/fast/text/vertical-no-sideways-expected.png: Added.
3:30 PM Changeset in webkit [145853] by Lucas Forschler
  • 5 edits in branches/safari-534.59-branch/Source

Versioning.

3:30 PM Changeset in webkit [145852] by Lucas Forschler
  • 1 copy in tags/Safari-534.59.6

New Tag.

3:16 PM Changeset in webkit [145851] by Lucas Forschler
  • 16 edits in branches/safari-534.59-branch

Merged r138606. <rdar://problem/13424275>

3:10 PM Changeset in webkit [145850] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed test expectations updates. Suppressed a couple of
failures and adjusted a couple of existing expectations.

  • platform/chromium/TestExpectations:
3:07 PM HackingGtk edited by Martin Robinson
Cleaned up old information, conglomerated links at the top (diff)
2:54 PM Changeset in webkit [145849] by commit-queue@webkit.org
  • 76 edits in trunk

Add selectTrailingWhitespaceEnabled setting to WebCore::Page
https://bugs.webkit.org/show_bug.cgi?id=109404

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-03-14
Reviewed by Tony Chang.

Source/WebCore:

Covered by
editing/selection/doubleclick-inline-first-last-contenteditable.html.

  • page/Settings.cpp:

(WebCore): Configure default value for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled seetings as they are different in
Chromium port depending on the OS.

  • page/Settings.in: Add new setting.

Source/WebKit/blackberry:

Use new settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled.

Remove code related to DRT as it is not needed anymore.

  • Api/DumpRenderTreeClient.h:
  • WebCoreSupport/EditorClientBlackBerry.cpp:

(WebCore::EditorClientBlackBerry::smartInsertDeleteEnabled):
(WebCore::EditorClientBlackBerry::isSelectTrailingWhitespaceEnabled):

Source/WebKit/chromium:

Use new Page settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled and update API accordingly.

WebSettings API is required by DRT in order to set the proper default
values which are different from browser defaults.

  • public/WebSettings.h: Add new API to manage smartInsertDeleteEnabled

and selectTrailingWhitespaceEnabled settings.

  • public/WebViewClient.h: Remove API related to smartInsertDeleteEnabled

and selectTrailingWhitespaceEnabled as they will be managed from page
settings from now on.

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::smartInsertDeleteEnabled):
(WebKit::EditorClientImpl::isSelectTrailingWhitespaceEnabled): Use new
settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled.

  • src/WebSettingsImpl.cpp: Implement methods establishing the page

settings.
(WebKit::WebSettingsImpl::setSelectTrailingWhitespaceEnabled):
(WebKit):
(WebKit::WebSettingsImpl::setSmartInsertDeleteEnabled):

  • src/WebSettingsImpl.h:

(WebSettingsImpl): Implement new API to manage the new settings.

Source/WebKit/efl:

Use new settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled.

Remove code related to DRT as it is not needed anymore.

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

(WebCore::EditorClientEfl::smartInsertDeleteEnabled):
(WebCore::EditorClientEfl::isSelectTrailingWhitespaceEnabled):
(WebCore::EditorClientEfl::EditorClientEfl):

  • WebCoreSupport/EditorClientEfl.h:

(EditorClientEfl):

Source/WebKit/gtk:

Use new settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled.

Remove code related to DRT as it is not needed anymore.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::smartInsertDeleteEnabled):
(WebKit::EditorClient::isSelectTrailingWhitespaceEnabled):
(WebKit::EditorClient::EditorClient):

  • WebCoreSupport/EditorClientGtk.h:

(EditorClient):

Source/WebKit/mac:

Use new settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled.

  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::smartInsertDeleteEnabled):
(WebEditorClient::isSelectTrailingWhitespaceEnabled):

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]): Initialize
settings from NSUserDefaults.
(-[WebView setSelectTrailingWhitespaceEnabled:]):
(-[WebView isSelectTrailingWhitespaceEnabled]):
(-[WebView setSmartInsertDeleteEnabled:]):
(-[WebView smartInsertDeleteEnabled]):

  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:

(-[WebViewPrivate init]):

Source/WebKit/qt:

Use new settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled.

Remove code related to DRT as it is not needed anymore.

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:
  • WebCoreSupport/DumpRenderTreeSupportQt.h:
  • WebCoreSupport/EditorClientQt.cpp:

(WebCore::EditorClientQt::smartInsertDeleteEnabled):
(WebCore::EditorClientQt::toggleSmartInsertDelete):
(WebCore::EditorClientQt::isSelectTrailingWhitespaceEnabled):
(WebCore::EditorClientQt::EditorClientQt):

  • WebCoreSupport/EditorClientQt.h:

(EditorClientQt):

Source/WebKit/win:

Use new settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled.

  • WebCoreSupport/WebEditorClient.cpp:

(WebEditorClient::smartInsertDeleteEnabled):
(WebEditorClient::isSelectTrailingWhitespaceEnabled):

  • WebView.cpp:

(WebView::WebView):
(WebView::setSmartInsertDeleteEnabled):
(WebView::smartInsertDeleteEnabled):
(WebView::setSelectTrailingWhitespaceEnabled):
(WebView::isSelectTrailingWhitespaceEnabled):

  • WebView.h:

(WebView):

Source/WebKit/wince:

Use new settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled.

  • WebCoreSupport/EditorClientWinCE.cpp:

(WebKit::EditorClientWinCE::smartInsertDeleteEnabled):
(WebKit::EditorClientWinCE::isSelectTrailingWhitespaceEnabled):

Source/WebKit/wx:

Use new settings for smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled.

  • WebKitSupport/EditorClientWx.cpp:

(WebCore::EditorClientWx::smartInsertDeleteEnabled):
(WebCore::EditorClientWx::isSelectTrailingWhitespaceEnabled):

Tools:

Removes all the code related to smartInsertDeleteEnabled and
selectTrailingWhitespaceEnabled settings as they will be managed from
internals from now on.

  • DumpRenderTree/TestRunner.cpp:

(TestRunner::staticFunctions):

  • DumpRenderTree/TestRunner.h:

(TestRunner):

  • DumpRenderTree/blackberry/DumpRenderTree.cpp:

(WebKit):
(BlackBerry::WebKit::DumpRenderTree::resetToConsistentStateBeforeTesting):

  • DumpRenderTree/blackberry/DumpRenderTreeBlackBerry.h:

(DumpRenderTree):

  • DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp:
  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebTestRunner::WebTestProxy::didStopLoading):

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

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::reset):

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

(TestRunner):

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

(WebTestRunner::WebPreferences::applyTo): Set default values for
smartInsertDeleteEnabled and selectTrailingWhitespaceEnabled settings as
Chromium DRT default values are different from Chromium browser.

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
  • DumpRenderTree/chromium/WebViewHost.cpp:
  • DumpRenderTree/chromium/WebViewHost.h:

(WebViewHost):

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

  • DumpRenderTree/efl/TestRunnerEfl.cpp:
  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues):

  • DumpRenderTree/gtk/TestRunnerGtk.cpp:
  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetWebViewToConsistentStateBeforeTesting):

  • DumpRenderTree/mac/TestRunnerMac.mm:
  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::WebPage::resetSettings):

  • DumpRenderTree/qt/TestRunnerQt.cpp:
  • DumpRenderTree/qt/TestRunnerQt.h:

(TestRunnerQt):

  • DumpRenderTree/win/DumpRenderTree.cpp:

(resetWebViewToConsistentStateBeforeTesting):

  • DumpRenderTree/win/TestRunnerWin.cpp:
  • DumpRenderTree/wx/TestRunnerWx.cpp:

LayoutTests:

Replace testRunner.setSelectTrailingWhitespaceEnabled by
internals.settings.setSelectTrailingWhitespaceEnabled in tests.

Be sure that trailingWhitespaceEnabled and
selectTrailingWhitespaceEnabled are set to opposite values as they are
mutually exclusive.

  • editing/deleting/smart-editing-disabled.html:
  • editing/selection/doubleclick-beside-cr-span.html:
  • editing/selection/doubleclick-whitespace-crash.html:
  • editing/selection/doubleclick-whitespace-img-crash.html:
  • editing/selection/doubleclick-whitespace.html:
  • editing/selection/script-tests/doubleclick-inline-first-last-contenteditable.js:
  • editing/spelling/resources/util.js:

(initSpellTest):

  • editing/spelling/spelling-double-clicked-word-with-underscores.html:
  • editing/spelling/spelling-double-clicked-word.html:
  • platform/wk2/TestExpectations: Unflag

editing/selection/doubleclick-inline-first-last-contenteditable.html
as it passes now.

2:14 PM Changeset in webkit [145848] by mhahnenberg@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

Objective-C API: Objective-C functions exposed to JavaScript have the wrong type (object instead of function)
https://bugs.webkit.org/show_bug.cgi?id=105892

Reviewed by Geoffrey Garen.

Changed ObjCCallbackFunction to subclass JSCallbackFunction which already has all of the machinery to call
functions using the C API. Since ObjCCallbackFunction is now a JSCell, we changed the old implementation of
ObjCCallbackFunction to be the internal implementation and keep track of all the proper data so that we
don't have to put all of that in the header, which will now be included from C++ files (e.g. JSGlobalObject.cpp).

  • API/JSCallbackFunction.cpp: Change JSCallbackFunction to allow subclassing. Originally it was internally

passing its own Structure up the chain of constructors, but we now want to be able to pass other Structures as well.
(JSC::JSCallbackFunction::JSCallbackFunction):
(JSC::JSCallbackFunction::create):

  • API/JSCallbackFunction.h:

(JSCallbackFunction):

  • API/JSWrapperMap.mm: Changed interface to tryUnwrapBlock.

(tryUnwrapObjcObject):

  • API/ObjCCallbackFunction.h:

(ObjCCallbackFunction): Moved into the JSC namespace, just like JSCallbackFunction.
(JSC::ObjCCallbackFunction::createStructure): Overridden so that the correct ClassInfo gets used since we have
a destructor.
(JSC::ObjCCallbackFunction::impl): Getter for the internal impl.

  • API/ObjCCallbackFunction.mm:

(JSC::ObjCCallbackFunctionImpl::ObjCCallbackFunctionImpl): What used to be ObjCCallbackFunction is now
ObjCCallbackFunctionImpl. It handles the Objective-C specific parts of managing callback functions.
(JSC::ObjCCallbackFunctionImpl::~ObjCCallbackFunctionImpl):
(JSC::objCCallbackFunctionCallAsFunction): Same as the old one, but now it casts to ObjCCallbackFunction and grabs the impl
rather than using JSObjectGetPrivate.
(JSC::ObjCCallbackFunction::ObjCCallbackFunction): New bits to allow being part of the JSCell hierarchy.
(JSC::ObjCCallbackFunction::create):
(JSC::ObjCCallbackFunction::destroy):
(JSC::ObjCCallbackFunctionImpl::call): Handles the actual invocation, just like it used to.
(objCCallbackFunctionForInvocation):
(tryUnwrapBlock): Changed to check the ClassInfo for inheritance directly, rather than going through the C API call.

  • API/tests/testapi.mm: Added new test to make sure that doing Function.prototype.toString.call(f) won't result in

an error when f is an Objective-C method or block underneath the covers.

  • runtime/JSGlobalObject.cpp: Added new Structure for ObjCCallbackFunction.

(JSC::JSGlobalObject::reset):
(JSC::JSGlobalObject::visitChildren):

  • runtime/JSGlobalObject.h:

(JSGlobalObject):
(JSC::JSGlobalObject::objcCallbackFunctionStructure):

2:10 PM Changeset in webkit [145847] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk/LayoutTests

[CSS Exclusions] shape-outside on floats for rounded rectangle shapes
https://bugs.webkit.org/show_bug.cgi?id=100299

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-03-14
Reviewed by Dirk Schulze.

Adding tests for rounded rectangles. The code already supports them,
but that was more of a happy accident. These tests makes it more
likely to stay that way.

  • fast/exclusions/resources/rounded-rectangle.js:

(xOutset): Function to determine the offset for the outside shape.
(generateShapeOutsideOnFloat): Generate a shape outside on a float.
(generateSimulatedShapeOutsideOnFloat): Simulate a shape outside on a

float using a large number of smaller floats.

  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-expected.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle.html: Added.
2:05 PM Changeset in webkit [145846] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

[WebKit2] Only preprocess sandbox profiles if we're building for the OS X SDK
https://bugs.webkit.org/show_bug.cgi?id=112330

Reviewed by David Kilzer.

We shouldn't preprocess sandbox profiles just because the computer
we're building on is a Mac. We should only do it if we're actually
building for the OS X SDK.

  • DerivedSources.make: Check if $PLATFORM_NAME is macosx rather than if

$OS is MACOS.

1:56 PM Changeset in webkit [145845] by weinig@apple.com
  • 10 edits in trunk/Source/WebKit2

Support private browsing on a per-page basis
<rdar://problem/11969491>

Reviewed by Timothy Horton.

Adds WKPageSetOverridePrivateBrowsingEnabled and WKPageGetOverridePrivateBrowsingEnabled.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetOverridePrivateBrowsingEnabled):
(WKPageGetOverridePrivateBrowsingEnabled):

  • UIProcess/API/C/WKPagePrivate.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::creationParameters):
(WebKit::WebPageProxy::setOverridePrivateBrowsingEnabled):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::overridePrivateBrowsingEnabled):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::updatePreferences):
(WebKit::WebPage::setOverridePrivateBrowsingEnabled):

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

Pipe through.

1:49 PM Changeset in webkit [145844] by commit-queue@webkit.org
  • 8 edits
    4 adds in trunk

[chromium] Short scrollbar has empty track rect even when buttons have no size.
https://bugs.webkit.org/show_bug.cgi?id=102580

Patch by Robert Flack <flackr@chromium.org> on 2013-03-14
Reviewed by James Robinson.

When computing the scrollbar track rect, don't assume the button's height is the track width.

Source/WebCore:

Test: platform/chromium/scrollbars/short-scrollbar.html
Note however that this doesn't expose the bug on any tested platforms and mock scrollbars
don't use ScrollbarThemeChromium.cpp. Manually running this test on linux chromiumos will
show the now present scrollbar track and thumb.

  • platform/chromium/ScrollbarThemeChromium.cpp:

(WebCore::ScrollbarThemeChromium::trackRect):

LayoutTests:

  • platform/chromium-linux/fast/forms/basic-textareas-expected.png:
  • platform/chromium-linux/fast/forms/basic-textareas-quirks-expected.png:
  • platform/chromium-linux/fast/overflow/overflow-x-y-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/platform/chromium/scrollbars/short-scrollbar-expected.png: Added.
  • platform/chromium/scrollbars/short-scrollbar-expected.txt: Added.
  • platform/chromium/scrollbars/short-scrollbar.html: Added.
1:29 PM Changeset in webkit [145843] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Show syntax highlight for application/javascript in Resource Preview tab
https://bugs.webkit.org/show_bug.cgi?id=112355

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

No new tests.

Return canonical mimeType in requestContent method of
NetworkRequest.js

  • inspector/front-end/NetworkRequest.js:

(WebInspector.NetworkRequest.prototype.requestContent):

1:14 PM Changeset in webkit [145842] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Objective-C API: Nested dictionaries are not converted properly in the Objective-C binding
https://bugs.webkit.org/show_bug.cgi?id=112377

Reviewed by Oliver Hunt.

Accidental reassignment of the root task in the container conversion logic was causing the last
array or dictionary processed to be returned in the case of nested containers.

  • API/JSValue.mm:

(containerValueToObject):

  • API/tests/testapi.mm:
1:08 PM Changeset in webkit [145841] by commit-queue@webkit.org
  • 12 edits in trunk

[EFL] Use CROSS_PLATFORM_CONTEXT_MENU
https://bugs.webkit.org/show_bug.cgi?id=111877

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2013-03-14
Reviewed by Caio Marcelo de Oliveira Filho.

.:

  • Source/cmake/OptionsEfl.cmake: add -DWTF_USE_CROSS_PLATFORM_CONTEXT_MENUS=1

Source/WebCore:

Now EFL uses the CROSS_PLATFORM_CONTEXT_MENUS
USE flag. This flag provides a full cross-platform
representation of a ContextMenu and a ContextMenuItem.
The embedder can then decide how to show this and neither
WebCore nor WebCore/platform need to know any platform
specific code about the menus, even though they could.

No new tests needed, no behavior changes.

  • platform/ContextMenu.h:

(ContextMenu):

  • platform/ContextMenuItem.h:

(WebCore):

  • platform/PlatformMenuDescription.h:

(WebCore):

  • platform/efl/ContextMenuEfl.cpp:

(WebCore::ContextMenu::ContextMenu):
(WebCore::ContextMenu::getContextMenuItems):
(WebCore::ContextMenu::createPlatformContextMenuFromItems):
(WebCore::ContextMenu::platformContextMenu):

  • platform/efl/ContextMenuItemEfl.cpp:

(WebCore::ContextMenuItem::platformContextMenuItem):

Source/WebKit/efl:

Adjust ContextMenuClient to use the CROSS_PLATFORM_CONTEXT_MENUS USE flag
by implementing customizeMenu() instead of getCustomMenuFromDefaultItems()
and by calling coreMenu->items() instead of coreMenu->platformDescription().

  • WebCoreSupport/ContextMenuClientEfl.cpp:

(WebCore::ContextMenuClientEfl::customizeMenu):

  • WebCoreSupport/ContextMenuClientEfl.h:

(ContextMenuClientEfl):

  • ewk/ewk_contextmenu.cpp:

(ewk_context_menu_new):

1:04 PM Changeset in webkit [145840] by jchaffraix@webkit.org
  • 4 edits in trunk/Source/WebCore

[CSS Grid Layout] resolveContentBasedTrackSizingFunctions should iterate over the grid items not the grid tracks
https://bugs.webkit.org/show_bug.cgi?id=112299

Reviewed by Tony Chang.

Our initial implementation would iterate over the grid tracks. This was equivalent as no items were spanning but
once grid items spans, they start to contribute to several grid tracks differently. This change aligns our code
with what the specification does.

One upside of doing a grid items' iteration is that the complexity should be better in all cases as we don't do
a full grid walking (which is potentially quadratic), only some extra grid tracks' iteration (which are linear).

Refactoring, there should be no change in behavior.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computedUsedBreadthOfGridTracks):
Moved the |availableLogicalSpace| update into resolveContentBasedTrackSizingFunctions. This simplifies and consolidate our handling.

(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
Updated the core loop to iterator over grid items and not grid tracks. This idea is that now resolveContentBasedTrackSizingFunctionsForItems
uses a filtering function to only process the appropriate grid tracks.

(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
Updated to filter the grid tracks here (this matches the |TracksForGrowth| spec logic that is merely a filtering function).

  • rendering/RenderGrid.h:

Added a new typedef and updated resolveContentBasedTrackSizingFunctionsForItems to use it.

  • rendering/style/GridTrackSize.h:

(WebCore::GridTrackSize::hasMinOrMaxContentMinTrackBreadth):
(WebCore::GridTrackSize::hasMaxContentMinTrackBreadth):
(WebCore::GridTrackSize::hasMinOrMaxContentMaxTrackBreadth):
(WebCore::GridTrackSize::hasMaxContentMaxTrackBreadth):
Added the following filtering function, which matches the values from |TracksForGrowth| in the specification.

12:55 PM Changeset in webkit [145839] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0

Unreviewed. Pre-release version bump.

  • Source/autotools/Versions.m4: Bump version to 1.11.92 for people

already using the webkit-2.0 branch.

12:42 PM Changeset in webkit [145838] by fpizlo@apple.com
  • 24 edits
    9 adds in trunk

JSObject fast by-string access optimizations should work even on the prototype chain, and even when the result is undefined
https://bugs.webkit.org/show_bug.cgi?id=112233

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

Extended the existing fast access path for String keys to work over the entire prototype chain,
not just the self access case. This will fail as soon as it sees an object that intercepts
getOwnPropertySlot, so this patch also ensures that ObjectPrototype does not fall into that
category. This is accomplished by making ObjectPrototype eagerly reify all of its properties.
This is safe for ObjectPrototype because it's so common and we expect all of its properties to
be reified for any interesting programs anyway. A new idiom for adding native functions to
prototypes is introduced, which ought to work well for any other prototypes that we wish to do
this conversion for.

This is a >60% speed-up in the case that you frequently do by-string lookups that "miss", i.e.
they don't turn up anything.

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • dfg/DFGOperations.cpp:
  • interpreter/CallFrame.h:

(JSC::ExecState::objectConstructorTable):

  • jit/JITStubs.cpp:

(JSC::getByVal):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::getByVal):

  • runtime/CommonIdentifiers.h:
  • runtime/JSCell.cpp:

(JSC::JSCell::getByStringSlow):
(JSC):

  • runtime/JSCell.h:

(JSCell):

  • runtime/JSCellInlines.h:

(JSC):
(JSC::JSCell::getByStringAndKey):
(JSC::JSCell::getByString):

  • runtime/JSGlobalData.cpp:

(JSC):
(JSC::JSGlobalData::JSGlobalData):
(JSC::JSGlobalData::~JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/JSObject.cpp:

(JSC::JSObject::putDirectNativeFunction):
(JSC):

  • runtime/JSObject.h:

(JSObject):
(JSC):

  • runtime/Lookup.cpp:

(JSC::setUpStaticFunctionSlot):

  • runtime/ObjectPrototype.cpp:

(JSC):
(JSC::ObjectPrototype::finishCreation):
(JSC::ObjectPrototype::create):

  • runtime/ObjectPrototype.h:

(ObjectPrototype):

  • runtime/PropertyMapHashTable.h:

(JSC::PropertyTable::findWithString):

  • runtime/Structure.h:

(Structure):

  • runtime/StructureInlines.h:

(JSC::Structure::get):
(JSC):

LayoutTests:

Reviewed by Oliver Hunt.

  • fast/js/regress/script-tests/string-lookup-hit-identifier.js: Added.

(result):

  • fast/js/regress/script-tests/string-lookup-hit.js: Added.

(result):

  • fast/js/regress/script-tests/string-lookup-miss.js: Added.

(result):

  • fast/js/regress/string-lookup-hit-expected.txt: Added.
  • fast/js/regress/string-lookup-hit-identifier-expected.txt: Added.
  • fast/js/regress/string-lookup-hit-identifier.html: Added.
  • fast/js/regress/string-lookup-hit.html: Added.
  • fast/js/regress/string-lookup-miss-expected.txt: Added.
  • fast/js/regress/string-lookup-miss.html: Added.
12:35 PM Changeset in webkit [145837] by Carlos Garcia Campos
  • 1 edit
    1 add in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Unreviewed build fix. Add missing file.

  • UIProcess/API/gtk/WebKitForwardDeclarations.h: Added.
12:18 PM Changeset in webkit [145836] by Carlos Garcia Campos
  • 12 edits
    1 delete in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Split WebKitDefines.h in two files.

Reviewed by Gustavo Noronha Silva.

The WebKitDefines.h header has been split moving the forward
declarations specific to the UI process API to a new file
WebKitForwardDeclarations.h. This way we can share the
WebKitDefines.h header and remove the WebKitWebExtensionDefines.h
header used in the web extensions API.

  • GNUmakefile.list.am:
  • UIProcess/API/gtk/WebKitContextMenu.h:
  • UIProcess/API/gtk/WebKitContextMenuItem.h:
  • UIProcess/API/gtk/WebKitDefines.h:
  • UIProcess/API/gtk/WebKitDownload.h:
  • UIProcess/API/gtk/WebKitFindController.h:
  • UIProcess/API/gtk/WebKitPrintOperation.h:
  • UIProcess/API/gtk/WebKitURISchemeRequest.h:
  • UIProcess/API/gtk/WebKitWebView.h:
  • WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.h:
  • WebProcess/InjectedBundle/API/gtk/WebKitWebExtensionDefines.h: Removed.
  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h:
12:13 PM Changeset in webkit [145835] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r188004. Requested by
"Dana Jansens" <danakj@chromium.org> via sheriffbot.

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

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

[BlackBerry] Gradient: don't use the default setPlatformGradientSpaceTransform()
https://bugs.webkit.org/show_bug.cgi?id=112246

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-14
Reviewed by Xan Lopez.

BlackBerry has its own implementation.

  • platform/graphics/Gradient.cpp:

(WebCore):

11:52 AM Changeset in webkit [145833] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/qt

[Qt][WK1] REGRESSION(r145784): Blend tests are failing
https://bugs.webkit.org/show_bug.cgi?id=112333

Patch by Rik Cabanier <cabanier@adobe.com> on 2013-03-14
Reviewed by Ryosuke Niwa.

Added code to passed compositing prefence to WebCore.

  • Api/qwebsettings.cpp:

(QWebSettingsPrivate::apply):
(QWebSettings::QWebSettings):

  • Api/qwebsettings.h:
11:38 AM Changeset in webkit [145832] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed expectations updates for a couple of failing tests.

  • platform/chromium/TestExpectations:
11:37 AM Changeset in webkit [145831] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[GStreamer] simulateAudioInterruption needs to be guarded by ENABLE(VIDEO)"
https://bugs.webkit.org/show_bug.cgi?id=112358

Guarded with ENABLE(VIDEO) to prevent problems when it is not
enabled.

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-03-14
Reviewed by Philippe Normand.

11:32 AM Changeset in webkit [145830] by fmalita@chromium.org
  • 15 edits in trunk/Source/WebCore

Tighten up the type bounds for SVGPropertyInfo callback parameters
https://bugs.webkit.org/show_bug.cgi?id=111786

Reviewed by Philip Rogers.

Update SVGPropertyInfo's callbacks to pass SVGElement* parameters instead of void*. This
allows us to perform some ASSERT-based type checking before downcasting in implementors.

To avoid adding virtual methods unused in release builds to the base class (and overrides
in descendants), for subtypes lacking polymorphic type markers (isXXX()) the check is
performed using hasTagName() instead.

The patch is also removing the lookupOrCreateWrapperForAnimatedProperty() SVGPropertyInfo
callback for SVGViewSpec properties, because

a) it doesn't appear to be reachable (SVGViewSpec doesn't have a backing element and
thus cannot have an associated animator)

b) it interferes with the parameter specialization described above (SVGViewSpec does not
inherit from SVGElement)

No new tests, refactoring only.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::synchronizeRequiredFeatures):
(WebCore::SVGElement::synchronizeRequiredExtensions):
(WebCore::SVGElement::synchronizeSystemLanguage):

  • svg/SVGElement.h:

(SVGElement):

  • svg/SVGMarkerElement.cpp:

(WebCore::SVGMarkerElement::synchronizeOrientType):
(WebCore::SVGMarkerElement::lookupOrCreateOrientTypeWrapper):

  • svg/SVGMarkerElement.h:

(SVGMarkerElement):
(WebCore::toSVGMarkerElement):
(WebCore):

  • svg/SVGPathElement.cpp:

(WebCore::SVGPathElement::lookupOrCreateDWrapper):
(WebCore::SVGPathElement::synchronizeD):

  • svg/SVGPathElement.h:

(SVGPathElement):
(WebCore::toSVGPathElement):
(WebCore):

  • svg/SVGPolyElement.cpp:

(WebCore::SVGPolyElement::synchronizePoints):
(WebCore::SVGPolyElement::lookupOrCreatePointsWrapper):

  • svg/SVGPolyElement.h:

(SVGPolyElement):
(WebCore::toSVGPolyElement):
(WebCore):

  • svg/SVGTextContentElement.cpp:

(WebCore::SVGTextContentElement::synchronizeTextLength):
(WebCore::SVGTextContentElement::lookupOrCreateTextLengthWrapper):

  • svg/SVGTextContentElement.h:

(SVGTextContentElement):
(WebCore::toSVGTextContentElement):
(WebCore):
Change SVGPropertyInfo callback params to SVGElement* and replace static casts with
conversion wrappers. Implement conversion wrappers where needed.

  • svg/SVGViewSpec.cpp:

(WebCore::SVGViewSpec::viewBoxPropertyInfo):
(WebCore::SVGViewSpec::preserveAspectRatioPropertyInfo):
(WebCore::SVGViewSpec::transformPropertyInfo):
(WebCore::SVGViewSpec::lookupOrCreateViewBoxWrapper):
(WebCore::SVGViewSpec::lookupOrCreatePreserveAspectRatioWrapper):
(WebCore::SVGViewSpec::lookupOrCreateTransformWrapper):

  • svg/SVGViewSpec.h:

(SVGViewSpec):
Remove SVGPropertyInfo-based lookupOrCreate* callbacks and updated the methods' parameters
to SVGViewSpec*. Remove now-unneeded casts.

  • svg/properties/SVGAnimatedPropertyMacros.h:

(WebCore):

  • svg/properties/SVGPropertyInfo.h:

(WebCore):
(SVGPropertyInfo):
Update callback declarations.

11:20 AM Changeset in webkit [145829] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Add tools/protoc_wrapper to directories pulled in Chromium-in-WebKit configuration
https://bugs.webkit.org/show_bug.cgi?id=112363

Patch by James Robinson <jamesr@chromium.org> on 2013-03-14
Reviewed by Kenneth Russell.

Chromium r187704 added a reference to this script to src/gpu/gpu.gyp, which we pull in the Chromium-in-WebKit
configuration. This adds the script to DEPS so we can roll past that rev.

  • DEPS:
10:40 AM Changeset in webkit [145828] by fpizlo@apple.com
  • 5 edits
    3 adds in trunk

DFG bytecode parser is too aggressive about getting rid of GetLocals on captured variables
https://bugs.webkit.org/show_bug.cgi?id=112287
<rdar://problem/13342340>

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::finalizeUnconditionally):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getLocal):

LayoutTests:

  • fast/js/dfg-captured-var-get-local-expected.txt: Added.
  • fast/js/dfg-captured-var-get-local.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-captured-var-get-local.js: Added.

(foo):

10:38 AM Changeset in webkit [145827] by commit-queue@webkit.org
  • 11 edits in trunk/Source

Move platform-specific typedefs to PlatformMenuDescription.h
https://bugs.webkit.org/show_bug.cgi?id=111876

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2013-03-14
Reviewed by Caio Marcelo de Oliveira Filho.

Source/WebCore:

Cross platform Context Menu platform-specific typedefs fit better
in PlatformMenuDescription.h and should not be part of the classes
ContextMenu and ContextMenuItem. We have also renamed them to
PlatformContextMenu and PlatformContextMenuItem instead of NativeMenu
and NativeMenuItem respectively.

No new tests needed since no behavior has changed.

  • platform/ContextMenu.h:

(ContextMenu):

  • platform/ContextMenuItem.h:

(ContextMenuItem):

  • platform/PlatformMenuDescription.h:

(WebCore):

  • platform/efl/ContextMenuEfl.cpp:

(WebCore::ContextMenu::createPlatformContextMenuFromItems):
(WebCore::ContextMenu::platformContextMenu):

  • platform/efl/ContextMenuItemEfl.cpp:

(WebCore::ContextMenuItem::platformContextMenuItem):

  • platform/win/ContextMenuItemWin.cpp:

(WebCore):
(WebCore::ContextMenuItem::platformContextMenuItem):

  • platform/win/ContextMenuWin.cpp:

(WebCore::ContextMenu::createPlatformContextMenuFromItems):
(WebCore::ContextMenu::platformContextMenu):

Source/WebKit/win:

Rename NativeMenuItem to PlatformContextMenuItem and the getter
function call.

  • WebCoreSupport/WebContextMenuClient.cpp:

(WebContextMenuClient::customizeMenu):
(WebContextMenuClient::contextMenuItemSelected):

  • WebView.cpp:

(WebView::handleContextMenuEvent):

10:27 AM Changeset in webkit [145826] by jer.noble@apple.com
  • 18 edits in trunk/Source/WebCore

Crash in DumpRenderTree at com.apple.WebCore: WebCore::CaptionUserPreferences::captionPreferencesChanged + 185
https://bugs.webkit.org/show_bug.cgi?id=112051

Reviewed by Eric Carlson.

No new tests; fixes a crash during media/video-controls-captions-trackmenu.html.

Instead of relying on a registration system which can fail when an element's document does not have a page,
Elements will register for captionPreferencesChanged() notifications directly with their owning Document.
CaptionUserPreferences, in turn, will notify all Documents in its PageGroup, rather than only directly
registered listeners.

  • dom/Document.cpp:

(WebCore::Document::registerForCaptionPreferencesChangedCallbacks): Added. Notify the CaptionUserPreferences that someone

is interested in captionPreferencesChanged notfications.

(WebCore::Document::unregisterForCaptionPreferencesChangedCallbacks): Added.
(WebCore::Document::captionPreferencesChanged): Added. Pass to all registered elements.

  • dom/Document.h:
  • dom/Element.h:

(WebCore::Element::captionPreferencesChanged): Added. Empty; intended

to be overridden by subclasses.

  • history/CachedPage.cpp:

(WebCore::CachedPage::CachedPage): Initialize m_needsCaptionPreferenceChanged member.
(WebCore::CachedPage::restore): Call captionPreferencesChanged() if necessary.

  • history/CachedPage.h:

(WebCore::CachedPage::markForCaptionPreferencesChanged): Set the m_needsCaptionPreferenceChanged member.

  • history/PageCache.cpp:

(WebCore::PageCache::markPagesForCaptionPreferencesChanged): Pass to every CachedPage.

  • history/PageCache.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Register with the Document.
(WebCore::HTMLMediaElement::~HTMLMediaElement): Unregister with same.
(WebCore::HTMLMediaElement::attach): Remove previous registration call.

  • html/HTMLMediaElement.h:
  • page/CaptionUserPreferences.cpp:

(WebCore::CaptionUserPreferences::captionPreferencesChanged): Pass to the

PageGroup.

  • page/CaptionUserPreferences.h:

(WebCore::CaptionUserPreferences::setInterestedInCaptionPreferenceChanges):

Empty; intended to be overridden by subclasses.

  • page/CaptionUserPreferencesMac.h:
  • page/CaptionUserPreferencesMac.mm:

(WebCore::CaptionUserPreferencesMac::setInterestedInCaptionPreferenceChanges):

Renamed from registerForPreferencesChangedCallbacks().

(WebCore::CaptionUserPreferencesMac::captionPreferencesChanged):

Replace call to havePreferenceChangeListeners() with m_listeningForPreferenceChanges.

  • page/Page.cpp:

(WebCore::Page::captionPreferencesChanged):

Pass to every contained Document.

  • page/Page.h:
  • page/CaptionUserPreferences.cpp:

(WebCore::CaptionUserPreferences::captionPreferencesChanged): Pass to the PageGroup.

  • page/CaptionUserPreferences.h:
  • page/PageGroup.cpp:

(WebCore::PageGroup::captionPreferencesChanged): Pass to every page, as well as pages in the PageCache.

  • page/PageGroup.h:
10:11 AM Changeset in webkit [145825] by tdanderson@chromium.org
  • 1 edit in branches/chromium/1410/LayoutTests/platform/chromium/TestExpectations

Merge 144700 "Unreviewed gardening."

Just merged https://codereview.chromium.org/12817006/ into the 26 milestone. I am also
merging this in order to suppress two test failures on chromium-mac. These tests are
no cause for concern (since chromium-mac does not use the scrolling code I have
changed) and these will be given new baselines in a future milestone. See
https://code.google.com/p/chromium/issues/detail?id=174255

Unreviewed gardening.

  • platform/chromium/TestExpectations: touch-gesture-noscroll-body-* are failing on mac.

TBR=tdanderson@chromium.org
Review URL: https://codereview.chromium.org/12870005

10:08 AM Changeset in webkit [145824] by dgrogan@chromium.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: Histogram leveldb open errors.
https://bugs.webkit.org/show_bug.cgi?id=112307

Reviewed by Tony Chang.

No new tests, I don't know if there's a good way to test histograms.

  • platform/leveldb/LevelDBDatabase.cpp:

(WebCore::LevelDBDatabase::open):

10:06 AM Changeset in webkit [145823] by caseq@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed flakiness fix following r145727: filter out coalescing records while dumping timeline record structure.

  • inspector/timeline/timeline-receive-response-event.html:
10:01 AM Changeset in webkit [145822] by robert@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r145305) Performance: 1.3% mac-release-10.6-webkit-latest/intl2/times/t change after rev 145300
https://bugs.webkit.org/show_bug.cgi?id=112125

Reviewed by Julien Chaffraix.

When detecting cases where a loaded image may need to move up into the padding created by the row's baseline
we don't need to do anything if the row doesn't have a baseline yet.

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::layout):

9:55 AM Changeset in webkit [145821] by tdanderson@chromium.org
  • 12 edits
    12 copies in branches/chromium/1410

Merge 144519 "EventHandler::handleGestureScrollUpdate() should i..."

EventHandler::handleGestureScrollUpdate() should invoke the user-generated scroll routines
so its behavior matches other user-initiated scrolls
https://bugs.webkit.org/show_bug.cgi?id=109769

Reviewed by James Robinson.

Source/WebCore:

To ensure that the scrolling behavior of GestureScrollUpdate events are consistent with
the scrolling behavior of mousewheel events, use the existing user-generated scroll logic
instead of calling into RenderLayer::scrollByRecursively(). This patch fixes the bug
reported in https://bugs.webkit.org/show_bug.cgi?id=109316, where the example page can
be scrolled using touch but cannot be scrolled using mousewheels.

Note that this patch does not use any of the mousewheel event-handling code.

Tests: fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html

fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html
fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html
fast/events/touch/gesture/touch-gesture-noscroll-body.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::handleGestureScrollBegin):
(WebCore::EventHandler::handleGestureScrollUpdate):
(WebCore::EventHandler::sendScrollEventToView):

By calling this function at the start of handleGestureScrollUpdate() in the case
where |m_scrollGestureHandlingNode| is null, we ensure that the scroll updates
can still scroll the page itself, if possible.

(WebCore):
(WebCore::EventHandler::clearGestureScrollNodes):

  • page/EventHandler.h:

(EventHandler):

  • platform/PlatformWheelEvent.h:

(WebCore::PlatformWheelEvent::setHasPreciseScrollingDeltas):

Source/WebKit/chromium:

Clear the nodes corresponding to a fling scroll event when the event ends.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::updateAnimations):

LayoutTests:

Four new layout tests have been added and touch-gesture-scroll-page.html has been
modified to demonstrate that this patch fixes two existing bugs. See the inline
comments below for details.

Because I am now using the existing user-generated scroll logic, the delta for a single
GestureScrollUpdate event will not be propagated to the parent of the targeted node
unless the targeted node has no remaining scrollable area. So the changes to the
existing layout tests have been made to ensure that the targeted node has been fully
scrolled before subsequent GestureScrollUpdate events will scroll the parent(s) of
the targeted node.

I have also removed the function recordScroll() from the existing layout tests
because this function already exists in the included file resources/gesture-helpers.js.

  • fast/events/touch/gesture/touch-gesture-noscroll-body-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-propagated-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
  • fast/events/touch/gesture/touch-gesture-noscroll-body.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
  • fast/events/touch/gesture/touch-gesture-scroll-div-not-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-div-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-div-twice-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-iframe-not-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-iframe-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-page-not-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-page-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-page.html:

I modified this layout test in order to add test coverage for another bug
which is fixed by this patch: if the hit test performed on a GestureScrollBegin
does not target a specific node, the subsequent GestureScrollUpdate events should
still attempt to scroll the page itself. This is consistent with how mousewheel
events behave.

  • platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-expected.txt: Added.
  • platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-propagated-expected.txt: Added.
  • platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden-expected.txt: Added.
  • platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden-expected.txt: Added.

These four new layout tests verify that a non-scrollable body will not scroll,
as reported in https://bugs.webkit.org/show_bug.cgi?id=109316.

TBR=tdanderson@chromium.org
Review URL: https://codereview.chromium.org/12817006

9:28 AM Changeset in webkit [145820] by beidson@apple.com
  • 12 edits in trunk/Source/WebCore

Add a mode to ResourceLoader that takes SharedBuffers instead of raw pointers and lengths.
<rdar://problem/13416953> and https://bugs.webkit.org/show_bug.cgi?id=112310

Reviewed by Andy Estes.

No new tests (No independently testable change in behavior).

Many of the tested platforms deliver data buffers to their ResourceHandles from objects
that encapsulate a data buffer such as NSData (Mac), CFDataRef (CF), or QByteArray (qt).

If those platforms also augmented SharedBuffer to wrap their native object (which Mac/CF do)
and there existed ResourceLoader callbacks to take that SharedBuffer instead of char* + length,
then many resource loads could avoid a useless copy.

At least on Mac, there are some extremely important behind-the-scenes optimizations for NS/CFData
that will be a more important win than simply avoiding a copy.

This patch adds that SharedBuffer-based callback with the hope that all platforms could find a
way to use a buffer-encapsulating object going forward, and we could therefore deprecate the
char* + length version of didReceiveData.

  • platform/network/ResourceHandleClient.h:

(WebCore::ResourceHandleClient::didReceiveBuffer): Add a didReceiveBuffer callback that takes

a SharedBuffer object. The default implementation passes raw bytes + length to didReceiveData.

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::addDataOrBuffer): Replacing addData(), optionally adding the data from

either a data+length or SharedBuffer

(WebCore::ResourceLoader::didReceiveData): Pipe to didReceiveDataOrBuffer.
(WebCore::ResourceLoader::didReceiveBuffer): Pipe to didReceiveDataOrBuffer.
(WebCore::ResourceLoader::didReceiveDataOrBuffer): Single chokepoint for receiving data.

  • loader/ResourceLoader.h: Add OVERRIDE to all of the ResourceHandleClient methods to help catch future mistakes. Remove "virtual" from methods that didn't need it. Make "addData" into "addDataOrBuffer" and make it private.
  • loader/NetscapePlugInStreamLoader.cpp:

(WebCore::NetscapePlugInStreamLoader::didReceiveData): Pipe to didReceiveDataOrBuffer.
(WebCore::NetscapePlugInStreamLoader::didReceiveBuffer): Pipe to didReceiveDataOrBuffer.
(WebCore::NetscapePlugInStreamLoader::didReceiveDataOrBuffer): Single chokepoint for receiving data.

  • loader/NetscapePlugInStreamLoader.h:
  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveData): Pipe to didReceiveDataOrBuffer.
(WebCore::SubresourceLoader::didReceiveBuffer): Pipe to didReceiveDataOrBuffer.
(WebCore::SubresourceLoader::didReceiveDataOrBuffer): Single chokepoint for receiving data. Also,

rely on ResourceLoader's base implementation for notifying the ResourceLoadNotifier.

  • loader/SubresourceLoader.h:
  • loader/ResourceBuffer.cpp:

(WebCore::ResourceBuffer::append): Add a mode that appends a SharedBuffer.

  • loader/ResourceBuffer.h:
  • platform/cf/SharedBufferCF.cpp:

(WebCore::SharedBuffer::maybeTransferPlatformData): Fix a bug where appending data to a CFData-backed

SharedBuffer would re-enter maybeTransferPlatformData and blow out the stack.

  • platform/network/mac/ResourceHandleMac.mm:

(-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]): Send a wrapped NSData

to didReceiveBuffer() instead of sending its char* and length to didReceiveData()

9:14 AM Changeset in webkit [145819] by yurys@chromium.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: nuke bottom up CPU profile calculation on backend
https://bugs.webkit.org/show_bug.cgi?id=112351

Reviewed by Pavel Feldman.

Removed code that builds bottom-up CPU profile on the inspector
backend. Bottom-up view is already built on the front-end from
the top-down profile data.

  • bindings/js/ScriptProfile.cpp:
  • bindings/js/ScriptProfile.h:

(ScriptProfile):

  • bindings/v8/ScriptProfile.cpp:

(WebCore::ScriptProfile::buildInspectorObjectForHead):

  • bindings/v8/ScriptProfile.h:

(ScriptProfile):

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

(WebCore::InspectorProfilerAgent::getCPUProfile):

9:08 AM Changeset in webkit [145818] by inferno@chromium.org
  • 88 edits in trunk/Source

Replace static_casts with to* helper functions.
https://bugs.webkit.org/show_bug.cgi?id=112296

Reviewed by Kentaro Hara.

to* helper functions are preferred over static_cast calls since they
help to catch bad casts easily on the testing infrastructure.

Source/WebCore:

  • accessibility/AXObjectCache.cpp:

(WebCore::nodeHasRole):

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::hasAttribute):
(WebCore::AccessibilityObject::getAttribute):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::anchorElement):
(WebCore::AccessibilityRenderObject::helpText):
(WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
(WebCore::AccessibilityRenderObject::titleUIElement):
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::accessKey):
(WebCore::AccessibilityRenderObject::setElementAttributeValue):
(WebCore::AccessibilityRenderObject::setValue):
(WebCore::AccessibilityRenderObject::activeDescendant):
(WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
(WebCore::AccessibilityRenderObject::correspondingLabelForControlElement):
(WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
(WebCore::AccessibilityRenderObject::setAccessibleName):
(WebCore::AccessibilityRenderObject::stringRoleForMSAA):

  • bindings/gobject/WebKitDOMBinding.cpp:

(WebKit::createWrapper):

  • bindings/js/JSClipboardCustom.cpp:

(WebCore::JSClipboard::setDragImage):

  • bindings/js/JSElementCustom.cpp:

(WebCore::toJSNewlyCreated):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::createWrapperInline):

  • bindings/v8/custom/V8ClipboardCustom.cpp:

(WebCore::V8Clipboard::setDragImageMethodCustom):

  • bindings/v8/custom/V8ElementCustom.cpp:

(WebCore::wrap):

  • bindings/v8/custom/V8NodeCustom.cpp:

(WebCore::wrap):

  • dom/Document.cpp:

(WebCore::Document::importNode):
(WebCore::Document::recalcStyle):
(WebCore::Document::setFocusedNode):
(WebCore::Document::updateFocusAppearanceTimerFired):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):

  • dom/Element.cpp:

(WebCore::Element::offsetParent):
(WebCore::Element::boundsInRootViewSpace):
(WebCore::Element::getBoundingClientRect):
(WebCore::Element::recalcStyle):
(WebCore::Element::computeInheritedLanguage):
(WebCore::Element::lastElementChild):

  • dom/LiveNodeList.cpp:

(WebCore::LiveNodeList::namedItem):

  • dom/Node.cpp:

(WebCore::Node::dumpStatistics):
(WebCore::Node::normalize):
(WebCore::Node::rootEditableElement):
(WebCore::Node::isDefaultNamespace):
(WebCore::Node::ancestorElement):
(WebCore::appendAttributeDesc):

  • dom/Position.cpp:

(WebCore::Position::element):

  • dom/Range.cpp:

(WebCore::Range::getBorderAndTextQuads):

  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::queryFirst):
(WebCore::SelectorDataList::execute):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::recalcStyle):

  • dom/StaticHashSetNodeList.cpp:

(WebCore::StaticHashSetNodeList::namedItem):

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
(WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
(WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
(WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):

  • editing/Editor.cpp:

(WebCore::Editor::applyEditingStyleToBodyElement):

  • editing/FrameSelection.cpp:

(WebCore::removingNodeRemovesPosition):

  • editing/IndentOutdentCommand.cpp:

(WebCore::IndentOutdentCommand::outdentParagraph):

  • editing/MarkupAccumulator.cpp:

(WebCore::MarkupAccumulator::entityMaskForText):
(WebCore::MarkupAccumulator::appendStartMarkup):
(WebCore::MarkupAccumulator::appendEndMarkup):

  • editing/ModifySelectionListLevel.cpp:

(WebCore::IncreaseSelectionListLevelCommand::doApply):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::haveSameTagName):
(WebCore::handleStyleSpansBeforeInsertion):
(WebCore::ReplaceSelectionCommand::doApply):

  • editing/SplitTextNodeContainingElementCommand.cpp:

(WebCore::SplitTextNodeContainingElementCommand::doApply):

  • editing/TextIterator.cpp:

(WebCore::TextIterator::advance):

  • editing/htmlediting.cpp:

(WebCore::unsplittableElementForPosition):
(WebCore::enclosingTableCell):

  • editing/markup.cpp:

(WebCore::StyledMarkupAccumulator::wrapWithNode):
(WebCore::createMarkupInternal):
(WebCore::createFragmentFromMarkupWithContext):
(WebCore::isPlainTextMarkup):
(WebCore::createFragmentFromText):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::insertAdjacentElement):
(WebCore::contextElementForInsertion):

  • html/HTMLFormControlElement.cpp:

(WebCore::focusPostAttach):
(WebCore::updateFromElementCallback):

  • html/HTMLFormElement.cpp:

(WebCore::submitElementFromEvent):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::updateDocNamedItem):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::updateSnapshotInfo):

  • html/HTMLViewSourceDocument.cpp:

(WebCore::HTMLViewSourceDocument::addRange):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::closestFormAncestor):

  • html/shadow/MediaControlElementTypes.cpp:

(WebCore::toParentMediaElement):

  • html/shadow/TextFieldDecorationElement.h:

(WebCore::toTextFieldDecorationElement):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::createDigest):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::didInvalidateStyleAttr):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::inlineStyleSheetText):

  • mathml/MathMLElement.h:

(WebCore::toMathMLElement):

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::populate):

  • page/DragController.cpp:

(WebCore::elementUnderMouse):
(WebCore::DragController::startDrag):

  • page/FocusController.cpp:

(WebCore::FocusController::advanceFocusInDocumentOrder):

  • page/Frame.cpp:

(WebCore::Frame::searchForLabelsBeforeElement):

  • page/FrameView.cpp:

(WebCore::FrameView::updateWidget):

  • page/SpatialNavigation.cpp:

(WebCore::rectToAbsoluteCoordinates):

  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::sendTransitionEvent):

  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::KeyframeAnimation):
(WebCore::KeyframeAnimation::sendAnimationEvent):

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::paintMediaFullscreenButton):
(WebCore::RenderThemeEfl::paintMediaMuteButton):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::buildReferenceFilter):

  • rendering/svg/RenderSVGViewportContainer.cpp:

(WebCore::RenderSVGViewportContainer::calcViewport):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::getElementById):

  • svg/SVGUseElement.cpp:

(WebCore::isDisallowedElement):

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::buildPendingResource):

  • xml/XPathStep.cpp:

(WebCore::XPath::nodeMatchesBasicTest):

  • xml/parser/XMLDocumentParserQt.cpp:

(WebCore::XMLDocumentParser::XMLDocumentParser):
(WebCore::XMLDocumentParser::parseEndElement):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::webContext):
(BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
(BlackBerry::WebKit::WebPage::setNodeFocus):
(BlackBerry::WebKit::WebPagePrivate::adjustFullScreenElementDimensionsIfNeeded):

  • WebCoreSupport/EditorClientBlackBerry.cpp:

(WebCore::EditorClientBlackBerry::shouldSpellCheckFocusedField):
(WebCore::EditorClientBlackBerry::shouldChangeSelectedRange):

  • WebKitSupport/BackingStoreClient.cpp:

(BlackBerry::WebKit::BackingStoreClient::absoluteRect):

  • WebKitSupport/DOMSupport.cpp:

(BlackBerry::WebKit::DOMSupport::toTextControlElement):
(BlackBerry::WebKit::DOMSupport::selectionContainerElement):

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::getRelevantInfoFromCachedHitTest):
(BlackBerry::WebKit::FatFingers::setSuccessfulFatFingersResult):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::focusedNodeChanged):
(BlackBerry::WebKit::InputHandler::willOpenPopupForNode):

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::inputNodeOverridesTouch):

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::elementForTapHighlight):

Source/WebKit/chromium:

  • src/WebDocument.cpp:

(WebKit::WebDocument::images):

  • src/WebElement.cpp:

(WebKit::WebElement::operator PassRefPtr<Element>):

  • src/WebPageSerializer.cpp:

(WebCore::retrieveResourcesForFrame):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setFocus):
(WebKit::WebViewImpl::clearFocusedNode):
(WebKit::WebViewImpl::scrollFocusedNodeIntoView):
(WebKit::WebViewImpl::scrollFocusedNodeIntoRect):

Source/WebKit/gtk:

  • webkit/webkitwebview.cpp:

(webkit_web_view_query_tooltip):

Source/WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.mm:

(applyAppleDictionaryApplicationQuirkNonInlinePart):

  • WebView/WebHTMLRepresentation.mm:

(searchForLabelsBeforeElement):

Source/WebKit/qt:

  • Api/qwebelement.cpp:

(QWebElement::firstChild):
(QWebElement::lastChild):
(QWebElement::nextSibling):
(QWebElement::previousSibling):
(QWebElementCollection::at):
(QWebElementCollection::toList):

  • WebCoreSupport/QWebFrameAdapter.cpp:

(QWebHitTestResultPrivate::elementForInnerNode):

Source/WebKit/win:

  • WebView.cpp:

(WebView::enterFullscreenForNode):

Source/WebKit2:

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::InjectedBundleNodeHandle::elementBounds):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::containsAnyFormElements):

9:02 AM Changeset in webkit [145817] by pfeldman@chromium.org
  • 2 edits in trunk/LayoutTests

Not reviewed: chromium expectations updated.

  • platform/chromium/TestExpectations:
8:50 AM Changeset in webkit [145816] by pfeldman@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: keep deprecated function stubs in InspectorFrontendHost.
https://bugs.webkit.org/show_bug.cgi?id=112347

Reviewed by Vsevolod Vlasov.

In order to open older front-ends in newer hosts, we need to keep stubs
for deprecated functions. Longer term, we need to wrap all calls to InspectorFrontendHost in the front-end.

  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::canInspectWorkers):
(WebCore):
(WebCore::InspectorFrontendHost::hiddenPanels):

  • inspector/InspectorFrontendHost.h:

(InspectorFrontendHost):

  • inspector/InspectorFrontendHost.idl:
8:31 AM Changeset in webkit [145815] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Fixed styles pane visibility when docked to right.
https://bugs.webkit.org/show_bug.cgi?id=112348

Patch by Vladislav Kaznacheev <kaznacheev@chromium.org> on 2013-03-14
Reviewed by Pavel Feldman.

  • inspector/front-end/ElementsPanel.js:

(WebInspector.ElementsPanel.prototype._splitVertically):

  • inspector/front-end/SidebarPane.js:

(WebInspector.SidebarPane.prototype.setExpandCallback):
(WebInspector.SidebarPaneTitle):
(WebInspector.SidebarTabbedPane.prototype.addPane):

8:25 AM Changeset in webkit [145814] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] GraphicsContext3D: implement ImageExtractor::extractImage()
https://bugs.webkit.org/show_bug.cgi?id=112242

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-14
Reviewed by Rob Buis.

In r136282 GraphicsContext3D::getImageData() was refactored in a
new class called ImageExtractor.

This patch implements the necessary changes for the BlackBerry
port, which is still using the old API.

  • platform/graphics/GraphicsContext3D.h:

(ImageExtractor):

  • platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:

(WebCore::GraphicsContext3D::ImageExtractor::~ImageExtractor):
(WebCore):
(WebCore::GraphicsContext3D::ImageExtractor::extractImage):

8:18 AM Changeset in webkit [145813] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] Disable DRT on Windows

Reviewed by Jocelyn Turcotte.

We don't run and maintain DRT on Windows, so let's not try to maintain the build of it.

  • qmake/mkspecs/features/configure.prf:
8:15 AM Changeset in webkit [145812] by commit-queue@webkit.org
  • 14 edits
    6 adds in trunk

[EFL][WK2] Add an API for adding and removing user style sheets from a page group
https://bugs.webkit.org/show_bug.cgi?id=110728

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2013-03-14
Reviewed by Gyuyoung Kim.

Source/WebKit2:

This patch implements EwkPageGroup API to provide the interface of WKPageGroup. Using the EwkPageGroup,
applications may create the views with a page group for the specific identifier. Also, this patch
encapsulates the APIs WKPageGroupAddUserStyleSheet and WKPageGroupRemoveAllUserStyleSheets behind
the EwkPageGroup class for adding and removing user style sheets from a page group. WKArrayCreateWithEinaList()
is added as a generic WKArray creation API from Eina_List.

  • PlatformEfl.cmake:
  • UIProcess/API/C/efl/WKView.cpp:

(createWKView):

  • UIProcess/API/efl/EWebKit2.h:
  • UIProcess/API/efl/EwkView.cpp:

(EwkView::EwkView):
(EwkView::createEvasObject):

  • UIProcess/API/efl/EwkView.h:

(EwkView::ewkPageGroup):
(EwkView):

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_smart_add):
(ewk_view_page_group_get):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:

(EWK2UnitTest::EWK2UnitTestBase::SetUp):

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:

(EWK2UnitTest::EWK2UnitTestBase::setWebView):

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(TEST_F):

  • UIProcess/efl/WebInspectorProxyEfl.cpp:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

Tools:

Use the page group to create the view object.

  • MiniBrowser/efl/main.c:

(window_create):

7:39 AM Changeset in webkit [145811] by commit-queue@webkit.org
  • 13 edits
    2 adds in trunk

[GStreamer] Stopping playback of html5 media when receiving a higher priority audio event needs implementation
https://bugs.webkit.org/show_bug.cgi?id=91611

Source/WebCore:

React to REQUEST_STATE GStreamer message to stop the pipeline when
a higher priority stream is played. When this happens, states are
updated accordingly.

A method was added in the MediaPlayer class and internals to allow
the the test runner to simulate an audio interruption.

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-03-14
Reviewed by Philippe Normand.

Test: media/media-higher-prio-audio-stream.html

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore):
(MediaPlayer):
(WebCore::MediaPlayer::simulateAudioInterruption): New method
delegating an audio interruption to the private backend to
simulate the use-case where an external application needs
exclusive access to the audio device.

  • platform/graphics/MediaPlayerPrivate.h:

(MediaPlayerPrivateInterface):
(WebCore::MediaPlayerPrivateInterface::simulateAudioInterruption):
Added default empty method in the common private header.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore):
(WebCore::MediaPlayerPrivateGStreamer::createAudioSink):
(WebCore::setAudioStreamPropertiesCallback): Hooked to child-added
signal on the audio sink, delegates on setAudioStreamProperties.
(WebCore::MediaPlayerPrivateGStreamer::setAudioStreamProperties):
Sets the audio stream properties.
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
Initializes the new attribute.
(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
Disconnects autoaudiosink signal.
(WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
Changed logging.
(WebCore::MediaPlayerPrivateGStreamer::handleMessage): Reacting to
the REQUEST_STATE message.
(WebCore::MediaPlayerPrivateGStreamer::simulateAudioInterruption):
Added. Injects the REQUEST_STATE message to the pipeline.
(WebCore::MediaPlayerPrivateGStreamer::updateStates): Updating the
playback state if REQUEST_STATE.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

(MediaPlayerPrivateGStreamer): Added new method and attribute.

  • testing/Internals.h:
  • testing/Internals.idl:
  • testing/Internals.cpp:

(WebCore):
(WebCore::Internals::simulateAudioInterruption): Added to call the
method to stop the element because of a higher prio stream at the
tests.

LayoutTests:

Created test, expected result and updated other ports
expectations.

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-03-14
Reviewed by Philippe Normand.

  • media/media-higher-prio-audio-stream-expected.txt: Added.
  • media/media-higher-prio-audio-stream.html: Added.
  • platform/chromium/TestExpectations: Skipped the new test.
  • platform/mac/TestExpectations: Skipped the new test.
  • platform/qt/TestExpectations: Skipped the new test for Mac and

Win.

7:28 AM WebKitGTK/2.0.x edited by Philippe Normand
(diff)
7:04 AM Changeset in webkit [145810] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebCore

[Qt] Add support for tiled shadow blur
https://bugs.webkit.org/show_bug.cgi?id=90082

Reviewed by Noam Rosenthal.

Use the optimized ShadowBlur::drawRectShadow as long as we do not
have a rotating transform. Such a transform would go through the
slow path in ShadowBlur anyway, and would end up using a transformed
TransparencyLayer with an alphaMap which causes scaling artifacts
for us.

Tested by fast/canvas/canvas-scale-fillRect-shadow.html
and fast/canvas/canvas-transforms-fillRect-shadow.html

  • platform/graphics/ShadowBlur.cpp:

(WebCore::ShadowBlur::drawInsetShadowWithTiling):

Handle scaling transforms when shadows ignore transforms.

(WebCore::ShadowBlur::drawRectShadowWithTiling):

Ditto.

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::GraphicsContext::fillRect):

6:59 AM Changeset in webkit [145809] by caseq@chromium.org
  • 8 edits in trunk/Source/WebCore

Web Inspector: do not aggregate non-main thread timeline events, handle them in a generic fashion
https://bugs.webkit.org/show_bug.cgi?id=112172

Reviewed by Vsevolod Vlasov.

  • build nested event trees for non-main thread events similar to how it's done on the main thread;
  • drop aggregation logic for Rasterize events;
  • extract time conversion logic so that it may be reused in TimelineTraceEventProcessor.
  • English.lproj/localizedStrings.js: drive-by: drop duplicate line.
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::TimelineTimeConverter::reset):
(WebCore):
(WebCore::InspectorTimelineAgent::pushGCEventRecords):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::appendRecord):
(WebCore::InspectorTimelineAgent::sendEvent):
(WebCore::InspectorTimelineAgent::timestamp):

  • inspector/InspectorTimelineAgent.h:

(TimelineTimeConverter):
(WebCore::TimelineTimeConverter::TimelineTimeConverter):
(WebCore::TimelineTimeConverter::fromMonotonicallyIncreasingTime):
(WebCore):
(InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::timeConverter):

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createBackgroundRecord):
(WebCore):

  • inspector/TimelineRecordFactory.h:

(TimelineRecordFactory):

  • inspector/TimelineTraceEventProcessor.cpp:

(WebCore::TimelineRecordStack::TimelineRecordStack):
(WebCore):
(WebCore::TimelineRecordStack::addScopedRecord):
(WebCore::TimelineRecordStack::closeScopedRecord):
(WebCore::TimelineRecordStack::addInstantRecord):
(WebCore::TimelineRecordStack::isOpenRecordOfType):
(WebCore::TimelineRecordStack::send):
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::onBeginFrame):
(WebCore::TimelineTraceEventProcessor::onRasterTaskBegin):
(WebCore::TimelineTraceEventProcessor::onRasterTaskEnd):
(WebCore::TimelineTraceEventProcessor::createRecord):

  • inspector/TimelineTraceEventProcessor.h:

(TimelineRecordStack):
(WebCore::TimelineRecordStack::Entry::Entry):
(Entry):
(WebCore::TimelineRecordStack::TimelineRecordStack):
(WebCore):
(WebCore::TimelineTraceEventProcessor::TimelineThreadState::TimelineThreadState):
(TimelineThreadState):
(TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::isNull):
(WebCore::TimelineTraceEventProcessor::threadState):

6:56 AM Changeset in webkit [145808] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Wrong ASSERT in AudioDestinationGstreamer::stop
https://bugs.webkit.org/show_bug.cgi?id=112344

Patch by Xan Lopez <xlopez@igalia.com> on 2013-03-14
Reviewed by Philippe Normand.

Correct erroneous ASSERT, we want both member variables to exist.

  • platform/audio/gstreamer/AudioDestinationGStreamer.cpp:

(WebCore::AudioDestinationGStreamer::stop):

6:36 AM Changeset in webkit [145807] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Flame Chart. Support scroll and zoom with help of mouse wheel.
https://bugs.webkit.org/show_bug.cgi?id=112337

Reviewed by Yury Semikhatsky.

New member variable _xOffset were introduced.

  • inspector/front-end/FlameChart.js:

(WebInspector.FlameChart):
(WebInspector.FlameChart.prototype._onMouseMove):
(WebInspector.FlameChart.prototype._adjustXOffset):
(WebInspector.FlameChart.prototype._adjustXScale):
(WebInspector.FlameChart.prototype._onMouseWheel):
(WebInspector.FlameChart.prototype._coordinatesToNodeIndex):
(WebInspector.FlameChart.prototype.onResize):
(WebInspector.FlameChart.prototype.draw):
(WebInspector.FlameChart.prototype._scheduleUpdate):
(WebInspector.FlameChart.prototype.update):

5:58 AM BadContent edited by zandobersek@gmail.com
Blacklist a spamming account. (diff)
5:29 AM Changeset in webkit [145806] by kbalazs@webkit.org
  • 3 edits in trunk/Source/WebCore

[Texmap] Synchronize layers only if the layer has been changed.
https://bugs.webkit.org/show_bug.cgi?id=112095

Patch by No'am Rosenthal <Noam Rosenthal> on 2013-03-14
Reviewed by Allan Sandfeld Jensen.

A regression was introduced in r144787, causing an infinite IPC commitState/renderNextFrame
loop.
This patch fixes this by making sure we only commit layer states that have actual pending
changes.

No new tests, this is an optimization.

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:

(CoordinatedGraphicsLayerState):
(WebCore::CoordinatedGraphicsLayerState::hasPendingChanges):

4:52 AM Changeset in webkit [145805] by Simon Hausmann
  • 23 edits in trunk

[Qt] Improve the handling of mock geolocation, device orientation and motion clients

Reviewed by Tor Arne Vestbø.

The mock versions of these web facing features should be instantiated when
running in DumpRenderTree only. In order for them to work, no extra Qt modules
such as QtLocation are actually needed.

This patch decouples enabling device orientation/motion and geolocation from
the underlying Qt modules and makes them available in developer builds
(!production_build) and backed by mock backends when running in drt.

So if the Qt 5 modules are available, they'll be used (unless drtRun). For
developers the web facing features are always enabled (although requests will
time out) and the mock backends are enabled inside DRT, allowing for the layout
tests to run with less dependencies.

In addition this also enables the mock device motion client, which was
previously never instantiated.

.:

  • Source/widgetsapi.pri:

Source/WebCore:

  • Target.pri:
  • WebCore.pri:

Source/WebKit:

  • WebKit1.pri:
  • WebKit1.pro:

Source/WebKit/qt:

  • WebCoreSupport/QWebFrameAdapter.cpp:

(QWebFrameAdapter::_q_orientationChanged):

  • WebCoreSupport/QWebFrameAdapter.h:
  • WebCoreSupport/QWebPageAdapter.cpp:

(QWebPageAdapter::initializeWebCorePage):

  • WebCoreSupport/QWebPageAdapter.h:
  • WidgetApi/qwebframe.cpp:

(QWebFrame::QWebFrame):

  • WidgetApi/qwebpage.cpp:

(QWebPage::setFeaturePermission):

Source/WebKit2:

  • Target.pri:
  • UIProcess/qt/WebContextQt.cpp:

(WebKit::WebContext::platformInitializeWebProcess):

  • UIProcess/qt/WebGeolocationProviderQt.cpp:
  • WebKit2.pri:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

Tools:

  • qmake/mkspecs/features/features.prf:
4:46 AM Changeset in webkit [145804] by zeno.albisser@digia.com
  • 4 edits in trunk/Tools

[Qt] Removing no-ops and simple setters/getters from TestRunnerQt
https://bugs.webkit.org/show_bug.cgi?id=112340

Reviewed by Simon Hausmann.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(DumpRenderTree::dump):

Replace shouldDumpBackForwardList() with TestController:dumpBackForwardList().

(DumpRenderTree::dumpApplicationCacheQuota):

  • DumpRenderTree/qt/TestRunnerQt.cpp:

(TestRunnerQt::reset):

  • DumpRenderTree/qt/TestRunnerQt.h:

(TestRunnerQt):

4:26 AM Changeset in webkit [145803] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[TexMap] Painting into area of composited tile not cleared
https://bugs.webkit.org/show_bug.cgi?id=112268

Reviewed by Kenneth Rohde Christiansen.

Clip painting to the area that has been cleared, so we
do not accidentally overpaint other areas.

Can be observed in ManualTests/scrollbars/scrollbars-in-composited-layers.html.

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::BitmapTextureImageBuffer::updateContents):

4:12 AM Changeset in webkit [145802] by commit-queue@webkit.org
  • 64 edits in trunk/Source

[V8] Store main world and non-main world templates separately.
https://bugs.webkit.org/show_bug.cgi?id=111724

Patch by Marja Hölttä <marja@chromium.org> on 2013-03-14
Reviewed by Jochen Eisinger.

This is needed for generating specialized bindings for the main
world (bug 110874).

Source/WebCore:

No new tests (updated existing bindings tests).

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateDomainSafeFunctionGetter):
(GenerateNormalAttrSetter):
(GenerateParametersCheckExpression):
(GenerateParametersCheck):
(GenerateImplementation):
(JSValueToNative):
(CreateCustomSignature):

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

(WebCore::Float64ArrayV8Internal::fooMethod):
(WebCore::ConfigureV8Float64ArrayTemplate):
(WebCore::V8Float64Array::GetTemplate):
(WebCore::V8Float64Array::HasInstance):

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

(V8Float64Array):

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

(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionMethod):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
(WebCore::V8TestActiveDOMObject::GetTemplate):
(WebCore::V8TestActiveDOMObject::HasInstance):

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

(V8TestActiveDOMObject):

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

(WebCore::V8TestCustomNamedGetter::GetTemplate):
(WebCore::V8TestCustomNamedGetter::HasInstance):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.h:

(V8TestCustomNamedGetter):

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

(WebCore::V8TestEventConstructor::GetTemplate):
(WebCore::V8TestEventConstructor::HasInstance):

  • bindings/scripts/test/V8/V8TestEventConstructor.h:

(V8TestEventConstructor):

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

(WebCore::TestEventTargetV8Internal::dispatchEventMethod):
(WebCore::ConfigureV8TestEventTargetTemplate):
(WebCore::V8TestEventTarget::GetTemplate):
(WebCore::V8TestEventTarget::HasInstance):

  • bindings/scripts/test/V8/V8TestEventTarget.h:

(V8TestEventTarget):

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

(WebCore::V8TestException::GetTemplate):
(WebCore::V8TestException::HasInstance):

  • bindings/scripts/test/V8/V8TestException.h:

(V8TestException):

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

(WebCore::TestInterfaceV8Internal::supplementalNodeAttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Method):
(WebCore::ConfigureV8TestInterfaceTemplate):
(WebCore::V8TestInterface::GetTemplate):
(WebCore::V8TestInterface::HasInstance):

  • bindings/scripts/test/V8/V8TestInterface.h:

(V8TestInterface):

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

(WebCore::V8TestMediaQueryListListener::GetTemplate):
(WebCore::V8TestMediaQueryListListener::HasInstance):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.h:

(V8TestMediaQueryListListener):

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

(WebCore::V8TestNamedConstructor::GetTemplate):
(WebCore::V8TestNamedConstructor::HasInstance):

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

(V8TestNamedConstructor):

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

(WebCore::V8TestNode::GetTemplate):
(WebCore::V8TestNode::HasInstance):

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

(V8TestNode):

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

(WebCore::TestObjV8Internal::testObjAttrAttrSetter):
(WebCore::TestObjV8Internal::XMLObjAttrAttrSetter):
(WebCore::TestObjV8Internal::typedArrayAttrAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetter):
(WebCore::TestObjV8Internal::mutablePointAttrSetter):
(WebCore::TestObjV8Internal::immutablePointAttrSetter):
(WebCore::TestObjV8Internal::voidMethodWithArgsMethod):
(WebCore::TestObjV8Internal::longMethodWithArgsMethod):
(WebCore::TestObjV8Internal::objMethodWithArgsMethod):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethod):
(WebCore::TestObjV8Internal::overloadedMethod1Method):
(WebCore::TestObjV8Internal::overloadedMethod2Method):
(WebCore::TestObjV8Internal::overloadedMethod8Method):
(WebCore::TestObjV8Internal::overloadedMethodMethod):
(WebCore::TestObjV8Internal::convert1Method):
(WebCore::TestObjV8Internal::convert2Method):
(WebCore::TestObjV8Internal::convert4Method):
(WebCore::TestObjV8Internal::convert5Method):
(WebCore::TestObjV8Internal::variadicNodeMethodMethod):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::GetTemplate):
(WebCore::V8TestObj::HasInstance):

  • bindings/scripts/test/V8/V8TestObj.h:

(V8TestObj):

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

(WebCore::TestOverloadedConstructorsV8Internal::constructor1):
(WebCore::TestOverloadedConstructorsV8Internal::constructor2):
(WebCore::TestOverloadedConstructorsV8Internal::constructor3):
(WebCore::TestOverloadedConstructorsV8Internal::constructor):
(WebCore::V8TestOverloadedConstructors::GetTemplate):
(WebCore::V8TestOverloadedConstructors::HasInstance):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.h:

(V8TestOverloadedConstructors):

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

(WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
(WebCore::V8TestSerializedScriptValueInterface::HasInstance):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:

(V8TestSerializedScriptValueInterface):

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

(WebCore::TestTypedefsV8Internal::funcMethod):
(WebCore::ConfigureV8TestTypedefsTemplate):
(WebCore::V8TestTypedefs::GetTemplate):
(WebCore::V8TestTypedefs::HasInstance):

  • bindings/scripts/test/V8/V8TestTypedefs.h:

(V8TestTypedefs):

  • bindings/v8/Dictionary.cpp:

(WebCore::Dictionary::get):

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::visitNodeWrappers):

  • bindings/v8/SerializedScriptValue.cpp:
  • bindings/v8/V8AdaptorFunction.cpp:

(WebCore::V8AdaptorFunction::getTemplate):

  • bindings/v8/V8Binding.cpp:

(WebCore::toDOMStringList):
(WebCore::toXPathNSResolver):

  • bindings/v8/V8Binding.h:

(WebCore):
(WebCore::toRefPtrNativeArray):

  • bindings/v8/V8Collection.cpp:

(WebCore::toOptionsCollectionSetter):

  • bindings/v8/V8GCController.cpp:
  • bindings/v8/V8NPObject.cpp:

(WebCore::npObjectInvokeImpl):

  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::reportMemoryUsage):
(WebCore::V8PerIsolateData::hasPrivateTemplate):
(WebCore::V8PerIsolateData::privateTemplate):
(WebCore::V8PerIsolateData::rawTemplate):
(WebCore::V8PerIsolateData::hasInstance):

  • bindings/v8/V8PerIsolateData.h:

(WebCore::V8PerIsolateData::rawTemplateMap):
(V8PerIsolateData):
(WebCore::V8PerIsolateData::templateMap):

  • bindings/v8/V8Utilities.cpp:

(WebCore::extractTransferables):

  • bindings/v8/custom/V8ArrayBufferViewCustom.h:

(WebCore::constructWebGLArray):
(WebCore::setWebGLArrayHelper):

  • bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp:

(WebCore::V8AudioBufferSourceNode::bufferAttrSetterCustom):

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCustom):

  • bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:

(WebCore::toCanvasStyle):

  • bindings/v8/custom/V8ClipboardCustom.cpp:

(WebCore::V8Clipboard::setDragImageMethodCustom):

  • bindings/v8/custom/V8CryptoCustom.cpp:

(WebCore::V8Crypto::getRandomValuesMethodCustom):

  • bindings/v8/custom/V8DOMFormDataCustom.cpp:

(WebCore::V8DOMFormData::constructorCustom):
(WebCore::V8DOMFormData::appendMethodCustom):

  • bindings/v8/custom/V8DataViewCustom.cpp:

(WebCore::V8DataView::constructorCustom):

  • bindings/v8/custom/V8DocumentCustom.cpp:

(WebCore::V8Document::evaluateMethodCustom):

  • bindings/v8/custom/V8HTMLMediaElementCustom.cpp:

(WebCore::V8HTMLMediaElement::controllerAttrSetterCustom):

  • bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:

(WebCore::V8HTMLOptionsCollection::addMethodCustom):

  • bindings/v8/custom/V8HTMLSelectElementCustom.cpp:

(WebCore::removeElement):

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::V8InjectedScriptHost::isHTMLAllCollectionMethodCustom):
(WebCore::V8InjectedScriptHost::typeMethodCustom):
(WebCore::V8InjectedScriptHost::getEventListenersMethodCustom):

  • bindings/v8/custom/V8LocationCustom.cpp:

(WebCore::V8Location::reloadAttrGetterCustom):
(WebCore::V8Location::replaceAttrGetterCustom):
(WebCore::V8Location::assignAttrGetterCustom):

  • bindings/v8/custom/V8NodeCustom.cpp:

(WebCore::V8Node::insertBeforeMethodCustom):
(WebCore::V8Node::replaceChildMethodCustom):
(WebCore::V8Node::removeChildMethodCustom):
(WebCore::V8Node::appendChildMethodCustom):

  • bindings/v8/custom/V8NodeListCustom.cpp:

(WebCore::V8NodeList::opaqueRootForGC):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::toWebGLUniformLocation):
(WebCore::V8WebGLRenderingContext::getAttachedShadersMethodCustom):
(WebCore::V8WebGLRenderingContext::getProgramParameterMethodCustom):
(WebCore::V8WebGLRenderingContext::getShaderParameterMethodCustom):
(WebCore::V8WebGLRenderingContext::getUniformMethodCustom):
(WebCore::vertexAttribAndUniformHelperf):
(WebCore::uniformHelperi):
(WebCore::uniformMatrixHelper):

  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

(WebCore::isDocumentType):
(WebCore::V8XMLHttpRequest::sendMethodCustom):

Source/WebKit/chromium:

  • src/WebArrayBuffer.cpp:

(WebKit::WebArrayBuffer::createFromV8Value):

  • src/WebArrayBufferView.cpp:

(WebKit::WebArrayBufferView::createFromV8Value):

  • src/WebBindings.cpp:

(WebKit::getRangeImpl):
(WebKit::getNodeImpl):
(WebKit::getElementImpl):
(WebKit::getArrayBufferImpl):
(WebKit::getArrayBufferViewImpl):

3:51 AM Changeset in webkit [145801] by mkwst@chromium.org
  • 3 edits in trunk/Source/WebCore

Explicitly send only one report via XSSAuditorDelegate.
https://bugs.webkit.org/show_bug.cgi?id=111964

Reviewed by Adam Barth.

This patch pulls the XSSAuditor report generation out into a separate
function in XSSAuditorDelegate::generateViolationReport, and moves the
call to that function into the "have we already notified folks about
violations on this page?" block. This both clarifies the flow in
XSSAuditorDelegate::didBlockScript, and ensures that only one violation
report will be sent per page, which regressed in r145695.

Existing tests verify that reports are generated and sent correctly.

We have no tests for the latter condition: the XSSAuditor tests
currently verify that a report showed up, but they can't verify that
no report appeared without sitting around for a few more than a few
seconds on every run.

  • html/parser/XSSAuditorDelegate.cpp:

(WebCore::XSSAuditorDelegate::generateViolationReport):

Pull the report generation logic out to this new function.

(WebCore::XSSAuditorDelegate::didBlockScript):

Move the report generation call into the block that ensures it only
executes for the first violation.

3:07 AM Changeset in webkit [145800] by zeno.albisser@digia.com
  • 4 edits in trunk/Tools

[Qt] Port DRT to use TestRunner::dumpAsText()
https://bugs.webkit.org/show_bug.cgi?id=112260

Reviewed by Benjamin Poulain.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::open):
(WebCore::methodNameStringForFailedTest):

Change parameter from type TestRunnerQt* to TestRunner*.

(WebCore::DumpRenderTree::dump):

TestRunnerQt::shouldDumpPixels() always returned true in our case.
Instead we should rely on TestRunner::generatePixelResults().

  • DumpRenderTree/qt/TestRunnerQt.cpp:

(TestRunnerQt::reset):

  • DumpRenderTree/qt/TestRunnerQt.h:

(TestRunnerQt):

2:49 AM Changeset in webkit [145799] by zarvai@inf.u-szeged.hu
  • 3 edits
    1 delete in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk1/TestExpectations: Skip failing tests after r145784.
  • platform/qt-5.0-wk2/fast/repaint/focus-ring-expected.txt: Removed.
  • platform/qt/fast/repaint/focus-ring-expected.txt: Rebaselining after r145708.
2:43 AM Changeset in webkit [145798] by sergio@webkit.org
  • 15 edits
    1 move
    4 adds
    1 delete in trunk

Empty list items after drag&drop in contentEditable divs
https://bugs.webkit.org/show_bug.cgi?id=110610

Reviewed by Ryosuke Niwa.

Source/WebCore:

Perform a cleanup after moving operations. This will mainly prune
extra placeholders left by the editing algorithms. Also do not
leave empty <li> when moving them around inside a list element.

Tests: editing/pasteboard/cleanup-on-move.html

editing/pasteboard/drag-list-item.html

  • editing/MoveSelectionCommand.cpp:

(WebCore::MoveSelectionCommand::doApply): perform
cleanupAfterDeletion().

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::insertAsListItems): do not
insert an empty list item.

  • editing/MoveSelectionCommand.cpp:

(WebCore::MoveSelectionCommand::doApply):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::insertAsListItems):

LayoutTests:

Some placeholders should not be left after performing a cleanup in
move operations, this includes the empty list items generated when
moving around list items inside a list.

I'm also moving drag-list-item.html to editing/pasteboard because
it fits much better there than under editing/selection.

  • editing/pasteboard/cleanup-on-move-expected.txt: Added.
  • editing/pasteboard/cleanup-on-move.html: Added.
  • editing/pasteboard/drag-list-item-expected.txt: Renamed from LayoutTests/editing/selection/drag-list-item-expected.txt.
  • editing/pasteboard/drag-list-item.html: Renamed from LayoutTests/editing/selection/drag-list-item.html.
  • editing/pasteboard/resources/select-and-drag.js: Added.

(selectAndDragToTarget): Selects nodes and drops them after a target node.

  • editing/pasteboard/drag-drop-list-expected.txt: Removed an empty <li>.
  • editing/pasteboard/paste-list-004-expected.txt: Removed 2 empty <li>.
  • editing/pasteboard/paste-list-004.html: Ditto.
  • editing/selection/4895428-1-expected.txt: Removed a <br>.
  • editing/selection/4895428-4-expected.txt: Ditto.
  • fast/events/ondragenter-expected.txt: Removed a blank line.
  • platform/chromium/fast/events/ondragenter-expected.txt: Ditto.
  • platform/efl/TestExpectations: Added cleanup-on-move.html to the skipped list.
  • platform/mac-wk2/TestExpectations: Ditto.
  • platform/qt/TestExpectations: Ditto.
  • platform/win/fast/events/ondragenter-expected.txt: Removed a blank line.
2:25 AM Changeset in webkit [145797] by eric@webkit.org
  • 11 edits
    5 adds in trunk

Threaded HTML Parser should limit speculation to avoid using too much memory
https://bugs.webkit.org/show_bug.cgi?id=112069

Reviewed by Adam Barth.

Source/WebCore:

This is a speculative fix for memory issues seen in:
https://code.google.com/p/chromium/issues/detail?id=180819

This also fixed https://bugs.webkit.org/show_bug.cgi?id=110546
as a side-effect of simplifying the m_currentChunk handling.

We now tell the background html parser every time we start
a chunk on the main thread (instead of end), which greatly
simplified the checkpoint cleanup code from:
https://trac.webkit.org/changeset/145277

The cost for this is now we have more messages going to the
background thread (and postTask acquires a lock to write to the
message queue). Chromium has more advanced (lock-less) primatives
for message posting, which we'll hopefully add to WebKit in
furture patches.

The outstanding chunks limit has not been tuned. But it makes sense that
we should not keeping infinite speculative tokens around for
large documents with slow-to-load scripts.

  • html/parser/BackgroundHTMLInputStream.cpp:

(WebCore::BackgroundHTMLInputStream::BackgroundHTMLInputStream):
(WebCore::BackgroundHTMLInputStream::invalidateCheckpointsBefore):
(WebCore):
(WebCore::BackgroundHTMLInputStream::rewindTo):

  • html/parser/BackgroundHTMLInputStream.h:

(BackgroundHTMLInputStream):
(WebCore::BackgroundHTMLInputStream::outstandingCheckpointCount):
(Checkpoint):
(WebCore::BackgroundHTMLInputStream::Checkpoint::isNull):
(WebCore::BackgroundHTMLInputStream::Checkpoint::clear):

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore):
(WebCore::BackgroundHTMLParser::startedChunkWithCheckpoint):
(WebCore::BackgroundHTMLParser::pumpTokenizer):

  • html/parser/BackgroundHTMLParser.h:

(BackgroundHTMLParser):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::validateSpeculations):
(WebCore::HTMLDocumentParser::discardSpeculationsAndResumeFrom):
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
(WebCore::HTMLDocumentParser::pumpPendingSpeculations):
(WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):

LayoutTests:

Test that this fixes https://bugs.webkit.org/show_bug.cgi?id=110546 for the threaded parser.
Ports using the main-thread parser are expected to fail (ASSERT in Debug).

  • fast/parser/document-write-partial-entity-before-load-expected.txt: Added.
  • fast/parser/document-write-partial-entity-before-load.html: Added.
  • fast/parser/external-script-document-write-expected.txt: Added.
  • fast/parser/external-script-document-write.html: Added.
  • fast/parser/resources/external-script-document-write.js: Added.
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
2:00 AM Changeset in webkit [145796] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Flame Chart. Minor changes for the popover.
https://bugs.webkit.org/show_bug.cgi?id=112331

Reviewed by Yury Semikhatsky.

popover timeout needs to be decreased a bit.
hidePopover call in onMouseMove doesn't necessary.
We have to keep anchor element unmodified if the hovered item didn't changed.

  • inspector/front-end/FlameChart.js:

(WebInspector.FlameChart):
(WebInspector.FlameChart.prototype._onMouseMove):

1:57 AM Changeset in webkit [145795] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Fix detection of Intel Mac OS X platform on Intel Mac 64-bit
https://bugs.webkit.org/show_bug.cgi?id=112312

Patch by Jonathan Liu <net147@gmail.com> on 2013-03-14
Reviewed by Simon Hausmann.

Source/WebCore:

  • platform/gtk/UserAgentGtk.cpp:

(WebCore::platformVersionForUAString):

Source/WebKit/efl:

  • ewk/ewk_settings.cpp:

(_ewk_settings_webkit_os_version_get):

Source/WebKit/wx:

  • WebKitSupport/FrameLoaderClientWx.cpp:

(WebCore::agentOS):

1:38 AM Changeset in webkit [145794] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

Layout Test plugins/plugin-clip-subframe.html is failing
https://bugs.webkit.org/show_bug.cgi?id=111514

Patch by John Bauman <jbauman@chromium.org> on 2013-03-14
Reviewed by Ryosuke Niwa.

Rebaseline test result due to chromium r185729. Also try to force
layout in test to prevent flakiness on win-dbg.

  • platform/chromium-mac/plugins/plugin-clip-subframe-expected.txt:
  • platform/chromium/TestExpectations:
  • plugins/plugin-clip-subframe.html:
1:37 AM Changeset in webkit [145793] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening. Adding a couple of failure expectations for flaky
tests on the debug builder.

  • platform/gtk/TestExpectations:
1:18 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
1:16 AM Changeset in webkit [145792] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] InRegionScrollableArea: fix call to visibleContentRect()
https://bugs.webkit.org/show_bug.cgi?id=112244

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-14
Reviewed by Rob Buis.

Since r143295 visibleContentRect() receives an enum, not a boolean.

  • WebKitSupport/InRegionScrollableArea.cpp:

(BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):

12:50 AM Changeset in webkit [145791] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

[GTK] The style of visited links doesn't change in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=112175

Reviewed by Martin Robinson.

The problem is that visited links were not tracked by the web
process. There's a web process initial parameter to set whether
web process should track visited links or not and it's disabled by
default.

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::platformInitializeWebProcess): Always set
shouldTrackVisitedLinks to true.

12:38 AM Changeset in webkit [145790] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Flame Chart. Rewrite drawing procedure for better performance.
https://bugs.webkit.org/show_bug.cgi?id=112264

Reviewed by Yury Semikhatsky.

I traverses the profile tree in calculateTimelineData and calculates all the sizes and colors.
Later in draw code we lineary pass the array and draw items.
Also we could easily swap to another format of the profile.

  • inspector/front-end/FlameChart.js:

(WebInspector.FlameChart):
(WebInspector.FlameChart.prototype._nodeCount):
(WebInspector.FlameChart.prototype._calculateTimelineData.appendReversedArray):
(WebInspector.FlameChart.prototype._calculateTimelineData):
(WebInspector.FlameChart.prototype._getPopoverAnchor):
(WebInspector.FlameChart.prototype._showPopover):
(WebInspector.FlameChart.prototype._hidePopover):
(WebInspector.FlameChart.prototype._onClick):
(WebInspector.FlameChart.prototype._onMouseMove):
(WebInspector.FlameChart.prototype._coordinatesToNodeIndex):
(WebInspector.FlameChart.prototype.onResize):
(WebInspector.FlameChart.prototype.draw):

12:30 AM Changeset in webkit [145789] by alice.liu@apple.com
  • 17 edits in trunk/Source

Add to HistoryItem a way to know if its underlying CachedPage has expired.
https://bugs.webkit.org/show_bug.cgi?id=110652

Reviewed by Brady Eidson.

Source/WebCore:

  • WebCore.exp.in: Added WebCore::HistoryItem::isInPageCache and hasCachedPageExpired.
  • history/CachedPage.cpp: Add a data member, m_expirationTime, and a function, hasExpired().
  • history/CachedPage.h:
  • history/HistoryItem.cpp:

(WebCore::HistoryItem::hasCachedPageExpired): Added. returns m_cachedPage's expiration state.

  • history/HistoryItem.h:
  • history/PageCache.cpp:

(WebCore::PageCache::get): Address the fixme about not using WebKitBackForwardCacheExpirationIntervalKey.

  • page/Settings.in: Add backForwardCacheExpirationInterval to the automatically generated setters for Settings.

Source/WebKit/mac:

  • History/WebHistoryItem.mm:

(-[WebHistoryItem _isInPageCache]): Added. Just calls and returns core imple's function.
(-[WebHistoryItem _hasCachedPageExpired]): Same thing.

  • History/WebHistoryItemPrivate.h:
  • WebView/WebPreferences.mm:

(-[WebPreferences _backForwardCacheExpirationInterval]): Address fixme, now that WebCore::Settings
has getters and setters with default value.

  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]): call setBackForwardCacheExpirationInterval similar to other settings.

Source/WebKit2:

Hook up hasCachedPageExpired in InjectedBundle's BackForwardListItem.

  • WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.cpp:

(WKBundleBackForwardListItemHasCachedPageExpired):

  • WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.h:
  • WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:

(WebKit::InjectedBundleBackForwardListItem::hasCachedPageExpired):

Mar 13, 2013:

11:52 PM Changeset in webkit [145788] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

Cannot select a canvas element at the beginning or the end of a document
https://bugs.webkit.org/show_bug.cgi?id=112319

Reviewed by Eric Seidel.

Source/WebCore:

The bug was caused by the editing code treating canvas element as if an empty inline element.
Treat it as an "atomic" element for the purpose of determining whether selection can have
an end point in it or not.

Test: editing/pasteboard/copy-paste-content-starting-and-ending-canvas.html

  • html/HTMLCanvasElement.h:

(WebCore::HTMLCanvasElement::canContainRangeEndPoint): Added.

LayoutTests:

Add a regression test to copy and paste a content with canvas elements.

  • editing/pasteboard/copy-paste-content-starting-and-ending-canvas-expected.txt: Added.
  • editing/pasteboard/copy-paste-content-starting-and-ending-canvas.html: Added.
10:59 PM Changeset in webkit [145787] by commit-queue@webkit.org
  • 35 edits
    28 adds in trunk

Implement FontLoader interface
https://bugs.webkit.org/show_bug.cgi?id=98395

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2013-03-13
Reviewed by Eric Seidel.

Source/WebCore:

This patch implements the FontLoader interface defined in CSS Font
Load Events Module Level 3.[1] It adds fontloader attribute to
Document, and adds two interfaces, FontLoader and
CSSFontFaceLoadEvent to WebCore.

[1]: http://dev.w3.org/csswg/css-font-load-events-3/

This feature is guarded by FONT_LOAD_EVENTS compiler flag and
RuntimeEnabledFeatures::fontLoadEventsEnabled() runtime flag.

Tests: fast/css/fontloader-download-error.html

fast/css/fontloader-events.html
fast/css/fontloader-loadingdone.html
fast/css/fontloader-multiple-faces-download-error.html
fast/css/fontloader-multiple-faces.html
fast/css/fontloader-multiple-families.html
http/tests/webfont/fontloader-loading-attribute.html

  • CMakeLists.txt: Adding FontLoader/CSSFontFaceLoadEvent files.
  • DerivedSources.cpp: Ditto.
  • DerivedSources.make: Ditto.
  • DerivedSources.pri: Ditto.
  • GNUmakefile.list.am: Ditto.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.vcxproj/WebCore.vcxproj: Ditto.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • bindings/js/JSDictionary.cpp:

(WebCore::JSDictionary::convertValue): Add convertValue() for CSSFontFaceRule, DOMError, and VoidCallback.

  • bindings/js/JSDictionary.h: Ditto.
  • bindings/v8/Dictionary.cpp: Add get() for CSSFontFaceRule, DOMError, and VoidCallback.

(WebCore::Dictionary::get):

  • bindings/v8/Dictionary.h: Ditto.

(Dictionary):

  • css/CSSFontFace.cpp: Notifies FontLoader as load progresses.

(WebCore::CSSFontFace::fontLoaded):
(WebCore::CSSFontFace::getFontData):
(WebCore::CSSFontFace::notifyFontLoader):
(WebCore::CSSFontFace::notifyLoadingDone):

  • css/CSSFontFace.h: Add two member variables. m_rule stores CSSFontFaceRule for the fontface. m_loadState holds current state of the fontface in terms of FontLoader.

(WebCore::CSSFontFace::create): Takes additional parameter of type CSSFontFaceRule.
(WebCore::CSSFontFace::loadState):
(WebCore::CSSFontFace::CSSFontFace):

  • css/CSSFontFaceLoadEvent.cpp: Added.

(WebCore::CSSFontFaceLoadEvent::CSSFontFaceLoadEvent):
(WebCore::CSSFontFaceLoadEvent::~CSSFontFaceLoadEvent):
(WebCore::CSSFontFaceLoadEvent::interfaceName):

  • css/CSSFontFaceLoadEvent.h: Added.

(CSSFontFaceLoadEventInit):
(CSSFontFaceLoadEvent):
(WebCore::CSSFontFaceLoadEvent::create):
(WebCore::CSSFontFaceLoadEvent::createForFontFaceRule):
(WebCore::CSSFontFaceLoadEvent::createForError):
(WebCore::CSSFontFaceLoadEvent::fontface):
(WebCore::CSSFontFaceLoadEvent::error):

  • css/CSSFontFaceLoadEvent.idl: Added.
  • css/CSSFontFaceRule.idl: Add JSGenerateToJSObject and JSGenerateToNativeObject as JSC binding needs them.
  • css/CSSFontFaceSource.cpp:

(WebCore::CSSFontFaceSource::isDecodeError): Added.
(WebCore::CSSFontFaceSource::ensureFontData): Added.

  • css/CSSFontFaceSource.h:

(CSSFontFaceSource):

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::addFontFaceRule): Pass a CSSFontFaceRule to CSSFontFace::create().
(WebCore::CSSFontSelector::getFontData): Moved logic for creating a CSSSegmentedFontFace to a helper function getFontFace().
(WebCore::CSSFontSelector::getFontFace): Added.

  • css/CSSFontSelector.h:
  • css/CSSSegmentedFontFace.cpp:

(WebCore::CSSSegmentedFontFace::fontLoaded): Fires callbacks when load is completed.
(WebCore::CSSSegmentedFontFace::isLoading): Returns true if any fonts are still loading.
(WebCore::CSSSegmentedFontFace::checkFont): Returns true if all fonts are loaded.
(WebCore::CSSSegmentedFontFace::loadFont): Starts load by calling getFontData().

  • css/CSSSegmentedFontFace.h:

(CSSSegmentedFontFace): Declares new functions and a vector to store callbacks.
(LoadFontCallback):
(WebCore::CSSSegmentedFontFace::LoadFontCallback::~LoadFontCallback):

  • css/FontLoader.cpp: Added.

(LoadFontCallback): Holds callback functions of FontLoader.loadFont().
(WebCore::LoadFontCallback::create):
(WebCore::LoadFontCallback::createFromParams):
(WebCore::LoadFontCallback::LoadFontCallback):
(WebCore::LoadFontCallback::notifyLoaded):
(WebCore::LoadFontCallback::notifyError):
(WebCore::FontLoader::FontLoader):
(WebCore::FontLoader::~FontLoader):
(WebCore::FontLoader::eventTargetData):
(WebCore::FontLoader::ensureEventTargetData):
(WebCore::FontLoader::interfaceName):
(WebCore::FontLoader::scriptExecutionContext):
(WebCore::FontLoader::didLayout): Fires pending events and callbacks. This is called when layout have completed.
(WebCore::FontLoader::scheduleEvent): Defers event dispatching until layout completes.
(WebCore::FontLoader::firePendingEvents): Dispatches pending events.
(WebCore::FontLoader::beginFontLoading): Schedules loading/loadstart events. This is called from CSSFontFace.
(WebCore::FontLoader::fontLoaded): Schedules load/loadingdone events. This is called from CSSFontFace.
(WebCore::FontLoader::loadError): Schedules error/loadingdone events. This is called from CSSFontFace.
(WebCore::FontLoader::notifyWhenFontsReady): Implements fontloader.notifyWhenFontsReady().
(WebCore::FontLoader::loadingDone): Fires callbacks of notifyWhenFontsReady.
(WebCore::FontLoader::loadFont): Implements fontloader.loadFont().
(WebCore::FontLoader::checkFont): Implements fontloader.checkFont().
(WebCore::FontLoader::resolveFontStyle): Parses the given font parameter using the syntax of CSS 'font' property and creates Font object. The logic is taken from CanvasRenderingContext2D::setFont().

  • css/FontLoader.h: Added.

(FontLoader):
(WebCore::FontLoader::create):
(WebCore::FontLoader::loading):
(WebCore::FontLoader::document):
(WebCore::FontLoader::refEventTarget):
(WebCore::FontLoader::derefEventTarget):

  • css/FontLoader.idl: Added.
  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::fontloader): Added.

  • dom/Document.h:

(Document): Add m_fontloader and fontloader().

  • dom/Document.idl: Add fontloader attribute.
  • dom/EventNames.h: Add loading and loadingdone events.
  • dom/EventNames.in: Add CSSFontFaceLoadEvent.
  • dom/EventTargetFactory.in: Add FontLoader.
  • page/FrameView.cpp:

(WebCore::FrameView::performPostLayoutTasks): Calls FontLoader::didLayout().

Tools:

Enable FontLoadEvents runtime flag for TestShell.

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

(WebTestRunner::TestInterfaces::TestInterfaces):

LayoutTests:

Add tests for document.fontloader. Since the feature is currently enabled
only for chromium, the tests are expected to fail on the other ports.

  • fast/css/fontloader-download-error-expected.txt: Added.
  • fast/css/fontloader-download-error.html: Added.
  • fast/css/fontloader-events-expected.txt: Added.
  • fast/css/fontloader-events.html: Added.
  • fast/css/fontloader-loadingdone-expected.txt: Added.
  • fast/css/fontloader-loadingdone.html: Added.
  • fast/css/fontloader-multiple-faces-download-error-expected.txt: Added.
  • fast/css/fontloader-multiple-faces-download-error.html: Added.
  • fast/css/fontloader-multiple-faces-expected.txt: Added.
  • fast/css/fontloader-multiple-faces.html: Added.
  • fast/css/fontloader-multiple-families-expected.txt: Added.
  • fast/css/fontloader-multiple-families.html: Added.
  • http/tests/webfont/fontloader-loading-attribute-expected.txt: Added.
  • http/tests/webfont/fontloader-loading-attribute.html: Added.
  • platform/chromium/fast/css/fontloader-download-error-expected.txt: Added.
  • platform/chromium/fast/css/fontloader-events-expected.txt: Added.
  • platform/chromium/fast/css/fontloader-loadingdone-expected.txt: Added.
  • platform/chromium/fast/css/fontloader-multiple-faces-download-error-expected.txt: Added.
  • platform/chromium/fast/css/fontloader-multiple-faces-expected.txt: Added.
  • platform/chromium/fast/css/fontloader-multiple-families-expected.txt: Added.
  • platform/chromium/http/tests/webfont/fontloader-loading-attribute-expected.txt: Added.
10:11 PM Changeset in webkit [145786] by Antti Koivisto
  • 7 edits in trunk

Compute image background size when testing for background visibility
https://bugs.webkit.org/show_bug.cgi?id=112313

Reviewed by Simon Fraser.

Source/WebCore:

We can catch more cases where background is fully obscured.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintBackground):

Use early returns.


(WebCore::RenderBox::backgroundPaintedExtent):

Compute the bounds for image backgrounds.

(WebCore::RenderBox::backgroundIsKnownToBeOpaqueInRect):
(WebCore::RenderBox::backgroundIsKnownToBeObscured):

Rename to make clear that the answers are certain to one direction only.

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

(WebCore::RenderImage::boxShadowShouldBeAppliedToBackground):
(WebCore::RenderImage::backgroundIsKnownToBeObscured):

  • rendering/RenderImage.h:

LayoutTests:

  • fast/repaint/obscured-background-no-repaint.html:
9:06 PM Changeset in webkit [145785] by Bruno de Oliveira Abinader
  • 13 edits
    8 adds in trunk

[css3-text] Add support for text-decoration-color
https://bugs.webkit.org/show_bug.cgi?id=91638

Reviewed by Julien Chaffraix.

Source/WebCore:

This patch implements the CSS3's 'text-decoration-color' property, with
'-webkit' vendor prefix.

More info about "text-decoration-color" property can be found here:
http://dev.w3.org/csswg/css-text-decor-3/#text-decoration-color-property

Mozilla implementation (using -moz prefix) is described here:
https://developer.mozilla.org/en/CSS/text-decoration-color

Tests: fast/css3-text/css3-text-decoration/getComputedStyle/getComputedStyle-text-decoration-color.html

fast/css3-text/css3-text-decoration/repaint/repaint-text-decoration-color.html
fast/css3-text/css3-text-decoration/text-decoration-color.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::isColorPropertyID):
(WebCore::CSSParser::parseValue):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):
Added parsing checks for '-webkit-text-decoration-color' property.

  • css/CSSPropertyNames.in:

Added '-webkit-text-decoration-color' property name.

  • css/StyleBuilder.cpp:

(WebCore::StyleBuilder::StyleBuilder):
Set property handler for '-webkit-text-decoration-color'.

  • css/StyleResolver.cpp:

(WebCore::isValidVisitedLinkProperty):
(WebCore::StyleResolver::applyProperty):
Added switch case checks for text-decoration-color property on visited
link checks and property appliance.

  • rendering/RenderObject.cpp:

(WebCore::decorationColor):
The newly added property needs to checked here when selecting the text
decoration color.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::diff):
(WebCore::RenderStyle::colorIncludingFallback):
(WebCore::RenderStyle::visitedDependentColor):
There is no proper way to check if a property has been set or not, so if
text decoration color fallbacks to default color, it would override the
check for 'text-fill-color' and 'text-stroke-color' properties on
WebCore::decorationColor() static function, changing current behavior,
which can be verified by new failing layout tests (ie.
fast/text/stroking-decorations.html).

  • rendering/style/RenderStyle.h:

Added {non-}visited text decoration color getters and setters.

  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
Added {non-}visited text decoration color variables initialization to
copy constructor and operator assignment functions.

  • rendering/style/StyleRareNonInheritedData.h:

(StyleRareNonInheritedData):
Added here as this property is not used regularly.

LayoutTests:

Added layout tests (paint,repaint and getComputedStyle) for
'text-decoration-color' property, with '-webkit' vendor prefix.

  • fast/css3-text/css3-text-decoration/getComputedStyle/getComputedStyle-text-decoration-color-expected.txt: Added.
  • fast/css3-text/css3-text-decoration/getComputedStyle/getComputedStyle-text-decoration-color.html: Added.
  • fast/css3-text/css3-text-decoration/getComputedStyle/script-tests/getComputedStyle-text-decoration-color.js: Added.

Added getComputedStyle-based layout test covering a bunch of valid/invalid values.

  • fast/css3-text/css3-text-decoration/repaint/repaint-text-decoration-color-expected.png: Added.
  • fast/css3-text/css3-text-decoration/repaint/repaint-text-decoration-color-expected.txt: Added.
  • fast/css3-text/css3-text-decoration/repaint/repaint-text-decoration-color.html: Added.

Added cross-platform repaint layout test using 'Ahem' font.

  • fast/css3-text/css3-text-decoration/text-decoration-color-expected.html: Added.
  • fast/css3-text/css3-text-decoration/text-decoration-color.html: Added.

Added cross-platform reference test.

8:52 PM Changeset in webkit [145784] by commit-queue@webkit.org
  • 22 edits in trunk/Source

create runtime flags for CSS Compositing
https://bugs.webkit.org/show_bug.cgi?id=111818

Patch by Rik Cabanier <cabanier@adobe.com> on 2013-03-13
Reviewed by Ryosuke Niwa.

Source/WebCore:

No new tests, no change in functionality.

Added a runtime flags that enables CSS compositing

  • WebCore.exp.in:
  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore):

  • bindings/generic/RuntimeEnabledFeatures.h:

(RuntimeEnabledFeatures):
(WebCore::RuntimeEnabledFeatures::setCSSCompositingEnabled):
(WebCore::RuntimeEnabledFeatures::cssCompositingEnabled):

  • css/CSSParser.cpp:

(WebCore::CSSParserContext::CSSParserContext):
(WebCore::operator==):
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFillProperty):
(WebCore::CSSParser::cssCompositingEnabled):
(WebCore):

  • css/CSSParser.h:
  • css/CSSParserMode.h:

(CSSParserContext):

  • dom/Document.cpp:

(WebCore::Document::cssCompositingEnabled):
(WebCore):

  • dom/Document.h:

(Document):

Source/WebKit/chromium:

Added a runtime flags to enable CSS compositing for chromium.

  • public/WebRuntimeFeatures.h:

(WebRuntimeFeatures):

  • src/WebRuntimeFeatures.cpp:

(WebKit::WebRuntimeFeatures::enableCSSCompositing):
(WebKit):
(WebKit::WebRuntimeFeatures::isCSSCompositingEnabled):

Source/WebKit/mac:

Added a preference to enable CSS compositing.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
(-[WebPreferences cssCompositingEnabled]):
(-[WebPreferences setCSSCompositingEnabled:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit2:

Added a preference to enable CSS compositing.

  • Shared/WebPreferencesStore.h:

(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
(WebKit::InjectedBundle::setCSSCompositingEnabled):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

8:33 PM Changeset in webkit [145783] by jparent@chromium.org
  • 2 edits in trunk/Tools

CLeanup: remove unnecessary call to parseParameters.
https://bugs.webkit.org/show_bug.cgi?id=112309

Reviewed by Ojan Vafai.

We call parseCrossDashboardParameters when the dashboard initially
loads to set the state required for loadBuildersList, and then we
call it again once we are fully done with loading, so there is no
reason to call it in the middle of the loading process here.

  • TestResultServer/static-dashboards/loader.js:

(.):

7:48 PM Changeset in webkit [145782] by kinuko@chromium.org
  • 34 edits
    6 copies
    7 moves
    9 adds in trunk

Quota API: Update IDL to make it match the latest WD
https://bugs.webkit.org/show_bug.cgi?id=88396

Reviewed by Adam Barth.

Source/WebCore:

Add a new interface object (navigator.StorageQuota) and deprecate the old one (window.StorageInfo)
to make the code match with the latest Quota API WD:
http://www.w3.org/TR/quota-api/

Tests: storage/storagequota-query-usage.html

storage/storagequota-request-quota.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Modules/quota/DOMWindowQuota.cpp:

(WebCore::DOMWindowQuota::webkitStorageInfo): Added a deprecate warning message for the old interface.

  • Modules/quota/NavigatorStorageQuota.cpp: Added for the new interface.
  • Modules/quota/NavigatorStorageQuota.h: Added for the new interface.
  • Modules/quota/NavigatorStorageQuota.idl: Added for the new interface.
  • Modules/quota/StorageErrorCallback.cpp:

(WebCore::StorageErrorCallback::CallbackTask::CallbackTask):
(WebCore::StorageErrorCallback::CallbackTask::performTask):

  • Modules/quota/StorageErrorCallback.h: Renamed from Source/WebCore/Modules/quota/StorageInfoErrorCallback.h.

(WebCore):
(StorageErrorCallback):
(WebCore::StorageErrorCallback::~StorageErrorCallback):
(WebCore::StorageErrorCallback::CallbackTask::create):

  • Modules/quota/StorageErrorCallback.idl: Renamed from Source/WebCore/Modules/quota/StorageInfoErrorCallback.idl.
  • Modules/quota/StorageInfo.cpp: Added code to relay requests to the new StorageQuota implementation.
  • Modules/quota/StorageInfo.h:
  • Modules/quota/StorageInfo.idl:
  • Modules/quota/StorageQuota.cpp: Added for the new interface.
  • Modules/quota/StorageQuota.h:

(WebCore::StorageQuota::create):

  • Modules/quota/StorageQuota.idl: Copied from Source/WebCore/Modules/quota/StorageInfo.idl.
  • Modules/quota/StorageQuotaCallback.h: Renamed from Source/WebCore/Modules/quota/StorageInfoQuotaCallback.h.
  • Modules/quota/StorageQuotaCallback.idl: Renamed from Source/WebCore/Modules/quota/StorageInfoQuotaCallback.idl.
  • Modules/quota/StorageUsageCallback.h: Renamed from Source/WebCore/Modules/quota/StorageInfoUsageCallback.h.
  • Modules/quota/StorageUsageCallback.idl: Renamed from Source/WebCore/Modules/quota/StorageInfoUsageCallback.idl.
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • page/FeatureObserver.h:

Source/WebKit/chromium:

Add a new interface object (navigator.StorageQuota) and deprecate the old one (window.StorageInfo)
to make the code match with the latest Quota API WD:
http://www.w3.org/TR/quota-api/

  • WebKit.gyp:
  • src/AssertMatchingEnums.cpp:
  • src/StorageQuotaChromium.cpp: Renamed from Source/WebKit/chromium/src/StorageInfoChromium.cpp.

(WebCore):
(WebCore::StorageQuota::queryUsageAndQuota):
(WebCore::StorageQuota::requestQuota):

  • src/WebStorageQuotaCallbacksImpl.cpp:

(WebKit::WebStorageQuotaCallbacksImpl::WebStorageQuotaCallbacksImpl):

  • src/WebStorageQuotaCallbacksImpl.h:

(WebCore):
(WebStorageQuotaCallbacksImpl):

LayoutTests:

  • platform/chromium/TestExpectations:
  • storage/storagequota-query-usage-expected.txt: Added.
  • storage/storagequota-query-usage.html: Added.
  • storage/storagequota-request-quota-expected.txt: Added.
  • storage/storagequota-request-quota.html: Added.

Rebaselines:

  • platform/chromium/fast/dom/everything-to-string-expected.txt: Added.
  • platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt:
  • platform/chromium/fast/js/global-constructors-expected.txt:
  • platform/chromium/http/tests/security/isolatedWorld/all-window-properties-expected.txt: Added.
  • platform/chromium/http/tests/security/isolatedWorld/all-window-prototypes-expected.txt: Added.
7:36 PM Changeset in webkit [145781] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Sort the Xcode project file.

  • WebCore.xcodeproj/project.pbxproj:
7:15 PM Changeset in webkit [145780] by dino@apple.com
  • 2 edits in trunk/LayoutTests

[WebGL] array-bounds-clamping should use less dramatic numbers
https://bugs.webkit.org/show_bug.cgi?id=112298
<rdar://problem/13415829>

Reviewed by Ken Russell.

Replace Number.MAX_VALUE with a non-infinite number.

  • fast/canvas/webgl/array-bounds-clamping.html:
6:54 PM Changeset in webkit [145779] by Lucas Forschler
  • 2 edits in tags/Safari-537.33.3/Source/WebKit2

Merged r145042. <rdar://problem/13363917>

6:51 PM Changeset in webkit [145778] by Lucas Forschler
  • 4 edits in tags/Safari-537.33.3/Source

Versioning.

6:48 PM Changeset in webkit [145777] by Lucas Forschler
  • 1 copy in tags/Safari-537.33.3

New Tag.

6:47 PM Changeset in webkit [145776] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Make lint-test-expectations happy with the Apple-Windows TestExpectations files

Unreviewed.

  • platform/win/TestExpectations:
5:44 PM Changeset in webkit [145775] by Michael Nordman
  • 1 edit in trunk/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.cpp

Unreviewed build fix.

5:27 PM Changeset in webkit [145774] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Enable V8 binding integriy on Android.
https://bugs.webkit.org/show_bug.cgi?id=112297

Patch by Chris Palmer <palmer@google.com> on 2013-03-13
Reviewed by Adam Barth.

  • features.gypi:
5:23 PM Changeset in webkit [145773] by Michael Nordman
  • 1 edit in trunk/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.cpp

Unreviewd build fix.

5:03 PM Changeset in webkit [145772] by rafaelw@chromium.org
  • 3 edits in trunk/Source/WebCore

[HTMLTemplateElement] EOF should unwind the stack of template insertion modes iteratively
https://bugs.webkit.org/show_bug.cgi?id=111907

Reviewed by Adam Barth.

No behavioral changes. This patch only aligns our parser implementation with the present spec.

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processTemplateEndTag):
(WebCore::HTMLTreeBuilder::processEndOfFileForInTemplateContents):
(WebCore::HTMLTreeBuilder::processEndOfFile):

  • html/parser/HTMLTreeBuilder.h:

(HTMLTreeBuilder):

5:01 PM Changeset in webkit [145771] by Michael Nordman
  • 16 edits in trunk/Source

Source/WebCore: FileSystem mods: Changes to snapshot file creation to reduce dependencies on blob URLs.
Adding a new minimal BlobDataHandle class which will be reimplemented/built upon in later CLs. In this
patch, it's just enough to refactor the FileSystem code to not function in terms of blobURLs.
https://bugs.webkit.org/show_bug.cgi?id=108851

Reviewed by Adam Barth.

No new tests. This is strictly a refactoring of the existing code.

  • Modules/filesystem/DOMFileSystem.cpp:

(WebCore):
(WebCore::DOMFileSystem::createFile):

  • Modules/filesystem/DOMFileSystemSync.cpp:

(WebCore):

  • platform/AsyncFileSystemCallbacks.h:

(AsyncFileSystemCallbacks):
(WebCore::AsyncFileSystemCallbacks::didCreateSnapshotFile):

  • platform/gtk/AsyncFileSystemGtk.cpp:

(WebCore::AsyncFileSystemGtk::createSnapshotFileAndReadMetadata):
(WebCore):

  • platform/network/BlobData.cpp:

(WebCore):
(WebCore::BlobDataHandle::BlobDataHandle):
(WebCore::BlobDataHandle::~BlobDataHandle):

  • platform/network/BlobData.h:

(WebCore):
(BlobDataHandle):
(WebCore::BlobDataHandle::create):

Source/WebKit/chromium: [Chromium] FileSystem mods: Changes to snapshot file creation to reduce dependencies on blobs.
No longer send a |blobURL| to the browser process, no longer expect the browser process
to have registered a blob with that url.
https://bugs.webkit.org/show_bug.cgi?id=108851

Reviewed by Adam Barth.

  • src/AsyncFileSystemChromium.cpp:

(WebCore):
(WebCore::FileWriterHelperCallbacks::didCreateSnapshotFile):
(WebCore::AsyncFileSystemChromium::createSnapshotFileAndReadMetadata):

  • src/AsyncFileSystemChromium.h:

(AsyncFileSystemChromium):

  • src/LocalFileSystemChromium.cpp:

(WebCore):

  • src/WebFileSystemCallbacksImpl.cpp:

(WebKit::WebFileSystemCallbacksImpl::didCreateSnapshotFile):
(WebKit):

  • src/WebFileSystemCallbacksImpl.h:

(WebCore):
(WebFileSystemCallbacksImpl):

  • src/WorkerAsyncFileSystemChromium.cpp:

(WebCore::WorkerAsyncFileSystemChromium::createSnapshotFileAndReadMetadata):
(WebCore::WorkerAsyncFileSystemChromium::createWorkerFileSystemCallbacksBridge):

  • src/WorkerFileSystemCallbacksBridge.cpp:

(WebKit::MainThreadFileSystemCallbacks::didCreateSnapshotFile):
(MainThreadFileSystemCallbacks):
(WebKit::WorkerFileSystemCallbacksBridge::postCreateSnapshotFileToMainThread):
(WebKit::WorkerFileSystemCallbacksBridge::createSnapshotFileOnMainThread):
(WebKit::WorkerFileSystemCallbacksBridge::didCreateSnapshotFileOnMainThread):
(WebKit):
(WebKit::WorkerFileSystemCallbacksBridge::WorkerFileSystemCallbacksBridge):
(WebKit::WorkerFileSystemCallbacksBridge::didCreateSnapshotFileOnWorkerThread):

  • src/WorkerFileSystemCallbacksBridge.h:

(WebCore):
(WebKit):
(WebKit::WorkerFileSystemCallbacksBridge::create):
(WorkerFileSystemCallbacksBridge):

4:16 PM Changeset in webkit [145770] by abarth@webkit.org
  • 4 edits
    1 delete in trunk/Source/WebKit/chromium

[Chromium] Restrict WebNode::addEventListener and friends to a whitelist of event types
https://bugs.webkit.org/show_bug.cgi?id=112195

Reviewed by Eric Seidel.

Chromium only uses these APIs in extremely narrow ways. In order to
discourage Chromium from using these APIs in broader ways, this patch
restricts the APIs to a small whitelist of event types.

We might want to add some sort of flag to let CEF use expose these APIs
more broadly.

  • WebKit.gypi:
  • public/WebNode.h:
  • src/WebNode.cpp:

(WebKit::WebNode::hasEventListeners):
(WebKit::WebNode::addEventListener):

  • tests/EventListenerTest.cpp: Removed.
    • These tests of DOM mutation events are no longer needed because we don't support listening for DOM mutation events via the API anymore.
4:00 PM Changeset in webkit [145769] by esprehn@chromium.org
  • 2 edits in trunk/Tools

Unreviewed. Now I'm a reviewer :)

  • Scripts/webkitpy/common/config/committers.py:
3:57 PM Changeset in webkit [145768] by rniwa@webkit.org
  • 18 edits in trunk

Threaded HTML Parser is missing feature define flags in all but Chromium port's build files
https://bugs.webkit.org/show_bug.cgi?id=112277

Reviewed by Adam Barth.

.:

  • Source/autotools/SetupWebKitFeatures.m4:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
  • qmake/mkspecs/features/features.pri:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:
3:56 PM Changeset in webkit [145767] by tony@chromium.org
  • 3 edits in trunk/LayoutTests

Add a test case for flexbox with negative overflow having an out of flow flex item
https://bugs.webkit.org/show_bug.cgi?id=112294

Reviewed by Ojan Vafai.

  • css3/flexbox/negative-overflow-expected.txt:
  • css3/flexbox/negative-overflow.html:
3:55 PM Changeset in webkit [145766] by jberlin@webkit.org
  • 2 edits in trunk/Source/WTF

Remove svn:executable from a file that isn't supposed to be executable.

Rubber-stamped by Geoff Garen.

  • wtf/MediaTime.h:
3:50 PM Changeset in webkit [145765] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[V8] Get rid of more function-level static FunctionTemplates and ObjectTemplates in bindings
https://bugs.webkit.org/show_bug.cgi?id=112262

Patch by Marja Hölttä <marja@chromium.org> on 2013-03-13
Reviewed by Jochen Eisinger.

In the future we'll create and store function templates for main world
and non-main worlds separately (see bug 111724), having function
templates and object templates as static variables inside functions will
break the functionality.

No new tests (no changes in functionality yet; existing bindings
tests still pass).

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateImplementation):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::createContext):

  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::hasPrivateTemplate):
(WebCore):

  • bindings/v8/V8PerIsolateData.h:

(V8PerIsolateData):

  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:

(WebCore::V8HTMLDocument::wrapInShadowObject):

3:34 PM Changeset in webkit [145764] by abarth@webkit.org
  • 3 edits in trunk/Tools

run-perf-tests should support content_shell
https://bugs.webkit.org/show_bug.cgi?id=112291

Reviewed by Eric Seidel.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

3:30 PM Changeset in webkit [145763] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Do not do scroll position adjustment if selecting in a subframe
https://bugs.webkit.org/show_bug.cgi?id=112290

Patch by Iris Wu <shuwu@blackberry.com> on 2013-03-13
Reviewed by Rob Buis.

PR 267394

In SelectionHandler::ensureSelectedTextVisible(), scroll position
animation is based on main frame. If selecting in a subframe, don't
do animation.

Internally Reviewed By Genevieve Mak.

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::ensureSelectedTextVisible):

3:28 PM Changeset in webkit [145762] by jchaffraix@webkit.org
  • 3 edits in trunk/Source/WebCore

[CSS Grid Layout] Refactor GridCoordinate to hold GridSpans
https://bugs.webkit.org/show_bug.cgi?id=112211

Reviewed by Tony Chang.

In order to bring more spanning knowledge to RenderGrid without having
duplicated GridSpan resolution, it became needed to store them into
GridCoordinate. Note that this change is needed as we can only resolve
all the positions with enough context in one place: when we place the
item in the grid.

Refactoring, no change in behavior expected.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::GridIterator::nextEmptyGridArea):
Updated to create 2 GridSpans. Also fixed a style violation (PassOwnPtr
as local member, not sure why it wasn't caught earlier).

(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
(WebCore::RenderGrid::gridAreaBreadthForChild):
(WebCore::RenderGrid::findChildLogicalPosition):
Updated the original function after GridCoordinate internal representation change.

(WebCore::RenderGrid::insertItemIntoGrid):
Ditto. Also added a new overloaded function that does resolution after auto-placement.

(WebCore::RenderGrid::resolveGridPositionsFromAutoPlacementPosition):
Removed the extra GridSpan computation, which was wrong.

  • rendering/RenderGrid.h:

(WebCore::RenderGrid::GridCoordinate::GridCoordinate):
Updated GridCoordinate to hold 2 GridSpan. Also removed the 2 position
constructor (it would have been a hazard), replaced by a 2 GridSpan constructor.

3:24 PM Changeset in webkit [145761] by jochen@chromium.org
  • 2 edits in trunk/Source/WebCore

Also don't log error messages from the GraphicsContext3D if webGLErrorsToConsoleEnabled is false
https://bugs.webkit.org/show_bug.cgi?id=112284

Reviewed by Adam Barth.

When running layout tests in content_shell, we end up logging more information.
Since webGLErrorsToConsoleEnabled is false during layout tests, this change makes
sure we match the baselines.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContextErrorMessageCallback::onErrorMessage):

3:15 PM CreatingLayoutTests edited by pdr@google.com
(diff)
2:59 PM Changeset in webkit [145760] by dgrogan@chromium.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: Record attemps to open a path with non-ascii characters
https://bugs.webkit.org/show_bug.cgi?id=112224

Reviewed by Tony Chang.

We want to see if that's correlated with errors on open.

No new tests, there's no way to test histogramming that I know of. I
ran chrome locally with a non ascii path though.

  • Modules/indexeddb/IDBBackingStore.cpp:

(WebCore::IDBBackingStore::open):

2:51 PM Changeset in webkit [145759] by oliver@apple.com
  • 4 edits in trunk

Simplify Checked<> multiplication
https://bugs.webkit.org/show_bug.cgi?id=112286

Reviewed by James Robinson.

Source/WTF:

Trying to correctly identify multiplication by zero complicated the
unsigned * unsigned multiply, and still didn't handle all cases correctly.
Now we just do the normal division based approach to overflow detection
leading to much simpler reasoning.

Would be nice if we could have a jo style intrinsic one day.

  • wtf/CheckedArithmetic.h:

Tools:

Add tests for multiplication by zero and max to ensure we don't
mess them up should we ever make changes to Checked<> in future.

  • TestWebKitAPI/Tests/WTF/CheckedArithmeticOperations.cpp:

(TestWebKitAPI):

2:50 PM Changeset in webkit [145758] by jchaffraix@webkit.org
  • 4 edits
    2 adds in trunk

[CSS Grid Layout] Handle min-width / max-width on the grid element
https://bugs.webkit.org/show_bug.cgi?id=112269

Reviewed by Ojan Vafai.

Source/WebCore:

Test: fast/css-grid-layout/grid-element-min-max-width.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::GridIterator::GridIterator):
Added some sanity checks that the starting indexes are in the grid.

(WebCore::RenderGrid::computeIntrinsicLogicalWidths):
Updated the code to use m_grid to iterate: this is the correct way to
go as it will handle implicit rows / columns properly. Added a comment
about the current way being inefficient and incorrect with spanning grid
items.

(WebCore::RenderGrid::computePreferredLogicalWidths):
Updated the comments.

(WebCore::RenderGrid::gridTrackSize):

  • rendering/RenderGrid.h:

Constified gridTrackSize.

LayoutTests:

  • fast/css-grid-layout/grid-element-min-max-width-expected.txt: Added.
  • fast/css-grid-layout/grid-element-min-max-width.html: Added.
2:49 PM Changeset in webkit [145757] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk/Source/WebKit

[BlackBerry] Add Proximity Detector.
https://bugs.webkit.org/show_bug.cgi?id=112278

Patch by Genevieve Mak <gmak@rim.com> on 2013-03-13
Reviewed by Rob Buis.

Internally Reviewed by Mike Lattanzio.
PR #243385

Source/WebKit:

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

  • WebKitSupport/ProximityDetector.cpp: Added.

(WebKit):
(BlackBerry::WebKit::getPriorityLevel):
(BlackBerry::WebKit::ProximityDetector::ProximityDetector):
(BlackBerry::WebKit::ProximityDetector::~ProximityDetector):
(BlackBerry::WebKit::ProximityDetector::findBestPoint):

  • WebKitSupport/ProximityDetector.h: Added.

(WebCore):
(WebKit):
(ProximityDetector):

2:43 PM Changeset in webkit [145756] by Simon Hausmann
  • 2 edits in trunk/Source/WebCore

[Qt] Prospective trivial build fix after r145744

Add missing closing parentheses.

  • xml/parser/XMLDocumentParserQt.cpp:

(WebCore::XMLDocumentParser::parseDtd):

2:41 PM Changeset in webkit [145755] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Account for review feedback in https://bugs.webkit.org/show_bug.cgi?id=112279
that I'd mistakenly left out of my commit.

  • loader/ResourceLoaderTypes.h:
2:38 PM Changeset in webkit [145754] by inferno@chromium.org
  • 2 edits in trunk/Source/WebCore

Crash in CompositeEditCommand::insertNodeAt.
https://bugs.webkit.org/show_bug.cgi?id=112280

Reviewed by Ryosuke Niwa.

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::insertNodeAt): Fix incorrect cast use of toElement.
Subsitute with toContainerNode.

2:36 PM Changeset in webkit [145753] by beidson@apple.com
  • 18 edits
    1 add in trunk/Source

Small ResourceLoader cleanups.
https://bugs.webkit.org/show_bug.cgi?id=112279

Reviewed by Geoff Garen.

Source/WebCore:

No new tests (Refactor with no behavior change).

1 - Add "OVERRIDE" to virtual methods in subclasses of ResourceLoader to catch future mistakes.
2 - Replace the "bool allAtOnce" flag with a descriptive enum to make reading code easier.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::substituteResourceDeliveryTimerFired):

  • loader/NetscapePlugInStreamLoader.cpp:

(WebCore::NetscapePlugInStreamLoader::didReceiveData):

  • loader/NetscapePlugInStreamLoader.h:
  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::addData):
(WebCore::ResourceLoader::didReceiveData):

  • loader/ResourceLoader.h:
  • loader/ResourceLoaderTypes.h: Added.
  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveData):

  • loader/SubresourceLoader.h:

Source/WebKit2:

Replace the "bool allAtOnce" flag with a descriptive enum to make reading code easier.

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::didReceiveData):

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::didReceiveData):
(WebKit::WebResourceLoader::didReceiveResource):

  • WebProcess/Network/WebResourceLoader.h:
  • WebProcess/Network/WebResourceLoader.messages.in: Get rid of the "allAtOnce" flag since it was always false.
2:27 PM Changeset in webkit [145752] by Nate Chapin
  • 2 edits in trunk/Source/WebCore

chromium's WebFrameTest.ReplaceNavigationAfterHistoryNavigation failing after r145734
https://bugs.webkit.org/show_bug.cgi?id=112281

Reviewed by Adam Barth.

Fixes the aforementioned chromiun webkit_unit_test

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::maybeFinishLoadingMultipartContent): FrameLoader::isReplacing() is not quite

synonymous with loading multipart content. Check that it's actually loading multipart before doing
multipart-specific things.

2:26 PM Changeset in webkit [145751] by dino@apple.com
  • 4 edits in trunk/Source/WTF

Unreviewed attempted build fix for Windows. SchedulePair.cpp -> SchedulePairCF.cpp

  • WTF.vcproj/WTF.vcproj:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
2:16 PM Changeset in webkit [145750] by commit-queue@webkit.org
  • 24 edits
    4 adds in trunk

Add the default video poster if it doesn't exist in video tag
https://bugs.webkit.org/show_bug.cgi?id=110263

Patch by Tao Bai <michaelbai@chromium.org> on 2013-03-13
Reviewed by Eric Carlson.

Source/WebCore:

Tests: media/video-default-poster.html

media/video-no-default-poster.html

The Android web view application could provide the default poster
for a video that doesn't have the poster attribute.

To provide the default poster, the application must set defaultVideoPosterURL
setting and return the image in the response of that URL.

The way to do this would be:

A) Replace the Element::imageSourceAttributeName function with an

Element::imageSourceURL function that returns the imageSourceURL as a
const AtomicString&. The body will be the same as before, it will just also
include a call to getAttribute. Also will need to revise the four classes
that override that function.

B) Add a new HTMLVideoElement::posterImageURL function that implements the

default poster URL logic.

C) Update the four functions that get the poster attribute to handle poster

loading and display to call posterImageURL.

1) HTMLVideoElement::imageSourceURL.
2) HTMLVideoElement::setDisplayMode.
3) HTMLVideoElement::updateDisplayState.
4) HTMLMediaElement::getPluginProxyParams. Will need to cast to

HTMLVideoElement after checking isVideo.

  • dom/Element.cpp:

(WebCore::Element::imageSourceURL): Replace imageSourceAttributeName() with imageSourceURL()

  • dom/Element.h: Replace imageSourceAttributeName() with imageSourceURL()
  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::imageSourceURL): Replace imageSourceAttributeName() with imageSourceURL()

  • html/HTMLEmbedElement.h: Replace imageSourceAttributeName() with imageSourceURL()
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::getPluginProxyParams): Change to use posterImageURL

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::imageSourceURL): Replace imageSourceAttributeName() with imageSourceURL()

  • html/HTMLObjectElement.h: Replace imageSourceAttributeName with imageSourceURL
  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::HTMLVideoElement): set m_defaultPosterURL if there is such settings
(WebCore::HTMLVideoElement::imageSourceURL): Replace imageSourceAttributeName() with imageSourceURL()
(WebCore::HTMLVideoElement::setDisplayMode): Use imageSourceURL()
(WebCore::HTMLVideoElement::updateDisplayState): Use imageSourceURL()
(WebCore::HTMLVideoElement::posterImageURL): Return image source's KURL

  • html/HTMLVideoElement.h: Replace imageSourceAttributeName() with imageSourceURL() and add m_defaultPosterURL
  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::updateFromElement): Use imageSourceURL()

  • page/Settings.in: Add defaultVideoPosterURL setting.
  • platform/chromium/PasteboardChromium.cpp:

(WebCore::Pasteboard::writeImage): use imageSourceURL()

  • platform/gtk/PasteboardGtk.cpp:

(WebCore::getURLForImageNode): use imageSourceURL()

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::absoluteImageURL): use imageSourceURL()

  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::imageSourceURL): Replace imageSourceAttributeName() with imageSourceURL()

  • svg/SVGImageElement.h: Replace imageSourceAttributeName() with imageSourceURL()
  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup): support backup defaultVideoPosterURL.
(WebCore::InternalSettings::Backup::restoreTo): support restore defaultVideoPosterURL.
(WebCore::InternalSettings::setDefaultVideoPosterURL): set defaultVideoPosterURL.

  • testing/InternalSettings.h:

(Backup): support backup defaultVideoPosterURL.
(InternalSettings): Add setDefaultVidoePosterURL method.

  • testing/InternalSettings.idl: Add setDefaultVideoPosterURL for test purpose.
  • testing/Internals.cpp:

(WebCore::Internals::getImageSourceURL): Add getImageSourceURL method.

  • testing/Internals.h: Add getImageSourceURL method.
  • testing/Internals.idl: Add getImageSourceURL method.

LayoutTests:

The Android web view application could provide the default poster
for a video that doesn't have the poster attribute.

To provide the default poster, the application must set defaultVideoPosterURL
setting and return the image in the response of that URL.

The way to do this would be:

A) Replace the Element::imageSourceAttributeName function with an

Element::imageSourceURL function that returns the imageSourceURL as a
const AtomicString&. The body will be the same as before, it will just also
include a call to getAttribute. Also will need to revise the four classes
that override that function.

B) Add a new HTMLVideoElement::posterImageURL function that implements the

default poster URL logic.

C) Update the four functions that get the poster attribute to handle poster

loading and display to call posterImageURL.

1) HTMLVideoElement::imageSourceURL.
2) HTMLVideoElement::setDisplayMode.
3) HTMLVideoElement::updateDisplayState.
4) HTMLMediaElement::getPluginProxyParams. Will need to cast to

HTMLVideoElement after checking isVideo.

  • media/video-default-poster-expected.txt: Added.
  • media/video-default-poster.html: Added.
  • media/video-no-default-poster-expected.txt: Added.
  • media/video-no-default-poster.html: Added.
1:55 PM Changeset in webkit [145749] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

Force clip in fast/regions/autoheight-break-after-expected.html to match test
https://bugs.webkit.org/show_bug.cgi?id=112283

Reviewed by David Hyatt.

Regions always set a clip rect when rendering their contents. On Mountain Lion, the Ahem glyphs very slightly
visually overflow their bounds if there's no clip set. This sets a clip in the reference file so we get the same
rendering.

  • fast/regions/autoheight-break-after-expected.html:
1:44 PM Changeset in webkit [145748] by benjamin@webkit.org
  • 3 edits in trunk/Source/WTF

[iOS] Add optimized version of StringImpl's equal(LChar*,LChar*) for Apple CPUs
https://bugs.webkit.org/show_bug.cgi?id=112202

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-03-13
Reviewed by Gavin Barraclough.

  • Source/WTF/wtf/Platform.h:

Make the macro WTF_ARM_ARCH_VERSION valid on any architecture.

  • wtf/text/StringImpl.h:

(WTF::equal):
On ARMv7S, the new version is about 11% percent faster than the simple loop.
On ARMv7 classic, memcmp is a little faster than the simple loop on Apple A5.

1:42 PM Changeset in webkit [145747] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] Unreviewed prospective Windows build fix

Do the usual thing, include the moc generated code in the .cpp file instead
of compiling it standalone, to ensure that config.h is included, too, and
NOMINMAX is defined to avoid the min/max conflict when also including qdatetime.h.

  • DumpRenderTree/qt/EventSenderQt.cpp:
1:38 PM Changeset in webkit [145746] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Make lint-test-expectations happy with the Apple-Windows TestExpectations files

Unreviewed.

accessibility/radio-button-checkbox-size.html was moved to platform/mac in http://trac.webkit.org/changeset/138124
fast/css/ignore-text-zoom.html was removed in http://trac.webkit.org/changeset/145168
inspector-protocol/layer-tree.html was removed in http://trac.webkit.org/changeset/144624
Remove a bunch of duplicate entries.

  • platform/win/TestExpectations:
1:29 PM Changeset in webkit [145745] by inferno@chromium.org
  • 88 edits in trunk/Source

Replace static_casts with to* functions for document types.
https://bugs.webkit.org/show_bug.cgi?id=112225

Reviewed by Ryosuke Niwa.

Source/WebCore:

to* helper functions are preferred over static_cast calls since they
help to catch bad casts easily on the testing infrastructure.

  • Modules/geolocation/Geolocation.cpp:

(WebCore::Geolocation::document):
....lot of files.

Source/WebKit2:

  • WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm: Remove the redundant helper.
1:24 PM Changeset in webkit [145744] by commit-queue@webkit.org
  • 4 edits
    4 adds in trunk

Source/WebCore: Handle XHTML entities in XHTML Mobile Profile 1.1 and 1.2. We previously only handled them in XHTML Mobile Profile 1.0.
https://bugs.webkit.org/show_bug.cgi?id=112174
RIM PR 309038

Patch by Liam Quinn <lquinn@blackberry.com> on 2013-03-13
Reviewed by Rob Buis.
Internally reviewed by Leo Yang.

Check for the 1.1 and 1.2 doctypes alongside the 1.0 doctype.

Tests: fast/doctypes/xhtml-with-xhtmlmp11-doctype.xhtml

fast/doctypes/xhtml-with-xhtmlmp12-doctype.xhtml

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::externalSubsetHandler):

  • xml/parser/XMLDocumentParserQt.cpp:

(WebCore::XMLDocumentParser::parseDtd):

LayoutTests: New tests to check that XHTML entities are supported in XHTML Mobile Profile 1.1 and 1.2.
https://bugs.webkit.org/show_bug.cgi?id=112174
RIM PR 309038

Patch by Liam Quinn <lquinn@blackberry.com> on 2013-03-13
Reviewed by Rob Buis.
Internally reviewed by Leo Yang.

  • fast/doctypes/xhtml-with-xhtmlmp11-doctype-expected.txt: Added.
  • fast/doctypes/xhtml-with-xhtmlmp11-doctype.xhtml: Added.
  • fast/doctypes/xhtml-with-xhtmlmp12-doctype-expected.txt: Added.
  • fast/doctypes/xhtml-with-xhtmlmp12-doctype.xhtml: Added.
1:23 PM Changeset in webkit [145743] by commit-queue@webkit.org
  • 4 edits
    1 move in trunk/Source/WTF

SchedulePair.cpp is CF-specific
https://bugs.webkit.org/show_bug.cgi?id=112204

Patch by James Robinson <jamesr@chromium.org> on 2013-03-13
Reviewed by Oliver Hunt.

This renames SchedulePair.cpp SchedulePairCF.cpp, since it depends on CF, and excludes it from chromium's gyp
files.

  • WTF.gyp/WTF.gyp: Add CF to the exclusion filter for the Chromium port.
  • WTF.gypi: Add SchedulePairCF.cpp
  • WTF.xcodeproj/project.pbxproj: Update project file to point to new .cpp location
  • wtf/SchedulePairCF.cpp: Renamed from Source/WTF/wtf/SchedulePair.cpp.
1:23 PM Changeset in webkit [145742] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed, fix a path in TestExpectations.

  • platform/mac/TestExpectations:
1:10 PM Changeset in webkit [145741] by Christophe Dumez
  • 3 edits in trunk/Source/WebCore

[EFL] Better error handling in NetworkStateNotifierEfl
https://bugs.webkit.org/show_bug.cgi?id=112184

Reviewed by Kenneth Rohde Christiansen.

Improve error handling in for system calls in NetworkStateNotifierEfl.

  • EINTR errors are now properly handled for close() and recv() syscalls
  • recv() errors are now correctly detected, for e.g. if the socket was

closed unexpectedly.

  • Make sure m_fdHandler is reset when the callback returns

ECORE_CALLBACK_CANCEL to avoid double free in destructor. m_fdHandler
gets destroyed when the callback returns ECORE_CALLBACK_CANCEL.

  • Keep netlink socket file descriptor as a class member so that we can

close() it in the class destructor, even if m_fdHandler has already
been destroyed.

No new tests, no behavior change for layout tests.

  • platform/network/NetworkStateNotifier.h:

(NetworkStateNotifier):

  • platform/network/efl/NetworkStateNotifierEfl.cpp:

(WebCore::NetworkStateNotifier::readSocketCallback):
(WebCore::NetworkStateNotifier::~NetworkStateNotifier):
(WebCore::NetworkStateNotifier::NetworkStateNotifier):

12:59 PM WebKitGtkLayoutTests edited by Martin Robinson
(diff)
12:58 PM Changeset in webkit [145740] by tommyw@google.com
  • 3 edits in trunk/Source/Platform

[chromium] MediaStream API: Cleaning away deprecated and unused states
https://bugs.webkit.org/show_bug.cgi?id=112258

Reviewed by Adam Barth.

  • chromium/public/WebRTCPeerConnectionHandler.h:

(WebRTCPeerConnectionHandler):

  • chromium/public/WebRTCPeerConnectionHandlerClient.h:

(WebRTCPeerConnectionHandlerClient):

12:57 PM BuildingGtk edited by Martin Robinson
(diff)
12:55 PM Changeset in webkit [145739] by schenney@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Add new Skia code suppression flags

Unreviewed build update.

  • skia_webkit.gyp: Add 'SK_DISABLE_BLUR_ROUNDING', 'SK_IGNORE_SUBPIXEL_AXIS_ALIGN_FIX',

'SK_IGNORE_PICTURE_RECORD_SAVE_LAYER_OPT', 'SK_IGNORE_FAST_RECT_BLUR', 'SK_IGNORE_CUBIC_STROKE_FIX'

12:46 PM Changeset in webkit [145738] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[GTK] Build fixes after 145552
https://bugs.webkit.org/show_bug.cgi?id=112267

Patch by Zan Dobersek <zdobersek@igalia.com> on 2013-03-13
Reviewed by Gustavo Noronha Silva.

Source/Platform:

  • GNUmakefile.am: Include the same-level GNUmakefile.list.am.

Fix a typo in the inline visibility compiler flag.

Source/WebKit2:

  • GNUmakefile.am: Narrow down the dependency CFLAGS list to only ones that are actually needed

to build the platformgtk_sources into libPlatformGtk2.la. At the moment this means only
GTK+-2.0 CFLAGS are used.

12:32 PM Changeset in webkit [145737] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

Clean out some stale chromium TestExpectations entries.

  • platform/chromium/TestExpectations:
12:28 PM Changeset in webkit [145736] by tony@chromium.org
  • 5 edits
    2 adds in trunk

Regression(r143542): -webkit-align-items: center with overflow: auto/scroll has extra bottom padding
https://bugs.webkit.org/show_bug.cgi?id=112047

Reviewed by Ojan Vafai.

Source/WebCore:

Add a new pass for computing the client bottom edge that runs after we've repositioned children
due to wrap-reverse, flex-end or vertical centering.

Test: css3/flexbox/negative-overflow.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock): Remove the code to use clientLogicalBottom() that was computed before
repositioning. The repositioning can change the edge.
(WebCore::RenderFlexibleBox::clientLogicalBottomAfterRepositioning): Compute the new bottom based on the final position
of flex items.

  • rendering/RenderFlexibleBox.h:

(RenderFlexibleBox):

LayoutTests:

  • css3/flexbox/negative-overflow-expected.txt: Added.
  • css3/flexbox/negative-overflow.html: Added.
  • resources/check-layout.js: Add attributes for checking scroll width and scroll height.
12:14 PM Changeset in webkit [145735] by Nate Chapin
  • 10 edits
    2 adds in trunk

.: Expose symbols for internals
https://bugs.webkit.org/show_bug.cgi?id=112194

Reviewed by Alexey Proskuryakov.

  • Source/autotools/symbols.filter:

Source/WebCore: REGRESSION(r137607): Redirecting a post to a get then reloading triggers resubmit warning
https://bugs.webkit.org/show_bug.cgi?id=112194

Reviewed by Alexey Proskuryakov.

Test: http/tests/navigation/post-redirect-get-reload.php

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::willSendRequest): Matching urls aren't a reliable way of checking whether

we are in a redirect. Check redirectResponse.isNull() instead.

  • testing/Internals.cpp:

(WebCore::Internals::forceReload): Expose a means of forcing a reload like one a user generates for testing.

Note that testRunner.queueReload() does this, but is not supported after the initial load completes,
which makes it unsuitable for this case.

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit/win: Expose symbols for internals
https://bugs.webkit.org/show_bug.cgi?id=112194

Reviewed by Alexey Proskuryakov.

  • WebKit.vcproj/WebKitExports.def.in:

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=112194.

Reviewed by Alexey Proskuryakov.

  • http/tests/navigation/post-redirect-get-reload-expected.txt: Added.
  • http/tests/navigation/post-redirect-get-reload.php: Added.
12:11 PM Changeset in webkit [145734] by Nate Chapin
  • 5 edits in trunk/Source/WebCore

Merge MainResourceLoader's didFinishLoading and dataReceived into DocumentLoader
https://bugs.webkit.org/show_bug.cgi?id=109952

Reviewed by Antti Koivisto.

No new tests, refactor only.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::DocumentLoader):
(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::responseReceived):
(WebCore::DocumentLoader::receivedData):
(WebCore::DocumentLoader::maybeLoadEmpty):

  • loader/DocumentLoader.h:
  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::responseReceived): Move content filtering to

DocumentLoader.

(WebCore::MainResourceLoader::dataReceived): Mostly moved to DocumentLoader.
(WebCore::MainResourceLoader::didFinishLoading): Mostly moved to DocumentLoader.

  • loader/MainResourceLoader.h: Expose some variables that haven't been moved

to DocumentLoader yet.

11:52 AM Changeset in webkit [145733] by Lucas Forschler
  • 5 edits in branches/safari-534.59-branch/Source

Versioning.

11:51 AM Changeset in webkit [145732] by Lucas Forschler
  • 1 copy in tags/Safari-534.59.5

New Tag.

11:47 AM Changeset in webkit [145731] by Antoine Quint
  • 4 edits in trunk/Source/WebKit2

Calling WebInspectorClient::highlight() during a fade-out animation of the PageOverlay won't stop its animation
https://bugs.webkit.org/show_bug.cgi?id=112271

Reviewed by Tim Horton.

Add a new stopFadeOutAnimation() on PageOverlay that we call when
WebInspectorClient::highlight() is called and a page overlay
is already available. This ensures that any fade-out animation
is cleared before proceeding with showing the page overlay
for the new highlight.

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::highlight):

  • WebProcess/WebPage/PageOverlay.cpp:

(WebKit::PageOverlay::stopFadeOutAnimation):
(WebKit):

  • WebProcess/WebPage/PageOverlay.h:

(PageOverlay):

11:42 AM Changeset in webkit [145730] by Lucas Forschler
  • 4 edits in branches/safari-536.29-branch/Source

Versioning

11:39 AM Changeset in webkit [145729] by Lucas Forschler
  • 1 copy in tags/Safari-536.29.9

New Tag.

11:32 AM Changeset in webkit [145728] by abucur@adobe.com
  • 3 edits
    2 adds in trunk

[CSS Regions] Break after doesn't work correctly with auto-height regions
https://bugs.webkit.org/show_bug.cgi?id=112241

Reviewed by David Hyatt.

Source/WebCore:

The change correctly returns the break position during the normal layout phase for
auto-height regions. The problem doesn't exist during the constrained layout phase
so it only affects the size of the auto-height regions by incorrectly positioning
the content inside the flow.

Test: fast/regions/autoheight-break-after.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::applyAfterBreak): Include the margin offset in the returned break position.

LayoutTests:

This reference test verifies the correct break positioned is computed when there are auto-height regions during
the normal layout phase.
The test includes an auto-height region, a region with a specified size and an auto-height region. The first
region ends with a paragraph with a forced break after. During the normal layout phase, if the paragraph margin
is not included in the break offset, the next paragraph is incorrectly positioned and it will result in an
incorrectly sized last region.
In the constrained layout phase, the break position is returned correctly, the paragraph is positioned further down
causing overflow in the auto-height region.

  • fast/regions/autoheight-break-after-expected.html: Added.
  • fast/regions/autoheight-break-after.html: Added.
11:14 AM Changeset in webkit [145727] by caseq@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: coalesce repeating timeline records
https://bugs.webkit.org/show_bug.cgi?id=112168

Reviewed by Vsevolod Vlasov.

  • coalesce repeating top-level timeline events;
  • drive-by: only show categories that actually took time in aggregated stats;
  • English.lproj/localizedStrings.js:
  • inspector/front-end/TimelineFrameController.js:

(WebInspector.TimelineFrameController.prototype._innerAddRecord):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._highlightRect):
(WebInspector.TimelineCalculator.prototype.computeBarGraphPercentages):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.prototype.reset):
(WebInspector.TimelinePresentationModel.prototype._innerAddRecord):
(WebInspector.TimelinePresentationModel.prototype._updateAncestorStats):
(WebInspector.TimelinePresentationModel.prototype._findCoalescedParent):
(WebInspector.TimelinePresentationModel.prototype._replaceWithCoalescedRecord):
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.adoptRecord):
(WebInspector.TimelinePresentationModel.insertRetrospectiveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get selfTime):
(WebInspector.TimelinePresentationModel.Record.prototype._generatePopupContentWithImagePreview):
(WebInspector.TimelinePresentationModel.Record.prototype._getRecordDetails):
(WebInspector.TimelinePresentationModel.Record.prototype.calculateAggregatedStats):

10:01 AM Changeset in webkit [145726] by pdr@google.com
  • 4 edits
    2 adds in trunk

Fix body background image geometry calculation
https://bugs.webkit.org/show_bug.cgi?id=112226

Reviewed by Stephen Chenney.

Source/WebCore:

Images that depend on a container size require a call to set the container size before
rendering, and a call to look up the correct image during painting.

The body's renderer is special in that it may not be the renderer that actually paints its
background. This patch fixes a bug where the correct RenderObject was used for looking up
the image, but not for setting the container size. This fixes SVG background images on body.

Test: svg/as-background-image/svg-as-background-body.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):
(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):

This change introduces clientForBackgroundImage in the background geometry calculation.
This is very similar to how the client is looked up in paintFillLayerExtended.

  • rendering/RenderBoxModelObject.h:

The new signature for calculateBackgroundImageGeometry now mirrors
paintFillLayerExtended, containing a parameter for the correct background renderer.

(RenderBoxModelObject):

LayoutTests:

This test is required to have a repeating background, as we optimize non-repeating
backgrounds so the bug is not hit. A light green color is used so the text is still
readable, and gridlines are present to prove the correct container size is being used.

  • svg/as-background-image/svg-as-background-body-expected.html: Added.
  • svg/as-background-image/svg-as-background-body.html: Added.
9:28 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
9:27 AM Changeset in webkit [145725] by Carlos Garcia Campos
  • 16 edits in releases/WebKitGTK/webkit-2.0

[GTK] Add webkit_uri_request_get_http_headers to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=112160

Reviewed by Martin Robinson.

Source/WebCore:

  • platform/network/soup/GOwnPtrSoup.cpp:

(WTF::SoupMessageHeaders): Add freeOwnedGPtr implementation for
SoupMessageHeaders.
(WTF):

  • platform/network/soup/GOwnPtrSoup.h:

(WTF):

  • platform/network/soup/ResourceRequest.h:

(ResourceRequest):

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::updateSoupMessageHeaders): New function
to update the given SoupMessageHeaders with the ResourceRequest
headers.
(WebCore::ResourceRequest::updateFromSoupMessageHeaders): New
function to update the ResourceRequest headers with the given
SoupMessageHeaders.
(WebCore::ResourceRequest::updateSoupMessage): Use
updateSoupMessageHeaders() to update the headers.
(WebCore::ResourceRequest::toSoupMessage): Ditto.
(WebCore::ResourceRequest::updateFromSoupMessage): Use
updateFromSoupMessageHeaders to update the headers.

Source/WebKit2:

It allows to load requests with custom headers, or to update the
headers of a request before being sent to the server in the
WebKitWebPage::send-request callback.

  • UIProcess/API/gtk/WebKitURIRequest.cpp:

(_WebKitURIRequestPrivate): Add SoupMessageHeaders.
(webkit_uri_request_get_http_headers): Return the HTTP headers of
the request as a SoupMessageHeaders if the request is HTTP. A new
SoupMessageHeaders is created on demand using the existing headers
of the request.
(webkitURIRequestGetResourceRequest): Instead of returning a const
reference of the internal ResourceRequest, set a request passed as
a reference and update its HTTP headers using the
SoupMessageHeaders if present.

  • UIProcess/API/gtk/WebKitURIRequest.h:
  • UIProcess/API/gtk/WebKitURIRequestPrivate.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_load_request): Update to the new
webkitURIRequestGetResourceRequest API.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add

webkit_uri_request_get_http_headers symbol.

  • UIProcess/API/gtk/tests/TestLoaderClient.cpp:

(testWebPageURI):
(testURIRequestHTTPHeaders):
(serverCallback):
(beforeAll):

  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:

(willSendRequestForFrame): Update to the new
webkitURIRequestGetResourceRequest API.

Tools:

  • MiniBrowser/gtk/GNUmakefile.am: Add missing libsoup flags to

CPPFLAGS.

9:23 AM Changeset in webkit [145724] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [CodeMirror] Handle "enter" key in {|} situation
https://bugs.webkit.org/show_bug.cgi?id=112153

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-13
Reviewed by Vsevolod Vlasov.

Add a keymap to handle "Enter" key and override it in case of {|}
situation.

No new tests.

  • inspector/front-end/CodeMirrorTextEditor.js:

(WebInspector.CodeMirrorTextEditor):
(WebInspector.CodeMirrorTextEditor.BlockIndentController):
(WebInspector.CodeMirrorTextEditor.BlockIndentController.prototype.Enter):

8:47 AM Changeset in webkit [145723] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [CodeMirror] bug with LineWidgets
https://bugs.webkit.org/show_bug.cgi?id=111978

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-13
Reviewed by Vsevolod Vlasov.

Implement CodeMirrorTextEditor.beginUpdates and
CodeMirrorTextEditor.endUpdates and surround decoration creation
with the beginUpdates/endUpdates calls.

No new tests.

  • inspector/front-end/CodeMirrorTextEditor.js:

(WebInspector.CodeMirrorTextEditor):
(WebInspector.CodeMirrorTextEditor.prototype.beginUpdates):
(WebInspector.CodeMirrorTextEditor.prototype.endUpdates):

  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame.prototype.addMessageToSource):

8:38 AM Changeset in webkit [145722] by commit-queue@webkit.org
  • 23 edits in trunk/Source/WebKit/gtk

[GTK][Introspection] Fix of gtk doc annotation warnings
https://bugs.webkit.org/show_bug.cgi?id=109182

Patch by Tomas Popela <tpopela@redhat.com> on 2013-03-13
Reviewed by Martin Robinson.

Fixed some gtk doc annotation warnings that appears during
compiling. Also some white characters were removed and some restyling
was done - all the g_signal_new in webkit directory have now the same
style.

  • webkit/webkitdownload.cpp:

(webkit_download_class_init):

  • webkit/webkitfavicondatabase.cpp:

(webkit_favicon_database_class_init):

  • webkit/webkitgeolocationpolicydecision.cpp:
  • webkit/webkitglobals.cpp:
  • webkit/webkithittestresult.h:
  • webkit/webkiticondatabase.cpp:

(webkit_icon_database_class_init):

  • webkit/webkitsecurityorigin.cpp:
  • webkit/webkitsecurityorigin.h:
  • webkit/webkitsoupauthdialog.cpp:
  • webkit/webkitspellchecker.cpp:
  • webkit/webkitviewportattributes.cpp:

(webkit_viewport_attributes_class_init):

  • webkit/webkitwebdatabase.cpp:
  • webkit/webkitwebframe.cpp:

(webkit_web_frame_class_init):

  • webkit/webkitwebframe.h:
  • webkit/webkitwebinspector.cpp:

(webkit_web_inspector_class_init):

  • webkit/webkitwebnavigationaction.cpp:

(webkit_web_navigation_action_class_init):

  • webkit/webkitwebplugindatabase.cpp:
  • webkit/webkitwebpolicydecision.cpp:
  • webkit/webkitwebresource.cpp:

(webkit_web_resource_class_init):

  • webkit/webkitwebsettings.cpp:

(webkit_web_settings_class_init):

  • webkit/webkitwebview.cpp:

(webkit_web_view_class_init):
(webkit_web_view_apply_zoom_level):

  • webkit/webkitwebwindowfeatures.cpp:

(webkit_web_window_features_equal):

8:37 AM Changeset in webkit [145721] by acolwell@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

Cleanup dead MediaSource code now that the Chromium-side refactor is complete.
https://bugs.webkit.org/show_bug.cgi?id=110371

Reviewed by Adam Barth.

  • public/WebMediaPlayer.h:

(WebKit):
(WebMediaPlayer): Remove old MediaSource methods and default MediaSource load() implementation.

  • public/WebMediaPlayerClient.h: Remove old MediaSource methods.
  • src/WebMediaPlayerClientImpl.cpp: Remove WebMediaSourceClientImpl & WebSourceBufferImpl classes that

are no longer needed.

  • src/WebMediaPlayerClientImpl.h: Remove old MediaSource methods.

(WebMediaPlayerClientImpl):

8:34 AM Changeset in webkit [145720] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Touch Hold selection does not scroll text area or other subframe until selection reaches bottom of the page.
https://bugs.webkit.org/show_bug.cgi?id=112259

Patch by Iris Wu <shuwu@blackberry.com> on 2013-03-13
Reviewed by Rob Buis.

PR 267394

While selecting in a subframe, check that the selection reaches
the bottom of the current subframe instead of the page.

Internally Reviewed by Genevieve Mak.

  • Api/InRegionScroller.cpp:

(BlackBerry::WebKit::InRegionScrollerPrivate::updateSelectionScrollView):

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::selectAtPoint):
(BlackBerry::WebKit::SelectionHandler::ensureSelectedTextVisible):
(BlackBerry::WebKit::SelectionHandler::selectionViewportRect):
(WebKit):
(BlackBerry::WebKit::SelectionHandler::expandSelectionToGranularity):

  • WebKitSupport/SelectionHandler.h:

(BlackBerry::WebKit::SelectionHandler::setSelectionViewportRect):
(SelectionHandler):

8:24 AM Changeset in webkit [145719] by Simon Hausmann
  • 15 edits in trunk

[Qt] Port TestRunner::findString to shared interface
https://bugs.webkit.org/show_bug.cgi?id=112147

Reviewed by Jocelyn Turcotte.

Source/WebKit/qt:

Add new find options used by the DRT.

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:
  • WebCoreSupport/DumpRenderTreeSupportQt.h:
  • WebCoreSupport/QWebPageAdapter.cpp:

(QWebPageAdapter::findText):

  • WebCoreSupport/QWebPageAdapter.h:
  • WidgetApi/qwebpage.cpp:
  • WidgetApi/qwebpage.h:

Tools:

This patch also removes DumpRenderTree and some other helper classes from
the WebCore namespace, to which they do not really belong.

  • DumpRenderTree/qt/DumpRenderTreeMain.cpp:

(main):

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(DumpRenderTree::DumpRenderTree):
(DumpRenderTree::~DumpRenderTree):
(DumpRenderTree::instance):
(DumpRenderTree::setShouldTimeout):

  • DumpRenderTree/qt/DumpRenderTreeQt.h:

(DumpRenderTree):

  • DumpRenderTree/qt/EventSenderQt.cpp:

(EventSender::contextClick):
(EventSender::sendEvent):
(EventSender::postEvent):

  • DumpRenderTree/qt/EventSenderQt.h:

(EventSender::isGraphicsBased):

  • DumpRenderTree/qt/TestRunnerQt.cpp:

(TestRunnerQt::TestRunnerQt):
(TestRunner::findString):
(TestRunnerQt::setMockDeviceOrientation):
(TestRunnerQt::setGeolocationPermission):
(TestRunnerQt::numberOfPendingGeolocationPermissionRequests):
(TestRunnerQt::setMockGeolocationPositionUnavailableError):
(TestRunnerQt::setMockGeolocationPosition):

  • DumpRenderTree/qt/TestRunnerQt.h:

(TestRunnerQt):

7:25 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
7:22 AM Changeset in webkit [145718] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r145561 - [GTK] Remove HILDON_CPPFLAGS and HILDON_CFLAGS references from GNUmakefiles
https://bugs.webkit.org/show_bug.cgi?id=112163

Reviewed by Martin Robinson.

Source/WebCore:

No new tests - no new functionality, merely a cleanup.

  • GNUmakefile.am: The Hildon dependency doesn't exist anymore so there's no need for

references to HILDON_CPPFLAGS and HILDON_CFLAGS.

7:17 AM Changeset in webkit [145717] by pfeldman@chromium.org
  • 33 edits in trunk/Source

Web Inspector: get rid of hiddenPanels filter
https://bugs.webkit.org/show_bug.cgi?id=112252

Reviewed by Vsevolod Vlasov.

Source/WebCore:

  • WebCore.order:
  • inspector/InspectorFrontendClient.h:

(InspectorFrontendClient):

  • inspector/InspectorFrontendHost.cpp:
  • inspector/InspectorFrontendHost.h:

(InspectorFrontendHost):

  • inspector/InspectorFrontendHost.idl:
  • inspector/front-end/InspectorFrontendHostStub.js:
  • inspector/front-end/externs.js:
  • inspector/front-end/inspector.js:

(WebInspector._panelDescriptors):

  • testing/Internals.cpp:

Source/WebKit/chromium:

  • src/InspectorFrontendClientImpl.cpp:
  • src/InspectorFrontendClientImpl.h:

(InspectorFrontendClientImpl):

Source/WebKit/efl:

  • WebCoreSupport/InspectorClientEfl.cpp:
  • WebCoreSupport/InspectorClientEfl.h:

(InspectorFrontendClientEfl):

Source/WebKit/gtk:

  • WebCoreSupport/InspectorClientGtk.cpp:
  • WebCoreSupport/InspectorClientGtk.h:

(InspectorFrontendClient):

Source/WebKit/mac:

  • WebCoreSupport/WebInspectorClient.h:

(WebInspectorFrontendClient):

  • WebCoreSupport/WebInspectorClient.mm:
  • WebKit.order:

Source/WebKit/qt:

  • WebCoreSupport/InspectorClientQt.cpp:

(WebCore):

  • WebCoreSupport/InspectorClientQt.h:

(InspectorFrontendClientQt):

Source/WebKit/win:

  • WebCoreSupport/WebInspectorClient.cpp:
  • WebCoreSupport/WebInspectorClient.h:

(WebInspectorFrontendClient):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
  • WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:

(WebInspectorFrontendClient):

7:14 AM Changeset in webkit [145716] by pfeldman@chromium.org
  • 12 edits
    2 deletes in trunk/LayoutTests

Not reviewed: chromium baselines.

  • platform/chromium-linux/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt: Removed.
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt: Removed.
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt:
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt:
7:13 AM Changeset in webkit [145715] by Philippe Normand
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore/platform/gtk/po

[GTK] POTFILES.in references a removed file
https://bugs.webkit.org/show_bug.cgi?id=112248

Unreviewed, follow-up build fix after r145713.

  • POTFILES.in: WebKitAuthenticationWidget.cpp contains

translatable strings to be processed by gettext.

7:13 AM Changeset in webkit [145714] by mnaganov@chromium.org
  • 4 edits in trunk

[Chromium] Rename android_build_type to android_webview_build in .gyp files.
https://bugs.webkit.org/show_bug.cgi?id=112129

Reviewed by Adam Barth.

Following Chromium
http://src.chromium.org/viewvc/chrome?view=rev&revision=187556
this is being renamed to better explain what it does.

Source/WebKit/chromium:

  • WebKitUnitTests.gyp:

Tools:

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
6:52 AM Changeset in webkit [145713] by Philippe Normand
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore/platform/gtk/po

[GTK] POTFILES.in references a removed file
https://bugs.webkit.org/show_bug.cgi?id=112248

Unreviewed, build fix.

  • POTFILES.in: Remove reference to non-existant file.
6:38 AM Changeset in webkit [145712] by pfeldman@chromium.org
  • 17 edits in trunk/Source

Web Inspector: convert workers inspection into capability
https://bugs.webkit.org/show_bug.cgi?id=112251

Reviewed by Vsevolod Vlasov.

Source/WebCore:

It should be up to backend

  • inspector/Inspector.json:
  • inspector/InspectorFrontendClient.h:

(InspectorFrontendClient):

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

(InspectorFrontendHost):

  • inspector/InspectorFrontendHost.idl:
  • inspector/InspectorWorkerAgent.cpp:

(WebCore::InspectorWorkerAgent::canInspectWorkers):
(WebCore):

  • inspector/InspectorWorkerAgent.h:

(InspectorWorkerAgent):

  • inspector/front-end/InspectorFrontendHostStub.js:
  • inspector/front-end/Settings.js:
  • inspector/front-end/externs.js:
  • inspector/front-end/inspector.js:

(WebInspector.doLoadedDone):

Source/WebKit/chromium:

  • src/InspectorFrontendClientImpl.cpp:
  • src/InspectorFrontendClientImpl.h:

(InspectorFrontendClientImpl):

6:38 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:36 AM Changeset in webkit [145711] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.0

Merge r145395 - [GTK] WebKit2-only build fails
https://bugs.webkit.org/show_bug.cgi?id=112033

Reviewed by Gustavo Noronha Silva.

Source/WebKit2:

  • GNUmakefile.am: Introduce the artifical dependency of libwebkit2gtk on libwebkitgtk only

if building WebKit1 as well. Similarly with the WebKitPluginProcess, depend on libwebkitgtk
only if building WebKit1, the dependency is otherwise not necessary.

Tools:

  • GNUmakefile.am: Split the list of files the docs-build.stamp target depends on into the

generic part, WebKit1-specific part and WebKit2-specific part.

  • TestWebKitAPI/GNUmakefile.am: The TestGtk executable should not link agains libwebkitgtk

as it is not WebKit1-specific, but should rather link to libWebCore.la and libWebCoreGtk.la
directly.

6:34 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:33 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:30 AM Changeset in webkit [145710] by mikhail.pozdnyakov@intel.com
  • 7 edits in trunk/Source/WebCore

[EFL] Start using evas object directly in Widget class
https://bugs.webkit.org/show_bug.cgi?id=111858

Reviewed by Antonio Gomes.

Based on a patch by Kenneth Rohde Christiansen.

EFL Widget class should use evas object pointer directly rather
than WidgetPrivate* m_data as platformWidget() is a Mac specific
implementation detail that they are moving away from with WebKit2.

This patch brings: firstly better compliance with other ports,
secondly it makes code cleaner.

Besides, the evasObject is only directly used in the ScrollbarEfl
subclass of Widget and not in Widget or ScrollView or any other subclass,
thus the evas_object code has now been concentrated in ScrollbarEfl.

No new tests as there are no behavioral changes.

  • page/efl/EventHandlerEfl.cpp:
  • platform/Widget.h:

(Widget):
(WebCore::Widget::evasObject):

  • platform/efl/ScrollbarEfl.cpp:

(ScrollbarEfl::~ScrollbarEfl):
(scrollbarEflEdjeMessage):
(ScrollbarEfl::show):
(ScrollbarEfl::hide):
(ScrollbarEfl::setParent):
(ScrollbarEfl::updateThumbPositionAndProportion):
(ScrollbarEfl::frameRectsChanged):

  • platform/efl/ScrollbarEfl.h:

(ScrollbarEfl):

  • platform/efl/WidgetEfl.cpp:

(WebCore::Widget::Widget):
(WebCore::Widget::~Widget):
(WebCore::Widget::frameRectsChanged):
(WebCore::Widget::show):
(WebCore::Widget::hide):
(WebCore::Widget::setEvasObject):

  • plugins/efl/PluginViewEfl.cpp:

(WebCore::PluginView::platformGetValue):

6:01 AM Changeset in webkit [145709] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] Unreviewed trivial typo fix

  • DumpRenderTree/qt/DumpRenderTree.pro: It's TestRunner.h, not

TextRunner.h. Thanks Zeno :)

5:48 AM Changeset in webkit [145708] by Simon Hausmann
  • 6 edits in trunk/Tools

[Qt] Prepare DRT for transition to shared TestRunner interface
https://bugs.webkit.org/show_bug.cgi?id=112144

Reviewed by Benjamin Poulain.

Prepare Qt's DRT for a transition from the QObject based TestRunner to
the JSC C API based one.

This is impplemented by instantiating the QObject based testRunner in
the global object, then instantiating the JSC C based TestRunner
separately and placing it "behind" the QObject based testRunner through
injection of the individual functions through proxies. (prototype
chaining doesn't work due to the this object and Function.prototype.bind
doesn't work due to the native function)

This allows for porting over method by method by removing the method
from the QObject TestRunnerQt and implementing it in the JSC C based
TestRunner.

In order for this to link and run dummy implementations of all the
necessary TestRunner functions are provided.

  • DumpRenderTree/qt/DumpRenderTree.pro:
  • DumpRenderTree/qt/DumpRenderTreeMain.cpp:
  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting):
(WebCore::DumpRenderTree::initJSObjects):

  • DumpRenderTree/qt/DumpRenderTreeQt.h:

(DumpRenderTree):

  • DumpRenderTree/qt/TestRunnerQt.cpp:

(TestRunner::~TestRunner):
(TestRunner::addDisallowedURL):
(TestRunner::queueLoad):
(TestRunner::removeAllVisitedLinks):
(TestRunner::setAcceptsEditing):
(TestRunner::simulateLegacyWebNotificationClick):
(TestRunner::setWindowIsKey):
(TestRunner::setAlwaysAcceptCookies):
(TestRunner::addOriginAccessWhitelistEntry):
(TestRunner::setWebViewEditable):
(TestRunner::clearAllApplicationCaches):
(TestRunner::setTextDirection):
(TestRunner::notifyDone):
(TestRunner::numberOfPendingGeolocationPermissionRequests):
(TestRunner::overridePreference):
(TestRunner::pathToLocalResource):
(TestRunner::removeAllWebNotificationPermissions):
(TestRunner::simulateWebNotificationClick):
(TestRunner::closeIdleLocalStorageDatabases):
(TestRunner::focusWebView):
(TestRunner::setBackingScaleFactor):
(TestRunner::removeChromeInputField):
(TestRunner::addChromeInputField):
(TestRunner::originsWithLocalStorage):
(TestRunner::deleteAllLocalStorage):
(TestRunner::deleteLocalStorageForOrigin):
(TestRunner::observeStorageTrackerNotifications):
(TestRunner::syncLocalStorage):
(TestRunner::windowCount):
(TestRunner::setWaitToDump):
(TestRunner::waitForPolicyDelegate):
(TestRunner::webHistoryItemCount):
(TestRunner::showWebInspector):
(TestRunner::closeWebInspector):
(TestRunner::evaluateInWebInspector):
(TestRunner::setSerializeHTTPLoads):
(TestRunner::apiTestNewWindowDataLoadBaseURL):
(TestRunner::setCustomPolicyDelegate):
(TestRunner::setDatabaseQuota):
(TestRunner::setDomainRelaxationForbiddenForURLScheme):
(TestRunner::resetPageVisibility):
(TestRunner::keepWebHistory):
(TestRunner::goBack):
(TestRunner::originsWithApplicationCache):
(TestRunner::applicationCacheDiskUsageForOrigin):
(TestRunner::display):
(TestRunner::dispatchPendingLoadRequests):
(TestRunner::clearPersistentUserStyleSheet):
(TestRunner::callShouldCloseOnWebView):
(TestRunner::copyDecodedHostName):
(TestRunner::clearBackForwardList):
(TestRunner::clearAllDatabases):
(TestRunner::clearApplicationCacheForOrigin):
(TestRunner::apiTestGoToCurrentBackForwardItem):
(TestRunner::authenticateSession):
(TestRunner::abortModal):
(TestRunner::setStorageDatabaseIdleInterval):
(TestRunner::setAsynchronousSpellCheckingEnabled):
(TestRunner::setXSSAuditorEnabled):
(TestRunner::setSpatialNavigationEnabled):
(TestRunner::setScrollbarPolicy):
(TestRunner::setJavaScriptCanAccessClipboard):
(TestRunner::setAutomaticLinkDetectionEnabled):
(TestRunner::setUserStyleSheetEnabled):
(TestRunner::setUserStyleSheetLocation):
(TestRunner::setUseDashboardCompatibilityMode):
(TestRunner::setTabKeyCyclesThroughElements):
(TestRunner::setSmartInsertDeleteEnabled):
(TestRunner::setSelectTrailingWhitespaceEnabled):
(TestRunner::setPrivateBrowsingEnabled):
(TestRunner::setPluginsEnabled):
(TestRunner::setPopupBlockingEnabled):
(TestRunner::setMockSpeechInputDumpRect):
(TestRunner::setPersistentUserStyleSheetLocation):
(TestRunner::setMockGeolocationPosition):
(TestRunner::setMockGeolocationPositionUnavailableError):
(TestRunner::setMockDeviceOrientation):
(TestRunner::setMainFrameIsFirstResponder):
(TestRunner::setIconDatabaseEnabled):
(TestRunner::setGeolocationPermission):
(TestRunner::setDefersLoading):
(TestRunner::setCacheModel):
(TestRunner::setAuthorAndUserStylesEnabled):
(TestRunner::setAllowFileAccessFromFileURLs):
(TestRunner::setAppCacheMaximumSize):
(TestRunner::setAllowUniversalAccessFromFileURLs):
(TestRunner::setApplicationCacheOriginQuota):
(TestRunner::denyWebNotificationPermission):
(TestRunner::grantWebNotificationPermission):
(TestRunner::setValueForUser):
(TestRunner::setViewModeMediaFeature):
(TestRunner::setPageVisibility):
(TestRunner::addMockSpeechInputResult):
(TestRunner::removeOriginAccessWhitelistEntry):
(TestRunner::addUserScript):
(TestRunner::isCommandEnabled):
(TestRunner::evaluateScriptInIsolatedWorld):
(TestRunner::evaluateScriptInIsolatedWorldAndReturnValue):
(TestRunner::copyEncodedHostName):
(TestRunner::addUserStyleSheet):
(TestRunner::findString):
(TestRunner::execCommand):
(TestRunner::localStorageDiskUsageForOrigin):

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

Web Inspector: [CodeMirror] token highlight still has some problems
https://bugs.webkit.org/show_bug.cgi?id=112173

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-13
Reviewed by Vsevolod Vlasov.

Use pseudo elements with borders to draw token highlight.

No new tests.

  • inspector/front-end/cm/cmdevtools.css:

(.cm-token-highlight):
(.cm-token-highlight:before):
(.cm-line-with-selection .cm-column-with-selection:before):

5:42 AM WebKitGTK/2.0.x edited by zandobersek@gmail.com
(diff)
5:38 AM Changeset in webkit [145706] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] SimpleFontData: remove duplicate code
https://bugs.webkit.org/show_bug.cgi?id=112149

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-13
Reviewed by Carlos Garcia Campos.

smallCapsFontData() and emphasisMarkFontData() were moved from
platform specific files into platform/graphics/SimpleFontData.cpp
in r133362, so the BlackBerry port no longer needs its own
implementation.

  • platform/graphics/blackberry/SimpleFontDataBlackBerry.cpp:
5:20 AM Changeset in webkit [145705] by pfeldman@chromium.org
  • 1 edit
    2 deletes in trunk/LayoutTests

Not reviewed: chromium baselines.

  • platform/chromium-linux/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt: Removed.
  • platform/chromium-win/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt: Removed.
5:18 AM Changeset in webkit [145704] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: throw an exception if the requested lazy loaded script does not exist.
https://bugs.webkit.org/show_bug.cgi?id=112237

Reviewed by Pavel Feldman.

  • inspector/front-end/utilities.js:
5:13 AM Changeset in webkit [145703] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

LLINT C loop warning fix for GCC
https://bugs.webkit.org/show_bug.cgi?id=112145

Reviewed by Filip Pizlo.

  • llint/LowLevelInterpreter.cpp:

(JSC::CLoop::execute):

4:27 AM Changeset in webkit [145702] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Source/WebKit2

[WK2][Qt] Regression(145517) WebProcess asserts in debug build on WebKitTestRunner start
https://bugs.webkit.org/show_bug.cgi?id=112223

Reviewed by Simon Hausmann.

We need to only enable the cookie jar and the disk cache conditionally
in the web process since we removed default paths and WKTR doesn't provide
them.

  • WebProcess/qt/WebProcessQt.cpp:

(WebKit::WebProcess::platformSetCacheModel):
(WebKit::WebProcess::platformInitializeWebProcess):

4:22 AM Changeset in webkit [145701] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WTF

Support C++11 features in GCC <4.6
https://bugs.webkit.org/show_bug.cgi?id=111553

Reviewed by Simon Hausmann.

Enable support for rvalue references from gcc 4.3, deleted functions
from gcc 4.4, explicit conversion from gcc 4.5, and strongly typed
enums from gcc 4.6.

  • wtf/Compiler.h:
3:14 AM Changeset in webkit [145700] by Simon Hausmann
  • 3 edits
    2 adds in trunk/Source/JavaScriptCore

Add support for convenient conversion from JSStringRef to QString
https://bugs.webkit.org/show_bug.cgi?id=109694

Reviewed by Allan Sandfeld Jensen.

Add JSStringCopyQString helper function that allows for the convenient
extraction of a QString out of a JSStringRef.

  • API/JSStringRefQt.cpp: Added.

(JSStringCopyQString):

  • API/JSStringRefQt.h: Added.
  • API/OpaqueJSString.h:

(OpaqueJSString):
(OpaqueJSString::qString):
(OpaqueJSString::OpaqueJSString):

  • Target.pri:
3:13 AM Changeset in webkit [145699] by apavlov@chromium.org
  • 3 edits in branches/chromium/1410

Merge 144608 "Web Inspector: touchmove not emulated inside iframe"

Web Inspector: touchmove not emulated inside iframe
https://bugs.webkit.org/show_bug.cgi?id=111292

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Move fake touch event dispatching from mouseMoved() into handleMouseMoveEvent()
and bail out earlier from dispatchSyntheticTouchEventIfEnabled() when the event
should be dispatched on a subframe.

  • page/EventHandler.cpp:

(WebCore::EventHandler::mouseMoved):
(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):

LayoutTests:

  • fast/events/touch/emulated-touch-iframe.html:
  • fast/events/touch/resources/emulated-touch-iframe2.html:

TBR=apavlov@chromium.org
Review URL: https://codereview.chromium.org/12561004

2:58 AM Changeset in webkit [145698] by kadam@inf.u-szeged.hu
  • 4 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskip now passing compositing tests.

  • platform/qt-5.0-wk1/TestExpectations:
  • platform/qt-5.0-wk2/TestExpectations:
  • platform/qt/TestExpectations:
2:46 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:45 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:44 AM Changeset in webkit [145697] by Carlos Garcia Campos
  • 16 edits
    6 adds
    4 deletes in releases/WebKitGTK/webkit-2.0

[GTK] Split GtkAuthenticationDialog in two widgets
https://bugs.webkit.org/show_bug.cgi?id=103644

Reviewed by Xan Lopez.

.:

  • Source/autotools/Versions.m4: Bump GTK+ 2 requirements to 2.16

for GtkOrientable.

Source/WebCore:

The current GtkAuthenticationDialog implements both the common
logic and widgets to implement a real GtkDialog and a widget to be
embedded in any container. WebKit1 uses a GtkDialog while WebKit2
embeds the dialog in the WebView. This patch splits the code to
leave in Platform only the code that is actually common, leaving
the widget implementation to the WebKit layer, using a dialog in
WebKit1 and embedding auth widget in the WebView in WebKit2.

  • GNUmakefile.list.am: Add new files to compilation.
  • platform/gtk/GtkAuthenticationDialog.cpp: Removed.
  • platform/gtk/GtkAuthenticationDialog.h: Removed.
  • platform/gtk/WebKitAuthenticationWidget.cpp: Added.

(_WebKitAuthenticationWidgetPrivate):
(packTwoColumnLayoutInBox):
(createLabel):
(createEntry):
(webkitAuthenticationWidgetInitialize):
(webkitAuthenticationWidgetFinalize):
(webkit_authentication_widget_init):
(webkit_authentication_widget_class_init):
(webkitAuthenticationWidgetNew):
(webkitAuthenticationWidgetCreateCredential):
(webkitAuthenticationWidgetGetChallenge):

  • platform/gtk/WebKitAuthenticationWidget.h: Added.

(_WebKitAuthenticationWidget):
(_WebKitAuthenticationWidgetClass):

Source/WebKit/gtk:

  • GNUmakefile.am: Add new files to compilation.
  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
Use helper createAuthenticationDialog() to create and show the
auth dialog.

  • webkit/webkitauthenticationdialog.cpp: Added.

(authenticationDialogResponseCallback):
(createAuthenticationDialog):

  • webkit/webkitauthenticationdialog.h: Added.
  • webkit/webkitsoupauthdialog.cpp:

(sessionAuthenticate): Ditto.

Source/WebKit2:

  • GNUmakefile.list.am: Add new files to compilation.
  • UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp: Removed.
  • UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h: Removed.
  • UIProcess/API/gtk/WebKitAuthenticationDialog.cpp: Added.

(webkitAuthenticationDialogAuthenticate): Use the
AuthenticationChallengeProxy to authenticate and destroy the dialog.
(okButtonClicked): Call webkitAuthenticationDialogAuthenticate()
with the credential.
(cancelButtonClicked): Call
webkitAuthenticationDialogAuthenticate() with a NULL credential to
continue without credential.
(webkitAuthenticationDialogInitialize): Build the UI.
(webkitAuthenticationDialogDraw): Draw a background.
(webkitAuthenticationDialogMap): Grab default button.
(webkitAuthenticationDialogConstructed): Create a GtkStyleContext
with the GtkWindow path to draw the widget background like a real
dialog.
(webkit_authentication_dialog_class_init):
(webkitAuthenticationDialogNew): Create a new
WebKitAuthenticationDialog widget.

  • UIProcess/API/gtk/WebKitAuthenticationDialog.h: Added.
  • UIProcess/API/gtk/WebKitLoaderClient.cpp:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewHandleAuthenticationChallenge): Create a
WebKitAuthenticationDialog widget and pass add it to the
container.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(_WebKitWebViewBasePrivate): Updated to use the widget directly.
(webkitWebViewChildIsInternalWidget): Ditto.
(webkitWebViewBaseAddAuthenticationDialog): Ditto.
(webkitWebViewBaseCancelAuthenticationDialog): Ditto.
(webkitWebViewBaseContainerRemove): Ditto.
(webkitWebViewBaseContainerForall): Ditto.
(resizeWebKitWebViewBaseFromAllocation): Ditto.
(webkitWebViewBaseFocus): Ditto.
(webkitWebViewBaseDestroy): Destroy the auth widget is present.
(webkit_web_view_base_class_init): Add implementation for
GtkWidgetClass::destroy.

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:

Tools:

  • gtk/generate-gtkdoc:

(get_webkit2_options): Do not generate api docs for
WebKitAuthenticationDialog which is private in WebKit2.
(get_webkit1_options): Do not generate api docs for
webkitauthenticationdialog which is private in WebKit1.

2:38 AM Changeset in webkit [145696] by mihnea@adobe.com
  • 10 edits
    5 adds
    2 deletes in trunk/LayoutTests

[chromium] Layout Test fast/repaint/japanese-rl-selection-repaint-in-regions.html is failing
https://bugs.webkit.org/show_bug.cgi?id=106097

Reviewed by Tony Chang.

After http://trac.webkit.org/changeset/138785, the content overflowing the last region in chain is
displayed properly in vertical-rl writing mode. This determined the failure of japanese-rl-selection-repaint-in-regions.html
test due to the overflowing content that now appears when rendered.

I modified the original test by decreasing the font size so that the content is not overflowing, because the purpose
of the original test was not to check the overflowed content anyway. I have generated new expected results for mac and chromium
and unskipped the test on chromium and mac.

  • fast/repaint/japanese-rl-selection-repaint-in-regions.html:
  • platform/chromium-linux/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
  • platform/chromium-linux/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Added.
  • platform/chromium-mac-lion/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Removed.
  • platform/chromium-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
  • platform/chromium-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Added.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Removed.
  • platform/gtk/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
  • platform/gtk/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:
  • platform/mac-lion/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
  • platform/mac-lion/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Added.
  • platform/mac/TestExpectations:
  • platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
  • platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:
2:32 AM Changeset in webkit [145695] by mkwst@chromium.org
  • 7 edits in trunk/Source/WebCore

Pass the XSSAuditor's report URL to the XSSAuditorDelegate on the main thread.
https://bugs.webkit.org/show_bug.cgi?id=112179

Reviewed by Adam Barth.

Rather than relying on XSSInfo objects to move the XSSAuditor's report
URL into the XSSAuditorDelegate for reporting, we should be able to grab
the URL directly from XSSAuditor before it moves off the main thread,
and store it on the delegate.

This will enable us to drop the report URL properties from both
XSSAuditor and XSSInfo. Oh, happy day!

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::sendTokensToMainThread):

We no longer need to check whether XSSInfo objects are thread safe,
as we've dropped the only problematic bit.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::pumpTokenizer):
(WebCore::HTMLDocumentParser::startBackgroundParser):

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::init):

When initializing the XSSAuditor, pass in an XSSAuditorDelegate*
and assign the report URL directly onto that object.

(WebCore::XSSAuditor::filterToken):

Drop the report URL parameter from XSSInfo objects we create in the
Auditor, as they're now handled directly from the delegate.

(WebCore::XSSAuditor::isSafeToSendToAnotherThread):

Drop the report URL property from XSSAuditor's threadsafeness check,
as properties that do not exist are automatically thread-safe.

  • html/parser/XSSAuditorDelegate.cpp:

(WebCore::XSSAuditorDelegate::didBlockScript):

Use the delegate's own report URL rather than the XSSInfo objects'.

  • html/parser/XSSAuditorDelegate.h:

(WebCore::XSSInfo::create):
(WebCore::XSSInfo::XSSInfo):

Drop the report URL property from XSSInfo.

(WebCore::XSSAuditorDelegate::setReportURL):
(XSSAuditorDelegate):

Provide a public API for setting a delegate's report URL.

2:26 AM Changeset in webkit [145694] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

[EFL] http/tests/websocket/tests/hybi/close-on-navigate-new-location.html is failing
https://bugs.webkit.org/show_bug.cgi?id=112231

Reviewed by Kentaro Hara.

close-on-navigate-new-location.html tests that the websocket is closed when navigating
to a new location (handler_map.txt). However, handler_map.txt does not exist so we get
an HTTP 404 error and we end up not navigating. This patch fixes the navigation path
to "../handler_map.txt" since the file is actually in the parent folder.

  • http/tests/websocket/tests/hybi/close-on-navigate-new-location.html:
2:17 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:15 AM Changeset in webkit [145693] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r145542 - [Gtk] NBSP are not replaced when using X clipboard
https://bugs.webkit.org/show_bug.cgi?id=112118

Patch by Tomas Popela <tpopela@redhat.com> on 2013-03-12
Reviewed by Martin Robinson.

We're not replacing nbsp with spaces when using X clipboard
(Shift+Insert or middle mouse button).

  • platform/gtk/DataObjectGtk.cpp:

(WebCore::DataObjectGtk::text):

2:13 AM Changeset in webkit [145692] by mkwst@chromium.org
  • 127 edits
    1 delete in trunk

Unsafe JavaScript attempt errors are ludicrously verbose and annoying
https://bugs.webkit.org/show_bug.cgi?id=112042

Reviewed by Timothy Hatcher.

Source/WebCore:

This patch attempts to make the most common case of error message less
ludicrous by adjusting it to include only an origin as opposed to full
URLs for the active and target frames. It now reads: "Blocked a frame
with origin 'http://127.0.0.1:8000' from accessing a frame with origin
'http://localhost:8000'. Protocols, domains, and ports must match."

In the interest of keeping the patch size down, I'll follow up on the
other cases (sandboxed access, 'document.domain' mismatches, etc) in
future patches.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::crossDomainAccessErrorMessage):

LayoutTests:

  • fast/xmlhttprequest/xmlhttprequest-no-file-access-expected.txt:
  • http/tests/history/cross-origin-replace-history-object-child-expected.txt:
  • http/tests/history/cross-origin-replace-history-object-expected.txt:
  • http/tests/inspector-protocol/access-inspected-object-expected.txt:
  • http/tests/plugins/cross-frame-object-access-expected.txt:
  • http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt:
  • http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt:
  • http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:
  • http/tests/security/cross-frame-access-call-expected.txt:
  • http/tests/security/cross-frame-access-custom-expected.txt:
  • http/tests/security/cross-frame-access-delete-expected.txt:
  • http/tests/security/cross-frame-access-enumeration-expected.txt:
  • http/tests/security/cross-frame-access-first-time-expected.txt:
  • http/tests/security/cross-frame-access-frameelement-expected.txt:
  • http/tests/security/cross-frame-access-get-custom-property-cached-expected.txt:
  • http/tests/security/cross-frame-access-get-expected.txt:
  • http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt:
  • http/tests/security/cross-frame-access-history-get-expected.txt:
  • http/tests/security/cross-frame-access-history-put-expected.txt:
  • http/tests/security/cross-frame-access-location-get-expected.txt:
  • http/tests/security/cross-frame-access-location-put-expected.txt:
  • http/tests/security/cross-frame-access-name-getter-expected.txt:
  • http/tests/security/cross-frame-access-object-getPrototypeOf-expected.txt:
  • http/tests/security/cross-frame-access-object-prototype-expected.txt:
  • http/tests/security/cross-frame-access-port-expected.txt:
  • http/tests/security/cross-frame-access-put-expected.txt:
  • http/tests/security/cross-frame-access-selection-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt:
  • http/tests/security/isolatedWorld/bypass-main-world-csp-expected.txt:
  • http/tests/security/isolatedWorld/bypass-main-world-csp-for-xhr-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt:
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt:
  • http/tests/security/javascriptURL/xss-DENIED-from-javascript-url-in-foreign-domain-subframe-expected.txt:
  • http/tests/security/javascriptURL/xss-DENIED-from-javascript-url-in-foreign-domain-window-open-expected.txt:
  • http/tests/security/javascriptURL/xss-DENIED-to-javascript-url-in-foreign-domain-subframe-expected.txt:
  • http/tests/security/javascriptURL/xss-DENIED-to-javascript-url-in-foreign-domain-window-open-expected.txt:
  • http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt:
  • http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt:
  • http/tests/security/listener/xss-XMLHttpRequest-addEventListener-expected.txt:
  • http/tests/security/listener/xss-XMLHttpRequest-shortcut-expected.txt:
  • http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt:
  • http/tests/security/listener/xss-window-onclick-shortcut-expected.txt:
  • http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame-expected.txt:
  • http/tests/security/xss-DENIED-assign-location-hash-expected.txt:
  • http/tests/security/xss-DENIED-assign-location-host-expected.txt:
  • http/tests/security/xss-DENIED-assign-location-hostname-expected.txt:
  • http/tests/security/xss-DENIED-assign-location-href-javascript-expected.txt:
  • http/tests/security/xss-DENIED-assign-location-nonstandardProperty-expected.txt:
  • http/tests/security/xss-DENIED-assign-location-pathname-expected.txt:
  • http/tests/security/xss-DENIED-assign-location-protocol-expected.txt:
  • http/tests/security/xss-DENIED-assign-location-reload-expected.txt:
  • http/tests/security/xss-DENIED-assign-location-search-expected.txt:
  • http/tests/security/xss-DENIED-defineProperty-expected.txt:
  • http/tests/security/xss-DENIED-frame-name-expected.txt:
  • http/tests/security/xss-DENIED-getSVGDocument-iframe-expected.txt:
  • http/tests/security/xss-DENIED-getSVGDocument-object-expected.txt:
  • http/tests/security/xss-DENIED-htmlelelment-with-iframe-proto-expected.txt:
  • http/tests/security/xss-DENIED-iframe-src-alias-expected.txt:
  • http/tests/security/xss-DENIED-invalid-domain-change-expected.txt:
  • http/tests/security/xss-DENIED-javascript-with-spaces-expected.txt:
  • http/tests/security/xss-DENIED-method-with-iframe-proto-expected.txt:
  • http/tests/security/xss-DENIED-synchronous-form-expected.txt:
  • http/tests/security/xss-DENIED-synchronous-frame-load-in-javascript-url-expected.txt:
  • http/tests/security/xss-DENIED-window-open-javascript-url-expected.txt:
  • http/tests/security/xss-DENIED-window-open-javascript-url-with-spaces-expected.txt:
  • http/tests/security/xss-DENIED-window-open-parent-expected.txt:
  • http/tests/security/xss-DENIED-xsl-document-securityOrigin-expected.txt:
  • http/tests/security/xss-eval-expected.txt:
  • http/tests/security/xssAuditor/block-does-not-leak-location-expected.txt:
  • platform/chromium/http/tests/inspector/console-cross-origin-iframe-logging-expected.txt:
  • platform/chromium/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt:
  • platform/chromium/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt:
  • platform/chromium/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:
  • platform/chromium/http/tests/security/cross-frame-access-call-expected.txt:
  • platform/chromium/http/tests/security/cross-frame-access-document-direct-expected.txt:
  • platform/chromium/http/tests/security/cross-frame-access-enumeration-expected.txt:
  • platform/chromium/http/tests/security/cross-frame-access-history-get-expected.txt:
  • platform/chromium/http/tests/security/cross-frame-access-history-put-expected.txt:
  • platform/chromium/http/tests/security/cross-frame-access-location-put-expected.txt:
  • platform/chromium/http/tests/security/cross-frame-access-put-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt:
  • platform/chromium/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt:
  • platform/chromium/http/tests/security/listener/xss-inactive-closure-expected.txt:
  • platform/chromium/http/tests/security/xss-DENIED-assign-location-href-javascript-expected.txt:
  • platform/chromium/http/tests/security/xss-DENIED-defineProperty-expected.txt:
  • platform/chromium/http/tests/security/xss-DENIED-frame-name-expected.txt:
2:09 AM Changeset in webkit [145691] by tasak@google.com
  • 8 edits
    2 adds in trunk

Implement :scope for element.querySelector[All]()
https://bugs.webkit.org/show_bug.cgi?id=81069

Reviewed by Dimitri Glazkov.

Source/WebCore:

Implemented :scope for element.querySelector[All]().
Reuse scope in SelectorCheckingContext and added a new value to
enum BehaviorAtBoundary.
:scope spec is http://dev.w3.org/csswg/selectors4/#scope-pseudo.

Test: fast/selectors/querySelector-scope.html

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::pseudoId):
(WebCore::nameToPseudoTypeMap):
(WebCore::CSSSelector::extractPseudoType):
Added :scope pseudo type.

  • css/CSSSelector.h:
  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::match):
(WebCore::SelectorChecker::checkOne):
Added PseudoScope case and modified "scope" meaning when
behaviorAtBoundary is equal to StaysWithinTreeScope.
If so, "scope" is just a contextual reference node.

  • css/SelectorChecker.h:
  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::selectorMatches):
(WebCore::SelectorDataList::matches):
(WebCore::SelectorDataList::execute):
Use rootNode as a contextual reference node.

  • dom/SelectorQuery.h:

(SelectorDataList):

LayoutTests:

  • fast/selectors/querySelector-scope-expected.txt: Added.
  • fast/selectors/querySelector-scope.html: Added.
2:09 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:07 AM Changeset in webkit [145690] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0

Merge r145560 - [GTK] 'unrecognized command line option "-Wno-c++11-extensions"' warning reported when using gcc
https://bugs.webkit.org/show_bug.cgi?id=111936

Reviewed by Martin Robinson.

  • Source/autotools/SetupCompilerFlags.m4: Only use the -Wno-c++11-extensions warning when building

with Clang as GCC does not support the warning just yet. Also enhance the comment about using libstdc++
as the standard C++ library when compiling with Clang.

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

Token 'not' is ignored in the offlineasm.
https://bugs.webkit.org/show_bug.cgi?id=111568

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2013-03-13
Reviewed by Filip Pizlo.

  • offlineasm/parser.rb: Build the Not AST node if the 'not' token is found.
2:06 AM Changeset in webkit [145688] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/TestExpectations:
2:06 AM Changeset in webkit [145687] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[BlackBerry] FontPlatformData: remove TextOrientation parameter
https://bugs.webkit.org/show_bug.cgi?id=112135

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-13
Reviewed by Rob Buis.

This doesn't exist since r136520.

  • platform/graphics/blackberry/FontCacheBlackBerry.cpp:

(WebCore::FontCache::createFontPlatformData):

  • platform/graphics/blackberry/FontCustomPlatformData.h:

(FontCustomPlatformData):

  • platform/graphics/blackberry/FontCustomPlatformDataBlackBerry.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • platform/graphics/blackberry/FontPlatformDataBlackBerry.cpp:

(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::applyState):

  • platform/graphics/blackberry/SimpleFontDataBlackBerry.cpp:

(WebCore::SimpleFontData::createScaledFontData):

1:58 AM Changeset in webkit [145686] by mikhail.pozdnyakov@intel.com
  • 11 edits in trunk/LayoutTests

[EFL] Unreviewed rebaseline.

  • platform/efl/compositing/overflow/composited-scrolling-paint-phases-expected.txt:

Rebaseline after r145422.

  • platform/efl/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt:
  • platform/efl/css3/flexbox/flexbox-baseline-expected.txt:
  • platform/efl/fast/css-generated-content/015-expected.txt:
  • platform/efl/fast/css/h1-in-section-elements-expected.txt:
  • platform/efl/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
  • platform/efl/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt:
  • platform/efl/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug126742-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug69187-expected.txt:

Rebaseline after r145242.

1:13 AM Changeset in webkit [145685] by mikhail.pozdnyakov@intel.com
  • 12 edits in trunk/LayoutTests

EFL rebaseline after r145242.

  • platform/efl/css1/basic/inheritance-expected.txt:
  • platform/efl/css1/box_properties/clear_float-expected.txt:
  • platform/efl/css1/box_properties/margin-expected.txt:
  • platform/efl/css1/box_properties/margin_bottom-expected.txt:
  • platform/efl/css1/box_properties/margin_top-expected.txt:
  • platform/efl/css1/box_properties/padding-expected.txt:
  • platform/efl/css1/box_properties/padding_bottom-expected.txt:
  • platform/efl/css1/box_properties/padding_top-expected.txt:
  • platform/efl/css1/color_and_background/background_attachment-expected.txt:
  • platform/efl/css1/font_properties/font_weight-expected.txt:
  • platform/efl/css1/formatting_model/vertical_formatting-expected.txt:
12:52 AM Changeset in webkit [145684] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/TestExpectations: Adding failure expectation for the SVG test after r145541.
12:43 AM Changeset in webkit [145683] by kadam@inf.u-szeged.hu
  • 2 edits
    50 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskipp some passing compositing tests.

  • platform/qt-5.0-wk1/TestExpectations:
  • platform/qt-5.0-wk1/compositing/direct-image-compositing-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/direct-image-compositing-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/fixed-in-composited-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/geometry/fixed-in-composited-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/layer-due-to-layer-children-switch-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/limit-layer-bounds-opacity-transition-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/limit-layer-bounds-positioned-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/limit-layer-bounds-transformed-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/geometry/video-fixed-scrolling-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/geometry/video-fixed-scrolling-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/iframes/iframe-copy-on-scroll-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/iframes/iframe-copy-on-scroll-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/iframes/iframe-size-from-zero-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/iframes/page-cache-layer-tree-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/layer-creation/scroll-partial-update-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/layer-creation/spanOverlapsCanvas-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/overflow/overflow-auto-with-touch-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/overflow/overflow-auto-with-touch-toggle-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/overflow/overflow-overlay-with-touch-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/overflow/scroll-ancestor-update-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/overflow/scroll-ancestor-update-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/overflow/scrolling-without-painting-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/overflow/textarea-scroll-touch-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/overflow/updating-scrolling-content-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/plugins/no-backing-store-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/plugins/small-to-large-composited-plugin-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/repaint/invalidations-on-composited-layers-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-absolute-overflow-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-fixed-overflow-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/self-painting-layers-expected.png: Added.
  • platform/qt-5.0-wk1/compositing/self-painting-layers-expected.txt: Added.
  • platform/qt-5.0-wk1/compositing/video/video-poster-expected.txt: Added.
12:12 AM Changeset in webkit [145682] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding expectations for a couple of flaky crashers on the debug builder.
Adding flaky failure expectations for a couple of SVG animations tests.
Adding failure expectation for the SVG test introduced in 145541, failing due to disabled subpixel layout.

  • platform/gtk/TestExpectations:

Mar 12, 2013:

10:44 PM Changeset in webkit [145681] by vsevik@chromium.org
  • 4 edits in trunk/LayoutTests

Unreviewed inspector test fix.

  • http/tests/inspector/resource-tree/resource-request-content-after-loading-and-clearing-cache.html:
  • inspector/datagrid-autosize.html:
  • inspector/debugger/breakpoint-manager-listeners-count.html:
9:55 PM Changeset in webkit [145680] by Antti Koivisto
  • 5 edits
    3 adds in trunk

Basic child obscuration test for backgrounds
https://bugs.webkit.org/show_bug.cgi?id=111701

Source/WebCore:

Reviewed by Simon Fraser.

Test: fast/repaint/obscured-background-no-repaint.html

We can easily detect some simple cases where a background image is fully obscured by an opaque child.

This avoids unncessary painting and image decoding. It is especially helpful for cases like about.com home
page where a fully obscured 'loading' spinner keeps triggering frequent complex repaints (gif animations
progress by getting painted and stop if they are not).

This could be made way more sophisticated. The checking could also be done per-layout rather per-paint.
Even this simple approach gets hit surprisingly often in real world sites.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::backgroundIsObscured):

Before painting background test if any single child renderer fully obscures it.

(WebCore::RenderBox::backgroundIsOpaqueInRect):

  • rendering/RenderBox.h:

LayoutTests:

Reviewed by Simon Fraser.

  • fast/repaint/obscured-background-no-repaint-expected.txt: Added.
  • fast/repaint/obscured-background-no-repaint.html: Added.
  • fast/repaint/resources/animated.gif: Added.
9:14 PM Changeset in webkit [145679] by jparent@chromium.org
  • 5 edits in trunk/Tools

Cleanup: Move flatten-trie to loader.
https://bugs.webkit.org/show_bug.cgi?id=112196

Reviewed by Dirk Pranke.

flatten-trie is used only by the loader, so move it there and make it
private, rather than global in dashbaord_base. Moved the corresponding
unit test from flakiness_dashboard_unittests to loader_unittests.

  • TestResultServer/static-dashboards/dashboard_base.js:
  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
  • TestResultServer/static-dashboards/loader.js:

(.):

  • TestResultServer/static-dashboards/loader_unittests.js:
8:59 PM Changeset in webkit [145678] by ggaren@apple.com
  • 3 edits in trunk/Source/WTF

Unreviewed attempted Windows build fix after http://trac.webkit.org/changeset/145592.

  • wtf/SchedulePair.cpp:
  • wtf/SchedulePair.h:

(WTF::SchedulePair::SchedulePair): Since linking is failing,
try inlining this function.

8:51 PM Changeset in webkit [145677] by hayato@chromium.org
  • 3 edits in trunk/Source/WebCore

[Crash] Touch Events retargeting causes crashes on chrome on android.
https://bugs.webkit.org/show_bug.cgi?id=112210

Reviewed by Dimitri Glazkov.

Added null-check for TouchEvent's touches(), targetTouches() and changedTouches().

No new tests - no new functionality.

  • dom/EventRetargeter.cpp:

(WebCore::EventRetargeter::adjustForTouchEvent):
(WebCore::EventRetargeter::adjustTouchList):

  • dom/EventRetargeter.h:
8:46 PM Changeset in webkit [145676] by Christophe Dumez
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] ewk_popup_menu_close() does not work as intended
https://bugs.webkit.org/show_bug.cgi?id=110209

Reviewed by Laszlo Gombos.

ewk_popup_menu_close() is called by the browser to notify WebKit that
the popup menu was closed. However, the implementation was calling
EwkView::closePopupMenu() which was asking the browser to close the
popup menu via an Evas smart function. This patch fixes the behavior
and ewk_popup_menu_close() now calls WKPopupMenuListenerSetSelection()
C API so that the WebProcess is notified that the popup menu was
hidden.

  • UIProcess/API/efl/ewk_popup_menu.cpp:

(EwkPopupMenu::close):

8:07 PM Changeset in webkit [145675] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r187688. Requested by
"James Robinson" <jamesr@chromium.org> via sheriffbot.

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

  • DEPS:
7:59 PM Changeset in webkit [145674] by ggaren@apple.com
  • 1 edit
    1 delete in trunk/Source/WebCore

2013-03-12 Geoffrey Garen <ggaren@apple.com>

Unreviewed attempted Windows build fix after http://trac.webkit.org/changeset/145592.

  • platform/RunLoopTimer.h: Removed.
7:29 PM Changeset in webkit [145673] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r142657. <rdar://problem/13334856>

7:26 PM Changeset in webkit [145672] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r140558. <rdar://problem/13334992>

7:14 PM Changeset in webkit [145671] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update test expectation for the bug 111521.

  • platform/mac/TestExpectations:
6:51 PM Changeset in webkit [145670] by commit-queue@webkit.org
  • 7 edits in trunk/Source

Coordinated Graphics: Remove CoordinatedGraphicsLayer::setRootLayer().
https://bugs.webkit.org/show_bug.cgi?id=111835

Patch by Huang Dongsung <luxtella@company100.net> on 2013-03-12
Reviewed by Luiz Agostini.

Source/WebCore:

This patch removes CoordinatedGraphicsLayer::setRootLayer() because
CoordinatedGraphicsScene already knows which layer is root.

No new tests, no behavior change.

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayer):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:

(WebCore::CoordinatedGraphicsScene::setLayerState):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:

(WebCore::CoordinatedGraphicsLayerState::CoordinatedGraphicsLayerState):

Source/WebKit2:

Amend CoordinatedLayerTreeHost because
CoordinatedGraphicsLayer::setRootLayer() is removed.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):

6:47 PM Changeset in webkit [145669] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Enable GPU-GPU texture copy in texImage2D() for HTMLVideoElement if hardware accelerated video decode is in use
https://bugs.webkit.org/show_bug.cgi?id=111126

Patch by Jun Jiang <jun.a.jiang@intel.com> on 2013-03-12
Reviewed by Kenneth Russell.

Source/WebCore:

In texImage2D() for HTMLVideoElement in WebGL, it is possible to do a GPU-GPU texture copy instead of CPU readback
and upload when videoFrame is in the form of textures. Each platform port needs to implement the interface
copyVideoTextureToPlatformTexture() defined in MediaPlayer.h to make it work.

Already covered by current tests.

  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::copyVideoTextureToPlatformTexture):

  • html/HTMLVideoElement.h:

(HTMLVideoElement):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::videoFrameToImage): Move some security check to upper level.
(WebCore::WebGLRenderingContext::texImage2D): Add the fast GPU-GPU textures copy path for HTMLVideoElement and some security check.
(WebCore::WebGLRenderingContext::texSubImage2D): Add some security check.

  • html/canvas/WebGLTexture.cpp:

(WebCore::WebGLTexture::isValid): Added to check if the texture is defined at the given level.

  • html/canvas/WebGLTexture.h:

(WebGLTexture):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::copyVideoTextureToPlatformTexture): Added to do the GPU-GPU textures copy.

  • platform/graphics/MediaPlayer.h:

(MediaPlayer):

  • platform/graphics/MediaPlayerPrivate.h:

(WebCore::MediaPlayerPrivateInterface::copyVideoTextureToPlatformTexture):

Source/WebKit/chromium:

  • public/WebMediaPlayer.h:

(WebKit::WebMediaPlayer::copyVideoTextureToPlatformTexture):

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::copyVideoTextureToPlatformTexture): do a GPU-GPU textures copy if possible.

  • src/WebMediaPlayerClientImpl.h:

(WebMediaPlayerClientImpl):

6:47 PM Changeset in webkit [145668] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r142539. <rdar://problem/13334864>

6:46 PM Changeset in webkit [145667] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

Update a few chromium test expectations.

  • platform/chromium/TestExpectations:
6:45 PM Changeset in webkit [145666] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r142365. <rdar://problem/13334965>

6:43 PM Changeset in webkit [145665] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r142358. <rdar://problem/13334971>

6:39 PM Changeset in webkit [145664] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r141858. <rdar://problem/13334961>

6:37 PM Changeset in webkit [145663] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r141851. <rdar://problem/13334974>

6:35 PM Changeset in webkit [145662] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r140879. <rdar://problem/13334945>

6:33 PM Changeset in webkit [145661] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r140520. <rdar://problem/13335020>

6:31 PM Changeset in webkit [145660] by Lucas Forschler
  • 3 edits
    4 copies in branches/safari-536.30-branch

Merged r140101. <rdar://problem/13334995>

6:28 PM Changeset in webkit [145659] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r140069. <rdar://problem/13334849>

6:26 PM Changeset in webkit [145658] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r139788. <rdar://problem/13334937>

6:25 PM Changeset in webkit [145657] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WTF

Typo in earlier Windows build fix. Unreviewed.

  • WTF.vcproj/WTF.vcproj:
6:24 PM Changeset in webkit [145656] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r139551. <rdar://problem/13334836>

6:23 PM Changeset in webkit [145655] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r139457. <rdar://problem/13335016>

6:21 PM Changeset in webkit [145654] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r138994. <rdar://problem/13334924>

6:20 PM Changeset in webkit [145653] by timothy_horton@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

WTF uses macros for exports. Try to fix the Windows build. Unreviewed.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreExports.def:
  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:
6:19 PM Changeset in webkit [145652] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-536.30-branch

Merged r138926. <rdar://problem/13334936>

6:19 PM Changeset in webkit [145651] by abarth@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[Chromium] WebFrame event listener APIs are unused and can be removed
https://bugs.webkit.org/show_bug.cgi?id=112189

Reviewed by Darin Fisher.

As far as I can tell, there are no callers for these APIs. They appear
to have been added for out-of-process postMessages, but those are now
implemented using a different mechanism.

  • public/WebFrame.h:

(WebFrame):

  • src/WebFrameImpl.cpp:
  • src/WebFrameImpl.h:

(WebFrameImpl):

6:17 PM Changeset in webkit [145650] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r138918. <rdar://problem/13334933>

6:14 PM Changeset in webkit [145649] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r145280.
http://trac.webkit.org/changeset/145280
https://bugs.webkit.org/show_bug.cgi?id=112217

This patch broke chromium WebGL conformance tests (Requested
by shawnsingh on #webkit).

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

  • platform/graphics/gpu/DrawingBuffer.cpp:

(WebCore::DrawingBuffer::reset):

  • platform/graphics/gpu/DrawingBuffer.h:

(DrawingBuffer):

6:12 PM Changeset in webkit [145648] by Lucas Forschler
  • 5 edits in branches/safari-536.30-branch/Source/WebCore

Merged r138863. <rdar://problem/13335068>

6:06 PM Changeset in webkit [145647] by oliver@apple.com
  • 2 edits in trunk/Tools

Unbreak api tests

6:02 PM Changeset in webkit [145646] by scherkus@chromium.org
  • 5 edits in branches/chromium/1410/Source/WebKit/chromium/src

Merge 145319

[chromium] Set the Helper Plugin's URL to that of the host document.
https://bugs.webkit.org/show_bug.cgi?id=111913

This allows content settings, etc. to be based on the document hosting
the element that requested the Helper Plugin.

Patch by David Dorwin <ddorwin@chromium.org> on 2013-03-09
Reviewed by Adam Barth.

  • src/WebHelperPluginImpl.cpp:

(WebKit::writeDocument):
(WebKit::WebHelperPluginImpl::initialize):
(WebKit::WebHelperPluginImpl::initializePage):

  • src/WebHelperPluginImpl.h:

(WebKit):
(WebHelperPluginImpl):

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::createHelperPlugin):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::createHelperPlugin):

  • src/WebViewImpl.h:

(WebViewImpl):

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

5:56 PM Changeset in webkit [145645] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Don't send events to plugins that are being snapshotted
https://bugs.webkit.org/show_bug.cgi?id=112215
<rdar://problem/13386224>

Reviewed by Tim Horton.

If a plugin is in the process of being snapshotted, do not forward it
any events. This avoids the case where we can accidentally capture some
custom mouse pointers, as well as trigger a plugin menu.

The next step will be to detect if the event should stop the snapshotting
(restart the plugin).

  • html/HTMLPlugInElement.cpp:

(WebCore::HTMLPlugInElement::defaultEventHandler): Return early if the plugin is snapshotting.

5:56 PM Changeset in webkit [145644] by dino@apple.com
  • 3 edits in trunk/Source/WebKit2

Primary plugin hit detection needs to run after plugin creation
https://bugs.webkit.org/show_bug.cgi?id=112206

Reviewed by Tim Horton.

On some pages, the plugins are created after the page has loaded, and
thus our heuristic to determine the primary plugin fails. Run this
heuristic more often: after each PluginView is created. It already exits
early if it has found a primary. But we also need to make sure that it
doesn't run before load.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::addPluginView): Run detection when view is added.
(WebKit::WebPage::didFinishLoad): Remember that we have loaded.
(WebKit::WebPage::determinePrimarySnapshottedPlugIn): Look at the PluginViews to see if we have a plugin.
(WebKit::WebPage::resetPrimarySnapshottedPlugIn): Reset both flags.

  • WebProcess/WebPage/WebPage.h:

(WebPage): New member variable, m_readyToFindPrimarySnapshottedPlugin.

5:53 PM Changeset in webkit [145643] by Lucas Forschler
  • 7 edits
    2 copies in branches/safari-536.30-branch

Merged r138850. <rdar://problem/13334979>

5:51 PM Changeset in webkit [145642] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r138812. <rdar://problem/13335055>

5:50 PM Changeset in webkit [145641] by Lucas Forschler
  • 3 edits in branches/safari-536.30-branch/Source/WebCore

Merged r138657. <rdar://problem/13335057>

5:47 PM Changeset in webkit [145640] by Lucas Forschler
  • 5 edits
    2 copies in branches/safari-536.30-branch

Merged r138316. <rdar://problem/13335014>

5:45 PM Changeset in webkit [145639] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r137464. <rdar://problem/13334917>

5:43 PM Changeset in webkit [145638] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-536.30-branch

Merged r136560. <rdar://problem/13334987>

5:43 PM Changeset in webkit [145637] by timothy_horton@apple.com
  • 8 edits in trunk/Source

Unreviewed attempted Windows build fix after http://trac.webkit.org/changeset/145592.

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WTF.vcproj/WTF.vcproj:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
5:41 PM Changeset in webkit [145636] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r136558. <rdar://problem/13334868>

5:39 PM Changeset in webkit [145635] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-536.30-branch

Merged r136541. <rdar://problem/13334913>

5:36 PM Changeset in webkit [145634] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r136253. <rdar://problem/13334990>

5:29 PM Changeset in webkit [145633] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r136074. <rdar://problem/13334908>

5:27 PM Changeset in webkit [145632] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r136061. <rdar://problem/13335034>

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

Fix Gamepad::axes and Gamepad::buttons to avoid calling std::copy(..., ..., 0)
https://bugs.webkit.org/show_bug.cgi?id=89510

Patch by James Robinson <jamesr@chromium.org> on 2013-03-12
Reviewed by Kenneth Russell.

Source/WebCore:

WTF::Vector::begin() returns 0 when the vector has length zero. On windows, the debug implementation of
std::copy() is unhappy with 0 as a third parameter even when the first and second parameters are equal.

Covered by gamepad/gamepad-polling-access.html

  • Modules/gamepad/Gamepad.cpp:

(WebCore::Gamepad::axes):
(WebCore::Gamepad::buttons):

LayoutTests:

Remove expectation now that test passes.

  • platform/chromium/TestExpectations:
5:25 PM Changeset in webkit [145630] by Lucas Forschler
  • 5 edits
    2 copies in branches/safari-536.30-branch

Merged r136060. <rdar://problem/13334905>

5:18 PM Changeset in webkit [145629] by Lucas Forschler
  • 3 edits
    3 copies in branches/safari-536.30-branch

Merged r135794. <rdar://problem/13335026>

5:17 PM Changeset in webkit [145628] by fpizlo@apple.com
  • 4 edits
    3 adds in trunk

Array.prototype.sort should at least try to be PTIME even when the array is in some bizarre mode
https://bugs.webkit.org/show_bug.cgi?id=112187
<rdar://problem/13393550>

Source/JavaScriptCore:

Reviewed by Michael Saboff and Gavin Barraclough.

If we have an array-like object in crazy mode passed into Array.prototype.sort, and its length is large,
then first copy all elements into a separate, compact, un-holy array and sort that. Then copy back.
This means that sorting will be at works O(n2) in the actual number of things in the array, rather than
O(n
2) in the array's length.

  • runtime/ArrayPrototype.cpp:

(JSC::attemptFastSort):
(JSC::performSlowSort):
(JSC):
(JSC::arrayProtoFuncSort):

LayoutTests:

Reviewed by Michael Saboff and Gavin Barraclough.

If your Array.prototype.sort is not sufficiently smart, this test will never complete.
But if it is, it'll complete instantly.

  • fast/js/array-sort-small-sparse-array-with-large-length-expected.txt: Added.
  • fast/js/array-sort-small-sparse-array-with-large-length.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/array-sort-small-sparse-array-with-large-length.js: Added.
5:16 PM Changeset in webkit [145627] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r135719. <rdar://problem/13334904>

5:14 PM Changeset in webkit [145626] by Lucas Forschler
  • 7 edits
    4 copies in branches/safari-536.30-branch

Merged r135478. <rdar://problem/13334903>

5:09 PM Changeset in webkit [145625] by Beth Dakin
  • 2 edits in trunk/Source/WebKit2

WKView -printOperationWithPrintInfo:forFrame: doesn’t use the print info that is
passed in
https://bugs.webkit.org/show_bug.cgi?id=112212
-and corresponding-
<rdar://problem/12994883>

Reviewed by Anders Carlsson.

We should call [NSPrintOperation printOperationWithView: printInfo:] to use the
printInfo parameter instead of [NSPrintOperation printOperationWithView:] which
will just use the sharedPrintInfo.

  • UIProcess/API/mac/WKView.mm:

(-[WKView printOperationWithPrintInfo:forFrame:]):

5:06 PM Changeset in webkit [145624] by Lucas Forschler
  • 3 edits
    4 copies in branches/safari-536.30-branch

Merged r135454. <rdar://problem/13335031>

5:03 PM Changeset in webkit [145623] by abarth@webkit.org
  • 2 edits in trunk/Source/Platform

[Chromium] Remove last vestigates of WEBKIT_USING_V8
https://bugs.webkit.org/show_bug.cgi?id=112203

Reviewed by James Robinson.

These macros are no longer referenced anywhere and can be removed.

  • chromium/public/WebCommon.h:
5:03 PM Changeset in webkit [145622] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r135303. <rdar://problem/13334898>

5:02 PM Changeset in webkit [145621] by jamesr@google.com
  • 137 edits
    2 copies
    1 move
    19 adds
    19 deletes in trunk/LayoutTests

Update chromium pixel baselines for mesa blend fix in chromium r187688

  • platform/chromium-linux/compositing/color-matching/image-color-matching-expected.png:
  • platform/chromium-linux/compositing/culling/filter-occlusion-blur-expected.png: Removed.
  • platform/chromium-linux/compositing/culling/filter-occlusion-blur-large-expected.png: Removed.
  • platform/chromium-linux/compositing/direct-image-compositing-expected.png:
  • platform/chromium-linux/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
  • platform/chromium-linux/compositing/geometry/layer-due-to-layer-children-expected.png:
  • platform/chromium-linux/compositing/geometry/vertical-scroll-composited-expected.png:
  • platform/chromium-linux/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/chromium-linux/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/chromium-linux/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/chromium-linux/compositing/overflow/overflow-compositing-descendant-expected.png:
  • platform/chromium-linux/compositing/overflow/scroll-ancestor-update-expected.png:
  • platform/chromium-linux/compositing/reflections/animation-inside-reflection-expected.png:
  • platform/chromium-linux/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/chromium-linux/compositing/reflections/nested-reflection-anchor-point-expected.png:
  • platform/chromium-linux/compositing/reflections/transform-inside-reflection-expected.png:
  • platform/chromium-linux/compositing/self-painting-layers-expected.png:
  • platform/chromium-linux/compositing/transitions/scale-transition-no-start-expected.png:
  • platform/chromium-linux/compositing/visibility/visibility-image-layers-expected.png: Removed.
  • platform/chromium-linux/compositing/visibility/visibility-simple-video-layer-expected.png: Removed.
  • platform/chromium-linux/css3/filters/custom/custom-filter-shader-cache-expected.png:
  • platform/chromium-linux/css3/filters/custom/effect-color-check-expected.png: Added.
  • platform/chromium-linux/css3/filters/custom/effect-custom-combined-missing-expected.png:
  • platform/chromium-linux/css3/filters/custom/effect-custom-expected.png:
  • platform/chromium-linux/css3/filters/custom/effect-custom-parameters-expected.png:
  • platform/chromium-linux/css3/filters/effect-blur-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-brightness-clamping-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-brightness-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-combined-hw-expected.png:
  • platform/chromium-linux/css3/filters/effect-contrast-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-drop-shadow-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-ordering-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-saturate-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-sepia-hw-expected.png: Removed.
  • platform/chromium-linux/css3/filters/filter-change-repaint-composited-expected.png: Removed.
  • platform/chromium-linux/css3/filters/filter-change-repaint-expected.png: Removed.
  • platform/chromium-linux/css3/filters/filter-repaint-composited-fallback-crash-expected.png:
  • platform/chromium-linux/css3/filters/filter-repaint-composited-fallback-expected.png:
  • platform/chromium-linux/fast/canvas/webgl/css-webkit-canvas-expected.png: Removed.
  • platform/chromium-linux/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Removed.
  • platform/chromium-linux/platform/chromium/compositing/3d-corners-expected.png:
  • platform/chromium-linux/platform/chromium/compositing/huge-layer-rotated-expected.png:
  • platform/chromium-linux/platform/chromium/compositing/perpendicular-layer-sorting-expected.png:
  • platform/chromium-linux/platform/chromium/compositing/video-frame-size-change-expected.png:
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-compositing-descendant-expected.png: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scroll-ancestor-update-expected.png: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/fast/canvas/canvas-composite-expected.png:
  • platform/chromium-linux/platform/chromium/virtual/gpu/fast/canvas/canvas-text-alignment-expected.png:
  • platform/chromium-linux/platform/chromium/virtual/gpu/fast/canvas/fillrect_gradient-expected.png:
  • platform/chromium-linux/platform/chromium/virtual/gpu/fast/canvas/image-object-in-canvas-expected.png:
  • platform/chromium-linux/platform/chromium/virtual/gpu/fast/canvas/webgl/css-webkit-canvas-expected.png: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/fast/hidpi/gradient-with-scaled-ancestor-expected.png:
  • platform/chromium-linux/transforms/3d/point-mapping/3d-point-mapping-3-expected.png:
  • platform/chromium-linux/transforms/3d/point-mapping/3d-point-mapping-expected.png:
  • platform/chromium-linux/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png:
  • platform/chromium-linux/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png:
  • platform/chromium-mac-lion/compositing/color-matching/image-color-matching-expected.png:
  • platform/chromium-mac-lion/compositing/direct-image-compositing-expected.png:
  • platform/chromium-mac-lion/compositing/geometry/clipping-foreground-expected.png:
  • platform/chromium-mac-lion/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
  • platform/chromium-mac-lion/compositing/geometry/layer-due-to-layer-children-expected.png:
  • platform/chromium-mac-lion/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/chromium-mac-lion/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/chromium-mac-lion/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/chromium-mac-lion/compositing/overflow/overflow-compositing-descendant-expected.png:
  • platform/chromium-mac-lion/compositing/overflow/scroll-ancestor-update-expected.png:
  • platform/chromium-mac-lion/compositing/reflections/animation-inside-reflection-expected.png:
  • platform/chromium-mac-lion/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/chromium-mac-lion/compositing/reflections/nested-reflection-anchor-point-expected.png:
  • platform/chromium-mac-lion/compositing/reflections/transform-inside-reflection-expected.png:
  • platform/chromium-mac-lion/compositing/self-painting-layers-expected.png:
  • platform/chromium-mac-lion/compositing/transitions/scale-transition-no-start-expected.png:
  • platform/chromium-mac-lion/platform/chromium/compositing/video-frame-size-change-expected.png:
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-compositing-descendant-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/overflow/scroll-ancestor-update-expected.png: Copied from LayoutTests/platform/chromium-mac-lion/compositing/overflow/scroll-ancestor-update-expected.png.
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/fast/canvas/canvas-composite-expected.png:
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/fast/canvas/canvas-text-alignment-expected.png:
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/fast/canvas/canvas-text-baseline-expected.png:
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/fast/canvas/fillrect_gradient-expected.png:
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/fast/canvas/image-object-in-canvas-expected.png:
  • platform/chromium-mac-lion/transforms/3d/point-mapping/3d-point-mapping-3-expected.png:
  • platform/chromium-mac-lion/transforms/3d/point-mapping/3d-point-mapping-expected.png:
  • platform/chromium-mac-lion/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png:
  • platform/chromium-mac-lion/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png:
  • platform/chromium-mac-snowleopard/compositing/color-matching/image-color-matching-expected.png:
  • platform/chromium-mac-snowleopard/compositing/direct-image-compositing-expected.png:
  • platform/chromium-mac-snowleopard/compositing/geometry/clipping-foreground-expected.png:
  • platform/chromium-mac-snowleopard/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
  • platform/chromium-mac-snowleopard/compositing/geometry/layer-due-to-layer-children-expected.png:
  • platform/chromium-mac-snowleopard/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/chromium-mac-snowleopard/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/chromium-mac-snowleopard/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/chromium-mac-snowleopard/compositing/overflow/overflow-compositing-descendant-expected.png:
  • platform/chromium-mac-snowleopard/compositing/overflow/scroll-ancestor-update-expected.png:
  • platform/chromium-mac-snowleopard/compositing/reflections/animation-inside-reflection-expected.png:
  • platform/chromium-mac-snowleopard/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/chromium-mac-snowleopard/compositing/reflections/nested-reflection-anchor-point-expected.png:
  • platform/chromium-mac-snowleopard/compositing/reflections/transform-inside-reflection-expected.png:
  • platform/chromium-mac-snowleopard/compositing/self-painting-layers-expected.png:
  • platform/chromium-mac-snowleopard/compositing/transitions/scale-transition-no-start-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/compositing/video-frame-size-change-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-compositing-descendant-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/compositing/overflow/overflow-compositing-descendant-expected.png.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/overflow/scroll-ancestor-update-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/fast/canvas/canvas-composite-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/fast/canvas/canvas-text-alignment-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/fast/canvas/fillrect_gradient-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/fast/canvas/image-object-in-canvas-expected.png:
  • platform/chromium-mac-snowleopard/transforms/3d/point-mapping/3d-point-mapping-3-expected.png:
  • platform/chromium-mac-snowleopard/transforms/3d/point-mapping/3d-point-mapping-expected.png:
  • platform/chromium-mac-snowleopard/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png:
  • platform/chromium-mac-snowleopard/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png:
  • platform/chromium-mac/compositing/color-matching/image-color-matching-expected.png:
  • platform/chromium-mac/compositing/culling/filter-occlusion-blur-expected.png:
  • platform/chromium-mac/compositing/culling/filter-occlusion-blur-large-expected.png:
  • platform/chromium-mac/compositing/direct-image-compositing-expected.png:
  • platform/chromium-mac/compositing/geometry/layer-due-to-layer-children-deep-expected.png:
  • platform/chromium-mac/compositing/geometry/layer-due-to-layer-children-expected.png:
  • platform/chromium-mac/compositing/geometry/vertical-scroll-composited-expected.png:
  • platform/chromium-mac/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/chromium-mac/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/chromium-mac/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/chromium-mac/compositing/overflow/overflow-compositing-descendant-expected.png:
  • platform/chromium-mac/compositing/overflow/scroll-ancestor-update-expected.png:
  • platform/chromium-mac/compositing/reflections/animation-inside-reflection-expected.png:
  • platform/chromium-mac/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/chromium-mac/compositing/reflections/nested-reflection-anchor-point-expected.png:
  • platform/chromium-mac/compositing/reflections/transform-inside-reflection-expected.png:
  • platform/chromium-mac/compositing/self-painting-layers-expected.png:
  • platform/chromium-mac/compositing/transitions/scale-transition-no-start-expected.png:
  • platform/chromium-mac/compositing/visibility/visibility-image-layers-expected.png:
  • platform/chromium-mac/compositing/visibility/visibility-simple-video-layer-expected.png:
  • platform/chromium-mac/css3/filters/custom/custom-filter-shader-cache-expected.png:
  • platform/chromium-mac/css3/filters/custom/effect-color-check-expected.png:
  • platform/chromium-mac/css3/filters/custom/effect-custom-combined-missing-expected.png:
  • platform/chromium-mac/css3/filters/custom/effect-custom-parameters-expected.png:
  • platform/chromium-mac/css3/filters/effect-blur-hw-expected.png:
  • platform/chromium-mac/css3/filters/effect-brightness-clamping-hw-expected.png:
  • platform/chromium-mac/css3/filters/effect-brightness-hw-expected.png:
  • platform/chromium-mac/css3/filters/effect-combined-hw-expected.png:
  • platform/chromium-mac/css3/filters/effect-contrast-hw-expected.png:
  • platform/chromium-mac/css3/filters/effect-drop-shadow-hw-expected.png:
  • platform/chromium-mac/css3/filters/effect-reference-hw-expected.png:
  • platform/chromium-mac/css3/filters/effect-reference-ordering-hw-expected.png:
  • platform/chromium-mac/css3/filters/filter-change-repaint-composited-expected.png: Added.
  • platform/chromium-mac/css3/filters/filter-change-repaint-expected.png: Added.
  • platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-crash-expected.png:
  • platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-expected.png:
  • platform/chromium-mac/fast/canvas/webgl/css-webkit-canvas-expected.png: Added.
  • platform/chromium-mac/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Added.
  • platform/chromium-mac/platform/chromium/compositing/3d-corners-expected.png:
  • platform/chromium-mac/platform/chromium/compositing/filters/background-filter-blur-expected.png: Added.
  • platform/chromium-mac/platform/chromium/compositing/filters/background-filter-blur-off-axis-expected.png:
  • platform/chromium-mac/platform/chromium/compositing/filters/background-filter-blur-outsets-expected.png:
  • platform/chromium-mac/platform/chromium/compositing/huge-layer-rotated-expected.png:
  • platform/chromium-mac/platform/chromium/compositing/perpendicular-layer-sorting-expected.png:
  • platform/chromium-mac/platform/chromium/compositing/video-frame-size-change-expected.png:
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-compositing-descendant-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/scroll-ancestor-update-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/canvas-composite-expected.png:
  • platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/canvas-text-alignment-expected.png:
  • platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/fillrect_gradient-expected.png:
  • platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/image-object-in-canvas-expected.png:
  • platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/webgl/css-webkit-canvas-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Added.
  • platform/chromium-mac/transforms/3d/point-mapping/3d-point-mapping-3-expected.png:
  • platform/chromium-mac/transforms/3d/point-mapping/3d-point-mapping-expected.png:
  • platform/chromium-mac/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png:
  • platform/chromium-mac/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png:
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/canvas/webgl/css-webkit-canvas-expected.png: Removed.
  • platform/chromium/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Removed.
  • platform/efl-wk2/compositing/geometry/clipping-foreground-expected.png: Renamed from LayoutTests/platform/efl/compositing/geometry/clipping-foreground-expected.png.
5:00 PM Changeset in webkit [145620] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r135299. <rdar://problem/13335033>

4:58 PM Changeset in webkit [145619] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r135193. <rdar://problem/13335071>

4:56 PM Changeset in webkit [145618] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-536.30-branch

Merged r133717. <rdar://problem/13334891>

4:52 PM Changeset in webkit [145617] by Lucas Forschler
  • 4 edits
    12 copies in branches/safari-536.30-branch

Merged r133686. <rdar://problem/13334976>

4:50 PM Changeset in webkit [145616] by Lucas Forschler
  • 3 edits
    3 copies in branches/safari-536.30-branch

Merged r133155. <rdar://problem/13335008>

4:49 PM Changeset in webkit [145615] by timothy_horton@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Try to fix the Windows build.

Not reviewed.

4:45 PM Changeset in webkit [145614] by Lucas Forschler
  • 5 edits
    2 copies in branches/safari-536.30-branch

Merged r132983. <rdar://problem/13334897>

4:43 PM Changeset in webkit [145613] by esprehn@chromium.org
  • 2 edits in trunk/Source/WebCore

Remove TextIterator.cpp's isAllCollapsibleWhitespace
https://bugs.webkit.org/show_bug.cgi?id=112200

Reviewed by Ryosuke Niwa.

Remove isAllCollapsibleWhitespace since nothing uses it.

  • editing/TextIterator.cpp: Remove isAllCollapsibleWhitespace.
4:43 PM Changeset in webkit [145612] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r132462. <rdar://problem/13335022>

4:40 PM Changeset in webkit [145611] by Lucas Forschler
  • 5 edits in branches/safari-536.30-branch/Source/WebCore

Merged r132398. <rdar://problem/13334911>

4:27 PM Changeset in webkit [145610] by betravis@adobe.com
  • 6 edits in trunk/Source/WebCore

[css exclusions] Move ExclusionShapeInsideInfo into RenderBlockRareData
https://bugs.webkit.org/show_bug.cgi?id=110995

Reviewed by Julien Chaffraix.

This patch moves ExclusionShapeInsideInfo into the RenderBlockRareData struct,
which enables us to move away from the global ExclusionShapeInsideInfo map.
Some additional refactoring was done to remove ExclusionShapeInsideInfo's
dependency on InlineIterator, which depended on RenderBlock. This work required
adding a new LineSegmentIterator struct.

Refactoring, no new tests.

  • rendering/ExclusionShapeInsideInfo.cpp:

(WebCore):
(WebCore::LineSegmentRange::LineSegmentRange): Moving the InlineIterator
constructor to the .cpp file, as InlineIterator is now forward declared in
the .h file.
(WebCore::ExclusionShapeInsideInfo::isEnabledFor): Moving isEnabledFor to
the .cpp file, as RenderBlock is now forward declared in the .h file.

  • rendering/ExclusionShapeInsideInfo.h:

(WebCore):
(LineSegmentIterator): A simple struct for containing segment positions for
layout.
(WebCore::LineSegmentIterator::LineSegmentIterator): Constructor.
(LineSegmentRange): Transitioning to store LineSegmentIterator.
(WebCore::LineSegmentRange::LineSegmentRange): Ditto.
(ExclusionShapeInsideInfo):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::willBeDestroyed): Destroying a block will now destroy
its ExclusionShapeInsideInfo, so there is no need to remove it from the map.
(WebCore):
(WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange): Use
the RenderBlockRareData struct rather than the global map.

  • rendering/RenderBlock.h:

(WebCore):
(WebCore::RenderBlock::ensureExclusionShapeInsideInfo): Ensure an info struct
is present if the shape-inside style is set.
(WebCore::RenderBlock::exclusionShapeInsideInfo): Look up the info struct for
the current block.
(WebCore::RenderBlock::setExclusionShapeInsideInfo): Update the info struct
for the current block.
(RenderBlockRareData): Add the ExclusionShapeInsideInfo member. Move the struct
declaration to be public, so that the OwnPtr reference can properly delete it.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::constructBidiRunsForLine): Construct the appropriate offsets during
layout based on the stored LineSegmentIterators.

4:25 PM Changeset in webkit [145609] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r131578. <rdar://problem/13334886>

4:19 PM Changeset in webkit [145608] by Lucas Forschler
  • 1 copy
    1 add in branches/safari-536.30-branch/Source/WebCore
4:15 PM Changeset in webkit [145607] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

Unreviewed, disabling tests for Win EWS.

win-ews obviously cannot keep up with running tests, it's >300 behind.
Probably doesn't help that its (likely) running tests serially.

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

(WinEWS):

4:14 PM Changeset in webkit [145606] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Try to fix the Windows build.

Not reviewed.

  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:

Export a thing.

4:10 PM Changeset in webkit [145605] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r131315. <rdar://problem/13334884>

4:04 PM Changeset in webkit [145604] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r131110. <rdar://problem/13334883>

3:49 PM Changeset in webkit [145603] by jamesr@google.com
  • 4 edits in trunk/Source

Build fix for r145592 - update gyp files to refer to new file locations.

Source/WebCore:

  • WebCore.gypi:

Source/WTF:

  • WTF.gypi:
3:49 PM Changeset in webkit [145602] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r129583. <rdar://problem/13335073>

3:39 PM Changeset in webkit [145601] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Add a single character cache to WidthCache
https://bugs.webkit.org/show_bug.cgi?id=112084

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-03-12
Reviewed by Geoffrey Garen.

More than half of the values stored in WidthCache are values
for a single character.

Previously, we were creating a new SmallStringKey for each one of
them, causing a lot of extra memory operations even for the simple
cases.

This patch adds a second map, m_singleCharMap, to simplify the
computation for the common case of a single char TextRun.

  • platform/graphics/WidthCache.h:

(WebCore::WidthCache::clear):
(WidthCache):
(WebCore::WidthCache::addSlowCase):

3:38 PM Changeset in webkit [145600] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

Add a --build-directory argument to delete-stale-build-files
https://bugs.webkit.org/show_bug.cgi?id=112198

Reviewed by Ryosuke Niwa.

  • BuildSlaveSupport/delete-stale-build-files:

(main): Add --build-directory argument.

3:35 PM Changeset in webkit [145599] by Lucas Forschler
  • 6 edits in branches/safari-536.30-branch/Source/WebCore

Merged r129186. <rdar://problem/13334978>

3:26 PM Changeset in webkit [145598] by pdr@google.com
  • 12 edits in trunk/Source/WebCore

Replace static_casts for SVG transformable and locatable elements
https://bugs.webkit.org/show_bug.cgi?id=111651

Reviewed by Abhishek Arya.

toSVGStyledTransformableElement and toSVGStyledLocatableElement are preferred over
static_casts because bad casts can be caught on our testing infrastructure. This patch
replaces all static_casts for SVGStyledTransformableElement and SVGStyledLocatableElement
with toSVGStyledTransformableElement and toSVGStyledLocatableElement, respectively.

No new tests as this is covered with existing tests.

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::pathOnlyClipping):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):

  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::updateShapeFromElement):
(WebCore::RenderSVGShape::layout):
(WebCore::RenderSVGShape::nonScalingStrokeTransform):
(WebCore::RenderSVGShape::shouldGenerateMarkerPositions):

  • rendering/svg/RenderSVGTransformableContainer.cpp:

(WebCore::RenderSVGTransformableContainer::calculateLocalTransform):

  • svg/SVGAnimatedLength.cpp:

(WebCore::SVGAnimatedLengthAnimator::calculateDistance):

This was an unnecessary cast and has been removed.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::getBoundingBox):

  • svg/SVGLocatable.cpp:

(WebCore::SVGLocatable::getTransformToElement):

  • svg/SVGStyledLocatableElement.h:

(WebCore):
(WebCore::toSVGStyledLocatableElement):

  • svg/SVGStyledTransformableElement.h:

(WebCore):
(WebCore::toSVGStyledTransformableElement):

It makes the code cleaner to pass Node* in here, rather than converting the Node*
to an SVGElement* before calling this function. The same was not necessary for
SVGStyledLocatable.

  • svg/SVGSVGElement.h:

(WebCore):
(WebCore::toSVGSVGElement):

This code has been cleaned up. During the review of this patch, a similar cleanup
was done in toSVGStyledTransformableElement.

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::toClipPath):

3:21 PM Changeset in webkit [145597] by abarth@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r187660. Requested by
"Adam Barth" <abarth@webkit.org> via sheriffbot.

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

  • DEPS:
3:21 PM Changeset in webkit [145596] by inferno@chromium.org
  • 18 edits in trunk/Source

Replace static_casts with to* helper functions.
https://bugs.webkit.org/show_bug.cgi?id=112164

Reviewed by Philip Rogers.

to* helper functions are preferred over static_cast calls since they
help to catch bad casts easily on the testing infrastructure.

Source/WebCore:

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::collectMatchingRulesForRegion):

  • platform/gtk/PasteboardGtk.cpp:

(WebCore::getURLForImageNode):
(WebCore::Pasteboard::writeImage):

  • platform/gtk/RenderThemeGtk.cpp:

(WebCore::getMediaElementFromRenderObject):

  • platform/qt/RenderThemeQtMobile.cpp:

(WebCore::RenderThemeQtMobile::checkMultiple):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::title):
(WebCore::HitTestResult::absoluteImageURL):
(WebCore::HitTestResult::absolutePDFURL):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::resize):
(WebCore::RenderLayer::hitTest):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::valueChanged):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::addPDFURLRect):

  • rendering/RenderPart.cpp:

(WebCore::RenderPart::requiresAcceleratedCompositing):

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::checkRegionStyle):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::computePreferredLogicalWidths):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::isEnabled):
(WebCore::RenderTheme::isSpinUpButtonPartPressed):
(WebCore::RenderTheme::isHovered):
(WebCore::RenderTheme::isSpinUpButtonPartHovered):
(WebCore::RenderTheme::paintSliderTicks):

  • rendering/RenderThemeWinCE.cpp:

(WebCore::mediaElementParent):

  • rendering/RenderTreeAsText.cpp:

(WebCore::isEmptyOrUnstyledAppleStyleSpan):
(WebCore::RenderTreeAsText::writeRenderObject):
(WebCore::writeRenderRegionList):

  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeSVGResourceContainer):

Source/WebKit/win:

  • DOMHTMLClasses.cpp:

(DOMHTMLElement::idName):
(DOMHTMLElement::innerText):
(DOMHTMLElement::setInnerText):

3:17 PM Changeset in webkit [145595] by oliver@apple.com
  • 2 edits in trunk/Tools

Appease MSVC

3:15 PM Changeset in webkit [145594] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Harden JSStringJoiner
https://bugs.webkit.org/show_bug.cgi?id=112093

Reviewed by Filip Pizlo.

Harden JSStringJoiner, make it use our CheckedArithmetic
class to simplify everything.

  • runtime/JSStringJoiner.cpp:

(JSC::JSStringJoiner::build):

  • runtime/JSStringJoiner.h:

(JSStringJoiner):
(JSC::JSStringJoiner::JSStringJoiner):
(JSC::JSStringJoiner::append):

3:04 PM Changeset in webkit [145593] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Add one more test expectation per bug 112176.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
3:04 PM Changeset in webkit [145592] by ggaren@apple.com
  • 25 edits
    1 copy
    6 moves in trunk/Source

Moved RunLoopTimer and SchedulePair to WTF
https://bugs.webkit.org/show_bug.cgi?id=112171

Reviewed by Oliver Hunt.

This will allow us to use timers in lower level primitives without
duplicating all the code.

../WebCore:

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/DocumentLoader.h:

(WTF):
(WebCore):
(DocumentLoader):

  • loader/MainResourceLoader.h:
  • page/Page.h:
  • platform/AutodrainedPool.h: Removed.
  • platform/cf/RunLoopTimerCF.cpp: Removed.
  • platform/cf/SchedulePair.cpp: Removed.
  • platform/cf/SchedulePair.h: Removed.
  • platform/mac/AutodrainedPool.mm: Removed.
  • platform/mac/SchedulePairMac.mm: Removed.
  • platform/network/NetworkingContext.h:
  • platform/network/ResourceHandle.h:

(WTF):
(WebCore):
(ResourceHandle):

  • platform/network/cf/FormDataStreamCFNet.cpp:
  • platform/network/mac/ResourceHandleMac.mm:

../WebKit/mac:

  • WebCoreSupport/WebFrameNetworkingContext.h:

(WebFrameNetworkingContext):

../WebKit2:

  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:

(WebFrameNetworkingContext):

../WTF:

  • WTF.xcodeproj/project.pbxproj:
  • wtf/AutodrainedPool.h: Copied from Source/WebCore/platform/AutodrainedPool.h.

(AutodrainedPool):

  • wtf/AutodrainedPoolMac.mm: Copied from Source/WebCore/platform/mac/AutodrainedPool.mm.
  • wtf/RunLoopTimer.h: Copied from Source/WebCore/platform/RunLoopTimer.h.
  • wtf/RunLoopTimerCF.cpp: Copied from Source/WebCore/platform/cf/RunLoopTimerCF.cpp.
  • wtf/SchedulePair.cpp: Copied from Source/WebCore/platform/cf/SchedulePair.cpp.
  • wtf/SchedulePair.h: Copied from Source/WebCore/platform/cf/SchedulePair.h.

(SchedulePair):

  • wtf/SchedulePairMac.mm: Copied from Source/WebCore/platform/mac/SchedulePairMac.mm.
2:58 PM Changeset in webkit [145591] by abarth@webkit.org
  • 1 edit
    2 deletes in trunk/LayoutTests

Remove stray .gitmodules file
https://bugs.webkit.org/show_bug.cgi?id=112186

Reviewed by Tony Chang.

Apparently I imported this together with the jquery tests by mistake.

  • jquery/resources/src/sizzle/.gitmodules: Removed.
2:55 PM Changeset in webkit [145590] by Lucas Forschler
  • 4 edits in branches/safari-536.30-branch/Source/WebCore

Rollout 145585, not needed.

2:54 PM Changeset in webkit [145589] by abarth@webkit.org
  • 16 edits in trunk/Source/WebKit/chromium

[Chromium] Remove WEBKIT_USING_V8 from the WebKit API
https://bugs.webkit.org/show_bug.cgi?id=112120

Reviewed by Tony Chang.

Chromium always uses V8. This macro has outlived it's usefulness. It's
now just noise.

  • README:
  • public/WebArrayBuffer.h:

(WebArrayBuffer):

  • public/WebArrayBufferView.h:

(WebArrayBufferView):

  • public/WebBindings.h:

(WebBindings):

  • public/WebBlob.h:

(WebBlob):

  • public/WebFrame.h:

(WebFrame):

  • public/WebFrameClient.h:
  • public/WebSerializedScriptValue.h:

(WebSerializedScriptValue):

  • src/WebArrayBuffer.cpp:

(WebKit::WebArrayBuffer::createFromV8Value):

  • src/WebArrayBufferView.cpp:

(WebKit::WebArrayBufferView::createFromV8Value):

  • src/WebBindings.cpp:

(WebKit::WebBindings::toV8Value):

  • src/WebBlob.cpp:

(WebKit::WebBlob::toV8Value):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrame::frameForContext):

  • src/WebFrameImpl.h:

(WebFrameImpl):

  • src/WebSerializedScriptValue.cpp:

(WebKit::WebSerializedScriptValue::serialize):
(WebKit::WebSerializedScriptValue::deserialize):

2:53 PM Changeset in webkit [145588] by commit-queue@webkit.org
  • 13 edits in trunk

Mac: Incorrect rendering of <audio> controls
https://bugs.webkit.org/show_bug.cgi?id=110913

Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-03-12
Reviewed by Tony Chang.

Source/WebCore:

Covered by existing tests under media/.

  • css/mediaControls.css:

(audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
(audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
The timeline container and the timeline need min-width: 0 so that they can shrink if needed.

  • css/mediaControlsQuickTime.css:

(audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
(audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
(audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
The timeline container also needs flex-start to ensure that it never overlaps
the play/rewind buttons. The current-time and remaining-time displays need min-width: 0 so that the hack
in RenderMediaControls.cpp works correctly - otherwise, RenderFlexibleBox tries to use the preferred width
of the time displays, which is wrong when they try to hide themselves.

LayoutTests:

  • platform/mac/media/audio-controls-rendering-expected.txt:
  • platform/mac/media/controls-after-reload-expected.txt:
  • platform/mac/media/controls-strict-expected.txt:
  • platform/mac/media/controls-styling-strict-expected.txt:
  • platform/mac/media/controls-without-preload-expected.txt:
  • platform/mac/media/video-controls-rendering-expected.txt:
  • platform/mac/media/video-display-toggle-expected.txt:
  • platform/mac/media/video-no-audio-expected.txt:
  • platform/mac/media/video-playing-and-pause-expected.txt:
2:51 PM Changeset in webkit [145587] by oliver@apple.com
  • 4 edits in trunk

Add more Checked<> tests
https://bugs.webkit.org/show_bug.cgi?id=112190

Reviewed by Geoffrey Garen.

Source/WTF:

Export the CheckedState enum type

  • wtf/CheckedArithmetic.h:

Tools:

Tests!

  • TestWebKitAPI/Tests/WTF/CheckedArithmeticOperations.cpp:

(TestWebKitAPI):

2:47 PM Changeset in webkit [145586] by jparent@chromium.org
  • 4 edits in trunk/Tools

Cleanup: Move loading complete function into callback, rather than global.
https://bugs.webkit.org/show_bug.cgi?id=112167

Reviewed by Dirk Pranke.

Stop calling global functions, pass in proper handler to Loader
constructor. Note that the callback is optional, as tests, and
some potential dashboards, do not need one.

  • TestResultServer/static-dashboards/dashboard_base.js:
  • TestResultServer/static-dashboards/loader.js:

(.):

  • TestResultServer/static-dashboards/loader_unittests.js:
2:39 PM Changeset in webkit [145585] by Lucas Forschler
  • 4 edits in branches/safari-536.30-branch/Source/WebCore

Merged r129144. <rdar://problem/13334978>

2:29 PM Changeset in webkit [145584] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r128524. <rdar://problem/13334872>

2:19 PM Changeset in webkit [145583] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-536.30-branch

Merged r126063. <rdar://problem/13334852>

2:11 PM Changeset in webkit [145582] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/Source/WebCore

Merged r124229. <rdar://problem/13334842>

2:10 PM Changeset in webkit [145581] by ap@apple.com
  • 3 edits in trunk/Source/WebCore

Improve logging in ResourceHandleMac.mm
https://bugs.webkit.org/show_bug.cgi?id=112185

Reviewed by Brady Eidson.

  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Removed an obsolete #if. (WebCore::ResourceHandle::receivedCredential): (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential): (WebCore::ResourceHandle::receivedCancellation): (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]): Added a FIXME. (-[WebCoreResourceHandleAsDelegate connection:canAuthenticateAgainstProtectionSpace:]):
  • platform/network/mac/ResourceResponseMac.mm: Removed an unneeded include.
2:05 PM Changeset in webkit [145580] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Make CheckedArithmetic slightly more sane
https://bugs.webkit.org/show_bug.cgi?id=112178

Reviewed by Geoffrey Garen.

Add an enum type for safeGet rather than using a bool,
and correctly handle unsigned * unsigned, when one value
is 0.

  • wtf/CheckedArithmetic.h:

(WTF::ENUM_CLASS):
(WTF):
(WTF::operator+):
(WTF::operator-):
(WTF::operator*):

2:04 PM Changeset in webkit [145579] by Lucas Forschler
  • 7 edits
    2 deletes in branches/safari-536.30-branch

Merged r123145. <rdar://problem/13266379>

1:38 PM Changeset in webkit [145578] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG generic array access cases should not be guarded by CheckStructure even of the profiling tells us that it could be
https://bugs.webkit.org/show_bug.cgi?id=112183

Reviewed by Oliver Hunt.

Slight speed-up on string-unpack-code.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::findAndRemoveUnnecessaryStructureCheck):
(FixupPhase):
(JSC::DFG::FixupPhase::checkArray):
(JSC::DFG::FixupPhase::blessArrayOperation):

1:27 PM Changeset in webkit [145577] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Some canvas tests only fail on Mac EWS
https://bugs.webkit.org/show_bug.cgi?id=112176

Reviewed by Simon Fraser.

Add Failure / Pass test expectations on tests that only fail on Mac EWS bots.

Ideally, we can figure out the root cause of this failure and fix that problem but we haven't been able
to do so. We also don't have a way of adding test expectations only on EWS bots we're out of luck here.

  • platform/mac/TestExpectations:
1:20 PM Changeset in webkit [145576] by jchaffraix@webkit.org
  • 3 edits
    8 copies in branches/chromium/1410

Merge 145305 "REGRESSION(r140907): Incorrect baseline for cells ..."

REGRESSION(r140907): Incorrect baseline for cells with media content during load
https://bugs.webkit.org/show_bug.cgi?id=108357

Reviewed by Julien Chaffraix.

Source/WebCore:

If a cell has replaced content, the intrinsic height of its content can change between layouts. If that's the case then the intrinsic padding we used
for layout (the padding required to push the contents of the cell down to the row's baseline) is included in the new height and baseline and makes both
of them wrong. So if a cell's content's intrinsic height has changed push the new content up into the intrinsic padding and relayout so that the rest of
table and row layout can use the correct baseline and height for this cell.

Tests: fast/css/vertical-align-baseline-rowspan-012.html

http/tests/css/vertical-align-baseline-after-image-load-2.html
http/tests/css/vertical-align-baseline-after-image-load-3.html
http/tests/css/vertical-align-baseline-after-image-load.html

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::layout):

  • rendering/RenderTableCell.h:

(WebCore::RenderTableCell::isBaselineAligned):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::calcRowLogicalHeight):
(WebCore::RenderTableSection::layoutRows):

LayoutTests:

  • fast/css/vertical-align-baseline-rowspan-012-expected.html: Added.
  • fast/css/vertical-align-baseline-rowspan-012.html: Added.
  • http/tests/css/vertical-align-baseline-after-image-load-2-expected.html: Added.
  • http/tests/css/vertical-align-baseline-after-image-load-2.html: Added.
  • http/tests/css/vertical-align-baseline-after-image-load-3-expected.html: Added.
  • http/tests/css/vertical-align-baseline-after-image-load-3.html: Added.
  • http/tests/css/vertical-align-baseline-after-image-load-expected.html: Added.
  • http/tests/css/vertical-align-baseline-after-image-load.html: Added.

TBR=robert@webkit.org

1:11 PM Changeset in webkit [145575] by commit-queue@webkit.org
  • 37 edits in trunk/Source/WebCore

Unreviewed, rolling out r145554.
http://trac.webkit.org/changeset/145554
https://bugs.webkit.org/show_bug.cgi?id=112182

Breaks several extension browser tests (see bug for details)
(Requested by jamesr on #webkit).

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

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateDomainSafeFunctionGetter):
(GenerateImplementation):
(CreateCustomSignature):

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

(WebCore::ConfigureV8Float64ArrayTemplate):
(WebCore::V8Float64Array::GetTemplate):
(WebCore::V8Float64Array::HasInstance):

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

(V8Float64Array):

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

(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
(WebCore::V8TestActiveDOMObject::GetTemplate):
(WebCore::V8TestActiveDOMObject::HasInstance):

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

(V8TestActiveDOMObject):

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

(WebCore::V8TestCustomNamedGetter::GetTemplate):
(WebCore::V8TestCustomNamedGetter::HasInstance):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.h:

(V8TestCustomNamedGetter):

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

(WebCore::V8TestEventConstructor::GetTemplate):
(WebCore::V8TestEventConstructor::HasInstance):

  • bindings/scripts/test/V8/V8TestEventConstructor.h:

(V8TestEventConstructor):

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

(WebCore::ConfigureV8TestEventTargetTemplate):
(WebCore::V8TestEventTarget::GetTemplate):
(WebCore::V8TestEventTarget::HasInstance):

  • bindings/scripts/test/V8/V8TestEventTarget.h:

(V8TestEventTarget):

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

(WebCore::V8TestException::GetTemplate):
(WebCore::V8TestException::HasInstance):

  • bindings/scripts/test/V8/V8TestException.h:

(V8TestException):

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

(WebCore::ConfigureV8TestInterfaceTemplate):
(WebCore::V8TestInterface::GetTemplate):
(WebCore::V8TestInterface::HasInstance):

  • bindings/scripts/test/V8/V8TestInterface.h:

(V8TestInterface):

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

(WebCore::V8TestMediaQueryListListener::GetTemplate):
(WebCore::V8TestMediaQueryListListener::HasInstance):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.h:

(V8TestMediaQueryListListener):

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

(WebCore::V8TestNamedConstructor::GetTemplate):
(WebCore::V8TestNamedConstructor::HasInstance):

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

(V8TestNamedConstructor):

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

(WebCore::V8TestNode::GetTemplate):
(WebCore::V8TestNode::HasInstance):

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

(V8TestNode):

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

(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::GetTemplate):
(WebCore::V8TestObj::HasInstance):

  • bindings/scripts/test/V8/V8TestObj.h:

(V8TestObj):

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

(WebCore::V8TestOverloadedConstructors::GetTemplate):
(WebCore::V8TestOverloadedConstructors::HasInstance):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.h:

(V8TestOverloadedConstructors):

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

(WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
(WebCore::V8TestSerializedScriptValueInterface::HasInstance):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:

(V8TestSerializedScriptValueInterface):

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

(WebCore::ConfigureV8TestTypedefsTemplate):
(WebCore::V8TestTypedefs::GetTemplate):
(WebCore::V8TestTypedefs::HasInstance):

  • bindings/scripts/test/V8/V8TestTypedefs.h:

(V8TestTypedefs):

  • bindings/v8/V8AdaptorFunction.cpp:

(WebCore::V8AdaptorFunction::getTemplate):

  • bindings/v8/V8GCController.cpp:
  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::reportMemoryUsage):
(WebCore::V8PerIsolateData::privateTemplate):
(WebCore::V8PerIsolateData::rawTemplate):
(WebCore::V8PerIsolateData::hasInstance):

  • bindings/v8/V8PerIsolateData.h:

(WebCore::V8PerIsolateData::rawTemplateMap):
(WebCore::V8PerIsolateData::templateMap):
(V8PerIsolateData):

  • bindings/v8/WrapperTypeInfo.h:
  • bindings/v8/custom/V8LocationCustom.cpp:

(WebCore::V8Location::reloadAttrGetterCustom):
(WebCore::V8Location::replaceAttrGetterCustom):
(WebCore::V8Location::assignAttrGetterCustom):

  • bindings/v8/custom/V8NodeListCustom.cpp:

(WebCore::V8NodeList::opaqueRootForGC):

12:43 PM Changeset in webkit [145574] by gavinp@chromium.org
  • 2 edits in trunk/Source/WebCore

[chromium] Use lipo(1) rather than file(1) to list library architectures.
https://bugs.webkit.org/show_bug.cgi?id=111147

Parsing file(1) output can be fragile; this patch replaces a use of file(1) to get
the architecture list of a library with an invocation of lipo(1), which should be more
stable.

Reviewed by Nico Weber.

No new tests, since adjust_visibility.sh doesn't have a test.

  • WebCore.gyp/mac/adjust_visibility.sh:
12:07 PM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
11:45 AM Changeset in webkit [145573] by kerz@chromium.org
  • 6 edits in branches/chromium/1438/Source/WebCore

Rolling out 145277

11:41 AM Changeset in webkit [145572] by kerz@chromium.org
  • 1 copy in branches/chromium/1438

Quick branch for Chromium

11:38 AM Changeset in webkit [145571] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Prevent text selection inside Colour and Date/Time input fields
https://bugs.webkit.org/show_bug.cgi?id=111733

Reviewed by Rob Buis.

PR 305194.

Skip rendering of selection if it is in a popup driven
input field. This covers situations where EditorClientBlackBerry::shouldChangeSelectedRange
is either not called or focus is not complete when called.

Informally reviewed by Gen Mak.

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):
(WebKit):

11:28 AM Changeset in webkit [145570] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Mac rebaseline.

Rubber-stamped by Simon Fraser.

  • platform/mac/compositing/overflow/composited-scrolling-paint-phases-expected.txt:
11:27 AM Changeset in webkit [145569] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

Webkit unable to show gifs with applcation extension string shorter than 11 bytes
https://bugs.webkit.org/show_bug.cgi?id=110620

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2013-03-12
Reviewed by Laszlo Gombos.

Source/WebCore:

Use actual block size for gifs application extension string even if it is below 11 bytes
to be able to decode this kind of gifs.

Test: fast/images/gif-short-app-extension-string.html

  • platform/image-decoders/gif/GIFImageReader.cpp:

(GIFImageReader::decodeInternal):

LayoutTests:

Test that webkit is able to decode gifs with short application extension string.

  • fast/images/gif-short-app-extension-string-expected.png: Added.
  • fast/images/gif-short-app-extension-string-expected.txt: Added.
  • fast/images/gif-short-app-extension-string.html: Added.
  • fast/images/resources/short-app-extension-string.gif: Added.
11:26 AM Changeset in webkit [145568] by commit-queue@webkit.org
  • 3 edits
    1 delete in trunk/Source/Platform

[chromium] Remove unused WebIOSurfaceLayer type
https://bugs.webkit.org/show_bug.cgi?id=111796

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

This has been dead code since http://trac.webkit.org/changeset/138223

  • Platform.gypi:
  • chromium/public/WebCompositorSupport.h:

(WebKit):

  • chromium/public/WebIOSurfaceLayer.h: Removed.
11:20 AM Changeset in webkit [145567] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Unreviewed, rolling out r145277.
http://trac.webkit.org/changeset/145277
https://bugs.webkit.org/show_bug.cgi?id=112170

chromium-gpu and android testers are seeing failures/crashes
relating to this code (Requested by eseidel on #webkit).

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

  • html/parser/BackgroundHTMLInputStream.cpp:

(WebCore::BackgroundHTMLInputStream::rewindTo):

  • html/parser/BackgroundHTMLInputStream.h:

(BackgroundHTMLInputStream):
(Checkpoint):

  • html/parser/BackgroundHTMLParser.cpp:
  • html/parser/BackgroundHTMLParser.h:

(BackgroundHTMLParser):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::pumpPendingSpeculations):

11:18 AM Changeset in webkit [145566] by rafaelw@chromium.org
  • 2 edits in branches/chromium/1410

Merge 145293 "[HTMLTemplateElement] processTemplateEndTag() need..."

[HTMLTemplateElement] processTemplateEndTag() needs to check for template in html scope
https://bugs.webkit.org/show_bug.cgi?id=111880

Reviewed by Eric Seidel.

Source/WebCore:

Currently, </template> handling exits with an error if there is not a template tag "in scope"
which will be true if there is a table (for instance) below a template. This makes it so that
the search (correctly) examines the entire element stack.

Tests added to html5lib testing library.

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processTemplateEndTag):

LayoutTests:

  • html5lib/resources/template.dat:

TBR=rafaelw@chromium.org
Review URL: https://codereview.chromium.org/12623014

11:13 AM Changeset in webkit [145565] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Clean up WebPageURITest

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-03-12
Reviewed by Carlos Garcia Campos.

  • UIProcess/API/gtk/tests/TestLoaderClient.cpp:
  • UIProcess/API/gtk/tests/WebKitTestBus.cpp:

(WebKitTestBus::getOrCreateConnection):
(WebKitTestBus::createProxy):

  • UIProcess/API/gtk/tests/WebKitTestBus.h:

(WebKitTestBus::connection):
(WebKitTestBus):

11:02 AM Changeset in webkit [145564] by Christophe Dumez
  • 2 edits in trunk/Tools

[EFL][WK2] Add popup menu support to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=108934

Reviewed by Kenneth Rohde Christiansen.

Implement popup menu support in MiniBrowser by handling popup_menu_show
and popup_menu_hide smart functions on the view and using the Ewk popup
menu API.

  • MiniBrowser/efl/main.c:

(_Browser_Window):
(on_popup_menu_discarded):
(on_popup_menu_item_clicked):
(popup_menu_populate):
(on_popup_menu_show):
(on_popup_menu_hide):
(window_create): Use calloc() instead of malloc() to allocate memory for
Browser_Window. This makes sure all the structs members are initialized
to 0 (such as the new elm_popup_menu pointer).

10:54 AM Changeset in webkit [145563] by Simon Fraser
  • 9 edits in trunk/Source/WebCore

Keep track of the number of GraphicsLayers with tiled backing in RenderLayerCompositor
https://bugs.webkit.org/show_bug.cgi?id=112083

Reviewed by Dean Jackson.

Have RenderLayerCompositor keep track of how many of its GraphicsLayers use TiledBacking.
This is useful for platforms to decide whether it's necessary to force GraphicsLayer flushes
to update the visibleRect of those TiledBackings.

GraphicsLayers are always created without TiledBacking. There are two
ways the count can change:

  1. A GraphicsLayerCA toggles into or out of tiled mode. It notifies its client via a new tiledBackingUsageChanged() callback on GraphicsLayerClient.
  2. A tiled GraphicsLayerCA is destroyed. Added a new bottleneck function to RenderLayerBacking::willDestroyLayer() that is called everywhere we destroy layers.

The main page TiledBacking is not counted as part of this.

Also renamed uses of "tiledLayer" to "tiledBacking" in GraphicsLayer[CA].

  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::GraphicsLayer):
(WebCore::GraphicsLayer::getDebugBorderInfo):
(WebCore::GraphicsLayer::dumpProperties):

  • platform/graphics/GraphicsLayer.h:

(WebCore::GraphicsLayer::usingTiledBacking):

  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::tiledBackingUsageChanged):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::recursiveCommitChanges):
(WebCore::GraphicsLayerCA::updateGeometry):
(WebCore::GraphicsLayerCA::updateLayerDrawsContent):
(WebCore::GraphicsLayerCA::updateContentsScale):
(WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::willDestroyLayer):
(WebCore::RenderLayerBacking::tiledBackingUsageChanged):
(WebCore::RenderLayerBacking::destroyGraphicsLayers):
(WebCore::RenderLayerBacking::updateClippingLayers):
(WebCore::RenderLayerBacking::updateOverflowControlsLayers):
(WebCore::RenderLayerBacking::updateForegroundLayer):
(WebCore::RenderLayerBacking::updateBackgroundLayer):
(WebCore::RenderLayerBacking::updateMaskLayer):
(WebCore::RenderLayerBacking::updateScrollingLayers):
(WebCore::RenderLayerBacking::compositingLayerType):

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::RenderLayerCompositor):
(WebCore::RenderLayerCompositor::layerTiledBackingUsageChanged):

  • rendering/RenderLayerCompositor.h:

(WebCore::RenderLayerCompositor::haveNonMainLayersWithTiledBacking):

10:44 AM Changeset in webkit [145562] by inferno@chromium.org
  • 29 edits in trunk/Source

Replace static_casts with to* functions.
https://bugs.webkit.org/show_bug.cgi?id=112072

Reviewed by Philip Rogers.

to* functions are preferred over static_cast calls since they
help to catch bad casts easily on the testing infrastructure.

Source/WebCore:

  • accessibility/AccessibilityMenuList.cpp:

(WebCore::AccessibilityMenuList::canSetFocusAttribute):

  • bindings/objc/DOM.mm:

(kitClass):

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • editing/ApplyStyleCommand.cpp:

(WebCore::isLegacyAppleStyleSpan):
(WebCore::isEmptyFontTag):
(WebCore::ApplyStyleCommand::applyBlockStyle):

  • editing/FormatBlockCommand.cpp:

(WebCore::isElementForFormatBlock):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::isMailPasteAsQuotationNode):
(WebCore::haveSameTagName):
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
(WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):

  • history/CachedPage.cpp:

(WebCore::CachedPage::restore):

  • html/ColorInputType.cpp:

(WebCore::ColorInputType::suggestions):

  • html/HTMLTableRowsCollection.cpp:

(WebCore::isInHead):
(WebCore::isInBody):
(WebCore::isInFoot):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::innerPatchNode):

  • page/PageSerializer.cpp:

(WebCore::SerializerMarkupAccumulator::appendCustomAttributes):

  • plugins/PluginView.cpp:

(WebCore::PluginView::getValue):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::paintContents):
(WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::name):

  • rendering/RenderMedia.cpp:

(WebCore::RenderMedia::mediaElement):

  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::autosaveName):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::textFormControlElement):
(WebCore::updateUserModifyProperty):

  • rendering/mathml/RenderMathMLFenced.cpp:

(WebCore::RenderMathMLFenced::updateFromElement):

  • rendering/mathml/RenderMathMLFraction.cpp:

(WebCore::RenderMathMLFraction::updateFromElement):

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::XMLDocumentParser::XMLDocumentParser):
(WebCore::XMLDocumentParser::endElementNs):

Source/WebKit/chromium:

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::focusedNodeChanged):

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):

  • src/DOMUtilitiesPrivate.cpp:

(WebCore::toHTMLElement):

  • src/WebSearchableFormData.cpp:

(HTMLNames::IsSelectInDefaultState):

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _enterFullscreenForNode:WebCore::]):

10:42 AM Changeset in webkit [145561] by zandobersek@gmail.com
  • 4 edits in trunk/Source

[GTK] Remove HILDON_CPPFLAGS and HILDON_CFLAGS references from GNUmakefiles
https://bugs.webkit.org/show_bug.cgi?id=112163

Reviewed by Martin Robinson.

Source/WebCore:

No new tests - no new functionality, merely a cleanup.

  • GNUmakefile.am: The Hildon dependency doesn't exist anymore so there's no need for

references to HILDON_CPPFLAGS and HILDON_CFLAGS.

Source/WebKit2:

  • GNUmakefile.am: The Hildon dependency doesn't exist anymore so there's no need for

references to HILDON_CPPFLAGS and HILDON_CFLAGS.

10:40 AM Changeset in webkit [145560] by zandobersek@gmail.com
  • 2 edits in trunk

[GTK] 'unrecognized command line option "-Wno-c++11-extensions"' warning reported when using gcc
https://bugs.webkit.org/show_bug.cgi?id=111936

Reviewed by Martin Robinson.

  • Source/autotools/SetupCompilerFlags.m4: Only use the -Wno-c++11-extensions warning when building

with Clang as GCC does not support the warning just yet. Also enhance the comment about using libstdc++
as the standard C++ library when compiling with Clang.

10:38 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
10:37 AM Changeset in webkit [145559] by Lucas Forschler
  • 4 edits in branches/safari-536.30-branch/Source

Versioning.

10:34 AM Changeset in webkit [145558] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r145376 - [SOUP] ResourceRequest::updateSoupMessage doesn't update the URI of the soup message
https://bugs.webkit.org/show_bug.cgi?id=112040

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-03-11
Reviewed by Gustavo Noronha Silva.

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::updateSoupMessage): Update the soup
message URI with the ResourceRequest URL.

10:26 AM Changeset in webkit [145557] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Not reviewed: removing GtkVersioning from chromium targets.

  • WebCore.gypi:
10:04 AM Changeset in webkit [145556] by Lucas Forschler
  • 1 copy in branches/safari-536.30-branch

New Branch.

10:00 AM Changeset in webkit [145555] by zandobersek@gmail.com
  • 3 edits
    3 adds in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Adding failure expectations for two crashers and a flaky test.
  • platform/gtk/fast/js/global-constructors-expected.txt: Rebaselining after r145526.
  • platform/gtk/http/tests/security/xssAuditor: Added. Adding baselines for tests introduced in r145503.
  • platform/gtk/http/tests/security/xssAuditor/xss-filter-bypass-big5-expected.txt: Added.
  • platform/gtk/http/tests/security/xssAuditor/xss-filter-bypass-sjis-expected.txt: Added.
9:44 AM Changeset in webkit [145554] by commit-queue@webkit.org
  • 37 edits in trunk/Source/WebCore

[V8] Store main world and non-main world templates separately.
https://bugs.webkit.org/show_bug.cgi?id=111724

Patch by Marja Hölttä <marja@chromium.org> on 2013-03-12
Reviewed by Jochen Eisinger.

This is needed for generating specialized bindings for the main
world (bug 110874).

No new tests (updated existing bindings tests).

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateDomainSafeFunctionGetter):
(GenerateImplementation):
(CreateCustomSignature):

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

(WebCore::ConfigureV8Float64ArrayTemplate):
(WebCore::V8Float64Array::GetTemplate):
(WebCore::V8Float64Array::HasInstance):

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

(V8Float64Array):

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

(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
(WebCore::V8TestActiveDOMObject::GetTemplate):
(WebCore::V8TestActiveDOMObject::HasInstance):

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

(V8TestActiveDOMObject):

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

(WebCore::V8TestCustomNamedGetter::GetTemplate):
(WebCore::V8TestCustomNamedGetter::HasInstance):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.h:

(V8TestCustomNamedGetter):

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

(WebCore::V8TestEventConstructor::GetTemplate):
(WebCore::V8TestEventConstructor::HasInstance):

  • bindings/scripts/test/V8/V8TestEventConstructor.h:

(V8TestEventConstructor):

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

(WebCore::ConfigureV8TestEventTargetTemplate):
(WebCore::V8TestEventTarget::GetTemplate):
(WebCore::V8TestEventTarget::HasInstance):

  • bindings/scripts/test/V8/V8TestEventTarget.h:

(V8TestEventTarget):

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

(WebCore::V8TestException::GetTemplate):
(WebCore::V8TestException::HasInstance):

  • bindings/scripts/test/V8/V8TestException.h:

(V8TestException):

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

(WebCore::ConfigureV8TestInterfaceTemplate):
(WebCore::V8TestInterface::GetTemplate):
(WebCore::V8TestInterface::HasInstance):

  • bindings/scripts/test/V8/V8TestInterface.h:

(V8TestInterface):

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

(WebCore::V8TestMediaQueryListListener::GetTemplate):
(WebCore::V8TestMediaQueryListListener::HasInstance):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.h:

(V8TestMediaQueryListListener):

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

(WebCore::V8TestNamedConstructor::GetTemplate):
(WebCore::V8TestNamedConstructor::HasInstance):

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

(V8TestNamedConstructor):

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

(WebCore::V8TestNode::GetTemplate):
(WebCore::V8TestNode::HasInstance):

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

(V8TestNode):

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

(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::GetTemplate):
(WebCore::V8TestObj::HasInstance):

  • bindings/scripts/test/V8/V8TestObj.h:

(V8TestObj):

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

(WebCore::V8TestOverloadedConstructors::GetTemplate):
(WebCore::V8TestOverloadedConstructors::HasInstance):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.h:

(V8TestOverloadedConstructors):

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

(WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
(WebCore::V8TestSerializedScriptValueInterface::HasInstance):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:

(V8TestSerializedScriptValueInterface):

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

(WebCore::ConfigureV8TestTypedefsTemplate):
(WebCore::V8TestTypedefs::GetTemplate):
(WebCore::V8TestTypedefs::HasInstance):

  • bindings/scripts/test/V8/V8TestTypedefs.h:

(V8TestTypedefs):

  • bindings/v8/V8AdaptorFunction.cpp:

(WebCore::V8AdaptorFunction::getTemplate):

  • bindings/v8/V8GCController.cpp:
  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::reportMemoryUsage):
(WebCore::V8PerIsolateData::privateTemplate):
(WebCore::V8PerIsolateData::rawTemplate):
(WebCore::V8PerIsolateData::hasInstance):

  • bindings/v8/V8PerIsolateData.h:

(WebCore::V8PerIsolateData::rawTemplateMap):
(V8PerIsolateData):
(WebCore::V8PerIsolateData::templateMap):

  • bindings/v8/WrapperTypeInfo.h:
  • bindings/v8/custom/V8LocationCustom.cpp:

(WebCore::V8Location::reloadAttrGetterCustom):
(WebCore::V8Location::replaceAttrGetterCustom):
(WebCore::V8Location::assignAttrGetterCustom):

8:57 AM Changeset in webkit [145553] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Notify client if the selection is in a subframe when started.
https://bugs.webkit.org/show_bug.cgi?id=112065

Patch by Genevieve Mak <gmak@rim.com> on 2013-03-12
Reviewed by Rob Buis.

PR #278490
Internally Reviewed by Mike Fenton.

  • Api/InRegionScroller.cpp:

(BlackBerry::WebKit::InRegionScrollerPrivate::updateSelectionScrollView):
(WebKit):

  • Api/InRegionScroller_p.h:

(InRegionScrollerPrivate):

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::updateSelectionScrollView):
(WebKit):

  • Api/WebPageClient.h:
  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::cancelSelection):
(BlackBerry::WebKit::SelectionHandler::setSelection):

8:54 AM Changeset in webkit [145552] by zandobersek@gmail.com
  • 19 edits
    5 adds
    2 deletes in trunk

[GTK] Set up the libPlatformGtk.la library
https://bugs.webkit.org/show_bug.cgi?id=111738

Reviewed by Martin Robinson.

.:

  • GNUmakefile.am: Define the two variables that will hold sources list and cppflags as required for the new library.

Include the new GNUmakefile.am that's now available under Source/Platform.

Source/Platform:

  • GNUmakefile.am: Added. Set up the rules for building the new libPlatformGtk.la. For now it will be built in

the same way as libWebCoreGtk.la and in parallel with it while the sources are moved from Source/WebCore/platform
to Source/Platform/gtk and each migrated source file moves to be built in libPlatformGtk.la instead of libWebCoreGtk.la.

  • GNUmakefile.list.am: Added. Lists the build targets for the libPlatformGtk.la.
  • gtk/GtkVersioning.c: Renamed from Source/WebCore/platform/gtk/GtkVersioning.c. This file is independent of WebCore and can be moved

and changed to be built into libPlatformGtk.la right away.

  • gtk/GtkVersioning.h: Renamed from Source/WebCore/platform/gtk/GtkVersioning.h. Ditto.

Source/WebCore:

No new tests - no new functionality.

  • GNUmakefile.am: Reference platformgtk_cppflags, platformgtk_sources variables along with webcoregtk_cppflags, webcoregtk_sources variables.
  • GNUmakefile.list.am: Removing GtkVersioning.c and GtkVersioning.h from the sources list, these files have been moved under Source/Platform.
  • bindings/gobject/GNUmakefile.am: Ditto on the platformgtk_* variables.

Source/WebKit/gtk:

  • GNUmakefile.am: Reference platformgtk_cppflags variable, libPlatformGtk.la along with webcoregtk_cppflags variable, libWebCoreGtk.la.

Adjust the path to GtkVersioning.c, the file has moved under Source/Platform.

Source/WebKit2:

  • GNUmakefile.am: Reference platformgtk_cppflags variable, libPlatformGtk.la along with webcoregtk_cppflags variable, libWebCoreGtk.la.

Adjust the path to GtkVersioning.c, the file has moved under Source/Platform.

Tools:

  • GNUmakefile.am: Reference platformgtk_cppflags variable along with webcoregtk_cppflags variable.

Adjust the path to GtkVersioning.c, the file has moved under Source/Platform.

  • TestWebKitAPI/GNUmakefile.am: Reference platformgtk_cppflags variable along with webcoregtk_cppflags variable.
8:28 AM Changeset in webkit [145551] by rgabor@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

https://bugs.webkit.org/show_bug.cgi?id=112141
LLInt CLoop backend misses Double2Ints() on 32bit architectures

Reviewed by Filip Pizlo.

Implement Double2Ints() in CLoop backend of LLInt on 32bit architectures.

  • llint/LowLevelInterpreter.cpp:

(LLInt):
(JSC::LLInt::Double2Ints):

  • offlineasm/cloop.rb:
8:23 AM Changeset in webkit [145550] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Image,ImageBuffer: add missing parameters to methods
https://bugs.webkit.org/show_bug.cgi?id=112148

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-12
Reviewed by Rob Buis.

BitmapImage::draw(), Image::drawPattern() and ImageBuffer::draw()
have a BlendMode parameter since r137011.

ImageBuffer::copyImage() has a ScaleBehavior parameter since r134100.

  • platform/graphics/blackberry/ImageBlackBerry.cpp:

(WebCore::BitmapImage::draw):
(WebCore::Image::drawPattern):

  • platform/graphics/blackberry/ImageBufferBlackBerry.cpp:

(WebCore::ImageBuffer::copyImage):
(WebCore::ImageBuffer::draw):

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

[BlackBerry] MediaPlayerPrivate: fix call to MediaStreamDescriptor::label()
https://bugs.webkit.org/show_bug.cgi?id=112140

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-12
Reviewed by Rob Buis.

MediaStreamDescriptor::id() was renamed to MediaStreamDescriptor::label() in r139352.

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:

(WebCore::toWebMediaStreamDescriptor):

8:19 AM Changeset in webkit [145548] by eustas@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: [REGRESSION] StepInto (F11) and StepOut (Shift-F11) shortcuts toggle Inspector window full-screen state
https://bugs.webkit.org/show_bug.cgi?id=112113

Reviewed by Alexander Pavlov.

Updated handlers missed in first patch. Added JSDocs to all handlers.

  • inspector/front-end/Panel.js: Fixed JSDocs.
  • inspector/front-end/CallStackSidebarPane.js:

Added return values. Added JSDocs.

  • inspector/front-end/ScriptsPanel.js: Ditto.
  • inspector/front-end/GoToLineDialog.js: Added JSDocs.
  • inspector/front-end/TimelinePanel.js: Ditto.
8:17 AM Changeset in webkit [145547] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] DisplayRefreshMonitor: rename m_timestamp back to m_monotonicAnimationStartTime
https://bugs.webkit.org/show_bug.cgi?id=112139

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-12
Reviewed by Rob Buis.

This changed in r131131, but it was accidentally renamed back in r144465.

  • platform/graphics/blackberry/DisplayRefreshMonitorBlackBerry.cpp:

(WebCore::DisplayRefreshMonitor::displayLinkFired):

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

[BlackBerry] FontPlatformData: HarfBuzz renaming
https://bugs.webkit.org/show_bug.cgi?id=112142

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-12
Reviewed by Rob Buis.

When the old HarfBuzz code was removed in r141291,
HarfBuzzNGFace.h was renamed to HarfBuzzFace.h and m_harfbuzzFace
was renamed to m_harfBuzzFace.

These changes need to be reflected in the BlackBerry port.

  • platform/graphics/blackberry/FontPlatformDataBlackBerry.cpp:

(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::platformDataInit):
(WebCore::FontPlatformData::platformDataAssign):
(WebCore::FontPlatformData::harfBuzzFace):

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

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk2/TestExpectations: Skipped two fullscreen tests after r144837 and r145214.
  • platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt: Updated after r145422.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Updated after r145422.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Updated after r145422.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Updated after r145422.
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Updated after r145422.
  • platform/qt/compositing/overflow/composited-scrolling-paint-phases-expected.txt: Updated after r145422.
8:00 AM Changeset in webkit [145544] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] FontCacheBlackBerry: return PassRefPtr<SimpleFontData>
https://bugs.webkit.org/show_bug.cgi?id=112022

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-12
Reviewed by Rob Buis.

FontData functions return PassRefPtr since r130160.

  • platform/graphics/blackberry/FontCacheBlackBerry.cpp:

(WebCore::FontCache::getFontDataForCharacters):
(WebCore::FontCache::getSimilarFontPlatformData):
(WebCore::FontCache::getLastResortFallbackFont):

  • platform/graphics/blackberry/SimpleFontDataBlackBerry.cpp:

(WebCore::SimpleFontData::createScaledFontData):

7:53 AM Changeset in webkit [145543] by vsevik@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Fix checkContentUpdated behavior in UISourceCode.
https://bugs.webkit.org/show_bug.cgi?id=112037

Reviewed by Alexander Pavlov.

UISourceCode.checkContentUpdated now saves last updated content that was loaded and rejected
by user on the per-file basis (only the last one was saved currently).

  • inspector/front-end/FileSystemProjectDelegate.js:

(WebInspector.FileSystemProjectDelegate.prototype.innerCallback):
(WebInspector.FileSystemProjectDelegate.prototype.requestFileContent):
(WebInspector.FileSystemProjectDelegate.prototype.canSetFileContent):
(WebInspector.FileSystemWorkspaceProvider.prototype._fileSystemAdded):

  • inspector/front-end/SimpleWorkspaceProvider.js:

(WebInspector.SimpleProjectDelegate.prototype.canSetFileContent):

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode.prototype.checkContentUpdated.contentLoaded):
(WebInspector.UISourceCode.prototype.checkContentUpdated):
(WebInspector.UISourceCode.prototype._commitContent):
(WebInspector.UISourceCode.prototype.addRevision):
(WebInspector.UISourceCode.prototype.commitWorkingCopy):

  • inspector/front-end/Workspace.js:

(WebInspector.ProjectDelegate.prototype.canSetFileContent):
(WebInspector.Project.prototype.canSetFileContent):

7:51 AM Changeset in webkit [145542] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Gtk] NBSP are not replaced when using X clipboard
https://bugs.webkit.org/show_bug.cgi?id=112118

Patch by Tomas Popela <tpopela@redhat.com> on 2013-03-12
Reviewed by Martin Robinson.

We're not replacing nbsp with spaces when using X clipboard
(Shift+Insert or middle mouse button).

  • platform/gtk/DataObjectGtk.cpp:

(WebCore::DataObjectGtk::text):

7:48 AM WebKitGTK/2.0.x edited by Martin Robinson
(diff)
7:38 AM Changeset in webkit [145541] by fmalita@chromium.org
  • 9 edits
    2 adds in trunk

SVG Pattern pixelated on inline SVG with CSS transforms
https://bugs.webkit.org/show_bug.cgi?id=111587

Reviewed by Dirk Schulze.

Source/WebCore:

When calculating the resolution for resource image buffers, we need to also consider CSS
transforms. This patch updates calculateTransformationToOutermostSVGCoordinateSystem()
(renamed to calculateTransformationToOutermostCoordinateSystem) to include the affine
component from CSS transforms by walking the parent layer tree.

Test: svg/custom/resources-css-scaled.html

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::applyClippingToContext):

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::applyResource):

  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::createMaskAndSwapContextForTextGradient):
(WebCore::clipToTextMask):

  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::applyResource):

  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::buildPattern):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::calculateScreenFontSizeScalingFactor):
(WebCore::SVGRenderingContext::calculateTransformationToOutermostCoordinateSystem):

  • rendering/svg/SVGRenderingContext.h:

(SVGRenderingContext):

LayoutTests:

  • svg/custom/resources-css-scaled-expected.html: Added.
  • svg/custom/resources-css-scaled.html: Added.
7:35 AM Changeset in webkit [145540] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: add html canvas memory details to the native memory overview
https://bugs.webkit.org/show_bug.cgi?id=112123

Reviewed by Alexander Pavlov.

Show memory occupied vby HTMLCanvasElements under Image category
in the native memory overview.

  • inspector/front-end/NativeHeapSnapshot.js:

(WebInspector.NativeHeapSnapshot.prototype.images.getImageName):
(WebInspector.NativeHeapSnapshot.prototype.images.getCanvasName):
(WebInspector.NativeHeapSnapshot.prototype.images):
(WebInspector.NativeHeapSnapshot.prototype._addNodes):

6:10 AM Changeset in webkit [145539] by vsevik@chromium.org
  • 5 edits in trunk

Web Inspector: ResourceScriptFile diverged state should be correctly reset after debugger reset.
https://bugs.webkit.org/show_bug.cgi?id=112036

Reviewed by Alexander Pavlov.

Source/WebCore:

  • inspector/front-end/ResourceScriptMapping.js:

(WebInspector.ResourceScriptFile):
(WebInspector.ResourceScriptFile.prototype._workingCopyChanged):
(WebInspector.ResourceScriptFile.prototype._maybeDirtyChanged):

LayoutTests:

  • inspector/debugger/file-system-project-mapping-expected.txt:
  • inspector/debugger/file-system-project-mapping.html:
6:02 AM Changeset in webkit [145538] by commit-queue@webkit.org
  • 33 edits in trunk/Source/WebCore

[V8] Move the GetRawTemplate and HasInstance logic from generated bindings to V8PerIsolateData
https://bugs.webkit.org/show_bug.cgi?id=112136

Patch by Marja Hölttä <marja@chromium.org> on 2013-03-12
Reviewed by Kentaro Hara.

When templates for main world and non-main worlds will be separated (bug
111724), HasInstance logic will be a bit ugly: We cannot determine the
world type on the fly, because during GC there is no entered context,
and HasInstance is called during GC. So we need to check against
templates from all the worlds. It's cleaner if that logic is in
V8PerIsolateData.

No new tests (Updated existing bindings tests).

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateDomainSafeFunctionGetter):
(GenerateImplementation):
(CreateCustomSignature):

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

(WebCore::ConfigureV8Float64ArrayTemplate):
(WebCore::V8Float64Array::GetTemplate):
(WebCore::V8Float64Array::HasInstance):

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

(V8Float64Array):

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

(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
(WebCore::V8TestActiveDOMObject::GetTemplate):
(WebCore::V8TestActiveDOMObject::HasInstance):

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

(V8TestActiveDOMObject):

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

(WebCore::V8TestCustomNamedGetter::GetTemplate):
(WebCore::V8TestCustomNamedGetter::HasInstance):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.h:

(V8TestCustomNamedGetter):

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

(WebCore::V8TestEventConstructor::GetTemplate):
(WebCore::V8TestEventConstructor::HasInstance):

  • bindings/scripts/test/V8/V8TestEventConstructor.h:

(V8TestEventConstructor):

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

(WebCore::ConfigureV8TestEventTargetTemplate):
(WebCore::V8TestEventTarget::GetTemplate):
(WebCore::V8TestEventTarget::HasInstance):

  • bindings/scripts/test/V8/V8TestEventTarget.h:

(V8TestEventTarget):

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

(WebCore::V8TestException::GetTemplate):
(WebCore::V8TestException::HasInstance):

  • bindings/scripts/test/V8/V8TestException.h:

(V8TestException):

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

(WebCore::ConfigureV8TestInterfaceTemplate):
(WebCore::V8TestInterface::GetTemplate):
(WebCore::V8TestInterface::HasInstance):

  • bindings/scripts/test/V8/V8TestInterface.h:

(V8TestInterface):

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

(WebCore::V8TestMediaQueryListListener::GetTemplate):
(WebCore::V8TestMediaQueryListListener::HasInstance):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.h:

(V8TestMediaQueryListListener):

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

(WebCore::V8TestNamedConstructor::GetTemplate):
(WebCore::V8TestNamedConstructor::HasInstance):

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

(V8TestNamedConstructor):

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

(WebCore::V8TestNode::GetTemplate):
(WebCore::V8TestNode::HasInstance):

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

(V8TestNode):

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

(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::GetTemplate):
(WebCore::V8TestObj::HasInstance):

  • bindings/scripts/test/V8/V8TestObj.h:

(V8TestObj):

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

(WebCore::V8TestOverloadedConstructors::GetTemplate):
(WebCore::V8TestOverloadedConstructors::HasInstance):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.h:

(V8TestOverloadedConstructors):

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

(WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
(WebCore::V8TestSerializedScriptValueInterface::HasInstance):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:

(V8TestSerializedScriptValueInterface):

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

(WebCore::ConfigureV8TestTypedefsTemplate):
(WebCore::V8TestTypedefs::GetTemplate):
(WebCore::V8TestTypedefs::HasInstance):

  • bindings/scripts/test/V8/V8TestTypedefs.h:

(V8TestTypedefs):

  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::rawTemplate):
(WebCore):
(WebCore::V8PerIsolateData::hasInstance):

  • bindings/v8/V8PerIsolateData.h:

(V8PerIsolateData):

  • bindings/v8/custom/V8LocationCustom.cpp:

(WebCore::V8Location::reloadAttrGetterCustom):
(WebCore::V8Location::replaceAttrGetterCustom):
(WebCore::V8Location::assignAttrGetterCustom):

5:45 AM Changeset in webkit [145537] by eustas@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Fix JSDocs in TimelinePanel.js
https://bugs.webkit.org/show_bug.cgi?id=112137

Reviewed by Vsevolod Vlasov.

Fix parameter type annotation of _loadFromFile.

  • inspector/front-end/TimelinePanel.js: Fixed JSDoc.
5:42 AM Changeset in webkit [145536] by vsevik@chromium.org
  • 6 edits
    3 adds in trunk

Web Inspector: Add a test for Workspace add/removeMapping methods.
https://bugs.webkit.org/show_bug.cgi?id=112035

Reviewed by Alexander Pavlov.

Source/WebCore:

Test: inspector/debugger/file-system-project-mapping.html

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._mapFileSystemToNetwork.mapFileSystemToNetwork):
(WebInspector.ScriptsPanel.prototype._mapFileSystemToNetwork):
(WebInspector.ScriptsPanel.prototype._mapNetworkToFileSystem.mapNetworkToFileSystem):
(WebInspector.ScriptsPanel.prototype._mapNetworkToFileSystem):

  • inspector/front-end/Workspace.js:

(WebInspector.Project.prototype._fileAdded):
(WebInspector.Workspace.prototype.addMapping):

LayoutTests:

  • http/tests/inspector/isolated-filesystem-test.js: Added.

(initialize_IsolatedFileSystemTest.InspectorTest.createIsolatedFileSystemManager):
(initialize_IsolatedFileSystemTest.MockIsolatedFileSystem):
(initialize_IsolatedFileSystemTest.MockIsolatedFileSystem.prototype.path):
(initialize_IsolatedFileSystemTest.MockIsolatedFileSystem.prototype.requestFileContent):
(initialize_IsolatedFileSystemTest.MockIsolatedFileSystem.prototype.setFileContent):
(initialize_IsolatedFileSystemTest.MockIsolatedFileSystem.prototype.requestFilesRecursive):
(initialize_IsolatedFileSystemTest.MockIsolatedFileSystemManager):
(initialize_IsolatedFileSystemTest.MockIsolatedFileSystemManager.prototype.addMockFileSystem):
(initialize_IsolatedFileSystemTest.MockIsolatedFileSystemManager.prototype.removeMockFileSystem):
(initialize_IsolatedFileSystemTest):

  • inspector/debugger/file-system-project-mapping-expected.txt: Added.
  • inspector/debugger/file-system-project-mapping.html: Added.
  • inspector/debugger/resource-script-mapping.html:
  • inspector/file-system-project.html:
5:32 AM Changeset in webkit [145535] by mikhail.pozdnyakov@intel.com
  • 5 edits in trunk/Source/WebKit2

[WK2][EFL] Fix EwkContext class API
https://bugs.webkit.org/show_bug.cgi?id=111706

Reviewed by Alexey Proskuryakov.

  • UIProcess/API/C/efl/WKView.cpp:

(createWKView):

  • UIProcess/API/efl/ewk_context.cpp:

(EwkContext::findOrCreateWrapper):

Renamed from create() as it returns the same instance of EwkContext
for the given WKContextRef if present.

(EwkContext::create):
(EwkContext::defaultContext):

Returns raw pointer rather than PassRefPtr<EwkContext> as ownership
is not transferred.

(ewk_context_default_get):

  • UIProcess/API/efl/ewk_context_private.h:

(EwkContext):

  • UIProcess/efl/WebInspectorProxyEfl.cpp:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

5:29 AM Changeset in webkit [145534] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] SelectionHandler: fix truncated line
https://bugs.webkit.org/show_bug.cgi?id=112133

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-12
Reviewed by Carlos Garcia Campos.

One of the calls to fatFingersResult.nodeAsElementIfApplicable()
was somehow truncated when the selection start animation was
upstreamed in r144640.

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::selectAtPoint):

5:29 AM Changeset in webkit [145533] by vsevik@chromium.org
  • 6 edits
    2 adds in trunk

Web Inspector: SourceFrames are leaking on reload.
https://bugs.webkit.org/show_bug.cgi?id=111961

Reviewed by Alexander Pavlov.

Source/WebCore:

Added dispose method on UISourceCodeFrame.
Scripts panel now calls dispose when SourceFrame is removed and JavaScriptSourceFrame
could remove breakpoint manager listeners in it.
TabbedEditorContainer does not call viewForFile other than in appendFileTab methods to
avoid recreating SourceFrame for uiSourceCode when it was already removed.

Test: inspector/debugger/breakpoint-manager-listeners-count.html

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype.dispose):

  • inspector/front-end/ScriptsPanel.js:
  • inspector/front-end/TabbedEditorContainer.js:

(WebInspector.TabbedEditorContainer.prototype._addScrollAndSelectionListeners):
(WebInspector.TabbedEditorContainer.prototype._removeScrollAndSelectionListeners):
(WebInspector.TabbedEditorContainer.prototype._tabClosed):

  • inspector/front-end/UISourceCodeFrame.js:

(WebInspector.UISourceCodeFrame.prototype.dispose):

LayoutTests:

  • inspector/debugger/breakpoint-manager-listeners-count-expected.txt: Added.
  • inspector/debugger/breakpoint-manager-listeners-count.html: Added.
5:28 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:27 AM Changeset in webkit [145532] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0

Merge r145427 - [Autotools] Set ENABLE_GTK_DOC to false if gtk-doc is not installed
https://bugs.webkit.org/show_bug.cgi?id=111980

Patch by Tobias Mueller <tobiasmue@gnome.org> on 2013-03-11
Reviewed by Martin Robinson.

WebKit did not configure if gtk-doc-am was not installed with the error:
Tools/GNUmakefile.am:419: ENABLE_GTK_DOC does not appear in AM_CONDITIONAL

  • Source/autotools/FindDependencies.m4:
5:23 AM Changeset in webkit [145531] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Elements] Unable to undo "Edit as HTML" changes in the editor
https://bugs.webkit.org/show_bug.cgi?id=112119

Reviewed by Vsevolod Vlasov.

No new tests, a UI change.

  • inspector/front-end/ElementsPanel.js:

(WebInspector.ElementsPanel.prototype.handleShortcut): Do not undo/redo DOM/CSS changes if editing DOM text.

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeOutline.prototype.editing): Added.

5:15 AM Changeset in webkit [145530] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [CodeMirror] there are bugs in TokenHighlight feature
https://bugs.webkit.org/show_bug.cgi?id=112039

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-12
Reviewed by Vsevolod Vlasov.

Fix token highlight in codeMirror experiment

  • rewrite token highlight overlay mode to highlight words, not

substrings

  • add workaround to avoid selection of already selected word

No new tests.

  • inspector/front-end/CodeMirrorTextEditor.js:

(WebInspector.CodeMirrorTextEditor.TokenHighlighter.prototype._cursorChange):
(WebInspector.CodeMirrorTextEditor.TokenHighlighter.prototype._removeHighlight):
(WebInspector.CodeMirrorTextEditor.TokenHighlighter.prototype.nextToken):
(WebInspector.CodeMirrorTextEditor.TokenHighlighter.prototype._addHighlight):

  • inspector/front-end/cm/cmdevtools.css:

(.line-with-selection .cm-column-with-selection):

5:11 AM Changeset in webkit [145529] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix visible_units.h includes
https://bugs.webkit.org/show_bug.cgi?id=112131

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-12
Reviewed by Carlos Garcia Campos.

This file was renamed to VisibleUnits.h in r144911.

  • WebKitSupport/DOMSupport.cpp:
  • WebKitSupport/InputHandler.cpp:
  • WebKitSupport/SelectionHandler.cpp:
  • WebKitSupport/SpellingHandler.cpp:
5:11 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:09 AM Changeset in webkit [145528] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

[GTK] Add webkit_web_context_set_disk_cache_directory to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=111848

Reviewed by Gustavo Noronha Silva.

This allow applications to set a custom directory for the disk
cache.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(webkit_web_context_set_disk_cache_directory):

  • UIProcess/API/gtk/WebKitWebContext.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
  • UIProcess/API/gtk/tests/TestMain.cpp:

(removeNonEmptyDirectory):
(main): Use a different temporary disk cache directory for every
test.

5:01 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
5:00 AM Changeset in webkit [145527] by Carlos Garcia Campos
  • 6 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

[SOUP] Soup disk cache should respect the diskCacheDirectory from the process initial parameters
https://bugs.webkit.org/show_bug.cgi?id=111845

Reviewed by Xan Lopez.

Move the cache initialization to platformInitializeWebProcess() to
create the cache using the directory received from the UI
process. This allows to add public API to set a different disk
cache directory from the UI process.

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformDefaultDiskCacheDirectory): Return
default disk cache directory.

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::platformDefaultDiskCacheDirectory): Ditto.

  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainEfl): Remove soup cache initialization.

  • WebProcess/gtk/WebProcessMainGtk.cpp:

(WebKit::WebProcessMainGtk): Ditto.

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformInitializeWebProcess): Initialize
soup cache.

4:56 AM Changeset in webkit [145526] by zandobersek@gmail.com
  • 4 edits in trunk

[GTK] Enable Web Audio in development builds
https://bugs.webkit.org/show_bug.cgi?id=111831

Reviewed by Philippe Normand.

Source/WebKit2:

  • GNUmakefile.am: Link the plugin process against libWebCoreModules.la as well.

Tools:

Web Audio is already quite well supported on the GTK port but still has a few issues
that must be addressed before it is enabled by default. Despite that it should be enabled
in development builds just so we are up-to-date with future feature infrastructure changes.
The Web Audio-related layout tests are not run yet due to missing support in DRT/WKTR, but
that's an obvious goal before enabling the feature in release builds.

  • Scripts/webkitperl/FeatureList.pm:
4:44 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
4:43 AM Changeset in webkit [145525] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

[GTK] Add webkit_web_page_get_id() to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=111938

Reviewed by Xan Lopez.

Add API to the web extensions API to get the identifier of a web
page.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
  • UIProcess/API/gtk/tests/WebExtensionTest.cpp:

(methodCallCallback): Check the page ID matches the one returned
by webkit_web_page_get_id().

  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:

(webkit_web_page_get_id):

  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h:
4:38 AM Changeset in webkit [145524] by falken@chromium.org
  • 8 edits in trunk/Source/WebCore

Unreviewed, rolling out r145514.
http://trac.webkit.org/changeset/145514
https://bugs.webkit.org/show_bug.cgi?id=112134

breaks Mac build (Requested by falken on #webkit).

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

  • dom/Element.cpp:
  • dom/Element.h:
  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchSimulatedClick):

  • dom/GestureEvent.cpp:

(WebCore::GestureEventDispatchMediator::dispatchEvent):

  • dom/MouseEvent.cpp:

(WebCore::MouseEventDispatchMediator::dispatchEvent):

  • dom/Node.cpp:

(WebCore):
(WebCore::Node::isInert):
(WebCore::Node::handleLocalEvents):
(WebCore::Node::disabled):
(WebCore::Node::willRespondToMouseMoveEvents):
(WebCore::Node::willRespondToMouseClickEvents):
(WebCore::Node::willRespondToTouchEvents):

  • dom/Node.h:

(Node):

4:32 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
4:31 AM Changeset in webkit [145523] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit/gtk

Merge r145070 - [GTK] Expose "ShouldRespectImageOrientation" setting into WebKitWebSettings
https://bugs.webkit.org/show_bug.cgi?id=111414

Patch by Tomas Popela <tpopela@redhat.com> on 2013-03-07
Reviewed by Carlos Garcia Campos.

We should expose ShouldRespectImageOrientation setting into
WebKitWebSettings. When it is enabled, the images are shown with right
orientation regarding to images EXIF data.

  • webkit/webkitwebsettings.cpp:

(webkit_web_settings_class_init):
(webkit_web_settings_set_property):
(webkit_web_settings_get_property):

  • webkit/webkitwebsettingsprivate.h:
  • webkit/webkitwebview.cpp:

(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

4:28 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
4:26 AM Changeset in webkit [145522] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Unreviewed EFL gardening.
https://bugs.webkit.org/show_bug.cgi?id=112130

Gardening; assigning bug numbers to failure accessibility tests.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-03-12

  • platform/efl-wk1/TestExpectations:
  • platform/efl-wk2/TestExpectations:
4:26 AM Changeset in webkit [145521] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r145318 - Fix offset handling in GStreamer WebKitWebSource.
https://bugs.webkit.org/show_bug.cgi?id=111888

Patch by Sebastian Dröge <sebastian.droege@collabora.co.uk> on 2013-03-09
Reviewed by Philippe Normand.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webKitWebSrcSeekDataCb):
(StreamingClient::didReceiveData):
The offset handling in WebKitWebSource was completely wrong
before and caused wrong offsets to be set on the GStreamer buffers
after a seek.

Apart from that there was also a race condition that happens
when a downstream element causes seeks in very short succession
and is switching between two different parts of the stream.

4:18 AM Changeset in webkit [145520] by commit-queue@webkit.org
  • 8 edits
    1 add in trunk/Source/WebCore

Web Inspector: [CodeMirror] highlight matching braces
https://bugs.webkit.org/show_bug.cgi?id=112041

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-12
Reviewed by Vsevolod Vlasov.

Add "matchbrackets" add-on to CodeMirror text editor add override
default styles for matched and unmatched braces.

No new tests.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • inspector/front-end/CodeMirrorTextEditor.js:

(WebInspector.CodeMirrorTextEditor):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/cm/cmdevtools.css:

(.CodeMirror-matchingbracket):
(.CodeMirror-nonmatchingbracket):

  • inspector/front-end/cm/matchbrackets.js: Added.

(.):

4:18 AM Changeset in webkit [145519] by jocelyn.turcotte@digia.com
  • 8 edits in trunk/Source/WebKit2

[Qt][WK2] Layer QtDownloadManager on the C API
https://bugs.webkit.org/show_bug.cgi?id=109562

Reviewed by Simon Hausmann.
Signed off for WebKit2 by Benjamin Poulain.

  • UIProcess/API/cpp/qt/WKURLQt.cpp:

(WebKit::adoptToQString):
(WebKit):
(WebKit::adoptToQUrl):

  • UIProcess/API/cpp/qt/WKURLQt.h:

(WebKit):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::handleDownloadRequest):

  • UIProcess/qt/QtDownloadManager.cpp:

(WebKit::toQtDownloadManager):
(WebKit):
(WebKit::QtDownloadManager::QtDownloadManager):
(WebKit::QtDownloadManager::addDownload):
(WebKit::QtDownloadManager::didReceiveResponse):
(WebKit::QtDownloadManager::didCreateDestination):
(WebKit::QtDownloadManager::didFinishDownload):
(WebKit::QtDownloadManager::didFailDownload):
(WebKit::QtDownloadManager::didReceiveDataForDownload):

  • UIProcess/qt/QtDownloadManager.h:

(WebKit):
(QtDownloadManager):

  • UIProcess/qt/QtWebContext.cpp:

(WebKit::QtWebContext::QtWebContext):

  • UIProcess/qt/QtWebError.cpp:

(WebKit::QtWebError::url):
(WebKit::QtWebError::description):

4:17 AM Changeset in webkit [145518] by jocelyn.turcotte@digia.com
  • 11 edits
    2 adds in trunk/Source/WebKit2

[Qt][WK2] Layer QtWebIconDatabaseClient on the C API
https://bugs.webkit.org/show_bug.cgi?id=109564

Reviewed by Simon Hausmann.
Signed off for WebKit2 by Benjamin Poulain.

  • Target.pri:
  • UIProcess/API/C/qt/WKIconDatabaseQt.cpp: Added.

(WKIconDatabaseTryGetQImageForURL):

  • New API added to get a QImage from the IconDatabase. Based on WKIconDatabaseCG.h/cpp
  • UIProcess/API/C/qt/WKIconDatabaseQt.h: Added.
  • UIProcess/API/cpp/qt/WKURLQt.cpp:

(WKURLCreateWithQString):
(WKURLCopyQString):
(WKURLCreateWithQUrl):
(WKURLCopyQUrl):

  • The WKUrlRef behind the scene is a WTF::String and encoding it back and forth to a QUrl can slightly change its string representation. Allow converting a WKUrlRef to and from a QString to ensure this.
  • UIProcess/API/cpp/qt/WKURLQt.h:
  • UIProcess/API/qt/qwebiconimageprovider.cpp:

(QWebIconImageProvider::iconURLForPageURLInContext):

  • The icon URL isn't accessible form the C API and shouldn't need to be. Use an ID incremented on each update to trigger an update of the QML Image component.

(QWebIconImageProvider::requestImage):

  • The IconDatabase was previously assumed to resize the image to the requested size, but this parameter is ignored, as stated in a comment in WebIconDatabase::imageForPageURL. Explicitely do the resize after fetching the original icon to also be able to report the original size properly to QtQuick.
  • UIProcess/API/qt/qwebiconimageprovider_p.h:
  • UIProcess/API/qt/tests/qmltests/WebView/tst_favIconLoad.qml:
    • Set the image to load asynchronously to further test the possibility of threading issues in QtWebIconDatabaseClient::iconImageForPageURL
    • Add a few barriers to fix some issues where the load succeeded signal would be wrongly catched by init() before the next test.
  • UIProcess/qt/QtWebContext.cpp:

(WebKit::QtWebContext::QtWebContext):

  • UIProcess/qt/QtWebIconDatabaseClient.cpp:

(WebKit):
(WebKit::QtWebIconDatabaseClient::QtWebIconDatabaseClient):
(WebKit::QtWebIconDatabaseClient::~QtWebIconDatabaseClient):
(WebKit::QtWebIconDatabaseClient::updateID):
(WebKit::QtWebIconDatabaseClient::didChangeIconForPageURL):
(WebKit::QtWebIconDatabaseClient::iconImageForPageURL):

  • Remove the Mutex. This mutex was useless given that it would only be locked from a single thread. Since the IconDatabase runs in its own thread, it already is thread-safe to access.

(WebKit::QtWebIconDatabaseClient::retainIconForPageURL):
(WebKit::QtWebIconDatabaseClient::releaseIconForPageURL):

  • UIProcess/qt/QtWebIconDatabaseClient.h:

(QtWebIconDatabaseClient):

  • WebKit2.pri:
4:16 AM Changeset in webkit [145517] by jocelyn.turcotte@digia.com
  • 7 edits
    2 deletes in trunk/Source/WebKit2

[Qt][WK2] Specify storage paths through the C API
https://bugs.webkit.org/show_bug.cgi?id=111435

Reviewed by Simon Hausmann.
Signed off for WebKit2 by Benjamin Poulain.

The WKIconDatabase should be opened through a call to
WKContextSetIconDatabasePath. To avoid having some paths
returned through WebContext::platformDefault* and some others
through the C API, make sure that all those paths are set
through the C API.

  • Shared/qt/QtDefaultDataLocation.cpp: Removed.
  • Shared/qt/QtDefaultDataLocation.h: Removed.
  • Target.pri:
  • UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:

(WebKit::cacheFile):

  • This part is left alone behind the C API. Since PluginProcessProxy have no knowledge of the WebContext it is rather difficult to fetch a configured directory that could be used for this purpose (like the disk cache storage). Hard-code a compatible logic to keep the current behavior.

(WebKit::removeCacheFile):
(WebKit):
(WebKit::readMetaDataFromCacheFile):
(WebKit::writeToCacheFile):
(WebKit::tryReadPluginMetaDataFromCacheFile):

  • Update the code to better handle an empty cache file path.
  • UIProcess/qt/QtWebContext.cpp:

(WebKit::QtWebContext::defaultContext):
(WebKit::defaultLocation):
(WebKit):
(WebKit::QtWebContext::preparedStoragePath):

  • UIProcess/qt/QtWebContext.h:
  • UIProcess/qt/QtWebIconDatabaseClient.cpp:

(WebKit::QtWebIconDatabaseClient::QtWebIconDatabaseClient):

  • UIProcess/qt/WebContextQt.cpp:

(WebKit::WebContext::applicationCacheDirectory):
(WebKit::WebContext::platformDefaultDatabaseDirectory):
(WebKit::WebContext::platformDefaultIconDatabasePath):
(WebKit::WebContext::platformDefaultLocalStorageDirectory):
(WebKit::WebContext::platformDefaultDiskCacheDirectory):
(WebKit::WebContext::platformDefaultCookieStorageDirectory):

4:14 AM Changeset in webkit [145516] by jocelyn.turcotte@digia.com
  • 4 edits in trunk/Source/WebKit2

[Qt] Properly layer QtWebContext on top of the C API
https://bugs.webkit.org/show_bug.cgi?id=108475

Reviewed by Simon Hausmann.
Signed off for WebKit2 by Benjamin Poulain.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

  • UIProcess/qt/QtWebContext.cpp:

(WebKit::initializeContextInjectedBundleClient):
(WebKit::QtWebContext::QtWebContext):
(WebKit::QtWebContext::create):
(WebKit::QtWebContext::defaultContext):

  • UIProcess/qt/QtWebContext.h:

(WebKit):
(QtWebContext):
(WebKit::QtWebContext::context):

4:13 AM Changeset in webkit [145515] by jocelyn.turcotte@digia.com
  • 11 edits in trunk/Source/WebKit2

[Qt][WK2] Allow QtWebContext to call directly to QQuickWebView with a WKPageRef
https://bugs.webkit.org/show_bug.cgi?id=109829

Reviewed by Allan Sandfeld Jensen.
Signed off for WebKit2 by Benjamin Poulain.

Instead of going through WebPageProxy and PageClient to forward
injected bundle messages received by the context, maintain a static map
of WKPageRef to QQuickWebViewPrivate.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::get):
(QQuickWebViewPrivate::~QQuickWebViewPrivate):
(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::didReceiveMessageFromNavigatorQtObject):

  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate):

  • UIProcess/API/qt/raw/qrawwebview.cpp:
  • UIProcess/API/qt/raw/qrawwebview_p_p.h:
  • UIProcess/PageClient.h:

(PageClient):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/qt/QtPageClient.cpp:
  • UIProcess/qt/QtPageClient.h:

(QtPageClient):

  • UIProcess/qt/QtWebContext.cpp:

(WebKit::didReceiveMessageFromInjectedBundle):

  • UIProcess/qt/WebPageProxyQt.cpp:
4:13 AM Changeset in webkit [145514] by falken@chromium.org
  • 8 edits in trunk/Source/WebCore

Refactoring: Pull Node::disabled() and Node::isInert() down to Element.
https://bugs.webkit.org/show_bug.cgi?id=112085

Reviewed by Hajime Morrita.

Node is too low a level for these methods.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::disabled):
(WebCore):
(WebCore::Element::isInert):

  • dom/Element.h:

(Element):

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchSimulatedClick):

  • dom/GestureEvent.cpp:

(WebCore::GestureEventDispatchMediator::dispatchEvent):

  • dom/MouseEvent.cpp:

(WebCore::MouseEventDispatchMediator::dispatchEvent):

  • dom/Node.cpp:

(WebCore::Node::handleLocalEvents):
(WebCore::Node::willRespondToMouseMoveEvents):
(WebCore::Node::willRespondToMouseClickEvents):
(WebCore::Node::willRespondToTouchEvents):

  • dom/Node.h:

(Node):

4:12 AM Changeset in webkit [145513] by jocelyn.turcotte@digia.com
  • 7 edits in trunk/Source/WebKit2

[Qt][WK2] Keep the WebContext alive during the whole application's lifetime
https://bugs.webkit.org/show_bug.cgi?id=109827

Reviewed by Simon Hausmann.
Signed off for WebKit2 by Benjamin Poulain.

The lifetime of the WebContext is difficult to manage because of a circular
reference kept with the WebProcessProxy until it shuts itself down, 60
seconds after the last page is closed. There was some notification
in place to handle this in the upper layer, but having to go through the
C API (done in a following patch) makes this quite awkward.

Keeping the WebContext alive also includes the icon database which is
quite heavy, in the future we should only enable it once the
QQuickWebView::icon property is read.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::handleDownloadRequest):
(QQuickWebViewPrivate::updateIcon):

  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate):

  • UIProcess/API/qt/qwebiconimageprovider.cpp:

(QWebIconImageProvider::requestImage):

  • UIProcess/qt/QtWebContext.cpp:

(WebKit):
(WebKit::QtWebContext::QtWebContext):
(WebKit::QtWebContext::~QtWebContext):
(WebKit::QtWebContext::create):
(WebKit::QtWebContext::defaultContext):

  • UIProcess/qt/QtWebContext.h:

(QtWebContext):
(WebKit::QtWebContext::downloadManager):
(WebKit::QtWebContext::iconDatabase):

  • UIProcess/qt/WebContextQt.cpp:

(WebKit::WebContext::platformInvalidateContext):

4:11 AM Changeset in webkit [145512] by jocelyn.turcotte@digia.com
  • 7 edits in trunk/Source/WebKit2

[Qt][WK2] Favor QUrl and QString over WTF::String in the Qt API layer
https://bugs.webkit.org/show_bug.cgi?id=109468

Reviewed by Allan Sandfeld Jensen.
Signed off for WebKit2 by Benjamin Poulain.

In preparation for patches using the C API types in some areas, remove the
usage of WTF::String on the affected line.

Use a QUrl for icon URL to avoid unnecessary conversion.
Use a QString for the page URL to keep it compatible with WebPageProxy and
WebIconDatabase and avoid QUrl parsing.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::_q_onIconChangedForPageURL):
(QQuickWebViewPrivate::updateIcon):
(QQuickWebView::emitUrlChangeIfNeeded):
(QQuickWebView::icon):

  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate):

  • UIProcess/API/qt/qwebiconimageprovider.cpp:

(QWebIconImageProvider::iconURLForPageURLInContext):

  • UIProcess/API/qt/qwebiconimageprovider_p.h:
  • UIProcess/qt/QtWebIconDatabaseClient.cpp:

(WebKit::QtWebIconDatabaseClient::iconForPageURL):
(WebKit::QtWebIconDatabaseClient::iconImageForPageURL):
(WebKit::QtWebIconDatabaseClient::retainIconForPageURL):
(WebKit::QtWebIconDatabaseClient::releaseIconForPageURL):

  • UIProcess/qt/QtWebIconDatabaseClient.h:

(QtWebIconDatabaseClient):

4:07 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
4:05 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:47 AM Changeset in webkit [145511] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[V8] Get rid of function-level static FunctionTemplates in generated bindings code
https://bugs.webkit.org/show_bug.cgi?id=111971

Patch by Marja Hölttä <marja@chromium.org> on 2013-03-12
Reviewed by Jochen Eisinger.

In the future we'll create and store function templates for main world
and non-main worlds separately (see bug 111724), having function
templates as static variables inside functions will break the
functionality.

No new tests (updated the bindings test expectations).

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateDomainSafeFunctionGetter):

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

(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):

  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::V8PerIsolateData):
(WebCore::V8PerIsolateData::privateTemplate):
(WebCore):

  • bindings/v8/V8PerIsolateData.h:

(V8PerIsolateData):

  • bindings/v8/custom/V8LocationCustom.cpp:

(WebCore::V8Location::reloadAttrGetterCustom):
(WebCore::V8Location::replaceAttrGetterCustom):
(WebCore::V8Location::assignAttrGetterCustom):

3:14 AM Changeset in webkit [145510] by tasak@google.com
  • 15 edits
    4 copies in trunk/Source/WebCore

[Refactoring] Implement RuleCollector
https://bugs.webkit.org/show_bug.cgi?id=109916

Reviewed by Antti Koivisto.

Implemented rule collector for an element and collector for a page.
Not all members in class State are required entire while resolving
a style.

No new tests, because just refactoring.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSAllInOne.cpp:

Added ElementRuleCollector and PageRuleCollector.

  • css/DocumentRuleSets.cpp:

(WebCore::ShadowDistributedRules::collectMatchRequests):
Since behaviorAtBoundary is a state owned by ElementRuleCollector,
removed from here.

  • css/DocumentRuleSets.h:

(WebCore::ShadowDistributedRules::isEmpty):
Added to quickly check whether there exist any ShadowDistributedRules
or not.

  • css/ElementRuleCollector.cpp: Copied from Source/WebCore/css/StyleResolver.cpp.

(WebCore):
(WebCore::ElementRuleCollector::matchedResult):
(WebCore::ElementRuleCollector::matchedRuleList):
(WebCore::ElementRuleCollector::addMatchedRule):
(WebCore::ElementRuleCollector::clearMatchedRules):
(WebCore::ElementRuleCollector::ensureRuleList):
(WebCore::ElementRuleCollector::addElementStyleProperties):
(WebCore::ElementRuleCollector::collectMatchingRules):
(WebCore::ElementRuleCollector::collectMatchingRulesForRegion):
(WebCore::ElementRuleCollector::sortAndTransferMatchedRules):
(WebCore::ElementRuleCollector::matchScopedAuthorRules):
(WebCore::ElementRuleCollector::matchHostRules):
(WebCore::ElementRuleCollector::matchShadowDistributedRules):
(WebCore::ElementRuleCollector::matchAuthorRules):
(WebCore::ElementRuleCollector::matchUserRules):
(WebCore::ElementRuleCollector::matchUARules):
(WebCore::ElementRuleCollector::ruleMatches):
(WebCore::ElementRuleCollector::collectMatchingRulesForList):
(WebCore::ElementRuleCollector::sortMatchedRules):
(WebCore::ElementRuleCollector::matchAllRules):
Moved these methods from StyleResolver to this class.
(WebCore::ElementRuleCollector::hasAnyMatchingRules):
This method is used for checking whether a given element can share
a cache.

  • css/ElementRuleCollector.h: Copied from Source/WebCore/css/StyleResolver.h.

(WebCore):
(WebCore::ElementRuleCollector::ElementRuleCollector):
Use styleResolver instance to initialize its member variables, i.e.
SelectorFilter, RuleSets, InspectorCSSOMWrappers, and
StyleScopedResolver.
(ElementRuleCollector):
(WebCore::ElementRuleCollector::setMode):
(WebCore::ElementRuleCollector::setPseudoStyleRequest):
(WebCore::ElementRuleCollector::setSameOriginOnly):
(WebCore::ElementRuleCollector::setRegionForStyling):
Mode, SameOriginOnly, RegionForStyling are only used while collecting
matched rules.
(WebCore::ElementRuleCollector::setMedium):
Need to know which default stylesheet should be looked up.
(WebCore::ElementRuleCollector::document):

  • css/PageRuleCollector.cpp: Copied from Source/WebCore/css/StyleResolver.cpp.

(WebCore::comparePageRules):
(WebCore::PageRuleCollector::isLeftPage):
(WebCore::PageRuleCollector::isFirstPage):
(WebCore::PageRuleCollector::pageName):
(WebCore::PageRuleCollector::matchAllPageRules):
(WebCore::PageRuleCollector::matchPageRules):
(WebCore::checkPageSelectorComponents):
(WebCore::PageRuleCollector::matchPageRulesForList):
Moved from StyleResolver.

  • css/PageRuleCollector.h: Copied from Source/WebCore/css/StyleResolver.h.

(WebCore):
(WebCore::PageRuleCollector::PageRuleCollector):
(PageRuleCollector):
(WebCore::PageRuleCollector::matchedResult):

  • css/StyleResolver.cpp:

(WebCore):
(WebCore::StyleResolver::State::clear):
(WebCore::StyleResolver::MatchResult::addMatchedProperties):
(WebCore::StyleResolver::State::initForStyleResolve):
(WebCore::StyleResolver::styleSharingCandidateMatchesRuleSet):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::pseudoStyleForElement):
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::pseudoStyleRulesForElement):
(WebCore::StyleResolver::applyMatchedProperties):

  • css/StyleResolver.h:

(WebCore::MatchRequest::MatchRequest):
Removed behaviorAtBoundary. Instead, ElementRuleCollector have the
state.
(MatchRequest):
(WebCore::StyleResolver::selectorFilter):
Added to obtain SelectorFilter in ElementRuleCollector's constructor.
(StyleResolver):
(MatchResult):
(WebCore::StyleResolver::State::State):
To pass ASSERT in StyleResolver::applyProperties, need to keep
m_regionForStyling.
(State):
(WebCore::StyleResolver::State::regionForStyling):
(WebCore::StyleResolver::State::useSVGZoomRules):
(WebCore::StyleResolver::hasSelectorForId):
(WebCore):
(WebCore::checkRegionSelector):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::willMatchRule):
Removed StyleResolver from its parameter list. Instead, added
InspectorCSSOMWrappers and DocumentStyleSheetCollection.

  • inspector/InspectorCSSAgent.h:

(WebCore):
(InspectorCSSAgent):

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willMatchRuleImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore):
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willMatchRule):

3:14 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:12 AM Changeset in webkit [145509] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r145508 - [GTK][WK2] REGRESSION(r145081): Unit tests not working if locale is not English
https://bugs.webkit.org/show_bug.cgi?id=111973

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-03-12
Reviewed by Carlos Garcia Campos.

The problem is that the UIProcess locale is reseted to C in
gtk_test_init, however the WebProcess does not inherit the locale set in
the UIProcess and it uses the system one (that could be different to
English). So, there were problems in some tests that are comparing
strings from both processes like WebKit2APITests/TestPrinting and
WebKit2APITests/TestWebKitWebContext. The solution is to set the locale
environment variable LC_ALL to C in order to reset WebProcess locale
too.

  • UIProcess/API/gtk/tests/TestMain.cpp:

(main): Set environment variable LC_ALL to C.

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

[GTK][WK2] REGRESSION(r145081): Unit tests not working if locale is not English
https://bugs.webkit.org/show_bug.cgi?id=111973

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-03-12
Reviewed by Carlos Garcia Campos.

The problem is that the UIProcess locale is reseted to C in
gtk_test_init, however the WebProcess does not inherit the locale set in
the UIProcess and it uses the system one (that could be different to
English). So, there were problems in some tests that are comparing
strings from both processes like WebKit2APITests/TestPrinting and
WebKit2APITests/TestWebKitWebContext. The solution is to set the locale
environment variable LC_ALL to C in order to reset WebProcess locale
too.

  • UIProcess/API/gtk/tests/TestMain.cpp:

(main): Set environment variable LC_ALL to C.

2:52 AM Changeset in webkit [145507] by pfeldman@chromium.org
  • 2 edits in trunk/LayoutTests

Not reviewed: chromium gardening.

  • platform/chromium/TestExpectations:
2:41 AM Changeset in webkit [145506] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] WebKit fails to compile if EGL headers are not in default INCLUDEPATH
https://bugs.webkit.org/show_bug.cgi?id=111859

Patch by Floris Bos <bos@je-eigen-domein.nl> on 2013-03-12
Reviewed by Jocelyn Turcotte.

The 3D graphics code wants to include EGL header files.
But on some platforms such as the Raspberry Pi those are not in /usr/include
but in another folder.
Fix adds "egl" to CONFIG when OpenGL ES2 is used, so the right include
paths are added.

  • WebCore.pri:
2:41 AM Changeset in webkit [145505] by rgabor@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Making more sophisticated cache flush on ARM Linux platform
https://bugs.webkit.org/show_bug.cgi?id=111854

Reviewed by Zoltan Herczeg.

The cache flush on ARM Linux invalidates whole pages
instead of just the required area.

  • assembler/ARMAssembler.h:

(ARMAssembler):
(JSC::ARMAssembler::linuxPageFlush):
(JSC::ARMAssembler::cacheFlush):

  • assembler/ARMv7Assembler.h:

(ARMv7Assembler):
(JSC::ARMv7Assembler::linuxPageFlush):
(JSC::ARMv7Assembler::cacheFlush):

2:30 AM Changeset in webkit [145504] by rgabor@webkit.org
  • 7 edits
    1 move in trunk/Source/JavaScriptCore

Renaming the armv7.rb LLINT backend to arm.rb
https://bugs.webkit.org/show_bug.cgi?id=110565

Reviewed by Zoltan Herczeg.

This is the first step of a unified ARM backend for
all ARM 32 bit architectures in LLInt.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.gypi:
  • LLIntOffsetsExtractor.pro:
  • offlineasm/arm.rb: Copied from Source/JavaScriptCore/offlineasm/armv7.rb.
  • offlineasm/armv7.rb: Removed.
  • offlineasm/backends.rb:
  • offlineasm/risc.rb:
2:28 AM Changeset in webkit [145503] by mkwst@chromium.org
  • 208 edits in trunk

XSSAuditor should send only one console error when blocking a page.
https://bugs.webkit.org/show_bug.cgi?id=110733

Reviewed by Daniel Bates.

Source/WebCore:

Currently, we send two console errors when XSSAuditor blocks a page:
"Refused to execute a JavaScript script. Source code of script found
within request.\n", and "Entire page will be blocked.".

We should only send one message, tuning it properly for the context, and
including the URL of the page effected by the XSSAuditor's work.

Covered by rebaselines of all the XSSAuditor and 'reflected-xss' tests.

  • html/parser/XSSAuditor.cpp:
  • html/parser/XSSAuditor.h:

(WebCore::XSSAuditor::XSSAuditor):

Add two booleans to track the headers used to set the XSSAuditor state.

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

Add detail about the header status to the constructed XSSInfo object.

  • html/parser/XSSAuditorDelegate.cpp:

(WebCore::buildConsoleError):

Move message construction out into a separate inlined function, as
it's becoming complex.

(WebCore::XSSAuditorDelegate::didBlockScript):

Fold the "Entire page will be blocked" message into the main console
error.

  • html/parser/XSSAuditorDelegate.h:

(WebCore::XSSInfo::create):
(WebCore::XSSInfo::XSSInfo):

Add detail about header status to XSSInfo in order to correctly
construct the console error.

LayoutTests:

  • fast/frames/xss-auditor-handles-file-urls-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-block-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-filter-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-invalid-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-allow-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-block-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-filter-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-invalid-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-unset-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-allow-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-block-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-filter-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-invalid-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-unset-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-allow-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-block-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-filter-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-invalid-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-unset-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-block-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-filter-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-invalid-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-unset-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-block-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-empty-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-filter-expected.txt:
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-invalid-expected.txt:
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-expected.txt:
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-expected.txt:
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-null-char-expected.txt:
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-javascript-URL-expected.txt:
  • http/tests/security/xssAuditor/anchor-url-dom-write-location2-expected.txt:
  • http/tests/security/xssAuditor/base-href-control-char-expected.txt:
  • http/tests/security/xssAuditor/base-href-expected.txt:
  • http/tests/security/xssAuditor/base-href-null-char-expected.txt:
  • http/tests/security/xssAuditor/base-href-scheme-relative-expected.txt:
  • http/tests/security/xssAuditor/block-does-not-leak-location-expected.txt:
  • http/tests/security/xssAuditor/block-does-not-leak-referrer-expected.txt:
  • http/tests/security/xssAuditor/cached-frame-expected.txt:
  • http/tests/security/xssAuditor/cookie-injection-expected.txt:
  • http/tests/security/xssAuditor/dom-write-URL-expected.txt:
  • http/tests/security/xssAuditor/dom-write-location-expected.txt:
  • http/tests/security/xssAuditor/dom-write-location-inline-event-expected.txt:
  • http/tests/security/xssAuditor/dom-write-location-javascript-URL-expected.txt:
  • http/tests/security/xssAuditor/embed-tag-code-attribute-2-expected.txt:
  • http/tests/security/xssAuditor/embed-tag-code-attribute-expected.txt:
  • http/tests/security/xssAuditor/embed-tag-control-char-expected.txt:
  • http/tests/security/xssAuditor/embed-tag-expected.txt:
  • http/tests/security/xssAuditor/embed-tag-javascript-url-expected.txt:
  • http/tests/security/xssAuditor/embed-tag-null-char-expected.txt:
  • http/tests/security/xssAuditor/formaction-on-button-expected.txt:
  • http/tests/security/xssAuditor/formaction-on-input-expected.txt:
  • http/tests/security/xssAuditor/form-action-expected.txt:
  • http/tests/security/xssAuditor/full-block-base-href-expected.txt:
  • http/tests/security/xssAuditor/full-block-get-from-iframe-expected.txt:
  • http/tests/security/xssAuditor/full-block-iframe-javascript-url-expected.txt:
  • http/tests/security/xssAuditor/full-block-iframe-no-inherit-expected.txt:
  • http/tests/security/xssAuditor/full-block-javascript-link-expected.txt:
  • http/tests/security/xssAuditor/full-block-link-onclick-expected.txt:
  • http/tests/security/xssAuditor/full-block-object-tag-expected.txt:
  • http/tests/security/xssAuditor/full-block-post-from-iframe-expected.txt:
  • http/tests/security/xssAuditor/full-block-script-tag-cross-domain-expected.txt:
  • http/tests/security/xssAuditor/full-block-script-tag-expected.txt:
  • http/tests/security/xssAuditor/full-block-script-tag-with-source-expected.txt:
  • http/tests/security/xssAuditor/get-from-iframe-expected.txt:
  • http/tests/security/xssAuditor/iframe-injection-expected.txt:
  • http/tests/security/xssAuditor/iframe-javascript-url-expected.txt:
  • http/tests/security/xssAuditor/iframe-javascript-url-more-encoding-expected.txt:
  • http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode-expected.txt:
  • http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode2-expected.txt:
  • http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode3-expected.txt:
  • http/tests/security/xssAuditor/iframe-javascript-url-url-encoded-expected.txt:
  • http/tests/security/xssAuditor/iframe-onload-GBK-char-expected.txt:
  • http/tests/security/xssAuditor/iframe-onload-in-svg-tag-expected.txt:
  • http/tests/security/xssAuditor/iframe-srcdoc-expected.txt:
  • http/tests/security/xssAuditor/img-onerror-GBK-char-expected.txt:
  • http/tests/security/xssAuditor/img-onerror-accented-char-expected.txt:
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char-default-encoding-expected.txt:
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char-expected.txt:
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char2-default-encoding-expected.txt:
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char2-expected.txt:
  • http/tests/security/xssAuditor/inline-event-HTML-entities-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-control-char-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-named-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-null-char-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-ampersand-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-control-char-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-null-char-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-one-plus-one-expected.txt:
  • http/tests/security/xssAuditor/javascript-link-url-encoded-expected.txt:
  • http/tests/security/xssAuditor/link-onclick-ampersand-expected.txt:
  • http/tests/security/xssAuditor/link-onclick-control-char-expected.txt:
  • http/tests/security/xssAuditor/link-onclick-entities-expected.txt:
  • http/tests/security/xssAuditor/link-onclick-expected.txt:
  • http/tests/security/xssAuditor/link-onclick-null-char-expected.txt:
  • http/tests/security/xssAuditor/link-opens-new-window-expected.txt:
  • http/tests/security/xssAuditor/malformed-HTML-expected.txt:
  • http/tests/security/xssAuditor/malformed-xss-protection-header-1-expected.txt:
  • http/tests/security/xssAuditor/malformed-xss-protection-header-2-expected.txt:
  • http/tests/security/xssAuditor/malformed-xss-protection-header-3-expected.txt:
  • http/tests/security/xssAuditor/malformed-xss-protection-header-4-expected.txt:
  • http/tests/security/xssAuditor/malformed-xss-protection-header-5-expected.txt:
  • http/tests/security/xssAuditor/malformed-xss-protection-header-6-expected.txt:
  • http/tests/security/xssAuditor/malformed-xss-protection-header-7-expected.txt:
  • http/tests/security/xssAuditor/malformed-xss-protection-header-8-expected.txt:
  • http/tests/security/xssAuditor/malformed-xss-protection-header-9-expected.txt:
  • http/tests/security/xssAuditor/meta-tag-http-refresh-javascript-url-expected.txt:
  • http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt:
  • http/tests/security/xssAuditor/object-embed-tag-expected.txt:
  • http/tests/security/xssAuditor/object-embed-tag-null-char-expected.txt:
  • http/tests/security/xssAuditor/object-tag-expected.txt:
  • http/tests/security/xssAuditor/object-tag-javascript-url-expected.txt:
  • http/tests/security/xssAuditor/open-attribute-body-expected.txt:
  • http/tests/security/xssAuditor/open-event-handler-iframe-expected.txt:
  • http/tests/security/xssAuditor/open-iframe-src-01-expected.txt:
  • http/tests/security/xssAuditor/open-iframe-src-02-expected.txt:
  • http/tests/security/xssAuditor/open-script-src-01-expected.txt:
  • http/tests/security/xssAuditor/open-script-src-02-expected.txt:
  • http/tests/security/xssAuditor/open-script-src-03-expected.txt:
  • http/tests/security/xssAuditor/open-script-src-04-expected.txt:
  • http/tests/security/xssAuditor/post-from-iframe-expected.txt:
  • http/tests/security/xssAuditor/property-escape-comment-01-expected.txt:
  • http/tests/security/xssAuditor/property-escape-comment-02-expected.txt:
  • http/tests/security/xssAuditor/property-escape-comment-03-expected.txt:
  • http/tests/security/xssAuditor/property-escape-entity-01-expected.txt:
  • http/tests/security/xssAuditor/property-escape-entity-02-expected.txt:
  • http/tests/security/xssAuditor/property-escape-entity-03-expected.txt:
  • http/tests/security/xssAuditor/property-escape-expected.txt:
  • http/tests/security/xssAuditor/property-escape-long-expected.txt:
  • http/tests/security/xssAuditor/property-escape-quote-01-expected.txt:
  • http/tests/security/xssAuditor/property-escape-quote-02-expected.txt:
  • http/tests/security/xssAuditor/property-escape-quote-03-expected.txt:
  • http/tests/security/xssAuditor/report-script-tag-expected.txt:
  • http/tests/security/xssAuditor/report-script-tag-full-block-expected.txt:
  • http/tests/security/xssAuditor/script-tag-Big5-char-expected.txt:
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-16bit-unicode-expected.txt:
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-expected.txt:
  • http/tests/security/xssAuditor/script-tag-Big5-char2-expected.txt:
  • http/tests/security/xssAuditor/script-tag-addslashes-backslash-expected.txt:
  • http/tests/security/xssAuditor/script-tag-addslashes-double-quote-expected.txt:
  • http/tests/security/xssAuditor/script-tag-addslashes-null-char-expected.txt:
  • http/tests/security/xssAuditor/script-tag-addslashes-single-quote-expected.txt:
  • http/tests/security/xssAuditor/script-tag-control-char-expected.txt:
  • http/tests/security/xssAuditor/script-tag-convoluted-expected.txt:
  • http/tests/security/xssAuditor/script-tag-entities-expected.txt:
  • http/tests/security/xssAuditor/script-tag-expected.txt:
  • http/tests/security/xssAuditor/script-tag-inside-svg-tag-expected.txt:
  • http/tests/security/xssAuditor/script-tag-inside-svg-tag2-expected.txt:
  • http/tests/security/xssAuditor/script-tag-inside-svg-tag3-expected.txt:
  • http/tests/security/xssAuditor/script-tag-null-char-expected.txt:
  • http/tests/security/xssAuditor/script-tag-open-redirect-expected.txt:
  • http/tests/security/xssAuditor/script-tag-post-control-char-expected.txt:
  • http/tests/security/xssAuditor/script-tag-post-expected.txt:
  • http/tests/security/xssAuditor/script-tag-post-null-char-expected.txt:
  • http/tests/security/xssAuditor/script-tag-redirect-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode-surrogate-pair-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode2-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode3-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode4-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode5-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-actual-comma-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-callbacks-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-comma-01-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-comma-02-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-fancy-unicode-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-invalid-url-encoding-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-control-char-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-data-url-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-data-url2-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-data-url3-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-double-quote-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-entities-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-no-quote-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-null-char-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-relative-scheme-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-same-host-with-query-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-01-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-02-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-03-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment-U2028-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment2-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment3-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment4-expected.txt:
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment5-expected.txt:
  • http/tests/security/xssAuditor/svg-script-tag-expected.txt:
  • http/tests/security/xssAuditor/xss-filter-bypass-big5-expected.txt:
  • http/tests/security/xssAuditor/xss-filter-bypass-long-string-expected.txt:
  • http/tests/security/xssAuditor/xss-filter-bypass-sjis-expected.txt:
  • http/tests/security/xssAuditor/xss-protection-parsing-01-expected.txt:
  • http/tests/security/xssAuditor/xss-protection-parsing-02-expected.txt:
  • http/tests/security/xssAuditor/xss-protection-parsing-03-expected.txt:
  • http/tests/security/xssAuditor/xss-protection-parsing-04-expected.txt:
  • platform/chromium/http/tests/security/xssAuditor/javascript-link-control-char2-expected.txt:
2:11 AM Changeset in webkit [145502] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Unreviewed, rolling out r145494.
http://trac.webkit.org/changeset/145494
https://bugs.webkit.org/show_bug.cgi?id=112117

Breaks Chromium Mac (Requested by pfeldman on #webkit).

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

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateDomainSafeFunctionGetter):

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

(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):

  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::V8PerIsolateData):

  • bindings/v8/V8PerIsolateData.h:

(V8PerIsolateData):

  • bindings/v8/custom/V8LocationCustom.cpp:

(WebCore::V8Location::reloadAttrGetterCustom):
(WebCore::V8Location::replaceAttrGetterCustom):
(WebCore::V8Location::assignAttrGetterCustom):

2:00 AM Changeset in webkit [145501] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: add memory instrumentation for ImageLoader
https://bugs.webkit.org/show_bug.cgi?id=112115

Reviewed by Alexander Pavlov.

Added memory instrumentation to ImageLoader. CachedImage referenced
by the loader is reported as having retaining reference. This allows
to see in the native memory graph CachedImages that are not reachable
from MemoryCache but referenced by HTMLImageElement.

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::reportMemoryUsage):
(WebCore):

  • loader/ImageLoader.h:

(ImageLoader):

1:53 AM Changeset in webkit [145500] by Csaba Osztrogonác
  • 3 edits in trunk/Source/JavaScriptCore

REGRESSION(r145482): It broke 33 jsc tests and zillion layout tests on all platform
https://bugs.webkit.org/show_bug.cgi?id=112112

Reviewed by Oliver Hunt.

Rolling out https://trac.webkit.org/changeset/145482 to unbreak the bots.

  • runtime/JSStringJoiner.cpp:

(JSC::JSStringJoiner::build):

  • runtime/JSStringJoiner.h:

(JSStringJoiner):
(JSC::JSStringJoiner::JSStringJoiner):
(JSC::JSStringJoiner::append):

1:43 AM Changeset in webkit [145499] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Broken shortcuts in Snippets SourceFrame
https://bugs.webkit.org/show_bug.cgi?id=112038

Reviewed by Pavel Feldman.

  • inspector/front-end/SnippetJavaScriptSourceFrame.js:

(WebInspector.SnippetJavaScriptSourceFrame):
(WebInspector.SnippetJavaScriptSourceFrame.prototype._onKeyDown):

1:25 AM Changeset in webkit [145498] by vsevik@chromium.org
  • 3 edits in trunk/LayoutTests

Web Inspector: Several inspector tests are flaky beacuse of beforeonload event handler.
https://bugs.webkit.org/show_bug.cgi?id=112111

Reviewed by Alexander Pavlov.

Added removeEventListener call.
Beforeunload message was updated so that it is possible to find it's source from it.

  • inspector-protocol/page/javascriptDialogEvents-expected.txt:
  • inspector-protocol/page/javascriptDialogEvents.html:
1:07 AM Changeset in webkit [145497] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Adding failure expectations for tests introduced in r145397 and r145474.
  • platform/gtk/fast/js/global-constructors-expected.txt: Rebaselining after r145400.
12:59 AM Changeset in webkit [145496] by eustas@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: [Timeline] File selector control becomes visible on "tab" navigation.
https://bugs.webkit.org/show_bug.cgi?id=111710

Reviewed by Pavel Feldman.

Solution: Exclude file selector control from tab-navigation flow.

  • inspector/front-end/FileUtils.js: Set tab-index to control.
  • inspector/front-end/TimelinePanel.js: Remove duplicating code.
  • inspector/front-end/inspector.css:

(.status-bar-item): Make scroll height equal to offset height.

12:52 AM Changeset in webkit [145495] by eustas@chromium.org
  • 6 edits in branches/chromium/1410/Source/WebCore

Revert 142161 "Web Inspector: CPU pegged when inspecting LocalSt..."

Web Inspector: CPU pegged when inspecting LocalStorage that mutates.
https://bugs.webkit.org/show_bug.cgi?id=107937

Reviewed by Yury Semikhatsky.

The DOM storage agent will fire an event to the frontend based on the action
performed on the storage. Based on this action, the front-end will just add/update/remove
the entry in the view. This enhances the front-end responsiveness as the round trip
for fetching the storage entries has been eliminated.

Existing test: LayoutTests/inspector/storage-panel-dom-storage-update.html should verify the change

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

(WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):

  • inspector/front-end/DOMStorage.js:

(WebInspector.DOMStorageModel.prototype._domStorageItemsCleared):
(WebInspector.DOMStorageModel.prototype._domStorageItemRemoved):
(WebInspector.DOMStorageModel.prototype._domStorageItemAdded):
(WebInspector.DOMStorageModel.prototype._domStorageItemUpdated):
(WebInspector.DOMStorageDispatcher.prototype.domStorageItemsCleared):
(WebInspector.DOMStorageDispatcher.prototype.domStorageItemRemoved):
(WebInspector.DOMStorageDispatcher.prototype.domStorageItemAdded):
(WebInspector.DOMStorageDispatcher.prototype.domStorageItemUpdated):

  • inspector/front-end/DOMStorageItemsView.js:

(WebInspector.DOMStorageItemsView):
(WebInspector.DOMStorageItemsView.prototype.wasShown):
(WebInspector.DOMStorageItemsView.prototype._domStorageItemsCleared):
(WebInspector.DOMStorageItemsView.prototype._domStorageItemRemoved):
(WebInspector.DOMStorageItemsView.prototype._domStorageItemAdded):
(WebInspector.DOMStorageItemsView.prototype._domStorageItemUpdated):
(WebInspector.DOMStorageItemsView.prototype._update):
(WebInspector.DOMStorageItemsView.prototype._showDOMStorageEntries):
(WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
(WebInspector.DOMStorageItemsView.prototype._editingCallback):
(WebInspector.DOMStorageItemsView.prototype._deleteCallback):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.ResourcesPanel):
(WebInspector.ResourcesPanel.prototype._showDOMStorage.get if):
(WebInspector.ResourcesPanel.prototype._showDOMStorage):

TBR=vivek.vg@samsung.com
Review URL: https://codereview.chromium.org/12700007

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

[V8] Get rid of function-level static FunctionTemplates in generated bindings code
https://bugs.webkit.org/show_bug.cgi?id=111971

Patch by Marja Hölttä <marja@chromium.org> on 2013-03-12
Reviewed by Kentaro Hara.

In the future we'll create and store function templates for main world
and non-main worlds separately (see bug 111724), having function
templates as static variables inside functions will break the
functionality.

No new tests (updated the bindings test expectations).

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateDomainSafeFunctionGetter):

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

(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):

  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::V8PerIsolateData):
(WebCore::V8PerIsolateData::privateTemplate):
(WebCore):

  • bindings/v8/V8PerIsolateData.h:

(V8PerIsolateData):

  • bindings/v8/custom/V8LocationCustom.cpp:

(WebCore::V8Location::reloadAttrGetterCustom):
(WebCore::V8Location::replaceAttrGetterCustom):
(WebCore::V8Location::assignAttrGetterCustom):

12:46 AM Changeset in webkit [145493] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Need to notify ScrollingCoordinator when frame scrollbars are destroyed
https://bugs.webkit.org/show_bug.cgi?id=112104

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-03-12
Reviewed by James Robinson.

Need to notify ScrollingCoordinatorChromium whenever m_layerForHorizontalScrollbar /
m_layerForVerticalScrollbar changes, for correct lifetime management.

No new tests. Difficult to test lifetime management internal to ScrollingCoordinatorChromium.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::destroyRootLayer):

12:34 AM Changeset in webkit [145492] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed test flakiness fix.

  • inspector/debugger/event-listener-breakpoints.html:
12:02 AM Changeset in webkit [145491] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG prediction propagation phase should not rerun forward propagation if double voting has already converged
https://bugs.webkit.org/show_bug.cgi?id=111920

Reviewed by Oliver Hunt.

I don't know why we weren't exiting early after double voting if !m_changed.

This change also removes backwards propagation from the voting fixpoint, since at that
point short-circuiting loops is probably not particularly profitable. Profiling shows
that this reduces the time spent in prediction propagation even further.

This change appears to be a 1% SunSpider speed-up.

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::run):

Mar 11, 2013:

11:52 PM Changeset in webkit [145490] by vsevik@chromium.org
  • 3 edits in trunk/LayoutTests

Unreviewed test flakiness fix.

  • inspector/debugger/xhr-breakpoints.html:
  • platform/chromium/TestExpectations:
11:43 PM Changeset in webkit [145489] by fpizlo@apple.com
  • 16 edits
    8 adds in trunk

DFG overflow check elimination is too smart for its own good
https://bugs.webkit.org/show_bug.cgi?id=111832

Source/JavaScriptCore:

Reviewed by Oliver Hunt and Gavin Barraclough.

Rolling this back in after fixing accidental misuse of JSValue. The code was doing value < someInt
rather than value.asInt32() < someInt. This "worked" when isWithinPowerOfTwo wasn't templatized.
It worked by always being false and always disabling the relvant optimization.

This improves overflow check elimination in three ways:

1) It reduces the amount of time the compiler will spend doing it.

2) It fixes bugs where overflow check elimination was overzealous. Precisely, for a binary operation

over @a and @b where both @a and @b will type check that their inputs (@a->children, @b->children)
are int32's and then perform a possibly-overflowing operation, we must be careful not to assume
that @a's non-int32 parts don't matter if at the point that @a runs we have as yet not proved that
@b->children are int32's and that hence @b might produce a large enough result that doubles would
start chopping low bits. The specific implication of this is that for a binary operation to not
propagate that it cares about non-int32 parts (NodeUsedAsNumber), we must prove that at least one
of the inputs is guaranteed to produce a result within 232 and that there won't be a tower of such
operations large enough to ultimately produce a double greater than 2
52 (roughly). We achieve the
latter by disabling this optimization for very large basic blocks. It's noteworthy that blocks that
large won't even make it into the DFG currently.


3) It makes the overflow check elimination more precise for cases where the inputs to an Add or Sub

are the outputs of a bit-op. For example in (@a + (@b | 0)) | 0, we don't need to propagate
NodeUsedAsNumber to either @a or @b.


This is neutral on V8v7 and a slight speed-up on compile time benchmarks.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::refine):

  • dfg/DFGBackwardsPropagationPhase.cpp: Added.

(DFG):
(BackwardsPropagationPhase):
(JSC::DFG::BackwardsPropagationPhase::BackwardsPropagationPhase):
(JSC::DFG::BackwardsPropagationPhase::run):
(JSC::DFG::BackwardsPropagationPhase::isNotNegZero):
(JSC::DFG::BackwardsPropagationPhase::isNotZero):
(JSC::DFG::BackwardsPropagationPhase::isWithinPowerOfTwoForConstant):
(JSC::DFG::BackwardsPropagationPhase::isWithinPowerOfTwoNonRecursive):
(JSC::DFG::BackwardsPropagationPhase::isWithinPowerOfTwo):
(JSC::DFG::BackwardsPropagationPhase::mergeDefaultFlags):
(JSC::DFG::BackwardsPropagationPhase::propagate):
(JSC::DFG::performBackwardsPropagation):

  • dfg/DFGBackwardsPropagationPhase.h: Added.

(DFG):

  • dfg/DFGCPSRethreadingPhase.cpp:

(JSC::DFG::CPSRethreadingPhase::run):
(JSC::DFG::CPSRethreadingPhase::clearIsLoadedFrom):
(CPSRethreadingPhase):
(JSC::DFG::CPSRethreadingPhase::canonicalizeGetLocalFor):
(JSC::DFG::CPSRethreadingPhase::canonicalizeFlushOrPhantomLocalFor):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGNodeFlags.cpp:

(JSC::DFG::dumpNodeFlags):
(DFG):

  • dfg/DFGNodeFlags.h:

(DFG):

  • dfg/DFGPredictionPropagationPhase.cpp:

(PredictionPropagationPhase):
(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGUnificationPhase.cpp:

(JSC::DFG::UnificationPhase::run):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::VariableAccessData):
(JSC::DFG::VariableAccessData::mergeIsLoadedFrom):
(VariableAccessData):
(JSC::DFG::VariableAccessData::setIsLoadedFrom):
(JSC::DFG::VariableAccessData::isLoadedFrom):

LayoutTests:

Reviewed by Oliver Hunt and Gavin Barraclough.

  • fast/js/dfg-arith-add-overflow-check-elimination-predicted-but-not-proven-int-expected.txt: Added.
  • fast/js/dfg-arith-add-overflow-check-elimination-predicted-but-not-proven-int.html: Added.
  • fast/js/dfg-arith-add-overflow-check-elimination-tower-of-large-numbers-expected.txt: Added.
  • fast/js/dfg-arith-add-overflow-check-elimination-tower-of-large-numbers.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-arith-add-overflow-check-elimination-predicted-but-not-proven-int.js: Added.

(foo):
(bar):

  • fast/js/script-tests/dfg-arith-add-overflow-check-elimination-tower-of-large-numbers.js: Added.

(foo):
(bar):

11:26 PM Changeset in webkit [145488] by pfeldman@chromium.org
  • 3 edits
    2 deletes in trunk/LayoutTests

Not reviewed: Chromium expectations updated.

  • platform/chromium-linux/media/track/track-cue-rendering-horizontal-expected.txt: Removed.
  • platform/chromium-linux/media/track/track-cue-rendering-vertical-expected.txt: Removed.
  • platform/chromium-win/media/track/track-cue-rendering-horizontal-expected.txt:
  • platform/chromium-win/media/track/track-cue-rendering-vertical-expected.txt:
11:20 PM Changeset in webkit [145487] by pfeldman@chromium.org
  • 3 edits in trunk/LayoutTests

Not reviewed: Chromium expectations updated.

  • platform/chromium-mac/fast/borders/border-radius-with-box-shadow-expected.png:
  • platform/chromium-win/fast/borders/border-radius-with-box-shadow-expected.png:
11:20 PM Changeset in webkit [145486] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

We'll get there eventually.

  • platform/graphics/ca/win/PlatformCAFiltersWin.cpp:
11:12 PM Changeset in webkit [145485] by beidson@apple.com
  • 7 edits in trunk/Source/WebKit2

Loads are never canceled in the NetworkProcess
<rdar://problem/12890500> and https://bugs.webkit.org/show_bug.cgi?id=112103

Reviewed by Alexey Proskuryakov.

If a connection to a WebProcess is closed (gracefully or by crashing) then:

  • All scheduled loads for that connection should be forgotten.
  • All in-progress loads for that connection should be aborted asap.
  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::requestsToCleanupMutex): The "request to stop" mechanism is now called "request to cleanup"
(WebKit::requestsToCleanup):
(WebKit::NetworkResourceLoader::scheduleCleanupOnMainThread):
(WebKit::NetworkResourceLoader::performCleanups):
(WebKit::NetworkResourceLoader::cleanup):
(WebKit::NetworkResourceLoader::didFinishLoading):
(WebKit::NetworkResourceLoader::didFail):

(WebKit::NetworkResourceLoader::connectionToWebProcessDidClose): If there is a resource handle, let

the loading thread notice the connection is invalid. Otherwise request to cleanup the loader.

(WebKit::NetworkResourceLoader::sendAbortingOnFailure):
(WebKit::NetworkResourceLoader::sendSyncAbortingOnFailure):
(WebKit::NetworkResourceLoader::abortInProgressLoad): Cancel the resource handle and schedule main thread cleanup.
(WebKit::NetworkResourceLoader::didReceiveResponse): Use sendAbortingOnFailure instead of send.
(WebKit::NetworkResourceLoader::didReceiveData): Ditto.

(WebKit::NetworkResourceLoader::willSendRequest): Call abortInProgressLoad if the sync message failed.
(WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpace): Ditto.

  • NetworkProcess/NetworkResourceLoader.h:

Make connectionToWebProcessDidClose() pure virtual, moving its implementation to the subclasses:

  • NetworkProcess/SchedulableLoader.cpp:
  • NetworkProcess/SchedulableLoader.h:
  • NetworkProcess/SyncNetworkResourceLoader.cpp:

(WebKit::SyncNetworkResourceLoader::start): Call cleanup().
(WebKit::SyncNetworkResourceLoader::connectionToWebProcessDidClose): Call cleanup().
(WebKit::SyncNetworkResourceLoader::cleanup): Factor out the sync loader cleanup code.

  • NetworkProcess/SyncNetworkResourceLoader.h:
11:10 PM Changeset in webkit [145484] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fumbled adding new files to the vcproj. Fixing.

  • WebCore.vcproj/WebCore.vcproj:
10:51 PM Changeset in webkit [145483] by Simon Fraser
  • 3 edits
    1 copy in trunk/Source/WebCore

Fix the Windows build by providing implementations of PlatformCAFilters::setFiltersOnLayer(),
PlatformCAFilters::numAnimatedFilterProperties() and PlatformCAFilters::animatedFilterPropertyName(),
adding PlatformCAFiltersWin.cpp to the vcproj.

  • WebCore.vcproj/WebCore.vcproj:
  • platform/graphics/ca/PlatformCAFilters.h:

(PlatformCAFilters):

  • platform/graphics/ca/win/PlatformCAFiltersWin.cpp: Copied from Source/WebCore/platform/graphics/ca/PlatformCAFilters.h.

(PlatformCAFilters::setFiltersOnLayer):
(PlatformCAFilters::numAnimatedFilterProperties):
(PlatformCAFilters::animatedFilterPropertyName):

10:51 PM Changeset in webkit [145482] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Harden JSStringJoiner
https://bugs.webkit.org/show_bug.cgi?id=112093

Reviewed by Filip Pizlo.

Harden JSStringJoiner, make it use our CheckedArithmetic
class to simplify everything.

  • runtime/JSStringJoiner.cpp:

(JSC::JSStringJoiner::build):

  • runtime/JSStringJoiner.h:

(JSStringJoiner):
(JSC::JSStringJoiner::JSStringJoiner):
(JSC::JSStringJoiner::append):

10:45 PM Changeset in webkit [145481] by jochen@chromium.org
  • 5 edits
    2 adds in trunk

Don't create multiple user gesture indicators when forwarding events to sub frames
https://bugs.webkit.org/show_bug.cgi?id=111923

Reviewed by Adam Barth.

Ports that implement consumable user gestures depend on a single user
gesture indicator being created in response to a single user gesture.

Source/WebCore:

Test: platform/chromium/fast/events/popup-allowed-from-gesture-only-once-iframes.html

  • dom/UserGestureIndicator.cpp:

(WebCore::isDefinite):
(WebCore::UserGestureIndicator::UserGestureIndicator):
(WebCore::UserGestureIndicator::processingUserGesture):

  • dom/UserGestureIndicator.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleMouseDoubleClickEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::EventHandler::keyEvent):
(WebCore::EventHandler::handleTouchEvent):

LayoutTests:

  • platform/chromium/fast/events/popup-allowed-from-gesture-only-once-iframes-expected.txt: Added.
  • platform/chromium/fast/events/popup-allowed-from-gesture-only-once-iframes.html: Added.
10:37 PM Changeset in webkit [145480] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix Windows build.

  • platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
10:23 PM Changeset in webkit [145479] by pfeldman@chromium.org
  • 2 edits in trunk/LayoutTests

Not reviewed: Chromium expectations updated.

  • platform/chromium/TestExpectations:
10:10 PM Changeset in webkit [145478] by pfeldman@chromium.org
  • 1 edit
    2 moves
    10 deletes in trunk/LayoutTests

Not reviewed: Chromium rebaselines.

  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Removed.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Removed.
  • platform/chromium-mac-lion/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Removed.
  • platform/chromium-mac-lion/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Removed.
  • platform/chromium-mac/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Removed.
  • platform/chromium-mac/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Removed.
  • platform/chromium-win/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Removed.
  • platform/chromium-win/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Removed.
  • platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Renamed from LayoutTests/platform/chromium-linux/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt.
  • platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Renamed from LayoutTests/platform/chromium-linux/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt.
10:10 PM Changeset in webkit [145477] by timothy_horton@apple.com
  • 16 edits in trunk/Source/WebKit2

PDFPlugin: Return PDFKit's data instead of the original resource data for save/etc.
https://bugs.webkit.org/show_bug.cgi?id=111956
<rdar://problem/13352282>

Reviewed by Alexey Proskuryakov.

If we return the original resource data, we lose changes made to annotations.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::pdfDocumentDidLoad): Adopt the renamed rawData().
(WebKit::PDFPlugin::saveToPDF): Use liveData so that "Save to PDF" persists changes to annotations.
(WebKit::PDFPlugin::openWithNativeApplication): Use liveData so that "Open With [native application]" persists changes to annotations.

  • WebProcess/Plugins/PDF/PDFPluginAnnotation.h:
  • WebProcess/Plugins/PDF/PDFPluginAnnotation.mm:

(WebKit::PDFPluginAnnotation::commit): Added, inform PDFPlugin that we're mutating the document.

  • WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:

(WebKit::PDFPluginChoiceAnnotation::commit): Let PDFPluginAnnotation do what it needs to inform PDFPlugin that we're going to mutate the document.

  • WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:

(WebKit::PDFPluginTextAnnotation::commit): Let PDFPluginAnnotation do what it needs to inform PDFPlugin that we're going to mutate the document.

  • WebProcess/Plugins/PDF/SimplePDFPlugin.h:

(WebKit::SimplePDFPlugin::didMutatePDFDocument): Added.
(WebKit::SimplePDFPlugin::liveData): Added.
(WebKit::SimplePDFPlugin::rawData): Renamed from data(). Return NSData for consistency.
(WebKit::SimplePDFPlugin::pdfDocumentWasMutated): Added.

  • WebProcess/Plugins/PDF/SimplePDFPlugin.mm:

(WebKit::SimplePDFPlugin::liveData): Return PDFKit's data if the user has mutated the
document, otherwise the raw data. This way, PDFs that PDFKit can't process will still
be downloadable as long as the user doesn't interact with annotations.
(WebKit::SimplePDFPlugin::liveResourceData): Return a SharedData wrapping the PDFDocument's data.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
  • WebProcess/Plugins/Netscape/NetscapePlugin.h:
  • WebProcess/Plugins/PDF/SimplePDFPlugin.h:
  • WebProcess/Plugins/Plugin.h:
  • WebProcess/Plugins/PluginProxy.h:
  • WebProcess/Plugins/PluginView.cpp:
  • WebProcess/Plugins/PluginView.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::getMainResourceDataOfFrame):
Use a SharedData instead of raw data for getResourceData, and rename it liveResourceData().

10:00 PM Changeset in webkit [145476] by pfeldman@chromium.org
  • 4 edits in trunk/LayoutTests

Not reviewed: Chromium rebaselines.

  • platform/chromium/compositing/overflow/composited-scrolling-paint-phases-expected.txt:
  • platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/composited-scrolling-paint-phases-expected.txt:
  • platform/chromium/platform/chromium/virtual/softwarecompositing/overflow/composited-scrolling-paint-phases-expected.txt:
9:58 PM Changeset in webkit [145475] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after http://trac.webkit.org/changeset/145472.

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

(PlatformCAFilters::colorMatrixValueForFilter):

9:55 PM Changeset in webkit [145474] by tasak@google.com
  • 4 edits
    2 adds in trunk

[CSS] shadow from radius has wrong render in webkit
https://bugs.webkit.org/show_bug.cgi?id=99928

Reviewed by Simon Fraser.

Source/WebCore:

No rounded cornder should be expanded in the mixed case, i.e. some
corners are rounded, but others are not rounded.
Need to look at each corner independently,
i.e. top-left, top-right, bottom-left and bottom-right, and
to expand corners whose width and height are larger than 0.

Test: fast/box-shadow/box-shadow-with-zero-radius.html

  • platform/graphics/RoundedRect.cpp:

(WebCore::RoundedRect::Radii::expand):

LayoutTests:

  • fast/box-shadow/box-shadow-with-zero-radius-expected.html: Added.
  • fast/box-shadow/box-shadow-with-zero-radius.html: Added.
  • platform/chromium-linux/fast/borders/border-radius-with-box-shadow-expected.png:

Rebaselined. Comparing the old one with the new one, both ones look almost
the same.

9:22 PM Changeset in webkit [145473] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[chromium] Fix flaky timeouts in platform/chromium/events/fast/events/intercept-postmessage.html
https://bugs.webkit.org/show_bug.cgi?id=112089

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

This test had a few problems. The most serious is it raced a window.postMessage() from an inline <script> in the
<head> with the HTML parser processing the rest of the testcase. If the HTML parser yielded before parsing out
the <pre id="console">, function recvMsg1 would generate an error accessing the undefined pre. The test also
set up a setTimeout with a timeout of 50ms to run after a postMessage handler. There's no need to wait after
yielding for a timeout, these events are processed in order.

  • platform/chromium/fast/events/intercept-postmessage.html:
9:02 PM Changeset in webkit [145472] by Simon Fraser
  • 8 edits
    2 adds in trunk/Source/WebCore

[CA] Animations of CSS filters don't work correctly
https://bugs.webkit.org/show_bug.cgi?id=111905

Reviewed by Dean Jackson.

Fix various issues with transitions of composited filters on Mac,
most of which stemmed from the conversion to use CAFilter.

Put the Mac CA filter-related code into a new file, PlatformCAFilters,
to group code that creates filter properties into a single place.

Animations of CIFilters using multiple values never worked correctly,
because we would clobber all but the last property for each filter,
so fix that.

Changes in the moved filter code:

  • Made use of sepiaFullConstants in the CIFilter and CAFilter code.
  • For CI, return CIVectors instead of NSArrays of NSNumbers.
  • Fudge the inputColor for the CI grayscale filter to better match software filters.
  • fix some cases where the behavior was wrong in the isDefault() case.
  • WebCore.xcodeproj/project.pbxproj: Add PlatformCAFilters.h, PlatformCAFiltersMac.mm.
  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::animationNameForTransition): This function was creating a string
containing non-ASCII characters.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::animationIdentifier): To handle CIFilter animations, we need to tack another
index onto the animation identifier, since some animations require animating multiple
properties of the same CIFilter. Add "subIndex" for this.
(WebCore::GraphicsLayerCA::moveOrCopyAnimations): Ditto.
(WebCore::GraphicsLayerCA::updateAnimations): Ditto.
(WebCore::GraphicsLayerCA::setAnimationOnLayer): Ditto.
(WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): Ditto.
(WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): Ditto.
(WebCore::GraphicsLayerCA::createAnimationFromKeyframes): Ditto.
(WebCore::GraphicsLayerCA::appendToUncommittedAnimations): Ditto.

  • platform/graphics/ca/GraphicsLayerCA.h: Ditto.

(WebCore::GraphicsLayerCA::LayerPropertyAnimation::LayerPropertyAnimation):
(LayerPropertyAnimation):

  • platform/graphics/ca/PlatformCAAnimation.h:

(PlatformCAAnimation): Functions moved.

  • platform/graphics/ca/PlatformCAFilters.h: Added.

(PlatformCAFilters):

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

(PlatformCAAnimation::setFromValue):
(PlatformCAAnimation::setToValue):
(PlatformCAAnimation::setValues):

  • platform/graphics/ca/mac/PlatformCAFiltersMac.mm: Added.

(PlatformCAFilters::filterValueForOperation):
(PlatformCAFilters::colorMatrixValueForFilter):
(PlatformCAFilters::numAnimatedFilterProperties):
(PlatformCAFilters::animatedFilterPropertyName):

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

(PlatformCALayer::PlatformCALayer):
(PlatformCALayer::addAnimationForKey):
(PlatformCALayer::setFilters):
(PlatformCALayer::filtersCanBeComposited):

8:00 PM Changeset in webkit [145471] by commit-queue@webkit.org
  • 29 edits in trunk/Source

Unreviewed, rolling out r145462.
http://trac.webkit.org/changeset/145462
https://bugs.webkit.org/show_bug.cgi?id=112097

Compilation failure in PluginView.cpp (Requested by jamesr_ on
#webkit).

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

Source/WebCore:

  • accessibility/AccessibilityMenuList.cpp:

(WebCore::AccessibilityMenuList::canSetFocusAttribute):

  • bindings/objc/DOM.mm:

(kitClass):

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • editing/ApplyStyleCommand.cpp:

(WebCore::isLegacyAppleStyleSpan):
(WebCore::isEmptyFontTag):
(WebCore::ApplyStyleCommand::applyBlockStyle):

  • editing/FormatBlockCommand.cpp:

(WebCore::isElementForFormatBlock):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::isMailPasteAsQuotationNode):
(WebCore::haveSameTagName):
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
(WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):

  • history/CachedPage.cpp:

(WebCore::CachedPage::restore):

  • html/ColorInputType.cpp:

(WebCore::ColorInputType::suggestions):

  • html/HTMLTableRowsCollection.cpp:

(WebCore::isInHead):
(WebCore::isInBody):
(WebCore::isInFoot):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::innerPatchNode):

  • page/PageSerializer.cpp:

(WebCore::SerializerMarkupAccumulator::appendCustomAttributes):

  • plugins/PluginView.cpp:

(WebCore::PluginView::getValue):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::paintContents):
(WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::name):

  • rendering/RenderMedia.cpp:

(WebCore::RenderMedia::mediaElement):

  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::autosaveName):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::textFormControlElement):
(WebCore::updateUserModifyProperty):

  • rendering/mathml/RenderMathMLFenced.cpp:

(WebCore::RenderMathMLFenced::updateFromElement):

  • rendering/mathml/RenderMathMLFraction.cpp:

(WebCore::RenderMathMLFraction::updateFromElement):

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::XMLDocumentParser::XMLDocumentParser):
(WebCore::XMLDocumentParser::endElementNs):

Source/WebKit/chromium:

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::focusedNodeChanged):

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):

  • src/DOMUtilitiesPrivate.cpp:

(WebCore::toHTMLElement):

  • src/WebSearchableFormData.cpp:

(HTMLNames::IsSelectInDefaultState):

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _enterFullscreenForNode:WebCore::]):

7:52 PM Changeset in webkit [145470] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1410

Merge 144713
BUG=174846
Review URL: https://codereview.chromium.org/12518025

7:48 PM Changeset in webkit [145469] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1410

Merge 144400
BUG=173654

7:38 PM Changeset in webkit [145468] by akling@apple.com
  • 2 edits in trunk/Tools

[Mac][WK1] Add support for alert() in MiniBrowser.
<http://webkit.org/b/112090>

Reviewed by Anders Carlsson.

  • MiniBrowser/mac/WK1BrowserWindowController.m:

(-[WK1BrowserWindowController webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]):

7:31 PM Changeset in webkit [145467] by cevans@google.com
  • 2 edits in branches/chromium/1410/Source/WebCore/html/parser

Merge 144128
BUG=178003
Review URL: https://codereview.chromium.org/12518024

7:24 PM Changeset in webkit [145466] by ap@apple.com
  • 9 edits
    1 add in trunk/Source/WebCore

Move SharedWorkerRepository functions out of DefaultSharedWorkerRepository
https://bugs.webkit.org/show_bug.cgi?id=100418

Reviewed by Sam Weinig.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Added SharedWorkerRepository.cpp.

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:

Chromium uses WebKit/chromium/src/SharedWorkerRepository.cpp instead of
WebCore/workers/DefaultSharedWorkerRepository.cpp. Not sure why it's added and
then excluded, but did the same with the new SharedWorkerRepository.cpp, which
just contains some code moved from that file.

  • workers/DefaultSharedWorkerRepository.cpp:

(WebCore::SharedWorkerScriptLoader::load): Removed a PLATFORM(CHROMIUM) clause,
chromium doesn't compile this file.
(WebCore::DefaultSharedWorkerRepository::connectToWorker): Added a FIXME about
seemingly wrong code.

  • workers/SharedWorkerRepository.cpp: Added.

(WebCore::SharedWorkerRepository::isAvailable):
(WebCore::SharedWorkerRepository::connect):
(WebCore::SharedWorkerRepository::documentDetached):
(WebCore::SharedWorkerRepository::hasSharedWorkers):
Moved from DefaultSharedWorkerRepository.cpp, because this is part of SharedWorkerRepository.

7:18 PM Changeset in webkit [145465] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1410

Merge 144790
BUG=179287
Review URL: https://codereview.chromium.org/12518023

7:09 PM Changeset in webkit [145464] by abarth@webkit.org
  • 10 edits
    2 adds in trunk

Make BackgroundHTMLParser work with doc.writes that enter or leave foreign content
https://bugs.webkit.org/show_bug.cgi?id=109764

Reviewed by Eric Seidel.

Source/WebCore:

Previously, we were not reseting the state of the
HTMLTreeBuilderSimulator when we failed speculative parsing. This had a
number of observable consequences, including not parsing CDATA sections
correctly when document.write caused us to enter foreign content.

Test: fast/parser/document-write-svg-cdata.html

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::BackgroundHTMLParser):
(WebCore::BackgroundHTMLParser::resumeFrom):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):

  • html/parser/BackgroundHTMLParser.h:

(Checkpoint):
(BackgroundHTMLParser):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::validateSpeculations):
(WebCore::HTMLDocumentParser::didFailSpeculation):

  • html/parser/HTMLDocumentParser.h:

(ParsedChunk):

  • html/parser/HTMLElementStack.h:

(WebCore::HTMLElementStack::ElementRecord::namespaceURI):

  • html/parser/HTMLTreeBuilder.h:

(WebCore::HTMLTreeBuilder::options):
(WebCore::HTMLTreeBuilder::openElements):
(HTMLTreeBuilder):

  • html/parser/HTMLTreeBuilderSimulator.cpp:

(WebCore::HTMLTreeBuilderSimulator::stateFor):
(WebCore):

  • html/parser/HTMLTreeBuilderSimulator.h:

(WebCore):
(WebCore::HTMLTreeBuilderSimulator::state):
(WebCore::HTMLTreeBuilderSimulator::setState):
(HTMLTreeBuilderSimulator):

LayoutTests:

  • fast/parser/document-write-svg-cdata-expected.txt: Added.
  • fast/parser/document-write-svg-cdata.html: Added.
7:04 PM Changeset in webkit [145463] by cevans@google.com
  • 2 edits
    2 copies in branches/chromium/1410

Merge 144825
BUG=177932

6:59 PM Changeset in webkit [145462] by inferno@chromium.org
  • 29 edits in trunk/Source

Replace static_casts with to* functions.
https://bugs.webkit.org/show_bug.cgi?id=112072

Reviewed by Philip Rogers.

to* functions are preferred over static_cast calls since they
help to catch bad casts easily on the testing infrastructure.

Source/WebCore:

  • accessibility/AccessibilityMenuList.cpp:

(WebCore::AccessibilityMenuList::canSetFocusAttribute):

  • bindings/objc/DOM.mm:

(kitClass):

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • editing/ApplyStyleCommand.cpp:

(WebCore::isLegacyAppleStyleSpan):
(WebCore::isEmptyFontTag):
(WebCore::ApplyStyleCommand::applyBlockStyle):

  • editing/FormatBlockCommand.cpp:

(WebCore::isElementForFormatBlock):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::isMailPasteAsQuotationNode):
(WebCore::haveSameTagName):
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
(WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):

  • history/CachedPage.cpp:

(WebCore::CachedPage::restore):

  • html/ColorInputType.cpp:

(WebCore::ColorInputType::suggestions):

  • html/HTMLTableRowsCollection.cpp:

(WebCore::isInHead):
(WebCore::isInBody):
(WebCore::isInFoot):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::innerPatchNode):

  • page/PageSerializer.cpp:

(WebCore::SerializerMarkupAccumulator::appendCustomAttributes):

  • plugins/PluginView.cpp:

(WebCore::PluginView::getValue):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::paintContents):
(WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::name):

  • rendering/RenderMedia.cpp:

(WebCore::RenderMedia::mediaElement):

  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::autosaveName):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::textFormControlElement):
(WebCore::updateUserModifyProperty):

  • rendering/mathml/RenderMathMLFenced.cpp:

(WebCore::RenderMathMLFenced::updateFromElement):

  • rendering/mathml/RenderMathMLFraction.cpp:

(WebCore::RenderMathMLFraction::updateFromElement):

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::XMLDocumentParser::XMLDocumentParser):
(WebCore::XMLDocumentParser::endElementNs):

Source/WebKit/chromium:

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::focusedNodeChanged):

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):

  • src/DOMUtilitiesPrivate.cpp:

(WebCore::toHTMLElement):

  • src/WebSearchableFormData.cpp:

(HTMLNames::IsSelectInDefaultState):

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _enterFullscreenForNode:WebCore::]):

6:56 PM Changeset in webkit [145461] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r187216. Requested by
"James Robinson" <jamesr@chromium.org> via sheriffbot.

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

  • DEPS:
6:55 PM Changeset in webkit [145460] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1410

Merge 144338
BUG=178797
Review URL: https://codereview.chromium.org/12638027

6:50 PM Changeset in webkit [145459] by pdr@google.com
  • 10 edits in trunk/Source/WebCore

Replace static_casts for SVGSVGElement and SVGStopElement
https://bugs.webkit.org/show_bug.cgi?id=111651

Reviewed by Stephen Chenney.

toSVGSVGElement and toSVGStopElement are preferred over static_casts because bad casts
can be caught on our testing infrastructure. This patches replaces all static_casts for
SVGSVGElement and SVGStopElement with toSVGSVGElement and toSVGStopElement, respectively.

Additionaly, this patch renames SVGElement::isSVG to SVGElement::isSVGSVGElement to
remove ambiguity for callers who may confuse this with isSVGElement.

No new tests as this is covered with existing tests.

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
(WebCore::RenderSVGRoot::layout):
(WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):
(WebCore::RenderSVGRoot::hasRelativeDimensions):
(WebCore::RenderSVGRoot::hasRelativeIntrinsicLogicalWidth):
(WebCore::RenderSVGRoot::hasRelativeLogicalHeight):

  • rendering/svg/RenderSVGViewportContainer.cpp:

(WebCore::RenderSVGViewportContainer::determineIfLayoutSizeChanged):
(WebCore::RenderSVGViewportContainer::calcViewport):
(WebCore::RenderSVGViewportContainer::viewportTransform):

  • svg/SVGDocument.cpp:

(WebCore::SVGDocument::rootElement):
(WebCore::SVGDocument::childShouldCreateRenderer):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::ownerSVGElement):

  • svg/SVGElement.h:

(WebCore::SVGElement::isSVGSVGElement):

  • svg/SVGGradientElement.cpp:

(WebCore::SVGGradientElement::buildStops):

  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport):

  • svg/SVGSVGElement.h:

(WebCore):
(WebCore::toSVGSVGElement):

  • svg/SVGStopElement.h:

(WebCore::toSVGStopElement):
(WebCore):

6:42 PM Changeset in webkit [145458] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

[wk2] WebProcess and WebContentService don't respect system localization
https://bugs.webkit.org/show_bug.cgi?id=112091
<rdar://problem/13233590>

Reviewed by Dan Bernstein.

Allow CFBundle to use localizations that don't exist in the main bundle,
so that, for example, injected bundles can load and use strings from localized frameworks.

  • WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:
6:39 PM Changeset in webkit [145457] by tony@chromium.org
  • 3 edits in trunk/Source/WebCore

Small code cleanup in RenderFlexibleBox
https://bugs.webkit.org/show_bug.cgi?id=112076

Reviewed by Ojan Vafai.

No new tests, this is a refactor and existing tests in css3/flexbox should pass.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock): Remove unused param from repositionLogicalHeightDependentFlexItems.
(WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems): Remove unused param from repositionLogicalHeightDependentFlexItems.
The clientLogicalBottom can't have changed in this time (the only thing we've done is align children).
(WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes): Just call layout() if we marked the flexitem as needing layout.
(WebCore::RenderFlexibleBox::applyStretchAlignmentToChild): Just call layout() if we marked the flexitem as needing layout.

  • rendering/RenderFlexibleBox.h:

(RenderFlexibleBox): Remove unused param from repositionLogicalHeightDependentFlexItems.

6:25 PM Changeset in webkit [145456] by cevans@google.com
  • 2 edits in branches/chromium/1410/Source/WebCore/Modules/webaudio

Merge 144417
BUG=172342
Review URL: https://codereview.chromium.org/12543030

6:19 PM Changeset in webkit [145455] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1410

Merge 143859
BUG=177933
Review URL: https://codereview.chromium.org/12637021

6:17 PM Changeset in webkit [145454] by cevans@google.com
  • 1 edit in branches/chromium/1410/Source/WebCore/html/canvas/WebGLRenderingContext.cpp

Merge 144241
BUG=177873
Review URL: https://codereview.chromium.org/12667022

6:15 PM Changeset in webkit [145453] by jochen@chromium.org
  • 33 edits in trunk/Source

Rename DefinitelyProcessingUserGesture to DefinitelyProcessingNewUserGesture
https://bugs.webkit.org/show_bug.cgi?id=111959

Reviewed by Alexey Proskuryakov.

Source/WebCore:

The rationale is that the UserGestureIndicator will increase the number
of consumable user gestures when it's invoked with what is now
DefinitelyProcessingNewUserGesture.

In a follow-up change I will reintroduce DefinitelyProcessingUserGesture
which will only increase the consumable user gesture count if we are
not already processing a user gesture.

No new tests, no change in functionality.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::press):

  • bindings/ScriptControllerBase.cpp:

(WebCore::ScriptController::executeScript):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::executeScriptInWorld):

  • bindings/v8/NPV8Object.cpp:

(_NPN_EvaluateHelper):

  • dom/UserGestureIndicator.cpp:

(WebCore::isDefinite):
(WebCore::UserGestureIndicator::UserGestureIndicator):
(WebCore::UserGestureIndicator::processingUserGesture):

  • dom/UserGestureIndicator.h:
  • inspector/InspectorFrontendClientLocal.cpp:

(WebCore::InspectorFrontendClientLocal::openInNewTab):

  • inspector/InspectorFrontendHost.cpp:

(WebCore::FrontendMenuProvider::contextMenuItemSelected):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::navigate):

  • loader/NavigationScheduler.cpp:

(WebCore::ScheduledURLNavigation::fire):
(WebCore::ScheduledURLNavigation::didStartTimer):
(WebCore::ScheduledRedirect::fire):
(WebCore::ScheduledRefresh::fire):
(WebCore::ScheduledHistoryNavigation::fire):
(WebCore::ScheduledFormSubmission::fire):
(WebCore::ScheduledFormSubmission::didStartTimer):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleMouseDoubleClickEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::EventHandler::keyEvent):
(WebCore::EventHandler::handleTouchEvent):

  • platform/chromium/PopupContainer.cpp:

(WebCore::PopupContainer::handleMouseDownEvent):
(WebCore::PopupContainer::handleMouseMoveEvent):
(WebCore::PopupContainer::handleMouseReleaseEvent):
(WebCore::PopupContainer::handleWheelEvent):
(WebCore::PopupContainer::handleKeyEvent):

Source/WebKit/blackberry:

  • WebKitSupport/NotificationManager.cpp:

(BlackBerry::WebKit::NotificationManager::notificationClicked):

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::executeScriptAndReturnValue):

  • src/WebNotification.cpp:

(WebKit::WebNotification::dispatchClickEvent):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::handleEvent):
(WebKit::WebPluginContainerImpl::loadFrameRequest):

  • src/WebScopedUserGesture.cpp:

(WebKit::WebScopedUserGesture::initialize):

  • tests/WebUserGestureTokenTest.cpp:

(WebCore::TEST):

Source/WebKit/mac:

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::evaluate):

  • Plugins/WebNetscapePluginView.mm:

(-[WebNetscapePluginView sendEvent:isDrawRect:]):

Source/WebKit/qt:

  • WebCoreSupport/NotificationPresenterClientQt.cpp:

(WebCore::NotificationPresenterClientQt::notificationClicked):

Source/WebKit/win:

  • WebCoreSupport/WebContextMenuClient.cpp:

(WebContextMenuClient::searchWithGoogle):

Source/WebKit2:

  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::didClickNotification):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::evaluate):

  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:

(WebKit::WebContextMenuClient::searchWithGoogle):

6:13 PM Changeset in webkit [145452] by pilgrim@chromium.org
  • 18 edits
    3 copies in trunk/Source

[Chromium] Move WebFileSystemCallbacks to Platform/
https://bugs.webkit.org/show_bug.cgi?id=112049

Reviewed by Adam Barth.

In preparation for moving filesystem-related methods from
WebFrameClient to Platform.

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebFileError.h: Copied from Source/WebKit/chromium/public/WebFileError.h.

(WebKit):

  • chromium/public/WebFileSystemCallbacks.h: Copied from Source/WebKit/chromium/public/WebFileSystemCallbacks.h.

(WebKit):
(WebFileSystemCallbacks):
(WebKit::WebFileSystemCallbacks::didCreateSnapshotFile):
(WebKit::WebFileSystemCallbacks::~WebFileSystemCallbacks):

  • chromium/public/WebFileSystemEntry.h: Copied from Source/WebKit/chromium/public/WebFileSystemEntry.h.

(WebKit):
(WebKit::WebFileSystemEntry::WebFileSystemEntry):
(WebFileSystemEntry):

Source/WebKit/chromium:

  • WebKit.gyp:
  • public/WebFileError.h:
  • public/WebFileSystemCallbacks.h:
  • public/WebFileSystemEntry.h:
  • public/WebFileWriterClient.h:
  • src/AssertMatchingEnums.cpp:
  • src/AsyncFileWriterChromium.h:
  • src/LocalFileSystemChromium.cpp:
  • src/WebFileSystemCallbacksImpl.cpp:
  • src/WebFileSystemCallbacksImpl.h:
  • src/WebSharedWorkerImpl.cpp:
  • src/WebWorkerClientImpl.cpp:
  • src/WorkerFileSystemCallbacksBridge.cpp:
  • src/WorkerFileSystemCallbacksBridge.h:
  • src/WorkerFileWriterCallbacksBridge.h:
6:12 PM Changeset in webkit [145451] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Ruby text is incorrectly positioned when its writing-mode is changed to vertical after layout is done
https://bugs.webkit.org/show_bug.cgi?id=96592

Patch by Yuki Sekiguchi <yuki.sekiguchi@access-company.com> on 2013-03-11
Reviewed by Hajime Morrita.

Source/WebCore:

Fixed logical left of RenderRubyText is not cleared.

This causes trouble when RenderRubyTest is laid out vertically after horizontally.
Horizontal layout set logical top(== y).
Vertical layout don't set logical left(== y).
RenderRubyText::y remain old one.
We clear old RenderRubyText::y at the first part of layout().

Test: fast/writing-mode/ruby-text-logical-left.html

  • rendering/RenderRubyRun.cpp:

(WebCore::RenderRubyRun::layout): Reset logicalLeft not to reuse old one.

LayoutTests:

  • fast/writing-mode/ruby-text-logical-left-expected.html: Added.
  • fast/writing-mode/ruby-text-logical-left.html: Added.
6:10 PM Changeset in webkit [145450] by commit-queue@webkit.org
  • 16 edits
    3 adds in trunk

[css3-text] Add partial parsing support for text-underline-position property from CSS3 Text
https://bugs.webkit.org/show_bug.cgi?id=102491

Patch by Lamarque V. Souza <Lamarque.Souza@basyskom.com> on 2013-03-11
Reviewed by Julien Chaffraix.

Source/WebCore:

This patch extends the existing parsing to support 'auto', 'alphabetic' and 'under'. We don't fully match
the specification as we don't support [ left | right ] and this is left for another implementation
as the rendering will need to be added.

Test: fast/css3-text/css3-text-decoration/getComputedStyle/getComputedStyle-text-underline-position.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseTextUnderlinePosition):

  • css/CSSParser.h:
  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator TextUnderlinePosition):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):
Added parsing-related checks for text-underline-position property.

  • css/CSSPropertyNames.in: Added '-webkit-underline-position' property.
  • css/CSSValueKeywords.in:
  • css/SVGCSSValueKeywords.in:
  • css/StyleBuilder.cpp:

(ApplyPropertyTextUnderlinePosition):
(WebCore::ApplyPropertyTextUnderlinePosition::applyValue):
(WebCore::ApplyPropertyTextUnderlinePosition::createHandler):
(WebCore::StyleBuilder::StyleBuilder):
Set property handler for text-underline-position.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleRareInheritedData.cpp:

(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):
Added support for m_textUnderlinePosition on copy constructor and operator
assignment functions.

  • rendering/style/StyleRareInheritedData.h:

(StyleRareInheritedData): Added m_textUnderlinePosition here as it won't be used regularly.

LayoutTests:

Added getComputedStyle layout tests for 'text-underline-position' CSS3
property, with 'webkit' prefix.

  • fast/css3-text/css3-text-decoration/getComputedStyle/getComputedStyle-text-underline-position-expected.txt: Added.
  • fast/css3-text/css3-text-decoration/getComputedStyle/getComputedStyle-text-underline-position.html: Added.
  • fast/css3-text/css3-text-decoration/getComputedStyle/script-tests/getComputedStyle-text-underline-position.js: Added.

(testElementStyle):
(testComputedStyle):

6:10 PM Changeset in webkit [145449] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1410

Merge 142631
BUG=175343
Review URL: https://codereview.chromium.org/12543029

6:08 PM Changeset in webkit [145448] by commit-queue@webkit.org
  • 4 edits in trunk

Hit testing should use ancestorInThisScope to get the non-shadow ancestor
https://bugs.webkit.org/show_bug.cgi?id=112068

Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-03-11
Reviewed by Dimitri Glazkov.

Source/WebCore:

Tests: media/nodesFromRect-shadowContent.html

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::setToNonShadowAncestor):
(WebCore::HitTestResult::addNodeToRectBasedTestResult):
Use ancestorInThisScope which is not deprecated and which produces
correct results for nested shadow trees (e.g. in case of <video>,
which contains <input> elements for the controls, which themselves
have shadow trees)

LayoutTests:

  • media/nodesFromRect-shadowContent.html: Extend the hit testing rect

to guarantee reaching a nested shadow tree.

6:07 PM Changeset in webkit [145447] by jparent@chromium.org
  • 6 edits in trunk/Tools

Dashboard cleanup: Create ui.Errors
https://bugs.webkit.org/show_bug.cgi?id=111785

Reviewed by Ojan Vafai.

Create ui.Errors for handling errors the dashboards
encounter. Loader now has a Error object that it can add to,
and individual dashboards can show errors when desired.
Currently, only flakiness_db shows errors, but this is
generic and there is no reason why other dbs wouldn't want to
show errors.

  • TestResultServer/static-dashboards/dashboard_base.js:

(resourceLoadingComplete):

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(generatePage):

  • TestResultServer/static-dashboards/loader.js:

(.):

  • TestResultServer/static-dashboards/ui.js:

(.):

6:05 PM Changeset in webkit [145446] by cevans@google.com
  • 12 edits in branches/chromium/1410/Source/WebCore

Merge 143840
BUG=173050
Review URL: https://codereview.chromium.org/12518022

5:53 PM Changeset in webkit [145445] by jamesr@google.com
  • 3 edits
    8 copies
    3 adds in trunk/LayoutTests

More chromium layer tree rebaselines for r145422

  • platform/chromium-mac-lion/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Copied from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt.
  • platform/chromium-mac-lion/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Copied from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt.
  • platform/chromium-mac-snowleopard/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Copied from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt.
  • platform/chromium-mac-snowleopard/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Copied from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt.
  • platform/chromium-mac/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Copied from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt.
  • platform/chromium-mac/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Copied from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt.
  • platform/chromium-win/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Copied from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt.
  • platform/chromium-win/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Copied from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt:
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt:
5:50 PM Changeset in webkit [145444] by inferno@chromium.org
  • 22 edits in trunk/Source

Replace static_cast with to* helper functions.
https://bugs.webkit.org/show_bug.cgi?id=112045

Reviewed by Eric Seidel.

Source/WebCore:

  • bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:

(WebCore::V8HTMLOptionsCollection::removeMethodCustom):
(WebCore::V8HTMLOptionsCollection::indexedPropertySetter):

  • bindings/v8/custom/V8NamedNodesCollection.cpp:

(WebCore::V8NamedNodesCollection::namedItem):

  • bindings/v8/custom/V8NodeCustom.cpp:

(WebCore::wrap):

  • editing/BreakBlockquoteCommand.cpp:

(WebCore::BreakBlockquoteCommand::doApply):

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::insertNodeAt):
(WebCore::CompositeEditCommand::pushAnchorElementDown):
(WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
(WebCore::CompositeEditCommand::splitTreeToNode):

  • editing/InsertParagraphSeparatorCommand.cpp:

(WebCore::InsertParagraphSeparatorCommand::doApply):

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::create):

  • platform/chromium/PasteboardChromium.cpp:

(WebCore::Pasteboard::writeImage):

  • platform/mac/HTMLConverter.mm:

(+[WebHTMLConverter editingAttributedStringFromRange:]):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::frameContentsCompositor):
(WebCore::RenderLayerCompositor::requiresCompositingForVideo):

  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore::RenderSnapshottedPlugIn::plugInImageElement):

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::updateFromElement):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::idChanged):

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::findChildByExpression):
(WebKit::WebFrameImpl::fromFrameOwnerElement):

  • src/WebHelperPluginImpl.cpp:

(WebKit::WebHelperPluginImpl::getPlugin):

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::loadInternal):
(WebKit::WebMediaPlayerClientImpl::create):

  • src/WebPageSerializerImpl.cpp:

(WebKit::WebPageSerializerImpl::preActionBeforeSerializeOpenTag):
(WebKit::WebPageSerializerImpl::endTagToString):
(WebKit::WebPageSerializerImpl::buildContentForNode):
(WebKit::WebPageSerializerImpl::collectTargetFrames):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::autocompleteHandleKeyEvent):
(WebKit::WebViewImpl::enterFullScreenForElement):

Source/WebKit/mac:

  • WebView/WebRenderLayer.mm:

(+[WebRenderLayer nameForLayer:]):

5:48 PM Changeset in webkit [145443] by cevans@google.com
  • 2 edits
    1 copy in branches/chromium/1410

Merge 142760
BUG=172993
Review URL: https://codereview.chromium.org/12558011

5:45 PM Changeset in webkit [145442] by commit-queue@webkit.org
  • 10 edits
    2 copies in trunk/Source

[chromium] Use SkMatrix44 instead of WebTransformationMatrix in animation APIs
https://bugs.webkit.org/show_bug.cgi?id=111791

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

Source/Platform:

This adds SkMatrix44 overrides for animation APIs that deal with matrices and slims the interface
down for WebTransformationMatrix to the minimum needed to compile. With this patch, there are no
live codepaths that use WebTransformationMatrix but some downstream code still needs a type and a
few functions to compile. After the downstream code is patched this type can go away completely.

  • chromium/public/WebLayer.h:

(WebKit):
(WebLayer):

  • chromium/public/WebTransformAnimationCurve.h:

(WebTransformAnimationCurve):

  • chromium/public/WebTransformOperations.h:

(WebTransformOperations):

  • chromium/public/WebTransformationMatrix.h:

(WebTransformationMatrix):

Source/WebCore:

Adds a new utility function to convert a TransformationMatrix to an SkMatrix44 and
uses it in AnimationTranslationUtil and GraphicsLayerChromium.

  • WebCore.gypi:
  • platform/chromium/support/WebTransformationMatrix.cpp:

(WebKit::WebTransformationMatrix::WebTransformationMatrix):

  • platform/graphics/chromium/AnimationTranslationUtil.cpp:

(WebCore::toWebTransformOperations):

  • platform/graphics/chromium/GraphicsLayerChromium.cpp:

(WebCore::GraphicsLayerChromium::updateTransform):
(WebCore::GraphicsLayerChromium::updateChildrenTransform):

  • platform/graphics/chromium/TransformSkMatrix44Conversions.cpp:

(WebCore::TransformSkMatrix44Conversions::convert):

  • platform/graphics/chromium/TransformSkMatrix44Conversions.h:

(TransformSkMatrix44Conversions):

5:16 PM Changeset in webkit [145441] by commit-queue@webkit.org
  • 11 edits in trunk/Source

Unreviewed, rolling out r145435.
http://trac.webkit.org/changeset/145435
https://bugs.webkit.org/show_bug.cgi?id=112082

Still does not compile (Requested by jamesr on #webkit).

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

Source/WebCore:

  • Modules/indexeddb/IDBBackingStore.cpp:

(WebCore::IDBBackingStore::getObjectStores):
(WebCore::IDBBackingStore::createObjectStore):
(WebCore::IDBBackingStore::deleteObjectStore):
(WebCore::IDBBackingStore::getRecord):
(WebCore::IDBBackingStore::putRecord):
(WebCore::IDBBackingStore::clearObjectStore):
(WebCore::IDBBackingStore::deleteRecord):
(WebCore::IDBBackingStore::getKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStore::maybeUpdateKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStore::keyExistsInObjectStore):
(WebCore::IDBBackingStore::getIndexes):
(WebCore::IDBBackingStore::createIndex):
(WebCore::IDBBackingStore::deleteIndex):
(WebCore::IDBBackingStore::putIndexDataForRecord):
(WebCore::IDBBackingStore::findKeyInIndex):
(WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
(WebCore::IDBBackingStore::keyExistsInIndex):
(WebCore::indexCursorOptions):

  • Modules/indexeddb/IDBBackingStore.h:

(IDBBackingStore):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::DeleteIndexOperation::create):
(WebCore::DeleteIndexOperation::DeleteIndexOperation):
(DeleteIndexOperation):
(WebCore::IDBDatabaseBackendImpl::openInternal):
(WebCore::IDBDatabaseBackendImpl::deleteIndex):
(WebCore::DeleteIndexOperation::perform):
(WebCore::DeleteRangeOperation::perform):
(WebCore::ClearOperation::perform):

  • Modules/indexeddb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::KeyPrefix::KeyPrefix):
(WebCore::IDBLevelDBCoding::KeyPrefix::encode):
(WebCore::IDBLevelDBCoding::SchemaVersionKey::encode):
(WebCore::IDBLevelDBCoding::MaxDatabaseIdKey::encode):
(WebCore::IDBLevelDBCoding::DataVersionKey::encode):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::encode):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::encode):
(WebCore::IDBLevelDBCoding::DatabaseMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::encode):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::encode):
(WebCore::IDBLevelDBCoding::IndexNamesKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreDataKey::encode):
(WebCore::IDBLevelDBCoding::ExistsEntryKey::encode):

  • Modules/indexeddb/IDBLevelDBCoding.h:

(IDBLevelDBCoding):
(KeyPrefix):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::IndexWriter::writeIndexKeys):

Source/WebKit/chromium:

  • tests/IDBBackingStoreTest.cpp:

(WebCore::IDBBackingStoreTest::SetUp):
(IDBBackingStoreTest):
(WebCore::TEST_F):

  • tests/IDBFakeBackingStore.h:
  • tests/IDBLevelDBCodingTest.cpp:

(IDBLevelDBCoding):
(IDBLevelDBCoding::TEST):

5:15 PM Changeset in webkit [145440] by Lucas Forschler
  • 4 edits in branches/safari-536.29-branch/Source

Versioning.

5:14 PM Changeset in webkit [145439] by Lucas Forschler
  • 1 copy in tags/Safari-536.29.8

New Tag.

5:12 PM Changeset in webkit [145438] by Lucas Forschler
  • 5 edits in branches/safari-534.59-branch/Source

Versioning.

5:09 PM Changeset in webkit [145437] by Lucas Forschler
  • 1 copy in tags/Safari-534.59.4

New Tag.

5:07 PM Changeset in webkit [145436] by jamesr@google.com
  • 33 edits
    1 copy
    7 adds in trunk/LayoutTests

First (of probably many) layer tree rebaselines for r145422

  • platform/chromium-linux-x86/compositing/overflow/composited-scrolling-paint-phases-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/composited-scrolling-paint-phases-expected.txt.
  • platform/chromium-linux/compositing/iframes/become-overlapped-iframe-expected.txt:
  • platform/chromium-linux/compositing/iframes/composited-parent-iframe-expected.txt:
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe-expected.txt:
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe2-expected.txt:
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe3-expected.txt:
  • platform/chromium-linux/compositing/iframes/enter-compositing-iframe-expected.txt:
  • platform/chromium-linux/compositing/iframes/iframe-resize-expected.txt:
  • platform/chromium-linux/compositing/iframes/iframe-size-from-zero-expected.txt:
  • platform/chromium-linux/compositing/iframes/invisible-nested-iframe-show-expected.txt:
  • platform/chromium-linux/compositing/iframes/overlapped-iframe-expected.txt:
  • platform/chromium-linux/compositing/iframes/resizer-expected.txt:
  • platform/chromium-linux/compositing/iframes/scrolling-iframe-expected.txt:
  • platform/chromium-linux/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
  • platform/chromium-linux/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
  • platform/chromium-linux/compositing/overflow/composited-scrolling-paint-phases-expected.txt:
  • platform/chromium-linux/compositing/overflow/textarea-scroll-touch-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/composited-scrolling-paint-phases-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/become-overlapped-iframe-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-parent-iframe-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-delayed-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe2-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe3-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/enter-compositing-iframe-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-resize-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-size-from-zero-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/invisible-nested-iframe-show-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/overlapped-iframe-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/resizer-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/scrolling-iframe-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/composited-scrolling-paint-phases-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/textarea-scroll-touch-expected.txt:
4:57 PM Changeset in webkit [145435] by alecflett@chromium.org
  • 11 edits in trunk/Source

IndexedDB: Protect against key prefix overflows
https://bugs.webkit.org/show_bug.cgi?id=111138

Reviewed by Tony Chang.

Source/WebCore:

This reworks the boundary checking for all databaseId,
objectStoreId, and indexId, including negative and
zero-based ids. All entrypoints into IDBLevelDBCoding
are protected with explicit checks and all internal
uses of KeyPrefix are protected with ASSERTs in the
various constructors.

Tests: WebKit unit tests IDBBackingStoreTest.cpp in WebKit/chromium

  • Modules/indexeddb/IDBBackingStore.h: Make all public methods boolean-based for errors.
  • Modules/indexeddb/IDBLevelDBCoding.h: Add methods for checking databaseId, objectStoreId, and indexId.

Source/WebKit/chromium:

Add tests for invalid indexIds in basic get/put operations.

4:54 PM Changeset in webkit [145434] by wangxianzhu@chromium.org
  • 1 edit in branches/chromium/1410/Source/WebCore/css/RuleSet.h

Merge 145034 "Make RuleData support up to 8191 selectors"

Make RuleData support up to 8191 selectors
https://bugs.webkit.org/show_bug.cgi?id=111663

Patch by Philippe Liard <pliard@chromium.org> on 2013-03-06
Reviewed by Andreas Kling.

r125294 made RuleData consume less memory by replacing a pointer with
an index encoded on 12 bits.
This unfortunately breaks Chrome for Android (and others) when a lot of
CSS is used or more precisely when selectorIndex cannot be stored on 12
bits.

Threfore this change decreases the number of bits used to store
m_position by 1 (from 19 to 18) and adds this extra bit to
m_selectorIndex so that values up to 8191 can be stored safely without
overflowing.

  • css/RuleSet.h:

(RuleData):

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

4:48 PM Changeset in webkit [145433] by pdr@google.com
  • 16 edits in trunk/Source/WebCore

Replace static_cast<SVGStyledElement> with toSVGStyledElement()
https://bugs.webkit.org/show_bug.cgi?id=111651

Reviewed by Abhishek Arya.

toSVGStyledElement is preferred over static_cast<SVGStyledElement*> because bad casts
can be caught on our testing infrastructure. This patch replaces all
static_cast<SVGStyledElement> instances with toSVGStyledElement.

Additionally, this patch renames SVGElement::isStyled to SVGElement::isSVGStyledElement to
remove a confusing overlap with html styled elements. This name differs slighly from the
other is*() functions in SVGElement but this will be resolved up with webkit.org/b/107386.

No new tests as this is covered with existing tests.

  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::getElementCTM):

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
(WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
(WebCore::RenderSVGResourceClipper::hitTestClipContent):

  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
(WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect):

  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::createTileImage):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::layoutChildren):

  • rendering/svg/SVGResources.cpp:

(WebCore::registerPendingResource):

  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::isTargetAttributeCSSProperty):
(WebCore::SVGAnimationElement::computeCSSPropertyValue):
(WebCore::SVGAnimationElement::adjustForInheritance):
(WebCore::inheritsFromProperty):

  • svg/SVGElement.cpp:

(WebCore::collectInstancesForSVGElement):
(WebCore::SVGElement::isAnimatableAttribute):

  • svg/SVGElement.h:

(WebCore::SVGElement::isSVGStyledElement):

  • svg/SVGElementInstance.cpp:

(WebCore::SVGElementInstance::invalidateAllInstancesOfElement):
(WebCore::SVGElementInstance::InstanceUpdateBlocker::InstanceUpdateBlocker):

  • svg/SVGLocatable.cpp:

(WebCore::SVGLocatable::computeCTM):

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::updateRelativeLengthsInformation):

  • svg/SVGStyledElement.h:

(WebCore::SVGStyledElement::isSVGStyledElement):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::selfHasRelativeLengths):

  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::platformApplySoftware):

4:47 PM Changeset in webkit [145432] by timothy_horton@apple.com
  • 6 edits in trunk/Source

PDFPlugin: Make scrolling between pages in non-continuous modes work
https://bugs.webkit.org/show_bug.cgi?id=111415
<rdar://problem/12555320>

Reviewed by Alexey Proskuryakov.

  • WebProcess/Plugins/PDF/PDFLayerControllerDetails.h:

Add some more PDFLayerController SPI.

  • WebProcess/Plugins/PDF/PDFPlugin.h:

(PDFPlugin): Override handleWheelEvent.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::handleWheelEvent):
If PDFLayerController is in non-continuous mode, allow scrolling between
pages by intercepting scroll events, and checking whether we're at the
top or bottom of a page. If we are, and a single event exceeds the threshold
of 20px (0px for legacy scroll wheels), we jump to the next or previous
page and scroll to the right place. Do not allow momentum scrolling to
switch pages.

  • WebCore.exp.in: Export ScrollableArea::scrollToOffsetWithoutAnimation.
4:44 PM Changeset in webkit [145431] by mark.lam@apple.com
  • 3 edits in trunk/Source/WebCore

Remove the use of the quotaMap cache in DatabaseTracker.
https://bugs.webkit.org/show_bug.cgi?id=111805.

Reviewed by Geoffrey Garen.

This change is needed because using the quotaMap cache can result in
an inaccurate read (in a multi-process system) on what database files
are actually present on the filesystem. Instead of using the quotaMap
cache, we rely on the tracker database and query it every time we need
the origin/quota information.

No new tests.

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::hasAdequateQuotaForOrigin):
(WebCore::DatabaseTracker::hasEntryForOriginNoLock):
(WebCore::DatabaseTracker::origins):
(WebCore::DatabaseTracker::quotaForOriginNoLock):
(WebCore::DatabaseTracker::setQuota):
(WebCore::DatabaseTracker::addDatabase):
(WebCore::DatabaseTracker::deleteOrigin):

  • Modules/webdatabase/DatabaseTracker.h:
4:40 PM Changeset in webkit [145430] by adamk@chromium.org
  • 4 edits
    1 copy in branches/chromium/1410

Merge 144522 "Don't leak Documents when using MutationObserver f..."

Don't leak Documents when using MutationObserver from extensions
https://bugs.webkit.org/show_bug.cgi?id=111234

Patch by Elliott Sprehn <Elliott Sprehn> on 2013-03-01
Reviewed by Adam Barth.

.:

  • ManualTests/leak-observer-nonmain-world.html: Added.

Source/WebCore:

MutationObserverCallback holds a WorldContextHandle which secretly isn't
a handle to anything when it's for the main world. When it's for a non-main
world though, like those used in extensions, it becomes a strong reference
to the v8::Context which results in leaks by creating cycles:

MutationObserver -> Callback -> World -> Document -> Node -> MutationObserver.

Instead we should keep a RefPtr to a DOMWrapperWorld in the callback and then
get the v8::Context from that inside handleEvent.

Tests: ManualTests/leak-observer-nonmain-world.html

  • bindings/v8/V8Binding.cpp:

(WebCore::toV8Context): Added overload that takes a DOMWrapperWorld.

  • bindings/v8/V8Binding.h:
  • bindings/v8/V8MutationCallback.cpp:

(WebCore::V8MutationCallback::V8MutationCallback):
(WebCore::V8MutationCallback::handleEvent):

  • bindings/v8/V8MutationCallback.h:

(V8MutationCallback):

TBR=esprehn@chromium.org

4:40 PM Changeset in webkit [145429] by jamesr@google.com
  • 3 edits in trunk/LayoutTests

De-flake fast/dom/title-directionality.html
https://bugs.webkit.org/show_bug.cgi?id=112075

Reviewed by Adam Barth.

This moves the test logic from an inline script to an onload handler. Otherwise, the whitespace collapsing logic
creates a race between the style recalc timer and the HTML parser which sometimes produces an extra newline at
the end of the text output.

  • fast/dom/title-directionality-expected.txt:
  • fast/dom/title-directionality.html:
4:40 PM Changeset in webkit [145428] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Don't rely on the fact that StaticPosition happens to be defined as 0
https://bugs.webkit.org/show_bug.cgi?id=110123

Also made the expression slightly less convoluted.

Patch by Morten Stenshorne <mstensho@opera.com> on 2013-03-11
Reviewed by Alexey Proskuryakov.

No new tests. This is just code cleanup.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

4:39 PM Changeset in webkit [145427] by commit-queue@webkit.org
  • 2 edits in trunk

[Autotools] Set ENABLE_GTK_DOC to false if gtk-doc is not installed
https://bugs.webkit.org/show_bug.cgi?id=111980

Patch by Tobias Mueller <tobiasmue@gnome.org> on 2013-03-11
Reviewed by Martin Robinson.

WebKit did not configure if gtk-doc-am was not installed with the error:
Tools/GNUmakefile.am:419: ENABLE_GTK_DOC does not appear in AM_CONDITIONAL

  • Source/autotools/FindDependencies.m4:
4:36 PM Changeset in webkit [145426] by mark.lam@apple.com
  • 3 edits in trunk/Source/WebKit2

Fix some WebDatabaseManagerProxy methods to only send to one WebProcsess
instead of broadcasting to all WebProcesses.
https://bugs.webkit.org/show_bug.cgi?id=112074.

Reviewed by Alexey Proskuryakov.

The reason for this is because the intent of these messages is to act on
the tracker database that is shared between all WebProcesses. It is
redundant and inefficient for multiple WebProcesses to service the same
request/message. And because of multi-process contention on accessing
the tracker database, the results returned to the UIProcess may also be
erroneous.

For example, if getDatabaseOrigins() is broadcasted to all WebProcesses,
they will contend to open the tracker database at the same time. If one
of these processes fails because the database is already in use, then
it may return with an empty list when it should not be empty.

With this fix, only one WebProcess gets the message and will perform the
requested query/action on behalf of all WebProcesses.

  • UIProcess/WebContext.h:

(WebKit::WebContext::sendToOneProcess):

  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::getDatabasesByOrigin):
(WebKit::WebDatabaseManagerProxy::getDatabaseOrigins):
(WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin):
(WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin):
(WebKit::WebDatabaseManagerProxy::deleteAllDatabases):
(WebKit::WebDatabaseManagerProxy::setQuotaForOrigin):

4:25 PM Changeset in webkit [145425] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed attempt to fix build after http://trac.webkit.org/changeset/145421.

  • html/HTMLPlugInImageElement.cpp:
4:20 PM Changeset in webkit [145424] by ojan@chromium.org
  • 6 edits
    4 adds in trunk

Intrinsic width keyword values don't work for tables
https://bugs.webkit.org/show_bug.cgi?id=111515

Reviewed by Julien Chaffraix.

Source/WebCore:

Tests: fast/css-intrinsic-dimensions/css-tables.html

fast/css-intrinsic-dimensions/tables.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeIntrinsicLogicalWidthUsing):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):
(WebCore::RenderBox::computeReplacedLogicalWidthUsing):
(WebCore::RenderBox::computePositionedLogicalWidthUsing):

  • rendering/RenderBox.h:

Pass in the border and padding as an argument since RenderTable needs
to pass in a different value. Unfortunately, the math doesn't work out right
in the positioned/replaced cases if we just pass 0. We need to pass in the correct
border and padding and then subtract it from the result.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::updateLogicalWidth):
Compute intrinsic widths as well as specified ones. Down the road
we may want to consider having intrinsic width values return true for
isSpecified.

(WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
Compute intrinsic widths as well.

(WebCore::RenderTable::computeIntrinsicLogicalWidths):
Implement this method so that the RenderBox::computeIntrinsicLogicalWidthUsing
gets the right intrinsic values instead of the preferred values.

(WebCore::RenderTable::computePreferredLogicalWidths):

  • rendering/RenderTable.h:

LayoutTests:

  • fast/css-intrinsic-dimensions/css-tables-expected.txt: Added.
  • fast/css-intrinsic-dimensions/css-tables.html: Added.
  • fast/css-intrinsic-dimensions/tables-expected.txt: Added.
  • fast/css-intrinsic-dimensions/tables.html: Added.
4:18 PM Changeset in webkit [145423] by schenney@chromium.org
  • 8 edits
    2 adds in trunk

HTMLInputElement can delete an ImageLoader while it's still needed
https://bugs.webkit.org/show_bug.cgi?id=110621

Reviewed by Darin Adler.

Source/WebCore:

ImageLoader objects may fire events for HTMLInputElements that are of
type ImageInputType that own the loader. These events may cause script
to run that changes the type of the input element and hence causes the
ImageLoader to be deleted, while the image loader is still processing
the event dispatch. Bad things ensue.

This change moves ownership of the ImageLoader from the ImageInputType
onto the HTMLImageElement which is already protected from deletion during
event processing.

Test: fast/forms/image/image-error-event-modifies-type-crash.html

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::imageLoader): Method to return the

ImageLoader, creating it if not already created.

  • html/HTMLInputElement.h:

(WebCore::HTMLInputElement::hasImageLoader): Return true if the

ImageLoader has been created.

(HTMLInputElement): Define ImageLoader access methods and the OwnPtr

for the HTMLImageLoader.

  • html/ImageInputType.cpp:

(WebCore::ImageInputType::srcAttributeChanged): Use the element's ImageLoader.
(WebCore::ImageInputType::attach): Use the element's ImageLoader.
(WebCore::ImageInputType::willMoveToNewOwnerDocument): Use the element's ImageLoader.
(WebCore::ImageInputType::height): Use the element's ImageLoader.
(WebCore::ImageInputType::width): Use the element's ImageLoader.

  • html/ImageInputType.h:

(ImageInputType): Remove the declaration of the ImageLoader.

LayoutTests:

  • fast/forms/image/image-error-event-modifies-type-crash-expected.txt: Added.
  • fast/forms/image/image-error-event-modifies-type-crash.html: Added.
4:02 PM WebKitGTK/2.0.x edited by Martin Robinson
(diff)
3:59 PM Changeset in webkit [145422] by alokp@chromium.org
  • 303 edits
    8 deletes in trunk

Revert "Mark GraphicsLayers as opaque when possible"

This reverts commit 0a4d3c2d8a0373aa9e5bd9209885137a13a7f0e0.

REGRESSION (r143626): http://chainlove.com shows garbage tiles on Mac
https://bugs.webkit.org/show_bug.cgi?id=112043

Unreviewed, rolling out r143626.

Source/WebCore:

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

(RenderBox):

  • rendering/RenderBoxModelObject.h:

(RenderBoxModelObject):

  • rendering/RenderLayer.cpp:
  • rendering/RenderLayer.h:

(RenderLayer):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

  • rendering/RenderLayerModelObject.h:

(RenderLayerModelObject):

LayoutTests:

  • compositing/absolute-inside-out-of-view-fixed-expected.txt:
  • compositing/backing/no-backing-for-clip-expected.txt:
  • compositing/backing/no-backing-for-clip-overlap-expected.txt:
  • compositing/backing/no-backing-for-perspective-expected.txt:
  • compositing/clip-child-by-non-stacking-ancestor-expected.txt:
  • compositing/columns/composited-in-paginated-expected.txt:
  • compositing/contents-opaque/contents-opaque-background-clip-expected.txt: Removed.
  • compositing/contents-opaque/contents-opaque-background-clip.html: Removed.
  • compositing/contents-opaque/contents-opaque-background-color-expected.txt: Removed.
  • compositing/contents-opaque/contents-opaque-background-color.html: Removed.
  • compositing/contents-opaque/contents-opaque-layer-opacity-expected.txt: Removed.
  • compositing/contents-opaque/contents-opaque-layer-opacity.html: Removed.
  • compositing/contents-opaque/contents-opaque-layer-transform-expected.txt: Removed.
  • compositing/contents-opaque/contents-opaque-layer-transform.html: Removed.
  • compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt:
  • compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt:
  • compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
  • compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt:
  • compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
  • compositing/geometry/bounds-ignores-hidden-expected.txt:
  • compositing/geometry/clip-expected.txt:
  • compositing/geometry/clip-inside-expected.txt:
  • compositing/geometry/fixed-position-composited-switch-expected.txt:
  • compositing/geometry/flipped-writing-mode-expected.txt:
  • compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt:
  • compositing/geometry/layer-due-to-layer-children-switch-expected.txt:
  • compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt:
  • compositing/geometry/limit-layer-bounds-fixed-expected.txt:
  • compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt:
  • compositing/geometry/limit-layer-bounds-overflow-root-expected.txt:
  • compositing/geometry/limit-layer-bounds-positioned-expected.txt:
  • compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt:
  • compositing/geometry/limit-layer-bounds-transformed-expected.txt:
  • compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt:
  • compositing/geometry/preserve-3d-switching-expected.txt:
  • compositing/iframes/become-composited-nested-iframes-expected.txt:
  • compositing/iframes/become-overlapped-iframe-expected.txt:
  • compositing/iframes/composited-parent-iframe-expected.txt:
  • compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
  • compositing/iframes/connect-compositing-iframe-expected.txt:
  • compositing/iframes/connect-compositing-iframe2-expected.txt:
  • compositing/iframes/connect-compositing-iframe3-expected.txt:
  • compositing/iframes/enter-compositing-iframe-expected.txt:
  • compositing/iframes/iframe-resize-expected.txt:
  • compositing/iframes/invisible-nested-iframe-hide-expected.txt:
  • compositing/iframes/invisible-nested-iframe-show-expected.txt:
  • compositing/iframes/overlapped-iframe-expected.txt:
  • compositing/iframes/overlapped-iframe-iframe-expected.txt:
  • compositing/iframes/overlapped-nested-iframes-expected.txt:
  • compositing/iframes/page-cache-layer-tree-expected.txt:
  • compositing/iframes/scrolling-iframe-expected.txt:
  • compositing/layer-creation/animation-overlap-with-children-expected.txt:
  • compositing/layer-creation/fixed-position-and-transform-expected.txt:
  • compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt:
  • compositing/layer-creation/fixed-position-out-of-view-expected.txt:
  • compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt:
  • compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt:
  • compositing/layer-creation/fixed-position-under-transform-expected.txt:
  • compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
  • compositing/layer-creation/overflow-scroll-overlap-expected.txt:
  • compositing/layer-creation/overlap-animation-clipping-expected.txt:
  • compositing/layer-creation/overlap-animation-expected.txt:
  • compositing/layer-creation/overlap-child-layer-expected.txt:
  • compositing/layer-creation/overlap-clipping-expected.txt:
  • compositing/layer-creation/overlap-transformed-3d-expected.txt:
  • compositing/layer-creation/overlap-transformed-and-clipped-expected.txt:
  • compositing/layer-creation/overlap-transformed-layer-expected.txt:
  • compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt:
  • compositing/layer-creation/overlap-transforms-expected.txt:
  • compositing/layer-creation/spanOverlapsCanvas-expected.txt:
  • compositing/layer-creation/stacking-context-overlap-expected.txt:
  • compositing/layer-creation/translatez-overlap-expected.txt:
  • compositing/masks/mask-layer-size-expected.txt:
  • compositing/overflow-trumps-transform-style-expected.txt:
  • compositing/overflow/clip-descendents-expected.txt:
  • compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt:
  • compositing/overflow/textarea-scroll-touch-expected.txt:
  • compositing/plugins/no-backing-store-expected.txt:
  • compositing/repaint/invalidations-on-composited-layers-expected.txt:
  • compositing/rtl/rtl-absolute-expected.txt:
  • compositing/rtl/rtl-absolute-overflow-expected.txt:
  • compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt:
  • compositing/rtl/rtl-fixed-expected.txt:
  • compositing/rtl/rtl-fixed-overflow-expected.txt:
  • compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • compositing/rtl/rtl-iframe-absolute-expected.txt:
  • compositing/rtl/rtl-iframe-absolute-overflow-expected.txt:
  • compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt:
  • compositing/rtl/rtl-iframe-fixed-expected.txt:
  • compositing/rtl/rtl-iframe-fixed-overflow-expected.txt:
  • compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt:
  • compositing/rtl/rtl-iframe-relative-expected.txt:
  • compositing/rtl/rtl-relative-expected.txt:
  • compositing/tiled-layers-hidpi-expected.txt:
  • compositing/tiling/backface-preserve-3d-tiled-expected.txt:
  • compositing/tiling/crash-reparent-tiled-layer-expected.txt:
  • compositing/tiling/huge-layer-add-remove-child-expected.txt:
  • compositing/tiling/huge-layer-with-layer-children-expected.txt:
  • compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
  • compositing/tiling/rotated-tiled-clamped-expected.txt:
  • compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
  • compositing/tiling/tile-cache-zoomed-expected.txt:
  • compositing/tiling/tiled-layer-resize-expected.txt:
  • compositing/visible-rect/2d-transformed-expected.txt:
  • compositing/visible-rect/3d-transform-style-expected.txt:
  • compositing/visible-rect/3d-transformed-expected.txt:
  • compositing/visible-rect/animated-expected.txt:
  • compositing/visible-rect/animated-from-none-expected.txt:
  • compositing/visible-rect/clipped-by-viewport-expected.txt:
  • compositing/visible-rect/clipped-visible-rect-expected.txt:
  • compositing/visible-rect/iframe-and-layers-expected.txt:
  • compositing/visible-rect/iframe-no-layers-expected.txt:
  • compositing/visible-rect/nested-transform-expected.txt:
  • compositing/visible-rect/scrolled-expected.txt:
  • css3/filters/filtered-compositing-descendant-expected.txt:
  • platform/chromium-linux-x86/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
  • platform/chromium-linux-x86/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
  • platform/chromium-linux-x86/platform/chromium/virtual/softwarecompositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • platform/chromium-linux-x86/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-expected.txt:
  • platform/chromium-linux-x86/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-expected.txt:
  • platform/chromium-linux-x86/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-relative-expected.txt:
  • platform/chromium-linux/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
  • platform/chromium-linux/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-relative-expected.txt:
  • platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-expected.txt:
  • platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-expected.txt:
  • platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-relative-expected.txt:
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-expected.txt:
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-expected.txt:
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-relative-expected.txt:
  • platform/chromium-mac/compositing/iframes/invisible-nested-iframe-show-expected.txt:
  • platform/chromium-mac/compositing/overflow/textarea-scroll-touch-expected.txt:
  • platform/chromium-mac/compositing/repaint/invalidations-on-composited-layers-expected.txt:
  • platform/chromium-mac/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
  • platform/chromium-mac/compositing/tiling/huge-layer-add-remove-child-expected.txt:
  • platform/chromium-mac/compositing/tiling/huge-layer-with-layer-children-expected.txt:
  • platform/chromium-mac/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/textarea-scroll-touch-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/softwarecompositing/repaint/invalidations-on-composited-layers-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/softwarecompositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-relative-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/softwarecompositing/tiling/huge-layer-add-remove-child-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/softwarecompositing/tiling/huge-layer-with-layer-children-expected.txt:
  • platform/chromium-win-xp/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
  • platform/chromium-win-xp/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
  • platform/chromium-win-xp/platform/chromium/virtual/softwarecompositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • platform/chromium-win-xp/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-expected.txt:
  • platform/chromium-win-xp/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-expected.txt:
  • platform/chromium-win-xp/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-relative-expected.txt:
  • platform/chromium-win/compositing/backing/no-backing-for-clip-expected.txt:
  • platform/chromium-win/compositing/backing/no-backing-for-clip-overlap-expected.txt:
  • platform/chromium-win/compositing/backing/no-backing-for-perspective-expected.txt:
  • platform/chromium-win/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
  • platform/chromium-win/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
  • platform/chromium-win/compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt:
  • platform/chromium-win/compositing/geometry/layer-due-to-layer-children-switch-expected.txt:
  • platform/chromium-win/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt:
  • platform/chromium-win/compositing/geometry/preserve-3d-switching-expected.txt:
  • platform/chromium-win/compositing/iframes/invisible-nested-iframe-show-expected.txt:
  • platform/chromium-win/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
  • platform/chromium-win/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
  • platform/chromium-win/compositing/tiling/huge-layer-add-remove-child-expected.txt:
  • platform/chromium-win/compositing/tiling/huge-layer-with-layer-children-expected.txt:
  • platform/chromium-win/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
  • platform/chromium/TestExpectations:
  • platform/chromium/compositing/backing/no-backing-for-clip-expected.txt:
  • platform/chromium/compositing/backing/no-backing-for-clip-overlap-expected.txt:
  • platform/chromium/compositing/backing/no-backing-for-perspective-expected.txt:
  • platform/chromium/compositing/columns/composited-in-paginated-expected.txt:
  • platform/chromium/compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt:
  • platform/chromium/compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt:
  • platform/chromium/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
  • platform/chromium/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
  • platform/chromium/compositing/geometry/clip-expected.txt:
  • platform/chromium/compositing/geometry/clip-inside-expected.txt:
  • platform/chromium/compositing/geometry/fixed-position-composited-switch-expected.txt:
  • platform/chromium/compositing/geometry/flipped-writing-mode-expected.txt:
  • platform/chromium/compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt:
  • platform/chromium/compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt:
  • platform/chromium/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt:
  • platform/chromium/compositing/geometry/limit-layer-bounds-positioned-expected.txt:
  • platform/chromium/compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt:
  • platform/chromium/compositing/geometry/limit-layer-bounds-transformed-expected.txt:
  • platform/chromium/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt:
  • platform/chromium/compositing/geometry/preserve-3d-switching-expected.txt:
  • platform/chromium/compositing/iframes/become-composited-nested-iframes-expected.txt:
  • platform/chromium/compositing/iframes/become-overlapped-iframe-expected.txt:
  • platform/chromium/compositing/iframes/composited-parent-iframe-expected.txt:
  • platform/chromium/compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
  • platform/chromium/compositing/iframes/connect-compositing-iframe-expected.txt:
  • platform/chromium/compositing/iframes/connect-compositing-iframe2-expected.txt:
  • platform/chromium/compositing/iframes/connect-compositing-iframe3-expected.txt:
  • platform/chromium/compositing/iframes/enter-compositing-iframe-expected.txt:
  • platform/chromium/compositing/iframes/iframe-resize-expected.txt:
  • platform/chromium/compositing/iframes/iframe-size-from-zero-expected.txt:
  • platform/chromium/compositing/iframes/invisible-nested-iframe-hide-expected.txt:
  • platform/chromium/compositing/iframes/overlapped-iframe-expected.txt:
  • platform/chromium/compositing/iframes/overlapped-iframe-iframe-expected.txt:
  • platform/chromium/compositing/iframes/overlapped-nested-iframes-expected.txt:
  • platform/chromium/compositing/iframes/resizer-expected.txt:
  • platform/chromium/compositing/iframes/scrolling-iframe-expected.txt:
  • platform/chromium/compositing/layer-creation/fixed-position-and-transform-expected.txt:
  • platform/chromium/compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt:
  • platform/chromium/compositing/layer-creation/fixed-position-out-of-view-expected.txt:
  • platform/chromium/compositing/layer-creation/fixed-position-under-transform-expected.txt:
  • platform/chromium/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
  • platform/chromium/compositing/layer-creation/overflow-scroll-overlap-expected.txt:
  • platform/chromium/compositing/layer-creation/overlap-animation-clipping-expected.txt:
  • platform/chromium/compositing/layer-creation/overlap-animation-expected.txt:
  • platform/chromium/compositing/layer-creation/overlap-child-layer-expected.txt:
  • platform/chromium/compositing/layer-creation/overlap-clipping-expected.txt:
  • platform/chromium/compositing/layer-creation/overlap-transformed-3d-expected.txt:
  • platform/chromium/compositing/layer-creation/overlap-transformed-and-clipped-expected.txt:
  • platform/chromium/compositing/layer-creation/overlap-transformed-layer-expected.txt:
  • platform/chromium/compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt:
  • platform/chromium/compositing/layer-creation/overlap-transforms-expected.txt:
  • platform/chromium/compositing/layer-creation/spanOverlapsCanvas-expected.txt:
  • platform/chromium/compositing/layer-creation/stacking-context-overlap-expected.txt:
  • platform/chromium/compositing/layer-creation/translatez-overlap-expected.txt:
  • platform/chromium/compositing/overflow-trumps-transform-style-expected.txt:
  • platform/chromium/compositing/overflow/clip-descendents-expected.txt:
  • platform/chromium/compositing/rtl/rtl-absolute-expected.txt:
  • platform/chromium/compositing/rtl/rtl-absolute-overflow-expected.txt:
  • platform/chromium/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt:
  • platform/chromium/compositing/rtl/rtl-fixed-expected.txt:
  • platform/chromium/compositing/rtl/rtl-fixed-overflow-expected.txt:
  • platform/chromium/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • platform/chromium/compositing/rtl/rtl-iframe-absolute-expected.txt:
  • platform/chromium/compositing/rtl/rtl-iframe-fixed-expected.txt:
  • platform/chromium/compositing/rtl/rtl-iframe-relative-expected.txt:
  • platform/chromium/compositing/rtl/rtl-relative-expected.txt:
  • platform/chromium/css3/filters/filtered-compositing-descendant-expected.txt:
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt:
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-expected.txt:
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt:
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt:
  • platform/efl/TestExpectations:
  • platform/efl/compositing/repaint/invalidations-on-composited-layers-expected.txt:
  • platform/mac-wk2/compositing/visible-rect/iframe-no-layers-expected.txt:
  • platform/mac/TestExpectations:
  • platform/mac/compositing/geometry/fixed-position-composited-switch-expected.txt:
  • platform/mac/compositing/iframes/resizer-expected.txt:
  • platform/mac/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt:
  • platform/mac/compositing/repaint/invalidations-on-composited-layers-expected.txt:
  • platform/mac/compositing/tiling/backface-preserve-3d-tiled-expected.txt:
  • platform/mac/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
  • platform/mac/compositing/tiling/huge-layer-add-remove-child-expected.txt:
  • platform/mac/compositing/tiling/huge-layer-with-layer-children-expected.txt:
  • platform/mac/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
  • platform/mac/compositing/tiling/rotated-tiled-clamped-expected.txt:
  • platform/mac/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
  • platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt:
  • platform/mac/compositing/tiling/tiled-layer-resize-expected.txt:
  • platform/mac/compositing/visible-rect/iframe-no-layers-expected.txt:
  • platform/qt-5.0-wk2/compositing/columns/composited-in-paginated-expected.txt:
  • platform/qt-5.0-wk2/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/become-composited-nested-iframes-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/become-overlapped-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/composited-parent-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe2-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe3-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/enter-compositing-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/iframe-resize-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/invisible-nested-iframe-show-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/overlapped-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/overlapped-nested-iframes-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/page-cache-layer-tree-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/resizer-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/scrolling-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-and-transform-expected.txt:
  • platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-under-transform-expected.txt:
  • platform/qt-5.0-wk2/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-absolute-overflow-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiled-layers-hidpi-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiling/huge-layer-add-remove-child-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiling/huge-layer-with-layer-children-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
  • platform/qt/TestExpectations:
  • platform/qt/compositing/backing/no-backing-for-clip-expected.txt:
  • platform/qt/compositing/backing/no-backing-for-clip-overlap-expected.txt:
  • platform/qt/compositing/backing/no-backing-for-perspective-expected.txt:
  • platform/qt/compositing/geometry/preserve-3d-switching-expected.txt:
  • platform/qt/compositing/iframes/invisible-nested-iframe-show-expected.txt:
  • platform/qt/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
  • platform/qt/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt:
  • platform/win/compositing/iframes/overlapped-iframe-iframe-expected.txt:
  • platform/win/compositing/tiling/huge-layer-add-remove-child-expected.txt:
  • platform/win/compositing/tiling/rotated-tiled-clamped-expected.txt:
  • platform/win/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
3:51 PM Changeset in webkit [145421] by dino@apple.com
  • 6 edits in trunk/Source/WebCore

Plugins created during user gestures (or soon after) should not be snapshotted
https://bugs.webkit.org/show_bug.cgi?id=111975

Reviewed by Tim Horton.

There are sites which create plugins in response to user actions, such as clicking
on an image that is acting like a poster frame. In those cases we should never snapshot.

There are some other sites which also create plugins in response to user actions,
but don't necessarily create the content themselves. Instead they run some script
that injects an iframe, and the frame loads a plugin. In order to make sure we don't
snapshot in those cases, we're adding the concept of a blessed plugin. Anything that
is created soon after a *handled* user gesture is not snapshotted. To do this we
mark a timestamp in the document when we've called an event listener for a user
gesture. The plugin element then compares its creation time with the most recent
user action time.

  • dom/Document.cpp:

(WebCore::Document::Document): Initialise new timestamp.
(WebCore::Document::resetLastHandledUserGestureTimestamp): Sets the member variable

to the current time.

  • dom/Document.h:

(WebCore::Document::lastHandledUserGestureTimestamp): Getter.

  • dom/EventTarget.cpp:

(WebCore::EventTarget::fireEventListeners): If there were some event listeners and

we were processing a user gesture, then reset the timestamp in the document.

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Remember if we were created

during a user gesture.

(WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Start the plugin

if we were created during a user gesture, or if we are close enough in time
to a listener that fired in relation to a user gesture.

  • html/HTMLPlugInImageElement.h: New private member flag indicating if we were

in a user gesture when constructed.

3:45 PM Changeset in webkit [145420] by msaboff@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed build fix. Rolling out inadvertent setting of DATA_LOG_TO_FILE.

3:38 PM Changeset in webkit [145419] by jpfau@apple.com
  • 4 edits in trunk/Source

List cache partitions as units instead of as their contents
https://bugs.webkit.org/show_bug.cgi?id=111909

Reviewed by Maciej Stachowiak.

Source/WebCore:

Not possible to test with current automated test tools, must be tested manually.

  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::getOriginsWithCache): List a cache item as a member of a partition, if possible

Source/WebKit2:

  • WebProcess/ResourceCache/cf/WebResourceCacheManagerCFNet.cpp:

(WebKit::WebResourceCacheManager::cfURLCacheHostNames): Attempt to enumerate cache partitions based on information we have

3:37 PM Changeset in webkit [145418] by jamesr@google.com
  • 4 edits
    2 adds in trunk/LayoutTests

Update chromium render tree baselines for track cue changes in r145397.

  • platform/chromium-linux/media/track/track-cue-rendering-horizontal-expected.txt: Added.
  • platform/chromium-linux/media/track/track-cue-rendering-vertical-expected.txt: Added.
  • platform/chromium-mac-lion/media/track/track-cue-rendering-vertical-expected.txt:
  • platform/chromium-mac/media/track/track-cue-rendering-horizontal-expected.txt:
  • platform/chromium-mac/media/track/track-cue-rendering-vertical-expected.txt:
3:36 PM Changeset in webkit [145417] by msaboff@apple.com
  • 3 edits in trunk/Source

Crash beneath operationCreateInlinedArguments running fast/js/dfg-create-inlined-arguments-in-closure-inline.html (32-bit only)
https://bugs.webkit.org/show_bug.cgi?id=112067

Reviewed by Geoffrey Garen.

We weren't setting the tag in SetCallee. Therefore set it to CellTag.

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

3:32 PM Changeset in webkit [145416] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Chromium build fix. Forked files strike again.

  • platform/network/chromium/ResourceHandle.cpp: (WebCore::ResourceHandle::firstRequest):
3:25 PM Changeset in webkit [145415] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Add a method to find the ScrollView for a text selection.
https://bugs.webkit.org/show_bug.cgi?id=112061

Patch by Genevieve Mak <gmak@rim.com> on 2013-03-11
Reviewed by Rob Buis.

Internally reviewed by Mike Fenton and Jakob Petsovits.
PR #278490

Refactor the code in InRegionScroller so that we can add a method to find
the InRegionScrollableArea for a text selection.

  • Api/InRegionScroller.cpp:

(BlackBerry::WebKit::InRegionScrollerPrivate::clipToRect):

  • Pull out recursive clipping code into its own function.

(WebKit):
(BlackBerry::WebKit::InRegionScrollerPrivate::calculateInRegionScrollableAreasForPoint):
(BlackBerry::WebKit::InRegionScrollerPrivate::firstScrollableInRegionForNode):

  • This new method allows us to get just the first scrollable region instead of looking for more nested ones. We may want to refactor in the future because some of the code is very similar to calculateInRegionScrollableAreasForPoint.

(BlackBerry::WebKit::InRegionScrollerPrivate::clipAndCreateInRegionScrollableArea):

  • Add a convenience method for the previous function
  • Api/InRegionScroller.h:

(WebKit):

  • Api/InRegionScroller_p.h:

(InRegionScrollerPrivate):

3:22 PM Changeset in webkit [145414] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Unreviewed build fix. Remove stray brace which crept into r145409.

  • WebView/WebFullScreenController.mm:

(-[WebFullScreenController performClose:]):

3:18 PM Changeset in webkit [145413] by jamesr@google.com
  • 2 edits in trunk/Source/WebCore

Fix typo from r145399. Rubber stamped by Abhishek Arya.

  • rendering/svg/RenderSVGViewportContainer.h:

(WebCore::toRenderSVGViewportContainer):

3:15 PM Changeset in webkit [145412] by ggaren@apple.com
  • 2 edits in trunk/Tools

Some StringHasher tests are broken because of missing null termination
https://bugs.webkit.org/show_bug.cgi?id=111284

Reviewed by Darin Adler.

  • TestWebKitAPI/Tests/WTF/StringHasher.cpp:

(TestWebKitAPI): Added null termination since C strings are null-terminated.
(TestWebKitAPI::TEST): Removed #ifdef's that disabled this testing since
the bug caught by it is now fixed.

3:12 PM Changeset in webkit [145411] by hmuller@adobe.com
  • 9 edits
    1 copy
    1 add in trunk/Source/WebCore

[CSS Exclusions] Refactor the ExclusionPolygon class to enable storing multiple boundaries
https://bugs.webkit.org/show_bug.cgi?id=111766

Reviewed by Dirk Schulze.

Refactored the ExclusionPolygon class to enable adding support for shape-margin and shape-padding.
Extracted a new FloatPolygon class which is now used by ExclusionPolygon to represent the shape's
boundary. It will be used to add m_paddedPolygon and m_marginPolygon members to ExclusionPolygon
in a subsequent patch.

No new tests. This is strictly a refactoring of the existing code.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/FloatPolygon.cpp: Factored out of Source/WebCore/rendering/ExclusionPolygon.cpp.

(WebCore::determinant):
(WebCore::areCollinearPoints):
(WebCore::areCoincidentPoints):
(WebCore::isPointOnLineSegment):
(WebCore::nextVertexIndex):
(WebCore::FloatPolygon::FloatPolygon):
(WebCore::FloatPolygon::findNextEdgeVertexIndex):
(WebCore::FloatPolygon::overlappingEdges):
(WebCore::leftSide):
(WebCore::FloatPolygon::contains):
(WebCore::VertexPair::overlapsRect):
(WebCore::VertexPair::intersection):

  • platform/graphics/FloatPolygon.h: Factored out of Source/WebCore/rendering/ExclusionPolygon.h.

(FloatPolygon):
(WebCore::FloatPolygon::vertexAt):
(WebCore::FloatPolygon::numberOfVertices):
(WebCore::FloatPolygon::fillRule):
(WebCore::FloatPolygon::edgeAt):
(WebCore::FloatPolygon::numberOfEdges):
(WebCore::FloatPolygon::boundingBox):
(WebCore::FloatPolygon::isEmpty):
(VertexPair):
(WebCore::VertexPair::~VertexPair):
(WebCore::VertexPair::minX):
(WebCore::VertexPair::minY):
(WebCore::VertexPair::maxX):
(WebCore::VertexPair::maxY):
(FloatPolygonEdge):
(WebCore::FloatPolygonEdge::previousEdge):
(WebCore::FloatPolygonEdge::nextEdge):
(WebCore::FloatPolygonEdge::polygon):
(WebCore::FloatPolygonEdge::vertexIndex1):
(WebCore::FloatPolygonEdge::vertexIndex2):
(WebCore::FloatPolygonEdge::edgeIndex):

  • rendering/ExclusionPolygon.cpp: Now depends on FloatPolygon.

(EdgeIntersection):
(WebCore::leftSide):
(WebCore::computeXIntersection):
(WebCore::getVertexIntersectionVertices):
(WebCore::computeXIntersections):
(WebCore::computeOverlappingEdgeXProjections):
(WebCore::ExclusionPolygon::getExcludedIntervals):
(WebCore::ExclusionPolygon::getIncludedIntervals):
(WebCore::firstFitRectInPolygon):
(WebCore::ExclusionPolygon::firstIncludedIntervalLogicalTop):

  • rendering/ExclusionPolygon.h: Now depends on FloatPolygon.

(WebCore::OffsetPolygonEdge::OffsetPolygonEdge):
(ExclusionPolygon):
(WebCore::ExclusionPolygon::ExclusionPolygon):

2:53 PM Changeset in webkit [145410] by ap@apple.com
  • 3 edits in trunk/Source/WebCore

Roll out part of r144671.

ResourceHandle::firstRequest() should not be const(), because it returns a
non-const reference.

  • platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::firstRequest):
  • platform/network/ResourceHandle.h:
2:51 PM Changeset in webkit [145409] by jer.noble@apple.com
  • 6 edits in trunk/Source

Source/WebCore: Mac: Cmd-w should close full screen window.
https://bugs.webkit.org/show_bug.cgi?id=108406

Reviewed by Darin Adler.

Pass performClose: requests on to the owning window controller.

  • platform/mac/WebCoreFullScreenWindow.mm:

(-[WebCoreFullScreenWindow performClose:]):

Source/WebKit/mac: Mac: Cmd-w should close full screen window.
https://bugs.webkit.org/show_bug.cgi?id=108406

Reviewed by Darin Adler.

Allow the user to close the full screen window with Cmd-w by making the full screen window
closable, and by intercepting performClose:.

  • WebView/WebFullScreenController.mm:

(-[WebFullScreenController init]): Create a closable full screen window.
(-[WebFullScreenController performClose:]): When we receive a close request in full screen mode,

animate out of full screen.

Source/WebKit2: Full screen mode should not exit when application resigns active state.
https://bugs.webkit.org/show_bug.cgi?id=106129

Reviewed by Darin Adler.

Allow the user to close the full screen window with Cmd-w by making the full screen window
closable, and by intercepting performClose:.

  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController init]): Create a closable full screen window.
(-[WKFullScreenWindowController performClose:]): When we receive a close request in full screen mode,

animate out of full screen.

2:48 PM Changeset in webkit [145408] by benjamin@webkit.org
  • 3 edits
    1 add
    12 deletes in trunk/LayoutTests

Modernize the test visited-link-background-color.html
https://bugs.webkit.org/show_bug.cgi?id=111931

Reviewed by Sam Weinig.

Make the test a ref-test instead of a pixel test.

Use Internals' computedStyleIncludingVisitedInfo to make the test reliable
on platforms where the visited link list is updated asynchronously.

  • fast/history/visited-link-background-color-expected.html: Copied from LayoutTests/fast/history/visited-link-background-color.html.
  • fast/history/visited-link-background-color.html:
  • platform/chromium-linux/fast/history/visited-link-background-color-expected.png: Removed.
  • platform/chromium-win/fast/history/visited-link-background-color-expected.png: Removed.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/history/visited-link-background-color-expected.png: Removed.
  • platform/chromium/fast/history/visited-link-background-color-expected.txt: Removed.
  • platform/efl-wk1/fast/history/visited-link-background-color-expected.png: Removed.
  • platform/efl/fast/history/visited-link-background-color-expected.png: Removed.
  • platform/efl/fast/history/visited-link-background-color-expected.txt: Removed.
  • platform/gtk/fast/history/visited-link-background-color-expected.png: Removed.
  • platform/gtk/fast/history/visited-link-background-color-expected.txt: Removed.
  • platform/mac-wk2/fast/history/visited-link-background-color-expected.png: Removed.
  • platform/mac-wk2/fast/history/visited-link-background-color-expected.txt: Removed.
  • platform/mac/fast/history/visited-link-background-color-expected.png: Removed.
  • platform/mac/fast/history/visited-link-background-color-expected.txt: Removed.
  • platform/qt/fast/history/visited-link-background-color-expected.png: Removed.
  • platform/qt/fast/history/visited-link-background-color-expected.txt: Removed.
2:37 PM Changeset in webkit [145407] by Claudio Saavedra
  • 2 edits in trunk

[GTK] Bump version
https://bugs.webkit.org/show_bug.cgi?id=112055

Reviewed by Martin Robinson.

  • Source/autotools/Versions.m4: Bump to 2.1.0
2:35 PM Changeset in webkit [145406] by commit-queue@webkit.org
  • 10 edits in trunk/Source

[Chromium] chromium/linux breaks expectation of select popup background due to bad UA css rules
https://bugs.webkit.org/show_bug.cgi?id=111873

Patch by Xiyuan Xia <xiyuan@chromium.org> on 2013-03-11
Reviewed by Tony Chang.

Source/WebCore:

On linux the default <select> background color is too dark to use as the
popup background color. Last fixes:
https://bugs.webkit.org/show_bug.cgi?id=54115 and
https://bugs.webkit.org/show_bug.cgi?id=56023
attempt to fix the problem by applying a lighter background using
special <option> selector. This breaks expectations of some websites.

This CL reverts the bad UA css rules above and provides the lighter
background color if <select> and <option> elements are using the default
background.

No new tests, this tests <select> popups and can be verified by ManualTests/select-scroll.html.

  • css/themeChromiumLinux.css:

(select):

  • platform/PopupMenuStyle.h:

(WebCore::PopupMenuStyle::PopupMenuStyle):
(WebCore::PopupMenuStyle::backgroundColorType):
(PopupMenuStyle):

  • platform/chromium/PopupListBox.cpp:

(WebCore::PopupListBox::paintRow):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::itemStyle):
(WebCore::RenderMenuList::getItemBackgroundColor):

  • rendering/RenderMenuList.h:

(RenderMenuList):

  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::menuStyle):

  • rendering/RenderThemeChromiumDefault.cpp:

(WebCore::RenderThemeChromiumDefault::systemColor):

Source/WebKit/chromium:

Update PopupMenuStyle constructor call sites.

  • src/AutofillPopupMenuClient.cpp:

(WebKit::AutofillPopupMenuClient::initialize):

2:26 PM Changeset in webkit [145405] by jamesr@google.com
  • 2 edits in trunk/Source/WebCore

Compile fix. Rubber-stamp by Eric Seidel.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlTextTrackContainerElement::updateDisplay):

2:20 PM Changeset in webkit [145404] by dgorbik@apple.com
  • 2 edits in trunk/Source/WebCore

Fix build for r145397 (part 2)

Unreviewed.

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::getDisplayTree):

2:06 PM Changeset in webkit [145403] by dgorbik@apple.com
  • 4 edits in trunk/Source/WebCore

Fix build for r145397

Unreviewed.

  • html/shadow/MediaControls.cpp:

(WebCore::MediaControls::createTextTrackDisplay):

  • html/shadow/MediaControlsChromium.cpp:

(WebCore::MediaControlsChromium::createTextTrackDisplay):

  • html/shadow/MediaControlsGtk.cpp:

(WebCore::MediaControlsGtk::createTextTrackDisplay):

2:03 PM Changeset in webkit [145402] by commit-queue@webkit.org
  • 11 edits
    2 moves
    3 deletes in trunk/LayoutTests

Unreviewed, rolling out r144818.
http://trac.webkit.org/changeset/144818
https://bugs.webkit.org/show_bug.cgi?id=112062

Preparing to rollout r143626, which broke a few websites on
Mac (Requested by alokp on #webkit).

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

  • compositing/contents-opaque/contents-opaque-background-color-expected.txt:
  • compositing/contents-opaque/contents-opaque-layer-opacity-expected.txt:
  • compositing/contents-opaque/contents-opaque-layer-transform-expected.txt:
  • platform/chromium/TestExpectations:
  • platform/chromium/compositing/contents-opaque/contents-opaque-background-color-expected.txt: Removed.
  • platform/chromium/compositing/contents-opaque/contents-opaque-layer-opacity-expected.txt: Removed.
  • platform/chromium/compositing/contents-opaque/contents-opaque-layer-transform-expected.txt: Removed.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Renamed from LayoutTests/platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Renamed from LayoutTests/platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt.
  • platform/efl/TestExpectations:
  • platform/efl/compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt:
  • platform/mac-wk2/compositing/rtl/rtl-fixed-expected.txt:
  • platform/mac-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
2:02 PM Changeset in webkit [145401] by oliver@apple.com
  • 7 edits in trunk/Source

Make SegmentedVector Noncopyable
https://bugs.webkit.org/show_bug.cgi?id=112059

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Copying a SegmentedVector is very expensive, and really shouldn't
be necessary. So I've taken the one place where we currently copy
and replaced it with a regular Vector, and replaced the address
dependent logic with a indexing ref instead.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::newLabelScope):
(JSC::BytecodeGenerator::emitComplexJumpScopes):

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):

  • bytecompiler/LabelScope.h:

(JSC):
(JSC::LabelScopePtr::LabelScopePtr):
(LabelScopePtr):
(JSC::LabelScopePtr::operator=):
(JSC::LabelScopePtr::~LabelScopePtr):
(JSC::LabelScopePtr::operator*):
(JSC::LabelScopePtr::operator->):

  • bytecompiler/NodesCodegen.cpp:

(JSC::DoWhileNode::emitBytecode):
(JSC::WhileNode::emitBytecode):
(JSC::ForNode::emitBytecode):
(JSC::ForInNode::emitBytecode):
(JSC::SwitchNode::emitBytecode):
(JSC::LabelNode::emitBytecode):

Source/WTF:

Copying a SegmentedVector can be extraordinarily expensive, so we beat
it with the Noncopyable stick - that way we can ensure that if anyone
wants an actual copy they know what they're doing.

  • wtf/SegmentedVector.h:

(SegmentedVector):

2:01 PM Changeset in webkit [145400] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Unreviewed, rolling out r145200.
http://trac.webkit.org/changeset/145200
https://bugs.webkit.org/show_bug.cgi?id=112063

Broke a couple of unit tests (Requested by zdobersek on
#webkit).

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

  • Scripts/webkitperl/FeatureList.pm:
1:57 PM Changeset in webkit [145399] by inferno@chromium.org
  • 36 edits in trunk/Source

Add ASSERT_WITH_SECURITY_IMPLICATION to catch bad casts.
https://bugs.webkit.org/show_bug.cgi?id=112060

Reviewed by Eric Seidel.

Source/WebCore:

  • Modules/geolocation/Geolocation.cpp:

(WebCore::Geolocation::document):

  • accessibility/AccessibilityMenuList.h:

(WebCore::toAccessibilityMenuList):

  • accessibility/AccessibilityNodeObject.h:

(WebCore::toAccessibilityNodeObject):

  • accessibility/AccessibilityRenderObject.h:

(WebCore::toAccessibilityRenderObject):

  • accessibility/AccessibilitySVGRoot.h:

(WebCore::toAccessibilitySVGRoot):

  • accessibility/AccessibilitySpinButton.h:

(WebCore::toAccessibilitySpinButton):
(WebCore::toAccessibilitySpinButtonPart):

  • accessibility/AccessibilityTable.h:

(WebCore::toAccessibilityTable):

  • css/StyleRule.h:

(WebCore::toStyleRuleMedia):
(WebCore::toStyleRuleSupports):
(WebCore::toStyleRuleRegion):

  • dom/EventContext.h:

(WebCore::toTouchEventContext):

  • fileapi/File.h:

(WebCore::toFile):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::insertAdjacentElement):
(WebCore::contextElementForInsertion):

  • html/HTMLMediaElement.h:

(WebCore::toMediaElement):

  • html/HTMLMeterElement.h:

(WebCore::toHTMLMeterElement):

  • html/HTMLOptionElement.cpp:

(WebCore::toHTMLOptionElement):

  • html/HTMLProgressElement.cpp:

(WebCore::HTMLProgressElement::renderProgress):

  • html/HTMLProgressElement.h:

(WebCore::toHTMLProgressElement):

  • html/HTMLSelectElement.h:

(WebCore::toHTMLSelectElement):

  • html/HTMLTableCellElement.cpp:

(WebCore::toHTMLTableCellElement):

  • html/HTMLTextFormControlElement.h:

(WebCore::toHTMLTextFormControlElement):

  • html/PluginDocument.h:

(WebCore::toPluginDocument):

  • html/shadow/DetailsMarkerControl.cpp:

(WebCore::DetailsMarkerControl::summaryElement):

  • html/shadow/HTMLContentElement.h:

(WebCore::toHTMLContentElement):

  • html/shadow/HTMLShadowElement.h:

(WebCore::toHTMLShadowElement):

  • html/shadow/TextFieldDecorationElement.cpp:

(WebCore::TextFieldDecorationElement::hostInput):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::document):

  • rendering/InlineTextBox.h:

(WebCore::toInlineTextBox):

  • rendering/RenderHTMLCanvas.h:

(WebCore::toRenderHTMLCanvas):

  • rendering/RenderScrollbar.h:

(WebCore::toRenderScrollbar):

  • rendering/RenderTextFragment.h:

(WebCore::toRenderTextFragment):

  • rendering/mathml/RenderMathMLOperator.h:

(WebCore::toRenderMathMLOperator):

  • rendering/svg/RenderSVGTextPath.h:

(WebCore::toRenderSVGTextPath):

  • rendering/svg/RenderSVGViewportContainer.h:

(WebCore::toRenderSVGViewportContainer):

  • svg/graphics/SVGImageChromeClient.h:

(WebCore::toSVGImageChromeClient):

Source/WebKit/chromium:

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::redirectDataToPlugin):

1:53 PM Changeset in webkit [145398] by abarth@webkit.org
  • 8 edits
    2 adds in trunk/Source/WebCore

Factor HTMLTreeBuilderSimulator out of BackgroundHTMLParser
https://bugs.webkit.org/show_bug.cgi?id=112057

Reviewed by Eric Seidel.

Simulating the HTML tree builder is a separate concern from parsing on
the background thread. We plan to re-use the tree builder simulator for
the view-source parser, for example. Also, having the simulator as a
separate object will make it easier to fix
https://bugs.webkit.org/show_bug.cgi?id=109764.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • html/parser/BackgroundHTMLParser.cpp:

(WebCore):
(WebCore::BackgroundHTMLParser::BackgroundHTMLParser):
(WebCore::BackgroundHTMLParser::pumpTokenizer):

  • html/parser/BackgroundHTMLParser.h:

(BackgroundHTMLParser):

1:43 PM Changeset in webkit [145397] by dgorbik@apple.com
  • 24 edits in trunk

Not all properties apply to the '::cue' pseudo-element
https://bugs.webkit.org/show_bug.cgi?id=110705

Reviewed by Eric Carlson.

Source/WebCore:

Background properties are not inherited and they were not applied to right elements.
Now we apply all ::cue properties to WebVTT cue background box, which -webkit-media-text-track-all-nodes
container was corresponding to. Now it has 'cue' pseudoId instead of '-webkit-media-text-track-all-nodes'.
Property filtering is turned off for user agent rules so that we are still able to apply filtered rules
to this container internally. m_cueContainer is removed because it is no longer needed.
m_allDocumentNodes container was renamed to m_cueBackgroundBox.

Existing tests modified to cover this case.

  • css/RuleSet.h:

(WebCore::RuleData::propertyWhitelistType): disable filtering for UA rules.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::sortAndTransferMatchedRules): pass the UA scope to propertyWhitelistType().

  • css/mediaControls.css: rename -webkit-media-text-track-all-nodes to 'cue'

(video::cue):

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlTextTrackContainerElement::updateDisplay):

  • html/shadow/MediaControlElements.h:

(MediaControlTextTrackContainerElement):

  • html/shadow/MediaControls.cpp:

(WebCore::MediaControls::createTextTrackDisplay):

  • html/shadow/MediaControlsChromium.cpp:

(WebCore::MediaControlsChromium::createTextTrackDisplay):

  • html/shadow/MediaControlsGtk.cpp:

(WebCore::MediaControlsGtk::createTextTrackDisplay):

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::TextTrackCue):
(WebCore::TextTrackCue::updateDisplayTree):
(WebCore::TextTrackCue::getDisplayTree):

  • html/track/TextTrackCue.h:

(WebCore::TextTrackCue::element):

  • page/CaptionUserPreferencesMac.mm:

(WebCore::CaptionUserPreferencesMac::captionsStyleSheetOverride):

LayoutTests:

  • media/media-controls.js:

(textTrackDisplayElement):

  • media/track/track-css-all-cues-expected.txt:
  • media/track/track-css-all-cues.html:
  • media/track/track-css-cue-lifetime.html:
  • media/track/track-css-matching-default.html:
  • media/track/track-css-matching-lang.html:
  • media/track/track-css-matching-timestamps.html:
  • media/track/track-css-matching.html:
  • media/track/track-css-property-whitelist.html:
  • media/track/track-in-band-style.html:
  • platform/mac/media/track/track-cue-rendering-horizontal-expected.txt:
1:40 PM Changeset in webkit [145396] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Set the documentViewportRect and viewport size.
https://bugs.webkit.org/show_bug.cgi?id=112056

Patch by Genevieve Mak <gmak@rim.com> on 2013-03-11
Reviewed by Rob Buis.

Internally reviewed by Mike Fenton and Jakob Petsovits.
PR #278490

  • WebKitSupport/InRegionScrollableArea.cpp:

(BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):

1:22 PM Changeset in webkit [145395] by zandobersek@gmail.com
  • 5 edits in trunk

[GTK] WebKit2-only build fails
https://bugs.webkit.org/show_bug.cgi?id=112033

Reviewed by Gustavo Noronha Silva.

Source/WebKit2:

  • GNUmakefile.am: Introduce the artifical dependency of libwebkit2gtk on libwebkitgtk only

if building WebKit1 as well. Similarly with the WebKitPluginProcess, depend on libwebkitgtk
only if building WebKit1, the dependency is otherwise not necessary.

Tools:

  • GNUmakefile.am: Split the list of files the docs-build.stamp target depends on into the

generic part, WebKit1-specific part and WebKit2-specific part.

  • TestWebKitAPI/GNUmakefile.am: The TestGtk executable should not link agains libwebkitgtk

as it is not WebKit1-specific, but should rather link to libWebCore.la and libWebCoreGtk.la
directly.

1:17 PM Changeset in webkit [145394] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

Update chromium expectations.

  • platform/chromium/TestExpectations:
1:03 PM Changeset in webkit [145393] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

ChromeClient.h doesn’t need to include RenderSnapshottedPlugIn
https://bugs.webkit.org/show_bug.cgi?id=111981

Reviewed by Kentaro Hara.

  • page/ChromeClient.h: Remove the extraneous #include.
1:01 PM Changeset in webkit [145392] by jamesr@google.com
  • 20 edits
    5 copies in branches/chromium/1410

Merge 144236

Plugin in iframe may not display
https://bugs.webkit.org/show_bug.cgi?id=109879

Patch by John Bauman <jbauman@chromium.org> on 2013-02-27
Reviewed by Simon Fraser.

Source/WebCore:

Changing the cliprect on a layer containing an iframe may change the
cliprect of plugins inside the iframe, so recursively tell all plugins
in iframes that their cliprect has changed after doing layout on the
outer frame.

Test: plugins/plugin-clip-subframe.html

  • platform/ScrollView.cpp:

(WebCore::ScrollView::clipRectChanged):

  • platform/ScrollView.h:
  • platform/Widget.h:

(WebCore::Widget::clipRectChanged):

  • plugins/PluginView.cpp:

(WebCore::PluginView::clipRectChanged):

  • plugins/PluginView.h:
  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::setWidgetGeometry):

Source/WebKit/chromium:

Use clipRectChanged to update the geometry.

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::clipRectChanged):

  • src/WebPluginContainerImpl.h:

Source/WebKit/mac:

Ensure NetscapePluginWidget informs the plugin view of the cliprect change directly.

  • Plugins/WebBaseNetscapePluginView.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(NetscapePluginWidget::clipRectChanged):

Source/WebKit2:

Update geometry when cliprect changes.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::clipRectChanged):

  • WebProcess/Plugins/PluginView.h:

Tools:

LogNPPSetWindow will be used with other ports as well.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:

LayoutTests:

Use log-npp-set-window to ensure plugin clip changes correctly.

  • platform/mac-wk2/plugins/plugin-clip-subframe-expected.txt: Added.
  • platform/mac/plugins/plugin-clip-subframe-expected.txt: Added.
  • plugins/plugin-clip-subframe-expected.txt: Added.
  • plugins/plugin-clip-subframe.html: Added.
  • plugins/resources/plugin-clip-subframe-iframe.html: Added.

TBR=jbauman@chromium.org
BUG=168900
Review URL: https://codereview.chromium.org/12408009

1:00 PM Changeset in webkit [145391] by hyatt@apple.com
  • 11 edits in trunk/Source/WebCore

Vertical writing doesn't work with form controls.
https://bugs.webkit.org/show_bug.cgi?id=70211

Reviewed by Simon Fraser.

This is just some basic plumbing work to make textfields and
textareas work with vertical writing modes. This patch leaves the
html.css override alone, so authors can't enable vertical
writing yet.

The changes consist of converting uses of x/y/width/height to
logicalLeft/Top/Width/Height.

  • rendering/RenderBoxModelObject.h:

(WebCore::RenderBoxModelObject::paddingLogicalLeft):
(WebCore::RenderBoxModelObject::paddingLogicalRight):
(RenderBoxModelObject):
(WebCore::RenderBoxModelObject::marginLogicalHeight):
(WebCore::RenderBoxModelObject::marginLogicalWidth):

  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::computeControlLogicalHeight):
(WebCore::RenderSearchField::computeLogicalHeightLimit):
(WebCore::RenderSearchField::centerContainerIfNeeded):

  • rendering/RenderSearchField.h:

(RenderSearchField):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::textBlockLogicalHeight):
(WebCore::RenderTextControl::textBlockLogicalWidth):
(WebCore::RenderTextControl::computeLogicalHeight):
(WebCore::RenderTextControl::computeIntrinsicLogicalWidths):
(WebCore::RenderTextControl::computePreferredLogicalWidths):

  • rendering/RenderTextControl.h:

(RenderTextControl):

  • rendering/RenderTextControlMultiLine.cpp:

(WebCore::RenderTextControlMultiLine::preferredContentLogicalWidth):
(WebCore::RenderTextControlMultiLine::computeControlLogicalHeight):
(WebCore::RenderTextControlMultiLine::layoutSpecialExcludedChild):

  • rendering/RenderTextControlMultiLine.h:

(RenderTextControlMultiLine):

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
(WebCore::RenderTextControlSingleLine::paint):
(WebCore::RenderTextControlSingleLine::computeLogicalHeightLimit):
(WebCore::RenderTextControlSingleLine::layout):
(WebCore::RenderTextControlSingleLine::styleDidChange):
(WebCore::RenderTextControlSingleLine::preferredContentLogicalWidth):
(WebCore::RenderTextControlSingleLine::computeControlLogicalHeight):
(WebCore::RenderTextControlSingleLine::createInnerTextStyle):

  • rendering/RenderTextControlSingleLine.h:

(RenderTextControlSingleLine):

  • rendering/style/RenderStyle.h:
12:59 PM Changeset in webkit [145390] by timothy_horton@apple.com
  • 8 edits in trunk/Source/WebKit2

[wk2] Search With [your search provider here] should use NSPerformService in WebKit2/Mac
https://bugs.webkit.org/show_bug.cgi?id=111995
<rdar://problem/12975669>

Reviewed by Sam Weinig.

  • UIProcess/WebPageProxy.h:

(WebPageProxy): Add searchTheWeb().

  • UIProcess/WebPageProxy.messages.in: Add SearchTheWeb message.
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::searchTheWeb): Added. Call out to NSPerformService to search with the system default
search provider, in the browser.

  • WebProcess/Plugins/PDF/PDFPlugin.h:

(PDFPlugin): Add performWebSearch().

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(-[WKPDFLayerControllerDelegate performWebSearch:]): Added, forward the delegate callback to PDFPlugin.
(WebKit::PDFPlugin::performWebSearch): Added, forward the search string to WebPageProxy.

  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:

(WebKit::WebContextMenuClient::searchWithGoogle): Don't build the old load-Google-in-the-main-frame code on Mac.

  • WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:

(WebKit::WebContextMenuClient::searchWithGoogle): Instead, send the search string to WebPageProxy.

12:57 PM Changeset in webkit [145389] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebCore

TiledBacking scrolling coverage can be unfairly limited for clients who do scrolling outside the web view
https://bugs.webkit.org/show_bug.cgi?id=111958
<rdar://problem/13356896>

Reviewed by Darin Adler.

Don't limit TiledBacking coverage if the client has opted into using
its exposed rect to allow scrolling above the web view.

  • platform/graphics/TiledBacking.h:
  • platform/graphics/ca/mac/TileController.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::adjustTiledBackingCoverage):

12:54 PM Changeset in webkit [145388] by dgorbik@apple.com
  • 2 edits in trunk/Tools

Adding myself to the committers.py

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

GetnUniform*vEXT (Robustness extension) passed incorrect parameter in WebGLRenderingContext
https://bugs.webkit.org/show_bug.cgi?id=111450

Patch by Rajeev Sarvaria <rsarvaria@blackberry.com> on 2013-03-11
Reviewed by Rob Buis.

Bufsize argument corrected to size in bytes instead of number of integers or floats.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::getUniform):

12:48 PM Changeset in webkit [145386] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2] Add C API preference: accelerated compositing for overflow scroll
https://bugs.webkit.org/show_bug.cgi?id=111916

Patch by Helder Correia <Helder Correia> on 2013-03-11
Reviewed by Simon Fraser.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetAcceleratedCompositingForOverflowScrollEnabled):
(WKPreferencesGetAcceleratedCompositingForOverflowScrollEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
12:42 PM Changeset in webkit [145385] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Unreviewed, rolling out r145375.
http://trac.webkit.org/changeset/145375
https://bugs.webkit.org/show_bug.cgi?id=112050

Does not compile (Requested by jamesr on #webkit).

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

Source/WebCore:

  • Modules/indexeddb/IDBBackingStore.cpp:

(WebCore::IDBBackingStore::getObjectStores):
(WebCore::IDBBackingStore::createObjectStore):
(WebCore::IDBBackingStore::deleteObjectStore):
(WebCore::IDBBackingStore::getRecord):
(WebCore::IDBBackingStore::putRecord):
(WebCore::IDBBackingStore::clearObjectStore):
(WebCore::IDBBackingStore::deleteRecord):
(WebCore::IDBBackingStore::getKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStore::maybeUpdateKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStore::keyExistsInObjectStore):
(WebCore::IDBBackingStore::getIndexes):
(WebCore::IDBBackingStore::createIndex):
(WebCore::IDBBackingStore::deleteIndex):
(WebCore::IDBBackingStore::putIndexDataForRecord):
(WebCore::IDBBackingStore::findKeyInIndex):
(WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
(WebCore::IDBBackingStore::keyExistsInIndex):
(WebCore::indexCursorOptions):

  • Modules/indexeddb/IDBBackingStore.h:

(IDBBackingStore):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::DeleteIndexOperation::create):
(WebCore::DeleteIndexOperation::DeleteIndexOperation):
(DeleteIndexOperation):
(WebCore::IDBDatabaseBackendImpl::openInternal):
(WebCore::IDBDatabaseBackendImpl::deleteIndex):
(WebCore::DeleteIndexOperation::perform):
(WebCore::DeleteRangeOperation::perform):
(WebCore::ClearOperation::perform):

  • Modules/indexeddb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::KeyPrefix::KeyPrefix):
(WebCore::IDBLevelDBCoding::KeyPrefix::encode):
(WebCore::IDBLevelDBCoding::SchemaVersionKey::encode):
(WebCore::IDBLevelDBCoding::MaxDatabaseIdKey::encode):
(WebCore::IDBLevelDBCoding::DataVersionKey::encode):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::encode):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::encode):
(WebCore::IDBLevelDBCoding::DatabaseMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::encode):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::encode):
(WebCore::IDBLevelDBCoding::IndexNamesKey::encode):
(WebCore::IDBLevelDBCoding::ObjectStoreDataKey::encode):
(WebCore::IDBLevelDBCoding::ExistsEntryKey::encode):

  • Modules/indexeddb/IDBLevelDBCoding.h:

(IDBLevelDBCoding):
(KeyPrefix):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::IndexWriter::writeIndexKeys):

Source/WebKit/chromium:

  • tests/IDBBackingStoreTest.cpp:

(WebCore::IDBBackingStoreTest::SetUp):
(IDBBackingStoreTest):
(WebCore::TEST_F):

  • tests/IDBFakeBackingStore.h:
12:41 PM Changeset in webkit [145384] by Lucas Forschler
  • 5 edits in branches/safari-534.59-branch/Source

Versioning

12:40 PM Changeset in webkit [145383] by Lucas Forschler
  • 1 copy in tags/Safari-534.59.3

New Tag.

12:39 PM Changeset in webkit [145382] by Lucas Forschler
  • 4 edits in branches/safari-536.29-branch/Source

Versioning

12:38 PM Changeset in webkit [145381] by Lucas Forschler
  • 1 copy in tags/Safari-536.29.7

New Tag.

12:24 PM Changeset in webkit [145380] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

CoreIPC crash in NetworkProcess after WebProcess crash.
<rdar://problem/13124146> and https://bugs.webkit.org/show_bug.cgi?id=112046

Reviewed by Alexey Proskuryakov.

  • NetworkProcess/SchedulableLoader.cpp:

(WebKit::SchedulableLoader::connectionToWebProcessDidClose): Don't null out the connection backpointer on crash.

12:16 PM Changeset in webkit [145379] by adamk@chromium.org
  • 12 edits in trunk

MutationCallback should be a WebIDL 'callback', not a [Callback] interface
https://bugs.webkit.org/show_bug.cgi?id=91406

Reviewed by Adam Barth.

Source/WebCore:

Spec: http://dom.spec.whatwg.org/#mutationcallback

Besides no longer calling handleEvent methods on passed-in objects,
throw a TypeError if a non-function is passed to the MutationObserver constructor.
This is per WebIDL: http://www.w3.org/TR/WebIDL/#es-callback-function

Updated MutationObserver constructor tests to exercise TypeError-throwing behavior.

  • bindings/js/JSMutationCallback.cpp:

(WebCore::JSMutationCallback::call): Call the callback directly instead of handing off to JSCallbackData; make return value void.
Use jsArray() to convert from WTF::Vector -> JSArray.

  • bindings/js/JSMutationCallback.h:

(JSMutationCallback): Rename handleEvent() to call(), make it void.

  • bindings/js/JSMutationObserverCustom.cpp:

(WebCore::JSMutationObserverConstructor::constructJSMutationObserver): Throw if passed a non-function.

  • bindings/v8/V8MutationCallback.cpp:

(WebCore::V8MutationCallback::V8MutationCallback): Take a v8::Function instead of a v8::Object.
(WebCore::V8MutationCallback::call): Call the callback directly instead of handing off to invokeCallback(); make return value void.
Use v8Array() to convert form WTF::Vector -> JSArray.

  • bindings/v8/V8MutationCallback.h:

(WebCore::V8MutationCallback::create): Take a v8::Function instead of a v8::Object.
(V8MutationCallback): ditto

  • bindings/v8/custom/V8MutationObserverCustom.cpp:

(WebCore::V8MutationObserver::constructorCustom): Throw if passed a non-function, cast to a v8::Function when constructing callback.

  • dom/MutationCallback.h:

(WebCore): Remove unnecessary typedef.
(MutationCallback): Rename handleEvent() to call(), make it void.

  • dom/MutationObserver.cpp:

(WebCore::MutationObserver::deliver): Update MutationCallback method name.

LayoutTests:

  • fast/dom/MutationObserver/mutation-observer-constructor-expected.txt:
  • fast/dom/MutationObserver/mutation-observer-constructor.html: Add test for TypeError-throwing.

Note that the Number and String cases already threw before this patch.

12:07 PM Changeset in webkit [145378] by jchaffraix@webkit.org
  • 5 edits in trunk

[CSS Grid Layout] Handle spanning grid items over specified grid tracks
https://bugs.webkit.org/show_bug.cgi?id=111918

Reviewed by Tony Chang.

Source/WebCore:

This change updates the containing block override logic to handle multiple
spanned tracks. This makes the multiple specified grid tracks case work and
will enable us to handle the minmax case once the computation logic has been
updated.

Test: fast/css-grid-layout/grid-item-spanning-resolution.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::logicalContentHeightForChild):
(WebCore::RenderGrid::layoutGridItems):
Updated these functions to use gridAreaBreadthForChild.

(WebCore::RenderGrid::gridAreaBreadthForChild):
Added this helper function to handle multiple spanned grid tracks.

  • rendering/RenderGrid.h: Added the previous function.

LayoutTests:

  • fast/css-grid-layout/grid-item-spanning-resolution-expected.txt:

We now pass all the tests.

11:43 AM Changeset in webkit [145377] by pdr@google.com
  • 33 edits in trunk/Source/WebCore

Replace SVG's static_cast<SVGElement> with toSVGElement()
https://bugs.webkit.org/show_bug.cgi?id=111651

Reviewed by Abhishek Arya.

toSVGElement is preferred over static_cast because bad casts can be caught on
our testing infrastructure. This patch replaces all static_cast<SVGElement>
instances with toSVGElement.

No new tests as this is just a refactoring.

  • css/CSSCursorImageValue.cpp:

(WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::matchAllRules):
(WebCore::StyleResolver::locateCousinList):
(WebCore::StyleResolver::canShareStyleWithElement):
(WebCore::StyleResolver::locateSharedStyle):

  • dom/Element.cpp:

(WebCore::Element::synchronizeAllAttributes):
(WebCore::Element::synchronizeAttribute):

  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::getElementCTM):
(WebCore::RenderSVGModelObject::checkIntersection):
(WebCore::RenderSVGModelObject::checkEnclosure):

  • rendering/svg/RenderSVGResource.cpp:

(WebCore::removeFromCacheAndInvalidateDependencies):

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::pathOnlyClipping):
(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
(WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
(WebCore::RenderSVGResourceClipper::hitTestClipContent):

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::buildPrimitives):

  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
(WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect):

  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::createTileImage):

  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::strokeWidth):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::strokeBoundingBox):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::layoutChildren):
(WebCore::SVGRenderSupport::applyStrokeStyleToContext):

  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeSVGPaintingResource):
(WebCore::writeStyle):
(WebCore::operator<<):

  • rendering/svg/SVGResources.cpp:

(WebCore::SVGResources::buildCachedResources):

  • rendering/svg/SVGTextLayoutEngine.cpp:

(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):

  • svg/SVGAElement.cpp:

(WebCore::SVGAElement::createRenderer):

  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::adjustForInheritance):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::viewportElement):
(WebCore::SVGElement::haveLoadedRequiredResources):
(WebCore::SVGElement::sendSVGLoadEventIfPossible):
(WebCore::SVGElement::childShouldCreateRenderer):

  • svg/SVGElement.h:

(WebCore::toSVGElement):
(WebCore):

  • svg/SVGFEImageElement.cpp:

(WebCore::SVGFEImageElement::buildPendingResource):

  • svg/SVGFilterElement.cpp:

(WebCore::SVGFilterElement::childShouldCreateRenderer):

  • svg/SVGGradientElement.cpp:

(WebCore::SVGGradientElement::buildStops):

  • svg/SVGLocatable.cpp:

(WebCore::SVGLocatable::nearestViewportElement):
(WebCore::SVGLocatable::farthestViewportElement):
(WebCore::SVGLocatable::computeCTM):

  • svg/SVGMPathElement.cpp:

(WebCore::SVGMPathElement::buildPendingResource):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::updateRelativeLengthsInformation):

  • svg/SVGSwitchElement.cpp:

(WebCore::SVGSwitchElement::childShouldCreateRenderer):

  • svg/SVGTextPathElement.cpp:

(WebCore::SVGTextPathElement::buildPendingResource):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::buildPendingResource):
(WebCore::SVGUseElement::toClipPath):
(WebCore::SVGUseElement::rendererClipChild):
(WebCore::SVGUseElement::buildInstanceTree):
(WebCore::SVGUseElement::hasCycleUseReferencing):
(WebCore::SVGUseElement::expandUseElementsInShadowTree):
(WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):

  • svg/SVGViewSpec.cpp:

(WebCore::SVGViewSpec::viewTarget):

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::buildPendingResource):

  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::platformApplySoftware):

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

[SOUP] ResourceRequest::updateSoupMessage doesn't update the URI of the soup message
https://bugs.webkit.org/show_bug.cgi?id=112040

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-03-11
Reviewed by Gustavo Noronha Silva.

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::updateSoupMessage): Update the soup
message URI with the ResourceRequest URL.

11:08 AM WebKitGTK/2.0.x edited by Martin Robinson
(diff)
10:37 AM Changeset in webkit [145375] by alecflett@chromium.org
  • 10 edits in trunk/Source

IndexedDB: Protect against key prefix overflows
https://bugs.webkit.org/show_bug.cgi?id=111138

Reviewed by Tony Chang.

Source/WebCore:

This reworks the boundary checking for all databaseId,
objectStoreId, and indexId, including negative and
zero-based ids. All entrypoints into IDBLevelDBCoding
are protected with explicit checks and all internal
uses of KeyPrefix are protected with ASSERTs in the
various constructors.

Tests: WebKit unit tests IDBBackingStoreTest.cpp in WebKit/chromium

  • Modules/indexeddb/IDBBackingStore.h: Make all public methods boolean-based for errors.
  • Modules/indexeddb/IDBLevelDBCoding.h: Add methods for checking databaseId, objectStoreId, and indexId.

Source/WebKit/chromium:

Add tests for invalid indexIds in basic get/put operations.

10:32 AM Changeset in webkit [145374] by jchaffraix@webkit.org
  • 15 edits
    14 deletes in branches/chromium/1410

Merge 145296

Unreviewed, rolling out r142015.
http://trac.webkit.org/changeset/142015
https://bugs.webkit.org/show_bug.cgi?id=111904

The change caused 2 major regressions (bug 111091 and bug
111595) and Pravin doesn't have time to investigate them
(Requested by jchaffraix on #webkit).

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

Source/WebCore:

  • dom/Node.cpp:

(WebCore::Node::diff):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::childBecameNonInline):
(WebCore):

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderBoxModelObject.h:

(WebCore::RenderBoxModelObject::childBecameNonInline):
(RenderBoxModelObject):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::childBecameNonInline):
(WebCore):

  • rendering/RenderInline.h:

(RenderInline):

  • rendering/RenderObject.cpp:

(WebCore):
(WebCore::RenderObject::handleDynamicFloatPositionChange):
(WebCore::RenderObject::styleWillChange):
(WebCore::RenderObject::styleDidChange):

  • rendering/RenderObject.h:

(RenderObject):

LayoutTests:

  • fast/css/first-letter-removed-added-expected.txt:
  • fast/dynamic/absolute-positioned-to-static-positioned-expected.txt: Removed.
  • fast/dynamic/absolute-positioned-to-static-positioned.html: Removed.
  • fast/dynamic/floating-to-non-floating-expected.txt: Removed.
  • fast/dynamic/floating-to-non-floating.html: Removed.
  • fast/dynamic/non-floating-to-floating-expected.txt: Removed.
  • fast/dynamic/non-floating-to-floating.html: Removed.
  • fast/dynamic/resources/helper-bug91665.js: Removed.
  • fast/dynamic/resources/style-bug91665.css: Removed.
  • fast/dynamic/static-positioned-to-absolute-positioned-expected.txt: Removed.
  • fast/dynamic/static-positioned-to-absolute-positioned.html: Removed.
  • fullscreen/full-screen-fixed-pos-parent-expected.txt:
  • platform/chromium-mac/fast/repaint/absolute-position-change-containing-block-expected.png:
  • platform/chromium-mac/fast/repaint/fixed-to-relative-position-with-absolute-child-expected.png:
  • platform/chromium-win/fast/dynamic/002-expected.txt:
  • platform/chromium/fast/dynamic/002-expected.txt:
  • platform/chromium/fast/repaint/absolute-position-change-containing-block-expected.png: Removed.
  • platform/chromium/fast/repaint/fixed-to-relative-position-with-absolute-child-expected.png: Removed.
  • platform/mac/fast/dynamic/002-expected.txt:
  • platform/mac/fast/repaint/absolute-position-change-containing-block-expected.png: Removed.
  • platform/mac/fast/repaint/fixed-to-relative-position-with-absolute-child-expected.png: Removed.

TBR=jchaffraix@webkit.org

10:17 AM Changeset in webkit [145373] by commit-queue@webkit.org
  • 4 edits in trunk

[BlackBerry] Disable MathML support
https://bugs.webkit.org/show_bug.cgi?id=111929

Patch by Jeff Rogers <jrogers@rim.com> on 2013-03-11
Reviewed by Rob Buis.

.:

  • Source/cmake/OptionsBlackBerry.cmake:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
10:07 AM Changeset in webkit [145372] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] PlatformBlackBerry.cmake: create thin AR archives
https://bugs.webkit.org/show_bug.cgi?id=110580

Patch by Xan Lopez <xlopez@igalia.com> on 2013-03-11
Reviewed by Rob Buis.

Otherwise libwebcore.a goes beyond the 4Gb file size limit and the
link phase fails.

  • PlatformBlackBerry.cmake:
9:07 AM Changeset in webkit [145371] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: fix styles toolbar in the vertical mode.
Not reviewed: swapped two lines.

  • inspector/front-end/ElementsPanel.js:

(WebInspector.ElementsPanel.prototype._splitVertically):

8:59 AM QtWebKitBuildBots edited by zarvai@inf.u-szeged.hu
(diff)
8:59 AM Changeset in webkit [145370] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [CodeMirror] add token highlight feature
https://bugs.webkit.org/show_bug.cgi?id=112009

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

Handle CodeMirror's "cursorActivity" event, check selection for being
a word and highlight all its occurrences via CodeMirror.addOverlay method.

No new tests.

  • inspector/front-end/CodeMirrorTextEditor.js:

(WebInspector.CodeMirrorTextEditor):
(WebInspector.CodeMirrorTextEditor.TokenHighlighter):
(WebInspector.CodeMirrorTextEditor.TokenHighlighter.prototype._cursorChange):
(WebInspector.CodeMirrorTextEditor.TokenHighlighter.prototype._isWord):
(WebInspector.CodeMirrorTextEditor.TokenHighlighter.prototype._removeHighlight):
(WebInspector.CodeMirrorTextEditor.TokenHighlighter.prototype._addHighlight.nextToken):
(WebInspector.CodeMirrorTextEditor.TokenHighlighter.prototype._addHighlight):

  • inspector/front-end/cm/cmdevtools.css:

(.cm-token-highlight):

8:51 AM Changeset in webkit [145369] by ap@apple.com
  • 7 edits in trunk/Source/WebKit2

Make it possible to reuse sandbox extensions
https://bugs.webkit.org/show_bug.cgi?id=111883

Reviewed by Anders Carlsson.

This allows for properly keeping extensions in NetworkBlobRegistry for as long as
they are needed.

The patch also fixes a bug where extensions would leak when navigating between
file:// pages.

  • NetworkProcess/SchedulableLoader.cpp:

Revoke the extensions, but don't invalidate - we may need them later.

  • Shared/Downloads/Download.cpp:

(WebKit::Download::didFinish):
(WebKit::Download::didFail):
(WebKit::Download::didCancel):
Replaced invalidate() with revoke() and clearing out. SandboxExtension destructor
now requires revocations wto be balanced, as otherwise understanding dual reference
counting in SandboxExtension would be too difficult.

  • Shared/SandboxExtension.h: We now keep track of how many times the extension

was consumed. Eventually, we should refactor the class to not have such duplicate
reference counting.

  • Shared/mac/SandboxExtensionMac.mm:

(WebKit::SandboxExtension::SandboxExtension): Initialize use count.
(WebKit::SandboxExtension::~SandboxExtension): We now require consume/revoke calls
to be balanced. This is not hard to do in existing usage, and makes the design much
more reliable.
(WebKit::SandboxExtension::revoke): Don't permanently destroy the extension when
invalidatid, we may need it in the future.
(WebKit::SandboxExtension::consume): Added use counting.

  • Shared/WebMemorySampler.cpp: (WebKit::WebMemorySampler::stop): This extension

is not going to be reused.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::performDragControllerAction): Pending extensions are not consumed,
so there is no need to revoke.
(WebKit::WebPage::SandboxExtensionTracker::invalidate): Pending extension is not
consumed, and the other two always are.
(WebKit::WebPage::SandboxExtensionTracker::setPendingProvisionalSandboxExtension):
Pending extension is never consumed in place, no need to revoke.
(WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad): Do not unset
reused committed extension yet - we may need it later if provisional load fails.
Thanks to use counting, we can now consume the same extension as both committed
and provisional.
(WebKit::WebPage::SandboxExtensionTracker::didCommitProvisionalLoad): Now the
committed extension can be revoked and replaced.
(WebKit::WebPage::SandboxExtensionTracker::didFailProvisionalLoad): Just revoke
provisional extension, committed one is still in place.

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

Web Inspector: [CodeMirror] set indentation size according to devtools settings
https://bugs.webkit.org/show_bug.cgi?id=111717

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

Set up codemirror indent size according to devtools settings.

No new tests.

  • inspector/front-end/CodeMirrorTextEditor.js:

(.get if):
(WebInspector.CodeMirrorTextEditor):

8:47 AM Changeset in webkit [145367] by yurys@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: add per image statistics to the native memory snapshot
https://bugs.webkit.org/show_bug.cgi?id=112011

Reviewed by Pavel Feldman.

Added per-image statistics to the native memory distribution table.

  • inspector/front-end/HeapSnapshotProxy.js:

(WebInspector.HeapSnapshotWorker):
(WebInspector.HeapSnapshotWorker.prototype.createLoader):
(WebInspector.HeapSnapshotWorker.prototype.wrapCallback):
(WebInspector.HeapSnapshotWorker.prototype.callFactoryMethod):
(WebInspector.HeapSnapshotProxyObject.prototype.callFactoryMethod): the method now accepts
proxy constructor function instead of its name. This eliminates unnecessary function lookup.
(WebInspector.HeapSnapshotLoaderProxy):
(WebInspector.HeapSnapshotLoaderProxy.prototype.close):
(WebInspector.HeapSnapshotProxy.prototype.createEdgesProvider):
(WebInspector.HeapSnapshotProxy.prototype.createRetainingEdgesProvider):
(WebInspector.HeapSnapshotProxy.prototype.createAddedNodesProvider):
(WebInspector.HeapSnapshotProxy.prototype.createDeletedNodesProvider):
(WebInspector.HeapSnapshotProxy.prototype.createNodesProvider):
(WebInspector.HeapSnapshotProxy.prototype.createNodesProviderForClass):
(WebInspector.HeapSnapshotProxy.prototype.createNodesProviderForDominator):
(WebInspector.NativeHeapSnapshotProxy):
(WebInspector.NativeHeapSnapshotProxy.prototype.images):

  • inspector/front-end/HeapSnapshotView.js:

(WebInspector.HeapProfileHeader.prototype.snapshotProxyConstructor):
(WebInspector.HeapProfileHeader.prototype._setupWorker):

  • inspector/front-end/NativeHeapSnapshot.js:

(WebInspector.NativeHeapSnapshot.prototype.images):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeSnapshotNode):
(WebInspector.NativeSnapshotNode.prototype._createSizeCell):
(WebInspector.NativeSnapshotNode.prototype._populate):
(WebInspector.NativeSnapshotNode.prototype._addChildrenFromGraph):
(WebInspector.NativeSnapshotNode.prototype._addImageDetails.didLoad.didReceiveImages):
(WebInspector.NativeSnapshotNode.prototype._addImageDetails):
(WebInspector.NativeSnapshotProfileHeader.prototype.snapshotProxyConstructor):

8:43 AM Changeset in webkit [145366] by allan.jensen@digia.com
  • 4 edits in trunk/Source/WebCore

[Qt] Enable tiled shadow blur for inset box shadows
https://bugs.webkit.org/show_bug.cgi?id=111736

Reviewed by Noam Rosenthal.

Paint inset box-shadows using the optimized tiled shadow blur, instead of
applying shadow blur to the entire painted rect.

This optimizes the default CSS on common pastebin sites.

Tested by existing tests.

  • platform/graphics/GraphicsContext.cpp:
  • platform/graphics/ShadowBlur.cpp:

(WebCore::ShadowBlur::drawInsetShadowWithTiling):

Must set fill color before calling clearShadow, as that might clear m_color.

(WebCore::ShadowBlur::drawLayerPieces):

Ditto.

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::fillRectWithRoundedHole):

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

[BlackBerry] SelectionHandler: bring back m_lastSelection attribute
https://bugs.webkit.org/show_bug.cgi?id=111972

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-11
Reviewed by Rob Buis.

This was removed in r144515 but is still needed by
SelectionHandler::selectionPositionChanged().

  • WebKitSupport/SelectionHandler.h:

(SelectionHandler):

8:31 AM Changeset in webkit [145364] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

(tests) make nodesFromRect.js print a list of nodes that were found
https://bugs.webkit.org/show_bug.cgi?id=111793

Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-03-11
Reviewed by Allan Sandfeld Jensen.

  • fast/dom/nodesFromRect/resources/nodesFromRect.js:

(nodeToString):
(nodeListToString):
(check):
(nodesFromRectAsString):
Move node prettyprinting code from nodesFromRectAsString to new
functions nodeToString and nodeListToString, and make use of it in
check().
I've also converted the nodeType checks to use the constants on Node
instead of using magic numbers.

8:26 AM Changeset in webkit [145363] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] GraphicsLayer: rename notifySyncRequired to notifyFlushRequired
https://bugs.webkit.org/show_bug.cgi?id=111997

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-03-11
Reviewed by Rob Buis.

This changed in r130439 but the old name was introduced again by
mistake in r144465.

  • platform/graphics/blackberry/GraphicsLayerBlackBerry.h:

(WebCore::GraphicsLayerBlackBerry::notifyFlushRequired):

  • platform/graphics/blackberry/LayerWebKitThread.cpp:

(WebCore::LayerWebKitThread::setNeedsCommit):

7:43 AM Changeset in webkit [145362] by tkent@chromium.org
  • 6 edits in trunk

Inappropriate validation message for required number/date input elements
https://bugs.webkit.org/show_bug.cgi?id=111982

Reviewed by Kentaro Hara.

Source/WebCore:

For validation message, badInput messages should take precedence
over valueMissing messages because users already filled out the
field with a bad value.

Tests: Update fast/forms/validationMessage.html

  • html/InputType.cpp:

(WebCore::InputType::validationMessage):
Check badInput first.

LayoutTests:

  • fast/forms/validationMessage-expected.txt:
  • fast/forms/validationMessage.html:
  • platform/chromium/fast/forms/validationMessage-expected.txt:
7:19 AM Changeset in webkit [145361] by Christophe Dumez
  • 2 edits in trunk/Tools

[EFL][GTK][WKTR] Regression(r145231): Undefined symbol in libTestRunnerInjectedBundle.so
https://bugs.webkit.org/show_bug.cgi?id=111970

Reviewed by Chris Fleizach.

Provide dummy implementation for AccessibilityUIElement::supportedActions() in ATK
or libTestRunnerInjectedBundle.so cannot be loaded in EFL / GTK otherwise, due to
undefined symbol.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::supportedActions):
(WTR):

6:54 AM Changeset in webkit [145360] by g.czajkowski@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL] Build fix after r143192 when SPELLCHECK is off

Unreviewed build fix when SPELLCHECK macro is off.

  • UIProcess/efl/TextCheckerEfl.cpp:

(WebKit):

6:15 AM Changeset in webkit [145359] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

WebKitWebPage::document-loaded signal emitted multiple times

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-03-11
Reviewed by Carlos Garcia Campos.

This happens in websites with multiple frames, because the signal
is emitted for every frame.

  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:

(didFinishDocumentLoadForFrame): Add an early return to make sure
the WebKitWebPage::document-loaded signal is only emitted for the
main frame.

6:09 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
6:07 AM Changeset in webkit [145358] by Carlos Garcia Campos
  • 13 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

[GTK][WK2] Add API to retrieve a snapshot from a webview
https://bugs.webkit.org/show_bug.cgi?id=98270

Patch by Claudio Saavedra <Claudio Saavedra> on 2013-03-10
Reviewed by Carlos Garcia Campos.

This adds the GTK+ API necessary to retrieve a snapshot from a
webview asynchronously. The API uses the injected bundle
internally to get the snapshot from the WebProcess.

  • UIProcess/API/gtk/WebKitError.cpp:

(webkit_snapshot_error_quark): Add snapshot API related error
quark.

  • UIProcess/API/gtk/WebKitError.h: Add snapshot error handling.
  • UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:

(didReceiveWebViewMessageFromInjectedBundle): Handle the new
"DidGetSnapshot" message.

  • UIProcess/API/gtk/WebKitPrivate.h: Add SnapshotRegion enum.
  • UIProcess/API/gtk/WebKitWebView.cpp:

(_WebKitWebViewPrivate): Add a map for the snapshot results.
(GetSnapshotAsyncData):
(webKitWebViewDidReceiveSnapshot):
(webKitSnapshotRegionToSnapshotRegion): Helper method for casting
the region option enumeration.
(generateSnapshotCallbackID): Method to generate unique callback
ids.
(webkit_web_view_get_snapshot):
(webkit_web_view_get_snapshot_finish): New snapshotting API.

  • UIProcess/API/gtk/WebKitWebView.h: Ditto.
  • UIProcess/API/gtk/WebKitWebViewPrivate.h: Add the private method

to handle a received snapshot.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add the new API

bits.

  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

(cairoSurfacesEqual): Add helper to compare cairo_surface_t
structs.
(testWebViewSnapshot): New test.
(beforeAll): Add the new test.

  • UIProcess/API/gtk/tests/WebViewTest.cpp:

(WebViewTest::selectAll): Add method to help test snapshots
including selection.

  • UIProcess/API/gtk/tests/WebViewTest.h: Ditto
  • WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:

(webkitWebExtensionDidReceiveMessageToPage): Add this method. It
handles the new message "GetSnapshot".
(didReceiveMessageToPage): Ditto.
(webkitWebExtensionCreate): Register method above.

5:43 AM Changeset in webkit [145357] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: extract common parts of native profiles
https://bugs.webkit.org/show_bug.cgi?id=111965

Reviewed by Alexander Pavlov.

Extracted common parts of native profiles into NativeProfileTypeBase. Memory
domain dispatcher is now a separate class as it is shared by two native memory
profile types.

Both native memory profile types now capture native heap graph.

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.MemoryAgentDispatcher.instance):
(WebInspector.NativeProfileTypeBase.prototype.buttonClicked.didReceiveMemorySnapshot):
(WebInspector.NativeProfileTypeBase.prototype.buttonClicked):
(WebInspector.NativeSnapshotProfileType):
(WebInspector.NativeSnapshotProfileHeader.prototype._didReceiveMemorySnapshot):
(WebInspector.NativeMemoryProfileType):
(WebInspector.NativeMemoryProfileHeader.prototype._updateSnapshotStatus):
(WebInspector.NativeMemoryProfileHeader.prototype._didReceiveMemorySnapshot):

5:06 AM Changeset in webkit [145356] by Christophe Dumez
  • 4 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Unskip most of the websocket hybi test cases on EFL port as they
are passing nowadays.

  • platform/efl-wk1/TestExpectations:
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
4:48 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
Add new proposed merge (diff)
4:11 AM Changeset in webkit [145355] by commit-queue@webkit.org
  • 5 edits in trunk

[chromium] Android apk targets should depend directly on Java library targets
https://bugs.webkit.org/show_bug.cgi?id=111746

Patch by Chris Hopman <cjhopman@chromium.org> on 2013-03-11
Reviewed by Eric Seidel.

Source/WebKit/chromium:

  • WebKitUnitTests.gyp:

Make webkit_unit_tests_apk depend directly on base_java and net_java.

Tools:

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

Make DumpRenderTree_apk depend directly on base_java and net_java.

  • TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:

Make TestWebKitAPI_apk depend directly on base_java.

3:56 AM Changeset in webkit [145354] by commit-queue@webkit.org
  • 15 edits
    4 deletes in trunk/Source/WebCore

Unreviewed, rolling out r145349.
http://trac.webkit.org/changeset/145349
https://bugs.webkit.org/show_bug.cgi?id=111966

Missing code history of Element,PageRuleCollector. (Requested
by tasak on #webkit).

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

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSAllInOne.cpp:
  • css/DocumentRuleSets.cpp:

(WebCore::ShadowDistributedRules::collectMatchRequests):

  • css/DocumentRuleSets.h:
  • css/ElementRuleCollector.cpp: Removed.
  • css/ElementRuleCollector.h: Removed.
  • css/PageRuleCollector.cpp: Removed.
  • css/PageRuleCollector.h: Removed.
  • css/StyleResolver.cpp:

(WebCore::leftToRightDeclaration):
(WebCore):
(WebCore::rightToLeftDeclaration):
(WebCore::StyleResolver::State::ensureRuleList):
(WebCore::StyleResolver::State::clear):
(WebCore::StyleResolver::addMatchedProperties):
(WebCore::StyleResolver::addElementStyleProperties):
(MatchingUARulesScope):
(WebCore::MatchingUARulesScope::MatchingUARulesScope):
(WebCore::MatchingUARulesScope::~MatchingUARulesScope):
(WebCore::MatchingUARulesScope::isMatchingUARules):
(WebCore::StyleResolver::collectMatchingRules):
(WebCore::StyleResolver::collectMatchingRulesForRegion):
(WebCore::StyleResolver::sortAndTransferMatchedRules):
(WebCore::StyleResolver::matchScopedAuthorRules):
(WebCore::StyleResolver::matchHostRules):
(WebCore::StyleResolver::matchAuthorRules):
(WebCore::StyleResolver::matchUserRules):
(WebCore::StyleResolver::matchUARules):
(WebCore::StyleResolver::collectMatchingRulesForList):
(WebCore::compareRules):
(WebCore::StyleResolver::sortMatchedRules):
(WebCore::StyleResolver::matchAllRules):
(WebCore::StyleResolver::State::initForStyleResolve):
(WebCore::StyleResolver::styleSharingCandidateMatchesRuleSet):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::pseudoStyleForElement):
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::pseudoStyleRulesForElement):
(WebCore::StyleResolver::ruleMatches):
(WebCore::StyleResolver::checkRegionSelector):
(WebCore::comparePageRules):
(WebCore::StyleResolver::matchPageRules):
(WebCore::checkPageSelectorComponents):
(WebCore::StyleResolver::matchPageRulesForList):
(WebCore::StyleResolver::isLeftPage):
(WebCore::StyleResolver::isFirstPage):
(WebCore::StyleResolver::pageName):

  • css/StyleResolver.h:

(WebCore::MatchRequest::MatchRequest):
(MatchRequest):
(StyleResolver):
(MatchResult):
(WebCore::StyleResolver::State::State):
(State):
(WebCore::StyleResolver::State::takeRuleList):
(WebCore::StyleResolver::State::setSameOriginOnly):
(WebCore::StyleResolver::State::isSameOriginOnly):
(WebCore::StyleResolver::State::pseudoStyleRequest):
(WebCore::StyleResolver::State::setMode):
(WebCore::StyleResolver::State::mode):
(WebCore::StyleResolver::State::matchedRules):
(WebCore::StyleResolver::State::addMatchedRule):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::willMatchRule):

  • inspector/InspectorCSSAgent.h:

(WebCore):
(InspectorCSSAgent):

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willMatchRuleImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore):
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willMatchRule):

3:44 AM Changeset in webkit [145353] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[V8] Fix V8InjectedScriptManager
https://bugs.webkit.org/show_bug.cgi?id=111968

Patch by Marja Hölttä <marja@chromium.org> on 2013-03-11
Reviewed by Kentaro Hara.

This is needed to make the inspector work after templates for main world
and non-main worlds are separated (bug 111724).

No new tests (no changes in functionality).

  • bindings/v8/custom/V8InjectedScriptManager.cpp:

(WebCore::InjectedScriptManager::canAccessInspectedWindow):

3:36 AM Changeset in webkit [145352] by hayato@chromium.org
  • 2 edits in trunk/Source/WebCore

Make sure that CSSSelector::setValue() is never called after parsing its pseudoType.
https://bugs.webkit.org/show_bug.cgi?id=111957

Reviewed by Hajime Morrita.

It'd be nice to have an assertion here since
CSSSelector::pseudoType() will never parse a new value after it
parses a value and m_pseudoType is set to non-PseudoNotParsed.

No new tests (no change in behaviour).

  • css/CSSSelector.h:

(WebCore::CSSSelector::setValue):

2:55 AM Changeset in webkit [145351] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Mark LayoutTests/html5lib/generated/run-tests16-data.html as slow
https://bugs.webkit.org/show_bug.cgi?id=111960

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

Related to V8 performance issue: https://code.google.com/p/v8/issues/detail?id=2567

  • platform/chromium/TestExpectations:
2:53 AM Changeset in webkit [145350] by zarvai@inf.u-szeged.hu
  • 6 edits in trunk/LayoutTests

[Qt] Unrewieved gardening. Cleaning up some skip.

  • platform/qt-5.0-wk1/TestExpectations:
  • platform/qt-5.0-wk2/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/qt/editing/pasteboard/paste-text-016-expected.txt: Rebaselining after r145296.
  • platform/qt/fast/dynamic/002-expected.txt: Rebaselining after r145296.
2:50 AM Changeset in webkit [145349] by tasak@google.com
  • 15 edits
    4 adds in trunk/Source/WebCore

[Refactoring] Implement RuleCollector
https://bugs.webkit.org/show_bug.cgi?id=109916

Reviewed by Antti Koivisto.

Implemented rule collector for an element and collector for a page.
Not all members in class State are required entire while resolving
a style.

No new tests, because just refactoring.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSAllInOne.cpp:

Added ElementRuleCollector and PageRuleCollector.

  • css/DocumentRuleSets.cpp:

(WebCore::ShadowDistributedRules::collectMatchRequests):
Since behaviorAtBoundary is a state owned by ElementRuleCollector,
removed from here.

  • css/DocumentRuleSets.h:

(WebCore::ShadowDistributedRules::isEmpty):
Added to quickly check whether there exist any ShadowDistributedRules
or not.

  • css/ElementRuleCollector.cpp: Copied from Source/WebCore/css/StyleResolver.cpp.

(WebCore):
(WebCore::ElementRuleCollector::matchedResult):
(WebCore::ElementRuleCollector::matchedRuleList):
(WebCore::ElementRuleCollector::addMatchedRule):
(WebCore::ElementRuleCollector::clearMatchedRules):
(WebCore::ElementRuleCollector::ensureRuleList):
(WebCore::ElementRuleCollector::addElementStyleProperties):
(WebCore::ElementRuleCollector::collectMatchingRules):
(WebCore::ElementRuleCollector::collectMatchingRulesForRegion):
(WebCore::ElementRuleCollector::sortAndTransferMatchedRules):
(WebCore::ElementRuleCollector::matchScopedAuthorRules):
(WebCore::ElementRuleCollector::matchHostRules):
(WebCore::ElementRuleCollector::matchShadowDistributedRules):
(WebCore::ElementRuleCollector::matchAuthorRules):
(WebCore::ElementRuleCollector::matchUserRules):
(WebCore::ElementRuleCollector::matchUARules):
(WebCore::ElementRuleCollector::ruleMatches):
(WebCore::ElementRuleCollector::collectMatchingRulesForList):
(WebCore::ElementRuleCollector::sortMatchedRules):
(WebCore::ElementRuleCollector::matchAllRules):
Moved these methods from StyleResolver to this class.
(WebCore::ElementRuleCollector::hasAnyMatchingRules):
This method is used for checking whether a given element can share
a cache.

  • css/ElementRuleCollector.h: Copied from Source/WebCore/css/StyleResolver.h.

(WebCore):
(WebCore::ElementRuleCollector::ElementRuleCollector):
Use styleResolver instance to initialize its member variables, i.e.
SelectorFilter, RuleSets, InspectorCSSOMWrappers, and
StyleScopedResolver.
(ElementRuleCollector):
(WebCore::ElementRuleCollector::setMode):
(WebCore::ElementRuleCollector::setPseudoStyleRequest):
(WebCore::ElementRuleCollector::setSameOriginOnly):
(WebCore::ElementRuleCollector::setRegionForStyling):
Mode, SameOriginOnly, RegionForStyling are only used while collecting
matched rules.
(WebCore::ElementRuleCollector::setMedium):
Need to know which default stylesheet should be looked up.
(WebCore::ElementRuleCollector::document):

  • css/PageRuleCollector.cpp: Copied from Source/WebCore/css/StyleResolver.cpp.

(WebCore::comparePageRules):
(WebCore::PageRuleCollector::isLeftPage):
(WebCore::PageRuleCollector::isFirstPage):
(WebCore::PageRuleCollector::pageName):
(WebCore::PageRuleCollector::matchAllPageRules):
(WebCore::PageRuleCollector::matchPageRules):
(WebCore::checkPageSelectorComponents):
(WebCore::PageRuleCollector::matchPageRulesForList):
Moved from StyleResolver.

  • css/PageRuleCollector.h: Copied from Source/WebCore/css/StyleResolver.h.

(WebCore):
(WebCore::PageRuleCollector::PageRuleCollector):
(PageRuleCollector):
(WebCore::PageRuleCollector::matchedResult):

  • css/StyleResolver.cpp:

(WebCore):
(WebCore::StyleResolver::State::clear):
(WebCore::StyleResolver::MatchResult::addMatchedProperties):
(WebCore::StyleResolver::State::initForStyleResolve):
(WebCore::StyleResolver::styleSharingCandidateMatchesRuleSet):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::pseudoStyleForElement):
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::pseudoStyleRulesForElement):
(WebCore::StyleResolver::applyMatchedProperties):

  • css/StyleResolver.h:

(WebCore::MatchRequest::MatchRequest):
Removed behaviorAtBoundary. Instead, ElementRuleCollector have the
state.
(MatchRequest):
(WebCore::StyleResolver::selectorFilter):
Added to obtain SelectorFilter in ElementRuleCollector's constructor.
(StyleResolver):
(MatchResult):
(WebCore::StyleResolver::State::State):
To pass ASSERT in StyleResolver::applyProperties, need to keep
m_regionForStyling.
(State):
(WebCore::StyleResolver::State::regionForStyling):
(WebCore::StyleResolver::State::useSVGZoomRules):
(WebCore::StyleResolver::hasSelectorForId):
(WebCore):
(WebCore::checkRegionSelector):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::willMatchRule):
Removed StyleResolver from its parameter list. Instead, added
InspectorCSSOMWrappers and DocumentStyleSheetCollection.

  • inspector/InspectorCSSAgent.h:

(WebCore):
(InspectorCSSAgent):

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willMatchRuleImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore):
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willMatchRule):

2:48 AM Changeset in webkit [145348] by mkwst@chromium.org
  • 5 edits in trunk/Source/WebCore

XSSAuditor doesn't need a copy of the original document's body.
https://bugs.webkit.org/show_bug.cgi?id=111946

Reviewed by Darin Adler.

The XSSAuditor currently copies the original HTTP body of the document
that's being audited in order to include it into a violation report if
reflected XSS is detected. We don't actually need to do this, as we
have access to the original request information from inside the
XSSAuditorDelegate where the report is generated.
XSSAuditorDelegate::didBlockScript ASSERTs that it's running on the
main thread, so it should be safe to reach through the document's
loader to get that information directly, rather than passing it from
thread to thread via XSSInfo object properties.

  • html/parser/XSSAuditor.h:
  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::init):
(WebCore::XSSAuditor::filterToken):
(WebCore::XSSAuditor::isSafeToSendToAnotherThread):

  • html/parser/XSSAuditorDelegate.h:

(WebCore::XSSInfo::create):
(WebCore::XSSInfo::XSSInfo):

  • html/parser/XSSAuditorDelegate.cpp:

(WebCore::XSSInfo::isSafeToSendToAnotherThread):

Drop the XSSInfo and XSSAuditor properties that held an
isolatedCopy of the the original HTTP body. Depending on the
document's size, this could be a significant savings.

(WebCore::XSSAuditorDelegate::didBlockScript):

Reach into the document's loader's original request in order to
grab the body as a String, and feed that into the violation report
object.

As a drive-by, this patch creates a FrameLoader* temporary
variable to minimize repetition in this area of the code. We use
the loader a few times, but should only have to grab it once.

2:40 AM Changeset in webkit [145347] by silviapf@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] REGRESSION: Closed Captions button not showing properly
https://bugs.webkit.org/show_bug.cgi?id=109871

Reviewed by Jer Noble.

No new tests - covered by existing tests.

Most of the patch was in the meantime covered by a patch to
https://bugs.webkit.org/show_bug.cgi?id=111109 .
This changes a static Chromium-only function name to be consistent with
parent class function names.

  • rendering/RenderMediaControlsChromium.cpp:

(WebCore::paintMediaToggleClosedCaptionsButton):
(WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
Rename paintMediaClosedCaptionsButton to paintMediaToggleClosedCaptionsButton.

1:43 AM Changeset in webkit [145346] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

RenderSnapshottedPlugIn paints in PaintPhaseBlockBackground instead of PaintPhaseForeground
https://bugs.webkit.org/show_bug.cgi?id=111962
<rdar://problem/13289335>

Reviewed by Dean Jackson.

RenderSnapshottedPlugIn should paint its snapshot during the foreground
painting phase, instead of BlockBackground, to match normal plugin painting.

  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore::RenderSnapshottedPlugIn::paint):

1:32 AM Changeset in webkit [145345] by jochen@chromium.org
  • 8 edits in trunk

[chromium] remove obsolete user gesture methods from WebFrame
https://bugs.webkit.org/show_bug.cgi?id=111696

Reviewed by Adam Barth.

Source/WebKit/chromium:

  • public/WebFrame.h:

(WebFrame):

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchDidNavigateWithinPage):

  • src/WebFrameImpl.cpp:
  • src/WebFrameImpl.h:

(WebFrameImpl):

Tools:

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

(WebTestRunner::TestPlugin::handleInputEvent):

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
1:30 AM Changeset in webkit [145344] by apavlov@chromium.org
  • 13 edits in branches/chromium/1410

Merge 144626

transition properties can't be found in CSSStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=110011

Reviewed by Antti Koivisto.

Source/WebCore:

The previous approach for handling the unprefixing was to alias the
unprefixed properties with the prefixed ones in CSSPropertyNames.in.
Unfortunately it will alias the properties in the parsing code which will just
identically parse the two versions. This means that when we populate StylePropertySet
we do not have information whether we just parsed the prefixed, the
unprefixed properties or we parsed both. The patch takes another
approach by creating two distinct sets of properties (unprefixed and
prefixed). Each properties have their own id and we now handle them in
the parsing code as disctints properties and add both versions to the
declared style. In order to avoid properties getting out of sync,
this patch adds few facilities to StylePropertySet to update the
prefixed and the unprefixed entries. Finally the style resolution
happens only for the prefixed version (to limit the size of this patch)
and the unprefixed versions are not resolved. This is to avoid creating
the animation objects twice for the resolved style.

Test : transitions/transitions-parsing.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::addPropertyWithPrefixingVariant): Always add the
prefixed and the unprefixed property even if only one is specified.
(WebCore):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseTransitionShorthand): Add both prefixed and
unprefixed longhands to the declarated style.
(WebCore::CSSParser::parseAnimationProperty):

  • css/CSSParser.h:

(CSSParser):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSProperty.h:

(WebCore:: prefixingVariantForPropertyId): This function takes a given
property id and returns its prefixed or unprefixed id if it exists. If
not it returns the same id.
(WebCore):

  • css/CSSPropertyNames.in:
  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue):
(WebCore::StylePropertySet::removeShorthandProperty):
(WebCore::StylePropertySet::removeProperty):
(WebCore::StylePropertySet::removeProperty): Remove
also the prefixed or unprefixed shorthand if it exists.
(WebCore):
(WebCore::StylePropertySet::setProperty):
(WebCore::StylePropertySet:: appendPrefixingVariantProperty):
(WebCore::StylePropertySet::setPrefixingVariantProperty): If it
exists a unprefixed or prefixed counterpart of the property we're
trying to set, then we update the other one.
(WebCore::StylePropertySet::asText):
(WebCore::StylePropertySet::mergeAndOverrideOnConflict):

  • css/StylePropertySet.h:

(StylePropertySet):

  • css/StylePropertyShorthand.cpp:

(WebCore::transitionShorthand):
(WebCore):
(WebCore::shorthandForProperty): Define the transitions unprefixed
longhands.

  • css/StylePropertyShorthand.h:

(WebCore):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty): StyleBuilder will handle the
resolution and the creation of the animations for the style. As the
declarated style now contains declarations for the prefixed and
unprefixed property we do not want to resolve two times and create duplicate animations.
Therefore when we try to resolve the unprefixed version we just bail out.

LayoutTests:

Updated layout test to cover the bug.

  • transitions/transitions-parsing-expected.txt:
  • transitions/transitions-parsing.html:

TBR=alexis@webkit.org
Review URL: https://codereview.chromium.org/12470005

12:49 AM Changeset in webkit [145343] by zandobersek@gmail.com
  • 4 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Removing a few expectations for tests that were rolled out in r145296.
  • platform/gtk/editing/pasteboard/paste-text-016-expected.txt: Rebaselining after r145296.
  • platform/gtk/fast/dynamic/002-expected.txt: Ditto.
12:16 AM Changeset in webkit [145342] by apavlov@chromium.org
  • 7 edits
    3 adds in trunk

Web Inspector: [Elements] XSLT transformation result from the xml-stylesheet PI not rendered
https://bugs.webkit.org/show_bug.cgi?id=111313

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Frame document update upon XSL transformation was never instrumented.
This change instruments the Document::applyXSLTransform() method to that end.

Test: http/tests/inspector/styles/xsl-transformed.xml

  • dom/Document.cpp:

(WebCore::Document::applyXSLTransform): Instrumented.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::frameDocumentUpdated): Invoked upon applyXSLTransform().

  • inspector/InspectorDOMAgent.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::frameDocumentUpdatedImpl): Added.

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::didCommitLoad): Drive-by: simplified.
(WebCore::InspectorInstrumentation::frameDocumentUpdated): Added.

LayoutTests:

  • http/tests/inspector/styles/resources/xsl-transformed.xsl: Added.
  • http/tests/inspector/styles/xsl-transformed-expected.txt: Added.
  • http/tests/inspector/styles/xsl-transformed.xml: Added.

Mar 10, 2013:

11:29 PM Changeset in webkit [145341] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

WebPage::scaledSnapshotWithOptions returns a corrupt snapshot if you request a rect larger than the FrameView’s size
https://bugs.webkit.org/show_bug.cgi?id=111820
<rdar://problem/13375785>

Reviewed by Simon Fraser.

We have to clear the image - there could be area that won’t be painted by the FrameView,
or the FrameView could have a transparent background.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::scaledSnapshotWithOptions):

11:13 PM Changeset in webkit [145340] by falken@chromium.org
  • 6 edits
    6 adds in trunk

Implement inert subtrees needed for modal <dialog>
https://bugs.webkit.org/show_bug.cgi?id=110952

Reviewed by Hajime Morrita.

Source/WebCore:

This changes Node::disabled() to return true when a modal dialog is
open and the node is not in the dialog.

Reusing disabled for inertness is useful because then event
targeting and focus control automatically have the desired behavior:
inert nodes are skipped over.

Tests: fast/dom/HTMLDialogElement/closed-dialog-does-not-block-mouse-events.html

fast/dom/HTMLDialogElement/modal-dialog-blocks-mouse-events.html
fast/dom/HTMLDialogElement/non-modal-dialog-does-not-block-mouse-events.html

  • dom/Document.h:

(WebCore::Document::activeModalDialog): Returns the topmost element in the top layer.
Since now the only elements in the top layer are modal dialogs, it is the active modal dialog.

  • dom/Node.cpp:

(WebCore):
(WebCore::Node::isInert): As per the spec, a node that is not an ancestor or descendant of the modal dialog is inert.
(WebCore::Node::disabled): Return false when inert.

  • dom/Node.h:
  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::disabled): Fall back to the superclass so inert is taken into account.

LayoutTests:

  • fast/dom/HTMLDialogElement/closed-dialog-does-not-block-mouse-events-expected.txt: Added.
  • fast/dom/HTMLDialogElement/closed-dialog-does-not-block-mouse-events.html: Added.
  • fast/dom/HTMLDialogElement/modal-dialog-blocks-mouse-events-expected.txt: Added.
  • fast/dom/HTMLDialogElement/modal-dialog-blocks-mouse-events.html: Added.
  • fast/dom/HTMLDialogElement/non-modal-dialog-does-not-block-mouse-events-expected.txt: Added.
  • fast/dom/HTMLDialogElement/non-modal-dialog-does-not-block-mouse-events.html: Added.
10:42 PM Changeset in webkit [145339] by silviapf@chromium.org
  • 2 edits in trunk/Tools

Add myself to committers.py

8:30 PM Changeset in webkit [145338] by glenn@skynav.com
  • 5 edits
    2 adds in trunk

Line breaking opportunities at the end of a text node are missed
https://bugs.webkit.org/show_bug.cgi?id=17427

Reviewed by Darin Adler.

Source/WebCore:

When initializing context for determining next break position,
reuse last two characters from previous text node(s) within block.
This additional state is stored in the current LazyLineBreakIterator
as an optimization to prevent having to add two new parameters to
isBreakable().

At present, this fixes only the ASCII shortcut code path, but
does not yet handle the non-ASCII path. Since the ASCII path is
the most performant critical, the handling of this latter path
will be addressed by webkit.org/b/105692.

Additionally test for case where last two characters context
is derived from distinct nodes, possibly with intervening empty
inline node(s).

Test: fast/text/line-break-between-text-nodes.html

  • platform/text/TextBreakIterator.h:

(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::lastCharacter):
(WebCore::LazyLineBreakIterator::secondToLastCharacter):
(WebCore::LazyLineBreakIterator::setLastTwoCharacters):
(WebCore::LazyLineBreakIterator::resetLastTwoCharacters):
(WebCore::LazyLineBreakIterator::updateLastTwoCharacters):
(LazyLineBreakIterator):
Add state variables to retain last two characters of previous text node(s)
for reuse when initializing nextBreakPosition<>() context.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
Record and reset retained last two characters of previous text node(s) as
appropriate.

  • rendering/break_lines.cpp:

(WebCore::nextBreakablePosition):
Use state variables holding retained last two characters of previous text node(s)
for when initializing nextBreakPosition<>() context.

LayoutTests:

  • fast/text/line-break-between-text-nodes-expected.html: Added.
  • fast/text/line-break-between-text-nodes.html: Added.
6:21 PM Changeset in webkit [145337] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix a typo in http://trac.webkit.org/changeset/145332.

Unreviewed.

ENABLE() doesn't use the WTF_ prefix.

  • WebProcess/WebPage/WebPage.h:
6:19 PM Changeset in webkit [145336] by Darin Adler
  • 3 edits in trunk/Source/WebCore

NetworkStorageSession leaks its CFURLStorageSessionRef
https://bugs.webkit.org/show_bug.cgi?id=111950
<rdar://problem/13384134>

Reviewed by Sam Weinig.

  • platform/network/NetworkStorageSession.h:

Change the argument type of the constructor to a RetainPtr.

  • platform/network/cf/NetworkStorageSessionCFNet.cpp:

(WebCore::NetworkStorageSession::NetworkStorageSession): Changed
the argument type to a RetainPtr.
(WebCore::NetworkStorageSession::switchToNewTestingSession): Added
calls to adoptCF to adopt the value returned by wkCreatePrivateStorageSession.
(WebCore::NetworkStorageSession::createPrivateBrowsingSession): Ditto.
(WebCore::NetworkStorageSession::cookieStorage): Changed to use adoptCF
instead of the RetainPtr constructor with AdoptCF since the former is
far easier to read.

4:36 PM WebKit Team edited by glenn@skynav.com
(diff)
4:12 PM Changeset in webkit [145335] by weinig@apple.com
  • 5 edits in trunk/Source/WebKit2

Add bundle API to get the current selection as a WKDOMRange
https://bugs.webkit.org/show_bug.cgi?id=111947
<rdar://problem/13205460>

Reviewed by Gavin Barraclough.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.h:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(-[WKWebProcessPlugInBrowserContextController selectedRange]):
Add new selectedRange property.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::frameWithSelection):
(WebKit::WebPage::currentSelectionAsRange):

  • WebProcess/WebPage/WebPage.h:

Get the range by finding the frame that has a selection, and then normalizing it.

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

Conformance Test 1.0.3 (Beta) function: bufferData undefined value failed.
https://bugs.webkit.org/show_bug.cgi?id=111641

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-10
Reviewed by Dean Jackson.

The WebGL specification requires that a size of 0 is not valid. In javascript, passing in undefined
as a parameter to a long long is the same as passing in 0, so we must check for this incorrect
value and fail.
The test suite in Kronos 1.0.3 failed, test to verify conformance is as follows:
https://www.khronos.org/registry/webgl/sdk/tests/conformance/more/functions/bufferDataBadArgs.html.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::bufferData):
Synthesize error and returned if size is 0.

2:00 PM Changeset in webkit [145333] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

SVGDocumentExtensions should use OwnPtr for pending resource maps.
<http://webkit.org/b/111943>

Reviewed by Anders Carlsson.

  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
(WebCore::SVGDocumentExtensions::addPendingResource):
(WebCore::SVGDocumentExtensions::isElementPendingResources):
(WebCore::SVGDocumentExtensions::removeElementFromPendingResources):
(WebCore::SVGDocumentExtensions::removePendingResource):
(WebCore::SVGDocumentExtensions::removePendingResourceForRemoval):
(WebCore::SVGDocumentExtensions::markPendingResourcesForRemoval):

  • svg/SVGDocumentExtensions.h:

(SVGDocumentExtensions):

1:40 PM Changeset in webkit [145332] by timothy_horton@apple.com
  • 8 edits in trunk/Source

Add a heuristic to determine the “primary” snapshotted plugin
https://bugs.webkit.org/show_bug.cgi?id=111932
<rdar://problem/13270208>

Reviewed by Dean Jackson.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
Forward didCommitLoad to WebPage. Move existing code that manipulated WebPage
itself during didCommitLoad into WebPage, where it belongs.
(WebKit::WebFrameLoaderClient::dispatchDidFinishLoad): Forward didFinishLoad to WebPage.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialize m_didFindPrimarySnapshottedPlugin to false.
(WebKit::WebPage::didCommitLoad): Move code from WebPageFrameLoaderClient.
Reset the flag that says we've already found a snapshotted plugin.
(WebKit::WebPage::didFinishLoad):
Call determinePrimarySnapshottedPlugIn when any frame finishes loading. We call this for subframes,
not just the main frame, in case the main frame loads with no "primary" plugins, but a subframe later loads with one.
(WebKit::WebPage::determinePrimarySnapshottedPlugIn):
Attempt to find the primary snapshotted plugin on the page, by hit-testing a grid of points spaced 200px apart.
A plugin is considered if it is snapshotted and > 450x300. We scan vertically and left-to-right, only discarding
a previous candidate if another candidate is at least 110% the size of the previous candidate.
This tends to select plugins near the top left of the page, unless there is a significantly larger plugin elsewhere.
(WebKit::WebPage::resetPrimarySnapshottedPlugIn):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

  • WebCore.exp.in: Export a few things.
  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::classNameForShadowRoot): If we've been informed that we are the primary snapshotted plugin, add the 'primary' class.
(WebCore::HTMLPlugInImageElement::setIsPrimarySnapshottedPlugIn): Added
(WebCore::HTMLPlugInImageElement::updateSnapshotInfo): Hand classNameForShadowRoot our primary-ness.

  • html/HTMLPlugInImageElement.h:

(HTMLPlugInImageElement): Add storage for m_isPrimarySnapshottedPlugIn.

12:57 PM Changeset in webkit [145331] by mkwst@chromium.org
  • 5 edits in trunk/Source/WebCore

XSSAuditor doesn't need a copy of the original document URL.
https://bugs.webkit.org/show_bug.cgi?id=111944

Reviewed by Adam Barth.

When creating an XSSInfo object in response to detecting reflected XSS
on a page, the Auditor was passing in a copy of the document's
original URL for reporting. It doesn't look like we need this, as
XSSInfo's only consumer, XSSAuditorDelegate, runs on the main thread
with access to the document. We can obtain access to the same
information by reading the URL directly from the delegate's Document
object if and when we need it.

  • html/parser/XSSAuditorDelegate.cpp:

(WebCore::XSSAuditorDelegate::didBlockScript):

Read the document's URL directly in order to create a violation
report.

(WebCore::XSSInfo::isSafeToSendToAnotherThread):

  • html/parser/XSSAuditorDelegate.h:

(WebCore::XSSInfo::create):
(WebCore::XSSInfo::XSSInfo):

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::init):
(WebCore::XSSAuditor::filterToken):
(WebCore::XSSAuditor::isSafeToSendToAnotherThread):

  • html/parser/XSSAuditor.h:

Remove the copied original URL from both XSSInfo objects and the
XSSAuditor.

12:30 PM Changeset in webkit [145330] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed, rolling out r145039 and r145096.
http://trac.webkit.org/changeset/145039
http://trac.webkit.org/changeset/145096
https://bugs.webkit.org/show_bug.cgi?id=111945

broke find indicator updates with scrolling subframes
(Requested by thorton on #webkit).

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

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::scroll):
(WebKit::TiledCoreAnimationDrawingArea::flushLayers):

12:16 PM Changeset in webkit [145329] by akling@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

SpeculativeJIT should use OwnPtr<SlowPathGenerator>.
<http://webkit.org/b/111942>

Reviewed by Anders Carlsson.

There's no need to include DFGSlowPathGenerator.h from the header as long as the destructor is out-of-line,
so let's use OwnPtr instead of raw pointers + deleteAllValues().

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::~SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::addSlowPathGenerator):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

11:30 AM WebKitGTK/2.0.x edited by slomo@circular-chaos.org
(diff)
10:41 AM Changeset in webkit [145328] by akling@apple.com
  • 3 edits in trunk/Source/WebKit2

WebPluginSiteDataManager should use OwnPtr.
<http://webkit.org/b/111940>

Reviewed by Anders Carlsson.

  • UIProcess/Plugins/WebPluginSiteDataManager.cpp:

(WebKit::WebPluginSiteDataManager::invalidate):
(WebKit::WebPluginSiteDataManager::getSitesWithData):
(WebKit::WebPluginSiteDataManager::clearSiteData):
(WebKit::WebPluginSiteDataManager::didGetSitesWithDataForAllPlugins):
(WebKit::WebPluginSiteDataManager::didClearSiteDataForAllPlugins):

  • UIProcess/Plugins/WebPluginSiteDataManager.h:

(WebPluginSiteDataManager):

9:46 AM Changeset in webkit [145327] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

GlyphMetricsMap should use OwnPtr.
<http://webkit.org/b/111937>

Reviewed by Anders Carlsson.

Use OwnPtr instead of raw pointer + deleteAllValues().

  • platform/graphics/GlyphMetricsMap.h:

(GlyphMetricsMap):
(WebCore::::locatePageSlowCase):

9:09 AM Changeset in webkit [145326] by eric.carlson@apple.com
  • 3 edits in trunk/Source/WebCore

Allow iOS port to use InbandTextTrackPrivateAVF
https://bugs.webkit.org/show_bug.cgi?id=111933

Reviewed by Dean Jackson.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::processCue): Drive-by cleanup.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
8:46 AM Changeset in webkit [145325] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.0

Merge r144765 - Unreviewed build fix.

.:

  • GNUmakefile.am: remove bad path for generate-feature-defines-files from EXTRA_DIST.

Tools:

  • GNUmakefile.am: add generate-feature-defines-files scripts to EXTRA_DIST.
8:38 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
8:37 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:18 AM WebKit Team edited by pf@parb.es
Add myself to committers list (diff)
1:20 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
1:18 AM Changeset in webkit [145324] by Carlos Garcia Campos
  • 7 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

[GTK] When the WebProcess crashes, a signal should be emitted
https://bugs.webkit.org/show_bug.cgi?id=105180

Emit a "web-process-crashed" signal when the WebProcess crashes. This
is useful, for example, to show an error page in a web browser
like Chrome does.

Reviewed Carlos Garcia Campos.

Patch by Xan Lopez <Xan Lopez> on 2013-03-10

  • UIProcess/API/gtk/WebKitLoaderClient.cpp:

(processDidCrash):
(attachLoaderClientToView):

  • UIProcess/API/gtk/WebKitWebContextPrivate.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_class_init):
(webkitWebViewWebProcessCrashed):

  • UIProcess/API/gtk/tests/TestWebExtensions.cpp:

(testWebExtensionGetTitle):
(webProcessCrashedCallback):
(testWebKitWebViewProcessCrashed):
(beforeAll):

  • UIProcess/API/gtk/tests/WebExtensionTest.cpp:

(methodCallCallback):

Note: See TracTimeline for information about the timeline view.