Timeline



May 25, 2013:

10:05 PM Changeset in webkit [150709] by akling@apple.com
  • 14 edits in trunk/Source/WebCore

Move Node::isFocusable() to Element.
<http://webkit.org/b/116777>

Reviewed by Anders Carlsson.

Nodes cannot be focusable, so move isFocusable() from Node to Element.

  • dom/Node.cpp:
  • dom/Node.h:
  • dom/Element.h:
  • dom/Element.cpp:

(WebCore::Element::isFocusable):

Moved here from Node.

  • dom/Document.cpp:

(WebCore::Document::setFocusedNode):

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::determineAccessibilityRole):

Check that the underlying node is an Element before asking if it's focusable.

  • page/FrameView.cpp:

(WebCore::FrameView::scrollToAnchor):

Renamed the 'anchorNode' variable to 'anchorElement' because reasons.

  • html/HTMLAreaElement.h:
  • html/HTMLFormControlElement.h:
  • html/HTMLLabelElement.h:
  • html/HTMLOptionElement.h:
  • svg/SVGAElement.h:

Sprinkle OVERRIDE.

  • html/ValidationMessage.cpp:

(WebCore::ValidationMessage::setMessage):

Update a comment to refer to Element::isFocusable() instead of Node.

9:42 PM Changeset in webkit [150708] by commit-queue@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Broken link to committers list on contributing web page
https://bugs.webkit.org/show_bug.cgi?id=116722

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-05-25
Reviewed by Andreas Kling.

  • coding/contributing.html:

Changed broken link to point to the team page instead.

9:33 PM Changeset in webkit [150707] by akling@apple.com
  • 9 edits in trunk/Source/WebCore

Move Node::tabIndex() to Element.
<http://webkit.org/b/116772>

Reviewed by Ryosuke Niwa.

Since only Elements are keyboard-focusable, it doesn't make sense for Node to have a tabIndex().

  • dom/Element.h:
  • dom/Node.cpp:
  • dom/Node.h:

A Node can't have a tab index, so move tabIndex() to Element.

  • page/FocusController.h:
  • page/FocusController.cpp:

(WebCore::adjustedTabIndex):
(WebCore::FocusController::findElementWithExactTabIndex):
(WebCore::nextElementWithGreaterTabIndex):
(WebCore::previousElementWithLowerTabIndex):
(WebCore::FocusController::nextFocusableNode):
(WebCore::FocusController::previousFocusableNode):

Make this code deal in Element* when doing tab index stuff. FocusController needs
more Node->Element cleanup, but let's do that separately.

  • html/HTMLAnchorElement.h:
  • html/HTMLElement.h:
  • html/HTMLFormControlElement.h:

Sprinkle OVERRIDE.

9:31 PM Changeset in webkit [150706] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Revert another erroneous change.

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

(NewCommitBot.next_work_item):

9:13 PM Changeset in webkit [150705] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Revert an erroneous change.

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

(SheriffBot):

8:39 PM Changeset in webkit [150704] by rniwa@webkit.org
  • 4 edits in trunk/Tools

Some build fixes for WKR and webkitbot.

  • Scripts/webkitpy/tool/bot/ircbot_unittest.py:

(IRCBotTest.test_help):

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

(Agent):
(Agent.init):
(Agent.name):
(NewCommitBot):
(NewCommitBot.begin_work_queue):
(NewCommitBot.next_work_item):

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

(SheriffBot):

8:35 PM Changeset in webkit [150703] by fpizlo@apple.com
  • 7 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: FTL should support ArithDiv
https://bugs.webkit.org/show_bug.cgi?id=116771

Reviewed by Oliver Hunt.

  • ftl/FTLAbbreviations.h:

(JSC::FTL::buildDiv):
(JSC::FTL::buildRem):
(JSC::FTL::buildFDiv):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLCommonValues.cpp:

(JSC::FTL::CommonValues::CommonValues):

  • ftl/FTLCommonValues.h:

(CommonValues):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileArithMul):
(JSC::FTL::LowerDFGToLLVM::compileArithDiv):
(LowerDFGToLLVM):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::div):
(JSC::FTL::Output::rem):
(JSC::FTL::Output::doubleDiv):

8:29 PM Changeset in webkit [150702] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Don't instantiate ChildNodeLists just to get a child count.
<http://webkit.org/b/116776>

Reviewed by Ryosuke Niwa.

Use ContainerNode::childNodeCount() instead of Node::childNodes()->length().

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):

7:57 PM Changeset in webkit [150701] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Teach webkitbot and WKR how to respond to yt?
https://bugs.webkit.org/show_bug.cgi?id=116775

Reviewed by Andreas Kling.

  • Scripts/webkitpy/tool/bot/irc_command.py:

(Hi): Fixed the usage string.
(Hi.execute): Made it more generic so that it works in WKR.
(YouThere): Added.
(YouThere.execute): Added.

  • Scripts/webkitpy/tool/commands/newcommitbot.py:
7:48 PM Changeset in webkit [150700] by akling@apple.com
  • 7 edits in trunk/Source

PluginDocument::pluginNode() should be pluginElement() instead.
<http://webkit.org/b/116774>

Reviewed by Anders Carlsson.

Source/WebCore:

Make PluginDocument hand out a HTMLPlugInElement* instead of a Node*.

  • dom/Document.cpp:

(WebCore::eventTargetNodeForDocument):

  • html/PluginDocument.h:
  • html/PluginDocument.cpp:

(WebCore::PluginDocumentParser::createDocumentStructure):
(WebCore::PluginDocument::pluginWidget):
(WebCore::PluginDocument::setPluginElement):
(WebCore::PluginDocument::detach):

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::focusedPluginViewForFrame):

7:27 PM Changeset in webkit [150699] by akling@apple.com
  • 7 edits in trunk/Source

Remove Document::getFocusableNodes().
<http://webkit.org/b/116773>

Reviewed by Joseph Pecoraro.

Source/WebCore:

This was added in r42191 and there are no remaining clients of the API.

  • dom/Document.cpp:
  • dom/Document.h:
  • WebCore.exp.in:

Source/WebKit/mac:

Remove the private _focusableNodes API on DOMDocument, it has no clients.

  • DOM/WebDOMOperations.mm:
  • DOM/WebDOMOperationsPrivate.h:
7:22 PM Changeset in webkit [150698] by Simon Fraser
  • 2 edits in trunk/Tools

Try to fix the EFL build.

  • DumpRenderTree/efl/TestRunnerEfl.cpp:

(TestRunner::setPageVisibility):

7:22 PM Changeset in webkit [150697] by akling@apple.com
  • 9 edits in trunk/Source/WebCore

Move Node::focusDelegate() to Element.
<http://webkit.org/b/116768>

Reviewed by Anders Carlsson.

Only Element can be a focus delegate (it's currently only ever HTMLInputElement actually)
so move Node::focusDelegate() to Element. Sprinkled isElementNode() checks as needed.

  • dom/Node.cpp:
  • dom/Node.h:
  • dom/Element.h:
  • dom/Element.cpp:
  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::focusDelegate):

  • html/shadow/SliderThumbElement.h:
  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::isFocused):

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintSliderThumb):

5:51 PM Changeset in webkit [150696] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Path: clean up addPathForRoundedRect()
https://bugs.webkit.org/show_bug.cgi?id=116765

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-25
Reviewed by Andreas Kling.

Reorganize code that is a bit redundant.

No new tests, no behavior change.

  • platform/graphics/Path.cpp:

(WebCore::Path::addPathForRoundedRect):

4:56 PM Changeset in webkit [150695] by Simon Fraser
  • 35 edits in trunk

Unprefix Page Visibility API
https://bugs.webkit.org/show_bug.cgi?id=102340

Source/WebCore:

Reviewed by Tim Horton.

Remove prefixes from the document properties, and the visibilitychanged event.

Rename the "preview" state to "unloaded". The "unloaded" state is never
reached yet (see https://bugs.webkit.org/show_bug.cgi?id=116769).

Add some comments to places where we should update the visibility state
when going in and out of the page cache, but cannot safely do so yet.

Tested by existing Page Visibility tests.

  • dom/Document.cpp:

(WebCore::Document::pageVisibilityState):
(WebCore::Document::visibilityState):
(WebCore::Document::hidden):
(WebCore::Document::dispatchVisibilityStateChangeEvent):

  • dom/Document.h:
  • dom/Document.idl:
  • dom/EventNames.h:
  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopLoading):

  • page/Page.cpp:

(WebCore::Page::setVisibilityState):

  • page/PageVisibilityState.cpp:

(WebCore::pageVisibilityStateString):

  • page/PageVisibilityState.h:

Source/WebKit/efl:

Reviewed by Tim Horton.

Rename "preview" state to "unloaded" state.

  • WebCoreSupport/AssertMatchingEnums.cpp:
  • ewk/ewk_view.h:

Source/WebKit/mac:

Reviewed by Tim Horton.

Renaming of the "preview" state to "unloaded".

  • WebView/WebView.mm:
  • WebView/WebViewPrivate.h:

Source/WebKit2:

Reviewed by Tim Horton.

Renaming of the "preview" state to "unloaded".

  • Shared/API/c/WKPageVisibilityTypes.h:
  • Shared/API/c/WKSharedAPICast.h:

(WebKit::toPageVisibilityState):

Tools:

Reviewed by Tim Horton.

Rename "preview" state to "unloaded" state, and adjust the tests
to test for it.

  • DumpRenderTree/mac/TestRunnerMac.mm:

(TestRunner::setPageVisibility):

  • TestWebKitAPI/Tests/WebKit2/PageVisibilityState.cpp:

(TestWebKitAPI::setPageVisibilityStateWithEvalContinuation):
(TestWebKitAPI::didRunStep2StateChangeHiddenToPrerender):
(TestWebKitAPI::didRunStep3StateChangePrerenderToUnloaded):
(TestWebKitAPI::didRunStep4InStateUnloaded):

  • TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.html:
  • TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:

(TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::setPageVisibility):

LayoutTests:

Reviewed by Tim Horton.

Remove prefixes, adjust to state name changes.

  • fast/events/page-visibility-iframe-delete-test.html:
  • fast/events/page-visibility-iframe-move-test-expected.txt:
  • fast/events/page-visibility-iframe-move-test.html:
  • fast/events/page-visibility-iframe-propagation-test-expected.txt:
  • fast/events/page-visibility-iframe-propagation-test.html:
  • fast/events/page-visibility-null-view-expected.txt:
  • fast/events/page-visibility-null-view.html:
  • fast/events/page-visibility-transition-test-expected.txt:
  • fast/events/page-visibility-transition-test.html:
4:31 PM Changeset in webkit [150694] by fpizlo@apple.com
  • 4 edits
    9 adds in trunk

We broke (-231/-1)|0 in the DFG
https://bugs.webkit.org/show_bug.cgi?id=116767

Source/JavaScriptCore:

Reviewed by Andreas Kling.

The bug is that we were assuming that in the -231 case, we already had -231
in the result register. This was a wrong assumption.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileIntegerArithDivForX86):

LayoutTests:

Reviewed by Andreas Kling.

  • fast/js/dfg-div-by-neg1-and-then-or-zero-interesting-reg-alloc-expected.txt: Added.
  • fast/js/dfg-div-by-neg1-and-then-or-zero-interesting-reg-alloc.html: Added.
  • fast/js/dfg-div-by-zero-and-then-or-zero-interesting-reg-alloc-expected.txt: Added.
  • fast/js/dfg-div-by-zero-and-then-or-zero-interesting-reg-alloc.html: Added.
  • fast/js/dfg-div-neg2tothe31-by-one-and-then-or-zero-with-interesting-reg-alloc-expected.txt: Added.
  • fast/js/dfg-div-neg2tothe31-by-one-and-then-or-zero-with-interesting-reg-alloc.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-div-by-neg1-and-then-or-zero-interesting-reg-alloc.js: Added.

(foo):

  • fast/js/script-tests/dfg-div-by-zero-and-then-or-zero-interesting-reg-alloc.js: Added.

(foo):

  • fast/js/script-tests/dfg-div-neg2tothe31-by-one-and-then-or-zero-with-interesting-reg-alloc.js: Added.

(foo):

4:13 PM Changeset in webkit [150693] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Updated expected results after r150688.

Reviewed by Andreas Kling.

  • http/tests/globalhistory/history-delegate-basic-refresh-redirect-expected.txt: Now shows

the URL that performed the client redirect, as expected.

4:09 PM Changeset in webkit [150692] by akling@apple.com
  • 21 edits in trunk/Source

Move Node::isMouseFocusable() to Element.
<http://webkit.org/b/116762>

Reviewed by Anders Carlsson.

Source/WebCore:

Node::isMouseFocusable() would just return isFocusable(), which is never true for a non-Element
since Node::supportsFocus() always returns false. So move it to Element!

  • dom/Node.h:
  • dom/Node.cpp:
  • dom/Element.h:
  • dom/Element.cpp:

(WebCore::Element::isMouseFocusable):

Moved here from Node.

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::setFocusedNodeIfNeeded):

  • page/EventHandler.cpp:

(WebCore::EventHandler::dispatchMouseEvent):

Walk up the parent chain with parentOrShadowHostElement() instead of parentOrShadowHostNode().
Removed a misleading no-op hunk about mouse-focusable ShadowRoots, since ShadowRoots are not
Elements and thus cannot be mouse-focusable.

  • page/TouchAdjustment.cpp:

(WebCore::TouchAdjustment::nodeRespondsToTapGesture):

Check that the Node is an Element before asking if it's mouse-focusable.

  • html/HTMLAnchorElement.h:
  • html/HTMLAreaElement.h:
  • html/HTMLFormControlElement.h:
  • html/HTMLInputElement.h:
  • html/HTMLMediaElement.h:
  • html/HTMLSelectElement.h:
  • html/HTMLTextAreaElement.h:
  • html/shadow/ClearButtonElement.h:
  • html/shadow/TextControlInnerElements.h:
  • svg/SVGAElement.h:
  • svg/SVGStyledElement.h:

Sprinkle OVERRIDE.

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::highlightPotentialActivation):

Check that the potentially activated Node is an Element before asking if it's mouse-focusable.

2:34 PM Changeset in webkit [150691] by akling@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION: WebProcess is terminated when all Safari windows are closed.
<rdar://problem/13990901>
<http://webkit.org/b/116766>

Reviewed by Alexey Proskuryakov.

When closing the last page, only disconnect the web process if we're using a network process.
Otherwise there might be session state in the web process getting lost.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::removeWebPage):

1:17 PM Changeset in webkit [150690] by mark.lam@apple.com
  • 10 edits in branches/dfgFourthTier/Source

Remove Interpreter::retrieveLastCaller().
https://bugs.webkit.org/show_bug.cgi?id=116753.

Reviewed by Geoffrey Garen.

This is part of the refactoring effort to get rid of functions walking
the JS stack in their own way.

../JavaScriptCore:

  • API/JSContextRef.cpp:

(JSContextCreateBacktrace):

  • interpreter/CallFrame.cpp:
  • interpreter/Interpreter.cpp:

(JSC::Interpreter::Interpreter):
(JSC::Interpreter::getStackTrace):
(JSC::Interpreter::addStackTraceIfNecessary):

  • interpreter/Interpreter.h:

(StackFrame):
(JSC::StackFrame::StackFrame):
(Interpreter):

  • jsc.cpp:

(functionJSCStack):

  • profiler/ProfileGenerator.cpp:

(JSC::ProfileGenerator::addParentForConsoleStart):

../WebCore:

No new tests.

  • bindings/js/JSXMLHttpRequestCustom.cpp:

(WebCore::JSXMLHttpRequest::send):

  • bindings/js/ScriptCallStackFactory.cpp:

(WebCore::createScriptCallStack):

11:35 AM Changeset in webkit [150689] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

WebFrameProxy::didFailLoad clears frame title for no apparent reason
https://bugs.webkit.org/show_bug.cgi?id=116655

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-05-25
Reviewed by Alexey Proskuryakov.

  • UIProcess/WebFrameProxy.cpp:

(WebKit::WebFrameProxy::didFailLoad):

10:57 AM Changeset in webkit [150688] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit/mac

<rdar://problem/13924889> -webView:didPerformClientRedirectFromURL:toURL:inFrame: should be given the redirecting URL as the “from” URL
https://bugs.webkit.org/show_bug.cgi?id=116733

Reviewed by Adele Peterson.

By the time the history controller calls updateGlobalHistoryRedirectLinks(), the document
loader already reflects the destination URL. In order to be able to provide the immediate
source URL to the delegate, we make WebFrame track a URL and provisional URL, updating them
in response to FrameLoader callbacks in exactly the same way WebFrameProxy maintains its
m_url and m_provisionalURL member variables.

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): Update
provisionalURL.
(WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): Update url.
(WebFrameLoaderClient::dispatchDidPushStateWithinPage): Ditto.
(WebFrameLoaderClient::dispatchDidReplaceStateWithinPage): Ditto.
(WebFrameLoaderClient::dispatchDidPopStateWithinPage): Ditto.
(WebFrameLoaderClient::dispatchDidStartProvisionalLoad): Update provisionalURL.
(WebFrameLoaderClient::dispatchDidCommitLoad): Update URL and provisionalURL.
(WebFrameLoaderClient::dispatchDidFailProvisionalLoad): Clear provisionalURL.
(WebFrameLoaderClient::dispatchDidFailLoad): Added an assertion.
(WebFrameLoaderClient::dispatchDidFinishLoad): Ditto.
(WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): Pass the last committed URL as the
source, rather than clientRedirectSourceForHistory().

  • WebView/WebFrameInternal.h: Added url and provisionalURL ivars to WebFramePrivate.
5:02 AM Changeset in webkit [150687] by akling@apple.com
  • 16 edits in trunk/Source/WebCore

Move Node::isKeyboardFocusable() to Element.
<http://webkit.org/b/116761>

Reviewed by Antti Koivisto.

Only Elements can be keyboard-focusable. Move the base isKeyboardFocusable() implementation to Element
and sprinkle OVERRIDE on subclass overrides.
FocusController gets some temporary type checks that will go away as that code moves to dealing in
Elements instead of Node.

  • dom/Node.h:
  • dom/Node.cpp:
  • dom/Element.h:
  • dom/Element.cpp:

(WebCore::Element::isKeyboardFocusable):

Move isKeyboardFocusable() from Node to Element.

  • page/FocusController.cpp:

(WebCore::isNonFocusableShadowHost):
(WebCore::isFocusableShadowHost):
(WebCore::shouldVisit):
(WebCore::FocusController::advanceFocusInDocumentOrder):

Check that the inspected Node is an Element before querying isKeyboardFocusable().

  • html/HTMLAnchorElement.h:
  • html/HTMLAreaElement.h:
  • html/HTMLFormControlElement.h:
  • html/HTMLFrameOwnerElement.h:
  • html/HTMLInputElement.h:
  • html/HTMLPlugInElement.h:
  • html/HTMLSelectElement.h:
  • html/HTMLTextAreaElement.h:
  • svg/SVGAElement.h:
  • svg/SVGStyledElement.h:

Sprinkle OVERRIDE.

3:27 AM Changeset in webkit [150686] by akling@apple.com
  • 10 edits in trunk/Source/WebCore

Begin moving "focus" state logic from Node to Element.
<http://webkit.org/b/116760>

Reviewed by Antti Koivisto.

Only Elements can be focused, so merge the "focus" state logic from Node and ContainerNode
and move it into Element. There's a lot more iceberg under this tip, but we'll be starting
with setFocus(bool) and focused().

  • dom/Node.h:
  • dom/ContainerNode.cpp:
  • dom/ContainerNode.h:
  • dom/Element.cpp:

(WebCore::Element::isUserActionElementFocused):
(WebCore::Element::setFocus):

  • dom/Element.h:

(WebCore::Element::focused):

  • dom/Node.cpp:

Move focused() and setFocus(bool) from Node/ContainerNode to Element.

  • dom/Document.cpp:

(WebCore::Document::setFocusedNode):

  • page/EventHandler.cpp:

(WebCore::EventHandler::dispatchMouseEvent):

Check if the inspected Node is an Element before asking if it's focused.

2:51 AM Changeset in webkit [150685] by noam.rosenthal@nokia.com
  • 3 edits
    2 adds in trunk

Direct pattern compositing breaks when no-repeat is set on a large layer
https://bugs.webkit.org/show_bug.cgi?id=116140

Source/WebCore:

Reviewed by Antti Koivisto.

In some cases the directly composited background color logic overrides the layer's
contentsRect, which results in wrong rendering of tiled images.
This patch makes sure that the background image is applied after the solid color,
which ensures the correct contentsRect.

Test: compositing/patterns/direct-pattern-compositing-contain-no-repeat.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateDirectlyCompositedContents):

LayoutTests:

Added a ref-test to make sure that direct pattern compositing works well with no-repeat
in a particular geometry.

Reviewed by Antti Koivisto.

  • compositing/patterns/direct-pattern-compositing-contain-no-repeat-expected.html: Added.
  • compositing/patterns/direct-pattern-compositing-contain-no-repeat.html: Added.
2:16 AM Changeset in webkit [150684] by akling@apple.com
  • 14 edits in trunk/Source/WebCore

Move "hover" state logic from Node to Element.
<http://webkit.org/b/116757>

Reviewed by Antti Koivisto.

Resolve a 7 year old FIXME by merging the "hover" state logic from Node and ContainerNode
and moving it all to Element instead.

  • dom/Node.cpp:

(WebCore::Node::detach):

  • dom/Element.cpp:

(WebCore::Element::detach):

Move Document::hoveredNodeDetached() call from Node::detach() to Element::detach().

(WebCore::Element::isUserActionElementHovered):
(WebCore::Element::setHovered):

  • dom/Element.h:

(WebCore::Element::hovered):

Moved here from Node/ContainerNode.

  • dom/UserActionElementSet.h:

(WebCore::UserActionElementSet::setHovered):
(WebCore::UserActionElementSet::setFlags):

Make setHovered() take an Element* instead of a Node*. I'd like to do this will all
of these methods eventually, so added a setFlags() helper with the tighter type.

  • html/HTMLLabelElement.h:
  • html/shadow/SpinButtonElement.h:

Sprinkle OVERRIDE on setHovered() overrides.

  • dom/Document.cpp:

(WebCore::Document::updateHoverActiveState):

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::isHovered):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::isHovered):

Check if the inspected Node is an element before asking if it's hovered.

2:08 AM Changeset in webkit [150683] by akling@apple.com
  • 6 edits in trunk/Source/WebCore

Document::formController() should return a reference.
<http://webkit.org/b/116758>

Reviewed by Antti Koivisto.

The formController() is created on demand, so return a reference instead.

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

(WebCore::Document::formController):
(WebCore::Document::setStateForNewFormElements):

  • html/HTMLFormControlElementWithState.cpp:

(WebCore::HTMLFormControlElementWithState::HTMLFormControlElementWithState):
(WebCore::HTMLFormControlElementWithState::~HTMLFormControlElementWithState):
(WebCore::HTMLFormControlElementWithState::didMoveToNewDocument):
(WebCore::HTMLFormControlElementWithState::finishParsingChildren):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::~HTMLFormElement):
(WebCore::HTMLFormElement::finishParsingChildren):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::~HTMLInputElement):
(WebCore::HTMLInputElement::didMoveToNewDocument):
(WebCore::HTMLInputElement::checkedRadioButtons):

1:29 AM Changeset in webkit [150682] by sergio@webkit.org
  • 2 edits in trunk/Source/WebCore

Reducing CSS code duplication in declaration list error recovery
https://bugs.webkit.org/show_bug.cgi?id=115157

Reviewed by Andreas Kling.

From Blink r148974 by <serya@chromium.org>

Refactor "invalid_block_list error | /* empty */" in a new
decl_list_recovery rule that allows to remove 4 redundant rules.

No new test required as we're just refactoring code, no new behaviour.

  • css/CSSGrammar.y.in:

May 24, 2013:

9:20 PM Changeset in webkit [150681] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[Qt][GTK] Build fix after r150669
https://bugs.webkit.org/show_bug.cgi?id=116751

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-24
Reviewed by Christophe Dumez.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:

(WebKit::WebEditorClient::getEditorCommandsForKeyEvent):

9:01 PM Changeset in webkit [150680] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/efl

[EFL] Remove obsolete Page forward declaration from InspectorClientEfl.h
https://bugs.webkit.org/show_bug.cgi?id=116752

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-24
Reviewed by Christophe Dumez.

  • WebCoreSupport/InspectorClientEfl.h:
7:44 PM CommitterTips edited by Seokju Kwon
It is generated automatically from ​contributors.json after r150662. (diff)
7:19 PM Changeset in webkit [150679] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

[EFL] Build fix after r150669
https://bugs.webkit.org/show_bug.cgi?id=116750

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-24
Reviewed by Anders Carlsson.

  • CMakeLists.txt:
  • WebProcess/Battery/WebBatteryManager.cpp:

(WebKit::WebBatteryManager::registerWebPage):
(WebKit::WebBatteryManager::unregisterWebPage):

  • WebProcess/NetworkInfo/WebNetworkInfoManager.cpp:

(WebKit::WebNetworkInfoManager::registerWebPage):
(WebKit::WebNetworkInfoManager::unregisterWebPage):
(WebKit::WebNetworkInfoManager::bandwidth):
(WebKit::WebNetworkInfoManager::metered):

  • WebProcess/WebCoreSupport/WebVibrationClient.cpp:

(WebKit::WebVibrationClient::vibrate):
(WebKit::WebVibrationClient::cancelVibration):

  • WebProcess/soup/WebSoupRequestManager.cpp:

(WebKit::WebSoupRequestManager::didReceiveURIRequestData):
(WebKit::WebSoupRequestManager::send):

6:28 PM Changeset in webkit [150678] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

Unreviewed change to get Windows bots green. Disable a number
of crashes and failures. Crashes are tracked under
https://bugs.webkit.org/show_bug.cgi?id=116562, failures under
https://bugs.webkit.org/show_bug.cgi?id=116564.

  • platform/win/TestExpectations:
6:18 PM Changeset in webkit [150677] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed build fix. Don't use new NRWT logic needed
by Windows yet. Activate (and fix test) when we cut over.

  • Scripts/webkitpy/port/driver.py:

(Driver._setup_environ_for_driver):
(Driver._start):

6:12 PM Changeset in webkit [150676] by benjamin@webkit.org
  • 2 edits in trunk/Source/WTF

Inline TCMalloc_Central_FreeList's RemoveRange and FetchFromSpansSafe
https://bugs.webkit.org/show_bug.cgi?id=116700

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-05-24
Reviewed by Darin Adler.

The two functions only have one call site each.

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_Central_FreeList::RemoveRange):
(WTF::TCMalloc_Central_FreeList::FetchFromSpansSafe):

6:02 PM Changeset in webkit [150675] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix after r150664.

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore):

5:59 PM Changeset in webkit [150674] by Lucas Forschler
  • 4 edits in branches/safari-537.43-branch/Source

Versioning.

5:56 PM Changeset in webkit [150673] by Lucas Forschler
  • 1 copy in tags/Safari-537.43.2

New Tag.

5:49 PM Changeset in webkit [150672] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Fixing invalid block recovery in some declaration list.
https://bugs.webkit.org/show_bug.cgi?id=115159

Patch by Sergio Villar Senin <svillar@igalia.com> on 2013-05-24
Reviewed by Darin Adler.

From Blink r148889 by <serya@chromium.org>

Source/WebCore:

Improves the detection of some invalid block declarations inside a
declaration list. This allows the parser not to completely discard
a whole declaration list that contains an invalid block. In
particular grammar failed in tests 8, 12, 13, 15, 16 and 17 in the
new test added by this change.

Test: fast/css/parsing-invalid-block-recovery.html

  • css/CSSGrammar.y.in:

LayoutTests:

  • fast/css/parsing-invalid-block-recovery-expected.txt: Added.
  • fast/css/parsing-invalid-block-recovery.html: Added.
5:48 PM Changeset in webkit [150671] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

DidFirstFlushForHeaderLayer can be called too soon on pages that redirect
https://bugs.webkit.org/show_bug.cgi?id=116749
-and corresponding-
<rdar://problem/13886753>

Reviewed by Simon Fraser.

Only start m_paintRelatedMilestonesTimer if we have actually painted.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::flushPendingLayerChanges):

5:19 PM Changeset in webkit [150670] by Brent Fulgham
  • 11 edits in trunk

[Windows] Expose database storage and cache locations via preferences.
https://bugs.webkit.org/show_bug.cgi?id=116729

Reviewed by Tim Horton.

Source/WebKit:

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export

three symbols needed to implement the feature.

Source/WebKit/win:

  • WebDatabaseManager.cpp: Update to check preferences for the

desired location of the database store.
(databasesDirectory): Added.
(WebKitInitializeWebDatabasesIfNecessary): Use new databasesDirectory
method to determine what system path to use for file storage.

  • WebKit.vcproj/WebKitExports.def.in: Export three symbols

needed to implement the feature.

  • WebView.cpp: Update to check preferences for the desired location

of the various caches used by WebKit.
(WebView::setCacheModel): Update to check preferences for URL cache
storage.
(WebKitSetApplicationCachePathIfNecessary): Update to check
preferences for ccache storage.

Tools:

Update DumpRenderTree to use CFPreferences to control where WebKit
stores its local databases, URL caches, etc.

  • DumpRenderTree/win/DumpRenderTree.cpp:

(libraryPathForDumpRenderTree): Added.
(dllLauncherEntryPoint): Set up DRT-specific cache locations.

  • Scripts/webkitpy/port/base.py:

(Port._driver_tempdir): Added (to allow port-specific overload).
(Port._driver_tempdir_for_environment): Ditto

  • Scripts/webkitpy/port/driver.py:

(Driver._setup_environ_for_driver): Use new overload to set
environment variable.
(Driver._start): Use new overload for temp directory location.

  • Scripts/webkitpy/port/win.py:

