Timeline



Feb 5, 2014:

11:59 PM Changeset in webkit [163521] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix after r163480.

  • GNUmakefile.list.am: Removing the WebUIClient build targets.
11:58 PM Changeset in webkit [163520] by abucur@adobe.com
  • 2 edits in trunk/Tools

Adding myself as a reviewer.

Unreviewed.

11:49 PM Changeset in webkit [163519] by zandobersek@gmail.com
  • 7 edits in trunk

Remove the WTF_COMPILER_SUPPORTS_CXX_GENERALIZED_INITIALIZERS macro
https://bugs.webkit.org/show_bug.cgi?id=128267

Reviewed by Andreas Kling.

Source/WTF:

Remove the WTF_COMPILER_SUPPORTS_CXX_GENERALIZED_INITIALIZERS macro that was manually defined for compilers
that support the C++11 initializer lists. The feature is well supported in Clang, MSVC and also GCC. It
was actually already used unguarded in HashSet.

  • wtf/Compiler.h:
  • wtf/HashMap.h:

(WTF::HashMap::HashMap):

  • wtf/Vector.h:

(WTF::Vector::Vector):

Tools:

Remove the COMPILER_SUPPORTS(CXX_GENERALIZED_INITIALIZERS) as the underlying macro is also
being removed since the feature is supported by all the compilers the project approves.

  • TestWebKitAPI/Tests/WTF/HashMap.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WTF/Vector.cpp:

(TestWebKitAPI::TEST):

11:24 PM Changeset in webkit [163518] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Tools

[EFL][WK2] Remove legacy behavior mode in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=128298

Reviewed by Gyuyoung Kim.

MiniBrowser is crashing when the legacy mode is set in creating webview.
As EFL application cannot use this API for creating webview after r146265,
it would be better to remove this invalid option.

  • MiniBrowser/efl/main.c:

(window_create): Do not create webview with WKViewCreate API.
(elm_main): Remove 'legacy' option.

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

Make FTL OSR entry something we only try after we've already compiled the function with the FTL and it still got stuck in a loop after that without ever returning like a sensible function oughta have
https://bugs.webkit.org/show_bug.cgi?id=128234

Reviewed by Geoffrey Garen.

Use DFG::JITCode::osrEntryRetry as a counter to decide when to invoke OSR entry. That
comes into play only after we've done a replacement compile.

This appears to still give us a speed-up on the kinds of things that OSR entry is good
for, while also eliminating pointless OSR entry compilations on other things.

  • dfg/DFGJITCode.cpp:

(JSC::DFG::JITCode::JITCode):

  • dfg/DFGJITCode.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGToFTLForOSREntryDeferredCompilationCallback.cpp:

(JSC::DFG::ToFTLForOSREntryDeferredCompilationCallback::compilationDidComplete):

  • runtime/Options.h:
10:55 PM Changeset in webkit [163516] by Simon Fraser
  • 19 edits in trunk/Source

Transfer the non-fast-scrollable region to the UI process for iOS
https://bugs.webkit.org/show_bug.cgi?id=128293

Reviewed by Benjamin Poulain.

Source/WebCore:

Two main changes to support sending the non-fast scrollable region
to the UI process for iOS:

  1. Add ScrollingCoordinator::frameViewNonFastScrollableRegionChanged(),

which is called when we've updated the touch event region (this can happen
independenly of layout). When called we just scheduled a scrolling tree
commit with the new region.

  1. Avoid thinking that we have a new root node with every remote scrolling

transaction. This was a side-effect of reconstructing the scrolling state
tree in the UI process, and caused us to try to grab a nonFastScrollableRegion
from a node which never had one set.

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

(WebCore::AsyncScrollingCoordinator::frameViewNonFastScrollableRegionChanged):

  • page/scrolling/AsyncScrollingCoordinator.h:
  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::computeNonFastScrollableRegion):

  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollingCoordinator::frameViewNonFastScrollableRegionChanged):

  • page/scrolling/ScrollingStateTree.h:

(WebCore::ScrollingStateTree::setHasNewRootStateNode):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::isPointInNonFastScrollableRegion):

  • page/scrolling/ScrollingTree.h:

Source/WebKit2:

Two main changes to support sending the non-fast scrollable region
to the UI process for iOS:

  1. Add ScrollingCoordinator::frameViewNonFastScrollableRegionChanged(),

which is called when we've updated the touch event region (this can happen
independenly of layout). When called we just scheduled a scrolling tree
commit with the new region.

  1. Avoid thinking that we have a new root node with every remote scrolling

transaction. This was a side-effect of reconstructing the scrolling state
tree in the UI process, and caused us to try to grab a nonFastScrollableRegion
from a node which never had one set.

Now that we have the non-fast scrollable region in the UI process, we can
use it to avoid sending sync messages to the web process.

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(ArgumentCoder<ScrollingStateScrollingNode>::encode): Encode hasNewRootNode.
(ArgumentCoder<ScrollingStateScrollingNode>::decode): Decode hasNewRootNode and set it on
the state tree.
(WebKit::RemoteScrollingCoordinatorTransaction::encode): Encode the nonFastScrollableRegion
now that we can encode Regions.
(WebKit::RemoteScrollingCoordinatorTransaction::decode): Decode the nonFastScrollableRegion
now that we can decode Regions.

  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:

(WebKit::RemoteScrollingCoordinatorProxy::isPointInNonFastScrollableRegion):

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

(WebKit::WebPageProxy::handleTouchEvent): If we're not in the non-fast scrollable region,
don't both sending touch events to the web process.

10:45 PM Changeset in webkit [163515] by benjamin@webkit.org
  • 27 edits
    2 adds in trunk/Source

[iOS] Synchronize the WKContentView and UIScrollView updates with the tiles being commited
https://bugs.webkit.org/show_bug.cgi?id=127886

Reviewed by Simon Fraser.

Source/WebCore:

The updates of the views on the UIProcess side was completely disconnected
from the tiles updates from the DrawingArea. There is a non-negligible time
between the size/scale update and the new tiles coming, which causes
visual glitches.

There are three main cases where the tiles and content would be out of sync
with the UIViews:
-When loading a new page with different content width of a different viewport.
-When a page changes its viewport.
-When the viewport-constrainted viewport size changes.

To fix the issue, WKView is modified to maintain the old state of WKContentView
and UIScrollView until the new tiles are available.

Geometry/scale update are split in two phases:
1) A source (the page or the user) changes parameters of the geometry. The WebProcess updates

its layout accordingly.
At this point, the UIViews are unchanged and are left with the old parameters.

2) Eventually, new tiles come and commitLayerTree() is called on the drawing area proxy.

At that point, WKContentView and its UIScrollView are updated to match the committed
size and scale for the page.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • page/ViewportConfiguration.cpp: Added.

(WebCore::constraintsAreAllRelative):
(WebCore::ViewportConfiguration::ViewportConfiguration):
(WebCore::ViewportConfiguration::setDefaultConfiguration):
(WebCore::ViewportConfiguration::setContentsSize):
(WebCore::ViewportConfiguration::setMinimumLayoutSize):
(WebCore::ViewportConfiguration::setViewportArguments):
(WebCore::ViewportConfiguration::layoutSize):
(WebCore::ViewportConfiguration::initialScale):
(WebCore::ViewportConfiguration::minimumScale):
(WebCore::ViewportConfiguration::maximumScale):
(WebCore::ViewportConfiguration::allowsUserScaling):
(WebCore::viewportArgumentValueIsValid):
(WebCore::applyViewportArgument):
(WebCore::ViewportConfiguration::updateConfiguration):
(WebCore::ViewportConfiguration::layoutWidth):
(WebCore::ViewportConfiguration::layoutHeight):

  • page/ViewportConfiguration.h: Added.

(WebCore::ViewportConfigurationConfiguration::ViewportConfigurationConfiguration):
(WebCore::ViewportConfiguration::defaultConfiguration):
(WebCore::ViewportConfiguration::contentsSize):
(WebCore::ViewportConfiguration::minimumLayoutSize):
(WebCore::ViewportConfiguration::viewportArguments):

Source/WebKit2:

  • Shared/mac/RemoteLayerTreeTransaction.h:

(WebKit::RemoteLayerTreeTransaction::mainFrameContentsSize):
(WebKit::RemoteLayerTreeTransaction::setMainFrameContentsSize):
(WebKit::RemoteLayerTreeTransaction::pageScaleFactor):
(WebKit::RemoteLayerTreeTransaction::setPageScaleFactor):
(WebKit::RemoteLayerTreeTransaction::minimumScaleFactor):
(WebKit::RemoteLayerTreeTransaction::setMinimumScaleFactor):
(WebKit::RemoteLayerTreeTransaction::maximumScaleFactor):
(WebKit::RemoteLayerTreeTransaction::setMaximumScaleFactor):
(WebKit::RemoteLayerTreeTransaction::allowsUserScaling):
(WebKit::RemoteLayerTreeTransaction::setAllowsUserScaling):

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):

  • UIProcess/API/ios/PageClientImplIOS.h:
  • UIProcess/API/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::didCommitLayerTree):

  • UIProcess/API/ios/WKContentView.h:
  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView setMinimumLayoutSize:]):
(-[WKContentView willStartUserTriggeredZoom]):
(-[WKContentView _didCommitLayerTree:WebKit::]):

  • UIProcess/API/ios/WKContentViewInternal.h:
  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView contentViewDidCommitLoadForMainFrame:]):
(-[WKView contentView:didCommitLayerTree:WebKit::]):
(-[WKView scrollViewWillBeginZooming:withView:]):
(-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
(-[WKView _frameOrBoundsChanged]):
(-[WKView minimumLayoutSizeOverride]):
(-[WKView setMinimumLayoutSizeOverride:]):

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::setVirtualViewportMinimumLayoutSize):
(WebKit::WebPageProxy::didCommitLayerTree):
(WebKit::WebPageProxy::willStartUserTriggeredZooming):

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::contentsSizeChanged):
(WebKit::WebChromeClient::dispatchViewportPropertiesDidChange):

  • WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:

(WebKit::WebChromeClient::didReceiveMobileDocType):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::mainFrameDidLayout):
(WebKit::WebPage::didCommitLoad):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::viewportPropertiesDidChange):
(WebKit::WebPage::minimumPageScaleFactor):
(WebKit::WebPage::maximumPageScaleFactor):
(WebKit::WebPage::allowsUserScaling):
(WebKit::WebPage::setVirtualViewportMinimumLayoutSize):
(WebKit::WebPage::virtualViewportChanged):
(WebKit::WebPage::willStartUserTriggeredZooming):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):

10:19 PM Changeset in webkit [163514] by benjamin@webkit.org
  • 3 edits
    1 add in trunk/Source/WebKit2

[WK2] Add the minimumLayoutSizeOverride SPI to WKWebView
https://bugs.webkit.org/show_bug.cgi?id=128295

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-05
Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView minimumLayoutSizeOverride]):
(-[WKWebView setMinimumLayoutSizeOverride:]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h: Added.
  • WebKit2.xcodeproj/project.pbxproj:
9:26 PM Changeset in webkit [163513] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Don't speculate on ToThis if we already know that arg0 has a questionable record with structure checks
https://bugs.webkit.org/show_bug.cgi?id=128229

Reviewed by Geoffrey Garen.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

9:14 PM Changeset in webkit [163512] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

SelectorCodeGenerator::generateElementHasTagName should match the local name before the namespace
https://bugs.webkit.org/show_bug.cgi?id=128167

Reviewed by Sam Weinig.

The local name is a stricter filter than the namespace, it should always run first.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasTagName):

9:11 PM Changeset in webkit [163511] by benjamin@webkit.org
  • 1 edit in trunk/Source/WebCore/ChangeLog

Add HTMLNames::classAttr as a regular name in SVGElement::isAnimatableAttribute
https://bugs.webkit.org/show_bug.cgi?id=128166

Reviewed by Sam Weinig.

For historical reasons, classAttr was treated separately. There is no reasons for that anymore.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::isAnimatableAttribute):

9:10 PM Changeset in webkit [163510] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Add HTMLNames::classAttr has a regular name in SVGElement::isAnimatableAttribute
https://bugs.webkit.org/show_bug.cgi?id=128166

Reviewed by Sam Weinig.

For historical reasons, classAttr was treated separately. There is no reasons for that anymore.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::isAnimatableAttribute):

8:31 PM Changeset in webkit [163509] by Simon Fraser
  • 7 edits in trunk/Source

Support encoding and decoding of Regions
https://bugs.webkit.org/show_bug.cgi?id=128284

Source/WebCore:

Reviewed by Anders Carlsson.

Region changes to make it encodable:

Make Region::Span public and give it a default constructor.
Allow getting and setting of Shape internals, and a way to update
the Region bounds after changing the shape. Also add a way to test
for valid spans and segments.

  • platform/graphics/Region.cpp:

(WebCore::Region::Shape::isValid):
(WebCore::Region::updateBoundsFromShape):

  • platform/graphics/Region.h:

(WebCore::Region::isValid):
(WebCore::Region::Span::Span):
(WebCore::Region::shapeSegments):
(WebCore::Region::shapeSpans):
(WebCore::Region::setShapeSegments):
(WebCore::Region::setShapeSpans):
(WebCore::Region::Shape::segments):
(WebCore::Region::Shape::spans):
(WebCore::Region::Shape::setSegments):
(WebCore::Region::Shape::setSpans):

Source/WebKit2:

Reviewed by Anders Carlsson.

Support encoding and decoding of Region, and its internal
struct Region::Span.

ArgumentCoders had to be taught about how to encode
Vectors with inline capacity.

  • Platform/IPC/ArgumentCoders.h:
  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<Region::Span>::encode):
(IPC::ArgumentCoder<Region::Span>::decode):
(IPC::ArgumentCoder<Region>::encode):
(IPC::ArgumentCoder<Region>::decode):

  • Shared/WebCoreArgumentCoders.h:
8:10 PM Changeset in webkit [163508] by akling@apple.com
  • 33 edits in trunk/Source/WebCore

Rebaseline the bindings tests after Oliver's hackery.

  • bindings/scripts/test/JS/:
7:38 PM Changeset in webkit [163507] by mhahnenberg@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Handling of opaque roots is wrong in EdenCollections
https://bugs.webkit.org/show_bug.cgi?id=128210

Reviewed by Oliver Hunt.

The set of opaque roots is always cleared during each collection. We should instead persist
the set of opaque roots across EdenCollections and only clear it at the beginning of FullCollections.

Also added a couple of custom objects to the jsc shell that allow us to test this.

  • heap/GCThreadSharedData.cpp:

(JSC::GCThreadSharedData::reset):
(JSC::GCThreadSharedData::didStartMarking):

  • heap/Heap.cpp:

(JSC::Heap::markRoots):

  • heap/Heap.h:

(JSC::Heap::setShouldDoFullCollection):

  • heap/SlotVisitor.cpp:

(JSC::SlotVisitor::didStartMarking):
(JSC::SlotVisitor::reset):

  • heap/SlotVisitor.h:
  • jsc.cpp:

(WTF::Element::Element):
(WTF::Element::root):
(WTF::Element::setRoot):
(WTF::Element::create):
(WTF::Element::createStructure):
(WTF::ElementHandleOwner::isReachableFromOpaqueRoots):
(WTF::Root::Root):
(WTF::Root::element):
(WTF::Root::setElement):
(WTF::Root::create):
(WTF::Root::createStructure):
(WTF::Root::visitChildren):
(WTF::Element::handleOwner):
(WTF::Element::finishCreation):
(GlobalObject::finishCreation):
(functionCreateRoot):
(functionCreateElement):
(functionGetElement):
(functionSetElementRoot):
(functionGCAndSweep):
(functionFullGC):
(functionEdenGC):

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

Add -[WKNavigationAction request]
https://bugs.webkit.org/show_bug.cgi?id=128288

Reviewed by Andreas Kling.

  • UIProcess/API/Cocoa/WKNavigationAction.h:
  • UIProcess/API/Cocoa/WKNavigationAction.mm:

(-[WKNavigationAction request]):
(-[WKNavigationAction setRequest:]):

  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):

6:30 PM Changeset in webkit [163505] by ryuan.choi@samsung.com
  • 8 edits
    2 adds in trunk/Source/WebCore

[EFL][GTK] Share plugin's implementation between EFL and Gtk ports.
https://bugs.webkit.org/show_bug.cgi?id=70592

Reviewed by Gyuyoung Kim.

Merge common logics of PluginViewGtk.cpp and PluginViewEfl.cpp to PluginViewX11.cpp.
So, this patch improves the windowless plugin support for the EFL port.

  • GNUmakefile.am: Add include path for gtk2xtbin.h header file.
  • GNUmakefile.list.am: Added PluginViewX11.cpp into source lists.
  • PlatformEfl.cmake: Ditto.
  • PlatformGTK.cmake: Ditto.
  • plugins/PluginView.h: Added getRootWindow and getPluginDisply which implement platform specific code.
  • plugins/efl/PluginViewEfl.cpp:

(WebCore::PluginView::getRootWindow):
(WebCore::PluginView::platformGetValueStatic): Turn on NPNVSupportsWindowless support.
(WebCore::PluginView::getPluginDisplay):
(WebCore::PluginView::platformStart):

  • plugins/gtk/PluginViewGtk.cpp:

(WebCore::PluginView::getRootWindow):
(WebCore::setXButtonEventSpecificFields):
(WebCore::setXMotionEventSpecificFields):
(WebCore::setXCrossingEventSpecificFields):
(WebCore::PluginView::getPluginDisplay):
(WebCore::PluginView::platformStart):

  • plugins/x11/PluginViewX11.cpp: Moved common logics from PluginViewGtk.cpp

(WebCore::PluginView::dispatchNPEvent):
(WebCore::PluginView::updatePluginWidget):
(WebCore::PluginView::handleFocusInEvent):
(WebCore::PluginView::invalidateRect):
(WebCore::PluginView::invalidateRegion):
(WebCore::PluginView::handleFocusOutEvent):
(WebCore::PluginView::initXEvent):
(WebCore::PluginView::paint):
(WebCore::PluginView::setParent):
(WebCore::PluginView::setNPWindowRect):
(WebCore::PluginView::setNPWindowIfNeeded):

6:26 PM Changeset in webkit [163504] by weinig@apple.com
  • 5 edits in trunk/Source/WebKit2

[WebKit2, FTL] Add user default to enable the FTL
https://bugs.webkit.org/show_bug.cgi?id=128281

Reviewed by Geoffrey Garen.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitializeWebProcess):

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess):
Pipe through the default.

6:23 PM Changeset in webkit [163503] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Fix a warning.

  • platform/mac/ContentFilterMac.mm:

(WebCore::ContentFilter::ContentFilter):
Remove an unnecessary comparison.

6:11 PM Changeset in webkit [163502] by andersca@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Remove unused functions.

  • runtime/RegExpConstructor.cpp:

(JSC::RegExpConstructor::getOwnPropertySlot):

  • runtime/RegExpObject.cpp:
5:49 PM Changeset in webkit [163501] by andersca@apple.com
  • 8 edits
    3 copies in trunk

Add sourceFrame to WKNavigationAction
https://bugs.webkit.org/show_bug.cgi?id=128280

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKFrameInfo.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKNavigationActionInternal.h.
  • UIProcess/API/Cocoa/WKFrameInfo.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKNavigationActionInternal.h.

(-[WKFrameInfo request]):
(-[WKFrameInfo setRequest:]):

  • UIProcess/API/Cocoa/WKFrameInfoInternal.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKNavigationActionInternal.h.
  • UIProcess/API/Cocoa/WKNavigationAction.h:
  • UIProcess/API/Cocoa/WKNavigationAction.mm:

(-[WKNavigationAction sourceFrame]):
(-[WKNavigationAction setSourceFrame:]):

  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::frameInfoFromWebFrameProxy):
(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):

  • WebKit2.xcodeproj/project.pbxproj:
5:19 PM Changeset in webkit [163500] by Brent Fulgham
  • 9 edits in branches/safari-537.75-branch/Source

Source/WebCore: Merge r154146, r155828, r156145

2013-08-15 Brent Fulgham <Brent Fulgham>

[Windows] Consolidate WebKit Bundle Handling
https://bugs.webkit.org/show_bug.cgi?id=119869

Reviewed by Tim Horton.

  • WebCore.vcxproj/WebCore.vcxproj: Add new WebCoreBundleWin files.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::certificatePath): Use correct bundle handling logic.
  • platform/win/LocalizedStringsWin.cpp: Move bundle implementation to new WebCoreBundleWin.cpp file.
  • platform/win/WebCoreBundleWin.cpp: Added. (WebCore::createWebKitBundle): (WebCore::webKitBundle):
  • platform/win/WebCoreBundleWin.h: Added.

Source/WebKit/win: Merge r154146

2013-08-15 Brent Fulgham <Brent Fulgham>


[Windows] Consolidate WebKit Bundle handling
https://bugs.webkit.org/show_bug.cgi?id=119869


Reviewed by Tim Horton.


  • WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::openInspectorFrontend): Switch to new WebCore::webkitBundle() method. (WebInspectorFrontendClient::localizedStringsURL): Ditto.

Source/WTF: Merge in build correction to prevent needless "rebuild all" builds.

  • WTF.vcxproj/WTFGenerated.make: Avoid re-copying identical files, which

forces a complete rebuild.

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

WK2: Tap highlight is positioned incorrectly in iframes.
https://bugs.webkit.org/show_bug.cgi?id=128277
<rdar://problem/15975993>

Reviewed by Benjamin Poulain.

We need to convert the quad to root view coordinates
before returning it to the UIProcess for drawing the highlight.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::tapHighlightAtPosition):

5:14 PM Changeset in webkit [163498] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Fix the !ENABLE(PAGE_VISIBILITY_API) build
https://bugs.webkit.org/show_bug.cgi?id=127907

Reviewed by Brent Fulgham.

  • page/Page.cpp:

(WebCore::Page::setIsVisible):

5:08 PM Changeset in webkit [163497] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix attempt on EFL build after r163480

  • CMakeLists.txt: Removed WebUIClient.cpp from source lists.
4:58 PM Changeset in webkit [163496] by oliver@apple.com
  • 46 edits in trunk/Source

Change custom getter signature to make the base reference an object pointer
https://bugs.webkit.org/show_bug.cgi?id=128279

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Make custom getters take a JSObject* instead of EncodedJSValue as the base
reference. This allows us to drop one pointer from the JSVALUE32_64 calling
convention.

  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h:

(JSC::JSCallbackObject<Parent>::staticFunctionGetter):
(JSC::JSCallbackObject<Parent>::callbackGetter):

  • jit/JITOperations.cpp:
  • jit/Repatch.cpp:

(JSC::generateProtoChainAccessStub):
(JSC::tryBuildGetByIDList):

  • runtime/JSActivation.cpp:

(JSC::JSActivation::argumentsGetter):

  • runtime/JSActivation.h:
  • runtime/JSFunction.cpp:

(JSC::JSFunction::argumentsGetter):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::lengthGetter):
(JSC::JSFunction::nameGetter):

  • runtime/JSFunction.h:
  • runtime/JSObject.h:

(JSC::PropertySlot::getValue):

  • runtime/NumberConstructor.cpp:

(JSC::numberConstructorNaNValue):
(JSC::numberConstructorNegInfinity):
(JSC::numberConstructorPosInfinity):
(JSC::numberConstructorMaxValue):
(JSC::numberConstructorMinValue):

  • runtime/PropertySlot.h:
  • runtime/RegExpConstructor.cpp:

(JSC::regExpConstructorDollar1):
(JSC::regExpConstructorDollar2):
(JSC::regExpConstructorDollar3):
(JSC::regExpConstructorDollar4):
(JSC::regExpConstructorDollar5):
(JSC::regExpConstructorDollar6):
(JSC::regExpConstructorDollar7):
(JSC::regExpConstructorDollar8):
(JSC::regExpConstructorDollar9):
(JSC::regExpConstructorInput):
(JSC::regExpConstructorMultiline):
(JSC::regExpConstructorLastMatch):
(JSC::regExpConstructorLastParen):
(JSC::regExpConstructorLeftContext):
(JSC::regExpConstructorRightContext):

  • runtime/RegExpObject.cpp:

(JSC::regExpObjectGlobal):
(JSC::regExpObjectIgnoreCase):
(JSC::regExpObjectMultiline):
(JSC::regExpObjectSource):

Source/WebCore:

Update everything to the new calling convention.

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
(WebCore::cssPropertyGetterCallback):

  • bindings/js/JSDOMBinding.cpp:

(WebCore::objectToStringFunctionGetter):

  • bindings/js/JSDOMBinding.h:
  • bindings/js/JSDOMMimeTypeArrayCustom.cpp:

(WebCore::JSDOMMimeTypeArray::nameGetter):

  • bindings/js/JSDOMPluginArrayCustom.cpp:

(WebCore::JSDOMPluginArray::nameGetter):

  • bindings/js/JSDOMPluginCustom.cpp:

(WebCore::JSDOMPlugin::nameGetter):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::nonCachingStaticFunctionGetter):
(WebCore::childFrameGetter):
(WebCore::indexGetter):
(WebCore::namedItemGetter):

  • bindings/js/JSHTMLAllCollectionCustom.cpp:

(WebCore::JSHTMLAllCollection::nameGetter):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::JSHTMLCollection::nameGetter):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::nameGetter):

  • bindings/js/JSHTMLFormControlsCollectionCustom.cpp:

(WebCore::JSHTMLFormControlsCollection::nameGetter):

  • bindings/js/JSHTMLFormElementCustom.cpp:

(WebCore::JSHTMLFormElement::nameGetter):

  • bindings/js/JSHTMLFrameSetElementCustom.cpp:

(WebCore::JSHTMLFrameSetElement::nameGetter):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::nonCachingStaticBackFunctionGetter):
(WebCore::nonCachingStaticForwardFunctionGetter):
(WebCore::nonCachingStaticGoFunctionGetter):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::nonCachingStaticReplaceFunctionGetter):
(WebCore::nonCachingStaticReloadFunctionGetter):
(WebCore::nonCachingStaticAssignFunctionGetter):

  • bindings/js/JSNamedNodeMapCustom.cpp:

(WebCore::JSNamedNodeMap::nameGetter):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginElementPropertyGetter):

  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/JSRTCStatsResponseCustom.cpp:

(WebCore::JSRTCStatsResponse::nameGetter):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::nameGetter):

  • bindings/js/JSStyleSheetListCustom.cpp:

(WebCore::JSStyleSheetList::nameGetter):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::lengthGetter):
(JSC::RuntimeArray::indexGetter):

  • bridge/runtime_array.h:
  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::lengthGetter):

  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::fallbackObjectGetter):
(JSC::Bindings::RuntimeObject::fieldGetter):
(JSC::Bindings::RuntimeObject::methodGetter):

  • bridge/runtime_object.h:

Source/WebKit2:

Update everything to the new calling convention.

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):

  • WebProcess/Plugins/Netscape/JSNPObject.h:
4:57 PM Changeset in webkit [163495] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.2

Merged r163474.

4:54 PM Changeset in webkit [163494] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163473.

4:52 PM Changeset in webkit [163493] by Lucas Forschler
  • 7 edits in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163471.

4:49 PM Changeset in webkit [163492] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Tools

Merged r163423.

4:48 PM Changeset in webkit [163491] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163420.

4:46 PM Changeset in webkit [163490] by Lucas Forschler
  • 13 edits
    3 copies
    3 deletes in tags/Safari-538.16.2

Merged r163418.

4:43 PM Changeset in webkit [163489] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Tools

Merged r163411.

4:42 PM Changeset in webkit [163488] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163366.

4:28 PM Changeset in webkit [163487] by Lucas Forschler
  • 4 edits
    2 copies in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163324.

4:20 PM Changeset in webkit [163486] by aestes@apple.com
  • 3 edits in trunk/Source/WebCore

Buffer incoming data in ContentFilter when using NEFilterSource
https://bugs.webkit.org/show_bug.cgi?id=127979

Reviewed by Sam Weinig.

WebFilterEvaluator buffers incoming data and returns it to us as
replacement data if the load is allowed. NEFilterSource doesn't do
this, so we need to do our own buffering.

  • platform/ContentFilter.h: Forward-declared NSMutableData and added

m_originalData.

  • platform/mac/ContentFilterMac.mm:

(WebCore::ContentFilter::ContentFilter): Constructed m_originalData
with an initial capacity (if we know the expected content size).
(WebCore::ContentFilter::addData): Buffered incoming data if we are
using NEFilterSource.
(WebCore::ContentFilter::finishedAddingData):
(WebCore::ContentFilter::getReplacementData): Returned m_originalData
if the load wasn't blocked.

4:13 PM Changeset in webkit [163485] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.2/Source

Versioning.

4:10 PM Changeset in webkit [163484] by Lucas Forschler
  • 1 copy in tags/Safari-538.16.2

New Tag.

4:06 PM Changeset in webkit [163483] by akling@apple.com
  • 32 edits in trunk

Remove ENABLE(DIRECTORY_UPLOAD).
<https://webkit.org/b/128275>

.:

Rubber-stamped by Ryosuke Niwa.

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

Source/JavaScriptCore:

Rubber-stamped by Ryosuke Niwa.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

This is a non-standard Chrome extension that none of the WebKit
ports have even been building.

Rubber-stamped by Ryosuke Niwa.

  • Configurations/FeatureDefines.xcconfig:
  • fileapi/File.cpp:
  • fileapi/File.h:
  • fileapi/File.idl:
  • html/FileInputType.cpp:

(WebCore::FileInputType::handleDOMActivateEvent):
(WebCore::FileInputType::createFileList):
(WebCore::FileInputType::receiveDroppedFiles):

  • html/FileInputType.h:
  • html/HTMLAttributeNames.in:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::parseAttribute):

  • html/HTMLInputElement.idl:
  • loader/EmptyClients.h:
  • page/Chrome.cpp:
  • page/Chrome.h:
  • page/ChromeClient.h:
  • platform/FileChooser.h:
  • platform/network/FormData.cpp:

(WebCore::FormData::appendKeyValuePairItems):

Source/WebKit/efl:

Rubber-stamped by Ryosuke Niwa.

  • ewk/ewk_file_chooser.cpp:

(ewk_file_chooser_allows_directory_upload_get):

Source/WebKit/mac:

Rubber-stamped by Ryosuke Niwa.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Rubber-stamped by Ryosuke Niwa.

  • Configurations/FeatureDefines.xcconfig:
  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<FileChooserSettings>::encode):
(IPC::ArgumentCoder<FileChooserSettings>::decode):

Source/WTF:

Rubber-stamped by Ryosuke Niwa.

  • wtf/FeatureDefines.h:

Tools:

Rubber-stamped by Ryosuke Niwa.

  • Scripts/webkitperl/FeatureList.pm:
3:59 PM Changeset in webkit [163482] by beidson@apple.com
  • 11 edits in trunk

IDB: storage/indexeddb/mozilla/autoincrement-indexes.html fails
https://bugs.webkit.org/show_bug.cgi?id=128257

Reviewed by Sam Weinig.

Source/WebCore:

Tests: storage/indexeddb/mozilla/autoincrement-indexes.html

Add some IDBKeyData utility methods for WK2 to use:

  • Modules/indexeddb/IDBKeyData.cpp:

(WebCore::IDBKeyData::setArrayValue):
(WebCore::IDBKeyData::setStringValue):
(WebCore::IDBKeyData::setDateValue):
(WebCore::IDBKeyData::setNumberValue):

  • Modules/indexeddb/IDBKeyData.h:
  • WebCore.exp.in:

Source/WebKit2:

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::putRecordInBackingStore): Write the correct key to the index if it was auto generated.
(WebKit::UniqueIDBDatabase::getRecordFromBackingStore): If this is an auto increment object store with

a non-empty key path, save the key path to the get result.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): The IndexRecord schema shouldn’t

have key uniqueness.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::putRecord): Take IDBKeyData instead of IDBKey.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getIndexRecord): Fill in the primary key from the fetch.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

LayoutTests:

  • platform/mac-wk2/TestExpectations: Enable the test.
3:47 PM Changeset in webkit [163481] by fpizlo@apple.com
  • 5 edits in trunk

Rename useExperimentalFTL to useFTLJIT.

Rubber stamped by Mark Hahnenberg.

Source/JavaScriptCore:

  • dfg/DFGTierUpCheckInjectionPhase.cpp:

(JSC::DFG::TierUpCheckInjectionPhase::run):

  • runtime/Options.h:

Tools:

  • Scripts/run-jsc-stress-tests:
3:40 PM Changeset in webkit [163480] by andersca@apple.com
  • 7 edits
    1 add
    2 deletes in trunk/Source/WebKit2

Get rid of WebUIClient
https://bugs.webkit.org/show_bug.cgi?id=128274

Reviewed by Andreas Kling.

  • UIProcess/API/APIUIClient.h: Added.

(API::UIClient::~UIClient):
(API::UIClient::createNewPage):
(API::UIClient::showPage):
(API::UIClient::close):
(API::UIClient::takeFocus):
(API::UIClient::focus):
(API::UIClient::unfocus):
(API::UIClient::runJavaScriptAlert):
(API::UIClient::runJavaScriptConfirm):
(API::UIClient::runJavaScriptPrompt):
(API::UIClient::setStatusText):
(API::UIClient::mouseDidMoveOverElement):
(API::UIClient::unavailablePluginButtonClicked):
(API::UIClient::implementsDidNotHandleKeyEvent):
(API::UIClient::didNotHandleKeyEvent):
(API::UIClient::implementsDidNotHandleWheelEvent):
(API::UIClient::didNotHandleWheelEvent):
(API::UIClient::toolbarsAreVisible):
(API::UIClient::setToolbarsAreVisible):
(API::UIClient::menuBarIsVisible):
(API::UIClient::setMenuBarIsVisible):
(API::UIClient::statusBarIsVisible):
(API::UIClient::setStatusBarIsVisible):
(API::UIClient::isResizable):
(API::UIClient::setIsResizable):
(API::UIClient::setWindowFrame):
(API::UIClient::windowFrame):
(API::UIClient::canRunBeforeUnloadConfirmPanel):
(API::UIClient::runBeforeUnloadConfirmPanel):
(API::UIClient::didDraw):
(API::UIClient::pageDidScroll):
(API::UIClient::exceededDatabaseQuota):
(API::UIClient::runOpenPanel):
(API::UIClient::decidePolicyForGeolocationPermissionRequest):
(API::UIClient::decidePolicyForNotificationPermissionRequest):
(API::UIClient::headerHeight):
(API::UIClient::footerHeight):
(API::UIClient::drawHeader):
(API::UIClient::drawFooter):
(API::UIClient::printFrame):
(API::UIClient::canRunModal):
(API::UIClient::runModal):
(API::UIClient::saveDataToFileInDownloadsFolder):
(API::UIClient::shouldInterruptJavaScript):
(API::UIClient::showColorPicker):
(API::UIClient::hideColorPicker):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setUIClient):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::createNewPage):
(WebKit::WebPageProxy::showPage):
(WebKit::WebPageProxy::closePage):
(WebKit::WebPageProxy::runJavaScriptAlert):
(WebKit::WebPageProxy::runJavaScriptConfirm):
(WebKit::WebPageProxy::runJavaScriptPrompt):
(WebKit::WebPageProxy::shouldInterruptJavaScript):
(WebKit::WebPageProxy::setStatusText):
(WebKit::WebPageProxy::mouseDidMoveOverElement):
(WebKit::WebPageProxy::unavailablePluginButtonClicked):
(WebKit::WebPageProxy::setToolbarsAreVisible):
(WebKit::WebPageProxy::getToolbarsAreVisible):
(WebKit::WebPageProxy::setMenuBarIsVisible):
(WebKit::WebPageProxy::getMenuBarIsVisible):
(WebKit::WebPageProxy::setStatusBarIsVisible):
(WebKit::WebPageProxy::getStatusBarIsVisible):
(WebKit::WebPageProxy::setIsResizable):
(WebKit::WebPageProxy::getIsResizable):
(WebKit::WebPageProxy::setWindowFrame):
(WebKit::WebPageProxy::getWindowFrame):
(WebKit::WebPageProxy::runBeforeUnloadConfirmPanel):
(WebKit::WebPageProxy::pageDidScroll):
(WebKit::WebPageProxy::runOpenPanel):
(WebKit::WebPageProxy::printFrame):
(WebKit::WebPageProxy::didDraw):
(WebKit::WebPageProxy::setFocus):
(WebKit::WebPageProxy::takeFocus):
(WebKit::WebPageProxy::didReceiveEvent):
(WebKit::WebPageProxy::creationParameters):
(WebKit::WebPageProxy::exceededDatabaseQuota):
(WebKit::WebPageProxy::requestGeolocationPermissionForFrame):
(WebKit::WebPageProxy::requestNotificationPermission):
(WebKit::WebPageProxy::headerHeight):
(WebKit::WebPageProxy::footerHeight):
(WebKit::WebPageProxy::drawHeader):
(WebKit::WebPageProxy::drawFooter):
(WebKit::WebPageProxy::runModal):
(WebKit::WebPageProxy::setCanRunModal):
(WebKit::WebPageProxy::saveDataToFileInDownloadsFolder):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebUIClient.cpp: Removed.
  • UIProcess/WebUIClient.h: Removed.
  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::windowAndViewFramesChanged):

  • WebKit2.xcodeproj/project.pbxproj:
3:38 PM Changeset in webkit [163479] by Alan Bujtas
  • 2 edits in branches/safari-537.74-branch/LayoutTests

Update expected result for media/video-controls-captions-trackmenu-sorted.html

  • platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt:
3:30 PM Changeset in webkit [163478] by akling@apple.com
  • 5 edits in trunk/Source

Turn on ENABLE(8BIT_TEXTRUN) for everyone.
<https://webkit.org/b/128273>

Reviewed by Anders Carlsson.

  • platform/graphics/TextRun.h:

(WebCore::TextRun::TextRun):
(WebCore::TextRun::subRun):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::constructTextRun):

  • rendering/RenderBlock.h:
2:21 PM Changeset in webkit [163477] by BJ Burg
  • 20 edits
    7 adds in trunk

Web Inspector: add probe manager and model objects to the frontend
https://bugs.webkit.org/show_bug.cgi?id=127117

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

The inspector frontend now assigns breakpoint action identifiers,
rather than the backend. Remove return values containing breakpoint
identifiers, and remove tracking and assignment of action identifiers.

  • inspector/ScriptDebugListener.h:
  • inspector/ScriptDebugServer.cpp:

(Inspector::ScriptDebugServer::evaluateBreakpointAction):
(Inspector::ScriptDebugServer::dispatchBreakpointActionProbe):
Pass BreakpointAction by reference rather than just the action identifier.

  • inspector/ScriptDebugServer.h:
  • inspector/agents/InspectorDebuggerAgent.cpp:

(Inspector::objectGroupForBreakpointAction):
(Inspector::InspectorDebuggerAgent::InspectorDebuggerAgent):
(Inspector::InspectorDebuggerAgent::breakpointActionsFromProtocol):
(Inspector::InspectorDebuggerAgent::setBreakpointByUrl):
(Inspector::InspectorDebuggerAgent::setBreakpoint):
(Inspector::InspectorDebuggerAgent::removeBreakpoint):
(Inspector::InspectorDebuggerAgent::breakpointActionProbe):

  • inspector/agents/InspectorDebuggerAgent.h:
  • inspector/protocol/Debugger.json: Revert change to setBreakpoint return values. Add optional identifier to breakpoint actions.

Source/WebInspectorUI:

Add the probe manager, and the following model objects:

  • ProbeObject corresponds to a single probe breakpoint action.
  • ProbeSetObject contains all ProbeObjects for one Breakpoint.
  • ProbeSetDataFrame holds probe samples from multiple

probes fired from the same breakpoint hit/debugger pause.

  • ProbeSetDataTable keeps track of multiple such data frames

and manages probe sample lifetimes across page navigations.

The probe manager updates probe model objects whenever breakpoints
are added, removed, or modified.

The inspector frontend now assigns breakpoint action identifiers,
rather than the backend. This lets ProbeObjects keep stable
identifiers that match the probe's samples, even when the underlying
breakpoint is re-added with a different identifier (such as when
editing probe expressions).

  • UserInterface/Breakpoint.js:

(WebInspector.Breakpoint.prototype.get probeActions): Added.
(WebInspector.Breakpoint.prototype.createAction):
(WebInspector.Breakpoint.prototype.removeAction):
(WebInspector.Breakpoint.prototype.clearActions): Added.

  • UserInterface/BreakpointAction.js:

(WebInspector.BreakpointAction):
(WebInspector.BreakpointAction.prototype.get id):
(WebInspector.BreakpointAction.prototype.get info):

  • UserInterface/DebuggerManager.js:

(WebInspector.DebuggerManager.restoreBreakpointsSoon):
(WebInspector.DebuggerManager): Restore saved breakpoints
from cookies on the second run loop, so that all managers will
be able to received breakpoint added events.
(WebInspector.DebuggerManager.prototype.addBreakpoint):
(WebInspector.DebuggerManager.prototype.removeBreakpoint):
(WebInspector.DebuggerManager.prototype.get nextBreakpointActionIdentifier):
The debugger manager assigns unique breakpoint action identifiers with this getter.

(WebInspector.DebuggerManager.prototype._debuggerBreakpointActionType):
(WebInspector.DebuggerManager.prototype.didSetBreakpoint):
(WebInspector.DebuggerManager.prototype._setBreakpoint):
(WebInspector.DebuggerManager.prototype.didRemoveBreakpoint):
(WebInspector.DebuggerManager.prototype._removeBreakpoint):

  • UserInterface/DebuggerObserver.js:

(WebInspector.DebuggerObserver.prototype.didSampleProbe):

  • UserInterface/InspectorJSBackendCommands.js:
  • UserInterface/Main.html:
  • UserInterface/Main.js:

(WebInspector.loaded):

  • UserInterface/Probe.js: Added.

(WebInspector.ProbeSample):
(WebInspector.Probe):
(WebInspector.Probe.prototype.get id):
(WebInspector.Probe.prototype.get breakpoint):
(WebInspector.Probe.prototype.get expression):
(WebInspector.Probe.prototype.set expression):
(WebInspector.Probe.prototype.get samples):
(WebInspector.Probe.prototype.clearSamples):
(WebInspector.Probe.prototype.addSample):

  • UserInterface/ProbeManager.js: Added.

(WebInspector.ProbeManager):
(WebInspector.ProbeManager.prototype.probeSetForBreakpoint):
(WebInspector.ProbeManager.prototype._breakpointRemoved):
(WebInspector.ProbeManager.prototype._breakpointActionsChanged.get var):
(WebInspector.ProbeManager.prototype._breakpointActionsChanged.set get knownProbeIdentifiers):
(WebInspector.ProbeManager.prototype._breakpointActionsChanged):

  • UserInterface/ProbeSet.js: Added.

(WebInspector.ProbeSet):
(WebInspector.ProbeSet.prototype.get breakpoint):
(WebInspector.ProbeSet.prototype.get probes):
(WebInspector.ProbeSet.prototype.get dataTable):
(WebInspector.ProbeSet.prototype.clear):
(WebInspector.ProbeSet.prototype.clearSamples):
(WebInspector.ProbeSet.prototype.createProbe):
(WebInspector.ProbeSet.prototype.removeProbe):
(WebInspector.ProbeSet.prototype.willRemove):
(WebInspector.ProbeSet.prototype._mainResourceChanged):
(WebInspector.ProbeSet.prototype._createDataTable):
(WebInspector.ProbeSet.prototype._sampleCollected):
(WebInspector.ProbeSet.prototype._breakpointResolvedStateDidChange):

  • UserInterface/ProbeSetDataFrame.js: Added.

(WebInspector.ProbeSetDataFrame):
(WebInspector.ProbeSetDataFrame.compare):
(WebInspector.ProbeSetDataFrame.prototype.get key):
(WebInspector.ProbeSetDataFrame.prototype.get count):
(WebInspector.ProbeSetDataFrame.prototype.get index):
(WebInspector.ProbeSetDataFrame.prototype.get isSeparator):
(WebInspector.ProbeSetDataFrame.prototype.set isSeparator):
(WebInspector.ProbeSetDataFrame.prototype.addSampleForProbe):
(WebInspector.ProbeSetDataFrame.prototype.missingKeys):
(WebInspector.ProbeSetDataFrame.prototype.isComplete):
(WebInspector.ProbeSetDataFrame.prototype.fillMissingValues):

  • UserInterface/ProbeSetDataTable.js: Added.

(WebInspector.ProbeSetDataTable):
(WebInspector.ProbeSetDataTable.prototype.get frames):
(WebInspector.ProbeSetDataTable.prototype.get separators):
(WebInspector.ProbeSetDataTable.prototype.willRemove):
(WebInspector.ProbeSetDataTable.prototype.mainResourceChanged):
(WebInspector.ProbeSetDataTable.prototype.addSampleForProbe):
(WebInspector.ProbeSetDataTable.prototype.addProbe):
(WebInspector.ProbeSetDataTable.prototype.removeProbe):
(WebInspector.ProbeSetDataTable.prototype.createFrame):
(WebInspector.ProbeSetDataTable.prototype.addFrame):
(WebInspector.ProbeSetDataTable.prototype.addSeparator):

LayoutTests:

Set up the debugger and probe managers when testing models.

Add a workalike for InspectorBackend.dumpInspectorProtocolMessages to
InspectorTest.

Add listeners for breakpoints and probes that produce
useful, deterministic trace output. Use the tracing in a new test.

  • http/tests/inspector-protocol/resources/InspectorTest.js:

(InspectorTest.sendCommand):
(InspectorTest.initializeInspectorModels.console.assert):
(InspectorTest.initializeInspectorModels):

  • inspector-protocol/debugger/didSampleProbe-multiple-probes-expected.txt:
  • inspector-protocol/debugger/didSampleProbe-multiple-probes.html:
  • inspector-protocol/model/probe-manager-add-remove-actions-expected.txt: Added.
  • inspector-protocol/model/probe-manager-add-remove-actions.html: Added.
  • inspector-protocol/resources/probe-helper.js:

(ProbeHelper.stringifyProbeSample):
(ProbeHelper.installTracingListeners.WebInspector):
(ProbeHelper.installTracingListeners):

1:54 PM Changeset in webkit [163476] by enrica@apple.com
  • 6 edits in trunk/Source

WK2: Caret, selections and autocorrection bubbles are incorrectly positioned when inside an iframe.
https://bugs.webkit.org/show_bug.cgi?id=128264
<rdar://problem/15986954>

Reviewed by Simon Fraser.

Source/WebCore:

Adding new exported function.

  • WebCore.exp.in:

Source/WebKit2:

Everywhere we return rectangles to the UIProcess, we need to convert them
to root view coordinates. Also, we should allow hit testing to go into child
frames.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::editorState):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::selectWithGesture):
(WebKit::WebPage::updateSelectionWithTouches):
(WebKit::WebPage::convertSelectionRectsToRootView):
(WebKit::WebPage::requestAutocorrectionData):
(WebKit::WebPage::getPositionInformation):

1:50 PM Changeset in webkit [163475] by Antti Koivisto
  • 7 edits in trunk

ElementRuleCollector should not use StyleResolver::State
https://bugs.webkit.org/show_bug.cgi?id=128247

Source/WebCore:

Reviewed by Andreas Kling.

Make ElementRuleCollector more reusable.

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::collectMatchingRules):
(WebCore::ElementRuleCollector::sortAndTransferMatchedRules):
(WebCore::ElementRuleCollector::matchAuthorRules):
(WebCore::ElementRuleCollector::matchUARules):
(WebCore::ElementRuleCollector::ruleMatches):
(WebCore::ElementRuleCollector::collectMatchingRulesForList):
(WebCore::ElementRuleCollector::matchAllRules):

  • css/ElementRuleCollector.h:

(WebCore::ElementRuleCollector::ElementRuleCollector):

Pass the objects that are actually needed rather than the entire State.

LayoutTests:

Reviewed by Andreas Kling.

  • platform/mac/fast/parser/xhtml-alternate-entities-expected.png:
  • platform/mac/fast/parser/xhtml-alternate-entities-expected.txt: This is a progression.
1:44 PM Changeset in webkit [163474] by fpizlo@apple.com
  • 5 edits in trunk

JSC on Mac should pull LLVM from prefix=/usr/local/LLVMForJavaScriptCore and not /usr/local
https://bugs.webkit.org/show_bug.cgi?id=128269

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

  • Configurations/Base.xcconfig:
  • Configurations/LLVMForJSC.xcconfig:

Tools:

  • Scripts/copy-webkitlibraries-to-product-directory:
1:42 PM Changeset in webkit [163473] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix 32-bit builds after r163471

  • dfg/DFGOSRExitCompilerCommon.cpp:
1:29 PM Changeset in webkit [163472] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Mac] Correct copy/paste error in scrolling code.
https://bugs.webkit.org/show_bug.cgi?id=128258

Reviewed by Anders Carlsson.

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::pinnedInDirection): Use
'setWidth' when dealing with width metrics.

1:27 PM Changeset in webkit [163471] by mhahnenberg@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Can no longer run OctaneV2 in browser, crashes in speculationFromCell
https://bugs.webkit.org/show_bug.cgi?id=128266

Reviewed by Filip Pizlo.

Move the OSR exit write barriers into OSRExitCompilerCommon. Also reorganize some
of the code to be in more appropriate places.

  • dfg/DFGOSRExitCompiler32_64.cpp:

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

  • dfg/DFGOSRExitCompiler64.cpp:

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

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::osrWriteBarrier):
(JSC::DFG::adjustAndJumpToTarget):

  • dfg/DFGSpeculativeJIT.cpp:
  • dfg/DFGSpeculativeJIT.h:
  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::genericWriteBarrier):

1:21 PM Changeset in webkit [163470] by mitz@apple.com
  • 4 edits in trunk/Source/WebKit2

[Cocoa] WKRemoteObjectInterface fails with doubles, NSNull, and empty NSStrings
https://bugs.webkit.org/show_bug.cgi?id=128268

Reviewed by Anders Carlsson.

  • Shared/API/Cocoa/WKRemoteObjectCoder.mm:

(-[WKRemoteObjectDecoder decodeBytesForKey:returnedLength:]): When returning nullptr, also
set the length out parameter to 0.

  • Shared/API/Cocoa/WKRemoteObjectInterface.mm:

(propertyListClasses): Added NSNull.

  • Shared/UserData.cpp:

(WebKit::UserData::encode): Encode the Double type.

1:15 PM Changeset in webkit [163469] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Ruby base oddly justify its text when the text is ideograph and it contains <br> on Mac.
https://bugs.webkit.org/show_bug.cgi?id=106417

Patch by Yuki Sekiguchi <yuki.sekiguchi@access-company.com> on 2014-02-05
Reviewed by David Hyatt.

Source/WebCore:

Ruby base always justify even if a line have hard break.
Even if next leaf child is line break, InlineTextBox allow trailing expansion.
This make <br> expanded, and there is odd space at the end of the line.

Test: fast/text/ruby-justification-br.html

  • rendering/InlineTextBox.h:

(WebCore::InlineTextBox::expansionBehavior):

  • If next leaf child is line break, we should forbid trailing expansion.

LayoutTests:

Test that <br> don't change justification behavior in ruby base.

  • fast/text/ruby-justification-br-expected.html: Added.
  • fast/text/ruby-justification-br.html: Added.
1:04 PM Changeset in webkit [163468] by Manuel Rego Casasnovas
  • 3 edits in trunk/Tools

Create CSS Grid Layout watchlist
https://bugs.webkit.org/show_bug.cgi?id=128241

Reviewed by Andreas Kling.

Add Sergio Villar, Javier Fernandez and myself to it.

Add Javier Fernandez as contributor.

  • Scripts/webkitpy/common/config/contributors.json:
  • Scripts/webkitpy/common/config/watchlist:
12:57 PM Changeset in webkit [163467] by commit-queue@webkit.org
  • 3 edits
    1 delete in trunk/LayoutTests

Fix srcset change test flakiness
https://bugs.webkit.org/show_bug.cgi?id=128265

Patch by Yoav Weiss <yoav@yoav.ws> on 2014-02-05
Reviewed by Alexey Proskuryakov.

  • fast/hidpi/image-srcset-change-dynamically-from-js-2x-expected.txt:
  • fast/hidpi/image-srcset-change-dynamically-from-js-2x.html:
  • platform/gtk-wk2/fast/hidpi/image-srcset-change-dynamically-from-js-2x-expected.txt: Removed.
12:42 PM Changeset in webkit [163466] by akling@apple.com
  • 15 edits in trunk/Source

FrameLoader::stateMachine() should return a reference.
<https://webkit.org/b/128263>

There is always a FrameLoaderStateMatchine, so return it by
reference since it can never be null.

Reviewed by Anders Carlsson.

  • history/PageCache.cpp:

(WebCore::logCanCachePageDecision):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::commitData):
(WebCore::DocumentLoader::maybeLoadEmpty):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::createDocument):
(WebCore::DocumentWriter::begin):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::prepareForHistoryNavigation):

  • loader/FrameLoader.h:

(WebCore::FrameLoader::stateMachine):

  • loader/HistoryController.cpp:

(WebCore::HistoryController::restoreScrollPositionAndViewState):
(WebCore::HistoryController::saveDocumentState):

  • loader/NavigationScheduler.cpp:

(WebCore::NavigationScheduler::scheduleLocationChange):
(WebCore::NavigationScheduler::scheduleFormSubmission):

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::incrementProgress):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::storeResourceTimingInitiatorInformation):

  • page/Frame.cpp:

(WebCore::Frame::injectUserScripts):

  • page/FrameView.cpp:

(WebCore::FrameView::qualifiesAsVisuallyNonEmpty):

12:04 PM Changeset in webkit [163465] by mmaxfield@apple.com
  • 5 edits
    2 adds in trunk

Move characterAt index checks from InlineIterator to RenderText
https://bugs.webkit.org/show_bug.cgi?id=128224

Source/WebCore:

Reviewed by Simon Fraser.

Move characterAt index checks from InlineIterator to RenderText
so that all RenderText calls are covered. Few safe instances are
now covered with uncheckedCharacterAt.

Merged from Blink:
http://src.chromium.org/viewvc/blink?view=revision&revision=150830

Test: fast/text/character-at-crash.html

  • rendering/InlineIterator.h:

(WebCore::InlineIterator::characterAt):

  • rendering/RenderText.cpp:

(WebCore::RenderText::computePreferredLogicalWidths):

  • rendering/RenderText.h:

(WebCore::RenderText::operator[]):
(WebCore::RenderText::uncheckedCharacterAt):
(WebCore::RenderText::characterAt):

LayoutTests:

Move characterAt index checks from InlineIterator to RenderText
so that all RenderText calls are covered. Few safe instances are
now covered with uncheckedCharacterAt.

Merged from Blink:
http://src.chromium.org/viewvc/blink?view=revision&revision=150830

Reviewed by Simon Fraser.

  • fast/text/character-at-crash-expected.txt: Added.
  • fast/text/character-at-crash.html: Added.
12:04 PM Changeset in webkit [163464] by ap@apple.com
  • 2 edits in trunk/Tools

Copying failing test paths from build.webkit.org/dashboard popovers also copies non-selectable links
https://bugs.webkit.org/show_bug.cgi?id=128236

Reviewed by Timothy Hatcher.

Work around bug 80159 - copying should always respect user-select:none, but it doesn't yet.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:

When copying, temporarily make non-selectable parts invisible, and put text of
the selection onto pasteboard. Since we immediately make everything visible again,
there is even no blinking.

12:03 PM Changeset in webkit [163463] by nick.yamane@openbossa.org
  • 2 edits in trunk/Tools

Unreviewed. Add myself to contributors.json

  • Scripts/webkitpy/common/config/contributors.json:
11:39 AM Changeset in webkit [163462] by Michał Pakuła vel Rutka
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening

Add test expectations for tests crashing after r162947 and for http tests.

  • platform/efl-wk2/TestExpectations:
11:26 AM Changeset in webkit [163461] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WTF

Merge r163460 - HashMap can't be used with std::unique_ptr as value when it has a custom deleter
https://bugs.webkit.org/show_bug.cgi?id=128250

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2014-02-05
Reviewed by Darin Adler.

The problem is that the HashMap is using a unique_ptr with the
default deleter, so that when trying to move the unique_ptr the
deleters don't match.

  • wtf/HashTraits.h: Add the deleter also in the template

definitation of the parent class for the HashTraits<std::unique_ptr<T, Deleter>>

11:13 AM Changeset in webkit [163460] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

HashMap can't be used with std::unique_ptr as value when it has a custom deleter
https://bugs.webkit.org/show_bug.cgi?id=128250

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2014-02-05
Reviewed by Darin Adler.

The problem is that the HashMap is using a unique_ptr with the
default deleter, so that when trying to move the unique_ptr the
deleters don't match.

  • wtf/HashTraits.h: Add the deleter also in the template

definitation of the parent class for the HashTraits<std::unique_ptr<T, Deleter>>

10:51 AM Changeset in webkit [163459] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Remove leftover seamless iframe logic from containerForRepaint().
<https://webkit.org/b/128235>

The parent-flow-thread-in-different-document case is no longer
relevant after <iframe seamless> was removed.

Reviewed by David Hyatt.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containerForRepaint):

10:39 AM Changeset in webkit [163458] by hmuller@adobe.com
  • 4 edits
    2 adds in trunk

[CSS Shapes] Dynamically created element with image valued shape-outside doesn't update automatically
https://bugs.webkit.org/show_bug.cgi?id=128187

Reviewed by Dean Jackson.

Source/WebCore:

Corrected the way shape-outside handles the completion of an image load. Move
the shape-outside imageChanged() logic from RenderBlock to RenderBox and call
markShapeOutsideDependentsForLayout() instead of parent()->setNeedsLayoutAndPrefWidthsRecalc().
The latter did not deal with descendants of the shape element's siblings correctly and it
failed when the shape element was inserted dynamically. The markShapeOutsideDependentsForLayout()
method can't be called during layout, so the imageChanged() code checks for that. The only
scenario where imageChanged() can be called during layout (that I've discovered so far anyway)
is when an SVG Image is renderered with drawImage(). The Shape::createRasterShape() does this,
and the corresponding imageChanged() notification can be safely ignored.

Test: fast/shapes/shape-outside-floats/shape-outside-insert-svg-shape.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::imageChanged):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::imageChanged):

LayoutTests:

  • fast/shapes/shape-outside-floats/shape-outside-insert-svg-shape-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-insert-svg-shape.html: Added.
10:25 AM Changeset in webkit [163457] by akling@apple.com
  • 14 edits in trunk/Source/WebCore

CTTE: ImageLoader is always owned by an Element.
<https://webkit.org/b/128254>

  • Codify this by making the constructor take Element& or better.
  • Make element() return Element&.
  • Marked HTMLImageLoader and SVGImageLoader final.
  • Made the ImageLoader constructor protected.

Reviewed by Sam Weinig.

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseAttribute):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::HTMLImageElement):

  • html/HTMLImageLoader.cpp:

(WebCore::HTMLImageLoader::HTMLImageLoader):
(WebCore::HTMLImageLoader::dispatchLoadEvent):
(WebCore::HTMLImageLoader::sourceURI):
(WebCore::HTMLImageLoader::notifyFinished):

  • html/HTMLImageLoader.h:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::imageLoader):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseAttribute):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::startLoadingImage):

  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::didAttachRenderers):
(WebCore::HTMLVideoElement::parseAttribute):

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::ImageLoader):
(WebCore::ImageLoader::~ImageLoader):
(WebCore::ImageLoader::updateFromElement):
(WebCore::ImageLoader::notifyFinished):
(WebCore::ImageLoader::renderImageResource):
(WebCore::ImageLoader::updatedHasPendingEvent):
(WebCore::ImageLoader::timerFired):
(WebCore::ImageLoader::dispatchPendingBeforeLoadEvent):
(WebCore::ImageLoader::dispatchPendingLoadEvent):
(WebCore::ImageLoader::dispatchPendingErrorEvent):

  • loader/ImageLoader.h:

(WebCore::ImageLoader::element):

  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::SVGImageElement):

  • svg/SVGImageLoader.cpp:

(WebCore::SVGImageLoader::SVGImageLoader):
(WebCore::SVGImageLoader::~SVGImageLoader):
(WebCore::SVGImageLoader::dispatchLoadEvent):
(WebCore::SVGImageLoader::sourceURI):

  • svg/SVGImageLoader.h:
10:11 AM Changeset in webkit [163456] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

[WK2] [iOS] No video on embedded YouTube
https://bugs.webkit.org/show_bug.cgi?id=128237

Reviewed by Sam Weinig.

We were using the wrong #if directive; PLUGIN_PROXY_FOR_VIDEO is an ENABLE not a USE.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

10:05 AM Changeset in webkit [163455] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Add expectations for two flaky media layout tests
https://bugs.webkit.org/show_bug.cgi?id=128253

Unreviewed EFL layout tests gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-02-05

  • platform/efl/TestExpectations:
9:59 AM Changeset in webkit [163454] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Layout Tests compositing/columns/composited-rl-paginated-repaint.html and
compositing/columns/composited-lr-paginated-repaint.html are flaky
https://bugs.webkit.org/show_bug.cgi?id=128255

  • platform/mac-wk2/TestExpectations: Marked them as such.
9:53 AM Changeset in webkit [163453] by Sergio Correia
  • 3 edits
    2 adds in trunk

SVG preserveAspectRatio=none is not honored.
https://bugs.webkit.org/show_bug.cgi?id=111402

Reviewed by Andreas Kling.

Source/WebCore:

Previously, preserveAspectRatio=none had no effect on SVG images. This change fixes this so
we follow the special handling of preserveAspectRatio on images as defined in the spec:
http://www.w3.org/TR/SVG/single-page.html, 7.8 The ‘preserveAspectRatio’ attribute.

Images that depend on a container size (such as SVG images) require a call to
setContainerSizeForRenderer(...) to set this size. By passing the image's intrinsic size
as the container size, the non-uniform scaling defined in the spec will be achieved.

Merged from Blink: https://chromiumcodereview.appspot.com/14964004

Test: svg/custom/image-with-preserveAspectRatio-none.html

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::updateImageViewport):

LayoutTests:

New test for SVG with preserveAspectRatio=none.

Merged from Blink: https://chromiumcodereview.appspot.com/14964004

  • svg/custom/image-with-preserveAspectRatio-none-expected.html: Added.
  • svg/custom/image-with-preserveAspectRatio-none.html: Added.
9:36 AM Changeset in webkit [163452] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] Simplify CSSBasicShapeInset::cssText
https://bugs.webkit.org/show_bug.cgi?id=127841

Reviewed by David Hyatt.

I introduced the updateCornerRadiusWidthAndHeight helper function, which makes the code of cssText method clearer.

No new tests, no behavior change.

  • css/CSSBasicShapes.cpp:

(WebCore::updateCornerRadiusWidthAndHeight): Add helper function.
(WebCore::CSSBasicShapeInset::cssText):

9:34 AM Changeset in webkit [163451] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] Simplify BasicShapeInset::path
https://bugs.webkit.org/show_bug.cgi?id=127920

Reviewed by David Hyatt.

I introduced a new static helper function called floatSizeForLengthSize
in order to simplify BasicShapeInset::path method.

No new tests, no behavior change.

  • rendering/style/BasicShapes.cpp:

(WebCore::floatSizeForLengthSize): New helper function.
(WebCore::BasicShapeInset::path):

9:31 AM Changeset in webkit [163450] by mhahnenberg@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Malloc called beneath MachineThreads::gatherFromOtherThread(), while forbidden
https://bugs.webkit.org/show_bug.cgi?id=128202

Reviewed by Geoffrey Garen.

This patch uses the new GCSegmentedArray to replace the Vector that was used
to record the set of currently executing CodeBlocks during the conservative
stack scan. This is primarily to avoid the possibility of the Vector resizing
while FastMalloc is forbidden.

  • heap/BlockAllocator.h:
  • heap/CodeBlockSet.cpp:

(JSC::CodeBlockSet::CodeBlockSet):
(JSC::CodeBlockSet::rememberCurrentlyExecutingCodeBlocks):

  • heap/CodeBlockSet.h:
  • heap/GCSegmentedArray.h:

(JSC::GCSegmentedArray::begin):
(JSC::GCSegmentedArray::end):
(JSC::GCSegmentedArrayIterator::GCSegmentedArrayIterator):
(JSC::GCSegmentedArrayIterator::get):
(JSC::GCSegmentedArrayIterator::operator*):
(JSC::GCSegmentedArrayIterator::operator->):
(JSC::GCSegmentedArrayIterator::operator==):
(JSC::GCSegmentedArrayIterator::operator!=):
(JSC::GCSegmentedArrayIterator::operator++):

  • heap/Heap.cpp:

(JSC::Heap::Heap):

9:13 AM Changeset in webkit [163449] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Expose more WKWebProcessPlugInFrame properties
https://bugs.webkit.org/show_bug.cgi?id=128240

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h: Declared new properties.
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:

(-[WKWebProcessPlugInFrame URL]): Added.
(-[WKWebProcessPlugInFrame childFrames]): Added.
(-[WKWebProcessPlugInFrame containsAnyFormElements]): Added.

9:13 AM Changeset in webkit [163448] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Notify WKWebProcessPlugInLoadDelegate when a frame is removed from the frame hierarchy
https://bugs.webkit.org/show_bug.cgi?id=128239

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Declared new

delegate method.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(didRemoveFrameFromHierarchy): Implemented this page loader client callback by calling the
load delegate.
(setUpPageLoaderClient): Set the above callback in the client structure.

8:13 AM Changeset in webkit [163447] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

fast/hidpi/image-srcset-relative-svg-canvas.html needs ImageOnlyFailure tag.

7:25 AM Changeset in webkit [163446] by Sergio Correia
  • 3 edits in trunk/Tools

Unreviewed. Add myself to contributor and watch lists

  • Scripts/webkitpy/common/config/contributors.json:
  • Scripts/webkitpy/common/config/watchlist:
5:59 AM Changeset in webkit [163445] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.3.5

Tagging the WebKitGTK+ 2.3.5 release

4:58 AM Changeset in webkit [163444] by commit-queue@webkit.org
  • 6 edits in trunk/Source

XMLHttpRequest performs too many copies for ArrayBuffer results
https://bugs.webkit.org/show_bug.cgi?id=117458

Patch by Wojciech Bielawski <w.bielawski@samsung.com> on 2014-02-05
Reviewed by Alexey Proskuryakov.

Based on blink change: https://chromium.googlesource.com/chromium/blink/+/bed266aa5a43f7c080c87e527bd35e2b80ecc7b7

Add SharedBuffer::createArrayBuffer() and use it to create XMLHttpRequest's response in ArrayBuffer
This cuts

  • two memsets (in ArrayBuffer::create and SharedBuffer::m_buffer::resize)
  • one copy (SharedBuffer::m_buffer to ArrayBufferContents::m_data)
  • one allocation (SharedBuffer::m_buffer)

Source/JavaScriptCore:

  • runtime/ArrayBuffer.h:

Source/WebCore:

No new tests. WebKit desn't provide test mechanism similar to blink's one.

  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::createArrayBuffer):

  • platform/SharedBuffer.h:
  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseArrayBuffer):

4:57 AM Changeset in webkit [163443] by berto@igalia.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself to some watchlists.

  • Scripts/webkitpy/common/config/watchlist:
4:31 AM Changeset in webkit [163442] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.4

Unreviewed. Update NEWS and Versions.m4 for 2.3.5 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Added release notes for 2.3.5.
4:31 AM Changeset in webkit [163441] by rgabor@webkit.org
  • 2 edits in trunk/Tools

Fix WaitForSVNServer build step after r163372.

Rubber-stamped by Csaba Osztrogonác.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(WaitForSVNServer.evaluateCommand): add missing return SUCCESS

4:29 AM WebKitGTK/2.4.x edited by berto@igalia.com
(diff)
4:15 AM WebKitGTK/2.2.x edited by berto@igalia.com
(diff)
3:42 AM Changeset in webkit [163440] by Csaba Osztrogonác
  • 788 edits in trunk

Remove ENABLE(SVG) guards
https://bugs.webkit.org/show_bug.cgi?id=127991

Reviewed by Sam Weinig.

.:

  • Source/autotools/FindDependencies.m4:
  • Source/autotools/PrintBuildConfiguration.m4:
  • Source/autotools/ReadCommandLineArguments.m4:
  • Source/autotools/SetupAutomake.m4:
  • Source/autotools/SetupWebKitFeatures.m4:
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • CMakeLists.txt:
  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.make:
  • GNUmakefile.am:
  • UseJSC.cmake:
  • WebCore.exp.in:
  • accessibility/AXObjectCache.cpp:

(WebCore::createFromRenderer):

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::alternativeText):
(WebCore::AccessibilityNodeObject::accessibilityDescription):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::boundingBoxRect):
(WebCore::AccessibilityRenderObject::supportsPath):
(WebCore::AccessibilityRenderObject::elementPath):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::remoteSVGRootElement):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper isSVGGroupElement]):

  • bindings/gobject/GNUmakefile.am:
  • bindings/js/JSCSSValueCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSDocumentCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSElementCustom.cpp:

(WebCore::toJSNewlyCreated):

  • bindings/js/JSExceptionBase.cpp:

(WebCore::toExceptionBase):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::createWrapperInline):

  • bindings/js/JSSVGElementInstanceCustom.cpp:
  • bindings/js/JSSVGLengthCustom.cpp:
  • bindings/js/JSSVGPathSegCustom.cpp:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSComputedStyleDeclaration.h:
  • css/CSSCursorImageValue.cpp:

(WebCore::resourceReferencedByCursorElement):
(WebCore::CSSCursorImageValue::~CSSCursorImageValue):
(WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
(WebCore::CSSCursorImageValue::cachedImage):
(WebCore::CSSCursorImageValue::removeReferencedElement):

  • css/CSSCursorImageValue.h:
  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

  • css/CSSFontSelector.cpp:
  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseClipPath):
(WebCore::CSSParser::parseShadow):
(WebCore::CSSParser::parseFilter):
(WebCore::CSSParser::realLex):

  • css/CSSParser.h:
  • css/CSSPrimitiveValueMappings.h:
  • css/CSSStyleSheet.cpp:

(WebCore::isAcceptableCSSStyleSheetParent):

  • css/CSSValue.cpp:

(WebCore::CSSValue::equals):
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::destroy):
(WebCore::CSSValue::cloneForCSSOM):

  • css/CSSValue.h:

(WebCore::CSSValue::isSubtypeExposedToCSSOM):

  • css/CSSValueKeywords.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyDisplay::isValidDisplayValue):
(WebCore::ApplyPropertyClipPath::applyValue):

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::matchAllRules):

  • css/SVGCSSComputedStyleDeclaration.cpp:
  • css/SVGCSSParser.cpp:
  • css/SVGCSSPropertyNames.in:
  • css/SVGCSSStyleSelector.cpp:
  • css/StyleProperties.cpp:

(WebCore::StyleProperties::getPropertyValue):

  • css/StylePropertyShorthand.cpp:

(WebCore::markerShorthand):
(WebCore::shorthandForProperty):
(WebCore::matchingShorthandsForLonghand):

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

(WebCore::StyleResolver::State::clear):
(WebCore::StyleResolver::locateCousinList):
(WebCore::StyleResolver::sharingCandidateHasIdenticalStyleAffectingAttributes):
(WebCore::StyleResolver::canShareStyleWithElement):
(WebCore::StyleResolver::locateSharedStyle):
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::isValidVisitedLinkProperty):
(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::loadPendingSVGDocuments):
(WebCore::StyleResolver::createFilterOperations):
(WebCore::StyleResolver::loadPendingResources):

  • css/StyleResolver.h:
  • dom/DOMExceptions.in:
  • dom/DOMImplementation.cpp:

(WebCore::addString):
(WebCore::isSupportedSVG11Feature):
(WebCore::DOMImplementation::hasFeature):
(WebCore::DOMImplementation::createDocument):

  • dom/Document.cpp:

(WebCore::Document::commonTeardown):
(WebCore::Document::createElement):
(WebCore::Document::implicitClose):
(WebCore::Document::hasSVGRootNode):

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

(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):

  • dom/Element.cpp:

(WebCore::Element::~Element):
(WebCore::Element::synchronizeAllAttributes):
(WebCore::Element::synchronizeAttribute):
(WebCore::Element::boundsInRootViewSpace):
(WebCore::Element::getBoundingClientRect):
(WebCore::Element::removedFrom):
(WebCore::Element::childShouldCreateRenderer):
(WebCore::Element::fastAttributeLookupAllowed):
(WebCore::Element::clearHasPendingResources):

  • dom/Element.h:
  • dom/ElementData.h:
  • dom/ElementRareData.h:

(WebCore::ElementRareData::ElementRareData):

  • dom/EventDispatcher.cpp:

(WebCore::eventTargetRespectingTargetRules):

  • dom/EventListenerMap.cpp:
  • dom/EventListenerMap.h:
  • dom/EventNames.in:
  • dom/EventTargetFactory.in:
  • dom/QualifiedName.cpp:
  • dom/ScriptElement.cpp:

(WebCore::toScriptElementIfPossible):

  • dom/Text.cpp:

(WebCore::isSVGText):
(WebCore::Text::createTextRenderer):

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • html/HTMLAnchorElement.cpp:

(WebCore::shouldProhibitLinks):

  • html/HTMLEmbedElement.idl:
  • html/HTMLFrameElement.idl:
  • html/HTMLFrameOwnerElement.cpp:

(WebCore::HTMLFrameOwnerElement::getSVGDocument):

  • html/HTMLFrameOwnerElement.h:
  • html/HTMLIFrameElement.idl:
  • html/HTMLObjectElement.idl:
  • html/canvas/DOMPath.h:

(WebCore::DOMPath::create):

  • html/canvas/DOMPath.idl:
  • html/parser/XSSAuditor.cpp:

(WebCore::isSemicolonSeparatedAttribute):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::patchDocument):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::viaInspectorStyleSheet):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::setOuterHTML):

  • inspector/InspectorOverlay.cpp:
  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::inlineStyleSheetText):

  • loader/FrameLoader.cpp:
  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::renderImageResource):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::didRemoveClient):
(WebCore::CachedImage::imageForRenderer):
(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::imageSizeForRenderer):
(WebCore::CachedImage::createImage):

  • loader/cache/CachedImage.h:
  • loader/cache/CachedResource.cpp:

(WebCore::defaultPriorityForResourceType):

  • loader/cache/CachedResource.h:
  • loader/cache/CachedResourceClient.h:
  • loader/cache/CachedResourceLoader.cpp:

(WebCore::createResource):
(WebCore::CachedResourceLoader::requestSVGDocument):
(WebCore::CachedResourceLoader::checkInsecureContent):
(WebCore::CachedResourceLoader::canRequest):

  • loader/cache/CachedResourceLoader.h:
  • loader/cache/CachedSVGDocument.cpp:
  • loader/cache/CachedSVGDocument.h:
  • loader/cache/CachedSVGDocumentClient.h:
  • loader/cache/CachedSVGDocumentReference.cpp:
  • loader/cache/CachedSVGDocumentReference.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::updateSelectionForMouseDrag):
(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::instanceAssociatedWithShadowTreeElement):
(WebCore::EventHandler::updateMouseEventTargetNode):

  • page/EventHandler.h:
  • page/Frame.cpp:

(WebCore::Frame::setPageAndTextZoomFactors):

  • page/FrameView.cpp:

(WebCore::FrameView::applyOverflowToViewport):
(WebCore::FrameView::forceLayoutParentViewIfNeeded):
(WebCore::FrameView::embeddedContentBox):
(WebCore::FrameView::scrollToAnchor):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

  • platform/MIMETypeRegistry.cpp:

(WebCore::initializeSupportedNonImageMimeTypes):

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

(WebCore::TextRun::TextRun):

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::advanceInternal):

  • platform/graphics/filters/FETile.cpp:

(WebCore::FETile::platformApplySoftware):

  • platform/graphics/filters/FilterOperation.cpp:

(WebCore::ReferenceFilterOperation::getOrCreateCachedSVGDocumentReference):

  • platform/graphics/filters/FilterOperation.h:
  • platform/gtk/PasteboardGtk.cpp:

(WebCore::getURLForImageElement):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::buildReferenceFilter):

  • rendering/HitTestLocation.cpp:
  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::absoluteImageURL):
(WebCore::HitTestResult::absoluteLinkURL):
(WebCore::HitTestResult::isLiveLink):

  • rendering/InlineBox.h:
  • rendering/LogicalSelectionOffsetCaches.h:

(WebCore::isContainingBlockCandidateForAbsolutelyPositionedObject):

  • rendering/PaintInfo.h:

(WebCore::PaintInfo::applyTransform):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::addChild):
(WebCore::RenderElement::layerCreationAllowedForSubtree):
(WebCore::RenderElement::styleDidChange):

  • rendering/RenderGeometryMap.cpp:

(WebCore::canMapBetweenRenderers):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::embeddedContentBox):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::isTransparent):
(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::~FilterInfo):

  • rendering/RenderLayerFilterInfo.h:
  • rendering/RenderNamedFlowThread.cpp:

(WebCore::nextNodeInsideContentElement):

  • rendering/RenderObject.cpp:

(WebCore::objectIsRelayoutBoundary):
(WebCore::RenderObject::container):
(WebCore::RenderObject::willBeRemovedFromTree):

  • rendering/RenderObject.h:

(WebCore::RenderObject::canContainFixedPositionObjects):
(WebCore::RenderObject::preservesNewline):

  • rendering/RenderTreeAsText.cpp:

(WebCore::write):

  • rendering/RenderView.cpp:

(WebCore::RenderView::layout):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::alignBoxesInBlockDirection):

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::initializeForCurrentObject):
(WebCore::BreakingContext::handleText):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::RenderStyle):
(WebCore::RenderStyle::inheritFrom):
(WebCore::RenderStyle::copyNonInheritedFrom):
(WebCore::RenderStyle::operator==):
(WebCore::RenderStyle::inheritedNotEqual):
(WebCore::RenderStyle::inheritedDataShared):
(WebCore::RenderStyle::diff):

  • rendering/style/RenderStyle.h:
  • rendering/style/SVGRenderStyle.cpp:
  • rendering/style/SVGRenderStyle.h:
  • rendering/style/SVGRenderStyleDefs.cpp:
  • rendering/style/SVGRenderStyleDefs.h:
  • rendering/svg/RenderSVGBlock.cpp:
  • rendering/svg/RenderSVGBlock.h:
  • rendering/svg/RenderSVGContainer.cpp:
  • rendering/svg/RenderSVGContainer.h:
  • rendering/svg/RenderSVGEllipse.cpp:
  • rendering/svg/RenderSVGEllipse.h:
  • rendering/svg/RenderSVGForeignObject.cpp:
  • rendering/svg/RenderSVGForeignObject.h:
  • rendering/svg/RenderSVGGradientStop.cpp:
  • rendering/svg/RenderSVGGradientStop.h:
  • rendering/svg/RenderSVGHiddenContainer.cpp:
  • rendering/svg/RenderSVGHiddenContainer.h:
  • rendering/svg/RenderSVGImage.cpp:
  • rendering/svg/RenderSVGImage.h:
  • rendering/svg/RenderSVGInline.cpp:
  • rendering/svg/RenderSVGInline.h:
  • rendering/svg/RenderSVGInlineText.cpp:
  • rendering/svg/RenderSVGInlineText.h:
  • rendering/svg/RenderSVGModelObject.cpp:
  • rendering/svg/RenderSVGModelObject.h:
  • rendering/svg/RenderSVGPath.cpp:
  • rendering/svg/RenderSVGPath.h:
  • rendering/svg/RenderSVGRect.cpp:
  • rendering/svg/RenderSVGRect.h:
  • rendering/svg/RenderSVGResource.cpp:
  • rendering/svg/RenderSVGResource.h:
  • rendering/svg/RenderSVGResourceClipper.cpp:
  • rendering/svg/RenderSVGResourceClipper.h:
  • rendering/svg/RenderSVGResourceContainer.cpp:
  • rendering/svg/RenderSVGResourceContainer.h:
  • rendering/svg/RenderSVGResourceFilter.cpp:
  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
  • rendering/svg/RenderSVGResourceFilterPrimitive.h:
  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::RenderSVGResourceGradient::applyResource):

  • rendering/svg/RenderSVGResourceGradient.h:
  • rendering/svg/RenderSVGResourceLinearGradient.cpp:
  • rendering/svg/RenderSVGResourceLinearGradient.h:
  • rendering/svg/RenderSVGResourceMarker.cpp:
  • rendering/svg/RenderSVGResourceMarker.h:
  • rendering/svg/RenderSVGResourceMasker.cpp:
  • rendering/svg/RenderSVGResourceMasker.h:
  • rendering/svg/RenderSVGResourcePattern.cpp:
  • rendering/svg/RenderSVGResourcePattern.h:
  • rendering/svg/RenderSVGResourceRadialGradient.cpp:
  • rendering/svg/RenderSVGResourceRadialGradient.h:
  • rendering/svg/RenderSVGResourceSolidColor.cpp:
  • rendering/svg/RenderSVGResourceSolidColor.h:
  • rendering/svg/RenderSVGRoot.cpp:
  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGShape.cpp:
  • rendering/svg/RenderSVGShape.h:
  • rendering/svg/RenderSVGTSpan.h:
  • rendering/svg/RenderSVGText.cpp:
  • rendering/svg/RenderSVGText.h:
  • rendering/svg/RenderSVGTextPath.cpp:
  • rendering/svg/RenderSVGTextPath.h:
  • rendering/svg/RenderSVGTransformableContainer.cpp:
  • rendering/svg/RenderSVGTransformableContainer.h:
  • rendering/svg/RenderSVGViewportContainer.cpp:
  • rendering/svg/RenderSVGViewportContainer.h:
  • rendering/svg/SVGInlineFlowBox.cpp:
  • rendering/svg/SVGInlineFlowBox.h:
  • rendering/svg/SVGInlineTextBox.cpp:
  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGMarkerData.h:
  • rendering/svg/SVGPathData.cpp:
  • rendering/svg/SVGPathData.h:
  • rendering/svg/SVGRenderSupport.cpp:
  • rendering/svg/SVGRenderSupport.h:
  • rendering/svg/SVGRenderTreeAsText.cpp:
  • rendering/svg/SVGRenderTreeAsText.h:
  • rendering/svg/SVGRenderingContext.cpp:
  • rendering/svg/SVGRenderingContext.h:
  • rendering/svg/SVGResources.cpp:
  • rendering/svg/SVGResources.h:
  • rendering/svg/SVGResourcesCache.cpp:
  • rendering/svg/SVGResourcesCache.h:
  • rendering/svg/SVGResourcesCycleSolver.cpp:
  • rendering/svg/SVGResourcesCycleSolver.h:
  • rendering/svg/SVGRootInlineBox.cpp:
  • rendering/svg/SVGRootInlineBox.h:
  • rendering/svg/SVGSubpathData.h:
  • rendering/svg/SVGTextChunk.cpp:
  • rendering/svg/SVGTextChunk.h:
  • rendering/svg/SVGTextChunkBuilder.cpp:
  • rendering/svg/SVGTextChunkBuilder.h:
  • rendering/svg/SVGTextFragment.h:
  • rendering/svg/SVGTextLayoutAttributes.cpp:
  • rendering/svg/SVGTextLayoutAttributes.h:
  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
  • rendering/svg/SVGTextLayoutAttributesBuilder.h:
  • rendering/svg/SVGTextLayoutEngine.cpp:
  • rendering/svg/SVGTextLayoutEngine.h:
  • rendering/svg/SVGTextLayoutEngineBaseline.cpp:
  • rendering/svg/SVGTextLayoutEngineBaseline.h:
  • rendering/svg/SVGTextLayoutEngineSpacing.cpp:
  • rendering/svg/SVGTextLayoutEngineSpacing.h:
  • rendering/svg/SVGTextMetrics.cpp:
  • rendering/svg/SVGTextMetrics.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:
  • rendering/svg/SVGTextMetricsBuilder.h:
  • rendering/svg/SVGTextQuery.cpp:
  • rendering/svg/SVGTextQuery.h:
  • svg/ColorDistance.cpp:
  • svg/ColorDistance.h:
  • svg/GradientAttributes.h:
  • svg/LinearGradientAttributes.h:
  • svg/PatternAttributes.h:
  • svg/RadialGradientAttributes.h:
  • svg/SVGAElement.cpp:
  • svg/SVGAElement.h:
  • svg/SVGAElement.idl:
  • svg/SVGAltGlyphDefElement.cpp:
  • svg/SVGAltGlyphDefElement.h:
  • svg/SVGAltGlyphDefElement.idl:
  • svg/SVGAltGlyphElement.cpp:
  • svg/SVGAltGlyphElement.h:
  • svg/SVGAltGlyphElement.idl:
  • svg/SVGAltGlyphItemElement.cpp:
  • svg/SVGAltGlyphItemElement.h:
  • svg/SVGAltGlyphItemElement.idl:
  • svg/SVGAngle.cpp:
  • svg/SVGAngle.h:
  • svg/SVGAngle.idl:
  • svg/SVGAnimateColorElement.cpp:
  • svg/SVGAnimateColorElement.h:
  • svg/SVGAnimateColorElement.idl:
  • svg/SVGAnimateElement.cpp:
  • svg/SVGAnimateElement.h:
  • svg/SVGAnimateElement.idl:
  • svg/SVGAnimateMotionElement.cpp:
  • svg/SVGAnimateMotionElement.h:
  • svg/SVGAnimateMotionElement.idl:
  • svg/SVGAnimateTransformElement.cpp:
  • svg/SVGAnimateTransformElement.h:
  • svg/SVGAnimateTransformElement.idl:
  • svg/SVGAnimatedAngle.cpp:
  • svg/SVGAnimatedAngle.h:
  • svg/SVGAnimatedAngle.idl:
  • svg/SVGAnimatedBoolean.cpp:
  • svg/SVGAnimatedBoolean.h:
  • svg/SVGAnimatedBoolean.idl:
  • svg/SVGAnimatedColor.cpp:
  • svg/SVGAnimatedColor.h:
  • svg/SVGAnimatedEnumeration.cpp:
  • svg/SVGAnimatedEnumeration.h:
  • svg/SVGAnimatedEnumeration.idl:
  • svg/SVGAnimatedInteger.cpp:
  • svg/SVGAnimatedInteger.h:
  • svg/SVGAnimatedInteger.idl:
  • svg/SVGAnimatedIntegerOptionalInteger.cpp:
  • svg/SVGAnimatedIntegerOptionalInteger.h:
  • svg/SVGAnimatedLength.cpp:
  • svg/SVGAnimatedLength.h:
  • svg/SVGAnimatedLength.idl:
  • svg/SVGAnimatedLengthList.cpp:
  • svg/SVGAnimatedLengthList.h:
  • svg/SVGAnimatedLengthList.idl:
  • svg/SVGAnimatedNumber.cpp:
  • svg/SVGAnimatedNumber.h:
  • svg/SVGAnimatedNumber.idl:
  • svg/SVGAnimatedNumberList.cpp:
  • svg/SVGAnimatedNumberList.h:
  • svg/SVGAnimatedNumberList.idl:
  • svg/SVGAnimatedNumberOptionalNumber.cpp:
  • svg/SVGAnimatedNumberOptionalNumber.h:
  • svg/SVGAnimatedPath.cpp:
  • svg/SVGAnimatedPath.h:
  • svg/SVGAnimatedPointList.cpp:
  • svg/SVGAnimatedPointList.h:
  • svg/SVGAnimatedPreserveAspectRatio.cpp:
  • svg/SVGAnimatedPreserveAspectRatio.h:
  • svg/SVGAnimatedPreserveAspectRatio.idl:
  • svg/SVGAnimatedRect.cpp:
  • svg/SVGAnimatedRect.h:
  • svg/SVGAnimatedRect.idl:
  • svg/SVGAnimatedString.cpp:
  • svg/SVGAnimatedString.h:
  • svg/SVGAnimatedString.idl:
  • svg/SVGAnimatedTransformList.cpp:
  • svg/SVGAnimatedTransformList.h:
  • svg/SVGAnimatedTransformList.idl:
  • svg/SVGAnimatedType.cpp:
  • svg/SVGAnimatedType.h:
  • svg/SVGAnimatedTypeAnimator.cpp:
  • svg/SVGAnimatedTypeAnimator.h:
  • svg/SVGAnimationElement.cpp:
  • svg/SVGAnimationElement.h:
  • svg/SVGAnimationElement.idl:
  • svg/SVGAnimatorFactory.h:
  • svg/SVGCircleElement.cpp:
  • svg/SVGCircleElement.h:
  • svg/SVGCircleElement.idl:
  • svg/SVGClipPathElement.cpp:
  • svg/SVGClipPathElement.h:
  • svg/SVGClipPathElement.idl:
  • svg/SVGColor.cpp:
  • svg/SVGColor.h:
  • svg/SVGColor.idl:
  • svg/SVGComponentTransferFunctionElement.cpp:
  • svg/SVGComponentTransferFunctionElement.h:
  • svg/SVGComponentTransferFunctionElement.idl:
  • svg/SVGCursorElement.cpp:
  • svg/SVGCursorElement.h:
  • svg/SVGCursorElement.idl:
  • svg/SVGDefsElement.cpp:
  • svg/SVGDefsElement.h:
  • svg/SVGDefsElement.idl:
  • svg/SVGDescElement.cpp:
  • svg/SVGDescElement.h:
  • svg/SVGDescElement.idl:
  • svg/SVGDocument.cpp:
  • svg/SVGDocument.h:
  • svg/SVGDocument.idl:
  • svg/SVGDocumentExtensions.cpp:
  • svg/SVGDocumentExtensions.h:
  • svg/SVGElement.cpp:
  • svg/SVGElement.h:
  • svg/SVGElement.idl:
  • svg/SVGElementInstance.cpp:
  • svg/SVGElementInstance.h:
  • svg/SVGElementInstance.idl:
  • svg/SVGElementInstanceList.cpp:
  • svg/SVGElementInstanceList.h:
  • svg/SVGElementInstanceList.idl:
  • svg/SVGEllipseElement.cpp:
  • svg/SVGEllipseElement.h:
  • svg/SVGEllipseElement.idl:
  • svg/SVGException.cpp:
  • svg/SVGException.h:
  • svg/SVGException.idl:
  • svg/SVGExternalResourcesRequired.cpp:
  • svg/SVGExternalResourcesRequired.h:
  • svg/SVGExternalResourcesRequired.idl:
  • svg/SVGFEBlendElement.cpp:
  • svg/SVGFEBlendElement.h:
  • svg/SVGFEBlendElement.idl:
  • svg/SVGFEColorMatrixElement.cpp:
  • svg/SVGFEColorMatrixElement.h:
  • svg/SVGFEColorMatrixElement.idl:
  • svg/SVGFEComponentTransferElement.cpp:
  • svg/SVGFEComponentTransferElement.h:
  • svg/SVGFEComponentTransferElement.idl:
  • svg/SVGFECompositeElement.cpp:
  • svg/SVGFECompositeElement.h:
  • svg/SVGFECompositeElement.idl:
  • svg/SVGFEConvolveMatrixElement.cpp:
  • svg/SVGFEConvolveMatrixElement.h:
  • svg/SVGFEConvolveMatrixElement.idl:
  • svg/SVGFEDiffuseLightingElement.cpp:
  • svg/SVGFEDiffuseLightingElement.h:
  • svg/SVGFEDiffuseLightingElement.idl:
  • svg/SVGFEDisplacementMapElement.cpp:
  • svg/SVGFEDisplacementMapElement.h:
  • svg/SVGFEDisplacementMapElement.idl:
  • svg/SVGFEDistantLightElement.cpp:
  • svg/SVGFEDistantLightElement.h:
  • svg/SVGFEDistantLightElement.idl:
  • svg/SVGFEDropShadowElement.cpp:
  • svg/SVGFEDropShadowElement.h:
  • svg/SVGFEDropShadowElement.idl:
  • svg/SVGFEFloodElement.cpp:
  • svg/SVGFEFloodElement.h:
  • svg/SVGFEFloodElement.idl:
  • svg/SVGFEFuncAElement.cpp:
  • svg/SVGFEFuncAElement.h:
  • svg/SVGFEFuncAElement.idl:
  • svg/SVGFEFuncBElement.cpp:
  • svg/SVGFEFuncBElement.h:
  • svg/SVGFEFuncBElement.idl:
  • svg/SVGFEFuncGElement.cpp:
  • svg/SVGFEFuncGElement.h:
  • svg/SVGFEFuncGElement.idl:
  • svg/SVGFEFuncRElement.cpp:
  • svg/SVGFEFuncRElement.h:
  • svg/SVGFEFuncRElement.idl:
  • svg/SVGFEGaussianBlurElement.cpp:
  • svg/SVGFEGaussianBlurElement.h:
  • svg/SVGFEGaussianBlurElement.idl:
  • svg/SVGFEImageElement.cpp:
  • svg/SVGFEImageElement.h:
  • svg/SVGFEImageElement.idl:
  • svg/SVGFELightElement.cpp:
  • svg/SVGFELightElement.h:
  • svg/SVGFEMergeElement.cpp:
  • svg/SVGFEMergeElement.h:
  • svg/SVGFEMergeElement.idl:
  • svg/SVGFEMergeNodeElement.cpp:
  • svg/SVGFEMergeNodeElement.h:
  • svg/SVGFEMergeNodeElement.idl:
  • svg/SVGFEMorphologyElement.cpp:
  • svg/SVGFEMorphologyElement.h:
  • svg/SVGFEMorphologyElement.idl:
  • svg/SVGFEOffsetElement.cpp:
  • svg/SVGFEOffsetElement.h:
  • svg/SVGFEOffsetElement.idl:
  • svg/SVGFEPointLightElement.cpp:
  • svg/SVGFEPointLightElement.h:
  • svg/SVGFEPointLightElement.idl:
  • svg/SVGFESpecularLightingElement.cpp:
  • svg/SVGFESpecularLightingElement.h:
  • svg/SVGFESpecularLightingElement.idl:
  • svg/SVGFESpotLightElement.cpp:
  • svg/SVGFESpotLightElement.h:
  • svg/SVGFESpotLightElement.idl:
  • svg/SVGFETileElement.cpp:
  • svg/SVGFETileElement.h:
  • svg/SVGFETileElement.idl:
  • svg/SVGFETurbulenceElement.cpp:
  • svg/SVGFETurbulenceElement.h:
  • svg/SVGFETurbulenceElement.idl:
  • svg/SVGFilterElement.cpp:
  • svg/SVGFilterElement.h:
  • svg/SVGFilterElement.idl:
  • svg/SVGFilterPrimitiveStandardAttributes.cpp:
  • svg/SVGFilterPrimitiveStandardAttributes.h:
  • svg/SVGFilterPrimitiveStandardAttributes.idl:
  • svg/SVGFitToViewBox.cpp:
  • svg/SVGFitToViewBox.h:
  • svg/SVGFitToViewBox.idl:
  • svg/SVGFontElement.idl:
  • svg/SVGFontFaceElement.idl:
  • svg/SVGFontFaceFormatElement.idl:
  • svg/SVGFontFaceNameElement.cpp:
  • svg/SVGFontFaceNameElement.idl:
  • svg/SVGFontFaceSrcElement.idl:
  • svg/SVGFontFaceUriElement.idl:
  • svg/SVGForeignObjectElement.cpp:
  • svg/SVGForeignObjectElement.h:
  • svg/SVGForeignObjectElement.idl:
  • svg/SVGGElement.cpp:
  • svg/SVGGElement.h:
  • svg/SVGGElement.idl:
  • svg/SVGGlyphElement.idl:
  • svg/SVGGlyphRefElement.cpp:
  • svg/SVGGlyphRefElement.h:
  • svg/SVGGlyphRefElement.idl:
  • svg/SVGGradientElement.cpp:
  • svg/SVGGradientElement.h:
  • svg/SVGGradientElement.idl:
  • svg/SVGGraphicsElement.cpp:
  • svg/SVGGraphicsElement.h:
  • svg/SVGGraphicsElement.idl:
  • svg/SVGHKernElement.idl:
  • svg/SVGImageElement.cpp:
  • svg/SVGImageElement.h:
  • svg/SVGImageElement.idl:
  • svg/SVGImageLoader.cpp:
  • svg/SVGImageLoader.h:
  • svg/SVGLangSpace.cpp:
  • svg/SVGLangSpace.h:
  • svg/SVGLength.cpp:
  • svg/SVGLength.h:
  • svg/SVGLength.idl:
  • svg/SVGLengthContext.cpp:
  • svg/SVGLengthContext.h:
  • svg/SVGLengthList.cpp:
  • svg/SVGLengthList.h:
  • svg/SVGLengthList.idl:
  • svg/SVGLineElement.cpp:
  • svg/SVGLineElement.h:
  • svg/SVGLineElement.idl:
  • svg/SVGLinearGradientElement.cpp:
  • svg/SVGLinearGradientElement.h:
  • svg/SVGLinearGradientElement.idl:
  • svg/SVGLocatable.cpp:
  • svg/SVGLocatable.h:
  • svg/SVGMPathElement.cpp:
  • svg/SVGMPathElement.h:
  • svg/SVGMPathElement.idl:
  • svg/SVGMarkerElement.cpp:
  • svg/SVGMarkerElement.h:
  • svg/SVGMarkerElement.idl:
  • svg/SVGMaskElement.cpp:
  • svg/SVGMaskElement.h:
  • svg/SVGMaskElement.idl:
  • svg/SVGMatrix.h:
  • svg/SVGMatrix.idl:
  • svg/SVGMetadataElement.cpp:
  • svg/SVGMetadataElement.h:
  • svg/SVGMetadataElement.idl:
  • svg/SVGMissingGlyphElement.idl:
  • svg/SVGNumber.idl:
  • svg/SVGNumberList.cpp:
  • svg/SVGNumberList.h:
  • svg/SVGNumberList.idl:
  • svg/SVGPaint.cpp:
  • svg/SVGPaint.h:
  • svg/SVGPaint.idl:
  • svg/SVGParserUtilities.cpp:
  • svg/SVGParserUtilities.h:
  • svg/SVGParsingError.h:
  • svg/SVGPathBlender.cpp:
  • svg/SVGPathBlender.h:
  • svg/SVGPathBuilder.cpp:
  • svg/SVGPathBuilder.h:
  • svg/SVGPathByteStream.h:
  • svg/SVGPathByteStreamBuilder.cpp:
  • svg/SVGPathByteStreamBuilder.h:
  • svg/SVGPathByteStreamSource.cpp:
  • svg/SVGPathByteStreamSource.h:
  • svg/SVGPathConsumer.h:
  • svg/SVGPathElement.cpp:
  • svg/SVGPathElement.h:
  • svg/SVGPathElement.idl:
  • svg/SVGPathParser.cpp:
  • svg/SVGPathParser.h:
  • svg/SVGPathSeg.h:
  • svg/SVGPathSeg.idl:
  • svg/SVGPathSegArc.h:
  • svg/SVGPathSegArcAbs.h:
  • svg/SVGPathSegArcAbs.idl:
  • svg/SVGPathSegArcRel.h:
  • svg/SVGPathSegArcRel.idl:
  • svg/SVGPathSegClosePath.h:
  • svg/SVGPathSegClosePath.idl:
  • svg/SVGPathSegCurvetoCubic.h:
  • svg/SVGPathSegCurvetoCubicAbs.h:
  • svg/SVGPathSegCurvetoCubicAbs.idl:
  • svg/SVGPathSegCurvetoCubicRel.h:
  • svg/SVGPathSegCurvetoCubicRel.idl:
  • svg/SVGPathSegCurvetoCubicSmooth.h:
  • svg/SVGPathSegCurvetoCubicSmoothAbs.h:
  • svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
  • svg/SVGPathSegCurvetoCubicSmoothRel.h:
  • svg/SVGPathSegCurvetoCubicSmoothRel.idl:
  • svg/SVGPathSegCurvetoQuadratic.h:
  • svg/SVGPathSegCurvetoQuadraticAbs.h:
  • svg/SVGPathSegCurvetoQuadraticAbs.idl:
  • svg/SVGPathSegCurvetoQuadraticRel.h:
  • svg/SVGPathSegCurvetoQuadraticRel.idl:
  • svg/SVGPathSegCurvetoQuadraticSmoothAbs.h:
  • svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
  • svg/SVGPathSegCurvetoQuadraticSmoothRel.h:
  • svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
  • svg/SVGPathSegLinetoAbs.h:
  • svg/SVGPathSegLinetoAbs.idl:
  • svg/SVGPathSegLinetoHorizontal.h:
  • svg/SVGPathSegLinetoHorizontalAbs.h:
  • svg/SVGPathSegLinetoHorizontalAbs.idl:
  • svg/SVGPathSegLinetoHorizontalRel.h:
  • svg/SVGPathSegLinetoHorizontalRel.idl:
  • svg/SVGPathSegLinetoRel.h:
  • svg/SVGPathSegLinetoRel.idl:
  • svg/SVGPathSegLinetoVertical.h:
  • svg/SVGPathSegLinetoVerticalAbs.h:
  • svg/SVGPathSegLinetoVerticalAbs.idl:
  • svg/SVGPathSegLinetoVerticalRel.h:
  • svg/SVGPathSegLinetoVerticalRel.idl:
  • svg/SVGPathSegList.cpp:
  • svg/SVGPathSegList.h:
  • svg/SVGPathSegList.idl:
  • svg/SVGPathSegListBuilder.cpp:
  • svg/SVGPathSegListBuilder.h:
  • svg/SVGPathSegListSource.cpp:
  • svg/SVGPathSegListSource.h:
  • svg/SVGPathSegMovetoAbs.h:
  • svg/SVGPathSegMovetoAbs.idl:
  • svg/SVGPathSegMovetoRel.h:
  • svg/SVGPathSegMovetoRel.idl:
  • svg/SVGPathSegWithContext.h:
  • svg/SVGPathSource.h:
  • svg/SVGPathStringBuilder.cpp:
  • svg/SVGPathStringBuilder.h:
  • svg/SVGPathStringSource.cpp:
  • svg/SVGPathStringSource.h:
  • svg/SVGPathTraversalStateBuilder.cpp:
  • svg/SVGPathTraversalStateBuilder.h:
  • svg/SVGPathUtilities.cpp:
  • svg/SVGPathUtilities.h:
  • svg/SVGPatternElement.cpp:
  • svg/SVGPatternElement.h:
  • svg/SVGPatternElement.idl:
  • svg/SVGPoint.h:
  • svg/SVGPoint.idl:
  • svg/SVGPointList.cpp:
  • svg/SVGPointList.h:
  • svg/SVGPointList.idl:
  • svg/SVGPolyElement.cpp:
  • svg/SVGPolyElement.h:
  • svg/SVGPolygonElement.cpp:
  • svg/SVGPolygonElement.h:
  • svg/SVGPolygonElement.idl:
  • svg/SVGPolylineElement.cpp:
  • svg/SVGPolylineElement.h:
  • svg/SVGPolylineElement.idl:
  • svg/SVGPreserveAspectRatio.cpp:
  • svg/SVGPreserveAspectRatio.h:
  • svg/SVGPreserveAspectRatio.idl:
  • svg/SVGRadialGradientElement.cpp:
  • svg/SVGRadialGradientElement.h:
  • svg/SVGRadialGradientElement.idl:
  • svg/SVGRect.h:
  • svg/SVGRect.idl:
  • svg/SVGRectElement.cpp:
  • svg/SVGRectElement.h:
  • svg/SVGRectElement.idl:
  • svg/SVGRenderingIntent.h:
  • svg/SVGRenderingIntent.idl:
  • svg/SVGSVGElement.cpp:
  • svg/SVGSVGElement.h:
  • svg/SVGSVGElement.idl:
  • svg/SVGScriptElement.cpp:
  • svg/SVGScriptElement.h:
  • svg/SVGScriptElement.idl:
  • svg/SVGSetElement.cpp:
  • svg/SVGSetElement.h:
  • svg/SVGSetElement.idl:
  • svg/SVGStopElement.cpp:
  • svg/SVGStopElement.h:
  • svg/SVGStopElement.idl:
  • svg/SVGStringList.cpp:
  • svg/SVGStringList.h:
  • svg/SVGStringList.idl:
  • svg/SVGStyleElement.cpp:
  • svg/SVGStyleElement.h:
  • svg/SVGStyleElement.idl:
  • svg/SVGSwitchElement.cpp:
  • svg/SVGSwitchElement.h:
  • svg/SVGSwitchElement.idl:
  • svg/SVGSymbolElement.cpp:
  • svg/SVGSymbolElement.h:
  • svg/SVGSymbolElement.idl:
  • svg/SVGTRefElement.cpp:
  • svg/SVGTRefElement.h:
  • svg/SVGTRefElement.idl:
  • svg/SVGTSpanElement.cpp:
  • svg/SVGTSpanElement.h:
  • svg/SVGTSpanElement.idl:
  • svg/SVGTests.cpp:
  • svg/SVGTests.h:
  • svg/SVGTests.idl:
  • svg/SVGTextContentElement.cpp:
  • svg/SVGTextContentElement.h:
  • svg/SVGTextContentElement.idl:
  • svg/SVGTextElement.cpp:
  • svg/SVGTextElement.h:
  • svg/SVGTextElement.idl:
  • svg/SVGTextPathElement.cpp:
  • svg/SVGTextPathElement.h:
  • svg/SVGTextPathElement.idl:
  • svg/SVGTextPositioningElement.cpp:
  • svg/SVGTextPositioningElement.h:
  • svg/SVGTextPositioningElement.idl:
  • svg/SVGTitleElement.cpp:
  • svg/SVGTitleElement.h:
  • svg/SVGTitleElement.idl:
  • svg/SVGTransform.cpp:
  • svg/SVGTransform.h:
  • svg/SVGTransform.idl:
  • svg/SVGTransformDistance.cpp:
  • svg/SVGTransformDistance.h:
  • svg/SVGTransformList.cpp:
  • svg/SVGTransformList.h:
  • svg/SVGTransformList.idl:
  • svg/SVGTransformable.cpp:
  • svg/SVGTransformable.h:
  • svg/SVGURIReference.cpp:
  • svg/SVGURIReference.h:
  • svg/SVGURIReference.idl:
  • svg/SVGUnitTypes.h:
  • svg/SVGUnitTypes.idl:
  • svg/SVGUnknownElement.h:
  • svg/SVGUseElement.cpp:
  • svg/SVGUseElement.h:
  • svg/SVGUseElement.idl:
  • svg/SVGVKernElement.idl:
  • svg/SVGViewElement.cpp:
  • svg/SVGViewElement.h:
  • svg/SVGViewElement.idl:
  • svg/SVGViewSpec.cpp:
  • svg/SVGViewSpec.h:
  • svg/SVGViewSpec.idl:
  • svg/SVGZoomAndPan.cpp:
  • svg/SVGZoomAndPan.h:
  • svg/SVGZoomAndPan.idl:
  • svg/SVGZoomEvent.cpp:
  • svg/SVGZoomEvent.h:
  • svg/SVGZoomEvent.idl:
  • svg/animation/SMILTime.cpp:

(WebCore::operator*):

  • svg/animation/SMILTime.h:
  • svg/animation/SMILTimeContainer.cpp:
  • svg/animation/SMILTimeContainer.h:
  • svg/animation/SVGSMILElement.cpp:
  • svg/animation/SVGSMILElement.h:
  • svg/graphics/SVGImage.cpp:
  • svg/graphics/SVGImage.h:
  • svg/graphics/SVGImageCache.cpp:
  • svg/graphics/SVGImageCache.h:
  • svg/graphics/SVGImageChromeClient.h:
  • svg/graphics/SVGImageForContainer.cpp:
  • svg/graphics/SVGImageForContainer.h:
  • svg/graphics/filters/SVGFEImage.cpp:
  • svg/graphics/filters/SVGFEImage.h:
  • svg/graphics/filters/SVGFilter.cpp:
  • svg/graphics/filters/SVGFilter.h:
  • svg/graphics/filters/SVGFilterBuilder.cpp:
  • svg/graphics/filters/SVGFilterBuilder.h:
  • svg/properties/SVGAnimatedEnumerationPropertyTearOff.h:
  • svg/properties/SVGAnimatedListPropertyTearOff.h:
  • svg/properties/SVGAnimatedPathSegListPropertyTearOff.h:
  • svg/properties/SVGAnimatedProperty.cpp:
  • svg/properties/SVGAnimatedProperty.h:
  • svg/properties/SVGAnimatedPropertyDescription.h:
  • svg/properties/SVGAnimatedPropertyMacros.h:
  • svg/properties/SVGAnimatedPropertyTearOff.h:
  • svg/properties/SVGAnimatedStaticPropertyTearOff.h:
  • svg/properties/SVGAnimatedTransformListPropertyTearOff.h:
  • svg/properties/SVGAttributeToPropertyMap.cpp:
  • svg/properties/SVGAttributeToPropertyMap.h:
  • svg/properties/SVGListProperty.h:
  • svg/properties/SVGListPropertyTearOff.h:
  • svg/properties/SVGPathSegListPropertyTearOff.cpp:
  • svg/properties/SVGPathSegListPropertyTearOff.h:
  • svg/properties/SVGProperty.h:
  • svg/properties/SVGPropertyInfo.cpp:
  • svg/properties/SVGPropertyInfo.h:
  • svg/properties/SVGPropertyTearOff.h:
  • svg/properties/SVGPropertyTraits.h:
  • svg/properties/SVGStaticListPropertyTearOff.h:
  • svg/properties/SVGStaticPropertyTearOff.h:
  • svg/properties/SVGStaticPropertyWithParentTearOff.h:
  • svg/properties/SVGTransformListPropertyTearOff.h:
  • svg/svgattrs.in:
  • svg/svgtags.in:
  • xml/XMLErrors.cpp:

(WebCore::XMLErrors::insertErrorMessageBlock):

  • xml/parser/XMLDocumentParser.cpp:

Source/WebKit:

  • PlatformEfl.cmake:

Source/WebKit/gtk:

  • GNUmakefile.am:
  • webkit/webkitwebframe.cpp:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.am:

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
  • TestWebKitAPI/GNUmakefile.am:
3:19 AM Changeset in webkit [163439] by zandobersek@gmail.com
  • 7 edits in trunk/Source/WebCore

Manage CalcExpressionNode and derived classes through std::unique_ptr instead of OwnPtr
https://bugs.webkit.org/show_bug.cgi?id=128118

Reviewed by Darin Adler.

Replace uses of OwnPtr for CalcExpressionNode and derived classes with std::unique_ptr.

  • css/CSSCalculationValue.cpp:

(WebCore::CSSCalcPrimitiveValue::toCalcValue):
(WebCore::CSSCalcBinaryOperation::toCalcValue):

  • css/CSSCalculationValue.h:
  • platform/CalculationValue.cpp:

(WebCore::CalculationValue::create):

  • platform/CalculationValue.h:

(WebCore::CalculationValue::CalculationValue):
(WebCore::CalcExpressionBinaryOperation::CalcExpressionBinaryOperation):

  • platform/Length.cpp:

(WebCore::Length::blendMixedTypes):

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShapeCenterCoordinate::updateComputedLength):

3:11 AM Changeset in webkit [163438] by Carlos Garcia Campos
  • 12 edits
    2 adds in releases/WebKitGTK/webkit-2.4

Merge r163329 - REGRESSION (r163018): Can’t scroll in <select> lists
https://bugs.webkit.org/show_bug.cgi?id=128090

Source/WebCore:

The regression was caused by the fact that a new method scrollWithWheelEventLocation() was added
to RenderBox to replace the generic scroll() method for the particular case of scrolling using
the mouse wheel. This turned out to be a mistake because in the case of some elements, like select lists,
the scroll method was overriden and now the incorrect method was being called.
The solution was to remove the new method and just add two default parameters to the generic
scroll method.

Patch by Radu Stavila <stavila@adobe.com> on 2014-02-03
Reviewed by Simon Fraser.

Test: fast/scrolling/scroll-select-list.html

  • page/EventHandler.cpp:

(WebCore::scrollNode):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::scroll):

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

(WebCore::RenderEmbeddedObject::scroll):

  • rendering/RenderEmbeddedObject.h:
  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::scroll):

  • rendering/RenderListBox.h:
  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::scroll):

  • rendering/RenderTextControlSingleLine.h:

LayoutTests:

New test validates scrolling using the mouse wheel inside a select list.
This test is for the moment added as a ImageOnlyFailure expectation
because the current implementation of eventSender cannot simulate mouse wheel events.

Patch by Radu Stavila <stavila@adobe.com> on 2014-02-03
Reviewed by Simon Fraser.

  • TestExpectations:
  • fast/scrolling/scroll-select-list-expected.html: Added.
  • fast/scrolling/scroll-select-list.html: Added.
3:01 AM Changeset in webkit [163437] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebInspectorUI

[GTK] Avoid no-op regenerations of GResourceBundle.xml, GResourceBundle.c
https://bugs.webkit.org/show_bug.cgi?id=128192

Reviewed by Carlos Garcia Campos.

When doing incremental builds, GResourceBundle.xml and GResourceBundle.c can be
generated when the dependencies are newer than the products, but the generation
doesn't necessarily produce a new or different product. This results in constant
regenerations for these two build targets. Touch the products at the end of
generation to avoid this looping.

  • GNUmakefile.am:
2:33 AM Changeset in webkit [163436] by zandobersek@gmail.com
  • 5 edits in trunk/Source

Remove CLASS_IF_GCC workarounds
https://bugs.webkit.org/show_bug.cgi?id=128207

Reviewed by Anders Carlsson.

Remove the CLASS_IF_GCC macro that was defined to 'class' when using the GCC compiler.
The macro was then used in class friendship declarations for templated classes to avoid
corner-case compiler failures on both GCC pre-4.7 and MSVC pre-2013. The problematic
versions of both compilers are no longer supported, so this macro is good to go.

Source/JavaScriptCore:

  • heap/HeapBlock.h:
  • heap/Region.h:

Source/WebCore:

  • bindings/generic/RuntimeEnabledFeatures.h:
2:25 AM Changeset in webkit [163435] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

MediaPlayerPrivateGStreamerBase should have virtual destructor
https://bugs.webkit.org/show_bug.cgi?id=128238

Reviewed by Carlos Garcia Campos.

MediaPlayerPrivateGStreamer inherit MediaPlayerPrivateGStreamerBase.
So MediaPlayerPrivateGStreamerBase should have virtual destructor.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: Made destructor as virtual.
2:19 AM Changeset in webkit [163434] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.4/Source

Unreviewed. Fix make distcheck.

Source/WebCore:

  • GNUmakefile.list.am:

Source/WebKit2:

  • GNUmakefile.list.am:
  • Shared/InteractionInformationAtPosition.h:
1:50 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
1:49 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
1:46 AM Changeset in webkit [163433] by zandobersek@gmail.com
  • 10 edits in trunk/Source

[GTK] Replace DEFINE_STATIC_LOCAL with NeverDestroyed<T> in GTK WK1 and WK2 code
https://bugs.webkit.org/show_bug.cgi?id=128195

Reviewed by Martin Robinson.

Use static NeverDestroyed<T> variables instead of the DEFINE_STATIC_LOCAL macro.

Source/WebKit/gtk:

  • WebCoreSupport/PlatformStrategiesGtk.cpp:

(PlatformStrategiesGtk::initialize):

  • WebCoreSupport/PlatformStrategiesGtk.h:
  • webkit/webkitwebsettings.cpp:

(isGoogleDomain):

Source/WebKit2:

  • UIProcess/API/gtk/WebKitBackForwardListItem.cpp:

(historyItemsMap):

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(downloadsMap):

  • UIProcess/gtk/WebPageProxyGtk.cpp:

(WebKit::pluginWindowMap):

  • WebProcess/gtk/WebGtkExtensionManager.cpp:

(WebKit::WebGtkExtensionManager::shared):

  • WebProcess/gtk/WebGtkExtensionManager.h:
1:34 AM WebKitGtkLayoutTests edited by Diego Pino Garcia
(diff)
1:02 AM Changeset in webkit [163432] by g.czajkowski@samsung.com
  • 7 edits in trunk/LayoutTests

Verify spellcheck attribute asynchronously
https://bugs.webkit.org/show_bug.cgi?id=128174

Reviewed by Sam Weinig.

Refactoring spelling tests that verify spellcheck attribute to use
asynchronous text checking.

  • editing/spelling/spelling-attribute-at-child-expected.txt:
  • editing/spelling/script-tests/spelling-attribute-at-child.js:

Do not use getElementById if more than one element has the same
id ('child'). Although we defined a bunch of elements with id
'child', however only first one was retrieved and tested.
Additionally, dump current markup so that user is able to see
which element is being tested.

  • editing/spelling/spelling-attribute-change-expected.txt:
  • editing/spelling/script-tests/spelling-attribute-change.js:
  • editing/spelling/spellcheck-attribute-expected.txt:
  • editing/spelling/spellcheck-attribute.html:

Dump markup to increase readability of test expectation.

Feb 4, 2014:

11:11 PM Changeset in webkit [163431] by rniwa@webkit.org
  • 2 edits
    4 copies in trunk

PerformanceTests: Undelete the "build" directory erroneously removed in r163427.

  • DoYouEvenBench/resources/todomvc/labs/architecture-examples/react/bower_components/director/build:

LayoutTests: Undelete the "build" directories erroneously removed in r163427.

  • webgl/1.0.2/conformance/ogles/GL/build:
  • webgl/1.0.2/resources/webgl_test_files/conformance/ogles/GL/build:
  • webgl/resources/webgl_test_files/conformance/ogles/GL/build:
11:00 PM Changeset in webkit [163430] by rniwa@webkit.org
  • 2 edits in trunk/PerformanceTests

Revert the change made in r162216 as it broke the benchmark on shipping Safari.

  • DoYouEvenBench/resources/benchmark-runner.js:
9:36 PM Changeset in webkit [163429] by rniwa@webkit.org
  • 18 edits
    5 adds
    2 deletes in trunk/PerformanceTests

DoYouEvenBench: Update Ember.js test case
https://bugs.webkit.org/show_bug.cgi?id=128227

Reviewed by Benjamin Poulain.

Updated the Ember.js TodoMVC implementation.

  • DoYouEvenBench/resources/tests.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower.json:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/ember-data/ember-data.js: Added.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/ember-localstorage-adapter/localstorage_adapter.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/ember/ember.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/handlebars/handlebars.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/jquery/jquery.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/base.css:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/base.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/index.html:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/app.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/controllers/todo_controller.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/controllers/todos_controller.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/helpers/pluralize.js: Added.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/libs/ember-data.js: Removed.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/models/store.js: Removed.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/models/todo.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/router.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/views/edit_todo_view.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/views/todos_view.js: Added.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/readme.md:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/test.html:
9:32 PM Changeset in webkit [163428] by mark.lam@apple.com
  • 5 edits in trunk/Source

The stack limit computation does not work for Windows.
<https://webkit.org/b/128226>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • llint/LowLevelInterpreter.cpp:

(JSC::CLoopRegister::CLoopRegister):
(JSC::CLoop::execute):

  • Suppressed some compiler warnings for the C loop build.
  • runtime/VM.cpp:

(JSC::VM::updateStackLimitWithReservedZoneSize):

  • Use the new StackBounds::recursionLimit() to compute the stack limit the right way.

Source/WTF:

The current stack limit computation assumes that the stack is allocated
in high memory. On Windows, the stack seems to be allocated very near
address 0, and is smaller in size than our Options::maxPerThreadStackUsage().
This combination triggers a bug where StackBounds::recursionLimit()
underflows and computes a limit address that is ridiculously high in memory.
The net effect is that the Windows port thinks its out of stack space all
the time.

We now check for potential underflows in StackBounds and return an
appropriate limit address.

  • wtf/StackBounds.h:

(WTF::StackBounds::recursionLimit):

8:59 PM Changeset in webkit [163427] by akling@apple.com
  • 79 edits
    14 deletes in trunk

Remove <iframe seamless> support.
<https://webkit.org/b/128213>

.:

Rubber-stamped by Antti Koivisto.

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

Source/JavaScriptCore:

Rubber-stamped by Antti Koivisto.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Seamless iframes were behind a runtime flag that we never enabled,
and the only other engine that implemented them (Blink) recently
removed them. Since the feature is very invasive, let's take it
out for now.

Rubber-stamped by Antti Koivisto.

  • Configurations/FeatureDefines.xcconfig:
  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::parentObjectIfExists):
(WebCore::AccessibilityRenderObject::parentObject):
(WebCore::AccessibilityRenderObject::boundingBoxRect):
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(createAccessibilityRoleMap):

  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):

  • bindings/generic/RuntimeEnabledFeatures.h:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::pseudoId):
(WebCore::populatePseudoTypeByNameMap):
(WebCore::CSSSelector::extractPseudoType):

  • css/CSSSelector.h:
  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle):

  • css/html.css:

(iframe):

  • dom/Document.cpp:

(WebCore::Document::scheduleStyleRecalc):
(WebCore::Document::implicitOpen):
(WebCore::Document::initSecurityContext):

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

(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):

  • dom/SecurityContext.cpp:

(WebCore::SecurityContext::SecurityContext):

  • dom/SecurityContext.h:
  • html/HTMLAttributeNames.in:
  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::HTMLIFrameElement):
(WebCore::HTMLIFrameElement::isPresentationAttribute):
(WebCore::HTMLIFrameElement::parseAttribute):

  • html/HTMLIFrameElement.h:
  • html/HTMLIFrameElement.idl:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::findFrameForNavigation):

  • page/FrameView.cpp:

(WebCore::FrameView::calculateScrollbarModesForLayout):
(WebCore::FrameView::isInChildFrameWithFrameFlattening):

  • page/Location.cpp:

(WebCore::Location::setLocation):

  • rendering/RenderBox.h:

(WebCore::RenderBox::stretchesToViewport):

  • rendering/RenderIFrame.cpp:

(WebCore::RenderIFrame::shouldComputeSizeAsReplaced):
(WebCore::RenderIFrame::isInlineBlockOrInlineTable):
(WebCore::RenderIFrame::flattenFrame):
(WebCore::RenderIFrame::layout):

  • rendering/RenderIFrame.h:
  • rendering/RenderView.cpp:

(WebCore::RenderView::initializeLayoutState):
(WebCore::RenderView::layout):

  • rendering/RenderView.h:
  • style/StyleResolveForDocument.cpp:

(WebCore::Style::resolveForDocument):

  • style/StyleResolveTree.cpp:

(WebCore::Style::resolveTree):

Source/WebKit/efl:

Rubber-stamped by Antti Koivisto.

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

(_ewk_view_priv_new):

Source/WebKit/gtk:

Rubber-stamped by Antti Koivisto.

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

Source/WebKit/mac:

Rubber-stamped by Antti Koivisto.

  • Configurations/FeatureDefines.xcconfig:
  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:
  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit/win:

Rubber-stamped by Antti Koivisto.

  • WebPreferences.h:
  • WebView.cpp:

(WebView::notifyPreferencesChanged):

Source/WebKit2:

Rubber-stamped by Antti Koivisto.

  • Configurations/FeatureDefines.xcconfig:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.h:

Source/WTF:

Rubber-stamped by Antti Koivisto.

  • wtf/FeatureDefines.h:

Tools:

Rubber-stamped by Antti Koivisto.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues):

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetWebPreferencesToConsistentValues):

  • DumpRenderTree/win/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues):

  • Scripts/webkitperl/FeatureList.pm:
  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::beginTesting):

WebKitLibraries:

Rubber-stamped by Antti Koivisto.

  • win/tools/vsprops/FeatureDefines.props:

LayoutTests:

Rubber-stamped by Antti Koivisto.

  • fast/frames/seamless/resources/css-cascade-child.html: Removed.
  • fast/frames/seamless/resources/done.html: Removed.
  • fast/frames/seamless/resources/nested-seamless.html: Removed.
  • fast/frames/seamless/resources/percent-square.html: Removed.
  • fast/frames/seamless/resources/quirks-square.html: Removed.
  • fast/frames/seamless/resources/span.html: Removed.
  • fast/frames/seamless/resources/square.html: Removed.
  • fast/frames/seamless/resources/two-inline-blocks.html: Removed.
  • fast/frames/seamless/seamless-basic-expected.txt: Removed.
  • fast/frames/seamless/seamless-basic.html: Removed.
  • fast/frames/seamless/seamless-body-margin-expected.txt: Removed.
  • fast/frames/seamless/seamless-body-margin.html: Removed.
  • fast/frames/seamless/seamless-border-padding-expected.txt: Removed.
  • fast/frames/seamless/seamless-border-padding.html: Removed.
  • fast/frames/seamless/seamless-contenteditable-not-inherited-expected.txt: Removed.
  • fast/frames/seamless/seamless-contenteditable-not-inherited.html: Removed.
  • fast/frames/seamless/seamless-css-cascade-expected.txt: Removed.
  • fast/frames/seamless/seamless-css-cascade.html: Removed.
  • fast/frames/seamless/seamless-custom-font-pruning-crash-expected.txt: Removed.
  • fast/frames/seamless/seamless-custom-font-pruning-crash.html: Removed.
  • fast/frames/seamless/seamless-designMode-expected.txt: Removed.
  • fast/frames/seamless/seamless-designMode.html: Removed.
  • fast/frames/seamless/seamless-document-write-expected.txt: Removed.
  • fast/frames/seamless/seamless-document-write.html: Removed.
  • fast/frames/seamless/seamless-float-expected.txt: Removed.
  • fast/frames/seamless/seamless-float.html: Removed.
  • fast/frames/seamless/seamless-form-get-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-get-named-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-get-named.html: Removed.
  • fast/frames/seamless/seamless-form-get-override-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-get-override.html: Removed.
  • fast/frames/seamless/seamless-form-get.html: Removed.
  • fast/frames/seamless/seamless-form-post-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-post-named-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-post-named.html: Removed.
  • fast/frames/seamless/seamless-form-post-override-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-post-override.html: Removed.
  • fast/frames/seamless/seamless-form-post.html: Removed.
  • fast/frames/seamless/seamless-hyperlink-expected.txt: Removed.
  • fast/frames/seamless/seamless-hyperlink-named-expected.txt: Removed.
  • fast/frames/seamless/seamless-hyperlink-named.html: Removed.
  • fast/frames/seamless/seamless-hyperlink-override-expected.txt: Removed.
  • fast/frames/seamless/seamless-hyperlink-override.html: Removed.
  • fast/frames/seamless/seamless-hyperlink.html: Removed.
  • fast/frames/seamless/seamless-inherited-document-style-expected.txt: Removed.
  • fast/frames/seamless/seamless-inherited-document-style.html: Removed.
  • fast/frames/seamless/seamless-inherited-origin-expected.txt: Removed.
  • fast/frames/seamless/seamless-inherited-origin.html: Removed.
  • fast/frames/seamless/seamless-inline-expected.txt: Removed.
  • fast/frames/seamless/seamless-inline.html: Removed.
  • fast/frames/seamless/seamless-min-max-expected.txt: Removed.
  • fast/frames/seamless/seamless-min-max.html: Removed.
  • fast/frames/seamless/seamless-nested-crash-expected.txt: Removed.
  • fast/frames/seamless/seamless-nested-crash.html: Removed.
  • fast/frames/seamless/seamless-nested-expected.txt: Removed.
  • fast/frames/seamless/seamless-nested.html: Removed.
  • fast/frames/seamless/seamless-percent-height-expected.txt: Removed.
  • fast/frames/seamless/seamless-percent-height.html: Removed.
  • fast/frames/seamless/seamless-quirks-expected.txt: Removed.
  • fast/frames/seamless/seamless-quirks.html: Removed.
  • fast/frames/seamless/seamless-sandbox-flag-expected.txt: Removed.
  • fast/frames/seamless/seamless-sandbox-flag.html: Removed.
  • fast/frames/seamless/seamless-sandbox-srcdoc-expected.txt: Removed.
  • fast/frames/seamless/seamless-sandbox-srcdoc.html: Removed.
  • fast/frames/seamless/seamless-srcdoc-expected.txt: Removed.
  • fast/frames/seamless/seamless-srcdoc.html: Removed.
  • fast/frames/seamless/seamless-window-location-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-location-href-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-location-href.html: Removed.
  • fast/frames/seamless/seamless-window-location-replace-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-location-replace.html: Removed.
  • fast/frames/seamless/seamless-window-location-sandbox-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-location-sandbox.html: Removed.
  • fast/frames/seamless/seamless-window-location.html: Removed.
  • fast/frames/seamless/seamless-window-open-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-open-override-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-open-override.html: Removed.
  • fast/frames/seamless/seamless-window-open.html: Removed.
  • fast/multicol/resources/seamless.html: Removed.
  • fast/multicol/seamless-flowed-through-columns-expected.html: Removed.
  • fast/multicol/seamless-flowed-through-columns.html: Removed.
  • fast/regions/resources/seamless.html: Removed.
  • fast/regions/seamless-iframe-flowed-into-regions-expected.html: Removed.
  • fast/regions/seamless-iframe-flowed-into-regions.html: Removed.
  • http/tests/security/seamless/resources/square.html: Removed.
  • http/tests/security/seamless/seamless-cross-origin-expected.txt: Removed.
  • http/tests/security/seamless/seamless-cross-origin.html: Removed.
  • http/tests/security/seamless/seamless-sandbox-srcdoc-expected.txt: Removed.
  • http/tests/security/seamless/seamless-sandbox-srcdoc.html: Removed.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
8:22 PM Changeset in webkit [163426] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG::operationTypeOf() needs to set the VM::topCallFrame.
<https://webkit.org/b/128228>

Reviewed by Mark Hahnenberg.

  • dfg/DFGOperations.cpp:
  • operationTypeOf() can end up calling into WebCore which may in turn call back to JSC, and need a valid VM::topCallFrame. So, we need to set the value of VM::topCallFrame at the top of operationTypeOf().
8:22 PM Changeset in webkit [163425] by timothy_horton@apple.com
  • 6 edits
    4 adds
    2 deletes in trunk/Source

[iOS][wk2] Make development builds of WebKit work on device
https://bugs.webkit.org/show_bug.cgi?id=128230

Reviewed by Anders Carlsson.

  • Configurations/NetworkService.Development.xcconfig:
  • Configurations/WebContentService.Development.xcconfig:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-OSX.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist.
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist.
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist: Renamed from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist.
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: Renamed from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist.

The Development services should match the non-Development version's behavior
of having separate plists for OS X and iOS.

  • platform/RuntimeApplicationChecksIOS.mm:

(WebCore::applicationIsWebProcess):
Add WebContent.Development as an additional name for the WebContent process.

8:10 PM Changeset in webkit [163424] by zoltan@webkit.org
  • 2 edits
    4 adds in trunk/PerformanceTests

[CSS Shapes] Add initial performance test for shape-outside: content-box
https://bugs.webkit.org/show_bug.cgi?id=128190

Reviewed by Ryosuke Niwa.

I've introduced Shapes subdirectory in Layout, every CSS Shapes related performance tests should
go there in the future. The initial performance tests uses 'shape-outside: content-box' in order
to tests the code paths of the Shapes implementation. I also introduced shapes.js, which allows us
to easily add new, simple performance tests for shape-outside.

The entire progress is tracked under #128188 meta bug.

  • Layout/Shapes/ShapeOutsideContentBox.html: Added.
  • Layout/Shapes/resources/shapes.css: Added.
  • Layout/Shapes/resources/shapes.js: Added.
  • Skipped: We skip running the tests by default for now.
7:20 PM Changeset in webkit [163423] by fpizlo@apple.com
  • 2 edits in trunk/Tools

Fix build when the script is called from Xcode.

  • Scripts/copy-webkitlibraries-to-product-directory:
6:56 PM Changeset in webkit [163422] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

And one more test to tag with ImageOnlyFailure.

5:54 PM Changeset in webkit [163421] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

Some tests introduced by 163415 need ImageOnlyFailure tag.

Unreviewed gardering.

5:35 PM Changeset in webkit [163420] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix !ENABLE(JIT) builds after r163418

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::reoptimizationRetryCounter): Return 0 if there's no way for us to reoptimize.

5:28 PM Changeset in webkit [163419] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Reduce boilerplate in BlockAllocator.h
https://bugs.webkit.org/show_bug.cgi?id=128222

Reviewed by Filip Pizlo.

There are a lot of template specializations for the various types of HeapBlocks
in BlockAllocator.h. We could reduce the spew by using a macro.

  • heap/BlockAllocator.h:
5:03 PM Changeset in webkit [163418] by fpizlo@apple.com
  • 13 edits
    3 adds
    3 deletes in trunk

DFG PutByVal on typed arrays should detect OutOfBounds sooner
https://bugs.webkit.org/show_bug.cgi?id=128162

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg.

Just wire the m_outOfBounds flag in ArrayProfile into the OutOfBounds speculation in
DFG::ArrayMode for typed arrays.

Also make it possible to have tests for convergence.

Also turn one of the LayoutTests/js/dfg- tests into a stress test because it
was relying on a specific number of recompiles. Stress tests instead take
the approach of just running for a while. That's more robust.

  • bytecode/CodeBlock.h:
  • dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::fromObserved):
(JSC::DFG::ArrayMode::refine):

  • dfg/DFGArrayMode.h:

(JSC::DFG::ArrayMode::withSpeculationFromProfile):
(JSC::DFG::ArrayMode::withProfile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compilePutByVal):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitIntTypedArrayPutByVal):
(JSC::JIT::emitFloatTypedArrayPutByVal):

  • jsc.cpp:

(GlobalObject::finishCreation):
(functionReoptimizationRetryCount):

  • runtime/TestRunnerUtils.cpp:

(JSC::getExecutableForFunction):
(JSC::getSomeBaselineCodeBlockForFunction):
(JSC::numberOfDFGCompiles):
(JSC::setNeverInline):

  • runtime/TestRunnerUtils.h:
  • tests/stress/float32-repeat-out-of-bounds.js: Added.

(foo):

  • tests/stress/int8-repeat-out-of-bounds.js: Added.

(foo):

  • tests/stress/string-out-of-bounds-negative-proto-value.js: Added.

(foo):

Tools:

Reviewed by Mark Hahnenberg.

Add a defautNoEagerRun, which is intended to be used for convergence tests.

  • Scripts/run-jsc-stress-tests:

LayoutTests:

Reviewed by Mark Hahnenberg.

dfg-string-out-of-blahblah was moved to JSC/tests/stress.

dfg-convert-this-dom-window was using dfgShouldBe() incorrectly and this got revealed
by my TestRunnerUtils refactoring.

  • js/dfg-string-out-of-bounds-negative-proto-value-expected.txt: Removed.
  • js/dfg-string-out-of-bounds-negative-proto-value.html: Removed.
  • js/script-tests/dfg-convert-this-dom-window.js:
  • js/script-tests/dfg-string-out-of-bounds-negative-proto-value.js: Removed.
4:26 PM Changeset in webkit [163417] by beidson@apple.com
  • 12 edits in trunk

IDB: indexeddb/mozilla/add-twice-failure.html fails
<rdar://problem/15982569> and https://bugs.webkit.org/show_bug.cgi?id=128208

Reviewed by Tim Horton.

Source/WebCore:

Covered specifically by indexeddb/mozilla/add-twice-failure.html and a handful of others.

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onError): Improve logging.

  • Modules/indexeddb/IDBTransactionBackend.cpp:

(WebCore::IDBTransactionBackend::abort): Improve logging.

  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::PutOperation::perform): Don’t abort the transaction when an error occurred.

  • WebCore.exp.in:

Source/WebKit2:

Note that besides making indexeddb/mozilla/add-twice-failure.html pass this also makes some other tests
pass and also improves the failure modes of others.

A full accounting of which tests pass is coming soon.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::putRecordInBackingStore): After checking for existence of the key and before

adding the record, remove any previous record. (Defined by the spec, found exploring this test).

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::keyExistsInObjectStore): Implement this.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteRecord): Add a form to be used as mentioned above in

UniqueIDBDatabase::putRecordInBackingStore.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRecordFromObjectStore): CAST the key argument properly.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRangeRecordFromObjectStore): Ditto.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

LayoutTests:

  • platform/mac-wk2/TestExpectations: Reenable this test for WK2
4:23 PM Changeset in webkit [163416] by andersca@apple.com
  • 3 edits in trunk/Source/WTF

Store StringImpl substring backpointers as tail data
https://bugs.webkit.org/show_bug.cgi?id=128220

Reviewed by Geoffrey Garen.

This lets us get rid of m_substringBuffer from the union.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::~StringImpl):
(WTF::StringImpl::getData16SlowCase):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::StringImpl):
(WTF::StringImpl::createSubstringSharingImpl8):
(WTF::StringImpl::createSubstringSharingImpl):
(WTF::StringImpl::cost):
(WTF::StringImpl::costDuringGC):
(WTF::StringImpl::substringBuffer):

4:09 PM Changeset in webkit [163415] by commit-queue@webkit.org
  • 32 edits
    1 copy
    32 adds
    6 deletes in trunk

Use srcset's pixel density to determine intrinsic size
https://bugs.webkit.org/show_bug.cgi?id=123832

Patch by Yoav Weiss <yoav@yoav.ws> on 2014-02-04
Reviewed by Dean Jackson.

The patch is a port of a similar Blink patch: https://codereview.chromium.org/25105004
According to the spec "When an img element has a current pixel density that is not 1.0,
the element's image data must be treated as if its resolution, in device pixels per CSS pixels,
was the current pixel density."

Source/WebCore:

I've added that support using the following changes:

  • bestFitSourceForImageAttributes now returns the image candidate to HTMLImageElement.
  • HTMLImageElement passes the devicePixelRatio data to RenderImage, which stores it.
  • Bitmap images are scaled using the devicePixelRatio at RenderImageResource's intrinsicSize() and imageSize().
  • SVG images are scaled using the devicePixelRatio at RenderReplaced::computeAspectRatioInformationForRenderBox.
  • Canvas support added at CanvasRenderingContext2D::size.

Tests: fast/hidpi/image-srcset-intrinsic-size.html

fast/hidpi/image-srcset-png-canvas.html
fast/hidpi/image-srcset-png.html
fast/hidpi/image-srcset-relative-svg-canvas-2x.html
fast/hidpi/image-srcset-relative-svg.html
fast/hidpi/image-srcset-space-left-nomodifier.html
fast/hidpi/image-srcset-svg-canvas-2x.html
fast/hidpi/image-srcset-svg-canvas.html
fast/hidpi/image-srcset-svg.html
fast/hidpi/image-srcset-svg2.html

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::HTMLImageElement):
(WebCore::HTMLImageElement::parseAttribute):
(WebCore::HTMLImageElement::createRenderer):

  • html/HTMLImageElement.h:
  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::size):
(WebCore::CanvasRenderingContext2D::drawImage):

  • html/parser/HTMLParserIdioms.cpp:

(WebCore::compareByScaleFactor):
(WebCore::parseImagesWithScaleFromSrcsetAttribute):
(WebCore::bestFitSourceForImageAttributes):

  • html/parser/HTMLParserIdioms.h:

(WebCore::ImageWithScale::ImageWithScale):
(WebCore::ImageWithScale::imageURL):
(WebCore::ImageWithScale::scaleFactor):

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::RenderImage):

  • rendering/RenderImage.h:

(WebCore::RenderImage::setImageDevicePixelRatio):
(WebCore::RenderImage::imageDevicePixelRatio):

  • rendering/RenderImageResource.cpp:

(WebCore::RenderImageResource::imageSize):
(WebCore::RenderImageResource::intrinsicSize):
(WebCore::RenderImageResource::getImageSize):

  • rendering/RenderImageResource.h:
  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeAspectRatioInformationForRenderBox):

LayoutTests:

Layout test changes include modifications of existing tests to accomodate the new image dimensions, as well as new tests for this
specific functionality.

  • fast/hidpi/image-srcset-change-dynamically-from-js-2x-expected.txt:
  • fast/hidpi/image-srcset-change-dynamically-from-js-2x.html:
  • fast/hidpi/image-srcset-data-escaped-srcset-expected.txt:
  • fast/hidpi/image-srcset-data-escaped-srcset.html:
  • fast/hidpi/image-srcset-data-src.html:
  • fast/hidpi/image-srcset-data-srcset.html:
  • fast/hidpi/image-srcset-fraction.html:
  • fast/hidpi/image-srcset-intrinsic-size-expected.txt: Added.
  • fast/hidpi/image-srcset-intrinsic-size.html: Added.
  • fast/hidpi/image-srcset-invalid-inputs-correct-src-expected.txt:
  • fast/hidpi/image-srcset-invalid-inputs-correct-src.html:
  • fast/hidpi/image-srcset-invalid-inputs.html:
  • fast/hidpi/image-srcset-invalid-inputs-expected.txt: Added.
  • fast/hidpi/image-srcset-only-src-attribute-expected.txt: Added.
  • fast/hidpi/image-srcset-only-src-attribute.html:
  • fast/hidpi/image-srcset-png-canvas-expected.html: Added.
  • fast/hidpi/image-srcset-png-canvas.html: Added.
  • fast/hidpi/image-srcset-png-expected.html: Added.
  • fast/hidpi/image-srcset-png.html: Added.
  • fast/hidpi/image-srcset-relative-svg-expected.html: Added.
  • fast/hidpi/image-srcset-relative-svg.html: Added.
  • fast/hidpi/image-srcset-remove-dynamically-from-js.html:
  • fast/hidpi/image-srcset-simple-2x-expected.txt:
  • fast/hidpi/image-srcset-simple-2x.html:
  • fast/hidpi/image-srcset-space-left-nomodifier-expected.txt: Added.
  • fast/hidpi/image-srcset-space-left-nomodifier.html: Copied from LayoutTests/fast/hidpi/image-srcset-data-srcset.html.
  • fast/hidpi/image-srcset-svg-expected.html: Added.
  • fast/hidpi/image-srcset-svg.html: Added.
  • fast/hidpi/image-srcset-svg2-expected.html: Added.
  • fast/hidpi/image-srcset-svg2.html: Added.
  • fast/hidpi/resources/green-400-px-square.png: Added.
  • fast/hidpi/resources/relativesrcset.svg: Added.
  • fast/hidpi/resources/srcset-helper.js:

(runTest):

  • fast/hidpi/resources/srcset.png: Added.
  • fast/hidpi/resources/srcset.svg: Added.
  • fast/hidpi/resources/srcset_100px.svg: Added.
  • fast/hidpi/resources/svg_canvas_helper.js: Added.

(drawCanvas):

  • fast/hidpi/resources/svg_tests.css: Added.

(.test):
(.test img, .test canvas):
(.test .stats):
(.expected, .actual):

  • platform/mac/fast/hidpi/image-srcset-only-src-attribute-expected.png: Removed.
  • platform/mac/fast/hidpi/image-srcset-only-src-attribute-expected.txt: Removed.

The following tests were added, but skipped, since they reveal an unrelated SVG on canvas rendering issue:

  • fast/hidpi/image-srcset-svg-canvas-2x-expected.html: Added.
  • fast/hidpi/image-srcset-svg-canvas-2x.html: Added.
  • fast/hidpi/image-srcset-svg-canvas-expected.html: Added.
  • fast/hidpi/image-srcset-svg-canvas.html: Added.
  • fast/hidpi/image-srcset-relative-svg-canvas-2x-expected.html: Added.
  • fast/hidpi/image-srcset-relative-svg-canvas-2x.html: Added.
  • fast/hidpi/image-srcset-relative-svg-canvas-expected.html: Added.
  • fast/hidpi/image-srcset-relative-svg-canvas.html: Added.
4:08 PM Changeset in webkit [163414] by mhahnenberg@apple.com
  • 9 edits
    2 adds
    1 delete in trunk/Source/JavaScriptCore

Refactor MarkStackArray to allow more than JSCells to be stored
https://bugs.webkit.org/show_bug.cgi?id=128203

Reviewed by Geoffrey Garen.

This patch refactors MarkStackArray into a separate template class named GCSegmentedArray.
This class allows subclassing to add functionality that only MarkStackArray wants.
Since it uses the JSC BlockAllocator instead of FastMalloc, this class can be used during
conservative stack scanning, which disallows using FastMalloc.

  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • heap/BlockAllocator.h:
  • heap/GCSegmentedArray.h: Added.

(JSC::GCArraySegment::GCArraySegment):
(JSC::GCArraySegment::data):

  • heap/GCSegmentedArrayInlines.h: Added.

(JSC::GCSegmentedArray<T>::GCSegmentedArray):
(JSC::GCSegmentedArray<T>::~GCSegmentedArray):
(JSC::GCSegmentedArray<T>::clear):
(JSC::GCSegmentedArray<T>::expand):
(JSC::GCSegmentedArray<T>::refill):
(JSC::GCSegmentedArray<T>::fillVector):
(JSC::GCArraySegment<T>::create):
(JSC::GCSegmentedArray<T>::postIncTop):
(JSC::GCSegmentedArray<T>::preDecTop):
(JSC::GCSegmentedArray<T>::setTopForFullSegment):
(JSC::GCSegmentedArray<T>::setTopForEmptySegment):
(JSC::GCSegmentedArray<T>::top):
(JSC::GCSegmentedArray<T>::validatePrevious):
(JSC::GCSegmentedArray<T>::append):
(JSC::GCSegmentedArray<T>::canRemoveLast):
(JSC::GCSegmentedArray<T>::removeLast):
(JSC::GCSegmentedArray<T>::isEmpty):
(JSC::GCSegmentedArray<T>::size):

  • heap/MarkStack.cpp:

(JSC::MarkStackArray::MarkStackArray):
(JSC::MarkStackArray::~MarkStackArray):
(JSC::MarkStackArray::donateSomeCellsTo):
(JSC::MarkStackArray::stealSomeCellsFrom):

  • heap/MarkStack.h:
  • heap/MarkStackInlines.h:
3:57 PM Changeset in webkit [163413] by ggaren@apple.com
  • 41 edits in trunk

Rolled out <http://trac.webkit.org/changeset/163280>:

Source/WebCore:

Push DOM attributes into the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=127969

It caused performance regressions, and broken websites on iOS.

Reviewed by Geoffrey Garen.

  • bindings/js/JSDOMBinding.h:

(WebCore::getStaticValueSlotEntryWithoutCaching):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::nameGetter):
(WebCore::JSStorage::deleteProperty):
(WebCore::JSStorage::putDelegate):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(InstanceOverridesGetOwnPropertySlot):
(PrototypeOverridesGetOwnPropertySlot):
(GenerateAttributesHashTable):
(GenerateImplementation):

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

(WebCore::jsTestActiveDOMObjectConstructor):

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

(WebCore::jsTestCustomNamedGetterConstructor):

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