(WinPort._driver_tempdir_for_environment): New overload to supply
Windows path to DumpRenderTree environment (while still using
cygwin paths for internal operations.

5:17 PM Changeset in webkit [150669] by andersca@apple.com
  • 40 edits
    1 copy in trunk/Source/WebKit2

MessageSender shouldn't be a class template
https://bugs.webkit.org/show_bug.cgi?id=116743

Reviewed by Andreas Kling.

Change MessageSender to be a proper abstract base class. Subclasses of MessageSender must
implement messageSenderConnection() as well as messageSenderDestinationID().

This reduces code size and will allow us to be more flexible with MessageSender in the future.

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::sendAbortingOnFailure):
(WebKit::NetworkResourceLoader::messageSenderConnection):
(WebKit):
(WebKit::NetworkResourceLoader::messageSenderDestinationID):

  • NetworkProcess/NetworkResourceLoader.h:

(NetworkResourceLoader):

  • NetworkProcess/mac/DiskCacheMonitor.h:

(DiskCacheMonitor):

  • NetworkProcess/mac/DiskCacheMonitor.mm:

(WebKit::DiskCacheMonitor::messageSenderConnection):
(WebKit::DiskCacheMonitor::messageSenderDestinationID):
(WebKit):

  • Platform/CoreIPC/MessageSender.h:

(CoreIPC):
(MessageSender):
(CoreIPC::MessageSender::send):
(CoreIPC::MessageSender::sendSync):

  • Shared/ChildProcess.cpp:

(WebKit::ChildProcess::messageSenderConnection):
(WebKit):
(WebKit::ChildProcess::messageSenderDestinationID):

  • Shared/ChildProcess.h:

(ChildProcess):

  • Shared/Downloads/Download.cpp:

(WebKit::Download::messageSenderConnection):
(WebKit):
(WebKit::Download::messageSenderDestinationID):

  • Shared/Downloads/Download.h:

(Download):

  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

(WebKit::CustomProtocolManager::initialize):

  • Shared/WebConnection.h:

(WebConnection):

  • Shared/mac/SecItemShim.cpp:

(WebKit::sendSecItemRequest):

  • UIProcess/WebConnectionToWebProcess.cpp:

(WebKit::WebConnectionToWebProcess::hasValidConnection):
(WebKit::WebConnectionToWebProcess::messageSenderConnection):
(WebKit::WebConnectionToWebProcess::messageSenderDestinationID):

  • UIProcess/WebConnectionToWebProcess.h:

(WebConnectionToWebProcess):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Geolocation/WebGeolocationManager.cpp:

(WebKit::WebGeolocationManager::registerWebPage):
(WebKit::WebGeolocationManager::unregisterWebPage):

  • WebProcess/IconDatabase/WebIconDatabaseProxy.cpp:

(WebKit::WebIconDatabaseProxy::retainIconForPageURL):
(WebKit::WebIconDatabaseProxy::releaseIconForPageURL):
(WebKit::WebIconDatabaseProxy::synchronousIconForPageURL):
(WebKit::WebIconDatabaseProxy::loadDecisionForIconURL):
(WebKit::WebIconDatabaseProxy::setIconURLForPageURL):
(WebKit::WebIconDatabaseProxy::setIconDataForIconURL):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

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

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::messageSenderConnection):
(WebKit::WebResourceLoader::messageSenderDestinationID):

  • WebProcess/Network/WebResourceLoader.h:

(WebResourceLoader):

  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::show):
(WebKit::WebNotificationManager::cancel):
(WebKit::WebNotificationManager::clearNotifications):
(WebKit::WebNotificationManager::didDestroyNotification):

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::writeItemsToPasteboard):

  • WebProcess/Plugins/PluginProcessConnectionManager.cpp:

(WebKit::PluginProcessConnectionManager::getPluginProcessConnection):

  • WebProcess/Storage/StorageAreaMap.cpp:

(WebKit::StorageAreaMap::StorageAreaMap):
(WebKit::StorageAreaMap::~StorageAreaMap):
(WebKit::StorageAreaMap::setItem):
(WebKit::StorageAreaMap::removeItem):
(WebKit::StorageAreaMap::clear):
(WebKit::StorageAreaMap::loadValuesIfNeeded):

  • WebProcess/WebConnectionToUIProcess.cpp:

(WebKit::WebConnectionToUIProcess::hasValidConnection):
(WebKit::WebConnectionToUIProcess::messageSenderConnection):
(WebKit::WebConnectionToUIProcess::messageSenderDestinationID):

  • WebProcess/WebConnectionToUIProcess.h:

(WebConnectionToUIProcess):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::windowRect):
(WebKit::WebChromeClient::focusedFrameChanged):
(WebKit::WebChromeClient::createWindow):
(WebKit::WebChromeClient::toolbarsVisible):
(WebKit::WebChromeClient::statusbarVisible):
(WebKit::WebChromeClient::menubarVisible):
(WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
(WebKit::WebChromeClient::shouldInterruptJavaScript):
(WebKit::WebChromeClient::exceededDatabaseQuota):

  • WebProcess/WebCoreSupport/WebColorChooser.cpp:

(WebKit::WebColorChooser::WebColorChooser):
(WebKit::WebColorChooser::setSelectedColor):
(WebKit::WebColorChooser::endChooser):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidReceiveIcon):
(WebKit::WebFrameLoaderClient::updateGlobalHistory):
(WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
(WebKit::WebFrameLoaderClient::setTitle):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::populatePluginCache):
(WebKit::WebPlatformStrategies::getTypes):
(WebKit::WebPlatformStrategies::bufferForType):
(WebKit::WebPlatformStrategies::getPathnamesForType):
(WebKit::WebPlatformStrategies::stringForType):
(WebKit::WebPlatformStrategies::copy):
(WebKit::WebPlatformStrategies::changeCount):
(WebKit::WebPlatformStrategies::uniqueName):
(WebKit::WebPlatformStrategies::color):
(WebKit::WebPlatformStrategies::url):
(WebKit::WebPlatformStrategies::addTypes):
(WebKit::WebPlatformStrategies::setTypes):
(WebKit::WebPlatformStrategies::setBufferForType):
(WebKit::WebPlatformStrategies::setPathnamesForType):
(WebKit::WebPlatformStrategies::setStringForType):

  • WebProcess/WebCoreSupport/WebPopupMenu.cpp:

(WebKit::WebPopupMenu::show):
(WebKit::WebPopupMenu::hide):

  • WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp:

(WebKit::WebSearchPopupMenu::saveRecentSearches):
(WebKit::WebSearchPopupMenu::loadRecentSearches):

  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::sendDidReceiveEvent):

  • WebProcess/WebPage/WebBackForwardListProxy.cpp:

(WebKit::updateBackForwardItem):
(WebKit::WebBackForwardListProxy::itemAtIndex):
(WebKit::WebBackForwardListProxy::backListCount):
(WebKit::WebBackForwardListProxy::forwardListCount):

  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::createInspectorPage):
(WebKit::WebInspector::didClose):
(WebKit::WebInspector::bringToFront):
(WebKit::WebInspector::inspectedURLChanged):
(WebKit::WebInspector::save):
(WebKit::WebInspector::append):
(WebKit::WebInspector::attachBottom):
(WebKit::WebInspector::attachRight):
(WebKit::WebInspector::detach):
(WebKit::WebInspector::setAttachedWindowHeight):
(WebKit::WebInspector::setAttachedWindowWidth):
(WebKit::WebInspector::setToolbarHeight):
(WebKit::WebInspector::updateDockingAvailability):
(WebKit::WebInspector::sendMessageToRemoteFrontend):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::messageSenderConnection):
(WebKit):
(WebKit::WebPage::messageSenderDestinationID):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::executeKeypressCommandsInternal):
(WebKit::WebPage::handleEditingKeyboardEvent):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::ensureNetworkProcessConnection):
(WebKit::WebProcess::shouldTerminate):

4:52 PM Changeset in webkit [150668] by andersca@apple.com
  • 15 edits in trunk/Source/WebKit/mac

Remove using namespace std from Mac WebKit1
https://bugs.webkit.org/show_bug.cgi?id=116747

Reviewed by Sam Weinig.

Use explicit std:: qualifiers instead.

  • History/BinaryPropertyList.cpp:

(IntegerArray::deletedValueSize):
(BinaryPropertyListPlan::invalidObjectReference):
(bytesNeeded):

  • History/WebHistory.mm:

(-[WebHistoryPrivate orderedLastVisitedDays]):
(WebHistoryWriter::WebHistoryWriter):

  • History/WebHistoryItem.mm:

(-[WebHistoryItem initFromDictionaryRepresentation:]):

  • Plugins/Hosted/NetscapePluginHostManager.mm:

(WebKit::NetscapePluginHostManager::instantiatePlugin):

  • Plugins/Hosted/NetscapePluginHostProxy.mm:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
(WebKit::NetscapePluginInstanceProxy::wheelEvent):
(WebKit::NetscapePluginInstanceProxy::print):
(WebKit::NetscapePluginInstanceProxy::snapshot):
(WebKit::NetscapePluginInstanceProxy::loadURL):
(WebKit::NetscapePluginInstanceProxy::createBindingsInstance):

  • Plugins/Hosted/ProxyInstance.mm:

(WebKit::ProxyInstance::invoke):
(WebKit::ProxyInstance::supportsInvokeDefaultMethod):
(WebKit::ProxyInstance::supportsConstruct):
(WebKit::ProxyInstance::getPropertyNames):
(WebKit::ProxyInstance::methodNamed):
(WebKit::ProxyInstance::fieldNamed):
(WebKit::ProxyInstance::fieldValue):
(WebKit::ProxyInstance::setFieldValue):

  • Plugins/WebBasePluginPackage.mm:

(-[WebBasePluginPackage supportsExtension:]):
(-[WebBasePluginPackage MIMETypeForExtension:]):

  • Plugins/WebNetscapePluginStream.mm:

(WebNetscapePluginStream::deliverData):

  • Plugins/WebNetscapePluginView.mm:

(PluginTimer::start):
(-[WebNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]):

  • WebCoreSupport/WebFrameLoaderClient.mm:
  • WebView/WebFrame.mm:
  • WebView/WebHTMLView.mm:

(-[WebHTMLView _adjustedBottomOfPageWithTop:bottom:limit:]):

  • WebView/WebTextCompletionController.mm:

(-[WebTextCompletionController _placePopupWindow:]):

4:46 PM Changeset in webkit [150667] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

Fix Windows build.

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
4:37 PM Changeset in webkit [150666] by timothy_horton@apple.com
  • 6 edits in trunk/Source

Animated GIFs don't repaint after TiledCoreAnimationDrawingArea un-suspends painting
https://bugs.webkit.org/show_bug.cgi?id=116744
<rdar://problem/13973514>

Reviewed by Simon Fraser.

  • WebCore.exp.in: Export FrameView::resumeAnimatingImages.
  • page/FrameView.cpp:

(WebCore::FrameView::setIsInWindow):
(WebCore::FrameView::resumeAnimatingImages):
Factor the code to restart animated images out of frameView::setIsInWindow.

  • page/FrameView.h:

(FrameView):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::resumePainting):
Force WebCore to repaint animated images when painting is resumed.

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

Move history property list writer to WebKit
https://bugs.webkit.org/show_bug.cgi?id=116746

Reviewed by Tim Horton.

Source/WebCore:

Remove files from the Xcode project and remove symbols that now live in WebKit.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit:

Add files to the Xcode project.

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit/mac:

Move WebCore history files to WebKit since they're only used by WebKit now.

  • History/BinaryPropertyList.cpp: Renamed from Source/WebCore/platform/cf/BinaryPropertyList.cpp.
  • History/BinaryPropertyList.h: Renamed from Source/WebCore/platform/cf/BinaryPropertyList.h.
  • History/HistoryPropertyList.cpp: Renamed from Source/WebCore/history/cf/HistoryPropertyList.cpp.
  • History/HistoryPropertyList.h: Renamed from Source/WebCore/history/cf/HistoryPropertyList.h.
  • History/WebHistory.mm:
4:15 PM Changeset in webkit [150664] by Christophe Dumez
  • 10 edits
    3 adds in trunk

Global constructors exposed in worker environment have wrong attributes
https://bugs.webkit.org/show_bug.cgi?id=116708

Reviewed by Geoffrey Garen.

Source/WebCore:

Fix JSC bindings generator so that Global constructors exposed in worker environment
have the following attributes:
{ Writable?: true, Enumerable?: false, Configurable?: true }

This is now consistent with global constructors on DOMWindow and with the Web IDL
specification:
http://dev.w3.org/2006/webapi/WebIDL/#es-interfaces

Test: fast/js/global-constructors-attributes-worker.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateAttributesHashTable):

LayoutTests:

Add fast/js/global-constructors-attributes-worker.html test case to check the
global constructors attributers in the worker environment.

  • fast/js/global-constructors-attributes-expected.txt:
  • fast/js/global-constructors-attributes-worker-expected.txt: Added.
  • fast/js/global-constructors-attributes-worker.html: Added.
  • fast/js/global-constructors-attributes.html:
  • fast/js/script-tests/global-constructors-attributes.js: Make sure script usable

in a Worker and stop reporting the "constructor" property as a global constructor.

  • platform/efl/fast/js/global-constructors-attributes-expected.txt:
  • platform/efl/fast/js/global-constructors-attributes-worker-expected.txt: Added.
  • platform/gtk/fast/js/global-constructors-attributes-expected.txt:
  • platform/mac-lion/fast/js/global-constructors-attributes-expected.txt:
  • platform/qt/fast/js/global-constructors-attributes-expected.txt:
3:57 PM Changeset in webkit [150663] by Christophe Dumez
  • 34 edits
    1 delete in trunk

Remove custom code for webkitAudioContext global constructor getter
https://bugs.webkit.org/show_bug.cgi?id=116530

Reviewed by Geoffrey Garen.

Source/WebCore:

Get rid of custom code for webkitAudioContext global constructor getter. The
global DOMWindow attribute is now automatically generated by leveraging support
for [EnabledAtRuntime] extended attribute and the existing methods in
RuntimeEnabledFeatures class.

No new tests, no behavior change.

  • GNUmakefile.list.am: Remove JSDOMWindowWebAudioCustom.*.
  • Modules/webaudio/AudioContext.idl:

Remove [NoInterfaceObject] extended attribute so that the global constructor is
automatically generated instead of automatically added. Add [EnabledAtRuntime]
extended attribute since this global constructor can be disabled at runtime and
so that we can getter rid of the [CustomGetter] for the corresponding global
constructor. Use [InterfaceName] extended attribute so that the interface name
matches the global constructor on DOMWindow (webkitAudioContext).

  • Target.pri: Remove JSDOMWindowWebAudioCustom.*.
  • UseJSC.cmake: Remove JSDOMWindowWebAudioCustom.*.
  • WebCore.exp.in: Export additional symbol.
  • WebCore.order: Export additional symbol.
  • WebCore.vcproj/WebCore.vcproj: Remove JSDOMWindowWebAudioCustom.*.
  • WebCore.vcxproj/WebCore.vcxproj: Remove JSDOMWindowWebAudioCustom.*.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Remove JSDOMWindowWebAudioCustom.*.
  • WebCore.xcodeproj/project.pbxproj: Remove JSDOMWindowWebAudioCustom.*.
  • bindings/generic/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::setWebAudioEnabled):

  • bindings/js/JSBindingsAllInOne.cpp: Remove JSDOMWindowWebAudioCustom.*.
  • bindings/js/JSDOMWindowWebAudioCustom.cpp: Removed. We no longer need any custom code for

the WebAudio global constructor getter because we use [EnabledAtRuntime] support in the
bindings generator now.

  • page/DOMWindow.idl: Remove global constructor for AudioContext as it is now automatically

generated.

  • page/Settings.in: Remove webAudioEnabled setting as we use the existing setting

in RuntimeEnabledFeatures now.

Source/WebKit/efl:

Use RuntimeEnabledFeatures instead of Settings to toggle Web Audio support.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::setWebAudioEnabled):

  • WebCoreSupport/DumpRenderTreeSupportEfl.h:
  • ewk/ewk_view.cpp:

(_Ewk_View_Private_Data):
(_ewk_view_priv_new):

  • ewk/ewk_view.h: Remove public API to toggle Web Audio support as it is no longer

a view specific feature.

Source/WebKit/gtk:

Use RuntimeEnabledFeatures instead of Settings to toggle Web Audio support.

  • webkit/webkitwebview.cpp:

(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

Source/WebKit/mac:

Use RuntimeEnabledFeatures instead of Settings to toggle Web Audio support.

  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit/qt:

Use RuntimeEnabledFeatures instead of Settings to toggle Web Audio support.

  • Api/qwebsettings.cpp:

(QWebSettingsPrivate::apply):

Source/WebKit/win:

Use RuntimeEnabledFeatures instead of Settings to toggle Web Audio support.

  • WebView.cpp:

(WebView::notifyPreferencesChanged):

Source/WebKit2:

Use RuntimeEnabledFeatures instead of WebCore Settings to toggle Web Audio support.

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

Tools:

Update EFL's DumpRenderTree to use DumpRenderTreeSupport to toggle
WebAudio feature instead of public ewk_view API since that API was
removed.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

  • DumpRenderTree/efl/TestRunnerEfl.cpp:

(TestRunner::overridePreference):

3:49 PM WebKit Team edited by Bem Jones-Bey
Update to point to new location. (diff)
3:34 PM Changeset in webkit [150662] by commit-queue@webkit.org
  • 4 edits in trunk

Make team.html have each contributor's area of expertise
https://bugs.webkit.org/show_bug.cgi?id=116737

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-05-24
Reviewed by Benjamin Poulain.

Tools:

  • Scripts/webkitpy/common/config/contributors.json:

Add expertise to each contributor, taken from http://trac.webkit.org/wiki/WebKit%20Team

Changed formatting of the file because the lines are getting way to
long, and I generated this, so it's easier if the formatting of the
file is regular.

Websites/webkit.org:

  • team.html:

Update to use the new expertise field in contributors.json.

3:27 PM Changeset in webkit [150661] by fpizlo@apple.com
  • 3 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: FTL boolify should support ObjectOrOtherUse
https://bugs.webkit.org/show_bug.cgi?id=116741

Reviewed by Geoffrey Garen.

Just reusing what was already there in equalNullOrUndefined(). Note that we will
sometimes generate some redundant IR - like having some spurious bitNot's in
places - but it's safe to assume that LLVM will simplify those, and that it won't
be the longest pole in the tent for compile times.

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileCompareEqConstant):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEqConstant):
(JSC::FTL::LowerDFGToLLVM::boolify):
(JSC::FTL::LowerDFGToLLVM::equalNullOrUndefined):

3:05 PM Changeset in webkit [150660] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit/win

Remove unused code to read/write history
https://bugs.webkit.org/show_bug.cgi?id=116738

Reviewed by Brent Fulgham.

  • Interfaces/IWebHistory.idl:

Replace loadFromURL and saveToURL with unused1/unused2.

  • Interfaces/IWebHistoryPrivate.idl:

Replace data with unused1.

  • WebHistory.cpp:

Remove history loading/saving code.

(WebHistory::unused1):
(WebHistory::unused2):
Add implementations.

  • WebHistory.h:

(WebHistory):

3:00 PM Changeset in webkit [150659] by fpizlo@apple.com
  • 7 edits
    3 adds in trunk

We broke !(0/0)
https://bugs.webkit.org/show_bug.cgi?id=116736

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::createLogicalNot):

  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::pureToBoolean):

Source/WTF:

  • wtf/MathExtras.h:

(isNotZeroAndOrdered):
(isZeroOrUnordered):

LayoutTests:

  • fast/js/constant-fold-not-nan.html: Added.
  • fast/js/constant-fold-not-nan-expected.txt: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/constant-fold-not-nan.js: Added.
2:45 PM Changeset in webkit [150658] by fpizlo@apple.com
  • 4 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: FTL should support LogicalNot and Branch on Int32 and Number
https://bugs.webkit.org/show_bug.cgi?id=116739

Reviewed by Gavin Barraclough.

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileLogicalNot):
(JSC::FTL::LowerDFGToLLVM::compileBranch):
(JSC::FTL::LowerDFGToLLVM::boolify):
(LowerDFGToLLVM):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::isZero32):
(JSC::FTL::Output::notZero32):

2:06 PM Changeset in webkit [150657] by fpizlo@apple.com
  • 11 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: add heuristics to reduce the likelihood of a trivially inlineable function being independently compiled by the concurrent JIT
https://bugs.webkit.org/show_bug.cgi?id=116557

Reviewed by Geoffrey Garen.

This introduces a fairly comprehensive mechanism for preventing trivially inlineable
functions from being compiled independently of all of the things into which they end
up being inlined.

The trick is CodeBlock::m_shouldAlwaysBeInlined, or SABI for short (that's what the
debug logging calls it). A SABI function is one that we currently believe should
never be DFG optimized because it should always be inlined into the functions that
call it. SABI follows "innocent until proven guilty": all functions start out SABI
and have SABI set to false if we see proof that that function may be called in some
possibly non-inlineable way. So long as a function is SABI, it will not tier up to
the DFG: cti_optimize will perpetually postpone its optimization. Because SABI has
such a severe effect, we make the burden of proof of guilt quite low. SABI gets
cleared if any of the following happen:

  • You get called from native code (either through CallData or CachedCall).


  • You get called from an eval, since eval code takes a long time to get DFG optimized.


  • You get called from global code, since often global code doesn't tier-up since it's run-once.


  • You get called recursively, where recursion is detected by a stack walk of depth Options::maximumInliningDepth().


  • You get called through an unlinked virtual call.


  • You get called from DFG code, since if the caller was already DFG optimized and didn't inline you then obviously, you might not get inlined.


  • You've tiered up to the baseline JIT and you get called from the interpreter. The idea here is that this kind of ensures that you stay SABI only if you're called no more frequently than any of your callers.


  • You get called from a code block that isn't a DFG candidate.


  • You aren't an inlining candidate.


Most of the heuristics for SABI are in CodeBlock::noticeIncomingCall().

This is neutral on SunSpider and V8Spider, and appears to be a slight speed-up on
V8v7, which was previously adversely affected by concurrent compilation. I also
confirmed that for example on V8/richards, it dramatically reduces the number of
code blocks that get DFG compiled. It is a speed-up on those V8v7 benchmarks that
saw regressions from concurrent compilation.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpAssumingJITType):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::linkIncomingCall):
(JSC):
(JSC::CodeBlock::noticeIncomingCall):

  • bytecode/CodeBlock.h:

(CodeBlock):

  • dfg/DFGCapabilities.h:

(JSC::DFG::mightInlineFunction):
(DFG):

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::compileInThread):

  • dfg/DFGRepatch.cpp:

(JSC::DFG::dfgLinkFor):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::prepareForRepeatCall):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):
(JSC::JIT::linkFor):

  • jit/JIT.h:

(JIT):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):
(JSC::lazyLinkFor):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::setUpCall):

1:26 PM Changeset in webkit [150656] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[AC] Needs to be guarded by USE(ACCELERATED_COMPOSITING)
https://bugs.webkit.org/show_bug.cgi?id=116712

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-24
Reviewed by Andreas Kling.

renderView is used when ACCELERATED_COMPOSITING is enabled.
So, this patch allows it to be guarded by USE(ACCELERATED_COMPOSITING).

No new tests, no behavior change.

  • page/FrameView.cpp:

(WebCore::FrameView::setFrameRect):

1:07 PM Changeset in webkit [150655] by sergio@webkit.org
  • 3 edits in trunk/LayoutTests

REGRESSION (r150215): broke a test case in inspector/console/console-css-warnings.html
https://bugs.webkit.org/show_bug.cgi?id=116731

Reviewed by Ryosuke Niwa.

The mentioned revision removed a layering violation added just to
support some IE7 hack. That was removed but the test case
supporting it was left untouched, remove it.

  • inspector/console/console-css-warnings-expected.txt:
  • inspector/console/console-css-warnings.html:
12:43 PM Changeset in webkit [150654] by g.czajkowski@samsung.com
  • 6 edits in trunk/LayoutTests

[WK2] Spelling tests gardening
https://bugs.webkit.org/show_bug.cgi?id=116718

Unreviewed gardening.

The most spelling tests are skipped for wk2 platforms and they have deprecated comments.
Move the tests from global wk2/TestExpectations to the ports' TestExpectations as
the core spellchecking implementation is delivered for wk2.
This change will allow to run spelling tests easier and using [ Pass ] keyword
in TestExpectations won't be needed.

  • platform/efl-wk2/TestExpectations:
  • platform/gtk-wk2/TestExpectations:
  • platform/mac-wk2/TestExpectations:
  • platform/qt-5.0-wk2/TestExpectations:
  • platform/wk2/TestExpectations:
12:41 PM Changeset in webkit [150653] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Add more lines to the context during Dictionary lookups
https://bugs.webkit.org/show_bug.cgi?id=115256

Patch by Thomas Deniau <deniau@apple.com> on 2013-05-24
Reviewed by Ryosuke Niwa.

Source/WebCore:

No new tests - no new functionality.

  • WebCore.exp.in: Export a few methods in VisibleUnits needed to be able

to call previousLinePosition(), nextLinePosition(), startOfLine() and
endOfLine() in WebPageMac.mm when determining the context while looking
up a dictionary definition. These symbols used to be exported for iOS
only, export them on the desktop too.

Source/WebKit2:

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performDictionaryLookupAtLocation):
Instead of using the current paragraph as the context (which stops at
line breaks), get a few lines before and after the point, so that the
context contains at least four lines in each direction.
This way the Dictionary will be able to look up things that extend past
the current line.

12:07 PM Changeset in webkit [150652] by andersca@apple.com
  • 18 edits
    17 deletes in trunk

Remove PagePopup code
https://bugs.webkit.org/show_bug.cgi?id=116732

Reviewed by Andreas Kling.

.:

  • Source/cmakeconfig.h.cmake:

Remove ENABLE_PAGE_POPUP.

Source/WebCore:

Remove all page popup code.

  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/ContextFeatures.cpp:
  • dom/ContextFeatures.h:
  • loader/EmptyClients.h:
  • page/ChromeClient.h:
  • page/DOMWindowPagePopup.cpp: Removed.
  • page/DOMWindowPagePopup.h: Removed.
  • page/DOMWindowPagePopup.idl: Removed.
  • page/PagePopup.h: Removed.
  • page/PagePopupClient.cpp: Removed.
  • page/PagePopupClient.h: Removed.
  • page/PagePopupController.cpp: Removed.
  • page/PagePopupController.h: Removed.
  • page/PagePopupController.idl: Removed.
  • page/PagePopupDriver.h: Removed.
  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState):
(WebCore):

  • testing/Internals.h:

(WebCore):
(Internals):

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

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataEnableFeatures.in:

Remove PAGE_POPUP.

Source/WTF:

Remove ENABLE_PAGE_POPUP.

  • wtf/FeatureDefines.h:

LayoutTests:

Remove tests that relied on the mock page popup driver.

  • fast/forms/date/no-page-popup-controller-expected.txt: Removed.
  • fast/forms/date/no-page-popup-controller.html: Removed.
  • fast/forms/resources/picker-common.js: Removed.
  • fast/forms/time-multiple-fields/time-multiple-fields-open-picker-key-bindings-expected.txt: Removed.
  • fast/forms/time-multiple-fields/time-multiple-fields-open-picker-key-bindings.html: Removed.
11:54 AM Changeset in webkit [150651] by jer.noble@apple.com
  • 13 edits
    3 copies
    1 add in trunk/Source

Mac: Set the default audio buffer size to a large value for <video> elements.
https://bugs.webkit.org/show_bug.cgi?id=116342

Source/WebCore:

Reviewed by Eric Carlson.
Roll-in rubber stamped by Eric Carlson.

To enable power savings by waking up the audio hardware less often, set the
requested buffer frame size to a large value, such as 4096. Since this results
in approximately 100ms worth of buffer, set the buffer size to a much lower
value when playing WebAudio, which is much more sensitive to latency than video
or audio elements.

Introduce a new class, AudioSessionManager, as well as a helper class,
AudioSessionManagerToken. Audio elements, video elements, and WebAudio destination
nodes will create and retain a token, and release the token in their destructor.
This allows the AudioSessionManager to track how many of what type of audio-
generating objects are in existence.

This requires implementing AudioSession for Mac platforms. Move the implementation
for retrieving the hardware sample rate and setting the buffer duration into
AudioSessionMac from AudioDestinationMac, to be shared with AudioSessionManagerMac.

Change the AudioSession method preferredBufferLength() into preferredBufferSize(),
as the callers really want to specify a buffer size, not a buffer duration. On iOS,
where the available API requires a duration, perform the conversion from duration to
size on behalf of the caller.

However, since the original version of this patch caused media test
failures on the Mac ML and Lion bots, only enable the buffer size
change for OS X > ML.

  • html/HTMLMediaElement.h: Add a AudioSessionManagerToken member.
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Initialize the token.

  • platform/audio/AudioSession.cpp:

(WebCore::AudioSession::preferredBufferSize): Renamed from preferredBufferLength.
(WebCore::AudioSession::setPreferredBufferSize): Renamed from setPreferredBufferLength.

  • platform/audio/AudioSession.h:
  • platform/audio/AudioSessionManager.cpp:

(AudioSessionManagerToken::create): Simple factory method.
(AudioSessionManagerToken::AudioSessionManagerToken): Call AudioSessionManager::incrementCount().
(AudioSessionManagerToken::~AudioSessionManagerToken): Call AudioSessionManager::decrementCount().
(AudioSessionManager::sharedManager): Simple singleton method.
(AudioSessionManager::AudioSessionManager): Simple constructor.
(AudioSessionManager::has): Return whether the type is present.
(AudioSessionManager::incrementCount): Increment, then call updateSessionState()
(AudioSessionManager::decrementCount): Decrement, then call updateSessionState()
(AudioSessionManager::updateSessionState): Stub, does nothing.

  • platform/audio/AudioSessionManager.h:
  • platform/audio/ios/AudioDestinationIOS.cpp:

(WebCore::AudioDestinationIOS::configure): Call setPreferredBufferSize() instead of setPreferredBufferLength()

  • platform/audio/ios/AudioSessionIOS.mm:

(WebCore::AudioSession::preferredBufferSize): Renamed from preferredBufferLength.
(WebCore::AudioSession::setPreferredBufferSize): Renamed from setPreferredBufferLength

  • platform/audio/mac/AudioDestinationMac.cpp:

(WebCore::AudioDestination::hardwareSampleRate): Call AudioSession::sampleRate().
(WebCore::AudioDestinationMac::AudioDestinationMac): Create the AudioSessionManagerToken.
(WebCore::AudioDestinationMac::configure): Do not set the buffer size (this is done in AudioSessionManagerMac).

  • platform/audio/mac/AudioDestinationMac.h:
  • platform/audio/mac/AudioSessionMac.cpp: Added.

(WebCore::defaultDevice): Added, returns the default audio device.
(WebCore::AudioSession::AudioSession): Simple constructor.
(WebCore::AudioSession::~AudioSession): Simple destructor.
(WebCore::AudioSession::category): Stub, unimplemented.
(WebCore::AudioSession::setCategory): Ditto.
(WebCore::AudioSession::categoryOverride): Ditto.
(WebCore::AudioSession::setCategoryOverride): Ditto.
(WebCore::AudioSession::numberOfOutputChannels): Ditto.
(WebCore::AudioSession::setActive): Ditto.
(WebCore::AudioSession::sampleRate): Use the HAL to return the default audio device sample rate.
(WebCore::AudioSession::preferredBufferSize): Return the current HAL setting.
(WebCore::AudioSession::setPreferredBufferSize): Set the buffer size.

  • platform/audio/mac/AudioSessionManagerMac.cpp:

(AudioSessionManager::updateSessionState): Set the buffer size depending on what audio outputs are present.

  • WebCore.xcodeproj/project.pbxproj: Add the new files to the project.

Source/WTF:

Reviewed by Eric Carlson.

  • wtf/Platform.h: Add a WTF_USE_AUDIO_SESSION setting.
11:46 AM Changeset in webkit [150650] by Lucas Forschler
  • 2 edits in branches/safari-537.43-branch/Source/WebCore

Merged r150631. <rdar://problem/13963712>

11:42 AM Changeset in webkit [150649] by Lucas Forschler
  • 7 edits in branches/safari-537.43-branch/Source/WebKit2

Merged r150620. <rdar://problem/13938510>

11:09 AM Changeset in webkit [150648] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Intermittent crash when typing in Address Bar
https://bugs.webkit.org/show_bug.cgi?id=116728
<rdar://problem/13976781>

Reviewed by Sam Weinig.

If a web process connection has been removed from the storage manager because we disconnected it
since there were no more active pages associated with the web process, we'll fail to find it here
so just return early instead of crashing.

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::destroyStorageMap):

11:01 AM Changeset in webkit [150647] by Lucas Forschler
  • 4 edits in branches/safari-537.43-branch/Source

Versioning.

10:28 AM Changeset in webkit [150646] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Path: upstream the missing bits from the BlackBerry port
https://bugs.webkit.org/show_bug.cgi?id=116658

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

PathBlackBerry was upstreamed a while ago (r144612) but a few bits
were missing from the cross-platform code.

  • platform/graphics/Path.cpp:

(WebCore::Path::addPathForRoundedRect):

  • platform/graphics/Path.h:

(Graphics):
(Path):

10:16 AM Changeset in webkit [150645] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Improve loader/go-back-cached-main-resource.html test
https://bugs.webkit.org/show_bug.cgi?id=116709

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-05-24
Reviewed by Alexey Proskuryakov.

It is only needed to register the listeners on the initial load as they
are already present when restoring from page cache. Modified the test to
use event.persisted property to know if we are handling the first load
in order to register the listeners only once.

  • loader/resources/first-page.html: Rename registerListeners() function

to a more accurate name didShowPage() and use event.persisted to
register the listeners only in the first load.

  • loader/resources/other-page.html: Ditto.
9:50 AM WebKit Team edited by kbalazs@webkit.org
(diff)
9:46 AM Changeset in webkit [150644] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

[sh4] Optimize LLINT generated code and fix few bugs in baseline JIT.
https://bugs.webkit.org/show_bug.cgi?id=116716

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-05-24
Reviewed by Geoffrey Garen.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::mul32): Cosmetic changes.
(JSC::MacroAssemblerSH4::convertInt32ToDouble): Absolute address was not dereferenced.
(JSC::MacroAssemblerSH4::branch32): Absolute address was not dereferenced.
(JSC::MacroAssemblerSH4::revertJumpReplacementToBranchPtrWithPatch): Use all 32 bits of pointer for revertJump call.

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::revertJump): Use changePCrelativeAddress to patch the whole pointer.
(JSC::SH4Assembler::linkJump): Cosmetic change.

  • offlineasm/sh4.rb: Optimize LLINT generated code.
9:34 AM Changeset in webkit [150643] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

WebProcess is crashing on http://achicu.github.io/css-presentation when direct pattern compositing is enabled
https://bugs.webkit.org/show_bug.cgi?id=115135

Patch by Noam Rosenthal <Noam Rosenthal> on 2013-05-24
Reviewed by Antti Koivisto.

Source/WebCore:

Issue is invoked when there is a visibility:hidden layer with a non-compositable
background image (e.g. a radial gradient).
The layer is treated as a no-contents layer because of its visibility, however
updateDirectlyCompositedBackgroundImage() later mistakenly treats it as a layer
with direct background-image compositing.

Fixed by returning early from updating directly composited contents for layers
with hidden contents.

Test: compositing/patterns/direct-pattern-compositing-hidden-radial-gradient.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateDirectlyCompositedContents):
(WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundImage):
(WebCore::RenderLayerBacking::paintsChildren):
(WebCore::RenderLayerBacking::isDirectlyCompositedImage):

LayoutTests:

Added a ref-test that makes sure that a layer with a hidden radial gradient does not
cause the web process to crash.

  • compositing/patterns/direct-pattern-compositing-hidden-radial-gradient-expected.html: Added.
  • compositing/patterns/direct-pattern-compositing-hidden-radial-gradient.html: Added.
9:18 AM Changeset in webkit [150642] by robert@webkit.org
  • 2 edits in trunk/Source/WebCore

Refactor shouldAddBorderPaddingMargin()
https://bugs.webkit.org/show_bug.cgi?id=98803

Reviewed by Ryosuke Niwa.

Make this helper function less clever-stupid in its misguided sacrifice of intelligibility
for the sake of concision.

No new tests, refactoring.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::shouldAddBorderPaddingMargin):
(WebCore::inlineLogicalWidth):

8:51 AM Changeset in webkit [150641] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix bad type warning in InputHandler log.
https://bugs.webkit.org/show_bug.cgi?id=116720

Reviewed by Carlos Garcia Campos.

Fix warning in inputLog string.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::handleKeyboardInput):

7:48 AM Changeset in webkit [150640] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Update WTF::Vector pretty printers
https://bugs.webkit.org/show_bug.cgi?id=116719

Patch by Simon Pena <simon.pena@samsung.com> on 2013-05-24
Reviewed by Anders Carlsson.

After r148891, WTF::Vector pretty printers were left outdated, as
the WTF::Vector was made to extend a VectorBuffer, instead of keeping
one as a member. This patch updates the pretty printers so they work
again.

  • gdb/webkit.py:

(WTFVectorPrinter.children):
(WTFVectorPrinter.to_string):

7:20 AM Changeset in webkit [150639] by zarvai@inf.u-szeged.hu
  • 14 edits
    13 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Update qt-5.0-wk2 expected pictures after r150506.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-05-24

  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
  • platform/qt-5.0-wk2/svg/filters/feImage-animated-transform-on-target-rect-expected.png:
  • platform/qt-5.0-wk2/svg/filters/feImage-late-indirect-update-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-reference-invalidation-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-add-to-document-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-attribute-change-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-attribute-change-with-use-indirection-2-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-attribute-change-with-use-indirection-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-changes-id-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-id-change-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-inline-style-change-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-property-change-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-reappend-to-document-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-remove-from-document-expected.png: Added.
  • platform/qt-5.0-wk2/svg/filters/feImage-target-style-change-expected.png: Added.
6:25 AM Changeset in webkit [150638] by kadam@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip failing tests.

  • platform/qt-5.0-wk2/TestExpectations: Move http/tests/security/cross-frame-access-put.html to qt/TestExpectations.
  • platform/qt/TestExpectations: Skip fast/frames/detach-frame-during-focus.html after r146523.
5:47 AM Changeset in webkit [150637] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Respect tabindex when using form controls.
https://bugs.webkit.org/show_bug.cgi?id=116676

Reviewed by Xan Lopez.

PR 337419.

Update form control navigation tracking to take tabindex
order into account when calculating next and previous nodes.

The order to follow is tab index 1 - N, followed by all items
without a tab index or tab index 0 in rendering order to match
with standard desktop behavior.

Internally Reviewed by Genevieve Mak and Nima Ghanavatian.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::updateFormState):

5:23 AM WebKitGTK/TrackingMemoryErrors edited by kbalazs@webkit.org
(diff)
1:41 AM Changeset in webkit [150636] by sfalken@apple.com
  • 2 edits in trunk/Tools

Update prepareConsistentTestingEnvironment to use a non-deprecated API.
https://bugs.webkit.org/show_bug.cgi?id=116710

Reviewed by Mark Rowe.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(prepareConsistentTestingEnvironment): Use beginActivityWithOptions instead of beginSuspensionOfSystemBehaviors.

1:05 AM Changeset in webkit [150635] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[BlackBerry] DRT - crashed on GraphicsContext3D::makeContextCurrent
https://bugs.webkit.org/show_bug.cgi?id=116654

Patch by Xiaobo Wang <xiaobwang@blackberry.com> on 2013-05-24
Reviewed by Carlos Garcia Campos.

PR 331552.
Internally reviewed and amended by Arvid Nilsson.

No new tests, this patch is to fix DRT crashes in fast/canvas/webgl.
The instance of GraphicsContext3D has already been destroyed but
WebGLLayerWebKitThread is not aware of that. This is because compositor
layer of the WebGL graphics context was referenced outside the context.
So when destructing GraphicsContext3D the compositing layer was not
destructed.
Fix by setting m_webGLContext to 0 when destructing GrapthicsContext3D
after releasing the compositor layer, so that it won't be de-referenced
again later.

  • platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:

(WebCore::GraphicsContext3D::~GraphicsContext3D):

  • platform/graphics/blackberry/WebGLLayerWebKitThread.cpp:

(WebCore::WebGLLayerWebKitThread::~WebGLLayerWebKitThread):
(WebCore::WebGLLayerWebKitThread::webGLContextDestroyed):
(WebCore):

  • platform/graphics/blackberry/WebGLLayerWebKitThread.h:

(WebGLLayerWebKitThread):

12:32 AM Changeset in webkit [150634] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Remove SKIA leftovers from WebPage.cpp
https://bugs.webkit.org/show_bug.cgi?id=116656

Patch by Jeff Rogers <jrogers@rim.com> on 2013-05-24
Reviewed by Rob Buis.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setLoadState):

12:12 AM Changeset in webkit [150633] by akling@apple.com
  • 6 edits in trunk/Source

Typing in Safari's unified field causes unnecessary web content repaints.
<http://webkit.org/b/116703>

Reviewed by Andy Estes.

Source/WebCore:

Break out an alternate version of Page::markAllMatchesForText() that only counts the number of times
a string occurs in the page, but doesn't try to mark the occurrences.
This allows Safari to count matches for the 'Find "foo" on This Page' functionality in the unified
location bar without causing tile repaints.

  • WebCore.exp.in:
  • page/Page.h:
  • page/Page.cpp:

(WebCore::Page::findMatchesForText):
(WebCore::Page::markAllMatchesForText):
(WebCore::Page::countFindMatches):

Renamed markAllMatchesForText() to findMatchesForText() and gave it a boolean parameter to control whether
matches should be marked or not. countFindMatches() is the new helper that doesn't mark.

Source/WebKit2:

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::countStringMatches):

Call WebCore::Page::countMatchesForText() instead of markAllMatchesForText(). If the search string
is found inside the page content, the renderer containing that text will no longer be repainted.

12:05 AM Changeset in webkit [150632] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Add back a failing test expectation on fast/canvas/webgl/object-deletion-behaviour.html
after r150558 on Lion Debug WK1.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
12:02 AM Changeset in webkit [150631] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=116702
REGRESSION (r150399): Scrollbar missing for all overflow scroll
-and corresponding-
<rdar://problem/13963712>

Reviewed by Simon Fraser.

This was a silly copy-paste error.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollbarAnimationsAreSuppressed):

May 23, 2013:

11:56 PM Changeset in webkit [150630] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

CLoop llint backend should not use the d8 register as scratch register
https://bugs.webkit.org/show_bug.cgi?id=116019

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2013-05-23
Reviewed by Csaba Osztrogonác.

  • offlineasm/cloop.rb:
11:26 PM Changeset in webkit [150629] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Need to suspend/resume RootLayerCommit when the application becomes inactive/active
https://bugs.webkit.org/show_bug.cgi?id=115245

Patch by Xiaobo Wang <xiaobwang@blackberry.com> on 2013-05-23
Reviewed by Rob Buis.

PR 330917.
Internally reviewed by Arvid Nilsson.

  1. Suspend/resumeRootLayerCommit when notified app activation state

change.

  1. Schedule root layer commit in resumeRootLayerCommit() to explicitly

start root layer commit timer, so that there's a commit even if
BackingStore got disabled/removed.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::notifyAppActivationStateChange):
(BlackBerry::WebKit::WebPagePrivate::resumeRootLayerCommit):

11:23 PM Changeset in webkit [150628] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Need to forward the opener frame url to client when creating a new window
https://bugs.webkit.org/show_bug.cgi?id=116566

Patch by Andy Chen <andchen@blackberry.com> on 2013-05-23
Reviewed by Rob Buis.

PR 337935
Internally reviewed by Arvid Nilsson.
When creating a new window, forward the opener frame url to client.

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

(WebCore::ChromeClientBlackBerry::createWindow):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchCreatePage):

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

[WinCairo] Build fails to link.
https://bugs.webkit.org/show_bug.cgi?id=116671

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-05-23
Reviewed by Brent Fulgham.

  • page/FrameView.h: Added guard for ACCELERATED_COMPOSITING.
11:15 PM Changeset in webkit [150626] by lauro.neto@openbossa.org
  • 2 edits in trunk/Tools

Add missing dependencies to deps script.

[GTK] Missing packages in install-dependencies script.
https://bugs.webkit.org/show_bug.cgi?id=116632

Reviewed by Martin Robinson.

  • gtk/install-dependencies:
11:07 PM Changeset in webkit [150625] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Compositor API change: Don't pass the unused "viewport" parameter.
https://bugs.webkit.org/show_bug.cgi?id=116545
Internal PR 189775

Patch by Jakob Petsovits <jpetsovits@blackberry.com> on 2013-05-23
Reviewed by Rob Buis.

Also change the name of the "documentContents" parameter
to the more descriptive "documentSrcRect".

  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositorPrivate::render):
(BlackBerry::WebKit::WebPageCompositor::render):

  • Api/WebPageCompositor.h:
  • Api/WebPageCompositor_p.h:

(WebPageCompositorPrivate):

10:14 PM Changeset in webkit [150624] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

[WK2][EFL][QT] Build break after r150610
https://bugs.webkit.org/show_bug.cgi?id=116699

Patch by Ryuan Choi <ryuan.choi@samsung.com> on 2013-05-23
Reviewed by Csaba Osztrogonác.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::findPlugin): Initialized pluginProcessSandboxPolicy.

7:59 PM Changeset in webkit [150623] by Lucas Forschler
  • 1 copy in tags/Safari-537.43.1

New Tag.

6:35 PM Changeset in webkit [150622] by fpizlo@apple.com
  • 11 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: rationalize DFG::CapabilityLevel and DFGCapabilities.[h|cpp]
https://bugs.webkit.org/show_bug.cgi?id=116696

Reviewed by Sam Weinig.

Make it so that all capability calculation is funneled through one function, which tells
you everything you wanted to know: can it be inlined, and can it be compiled.

This work will help with https://bugs.webkit.org/show_bug.cgi?id=116557, since now the
JIT has a fairly authoritative answer to the "can it be inlined" question.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):
(JSC::ProgramCodeBlock::capabilityLevelInternal):
(JSC::EvalCodeBlock::capabilityLevelInternal):
(JSC::FunctionCodeBlock::capabilityLevelInternal):

  • bytecode/CodeBlock.h:

(CodeBlock):
(JSC::CodeBlock::capabilityLevel):
(JSC::CodeBlock::capabilityLevelState):
(ProgramCodeBlock):
(EvalCodeBlock):
(FunctionCodeBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::debugFail):
(DFG):
(JSC::DFG::canInlineResolveOperations):
(JSC::DFG::capabilityLevel):

  • dfg/DFGCapabilities.h:

(DFG):
(JSC::DFG::capabilityLevel):
(JSC::DFG::evalCapabilityLevel):
(JSC::DFG::programCapabilityLevel):
(JSC::DFG::functionForCallCapabilityLevel):
(JSC::DFG::functionForConstructCapabilityLevel):
(JSC::DFG::canInlineFunctionForCall):
(JSC::DFG::canInlineFunctionForClosureCall):
(JSC::DFG::canInlineFunctionForConstruct):

  • dfg/DFGCommon.h:

(JSC::DFG::canCompile):
(DFG):
(JSC::DFG::canInline):
(JSC::DFG::leastUpperBound):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::privateCompilePutByIdTransition):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::privateCompilePutByIdTransition):

  • tools/CodeProfile.cpp:

(JSC::CodeProfile::sample):

6:33 PM Changeset in webkit [150621] by Brent Fulgham
  • 2 edits in trunk/Source/WTF

[Windows] Rolling back r150600 as it breaks the VS2010 builds.

  • wtf/StackBounds.cpp: Rollback.
5:43 PM Changeset in webkit [150620] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Shim Flash plug-in to allow its updater to run
https://bugs.webkit.org/show_bug.cgi?id=116692
<rdar://problem/13938510>

Reviewed by Sam Weinig.

  • PluginProcess/PluginProcess.h:
  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::replacedNSConcreteTask_launch):
(WebKit::initializeCocoaOverrides):
Patch -[NSConcreteTask launch] to call PluginProcess::launchProcess.

(WebKit::PluginProcess::launchProcess):
Send a LaunchProcess message to the UI process.

  • UIProcess/Plugins/PluginProcessProxy.cpp:
  • UIProcess/Plugins/PluginProcessProxy.h:

Remove PluginProcessProxy::didReceiveMessage.

(PluginProcessProxy):

  • UIProcess/Plugins/PluginProcessProxy.messages.in:

Add LaunchProcess message and remove LegacyReceiver attribute.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::isFlashUpdater):
Helper function to determine whether the process is the flash updater.

(WebKit::shouldLaunchProcess):
Return whether we should launch this process.

(WebKit::PluginProcessProxy::launchProcess):
Determine if we should launch this process and then do so.

5:41 PM Changeset in webkit [150619] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Unreviewed change for NRWT support.

  • Scripts/webkitpy/port/win.py:

(WinPort.default_child_processes): Added a default implementation
that limits NRWT to a single instance.

5:03 PM Changeset in webkit [150618] by roger_fong@apple.com
  • 3 edits in trunk/Source/WebCore

Unreviewed. Modify WebCore for AppleWin 2010 production build.

  • WebCore.vcxproj/WebCoreGenerated.make:

(WebCore::AXObjectCache::frameLoadingEventPlatformNotification):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
4:44 PM Changeset in webkit [150617] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Rebaseline after r150593
https://bugs.webkit.org/show_bug.cgi?id=116695

Unreviewed gardening.

Moved some editing tests from execCommand into pasteboard.

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-23

  • platform/efl/TestExpectations:
4:22 PM Changeset in webkit [150616] by fpizlo@apple.com
  • 6 edits in trunk/LayoutTests

Make Math.imul tests run quicker, and fix some other bugs.

Rubber stampted by Oliver Hunt.

Also make tests not call print().

  • fast/js/regress/script-tests/cell-argument.js:
  • fast/js/regress/script-tests/imul-double-only.js:

(f):

  • fast/js/regress/script-tests/imul-int-only.js:

(f):

  • fast/js/regress/script-tests/imul-mixed.js:

(f):

  • fast/js/regress/script-tests/object-closure-call.js:
4:00 PM Changeset in webkit [150615] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Remove meaningless "test_uses_apache" from Python test cases.
https://bugs.webkit.org/show_bug.cgi?id=38756

Patch by Brent Fulgham <Brent Fulgham> on 2013-05-23
Reviewed by Ryosuke Niwa.

  • Scripts/webkitpy/port/port_testcase.py:

(PortTestCase.test_driver_cmd_line): Remove the meaningless
"test_uses_apache" test case from the Python test infrastructure.
It was hard-coded to true, even though not all ports use
Apache.

2:44 PM Changeset in webkit [150614] by Lucas Forschler
  • 2 edits in branches/safari-537.43-branch/Source/WebKit2

Merged r150610. <rdar://problem/13975569>

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

We need to clear main resource when detaching DocumentLoader from the frame.
https://bugs.webkit.org/show_bug.cgi?id=116680

Normally, when we detach the documentLoader in DocumentLoader::detachFromFrame, main resource is also cleared
in stopLoading(). There is possibility that main resource not being cleared, and this could cause crash later
since docLoader could still receive resource callbacks. To avoid that, we can remove docLoader from main resource's
client set in detachFromFrame.

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2013-05-23
Reviewed by Brady Eidson.

No new tests, this doesn't happen on OS X.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::detachFromFrame):
(WebCore::DocumentLoader::clearMainResource):

  • loader/cache/CachedResource.h: make hasClient accessible publicly.

(WebCore::CachedResource::hasClient):
(CachedResource):

1:59 PM Changeset in webkit [150612] by Brent Fulgham
  • 3 edits in trunk/Tools

[Windows] Update new-run-webkit-tests for Windows port.
https://bugs.webkit.org/show_bug.cgi?id=38756

Patch by Brent Fulgham <bfulgham@webkit.org> on 2013-05-23
Reviewed by Ryosuke Niwa.

  • Scripts/new-run-webkit-httpd:

(run): Switch from 'chromium' to 'win'

  • Scripts/webkitpy/port/win.py:

(WinPort): Add support methods for lighttpd server.
(WinPort._uses_apache):
(WinPort._path_to_lighttpd):
(WinPort._path_to_lighttpd_modules):
(WinPort._path_to_lighttpd_php):

1:56 PM Changeset in webkit [150611] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk
assertion failed: !node
node->isElementNode() in WebCore::RenderBlock::clone

https://bugs.webkit.org/show_bug.cgi?id=116614

Patch by Mihai Maerean <Mihai Maerean> on 2013-05-23
Reviewed by David Hyatt.

Source/WebCore:

Add a test for flow threads so they don't end up being cloned in region based multi columns with columns:1 where
the only child has column-span:all.

Test: fast/multicol/newmulticol/direct-child-column-span-all.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):

LayoutTests:

  • fast/multicol/newmulticol/direct-child-column-span-all-expected.txt: Added.
  • fast/multicol/newmulticol/direct-child-column-span-all.html: Added.
1:48 PM Changeset in webkit [150610] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Don't run all plug-ins unsandboxed
https://bugs.webkit.org/show_bug.cgi?id=116690
<rdar://problem/13975569>

Reviewed by Jessie Berlin.

Remove debugging code.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::findPlugin):

1:08 PM Changeset in webkit [150609] by andersca@apple.com
  • 7 edits in trunk/Source

Crash in convertMainResourceLoadToDownload when downloading file by option-return
https://bugs.webkit.org/show_bug.cgi?id=116451

Reviewed by Andreas Kling.

Source/WebCore:

Handle MainResourceLoader being null here which will happen when loading a cached main resource.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::continueAfterContentPolicy):

Source/WebKit/mac:

If the main resource loader is null, create a new download instead since there's no existing loader to convert.

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::convertMainResourceLoadToDownload):

Source/WebKit2:

If the main resource loader is null, create a new download instead since there's no existing loader to convert.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::convertMainResourceLoadToDownload):

12:56 PM Changeset in webkit [150608] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Remove a stale test expectation.

  • platform/wk2/TestExpectations:
12:49 PM Changeset in webkit [150607] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mac test expectations for the bug 85408 as bugs 116398 and 116477 have been merged into it.

  • platform/mac/TestExpectations:
12:46 PM Changeset in webkit [150606] by benjamin@webkit.org
  • 12 edits in trunk/Source/WebCore

KURL::createCFURL() should return a RetainPtr<CFURLRef>
https://bugs.webkit.org/show_bug.cgi?id=116644

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-05-23
Reviewed by Andreas Kling.

For consistency with the other createCFType() APIs in WebKit, KURL should
return a RetainPtr<> instead of raw +1 CFURLRef.

No leak were discovered while making this change.

  • platform/KURL.h:
  • platform/cf/KURLCFNet.cpp:

(WebCore):
(WebCore::createCFURLFromBuffer):
(WebCore::KURL::createCFURL):
(WebCore::KURL::fileSystemPath):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::AVFWrapper::createAssetForURL):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::setURLForRect):

  • platform/mac/KURLMac.mm:

(WebCore):
(WebCore::KURL::operator NSURL *):
(WebCore::KURL::createCFURL):

  • platform/network/cf/CookieJarCFNet.cpp:

(WebCore::setCookiesFromDOM):
(WebCore::cookiesForDOM):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::getRawCookies):
(WebCore::deleteCookie):

  • platform/network/cf/DNSCFNet.cpp:

(WebCore::DNSResolveQueue::platformProxyIsEnabledInSystemPreferences):

  • platform/network/cf/ProxyServerCFNet.cpp:

(WebCore::addProxyServersForURL):

  • platform/network/cf/ResourceRequestCFNet.cpp:

(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdatePlatformHTTPBody):

  • platform/network/cf/ResourceResponseCFNet.cpp:

(WebCore::ResourceResponse::cfURLResponse):

  • platform/network/cf/SocketStreamHandleCFNet.cpp:

(WebCore::SocketStreamHandle::SocketStreamHandle):

12:42 PM Changeset in webkit [150605] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add back failing test expectations for the bugs 88672 and 89528 after r150558 and r150559 on Lion.

  • platform/mac/TestExpectations:
12:37 PM Changeset in webkit [150604] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

fast/workers/storage/use-same-database-in-page-and-workers.html times out on the lion bots
https://bugs.webkit.org/show_bug.cgi?id=81618

Add back the flaky test failure on Mac.

  • platform/mac/TestExpectations:
12:19 PM Changeset in webkit [150603] by Patrick Gansterer
  • 3 edits in trunk/Source/WTF

Use correct stack size on Solaris and OpenBSD
https://bugs.webkit.org/show_bug.cgi?id=114978

Reviewed by Oliver Hunt.

Original patch by David Hill <david@wmol.com>.

Use stack_t.ss_size for getting the size of the stack.

  • wtf/Platform.h:
  • wtf/StackBounds.cpp:

(WTF):
(WTF::StackBounds::initialize):

11:55 AM Changeset in webkit [150602] by robert@webkit.org
  • 5 edits
    2 adds in trunk

The ellipsis in a text overflow should not avoid floats
https://bugs.webkit.org/show_bug.cgi?id=115746

Reviewed by David Hyatt.

Source/WebCore:

When placing an ellipsis for text overflow we shouldn't avoid any floats on the line.
That is to say, if there is a float in the box we overflow we should let our no-wrap text,
including the ellipsis, render inside the float just as we would if overflow was hidden but
a text-overflow rendering had not been specified.

Test: fast/css/text-overflow-ellipsis-behind-floats.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::checkLinesForTextOverflow):

LayoutTests:

  • fast/css/text-overflow-ellipsis-behind-floats-expected.html: Added.
  • fast/css/text-overflow-ellipsis-behind-floats.html: Added.
  • fast/css/text-overflow-ellipsis-full-truncate-rtl-expected.html:
  • fast/css/text-overflow-ellipsis-full-truncate-rtl.html: Change this test to expect the text to cross into the floating input element and render the ellipsis at the left extreme of the element. The previous expected rendering relied on the incorrect premise that an overflow ellipsis should avoid floated elements.
11:51 AM Changeset in webkit [150601] by Lucas Forschler
  • 15 edits in branches/safari-537.43-branch/Source

Merged r150556. <rdar://problem/13918391>

11:51 AM Changeset in webkit [150600] by Patrick Gansterer
  • 2 edits in trunk/Source/WTF

[WIN] Implement correct detection of stack size
https://bugs.webkit.org/show_bug.cgi?id=116661

Reviewed by Oliver Hunt.

  • wtf/StackBounds.cpp:

(WTF):
(WTF::StackBounds::initialize):

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

<rdar://problem/13849260> Sandbox violations reading .CFUserTextEncoding

Reviewed by Dan Bernstein.

  • WebProcess/com.apple.WebProcess.sb.in: Allow this.
11:48 AM Changeset in webkit [150598] by Lucas Forschler
  • 2 edits in branches/safari-537.43-branch/Source/WebKit2

Merged r150543. <rdar://problem/13904054>

11:44 AM Changeset in webkit [150597] by Lucas Forschler
  • 6 edits in branches/safari-537.43-branch/Source/WebKit2

Merged r150537. <rdar://problem/13964515>

11:30 AM Changeset in webkit [150596] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

[Lion] [WK2] compositing/overflow/overflow-compositing-descendant.html
https://bugs.webkit.org/show_bug.cgi?id=116684

Add a timeout/failure test expectation. Also update the expected result since the first frame
of the video must be shown in this test.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/compositing/overflow/overflow-compositing-descendant-expected.png:
11:03 AM Changeset in webkit [150595] by barraclough@apple.com
  • 2 edits in trunk/Source/WebKit2

Move posix_spawn onto a zero delay timer
https://bugs.webkit.org/show_bug.cgi?id=116682

Reviewed by Anders Carlson.

<rdar://problem/13973468>

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:

(ReexecInfo):

  • struct to hold info from the XPC message.

(WebKit::reexec):

  • moved call to posix_spawn out to this helper.

(WebKit::reexecCallBack):

  • calls reexec.

(WebKit::XPCServiceEventHandler):

  • removed call to posix_spawn; schedule a call to reexecCallBack.
10:52 AM Changeset in webkit [150594] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

Fix loader/go-back-cached-main-resource.html test
https://bugs.webkit.org/show_bug.cgi?id=116670

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-05-23
Reviewed by Alexey Proskuryakov.

The page does not get an onload when being restored from page cache. The
test case case is modified to handle pageshow event instead.

  • loader/go-back-cached-main-resource.html: Wait for the third

'first-page' message to finish the test.

  • loader/resources/first-page.html: Use onpageshow instead of onload.
  • loader/resources/other-page.html: Ditto.
10:50 AM Changeset in webkit [150593] by rniwa@webkit.org
  • 1 edit
    13 moves in trunk/LayoutTests

Several editing tests that copy & paste slow down Mac WK2 EWS
https://bugs.webkit.org/show_bug.cgi?id=116681

Reviewed by Anders Carlsson.

Move editing tests that trigger copy and paste from execCommand into pasteboard.
Since NWRT uses a single instance of WebKitTestRunner to run tests in single directory,
this should mitigate the issue for now.

In the long term, we should really mock out the clipboard in WebKitTestRunner.

  • editing/execCommand/4128080-2-expected.txt: Removed.
  • editing/execCommand/4128080-2.html: Removed.
  • editing/execCommand/5939887-expected.txt: Removed.
  • editing/execCommand/5939887.html: Removed.
  • editing/execCommand/copy-without-selection-expected.txt: Removed.
  • editing/execCommand/copy-without-selection.html: Removed.
  • editing/execCommand/paste-2.html: Removed.
  • editing/pasteboard/copy-cut-paste-events-fired-when-disabled-expected.txt: Copied from LayoutTests/editing/execCommand/5939887-expected.txt.
  • editing/pasteboard/copy-cut-paste-events-fired-when-disabled.html: Copied from LayoutTests/editing/execCommand/5939887.html.
  • editing/pasteboard/copy-inside-h1-preserves-h1-expected.txt: Copied from LayoutTests/editing/execCommand/4128080-2-expected.txt.
  • editing/pasteboard/copy-inside-h1-preserves-h1.html: Copied from LayoutTests/editing/execCommand/4128080-2.html.
  • editing/pasteboard/copy-without-selection-expected.txt: Copied from LayoutTests/editing/execCommand/copy-without-selection-expected.txt.
  • editing/pasteboard/copy-without-selection.html: Copied from LayoutTests/editing/execCommand/copy-without-selection.html.
  • editing/pasteboard/paste-2.html: Copied from LayoutTests/editing/execCommand/paste-2.html.
  • platform/gtk/editing/execCommand/paste-2-expected.png: Removed.
  • platform/gtk/editing/execCommand/paste-2-expected.txt: Removed.
  • platform/gtk/editing/pasteboard/paste-2-expected.png: Copied from LayoutTests/platform/gtk/editing/execCommand/paste-2-expected.png.
  • platform/gtk/editing/pasteboard/paste-2-expected.txt: Copied from LayoutTests/platform/gtk/editing/execCommand/paste-2-expected.txt.
  • platform/mac/editing/execCommand/paste-2-expected.png: Removed.
  • platform/mac/editing/execCommand/paste-2-expected.txt: Removed.
  • platform/mac/editing/pasteboard/paste-2-expected.png: Copied from LayoutTests/platform/mac/editing/execCommand/paste-2-expected.png.
  • platform/mac/editing/pasteboard/paste-2-expected.txt: Copied from LayoutTests/platform/mac/editing/execCommand/paste-2-expected.txt.
  • platform/qt/editing/execCommand/paste-2-expected.png: Removed.
  • platform/qt/editing/execCommand/paste-2-expected.txt: Removed.
  • platform/qt/editing/pasteboard/paste-2-expected.png: Copied from LayoutTests/platform/qt/editing/execCommand/paste-2-expected.png.
  • platform/qt/editing/pasteboard/paste-2-expected.txt: Copied from LayoutTests/platform/qt/editing/execCommand/paste-2-expected.txt.
10:49 AM Changeset in webkit [150592] by Patrick Gansterer
  • 2 edits in trunk/Tools

Make default bug links in buildbot clickable
https://bugs.webkit.org/show_bug.cgi?id=116673

Reviewed by Ryosuke Niwa.

Use changecommentlink of html.WebStatus to make the links clickable.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:
10:39 AM WebKit Team edited by levin@chromium.org
(diff)
10:17 AM Changeset in webkit [150591] by Patrick Gansterer
  • 2 edits in trunk/Websites/bugs.webkit.org

EWS bubbles need more space
https://bugs.webkit.org/show_bug.cgi?id=116675

Reviewed by Andreas Kling.

  • template/en/custom/attachment/list.html.tmpl:
9:45 AM Changeset in webkit [150590] by Christophe Dumez
  • 13 edits in trunk

Unreviewed, rolling out r150586.
http://trac.webkit.org/changeset/150586
https://bugs.webkit.org/show_bug.cgi?id=116660

Those constructors should be exposed on the WorkerContext, not
the DOMWindow

Source/WebCore:

  • fileapi/FileReaderSync.idl:
  • workers/WorkerLocation.idl:

LayoutTests:

  • fast/js/global-constructors-attributes-expected.txt:
  • platform/efl/fast/js/constructor-length-expected.txt:
  • platform/efl/fast/js/global-constructors-attributes-expected.txt:
  • platform/gtk/fast/js/constructor-length-expected.txt:
  • platform/gtk/fast/js/global-constructors-attributes-expected.txt:
  • platform/mac-lion/fast/js/global-constructors-attributes-expected.txt:
  • platform/mac/fast/js/constructor-length-expected.txt:
  • platform/qt/fast/js/constructor-length-expected.txt:
  • platform/qt/fast/js/global-constructors-attributes-expected.txt:
9:13 AM Changeset in webkit [150589] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[CSS Regions][Mac] [WK2] Layout Test fast/regions/fixed-pos-elem-in-region.html is flaky on Debug builders
https://bugs.webkit.org/show_bug.cgi?id=114571

Tests seems to be passing now, removed from TestExpectations.

Patch by Radu Stavila <stavila@adobe.com> on 2013-05-23
Reviewed by Anders Carlsson.

  • platform/mac-wk2/TestExpectations:
9:11 AM Changeset in webkit [150588] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] The web context does not contain any link properties if the context node is an image enclosed by a link node
https://bugs.webkit.org/show_bug.cgi?id=116627

Patch by Ed Baker <edbaker@blackberry.com> on 2013-05-23
Reviewed by Xan Lopez.

PR #341084

If the context node has an image tag and an enclosing link node was detected then add the link properties to the context.

Internally Reviewed by Gen Mak.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::webContext):

8:55 AM Changeset in webkit [150587] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Validate form data before doing direct submission.
https://bugs.webkit.org/show_bug.cgi?id=116674

Reviewed by Xan Lopez.

PR 314202.

Check validation of the input form before triggering direct submission.

Internally Reviewed by Nima Ghanavatian.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::submitForm):

8:20 AM Changeset in webkit [150586] by Christophe Dumez
  • 13 edits in trunk

Remove [NoInterfaceObject] from FileReaderSync and WorkerLocation
https://bugs.webkit.org/show_bug.cgi?id=116660

Reviewed by Kentaro Hara.

Source/WebCore:

Remove [NoInterfaceObject] from FileReaderSync and WorkerLocation to match their
respective specifications:

No new tests, covered by existing tests.

  • fileapi/FileReaderSync.idl:
  • workers/WorkerLocation.idl:

LayoutTests:

Rebaseline a couple of test cases now that FileReaderSync and WorkerLocation
attributes are exposed on the global Window object.

  • fast/js/global-constructors-attributes-expected.txt:
  • platform/efl/fast/js/constructor-length-expected.txt:
  • platform/efl/fast/js/global-constructors-attributes-expected.txt:
  • platform/gtk/fast/js/constructor-length-expected.txt:
  • platform/gtk/fast/js/global-constructors-attributes-expected.txt:
  • platform/mac-lion/fast/js/global-constructors-attributes-expected.txt:
  • platform/mac/fast/js/constructor-length-expected.txt:
  • platform/qt/fast/js/constructor-length-expected.txt:
  • platform/qt/fast/js/global-constructors-attributes-expected.txt:
7:14 AM Changeset in webkit [150585] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Properly fill the ResourceError in FrameLoaderClientBlackBerry::cannotShowURLError
https://bugs.webkit.org/show_bug.cgi?id=116603

Patch by Rob Buis <rbuis@rim.com> on 2013-05-23
Reviewed by Xan Lopez.

PR 119789
Internally reviewed by Yong Li.

Provide a domain value for this ResourceError instance. Note that
this does not change behavior.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::didRestoreFromPageCache):

7:00 AM Changeset in webkit [150584] by zarvai@inf.u-szeged.hu
  • 3 edits
    2 adds in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk2/TestExpectations: Skip some failing test.
  • platform/qt-5.0-wk2/fast/forms/select-baseline-expected.png: Rebaselined after r148594.
  • platform/qt-5.0-wk2/fast/forms/select-baseline-expected.txt:
  • platform/qt-5.0-wk2/fast/images/repaint-subrect-grid-expected.txt: Rebaselined after r149292.
6:42 AM TestExpectations edited by simon.pena@samsung.com
Link to "Writing Reftests" to explain more on reference tests (diff)
6:17 AM Changeset in webkit [150583] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

[cmake] Fix generating-forwarding-headers rule after r150460
https://bugs.webkit.org/show_bug.cgi?id=116659

Reviewed by Christophe Dumez.

  • CMakeLists.txt: Typo fix.
5:45 AM Changeset in webkit [150582] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[GTK] Remote Web Inspector sometimes won't serve any content
https://bugs.webkit.org/show_bug.cgi?id=116225

Patch by Anton Obzhirov <Anton Obzhirov> on 2013-05-23
Reviewed by Gustavo Noronha Silva.

Added an option to use environment variable to set up path to
inspector server files. Implementation is similar to InspectorClientGtk
implementation.

  • UIProcess/InspectorServer/WebInspectorServer.h:

(WebInspectorServer):

  • UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:

(WebKit::WebInspectorServer::platformResourceForPath):
(WebKit::WebInspectorServer::inspectorServerFilesPath):
(WebKit):

5:30 AM Changeset in webkit [150581] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Use WK2 C API in ewk_view_pagination_mode_set|get
https://bugs.webkit.org/show_bug.cgi?id=116657

Reviewed by Christophe Dumez.

WKPageGet|SetPaginationMode APIs is present in WK2 C APIs. So, we need to use them for
ewk_view_pagination_mode_set|get.

Besides we don't need to use WebCore namespace anymore.

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_pagination_mode_set):
(ewk_view_pagination_mode_get):

5:22 AM Changeset in webkit [150580] by Christophe Dumez
  • 13 edits in trunk/Source/WebCore

Remove special case for MessagePortArray from bindings generator
https://bugs.webkit.org/show_bug.cgi?id=116653

Reviewed by Kentaro Hara.

Use MessagePort[] instead of MessagePortArray type in the IDL as MessagePortArray
is not defined on IDL side. This allows us to remove the special case for
MessagePortArray from the bindings generator.

No new tests, no behavior change.

  • bindings/js/JSMessageEventCustom.cpp:

(WebCore::JSMessageEvent::data):

  • bindings/scripts/CodeGeneratorJS.pm:

(NativeToJSValue): Remove special case for MessagePortArray.

  • bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h:

(WebDOMTestSerializedScriptValueInterface):

  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:

(webkit_dom_test_serialized_script_value_interface_get_property):
(webkit_dom_test_serialized_script_value_interface_class_init):

  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::jsTestSerializedScriptValueInterfacePorts):

  • bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.mm:
  • bindings/scripts/test/TestSerializedScriptValueInterface.idl: Replace MessagePortArray

by MessagePort[].

  • dom/MessageEvent.h:

(WebCore::MessageEvent::ports): The method should return a Vector, not a Vector*
as the array on JavaScript side is not nullable.

  • dom/MessageEvent.idl: Replace MessagePortArray by MessagePort[].
3:32 AM Changeset in webkit [150579] by kbalazs@webkit.org
  • 3 edits in trunk/LayoutTests

media/W3C/video/networkState/networkState_during_progress.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=76280

Unreviewed gardening.

Change expectation to the correct output and mark as flaky.

  • TestExpectations:
  • media/W3C/video/networkState/networkState_during_progress-expected.txt:
2:26 AM Changeset in webkit [150578] by kadam@inf.u-szeged.hu
  • 4 edits in trunk/Source/WebKit2

Support frame instrumentation for coordinated graphics
https://bugs.webkit.org/show_bug.cgi?id=115260

Patch by Roland Takacs <rtakacs@inf.u-szeged.hu> on 2013-05-23
Reviewed by Andreas Kling.

Enabled supportsFrameInstrumentation on ports that use coordinated graphics
by calling didBeginFrame().

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::supportsFrameInstrumentation):
(WebKit):

  • WebProcess/WebCoreSupport/WebInspectorClient.h:

(WebInspectorClient):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::syncDisplayState):

2:20 AM Changeset in webkit [150577] by zarvai@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk1/TestExpectations: Remove a test failure that skipped in qt.
  • platform/qt/TestExpectations: Unskip now passing test.
1:39 AM Changeset in webkit [150576] by zarvai@inf.u-szeged.hu
  • 3 edits
    1 add in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk2/TestExpectations: Unskip after rebaseline.
  • platform/qt/TestExpectations: Skip flaky test.
  • platform/qt/plugins/mouse-events-expected.txt: Rebaselining after r150558.
12:06 AM Changeset in webkit [150575] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Back, Forward and Stop should be hidden in context menu
https://bugs.webkit.org/show_bug.cgi?id=116615

Patch by Michał Pakuła vel Rutka <Michał Pakuła vel Rutka> on 2013-05-23
Reviewed by Christophe Dumez.

Context menu items: Back, Forward, Stop, Reload, should be shown only when
they are able to perform action.

No new tests - no new functionality.

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::populate):

May 22, 2013:

11:32 PM Changeset in webkit [150574] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Updated the bug associated with the failure of media/context-menu-actions.html
from the bug 45021 to the bug 116651 since the former is the bug for which this test was added.

Also skip this test it has been timing out intermittently.

  • platform/mac/TestExpectations:
11:22 PM Changeset in webkit [150573] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mac test expectation for the bug 82980.
The test is consistently timing out instead of being flaky now.

  • platform/mac/TestExpectations:
11:20 PM Changeset in webkit [150572] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add back two Lion test expectations after r150558 and r150559.

  • platform/mac/TestExpectations:
11:03 PM Changeset in webkit [150571] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Make the test expectation for the bug 116649 specific to WK2
as the test is passing on WK1.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
11:01 PM Changeset in webkit [150570] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Mark media/audio-repaint.html as always failing on Mac.

Also add back a failing test expectation to compositing/rtl/rtl-fixed-overflow-scrolled.html on Mac WK2.

Also add failing test expectation for the bug 116649.

  • platform/mac/TestExpectations:
10:18 PM Changeset in webkit [150569] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

Use uninitialized register in "JIT::emit_op_neq_null" and "emit_op_eq_null"
https://bugs.webkit.org/show_bug.cgi?id=116593

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2013-05-22
Reviewed by Filip Pizlo.

Generated instructions using uninitialized register. It's caused by a mistake of r126494.

Source/JavaScriptCore:

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_eq_null):
(JSC::JIT::emit_op_neq_null):

LayoutTests:

  • fast/js/neq-null-crash-expected.txt: Added.
  • fast/js/neq-null-crash.html: Added.
  • fast/js/script-tests/neq-null-crash.js: Added.
10:07 PM Changeset in webkit [150568] by fpizlo@apple.com
  • 7 edits in branches/dfgFourthTier/Source/JavaScriptCore

Merge http://trac.webkit.org/changeset/149162, since we need it after
we merged some bytecode refactorings.

2013-04-25 Filip Pizlo <fpizlo@apple.com>


DFG doesn't support to_jsnumber
https://bugs.webkit.org/show_bug.cgi?id=115129


Reviewed by Geoffrey Garen.


Based on Oliver's patch. Implements to_jsnumber as Identity(Number:@thingy), and then does
an optimization in Fixup to turn Identity(Number:) into Identity(Int32:) if the predictions
tell us to. Identity is later turned into Phantom.


Also fixed BackPropMask, which appeared to have NodeDoesNotExit included in it. That's
wrong; NodeDoesNotExit is not a backward propagation property.


Also fixed Identity to be marked as CanExit (i.e. not NodeDoesNotExit).


This more than doubles the FPS on ammo.


  • dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::parseBlock):
  • dfg/DFGCapabilities.h: (JSC::DFG::canCompileOpcode):
  • dfg/DFGFixupPhase.cpp: (JSC::DFG::FixupPhase::fixupNode): (FixupPhase): (JSC::DFG::FixupPhase::observeUseKindOnNode): (JSC::DFG::FixupPhase::observeUseKindOnEdge):
  • dfg/DFGNodeFlags.h: (DFG):
  • dfg/DFGNodeType.h: (DFG):
  • dfg/DFGPredictionPropagationPhase.cpp: (JSC::DFG::PredictionPropagationPhase::propagate):
10:00 PM Changeset in webkit [150567] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

Fix indentation of CodeBlock.h

Rubber stamped by Mark Hahnenberg.

  • bytecode/CodeBlock.h:
10:00 PM Changeset in webkit [150566] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix indentation of CodeBlock.h

Rubber stampted by Mark Hahnenberg.

  • bytecode/CodeBlock.h:
9:53 PM Changeset in webkit [150565] by fpizlo@apple.com
  • 22 edits in branches/dfgFourthTier/Source/JavaScriptCore

Rename getJITCode and getJITType to jitCode and jitType.

Rubber stampted by Mark Hahnenberg.

  • assembler/RepatchBuffer.h:

(JSC::RepatchBuffer::RepatchBuffer):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):
(JSC::CodeBlock::visitAggregate):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::resetStubInternal):
(JSC::CodeBlock::stronglyVisitWeakReferences):
(JSC::CodeBlock::baselineVersion):
(JSC::CodeBlock::hasOptimizedReplacement):
(JSC::CodeBlock::bytecodeOffset):
(JSC::CodeBlock::codeOriginForReturn):
(JSC::ProgramCodeBlock::compileOptimized):
(JSC::EvalCodeBlock::compileOptimized):
(JSC::FunctionCodeBlock::compileOptimized):
(JSC::ProgramCodeBlock::jettison):
(JSC::EvalCodeBlock::jettison):
(JSC::FunctionCodeBlock::jettison):
(JSC::ProgramCodeBlock::jitCompileImpl):
(JSC::EvalCodeBlock::jitCompileImpl):
(JSC::FunctionCodeBlock::jitCompileImpl):
(JSC::CodeBlock::setOptimizationThresholdBasedOnCompilationResult):
(JSC::CodeBlock::adjustedExitCountThreshold):
(JSC::CodeBlock::tallyFrequentExitSites):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::getCallLinkInfo):
(JSC::CodeBlock::jitCode):
(JSC::CodeBlock::jitCodeWithArityCheck):
(JSC::CodeBlock::jitType):
(JSC::CodeBlock::hasBaselineJITProfiling):
(JSC::CodeBlock::jitCompile):
(JSC::CodeBlock::addFrequentExitSite):
(JSC::CodeBlock::shouldImmediatelyAssumeLivenessDuringScan):
(JSC::ExecState::isInlineCallFrame):

  • dfg/DFGAssemblyHelpers.cpp:

(JSC::DFG::AssemblyHelpers::decodedCodeMapFor):

  • dfg/DFGAssemblyHelpers.h:

(JSC::DFG::AssemblyHelpers::AssemblyHelpers):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::codeLocationForRepatch):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::reifyInlinedCallFrames):
(JSC::DFG::adjustAndJumpToTarget):

  • dfg/DFGOperations.cpp:
  • dfg/DFGVariableEventStream.cpp:

(JSC::DFG::VariableEventStream::reconstruct):

  • ftl/FTLOSRExit.cpp:

(JSC::FTL::OSRExit::codeLocationForRepatch):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileFTLOSRExit):

  • heap/DFGCodeBlocks.cpp:

(JSC::DFGCodeBlocks::~DFGCodeBlocks):
(JSC::DFGCodeBlocks::jettison):
(JSC::DFGCodeBlocks::clearMarks):
(JSC::DFGCodeBlocks::deleteUnmarkedJettisonedCodeBlocks):
(JSC::DFGCodeBlocks::traceMarkedCodeBlocks):

  • interpreter/Interpreter.cpp:

(JSC::getLineNumberForCallFrame):
(JSC::getCallerInfo):

  • jit/JITDriver.h:

(JSC::jitCompileIfAppropriateImpl):
(JSC::jitCompileFunctionIfAppropriateImpl):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

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

  • runtime/Executable.cpp:

(JSC::jettisonCodeBlock):
(JSC::EvalExecutable::compileOptimized):
(JSC::EvalExecutable::jettisonOptimizedCode):
(JSC::ProgramExecutable::compileOptimized):
(JSC::ProgramExecutable::jettisonOptimizedCode):
(JSC::FunctionExecutable::baselineCodeBlockFor):
(JSC::FunctionExecutable::compileOptimizedForCall):
(JSC::FunctionExecutable::compileOptimizedForConstruct):
(JSC::FunctionExecutable::jettisonOptimizedCodeForCall):
(JSC::FunctionExecutable::jettisonOptimizedCodeForConstruct):

  • tools/CodeProfile.cpp:

(JSC::CodeProfile::sample):

9:26 PM Changeset in webkit [150564] by rniwa@webkit.org
  • 2 edits in trunk/Tools

REGRESSION(r150491): WebKit2.DOMWindowExtensionNoCache fails
https://bugs.webkit.org/show_bug.cgi?id=116595

Temporarily skip this test.

  • TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache.cpp:

(TestWebKitAPI::TEST):

9:15 PM Changeset in webkit [150563] by fpizlo@apple.com
  • 5 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Race between LLInt->Baseline tier-up and DFG reading Baseline profiling data
https://bugs.webkit.org/show_bug.cgi?id=116633

Reviewed by Mark Hahnenberg.

Previously we would check if we had Baseline JIT profiling data by seeing if the
appropriate vector was non-empty. This is horrible if we're doing LLInt->Baseline
tier-up at the same time. This will happen for code we are inlining, if we're
deciding to inline it before the LLInt->Baseline tier-up happened for that code.

This changes things to take advantage of the fact that the very last thing that
LLInt->Baseline tier-up will do (in JITDriver.h) is setJITCode(). We now precede
the actual work in setJITCode() with a store-store fence to ensure that all
stores to modify the CodeBlock happen before setting the JITCode, and we modify
CodeBlock::getJITType() to use load-load fences to ensure that if you see
JITCode::BaselineJIT then you will also see all of those vectors. Then this
changes all of the code that scrapes Baseline JIT profiles to check if
getJITType() returns JITCode::BaselineJIT instead of checking vector sizes.

The outcome is that for the non-racy cases we behave as we did before (we fall
back on LLInt profiling if the tier-up hasn't happened) and for racy cases we
use LLInt profiling conservatively.

Note that for some (but not all!) of the cases where we scrape Baseline JIT
profiling, we would have anyway been holding the CodeBlock::m_lock so we can also
fix those cases by just having setJITCode graph that lock. This patch does that
also, mainly because although we only call setJITCode() from the main thread, in
general it's dangerous to have a pointer to a ref-counted object being modified
in a racy way. So, this patch just does the most conservative thing possible that
does we can afford to do.

  • bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::computeFor):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::setJITCode):
(JSC::CodeBlock::getJITType):
(JSC::CodeBlock::hasBaselineJITProfiling):
(JSC::CodeBlock::likelyToTakeSlowCase):
(JSC::CodeBlock::couldTakeSlowCase):
(JSC::CodeBlock::likelyToTakeSpecialFastCase):
(JSC::CodeBlock::couldTakeSpecialFastCase):
(JSC::CodeBlock::likelyToTakeDeepestSlowCase):
(JSC::CodeBlock::likelyToTakeAnySlowCase):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFor):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor):

8:41 PM Changeset in webkit [150562] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Skip 3 more tests which has problem related to ecore library.

  • platform/efl/TestExpectations:
8:36 PM Changeset in webkit [150561] by dino@apple.com
  • 13 edits
    4 deletes in trunk/Source

Rolling out r150555. It borked about 30 media tests.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):

  • html/HTMLMediaElement.h:
  • platform/audio/AudioSession.cpp:

(WebCore):
(WebCore::AudioSession::AudioSession):
(WebCore::AudioSession::preferredBufferDuration):
(WebCore::AudioSession::setPreferredBufferDuration):

  • platform/audio/AudioSession.h:
  • platform/audio/AudioSessionListener.h:

(AudioSessionListener):

  • platform/audio/AudioSessionManager.cpp: Removed.
  • platform/audio/AudioSessionManager.h: Removed.
  • platform/audio/ios/AudioDestinationIOS.cpp:

(WebCore::AudioDestinationIOS::configure):

  • platform/audio/ios/AudioSessionIOS.mm:

(WebCore::AudioSession::preferredBufferDuration):
(WebCore::AudioSession::setPreferredBufferDuration):

  • platform/audio/mac/AudioDestinationMac.cpp:

(WebCore::AudioDestination::hardwareSampleRate):
(WebCore::AudioDestinationMac::AudioDestinationMac):
(WebCore::AudioDestinationMac::configure):

  • platform/audio/mac/AudioDestinationMac.h:

(AudioDestinationMac):

  • platform/audio/mac/AudioSessionMac.cpp: Removed.
  • platform/audio/mac/AudioSessionManagerMac.cpp: Removed.

Source/WTF:

  • wtf/Platform.h:
6:11 PM Changeset in webkit [150560] by jpfau@apple.com
  • 9 edits in trunk/Source/WebCore

Active DOM object resumption should match reason for suspending
https://bugs.webkit.org/show_bug.cgi?id=116476

Add a reason to the arguments for resuming active DOM object and
scheduled tasks and ensure that it matches the suspend reason before
actually resuming the objects.

Reviewed by Joseph Pecoraro.

No new tests, no change in functionality.

  • bindings/js/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::setJavaScriptPaused): Add matching resume reason

  • dom/Document.cpp:

(WebCore::Document::resumeActiveDOMObjects): Check for matching resume reason
(WebCore::Document::resumeScheduledTasks): Check for matching resume reason

  • dom/Document.h:

(Document):

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::resumeActiveDOMObjects): Check for matching resume reason

  • dom/ScriptExecutionContext.h:

(ScriptExecutionContext):
(WebCore::ScriptExecutionContext::reasonForSuspendingActiveDOMObjects): Expose suspend reason to subclasses

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore): Add matching resume reason

  • page/Frame.cpp:

(WebCore::Frame::resumeActiveDOMObjectsAndAnimations): Add matching resume reason

  • page/PageGroupLoadDeferrer.cpp:

(WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer): Add matching resume reason

6:07 PM Changeset in webkit [150559] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Remove even more stale Mac test expectations. These tests are passing now!

  • platform/mac/TestExpectations:
5:46 PM Changeset in webkit [150558] by rniwa@webkit.org
  • 5 edits in trunk/LayoutTests

Even more Mac test expectation updates.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/wk2/TestExpectations:
  • plugins/mouse-events-expected.txt:
5:05 PM Changeset in webkit [150557] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix; cast OSStatus to an int before passing it to printf.

  • platform/audio/mac/AudioSessionMac.cpp:

(WebCore::AudioSession::setPreferredBufferSize):

5:02 PM Changeset in webkit [150556] by dino@apple.com
  • 15 edits in trunk/Source

Don't snapshot plugins that can't be snapshotted
https://bugs.webkit.org/show_bug.cgi?id=116490

Reviewed by Tim Horton.

Some plugins, such as QuickTime, don't support snapshotting. We're
planning on another way to capture snapshots, but in the meantime make
sure that they don't fail to initialise because they were told to
not use accelerated rendering.

Source/WebCore:

  • WebCore.exp.in: Export restartSnapshottedPlugin so that it can be used from WK2.
  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::restartSimilarPlugIns): Don't set the play state before restarting.
(WebCore::HTMLPlugInImageElement::userDidClickSnapshot): Make sure we indicated that this snapshotted plugin was clicked.

  • html/HTMLPlugInImageElement.h: Move restartSnapshottedPlugin from protected to public.
  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore::RenderSnapshottedPlugIn::handleEvent): Don't set play state here. Let the restart functions do it.

Source/WebKit2:

Expose a new message on the plugins so that they can tell the PluginView
if they support snapshotting or not.

  • PluginProcess/PluginControllerProxy.cpp:

(WebKit::PluginControllerProxy::supportsSnapshotting): New method.

  • PluginProcess/PluginControllerProxy.h: Ditto.
  • PluginProcess/PluginControllerProxy.messages.in: Message signature.
  • WebProcess/Plugins/Netscape/NetscapePlugin.h: Add supportsSnapshotting.
  • WebProcess/Plugins/PDF/SimplePDFPlugin.h: Ditto.
  • WebProcess/Plugins/Plugin.h: Ditto - pure virtual here.
  • WebProcess/Plugins/PluginProxy.cpp:

(WebKit::PluginProxy::supportsSnapshotting): Send the message to the plugin process and return the results.

  • WebProcess/Plugins/PluginProxy.h:
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::didInitializePlugin): If the snapshotting plugin has a layer, make

sure to add it to the tree.

(WebKit::PluginView::isAcceleratedCompositingEnabled): Snapshotting plugins can use

accelerated compositing, just like normal plugins.