(WebCore::JSTestEventConstructor::getOwnPropertySlot):
(WebCore::jsTestEventConstructorConstructor):

  • bindings/scripts/test/JS/JSTestEventConstructor.h:
  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::jsTestEventTargetConstructor):

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

(WebCore::jsTestExceptionConstructor):

  • bindings/scripts/test/JS/JSTestException.h:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:

(WebCore::JSTestGenerateIsReachable::getOwnPropertySlot):
(WebCore::jsTestGenerateIsReachableConstructor):

  • bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::jsTestInterfaceConstructor):

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

(WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlot):
(WebCore::JSTestMediaQueryListListener::getOwnPropertySlot):
(WebCore::jsTestMediaQueryListListenerConstructor):

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

(WebCore::JSTestNamedConstructor::getOwnPropertySlot):
(WebCore::jsTestNamedConstructorConstructor):

  • bindings/scripts/test/JS/JSTestNamedConstructor.h:
  • bindings/scripts/test/JS/JSTestNode.cpp:

(WebCore::JSTestNode::getOwnPropertySlot):
(WebCore::jsTestNodeConstructor):

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

(WebCore::jsTestObjConstructor):

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

(WebCore::JSTestOverloadedConstructors::getOwnPropertySlot):
(WebCore::jsTestOverloadedConstructorsConstructor):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
(WebCore::jsTestSerializedScriptValueInterfaceConstructor):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::JSTestTypedefsPrototype::getOwnPropertySlot):
(WebCore::jsTestTypedefsConstructor):

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

(WebCore::JSattribute::getOwnPropertySlot):
(WebCore::jsattributeConstructor):

  • bindings/scripts/test/JS/JSattribute.h:
  • bindings/scripts/test/JS/JSreadonly.cpp:

(WebCore::JSreadonly::getOwnPropertySlot):
(WebCore::jsreadonlyConstructor):

  • bindings/scripts/test/JS/JSreadonly.h:

LayoutTests:

Push DOM attributes into the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=127969

It caused performance regressions, and broken websites on iOS.

Reviewed by Geoffrey Garen.

  • fast/dom/Geolocation/enabled-expected.txt:
  • fast/dom/Geolocation/script-tests/enabled.js:
  • fast/dom/wrapper-classes-expected.txt:
  • http/tests/security/cross-frame-access-enumeration-expected.txt:
  • js/dom/constructor-attributes-expected.txt:
  • js/dom/delete-syntax-expected.txt:
  • js/dom/dom-attributes-on-mismatch-type-expected.txt:
  • js/dom/dom-attributes-on-mismatch-type.html:
  • js/dom/dom-static-property-for-in-iteration-expected.txt:
  • js/dom/script-tests/constructor-attributes.js:
  • js/dom/script-tests/delete-syntax.js:
3:55 PM Changeset in webkit [163412] by mitz@apple.com
  • 7 edits in trunk/Source/WebKit2

[Cocoa] Expose more WKWebProcessPlugInNodeHandle properties
https://bugs.webkit.org/show_bug.cgi?id=128219

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.h: Declared new

properties.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:

(-[WKWebProcessPlugInNodeHandle elementBounds]): Added.
(-[WKWebProcessPlugInNodeHandle HTMLInputElementIsAutoFilled]): Added.
(-[WKWebProcessPlugInNodeHandle setHTMLInputElementIsAutoFilled:]): Added.
(-[WKWebProcessPlugInNodeHandle HTMLInputELementIsUserEdited]): Added.
(-[WKWebProcessPlugInNodeHandle HTMLTextAreaELementIsUserEdited]): Added.
(-[WKWebProcessPlugInNodeHandle HTMLTableCellElementCellAbove]): Added.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandleInternal.h: Rolled

Internal category into the class extension.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.h: Declared

-clearWrappers.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.mm:

(-[WKWebProcessPlugInScriptWorld clearWrappers]): Added. Calls through to clearWrappers().

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorldInternal.h: Rolled

Internal category into the class extension.

3:50 PM Changeset in webkit [163411] by fpizlo@apple.com
  • 2 edits in trunk/Tools

export-llvm-build should work with git checkouts
https://bugs.webkit.org/show_bug.cgi?id=128217

Reviewed by Mark Hahnenberg.

If svn export fails, just do ditto.

  • Scripts/export-llvm-build:
3:40 PM Changeset in webkit [163410] by andersca@apple.com
  • 9 edits in trunk/Source

Rename the substring sharing StringImpl::create variants to better indicate what they do
https://bugs.webkit.org/show_bug.cgi?id=128214

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • runtime/JSString.h:

(JSC::jsSingleCharacterSubstring):
(JSC::jsSubstring8):
(JSC::jsSubstring):

  • runtime/SmallStrings.cpp:

(JSC::SmallStringsStorage::SmallStringsStorage):

  • runtime/StringPrototype.cpp:

(JSC::jsSpliceSubstrings):
(JSC::jsSpliceSubstringsWithSeparators):
(JSC::replaceUsingStringSearch):

Source/WTF:

  • wtf/text/AtomicString.cpp:

(WTF::SubstringTranslator::translate):

  • wtf/text/StringBuilder.cpp:

(WTF::StringBuilder::reifyString):
(WTF::StringBuilder::resize):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::createSubstringSharingImpl8):
(WTF::StringImpl::createSubstringSharingImpl):

  • wtf/text/WTFString.cpp:

(WTF::String::substringSharingImpl):

3:33 PM Changeset in webkit [163409] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

webKitCookieStorageCopyRequestHeaderFieldsForURL builds an empty Cookie header when there are no cookies
https://bugs.webkit.org/show_bug.cgi?id=128201

Reviewed by Sam Weinig.

  • Shared/mac/CookieStorageShim.mm: (WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL):

Return null when NetworkProcess provided a null string, don't build a header dictionary
with an empty Cookie value.

3:33 PM Changeset in webkit [163408] by Alan Bujtas
  • 4 edits in branches/safari-537.74-branch/LayoutTests

Fix src path for js-test-*.js

Unreviewed.

  • fast/css/pending-image-crash.xhtml:
  • js/array-splice-with-holes.html:
  • platform/mac/accessibility/text-marker-for-bounds.html:
3:31 PM Changeset in webkit [163407] by ap@apple.com
  • 8 edits
    2 adds in trunk/Source

WebCrypto HMAC verification uses a non-constant-time memcmp
https://bugs.webkit.org/show_bug.cgi?id=128198
<rdar://problem/15976961>

Reviewed by Oliver Hunt.

Source/WebCore:

  • crypto/mac/CryptoAlgorithmHMACMac.cpp: (WebCore::CryptoAlgorithmHMAC::platformVerify):

Use a constant time memcmp.

Source/WTF:

Added a "constant time" memcmp that doesn't depend on data. The name is somewhat
strange, as the function is of course O(length) and not constant time at all,
but apparently this is how everyone calls such functions.

  • GNUmakefile.list.am:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/CryptographicUtilities.cpp: Added. (WTF::constantTimeMemcmp):
  • wtf/CryptographicUtilities.h: Added.
3:24 PM Changeset in webkit [163406] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Add WK2 event handling path for iOS, and make Mac and iOS code more similar
https://bugs.webkit.org/show_bug.cgi?id=128199

Reviewed by Sam Weinig.

EventHandlerIOS need some changes for WebKit2, where we have no native
widget. Merge those changes from EventHandlerMac.

Make a few drive-by changes to match EventHandlerMac behavior.

Clean up EventHandlerMac, removing trailing whitespace and fixing
the odd comment.

  • page/ios/EventHandlerIOS.mm:

(WebCore::EventHandler::passWidgetMouseDownEventToWidget):
(WebCore::EventHandler::passMouseDownEventToWidget):
(WebCore::EventHandler::passSubframeEventToSubframe):
(WebCore::EventHandler::passWheelEventToWidget):
(WebCore::EventHandler::mouseDown):
(WebCore::EventHandler::mouseMoved):
(WebCore::frameHasPlatformWidget):
(WebCore::EventHandler::passMousePressEventToSubframe):
(WebCore::EventHandler::passMouseMoveEventToSubframe):
(WebCore::EventHandler::passMouseReleaseEventToSubframe):

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::passWidgetMouseDownEventToWidget):
(WebCore::EventHandler::passMouseDownEventToWidget):
(WebCore::findViewInSubviews):
(WebCore::EventHandler::eventLoopHandleMouseUp):
(WebCore::EventHandler::passWheelEventToWidget):
(WebCore::EventHandler::mouseMoved):

3:21 PM Changeset in webkit [163405] by andersca@apple.com
  • 3 edits
    3 adds in trunk/Source/WebKit2

Add a WKNavigationAction object
https://bugs.webkit.org/show_bug.cgi?id=128212

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKNavigationAction.h: Added.

(NS_ENUM):

  • UIProcess/API/Cocoa/WKNavigationAction.mm: Added.
  • UIProcess/API/Cocoa/WKNavigationActionInternal.h: Added.
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::toWKNavigationType):
(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):

  • WebKit2.xcodeproj/project.pbxproj:
2:41 PM Changeset in webkit [163404] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add back/forward related methods to WKWebView
https://bugs.webkit.org/show_bug.cgi?id=128209

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView canGoBack]):
(-[WKWebView canGoForward]):
(-[WKWebView goBack]):
(-[WKWebView goForward]):

2:22 PM Changeset in webkit [163403] by mhahnenberg@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/ChangeLog

Remove conflict markers from ChangeLog

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

[OSX] Limit progress bar's dimensions to ushort
https://bugs.webkit.org/show_bug.cgi?id=128019

Wordaround a crash in Quartz until <rdar://problem/15855086> is fixed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-04
Reviewed by Sam Weinig.

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::progressBarRectForBounds):

1:50 PM Changeset in webkit [163401] by andersca@apple.com
  • 9 edits in trunk/Source

Rename StringImpl::getCharacters to StringImpl::characters
https://bugs.webkit.org/show_bug.cgi?id=128205

Reviewed by Antti Koivisto.

Source/JavaScriptCore:

Update for WTF changes.

  • runtime/JSStringJoiner.cpp:

(JSC::joinStrings):

  • runtime/StringPrototype.cpp:

(JSC::splitStringByOneCharacterImpl):

Source/WebCore:

Update for WTF changes.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::createTextRuns):

Source/WTF:

This lets us use StringImpl::getCharacters for the upconverting version.
Also, change StringImpl::characters<UChar>() to call characters16() instead of deprecatedCharacters()
and audit all call sites to make sure we weren't relying on upconversion anywhere.

  • wtf/text/AtomicString.cpp:

(WTF::findString):

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::simplifyMatchedCharactersToSpace):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::characters<LChar>):
(WTF::StringImpl::characters<UChar>):

1:40 PM Changeset in webkit [163400] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WK: Cannot select text inside clickable containers.
https://bugs.webkit.org/show_bug.cgi?id=128197
<rdar://problem/15970890>

Reviewed by Simon Fraser.

When retrieving position information, we first try to
find the node responding to click events because we want
to know whether we are on a link or an image to show
the appropriate action sheet.
We could still have a node responding to click events if
for example we have a DIV with a click handler but that
doesn't require any special handling and we still need to
perform regular hit testing.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getPositionInformation):

1:39 PM Changeset in webkit [163399] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix a mismatch of uint64_t and size_t on 32-bit platforms.

  • ftl/FTLDWARFDebugLineInfo.h:
1:32 PM Changeset in webkit [163398] by andersca@apple.com
  • 6 edits in trunk/Source

Rename equalNonNull to equal and make it take const StringImpl& instead
https://bugs.webkit.org/show_bug.cgi?id=128206

Reviewed by Andreas Kling.

Source/WebCore:

  • html/parser/HTMLParserIdioms.cpp:

(WebCore::threadSafeEqual):
(WebCore::threadSafeMatch):

Source/WTF:

  • wtf/text/StringHash.h:

(WTF::StringHash::equal):

  • wtf/text/StringImpl.cpp:

(WTF::stringImplContentEqual):
(WTF::equal):

  • wtf/text/StringImpl.h:
1:27 PM Changeset in webkit [163397] by mhahnenberg@apple.com
  • 4 edits
    2 adds in trunk/Source/JavaScriptCore

JSC needs to be able to parse DWARF debug_line info
https://bugs.webkit.org/show_bug.cgi?id=127394

Reviewed by Geoffrey Garen.

If we want to encode IR maps in the DWARF debug line info metadata generated by LLVM,
we'll need to know how to decode the .debug_line DWARF section. This patch implements
an interpreter for the .debug_line DWARF section in accordance with the version 3 spec
published at http://www.dwarfstd.org.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • ftl/FTLDWARFDebugLineInfo.cpp: Added.

(JSC::FTL::DebugLineInterpreter::DebugLineInterpreter):
(JSC::FTL::read):
(JSC::FTL::DebugLineInterpreter::parseULEB128):
(JSC::FTL::DebugLineInterpreter::parseSLEB128):
(JSC::FTL::DebugLineInterpreter::run):
(JSC::FTL::DebugLineInterpreter::parsePrologue):
(JSC::FTL::DebugLineInterpreter::parseIncludeDirectories):
(JSC::FTL::DebugLineInterpreter::parseFileEntries):
(JSC::FTL::DebugLineInterpreter::parseFileEntry):
(JSC::FTL::DebugLineInterpreter::interpretStatementProgram):
(JSC::FTL::DebugLineInterpreter::interpretOpcode):
(JSC::FTL::DebugLineInterpreter::printLineInfo):
(JSC::FTL::DebugLineInterpreter::resetInterpreterState):

  • ftl/FTLDWARFDebugLineInfo.h: Added.

(JSC::FTL::DebugLineInterpreter::Prologue::Prologue):

  • ftl/FTLValueRange.cpp: Random build fix for !ENABLE(FTL_JIT).
12:28 PM Changeset in webkit [163396] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Get rid of StringImpl::m_buffer
https://bugs.webkit.org/show_bug.cgi?id=128200

Reviewed by Michael Saboff.

Trade one lousy hack for another by changing the CreateEmptyUnique StringImpl
constructor to initialize its character buffer to point to m_length instead
since it will always be null.

Also change it to be an 8-bit string because why not.

  • wtf/text/StringImpl.h:

(WTF::StringImpl::StringImpl):

11:59 AM WebInspectorCodingStyleGuide edited by BJ Burg
Tip about event naming convention (diff)
11:36 AM Changeset in webkit [163395] by Lucas Forschler
  • 41 edits in tags/Safari-538.16.1

Rollout 163280.

11:32 AM Changeset in webkit [163394] by andersca@apple.com
  • 7 edits in trunk/Source

Rename String::getCharacters to String::characters
https://bugs.webkit.org/show_bug.cgi?id=128196

Reviewed by Andreas Kling.

Source/JavaScriptCore:

Update for WTF::String changes.

  • yarr/YarrParser.h:

(JSC::Yarr::Parser::Parser):

Source/WebCore:

Update for WTF::String changes.

  • dom/Document.cpp:

(WebCore::canonicalizedTitle):

Source/WTF:

This means String::characters() will end up calling either characters8() or characters16() which
makes more logical sense. It also frees up the getCharacters name so we can use it for a new function
that will do upconversion.

  • wtf/text/StringBuilder.cpp:

(WTF::StringBuilder::appendUninitializedSlow):

  • wtf/text/WTFString.h:

(WTF::String::characters<LChar>):
(WTF::String::characters<UChar>):

11:22 AM Changeset in webkit [163393] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Fix Release build after r163390.

  • platform/audio/MediaSession.cpp: Add "#if !LOG_DISABLED" around logging-only function.
11:21 AM WebInspectorCodingStyleGuide edited by BJ Burg
Organize the various advices, add nits about forEach vs. for..of and … (diff)
11:10 AM Changeset in webkit [163392] by Brent Fulgham
  • 9 edits
    1 copy in branches/safari-537.75-branch

Source/WebCore: Build fix after last branch merge.

  • WebCore.vcxproj/WebCore.vcxproj: Correct bad merge of media build steps.

Source/WebInspectorUI: Merge r154395.

2013-08-20 Brent Fulgham <Brent Fulgham>

<http://webkit.org/b/120098> [Windows] Enable the New Web Inspector

Reviewed by Brian Weinstein.

Add a new project to copy files to the appropriate spots in the
Windows port.

  • WebInspectorUI.vcxproj: Added.
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj: Added.
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters: Added.
  • WebInspectorUI.vcxproj/WebInspectorUIPostBuild.cmd: Added.
  • WebInspectorUI.vcxproj/WebInspectorUIPreBuild.cmd: Added.

Source/WebKit: Merge r154395.

2013-08-20 Brent Fulgham <Brent Fulgham>

<https://webkit.org/b/120098> [Windows] Enable the new Web Inspector

Reviewed by Brian Weinstein.

  • WebKit.vcxproj/WebKit.sln: Add reference to the new WebInspectorUI project so that it will be included in new distributions.

Source/WebKit/win: Merge r154394

2013-08-20 Brent Fulgham <Brent Fulgham>

<https://webkit.org/b/120098> [Windows] Enable the New Web Inspector

Reviewed by Brian Weinstein.

  • WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::openInspectorFrontend): Use the new inspector if present in the WebKit distribution. (WebInspectorFrontendClient::localizedStringsURL): Use the new Web Inspector's localized strings (if present).
11:09 AM Changeset in webkit [163391] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

ASSERT in speculateMachineInt on 32-bit platforms
https://bugs.webkit.org/show_bug.cgi?id=128155

Reviewed by Filip Pizlo.

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

11:09 AM Changeset in webkit [163390] by eric.carlson@apple.com
  • 23 edits
    2 adds
    2 deletes in trunk

Refine MediaSession interruptions
https://bugs.webkit.org/show_bug.cgi?id=128125

Reviewed by Jer Noble.

Source/WebCore:

Test: media/video-background-playback.html

  • WebCore.exp.in: Export applicationWillEnterForeground and applicationWillEnterBackground for

Internals.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::play): Ask the media session if playback is allowed instead of check

to see if it is interrupted directly.

(WebCore::HTMLMediaElement::pause): Ask the media session if pausing is allowed instead of check

to see if it is interrupted directly.

(WebCore::HTMLMediaElement::mediaType): Return media type based on media characteristics once

the information is available.

(WebCore::HTMLMediaElement::resumePlayback): New.

  • html/HTMLMediaElement.h:
  • html/HTMLMediaSession.cpp:

(WebCore::restrictionName): New, use for logging only.
(WebCore::HTMLMediaSession::addBehaviorRestriction): Log restriction changes.
(WebCore::HTMLMediaSession::removeBehaviorRestriction): Ditto.

  • html/HTMLMediaSession.h:
  • platform/audio/MediaSession.cpp:

(WebCore::stateName): New, used for logging.
(WebCore::MediaSession::MediaSession): Don't cache client media type because it can change.
(WebCore::MediaSession::setState): Log state changes.
(WebCore::MediaSession::beginInterruption): Remember the current state in case we want to use it

to restore state when the interruption ends.

(WebCore::MediaSession::endInterruption): Resume playback if appropriate.
(WebCore::MediaSession::clientWillBeginPlayback): Track the client's playback state.
(WebCore::MediaSession::clientWillPausePlayback): Ditto.
(WebCore::MediaSession::mediaType): Ask client for state.

  • platform/audio/MediaSession.h:
  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::MediaSessionManager): m_interruptions -> m_interrupted.
(WebCore::MediaSessionManager::beginInterruption): Don't assume interruptions are always balanced.
(WebCore::MediaSessionManager::endInterruption): Ditto.
(WebCore::MediaSessionManager::addSession):
(WebCore::MediaSessionManager::applicationWillEnterBackground): Interrupt client if it is not

allowed to play in the background.

(WebCore::MediaSessionManager::applicationWillEnterForeground): End client interruption if it

was stopped by an interruption.

  • platform/audio/MediaSessionManager.h:
  • platform/audio/ios/MediaSessionManagerIOS.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::~MediaSessionManageriOS): Clear the helper callback.
(WebCore::MediaSessionManageriOS::resetRestrictions): Mark video as not allowed to play

while the application is in the background. Register for application suspend/resume
notifications.

(-[WebMediaSessionHelper clearCallback]): Set _callback to nil.
(-[WebMediaSessionHelper applicationWillEnterForeground:]): New, notify client of application

state change.

(-[WebMediaSessionHelper applicationWillResignActive:]): Ditto.

  • platform/audio/mac/AudioDestinationMac.h: Add resumePlayback.
  • testing/Internals.cpp:

(WebCore::Internals::applicationWillEnterForeground): New, simulate application context switch.
(WebCore::Internals::applicationWillEnterBackground): Ditto.
(WebCore::Internals::setMediaSessionRestrictions): Add "BackgroundPlaybackNotPermitted" restriction.

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

Source/WebKit:

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

and applicationWillEnterBackground for Internals.

LayoutTests:

  • media/video-background-playback-expected.txt: Added.
  • media/video-background-playback.html: Added.
  • media/video-interruption-active-when-element-created-expected.txt: Removed.
  • media/video-interruption-active-when-element-created.html: Removed.
  • media/video-interruption-with-resume-allowing-play-expected.txt:
  • media/video-interruption-with-resume-allowing-play.html:
  • media/video-interruption-with-resume-not-allowing-play-expected.txt:
  • media/video-interruption-with-resume-not-allowing-play.html:
10:56 AM WebInspectorCodingStyleGuide edited by BJ Burg
nit about model/view layering, and when to spell out identifier (diff)
10:51 AM Changeset in webkit [163389] by akling@apple.com
  • 15 edits
    3 deletes in trunk

Remove CPP bindings generator.
<https://webkit.org/b/128189>

Scrub out some leftover Blackberry gunk.

Reviewed by Anders Carlsson.

  • Modules/webdatabase/SQLResultSet.idl:
  • bindings/cpp/WebDOMCString.cpp: Removed.
  • bindings/cpp/WebDOMCString.h: Removed.
  • bindings/cpp/WebDOMDOMWindowCustom.cpp: Removed.
  • bindings/cpp/WebDOMEventListenerCustom.cpp: Removed.
  • bindings/cpp/WebDOMEventTarget.cpp: Removed.
  • bindings/cpp/WebDOMEventTarget.h: Removed.
  • bindings/cpp/WebDOMHTMLCollectionCustom.cpp: Removed.
  • bindings/cpp/WebDOMHTMLDocumentCustom.cpp: Removed.
  • bindings/cpp/WebDOMHTMLOptionsCollectionCustom.cpp: Removed.
  • bindings/cpp/WebDOMNodeCustom.cpp: Removed.
  • bindings/cpp/WebDOMNodeFilterCustom.cpp: Removed.
  • bindings/cpp/WebDOMObject.h: Removed.
  • bindings/cpp/WebDOMString.cpp: Removed.
  • bindings/cpp/WebDOMString.h: Removed.
  • bindings/cpp/WebExceptionHandler.cpp: Removed.
  • bindings/cpp/WebExceptionHandler.h: Removed.
  • bindings/cpp/WebNativeEventListener.cpp: Removed.
  • bindings/cpp/WebNativeEventListener.h: Removed.
  • bindings/cpp/WebNativeNodeFilterCondition.cpp: Removed.
  • bindings/cpp/WebNativeNodeFilterCondition.h: Removed.
  • bindings/scripts/CodeGeneratorCPP.pm: Removed.
  • bindings/scripts/test/CPP/CPPTestSupplemental.cpp: Removed.
  • bindings/scripts/test/CPP/CPPTestSupplemental.h: Removed.
  • bindings/scripts/test/CPP/WebDOMFloat64Array.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMFloat64Array.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestCallback.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestCallback.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestEventConstructor.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestEventConstructor.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestEventTarget.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestEventTarget.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestException.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestException.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestGenerateIsReachable.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestGenerateIsReachable.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestImplements.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestImplements.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestInterface.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestInterface.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestNamedConstructor.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestNamedConstructor.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestNode.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestNode.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestObj.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestObj.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestOverloadedConstructors.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestOverloadedConstructors.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestSupplemental.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestSupplemental.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestTypedefs.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestTypedefs.h: Removed.
  • bindings/scripts/test/CPP/WebDOMattribute.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMattribute.h: Removed.
  • bindings/scripts/test/CPP/WebDOMreadonly.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMreadonly.h: Removed.
  • css/StyleSheet.idl:
  • dom/CustomEvent.idl:
  • dom/Document.idl:
  • dom/Event.idl:
  • dom/Node.idl:
  • dom/PopStateEvent.idl:
  • html/HTMLCanvasElement.idl:
  • html/HTMLInputElement.idl:
  • html/canvas/CanvasRenderingContext2D.idl:
  • page/DOMWindow.idl:
  • page/Location.idl:
  • workers/DedicatedWorkerGlobalScope.idl:
10:41 AM Changeset in webkit [163388] by enrica@apple.com
  • 7 edits in trunk/Source/WebKit2

WK2: Selection callout bar does not scroll with the selection.
https://bugs.webkit.org/show_bug.cgi?id=128142
<rdar://problem/15970812>

Reviewed by Benjamin Poulain.

Adding notifications to WKContentView to all the delegates
for scrolling and zooming to let WKInteractionView about it.
This allows the interaction assistants to hide the callout
while scrolling or zooming and to fade it in again at the end.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView scrollViewWillBeginZooming:withView:]):
(-[WKWebView scrollViewWillBeginDragging:]):

  • UIProcess/API/ios/WKContentView.h:
  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView didFinishScrollTo:]):
(-[WKContentView willStartZoomOrScroll]):
(-[WKContentView didZoomToScale:]):

  • UIProcess/API/ios/WKInteractionView.h:
  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView _willStartScrollingOrZooming]):
(-[WKInteractionView _didEndScrollingOrZooming]):

  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView scrollViewWillBeginZooming:withView:]):
(-[WKView scrollViewWillBeginDragging:]):

10:23 AM AddingFiles edited by BJ Burg
add instructions for windoze and Gmake (diff)
10:05 AM Changeset in webkit [163387] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

iOS build fix.

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::platformInit):

10:04 AM Changeset in webkit [163386] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Partially revert r162947 so that Document::topDocument() again Walk over the chain of
owner Elements. This fixes the crashes related to creating and accessing the AXObjectCache
of documents that were introduced in that revision, which determined the top document by
returning the Document of the main frame. This fails badly when the frame in question is cached.

Patch by Zan Dobersek <zdobersek@igalia.com> on 2014-02-04

  • dom/Document.cpp:

(WebCore::Document::topDocument):

10:00 AM Changeset in webkit [163385] by zandobersek@gmail.com
  • 11 edits in trunk/Source/WebCore

Manage MediaQuery and MediaQueryExp classes through std::unique_ptr instead of OwnPtr
https://bugs.webkit.org/show_bug.cgi?id=128117

Reviewed by Darin Adler.

Replace uses of OwnPtr for the MediaQuery and MediaQueryExp classes with std::unique_ptr.

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

(WebCore::CSSParser::parseMediaQuery):

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

(WebCore::MediaQuerySet::parse):
(WebCore::MediaQuerySet::add):
(WebCore::MediaQuerySet::remove):
(WebCore::MediaQuerySet::addMediaQuery):
(WebCore::MediaList::item):
(WebCore::reportMediaQueryWarningIfNeeded):

  • css/MediaList.h:

(WebCore::MediaQuerySet::queryVector):

  • css/MediaQuery.cpp:

(WebCore::MediaQuery::MediaQuery):

  • css/MediaQuery.h:

(WebCore::MediaQuery::expressions):
(WebCore::MediaQuery::copy):

  • css/MediaQueryEvaluator.cpp:

(WebCore::MediaQueryEvaluator::eval):

  • css/MediaQueryExp.cpp:

(WebCore::MediaQueryExp::MediaQueryExp):

  • css/MediaQueryExp.h:

(WebCore::MediaQueryExp::copy):

9:56 AM Changeset in webkit [163384] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

GC timer should always do a FullCollection
https://bugs.webkit.org/show_bug.cgi?id=128186

Reviewed by Michael Saboff.

Right now the GC timer does whatever type of collection the next collection
would have been, which is almost always an EdenCollection. It then thinks
that it has done all of the work it was supposed to do and never schedules
another GC. Ideally we'd like to have some heuristics for the timer that
would schedule both EdenCollections and FullCollections, but the easiest
fix for now is to always do FullCollections since that will at least be
a non-regression.

  • heap/Heap.h:

(JSC::Heap::gcTimerDidFire):

  • runtime/GCActivityCallback.cpp:

(JSC::DefaultGCActivityCallback::doWork):

9:50 AM Changeset in webkit [163383] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove SVG_DOM_OBJC_BINDINGS after r161638.
https://bugs.webkit.org/show_bug.cgi?id=128182

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2014-02-04
Reviewed by Andreas Kling.

Removed ENABLE(SVG_DOM_OBJC_BINDINGS).

No tests required.

  • bindings/objc/DOMUIKitExtensions.mm:

(-[DOMNode boundingBoxes]):
(-[DOMNode absoluteQuads]):

9:42 AM AddingFiles edited by BJ Burg
instructions for adding to CMake (diff)
9:27 AM Changeset in webkit [163382] by stavila@adobe.com
  • 3 edits
    2 adds in trunk

REGRESSION (r159609): Images are corrupted when hovering over buttons @ github.com
https://bugs.webkit.org/show_bug.cgi?id=127729

Reviewed by Antti Koivisto.

Source/WebCore:

When clipping a rect, the RenderLayer would not properly save the context when
the clipping rect is the same as the paint rect and the clipping rect
has radius.

Test: fast/regions/repaint/hover-border-radius.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::clipToRect):
(WebCore::RenderLayer::restoreClip):

LayoutTests:

Added test for the correct repainting of buttons with border radius when hovering.

  • fast/regions/repaint/hover-border-radius-expected.txt: Added.
  • fast/regions/repaint/hover-border-radius.html: Added.
8:48 AM Changeset in webkit [163381] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Add expectations for two flaky media layout tests
https://bugs.webkit.org/show_bug.cgi?id=128183

Unreviewed EFL gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-02-04

  • platform/efl/TestExpectations:
8:39 AM Changeset in webkit [163380] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Code cleanup: remove leftover occurrence of ENABLE(GESTURE_EVENTS)
https://bugs.webkit.org/show_bug.cgi?id=128180

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2014-02-04
Reviewed by Csaba Osztrogonác.

Removed last occurrence of ENABLE(GESTURE_EVENTS).

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:

(WebKit::NetscapePlugin::platformHandleMouseEvent):

8:34 AM Changeset in webkit [163379] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

[CMAKE] Remove workaround for GCC 4.6
https://bugs.webkit.org/show_bug.cgi?id=128176

Reviewed by Csaba Osztrogonác.

Since r162126, WebKit requires at least 4.7.

  • CMakeLists.txt:
7:57 AM Changeset in webkit [163378] by zandobersek@gmail.com
  • 6 edits in trunk/Source/WebCore

Manage RuleSet and RuleData classes through std::unique_ptr instead of OwnPtr
https://bugs.webkit.org/show_bug.cgi?id=128116

Reviewed by Darin Adler.

Replace uses of OwnPtr for the RuleSet and RuleData classes with std::unique_ptr.

  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::loadFullDefaultStyle):
(WebCore::CSSDefaultStyleSheets::loadSimpleDefaultStyle):
(WebCore::CSSDefaultStyleSheets::viewSourceStyle):

  • css/DocumentRuleSets.cpp:

(WebCore::DocumentRuleSets::initUserStyle):
(WebCore::makeRuleSet):
(WebCore::DocumentRuleSets::resetAuthorStyle):

  • css/DocumentRuleSets.h:
  • css/RuleSet.cpp:

(WebCore::RuleSet::addToRuleSet):
(WebCore::RuleSet::addRegionRule):

  • css/RuleSet.h:

(WebCore::RuleSet::RuleSetSelectorPair::RuleSetSelectorPair):

7:52 AM Changeset in webkit [163377] by commit-queue@webkit.org
  • 23 edits
    2 copies
    2 deletes in trunk

Unreviewed, rolling out r163376.
http://trac.webkit.org/changeset/163376
https://bugs.webkit.org/show_bug.cgi?id=128184

Unexpected test failures. (Requested by eric_carlson on
#webkit).

Source/WebCore:

  • WebCore.exp.in:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • html/HTMLMediaElement.h:
  • html/HTMLMediaSession.cpp:

(WebCore::HTMLMediaSession::addBehaviorRestriction):
(WebCore::HTMLMediaSession::removeBehaviorRestriction):
(WebCore::HTMLMediaSession::clientWillBeginPlayback):

  • html/HTMLMediaSession.h:
  • platform/audio/MediaSession.cpp:

(WebCore::MediaSession::MediaSession):
(WebCore::MediaSession::beginInterruption):
(WebCore::MediaSession::endInterruption):

  • platform/audio/MediaSession.h:

(WebCore::MediaSession::mediaType):
(WebCore::MediaSession::setState):
(WebCore::MediaSessionClient::beginInterruption):
(WebCore::MediaSessionClient::endInterruption):

  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::MediaSessionManager):
(WebCore::MediaSessionManager::beginInterruption):
(WebCore::MediaSessionManager::endInterruption):
(WebCore::MediaSessionManager::addSession):

  • platform/audio/MediaSessionManager.h:
  • platform/audio/ios/MediaSessionManagerIOS.h:

(WebCore::MediaSessionManageriOS::~MediaSessionManageriOS):

  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::resetRestrictions):
(-[WebMediaSessionHelper initWithCallback:]):

  • platform/audio/mac/AudioDestinationMac.h:
  • testing/Internals.cpp:

(WebCore::Internals::setMediaSessionRestrictions):

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

Source/WebKit:

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

LayoutTests:

  • media/video-background-playback-expected.txt: Removed.
  • media/video-background-playback.html: Removed.
  • media/video-interruption-active-when-element-created-expected.txt: Copied from LayoutTests/media/video-interruption-with-resume-allowing-play-expected.txt.
  • media/video-interruption-active-when-element-created.html: Copied from LayoutTests/media/video-interruption-with-resume-not-allowing-play.html.
  • media/video-interruption-with-resume-allowing-play-expected.txt:
  • media/video-interruption-with-resume-allowing-play.html:
  • media/video-interruption-with-resume-not-allowing-play-expected.txt:
  • media/video-interruption-with-resume-not-allowing-play.html:
6:59 AM Changeset in webkit [163376] by eric.carlson@apple.com
  • 23 edits
    2 adds
    2 deletes in trunk

Refine MediaSession interruptions
https://bugs.webkit.org/show_bug.cgi?id=128125

Reviewed by Jer Noble.

Source/WebCore:

Test: media/video-background-playback.html

  • WebCore.exp.in: Export applicationWillEnterForeground and applicationWillEnterBackground for

Internals.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::play): Ask the media session if playback is allowed instead of check

to see if it is interrupted directly.

(WebCore::HTMLMediaElement::pause): Ask the media session if pausing is allowed instead of check

to see if it is interrupted directly.

(WebCore::HTMLMediaElement::mediaType): Return media type based on media characteristics once

the information is available.

(WebCore::HTMLMediaElement::resumePlayback): New.

  • html/HTMLMediaElement.h:
  • html/HTMLMediaSession.cpp:

(WebCore::restrictionName): New, use for logging only.
(WebCore::HTMLMediaSession::addBehaviorRestriction): Log restriction changes.
(WebCore::HTMLMediaSession::removeBehaviorRestriction): Ditto.

  • html/HTMLMediaSession.h:
  • platform/audio/MediaSession.cpp:

(WebCore::stateName): New, used for logging.
(WebCore::MediaSession::MediaSession): Don't cache client media type because it can change.
(WebCore::MediaSession::setState): Log state changes.
(WebCore::MediaSession::beginInterruption): Remember the current state in case we want to use it

to restore state when the interruption ends.

(WebCore::MediaSession::endInterruption): Resume playback if appropriate.
(WebCore::MediaSession::clientWillBeginPlayback): Track the client's playback state.
(WebCore::MediaSession::clientWillPausePlayback): Ditto.
(WebCore::MediaSession::mediaType): Ask client for state.

  • platform/audio/MediaSession.h:
  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::MediaSessionManager): m_interruptions -> m_interrupted.
(WebCore::MediaSessionManager::beginInterruption): Don't assume interruptions are always balanced.
(WebCore::MediaSessionManager::endInterruption): Ditto.
(WebCore::MediaSessionManager::addSession):
(WebCore::MediaSessionManager::applicationWillEnterBackground): Interrupt client if it is not

allowed to play in the background.

(WebCore::MediaSessionManager::applicationWillEnterForeground): End client interruption if it

was stopped by an interruption.

  • platform/audio/MediaSessionManager.h:
  • platform/audio/ios/MediaSessionManagerIOS.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::~MediaSessionManageriOS): Clear the helper callback.
(WebCore::MediaSessionManageriOS::resetRestrictions): Mark video as not allowed to play

while the application is in the background. Register for application suspend/resume
notifications.