(WebKit::PluginView::pluginSnapshotTimerFired): If the plugin doesn't allow snapshotting,

immediately restart it.

4:43 PM Changeset in webkit [150555] by jer.noble@apple.com
  • 13 edits
    3 copies
    1 add in trunk/Source

Mac: Set the default audio buffer size to a large value for <video> elements.
https://bugs.webkit.org/show_bug.cgi?id=116342

Reviewed by Eric Carlson.

Source/WebCore:

To enable power savings by waking up the audio hardware less often, set the
requested buffer frame size to a large value, such as 4096. Since this results
in approximately 100ms worth of buffer, set the buffer size to a much lower
value when playing WebAudio, which is much more sensitive to latency than video
or audio elements.

Introduce a new class, AudioSessionManager, as well as a helper class,
AudioSessionManagerToken. Audio elements, video elements, and WebAudio destination
nodes will create and retain a token, and release the token in their destructor.
This allows the AudioSessionManager to track how many of what type of audio-
generating objects are in existence.

This requires implementing AudioSession for Mac platforms. Move the implementation
for retrieving the hardware sample rate and setting the buffer duration into
AudioSessionMac from AudioDestinationMac, to be shared with AudioSessionManagerMac.

Change the AudioSession method preferredBufferLength() into preferredBufferSize(),
as the callers really want to specify a buffer size, not a buffer duration. On iOS,
where the available API requires a duration, perform the conversion from duration to
size on behalf of the caller.

  • html/HTMLMediaElement.h: Add a AudioSessionManagerToken member.
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Initialize the token.

  • platform/audio/AudioSession.cpp:

(WebCore::AudioSession::preferredBufferSize): Renamed from preferredBufferLength.
(WebCore::AudioSession::setPreferredBufferSize): Renamed from setPreferredBufferLength.

  • platform/audio/AudioSession.h:
  • platform/audio/AudioSessionManager.cpp:

(AudioSessionManagerToken::create): Simple factory method.
(AudioSessionManagerToken::AudioSessionManagerToken): Call AudioSessionManager::incrementCount().
(AudioSessionManagerToken::~AudioSessionManagerToken): Call AudioSessionManager::decrementCount().
(AudioSessionManager::sharedManager): Simple singleton method.
(AudioSessionManager::AudioSessionManager): Simple constructor.
(AudioSessionManager::has): Return whether the type is present.
(AudioSessionManager::incrementCount): Increment, then call updateSessionState()
(AudioSessionManager::decrementCount): Decrement, then call updateSessionState()
(AudioSessionManager::updateSessionState): Stub, does nothing.

  • platform/audio/AudioSessionManager.h:
  • platform/audio/ios/AudioDestinationIOS.cpp:

(WebCore::AudioDestinationIOS::configure): Call setPreferredBufferSize() instead of setPreferredBufferLength()

  • platform/audio/ios/AudioSessionIOS.mm:

(WebCore::AudioSession::preferredBufferSize): Renamed from preferredBufferLength.
(WebCore::AudioSession::setPreferredBufferSize): Renamed from setPreferredBufferLength

  • platform/audio/mac/AudioDestinationMac.cpp:

(WebCore::AudioDestination::hardwareSampleRate): Call AudioSession::sampleRate().
(WebCore::AudioDestinationMac::AudioDestinationMac): Create the AudioSessionManagerToken.
(WebCore::AudioDestinationMac::configure): Do not set the buffer size (this is done in AudioSessionManagerMac).

  • platform/audio/mac/AudioDestinationMac.h:
  • platform/audio/mac/AudioSessionMac.cpp: Added.

(WebCore::defaultDevice): Added, returns the default audio device.
(WebCore::AudioSession::AudioSession): Simple constructor.
(WebCore::AudioSession::~AudioSession): Simple destructor.
(WebCore::AudioSession::category): Stub, unimplemented.
(WebCore::AudioSession::setCategory): Ditto.
(WebCore::AudioSession::categoryOverride): Ditto.
(WebCore::AudioSession::setCategoryOverride): Ditto.
(WebCore::AudioSession::numberOfOutputChannels): Ditto.
(WebCore::AudioSession::setActive): Ditto.
(WebCore::AudioSession::sampleRate): Use the HAL to return the default audio device sample rate.
(WebCore::AudioSession::preferredBufferSize): Return the current HAL setting.
(WebCore::AudioSession::setPreferredBufferSize): Set the buffer size.

  • platform/audio/mac/AudioSessionManagerMac.cpp:

(AudioSessionManager::updateSessionState): Set the buffer size depending on what audio outputs are present.

  • WebCore.xcodeproj/project.pbxproj: Add the new files to the project.

Source/WTF:

  • wtf/Platform.h: Add a WTF_USE_AUDIO_SESSION setting.
4:42 PM Changeset in webkit [150554] by mvujovic@adobe.com
  • 3 edits
    2 adds in trunk

[CSS Shaders] valueForCustomFilterTransformParameter should check that renderer is a RenderBox
https://bugs.webkit.org/show_bug.cgi?id=116464

Reviewed by Alexandru Chiculita.

Source/WebCore:

If the renderer is not a RenderBox, we just use a zero size to compute the transform,
like in CSSComputedStyleDeclaration::computedTransform.

Test: css3/filters/custom/custom-filter-crash-inline-computed-style.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForCustomFilterTransformParameter):

LayoutTests:

  • css3/filters/custom/custom-filter-crash-inline-computed-style-expected.txt: Added.
  • css3/filters/custom/custom-filter-crash-inline-computed-style.html: Added.
4:27 PM Changeset in webkit [150553] by rniwa@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

Add a missing result after r150551.

  • http/tests/inspector/network/network-size-chunked-expected.txt: Added.
4:24 PM Changeset in webkit [150552] by rniwa@webkit.org
  • 2 edits
    1 add in trunk/LayoutTests

Mac test expectation corrections after r150545.

  • platform/mac-lion/http/tests/multipart/policy-ignore-crash-expected.txt: Added.
  • platform/mac/TestExpectations:
3:53 PM Changeset in webkit [150551] by rniwa@webkit.org
  • 4 edits in trunk/LayoutTests

More Mac test expectation cleanups.

  • http/tests/inspector/network/network-size-sync-expected.txt:
  • platform/mac/TestExpectations:
  • platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt:
3:27 PM Changeset in webkit [150550] by Lucas Forschler
  • 2 edits in branches/safari-537.43-branch/Source/WebKit2

Merged r150495. <rdar://problem/13915556>

3:24 PM Changeset in webkit [150549] by Lucas Forschler
  • 1 edit
    2 copies in branches/safari-537.43-branch/LayoutTests

Merged r150492. <rdar://problem/13921879>

3:23 PM Changeset in webkit [150548] by Lucas Forschler
  • 6 edits
    2 deletes in branches/safari-537.43-branch

Merged r150490. <rdar://problem/13921879>

3:19 PM Changeset in webkit [150547] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix assertion in the getComputedStyle-background-shorthand.html test
https://bugs.webkit.org/show_bug.cgi?id=116639

Reviewed by Ryosuke Niwa.

getComputedStyle-background-shorthand.html was asserting under the newly added
code in willBeRemovedFromTree(). The assertion was caused by too many calls to
FrameView::removeSlowRepaintObject(), which happened because we called it for
RenderTexts, which share style with their parent renderer.

RenderText overrides styleWillChange() to do nothing, so we never
call add/removeSlowRepaintObject() for them. Thus we should also skip this
work in willBeRemovedFromTree() for RenderTexts.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::willBeRemovedFromTree):

3:18 PM Changeset in webkit [150546] by rniwa@webkit.org
  • 4 edits in trunk/LayoutTests

REGRESSION: fast/files/workers tests crash
https://bugs.webkit.org/show_bug.cgi?id=45575

Unskip the test since they no longer crash. Also rebaseline two tests as needed.

  • fast/files/workers/worker-read-blob-async-expected.txt:
  • fast/files/workers/worker-read-blob-sync-expected.txt:
  • platform/mac/TestExpectations:
3:11 PM Changeset in webkit [150545] by rniwa@webkit.org
  • 4 edits
    1 copy
    3 adds in trunk/LayoutTests

Mac test expectation cleanups. Unskip a bunch of tests and rebaseline them as needed.

  • accessibility/aria-menubar-menuitems-expected.txt: Added.
  • fast/replaced/border-radius-clip-expected.png:
  • platform/mac/TestExpectations:
  • platform/mac/fast/replaced/border-radius-clip-expected.txt:
  • platform/mac/http/tests/multipart/policy-ignore-crash-expected.txt: Copied from LayoutTests/http/tests/multipart/policy-ignore-crash-expected.txt.
  • platform/mac/media/video-volume-slider-expected.png: Added.
  • platform/mac/media/video-volume-slider-expected.txt: Added.
3:08 PM Changeset in webkit [150544] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Heap-use-after-free in WebCore::RenderLayerModelObject::hasSelfPaintingLayer
https://bugs.webkit.org/show_bug.cgi?id=116626

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-05-22
Reviewed by David Hyatt.

This is a port of a Blink bug fix by Emil Eklund.

Account for saturated estimated position in RenderBlock::layoutBlockChild.

If the estimated top position is saturated the comparison with oldLogicalTop
might yield a false negative as adding and removing margins, borders etc from
a saturated number might yield incorrect results. If this is the case always
mark for layout.

Minimal test case impractical. See bug for raw fuzzer test case.

  • platform/LayoutUnit.h:

(WebCore::LayoutUnit::mightBeSaturated): Add helper method for checking whether

a number might be saturated.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlockChild): Check if logicalTopEstimate is likely

to be saturated and if so mark for layout.

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

Fix crash when closing a page that's trying to access session storage
https://bugs.webkit.org/show_bug.cgi?id=116634
<rdar://problem/13904054>

Reviewed by Geoffrey Garen.

It is possible for the StorageManager to get messages from a web page that has already been closed by the UI process.
If that happens, just ignore the messages.

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::createSessionStorageMap):
(WebKit::StorageManager::getValues):
(WebKit::StorageManager::setItem):
(WebKit::StorageManager::removeItem):
(WebKit::StorageManager::clear):
(WebKit::StorageManager::destroySessionStorageNamespaceInternal):

2:22 PM Changeset in webkit [150542] by hmuller@adobe.com
  • 1 edit
    24 adds
    20 deletes in trunk/LayoutTests

[CSS Exclusions] property parsing tests should be revised
https://bugs.webkit.org/show_bug.cgi?id=116446

Reviewed by Alexandru Chiculita.

This is just a cleanup of the existing parsing tests. None of the tests have effectively
changed. The cleaned-up version should be simpler, more regular, and shorter:

  • Moved all of parsing tests into a fast/exclusions/parsing subdirectory.
  • Remove the obsolete "wrap-" prefix from file names.
  • Eiminated excessive and needless stringification in many of the test functions.
  • Moved common code into parsing-test-utils.js and refactored redundant code.
  • fast/exclusions/parsing-wrap-shape-inside-expected.txt: Removed.
  • fast/exclusions/parsing-wrap-shape-inside.html: Removed.
  • fast/exclusions/parsing-wrap-shape-lengths-expected.txt: Removed.
  • fast/exclusions/parsing-wrap-shape-lengths.html: Removed.
  • fast/exclusions/parsing-wrap-shape-outside-expected.txt: Removed.
  • fast/exclusions/parsing-wrap-shape-outside.html: Removed.
  • fast/exclusions/parsing/parsing-shape-inside-expected.txt: Added.
  • fast/exclusions/parsing/parsing-shape-inside.html: Added.
  • fast/exclusions/parsing/parsing-shape-lengths-expected.txt: Added.
  • fast/exclusions/parsing/parsing-shape-lengths.html: Added.
  • fast/exclusions/parsing/parsing-shape-margin-expected.txt: Added.
  • fast/exclusions/parsing/parsing-shape-margin.html: Added.
  • fast/exclusions/parsing/parsing-shape-outside-expected.txt: Added.
  • fast/exclusions/parsing/parsing-shape-outside.html: Added.
  • fast/exclusions/parsing/parsing-shape-padding-expected.txt: Added.
  • fast/exclusions/parsing/parsing-shape-padding.html: Added.
  • fast/exclusions/parsing/parsing-wrap-flow-expected.txt: Added.
  • fast/exclusions/parsing/parsing-wrap-flow.html: Added.
  • fast/exclusions/parsing/parsing-wrap-through-expected.txt: Added.
  • fast/exclusions/parsing/parsing-wrap-through.html: Added.
  • fast/exclusions/parsing/script-tests/parsing-shape-inside.js: Added.

(string_appeared_here):

  • fast/exclusions/parsing/script-tests/parsing-shape-lengths.js: Added.

(getStyleValue):
(testStyleValue):
(testComputedStyleValue):
(testInvalidValue):

  • fast/exclusions/parsing/script-tests/parsing-shape-margin.js: Added.

(testShapeSpecifiedProperty):

  • fast/exclusions/parsing/script-tests/parsing-shape-outside.js: Added.

(testShapePropertyParsingFailure):

  • fast/exclusions/parsing/script-tests/parsing-shape-padding.js: Added.

(testShapeSpecifiedProperty):

  • fast/exclusions/parsing/script-tests/parsing-test-utils.js: Added.

(getCSSText):
(getComputedStyleValue):
(getParentAndChildComputedStyles):
(getParentAndChildComputedStylesString):
(getChildComputedStyle):
(testShapeSpecifiedProperty):
(testShapeComputedProperty):
(testNotInheritedShapeChildProperty):

  • fast/exclusions/parsing/script-tests/parsing-wrap-flow.js: Added.
  • fast/exclusions/parsing/script-tests/parsing-wrap-through.js: Added.
  • fast/exclusions/shape-margin-parsing-expected.txt: Removed.
  • fast/exclusions/shape-margin-parsing.html: Removed.
  • fast/exclusions/shape-padding-parsing-expected.txt: Removed.
  • fast/exclusions/shape-padding-parsing.html: Removed.
  • fast/exclusions/wrap-flow-parsing-expected.txt: Removed.
  • fast/exclusions/wrap-flow-parsing.html: Removed.
  • fast/exclusions/wrap-through-parsing-expected.txt: Removed.
  • fast/exclusions/wrap-through-parsing.html: Removed.
1:58 PM Changeset in webkit [150541] by Lucas Forschler
  • 2 edits in branches/safari-537.43-branch/Source/WebKit2

Merged r150486. <rdar://problem/13822856>

1:55 PM Changeset in webkit [150540] by Lucas Forschler
  • 33 edits
    1 copy in branches/safari-537.43-branch/Source/WebKit2

Merged r150484. <rdar://problem/13822856>

1:52 PM Changeset in webkit [150539] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebCore

Remove CSSPropertySourceData emptyCSSPropertySourceData
https://bugs.webkit.org/show_bug.cgi?id=116517

Reviewed by Darin Adler.

This was added for chromium and does not seem to be used
anywhere anymore.

  • css/CSSParser.cpp:

(WebCore::CSSParser::CSSParser):

  • css/CSSPropertySourceData.cpp:
  • css/CSSPropertySourceData.h:
1:52 PM Changeset in webkit [150538] by Lucas Forschler
  • 4 edits in branches/safari-537.43-branch/Source

Versioning.

1:50 PM Changeset in webkit [150537] by ap@apple.com
  • 6 edits in trunk/Source/WebKit2

Crashes in NetworkProcess due to incorrect private browsing session tracking
https://bugs.webkit.org/show_bug.cgi?id=116628

Reviewed by Brady Eidson.

The current API for private browsing makes it extremely difficult to track sessions.
Private browsing is enabled via WKPreferences, but the session is shared, so it
has to be maintained while there is any chance that any page group anywhere still
needs it.

This patch fixes some of the issues, but ultimately, I think that we'll just need
to deprecate and replace the API.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::storageSession): There are valid scenarios where privateBrowsingEnabled is true, but there is no private browsing session. Handle that without crashing, although this unfortunately means that it will be harder to spot logic errors when using a wrong session. (WebKit::NetworkConnectionToWebProcess::registerBlobURL): Removed an obsolete FIXME.
  • NetworkProcess/mac/RemoteNetworkingContext.h: Changed privateBrowsingSession() to return a pointer, as no caller could know when it was safe to call it.
  • NetworkProcess/mac/RemoteNetworkingContext.mm: (WebKit::RemoteNetworkingContext::storageSession): Handle the case where private browsing session is unexpectedly missing without crashing. (WebKit::RemoteNetworkingContext::privateBrowsingSession): Changed to return a pointer.
  • UIProcess/WebContext.cpp: (WebKit::WebContext::ensureNetworkProcess): Actually initialize privateBrowsingEnabled creation parameter. It would be very difficult to figure out 100% reliably whether NetworkProcess needs a private browsing session with the current API, but for existing clients, looking at m_privateBrowsingEnterCount is good enough. Certainly better than not initializing.
  • WebProcess/InjectedBundle/InjectedBundle.cpp: (WebKit::InjectedBundle::setPrivateBrowsingEnabled): Added a FIXME.
1:42 PM Changeset in webkit [150536] by fpizlo@apple.com
  • 7 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: It should be possible to use more than one compiler thread
https://bugs.webkit.org/show_bug.cgi?id=116630

Reviewed by Mark Hahnenberg.

This gives us the ability to use more compiler threads, but doesn't actually
enable the functionality because it isn't a speed-up on any benchmark. It can
even be a slow-down. This also adds the ability to disable concurrent
compilation if we're on a uniprocessor machine, and adds more logging to the
worklist code to allow us to investigate how many threads are active. It
appears that even on the most compiler-heavy benchmarks, we never have enough
work for more than 4 threads, and even then the 4 threads are all active for
a short time.

Something that having more threads does accomplish is that it shakes out bugs.
This patch fixes a bug with Watchpoint not being thread-safe ref-counted,
which enabling 7 compilation threads did catch.

As it stands, this patch is performance-neutral and just fixes bugs and adds
some options.

  • bytecode/Watchpoint.h:
  • dfg/DFGCommon.h:

(JSC::DFG::enableConcurrentJIT):

  • dfg/DFGWorklist.cpp:

(JSC::DFG::Worklist::Worklist):
(JSC::DFG::Worklist::~Worklist):
(JSC::DFG::Worklist::finishCreation):
(JSC::DFG::Worklist::create):
(JSC::DFG::Worklist::enqueue):
(JSC::DFG::Worklist::waitUntilAllPlansForVMAreReady):
(JSC::DFG::Worklist::dump):
(JSC::DFG::Worklist::runThread):
(JSC::DFG::initializeGlobalWorklistOnce):

  • dfg/DFGWorklist.h:
  • runtime/Options.cpp:

(JSC::computeNumberOfWorkerThreads):
(JSC):
(JSC::computeNumberOfGCMarkers):

  • runtime/Options.h:

(JSC):

1:30 PM Changeset in webkit [150535] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Buildfix for !ENABLE(FULLSCREEN_API) platforms.

Rubber-stamped by Ryosuke Niwa.

  • rendering/RenderInline.cpp: Missing #if guard added.

(WebCore::RenderInline::splitInlines):

1:11 PM Changeset in webkit [150534] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix a typo in 150469.

  • editing/Editor.cpp:

(WebCore::dispatchEditableContentChangedEvents):

1:09 PM Changeset in webkit [150533] by fpizlo@apple.com
  • 20 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: FTL shouldn't use the LLVM global context, and should instead create its own context for each compilation
https://bugs.webkit.org/show_bug.cgi?id=116631

Reviewed by Mark Hahnenberg.

In the future we might want to share contexts for multiple compilations, but for
now using one context per compilation is a progression over just constantly using
the global context.

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::compileInThread):
(DFG):
(JSC::DFG::Plan::compileInThreadImpl):

  • dfg/DFGPlan.h:
  • ftl/FTLAbbreviatedTypes.h:

(FTL):

  • ftl/FTLAbbreviations.h:

(JSC::FTL::voidType):
(JSC::FTL::int1Type):
(JSC::FTL::int8Type):
(JSC::FTL::int32Type):
(JSC::FTL::int64Type):
(JSC::FTL::intPtrType):
(JSC::FTL::doubleType):
(JSC::FTL::structType):
(JSC::FTL::mdKindID):
(JSC::FTL::mdString):
(JSC::FTL::mdNode):
(JSC::FTL::appendBasicBlock):
(JSC::FTL::insertBasicBlock):

  • ftl/FTLAbstractHeap.cpp:

(JSC::FTL::AbstractHeap::tbaaMetadataSlow):
(JSC::FTL::IndexedAbstractHeap::IndexedAbstractHeap):
(JSC::FTL::NumberedAbstractHeap::NumberedAbstractHeap):
(JSC::FTL::AbsoluteAbstractHeap::AbsoluteAbstractHeap):

  • ftl/FTLAbstractHeap.h:

(IndexedAbstractHeap):
(NumberedAbstractHeap):
(AbsoluteAbstractHeap):

  • ftl/FTLAbstractHeapRepository.cpp:

(JSC::FTL::AbstractHeapRepository::AbstractHeapRepository):

  • ftl/FTLAbstractHeapRepository.h:

(AbstractHeapRepository):

  • ftl/FTLCommonValues.cpp:

(JSC::FTL::CommonValues::CommonValues):

  • ftl/FTLCommonValues.h:

(CommonValues):

  • ftl/FTLCompile.cpp:

(JSC::FTL::mmAllocateCodeSection):

  • ftl/FTLIntrinsicRepository.cpp:

(JSC::FTL::IntrinsicRepository::IntrinsicRepository):

  • ftl/FTLIntrinsicRepository.h:

(FTL):
(IntrinsicRepository):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::lower):

  • ftl/FTLOutput.cpp:

(JSC::FTL::Output::Output):

  • ftl/FTLOutput.h:

(Output):
(JSC::FTL::Output::newBlock):

  • ftl/FTLState.cpp:

(JSC::FTL::State::State):
(JSC::FTL::State::~State):
(FTL):

  • ftl/FTLState.h:

(State):

  • runtime/Options.h:

(JSC):

12:48 PM Changeset in webkit [150532] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

[wk2] Should be able to make tiled WKViews clip to the view's exposed rect without using autolayout
https://bugs.webkit.org/show_bug.cgi?id=116625
<rdar://problem/13962816>

Reviewed by Anders Carlsson.

The two modes are not dependent; it should be possible to enable
clips-to-exposed-rect without using autolayout. This enables apps to
make very large tiled WKViews that don't create tiles for the whole
area of the view (and also disables scrolling, since that is currently
incompatible with clipping to the exposed rect).

  • UIProcess/API/mac/WKView.mm:

(-[WKView setFrameSize:]):
(-[WKView _updateWindowAndViewFrames]):
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
(-[WKView enableFrameSizeUpdates]):
(-[WKView forceAsyncDrawingAreaSizeUpdate:]):
Rename _expandsToFitContentViaAutoLayout to _clipsToVisibleRect for accuracy.

(-[WKView setMinimumWidthForAutoLayout:]):
Factor clips-to-sisible-rect toggle out into setShouldClipToVisibleRect.

(-[WKView shouldClipToVisibleRect]):
(-[WKView setShouldClipToVisibleRect:]):
Allow setting clips-to-visible-rect without autolayout.

  • UIProcess/API/mac/WKViewPrivate.h:

Add shouldClipToVisibleRect property.

12:21 PM Changeset in webkit [150531] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk
REGRESSION: ASSERTION FAILED: obj->isRenderInline()
obj == this, Bad cast in WebCore::RenderBlock::createLineBoxes

https://bugs.webkit.org/show_bug.cgi?id=110622

Reviewed by David Hyatt.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/998ad358eed702b873dd54697b3fa3f952e0feb7

Inserting an element before the fullscreened element could crash if it caused a containing inline to be split,
since the splitting logic doesn't expect the fullscreened element to be wrapped in a RenderFullScreen. This patch changes
inline splitting to be aware of RenderFullScreen.

Test: fullscreen/full-screen-inline-split-crash.html

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::splitInlines):

LayoutTests:

Add a regression test.

  • fullscreen/full-screen-inline-split-crash-expected.txt: Added.
  • fullscreen/full-screen-inline-split-crash.html: Added.
12:06 PM Changeset in webkit [150530] by Simon Fraser
  • 5 edits in trunk/Source

Fix issues with focus rings on search fields
https://bugs.webkit.org/show_bug.cgi?id=116591

Source/WebCore:

Reviewed by Darin Adler.

On a future OS, the rect returned by _focusRingVisibleRect should
be in the coordinate system of the that NSView, not the base
coordinate system, so fix the code that sets and reads the global
focusRingClipRect variable accordingly.

  • platform/graphics/mac/WebLayer.mm:

(drawLayerContents):

  • platform/mac/ThemeMac.mm:

(-[WebCoreFlippedView _focusRingVisibleRect]):

Source/WebKit/mac:

Reviewed by Darin Adler.

In WebKit1, focus rings didn't render correctly on some OSes until
some other control drew a focus ring, which changes internal AppKit state
on the focused view. Fix by overriding an internal AppKit method to always
disable AppKit's "automatic" focus ring drawing.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _automaticFocusRingDisabled]):

12:06 PM Changeset in webkit [150529] by Simon Fraser
  • 3 edits
    6 adds in trunk

New Flickr doesn't get fast scrolling but should
https://bugs.webkit.org/show_bug.cgi?id=116514

Source/WebCore:

Reviewed by Darin Adler.

RenderObject increments and decrements a counter of slow repaint objects on
FrameView when it sees style changes related to background-attachment:fixed.
However, it omitted to decrement the count when a renderer with a fixed background
was destroyed.

This caused Flickr to never fall into fast scrolling mode, since it toggled
display:none on an element with a fixed background during loading, then removed
the fixed background.

Did some minor cleanup of #ENABLE(FAST_MOBILE_SCROLLING) crap.

Tests: platform/mac-wk2/tiled-drawing/slow-scrolling-background-toggle.html

platform/mac-wk2/tiled-drawing/slow-scrolling-hidden-background-toggle.html
platform/mac-wk2/tiled-drawing/slow-scrolling.html

  • rendering/RenderObject.cpp:

(WebCore::shouldRepaintFixedBackgroundsOnScroll):
(WebCore::RenderObject::styleWillChange):
(WebCore::RenderObject::willBeRemovedFromTree):

LayoutTests:

Reviewed by Darin Adler.

slow-scrolling-hidden-background-toggle.html actually tests this patch. The other
two tests were added because there appear to be no tests for basic internals.mainThreadScrollingReasons()
functionality.

  • platform/mac-wk2/tiled-drawing/slow-scrolling-background-toggle-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/slow-scrolling-background-toggle.html: Added.
  • platform/mac-wk2/tiled-drawing/slow-scrolling-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/slow-scrolling-hidden-background-toggle-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/slow-scrolling-hidden-background-toggle.html: Added.
  • platform/mac-wk2/tiled-drawing/slow-scrolling.html: Added.
12:01 PM Changeset in webkit [150528] by Lucas Forschler
  • 1 copy in branches/safari-537.43-branch

New Branch.

11:59 AM Changeset in webkit [150527] by robert@webkit.org
  • 9 edits
    2 adds in trunk

Need to Remove Anonymous Wrappers When All Children Become Inline
https://bugs.webkit.org/show_bug.cgi?id=115687

Reviewed by David Hyatt.

Source/WebCore:

Remove a simple subset of anonymous wrappers, i.e. anonymous blocks without continuations,
when a block becoming float or positioned removes the need for them.

Test: fast/block/remove-anonymous-wrappers-when-element-changes-to-float-or-positioned.html

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderObject.cpp:

(WebCore):
(WebCore::RenderObject::removeAnonymousWrappersFromLineIfNecessary):
(WebCore::RenderObject::styleWillChange):
(WebCore::RenderObject::styleDidChange):

  • rendering/RenderObject.h:

(RenderObject):

LayoutTests:

  • fast/block/remove-anonymous-wrappers-when-element-changes-to-float-or-positioned-expected.txt: Added.
  • fast/block/remove-anonymous-wrappers-when-element-changes-to-float-or-positioned.html: Added.
  • platform/qt/fast/block/float/float-not-removed-from-next-sibling2-expected.txt:
  • platform/qt/fast/dynamic/002-expected.txt:
11:47 AM Changeset in webkit [150526] by fpizlo@apple.com
  • 3 edits in branches/dfgFourthTier/WebKitLibraries

Updated LLVM drops to include MCJIT memory management APIs.

Rubber stamped by Mark Hahnenberg.

  • LLVMIncludesMountainLion.tar.bz2:
  • LLVMLibrariesMountainLion.tar.bz2:
11:38 AM Changeset in webkit [150525] by Bruno de Oliveira Abinader
  • 18 edits in trunk/Source/WebCore

[css] Update ETextDecorations enum to TextDecorations
https://bugs.webkit.org/show_bug.cgi?id=116581

Reviewed by Andreas Kling.

Currently, ETextDecorations enum uses a C-like coding style for its
enumeration values, as well as a 'E' prefix that surely had some meaning
in the past, but not nowadays.

No behavior changes, covered by existing tests.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::hasPlainText):
(WebCore::AccessibilityRenderObject::hasUnderline):

  • accessibility/atk/WebKitAccessibleInterfaceText.cpp:

(getAttributeSetForAccessibilityObject):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(AXAttributeStringSetStyle):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(AXAttributeStringSetStyle):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::renderTextDecorationFlagsToCSSValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::operator TextDecoration):

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyTextDecoration::applyValue):
(WebCore::ApplyPropertyTextDecoration::createHandler):

  • editing/mac/EditorMac.mm:

(WebCore::Editor::fontAttributesForSelectionStart):

  • platform/mac/HTMLConverter.mm:

(+[WebHTMLConverter editingAttributedStringFromRange:]):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::paintDecoration):

  • rendering/InlineTextBox.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::getTextDecorationColors):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:

(WebCore::operator|):
(WebCore::operator|=):

  • rendering/style/StyleVisualData.h:

(StyleVisualData):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::paint):
(WebCore::positionOffsetForDecoration):
(WebCore::thicknessForDecoration):
(WebCore::findRenderObjectDefininingTextDecoration):
(WebCore::SVGInlineTextBox::paintDecoration):
(WebCore::SVGInlineTextBox::paintDecorationWithStyle):

  • rendering/svg/SVGInlineTextBox.h:
11:30 AM Changeset in webkit [150524] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[GStreamer] Allow multiple log levels in media player
https://bugs.webkit.org/show_bug.cgi?id=116618

Patch by Lori Anderson <lori@rkymtnhi.com> on 2013-05-22
Reviewed by Philippe Normand.

No new tests, just changing logging.

  • platform/graphics/gstreamer/GStreamerUtilities.h:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::load):
(WebCore::MediaPlayerPrivateGStreamer::pause):
(WebCore::MediaPlayerPrivateGStreamer::seek):
(WebCore::MediaPlayerPrivateGStreamer::setRate):
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):

11:23 AM WebKit Team edited by achristensen@apple.com
added self (diff)
11:13 AM Changeset in webkit [150523] by achristensen@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Added myself to contributors.json.

  • Scripts/webkitpy/common/config/contributors.json:

Added myself.

11:06 AM Changeset in webkit [150522] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

The LayoutMilestones didLayout callback sometimes fires with a milestone value of 0
https://bugs.webkit.org/show_bug.cgi?id=116623

Reviewed by Geoffrey Garen.

Make sure we have actually achieved some milestones before calling didLayout().

  • page/FrameView.cpp:

(WebCore::FrameView::performPostLayoutTasks):

10:09 AM Changeset in webkit [150521] by ap@apple.com
  • 10 edits in trunk/Source/WebKit2

Remove unused private browsing override support
<rdar://problem/11969491>

Rubber-stamped by Sam Weinig.

Private browsing override is unused, and it complicates tracking of private
browsing sessions in UI process (in fact, it doesn't plug into this tracking at all,
so we would just assert if we used the API).

10:01 AM Changeset in webkit [150520] by fpizlo@apple.com
  • 9 edits in branches/dfgFourthTier/Source/JavaScriptCore

FTL should force LLVM to use our own JIT memory allocator, and we shouldn't have to keep around an LLVMExecutionEngineRef to keep code alive
https://bugs.webkit.org/show_bug.cgi?id=113619

Reviewed by Geoffrey Garen.

This uses new API that I've exposed, which allows for memory manager callbacks
from within LLVM. LLVM may allocate multiple independent chunks of memory for
a module, and we track all of those in a Vector in FTL::JITCode.

  • ftl/FTLCompile.cpp:

(JSC::FTL::mmAllocateCodeSection):
(FTL):
(JSC::FTL::mmAllocateDataSection):
(JSC::FTL::mmApplyPermissions):
(JSC::FTL::mmDestroy):
(JSC::FTL::compile):

  • ftl/FTLJITCode.cpp:

(JSC::FTL::JITCode::JITCode):
(JSC::FTL::JITCode::~JITCode):
(JSC::FTL::JITCode::addHandle):
(FTL):
(JSC::FTL::JITCode::initializeCode):

  • ftl/FTLJITCode.h:

(JITCode):
(JSC::FTL::JITCode::handles):

  • ftl/FTLJITFinalizer.cpp:

(JSC::FTL::JITFinalizer::~JITFinalizer):
(JSC::FTL::JITFinalizer::finalizeFunction):

  • ftl/FTLJITFinalizer.h:

(JSC::FTL::JITFinalizer::initializeEntrypointLinkBuffer):
(JITFinalizer):

  • ftl/FTLLink.cpp:

(JSC::FTL::link):

  • ftl/FTLState.cpp:

(JSC::FTL::State::State):

  • ftl/FTLState.h:

(State):

9:42 AM Changeset in webkit [150519] by commit-queue@webkit.org
  • 5 edits
    1 delete in trunk/Source/JavaScriptCore

[sh4] Remove MacroAssemblerSH4.cpp file.
https://bugs.webkit.org/show_bug.cgi?id=116596.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-05-22
Reviewed by Geoffrey Garen.

Move linkCall and repatchCall implementations from MacroAssemblerSH4.cpp
to MacroAssemblerSH4.h and remove MacroAssemblerSH4.cpp, as it is done
for other architectures.

  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • assembler/MacroAssemblerSH4.cpp: Removed.
  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::linkCall):
(MacroAssemblerSH4):
(JSC::MacroAssemblerSH4::repatchCall):

9:22 AM Changeset in webkit [150518] by mario@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Reimplement atk_text_get_text_*_offset for CHAR boundary
https://bugs.webkit.org/show_bug.cgi?id=114870

Reviewed by Martin Robinson.

Re-implement this functions without using GailTextUtil nor Pango.

  • accessibility/atk/WebKitAccessibleInterfaceText.cpp:

(webkitAccessibleTextGetChar): New function.
(webkitAccessibleTextGetTextForOffset): Call the new function for CHAR.

9:18 AM Changeset in webkit [150517] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Unreviewed gardening. Skipping failing printing tests after r150046.
https://bugs.webkit.org/show_bug.cgi?id=116617

  • platform/qt-5.0-wk2/TestExpectations:
9:11 AM Changeset in webkit [150516] by Antoine Quint
  • 4 edits in trunk/Source/WebCore

[Mac] Captions menu isn't internationalized, doesn't use rtl layout for rtl languages
https://bugs.webkit.org/show_bug.cgi?id=116605

Reviewed by Eric Carlson.

Ensure that rtl languages are properly recognized by the captions menu such that text
layout and alignment is natural.

  • css/mediaControls.css:

(::-webkit-media-controls):
Remove the forced "direction: ltr" property which was forcing all layout to be
left-to-right.

  • css/mediaControlsQuickTime.css:

(video::-webkit-media-controls-closed-captions-track-list):
Remove the forced "text-align: left" property which was forcing all caption
titles to be left-aligned.

(video::-webkit-media-controls-closed-captions-track-list h3):
Use "-webkit-margin-start" instead of "padding-left" to position the heading
such that it adds the margin on the left for ltr languages and on the right
for rtl languages.

(video::-webkit-media-controls-closed-captions-track-list li):
Set "position: relative" such that the ::before pseudo-class can use "position: absolute"
to position itself relative to the caption title rather than the list element.

(video::-webkit-media-controls-closed-captions-track-list li.selected::before):
(video::-webkit-media-controls-closed-captions-track-list li.selected:hover::before):
Make the checkmarks a ::before pseudo-class rather than a background-image such that
we may control its positioning using the internationlization-friendly "-webkit-margin-start"
property.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlClosedCaptionsContainerElement::create):
Set the "dir" attribute to "auto" such that rtl languages are correctly handled. This
means that the first string displayed within the captions container, currently the
"Subtitles" <h3> element, defines the direction for the whole container. It is therefore
crucial that this string is properly localized in rtl languages as falling back to
english would mean the entire caption container is using ltr.

7:16 AM Changeset in webkit [150515] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL][WK2] Add sub menus to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=114728

Patch by Michał Pakuła vel Rutka <Michał Pakuła vel Rutka> on 2013-05-22
Reviewed by Christophe Dumez.

Elementary Ctxpopup widget API does not provide support for submenu item.
To implement ewk submenus in Minibrowser, Ctxpopup has to be replaced with
Elementary Menu widget.

  • MiniBrowser/efl/main.c:

(_Browser_Window):
(on_window_resize):
(window_free):
(context_menu_item_selected_cb):
(context_menu_populate):
(on_context_menu_show):
(on_context_menu_hide):
(window_create):

7:15 AM Changeset in webkit [150514] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip failing tests after r150065 and r150498.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-05-22

  • platform/qt/TestExpectations:
6:45 AM Changeset in webkit [150513] by Hugo Parente Lima
  • 2 edits in trunk/Source/WebCore

WebCore fails to compile with -Werror=maybe-uninitialized on GCC 4.8.0
https://bugs.webkit.org/show_bug.cgi?id=116340

Reviewed by Christophe Dumez.

No new tests, just a simple build fix.

  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::setDOMStorageItem): Init frame variable.
(WebCore::InspectorDOMStorageAgent::removeDOMStorageItem): Init frame variable.

6:36 AM Changeset in webkit [150512] by commit-queue@webkit.org
  • 5 edits in trunk/LayoutTests

[CSSRegions] Remove platform-specific differences from offsetLeft/offsetTop tests
https://bugs.webkit.org/show_bug.cgi?id=116607

Patch by Radu Stavila <stavila@adobe.com> on 2013-05-22
Reviewed by Antti Koivisto.

  • fast/regions/offsetLeft-offsetTop-in-multiple-regions-expected.txt:
  • fast/regions/offsetLeft-offsetTop-in-multiple-regions.html:
  • fast/regions/offsetLeft-offsetTop-in-region-float-vert-rl.html:
  • fast/regions/offsetLeft-offsetTop-inlines-region-in-element.html:
5:49 AM Changeset in webkit [150511] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Add command line option to MiniBrowser to set cookies policy.
https://bugs.webkit.org/show_bug.cgi?id=115028

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2013-05-22
Reviewed by Christophe Dumez.

Add command line option to MiniBrowser EFL to set cookies policy:
-p parameter with value from (always, never, no-third-party) respectively (EWK_COOKIE_ACCEPT_POLICY_ALWAYS,
EWK_COOKIE_ACCEPT_POLICY_NEVER, EWK_COOKIE_ACCEPT_POLICY_NO_THIRD_PARTY).

  • MiniBrowser/efl/main.c:

(elm_main):

5:47 AM WebKitGTK/2.0.x edited by agarcia@igalia.com
Proposed changes for 2.0.3 (diff)
5:20 AM Changeset in webkit [150510] by zarvai@inf.u-szeged.hu
  • 1 edit
    1 add
    1 delete in trunk/LayoutTests

[Qt] Unreviewed gardening, updating expected files after r150508.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-05-22

  • platform/qt-5.0-wk2/svg/transforms/text-with-pattern-inside-transformed-html-expected.png: Added.
  • platform/qt-5.0/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt: Removed.
5:04 AM Changeset in webkit [150509] by Christophe Dumez
  • 15 edits in trunk/Source/WebCore

Have IDL interface names match their global constructor
https://bugs.webkit.org/show_bug.cgi?id=116520

Reviewed by Kentaro Hara.

Have IDL interface names match their global constructor name on DOMWindow.idl
using [InterfaceName] extended attribute. This affects in particular webkit
prefixed constructors. This is mandated by Web IDL specification:
http://dev.w3.org/2006/webapi/WebIDL/#es-interfaces

As a consequence, we can now get rid of [NoInterfaceObject] extended attribute
for those interfaces and have their global constructors automatically generated
by the bindings generator.

No new tests, no behavior change for layout tests.

  • Modules/mediasource/MediaSource.idl:
  • Modules/mediasource/SourceBuffer.idl:
  • Modules/mediasource/SourceBufferList.idl:
  • Modules/mediastream/MediaStream.idl:
  • Modules/mediastream/RTCPeerConnection.idl:
  • Modules/speech/SpeechGrammar.idl:
  • Modules/speech/SpeechGrammarList.idl:
  • Modules/speech/SpeechRecognition.idl:
  • Modules/speech/SpeechRecognitionError.idl:
  • Modules/speech/SpeechRecognitionEvent.idl:
  • Modules/webaudio/OfflineAudioContext.idl:
  • Modules/webaudio/PannerNode.idl:
  • dom/ShadowRoot.idl:
  • page/DOMWindow.idl:
4:42 AM Changeset in webkit [150508] by zarvai@inf.u-szeged.hu
  • 15 edits
    10 adds
    1 delete in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskipping some tests.
https://bugs.webkit.org/show_bug.cgi?id=26830
https://bugs.webkit.org/show_bug.cgi?id=99870
https://bugs.webkit.org/show_bug.cgi?id=108429
https://bugs.webkit.org/show_bug.cgi?id=23166
https://bugs.webkit.org/show_bug.cgi?id=98523
https://bugs.webkit.org/show_bug.cgi?id=110654

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-05-22

  • platform/qt-5.0/svg/transforms/text-with-pattern-inside-transformed-html-expected.png: Removed.
  • platform/qt/TestExpectations:
  • platform/qt/css2.1/20110323/replaced-elements-001-expected.png:
  • platform/qt/css2.1/20110323/replaced-elements-001-expected.txt:
  • platform/qt/css3/flexbox/button-expected.png: Added.
  • platform/qt/css3/flexbox/button-expected.txt: Added.
  • platform/qt/fast/css/background-clip-radius-values-expected.png: Added.
  • platform/qt/fast/css/background-clip-radius-values-expected.txt: Added.
  • platform/qt/fast/images/repaint-subrect-grid-expected.txt: Added.
  • platform/qt/fast/multicol/single-line-expected.png: Added.
  • platform/qt/fast/multicol/single-line-expected.txt: Added.
  • platform/qt/ietestcenter/css3/bordersbackgrounds/border-radius-clip-002-expected.png:
  • platform/qt/svg/custom/foreign-object-skew-expected.txt:
  • platform/qt/svg/custom/js-late-pattern-creation-expected.png:
  • platform/qt/svg/custom/pattern-scaling-expected.png: Added.
  • platform/qt/svg/custom/pattern-scaling-expected.txt: Added.
  • platform/qt/svg/custom/pattern-skew-transformed-expected.png:
  • platform/qt/svg/custom/pattern-skew-transformed-expected.txt: Added.
  • platform/qt/svg/custom/pattern-with-transformation-expected.png:
  • platform/qt/svg/custom/text-ctm-expected.png:
  • platform/qt/svg/custom/text-ctm-expected.txt:
  • platform/qt/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
  • platform/qt/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug92647-2-expected.png:
  • platform/qt/tables/mozilla/bugs/bug92647-2-expected.txt:
2:37 AM Changeset in webkit [150507] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[EFL][WK2] Change Ewk_Context_Menu_Item's parent menu to raw pointer
https://bugs.webkit.org/show_bug.cgi?id=116549

Patch by Michał Pakuła vel Rutka <Michał Pakuła vel Rutka> on 2013-05-22
Reviewed by Christophe Dumez.

A context menu item should have only a pointer to parent menu instead
of owning parent menu.

  • UIProcess/API/efl/ewk_context_menu_item.cpp:

(EwkContextMenuItem::EwkContextMenuItem):

  • UIProcess/API/efl/ewk_context_menu_item_private.h:

(EwkContextMenuItem::create):
(EwkContextMenuItem::parentMenu):
(EwkContextMenuItem):

2:25 AM Changeset in webkit [150506] by zarvai@inf.u-szeged.hu
  • 27 edits
    1 copy
    40 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskipping some tests.
https://bugs.webkit.org/show_bug.cgi?id=105437

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-05-22

  • platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.txt: Added.
  • platform/qt/svg/filters/feImage-animated-transform-on-target-rect-expected.png: Copied from LayoutTests/platform/qt/svg/filters/feImage-multiple-targets-id-change-expected.png.
  • platform/qt/svg/filters/feImage-animated-transform-on-target-rect-expected.txt: Added.
  • platform/qt/svg/filters/feImage-filterUnits-objectBoundingBox-primitiveUnits-objectBoundingBox-expected.png:
  • platform/qt/svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-objectBoundingBox-expected.png:
  • platform/qt/svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-userSpaceOnUse-expected.png:
  • platform/qt/svg/filters/feImage-late-indirect-update-expected.png:
  • platform/qt/svg/filters/feImage-late-indirect-update-expected.txt: Added.
  • platform/qt/svg/filters/feImage-multiple-targets-id-change-expected.png:
  • platform/qt/svg/filters/feImage-multiple-targets-id-change-expected.txt: Added.
  • platform/qt/svg/filters/feImage-position-expected.png:
  • platform/qt/svg/filters/feImage-position-expected.txt: Added.
  • platform/qt/svg/filters/feImage-preserveAspectratio-expected.png:
  • platform/qt/svg/filters/feImage-preserveAspectratio-expected.txt: Added.
  • platform/qt/svg/filters/feImage-reference-invalidation-expected.png:
  • platform/qt/svg/filters/feImage-reference-invalidation-expected.txt: Added.
  • platform/qt/svg/filters/feImage-subregions-expected.png:
  • platform/qt/svg/filters/feImage-subregions-expected.txt: Added.
  • platform/qt/svg/filters/feImage-subregions-preseveAspectRatio-none-expected.png:
  • platform/qt/svg/filters/feImage-subregions-preseveAspectRatio-none-expected.txt: Added.
  • platform/qt/svg/filters/feImage-subregions-preseveAspectRatio-none-with-viewBox-expected.png:
  • platform/qt/svg/filters/feImage-subregions-preseveAspectRatio-none-with-viewBox-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-add-to-document-expected.png:
  • platform/qt/svg/filters/feImage-target-add-to-document-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-attribute-change-expected.png:
  • platform/qt/svg/filters/feImage-target-attribute-change-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-attribute-change-with-use-indirection-2-expected.png:
  • platform/qt/svg/filters/feImage-target-attribute-change-with-use-indirection-2-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-attribute-change-with-use-indirection-expected.png:
  • platform/qt/svg/filters/feImage-target-attribute-change-with-use-indirection-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-changes-id-expected.png:
  • platform/qt/svg/filters/feImage-target-changes-id-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-id-change-expected.png:
  • platform/qt/svg/filters/feImage-target-id-change-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-inline-style-change-expected.png:
  • platform/qt/svg/filters/feImage-target-inline-style-change-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-property-change-expected.png:
  • platform/qt/svg/filters/feImage-target-property-change-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-reappend-to-document-expected.png:
  • platform/qt/svg/filters/feImage-target-reappend-to-document-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-remove-from-document-expected.png:
  • platform/qt/svg/filters/feImage-target-remove-from-document-expected.txt: Added.
  • platform/qt/svg/filters/feImage-target-style-change-expected.png:
  • platform/qt/svg/filters/feImage-target-style-change-expected.txt: Added.
12:24 AM Changeset in webkit [150505] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] accessibility/label-for-control-hittest.html is failing
https://bugs.webkit.org/show_bug.cgi?id=112029

Unreviewed EFL gardening.

accessibility/label-for-control-hittest.html passes after r150439.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-05-22

  • platform/efl-wk2/TestExpectations:
12:07 AM Changeset in webkit [150504] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Unreviewed buildfix after r150484.

  • UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:

(WebKit::PluginProcessProxy::platformGetLaunchOptions):

May 21, 2013:

11:26 PM Changeset in webkit [150503] by commit-queue@webkit.org
  • 7 edits
    7 deletes in trunk

Source/WebCore: Update the background blending implementation to match the changes done
in the spec. This implies that background color blending is removed and
the background layers won't blend with the content behind the element
any more.
https://bugs.webkit.org/show_bug.cgi?id=116212

Patch by Mihai Tica <mitica@adobe.com> on 2013-05-21
Reviewed by Dean Jackson.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintFillLayers):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):

LayoutTests: Updating element background blending to conform to the changes in the spec.
This implies that the background layers won't longer blend with the content
behind the element.
Removing the background color tests, as background color blending is no longer
a valid use case, also modified the current background image tests.
https://bugs.webkit.org/show_bug.cgi?id=116212

Patch by Mihai Tica <mitica@adobe.com> on 2013-05-21
Reviewed by Dean Jackson.

  • css3/compositing/effect-background-blend-mode-color-expected.txt: Removed.
  • css3/compositing/effect-background-blend-mode-color.html: Removed.
  • css3/compositing/effect-background-blend-mode-color2-expected.txt: Removed.
  • css3/compositing/effect-background-blend-mode-color2.html: Removed.
  • css3/compositing/effect-background-blend-mode-stacking-expected.png: Removed.
  • css3/compositing/effect-background-blend-mode-stacking.html:
  • platform/mac/css3/compositing/effect-background-blend-mode-color-expected.png: Removed.
  • platform/mac/css3/compositing/effect-background-blend-mode-color2-expected.png: Removed.
  • platform/mac/css3/compositing/effect-background-blend-mode-expected.png:
  • platform/mac/css3/compositing/effect-background-blend-mode-stacking-expected.png:
11:18 PM Changeset in webkit [150502] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Cleanup TestExpectations to pass --lint-test-files
https://bugs.webkit.org/show_bug.cgi?id=116590

Unreviewed EFL gardening.

http/tests/websocket/tests/hybi/close-on-navigate-new-location.html was skipped in r150497.

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-21

  • platform/efl/TestExpectations: Remove duplicate entry.
11:09 PM Changeset in webkit [150501] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Web Inspector: [Mac] inspector/geolocation-error.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=116592

Add a flaky test expectation.

  • platform/mac/TestExpectations:
10:49 PM Changeset in webkit [150500] by akling@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r150491): WebKit2.CloseThenTerminate asserting below WebContext::disconnectProcess().
<http://webkit.org/b/116588>

Reviewed by Sam Weinig.

Do an early return from WebProcessProxy::requestTermination() if there is no child process
connection to terminate.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::requestTermination):

8:07 PM Changeset in webkit [150499] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/win

[Windows, curl] WebDownloadCurl.cpp should not include SystemTime.h
https://bugs.webkit.org/show_bug.cgi?id=116584

Patch by Mark Salisbury <mark.salisbury@hp.com> on 2013-05-21
Reviewed by Brent Fulgham.

SystemTime header and implementation are no longer used and were removed
recently - http://trac.webkit.org/changeset/150216.

  • WebDownloadCurl.cpp:
7:36 PM Changeset in webkit [150498] by rniwa@webkit.org
  • 4 edits
    2 adds in trunk

Use-after-free in DOMSelection::containsNode
https://bugs.webkit.org/show_bug.cgi?id=116468

Reviewed by Andreas Kling.

Source/WebCore:

Retain the node pointer. Also bail out early if the node was not in the document
since Range::compareBoundaryPoints sets ec to WRONG_DOCUMENT_ERR otherwise.

Test: editing/selection/contains-node-crash.html

  • page/DOMSelection.cpp:

(WebCore::DOMSelection::containsNode):

  • page/DOMSelection.h:

(DOMSelection):

LayoutTests:

Add a regression test from https://chromium.googlesource.com/chromium/blink/+/40bb8089352b15dd034641b4c131111cd79b44f1.

  • editing/selection/contains-node-crash-expected.txt: Added.
  • editing/selection/contains-node-crash.html: Added.
7:35 PM Changeset in webkit [150497] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Skip a test which has problem related to ecore library.

  • platform/efl/TestExpectations:
7:13 PM Changeset in webkit [150496] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Web Inspector: InspectorFrontendHost::loadResourceSynchronously() builds ASCII-only results
https://bugs.webkit.org/show_bug.cgi?id=116569

Merge: https://chromium.googlesource.com/chromium/blink/+/7f1cfecfe34f4dbc6ce1ef0250b13f2058128eeb

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-05-21
Reviewed by Timothy Hatcher.

Source/WebCore:

Test: inspector/load-resource-synchronously-utf8.html

  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::loadResourceSynchronously):

LayoutTests:

  • inspector/load-resource-synchronously-utf8-expected.txt: Added.
  • inspector/load-resource-synchronously-utf8.html: Added.
7:13 PM Changeset in webkit [150495] by mrowe@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/13915556> Sluggish scrolling in web content

Reviewed by Gavin Barraclough.

  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::setProcessSuppressionEnabled): When process suppression is disabled, low latency is important.

6:47 PM Changeset in webkit [150494] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebKit2

Fix build break after r150484

Unreviewed, fix build break on EFL, GTK.

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::PluginInfoStore::defaultLoadPolicyForPlugin):

  • UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:

(WebKit::PluginProcessProxy::platformGetLaunchOptions):

5:25 PM Changeset in webkit [150493] by rniwa@webkit.org
  • 2 edits in trunk/Tools

REGRESSION(r150369): WebKit2WillLoadTest tests are failing
https://bugs.webkit.org/show_bug.cgi?id=116585

Reviewed by Alexey Proskuryakov.

willLoadURLRequest and willLoadDataRequest require the API version 6.

  • TestWebKitAPI/Tests/WebKit2/WillLoad_Bundle.cpp:
5:07 PM Changeset in webkit [150492] by aestes@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

Check in the test and result I forgot to 'git add' before committing r150490.

  • http/tests/security/cross-origin-session-storage-third-party-blocked-expected.txt: Added.
  • http/tests/security/cross-origin-session-storage-third-party-blocked.html: Added.
5:07 PM Changeset in webkit [150491] by akling@apple.com
  • 5 edits in trunk/Source/WebKit2

PPT: Closing tab that is hung or chewing 100% CPU leaves abandoned WebProcess.
<http://webkit.org/b/116464>
<rdar://problem/10103795>

Reviewed by Anders Carlsson.

Simplify the web process sacrifice ritual. Instead of murderizing the process when its last tab closes,
just shut down the CoreIPC connection from the UI process. The web process, upon noticing this,
will start a 10 second watchdog timer, and if it hasn't shut down by the time it fires, well, it'll shut down.

(WebKit::WebProcessProxy::removeWebPage):

When the last page is removed from a WebProcessProxy, disconnect the process so that it'll die off
eventually, even if the WebPage::Close message never gets properly handled.

  • Shared/ChildProcessProxy.h:
  • Shared/ChildProcessProxy.cpp:

(WebKit::ChildProcessProxy::abortProcessLaunchIfNeeded):

Added a helper to abort any in-progress launch of a new web process. Otherwise we'll have a race
where the exiting web process may get re-used for a new tab.

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

(WebKit::WebProcessProxy::WebProcessProxy):
(WebKit::WebProcessProxy::enableSuddenTermination):
(WebKit::WebProcessProxy::disableSuddenTermination):

Remove WebProcessProxy's sudden termination counter. The web process will do what it needs in
response to the WebPage::Close message. We still forward these calls to NSProcessInfo on Mac though.

5:03 PM Changeset in webkit [150490] by aestes@apple.com
  • 6 edits
    2 deletes in trunk

Allow session storage for third-party origins even if third-party data access is blocked.
https://bugs.webkit.org/show_bug.cgi?id=116532

Reviewed by Anders Carlsson.

Source/WebCore:

In http://trac.webkit.org/changeset/149326 we relaxed our policy for
localStorage when third-party data blocking is enabled to create a
transient, session-scoped storage area for the third-party origin
instead of throwing an exception. Since this gives essentially the same
behavior as sessionStorage, we might as well also allow sessionStorage
for third-party origins.

Test: http/tests/security/cross-origin-session-storage-third-party-blocked.html

  • WebCore.exp.in: Updated the symbol for

SecurityOrigin::canAccessStorage.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::sessionStorage): Called canAccessSessionStorage()
rather than canAccessLocalStorage().

  • page/SecurityOrigin.cpp:

(WebCore::SecurityOrigin::canAccessStorage): Passed in an enum
indicating if access should be allowed from third-party origins.

  • page/SecurityOrigin.h:

(WebCore::SecurityOrigin::canAccessSessionStorage): Called
canAccessStorage() with AlwaysAllowFromThirdParty.
(SecurityOrigin):

LayoutTests:

  • http/tests/security/cross-origin-session-storage-third-party-blocked-expected.txt: Renamed from LayoutTests/http/tests/security/cross-origin-session-storage-expected.txt.
  • http/tests/security/cross-origin-session-storage-third-party-blocked.html: Renamed from LayoutTests/http/tests/security/cross-origin-session-storage.html.
4:53 PM Changeset in webkit [150489] by Brent Fulgham
  • 3 edits in trunk/Source/JavaScriptCore

[Windows] Unreviewed speculative fix for test-bots.

Add export declaration for WTFInvokeCrashHook to avoid runtime
load error on test bots.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreExports.def:
  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:
4:34 PM Changeset in webkit [150488] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Web Inspector: inspector/styles/import-pseudoclass-crash.html intermittently hits an assertion in HTMLLinkElement::startLoadingDynamicSheet
https://bugs.webkit.org/show_bug.cgi?id=116582

Add a flaky crash expectation.

  • platform/mac/TestExpectations:
4:09 PM Changeset in webkit [150487] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mountain Lion test expectations per bug 116477.

  • platform/mac/TestExpectations:
4:02 PM Changeset in webkit [150486] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix build.

  • WebProcess/Plugins/PluginProcessConnectionManager.cpp:

(WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
Stop using lambdas :(

4:01 PM Changeset in webkit [150485] by Hugo Parente Lima
  • 2 edits in trunk/Source/WebCore

[EFL] Add missing #if guards on drag support methods
https://bugs.webkit.org/show_bug.cgi?id=116574

Reviewed by Christophe Dumez.

  • platform/efl/PasteboardEfl.cpp:

(WebCore):

3:54 PM Changeset in webkit [150484] by andersca@apple.com
  • 33 edits
    1 copy in trunk/Source/WebKit2

Provide an API to run sandboxed plug-ins outside of their sandbox
https://bugs.webkit.org/show_bug.cgi?id=116578

Reviewed by Andreas Kling.

  • Platform/CoreIPC/HandleMessage.h:

(CoreIPC::callMemberFunction):
Add new overload.

  • PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:

(WebKit::PluginProcessMainDelegate::getExtraInitializationData):
Handle "disable-sandbox".

  • PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:

(WebKit::PluginServiceInitializerDelegate::getExtraInitializationData):
Handle "disable-sandbox".

  • PluginProcess/PluginProcess.h:

Move Type to PluginProcessAttributes and remove hash traits for type.

  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::PluginProcess::platformInitializePluginProcess):
Update for new type name.

(WebKit::PluginProcess::initializeSandbox):
Return early if the sandbox is disabled.

  • Shared/Plugins/Netscape/PluginInformation.cpp:

(WebKit::getPluginModuleInformation):
PluginInfoStore::policyForPlugin has been renamed to PluginInfoStore::defaultLoadPolicyForPlugin.

  • Shared/Plugins/PluginModuleInfo.h:

Add PluginModuleLoadUnsandboxed.

  • Shared/Plugins/PluginProcessAttributes.h: Added.

Add new header with various plug-in process attributes.

  • Shared/Plugins/PluginProcessCreationParameters.h:

Change type enum.

  • UIProcess/API/C/WKAPICast.h:

(WebKit::toWKPluginLoadPolicy):
(WebKit::toPluginModuleLoadPolicy):
Handle the unsandboxed enum.

  • UIProcess/API/C/WKPage.h:

Add kWKPluginLoadPolicyLoadUnsandboxed.

  • UIProcess/Plugins/PluginInfoStore.h:

Rename policyForPlugin to defaultLoadPolicyForPlugin.

  • UIProcess/Plugins/PluginProcessManager.cpp:

(WebKit::PluginProcessManager::pluginProcessToken):
Add new helper function for getting a token given plug-in attributes.

(WebKit::PluginProcessManager::getPluginProcessConnection):
This now takes a pluginProcessToken.

(WebKit::PluginProcessManager::getSitesWithData):
Make sure to call pluginProcessToken.

(WebKit::PluginProcessManager::clearSiteData):
Ditto.

(WebKit::PluginProcessManager::getOrCreatePluginProcess):
This now takes a token.

  • UIProcess/Plugins/PluginProcessProxy.cpp:

(WebKit::PluginProcessProxy::create):
(WebKit::PluginProcessProxy::PluginProcessProxy):
Pass the PluginProcessAttributes as well as the plug-in process token.

(WebKit::PluginProcessProxy::getLaunchOptions):
Pass the plug-in process attributes to platformGetLaunchOptions.

(WebKit::PluginProcessProxy::didClose):
Pass the token to PluginProcessCrashed.

(WebKit::PluginProcessProxy::didFinishLaunching):
Update for type change.

  • UIProcess/Plugins/mac/PluginInfoStoreMac.mm:

(WebKit::shouldBlockPlugin):
(WebKit::PluginInfoStore::defaultLoadPolicyForPlugin):
Rename policyForPlugin to defaultLoadPolicyForPlugin.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::PluginProcessProxy::platformGetLaunchOptions):
Set the "disable-sandbox" data if needed.

(WebKit::PluginProcessProxy::platformInitializePluginProcess):
(WebKit::PluginProcessProxy::openPluginPreferencePane):
Get the module info from m_pluginProcessAttributes.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::findPlugin):
This now returns a token.

  • UIProcess/WebPageProxy.messages.in:

FindPlugin now returns a token instead of the path.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::getPluginProcessConnection):
Pass the token to the plug-in process manager.

  • UIProcess/WebProcessProxy.messages.in:

This now takes a token.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files.

  • WebProcess/Plugins/PluginProcessConnection.cpp:

(WebKit::PluginProcessConnection::PluginProcessConnection):
This now takes a token.

  • WebProcess/Plugins/PluginProcessConnection.h:

(WebKit::PluginProcessConnection::create):
(WebKit::PluginProcessConnection::pluginProcessToken):
Create this with a token instead of a path and process type.

  • WebProcess/Plugins/PluginProcessConnectionManager.cpp:

(WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
This now takes a token.

(WebKit::PluginProcessConnectionManager::pluginProcessCrashed):
Ditto.

  • WebProcess/Plugins/PluginProcessConnectionManager.messages.in:

PluginProcessCrashed now takes a token.

  • WebProcess/Plugins/PluginProxy.cpp:

(WebKit::PluginProxy::create):
(WebKit::PluginProxy::PluginProxy):
These now take tokens.

(WebKit::PluginProxy::initialize):
Pass the token when getting the connection.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin):
Get the token from the UI process and pass it to the PluginProxy.

(WebKit::WebPage::canPluginHandleResponse):
Update now that FindPlugin returns a token.

3:48 PM Changeset in webkit [150483] by Antti Koivisto
  • 7 edits in trunk/Source/WebCore

Remove stub HTMLContentElement
https://bugs.webkit.org/show_bug.cgi?id=116580

Reviewed by Andreas Kling.

Inherit DetailsContentElement and DetailsSummaryElement directly from InsertionPoint instead.

  • html/HTMLDetailsElement.cpp:

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

  • html/HTMLSummaryElement.cpp:

(WebCore::SummaryContentElement::SummaryContentElement):

  • html/shadow/HTMLContentElement.cpp:

(WebCore::HTMLContentElement::contentTagName):

  • html/shadow/HTMLContentElement.h:

(WebCore::isHTMLContentElement):

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::setResetStyleInheritance):

  • html/shadow/InsertionPoint.h:


Also remove some leftover selector code.

(WebCore::InsertionPoint::insertionPointType):

3:20 PM Changeset in webkit [150482] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Robustify repaint of previous caret node when moving FrameSelection.
<http://webkit.org/b/116558>

Reviewed by Ryosuke Niwa.

As a follow-up to r150396, also repaint the caret rects if the previous node is contenteditable.

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::recomputeCaretRect):

3:06 PM Changeset in webkit [150481] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after r150469. We need to bail out here when DOM is mutated by an event listener such that
the split text nodes no longer exist right next to each other.

  • editing/InsertParagraphSeparatorCommand.cpp:

(WebCore::InsertParagraphSeparatorCommand::doApply):

2:38 PM Changeset in webkit [150480] by Antti Koivisto
  • 7 edits in trunk/Source/WebCore

Remove ScopeContentDistribution
https://bugs.webkit.org/show_bug.cgi?id=116576

Reviewed by Andreas Kling.

With maximum one ShadowRoot per Element this can be smashed into ContentDistributor.

  • dom/ShadowRoot.cpp:

(WebCore):

  • dom/ShadowRoot.h:

(WebCore):

  • html/shadow/ContentDistributor.cpp:

(WebCore::ContentDistributor::ContentDistributor):
(WebCore):
(WebCore::ContentDistributor::~ContentDistributor):
(WebCore::ContentDistributor::invalidateInsertionPointList):
(WebCore::ContentDistributor::ensureInsertionPointList):
(WebCore::ContentDistributor::distribute):
(WebCore::ContentDistributor::invalidate):

  • html/shadow/ContentDistributor.h:

(WebCore):
(ContentDistributor):

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::InsertionPoint):
(WebCore::InsertionPoint::insertedInto):
(WebCore::InsertionPoint::removedFrom):

Simplify insertion point list invalidation.

  • html/shadow/InsertionPoint.h:
2:28 PM Changeset in webkit [150479] by rniwa@webkit.org
  • 2 edits in trunk/Tools

REGRESSION(r150393): editing/inserting/typing-at-end-of-line.html fails
https://bugs.webkit.org/show_bug.cgi?id=116516

Reviewed by Alexey Proskuryakov.

Reset states in DumpRenderTree. The fix for WebKitTestRunner should be implemented in the bug 116577.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(createWebViewAndOffscreenWindow): Match the ordering.
(resetWebViewToConsistentStateBeforeTesting): Reset text replacement states.

2:04 PM Changeset in webkit [150478] by zoltan@webkit.org
  • 3 edits
    4 adds in trunk

[CSS Regions][CSS Exclusions] Multiple regions with shape-insides should respect positioned shapes and overflow
https://bugs.webkit.org/show_bug.cgi?id=115001

Reviewed by David Hyatt.

In r150375 I implemented the new overflow behavior for shape-inside on regions, but it covered only the simple cases
when you had only one region. This patch adds support for the new overflow behavior for multiple regions with multiple
positioned shape-insides and overflow.

Source/WebCore:

Tests: fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes.html

fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::updateLineBoundariesForExclusions): Cover cases when content flows into the next region, update the
line segments for the overflow.
(WebCore::RenderBlock::adjustLogicalLineTopAndLogicalHeightIfNeeded): In flow thread case we don't want to adjust the height
in two places.

LayoutTests:

  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes.html: Added.
2:00 PM Changeset in webkit [150477] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Windows] Reenable storage tests
https://bugs.webkit.org/show_bug.cgi?id=116559

Unreviewed update to TestExpectations:

  1. Storage features are present on Windows, so test them.
  2. Disable (for now) the four websql tests that fail.
  • platform/win/TestExpectations:
1:52 PM Changeset in webkit [150476] by jer.noble@apple.com
  • 3 edits
    1 delete in trunk/LayoutTests

Unreviewed gardening; rebaseline and re-enable media/track/track-cue-rendering-snap-to-lines-not-set.html

  • media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt:
  • platform/mac/TestExpectations:
  • platform/mac/media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt: Removed.
1:42 PM Changeset in webkit [150475] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r150425.
http://trac.webkit.org/changeset/150425
https://bugs.webkit.org/show_bug.cgi?id=116573

Not the right fix for WebKit2 (Requested by rniwa on #webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2013-05-21

  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState):

1:38 PM Changeset in webkit [150474] by ap@apple.com
  • 6 edits in trunk/Tools

<rdar://problem/13929704> [WK2] WebKitTestRunner always crashes on exit
https://bugs.webkit.org/show_bug.cgi?id=116568

Reviewed by Anders Carlsson.

  • WebKitTestRunner/WebNotificationProvider.cpp: (WTR::WebNotificationProvider::~WebNotificationProvider):
  • WebKitTestRunner/WebNotificationProvider.h: When the provider is destroyed, it should no longer be registered with the manager.
  • WebKitTestRunner/GeolocationProviderMock.cpp: (WTR::GeolocationProviderMock::~GeolocationProviderMock):
  • WebKitTestRunner/GeolocationProviderMock.h: I wasn't seeing a crash here, but this code has the same issue as notification provider, so applying the same fix.
  • WebKitTestRunner/TestController.cpp: (WTR::TestController::~TestController): Close icon database. I started seeing ASSERT(!isOpen()) in WebCore IconDatabase destructor having fixed the above.
1:32 PM Changeset in webkit [150473] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update test expectations after r150472 for the bug 116125.

  • platform/wk2/TestExpectations:
1:25 PM WebKitGTK/2.0.x edited by kov@webkit.org
(diff)
1:21 PM Changeset in webkit [150472] by commit-queue@webkit.org
  • 5 edits in trunk

Unreviewed, rolling out r150386 and r150397.
http://trac.webkit.org/changeset/150386
http://trac.webkit.org/changeset/150397
https://bugs.webkit.org/show_bug.cgi?id=116572

Broke a test; Alex is going to try again later. (Requested by
thorton on #webkit).

Tools:

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::pathSuitableForTestResult):
(WTR::dumpRequestDescriptionSuitableForTestResult):
(WTR::dumpResponseDescriptionSuitableForTestResult):
(WTR::InjectedBundlePage::willPerformClientRedirectForFrame):
(WTR::InjectedBundlePage::didInitiateLoadForResource):
(WTR::InjectedBundlePage::willSendRequestForFrame):
(WTR::InjectedBundlePage::didReceiveResponseForResource):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:

(InjectedBundlePage):

LayoutTests:

  • platform/wk2/TestExpectations:
1:02 PM Changeset in webkit [150471] by jer.noble@apple.com
  • 1 edit in trunk/LayoutTests/ChangeLog

Unreviewed gardening; rebaseline and re-enable media/track/track-cue-rendering-snap-to-lines-not-set.html
https://bugs.webkit.org/show_bug.cgi?id=116567

  • media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt:
  • platform/mac/TestExpectations:
  • platform/mac/media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt: Removed.
12:43 PM Changeset in webkit [150470] by fpizlo@apple.com
  • 3 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: FTL shouldn't use FastISel and Small code model should be turned off for now
https://bugs.webkit.org/show_bug.cgi?id=115998

Reviewed by Oliver Hunt.

This switches off FastISel and makes it possible to turn off Small code model.

  • ftl/FTLCompile.cpp:

(JSC::FTL::compile):

  • runtime/Options.h:

(JSC):

12:34 PM Changeset in webkit [150469] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

dispatchEvent call can execute javascript and blow away endRoot from underneath
https://bugs.webkit.org/show_bug.cgi?id=116483

Source/WebCore:

Reviewed by Andreas Kling.

Merge https://chromium.googlesource.com/chromium/blink/+/798cba0af9b2aff21e475e2e08ea3ca5e97dfc2c.

Test: editing/undo/undo-after-event-edited.html

  • editing/Editor.cpp:

(WebCore::dispatchEditableContentChangedEvents):

LayoutTests:

Reviewed by Andreas Kling.

Add a regression test.

  • editing/undo/undo-after-event-edited-expected.txt: Added.
  • editing/undo/undo-after-event-edited.html: Added.
12:32 PM Changeset in webkit [150468] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

media/track/track-cue-rendering-snap-to-lines-not-set.html is failing
https://bugs.webkit.org/show_bug.cgi?id=116567

Add a failing test expectation to the test added in r150452.

Patch by Ryosuke Niwa <rniwa@webkit.org> on 2013-05-21

  • platform/mac/TestExpectations:
  • platform/mac/media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt: Added.
12:28 PM Changeset in webkit [150467] by rniwa@webkit.org
  • 2 edits
    1 add in trunk/LayoutTests

media/track/track-cue-rendering-snap-to-lines-not-set.html is failing
https://bugs.webkit.org/show_bug.cgi?id=116567

Add a failing test expectation to the test added in r150452.

  • platform/mac/TestExpectations:
  • platform/mac/media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt: Added.
12:26 PM Changeset in webkit [150466] by fpizlo@apple.com
  • 34 edits
    1 delete in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: should use ConcurrentJITLock[er] directly and not through typedef
https://bugs.webkit.org/show_bug.cgi?id=116561

Rubber stamped by Geoffrey Garen.

(JSC::ArrayProfile::computeUpdatedPrediction):
(JSC::ArrayProfile::briefDescription):

  • bytecode/ArrayProfile.h:

(ArrayProfile):
(JSC::ArrayProfile::expectedStructure):
(JSC::ArrayProfile::structureIsPolymorphic):
(JSC::ArrayProfile::hasDefiniteStructure):
(JSC::ArrayProfile::observedArrayModes):
(JSC::ArrayProfile::mayInterceptIndexedAccesses):
(JSC::ArrayProfile::mayStoreToHole):
(JSC::ArrayProfile::outOfBounds):
(JSC::ArrayProfile::usesOriginalArrayStructures):

  • bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::computeFor):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpValueProfiling):
(JSC::CodeBlock::dumpArrayProfiling):
(JSC::CodeBlock::updateAllPredictionsAndCountLiveness):
(JSC::CodeBlock::updateAllArrayPredictions):
(JSC::CodeBlock::nameForRegister):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::valueProfilePredictionForBytecodeOffset):
(CodeBlock):

  • bytecode/CodeBlockLock.h: Removed.
  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFor):

  • bytecode/LazyOperandValueProfile.cpp:

(JSC::CompressedLazyOperandValueProfileHolder::computeUpdatedPredictions):
(JSC::CompressedLazyOperandValueProfileHolder::add):
(JSC::LazyOperandValueProfileParser::initialize):
(JSC::LazyOperandValueProfileParser::prediction):

  • bytecode/LazyOperandValueProfile.h:

(CompressedLazyOperandValueProfileHolder):
(LazyOperandValueProfileParser):

  • bytecode/MethodOfGettingAValueProfile.cpp:

(JSC::MethodOfGettingAValueProfile::getSpecFailBucket):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor):

  • bytecode/ResolveGlobalStatus.cpp:

(JSC::ResolveGlobalStatus::computeFor):

  • bytecode/ValueProfile.h:

(JSC::ValueProfileBase::briefDescription):
(JSC::ValueProfileBase::computeUpdatedPrediction):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::addVar):

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::fromObserved):

  • dfg/DFGArrayMode.h:

(ArrayMode):
(JSC::DFG::ArrayMode::withProfile):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::injectLazyOperandSpeculation):
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):
(JSC::DFG::ByteCodeParser::getArrayMode):
(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):
(JSC::DFG::ByteCodeParser::parseResolveOperations):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGPredictionInjectionPhase.cpp:

(JSC::DFG::PredictionInjectionPhase::run):

  • jit/JITInlines.h:

(JSC::JIT::chooseArrayMode):

  • jit/JITStubs.cpp:

(JSC::tryCachePutByID):
(JSC::tryCacheGetByID):
(JSC::DEFINE_STUB_FUNCTION):
(JSC::lazyLinkFor):

  • llint/LLIntSlowPaths.cpp:

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

  • profiler/ProfilerBytecodeSequence.cpp:

(JSC::Profiler::BytecodeSequence::BytecodeSequence):

  • runtime/Executable.cpp:

(JSC::ProgramExecutable::addGlobalVar):

  • runtime/JSActivation.cpp:

(JSC::JSActivation::getOwnNonIndexPropertyNames):
(JSC::JSActivation::symbolTablePutWithAttributes):

  • runtime/JSScope.cpp:

(JSC::JSScope::resolveContainingScopeInternal):
(JSC::JSScope::resolvePut):

  • runtime/JSSegmentedVariableObject.cpp:

(JSC::JSSegmentedVariableObject::findRegisterIndex):
(JSC::JSSegmentedVariableObject::addRegisters):

  • runtime/JSSegmentedVariableObject.h:

(JSSegmentedVariableObject):

  • runtime/JSSymbolTableObject.cpp:

(JSC::JSSymbolTableObject::getOwnNonIndexPropertyNames):

  • runtime/JSSymbolTableObject.h:

(JSC::symbolTableGet):
(JSC::symbolTablePut):
(JSC::symbolTablePutWithAttributes):

  • runtime/Structure.cpp:

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransitionToExistingStructureConcurrently):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::takePropertyTableOrCloneIfPinned):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::putSpecificValue):
(JSC::Structure::remove):
(JSC::Structure::createPropertyMap):

  • runtime/Structure.h:

(Structure):

  • runtime/SymbolTable.h:

(SymbolTable):
(JSC::SymbolTable::find):
(JSC::SymbolTable::get):
(JSC::SymbolTable::inlineGet):
(JSC::SymbolTable::begin):
(JSC::SymbolTable::end):
(JSC::SymbolTable::size):
(JSC::SymbolTable::add):
(JSC::SymbolTable::set):
(JSC::SymbolTable::contains):

12:10 PM Changeset in webkit [150465] by fpizlo@apple.com
  • 39 edits
    4 adds in branches/dfgFourthTier/Source

fourthTier: DFG should be able to run on a separate thread
https://bugs.webkit.org/show_bug.cgi?id=112839

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

This is the final bit of concurrent JITing. The idea is that there is a
single global worklist, and a single global thread, that does all
optimizing compilation. This is the DFG::Worklist. It contains a queue of
DFG::Plans, and a map from CodeBlock* (the baseline code block we're
trying to optimize) to DFG::Plan. If the DFGDriver tries to concurrently
compile something, it puts the Plan on the Worklist. The Worklist's
thread will compile that Plan eventually, and when it's done, it will
signal its completion by (1) notifying anyone waiting for the Worklist to
be done, and (2) forcing the CodeBlock::m_jitExecuteCounter to take slow
path. The next Baseline JIT cti_optimize call will then install all ready
(i.e. compiled) Plans for that VM. Note that (1) is only for the GC and
VM shutdown, which will want to ensure that there aren't any outstanding
async compilations before proceeding. They do so by simply waiting for
all of the plans for the current VM to complete. (2) is the actual way
that code typically gets installed.

This is all very racy by design. For example, just as we try to force the
execute counter to take slow path, the main thread may be setting the
execute counter to some other value. The main thread must set it to
another value because (a) JIT code is constantly incrementing the counter
in a racy way, (b) the cti_optimize slow path will set it to some
large-ish negative value to ensure that cti_optimize isn't called
repeatedly, and (c) OSR exits from previously jettisoned code blocks may
still want to reset the counter values. This "race" is made benign, by
ensuring that while there is an asynchronous compilation, we at worse set
the counter to optimizeAfterWarmUp and never to deferIndefinitely. Hence
if the race happens then the worst case is that we wait another ~1000
counts before installing the optimized code. Another defense is that if
any CodeBlock calls into cti_optimize, then it will check for all ready
plans for the VM - so even if a code block has to wait another ~1000
executions before it calls cti_optimize to do the installation, it may
actually end up being installed sooner because a different code block had
called cti_optimize, potentially for an unrelated reason.

Special care is taken to ensure that installing plans informs the GC
about the increased memory usage, but also ensures that we don't recurse
infinitely - since at start of GC we try to install outstanding plans.
This is done by introducing a new GC deferral mechanism (the DeferGC
block-scoped thingy), which will ensure that GCs don't happen in the
scope but are allowed to happen after. This still leaves the strange
corner case that cti_optimize may install outstanding plans, then GC, and
that GC may jettison the code block that was installed. This, and the
fact that the plan that we took slow path to install could have been a
failed or invalid compile, mean that we have to take special precautions
in cti_optimize.

This patch also fixes a number of small concurrency bugs that I found
when things started running. There are probably more of those bugs still
left to fix. This patch just fixes the ones I know about.

Concurrent compilation is right now only enabled on X86_64 Mac. We need
platforms that are sufficiently CAStastic so that we can do the various
memory fence and CAS tricks that make this safe. We also need a platform
that uses JSVALUE64. And we need pthread_once. So, that pretty much means
just X64_64 for now. Enabling Linux-64_64 should be a breeze, but I'll
leave that up to the Qt and GTK+ ports to do at their discretion.

This is a solid speed-up on SunSpider (8-9%) and V8Spider (16%), our two
main compile-time benchmarks. Most peculiarly, this also appears to
reduce measurement noise, rather than increasing it as you would have
expected. I don't understand that result but I like it anyway. On the
other hand, this is a slight (1%) slow-down on V8v7. I will continue to
investigate this but I think that the results are already good enough
that we should land this as-is. So far, it appears that the slow-down is
due to this breaking the don't-compile-inlineables heuristics. See
investigation in https://bugs.webkit.org/show_bug.cgi?id=116556 and the
bug https://bugs.webkit.org/show_bug.cgi?id=116557.

(JSC):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::resetStubInternal):
(JSC::CodeBlock::baselineVersion):
(JSC::CodeBlock::hasOptimizedReplacement):
(JSC::CodeBlock::optimizationThresholdScalingFactor):
(JSC::CodeBlock::checkIfOptimizationThresholdReached):
(JSC::CodeBlock::optimizeNextInvocation):
(JSC::CodeBlock::dontOptimizeAnytimeSoon):
(JSC::CodeBlock::optimizeAfterWarmUp):
(JSC::CodeBlock::optimizeAfterLongWarmUp):
(JSC::CodeBlock::optimizeSoon):
(JSC::CodeBlock::forceOptimizationSlowPathConcurrently):
(JSC::CodeBlock::setOptimizationThresholdBasedOnCompilationResult):
(JSC::CodeBlock::updateAllPredictionsAndCountLiveness):
(JSC::CodeBlock::updateAllArrayPredictions):
(JSC::CodeBlock::shouldOptimizeNow):

  • bytecode/CodeBlock.h:

(CodeBlock):
(JSC::CodeBlock::jitCompile):

  • bytecode/CodeBlockLock.h:

(JSC):

  • bytecode/ExecutionCounter.cpp:

(JSC::ExecutionCounter::forceSlowPathConcurrently):
(JSC):
(JSC::ExecutionCounter::setThreshold):

  • bytecode/ExecutionCounter.h:

(ExecutionCounter):

  • debugger/Debugger.cpp:

(JSC::Debugger::recompileAllJSFunctions):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::injectLazyOperandSpeculation):
(JSC::DFG::ByteCodeParser::getArrayMode):
(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):

  • dfg/DFGCommon.h:

(JSC::DFG::enableConcurrentJIT):
(DFG):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::Graph):

  • dfg/DFGGraph.h:

(Graph):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

  • dfg/DFGOperations.cpp:
  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::Plan):
(JSC::DFG::Plan::compileInThread):
(JSC::DFG::Plan::key):
(DFG):

  • dfg/DFGPlan.h:

(DFG):
(Plan):

  • dfg/DFGWorklist.cpp: Added.

(DFG):
(JSC::DFG::Worklist::Worklist):
(JSC::DFG::Worklist::~Worklist):
(JSC::DFG::Worklist::finishCreation):
(JSC::DFG::Worklist::create):
(JSC::DFG::Worklist::enqueue):
(JSC::DFG::Worklist::compilationState):
(JSC::DFG::Worklist::waitUntilAllPlansForVMAreReady):
(JSC::DFG::Worklist::removeAllReadyPlansForVM):
(JSC::DFG::Worklist::completeAllReadyPlansForVM):
(JSC::DFG::Worklist::completeAllPlansForVM):
(JSC::DFG::Worklist::queueLength):
(JSC::DFG::Worklist::dump):
(JSC::DFG::Worklist::runThread):
(JSC::DFG::Worklist::threadFunction):
(JSC::DFG::initializeGlobalWorklistOnce):
(JSC::DFG::globalWorklist):

  • dfg/DFGWorklist.h: Added.

(DFG):
(Worklist):

  • heap/CopiedSpaceInlines.h:

(JSC::CopiedSpace::allocateBlock):

  • heap/DeferGC.h: Added.

(JSC):
(DeferGC):
(JSC::DeferGC::DeferGC):
(JSC::DeferGC::~DeferGC):

  • heap/Heap.cpp:

(JSC::Heap::Heap):
(JSC::Heap::reportExtraMemoryCostSlowCase):
(JSC::Heap::collectAllGarbage):
(JSC::Heap::collect):
(JSC::Heap::collectIfNecessaryOrDefer):
(JSC):
(JSC::Heap::incrementDeferralDepth):
(JSC::Heap::decrementDeferralDepthAndGCIfNeeded):

  • heap/Heap.h:

(Heap):
(JSC::Heap::isCollecting):
(JSC):

  • heap/MarkedAllocator.cpp:

(JSC::MarkedAllocator::allocateSlowCase):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JIT.h:
  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::jitCompileAndSetHeuristics):
(JSC::LLInt::entryOSR):
(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • profiler/ProfilerBytecodes.h:
  • runtime/ConcurrentJITLock.h: Added.

(JSC):

  • runtime/ExecutionHarness.h:

(JSC::replaceWithDeferredOptimizedCode):

  • runtime/JSSegmentedVariableObject.cpp:

(JSC::JSSegmentedVariableObject::findRegisterIndex):
(JSC::JSSegmentedVariableObject::addRegisters):

  • runtime/JSSegmentedVariableObject.h:

(JSSegmentedVariableObject):

  • runtime/Options.h:

(JSC):

  • runtime/Structure.h:

(Structure):

  • runtime/StructureInlines.h:

(JSC::Structure::propertyTable):

  • runtime/SymbolTable.h:

(SymbolTable):

  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::~VM):
(JSC::VM::prepareToDiscardCode):
(JSC):
(JSC::VM::discardAllCode):
(JSC::VM::releaseExecutableMemory):

  • runtime/VM.h:

(DFG):
(VM):

Source/WTF:

Reviewed by Geoffrey Garen.

  • wtf/ByteSpinLock.h:

Make it non-copyable. We previously had bugs where we used ByteSpinLock as a locker.
Clearly that's bad.

  • wtf/MetaAllocatorHandle.h:

Make it thread-safe ref-counted, since we may now be passing them between the
concurrent JIT thread and the main thread.

  • wtf/Vector.h:

(WTF::Vector::takeLast):
I've wanted this method for ages, and now I finally added.

12:09 PM Changeset in webkit [150464] by Antti Koivisto
  • 9 edits in trunk/Source/WebCore

Remove ContentDistribution
https://bugs.webkit.org/show_bug.cgi?id=116527

Reviewed by Andreas Kling.

Resolving distribution on traversal is simpler.

  • WebCore.exp.in:
  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::ComposedShadowTreeWalker::traverseNode):
(WebCore::ComposedShadowTreeWalker::traverseDistributedNodes):
(WebCore::ComposedShadowTreeWalker::traverseSiblingOrBackToInsertionPoint):

  • html/HTMLDetailsElement.cpp:
  • html/shadow/ContentDistributor.cpp:

(WebCore::ContentDistributor::distributeSelectionsTo):

  • html/shadow/ContentDistributor.h:
  • html/shadow/HTMLContentElement.idl:


Remove getDistributedNodes().

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::InsertionPoint):
(WebCore::InsertionPoint::attach):
(WebCore::InsertionPoint::detach):
(WebCore):
(WebCore::InsertionPoint::firstDistributed):
(WebCore::InsertionPoint::lastDistributed):
(WebCore::InsertionPoint::nextDistributedTo):
(WebCore::InsertionPoint::previousDistributedTo):

Rename for clarity.

  • html/shadow/InsertionPoint.h:

(WebCore::InsertionPoint::hasDistribution):
(WebCore::InsertionPoint::setHasDistribution):
(WebCore::InsertionPoint::clearDistribution):
(WebCore::InsertionPoint::matchTypeFor):
(InsertionPoint):

12:03 PM Changeset in webkit [150463] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Windows] Workers are crashing tests.
https://bugs.webkit.org/show_bug.cgi?id=116560.

Unreviewed change to TestExpectations while investigating.

  • platform/win/TestExpectations: Disable worker tests under Windows.
12:02 PM Changeset in webkit [150462] by marcelo.lira@openbossa.org
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/contributors.json

Unreviewed. Add myself as committer in contributors.json.

11:59 AM Changeset in webkit [150461] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Fix a python unittest after r149419. We need to support Python 2.6 on Windows.

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

(AbstractCommitLogCommand._recent_commit_messages):

11:49 AM Changeset in webkit [150460] by Martin Robinson
  • 10 edits
    3 adds in trunk

[GTK] [CMake] Add support for building WebKit2
https://bugs.webkit.org/show_bug.cgi?id=116372

Reviewed by Gustavo Noronha Silva.

.:

  • Source/cmake/FindWebP.cmake: Added.
  • Source/cmake/OptionsGTK.cmake: Turn on WebKit2 and the plugin process and also look

for WebP. These missing symbols were hidden up until now. ENABLE_TEXTURE_MAPPER was
also incorrect specified.

Source/WebCore:

  • PlatformGTK.cmake: Add missing source files, include directories, and WebP properties.

Source/WebKit2:

  • CMakeLists.txt: Add common directories to the common include list and remove UIProcess/PageViewportController.cpp

from the source list since it should only be compiled for WebKitEFL. Instead of taking explicit forwarding-header
dependencies accept a list of "tacked-on" dependencies for WebKit2. This allows GTK+ to specify its extra fake
installed header step.

  • PlatformEfl.cmake: Remove common include directories and add UIProcess/PageViewportController.cpp to the source