(-[WebMediaSessionHelper clearCallback]): Set _callback to nil.
(-[WebMediaSessionHelper applicationWillEnterForeground:]): New, notify client of application

state change.

(-[WebMediaSessionHelper applicationWillResignActive:]): Ditto.

  • platform/audio/mac/AudioDestinationMac.h: Add resumePlayback.
  • testing/Internals.cpp:

(WebCore::Internals::applicationWillEnterForeground): New, simulate application context switch.
(WebCore::Internals::applicationWillEnterBackground): Ditto.
(WebCore::Internals::setMediaSessionRestrictions): Add "BackgroundPlaybackNotPermitted" restriction.

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

Source/WebKit:

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

and applicationWillEnterBackground for Internals.

LayoutTests:

  • media/video-background-playback-expected.txt: Added.
  • media/video-background-playback.html: Added.
  • media/video-interruption-active-when-element-created-expected.txt: Removed.
  • media/video-interruption-active-when-element-created.html: Removed.
  • media/video-interruption-with-resume-allowing-play-expected.txt:
  • media/video-interruption-with-resume-allowing-play.html:
  • media/video-interruption-with-resume-not-allowing-play-expected.txt:
  • media/video-interruption-with-resume-not-allowing-play.html:
6:50 AM Changeset in webkit [163375] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Automake] Add missing $(feature_defines) when generating InjectedBundle bindings
https://bugs.webkit.org/show_bug.cgi?id=128170

Patch by Carlos Garnacho <carlosg@gnome.org> on 2014-02-04
Reviewed by Carlos Garcia Campos.

  • WebKitTestRunner/GNUmakefile.am: Add missing $(feature_defines) when

generating the InjectedBundle bindings. So the various ENABLE_* defines
are available there.

5:43 AM Changeset in webkit [163374] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Add expectations for three flaky media layout tests
https://bugs.webkit.org/show_bug.cgi?id=128104

Unreviewed EFL gardening

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-02-04

  • platform/efl/TestExpectations:
4:42 AM Changeset in webkit [163373] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Ensure generated events have given modifiers GDK understands
https://bugs.webkit.org/show_bug.cgi?id=128171

Patch by Carlos Garnacho <carlosg@gnome.org> on 2014-02-04
Reviewed by Carlos Garcia Campos.

  • WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:

(WTR::webkitModifiersToGDKModifiers): Move around
(WTR::EventSenderProxy::createMouseButtonEvent):
(WTR::EventSenderProxy::keyDown): Use webkitModifiersToGDKModifiers to
translate WKEventModifiers.

3:54 AM Changeset in webkit [163372] by rgabor@webkit.org
  • 3 edits in trunk/Tools

Fine tuning the ARM EFL bots
https://bugs.webkit.org/show_bug.cgi?id=128168

Reviewed by Csaba Osztrogonác.

  • BuildSlaveSupport/build.webkit.org-config/config.json: Add custom SVN mirror.
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(WaitForSVNServer): Make it not to halt before the first repository checkout.
(WaitForSVNServer.evaluateCommand):
(Factory.init): Disable kill-old-processes step on EFL ARM bots, because these
bots run on the same machine and they kill the processes of each other.

3:40 AM Changeset in webkit [163371] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Add expectations for two flaky media layout tests
https://bugs.webkit.org/show_bug.cgi?id=127994

Unreviewed EFL gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-02-04

  • platform/efl/TestExpectations:
2:25 AM Changeset in webkit [163370] by eunmi15.lee@samsung.com
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] ewk_context needs to route InjectedBundle messages correctly.
https://bugs.webkit.org/show_bug.cgi?id=90772

Reviewed by Gyuyoung Kim.

Add APIs to post message to injected bundle and register callback to
get message from injected bundle. When callback is registered,
WKContextInjectedBundleClient is set to get messages from injected bundle.

  • UIProcess/API/efl/ewk_context.cpp:

(EwkContext::EwkContext):
(toEwkContext):
(EwkContext::didReceiveMessageFromInjectedBundle):
(EwkContext::didReceiveSynchronousMessageFromInjectedBundle):
(EwkContext::setMessageFromInjectedBundleCallback): register callback to get message from injected bundle.
(EwkContext::processReceivedMessageFromInjectedBundle): process message from injected bundle.
(ewk_context_message_post_to_injected_bundle):
(ewk_context_message_from_injected_bundle_callback_set):

  • UIProcess/API/efl/ewk_context.h:
  • UIProcess/API/efl/ewk_context_private.h:
2:10 AM Changeset in webkit [163369] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

[CSS Regions] Fix Assert SHOULD NEVER BE REACHED in RenderLayer::enclosingElement()
https://bugs.webkit.org/show_bug.cgi?id=123329

Patch by Mihai Maerean <Mihai Maerean> on 2014-02-04
Reviewed by Mihnea Ovidenie.

Source/WebCore:

The flowthread doesn't have an enclosing element, so when hitting the layer of the
flowthread (e.g. the descent area of the RootInlineBox for the image flowed alone
inside the flow thread) we're letting the hit testing continue so it will hit the region.

Tests: fast/regions/assert-hit-test-image.html

fast/regions/auto-size/region-same-height-as-div-with-inline-child.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::hitTestContents):

LayoutTests:

  • fast/regions/assert-hit-test-image.html: Added.
  • fast/regions/assert-hit-test-image-expected.txt: Added.
  • fast/regions/auto-size/region-same-height-as-div-with-inline-child.html: Added.
  • fast/regions/auto-size/region-same-height-as-div-with-inline-child-expected.txt: Added.
12:53 AM Changeset in webkit [163368] by mihnea@adobe.com
  • 3 edits
    4 adds in trunk
ASSERTION FAILED: !object
(object->isRenderBlock())

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

Reviewed by Ryosuke Niwa.

Source/WebCore:

Currently, when computing the visible position for a point inside a region,
we transform the point into flow thread coordinates and delegate the processing
to the first child of the flow thread which we incorrectly assume is a block.
However, we can specify flow-into also on inline elements which leads to the
assertion.

Instead of delegating the processing to the first child when the flow thread
has children, delegate the computation of the visible position to the
flow thread and avoid any assumption about the nature of the flow thread
first child. If the flow thread does not have any children that should be
rendered by the region, let the region behave like an ordinary element
with no children.

Tests: fast/regions/selection/position-for-point-inline-content-node.html

fast/regions/selection/selection-ended-in-empty-region.html

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::positionForPoint):

LayoutTests:

Added test showing that the content of an inline content node, having
flow-into specified, can be properly selected without hitting the assertion.
Also added another test to make sure that when the selection starts
outside an empty region and ends inside the empty region, the region behaves
like an ordinary element with no children.

  • fast/regions/selection/position-for-point-inline-content-node-expected.txt: Added.
  • fast/regions/selection/position-for-point-inline-content-node.html: Added.
  • fast/regions/selection/selection-ended-in-empty-region-expected.txt: Added.
  • fast/regions/selection/selection-ended-in-empty-region.html: Added.
12:20 AM Changeset in webkit [163367] by jinwoo7.song@samsung.com
  • 9 edits in trunk/Source/WebKit2

[EFL][WK2] Stop using COMPILE_ASSERT_MATCHING_ENUM macros in EFL WebKit2
https://bugs.webkit.org/show_bug.cgi?id=128156

Reviewed by Anders Carlsson.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::requestPopupMenu):

  • UIProcess/API/efl/ewk_context.cpp:

(toWKCacheModel):
(EwkContext::setCacheModel):

  • UIProcess/API/efl/ewk_cookie_manager.cpp:

(ewk_cookie_manager_persistent_storage_set):
(ewk_cookie_manager_accept_policy_set):

  • UIProcess/API/efl/ewk_navigation_policy_decision.cpp:

(toEwkNavigationType):
(toEventMouseButton):
(toEventModifierKeys):
(EwkNavigationPolicyDecision::EwkNavigationPolicyDecision):
(EwkNavigationPolicyDecision::navigationType):
(EwkNavigationPolicyDecision::mouseButton):
(EwkNavigationPolicyDecision::modifiers):
(ewk_navigation_policy_decision_download):

  • UIProcess/API/efl/ewk_navigation_policy_decision_private.h:

(EwkNavigationPolicyDecision::create):

  • UIProcess/API/efl/ewk_popup_menu_item.cpp:

(EwkPopupMenuItem::type):
(EwkPopupMenuItem::textDirection):

  • UIProcess/API/efl/ewk_private.h:
  • UIProcess/API/efl/ewk_view.cpp:

(toWKFindOptions):
(ewk_view_text_find):
(toWKPaginationMode):
(toEwkPaginationMode):
(ewk_view_pagination_mode_set):
(ewk_view_pagination_mode_get):

Feb 3, 2014:

11:41 PM WebKitGTK/2.2.x edited by tpopela@redhat.com
(diff)
9:50 PM Changeset in webkit [163366] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Lift the FTL tier-up threshold from 25000 to 100000
https://bugs.webkit.org/show_bug.cgi?id=128158

Rubber stamped by Michael Saboff.

  • runtime/Options.h:
9:44 PM Changeset in webkit [163365] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix after http://trac.webkit.org/changeset/163364

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::getObjectStoreStatement): Args need the new names, and I need to save the file before committing. :(

9:42 PM Changeset in webkit [163364] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

IDB: HTML5 Rocks Indexed Database demo fails
https://bugs.webkit.org/show_bug.cgi?id=128157

Reviewed by Anders Carlsson (Provisional review by Jon Lee)

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::getIndexStatement): Only increment the open/closed counters if those keys exist.

Fix order of statements for no lower key.

(WebKit::getObjectStoreStatement): Only increment the open/closed counters if those keys exist.

9:10 PM Changeset in webkit [163363] by mark.lam@apple.com
  • 2 edits
    2 adds in trunk/LayoutTests

Need regression test for the debugger modifying locals in a DFG frame.
https://bugs.webkit.org/show_bug.cgi?id=128120.

Reviewed by Geoffrey Garen.

Regression test for https://bugs.webkit.org/show_bug.cgi?id=128112.

This test does the following:

  1. Warm up a DFG function.
  2. Sets a breakpoint in a function breakpointBasic() that will be called by the DFG function, but has never been called yet.
  3. Call a driver function which in turn calls the DFG function, and expect the debugger to break.
  4. At the breakpoint in breakpointBasic(), evaluate an expression on its caller i.e. the DFG function, and change a local variable in it.
  5. Resume from the debugger, and let the DFG function and its driver function run to completion. The DFG function will return a value computed using the modified local.
  6. At the end of the driver function, verify that the returned computed value reflects the modified value.

This test has been verified with tracing enabled to ensure that the test
DFG function was indeed DFG compiled, and that the test passed with the
expected results.

  • inspector-protocol/debugger/resources/breakpoint.js:

(notInlineable2):
(dfgWithoutInline2):
(callNotInlineable2):

  • inspector-protocol/debugger/setBreakpoint-dfg-and-modify-local-expected.txt: Added.
  • inspector-protocol/debugger/setBreakpoint-dfg-and-modify-local.html: Added.
9:05 PM Changeset in webkit [163362] by jae.park@company100.net
  • 2 edits in trunk/Source/WebKit2

Use nullptr in ShareableBitmap
https://bugs.webkit.org/show_bug.cgi?id=128153

Reviewed by Gyuyoung Kim.

  • Shared/ShareableBitmap.cpp:

(WebKit::ShareableBitmap::create):
(WebKit::ShareableBitmap::createShareable):

8:13 PM Changeset in webkit [163361] by mark.lam@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

Need regression test to ensure that the debugger does not attempt to execute a bad script from its console.
<https://webkit.org/b/128121>

Reviewed by Geoffrey Garen.

Regression test for https://bugs.webkit.org/show_bug.cgi?id=127600.

  • inspector-protocol/debugger/breakpoint-condition-with-bad-script-expected.txt: Added.
  • inspector-protocol/debugger/breakpoint-condition-with-bad-script.html: Added.
  • Sets up a breakpoint with a condition script. The condition script will fail to parse with a syntax error. I've tested that without the fix in http://trac.webkit.org/r162752, this will crash the VM. With the fix, it works fine.
8:08 PM Changeset in webkit [163360] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Remove stray vestige from ::-webkit-distributed selector.
<https://webkit.org/b/128154>

Reviewed by Anders Carlsson.

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::extractPseudoType):

7:47 PM Changeset in webkit [163359] by akling@apple.com
  • 22 edits
    3 deletes in trunk/Source/WebCore

Remove the CSS @host rule.
<https://webkit.org/b/128146>

The @host rule is no longer part of the spec, and besides this code
was behind ENABLE(SHADOW_DOM) so nobody was building it.

Reviewed by Anders Carlsson.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCSSRuleCustom.cpp:

(WebCore::toJS):

  • bindings/objc/DOMCSS.mm:

(kitClass):

  • css/CSSAllInOne.cpp:
  • css/CSSGrammar.y.in:
  • css/CSSHostRule.cpp: Removed.
  • css/CSSHostRule.h: Removed.
  • css/CSSHostRule.idl: Removed.
  • css/CSSParser.cpp:

(WebCore::CSSParser::detectDashToken):
(WebCore::CSSParser::detectAtToken):

  • css/CSSParser.h:
  • css/CSSRule.h:
  • css/CSSRule.idl:
  • css/InspectorCSSOMWrappers.cpp:

(WebCore::InspectorCSSOMWrappers::collect):

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

(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy):
(WebCore::StyleRuleBase::createCSSOMWrapper):

  • css/StyleRule.h:
  • css/StyleSheetContents.cpp:

(WebCore::childRulesHaveFailedOrCanceledSubresources):

  • inspector/InspectorStyleSheet.cpp:

(flattenSourceData):
(WebCore::asCSSRuleList):

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

Add title and hasOnlySecureContent properties to WKWebView
https://bugs.webkit.org/show_bug.cgi?id=128152

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView title]):
(-[WKWebView hasOnlySecureContent]):

  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::didChangeIsLoading):
(WebKit::NavigationState::willChangeTitle):
(WebKit::NavigationState::didChangeTitle):
(WebKit::NavigationState::willChangeHasOnlySecureContent):
(WebKit::NavigationState::didChangeHasOnlySecureContent):

7:04 PM Changeset in webkit [163357] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

Subpixel rendering: Do not query the scaling factor when the graphics context is invalid.
https://bugs.webkit.org/show_bug.cgi?id=128131

Reviewed by Simon Fraser.

No existing context to test it.

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::platformInit):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::platformInit):

  • platform/graphics/wince/GraphicsContextWinCE.cpp:

(WebCore::GraphicsContext::platformInit):

7:00 PM Changeset in webkit [163356] by bshafiei@apple.com
  • 5 edits in tags/Safari-538.16.1/Source

Versioning.

6:58 PM Changeset in webkit [163355] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix spelling.

  • Shared/WebPreferencesStore.h:
6:56 PM Changeset in webkit [163354] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.16.1

New tag.

6:52 PM Changeset in webkit [163353] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

[WebKit2, iOS] Enable frame flattening by default on iOS
<rdar://problem/15975983>
https://bugs.webkit.org/show_bug.cgi?id=128151

Reviewed by Tim Horton.

  • Shared/WebPreferencesStore.h:
6:09 PM Changeset in webkit [163352] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS][wk2] Temporarily disable accelerated drawing for canvas
https://bugs.webkit.org/show_bug.cgi?id=128147

Reviewed by Simon Fraser.

  • Shared/WebPreferencesStore.h:

Temporarily disable accelerated canvas for WebKit2 on iOS.

6:08 PM Changeset in webkit [163351] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

LLInt: Regex for pseudo-instructions is too big
https://bugs.webkit.org/show_bug.cgi?id=128148

Reviewed by Mark Lam.

  • offlineasm/instructions.rb:
  • offlineasm/parser.rb:
6:02 PM Changeset in webkit [163350] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Add loading property to WKWebView
https://bugs.webkit.org/show_bug.cgi?id=128144

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView isLoading]):

  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::willChangeIsLoading):
(WebKit::NavigationState::didChangeIsLoading):

5:13 PM Changeset in webkit [163349] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Fix Windows build.

  • wtf/text/StringImpl.h:

(WTF::StringImpl::tailOffset):

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

[Cairo] GraphicsContext::m_pixelSnappingFactor is uninitialized
https://bugs.webkit.org/show_bug.cgi?id=128102

Patch by Hunseop Jeong <Hunseop Jeong> on 2014-02-03
Reviewed by Csaba Osztrogonác.

Initalize m_pixelSnappingFactor to 1

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::GraphicsContext): Initialized pixelSnappingFactor to 1 and
fixed the coding style violation.

5:03 PM Changeset in webkit [163347] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

StringImpl::tailOffset() should return the offset right after m_hashAndFlags
https://bugs.webkit.org/show_bug.cgi?id=128141

Reviewed by Andreas Kling.

  • wtf/text/StringImpl.h:

(WTF::StringImpl::tailOffset):

5:02 PM Changeset in webkit [163346] by BJ Burg
  • 8 edits
    10 adds in trunk/Source

Fix for 128110

4:54 PM Changeset in webkit [163345] by mhahnenberg@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

Fix the cloop due to GenGC
https://bugs.webkit.org/show_bug.cgi?id=128137

Reviewed by Geoffrey Garen.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::llint_write_barrier_slow):

  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter.cpp:

(JSC::CLoopRegister::operator JSCell*):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • offlineasm/cloop.rb:
  • offlineasm/instructions.rb:
4:45 PM Changeset in webkit [163344] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Source/WebCore

Remove unused code in CSSParser.cpp
https://bugs.webkit.org/show_bug.cgi?id=128135

Reviewed by Darin Adler.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

4:40 PM Changeset in webkit [163343] by Brent Fulgham
  • 4 edits in branches/safari-537.75-branch/Source/WebCore

Unreviewed build fix after r162860.

  • platform/graphics/MediaPlayer.cpp: Prevent 64-bit build from using QuickTime SDK.
  • platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Ditto.
  • platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: Ditto.
4:37 PM Changeset in webkit [163342] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION (r163011-r163031): Web Inspector: Latest nightly crashes when showing the Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=127901

Reviewed by Geoffrey Garen.

Set VM::topCallFrame before making calls to possible C++ code in
generateProtoChainAccessStub() and tryBuildGetByIDList().

  • jit/Repatch.cpp:

(JSC::generateProtoChainAccessStub):
(JSC::tryBuildGetByIDList):

4:37 PM Changeset in webkit [163341] by andersca@apple.com
  • 3 edits in trunk/Source/WTF

More tail pointer consolidation
https://bugs.webkit.org/show_bug.cgi?id=128139

Reviewed by Andreas Kling.

Add a new tailOffset() function and reimplement allocationSize() and tailPointer()
in terms of it. Use tailPointer() instead of reinterpret_cast-ing this + 1.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::createUninitializedInternalNonEmpty):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::StringImpl):
(WTF::StringImpl::requiresCopy):
(WTF::StringImpl::allocationSize):
(WTF::StringImpl::tailOffset):
(WTF::StringImpl::tailPointer):

4:29 PM Changeset in webkit [163340] by rniwa@webkit.org
  • 2 edits in trunk/Tools

kill-old-processes doesn't kill plugin processes
https://bugs.webkit.org/show_bug.cgi?id=128138

Reviewed by Andreas Kling.

Add plugin process names to the list of processes to kill.

  • BuildSlaveSupport/kill-old-processes:

(main):

4:26 PM Changeset in webkit [163339] by Gustavo Noronha Silva
  • 2 edits in trunk/Source/WTF

[GTK][CMake] Enable SUBPIXEL_LAYOUT in FeatureDefines.h like EFL does
https://bugs.webkit.org/show_bug.cgi?id=128136

Reviewed by Martin Robinson.

  • wtf/FeatureDefines.h: enable SUBPIXEL_LAYOUT if it's not set, for GTK+.
4:21 PM AddingFiles created by BJ Burg
4:17 PM Changeset in webkit [163338] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Mac] WK1 Clients Only Latch on Momentum Scroll
https://bugs.webkit.org/show_bug.cgi?id=128133

Reviewed by Simon Fraser.

  • platform/PlatformWheelEvent.h:

(WebCore::PlatformWheelEvent::useLatchedEventElement): Update
predicate to recognize the start and change phases of the wheel
event as latchable (not just momentum start/change).

4:13 PM Changeset in webkit [163337] by akling@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Keep only captured symbols in CodeBlock symbol tables.
<https://webkit.org/b/128050>

Discard all uncaptured symbols at the end of codegen since only
the captured ones will be used after that point.

~2MB progression on Membuster OSUS.

Reviewed by Geoffrey Garen.

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedCodeBlock::setSymbolTable):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::generate):

4:00 PM Changeset in webkit [163336] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Allow WK2 to read from NSUserDefaults when it has no prefs identifier
https://bugs.webkit.org/show_bug.cgi?id=128124

Reviewed by Sam Weinig.

WebPreferences would never read from NSUserDefaults if no identifier
had been set, but this prevents us from reading useful debugging prefs.

Fix to read pref names using a "WebKit2" prefix when no identifier
is set.

  • UIProcess/mac/WebPreferencesMac.mm:

(WebKit::makeKey):
(WebKit::WebPreferences::platformInitializeStore):

3:58 PM WikiStart edited by BJ Burg
add link: adding files (diff)
3:39 PM Changeset in webkit [163335] by jer.noble@apple.com
  • 5 edits in trunk/Source/WebKit2

[WK2] Remove the VideoPluginProxyEnabled preference in WK2
https://bugs.webkit.org/show_bug.cgi?id=128128

Reviewed by Brady Eidson.

The plugin proxy is iOS WK1 only, and has no meaning in WebKit2. Just set the preference to false.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:
  • UIProcess/API/C/WKPreferencesRef.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

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

Fix the LLInt C loop

Rubber stamped by Mark Lam.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::llint_write_barrier_slow):

  • llint/LLIntSlowPaths.h:
3:35 PM Changeset in webkit [163333] by dino@apple.com
  • 37 edits in trunk

Feature flag for shape-inside
https://bugs.webkit.org/show_bug.cgi?id=128001

Reviewed by Simon Fraser.

Source/JavaScriptCore:

Add CSS_SHAPE_INSIDE flag.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Add CSS_SHAPE_INSIDE flag.

I wrapped everything that is specific to shape-inside in
this flag. It is now possible to build with CSS Shapes enabled
but shape-inside disabled. CSS_SHAPE_INSIDE is dependent on
CSS_SHAPES, so disabling the latter should also disable the former.

  • Configurations/FeatureDefines.xcconfig:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseShapeProperty):

  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::loadPendingImages):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/LayoutState.h:

(WebCore::LayoutState::LayoutState):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::updateShapesBeforeBlockLayout):
(WebCore::RenderBlock::updateShapesAfterBlockLayout):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutBlockChild):
(WebCore::RenderBlockFlow::computeLogicalLocationForFloat):

  • rendering/RenderBlockFlow.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine):
(WebCore::constructBidiRunsForLine):
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::~RenderElement):
(WebCore::RenderElement::initializeStyle):
(WebCore::RenderElement::setStyle):

  • rendering/RenderNamedFlowFragment.cpp:

(WebCore::RenderNamedFlowFragment::createStyle):

  • rendering/RenderView.h:
  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleText):
(WebCore::BreakingContext::handleEndOfLine):

  • rendering/line/LineBreaker.cpp:

(WebCore::LineBreaker::nextLineBreak):

  • rendering/line/LineWidth.cpp:

(WebCore::LineWidth::LineWidth):
(WebCore::LineWidth::updateAvailableWidth):
(WebCore::LineWidth::fitBelowFloats):

  • rendering/line/LineWidth.h:
  • rendering/shapes/ShapeInsideInfo.cpp:
  • rendering/shapes/ShapeInsideInfo.h:
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

Source/WebKit/mac:

Add CSS_SHAPE_INSIDE flag.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Add CSS_SHAPE_INSIDE flag.

  • Configurations/FeatureDefines.xcconfig:

Tools:

Add CSS_SHAPE_INSIDE flag, and -css-shape-inside build
flag.

  • Scripts/webkitperl/FeatureList.pm:
3:33 PM Changeset in webkit [163332] by andersca@apple.com
  • 5 edits
    1 add in trunk/Source/WebKit2

NavigationState should be a PageLoadState::Observer
https://bugs.webkit.org/show_bug.cgi?id=128130

Reviewed by Darin Adler.

This will make it easier to provide load related KVO properties on WKWebView.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

  • UIProcess/API/Cocoa/WKWebViewInternal.h: Added.
  • UIProcess/Cocoa/NavigationState.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::NavigationState):
(WebKit::NavigationState::~NavigationState):
(WebKit::NavigationState::willChangeIsLoading):
(WebKit::NavigationState::didChangeIsLoading):
(WebKit::NavigationState::willChangeTitle):
(WebKit::NavigationState::didChangeTitle):
(WebKit::NavigationState::willChangeActiveURL):
(WebKit::NavigationState::didChangeActiveURL):
(WebKit::NavigationState::willChangeHasOnlySecureContent):
(WebKit::NavigationState::didChangeHasOnlySecureContent):
(WebKit::NavigationState::willChangeEstimatedProgress):
(WebKit::NavigationState::didChangeEstimatedProgress):

  • WebKit2.xcodeproj/project.pbxproj:
3:27 PM Changeset in webkit [163331] by Lucas Forschler
  • 12 edits
    2 copies in tags/Safari-538.16

Merged r163329.

3:12 PM Changeset in webkit [163330] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/WTF

Turn GenGC on
https://bugs.webkit.org/show_bug.cgi?id=128109

Reviewed by Oliver Hunt.

  • wtf/Platform.h: Initially it will only be enabled for X86-64.
3:10 PM Changeset in webkit [163329] by Brent Fulgham
  • 12 edits
    2 adds in trunk

REGRESSION (r163018): Can’t scroll in <select> lists
https://bugs.webkit.org/show_bug.cgi?id=128090

Source/WebCore:

The regression was caused by the fact that a new method scrollWithWheelEventLocation() was added
to RenderBox to replace the generic scroll() method for the particular case of scrolling using
the mouse wheel. This turned out to be a mistake because in the case of some elements, like select lists,
the scroll method was overriden and now the incorrect method was being called.
The solution was to remove the new method and just add two default parameters to the generic
scroll method.

Patch by Radu Stavila <stavila@adobe.com> on 2014-02-03
Reviewed by Simon Fraser.

Test: fast/scrolling/scroll-select-list.html

  • page/EventHandler.cpp:

(WebCore::scrollNode):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::scroll):

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

(WebCore::RenderEmbeddedObject::scroll):

  • rendering/RenderEmbeddedObject.h:
  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::scroll):

  • rendering/RenderListBox.h:
  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::scroll):

  • rendering/RenderTextControlSingleLine.h:

LayoutTests:

New test validates scrolling using the mouse wheel inside a select list.
This test is for the moment added as a ImageOnlyFailure expectation
because the current implementation of eventSender cannot simulate mouse wheel events.

Patch by Radu Stavila <stavila@adobe.com> on 2014-02-03
Reviewed by Simon Fraser.

  • TestExpectations:
  • fast/scrolling/scroll-select-list-expected.html: Added.
  • fast/scrolling/scroll-select-list.html: Added.
2:43 PM Changeset in webkit [163328] by oliver@apple.com
  • 5 edits
    3 adds in trunk

Deconstructed parameters aren't being placed in the correct scope
https://bugs.webkit.org/show_bug.cgi?id=128126

Reviewed by Antti Koivisto.

Source/JavaScriptCore:

Make sure we declare the bound parameter names as variables when
we reparse. In the BytecodeGenerator we now also directly ensure
that bound parameters are placed in the symbol table of the function
we're currently compiling. We then delay binding until just before
we start codegen for the body of the function so that we can ensure
the function has completely initialised all scope details.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::BytecodeGenerator):

  • bytecompiler/BytecodeGenerator.h:
  • parser/Parser.cpp:

(JSC::Parser<LexerType>::Parser):
(JSC::Parser<LexerType>::createBindingPattern):

LayoutTests:

Added tests for correct behaviour.

  • js/deconstructing-parameters-should-be-locals-expected.txt: Added.
  • js/deconstructing-parameters-should-be-locals.html: Added.
  • js/script-tests/deconstructing-parameters-should-be-locals.js: Added.

(description.value.string_appeared_here.readDeconstructedParameter):
(overwriteDeconstructedParameter):
(readCapturedDeconstructedParameter):
(overwriteCapturedDeconstructedParameter):

2:39 PM Changeset in webkit [163327] by zoltan@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Reorder my e-mail addresses in contributors.json,
so bugzilla will auto complete my actual bugzilla username.

  • Scripts/webkitpy/common/config/contributors.json:
2:04 PM Changeset in webkit [163326] by andersca@apple.com
  • 3 edits in trunk/Source/WTF

Consolidate StringImpl tail handling into two functions
https://bugs.webkit.org/show_bug.cgi?id=128122

Reviewed by Andreas Kling.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::createUninitializedInternalNonEmpty):
(WTF::StringImpl::reallocateInternal):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::tryCreateUninitialized):
(WTF::StringImpl::allocationSize):
(WTF::StringImpl::tailPointer):

1:52 PM Changeset in webkit [163325] by ap@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Update JS whitespace definition for changes in Unicode 6.3
https://bugs.webkit.org/show_bug.cgi?id=127450

Reviewed by Oliver Hunt.

  • parser/Lexer.h: (JSC::Lexer<UChar>::isWhiteSpace): Part 2 of the fix, update lexer too.
1:51 PM Changeset in webkit [163324] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk/Source/JavaScriptCore

Added GetTypedArrayByteOffset to FTL
https://bugs.webkit.org/show_bug.cgi?id=127589

Patch by Matthew Mirman <mmirman@apple.com> on 2014-02-03
Reviewed by Filip Pizlo.

  • ftl/FTLAbstractHeapRepository.h:
  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileGetTypedArrayByteOffset):

  • tests/stress/ftl-gettypedarrayoffset-simple.js: Added.

(foo):

  • tests/stress/ftl-gettypedarrayoffset-wasteful.js: Added.

(foo):

1:46 PM Changeset in webkit [163323] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

WebKit2 View Gestures: Two smart magnifications in a row without moving the mouse should zoom out
https://bugs.webkit.org/show_bug.cgi?id=128108
<rdar://problem/15914539>

Reviewed by Darin Adler.

  • UIProcess/mac/ViewGestureController.h:
  • UIProcess/mac/ViewGestureController.mm:

(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::handleMagnificationGesture):
Clear the bit that tells us that we should do "smart" things (because the
last gesture was also a smart magnification gesture) when the user manually pinch-magnifies.

(WebKit::ViewGestureController::didCollectGeometryForSmartMagnificationGesture):
Zoom out if the mouse hasn't moved since the last pinch-magnification gesture.

12:59 PM Changeset in webkit [163322] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Debugger created JSActivations should account for CodeBlock::framePointerOffsetToGetActivationRegisters().
<https://webkit.org/b/128112>

Reviewed by Geoffrey Garen.

Currently, when the DebuggerCallFrame creates the JSActivation object
for a frame, it does not account for the framePointerOffsetToGetActivationRegisters()
offset that needs to be added for DFG frames.

Instead of special casing the fix in DebuggerCallFrame::scope(), we fix
this by adding CodeBlock::framePointerOffsetToGetActivationRegisters() to
callFrame->registers() in the JSActivation::create() method that does not
explicitly take a Register*. This ensures that JSActivation::create() will
always do the right thing instead of only being a special case for the
LLINT and baselineJIT.

Apart from the DebuggerCallFrame, this create() function is only called by
slow paths in the LLINT and baselineJIT. Hence, it is not performance
critical.

  • runtime/JSActivation.h:

(JSC::JSActivation::create):

12:39 PM Changeset in webkit [163321] by ggaren@apple.com
  • 18 edits
    3 adds in trunk

Simplified name scope creation for function expressions
https://bugs.webkit.org/show_bug.cgi?id=128031

Reviewed by Mark Lam.

Source/JavaScriptCore:

3X speedup on js/regress/script-tests/function-with-eval.js.

We used to emit bytecode to push a name into local scope every
time a function that needed such a name executed. Now, we push the name
into scope once on the function object, and leave it there.

This is faster, and it also reduces the number of variable resolution
modes you have to worry about when thinking about bytecode and the
debugger.

This patch is slightly complicated by the fact that we don't know if
a function needs a name scope until we parse its body. So, there's some
glue code in here to delay filling in a function's scope until we parse
its body for the first time.

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::generateFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedFunctionExecutable::functionMode): Renamed
functionNameIsInScopeToggle to functionMode.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator): No need to emit convert_this
when debugging. The debugger will perform the conversion as needed.

(JSC::BytecodeGenerator::resolveCallee):
(JSC::BytecodeGenerator::addCallee): Simplified this code by removing
the "my function needs a name scope, but didn't allocate one" mode.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::prepareForRepeatCall): Pass a scope slot through to
CodeBlock generation, so we can add a function name scope if the parsed
function body requires one.

  • jit/JITOperations.cpp:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::setUpCall): Ditto.

  • parser/NodeConstructors.h:

(JSC::FuncExprNode::FuncExprNode):
(JSC::FuncDeclNode::FuncDeclNode):

  • parser/Nodes.cpp:

(JSC::FunctionBodyNode::finishParsing):

  • parser/Nodes.h:

(JSC::FunctionBodyNode::functionMode): Updated for rename.

  • parser/ParserModes.h:

(JSC::functionNameIsInScope):
(JSC::functionNameScopeIsDynamic): Helper functions for reasoning about
how crazy JavaScript language semantics are.

  • runtime/ArrayPrototype.cpp:

(JSC::isNumericCompareFunction):
(JSC::attemptFastSort): Updated for interface changes above.

  • runtime/Executable.cpp:

(JSC::ScriptExecutable::newCodeBlockFor):
(JSC::ScriptExecutable::prepareForExecutionImpl):
(JSC::FunctionExecutable::FunctionExecutable):

  • runtime/Executable.h:

(JSC::ScriptExecutable::prepareForExecution):
(JSC::FunctionExecutable::functionMode):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::addNameScopeIfNeeded):

  • runtime/JSFunction.h:
  • runtime/JSNameScope.h:

(JSC::JSNameScope::create):
(JSC::JSNameScope::JSNameScope): Added machinery for pushing a function
name scope onto a function when we first discover that it's needed.

LayoutTests:

Added a performance regression test.

  • js/regress/function-with-eval-expected.txt: Added.
  • js/regress/function-with-eval.html: Added.
  • js/regress/script-tests/function-with-eval.js: Added.

(foo):
(bar):

12:34 PM Changeset in webkit [163320] by Chris Fleizach
  • 3 edits
    2 adds in trunk

AX: WebKit should support @headers/@id for complex accessible web tables
https://bugs.webkit.org/show_bug.cgi?id=128114

Reviewed by Darin Adler.

Source/WebCore:

Expose the headers attribute for table cells to accessibility.

Test: platform/mac/accessibility/table-headers-attribute.html

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::columnHeaders):

LayoutTests:

  • platform/mac/accessibility/table-headers-attribute-expected.txt: Added.
  • platform/mac/accessibility/table-headers-attribute.html: Added.
12:26 PM Changeset in webkit [163319] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

CTTE: RenderSVGGradientStop always has a SVGStopElement.
<https://webkit.org/b/128107>

RenderSVGGradientStop is never anonymous and always has a
corresponding SVGStopElement. Codify this by adding an element()
overload that returns an SVGStopElement&.

Also added missing overrides and made most functions private.

Reviewed by Darin Adler.

  • rendering/svg/RenderSVGGradientStop.cpp:

(WebCore::RenderSVGGradientStop::styleDidChange):
(WebCore::RenderSVGGradientStop::gradientElement):

  • rendering/svg/RenderSVGGradientStop.h:
  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeSVGGradientStop):

11:34 AM Changeset in webkit [163318] by ddkilzer@apple.com
  • 4 edits in trunk/Source/WebCore

Remove CachedImageManual class
<http://webkit.org/b/128043>

Reviewed by Darin Adler.

Get rid of the CachedImageManual class by inlining its
functionality into CachedImage. This makes it possible to
de-virtual-ize isManual() (renamed to isManuallyCached()) and to
make CachedImage final. The size of CachedImage does not
increase because we turn an existing bool into a bitfield to add
an m_isManuallyCached bit, and create a static CachedImageClient
in MemoryCache.cpp as the "fake" client to keep the manually
cached image alive in the cache.

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::CachedImage): Set m_isManuallyCached
bitfield. For one overloaded constructor, move the
CachedImageManual code into the CachedImage constructor.
(WebCore::CachedImageManual::CachedImageManual): Remove.
(WebCore::CachedImage::mustRevalidateDueToCacheHeaders): Move
method from CachedImageManual to CachedImage, and put
ManuallyCached behavior behind a check.

  • loader/cache/CachedImage.h: Update includes. Make CachedImage