list. Fix up forwarding header dependencies now.

  • PlatformGTK.cmake: Added.
  • config.h: First check whether this is a CMake build and then fall back to the autotools header.

Tools:

  • CMakeLists.txt: Do not build WebKitTestRunner yet for WebKitGTK+.
  • MiniBrowser/gtk/CMakeLists.txt: Added.
11:41 AM Changeset in webkit [150459] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Windows] Unreviewed test expectation change - skip failing tests.
https://bugs.webkit.org/show_bug.cgi?id=116564

  1. Skip a number of failing tests, and investigate the sources of the

problems. Progress will be tracked on the above bug.

  1. Correct a typo I made in r150382
  2. Remove skip entries from https://webkit.org/b/113908; these were

replaced with new tests added in https://webkit.org/b/113946.

  • platform/win/TestExpectations:
11:21 AM Changeset in webkit [150458] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[CSSRegions] Remove percentages from offsetLeft/offsetTop tests to avoid sub-pixel errors
https://bugs.webkit.org/show_bug.cgi?id=116544

Patch by Radu Stavila <stavila@adobe.com> on 2013-05-21
Reviewed by Andreas Kling.

  • fast/regions/offsetLeft-offsetTop-in-multiple-regions.html:
  • fast/regions/offsetLeft-offsetTop-in-region-absolute-sticky-fixed.html:
11:15 AM Changeset in webkit [150457] by jberlin@webkit.org
  • 3 edits in trunk/Tools

Revert r149635, it was too optimistic.

Rubber-stamped by Andreas Kling.

We are not at the point where we can always use more descriptive macros instead of PLATFORM()

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_invalid_increment):
(process_line):
(CppChecker):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(CppStyleTest.test_plain_integral_bitfields):

11:07 AM WebKitGTK/2.0.x edited by kov@webkit.org
(diff)
11:04 AM Changeset in webkit [150456] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Tools

fourthTier: display-profiler-output should make it even easier to diff the compilation story between two different runs
https://bugs.webkit.org/show_bug.cgi?id=116556

Reviewed by Oliver Hunt.

This adds three new capabilities:

  • 'display' now accepts negative compilation indices, and allows specifying wildcard hashes combined with combination indices. Previously you could say 'display <hash>', 'display <hash>-<index>-<engine>', or 'display *'. The latter would display every compilation. This improves this so that you can say 'display *-<index>-<engine>'. It also makes it so that you can give a negative index, which allows you to say things like 'display blah--1-dfg', which displays just the last DFG compilation. Also you can say 'display *--1-dfg', which displays the last DFG compilation for each code block. I realize that this is kind of ugly, but gosh is it practical.


  • You can now say 'sort hash', which will henceforth sort all of the output by code hash rather than by the time when it was compiled. This means that if you're doing 'dispay *--1-dfg' and then want to diff the results against something else, you can ensure that this doesn't get confused just by changes in compilation order.


  • You can now say 'counts off', which will henceforth disable the display of execution counts from 'bytecode' and 'display'. This is also useful for diffs, since if you're trying to figure out why two compilations are different, they probably have radically different counts. 'counts off' gets this out of the output so that it doesn't confuse your diff.


Note that to use this effectively you should also have a script that scrubs
pointers from text so that the diff doesn't get confused by pointers. I'll
post my elimptr script to the bug. Maybe at some point I'll integrate that
into display-profiler-output.

Put together this is pretty awesome. I was able to do the following:

(echo "counts off" && echo "sort hash" && echo "d *--1-dfg") | Tools/Scripts/display-profiler-output richards-serial.profile | elimptr > richards-serial.asm
(echo "counts off" && echo "sort hash" && echo "d *--1-dfg") | Tools/Scripts/display-profiler-output richards-concurrent.profile | elimptr > richards-concurrent.asm
diff -u richards-serial.asm richards-concurrent.asm

And this immediately told me that the reason why richards is slower in the
concurrent compilation case is just that we end up compiling *tons* more
functions, most of which are trivially inlineable. Basically, concurrent
compilation breaks our previous heuristics for delaying compilation of
inlineables just enough that they never trigger compilation. We should fix
that in a separate bug.

  • Scripts/display-profiler-output:
10:26 AM Changeset in webkit [150455] by jer.noble@apple.com
  • 2 edits in trunk/Tools

Unreviewed; fix lldb synthetic representation of WTF::Vector after r148891.

  • lldb/lldb_webkit.py:

(WTFVectorProvider.num_children):
(WTFVectorProvider.get_child_index):
(WTFVectorProvider.get_child_at_index):
(WTFVectorProvider.update):

10:20 AM Changeset in webkit [150454] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r101810): Media controls status text missing for live-stream videos.
https://bugs.webkit.org/show_bug.cgi?id=116547

Reviewed by Eric Carlson.

Un-reverse the logic in loadedMetadata() so that the status text isn't
hidden (when it should be shown) for live-stream videos.

  • html/shadow/MediaControlsApple.cpp:

(WebCore::MediaControlsApple::loadedMetadata):

10:16 AM Changeset in webkit [150453] by jer.noble@apple.com
  • 8 edits in trunk/Source/WebCore

Implement overlap-avoidance for in-band text track cues.
https://bugs.webkit.org/show_bug.cgi?id=116540

Reviewed by Eric Carlson.

In-band (or Generic) cues need special casing for certain features
present in in-band tracks, like paint-on and roll-up modes. To avoid
the problem of overlap avoidance forcing a caption meant to appear
below a cue to appear above it when a larger font size is selected,
impose an additional sort ordering for "generic cues". Instead of
cues being ordered by the order they appear in the track, "generic
cues" further sorted by their position within the video area, such
that cues at the bottom of the video area appear first, and later
cues are pushed up to avoid them, preserving the desired apparent
ordering.

  • html/HTMLMediaElement.cpp:

(WebCore::compareCueInterval): Added; wrapper around

TextTrackCue::isOrderedBefore.

(WebCore::HTMLMediaElement::updateActiveTextTrackCues):

After creating the list of current cues, sort them.

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::isOrderedBefore): Added; implementation moved

from TextTrackCueList::add().

  • html/track/TextTrackCue.h:
  • html/track/TextTrackCueGeneric.cpp:

(WebCore::TextTrackCueGeneric::isOrderedBefore): Added override;

impose additional oredring on generic cues.

  • html/track/TextTrackCueGeneric.h:
  • html/track/TextTrackCueList.cpp:

(WebCore::TextTrackCueList::add): Moved ordering test into

isOrderedBefore().

  • rendering/RenderTextTrackCue.cpp:

(WebCore::RenderTextTrackCue::repositionGenericCue):

Call repositionCueSnapToLinesNotSet() after positioning the cue.

10:14 AM Changeset in webkit [150452] by jer.noble@apple.com
  • 4 edits
    2 adds in trunk

Implement overlap avoidance for cues with snap-to-lines flag not set
https://bugs.webkit.org/show_bug.cgi?id=84296

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/track/track-cue-overlap-snap-to-lines-not-set.html

Support overlap avoidance for the non-snap-to-lines part of the WebVTT spec.

  • rendering/RenderTextTrackCue.cpp:

(WebCore::RenderTextTrackCue::isOutside): Split implementation into rectIsWithinContainer().
(WebCore::RenderTextTrackCue::rectIsWithinContainer): Ditto.
(WebCore::RenderTextTrackCue::isOverlapping): Split into overlappingObject() and overlappingObjectForRect().
(WebCore::RenderTextTrackCue::overlappingObject): Ditto.
(WebCore::RenderTextTrackCue::overlappingObjectForRect): Ditto.
(WebCore::RenderTextTrackCue::moveIfNecessaryToKeepWithinContainer): Added.
(WebCore::RenderTextTrackCue::findNonOverlappingPosition): When an overlapping object is found, move the

cue to just above or below that object and try again.

(WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet): Move implementation into moveIfNecessaryToKeepWithinContainer().
(WebCore::RenderTextTrackCue::repositionCueSnapToLinesNotSet): Add implementanton based on above.

  • rendering/RenderTextTrackCue.h:

LayoutTests:

  • media/track/track-cue-overlap-snap-to-lines-not-set-expected.txt: Added.
  • media/track/track-cue-overlap-snap-to-lines-not-set.html: Added.
9:57 AM Changeset in webkit [150451] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Build fix.

  • wtf/NeverDestroyed.h:

(NeverDestroyed):

9:56 AM Changeset in webkit [150450] by andersca@apple.com
  • 10 edits
    1 add in trunk/Source/WTF

Add WTF::NeverDestroyed and start using it in WTF
https://bugs.webkit.org/show_bug.cgi?id=116472

Reviewed by Benjamin Poulain.

NeverDestroyed is a class template that can be used for singletons and other objects that we never
want to destroy. It's intended as a replacement for WTF_STATIC_LOCAL with the advantage that it doesn't
fragment the heap.

  • GNUmakefile.list.am:
  • WTF.vcproj/WTF.vcproj:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:

Add NeverDestroyed.h

  • wtf/Compiler.h:

Add a helper macro, WTF_DELETED_FUNCTION.

  • wtf/CryptographicallyRandomNumber.cpp:

Use NeverDestroyed.

  • wtf/NeverDestroyed.h: Added.
  • wtf/Noncopyable.h:

Use WTF_DELETED_FUNCTION.

  • wtf/text/WTFString.cpp:

(WTF::emptyString):
Use

9:44 AM Changeset in webkit [150449] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Added missing assert condition for PositiveOrZero in ARM branch32().
https://bugs.webkit.org/show_bug.cgi?id=116538.

Reviewed by Geoffrey Garen.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::branchAdd32):

9:39 AM Changeset in webkit [150448] by Lucas Forschler
  • 8 edits
    3 copies in tags/Safari-537.43

2013-05-21 Lucas Forschler <Lucas Forschler>

Merge r150441

2013-05-21 Jessie Berlin <jberlin@apple.com>

Expose a way to know when forms are added to a page or when form controls are added to a form
in the injected bundle
https://bugs.webkit.org/show_bug.cgi?id=116334

Reviewed by Alexey Proskuryakov.

Source/WebKit2:

Add shouldNotifyOnFormChanges and didAssociateFormControls to the WKBundlePageFormClient.

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add the new callbacks as part of version 2 of the WKBundlePageFormClient.
  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp: (WebKit::InjectedBundlePageFormClient::didAssociateFormControls): Pass the message along to the client if the client has a handler. (WebKit::InjectedBundlePageFormClient::shouldNotifyOnFormChanges): Ditto.
  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::didAssociateFormControls): Tell the injected bundle form client for the page. (WebKit::WebChromeClient::shouldNotifyOnFormChanges): Ditto.
  • WebProcess/WebCoreSupport/WebChromeClient.h:

Tools:

Add tests for the new callbacks.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add DidAssociateFormControls/_Bundle.cpp and associate-form-controls.html
  • TestWebKitAPI/Tests/WebKit2/DidAssociateFormControls.cpp: Added. (TestWebKitAPI::nullJavaScriptCallback): A "null" callback to handle the fact that WKPageRunJavaScriptInMainFrame cannot handle null being passed in for the callback. (TestWebKitAPI::didReceiveMessageFromInjectedBundle): After receiving the message that didAssociateFormControls callback was invoked from adding the form in the onload handler, tell the page to add a password field to the form, which should also invoke didAssociateFormControls callback. (TestWebKitAPI::setInjectedBundleClient): Register to receive messages. (TestWebKitAPI::TEST): Load associate-form-controls.html and wait until the didAssociateFormControls callback has been invoked for both adding the form and for adding a password field to the form.
  • TestWebKitAPI/Tests/WebKit2/DidAssociateFormControls_Bundle.cpp: Added. (TestWebKitAPI::shouldNotifyOnFormChanges): Return true so the didAssociateFormControls callback is invoked. (TestWebKitAPI::didAssociateFormControls): Tell the UI process. (TestWebKitAPI::DidAssociateFormControlsTest::DidAssociateFormControlsTest): (TestWebKitAPI::DidAssociateFormControlsTest::didCreatePage): Register for the shouldNotifyOnFormChanges and didAssociateFormControls callbacks.
  • TestWebKitAPI/Tests/WebKit2/associate-form-controls.html: Added. Add a form in response to the onload event. Add a button that will add the password field for manual testing.
9:21 AM Changeset in webkit [150447] by Lucas Forschler
  • 4 edits in tags/Safari-537.43/Source

Versioning.

9:09 AM Changeset in webkit [150446] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Remove GraphicsLayerClient::contentsVisible()
https://bugs.webkit.org/show_bug.cgi?id=116523

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-21
Reviewed by Darin Adler.

This is dead code from the BlackBerry port.

  • platform/graphics/GraphicsLayerClient.h:
  • rendering/RenderLayerBacking.cpp:
9:05 AM Changeset in webkit [150445] by zandobersek@gmail.com
  • 4 edits in trunk

[GTK] Compile everything in C++11 mode
https://bugs.webkit.org/show_bug.cgi?id=116452

Reviewed by Anders Carlsson.

.:

  • Source/autotools/SetupCompilerFlags.m4: Use the C++11 standard by default when compiling C++ source code.

Perform some minor cleanup around the comments and the order of specifying additional CXXFLAGS entries.

Source/WebKit2:

  • GNUmakefile.am: Remove the -std=c++11 flags from the various CPPFLAGS lists, the mode is now specified

by default for all the C++ source code in SetupCompilerFlags.m4.

9:03 AM Changeset in webkit [150444] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

PLATFORM(*) macros used in Source/WebCore/loader/archive/ArchiveFactory.cpp
https://bugs.webkit.org/show_bug.cgi?id=116453

Reviewed by Alexey Proskuryakov.

  • loader/archive/ArchiveFactory.cpp: Remove a redundant PLATFORM(QT) macro when checking whether

to include the LegacyWebArchive.h header that's specific to the WebArchive support. The Qt port
does not enable the WebArchive feature at all (which is enabled only on AppleMac, AppleWin and iOS
platforms) so there's no reason to additionally condition the header include with building on
non-Qt platforms.

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

Add BlackBerry definition of NativeImagePtr
https://bugs.webkit.org/show_bug.cgi?id=116526

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-21
Reviewed by Darin Adler.

  • platform/graphics/NativeImagePtr.h:

(Graphics):
(WebCore):

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

[BlackBerry] FontCache::getFontDataForCharacters() returns nullptr
https://bugs.webkit.org/show_bug.cgi?id=116529

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-21
Reviewed by Andreas Kling.

This cannot be converted to a PassRefPtr and breaks the build.

  • platform/graphics/blackberry/FontCacheBlackBerry.cpp:

(WebCore::FontCache::getFontDataForCharacters):

8:12 AM WebKitGTK/2.0.x edited by kov@webkit.org
(diff)
6:44 AM Changeset in webkit [150441] by jberlin@webkit.org
  • 8 edits
    3 adds in trunk

Expose a way to know when forms are added to a page or when form controls are added to a form
in the injected bundle
https://bugs.webkit.org/show_bug.cgi?id=116334

Reviewed by Alexey Proskuryakov.

Source/WebKit2:

Add shouldNotifyOnFormChanges and didAssociateFormControls to the WKBundlePageFormClient.

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

Add the new callbacks as part of version 2 of the WKBundlePageFormClient.

  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:

(WebKit::InjectedBundlePageFormClient::didAssociateFormControls):
Pass the message along to the client if the client has a handler.
(WebKit::InjectedBundlePageFormClient::shouldNotifyOnFormChanges):
Ditto.

  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::didAssociateFormControls):
Tell the injected bundle form client for the page.
(WebKit::WebChromeClient::shouldNotifyOnFormChanges):
Ditto.

  • WebProcess/WebCoreSupport/WebChromeClient.h:

Tools:

Add tests for the new callbacks.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:

Add DidAssociateFormControls/_Bundle.cpp and associate-form-controls.html

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

(TestWebKitAPI::nullJavaScriptCallback):
A "null" callback to handle the fact that WKPageRunJavaScriptInMainFrame cannot handle null
being passed in for the callback.
(TestWebKitAPI::didReceiveMessageFromInjectedBundle):
After receiving the message that didAssociateFormControls callback was invoked from adding
the form in the onload handler, tell the page to add a password field to the form, which
should also invoke didAssociateFormControls callback.
(TestWebKitAPI::setInjectedBundleClient):
Register to receive messages.
(TestWebKitAPI::TEST):
Load associate-form-controls.html and wait until the didAssociateFormControls callback has
been invoked for both adding the form and for adding a password field to the form.

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

(TestWebKitAPI::shouldNotifyOnFormChanges):
Return true so the didAssociateFormControls callback is invoked.
(TestWebKitAPI::didAssociateFormControls):
Tell the UI process.
(TestWebKitAPI::DidAssociateFormControlsTest::DidAssociateFormControlsTest):
(TestWebKitAPI::DidAssociateFormControlsTest::didCreatePage):
Register for the shouldNotifyOnFormChanges and didAssociateFormControls callbacks.

  • TestWebKitAPI/Tests/WebKit2/associate-form-controls.html: Added.

Add a form in response to the onload event. Add a button that will add the password field
for manual testing.

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

[GTK] Always use EGL to create the GL context when running on Wayland
https://bugs.webkit.org/show_bug.cgi?id=115721

Patch by Iago Toral Quiroga <itoral@igalia.com> on 2013-05-21
Reviewed by Martin Robinson.

  • platform/graphics/cairo/GLContext.cpp:

(WebCore::GLContext::createContextForWindow):
(WebCore::GLContext::createOffscreenContext): Always use EGL to create the GL context
instead of GLX when running on Wayland and make createOffScreenContext reuse the code
in createContextWindow.

6:16 AM Changeset in webkit [150439] by commit-queue@webkit.org
  • 4 edits in trunk

[GTK][WK2] accessibility/label-for-control-hittest.html is failing
https://bugs.webkit.org/show_bug.cgi?id=106341

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-05-21
Reviewed by Martin Robinson.

Tools:

Adds support for retrieving accessibility element at exact point.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::elementAtPoint):

LayoutTests:

Fixing failing test. The reason of failure is missing
possibility of getting accessibility object at exact position.

  • platform/gtk-wk2/TestExpectations:
6:14 AM Changeset in webkit [150438] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] accessibility/accessibility-node-reparent.html is failing
https://bugs.webkit.org/show_bug.cgi?id=112026

Unreviewed EFL gardening.

accessibility/accessibility-node-reparent.html passes after r150431.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-05-21

  • platform/efl-wk2/TestExpectations:
5:50 AM Changeset in webkit [150437] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Add FloatRect::normalized() for BlackBerry
https://bugs.webkit.org/show_bug.cgi?id=116531

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-21
Reviewed by Carlos Garcia Campos.

This was added to FloatRectBlackBerry.cpp in r111072 when the
graphics platform code was upstreamed, but this change was
missing.

  • platform/graphics/FloatRect.h:

(FloatRect):

5:21 AM Changeset in webkit [150436] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] accessibility/accessibility-node-memory-management.html is failing
https://bugs.webkit.org/show_bug.cgi?id=112025

Unreviewed EFL gardening

accessibility/accessibility-node-memory-management.html passes after r150431.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-05-21

  • platform/efl-wk2/TestExpectations:
4:35 AM Changeset in webkit [150435] by kbalazs@webkit.org
  • 3 edits in trunk/Source/WebCore

[GStreamer] cleanup duration query
https://bugs.webkit.org/show_bug.cgi?id=116228

Reviewed by Philippe Normand.

Covered by existing tests.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::duration):
We can also cache the duration here if the query succeeds.
(MediaPlayerPrivateGStreamer::updateStates):
Don't query when we are in GST_STATE_READY state because it never succeeds.
Do it instead when we reached a stable state.
(MediaPlayerPrivateGStreamer::cacheDuration): Return early if it is already
cached. Recaching is not necessary and now we call it a lot of times.
Only look into the state if the query failed.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

(MediaPlayerPrivateGStreamer): Made m_mediaDuration mutable to be
able to cache it in duration(). Internal cached values is one of
the sensible uses of mutable.

3:55 AM Changeset in webkit [150434] by commit-queue@webkit.org
  • 19 edits
    2 adds in trunk

[BlackBerry] Make PagePopup implementation independent from WebCore
https://bugs.webkit.org/show_bug.cgi?id=116448

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-05-21
Reviewed by Anders Carlsson.

.:

  • Source/cmake/OptionsBlackBerry.cmake: Do not enable PAGE_POPUP

feature.

Source/WebKit:

  • PlatformBlackBerry.cmake: Add

blackberry/WebCoreSupport/PagePopupBlackBerryClient.cpp to
compilation.

Source/WebKit/blackberry:

Add our own implementation of PagePopupClient and make all the
pickers inherit from it. Unused methods have been removed and
common implementation have been moved from the pickers to the
parent class.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::~WebPagePrivate): Destroy the
popup if there's one active.
(BlackBerry::WebKit::WebPagePrivate::setVisible): Call
closePagePopup() directly.
(BlackBerry::WebKit::WebPagePrivate::openPagePopup): Create a new
PagePopupBlackBerry for the given client.
(BlackBerry::WebKit::WebPagePrivate::closePagePopup): Close the
active popup if there's one.
(BlackBerry::WebKit::WebPagePrivate::hasOpenedPopup): Return
whether there's an active popup.

  • Api/WebPage.h:
  • Api/WebPage_p.h:
  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::chromeDestroyed): Remove
closePagePopup() call since this is now handled by
WebPagePrivate.
(WebCore::ChromeClientBlackBerry::hasOpenedPopup): Call
WebPagePrivate::hasOpenedPopup().

  • WebCoreSupport/ChromeClientBlackBerry.h:

(ChromeClientBlackBerry):

  • WebCoreSupport/ColorPickerClient.cpp:

(BlackBerry::WebKit::ColorPickerClient::ColorPickerClient):
(BlackBerry::WebKit::ColorPickerClient::didClosePopup):

  • WebCoreSupport/ColorPickerClient.h:

(ColorPickerClient):

  • WebCoreSupport/DatePickerClient.cpp:

(BlackBerry::WebKit::DatePickerClient::DatePickerClient):
(BlackBerry::WebKit::DatePickerClient::didClosePopup):

  • WebCoreSupport/DatePickerClient.h:

(DatePickerClient):

  • WebCoreSupport/PagePopupBlackBerry.cpp:

(BlackBerry::WebKit::PagePopupBlackBerry::PagePopupBlackBerry):
(BlackBerry::WebKit::PagePopupBlackBerry::closePopup):

  • WebCoreSupport/PagePopupBlackBerry.h:

(PagePopupBlackBerry):
(BlackBerry::WebKit::PagePopupBlackBerry::SharedClientPointer::SharedClientPointer):
(BlackBerry::WebKit::PagePopupBlackBerry::SharedClientPointer::get):
(SharedClientPointer):

  • WebCoreSupport/PagePopupBlackBerryClient.cpp: Added.

(BlackBerry::WebKit::PagePopupBlackBerryClient::PagePopupBlackBerryClient):
(BlackBerry::WebKit::PagePopupBlackBerryClient::closePopup):
(BlackBerry::WebKit::PagePopupBlackBerryClient::didClosePopup):
(BlackBerry::WebKit::PagePopupBlackBerryClient::contentSize):
(BlackBerry::WebKit::PagePopupBlackBerryClient::writeDocument):

  • WebCoreSupport/PagePopupBlackBerryClient.h: Added.

(PagePopupBlackBerryClient):
(BlackBerry::WebKit::PagePopupBlackBerryClient::~PagePopupBlackBerryClient):

  • WebCoreSupport/SelectPopupClient.cpp:

(BlackBerry::WebKit::SelectPopupClient::SelectPopupClient):
(BlackBerry::WebKit::SelectPopupClient::didClosePopup):

  • WebCoreSupport/SelectPopupClient.h:

(SelectPopupClient):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::openDatePopup): Do not call
closePagePopup() since this is already done by openPagePopup() and
use openPagePopup() from WebPagePrivate directly.
(BlackBerry::WebKit::InputHandler::openColorPopup): Ditto.
(BlackBerry::WebKit::InputHandler::openSelectPopup): Ditto.

2:31 AM Changeset in webkit [150433] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

Build fix for !USE(ACCELERATED_COMPOSITING) after r150307.

  • rendering/RenderLayerCompositor.h: Added missing #if USE(ACCELERATED_COMPOSITING).
2:04 AM Changeset in webkit [150432] by michael.bruning@digia.com
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Fix Mountain Lion builds after r150277.
https://bugs.webkit.org/show_bug.cgi?id=116467

Reviewed by Jocelyn Turcotte.

  • Shared/API/c/WKBase.h:
1:43 AM Changeset in webkit [150431] by commit-queue@webkit.org
  • 5 edits in trunk/Tools

[ATK] [WebKit2] AccessibilityUIElement often leaks its AtkObject
https://bugs.webkit.org/show_bug.cgi?id=112913

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-05-21
Reviewed by Martin Robinson.

AccessibilityUIElement is often created by passing new reference to AtkObject (transfer full).
AccessibilityUIElement::~AccessibilityUIElement does not decrement the reference of the element,
so the leak appears.

  • WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:

(WTR):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:

(WTR::AccessibilityController::rootElement):
(WTR):
(WTR::AccessibilityController::focusedElement):

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::checkElementState):
(WTR::indexRangeInTable):
(WTR::alterCurrentValue):
(WTR::AccessibilityUIElement::getChildren):
(WTR::AccessibilityUIElement::getChildrenWithRange):
(WTR::AccessibilityUIElement::childrenCount):
(WTR::AccessibilityUIElement::indexOfChild):
(WTR::AccessibilityUIElement::titleUIElement):
(WTR::AccessibilityUIElement::parentElement):
(WTR::AccessibilityUIElement::allAttributes):
(WTR::AccessibilityUIElement::role):
(WTR::AccessibilityUIElement::title):
(WTR::AccessibilityUIElement::description):
(WTR::AccessibilityUIElement::orientation):
(WTR::AccessibilityUIElement::stringValue):
(WTR::AccessibilityUIElement::language):
(WTR::AccessibilityUIElement::x):
(WTR::AccessibilityUIElement::y):
(WTR::AccessibilityUIElement::width):
(WTR::AccessibilityUIElement::height):
(WTR::AccessibilityUIElement::intValue):
(WTR::AccessibilityUIElement::minValue):
(WTR::AccessibilityUIElement::maxValue):
(WTR::AccessibilityUIElement::isEnabled):
(WTR::AccessibilityUIElement::isFocused):
(WTR::AccessibilityUIElement::isSelected):
(WTR::AccessibilityUIElement::isExpanded):
(WTR::AccessibilityUIElement::isChecked):
(WTR::AccessibilityUIElement::rowCount):
(WTR::AccessibilityUIElement::columnCount):
(WTR::AccessibilityUIElement::rowIndexRange):
(WTR::AccessibilityUIElement::columnIndexRange):
(WTR::AccessibilityUIElement::cellForColumnAndRow):
(WTR::AccessibilityUIElement::increment):
(WTR::AccessibilityUIElement::decrement):
(WTR::AccessibilityUIElement::press):
(WTR::AccessibilityUIElement::documentEncoding):
(WTR::AccessibilityUIElement::documentURI):
(WTR::AccessibilityUIElement::isFocusable):
(WTR::AccessibilityUIElement::isSelectable):
(WTR::AccessibilityUIElement::isMultiSelectable):
(WTR::AccessibilityUIElement::isVisible):

1:40 AM Changeset in webkit [150430] by Antti Koivisto
  • 5 edits in trunk/Source/WebCore

Simplify Shadow DOM distribution code
https://bugs.webkit.org/show_bug.cgi?id=116454

Reviewed by Andreas Kling.

Remove code supporting nested insertion points and distributing to multiple insertion points.

  • html/HTMLDetailsElement.cpp:

(DetailsContentElement):

Make distribution to <details> and <summary> mutually exclusive.

  • html/shadow/ContentDistributor.cpp:

(WebCore):
(WebCore::ContentDistributor::distribute):
(WebCore::ContentDistributor::invalidate):
(WebCore::ContentDistributor::distributeSelectionsTo):

  • html/shadow/ContentDistributor.h:
  • html/shadow/InsertionPoint.cpp:

(WebCore::resolveReprojection):

1:07 AM Changeset in webkit [150429] by Lucas Forschler
  • 1 copy in tags/Safari-537.43

New Tag.

1:06 AM Changeset in webkit [150428] by Lucas Forschler
  • 1 delete in tags/Safari-537.43
1:02 AM Changeset in webkit [150427] by mihnea@adobe.com
  • 2 edits in trunk/Source/WebCore

[CSSRegions] Constrain auto-height region computation in a different way
https://bugs.webkit.org/show_bug.cgi?id=116310

Reviewed by Alexandru Chiculita.

After https://bugs.webkit.org/show_bug.cgi?id=74132, the region is a render block. We can use RenderBox::constrainContentBoxLogicalHeightByMinMax
instead of RenderBox::computeReplacedLogicalHeightRespectingMinMaxHeight to better reflect the fact that the region is not a replaced element.
Covered by existing regions tests, since when replaced-based the region had an intrinsic height of 0 and now, block-based, it does not have any children.

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::addForcedRegionBreak):

12:48 AM Changeset in webkit [150426] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

[Mac] svg/batik/paints/patternRegions-positioned-objects.svg is flaky
https://bugs.webkit.org/show_bug.cgi?id=116519

Add a flaky test expectation.

  • platform/mac/TestExpectations:
12:39 AM Changeset in webkit [150425] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r150393): editing/inserting/typing-at-end-of-line.html fails
https://bugs.webkit.org/show_bug.cgi?id=116516

Reviewed by Antti Koivisto.

The bug was caused by DRT not resetting various auto correction states.
Do that in Internals::resetToConsistentState.

  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState):

12:00 AM Changeset in webkit [150424] by Lucas Forschler
  • 8 edits
    3 deletes in trunk

Source/WebKit2: Rollout r150398.

Tools: Rollout 150398.

Note: See TracTimeline for information about the timeline view.