final. Add CachedImage::CacheBehaviorType enum when manually
cached images are created. Move CachedImageManual methods into
CachedImage, remove addFakeClient() and removeFakeClient()
methods (MemoryCache methods use addClient() and removeClient()
with a static CachedImageClient), and remove the
CachedImageManual class definition. Change
m_shouldPaintBrokenImage to a bitfield and add
m_isManuallyCached bitfield.

  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::addImageToCache): Use std::unique_ptr and
remove useless NULL check after calling CachedImage constructor.
(WebCore::MemoryCache::removeImageFromCache):

  • Update to use CachedImage class instead of CachedImageManual.
11:07 AM Changeset in webkit [163317] by zandobersek@gmail.com
  • 18 edits in trunk/Source/WebCore

Move the webdatabase module source code to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=127278

Reviewed by Antti Koivisto.

Replace the majority of OwnPtr uses in the webdatabase module with std::unique_ptr.
The only remaining uses are due to ScriptExecutionContext::Task subclasses.

  • Modules/webdatabase/AbstractSQLTransactionBackend.h:
  • Modules/webdatabase/Database.cpp:
  • Modules/webdatabase/DatabaseTask.h:
  • Modules/webdatabase/DatabaseThread.cpp:

(WebCore::DatabaseThread::DatabaseThread):

  • Modules/webdatabase/DatabaseThread.h:
  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::addOpenDatabase):

  • Modules/webdatabase/DatabaseTracker.h:
  • Modules/webdatabase/OriginLock.cpp:
  • Modules/webdatabase/SQLStatement.cpp:
  • Modules/webdatabase/SQLStatement.h:
  • Modules/webdatabase/SQLStatementBackend.cpp:

(WebCore::SQLStatementBackend::create):
(WebCore::SQLStatementBackend::SQLStatementBackend):

  • Modules/webdatabase/SQLStatementBackend.h:
  • Modules/webdatabase/SQLTransaction.cpp:

(WebCore::SQLTransaction::executeSQL):

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::doCleanup):
(WebCore::SQLTransactionBackend::computeNextStateAndCleanupIfNeeded):
(WebCore::SQLTransactionBackend::executeSQL):
(WebCore::SQLTransactionBackend::openTransactionAndPreflight):
(WebCore::SQLTransactionBackend::cleanupAfterTransactionErrorCallback):

  • Modules/webdatabase/SQLTransactionBackend.h:
  • Modules/webdatabase/SQLTransactionBackendSync.cpp:

(WebCore::SQLTransactionBackendSync::SQLTransactionBackendSync):
(WebCore::SQLTransactionBackendSync::begin):
(WebCore::SQLTransactionBackendSync::commit):
(WebCore::SQLTransactionBackendSync::rollback):

  • Modules/webdatabase/SQLTransactionBackendSync.h:
10:52 AM Changeset in webkit [163316] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

CTTE: Grab bag of SVGRenderTreeAsText cleanups.
<https://webkit.org/b/128099>

Made some of the DRT SVG functions take more specific types than
RenderObject. Removed some redundant casts.

Reviewed by Anders Carlsson.

  • rendering/RenderTreeAsText.cpp:

(WebCore::write):

  • rendering/svg/SVGRenderTreeAsText.h:
  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeSVGResourceContainer):
(WebCore::writeSVGContainer):

Make writeSVGResourceContainer() and writeSVGContainer() take the
final type instead of RenderObject.

(WebCore::writeStyle):
(WebCore::writePositionAndStyle):

Make these take RenderElement instead of RenderObject.

(WebCore::writeChildren):

Use child renderer iterator.

(WebCore::writeResources):

Remove unnecessary cast.

10:38 AM Changeset in webkit [163315] by Darin Adler
  • 6 edits
    5 deletes in trunk/Source/WTF

Remove Unicode.h
https://bugs.webkit.org/show_bug.cgi?id=128106

Reviewed by Anders Carlsson.

  • GNUmakefile.list.am: Removed files.
  • WTF.vcxproj/WTF.vcxproj: Ditto.
  • WTF.vcxproj/WTF.vcxproj.filters: Ditto.
  • WTF.xcodeproj/project.pbxproj: Ditto.
  • wtf/CMakeLists.txt: Ditto.
  • wtf/unicode/ScriptCodesFromICU.h: Removed.
  • wtf/unicode/Unicode.h: Removed.
  • wtf/unicode/UnicodeMacrosFromICU.h: Removed.
  • wtf/unicode/icu/UnicodeIcu.h: Removed.
  • wtf/unicode/wchar/UnicodeWchar.cpp: Removed.
  • wtf/unicode/wchar/UnicodeWchar.h: Removed.
10:37 AM Changeset in webkit [163314] by dbates@webkit.org
  • 3 edits in trunk/Tools

WebKit Bot Watcher's Dashboard: Defer subsequent resource loads from access-restricted build bot when
iteration fails to load with HTTP 401 status code
https://bugs.webkit.org/show_bug.cgi?id=128077

Reviewed by Alexey Proskuryakov.

Similar to the fix for <https://bugs.webkit.org/show_bug.cgi?id=127849>, we should only prompt for
the HTTP credentials of a build bot so long as an earlier authentication request wasn't cancelled
(i.e. failed with an HTTP 401 Unauthorized status code). Currently an authentication dialog will be
presented for an iteration each time the update queue timer fires until a person successfully
authenticates. Instead we should update the authentication status of the build bot on receiving an
HTTP 401 response code such that we defer subsequent requests to load any resource from the access-
restricted build bot when the queue update timer fires.

A person must explicitly click the "unauthorized" status line shown for the queue associated with the
iteration in the dashboard and authenticate successfully for the iteration to be loaded once an
authentication request for an iteration is cancelled.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:

(BuildbotIteration.prototype.update): Early return if the associated Buildbot was given invalid credentials.
Also notify the associated Buildbot and update the queue view when a load failed with an HTTP 401 status code.
(BuildbotIteration.prototype.loadLayoutTestResults): Ditto.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:

(BuildbotQueueView): Modified to call BuildbotQueueView.prototype._unauthorizedAccess instead of
QueueView.prototype._updateSoon when event BuildbotQueue.Event.UnauthorizedAccess is received.
(BuildbotQueueView.prototype._unauthorizedAccess): Added.

10:08 AM Changeset in webkit [163313] by dbates@webkit.org
  • 2 edits in trunk/Tools

WebKit Bot Watcher's Dashboard: Teach JSON.load() to interpret third argument as either an
option dictionary or a failure callback
https://bugs.webkit.org/show_bug.cgi?id=128080

Reviewed by Alexey Proskuryakov.

Currently JSON.load() takes a failure callback function as its third argument and
an option dictionary as its fourth argument. So, a caller that wants to ignore errors
and pass an option dictionary must pass null or a reference to an empty function for
the value of third argument. Instead, we should make the third argument polymorphic for
convenience. Then a caller can either pass a failure callback function or an option dictionary.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:
9:39 AM Changeset in webkit [163312] by Darin Adler
  • 2 edits in trunk/Source/WebKit/win

Try to fix the WinCairo build.

  • WebDownloadCurl.cpp:

(WebDownload::didReceiveResponse): characters -> deprecatedCharacters.

9:39 AM Changeset in webkit [163311] by Darin Adler
  • 1 edit in trunk/Source/WebKit2/ChangeLog

Try to fix 32-bit Mac build.

  • WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:

(WebKit::convertStringToKeyCodes): Use deprecatedCharacters.

9:30 AM Changeset in webkit [163310] by Darin Adler
  • 70 edits in trunk/Source

Stop using Unicode.h
https://bugs.webkit.org/show_bug.cgi?id=127633

Reviewed by Anders Carlsson.

Source/JavaScriptCore:

  • parser/Lexer.h:
  • runtime/JSGlobalObjectFunctions.h:
  • yarr/YarrCanonicalizeUCS2.h:
  • yarr/YarrInterpreter.h:
  • yarr/YarrParser.h:
  • yarr/YarrPattern.h:

Removed includes of <wtf/unicode/Unicode.h>, adding includes of
ICU headers and <wtf/text/LChar.h> as needed to replace it.

Source/WebCore:

  • Modules/indexeddb/IDBKeyPath.cpp:
  • css/CSSFontFace.h:
  • css/CSSOMUtils.h:
  • css/CSSSegmentedFontFace.h:
  • css/CSSUnicodeRangeValue.h:
  • editing/Editor.cpp:
  • editing/SmartReplace.h:
  • html/parser/HTMLTokenizer.cpp:
  • loader/DocumentLoader.cpp:
  • page/ContextMenuController.cpp:
  • page/Settings.h:
  • platform/DateComponents.h:
  • platform/SharedBuffer.cpp:
  • platform/graphics/Color.h:
  • platform/graphics/FontCache.h:
  • platform/graphics/FontData.h:
  • platform/graphics/FontDescription.h:
  • platform/graphics/FontFastPath.cpp:
  • platform/graphics/FontGenericFamilies.h:
  • platform/graphics/FontGlyphs.cpp:
  • platform/graphics/GlyphMetricsMap.h:
  • platform/graphics/GlyphPage.h:
  • platform/graphics/GlyphPageTreeNode.cpp:
  • platform/graphics/GlyphPageTreeNode.h:
  • platform/graphics/SVGGlyph.cpp:
  • platform/graphics/WidthIterator.h:
  • platform/graphics/freetype/SimpleFontDataFreeType.cpp:
  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
  • platform/graphics/mac/ComplexTextController.h:
  • platform/graphics/win/QTMovie.h:
  • platform/graphics/wince/FontWinCE.cpp:
  • platform/text/BidiContext.h:
  • platform/text/Hyphenation.h:
  • platform/text/LocaleToScriptMapping.h:
  • platform/text/TextBoundaries.cpp:
  • platform/text/TextBoundaries.h:
  • platform/text/TextBreakIterator.h:
  • platform/text/TextCodec.h:
  • platform/text/TextEncoding.h:
  • platform/text/TextEncodingRegistry.h:
  • platform/text/TextStream.h:
  • platform/text/icu/UTextProvider.h:
  • platform/text/icu/UTextProviderLatin1.h:
  • platform/text/icu/UTextProviderUTF16.h:
  • platform/text/wchar/TextBreakIteratorWchar.cpp:
  • platform/win/WebCoreTextRenderer.cpp:
  • rendering/RootInlineBox.cpp:
  • rendering/SimpleLineLayout.cpp:
  • rendering/SimpleLineLayoutFunctions.cpp:
  • rendering/break_lines.h:
  • svg/SVGFontData.cpp:

Removed includes of <wtf/unicode/Unicode.h>, adding includes of
ICU headers and <wtf/text/LChar.h> as needed to replace it.

Source/WTF:

  • wtf/StringHasher.h:
  • wtf/dtoa.h:
  • wtf/text/ASCIIFastPath.h:
  • wtf/text/LChar.h:
  • wtf/text/StringBuffer.h:
  • wtf/text/StringImpl.h:
  • wtf/text/WTFString.cpp:
  • wtf/unicode/CharacterNames.h:
  • wtf/unicode/Collator.h:
  • wtf/unicode/UTF8.h:

Removed includes of <wtf/unicode/Unicode.h>, adding includes of
ICU headers and <wtf/text/LChar.h> as needed to replace it.

9:23 AM Changeset in webkit [163309] by jberlin@webkit.org
  • 9 edits
    6 deletes in trunk

Revert r163299 since it broke the ML 32-bit Release build

Source/WebCore:

  • html/HTMLAnchorElement.cpp:

(WebCore::parsePortFromStringPosition):
(WebCore::HTMLAnchorElement::hash):
(WebCore::HTMLAnchorElement::setHash):
(WebCore::HTMLAnchorElement::host):
(WebCore::HTMLAnchorElement::setHost):
(WebCore::HTMLAnchorElement::hostname):
(WebCore::HTMLAnchorElement::setHostname):
(WebCore::HTMLAnchorElement::pathname):
(WebCore::HTMLAnchorElement::setPathname):
(WebCore::HTMLAnchorElement::port):
(WebCore::HTMLAnchorElement::setPort):
(WebCore::HTMLAnchorElement::protocol):
(WebCore::HTMLAnchorElement::setProtocol):
(WebCore::HTMLAnchorElement::search):
(WebCore::HTMLAnchorElement::origin):
(WebCore::HTMLAnchorElement::setSearch):
(WebCore::HTMLAnchorElement::toString):

  • html/HTMLAnchorElement.h:
  • html/HTMLAnchorElement.idl:
  • html/HTMLAreaElement.idl:
  • html/URLUtils.idl:

LayoutTests:

  • fast/dom/HTMLAnchorElement/anchor-password-expected.txt: Removed.
  • fast/dom/HTMLAnchorElement/anchor-password.html: Removed.
  • fast/dom/HTMLAnchorElement/anchor-username-expected.txt: Removed.
  • fast/dom/HTMLAnchorElement/anchor-username.html: Removed.
  • fast/dom/HTMLAreaElement/area-password.html: Removed.
  • fast/dom/HTMLAreaElement/area-username.html: Removed.
  • js/dom/dom-static-property-for-in-iteration-expected.txt:
  • js/dom/dom-static-property-for-in-iteration.html:
6:51 AM Changeset in webkit [163308] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

6:48 AM Changeset in webkit [163307] by Lucas Forschler
  • 1 copy in tags/Safari-538.16

New Tag.

6:38 AM Changeset in webkit [163306] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r163174 - Don't allocate a new XMLHttpRequestStaticData every time staticData() is called
https://bugs.webkit.org/show_bug.cgi?id=127996

Reviewed by Andreas Kling.

std::once_flag should be static.

  • xml/XMLHttpRequest.cpp:

(WebCore::staticData):

6:34 AM Changeset in webkit [163305] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.4/Source/WebInspectorUI

Merge r163086 - Web Inspector: Implement open/close Console window shortcut
https://bugs.webkit.org/show_bug.cgi?id=127896

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-01-30
Reviewed by Timothy Hatcher.

  • UserInterface/KeyboardShortcut.js:

(WebInspector.KeyboardShortcut.prototype.get displayName):
Bug: Option symbol should be displayed as Alternative symbol (\u2387)
in non Mac platforms.

  • UserInterface/Main.js:

(WebInspector.contentLoaded):
Create keyboard shortcut for toggling console window.

6:32 AM Changeset in webkit [163304] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r163081 - [SOUP] Fix the build if !ENABLE(WEB_TIMING)
https://bugs.webkit.org/show_bug.cgi?id=127906

Reviewed by Gustavo Noronha Silva.

  • platform/network/soup/SoupNetworkSession.cpp:
6:22 AM Changeset in webkit [163303] by Carlos Garcia Campos
  • 16 edits in releases/WebKitGTK/webkit-2.4

Merge r163072 - Remove ENABLE(JAVASCRIPT_DEBUGGER) leftovers
https://bugs.webkit.org/show_bug.cgi?id=127845

Reviewed by Joseph Pecoraro.

.:

  • Source/autotools/SetupWebKitFeatures.m4:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::supportsProfiling):

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.props:
  • win/tools/vsprops/FeatureDefinesCairo.props:
5:54 AM Changeset in webkit [163302] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

[CSS Regions] Fix selection and hover effect of content in region with overflow:hidden
https://bugs.webkit.org/show_bug.cgi?id=127101

Patch by Mihai Maerean <Mihai Maerean> on 2014-02-03
Reviewed by Mihnea Ovidenie.

Source/WebCore:

RenderNamedFlowFragments are not hit candidates. The hit test algorithm will pick the
parent layer, the one of the region.

Test: fast/regions/hover-overflow-hidden.html

  • rendering/RenderLayer.cpp:

(WebCore::isHitCandidate):

LayoutTests:

  • fast/regions/hover-overflow-hidden.html: Added.
  • fast/regions/hover-overflow-hidden-expected.html: Added.
5:43 AM Changeset in webkit [163301] by Carlos Garcia Campos
  • 12 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r163037 - Consolidate page loading functions
https://bugs.webkit.org/show_bug.cgi?id=127847

Reviewed by Tim Horton.

Get rid of the loadURL functions (and the LoadURL message), rename
loadURLRequest to loadRequest and change it to take a ResourceRequest instead
of an API::URLRequest.

  • UIProcess/API/C/WKPage.cpp:

(WKPageLoadURL):
(WKPageLoadURLWithUserData):
(WKPageLoadURLRequest):
(WKPageLoadURLRequestWithUserData):

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(-[WKBrowsingContextController loadRequest:userData:]):

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView loadRequest:]):

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_load_uri):
(webkit_web_view_load_request):

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::decidePolicyForNavigationAction):
(WebKit::WebInspectorProxy::createInspectorPage):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::loadRequest):
(WebKit::WebPageProxy::loadFile):

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

(WebKit::WebPageProxy::restoreFromSessionStateData):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadRequest):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
5:23 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
4:48 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
4:45 AM WebKitGTK/2.4.x created by Carlos Garcia Campos
4:13 AM Changeset in webkit [163300] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.4

Branch WebKitGTK+ for 2.4

3:13 AM Changeset in webkit [163299] by mjs@apple.com
  • 9 edits
    6 adds in trunk

Adopt URLUtils interface and template in HTMLAnchorElement and HTMLAreaElement
https://bugs.webkit.org/show_bug.cgi?id=128067

Reviewed by Antti Koivisto.

Source/WebCore:

Tests: fast/dom/HTMLAnchorElement/anchor-password.html

fast/dom/HTMLAnchorElement/anchor-username.html
fast/dom/HTMLAreaElement/area-password.html
fast/dom/HTMLAreaElement/area-username.html

  • html/HTMLAnchorElement.cpp:
  • html/HTMLAnchorElement.h:

(WebCore::HTMLAnchorElement::setHref): Add version that takes
(and ignores) ExceptionCode. This is needed because the URLUtil
base interface is used for URL, which can throw an exception,
and HTMLAnchorElement, which cannot.

  • html/HTMLAnchorElement.idl: implement URLUtils
  • html/HTMLAreaElement.idl: implement URLUtils
  • html/URLUtils.idl: Treat null as empty string for href

LayoutTests:

New tests for the newly added attributes.

  • fast/dom/HTMLAnchorElement/anchor-password-expected.txt: Added.
  • fast/dom/HTMLAnchorElement/anchor-password.html: Added.
  • fast/dom/HTMLAnchorElement/anchor-username-expected.txt: Added.
  • fast/dom/HTMLAnchorElement/anchor-username.html: Added.
  • fast/dom/HTMLAreaElement/area-password.html: Added.
  • fast/dom/HTMLAreaElement/area-username.html: Added.

Update a test to handle the new anchor properties.

  • js/dom/dom-static-property-for-in-iteration-expected.txt:
  • js/dom/dom-static-property-for-in-iteration.html:
2:05 AM Changeset in webkit [163298] by k.czech@samsung.com
  • 2 edits in trunk/Source/WebKit2

Build fix after r163289.

Unreviewed EFL build fix.

Use deprecatedCharacters.

  • UIProcess/efl/TextCheckerEfl.cpp:

(WebKit::TextChecker::requestCheckingOfString):

1:31 AM Changeset in webkit [163297] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix.

  • WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:

(WebKit::convertStringToKeyCodes):

1:16 AM Changeset in webkit [163296] by k.czech@samsung.com
  • 19 edits
    2 adds in trunk

[ATK] Expose aria-controls through ATK_RELATION_CONTROLLER_FOR
https://bugs.webkit.org/show_bug.cgi?id=127908

Reviewed by Chris Fleizach.

Source/WebCore:

Based on w3c, aria-controls could be exposed through ATK_RELATION_CONTROLLER_FOR.

Test: accessibility/aria-controls.html

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::supportsARIAControls):
(WebCore::AccessibilityObject::ariaControlsElements):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::supportsARIAFlowTo):
(WebCore::AccessibilityRenderObject::supportsARIAControls):
(WebCore::AccessibilityRenderObject::ariaControlsElements):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(setAtkRelationSetFromCoreObject):

Tools:

Updated AccessibilityUIElement both in WKTR and DRT so that aria-controls support could be tested properly.
Added empty stubs to not break mac builds.

  • DumpRenderTree/AccessibilityUIElement.cpp:

(ariaControlsElementAtIndexCallback):
(AccessibilityUIElement::getJSClass):

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(accessibilityElementAtIndex):
(AccessibilityUIElement::disclosedRowAtIndex):
(AccessibilityUIElement::ariaOwnsElementAtIndex):
(AccessibilityUIElement::ariaFlowToElementAtIndex):
(AccessibilityUIElement::ariaControlsElementAtIndex):

  • DumpRenderTree/ios/AccessibilityUIElementIOS.mm:

(AccessibilityUIElement::ariaControlsElementAtIndex):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::ariaControlsElementAtIndex):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::ariaControlsElementAtIndex):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::accessibilityElementAtIndex):
(WTR::AccessibilityUIElement::linkedUIElementAtIndex):
(WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
(WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
(WTR::AccessibilityUIElement::ariaControlsElementAtIndex):

  • WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:

(WTR::AccessibilityUIElement::ariaControlsElementAtIndex):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::ariaControlsElementAtIndex):

LayoutTests:

Tests whether aria-controls returns correct element at the given index.

  • accessibility/aria-controls-expected.txt: Added.
  • accessibility/aria-controls.html: Added.
  • platform/mac/TestExpectations: Skipped it, missing implementation.
1:02 AM Changeset in webkit [163295] by akling@apple.com
  • 19 edits in trunk/Source/WebCore

RenderSVGResource::removeClientFromCache() should take RenderElement&.
<https://webkit.org/b/128097>

Text renderers never have resources associated with them.
This is yet another step towards enforcing that at compile-time
by making all the resource cache interfaces deal in RenderElement.

Also marked the RenderSVGResourceSolidColor class final.

Reviewed by Darin Adler.

  • rendering/svg/RenderSVGResource.cpp:

(WebCore::removeFromCacheAndInvalidateDependencies):
(WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):

  • rendering/svg/RenderSVGResource.h:
  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::removeClientFromCache):

  • rendering/svg/RenderSVGResourceClipper.h:
  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::removeClientFromCache):

  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::RenderSVGResourceGradient::removeClientFromCache):

  • rendering/svg/RenderSVGResourceGradient.h:
  • rendering/svg/RenderSVGResourceMarker.cpp:

(WebCore::RenderSVGResourceMarker::removeClientFromCache):

  • rendering/svg/RenderSVGResourceMarker.h:
  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::removeClientFromCache):

  • rendering/svg/RenderSVGResourceMasker.h:
  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::removeClientFromCache):

  • rendering/svg/RenderSVGResourcePattern.h:
  • rendering/svg/RenderSVGResourceSolidColor.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::invalidateResourcesOfChildren):
(WebCore::SVGRenderSupport::layoutChildren):

  • rendering/svg/SVGResources.cpp:

(WebCore::SVGResources::removeClientFromCache):

  • rendering/svg/SVGResources.h:
12:41 AM Changeset in webkit [163294] by mitz@apple.com
  • 6 edits in trunk/Source

More iOS build fixing.

Source/WebCore:

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper arrayOfTextForTextMarkers:attributed:]):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::linkifyPhoneNumbers):

  • page/ios/FrameIOS.mm:

(WebCore::Frame::interpretationsForCurrentRoot):

Source/WebKit/ios:

  • Misc/WebNSStringDrawing.mm:

(-[NSString web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:includeEmoji:measureOnly:renderedStringOut:drawUnderline:]):
(-[NSString
web_drawInRect:withFont:ellipsis:alignment:letterSpacing:lineSpacing:includeEmoji:truncationRect:measureOnly:renderedStringOut:drawUnderline:]):

12:27 AM Changeset in webkit [163293] by mitz@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Correctly address Darin’s review comment on the last change.

  • runtime/Watchdog.h: Changed an OS(DARWIN) guard around formerly PLATFORM(MAC)-only member

variables to the equivalent OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK).

12:19 AM Changeset in webkit [163292] by berto@igalia.com
  • 3 edits in trunk/Source/WebKit2

Fix wrong mix of fcntl commands and flags
https://bugs.webkit.org/show_bug.cgi?id=127842

Reviewed by Darin Adler.

We are mixing the commands to set file descriptor and file status
flags in a couple of fcntl() calls. FD_CLOEXEC must be set using
F_SETFD, and the access mode flags (O_RDONLY, O_WRONLY, O_RDWR)
with F_SETFL.

This combines patches by Guillem Jover and Sergio Correia.

  • Platform/IPC/unix/ConnectionUnix.cpp:

(IPC::readBytesFromSocket):

  • Platform/unix/SharedMemoryUnix.cpp:

(WebKit::SharedMemory::createHandle):

12:17 AM Changeset in webkit [163291] by mitz@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Stop using PLATFORM(MAC) in JavaScriptCore except where it means “OS X but not iOS”
https://bugs.webkit.org/show_bug.cgi?id=128098

Reviewed by Darin Adler.

  • API/JSValueRef.cpp:

(JSValueUnprotect): Added an explicit !PLATFORM(IOS) in guards for the Evernote workaround,
which is only needed on OS X.

  • API/tests/testapi.c:
(main): Changed PLATFORM(MAC)
PLATFORM(IOS) guards to OS(DARWIN), because they were

surrounding tests for code that is itself guarded by OS(DARWIN).

  • runtime/Watchdog.h: Changed PLATFORM(MAC) to OS(DARWIN).
  • tools/CodeProfiling.cpp:

(JSC::CodeProfiling::begin): Changed PLATFORM(MAC) to
OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK).
(JSC::CodeProfiling::end): Ditto.

12:10 AM Changeset in webkit [163290] by Darin Adler
  • 2 edits in trunk/Source/WebCore

Try to fix iOS build.

  • html/BaseDateAndTimeInputType.cpp:

(WebCore::BaseDateAndTimeInputType::parseToDateComponents):
Use deprecatedCharacters.

Feb 2, 2014:

11:52 PM Changeset in webkit [163289] by Darin Adler
  • 12 edits
    3 deletes in trunk/Source

Obey "delete this" comments, including deleting String::characters and friends
https://bugs.webkit.org/show_bug.cgi?id=126865

Reviewed by Andreas Kling.

Source/WebCore:

  • CMakeLists.txt: Deleted HTMLParserErrorCodes.cpp.
  • GNUmakefile.list.am: Deleted HTMLParserErrorCodes.cpp/h, and HTMLParserQuirks.h.
  • WebCore.vcxproj/WebCore.vcxproj: Deleted HTMLParserErrorCodes.cpp/h.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • html/HTMLParserErrorCodes.cpp: Removed.
  • html/HTMLParserErrorCodes.h: Removed.
  • html/HTMLParserQuirks.h: Removed.
  • rendering/RenderText.h: Deleted the characters function, leaving behind the

deprecatedCharacters function.

Source/WTF:

  • wtf/text/AtomicString.h: Deleted the characters function.
  • wtf/text/StringBuilder.h: Deleted the characters function, leaving behind the

deprecatedCharacters function.

  • wtf/text/StringImpl.h: Ditto.
  • wtf/text/WTFString.h: Ditto. Also added a constructor that takes a StringImpl&,

helpful for later string refactoring.

11:31 PM Changeset in webkit [163288] by mitz@apple.com
  • 10 edits in trunk/Source/WTF

Stop using PLATFORM(MAC) in WTF except where it means “OS X but not iOS”
https://bugs.webkit.org/show_bug.cgi?id=128089

Reviewed by Darin Adler.

Replaced all uses of PLATFORM(MAC) that weren’t accompanied by !PLATFORM(IOS) with
equivalent(*) tests that are more idiomatic and will not change once PLATFORM(MAC) changes to
be false when building for iOS.

  • - One exception noted below.
  • wtf/AutodrainedPool.h: Changed PLATFORM(MAC) to USE(FOUNDATION), because NSAutoreleasePool

is a Foundation class.

  • wtf/CurrentTime.cpp:

(WTF::monotonicallyIncreasingTime): Changed PLATFORM(MAC) to OS(DARWIN), because Mach is
part of the Darwin kernel, but reordered such that the EFL and GLIB implementations continue
to take precedence regardless of the OS.

  • wtf/MainThread.cpp: Changed PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK).
  • wtf/MainThread.h: Ditto.
  • wtf/Platform.h: Changed USE(CG) and USE(CA) to depend on COCOA, rather than MAC or IOS.

Ditto for USE(CFURLCACHE), HAVE(ACCESSIBILITY), USE(PROTECTION_SPACE_AUTH_CALLBACK),
USE(ACCESSIBILITY_CONTEXT_MENUS), USE(EXPORT_MACROS), USE(AVFOUNDATION),
USE(REQUEST_ANIMATION_FRAME_TIMER), USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR),
USE(CONTENT_FILTERING), USE(UNIFIED_TEXT_CHECKING), USE(MARKER_REMOVAL_UPON_EDITING),
USE(AUDIO_SESSION), USE(IOSURFACE), and ENABLE(CSS3_TEXT_DECORATION_SKIP_INK). Changed
PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK) in controlling various
JavaScriptCore or JavaScriptCore-dependent behaviors.

  • wtf/RunLoop.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • wtf/RunLoopTimerCF.cpp: Ditto.
  • wtf/SchedulePair.h: Changed PLATFORM(MAC) to USE(FOUNDATION), since it was used to guard

usage of Foundation API.

  • wtf/Threading.cpp: Added an explicit !PLATFORM(IOS) in a guard around something needed

only on OS X and Windows.

10:19 PM Changeset in webkit [163287] by beidson@apple.com
  • 5 edits in trunk/Source

IDB: Cannot open new databases with the default version
https://bugs.webkit.org/show_bug.cgi?id=128096

Reviewed by Tim Horton.

Source/WebCore:

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::openConnectionInternal): Update logic to handle the

current version being NoIntVersion.

  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::IDBDatabaseBackend::VersionChangeOperation::perform): Update ASSERT.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): New databases should

have the magic "no version set" version.

10:18 PM Changeset in webkit [163286] by Darin Adler
  • 2 edits in trunk/Source/WebCore

Fix context save/restore mistake spotted in SVGInlineTextBox::paintTextWithShadows
https://bugs.webkit.org/show_bug.cgi?id=128095

Reviewed by Andreas Kling.

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::paintTextWithShadows): Move calls to GraphicsContext::restore
and GraphicsContext::clearShadow before restoreGraphicsContextAfterTextPainting, since that
function can swap contexts.

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

Modernize RenderSVGText::locateRenderSVGTextAncestor().
<https://webkit.org/b/128093>

Make locateRenderSVGTextAncestor() take a reference, and simplify it
internally with lineageOfType.

Switched callers to use 'auto' for the return type so we get some
devirtualization freebies.

Reviewed by Anders Carlsson.

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::objectBoundingBox):
(WebCore::RenderSVGInline::strokeBoundingBox):
(WebCore::RenderSVGInline::repaintRectInLocalCoordinates):
(WebCore::RenderSVGInline::absoluteQuads):
(WebCore::RenderSVGInline::addChild):
(WebCore::RenderSVGInline::removeChild):

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::setTextInternal):
(WebCore::RenderSVGInlineText::styleDidChange):

  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::createMaskAndSwapContextForTextGradient):
(WebCore::clipToTextMask):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::locateRenderSVGTextAncestor):

  • rendering/svg/RenderSVGText.h:

(WebCore::RenderSVGText>):

  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:

(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextRenderer):

  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::measureTextRenderer):

  • svg/SVGTextPositioningElement.cpp:

(WebCore::SVGTextPositioningElement::svgAttributeChanged):

8:54 PM Changeset in webkit [163284] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Add a logic for checking multi touch in GestureRecognizer::noGesture
https://bugs.webkit.org/show_bug.cgi?id=127675

Patch by Sanghyup Lee <sh53.lee@samsung.com> on 2014-02-02
Reviewed by Gyuyoung Kim.

When processing TouchStart event in GestureRecognizer::noGesture(), we should
check the number of touch points to distinguish if the gesture is single tap
or pinch zoom. Current logic only considers the event as single tap.

  • UIProcess/API/efl/GestureRecognizer.cpp:

(WebKit::GestureRecognizer::noGesture):

8:50 PM Changeset in webkit [163283] by akling@apple.com
  • 13 edits in trunk/Source/WebCore

Modernize the toRenderSVGResourceContainer() helper.
<https://webkit.org/b/128091>

Make toRenderSVGResourceContainer() a free function like all the
other casting helpers. Use references instead of pointers where
applicable.

Reviewed by Anders Carlsson.

  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
(WebCore::RenderLayer::FilterInfo::removeReferenceFilterClients):

  • rendering/RenderObject.cpp:
  • rendering/RenderObject.h:
  • rendering/svg/RenderSVGGradientStop.cpp:

(WebCore::RenderSVGGradientStop::styleDidChange):

  • rendering/svg/RenderSVGResource.cpp:

(WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):

  • rendering/svg/RenderSVGResourceContainer.h:
  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::buildPrimitives):

  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeSVGResourceContainer):

  • rendering/svg/SVGResourcesCycleSolver.cpp:

(WebCore::SVGResourcesCycleSolver::resolveCycles):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::svgAttributeChanged):

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

Minor SVGRootInlineBox cleanup.
<https://webkit.org/b/128094>

Remove two virtual functions and sprinkle some missing overrides.

Reviewed by Anders Carlsson.

  • rendering/svg/SVGRootInlineBox.h:
6:35 PM Changeset in webkit [163281] by oliver@apple.com
  • 1 edit in trunk/Source/WebCore/ChangeLog

I forgot to save the changelog prior to submitting.

6:25 PM Changeset in webkit [163280] by oliver@apple.com
  • 41 edits in trunk

Push DOM attributes into the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=127969

Reviewed by Mark Lam.

Source/WebCore:

Start redoing code generation for attributes.

  • bindings/js/JSDOMBinding.h:

(WebCore::getStaticPropertySlotEntryWithoutCaching):
(WebCore::getStaticPropertySlotEntryWithoutCaching<JSDOMWrapper>):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(HasComplexGetOwnProperty):
(ConstructorShouldBeOnInstance):
(AttributeShouldBeOnInstance):
(InstanceAttributeCount):
(PrototypeAttributeCount):
(InstanceOverridesGetOwnPropertySlot):
(PrototypeOverridesGetOwnPropertySlot):
(GenerateAttributesHashTable):
(GenerateImplementation):

LayoutTests:

Update layout test results

  • fast/dom/wrapper-classes-expected.txt:
  • js/dom/constructor-attributes-expected.txt:
  • js/dom/dom-static-property-for-in-iteration-expected.txt:
  • js/dom/script-tests/constructor-attributes.js:
6:15 PM Changeset in webkit [163279] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

RenderSVGResourceContainer clients are always RenderElement.
<https://webkit.org/b/128088>

All clients of RenderSVGResourceContainer are going to be RenderElement,
so make the interface take RenderElement& instead of RenderObject*.

Also modernized the code a bit with C++11 range for loops.

Reviewed by Sam Weinig.

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::addClient):
(WebCore::RenderSVGResourceContainer::removeClient):

  • rendering/svg/RenderSVGResourceContainer.h:
  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::addResourcesFromRenderer):
(WebCore::SVGResourcesCache::removeResourcesFromRenderer):

5:40 PM Changeset in webkit [163278] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Subpixel rendering: Use floorf/roundf/fabs in device snapping helpers.
https://bugs.webkit.org/show_bug.cgi?id=128075

Reviewed by Darin Adler.

No change in functionality.

  • platform/LayoutUnit.h:

(WebCore::roundToDevicePixel):
(WebCore::floorToDevicePixel):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::platformInit):

5:05 PM Changeset in webkit [163277] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

SVGDocumentExtensions::resourcesCache() should return a reference.
<https://webkit.org/b/128087>

The SVGResourcesCache is always present when the Document is using
SVG extensions, so make this return a reference and propagate that
knowledge to the call site.

This gets rid of an assertion and some rickety looking ->'s.
Also converted a loop to use C++11 range for syntax.

Reviewed by Sam Weinig.

  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::resourcesCacheFromRenderer):
(WebCore::SVGResourcesCache::cachedResourcesForRenderObject):
(WebCore::SVGResourcesCache::clientStyleChanged):
(WebCore::SVGResourcesCache::clientWasAddedToTree):
(WebCore::SVGResourcesCache::clientWillBeRemovedFromTree):
(WebCore::SVGResourcesCache::clientDestroyed):
(WebCore::SVGResourcesCache::resourceDestroyed):

  • svg/SVGDocumentExtensions.h:

(WebCore::SVGDocumentExtensions::resourcesCache):

5:03 PM Changeset in webkit [163276] by akling@apple.com
  • 12 edits in trunk/Source/WebCore

RenderSVGInlineText::computeNewScaledFontForStyle() should take references.
<https://webkit.org/b/128086>

Make computeNewScaledFontForStyle() take renderer and style by reference
instead of taking a pointer and asserting that it's non-null.

Reviewed by Darin Adler.

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::updateScaledFont):
(WebCore::RenderSVGInlineText::computeNewScaledFontForStyle):

  • rendering/svg/RenderSVGInlineText.h:
  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::applyClippingToContext):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::shouldTransformOnTextPainting):

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::applyResource):

  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::createMaskAndSwapContextForTextGradient):
(WebCore::clipToTextMask):

  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::applyResource):

  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::buildPattern):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::paintDecorationWithStyle):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::calculateScreenFontSizeScalingFactor):
(WebCore::SVGRenderingContext::calculateTransformationToOutermostCoordinateSystem):

  • rendering/svg/SVGRenderingContext.h:
4:38 PM Changeset in webkit [163275] by Darin Adler
  • 16 edits in trunk/Source

Still more characters -> deprecatedCharacters (EWS keeps finding more)
https://bugs.webkit.org/show_bug.cgi?id=128076

Reviewed by Andreas Kling.

Source/WebCore:

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::setFontFeatures):
(WebCore::HarfBuzzShaper::shapeHarfBuzzRuns):
Use deprecatedCharacters.

Source/WebKit/win:

  • AccessibleTextImpl.cpp:

(AccessibleText::get_text):
(AccessibleText::get_textBeforeOffset):
(AccessibleText::get_textAfterOffset):
(AccessibleText::get_textAtOffset):
(AccessibleText::get_attributes):

  • DOMCSSClasses.cpp:

(DOMCSSStyleDeclaration::getPropertyValue):

  • DOMCoreClasses.cpp:

(DOMNode::nodeValue):
(DOMElement::getAttribute):
(DOMElement::font):

  • DOMHTMLClasses.cpp:

(DOMHTMLElement::innerText):
(DOMHTMLFormElement::action):
(DOMHTMLFormElement::method):
(DOMHTMLInputElement::value):
(DOMHTMLTextAreaElement::value):

  • MarshallingHelpers.cpp:

(MarshallingHelpers::PathStringToFileCFURLRef):

  • WebDataSource.cpp:

(WebDataSource::unreachableURL):

  • WebDownload.cpp:

(WebDownload::bundlePathForTargetPath):

  • WebDownloadCFNet.cpp:

(WebDownload::didFinish):

  • WebElementPropertyBag.cpp:

(convertStringToVariant):

  • WebFrame.cpp:

(WebFrame::searchForLabelsBeforeElement):
(WebFrame::matchLabelsAgainstElement):

  • WebHistory.cpp:

(WebHistory::addVisitedLinksToPageGroup):

  • WebKitGraphics.cpp:

(CenterTruncateStringToWidth):
(RightTruncateStringToWidth):

  • WebView.cpp:

(WebView::applicationNameForUserAgent):
(WebView::customUserAgent):
(WebView::groupName):
(WebView::selectedText):
(WebView::onIMERequestReconvertString):
Use deprecatedCharacters.

4:22 PM Changeset in webkit [163274] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Repatch code is passing the wrong args to lookupExceptionHandler.
<https://webkit.org/b/128085>

Reviewed by Oliver Hunt.

lookupExceptionHandler() is expecting 2 args: VM*, ExecState*.
The repatch code was only passing an ExecState*. A crash ensues.
This is now fixed.

  • jit/JIT.cpp:

(JSC::JIT::privateCompileExceptionHandlers):

  • jit/Repatch.cpp:

(JSC::generateProtoChainAccessStub):

3:46 PM Changeset in webkit [163273] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WK2: Selection is non editable content is not cleared when navigating to a different page.
https://bugs.webkit.org/show_bug.cgi?id=128084
<rdar://problem/15966166>

Reviewed by Dan Bernstein.

When resigning first responder, we need to cleanup the selection.

  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView resignFirstResponder]):

1:59 PM Changeset in webkit [163272] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

Subpixel rendering: Enable subpixel positioning/sizing/hairline border painting.
https://bugs.webkit.org/show_bug.cgi?id=128009

Reviewed by Simon Fraser.

Snap and clip to device pixels when painting boxes. Enable hairline painting
for solid border.

No existing context to test this functionality yet.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):
(WebCore::RenderBoxModelObject::drawBoxSideFromPath):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::drawLineForBoxSide):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::getRoundedBorderFor):
(WebCore::RenderStyle::getRoundedInnerBorderFor):

1:56 PM Changeset in webkit [163271] by weinig@apple.com
  • 5 edits in trunk/Source/WebCore

Add some missing override keywords
https://bugs.webkit.org/show_bug.cgi?id=128082

Reviewed by Antti Koivisto.

  • loader/DocumentThreadableLoader.h:
  • loader/LinkLoader.h:
  • loader/TextTrackLoader.h:
  • xml/parser/XMLDocumentParser.h:
1:07 PM Changeset in webkit [163270] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

Unreviewed Mac gardering after r163265.

  • platform/mac/TestExpectations:
12:37 PM Changeset in webkit [163269] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WK2: Cannot focus a second field in a page after the first has been focused.
https://bugs.webkit.org/show_bug.cgi?id=128055
<rdar://problem/15943652>

Reviewed by Simon Fraser.

When handling singleTap, we always need to send
a click to WebKit when we are already interacting with text.
Also, when we stop assisting the node, we should not call
resign responder, since that will trigger another unwanted blur.

  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView _singleTapRecognized:]):
(-[WKInteractionView _stopAssistingNode]):

12:31 PM Changeset in webkit [163268] by dbates@webkit.org
  • 2 edits in trunk/Tools

WebKit Bot Watcher's Dashboard: Access restricted queue should only prompt for HTTP credentials once per page load
https://bugs.webkit.org/show_bug.cgi?id=127849

I inadvertently used the equality operator instead of the identity operator when comparing the
value of the error HTTP status code with the numeric literal 401.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:

(BuildbotQueue.prototype.update):

12:29 PM Changeset in webkit [163267] by dbates@webkit.org
  • 2 edits in trunk/Tools

Attempt to fix production dashboard after <http://trac.webkit.org/changeset/163222>

Actually pass option dictionary to JSON.load(); JSON.load() takes four arguments with the
last-most argument being the option dictionary.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:

(BuildbotIteration.prototype.update):

11:55 AM Changeset in webkit [163266] by beidson@apple.com
  • 17 edits in trunk/Source

IDB: Support IDBFactory.deleteDatabase()
https://bugs.webkit.org/show_bug.cgi?id=128060

Reviewed by Filip Pizlo and Maciej Stachowiak (filesystem parts also Tim Hatcher and Simon Fraser)

Source/WebCore:

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::deleteDatabaseAsync):

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::deleteDatabase):

Change factory-level deleteDatabase to take opening and main frame origins:

  • Modules/indexeddb/IDBFactoryBackendInterface.h:
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:

(WebCore::IDBFactoryBackendLevelDB::deleteDatabase):

  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
  • Modules/indexeddb/IDBServerConnection.h:
  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:
  • WebCore.exp.in:

Source/WebKit2:

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:

(WebKit::DatabaseProcessIDBConnection::deleteDatabase):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::calculateAbsoluteDatabaseFilename): Central place to

calculate the database filename.

(WebKit::UniqueIDBDatabase::unregisterConnection):
(WebKit::UniqueIDBDatabase::shutdown): Pass shutdown type along.
(WebKit::UniqueIDBDatabase::shutdownBackingStore): If this is a delete shutdown, delete the DB.
(WebKit::UniqueIDBDatabase::didShutdownBackingStore):
(WebKit::UniqueIDBDatabase::deleteDatabase):
(WebKit::UniqueIDBDatabase::postMainThreadTask): All some tasks to bypass the no-more-request restriction.
(WebKit::UniqueIDBDatabase::postDatabaseTask): Ditto.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::~UniqueIDBDatabaseBackingStoreSQLite):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata): Use

calculateAbsoluteDatabaseFilename from UniqueIDBDatabase.

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:

(WebKit::WebIDBFactoryBackend::open): Update logging channel.
(WebKit::WebIDBFactoryBackend::deleteDatabase): Implement.

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
  • Shared/WebCrossThreadCopier.h:
10:38 AM Changeset in webkit [163265] by Alan Bujtas
  • 6 edits in trunk/Source/WebCore

Subpixel rendering: Introduce device pixel snapping helper functions.
https://bugs.webkit.org/show_bug.cgi?id=128049

Reviewed by Simon Fraser.

These functions help device pixel snapping during painting. They follow the logic of
the corresponding pixelSnappedInt* functions.

No change in functionality.

  • platform/LayoutUnit.h:

(WebCore::roundToDevicePixel):
(WebCore::floorToDevicePixel):
(WebCore::snapSizeToPixel):
(WebCore::snapSizeToDevicePixel):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::GraphicsContext):

  • platform/graphics/GraphicsContext.h:

(WebCore::GraphicsContext::pixelSnappingFactor):

  • platform/graphics/LayoutRect.h:

(WebCore::pixelSnappedForPainting):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::platformInit):

9:44 AM Changeset in webkit [163264] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Floor thickness and length after switching from int to float.
https://bugs.webkit.org/show_bug.cgi?id=128071

Reviewed by Antti Koivisto.

This is a temporary solution to fix the assertion on empty line drawing until after
device pixel snapping is added.

Covered by existing tests.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::drawLineForBoxSide):

9:27 AM Changeset in webkit [163263] by Antti Koivisto
  • 12 edits
    2 deletes in trunk/Source/WebCore

Remove StyleScopeResolver
https://bugs.webkit.org/show_bug.cgi?id=128069

Reviewed by Anders Carlsson.

This is dead code.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • css/DocumentRuleSets.cpp:

(WebCore::DocumentRuleSets::appendAuthorStyleSheets):
(WebCore::DocumentRuleSets::collectFeatures):

  • css/DocumentRuleSets.h:
  • css/ElementRuleCollector.h:

(WebCore::ElementRuleCollector::ElementRuleCollector):

  • css/RuleSet.cpp:

(WebCore::RuleSet::addChildRules):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::pushParentElement):
(WebCore::StyleResolver::popParentElement):
(WebCore::StyleResolver::locateSharedStyle):
(WebCore::StyleResolver::styleForElement):

  • css/StyleResolver.h:

(WebCore::StyleResolver::document):

  • css/StyleScopeResolver.cpp: Removed.
  • css/StyleScopeResolver.h: Removed.
  • style/StyleResolveTree.cpp:

(WebCore::Style::attachShadowRoot):
(WebCore::Style::resolveShadowTree):

8:15 AM Changeset in webkit [163262] by Alan Bujtas
  • 12 edits in trunk

Subpixel rendering: Make BorderEdge/RoundedRect::Radii LayoutUnit aware.
https://bugs.webkit.org/show_bug.cgi?id=128036

Reviewed by Darin Adler.

Source/WebCore:

Covered by existing tests.

  • platform/LayoutUnit.h:

(WebCore::LayoutUnit::operator++):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::BorderEdge::BorderEdge):
(WebCore::BorderEdge::usedWidth):
(WebCore::BorderEdge::getDoubleBorderStripeWidths):
(WebCore::RenderBoxModelObject::paintOneBorderSide):
(WebCore::RenderBoxModelObject::paintBorder):
(WebCore::RenderBoxModelObject::drawBoxSideFromPath):
(WebCore::calculateSideRectIncludingInner):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::drawLineForBoxSide):

  • rendering/RenderObject.h:
  • rendering/style/BorderData.h:

(WebCore::BorderData::borderLeftWidth):
(WebCore::BorderData::borderRightWidth):
(WebCore::BorderData::borderTopWidth):
(WebCore::BorderData::borderBottomWidth):

  • rendering/style/RenderStyle.cpp:

(WebCore::calcRadiiFor):
(WebCore::calcConstraintScaleFor):
(WebCore::RenderStyle::getRoundedInnerBorderFor):

  • rendering/style/RenderStyle.h:

LayoutTests:

Bug 128061: Subpixel rendering: borders are reporting float values.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/win/TestExpectations:
12:02 AM Changeset in webkit [163261] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r163234) Debug build is broken
https://bugs.webkit.org/show_bug.cgi?id=128059

Unreviewed. Debug build is broken with INDEXED_DATABASE.

Patch by Hunseop Jeong <Hunseop Jeong> on 2014-02-01

  • Modules/indexeddb/IDBKeyData.cpp:

(WebCore::IDBKeyData::loggingString): Added the default: case.

Feb 1, 2014:

11:45 PM Changeset in webkit [163260] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Subpixel rendering: LayoutUnit operator++ is broken.
https://bugs.webkit.org/show_bug.cgi?id=128056

Reviewed by Darin Adler.

Add pre-increment operator++.

  • platform/LayoutUnit.h:

(WebCore::LayoutUnit::operator++):

10:38 PM Changeset in webkit [163259] by fpizlo@apple.com
  • 6 edits in trunk

JSC profiler's stub info profiling support should work again
https://bugs.webkit.org/show_bug.cgi?id=128057

Reviewed by Mark Lam.

Source/JavaScriptCore:

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdCacheStatus): We want to know if the cache was ever reset by GC, since the DFG uses this information.
(JSC::CodeBlock::printLocationAndOp): This shouldn't have been inline.
(JSC::CodeBlock::printLocationOpAndRegisterOperand): Ditto.
(JSC::CodeBlock::dumpBytecode): Dump the profiling field, and make sure that the caller can pass a StubInfoMap, which is necessary for dumping StructureStubInfo profiling.

  • bytecode/CodeBlock.h: Out-of-line some methods and add the StubInfoMap parameter.
  • profiler/ProfilerBytecodeSequence.cpp:

(JSC::Profiler::BytecodeSequence::BytecodeSequence): Create a StubInfoMap before dumping bytecodes.

Tools:

  • Scripts/display-profiler-output: Just make sure that there's always a space between the origin stack dump and the top bytecode index.
10:38 PM Changeset in webkit [163258] by Darin Adler
  • 5 edits in trunk/Source

More characters -> deprecatedCharacters (based on more EWS complaints)
https://bugs.webkit.org/show_bug.cgi?id=128063

Reviewed by Anders Carlsson.

Source/WebCore:

  • editing/SmartReplace.cpp:

(WebCore::addAllCodePoints):
(WebCore::getSmartSet):

  • platform/win/WebCoreTextRenderer.cpp:

(WebCore::doDrawTextAtPoint):
Use deprecatedCharacters.

Source/WebKit2:

  • Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:

(WebKit::truncateToSingleLine): Use deprecatedCharacters.

8:59 PM Changeset in webkit [163257] by Darin Adler
  • 9 edits in trunk/Source/WebCore

Use deprecatedCharacters in a few more places (non-Mac-build sites found by EWS)
https://bugs.webkit.org/show_bug.cgi?id=128042

Reviewed by Sam Weinig.

  • Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::encodeString):

  • platform/graphics/win/FontCacheWin.cpp:

(WebCore::FontCache::systemFallbackForCharacters):
(WebCore::createGDIFont):
(WebCore::FontCache::getTraitsInFamily):

  • platform/network/DataURL.cpp:

(WebCore::handleDataURL):

  • platform/win/BString.cpp:

(WebCore::BString::BString):

  • platform/win/ClipboardUtilitiesWin.cpp:

(WebCore::createGlobalData):

  • platform/win/FileSystemWin.cpp:

(WebCore::pathByAppendingComponent):
(WebCore::fileSystemRepresentation):

  • platform/win/PasteboardWin.cpp:

(WebCore::filesystemPathFromUrlOrTitle):
(WebCore::Pasteboard::writeURLToDataObject):
(WebCore::createGlobalImageFileDescriptor):

  • platform/win/PopupMenuWin.cpp:

(WebCore::PopupMenuWin::calculatePositionAndSize):
Call deprecatedCharacters instead of characters.

6:45 PM Changeset in webkit [163256] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Speculative OSX build fix.

Excluding WKActionSheet.mm and WKActionSheetAssistant.mm.

  • Configurations/WebKit2.xcconfig:
6:37 PM Changeset in webkit [163255] by enrica@apple.com
  • 18 edits
    4 adds in trunk/Source

Add support for ActionSheets in WK2 for iOS.
https://bugs.webkit.org/show_bug.cgi?id=127586
<rdar://problem/15283667>

Reviewed by Benjamin Poulain.

Source/WebCore:

Updates the localizable strings for action sheets.

  • English.lproj/Localizable.strings:

Source/WebKit2:

This patch adds the default support for Action Sheets
in WK2 for iOS. WKActionSheet is the implementation of the
sheet itself that inherits from UIActionSheet and handles
the repositioning of the sheet after rotation for iPad.
WKActionSheetAssistant is the controller class that implements
the delegate methods, controls the lifetime of the action sheet
object and performs the actions.
We have 3 different types of sheets:

  • link sheet, displayed when the target element is a link
  • image sheet, when the target element is an image
  • data detector sheet when the target is an element recognized by the data detectors library.

Both link and image sheet have a set of default buttons, whereas
datadetector sheet in only populated by custom actions provided
by data detectors.
The link sheet provides the following default actions:

  • open, navigates to the URL
  • copy, copies the URL to the pasteboard
  • add to reading list

The image sheet provides the following actions depending on whether
the image is contained inside an anchor element or not.
If the image is NOT inside a link the following actions are provided:

  • copy, copies the image to the pasteboard
  • save image, saves the image in the photo library

Instead, if the image is inside an link:

  • open, navigates to the URL spcified by the link
  • copy, copies the link URL to the pasteboard
    • save image, saves the image in the photo library
    • add to reading list, adds the link URL to reading list.
  • Shared/InteractionInformationAtPosition.cpp:

(WebKit::InteractionInformationAtPosition::encode):
(WebKit::InteractionInformationAtPosition::decode):

  • Shared/InteractionInformationAtPosition.h:
  • Shared/ios/WKGestureTypes.h:
  • UIProcess/API/ios/PageClientImplIOS.h:
  • UIProcess/API/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::saveImageToLibrary):

  • UIProcess/API/ios/WKActionSheet.h: Added.
  • UIProcess/API/ios/WKActionSheet.mm: Added.

(-[WKActionSheet initWithView:]):
(-[WKActionSheet dealloc]):
(-[WKActionSheet presentSheet]):
(-[WKActionSheet presentSheetFromRect:]):
(-[WKActionSheet doneWithSheet]):
(-[WKActionSheet willRotate]):
(-[WKActionSheet updateSheetPosition]):
(-[WKActionSheet didRotate]):
(-[WKElementActionInfo initWithInfo:location:title:rect:]):
(-[WKElementActionInfo dealloc]):
(-[WKElementAction initWithTitle:actionHandler:type:]):
(-[WKElementAction dealloc]):
(+[WKElementAction customElementActionWithTitle:actionHandler:]):
(copyElement):
(saveImage):
(addToReadingList):
(+[WKElementAction standardElementActionWithType:customTitle:]):
(+[WKElementAction standardElementActionWithType:]):
(-[WKElementAction runActionWithElementInfo:view:]):

  • UIProcess/API/ios/WKActionSheetAssistant.h: Added.
  • UIProcess/API/ios/WKActionSheetAssistant.mm: Added.

(-[WKActionSheetAssistant initWithView:]):
(-[WKActionSheetAssistant dealloc]):
(-[WKActionSheetAssistant setPage:WebKit::]):
(-[WKActionSheetAssistant superviewForSheet]):
(-[WKActionSheetAssistant _presentationRectForSheetGivenPoint:inHostView:]):
(-[WKActionSheetAssistant hostViewForSheet]):
(-[WKActionSheetAssistant initialPresentationRectInHostViewForSheet]):
(-[WKActionSheetAssistant presentationRectInHostViewForSheet]):
(-[WKActionSheetAssistant presentSheet]):
(-[WKActionSheetAssistant actionSheet:clickedButtonAtIndex:]):
(-[WKActionSheetAssistant updateSheetPosition]):
(-[WKActionSheetAssistant _createSheetWithElementActions:showLinkTitle:]):
(-[WKActionSheetAssistant showImageSheet]):
(-[WKActionSheetAssistant showLinkSheet]):
(-[WKActionSheetAssistant showDataDetectorsSheet]):
(-[WKActionSheetAssistant cleanupSheet]):

  • UIProcess/API/ios/WKInteractionView.h:
  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView initWithFrame:]):
(-[WKInteractionView dealloc]):
(-[WKInteractionView setPage:WebKit::]):
(-[WKInteractionView _showImageSheet]):
(-[WKInteractionView _showLinkSheet]):
(-[WKInteractionView _showDataDetectorsSheet]):
(-[WKInteractionView _actionForLongPress]):
(-[WKInteractionView _updatePositionInformation]):
(-[WKInteractionView _longPressRecognized:]):
(-[WKInteractionView _positionInformationDidChange:]):
(-[WKInteractionView _performAction:]):
(-[WKInteractionView _updateAccessory]):

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::startInteractionWithElementAtPosition):
(WebKit::WebPageProxy::stopInteraction):
(WebKit::WebPageProxy::performActionOnElement):
(WebKit::WebPageProxy::saveImageToLibrary):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::containingLinkElement):
(WebKit::WebPage::getPositionInformation):
(WebKit::WebPage::startInteractionWithElementAtPosition):
(WebKit::WebPage::stopInteraction):
(WebKit::WebPage::performActionOnElement):

6:25 PM Changeset in webkit [163254] by fpizlo@apple.com
  • 17 edits
    2 adds in trunk

JSC profiler should show reasons for jettison
https://bugs.webkit.org/show_bug.cgi?id=128047

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

Henceforth if you want to jettison a CodeBlock, you gotta tell the Profiler why you did
it. This makes figuring out convergence issues - where some code seems to take a long
time to get into the top tier compiler - a lot easier.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::jettison):
(JSC::CodeBlock::addBreakpoint):
(JSC::CodeBlock::setSteppingMode):

  • bytecode/CodeBlock.h:
  • bytecode/CodeBlockJettisoningWatchpoint.cpp:

(JSC::CodeBlockJettisoningWatchpoint::fireInternal):

  • bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp:

(JSC::ProfiledCodeBlockJettisoningWatchpoint::fireInternal):

  • dfg/DFGOperations.cpp:
  • jit/JITOperations.cpp:
  • profiler/ProfilerCompilation.cpp:

(JSC::Profiler::Compilation::Compilation):
(JSC::Profiler::Compilation::toJS):

  • profiler/ProfilerCompilation.h:

(JSC::Profiler::Compilation::setJettisonReason):

  • profiler/ProfilerJettisonReason.cpp: Added.

(WTF::printInternal):

  • profiler/ProfilerJettisonReason.h: Added.
  • runtime/CommonIdentifiers.h:
  • runtime/VM.cpp:

(JSC::SetEnabledProfilerFunctor::operator()):

Tools:

Reviewed by Geoffrey Garen.

Gave the tool a "log" command, that tells you all of the interesting things
that happened to a piece of bytecode, from the standpoint of optimization.
It's a great summary view for seeing how our tier-up machinery works.

This uses a lot of information that was already available, plus the newly
added jettisonReason field.

  • Scripts/display-profiler-output:
6:18 PM Changeset in webkit [163253] by mjs@apple.com
  • 7 edits
    1 add in trunk/Source/WebCore

Factor URL decomposition methods (from URLUtils interface) into a base template
https://bugs.webkit.org/show_bug.cgi?id=128052

Reviewed by Sam Weinig.

Refactoring only; no new tests.

  • html/DOMURL.cpp:
  • html/DOMURL.h:

(WebCore::DOMURL::href): Moved to header and made inline.

  • html/URLUtils.h: Added.

(WebCore::URLUtils::href): Downcast and call the derived class.
(WebCore::URLUtils::setHref): Downcast and call the derived class.
Functions below factored out from DOMURL.cpp.
(WebCore::URLUtils<T>::toString):
(WebCore::URLUtils<T>::origin):
(WebCore::URLUtils<T>::protocol):
(WebCore::URLUtils<T>::setProtocol):
(WebCore::URLUtils<T>::username):
(WebCore::URLUtils<T>::setUsername):
(WebCore::URLUtils<T>::password):
(WebCore::URLUtils<T>::setPassword):
(WebCore::URLUtils<T>::host):
(WebCore::parsePortFromStringPosition):
(WebCore::URLUtils<T>::setHost):
(WebCore::URLUtils<T>::hostname):
(WebCore::URLUtils<T>::setHostname):
(WebCore::URLUtils<T>::port):
(WebCore::URLUtils<T>::setPort):
(WebCore::URLUtils<T>::pathname):
(WebCore::URLUtils<T>::setPathname):
(WebCore::URLUtils<T>::search):
(WebCore::URLUtils<T>::setSearch):
(WebCore::URLUtils<T>::hash):
(WebCore::URLUtils<T>::setHash):

Add mention of new header.

  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
5:58 PM Changeset in webkit [163252] by beidson@apple.com
  • 3 edits in trunk/Source/WebKit2

IDB: Implement IDBCursor.delete()
<rdar://problem/15944203> and https://bugs.webkit.org/show_bug.cgi?id=127882

Reviewed by Sam Weinig.

IDBCursor.delete() actually relies on deleteRange(), which was implemented earlier.
So the only thing keeping it from working was a "Cursors iterate past their end" bug,
causing the delete transaction to be aborted.

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::advanceOnce): When the cursor does the final iteration,

clear the previous values to indicate completion.

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:

(WebKit::SQLiteIDBTransaction::clearCursors): Noticed this opportunistic cleanup to

iterate over unique_ptr<>s with an auto& instead of an auto.

4:16 PM Changeset in webkit [163251] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Improve the JavaScript bindings of DatasetDOMStringMap
https://bugs.webkit.org/show_bug.cgi?id=127971

Unriewed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-01

  • dom/DatasetDOMStringMap.cpp:
  • dom/DatasetDOMStringMap.h:

Follow up for r163239. Darin pointed out the #includes are wrong.

4:10 PM Changeset in webkit [163250] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Text interaction assistant is not deleted when dismissing the keyboard on iPad.
https://bugs.webkit.org/show_bug.cgi?id=128034
<rdar://problem/15915695>

Reviewed by Dan Bernstein.

In iPhone mode, tapping on 'Done' in the accessory view
calls the delegate accessoryDone where we correctly blur
the assisted node and tear down the text interaction assistant.
The code path for the keyboard in iPad mode is different,
all we get is resignFirstResponder.
The fix is just to move the blurring in resignFirstResponder
and it works for both iPhone and iPad.

  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView resignFirstResponder]):
(-[WKInteractionView accessoryDone]):

1:00 PM Changeset in webkit [163249] by beidson@apple.com
  • 13 edits in trunk/Source

IDB: Implement IDBObjectStore.delete()
https://bugs.webkit.org/show_bug.cgi?id=127880

Reviewed by Sam Weinig.

Source/WebCore:

  • Modules/indexeddb/IDBKeyData.cpp:

(WebCore::IDBKeyData::compare): Make this const.

  • Modules/indexeddb/IDBKeyData.h:
  • Modules/indexeddb/IDBKeyRangeData.cpp:

(WebCore::IDBKeyRangeData::isExactlyOneKey): Returns whether or not

the key range is known to represent precisely one key.

  • Modules/indexeddb/IDBKeyRangeData.h:
  • WebCore.exp.in:

Source/WebKit2:

Implementing IDBObjectStore.delete() involves filling in the already-stubbed deleteRange() method.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::deleteRangeInBackingStore): Call through to the backing store.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteRange): Call deleteRecord on each key represented

by the passed-in keyRange. This involves collecting each key using a cursor.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteRecord): Delete an individual record from the

object store and all associated indexes.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

Teach the SQLiteIDBCursor to remember if it ended in an error condition:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::SQLiteIDBCursor):
(WebKit::SQLiteIDBCursor::advanceOnce):

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.h:

(WebKit::SQLiteIDBCursor::didError):

12:37 PM Changeset in webkit [163248] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

SVGTextLayoutAttributesBuilder shouldn't use RenderText::deprecatedCharacters()
https://bugs.webkit.org/show_bug.cgi?id=128048

Reviewed by Sam Weinig.

Change UChar*& lastCharacter to bool& lastCharacterWasSpace since that's what the parameter was used for.

  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:

(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextRenderer):
Initialize lastCharacterWasSpace to true to match the previous behavior.

(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForForSubtree):
Ditto.

(WebCore::processRenderSVGInlineText):
Take a reference instead of a pointer, get the character using RenderText::operator[] and compute lastCharacterWasSpace.

(WebCore::SVGTextLayoutAttributesBuilder::collectTextPositioningElements):
This now takes a bool reference instead.

  • rendering/svg/SVGTextLayoutAttributesBuilder.h:
12:29 PM Changeset in webkit [163247] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Saying "jitType() == JITCode::DFGJIT" is almost never correct.
<http://webkit.org/b/128045>

Reviewed by Filip Pizlo.

JITCode::isOptimizingJIT(jitType()) is the right way to say it.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::addBreakpoint):
(JSC::CodeBlock::setSteppingMode):

  • runtime/VM.cpp:

(JSC::SetEnabledProfilerFunctor::operator()):

11:11 AM Changeset in webkit [163246] by beidson@apple.com
  • 5 edits in trunk/Source/WebKit2

IDB: Index reading
<rdar://problem/15899973> and https://bugs.webkit.org/show_bug.cgi?id=127868

Reviewed by Jer Noble.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::getRecordFromBackingStore):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getIndexRecord): Using an index cursor, read a value.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
11:04 AM Changeset in webkit [163245] by beidson@apple.com
  • 4 edits in trunk/Source

IDB: Index cursor complete advance() and iterate() support
<rdar://problem/15941916> and https://bugs.webkit.org/show_bug.cgi?id=127870

Reviewed by Dan Bernstein.

Source/WebCore:

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess): Always use the value buffer for the script object.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::advanceOnce): Look up the found record value from the

object store records based on the key we found from the index.

10:14 AM Changeset in webkit [163244] by ap@apple.com
  • 23 edits in trunk

Update WebCrypto JWK mapping to use key_ops
https://bugs.webkit.org/show_bug.cgi?id=127609

Reviewed by Sam Weinig.

Source/WebCore:

Updated JWK support ot match current editor draft.

  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::getJSArrayFromJSON): Fixed this previously untested function to actually work.
(WebCore::tryJWKKeyOpsValue):
(WebCore::JSCryptoKeySerializationJWK::reconcileUsages):
(WebCore::JSCryptoKeySerializationJWK::reconcileExtractable): Removed an old comment,
these things are now specced.
(WebCore::addToJSON): Made static functions file static, there is no reason for
them to be class members.
(WebCore::buildJSONForOctetSequence):
(WebCore::buildJSONForRSAComponents):
(WebCore::addBoolToJSON):
(WebCore::addJWKAlgorithmToJSON):
(WebCore::addUsagesToJSON):
(WebCore::JSCryptoKeySerializationJWK::serialize):

  • bindings/js/JSCryptoKeySerializationJWK.h:
  • crypto/mac/CryptoAlgorithmAES_KWMac.cpp:

(WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
(WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
Check for length, so that we don't fail silently.

LayoutTests:

  • crypto/subtle/aes-kw-wrap-unwrap-aes-expected.txt:
  • crypto/subtle/aes-kw-wrap-unwrap-aes.html:

Removed a subtest for wrapping JWK. That doesn't really work per the spec, because
JWK is arbitatry length, and AES-KW requires 8*n bytes.

  • crypto/subtle/aes-export-key-expected.txt:
  • crypto/subtle/aes-export-key.html:
  • crypto/subtle/hmac-export-key-expected.txt:
  • crypto/subtle/hmac-export-key.html:
  • crypto/subtle/jwk-export-use-values-expected.txt:
  • crypto/subtle/jwk-export-use-values.html:
  • crypto/subtle/jwk-import-use-values-expected.txt:
  • crypto/subtle/jwk-import-use-values.html:
  • crypto/subtle/rsa-export-key-expected.txt:
  • crypto/subtle/rsa-export-key.html:
  • crypto/subtle/rsa-export-private-key-expected.txt:
  • crypto/subtle/rsa-export-private-key.html:
  • crypto/subtle/rsa-oaep-key-manipulation-expected.txt:
  • crypto/subtle/rsa-oaep-key-manipulation.html:
  • crypto/subtle/rsa-postMessage-expected.txt:
  • crypto/subtle/rsa-postMessage.html:

Updated for the fix.

9:31 AM Changeset in webkit [163243] by andersca@apple.com
  • 10 edits in trunk/Source/WebKit2

Add webView:didFailNavigation:withError: delegate method
https://bugs.webkit.org/show_bug.cgi?id=128022

Reviewed by Darin Adler.

  • UIProcess/API/APILoaderClient.h:

(API::LoaderClient::didFailLoadWithErrorForFrame):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageLoaderClient):

  • UIProcess/API/Cocoa/WKNavigationDelegate.h:
  • UIProcess/Cocoa/NavigationState.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::setNavigationDelegate):
(WebKit::NavigationState::LoaderClient::didFailLoadWithErrorForFrame):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didFailLoadForFrame):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidFailLoad):

8:32 AM Changeset in webkit [163242] by ddkilzer@apple.com
  • 14 edits in trunk/Source/WebCore

Add security-checked casts for all WebCore::CachedResource subclasses
<http://webkit.org/b/127988>

Reviewed by Darin Adler.

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::cachedResourceContent):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):

  • Switch from static_cast<>() to security-checked cast.
  • loader/cache/CachedCSSStyleSheet.h:

(WebCore::toCachedCSSStyleSheet): Add.

  • loader/cache/CachedFont.h:

(WebCore::toCachedFont): Add.

  • loader/cache/CachedImage.h: Make CachedImageManual final.
  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::CachedRawResource): Add assert that
only MainResource or RawResource types are used to construct a
CachedRawResource. This may be a security issue depending on
what code exists that uses the type() value to cast to a
CachedResource subclass.
(WebCore::CachedRawResource::switchClientsToRevalidatedResource):
Switch from static_cast<>() to toCachedRawResource().

  • loader/cache/CachedRawResource.h:

(WebCore::toCachedRawResource): Add.

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::isMainOrRawResource): Add. A
CachedRawResource could be either a MainResource or a
RawResource. Currently only used in assertions.

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestFont):
(WebCore::CachedResourceLoader::requestTextTrack):
(WebCore::CachedResourceLoader::requestCSSStyleSheet):
(WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
(WebCore::CachedResourceLoader::requestScript):
(WebCore::CachedResourceLoader::requestXSLStyleSheet):
(WebCore::CachedResourceLoader::requestSVGDocument):
(WebCore::CachedResourceLoader::requestRawResource):
(WebCore::CachedResourceLoader::requestMainResource):

  • Switch from static_cast<>() to security-checked cast.
  • loader/cache/CachedSVGDocument.h:

(WebCore::toCachedSVGDocument): Add.

  • loader/cache/CachedScript.h:

(WebCore::toCachedScript): Add.

  • loader/cache/CachedTextTrack.h:

(WebCore::toCachedTextTrack): Add.

  • loader/cache/CachedXSLStyleSheet.h:

(WebCore::toCachedXSLStyleSheet): Add.

7:30 AM Changeset in webkit [163241] by msaboff@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

REGRESSION (r163027?): CrashTracer: [USER] com.apple.WebKit.WebContent.Development at com.apple.JavaScriptCore: JSC::ArrayProfile::computeUpdatedPrediction + 4
https://bugs.webkit.org/show_bug.cgi?id=128037

Reviewed by Mark Lam.

op_call_varargs ops now needs an ArrayProfile since DFG inlines these since
change set r162739.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitCallVarargs):

7:15 AM Changeset in webkit [163240] by calvaris@igalia.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fixed GTK+ CMake build after r162922.

  • PlatformGTK.cmake: Removed SoupURIUtils.cpp from the

compilation.

12:10 AM Changeset in webkit [163239] by benjamin@webkit.org
  • 6 edits
    2 adds in trunk

Improve the JavaScript bindings of DatasetDOMStringMap
https://bugs.webkit.org/show_bug.cgi?id=127971

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-01
Reviewed by Sam Weinig.

Source/WebCore:

Instead of querying contains() followed by item(), just get the item
at once in the custom binding.

Test: fast/dom/dataset-name-getter-properties.html

  • bindings/js/JSDOMStringMapCustom.cpp:

(WebCore::JSDOMStringMap::getOwnPropertySlotDelegate):

  • dom/DOMStringMap.idl:
  • dom/DatasetDOMStringMap.cpp:

(WebCore::DatasetDOMStringMap::item):

  • dom/DatasetDOMStringMap.h:

LayoutTests:

  • fast/dom/dataset-name-getter-properties-expected.txt: Added.
  • fast/dom/dataset-name-getter-properties.html: Added.
12:05 AM Changeset in webkit [163238] by benjamin@webkit.org
  • 9 edits in trunk

Remove LEGACY_VIEWPORT_ADAPTION
https://bugs.webkit.org/show_bug.cgi?id=128028

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-31
Reviewed by Anders Carlsson.

.:

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/WebCore:

The code is incorrect and was only supported by Nix.

  • dom/Document.cpp:

(WebCore::Document::childrenChanged):

  • dom/ViewportArguments.h:
  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::process):

Source/WTF:

  • wtf/FeatureDefines.h:
Note: See TracTimeline for information about the timeline view.