Timeline



Apr 3, 2014:

11:52 PM Changeset in webkit [166769] by Chris Fleizach
  • 5 edits in trunk/Source/WebKit2

AX: iOS does not need to spin the run loop on synchronous message calls
https://bugs.webkit.org/show_bug.cgi?id=131195

Reviewed by Dan Bernstein.

On the Mac platform, we need to spin the run loop while making synchronous calls to avoid VoiceOver hanging.
On iOS, this not needed due to architectural differences.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::synchronousMessagesShouldSpinRunLoop):

  • WebProcess/WebPage/WebPage.h:
11:26 PM Changeset in webkit [166768] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/efl

[EFL] Should flush and render layers after the root layer is changed.
https://bugs.webkit.org/show_bug.cgi?id=131108

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-03
Reviewed by Gyuyoung Kim.

If there is no update event after root layer is changed, old webview can be shown.
Because the syncTimer is not being triggered by root layer change.
We should flush and render layers by starting syncTimer when the root layer is changed.

  • WebCoreSupport/AcceleratedCompositingContextEfl.cpp:

(WebCore::AcceleratedCompositingContext::setRootGraphicsLayer): Add m_syncTimer.startOneShot(0);

  • WebCoreSupport/AcceleratedCompositingContextEfl.h:

(WebCore::AcceleratedCompositingContext::setRootGraphicsLayer): Move implementation from header to source.

10:23 PM Changeset in webkit [166767] by aestes@apple.com
  • 6 edits in trunk/Source/WebKit2

[Cocoa] Add additional WKWebView SPI for clients that interact with PDFs
https://bugs.webkit.org/show_bug.cgi?id=131206

Reviewed by Dan Bernstein.

Add _dataForDisplayedPDF and _suggestedFilenameForDisplayedPDF to
support clients that wish to save a copy of the currently displayed PDF
to disk. Ultimately we should support this use case by exposing something
like WKWebViewContentProvider, but for now let's do something simple.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _didFinishLoadingDataForCustomContentProviderWithSuggestedFilename:data:]):
(-[WKWebView _dataForDisplayedPDF]):
(-[WKWebView _suggestedFilenameForDisplayedPDF]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/Cocoa/WKWebViewContentProvider.h:
  • UIProcess/ios/WKPDFView.h:
  • UIProcess/ios/WKPDFView.mm:

(-[WKPDFView documentData]):
(-[WKPDFView suggestedFilename]):
(-[WKPDFView web_setContentProviderData:suggestedFilename:]):

10:04 PM Changeset in webkit [166766] by eunmi15.lee@samsung.com
  • 6 edits in trunk/Source/WebKit2

[EFL][WK2] Add API to get contents size of current web page.
https://bugs.webkit.org/show_bug.cgi?id=131148

Reviewed by Gyuyoung Kim.

Application can want to get contents size of current web page without
monitoring "contents,size,changed" signal, so I add API to get contents
size directly.

  • UIProcess/API/C/CoordinatedGraphics/WKView.cpp:

(WKViewGetContentsSize): WK API to get contents size from WebView.

  • UIProcess/API/C/CoordinatedGraphics/WKView.h:
  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_contents_size_get): new API to get contents size.

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

(TEST_F):

9:42 PM Changeset in webkit [166765] by akling@apple.com
  • 6 edits
    1 add in trunk/Source/WebCore

Fast-path for casting JS wrappers to JSElement.
<https://webkit.org/b/131210>

Add an extended JSType for Element wrappers so we can avoid walking
the ClassInfo chain in those bindings as well.

Generalized the code to select a casting helper in the bindings
generator into a function (GetCastingHelperForThisObject.)
Updated all the jsDynamicCast call sites to go through this, in case
there's an optimized cast available for the desired type.

Reviewed by Benjamin Poulain.

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMWrapper.h:
  • bindings/js/JSElementCustom.h: Added.

(WebCore::jsElementCast):

  • bindings/js/JSNodeCustom.h:

(WebCore::jsNodeCast):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GetCastingHelperForThisObject):
(GenerateImplementation):

  • dom/Element.idl:
9:23 PM Changeset in webkit [166764] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

Unreviewed build fix.

  • WebKit.vcxproj/WebKit.sln: Make sure we don't generate the

WebInspectorUI before the generated JS is ready.

9:11 PM Changeset in webkit [166763] by jinwoo7.song@samsung.com
  • 3 edits
    1 delete in trunk/Source/WebKit2

[WK2][EFL] Use template method in creating NativeWebMouseEvent
https://bugs.webkit.org/show_bug.cgi?id=131152

Reviewed by Anders Carlsson.

There are three EFL mouse events, such as Evas_Event_Mouse_Down, Evas_Event_Mouse_Up,
and Evas_Event_Mouse_Move. They can be defined as a template method.

  • PlatformEfl.cmake: Remove NativeWebMouseEventEfl.cpp
  • Shared/NativeWebMouseEvent.h:

(WebKit::NativeWebMouseEvent::NativeWebMouseEvent): Add a template method.

  • Shared/efl/NativeWebMouseEventEfl.cpp: Removed.
9:08 PM Changeset in webkit [166762] by Joseph Pecoraro
  • 3 edits in trunk/LayoutTests

compositing/tiling/rotated-tiled-* tests failing on bots
https://bugs.webkit.org/show_bug.cgi?id=131207

Unreviewed rebaseline of tests after r166748.

  • platform/mac/compositing/tiling/rotated-tiled-clamped-expected.txt:
  • platform/mac/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
8:24 PM Changeset in webkit [166761] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Rebaseline a bindings test.

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

(WebCore::JSTestNode::createStructure):

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

Fast-path for casting JS wrappers to JSNode.
<https://webkit.org/b/131196>

Source/JavaScriptCore:

Allow code outside of JSC (well, WebCore) to extend the JSType spectrum
a little bit. We do this by exposing a LastJSCObjectType constant so
WebCore can encode its own wrapper types after that.

Reviewed by Mark Hahnenberg and Geoff Garen.

  • runtime/JSType.h:

Added LastJSCObjectType for use by WebCore.

  • runtime/JSObject.h:

(JSC::JSObject::isVariableObject):

Updated since this can no longer assume that types >= VariableObjectType
are all variable objects.

Source/WebCore:

Add a way to quickly determine that a given JSObject is a JSNode.
This lets us avoid walking the ClassInfo chain in the DOM bindings
for WebCore::Node.

Reviewed by Mark Hahnenberg and Geoff Garen.

  • bindings/js/JSDOMWrapper.h:

Added a JSNodeType constant that extends beyond JSC::JSType.

  • bindings/js/JSNodeCustom.h:

(WebCore::jsNodeCast):

Added. Fast cast from JSValue to JSNode.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

Generate code that uses jsNodeCast in Node interfaces.

7:24 PM Changeset in webkit [166759] by mhahnenberg@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

All Heap::writeBarriers should be inline
https://bugs.webkit.org/show_bug.cgi?id=131197

Reviewed by Mark Lam.

One is in a JSCellInlines.h, another is in Heap.cpp. These are all critical
enough and small enough to belong in HeapInlines.h. Also added the proper
ENABLE(GGC) ifdefs to minimize the cost of C++ barriers for !ENABLE(GGC) builds.

  • heap/Heap.cpp:

(JSC::Heap::writeBarrier): Deleted.

  • heap/Heap.h:
  • heap/HeapInlines.h:

(JSC::Heap::writeBarrier):

  • runtime/JSCellInlines.h:

(JSC::Heap::writeBarrier): Deleted.

6:56 PM Changeset in webkit [166758] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

check-webkit-style: Improve warnings on Objective-C @property syntax
https://bugs.webkit.org/show_bug.cgi?id=131200

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-03
Reviewed by Dan Bernstein.

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_spacing):
(CppChecker):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(CppStyleTest.test_spacing_in_objective_c_properties):

6:24 PM Changeset in webkit [166757] by Simon Fraser
  • 7 edits in trunk/LayoutTests

Rebaseline some tests after r166748. These tests now correctly
report a contentsScale.

  • platform/mac-wk2/compositing/tiling/rotated-tiled-clamped-expected.txt:
  • platform/mac-wk2/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
  • platform/mac-wk2/compositing/tiling/tile-cache-zoomed-expected.txt:
  • platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
  • platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt:
  • platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
5:50 PM Changeset in webkit [166756] by commit-queue@webkit.org
  • 7 edits in trunk/Source/JavaScriptCore

Web Inspector: JSContext inspection provide a way to opt-out of including Native Call Stacks in Exception traces reported to Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=131186

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-03
Reviewed by Geoffrey Garen.

  • API/JSContextPrivate.h:
  • API/JSContext.mm:

(-[JSContext _includesNativeCallStackWhenReportingExceptions]):
(-[JSContext _setIncludesNativeCallStackWhenReportingExceptions:]):
JSContext ObjC SPI to opt-out of including native call stacks in exceptions.

  • API/JSContextRefPrivate.h:
  • API/JSContextRef.cpp:

(JSGlobalContextGetIncludesNativeCallStackWhenReportingExceptions):
(JSGlobalContextSetIncludesNativeCallStackWhenReportingExceptions):
JSContext C SPI to opt-out of including native call stacks in exceptions.

  • inspector/JSGlobalObjectInspectorController.h:
  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
(Inspector::JSGlobalObjectInspectorController::reportAPIException):
Only include the native call stack if the setting is enabled. It is enabled by default.

4:55 PM Changeset in webkit [166755] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Add WKWebView documentation
https://bugs.webkit.org/show_bug.cgi?id=131190

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKBackForwardListItem.h:
  • UIProcess/API/Cocoa/WKNavigationAction.h:
  • UIProcess/API/Cocoa/WKWebView.h:
4:51 PM Changeset in webkit [166754] by msaboff@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION: PCE.js is 20x slower in WebKit2 because timers are throttled
https://bugs.webkit.org/show_bug.cgi?id=131189

Reviewed by Geoffrey Garen.

Elevate the priority of all WebKit2 service processes on iOS, not just the network process.

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::connectToService):

4:28 PM Changeset in webkit [166753] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

ASSERT(m_children.isEmpty()) in PlatformCALayerRemote::removeAllSublayers() on time.com
https://bugs.webkit.org/show_bug.cgi?id=131187

Reviewed by Maciej Stachowiak.

After a call to PlatformCALayerRemote::adoptSublayers() when a layer
toggles between tiled and non-tiled, we'd assert in PlatformCALayerRemote::removeAllSublayers()
that not all sublayers had been removed (there was one with a null superlayer).

Fix by ensuring that we don't copy over custom subviews when adoptSublayers()
is called; they'll get added as we update children anyway.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::adoptSublayers):

4:04 PM Changeset in webkit [166752] by Bem Jones-Bey
  • 7 edits
    2 deletes in trunk/Source/WebCore

Merge ShapeInfo & ShapeOutsideInfo now that ShapeInsideInfo is no more
https://bugs.webkit.org/show_bug.cgi?id=131180

Reviewed by Andreas Kling.

Now that ShapeInsideInfo is gone, having a class hiearachy and
templates doesn't make any sense. As a first step to cleaning up the
code, this remove ShapeInfo and puts all of its functionality into
ShapeOutsideInfo.

No new tests, no behavior change.

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/shapes/ShapeInfo.cpp: Removed.
  • rendering/shapes/ShapeInfo.h: Removed.
  • rendering/shapes/ShapeOutsideInfo.cpp:

(WebCore::ShapeOutsideInfo::computedShapePhysicalBoundingBox):
(WebCore::ShapeOutsideInfo::shapeToRendererPoint):
(WebCore::ShapeOutsideInfo::shapeToRendererSize):
(WebCore::referenceBox):
(WebCore::ShapeOutsideInfo::setReferenceBoxLogicalSize):
(WebCore::checkShapeImageOrigin):
(WebCore::getShapeImageAndRect):
(WebCore::getShapeImageMarginRect):
(WebCore::ShapeOutsideInfo::computedShape):
(WebCore::borderBeforeInWritingMode):
(WebCore::borderAndPaddingBeforeInWritingMode):
(WebCore::ShapeOutsideInfo::logicalTopOffset):
(WebCore::borderStartWithStyleForWritingMode):
(WebCore::borderAndPaddingStartWithStyleForWritingMode):
(WebCore::ShapeOutsideInfo::logicalLeftOffset):
(WebCore::ShapeOutsideInfo::computeSegmentsForLine):
(WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine):
(WebCore::ShapeOutsideInfo::shapeValue): Deleted.
(WebCore::ShapeOutsideInfo::styleForWritingMode): Deleted.

  • rendering/shapes/ShapeOutsideInfo.h:
3:56 PM Changeset in webkit [166751] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Fix over-retain in SharedBufferCF's createCFData().
<https://webkit.org/b/131139>

Constructing the return type (RetainPtr<CFDataRef>) will also retain
the pointee, so this would end up leaking.

Reviewed by Anders Carlsson.

  • platform/cf/SharedBufferCF.cpp:

(WebCore::SharedBuffer::createCFData):

3:55 PM Changeset in webkit [166750] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebKit2

[iOS][WK2] Add SPI to handle animated resize
https://bugs.webkit.org/show_bug.cgi?id=131141

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-03
Reviewed by Simon Fraser.

Set up a basic API to handle animated resize. The code does not do much at the moment,
it is mostly to have an interface we can implement later.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView setFrame:]):
(-[WKWebView setBounds:]):
(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView _frameOrBoundsChangedFrom:]):
(-[WKWebView _beginAnimatedResizeToSize:obscuredInsets:minimumLayoutSizeOverride:]):
(-[WKWebView _endAnimatedResize]):
(-[WKWebView _frameOrBoundsChanged]): Deleted.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
3:47 PM Changeset in webkit [166749] by Brent Fulgham
  • 5 edits in trunk

Source/WebCore: [Win] Turn on ENABLE_CSS_GRID_LAYOUT
https://bugs.webkit.org/show_bug.cgi?id=131147

Reviewed by Simon Fraser.

Covered by existing fast/css/getComputedStyle tests.

  • css/CSSAllInOne.cpp: Add CSSGridLineNamesValue.cpp when building

with ENABLE(CSS_GRID_LAYOUT)

WebKitLibraries: [Win] Enable the CSS_GRID_LAYOUT feature.
https://bugs.webkit.org/show_bug.cgi?id=131147

Reviewed by Simon Fraser.

Just like the CANVAS_PATH feature, this seems to have been
overlooked when it was turned on for other ports.

  • win/tools/vsprops/FeatureDefines.props:
  • win/tools/vsprops/FeatureDefinesCairo.props:
3:44 PM Changeset in webkit [166748] by Simon Fraser
  • 7 edits in trunk/Source

Source/WebCore: Pixelated WebView when display is changed from hiDPI to regularDPI
https://bugs.webkit.org/show_bug.cgi?id=131185

Reviewed by Tim Horton.

r166309 added a short circuit in GraphicsLayerCA::updateContentsScale()
when the scale didn't change. This broke layers which expected to
unconditionally receive a setContentsScale(), namely the WebTiledBackingLayer
which owns the TileController. WebTiledBackingLayer overrode -setContentsScale:
to pass the scale down to the TileController; however, it didn't override
-contentsScale, and it mucked with the scale passed in.

Fix by having setting and fetching contentsScale on a WebTiledBackingLayer
work as expected. Also rename the TileController functions to mirror the
CALayer functions better.

  • WebCore.exp.in:
  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateContentsScale):

  • platform/graphics/ca/mac/TileController.h:
  • platform/graphics/ca/mac/TileController.mm:

(WebCore::TileController::TileController):
(WebCore::TileController::contentsScale):
(WebCore::TileController::setContentsScale):
(WebCore::TileController::scale): Deleted.
(WebCore::TileController::setScale): Deleted.

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

(-[WebTiledBackingLayer setContentsScale:]):
(-[WebTiledBackingLayer contentsScale]):

Source/WebKit2: Pixelated WebView when display is changed from hiDPI to regularDPI
https://bugs.webkit.org/show_bug.cgi?id=131185
<rdar://problem/16512184&16503714>

Reviewed by Tim Horton.

TileController function was renamed.

  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:

(WebKit::PlatformCALayerRemoteTiledBacking::setContentsScale):

3:34 PM Changeset in webkit [166747] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] LineSegment logicalLeft and logicalRight members should be floats
https://bugs.webkit.org/show_bug.cgi?id=116160

Reviewed by Andreas Kling.

LineSegment edges should not have been changed to LayoutUnit. These are
used only as floats. I modified them back to floats.

No new tests are needed, no behavior change.

  • rendering/shapes/Shape.h:
2:44 PM Changeset in webkit [166746] by krit@webkit.org
  • 3 edits
    3 adds in trunk

[CG] Canvas lineDashOffset does not handle negative numbers correctly
https://bugs.webkit.org/show_bug.cgi?id=80560

Reviewed by Dean Jackson.

Source/WebCore:

CG ignores negative dash array offsets. Check if we have a negative offset, if yes
then calculate the length of the dash array and modulo the dash array offset with
the dash array length.

Test: fast/canvas/canvas-negative-lineDashOffset.html

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::setLineDash):

LayoutTests:

Test correct rendering of negative offset for Canvas dash arrays.

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

(dataToArray):
(getPixel):
(pixelShouldBe):

2:40 PM Changeset in webkit [166745] by hyatt@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION: fast/css/relative-positioned-block-nested-with-inline-parent-multiple-descendant-blocks-dynamic.html broken
https://bugs.webkit.org/show_bug.cgi?id=131183

Reviewed by Simon Fraser.

Revert the loop to continue rather than breaking when an invalid block is encountered.
This is what it used to do if it encountered a non-continuation block.

  • rendering/RenderInline.cpp:

(WebCore::updateStyleOfAnonymousBlockContinuations):

2:36 PM Changeset in webkit [166744] by weinig@apple.com
  • 9 edits
    7 moves in trunk/Source

[WebKit2] Promote user script SPI to API
https://bugs.webkit.org/show_bug.cgi?id=131181

Reviewed by Anders Carlsson.

Source/WebKit/mac:

  • MigrateHeaders.make:

Source/WebKit2:

  • UIProcess/API/Cocoa/WKScriptMessage.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptMessage.h.
  • UIProcess/API/Cocoa/WKScriptMessage.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptMessage.mm.

(-[WKScriptMessage scriptWorld]):
(-[_WKScriptMessage scriptWorld]): Deleted.

  • UIProcess/API/Cocoa/WKScriptMessageHandler.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptMessageHandler.h.
  • UIProcess/API/Cocoa/WKScriptWorld.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptWorld.h.
  • UIProcess/API/Cocoa/WKScriptWorld.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptWorld.mm.

(+[WKScriptWorld defaultWorld]):
(+[_WKScriptWorld defaultWorld]): Deleted.

  • UIProcess/API/Cocoa/WKUserContentController.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKUserContentController.h.
  • UIProcess/API/Cocoa/WKUserContentController.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKUserContentController.mm.

(-[WKUserContentController addScriptMessageHandler:name:world:]):
(-[WKUserContentController removeScriptMessageHandlerForName:world:]):
(-[_WKUserContentController addScriptMessageHandler:name:world:]): Deleted.
(-[_WKUserContentController removeScriptMessageHandlerForName:world:]): Deleted.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

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

(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration userContentController]):
(-[WKWebViewConfiguration setUserContentController:]):
(-[WKWebViewConfiguration _userContentController]): Deleted.
(-[WKWebViewConfiguration _setUserContentController:]): Deleted.

  • UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/API/Cocoa/_WKScriptMessage.h: Removed.
  • UIProcess/API/Cocoa/_WKScriptMessage.mm: Removed.
  • UIProcess/API/Cocoa/_WKScriptMessageHandler.h: Removed.
  • UIProcess/API/Cocoa/_WKScriptWorld.h: Removed.
  • UIProcess/API/Cocoa/_WKScriptWorld.mm: Removed.
  • UIProcess/API/Cocoa/_WKUserContentController.h: Removed.
  • UIProcess/API/Cocoa/_WKUserContentController.mm: Removed.
  • WebKit2.xcodeproj/project.pbxproj:
2:11 PM Changeset in webkit [166743] by santoshbit2007@gmail.com
  • 2 edits in trunk/Tools

Unreviewed. Moving my name to committer section accidently

added in reviewer section.

  • Scripts/webkitpy/common/config/contributors.json:
2:03 PM Changeset in webkit [166742] by andersca@apple.com
  • 5 edits in trunk

Make download policy decisions SPI for now
https://bugs.webkit.org/show_bug.cgi?id=131179

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKNavigationDelegate.h:

(NS_ENUM):

  • UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:

(NS_ENUM):

  • UIProcess/Cocoa/NavigationState.mm:

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

1:57 PM Changeset in webkit [166741] by Simon Fraser
  • 14 edits in trunk/Source

Harden FilterOperation type casting
https://bugs.webkit.org/show_bug.cgi?id=131142

Reviewed by Sam Weinig.

DefaultFilterOperation had an error-prone behavior where it set the base class
OperationType to the type of some other filter class, but overrode isDefault().
This made it very easy to write incorrect code that casted incorrectly based on type().

Fix by making adding a DEFAULT filter operation type, and storing the represented
type on DefaultFilterOperation().

Also remove the OperationType argument for constructors of FilterOperations that
can only be of one type, to avoid possible mistakes.

Make the type cast macros a bit more normal, and use them in a few places.

Fixed PlatformCAFiltersMac to handle the default filter case more cleanly.

Source/WebCore:

  • WebCore.exp.in:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::valueForFilter):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::createFilterOperations):

  • platform/graphics/ca/PlatformCAFilters.h:
  • platform/graphics/ca/mac/PlatformCAFiltersMac.mm:

(PlatformCAFilters::filterValueForOperation):
(PlatformCAFilters::colorMatrixValueForFilter):

  • platform/graphics/filters/FilterOperation.cpp:

(WebCore::DefaultFilterOperation::operator==):
(WebCore::ReferenceFilterOperation::ReferenceFilterOperation):
(WebCore::ReferenceFilterOperation::operator==):
(WebCore::BlurFilterOperation::operator==):
(WebCore::BlurFilterOperation::blend):
(WebCore::DropShadowFilterOperation::operator==):
(WebCore::DropShadowFilterOperation::blend):

  • platform/graphics/filters/FilterOperation.h:

(WebCore::FilterOperation::blend):
(WebCore::FilterOperation::type):
(WebCore::FilterOperation::isBasicColorMatrixFilterOperation):
(WebCore::FilterOperation::isBasicComponentTransferFilterOperation):
(WebCore::FilterOperation::isSameType):
(WebCore::DefaultFilterOperation::create):
(WebCore::DefaultFilterOperation::representedType):
(WebCore::DefaultFilterOperation::DefaultFilterOperation):
(WebCore::ReferenceFilterOperation::create):
(WebCore::BlurFilterOperation::create):
(WebCore::BlurFilterOperation::BlurFilterOperation):
(WebCore::DropShadowFilterOperation::create):
(WebCore::DropShadowFilterOperation::DropShadowFilterOperation):
(WebCore::FilterOperation::isDefault): Deleted.

  • platform/graphics/filters/FilterOperations.cpp:

(WebCore::FilterOperations::outsets):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build):

  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):

Source/WebKit2:

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::encodeFilterOperation):
(IPC::decodeFilterOperation):

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTextStream::operator<<):

1:56 PM Changeset in webkit [166740] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Stop throwing away the Document's StyleResolver on a timer.
<https://webkit.org/b/131168>
<rdar://problem/15227045>

This was causing some unfortunate pauses when returning to idle pages
after a long-ish time. There's already a mechanism in place that will
throw these away if the system comes under memory pressure.

Reviewed by Sam Weinig.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::pseudoStyleForElement):
(WebCore::StyleResolver::styleForPage):

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::didAccessStyleResolver): Deleted.
(WebCore::Document::styleResolverThrowawayTimerFired): Deleted.

  • dom/Document.h:
1:46 PM Changeset in webkit [166739] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Assertion under RenderLayerCompositor::updateScrollCoordinatedLayer on time.com on iOS
https://bugs.webkit.org/show_bug.cgi?id=131150

Reviewed by Beth Dakin.

When calling updateScrollCoordinatedLayer() under styleChanged, we haven't done
layout yet so our composting layers haven't been hooked together. Don't try
to add a zero nodeID to the map in this case.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):

1:14 PM Changeset in webkit [166738] by santoshbit2007@gmail.com
  • 2 edits in trunk/Tools
1:04 PM ASanWebKit edited by ddkilzer@webkit.org
Add Step 11 for filing security bugs. Added nice descriptions for raw … (diff)
12:37 PM ASanWebKit edited by thakis@chromium.org
(diff)
12:24 PM Changeset in webkit [166737] by Lucas Forschler
  • 2 edits in tags/Safari-538.26.2/Source/WebKit2

Merged r166735.

12:22 PM Changeset in webkit [166736] by hyatt@apple.com
  • 3 edits
    2 adds in trunk

Continuations casting issue.
https://bugs.webkit.org/show_bug.cgi?id=130057
<rdar://problem/16283406>

Reviewed by Simon Fraser.

Source/WebCore:

The code to update relative positioned anonymous block continuations should not
have assumed that all siblings were RenderBlocks. Make the code smarter and
make it bail when it hits something that isn't part of the block continuation
chain.

Added fast/block/continuation-crash.html

  • rendering/RenderInline.cpp:

(WebCore::updateStyleOfAnonymousBlockContinuations):

LayoutTests:

  • fast/block/continuation-crash-expected.txt: Added.
  • fast/block/continuation-crash.html: Added.
12:17 PM ASanWebKit created by ddkilzer@webkit.org
Initial pass of instructions (UNTESTED) for building WebKit with clang …
12:01 PM Changeset in webkit [166735] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION (Async text input): Controls become unresponsive to mouse events
https://bugs.webkit.org/show_bug.cgi?id=131176
<rdar://problem/16507932>

Reviewed by Tim Horton.

  • UIProcess/API/mac/WKView.mm: (NATIVE_MOUSE_EVENT_HANDLER):

Don't confuse event handling machinery by sending events to WebProcess twice.

11:59 AM Changeset in webkit [166734] by Lucas Forschler
  • 2 edits in tags/Safari-538.26.2/Source/WebCore

Merged r166714.

11:34 AM Changeset in webkit [166733] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

WKWebView should always have a UIDelegate, even when closed
https://bugs.webkit.org/show_bug.cgi?id=131174
<rdar://problem/16389248>

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView UIDelegate]):
(-[WKWebView setUIDelegate:]):

  • UIProcess/Cocoa/UIDelegate.h:
  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::UIDelegate):
(WebKit::UIDelegate::~UIDelegate):
(WebKit::UIDelegate::createUIClient):
(WebKit::UIDelegate::delegate):
(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::UIClient):
(WebKit::UIDelegate::UIClient::~UIClient):
(WebKit::UIDelegate::UIClient::createNewPage):
(WebKit::UIDelegate::UIClient::runJavaScriptAlert):
(WebKit::UIDelegate::UIClient::runJavaScriptConfirm):
(WebKit::UIDelegate::UIClient::runJavaScriptPrompt):
(WebKit::UIDelegate::UIClient::actionsForElement):
(WebKit::UIClient::UIClient): Deleted.
(WebKit::UIClient::~UIClient): Deleted.
(WebKit::UIClient::delegate): Deleted.
(WebKit::UIClient::setDelegate): Deleted.
(WebKit::UIClient::createNewPage): Deleted.
(WebKit::UIClient::runJavaScriptAlert): Deleted.
(WebKit::UIClient::runJavaScriptConfirm): Deleted.
(WebKit::UIClient::runJavaScriptPrompt): Deleted.
(WebKit::UIClient::actionsForElement): Deleted.

  • UIProcess/ios/WKActionSheetAssistant.mm:
11:25 AM Changeset in webkit [166732] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Fix bit rot in ARMv7 JIT probe mechanism.
<https://webkit.org/b/131167>

Reviewed by Geoffrey Garen.

  1. The macro assembler does not support pushing the SP register. Worked around this by pushing the LR register as a placeholder, and then writing the original SP value to that slot.
  2. The CPUState field in the ProbeContext needs to be aligned on a 4 byte boundary, not an 8 byte boundary.
  • assembler/MacroAssemblerARMv7.cpp:

(JSC::MacroAssemblerARMv7::probe):

  • jit/JITStubsARMv7.h:
11:06 AM Changeset in webkit [166731] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Document WKNavigationAction and WKNavigationResponse
https://bugs.webkit.org/show_bug.cgi?id=131138

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKFrameInfo.h:
  • UIProcess/API/Cocoa/WKNavigationAction.h:
  • UIProcess/API/Cocoa/WKNavigationResponse.h:
10:56 AM Changeset in webkit [166730] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Make actionsForElement a proper API::UIClient member function
https://bugs.webkit.org/show_bug.cgi?id=131171

Reviewed by Sam Weinig.

  • UIProcess/API/APIUIClient.h:

(API::UIClient::actionsForElement):

  • UIProcess/Cocoa/UIDelegate.h:
  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIClient::actionsForElement):

  • UIProcess/ios/WKActionSheetAssistant.mm:

(-[WKActionSheetAssistant showImageSheet]):
(-[WKActionSheetAssistant showLinkSheet]):

10:54 AM Changeset in webkit [166729] by Lucas Forschler
  • 1 edit in trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json

config.json fix.

10:31 AM WebKitGTK/StartHacking edited by Andres Gomez
Updated the disk space used for a complete epiphany build (diff)
10:29 AM WikiStart edited by ddkilzer@webkit.org
Add link to page about WebKit and the Clang Address Sanitizer (ASan) (diff)
9:55 AM Changeset in webkit [166728] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[WK2] Fix !ENABLE(BLOB) build
https://bugs.webkit.org/show_bug.cgi?id=131164

Patch by Martin Hodovan <mhodovan@inf.u-szeged.hu> on 2014-04-03
Reviewed by Alexey Proskuryakov.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::didClose):

  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:
9:49 AM Changeset in webkit [166727] by zoltan@webkit.org
  • 4 edits in trunk/LayoutTests

[WebInspector] inspector/dom/highlight-shape-outside-margin.html is failing
https://bugs.webkit.org/show_bug.cgi?id=131126

Reviewed by Timothy Hatcher.

I updated the test, so it works with the new testing framework. I included the shape path results in the test,
so we won't run into rounding problems, and we don't have that big test set, which would require an expected
result generation. We can add it later, if we extend the test set. The logic is similar to the non margin test case.

  • TestExpectations:
  • inspector/dom/highlight-shape-outside-margin-expected.txt:
  • inspector/dom/highlight-shape-outside-margin.html:
9:48 AM Changeset in webkit [166726] by Bem Jones-Bey
  • 3 edits
    2 adds in trunk

[CSS Shapes] CRASH with calc() value args in inset round
https://bugs.webkit.org/show_bug.cgi?id=129816

Reviewed by Andreas Kling.

Source/WebCore:

The code to parse the inset rounded corners was adding the parser
value arguments to a temporary CSSParserValueList. Unfortunately,
CSSParserValueList expects to own the values it contains, and it frees
the values it contains when the list is destroyed. This was a problem
because the values are owned by the CSSParserValueList passed in to
parseInsetRoundedCorners, and thus the calc's argument list would get
double freed, resulting in a crash. This patch fixes this by using a
Vector to hold the pointers instead.

Test: fast/shapes/shape-outside-floats/shape-outside-inset-round-calc-crash.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseInsetRoundedCorners):

LayoutTests:

Simple test to make sure that using calc in the round argument of an
inset doesn't cause a crash.

  • fast/shapes/shape-outside-floats/shape-outside-inset-round-calc-crash-expected.txt: Added.
  • fast/shapes/shape-outside-floats/shape-outside-inset-round-calc-crash.html: Added.
9:47 AM Changeset in webkit [166725] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix iOS build.

  • UIProcess/ios/WKActionSheetAssistant.mm:
9:39 AM Changeset in webkit [166724] by rniwa@webkit.org
  • 2 edits in trunk/Websites/perf.webkit.org

WebKitPerfMonitor: There should be a way to add all metrics of a suite without also adding subtests
https://bugs.webkit.org/show_bug.cgi?id=131157

Reviewed by Andreas Kling.

Split "all metrics" into all metrics of a test suite and all subtests of the suite.
This allows, for example, adding all metrics such as Arithmetic and Geometric for
a given test suite without also adding its subtests.

  • public/index.html:

(init.showCharts):
(init):

9:36 AM Changeset in webkit [166723] by rniwa@webkit.org
  • 2 edits in trunk/Websites/perf.webkit.org

WebKitPerfMonitor: Tooltips cannot be pinned after using browser's back button
https://bugs.webkit.org/show_bug.cgi?id=131155

Reviewed by Andreas Kling.

The bug was caused by Chart.attach binding event listeners on plot container on each call.
This resulted in the click event handler toggling the visiblity of the tooltip twice upon
click when attach() has been called even number of times, keeping the tooltip invisible.

Fixed the bug by extracting the code to bind event listeners outside of Chart.attach as
a separate function, bindPlotEventHandlers, and calling it exactly once when Chart.attach
is called for the first time.

  • public/index.html:

(Chart.attach):
(Chart..bindPlotEventHandlers):

9:29 AM Changeset in webkit [166722] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Leaving a streaming movie by going "Back" keeps playing the audio
https://bugs.webkit.org/show_bug.cgi?id=131149

Reviewed by Eric Carlson.

When stopping a HTMLMediaElement, call userCancelledLoad() (which clears the
MediaPlayer) only after calling setPausedInternal() (which pauses the MediaPlayer).
Previously, and in the reverse order, the MediaPlayer would never get a chance to pause
before being cleared. There is an underlying error with the QTKit media engine which
is causing it to continue playing even after its last reference is released, but this
does fix the symptom of playback continuing even after stopping.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::stop):

9:26 AM Changeset in webkit [166721] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[EME] Crash when passing a NULL initData to MediaKeys.createSession()
https://bugs.webkit.org/show_bug.cgi?id=131156

Reviewed by Eric Carlson.

Update the checks at the start of createSession() to match the current spec, notably
bailing early if the initData parameter is NULL or empty.

  • Modules/encryptedmedia/MediaKeys.cpp:

(WebCore::MediaKeys::createSession):

9:03 AM Changeset in webkit [166720] by andersca@apple.com
  • 3 edits
    2 moves in trunk/Source/WebKit2

Rename UIClient.{h, mm} to UIDelegate.{h, mm}.

Rubber-stamped by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWebView.mm:
  • UIProcess/Cocoa/UIDelegate.h: Renamed from Source/WebKit2/UIProcess/Cocoa/UIClient.h.
  • UIProcess/Cocoa/UIDelegate.mm: Renamed from Source/WebKit2/UIProcess/Cocoa/UIClient.mm.
  • WebKit2.xcodeproj/project.pbxproj:
8:46 AM Changeset in webkit [166719] by eric.carlson@apple.com
  • 10 edits
    1 move in trunk/Source/WebCore

[iOS] add missing QuickTime plug-in replacement API
https://bugs.webkit.org/show_bug.cgi?id=131042

Reviewed by Dean Jackson.

Rename QuickTimePluginReplacement.cpp to QuickTimePluginReplacement.mm to make it possible
to use the ObjC JSC API.

  • Modules/plugins/QuickTimePluginReplacement.cpp:
  • Modules/plugins/QuickTimePluginReplacement.h:

(WebCore::QuickTimePluginReplacement::parentElement):

  • Modules/plugins/QuickTimePluginReplacement.idl:
  • Modules/plugins/QuickTimePluginReplacement.js:

(Replacement.prototype.timedMetadataUpdates): Implement.
(Replacement.prototype.accessLog): Ditto.
(Replacement.prototype.errorLog): Ditto.

Use the JSC ObjC API to create a JavaScript object from an array of AVMetadataItems. The
JSC ObjC API supports basic NSTypes, but an AVMetadataItem can also contain NSData which
the existing plug-in returns as base-64 encoded data, so create wrappers for NSDictionary
and NSArray.

  • Modules/plugins/QuickTimePluginReplacement.mm: Copied from Source/WebCore/Modules/plugins/QuickTimePluginReplacement.cpp.

(WebCore::QuickTimePluginReplacement::ensureReplacementScriptInjected): Disambiguate with "JSC::"
(WebCore::QuickTimePluginReplacement::installReplacement): Ditto.
(WebCore::jsValueWithDataInContext): Create JSValue* from NSData.
(WebCore::jsValueWithArrayInContext): Create JSValue* from NSArray.
(WebCore::jsValueWithDictionaryInContext): Create JSValue* from NSDictionary.
(WebCore::jsValueWithValueInContext): Create JSValue* from basic NSTypes plus AVMetadataItem

and NSData.

(WebCore::jsValueWithAVMetadataItemInContext): Create JSValue* from AVMetadataItem.
(WebCore::JSQuickTimePluginReplacement::timedMetaData): Script interface.
(WebCore::JSQuickTimePluginReplacement::accessLog): Ditto.
(WebCore::JSQuickTimePluginReplacement::errorLog): Ditto.

  • WebCore.xcodeproj/project.pbxproj: QuickTimePluginReplacement.cpp -> QuickTimePluginReplacement.mm.
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::timedMetadata): iOS only accessor.
(WebCore::MediaPlayer::accessLog): Ditto.
(WebCore::MediaPlayer::errorLog): Ditto.

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::timedMetadata):
(WebCore::MediaPlayerPrivateAVFoundationObjC::accessLog):
(WebCore::MediaPlayerPrivateAVFoundationObjC::errorLog):
(WebCore::MediaPlayerPrivateAVFoundationObjC::metadataDidArrive):
(WebCore::itemKVOProperties):
(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]):

8:33 AM Changeset in webkit [166718] by commit-queue@webkit.org
  • 6 edits in trunk

[EFL][WK2] Replacing zoom functionality of MiniBrowser from scale_set to page_zoom_set.
https://bugs.webkit.org/show_bug.cgi?id=130391

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-04-03
Reviewed by Gyuyoung Kim.

Source/WebKit2:

Change the implementation of the zoom functionality from ewk_view_scale_set
to ewk_view_page_zoom_set. Adding to the API functions: ewk_view_page_zoom_set and
ewk_view_page_zoom_get to call appropriate WK functions.

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_page_zoom_set):
(ewk_view_page_zoom_get):

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

(TEST_F):

Tools:

Change the implementation of the zoom functionality from ewk_view_scale_set
to ewk_view_page_zoom_set.

  • MiniBrowser/efl/main.c:
7:50 AM Changeset in webkit [166717] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[CSS Grid Layout] Make sure grid element's shrink-to-fit behavior is correct
https://bugs.webkit.org/show_bug.cgi?id=103473

Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-04-03
Reviewed by Sergio Villar Senin.

Added a new Layout Test to verify the shrink-to-fit behavior works as expected
for out-of-flow positioned grid elements.

  • fast/css-grid-layout/grid-element-shrink-to-fit-expected.html: Added.
  • fast/css-grid-layout/grid-element-shrink-to-fit.html: Added.
7:37 AM Changeset in webkit [166716] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

ARMv7 compare32() should not use TST to do CMP's job.
<https://webkit.org/b/131146>

Reviewed by Geoffrey Garen.

The ARMv7 implementation of "compare32(RegisterID left, TrustedImm32 right)"
was using "tst reg, reg" to implement "cmp reg, #0". Unfortunately, the tst
instruction doesn't set the Overflow (V) flag and this results in random
results depending on whether there was a preceeding instruction that did set
the Overflow (V) flag. This issue was causing emscripten-cube2hash to run
with a lot of OSR exits where not expected as well as producing wrong results.

The fix is to use "cmp reg, #0" to do the job properly.

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::compare32):

6:27 AM Changeset in webkit [166715] by abucur@adobe.com
  • 5 edits in trunk/Source/WebCore

[CSS Regions] Include region range information when printing the render tree
https://bugs.webkit.org/show_bug.cgi?id=131159

Reviewed by Mihnea Ovidenie.

With this change showRenderObject() will print the region range for objects inside
a flow thread. The format is:
Rs: <startRegion> Re: <endRegion>

Because this can be called anytime during debugging, it's necessary to disable the
current flow thread caching to prevent using the wrong flow thread for an object.

Tests: No new tests, no functional change.

  • rendering/RenderFlowThread.cpp:

(WebCore::CurrentRenderFlowThreadDisabler::CurrentRenderFlowThreadDisabler):
(WebCore::CurrentRenderFlowThreadDisabler::~CurrentRenderFlowThreadDisabler):

  • rendering/RenderFlowThread.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::showRegionsInformation): Added.
(WebCore::RenderObject::showRenderObject):

  • rendering/RenderObject.h:
3:46 AM Changeset in webkit [166714] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

RenderSnapshottedPlugIn::paint should use iterator for traversal.
https://bugs.webkit.org/show_bug.cgi?id=131158

Reviewed by Dean Jackson.

  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore::RenderSnapshottedPlugIn::paint):

3:28 AM Changeset in webkit [166713] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WTF

[EFL] Enable CSS JIT again, it works fine after r166666.

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-03
Reviewed by Csaba Osztrogonác.

  • wtf/Platform.h:
3:15 AM Changeset in webkit [166712] by svillar@igalia.com
  • 19 edits
    2 adds in trunk

[CSS Grid Layout] <string> not allowed in grid-{area | row | column} syntax
https://bugs.webkit.org/show_bug.cgi?id=129713

Reviewed by Darin Adler.

Source/WebCore:

Grid positioning properties no longer accept <string> values for
named grid lines as they did in previous versions of the specs. They
were first replaced by <ident> and since the beginning of 2014 they
should only accept <custom-ident>.

Updated the parser and the style resolver to this new syntax. Also
updated the tests accordingly.

Test: fast/css-grid-layout/grid-container-change-named-grid-lines-recompute-child.html

  • css/CSSParser.cpp:

(WebCore::isValidCustomIdent): New function that checks that the
<custom-ident> is valid.
(WebCore::CSSParser::parseIntegerOrCustomIdentFromGridPosition):
(WebCore::CSSParser::parseGridPosition):
(WebCore::CSSParser::parseIntegerOrStringFromGridPosition):
Replaced by WebCore::CSSParser::parseIntegerOrCustomIdentFromGridPosition.

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

(WebCore::createGridPosition):

LayoutTests:

Replaced <string> by <custom-ident> in the tests. Also added a new
one to check that children are properly layed out after changes in
the grid line names.

  • fast/css-grid-layout/grid-container-change-named-grid-lines-recompute-child-expected.txt: Added.
  • fast/css-grid-layout/grid-container-change-named-grid-lines-recompute-child.html: Added.
  • fast/css-grid-layout/grid-item-area-get-set.html:
  • fast/css-grid-layout/grid-item-bad-named-area-auto-placement.html:
  • fast/css-grid-layout/grid-item-bad-resolution-double-span.html:
  • fast/css-grid-layout/grid-item-column-row-get-set-expected.txt:
  • fast/css-grid-layout/grid-item-column-row-get-set.html:
  • fast/css-grid-layout/grid-item-end-after-get-set-expected.txt:
  • fast/css-grid-layout/grid-item-end-after-get-set.html:
  • fast/css-grid-layout/grid-item-named-grid-area-resolution.html:
  • fast/css-grid-layout/grid-item-named-grid-line-resolution-expected.txt:
  • fast/css-grid-layout/grid-item-named-grid-line-resolution.html:
  • fast/css-grid-layout/grid-item-negative-position-resolution.html:
  • fast/css-grid-layout/grid-item-position-changed-dynamic.html:
  • fast/css-grid-layout/grid-item-start-before-get-set-expected.txt:
  • fast/css-grid-layout/grid-item-start-before-get-set.html:
2:55 AM Changeset in webkit [166711] by Manuel Rego Casasnovas
  • 3 edits in trunk/Tools

[webkitpy] perf profiler does not understand --call-graph argument
https://bugs.webkit.org/show_bug.cgi?id=131132

Reviewed by Ryosuke Niwa.

New versions of perf profiler have changed the argument from --call-graph to -g.

  • Scripts/webkitpy/common/system/profiler.py:

(Perf.wrapper_arguments): Use -g instead of --call-graph.

  • Scripts/webkitpy/port/driver_unittest.py:

(DriverTest.test_profiler_as_wrapper): Update test accordingly.

2:39 AM Changeset in webkit [166710] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

Add EFL WK2 performance bot to build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=131034

Fix after r166707, use "Perf" instead of "perf" for consistency.

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-03
Reviewed by Csaba Osztrogonác.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
2:24 AM Changeset in webkit [166709] by matthew_hanson@apple.com
  • 5 edits in tags/Safari-538.26.2/Source

Versioning.

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

[GTK][Cmake] Enable CSS JIT
https://bugs.webkit.org/show_bug.cgi?id=131022

Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-04-03
Reviewed by Martin Robinson.

  • wtf/Platform.h: Enable CSS JIT for GTK port.
2:19 AM Changeset in webkit [166707] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

Add EFL WK2 performance bot to build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=131034

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-03
Reviewed by Csaba Osztrogonác.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
1:51 AM Changeset in webkit [166706] by Antti Koivisto
  • 3 edits
    2 adds in trunk

Crash after mutating after pseudo style
https://bugs.webkit.org/show_bug.cgi?id=130881

Reviewed by Andreas Kling.

Source/WebCore:

Test: fast/css/pseudo-after-crash.html

  • style/StyleResolveTree.cpp:

(WebCore::Style::updateBeforeOrAfterPseudoElement):

Invalidate the cached renderer for pseudo elements too.


(WebCore::Style::needsPseudeElement): Deleted.

Fix spelling.

LayoutTests:

  • fast/css/pseudo-after-crash-expected.txt: Added.
  • fast/css/pseudo-after-crash.html: Added.
1:34 AM Changeset in webkit [166705] by matthew_hanson@apple.com
  • 5 edits in tags/Safari-538.20/Source

Versioning.

1:30 AM Changeset in webkit [166704] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-538.26.2

New Tag.

1:17 AM Changeset in webkit [166703] by Chris Fleizach
  • 6 edits in trunk

AX: AccessibilityObject::children() returns invalid results sometimes
https://bugs.webkit.org/show_bug.cgi?id=130563

Reviewed by Joseph Pecoraro.

Source/WebCore:

Allow the DOM inspector to handle AX objects that do not have Node equivalents
(e.g. anonymous renderers).

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::processAccessibilityChildren):
(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):

  • inspector/InspectorDOMAgent.h:

LayoutTests:

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
12:27 AM Changeset in webkit [166702] by rakuco@webkit.org
  • 2 edits in trunk

[GTK][CMake] Look for glx.h in OPENGL_INCLUDE_DIR.
https://bugs.webkit.org/show_bug.cgi?id=131095

Reviewed by Martin Robinson.

One needs to take into account OpenGL's include directory found via
find_package() when looking for glx.h, since if the former is a
non-standard location the latter will also be. If this is not it is
possible that OpenGL is found but GLX support is not properly detected.

  • Source/cmake/OptionsGTK.cmake:
12:08 AM Changeset in webkit [166701] by rniwa@webkit.org
  • 4 edits in trunk/Websites/perf.webkit.org

WebKitPerfMonitor: Tooltips can be cut off at the top
https://bugs.webkit.org/show_bug.cgi?id=130960

Reviewed by Andreas Kling.

  • public/common.css:

(#title): Removed the gradients, box shadows, and border from the header.
(#title h1): Reduce the font size.
(#title ul): Use line-height to vertically align the navigation bar instead of specifying a padding atop.

  • public/index.html:

(.tooltop:before): Added. Identical to .tooltop:after except it's upside down (arrow facing up).
(.tooltip.inverted:before): Show the arrow facing up when .inverted is set.
(.tooltip.inverted:before): Hide the arrow facing down when .inverted is set.

  • public/js/helper-classes.js:

(Tooltip.show): Show the tooltip below the point if placing it above the point results in the top of the
tooltip extending above y=0.

12:07 AM Changeset in webkit [166700] by rniwa@webkit.org
  • 3 edits in trunk/Websites/perf.webkit.org

WebKitPerfMonitor: Y-axis adjustment is too aggressive
https://bugs.webkit.org/show_bug.cgi?id=130937

Reviewed by Andreas Kling.

Previously, adjusted min. and max. were defined as the two standards deviations away from EWMA of measured
results. This had two major problems:

  1. Two standard deviations can be too small to show the confidence interval for results.
  2. Sometimes baseline and target can be more than two standards deviations away.

Fixed the bug by completely rewriting the algorithm to compute the interval. Instead of blindly using two
standard deviations as margins, we keep adding quarter the standard deviation on each side until more than 90%
of points lie in the interval or we've expanded 4 standard deviations. Once this condition is met, we reduce
the margin on each side separately to reduce the empty space on either side.

A more rigorous approach would involve computing least squared value of results with respect to intervals
but that seems like an overkill for a simple UI problem; it's also computationally expensive.

  • public/index.html:

(Chart..adjustedIntervalForRun): Extracted from computeYAxisBoundsToFitLines.
(Chart..computeYAxisBoundsToFitLines): Compute the min. and max. adjusted intervals out of adjusted intervals
for each runs (current, baseline, and target) so that at least one point from each set of results is shown.
We wouldn't see the difference between measured values versus baseline and target values otherwise.

  • public/js/helper-classes.js:

(PerfTestResult.unscaledConfidenceIntervalDelta): Returns the default value if the confidence
interval delta cannot be computed.
(PerfTestResult.isInUnscaledInterval): Added. Returns true iff the confidence intervals lies
within the given interval.
(PerfTestRuns..filteredResults): Extracted from unscaledMeansForAllResults now that PerfTestRuns.min and
PerfTestRuns.max need to use both mean and confidence interval delta for each result.
(PerfTestRuns..unscaledMeansForAllResults):
(PerfTestRuns.min): Take the confidence interval delta into account.
(PerfTestRuns.max): Ditto.
(PerfTestRuns.countResults): Returns the number of results in the given time frame (> minTime).
(PerfTestRuns.countResultsInInterval): Returns the number of results whose confidence interval lie within the
given interval.
(PerfTestRuns.exponentialMovingArithmeticMean): Fixed the typo so that it actually computes the EWMA.

Apr 2, 2014:

11:21 PM Changeset in webkit [166699] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r166144): fast/preloader/document-write.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=130942

  • platform/mac/TestExpectations: Removing test expectation, because the offending

revision was rolled out.

11:15 PM Changeset in webkit [166698] by ryuan.choi@samsung.com
  • 5 edits in trunk

[EFL][WK1] Use Evas_Touch_Point_State instead of Ewk_Touch_Point_Type
https://bugs.webkit.org/show_bug.cgi?id=131151

Reviewed by Gyuyoung Kim.

Source/WebKit/efl:

Like ewebkit2, we'd beter to use EFL type instead of WebKit specific type
In addition, changed type of id as int to match with ewebkit2.

  • ewk/ewk_frame.h: Replace Ewk_Touch_Point_Type to Evas_Touch_Point_State.
  • ewk/ewk_touch_event.cpp:

(toPlatformTouchPointState):

Tools:

  • DumpRenderTree/efl/EventSender.cpp: Replace Ewk_Touch_Point_Type to Evas_Touch_Point_State.

(TouchEventInfo::TouchEventInfo):
(sendTouchEvent):
(addTouchPointCallback):
(updateTouchPointCallback):
(cancelTouchPointCallback):
(releaseTouchPointCallback):

10:59 PM Changeset in webkit [166697] by ap@apple.com
  • 6 edits in trunk/Source

Sandbox violation in NetworkProcess when uploading a bundle
https://bugs.webkit.org/show_bug.cgi?id=131133

Reviewed by Brady Eidson.

Source/WebCore:

Track generated file ownership explicitly, so that each copy of FormData would know
whether to delete the file.

This part is needed to prevent asserting in FormData destructor in NetworkProcess,
because it doesn't delete the files. Also, some cleanup.

  • WebCore.exp.in: Don't export FormData::removeGeneratedFilesIfNeeded(), WebKit2

doesn't need it any more.

  • platform/network/FormData.cpp: Removed m_hasGeneratedFiles. There is no problem

iterating over FormDataElements to compute it, and that's more robust when FormDatas
are passed or stored on disk permanently.
Updated touched functions to use C++ iteration, and renamed "e" to "element".
(WebCore::FormData::encode): Keep encoding a boolean for hasGeneratedFiles, because
the encoded FormData can be stored persitently, and we can't change the format.

  • platform/network/FormData.h: (WebCore::FormDataElement::FormDataElement):

Added m_ownsGeneratedFile. FormData will only delete files it owns. Since files
are generated immediately before form submission, it's always the FormData being
submitted that owns the generated files.

Source/WebKit2:

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::cleanup):
(WebKit::NetworkResourceLoader::didReceiveResponseAsync):
Don't delete the files. It can't work.

10:45 PM Changeset in webkit [166696] by mihnea@adobe.com
  • 5 edits in trunk/Source/WebCore

[CSSRegions] Use RenderStyle::hasFlowInto when needed
https://bugs.webkit.org/show_bug.cgi?id=131092

Reviewed by Andrei Bucur.

Add hasFlowInto() helper method on RenderStyle to be used
instead of directly checking the presence or absence of flowThread value.
No new functionality, no new tests.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • dom/Element.cpp:

(WebCore::Element::shouldMoveToFlowThread):

  • rendering/style/RenderStyle.h:
  • style/StyleResolveTree.cpp:

(WebCore::Style::isRendererReparented):

10:28 PM Changeset in webkit [166695] by benjamin@webkit.org
  • 3 edits
    2 adds in trunk

CSS JIT: the adjacent position is never reset
https://bugs.webkit.org/show_bug.cgi?id=131145

Reviewed by Andreas Kling.

Source/WebCore:

Corresponding radar: <rdar://problem/16440036>. The backtracking action would use a tail
when not needed.

Test: fast/selectors/multiple-adjacent-chain-without-adjacent-tail.html

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::updateChainStates):

LayoutTests:

  • fast/selectors/multiple-adjacent-chain-without-adjacent-tail-expected.txt: Added.
  • fast/selectors/multiple-adjacent-chain-without-adjacent-tail.html: Added.
10:05 PM Changeset in webkit [166694] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

10:02 PM Changeset in webkit [166693] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.27

New tag.

9:57 PM Changeset in webkit [166692] by jinwoo7.song@samsung.com
  • 3 edits in trunk/Source/WebKit2

[WK2][EFL] Remove unnecessary reinterpret_cast<> in unit testcase
https://bugs.webkit.org/show_bug.cgi?id=131143

Reviewed by Gyuyoung Kim.

Ecore_Timer callback requires *Eina_Bool* return type instead of *bool*.
Also, WebKit/EFL port coding style recommends to use *Eina_Bool* in the
callback function for EFL event handler. Additionally, replaced 0 to nullptr.

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

(EWK2UnitTest::CallbackDataTimer::CallbackDataTimer):
(EWK2UnitTest::CallbackDataTimer::setDone):
(EWK2UnitTest::CallbackDataTimer::timeOutCallback):
(EWK2UnitTest::CallbackDataTimer::setTimedOut):

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

(EWK2StorageManagerTest::timerCallback):
(TEST_F):

7:38 PM Changeset in webkit [166691] by benjamin@webkit.org
  • 6 edits
    2 deletes in trunk/Source/WebKit

[iOS] Remove the legacy string drawing code
https://bugs.webkit.org/show_bug.cgi?id=131088

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

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit/ios:

  • Misc/WebNSStringDrawing.h: Removed.
  • Misc/WebNSStringDrawing.mm: Removed.
  • Misc/WebUIKitSupport.h:

Source/WebKit/mac:

  • Configurations/WebKit.xcconfig:
6:38 PM Changeset in webkit [166690] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove a FIXME that happened.

  • Shared/mac/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::display):

6:37 PM Changeset in webkit [166689] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

Speculative build fix for Windows.

  • DerivedSources.make: Make sure we generate our media control

scripts for Apple Windows (but not WinCairo)

6:36 PM Changeset in webkit [166688] by mrowe@apple.com
  • 4 edits in trunk/Source/WebKit

Build fix after r166684.

Source/WebKit/ios:

  • WebView/WebPDFViewPlaceholder.mm:

(-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):

Source/WebKit/win:

  • WebCoreSupport/WebContextMenuClient.cpp:

(WebContextMenuClient::searchWithGoogle):

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

Fix the !USE(IOSURFACE) build... again.

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):

6:09 PM Changeset in webkit [166686] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the !USE(IOSURFACE) iOS build.

  • platform/ios/MemoryPressureHandlerIOS.mm:

(WebCore::MemoryPressureHandler::platformReleaseMemory):

5:56 PM Changeset in webkit [166685] by mrowe@apple.com
  • 4 edits in trunk/Source/WebCore

<https://webkit.org/b/131136> Remove FrameLoadRequest's m_lockHistory member since it's always false.

Reviewed by Andreas Kling.

  • loader/FrameLoadRequest.cpp:

(WebCore::FrameLoadRequest::FrameLoadRequest):

  • loader/FrameLoadRequest.h:

(WebCore::FrameLoadRequest::FrameLoadRequest):
(WebCore::FrameLoadRequest::lockHistory): Deleted.
(WebCore::FrameLoadRequest::setLockHistory): Deleted.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::load): Remove an if whose body was never executed.

5:51 PM Changeset in webkit [166684] by mrowe@apple.com
  • 25 edits in trunk/Source

<https://webkit.org/b/131135> Introduce LockHistory and LockBackForwardList enums to use in place of bools.

These arguments are often passed using literals at the call site, where the use of bools severely hinders
the readability of the code.

Reviewed by Andreas Kling.

Source/WebCore:

  • WebCore.exp.in:
  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::handleClick):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::submit):

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::openURL):
(WebCore::HTMLFrameElementBase::setLocation):

  • html/HTMLFrameElementBase.h:
  • inspector/InspectorFrontendClientLocal.cpp:

(WebCore::InspectorFrontendClientLocal::openInNewTab):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::navigate):

  • loader/FormSubmission.cpp:

(WebCore::FormSubmission::FormSubmission):
(WebCore::FormSubmission::create):

  • loader/FormSubmission.h:

(WebCore::FormSubmission::lockHistory):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::changeLocation):
(WebCore::FrameLoader::urlSelected):
(WebCore::FrameLoader::loadURLIntoChildFrame):
(WebCore::FrameLoader::loadFrameRequest):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::loadWithNavigationAction):
(WebCore::FrameLoader::clientRedirected):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
(WebCore::FrameLoader::loadDifferentDocumentItem):

  • loader/FrameLoader.h:
  • loader/FrameLoaderTypes.h:
  • loader/NavigationScheduler.cpp:

(WebCore::ScheduledNavigation::ScheduledNavigation):
(WebCore::ScheduledNavigation::lockHistory):
(WebCore::ScheduledNavigation::lockBackForwardList):
(WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
(WebCore::ScheduledRedirect::ScheduledRedirect):
(WebCore::ScheduledLocationChange::ScheduledLocationChange):
(WebCore::ScheduledRefresh::ScheduledRefresh):
(WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
(WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
(WebCore::NavigationScheduler::scheduleRedirect):
(WebCore::NavigationScheduler::mustLockBackForwardList):
(WebCore::NavigationScheduler::scheduleLocationChange):
(WebCore::NavigationScheduler::scheduleFormSubmission):

  • loader/NavigationScheduler.h:
  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::requestFrame):
(WebCore::SubframeLoader::requestObject):
(WebCore::SubframeLoader::loadOrRedirectSubframe):

  • loader/SubframeLoader.h:
  • page/ContextMenuController.cpp:

(WebCore::openNewWindow):
(WebCore::ContextMenuController::contextMenuItemSelected):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::setLocation):
(WebCore::DOMWindow::createWindow):
(WebCore::DOMWindow::open):

  • svg/SVGAElement.cpp:

(WebCore::SVGAElement::defaultEventHandler):

Source/WebKit/mac:

  • WebView/WebPDFView.mm:

(-[WebPDFView PDFViewWillClickOnLink:withURL:]):

Source/WebKit2:

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::clickedLink):

5:44 PM Changeset in webkit [166683] by dino@apple.com
  • 3 edits in trunk/WebKitLibraries

Update WKSI.
<rdar://problem/16321286>

  • libWebKitSystemInterfaceMavericks.a:
  • libWebKitSystemInterfaceMountainLion.a:
5:33 PM Changeset in webkit [166682] by timothy_horton@apple.com
  • 12 edits
    2 adds
    2 deletes in trunk/Source

Pool IOSurfaces to help with allocation cost
https://bugs.webkit.org/show_bug.cgi?id=131096
<rdar://problem/15373942>

Reviewed by Simon Fraser.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/Timer.h:

(WebCore::TimerBase::startRepeating): Add a std::chrono startRepeating.

  • platform/graphics/cg/IOSurfacePool.h: Added.

(WebCore::IOSurfacePool::CachedSurfaceDetails::CachedSurfaceDetails):
(WebCore::IOSurfacePool::CachedSurfaceDetails::resetLastUseTime):

  • platform/graphics/cg/ImageBufferBackingStoreCache.cpp: Removed.
  • platform/graphics/cg/ImageBufferBackingStoreCache.h: Removed.
  • platform/graphics/cg/IOSurfacePool.cpp: Added.

(WebCore::IOSurfacePool::IOSurfacePool):
(WebCore::IOSurfacePool::sharedPool):
(WebCore::surfaceMatchesParameters):
(WebCore::IOSurfacePool::willAddSurface):
(WebCore::IOSurfacePool::didRemoveSurface):
(WebCore::IOSurfacePool::didUseSurfaceOfSize):
(WebCore::IOSurfacePool::takeSurface):
(WebCore::IOSurfacePool::addSurface):
(WebCore::IOSurfacePool::insertSurfaceIntoPool):
(WebCore::IOSurfacePool::setPoolSize):
(WebCore::IOSurfacePool::tryEvictInUseSurface):
(WebCore::IOSurfacePool::tryEvictOldestCachedSurface):
(WebCore::IOSurfacePool::evict):
(WebCore::IOSurfacePool::collectInUseSurfaces):
(WebCore::IOSurfacePool::markOlderSurfacesPurgeable):
(WebCore::IOSurfacePool::collectionTimerFired):
(WebCore::IOSurfacePool::scheduleCollectionTimer):
(WebCore::IOSurfacePool::discardAllSurfaces):
(WebCore::IOSurfacePool::showPoolStatistics):
Add a pool of IOSurfaces. It behaves as such:

  • Keeps up to 64MB of surfaces.
  • Keeps unused and in-use surfaces (but never gets more than 1/2 full with the latter)
  • Marks surfaces purgeable after they've been unused for 2 seconds.
  • Tries to move surfaces from the in-use pool to the unused pool every 500ms.
  • Evicts in an LRU-ish fashion, interleaving eviction of the oldest surfaces and the in-use surfaces (since in-use surfaces are not immediately useful for the pool, but they are desirous because they were recently used).
  • Throws everything away under memory pressure.
  • platform/graphics/cocoa/IOSurface.mm:

(IOSurface::create):
Try to grab a surface from the IOSurfacePool.

  • platform/ios/MemoryPressureHandlerIOS.mm:

(WebCore::MemoryPressureHandler::platformReleaseMemory):

  • platform/mac/MemoryPressureHandlerMac.mm:

(WebCore::MemoryPressureHandler::install):
(WebCore::MemoryPressureHandler::platformReleaseMemory):

  • platform/MemoryPressureHandler.cpp:

(WebCore::MemoryPressureHandler::platformReleaseMemory):
Fix some includes, and throw away all surfaces when we're under memory pressure.

  • Shared/mac/RemoteLayerBackingStore.h:
  • Shared/mac/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::~RemoteLayerBackingStore):
(WebKit::RemoteLayerBackingStore::clearBackingStore):
(WebKit::RemoteLayerBackingStore::display):
When RemoteLayerBackingStore discards a layer, throw it into the pool.

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
Disable the pool in the UI process.

5:07 PM Changeset in webkit [166681] by alice.liu@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix a typo causing TestWebKitAPI to timeout when testing Find.

Reviewed by Dan Bernstein.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageFindClient): Test for !functionPointer like
all the other implementations do.

4:53 PM Changeset in webkit [166680] by Stephanie Lewis
  • 21 edits in trunk

Source/WebCore: Roll out http://trac.webkit.org/changeset/166144
<rdar://problem/16481284> PLT stops loading on news.google.com

Unreviewed rollout.

Rollout 166144 since it prevents the PLT from completing.

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::suspendPostAttachCallbacks):
(WebCore::ContainerNode::resumePostAttachCallbacks):
(WebCore::ContainerNode::queuePostAttachCallback):
(WebCore::ContainerNode::postAttachCallbacksAreSuspended):
(WebCore::ContainerNode::dispatchPostAttachCallbacks):

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

(WebCore::Document::recalcStyle):

  • dom/Element.h:

(WebCore::PostAttachCallbackDisabler::PostAttachCallbackDisabler):
(WebCore::PostAttachCallbackDisabler::~PostAttachCallbackDisabler):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseAttribute):

  • html/HTMLFormControlElement.cpp:

(WebCore::focusPostAttach):
(WebCore::HTMLFormControlElement::didAttachRenderers):
(WebCore::updateFromElementCallback):
(WebCore::HTMLFormControlElement::didRecalcStyle):

  • html/HTMLFrameOwnerElement.cpp:

(WebCore::needsStyleRecalcCallback):
(WebCore::HTMLFrameOwnerElement::scheduleSetNeedsStyleRecalc):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseAttribute):
(WebCore::HTMLObjectElement::shouldAllowQuickTimeClassIdQuirk):
(WebCore::HTMLObjectElement::hasValidClassId):
(WebCore::HTMLObjectElement::renderFallbackContent):

  • html/HTMLObjectElement.h:
  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::createElementRenderer):
(WebCore::HTMLPlugInImageElement::didAttachRenderers):
(WebCore::HTMLPlugInImageElement::willDetachRenderers):
(WebCore::HTMLPlugInImageElement::updateWidgetIfNecessary):
(WebCore::HTMLPlugInImageElement::didMoveToNewDocument):
(WebCore::HTMLPlugInImageElement::updateWidgetCallback):
(WebCore::HTMLPlugInImageElement::startLoadingImage):
(WebCore::HTMLPlugInImageElement::startLoadingImageCallback):
(WebCore::HTMLPlugInImageElement::createShadowIFrameSubtree):
(WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
(WebCore::HTMLPlugInImageElement::didRecalcStyle): Deleted.
(WebCore::HTMLPlugInImageElement::scheduleUpdateForAfterStyleResolution): Deleted.
(WebCore::HTMLPlugInImageElement::updateAfterStyleResolution): Deleted.
(WebCore::HTMLPlugInImageElement::removedFrom): Deleted.
(WebCore::is100Percent): Deleted.
(WebCore::HTMLPlugInImageElement::setNeedsImageReload): Deleted.

  • html/HTMLPlugInImageElement.h:

(WebCore::HTMLPlugInImageElement::imageLoader): Deleted.
(WebCore::HTMLPlugInImageElement::updateImageLoaderWithNewURLSoon): Deleted.

  • style/StyleResolveTree.cpp:

(WebCore::Style::needsPseudeElement):
(WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded):
(WebCore::Style::attachRenderTree):
(WebCore::Style::updateBeforeOrAfterPseudoElement):
(WebCore::Style::needsPseudoElement): Deleted.
(WebCore::Style::postResolutionCallbackQueue): Deleted.
(WebCore::Style::queuePostResolutionCallback): Deleted.
(WebCore::Style::suspendMemoryCacheClientCalls): Deleted.
(WebCore::Style::PostResolutionCallbackDisabler::PostResolutionCallbackDisabler): Deleted.
(WebCore::Style::PostResolutionCallbackDisabler::~PostResolutionCallbackDisabler): Deleted.
(WebCore::Style::postResolutionCallbacksAreSuspended): Deleted.

  • style/StyleResolveTree.h:

Source/WebKit/mac: Roll out http://trac.webkit.org/changeset/166144
<rdar://problem/16481284> PLT stops loading on news.google.com

Unreviewed rollout.

Rollout 166144 since it prevents the PLT from completing.

  • WebCoreSupport/WebFrameLoaderClient.mm:

LayoutTests: Roll out http://trac.webkit.org/changeset/166144
<rdar://problem/16481284> PLT stops loading on news.google.com

Unreviewed rollout.

Rollout 166144 since it prevents the PLT from completing.

  • plugins/plugin-remove-readystatechange-expected.txt:
  • plugins/plugin-remove-readystatechange.html:
  • svg/custom/object-no-size-attributes-expected.txt:
  • svg/custom/object-no-size-attributes.xhtml:
4:51 PM Changeset in webkit [166679] by jinwoo7.song@samsung.com
  • 7 edits in trunk/Source/WebCore

Page should use std::unique_ptr for PointerLockController
https://bugs.webkit.org/show_bug.cgi?id=131098

Reviewed by Anders Carlsson.

Make Page keep a std::unique_ptr to PointerLockController. Store page
references and return controller references where possible.

  • dom/Document.cpp:

(WebCore::Document::prepareForDestruction):
(WebCore::Document::webkitExitPointerLock):
(WebCore::Document::webkitPointerLockElement):

  • dom/Element.cpp:

(WebCore::Element::removedFrom):
(WebCore::Element::webkitRequestPointerLock):

  • page/Page.cpp:

(WebCore::Page::Page):

  • page/Page.h:

(WebCore::Page::pointerLockController):

  • page/PointerLockController.cpp:

(WebCore::PointerLockController::PointerLockController):
(WebCore::PointerLockController::requestPointerLock):
(WebCore::PointerLockController::requestPointerUnlock):
(WebCore::PointerLockController::create): Deleted.

  • page/PointerLockController.h:
4:50 PM Changeset in webkit [166678] by mhahnenberg@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

CodeBlockSet should be generational
https://bugs.webkit.org/show_bug.cgi?id=127152

Reviewed by Geoffrey Garen.

During EdenCollections we now only visit those CodeBlocks that:
a) Are new since the last collection if they were somehow otherwise reachable.
b) Are reachable from an Executable that is part of the remembered set.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock): Initialize uninitialized variables.
(JSC::CodeBlock::visitAggregate): Move the addition of the weak reference harvester after the
shouldImmediatelyAssumeLivenessDuringScan check since it's redundant if we assume liveness.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::forEachRelatedCodeBlock): Executes a functor for each CodeBlock reachable from the current CodeBlock (including this).
We use this to clear marks for the CodeBlocks of remembered Executables (see: CodeBlockSet::clearMarksForEdenCollection).
(JSC::CodeBlockSet::mark): Also check the set of new CodeBlocks for memebership when doing conservative scanning.
(JSC::ScriptExecutable::forEachCodeBlock): Executes a functor for each of this Executable's CodeBlocks.

  • heap/CodeBlockSet.cpp:

(JSC::CodeBlockSet::~CodeBlockSet):
(JSC::CodeBlockSet::add):
(JSC::CodeBlockSet::promoteYoungCodeBlocks): Moves all CodeBlocks currently in the set of new CodeBlocks into
the set of old CodeBlocks.
(JSC::CodeBlockSet::clearMarksForFullCollection): Clears the marks for all CodeBlocks.
(JSC::CodeBlockSet::clearMarksForEdenCollection): Clears the marks for CodeBlocks owned by Executables in the
remembered set. When an Executable is added to the remembered set it's typically because we need to do something
with its CodeBlock.
(JSC::CodeBlockSet::clearMarks):
(JSC::CodeBlockSet::deleteUnmarkedAndUnreferenced): Fixpoints over either just the new CodeBlocks or all CodeBlocks
to determine which CodeBlocks are dead and eagerly finalizes/deletes them.
(JSC::CodeBlockSet::remove):
(JSC::CodeBlockSet::traceMarked): Iterate only the currently executing CodeBlocks instead of all CodeBlocks.
(JSC::CodeBlockSet::rememberCurrentlyExecutingCodeBlocks): Clear m_mayBeExecuting for all currently executing
CodeBlocks because we no longer always do this at the beginning of EdenCollections.

  • heap/CodeBlockSet.h:

(JSC::CodeBlockSet::iterate):

  • heap/Heap.cpp:

(JSC::Heap::markRoots):
(JSC::Heap::deleteAllCompiledCode):
(JSC::Heap::deleteUnmarkedCompiledCode):

  • runtime/Executable.cpp:

(JSC::ScriptExecutable::installCode): Write barrier code on installation. We do this due to the following situation:
a) A CodeBlock is created and is compiled on a DFG worker thread.
b) No GC happens.
c) The CodeBlock has finished being compiled and is installed in the Executable.
d) The function never executes before the next GC.
e) The next GC needs needs to visit the new CodeBlock but the Executable won't be revisited unless

it's added to the remembered set.

4:41 PM Changeset in webkit [166677] by dino@apple.com
  • 3 edits in trunk/Source/WebKit2

[iOS] Expose geolocation provider on the process pool
https://bugs.webkit.org/show_bug.cgi?id=131125

Reviewed by Dan Bernstein.

Followup comments from Dan Bernstein. Use a class
extension rather than a new category.

  • UIProcess/API/Cocoa/WKProcessPool.mm:

(-[WKProcessPool _geolocationProvider]):

  • UIProcess/API/Cocoa/WKProcessPoolInternal.h:
4:40 PM Changeset in webkit [166676] by dino@apple.com
  • 5 edits in trunk/Source/WebCore

Load Media Controls js/css from bundle
https://bugs.webkit.org/show_bug.cgi?id=131086

Followup comments from Eric Carlson.

Remove the booleans that were guarding loading the resources.

  • rendering/RenderThemeIOS.h:
  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::mediaControlsStyleSheet):
(WebCore::RenderThemeIOS::mediaControlsScript):
(WebCore::RenderThemeIOS::RenderThemeIOS):

  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::RenderThemeMac):
(WebCore::RenderThemeMac::mediaControlsStyleSheet):
(WebCore::RenderThemeMac::mediaControlsScript):

4:29 PM Changeset in webkit [166675] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

RemoteLayerBackingStore doesn't need to clear opaque layers
https://bugs.webkit.org/show_bug.cgi?id=131134

Reviewed by Simon Fraser.

  • Shared/mac/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::display):
We don't need to clear opaque layers, because we'll paint
over the whole area. In addition, we should fill opaque layers
with a bright color in debug builds to make it very clear
that we've made a mistake (similar to what FrameView does).

4:09 PM Changeset in webkit [166674] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

filter-build-webkit: Ignore xcodebuild warnings when compiling with newer builds of clang
<http://webkit.org/b/131045>

Reviewed by Daniel Bates.

  • Scripts/filter-build-webkit:

(shouldIgnoreLine): Ignore DVTAssertions related to new builds
of clang, plus debug data for all DVTAssertions.

4:06 PM Changeset in webkit [166673] by zoltan@webkit.org
  • 5 edits in trunk/LayoutTests

[WebInspector] inspector-protocol/model/highlight-shape-outside.html is failing
https://bugs.webkit.org/show_bug.cgi?id=124660

Reviewed by Timothy Hatcher.

I updated the tests syntax to CR, CSS Shapes specification. It's also needed to be updated
to the latest WebInspector testing methods. I added some addidional test cases for the highlighting,
and also fixed some expected test case in the script, and updated the expected file.

  • TestExpectations:
  • inspector/dom/highlight-shape-outside-expected.txt:
  • inspector/dom/highlight-shape-outside.html:
  • inspector/dom/shapes-test.js:

(InspectorTestProxy.registerInitializer.):

3:48 PM Changeset in webkit [166672] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Document WKBackForwardList, WKBackForwardListItem and WKWebViewConfiguration
https://bugs.webkit.org/show_bug.cgi?id=131131

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKBackForwardList.h:
  • UIProcess/API/Cocoa/WKBackForwardListItem.h:
  • UIProcess/API/Cocoa/WKWebViewConfiguration.h:
3:32 PM Changeset in webkit [166671] by Chris Fleizach
  • 1 edit
    1 add in trunk/LayoutTests

AX: Improve ARIA live region reliability by sending notifications when live regions are created/shown and hidden/destroyed
https://bugs.webkit.org/show_bug.cgi?id=124381

Unreviewed. Forgot to add test expectation.

  • platform/mac/accessibility/live-region-creation-notification-expected.txt: Added.
2:50 PM Changeset in webkit [166670] by ggaren@apple.com
  • 2 edits in trunk/PerformanceTests

Unreviewed.

Try to ignore some Xcode shmutz in MallocBench.

  • MallocBench/MallocBench.xcodeproj: Added property svn:ignore.
2:42 PM Changeset in webkit [166669] by dino@apple.com
  • 9 edits in trunk

Load Media Controls js/css from bundle
https://bugs.webkit.org/show_bug.cgi?id=131086

Reviewed by Eric Carlson.

Source/WebCore:

Rather than embed encoded versions of the JS and CSS files
into C++ source, just load the files directly from the bundle.

  • DerivedSources.make: Removed now unnecessary rules.
  • WebCore.xcodeproj/project.pbxproj: Copy mediaControls files to the bundle.
  • rendering/RenderThemeIOS.h:
  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::RenderThemeIOS):
(WebCore::RenderThemeIOS::mediaControlsStyleSheet): Load from the bundle.
(WebCore::RenderThemeIOS::mediaControlsScript): Ditto.

  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::RenderThemeMac):
(WebCore::RenderThemeMac::mediaControlsStyleSheet):
(WebCore::RenderThemeMac::mediaControlsScript):

Tools:

We're now putting CSS files into the bundle, so remove the test for them.

  • Scripts/check-for-inappropriate-files-in-framework:
2:40 PM Changeset in webkit [166668] by dbates@webkit.org
  • 11 edits
    2 adds in trunk

Move focus management API from HTMLDocument to Document
https://bugs.webkit.org/show_bug.cgi?id=131079
<rdar://problem/16220103>

Reviewed by Timothy Hatcher.

Source/WebCore:

Merged from Blink (patch by Christophe Dumez):
https://src.chromium.org/viewvc/blink?view=rev&revision=165515

Move hasFocus() and attribute activeElement from interface HTMLDocument
to DOMDocument as per section Focus management APIs of the HTML5 standard:
<http://www.whatwg.org/specs/web-apps/current-work/#focus-management-apis> (1 April 2014).

Test: fast/dom/Document/xml-document-focus.xml

  • bindings/objc/PublicDOMInterfaces.h: Moved hasFocus() and property activeElement from

interface DOMHTMLDocument to DOMDocument.

  • dom/Document.cpp:

(WebCore::Document::activeElement): Added.
(WebCore::Document::hasFocus): Added.

  • dom/Document.h:
  • dom/Document.idl:
  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::activeElement): Deleted.
(WebCore::HTMLDocument::hasFocus): Deleted.

  • html/HTMLDocument.h:
  • html/HTMLDocument.idl:

LayoutTests:

Derived from a Blink patch by Christophe Dumez:
https://src.chromium.org/viewvc/blink?view=rev&revision=165515

Made the test in <https://src.chromium.org/viewvc/blink?view=rev&revision=165515> a valid XHTML
document. Additionally taught LayoutTests/resources/{js-test, js-test-pre}.js to create actual
HTML elements so that these scripts can be used to write DRT tests in XML documents.

  • fast/dom/Document/xml-document-focus-expected.txt: Added.
  • fast/dom/Document/xml-document-focus.xml: Added.
  • resources/js-test-pre.js: Added function createHTMLElement() and modified code to use it

instead of document.createElement() so as to work around <https://bugs.webkit.org/show_bug.cgi?id=131074>.

  • resources/js-test.js: Ditto.
2:38 PM Changeset in webkit [166667] by ggaren@apple.com
  • 1 edit
    37 adds in trunk/PerformanceTests

Let's benchmark malloc
https://bugs.webkit.org/show_bug.cgi?id=131118

Reviewed by Mark Hahnenberg.

I want to replace fastMalloc with something faster (fasterMalloc?).
I wrote these benchmarks to test / drive development.

  • MallocBench: Added.
  • MallocBench/MallocBench: Added.
  • MallocBench/MallocBench.xcodeproj: Added.
  • MallocBench/MallocBench.xcodeproj/project.pbxproj: Added.
  • MallocBench/MallocBench/Benchmark.cpp: Added.

(allocateHeap):
(deallocateHeap):
(Benchmark::Benchmark):
(Benchmark::printBenchmarks):
(Benchmark::runOnce):
(Benchmark::run):
(Benchmark::printReport):
(Benchmark::currentTimeMS):
(Benchmark::currentMemoryBytes):

  • MallocBench/MallocBench/Benchmark.h: Added.

(Benchmark::Memory::Memory):
(Benchmark::Memory::operator-):
(Benchmark::isValid):

  • MallocBench/MallocBench/CPUCount.cpp: Added.

(cpuCount):

  • MallocBench/MallocBench/CPUCount.h: Added.
  • MallocBench/MallocBench/CommandLine.cpp: Added.

(CommandLine::printUsage):

  • MallocBench/MallocBench/CommandLine.h: Added.

(CommandLine::isValid):
(CommandLine::benchmarkName):
(CommandLine::isParallel):
(CommandLine::heapSize):
(CommandLine::measureHeap):

  • MallocBench/MallocBench/Interpreter.cpp: Added.

(Interpreter::Interpreter):
(Interpreter::~Interpreter):
(Interpreter::run):

  • MallocBench/MallocBench/Interpreter.h: Added.
  • MallocBench/MallocBench/balloon.cpp: Added.

(benchmark_balloon):

  • MallocBench/MallocBench/balloon.h: Added.
  • MallocBench/MallocBench/big.cpp: Added.

(benchmark_big):

  • MallocBench/MallocBench/big.h: Added.
  • MallocBench/MallocBench/churn.cpp: Added.

(HeapDouble::operator new):
(HeapDouble::operator delete):
(HeapDouble::HeapDouble):
(HeapDouble::operator+=):
(benchmark_churn):

  • MallocBench/MallocBench/churn.h: Added.
  • MallocBench/MallocBench/crash.ops: Added.
  • MallocBench/MallocBench/facebook.cpp: Added.

(benchmark_facebook):

  • MallocBench/MallocBench/facebook.h: Added.
  • MallocBench/MallocBench/facebook.ops: Added.
  • MallocBench/MallocBench/fragment.cpp: Added.

(validate):
(benchmark_fragment):
(benchmark_fragment_iterate):

  • MallocBench/MallocBench/fragment.h: Added.
  • MallocBench/MallocBench/list.cpp: Added.

(benchmark_list_allocate):
(benchmark_list_traverse):

  • MallocBench/MallocBench/list.h: Added.
  • MallocBench/MallocBench/main.cpp: Added.

(main):

  • MallocBench/MallocBench/mbmalloc.cpp: Added.
  • MallocBench/MallocBench/mbmalloc.h: Added.
  • MallocBench/MallocBench/medium.cpp: Added.

(benchmark_medium):

  • MallocBench/MallocBench/medium.h: Added.
  • MallocBench/MallocBench/message.cpp: Added.

(benchmark_message_one):
(benchmark_message_many):

  • MallocBench/MallocBench/message.h: Added.
  • MallocBench/MallocBench/realloc.cpp: Added.

(benchmark_realloc):

  • MallocBench/MallocBench/realloc.h: Added.
  • MallocBench/MallocBench/tree.cpp: Added.

(benchmark_tree_allocate):
(benchmark_tree_traverse):
(benchmark_tree_churn):

  • MallocBench/MallocBench/tree.h: Added.
  • MallocBench/run-malloc-benchmarks: Added.
2:27 PM Changeset in webkit [166666] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Refactor the function call generator to take the arguments by value
https://bugs.webkit.org/show_bug.cgi?id=131129

Reviewed by Andreas Kling.

Nothing forces the pointed address to stay alive between setOneArgument/setTwoArguments
and prepareAndCall.

This patch changes FunctionCall to:
-Keep the register by value instead of using pointers.
-Crash at compile time if a register is invalid.

  • cssjit/FunctionCall.h:

(WebCore::FunctionCall::FunctionCall):
(WebCore::FunctionCall::setOneArgument):
(WebCore::FunctionCall::setTwoArguments):
(WebCore::FunctionCall::swapArguments):
(WebCore::FunctionCall::prepareAndCall):

  • cssjit/RegisterAllocator.h:

(WebCore::RegisterAllocator::isValidRegister):

2:06 PM Changeset in webkit [166665] by dbates@webkit.org
  • 14 edits
    2 deletes in trunk

Remove Settings::maximumDecodedImageSize()
https://bugs.webkit.org/show_bug.cgi?id=131057
<rdar://problem/15626368>

Source/WebCore:

Reviewed by Darin Adler.

The setting Settings::maximumDecodedImageSize() and its related logic have various
shortcomings, including the inability to cancel an image load when the estimated
decoded image size exceeds the maximum decoded image size. In the iOS port, this
setting is less useful given image subsampling support. For now, we remove this
setting and its related logic. Should it turn out that such a setting is useful
then we can implement it again taking care to address the shortcomings in the
original design.

  • html/HTMLCanvasElement.cpp: For the iOS port, define MaxCanvasArea to be 4580 * 1145

pixels such that the maximum size of the image buffer is 20 MB (assumes 4 bytes per pixel).
(WebCore::HTMLCanvasElement::HTMLCanvasElement):
(WebCore::HTMLCanvasElement::createImageBuffer):

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

(WebCore::CanvasRenderingContext2D::createImageData):
(WebCore::CanvasRenderingContext2D::getImageData):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::addIncrementalDataBuffer):
(WebCore::CachedImage::finishLoading):

  • loader/cache/CachedImage.h:
  • page/Settings.in:

Source/WebKit/mac:

Reviewed by Darin Adler.

Remove preferences key WebKitMaximumImageSize.

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

(+[WebPreferences initialize]):
(-[WebPreferences _maximumImageSize:]): Deleted.

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

(-[WebView _preferencesChanged:]):

LayoutTests:

Reviewed by Darin Adler.

Remove test LayoutTests/fast/images/decoded-size-exceeds-max-decoded-size.html as it
isn't applicable following the removal of the setting Settings::maximumDecodedImageSize().
Additionally update the test fast/images/bag-png.html to ensure that we dispatch
a DOM Error event when we fail to decode a malformed image.

  • fast/images/bad-png.html:
  • fast/images/decoded-size-exceeds-max-decoded-size-expected.txt: Removed.
  • fast/images/decoded-size-exceeds-max-decoded-size.html: Removed.
2:02 PM Changeset in webkit [166664] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Document WKUIDelegate and WKWindowFeatures
https://bugs.webkit.org/show_bug.cgi?id=131124

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKProcessPool.h:
  • UIProcess/API/Cocoa/WKUIDelegate.h:
  • UIProcess/API/Cocoa/WKWindowFeatures.h:
1:59 PM Changeset in webkit [166663] by dino@apple.com
  • 4 edits in trunk/Source/WebKit2

[iOS] Expose geolocation provider on the process pool
https://bugs.webkit.org/show_bug.cgi?id=131125

Patch by Sam Weinig.
Reviewed by Dean Jackson.

  • UIProcess/API/Cocoa/WKProcessPool.mm:

(-[WKProcessPool _geolocationProvider]): Create and initialize WKGeolocationProviderIOS if necessary.

  • UIProcess/API/Cocoa/WKProcessPoolInternal.h: Expose _geolocationProvider.
  • UIProcess/ios/WKContentView.mm:

(-[WKContentView _decidePolicyForGeolocationRequestFromOrigin:frame:request:]): Call into WKProcessPool.

1:49 PM Changeset in webkit [166662] by mark.lam@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Added some more dataLog info for OSR exits.
<https://webkit.org/b/131120>

Reviewed by Michael Saboff.

Adding info about the OSR exit index, the bytecode index of the bytecode
that is OSR exiting, and the reason for the OSR exit. This change is
for debugging code which only comes into play when we use the
--printEachOSRExit option.

  • dfg/DFGOSRExit.h:
  • dfg/DFGOSRExitCompiler32_64.cpp:

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

  • dfg/DFGOSRExitCompiler64.cpp:

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

  • dfg/DFGOperations.cpp:
1:28 PM WikiStart edited by jonlee@apple.com
(diff)
1:07 PM Changeset in webkit [166661] by mhock@apple.com
  • 39 edits
    1 copy in trunk

Unify private browsing with sessions.
https://bugs.webkit.org/show_bug.cgi?id=130099

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Unless otherwise noted, the following consists solely of mechanical changes to replace querying WebCore::Settings::privateBrowsingEnabled() with Page::usesEphemeralSession().

  • Modules/webdatabase/DatabaseContext.cpp:

(WebCore::DatabaseContext::allowDatabaseAccess):

  • WebCore.exp.in: Remove Settings::setPrivateBrowsingEnabled, add Page::legacyPrivateBrowsingEnabled.
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • loader/HistoryController.cpp:

(WebCore::HistoryController::updateForStandardLoad):
(WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
(WebCore::HistoryController::updateForClientRedirect):
(WebCore::HistoryController::updateForSameDocumentNavigation):
(WebCore::HistoryController::pushState):
(WebCore::HistoryController::replaceState):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::cacheForMainRequest):
(WebCore::ApplicationCacheGroup::selectCache):
(WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL):
(WebCore::ApplicationCacheGroup::update):

  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::isApplicationCacheEnabled):

  • loader/icon/IconController.cpp:

(WebCore::IconController::continueLoadWithDecision):

  • page/Page.cpp:

(WebCore::Page::Page): Initialize with defaultSessionID.
(WebCore::Page::legacyPrivateBrowsingEnabled): Legacy setting for private browsing.
(WebCore::Page::privateBrowsingStateChanged): Move implementation to setSessionID.
(WebCore::Page::sessionID): Simplify to just return m_sessionID.
(WebCore::Page::setSessionID): Also perform privateBrowsingStateChanged action.a
(WebCore::Page::privateBrowsingStateChanged): Deleted.
(WebCore::Page::checkSubframeCountConsistency): Deleted.

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

(WebCore::PageConsole::addMessage):
(WebCore::PageConsole::messageWithTypeAndLevel):

  • page/Settings.cpp: Remove privateBrowsingEnabled setting.

(WebCore::Settings::Settings):
(WebCore::Settings::setPrivateBrowsingEnabled): Page reflects setting using session.

  • page/Settings.h:
  • plugins/PluginView.cpp:

(WebCore::PluginView::getValue):

  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::addSearchResult):

  • storage/Storage.cpp:

(WebCore::Storage::isDisabledByPrivateBrowsing):

Source/WebKit/efl:

  • ewk/ewk_view.cpp:

(_ewk_view_priv_new): Change WebCore::Settings::privateBrowsingEnabled() to Page::sessionID().isEphemeral().
(ewk_view_setting_private_browsing_set): Change WebCore::Settings::setPrivateBrowsingEnabled() to Page::enableLegacyPrivateBrowsing().

Source/WebKit/gtk:

  • WebCoreSupport/FrameLoaderClientGtk.cpp: Change WebCore::Settings::privateBrowsingEnabled() to Page:usesEphemeralSession().

(WebKit::FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):

  • webkit/webkitwebview.cpp: Change Settings::setPrivateBrowsingEnabled() to Page::enablePrivateBrowsing().

(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

Source/WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.mm: Change WebCore::Settings::privateBrowsingEnabled() to Page::sessionID().isEphemeral().

(WebFrameLoaderClient::updateGlobalHistoryItemForPage):

  • WebCoreSupport/WebFrameNetworkingContext.mm: Ditto.

(WebFrameNetworkingContext::storageSession):

  • WebView/WebView.mm: Change WebCore::Settings::setPrivateBrowsingEnabled() to Page::enableLegacyPrivateBrowsing().

(-[WebView _preferencesChanged:]):

Source/WebKit/win:

  • WebCoreSupport/WebFrameLoaderClient.cpp: Change WebCore::Settings::privateBrowsingEnabled() to Page::sessionID().isEphemeral().

(WebFrameLoaderClient::updateGlobalHistoryItemForPage):

  • WebCoreSupport/WebFrameNetworkingContext.cpp: Ditto.

(WebFrameNetworkingContext::storageSession):

  • WebView.cpp: Change WebCore::Settings::setPrivateBrowsingEnabled() to Page::enableLegacyPrivateBrowsing().

(WebView::notifyPreferencesChanged):

Source/WebKit2:

  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Change WebPage::isUsingEphemeralSession() to WebPage::usesEphemeralSession().

(WKBundlePageIsUsingEphemeralSession):

  • WebProcess/InjectedBundle/InjectedBundle.cpp: Change Settings::setPrivateBrowsingEnabled() to Page::enableLegacyPrivateBrowsing().

(WebKit::InjectedBundle::setPrivateBrowsingEnabled):

  • WebProcess/Plugins/PluginView.cpp: Change Settings::privateBrowsingEnabled() to Page::usesEphemeralSession().

(WebKit::PluginView::isPrivateBrowsingEnabled):

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp: Ditto.

(WebKit::WebFrameNetworkingContext::storageSession):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::usesEphemeralSession): Renamed from isUsingEphemeralSession.
(WebKit::WebPage::setSessionID): Ensure session before setting.
(WebKit::WebPage::updatePreferences): Set session to legacy private session if needed.
(WebKit::WebPage::sessionID): Moved to header.
(WebKit::WebPage::isUsingEphemeralSession): Renamed to usesEphemeralSession.

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::sessionID): Just call down to m_page.

Tools:

Add an API test for ephemeral sessions similar to PrivateBrowsingPushStateNoHistoryCallback.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/EphemeralSessionPushStateNoHistoryCallback.cpp:

(TestWebKitAPI::didNavigateWithNavigationData):
(TestWebKitAPI::didSameDocumentNavigationForFrame):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.cpp: Also test to make sure private browsing can be disabled.

(TestWebKitAPI::didNavigateWithoutNavigationData):
(TestWebKitAPI::didNavigateWithNavigationData):
(TestWebKitAPI::didSameDocumentNavigationForFrame):
(TestWebKitAPI::TEST):

12:58 PM Changeset in webkit [166660] by Brent Fulgham
  • 3 edits in trunk/WebKitLibraries

[Win] Enable the CANVAS_PATH feature.
https://bugs.webkit.org/show_bug.cgi?id=131114

Reviewed by Dean Jackson.

This code build and runs on Windows just fine. It was overlooked when the feature
was activated on other platforms.

  • win/tools/vsprops/FeatureDefines.props: Turn on the feature.
  • win/tools/vsprops/FeatureDefinesCairo.props: Ditto.
12:52 PM Changeset in webkit [166659] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Try to fix test failures.

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

(WebCore::TileGrid::TileGrid): Initialize a field.

12:51 PM Changeset in webkit [166658] by alice.liu@apple.com
  • 10 edits
    4 adds in trunk/Source/WebKit2

Adding Objective-C SPI for Find in Page.
https://bugs.webkit.org/show_bug.cgi?id=131000 Need an Objective-C API or SPI for Find in Page

Patch by Alice Barraclough <alice.liu@apple.com> on 2014-04-02
Reviewed by Dan Bernstein.

Find-on-page SPI added to WKWebView, which funnels the messages through the WebPageProxy.
Returning messages are designated by _WKFindDelegate protocol.
Also provide FindDelegate access on WKWebView.
WebPageProxy gets a new-style API::FindClient.
Also had to replicate WKFindOptions as _WKFindOptions in Cocoa SPI. This is unfortunate, but it
does follow the pattern of other options & enums related to classes that are SPI-for-now.

PageClientImplIOS handles setFindIndicator function by forwarding to its WKContentView,
but WKContentView _setFindIndicator remains unimplemented for now.

  • UIProcess/API/APIFindClient.h: Added.

(API::FindClient::~FindClient):
(API::FindClient::didCountStringMatches):
(API::FindClient::didFindString):
(API::FindClient::didFailToFindString):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageFindClient):

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView _findDelegate]):
(-[WKWebView _setFindDelegate:]):
(toFindOptions):
(-[WKWebView _countStringMatches:options:maxCount:]):
(-[WKWebView _findString:options:maxCount:]):
(-[WKWebView _hideFindUI]):
(-[WKWebView _hostForFindUI]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:

(NS_OPTIONS):

  • UIProcess/API/Cocoa/_WKFindDelegate.h: Added.
  • UIProcess/Cocoa/FindClient.h: Added.
  • UIProcess/Cocoa/FindClient.mm: Added.

(WebKit::FindClient::FindClient):
(WebKit::FindClient::delegate):
(WebKit::FindClient::setDelegate):
(WebKit::FindClient::didCountStringMatches):
(WebKit::FindClient::didFindString):
(WebKit::FindClient::didFailToFindString):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setFindClient):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::didCountStringMatches):
(WebKit::WebPageProxy::didFindString):
(WebKit::WebPageProxy::didFailToFindString):
(WebKit::WebPageProxy::initializeFindClient): Deleted.

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::findClient):

  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::setFindIndicator):

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

(-[WKContentView _setFindIndicator:WebKit::fadeOut:animate:]):

  • WebKit2.xcodeproj/project.pbxproj:
12:34 PM Changeset in webkit [166657] by timothy@apple.com
  • 12 edits
    4 deletes in trunk

Remove Input domain from the Web Inspector protocol.

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

Reviewed by Joseph Pecoraro.

Source/WebCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorInputAgent.cpp: Removed.
  • inspector/InspectorInputAgent.h: Removed.
  • inspector/protocol/Input.json: Removed.

Source/WebInspectorUI:

  • UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js: Updated.
  • Versions/Inspector-iOS-7.0.json: Removed Input domain.

LayoutTests:

  • inspector-protocol/input/dispatchKeyEvent-expected.txt: Removed.
  • inspector-protocol/input/dispatchKeyEvent.html: Removed.
  • inspector-protocol/input/dispatchMouseEvent-expected.txt: Removed.
  • inspector-protocol/input/dispatchMouseEvent.html: Removed.
12:29 PM April 2014 Meeting edited by jonlee@apple.com
(diff)
12:28 PM April 2014 Meeting created by jonlee@apple.com
12:27 PM Changeset in webkit [166656] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Rename -[WKBackForwardListItem originalURL] to -[WKBackForwardListItem initialURL]
https://bugs.webkit.org/show_bug.cgi?id=131116

Reviewed by Antti Koivisto.

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

(-[WKBackForwardListItem initialURL]):
(-[WKBackForwardListItem originalURL]): Deleted.

12:25 PM WikiStart edited by jonlee@apple.com
(diff)
11:57 AM Changeset in webkit [166655] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] Unreviewed build fix for full Debug rebuild.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export JSC symbol needed by testing infrastructure.
11:16 AM Changeset in webkit [166654] by Antti Koivisto
  • 10 edits
    1 copy
    1 add in trunk/Source

Split tile grid out from TileController
https://bugs.webkit.org/show_bug.cgi?id=131102

Reviewed by Simon Fraser.

Source/WebCore:

Add a TileGrid class that encapsulates tiles, zoom level and the related metadata.
This will make it possible to have multiple grids per TileController later.

Source/WebKit2:

  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:

(WebKit::PlatformCALayerRemoteTiledBacking::PlatformCALayerRemoteTiledBacking):

  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
11:11 AM Changeset in webkit [166653] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

[Win] Correct media controls for test harness
https://bugs.webkit.org/show_bug.cgi?id=131008

Reviewed by Eric Carlson.

  • rendering/RenderThemeSafari.cpp: Revise to match RenderThemeWin logic.

(WebCore::RenderThemeSafari::systemFont):
(WebCore::RenderThemeSafari::paintMenuList):
(WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
(WebCore::RenderThemeSafari::mediaControlsStyleSheet):
(WebCore::RenderThemeSafari::mediaControlsScript):
(WebCore::RenderThemeSafari::paintMediaFullscreenButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaMuteButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaPlayButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaSeekBackButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaSeekForwardButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaSliderTrack): Deleted.
(WebCore::RenderThemeSafari::paintMediaSliderThumb): Deleted.

  • rendering/RenderThemeSafari.h:
10:54 AM Changeset in webkit [166652] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=131110

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-04-02
Reviewed by Simon Fraser.

Image::size() now returns a FloatSize instead of an IntSize.

  • platform/win/DragImageCairoWin.cpp:

(WebCore::createDragImageFromImage):

10:27 AM Changeset in webkit [166651] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Try a workaround for a crash
https://bugs.webkit.org/show_bug.cgi?id=131112

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView UIDelegate]):
(-[WKWebView setUIDelegate:]):

10:21 AM Changeset in webkit [166650] by ddkilzer@apple.com
  • 6 edits
    2 adds in trunk

Use outermost containing isolate when constructing bidi runs
<http://webkit.org/b/131107>
<rdar://problem/15690021>

Reviewed by Darin Adler.

Merged from Blink (patch by jww@chromium.org):
https://src.chromium.org/viewvc/blink?revision=157268&view=revision
http://crbug.com/279277

Update containingIsolate to go back all the way to top
isolate from current root, rather than stopping at the first
isolate it finds. This works because the current root is
always updated with each isolate run.

Source/WebCore:

Tests: fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent.html

fast/text/international/unicode-bidi-isolate-nested-with-removes.html

  • rendering/InlineIterator.h:

(WebCore::highestContainingIsolateWithinRoot):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::constructBidiRunsForSegment):

LayoutTests:

  • fast/text/international/unicode-bidi-isolate-nested-with-removes-expected.txt: Updated.
  • fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent-expected.txt: Added.
  • fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent.html: Added.
  • fast/text/international/unicode-bidi-isolate-nested-with-removes.html: Updated.
9:31 AM Changeset in webkit [166649] by Chris Fleizach
  • 12 edits
    1 add in trunk

AX: Improve ARIA live region reliability by sending notifications when live regions are created/shown and hidden/destroyed
https://bugs.webkit.org/show_bug.cgi?id=124381

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Re-organize some code so that when we detect a new node has been created, we can safely determine its live region status.
If it is a live region, we fire off a live region created notification.

Test: platform/mac/accessibility/live-region-creation-notification.html

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::handleLiveRegionCreated):
(WebCore::AXObjectCache::childrenChanged):
(WebCore::AXObjectCache::handleAttributeChanged):

  • accessibility/AXObjectCache.h:

(WebCore::AXObjectCache::childrenChanged):

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::defaultLiveRegionStatusForRole):
(WebCore::AccessibilityObject::liveRegionStatusIsEnabled):
(WebCore::AccessibilityObject::supportsARIALiveRegion):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::ariaLiveRegionStatus):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::ariaLiveRegionStatus):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/ios/AXObjectCacheIOS.mm:

(WebCore::AXObjectCache::postPlatformNotification):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.h:
  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper postLiveRegionCreatedNotification]):

  • accessibility/mac/AXObjectCacheMac.mm:

(WebCore::AXObjectCache::postPlatformNotification):

LayoutTests:

  • platform/mac/accessibility/live-region-creation-notification.html: Added.
8:38 AM Changeset in webkit [166648] by commit-queue@webkit.org
  • 11 edits in trunk

REGRESSION(r165704): [GTK] Inspector resources not correctly generated
https://bugs.webkit.org/show_bug.cgi?id=130343

Patch by Martin Robinson <mrobinson@igalia.com> on 2014-04-02
Reviewed by Gustavo Noronha Silva.

.:

  • CMakeLists.txt: Add a variable which points to the directory to store WebInspectorUI

derived sources.

  • Source/cmake/WebKitFS.cmake: Generate WebInspectorUI derived sources directories.

Source/JavaScriptCore:

  • CMakeLists.txt: We generate the inspector JavaScript file into a directory like the one

in which it should be distributed. This allows us to more easily package it for GTK+.

Source/WebCore:

  • CMakeLists.txt: Generate the web inspector JS file into the new WebInspectorUI derived sources

directory.

Source/WebKit2:

  • PlatformGTK.cmake: Pass all appropriate directories to the

GResources XML generation script.

Tools:

  • gtk/generate-inspector-gresource-manifest.py: Instead of hard-coding the file list, accept a list

of directories on the command line and look for all appropriate files in those directories for the
GResource archive. Also make archive paths relative to those directories.
(find_all_files_in_directory): This helper looks for all the appropriate files in a given directory.
(find_all_files_in_directory.select_file): Whether or not to add the file to the archive.

8:29 AM Changeset in webkit [166647] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after r166642.
(WinCairo should really turn subpixel layout on.)

  • platform/graphics/LayoutSize.h:

(WebCore::flooredForPainting):

8:10 AM Changeset in webkit [166646] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[webkitpy] Avoid multiple "Preparing rollout for bug" log messages
https://bugs.webkit.org/show_bug.cgi?id=131106

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-04-02
Reviewed by Csaba Osztrogonác.

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

(AbstractRolloutPrepCommand._prepare_state):

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

(test_prepare_rollout):
(test_create_rollout):
(test_create_rollout_resolved):
(test_rollout):

7:52 AM Changeset in webkit [166645] by ddkilzer@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

Add LayoutTest for crash with bidi isolates

Merged from Blink (patch by jww@chromium.org):
https://src.chromium.org/viewvc/blink?revision=156580&view=revision
http://crbug.com/265838

See Bug 120504: Fix nested unicode-bidi: isolate
<https://bugs.webkit.org/show_bug.cgi?id=120504>
<http://trac.webkit.org/changeset/155554>

  • fast/text/international/unicode-bidi-isolate-nested-with-removes-expected.txt: Added.
  • fast/text/international/unicode-bidi-isolate-nested-with-removes.html: Added.
7:37 AM Changeset in webkit [166644] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Subpixel rendering: Make GraphicsContext::drawTiledImage* functions float based.
https://bugs.webkit.org/show_bug.cgi?id=131062

Reviewed by Simon Fraser.

This is in preparation to support subpixel positioned/sized background images. Generated images
need to be able to sized on device pixels.

No change in behavior.

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):

  • platform/graphics/GraphicsContext.h:
7:27 AM Changeset in webkit [166643] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

[WinCairo] Build fix after r166496.
https://bugs.webkit.org/show_bug.cgi?id=131006

Patch by Alex Christensen <achristensen@webkit.org> on 2014-04-02
Reviewed by Carlos Garcia Campos.

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::handleSample):
(WebCore::InbandTextTrackPrivateGStreamer::streamChanged):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
(WebCore::MediaPlayerPrivateGStreamer::videoChanged):
(WebCore::MediaPlayerPrivateGStreamer::videoCapsChanged):
(WebCore::MediaPlayerPrivateGStreamer::audioChanged):
(WebCore::MediaPlayerPrivateGStreamer::textChanged):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::volumeChanged):
(WebCore::MediaPlayerPrivateGStreamerBase::muteChanged):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::activeChanged):
(WebCore::TrackPrivateBaseGStreamer::tagsChanged):

  • platform/graphics/gstreamer/VideoSinkGStreamer.cpp:

(webkitVideoSinkRender):

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webKitWebSrcChangeState):
(webKitWebSrcNeedDataCb):
(webKitWebSrcEnoughDataCb):
(webKitWebSrcSeekDataCb):
Added std::function<void()> constructors to help Visual Studio decide which version of
GMainLoopSource::schedule or GMainLoopSource::scheduleAfterDelay to use.

7:18 AM Changeset in webkit [166642] by Alan Bujtas
  • 29 edits
    1 add in trunk/Source/WebCore

Subpixel rendering: Transition class CSSImageGeneratorValue/class StyleImage (and its dependencies) from
IntSize to FloatSize to enable subpixel sized (generated)images.
https://bugs.webkit.org/show_bug.cgi?id=130659

Reviewed by Simon Fraser and Andreas Kling.

This is in preparation to support subpixel positioned/sized background images. Generated images
needs to be able to sized on device pixels.

No change in behavior.

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSCanvasValue.cpp:

(WebCore::CSSCanvasValue::fixedSize):
(WebCore::CSSCanvasValue::image):

  • css/CSSCanvasValue.h:
  • css/CSSCrossfadeValue.cpp:

(WebCore::CSSCrossfadeValue::fixedSize):
(WebCore::CSSCrossfadeValue::image):

  • css/CSSCrossfadeValue.h:
  • css/CSSFilterImageValue.cpp:

(WebCore::CSSFilterImageValue::fixedSize):
(WebCore::CSSFilterImageValue::image):

  • css/CSSFilterImageValue.h:
  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::image):
(WebCore::positionFromValue):
(WebCore::CSSGradientValue::computeEndPoint):
(WebCore::endPointsFromAngle):
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::createGradient):

  • css/CSSGradientValue.h:

(WebCore::CSSGradientValue::fixedSize):

  • css/CSSImageGeneratorValue.cpp:

(WebCore::CSSImageGeneratorValue::cachedImageForSize):
(WebCore::CSSImageGeneratorValue::saveCachedImageForSize):
(WebCore::CSSImageGeneratorValue::evictCachedGeneratedImage):
(WebCore::CSSImageGeneratorValue::CachedGeneratedImage::CachedGeneratedImage):
(WebCore::CSSImageGeneratorValue::image):
(WebCore::CSSImageGeneratorValue::fixedSize):

  • css/CSSImageGeneratorValue.h:
  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::setContainerSizeForRenderer):

  • loader/cache/CachedImage.h:
  • platform/graphics/FloatSizeHash.h: Added.

(WTF::FloatHash<WebCore::FloatSize>::hash):
(WTF::FloatHash<WebCore::FloatSize>::equal):
(WTF::HashTraits<WebCore::FloatSize>::constructDeletedValue):
(WTF::HashTraits<WebCore::FloatSize>::isDeletedValue):

  • platform/graphics/LayoutSize.h:

(WebCore::flooredForPainting):

  • rendering/RenderImageResourceStyleImage.h:
  • rendering/RenderListMarker.cpp:

(WebCore::RenderListMarker::computePreferredLogicalWidths):

  • rendering/style/StyleCachedImage.cpp:

(WebCore::StyleCachedImage::imageSize):
(WebCore::StyleCachedImage::setContainerSizeForRenderer):
(WebCore::StyleCachedImage::image):

  • rendering/style/StyleCachedImage.h:
  • rendering/style/StyleCachedImageSet.cpp:

(WebCore::StyleCachedImageSet::imageSize):
(WebCore::StyleCachedImageSet::setContainerSizeForRenderer):
(WebCore::StyleCachedImageSet::image):

  • rendering/style/StyleCachedImageSet.h:
  • rendering/style/StyleGeneratedImage.cpp:

(WebCore::StyleGeneratedImage::imageSize):
(WebCore::StyleGeneratedImage::computeIntrinsicDimensions):
(WebCore::StyleGeneratedImage::image):

  • rendering/style/StyleGeneratedImage.h:
  • rendering/style/StyleImage.h:
  • rendering/style/StylePendingImage.h:
  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::setContainerSizeForRenderer):

  • svg/graphics/SVGImageCache.h:
6:53 AM Changeset in webkit [166641] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Warning fix for RenderLayer.
https://bugs.webkit.org/show_bug.cgi?id=131090

Patch by Gergo Balogh <gbalogh.u-szeged@partner.samsung.com> on 2014-04-02
Reviewed by Csaba Osztrogonác.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateDescendantDependentFlags):

6:01 AM Changeset in webkit [166640] by fred.wang@free.fr
  • 8 edits in trunk/Source

Operator stretching: read the Open Type MATH table
https://bugs.webkit.org/show_bug.cgi?id=130324

Reviewed by Chris Fleizach.

Source/WebCore:

We parse and expose some data from the OpenType MATH table that will be
be relevant for at least the MathML operator stretching (bug 130322):
math constants, italic corrections and size variants / glyph assembly.
This will be tested when the MathML code uses the data.

  • WebCore.xcodeproj/project.pbxproj: Add OpenTypeTypes.h to the Mac build.
  • platform/graphics/opentype/OpenTypeMathData.cpp: We implement the low-level parsing of the MATH table.

(WebCore::OpenType::MathItalicsCorrectionInfo::getItalicCorrection):
(WebCore::OpenType::MathGlyphInfo::mathItalicsCorrectionInfo):
(WebCore::OpenType::GlyphAssembly::getAssemblyParts):
(WebCore::OpenType::MathGlyphConstruction::getSizeVariants):
(WebCore::OpenType::MathGlyphConstruction::getAssemblyParts):
(WebCore::OpenType::MathVariants::mathGlyphConstruction):
(WebCore::OpenType::MATHTable::mathConstants):
(WebCore::OpenType::MATHTable::mathGlyphInfo):
(WebCore::OpenType::MATHTable::mathVariants):
(WebCore::OpenTypeMathData::OpenTypeMathData): We load the MATH table.
(WebCore::OpenTypeMathData::getMathConstant): We add a function to get values from the MathConstant subtable.
(WebCore::OpenTypeMathData::getItalicCorrection): We add a function to get italic correction from the MathGlyphInfo subtable.
(WebCore::OpenTypeMathData::getMathVariants): We add a function to get size variants / glyph assembly from the MathVariants subtable.

  • platform/graphics/opentype/OpenTypeMathData.h: We expose three new functions to get math data.
  • platform/graphics/opentype/OpenTypeTypes.h: We share the coverage tables that are common to vertical and math data.

(WebCore::OpenType::TableWithCoverage::getCoverageIndex): We add a function to get the coverage index from a given glyph.

  • platform/graphics/opentype/OpenTypeVerticalData.cpp: We move the coverage tables to OpenTypeTypes.h.

Source/WTF:

  • wtf/Platform.h: enable OPENTYPE_MATH on platforms that can read OpenType tables.
4:22 AM Changeset in webkit [166639] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Add option to use separate web process for new window in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=130190

Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2014-04-02
Reviewed by Gyuyoung Kim.

New created window (CTRL + n) will be open in separated web process.
This option is enabled by adding a flag (S/separate-process) with launching
MiniBrowser.

  • MiniBrowser/efl/main.c:

(elm_main):

2:58 AM Changeset in webkit [166638] by Carlos Garcia Campos
  • 3 edits
    1 move in trunk

[GTK] Move NEWS file to a new location
https://bugs.webkit.org/show_bug.cgi?id=130901

Reviewed by Brent Fulgham.

Source/WebKit2:

  • gtk/NEWS: Renamed from Source/WebKit/gtk/NEWS.

Tools:

  • gtk/manifest.txt: Update the NEWS file path.
2:23 AM Changeset in webkit [166637] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/efl

[EFL] Composite all layers into one evas_object using TextureMapper.
https://bugs.webkit.org/show_bug.cgi?id=130969

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-02
Reviewed by Gyuyoung Kim.

The EFL port uses two evas_objects to render the entire webpage: backing_store and compositingObject.
backing_store is used to paint a non-composited layer with ewk functions,
whereas compositingObject is used to paint other layers with TextureMapper.
These evas_objects are eventually composited into the window buffer by Evas.

This patch moves to use only one evas_object by integrating these two evas_objects,
and makes that TextureMapper handles all rendering paths like WebKit2.

  • WebCoreSupport/AcceleratedCompositingContextEfl.cpp:

(WebCore::AcceleratedCompositingContext::AcceleratedCompositingContext):
(WebCore::AcceleratedCompositingContext::~AcceleratedCompositingContext):
(WebCore::AcceleratedCompositingContext::resize):
(WebCore::AcceleratedCompositingContext::flushAndRenderLayers):
(WebCore::AcceleratedCompositingContext::flushPendingLayerChanges):
(WebCore::AcceleratedCompositingContext::paintToGraphicsContext):
(WebCore::AcceleratedCompositingContext::paintToCurrentGLContext):
(WebCore::AcceleratedCompositingContext::compositeLayers):
(WebCore::AcceleratedCompositingContext::initialize): Deleted.
(WebCore::AcceleratedCompositingContext::canComposite): Deleted.
(WebCore::AcceleratedCompositingContext::compositeLayersToContext): Deleted.
(WebCore::AcceleratedCompositingContext::attachRootGraphicsLayer): Deleted.

  • WebCoreSupport/AcceleratedCompositingContextEfl.h:

(WebCore::AcceleratedCompositingContext::setRootGraphicsLayer):

  • ewk/ewk_view.cpp:

(_ewk_view_priv_new):
(_ewk_view_accelerated_compositing_cb):
(_ewk_view_smart_add):
(_ewk_view_smart_resize):
(_ewk_view_smart_calculate):
(_ewk_view_smart_show):
(_ewk_view_smart_hide):
(_ewk_view_smart_flush):
(_ewk_view_smart_zoom_weak_set):
(_ewk_view_smart_zoom_weak_smooth_scale_set):
(ewk_view_bg_color_set):
(ewk_view_scroll):
(ewk_view_root_graphics_layer_set):
(ewk_view_mark_for_sync):
(_ewk_view_scrolls_flush): Deleted.
(_ewk_view_scroll_process): Deleted.
(_ewk_view_smart_scrolls_process): Deleted.
(_ewk_view_smart_repaints_process): Deleted.
(ewk_view_scrolls_process): Deleted.
(_ewk_view_accelerated_compositing_context_create_if_needed): Deleted.
(_ewk_view_accelerated_compositing_object_create_if_needed): Deleted.

  • ewk/ewk_view.h:
2:14 AM Changeset in webkit [166636] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WTF

[WinCairo] Build fix with GMainLoopSource.
https://bugs.webkit.org/show_bug.cgi?id=131089

Patch by Alex Christensen <achristensen@webkit.org> on 2014-04-02
Reviewed by Carlos Garcia Campos.

  • wtf/gobject/GMainLoopSource.cpp:

Only compile if glib is used, which fixes compile errors with video disabled in WinCairo.

  • wtf/gobject/GMainLoopSource.h:

Export the GMainLoopSource functions to WTF.dll to link with where they are called in the GStreamer code.
Also removed spaces to appease style bot.

12:38 AM Changeset in webkit [166635] by rakuco@webkit.org
  • 2 edits in trunk

[CMake] Drop port check from FindEGL.cmake.
https://bugs.webkit.org/show_bug.cgi?id=131091

Reviewed by Gyuyoung Kim.

There is no reason to mark some variables as advanced only for the
GTK+ port.

  • Source/cmake/FindEGL.cmake: Mark EGL_INCLUDE_DIR and EGL_LIBRARY

as advanced regardless of the port.

12:30 AM Changeset in webkit [166634] by commit-queue@webkit.org
  • 6 edits
    4 adds in trunk

[CSS Blending] Compositing requirements for blending are not computed correctly
https://bugs.webkit.org/show_bug.cgi?id=130664

Patch by Ion Rosca <Ion Rosca> on 2014-04-02
Reviewed by Dean Jackson.

Source/WebCore:

Tests: css3/compositing/blend-mode-accelerated-with-multiple-stacking-contexts.html

css3/compositing/blend-mode-with-accelerated-sibling.html

Compositing requirements for blending: if a layer having blend mode
other than normal is composited for any reason, its closest stacking
context ancestor should be composited as well.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):

  • rendering/RenderLayer.h: added a new field,

m_hasUnisolatedCompositedBlendingDescendants, which is true if the layer
has composited blending descendants not isolated by any stacking context child;
added a new method: isolatesCompositedBlending(), which is true if we should
accelerate that layer in order to perform isolation correctly.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::CompositingState::CompositingState): m_subtreeHasBlending was renamed
m_hasUnisolatedCompositedBlendingDescendants in order to be more self-explanatory.
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
computes the isolation requirements for composited blending by
(re)setting RenderLayer::m_hasUnisolatedCompositedBlendingDescendants flag.

(WebCore::RenderLayerCompositor::reasonsForCompositing):
fixed the reason of compositing: isolation instead of blending.

(WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason):

  • rendering/RenderLayerCompositor.h:

LayoutTests:

  • css3/compositing/blend-mode-accelerated-with-multiple-stacking-contexts-expected.txt: Added.
  • css3/compositing/blend-mode-accelerated-with-multiple-stacking-contexts.html: Added.
  • css3/compositing/blend-mode-with-accelerated-sibling-expected.txt: Added.
  • css3/compositing/blend-mode-with-accelerated-sibling.html: Added.
12:05 AM Changeset in webkit [166633] by fred.wang@free.fr
  • 9 edits
    2 adds in trunk/Source/WebCore

Operator stretching: expose a math data API
https://bugs.webkit.org/show_bug.cgi?id=130572

Reviewed by Chris Fleizach.

We expose a new SimpleFontData API to give access to the data from the
OpenType MATH table. The class OpenTypeMathData will
be implemented in bug 130324. On Darwin platform, we also implement the
missing FontPlatformData::openTypeTable function which will be necessary
to load the OpenType MATH table. The changes are intended to be used
for MathML operator stretching (bug 130322) so tests are not added yet.

  • CMakeLists.txt: add new OpenTypeMathData files.
  • WebCore.vcxproj/WebCore.vcxproj: ditto.
  • WebCore.vcxproj/WebCore.vcxproj.filters: ditto.
  • WebCore.xcodeproj/project.pbxproj: ditto.
  • platform/graphics/FontPlatformData.cpp:

(WebCore::FontPlatformData::openTypeTable): We implement openTypeTable() on Darwin platform.

  • platform/graphics/FontPlatformData.h: We expose openTypeTable() on Darwin platform.
  • platform/graphics/SimpleFontData.cpp:

(WebCore::SimpleFontData::SimpleFontData):
(WebCore::SimpleFontData::mathData): Initialize and return the math data.

  • platform/graphics/SimpleFontData.h: We expose a mathData() function to access the MATH data.
  • platform/graphics/opentype/OpenTypeMathData.cpp: Added. This is a new class that will be used to parse the data from the OpenType MATH table.

(WebCore::OpenTypeMathData::OpenTypeMathData):

  • platform/graphics/opentype/OpenTypeMathData.h: Added.

(WebCore::OpenTypeMathData::create):
(WebCore::OpenTypeMathData::hasMathData):

Apr 1, 2014:

11:29 PM Changeset in webkit [166632] by mihnea@adobe.com
  • 3 edits
    2 adds in trunk

[CSSRegions] Displaying region's children in another region not supported
https://bugs.webkit.org/show_bug.cgi?id=130735

Reviewed by David Hyatt.

Source/WebCore:

With http://trac.webkit.org/changeset/166353, we disabled the possibility
of collecting the region's children into another flow and displaying them
in another region.
I added a new test for this and also changed the plain ASSERT in Element dtor
to ASSERT_WITH_SECURITY_IMPLICATION to better reflect the meaning of the assertion.

Test: fast/regions/region-child-not-flowed.html

  • dom/Element.cpp:

(WebCore::Element::~Element):

LayoutTests:

With http://trac.webkit.org/changeset/166353, we disabled the possibility
of collecting the region's children into another flow and displaying them
in another region. With that change, we also skipped the existing tests.

Add a dedicated test that passes if a region child cannot be painted in another region,
in order to complete the skipped tests. This test should be removed when support for
this functionality will be added again.

  • fast/regions/region-child-not-flowed-expected.html: Added.
  • fast/regions/region-child-not-flowed.html: Added.
10:36 PM Changeset in webkit [166631] by abucur@adobe.com
  • 4 edits in trunk/Source/WebCore

[CSS Regions] Simplify the RenderFlowThread state pusher
https://bugs.webkit.org/show_bug.cgi?id=131035

Reviewed by David Hyatt.

The RenderFlowThread state pusher is desynchronized from the RenderView layout state pusher
by one renderer. This patch fixes the anomaly by correctly ordering the push and pop operations
between the two systems.

Tests: no functional change, no new tests.

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::pushFlowThreadLayoutState):
(WebCore::RenderFlowThread::popFlowThreadLayoutState):
(WebCore::RenderFlowThread::offsetFromLogicalTopOfFirstRegion):

  • rendering/RenderView.cpp:

(WebCore::RenderView::pushLayoutState):

  • rendering/RenderView.h:
9:49 PM Changeset in webkit [166630] by Beth Dakin
  • 8 edits
    2 adds in trunk

willReveal edge events should be hooked up for overflow:scroll
https://bugs.webkit.org/show_bug.cgi?id=131071
-and corresponding-
<rdar://problem/16190392>

Reviewed by Sam Weinig.

Source/WebCore:

This patch moves the will reveal logic from FrameView to Document so that it can
be shared for RenderLayers.

This is mostly just a moved function, but now the function takes an Element* that
represents the target of the event if the target is not the window.

  • dom/Document.cpp:

(WebCore::Document::sendWillRevealEdgeEventsIfNeeded):

  • dom/Document.h:

No longer implement sendWillRevealEdgeEventsIfNeeded() on FrameView or
ScrollableArea at all. Call into Document instead.

  • page/FrameView.cpp:

(WebCore::FrameView::scrollPositionChanged):
(WebCore::FrameView::sendWillRevealEdgeEventsIfNeeded): Deleted.

  • page/FrameView.h:
  • platform/ScrollableArea.h:

(WebCore::ScrollableArea::sendWillRevealEdgeEventsIfNeeded): Deleted.

Call sendWillRevealEdgeEventsIfNeeded() after sending scroll events.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollTo):

LayoutTests:

  • fast/events/will-reveal-edge-on-div-expected.txt: Added.
  • fast/events/will-reveal-edge-on-div.html: Added.
8:36 PM Changeset in webkit [166629] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/16294704> Remove _pageExtendedBackgroundColor entirely
https://bugs.webkit.org/show_bug.cgi?id=131075

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-01
Reviewed by Beth Dakin.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _pageExtendedBackgroundColor]): Deleted.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
7:48 PM Changeset in webkit [166628] by jhoneycutt@apple.com
  • 6 edits
    2 adds in trunk

Crash in WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients

<https://bugs.webkit.org/show_bug.cgi?id=121887>
<rdar://problem/15073043>

Reviewed by Dean Jackson.

Source/WebCore:

Test: svg/filters/first-letter-crash.html

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::buildReferenceFilter):
Added a null check to prevent crashes for anonymous RenderObjects.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::filterNeedsRepaint):
Get the enclosing element, if there is one, and recalculate its style.
We use the enclosing element so that we recalculate style for the
ancestor of an anonymous RenderElement.
(WebCore::RenderLayer::enclosingElement):
Remove an assertion; we may now reach this condition if loading a
cached SVG document results in RenderLayer::filterNeedsRepaint() being
called before the object has been inserted into the render tree.

  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::notifyFinished):
Tell the RenderLayer that the filter needs repainting.
(WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
Get the Element from the renderer rather than asking the renderer's
Element, which will be null for anonymous RenderObjects.

  • rendering/RenderLayerFilterInfo.h:

Removed declaration for the old workaround function, layerElement().

LayoutTests:

  • svg/filters/first-letter-crash-expected.txt: Added.
  • svg/filters/first-letter-crash.html: Added.
7:41 PM Changeset in webkit [166627] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

Build break when disabled VIDEO since r166261
https://bugs.webkit.org/show_bug.cgi?id=131087

Reviewed by Gyuyoung Kim.

  • testing/Internals.cpp: Added ENABLE(VIDEO) guards

(WebCore::Internals::simulateSystemSleep):
(WebCore::Internals::simulateSystemWake):

5:43 PM Changeset in webkit [166626] by Lucas Forschler
  • 1 edit in trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json

Add Scheduler for 32-bit JSC bot.

4:54 PM Changeset in webkit [166625] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Stub out more WKNavigation properties
https://bugs.webkit.org/show_bug.cgi?id=131080

Reviewed by Tim Horton.

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

(-[WKNavigation initialRequest]):
(-[WKNavigation response]):
(-[WKNavigation error]):

4:45 PM Changeset in webkit [166624] by andersca@apple.com
  • 2 edits in trunk/Tools

Fix build.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):
(-[WK2BrowserWindowController dealloc]):
(-[WK2BrowserWindowController observeValueForKeyPath:ofObject:change:context:]):

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

Rename -[WKWebView activeURL] to -[WKWebView URL]
https://bugs.webkit.org/show_bug.cgi?id=131077

Reviewed by Tim Horton.

Keep -[WKWebView activeURL] as SPI until no clients depend on it.

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

(-[WKWebView URL]):
(-[WKWebView activeURL]):

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

(WebKit::NavigationState::willChangeActiveURL):
(WebKit::NavigationState::didChangeActiveURL):

4:20 PM Changeset in webkit [166622] by timothy@apple.com
  • 27 edits
    4 deletes in trunk/Source

Remove HeapProfiler from the Web Inspector protocol.

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

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

  • inspector/agents/InspectorConsoleAgent.h:
  • inspector/agents/JSGlobalObjectConsoleAgent.cpp:

(Inspector::JSGlobalObjectConsoleAgent::addInspectedHeapObject): Deleted.

  • inspector/agents/JSGlobalObjectConsoleAgent.h:
  • inspector/protocol/Console.json:

Source/WebCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/ScriptHeapSnapshot.h: Removed.
  • bindings/js/ScriptProfiler.h:

(WebCore::ScriptProfiler::takeHeapSnapshot): Deleted.
(WebCore::ScriptProfiler::isSampling): Deleted.
(WebCore::ScriptProfiler::hasHeapProfiler): Deleted.

  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorHeapProfilerAgent.cpp: Removed.
  • inspector/InspectorHeapProfilerAgent.h: Removed.
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didCommitLoadImpl):

  • inspector/InspectorProfilerAgent.cpp:

(WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
(WebCore::InspectorProfilerAgent::getProfileHeaders):
(WebCore::InspectorProfilerAgent::removeProfile):
(WebCore::InspectorProfilerAgent::resetState): The CommandLineAPIHost call to
clear inspected objects should have not been here. It was only needed by the
HeapProfilerAgent.
(WebCore::InspectorProfilerAgent::resetFrontendProfiles):
(WebCore::InspectorProfilerAgent::collectGarbage): Deleted.
(WebCore::InspectorProfilerAgent::createSnapshotHeader): Deleted.
(WebCore::InspectorProfilerAgent::isSampling): Deleted.
(WebCore::InspectorProfilerAgent::hasHeapProfiler): Deleted.
(WebCore::InspectorProfilerAgent::getHeapSnapshot): Deleted.
(WebCore::InspectorProfilerAgent::takeHeapSnapshot): Deleted.
(WebCore::InspectorProfilerAgent::getObjectByHeapObjectId): Deleted.
(WebCore::InspectorProfilerAgent::getHeapObjectId): Deleted.

  • inspector/InspectorProfilerAgent.h:
  • inspector/InstrumentingAgents.h:

(WebCore::InstrumentingAgents::inspectorHeapProfilerAgent): Deleted.
(WebCore::InstrumentingAgents::setInspectorHeapProfilerAgent): Deleted.

  • inspector/WebConsoleAgent.cpp:

(WebCore::WebConsoleAgent::addInspectedHeapObject): Deleted.

  • inspector/WebConsoleAgent.h:
  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):

  • inspector/protocol/HeapProfiler.json: Removed.
  • inspector/protocol/Profiler.json:

Source/WebInspectorUI:

  • UserInterface/Protocol/Legacy/6.0/InspectorWebBackendCommands.js: Updated.
  • UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js: Ditto.
  • Versions/Inspector-iOS-6.0.json: Removed heap related stuff.
  • Versions/Inspector-iOS-7.0.json: Ditto.
4:00 PM Changeset in webkit [166621] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Move -[WKWebView stopLoading:] back to WKIBActions
https://bugs.webkit.org/show_bug.cgi?id=131072

Reviewed by Tim Horton.

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

(-[WKWebView stopLoading:]):

3:18 PM Changeset in webkit [166620] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Remove stale localStorage deletion transition code
https://bugs.webkit.org/show_bug.cgi?id=131061

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-01
Reviewed by Timothy Hatcher.

  • UserInterface/Base/ImageUtilities.js:

This code has been in for a while. We have transitioned to Web SQL.

3:18 PM Changeset in webkit [166619] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed test gardening.

  • Scripts/webkitpy/port/base_unittest.py:

(PortTest.test_build_path): Handle the Debug case so we don't get webkitpy-test failures on our test bots.

3:13 PM Changeset in webkit [166618] by zoltan@webkit.org
  • 20 edits
    1 delete in trunk

[CSS Exclusions] Remove exclusions parsing support
https://bugs.webkit.org/show_bug.cgi?id=131046

Reviewed by David Hyatt.

Source/WebCore:

CSS Exclusions specification [1] needs some evolution before the actual implementation happens.
We have only the parsing code in WebKit for -webkit-wrap-flow and -webkit-wrap-through.
This patch removes the code from the trunk for now, it doesn't make sense to keep it around.

[1] http://www.w3.org/TR/css3-exclusions/

Removed existing parsing tests.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Deleted.
(WebCore::CSSPrimitiveValue::operator WrapFlow): Deleted.
(WebCore::CSSPrimitiveValue::operator WrapThrough): Deleted.

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

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

Source/WebInspectorUI:

  • UserInterface/Models/CSSKeywordCompletions.js:

Tools:

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

  • fast/exclusions/css-exclusions-disabled-expected.txt: Removed.
  • fast/exclusions/css-exclusions-disabled.html: Removed.
  • fast/exclusions/css-exclusions-enabled-expected.txt: Removed.
  • fast/exclusions/css-exclusions-enabled.html: Removed.
  • fast/exclusions/parsing/parsing-wrap-flow-expected.txt: Removed.
  • fast/exclusions/parsing/parsing-wrap-flow.html: Removed.
  • fast/exclusions/parsing/parsing-wrap-through-expected.txt: Removed.
  • fast/exclusions/parsing/parsing-wrap-through.html: Removed.
  • fast/exclusions/parsing/script-tests/parsing-test-utils.js: Removed.
  • fast/exclusions/parsing/script-tests/parsing-wrap-flow.js: Removed.
  • fast/exclusions/parsing/script-tests/parsing-wrap-through.js: Removed.
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
3:03 PM Changeset in webkit [166617] by andersca@apple.com
  • 5 edits in trunk/Source

Migrate more headers
https://bugs.webkit.org/show_bug.cgi?id=131068

Reviewed by Tim Horton.

Source/WebKit/mac:

  • MigrateHeaders.make:

Source/WebKit2:

  • UIProcess/API/Cocoa/WKBackForwardList.h:

Remove a newline.

  • WebKit2.xcodeproj/project.pbxproj:

Move files from the "Deprecated" group.

3:02 PM Changeset in webkit [166616] by timothy@apple.com
  • 6 edits
    2 deletes in trunk/Source

Remove the rest of the old Canvas inspection support.

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

Reviewed by Joseph Pecoraro.

Source/WebCore:

  • CMakeLists.txt: Removed Canvas.json.
  • DerivedSources.make: Ditto.
  • inspector/InjectedScriptCanvasModuleSource.js: Removed.
  • inspector/protocol/Canvas.json: Removed.

Source/WebInspectorUI:

  • UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js: Updated.
  • Versions/Inspector-iOS-7.0.json: Removed Canvas domain.
2:57 PM Changeset in webkit [166615] by ap@apple.com
  • 3 edits in trunk/Source/WebCore

Eliminate HTMLFormElement::m_shouldSubmit
https://bugs.webkit.org/show_bug.cgi?id=131055

Reviewed by Tim Horton.

m_shouldSubmit was used for two purposes:

  • as a return value in a function whose return value is ignored by all callers;
  • to make a decision that's local to a function.

There is no need for it to be an instance variable.

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::HTMLFormElement):
(WebCore::HTMLFormElement::prepareForSubmission):
(WebCore::HTMLFormElement::submit):

  • html/HTMLFormElement.h:
2:57 PM Changeset in webkit [166614] by Manuel Rego Casasnovas
  • 5 edits
    2 moves in trunk

[CSS Grid Layout] Enable runtime feature if feature flag is enabled
https://bugs.webkit.org/show_bug.cgi?id=130013

Reviewed by Simon Fraser.

Source/WebKit/mac:

Enable CSS Grid Layout runtime feature when ENABLE_CSS_GRID_LAYOUT flag is true.

  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):

Source/WebKit2:

Enable CSS Grid Layout runtime feature when ENABLE_CSS_GRID_LAYOUT flag is true.

  • Shared/WebPreferencesStore.h:

LayoutTests:

Modify layout test as feature is not disabled by default in WK2.
The test now checks that the runtime feature can be disabled.

  • fast/css-grid-layout/grid-disabled-expected.txt: Renamed from LayoutTests/fast/css-grid-layout/grid-disabled-by-default-expected.txt.
  • fast/css-grid-layout/grid-disabled.html: Renamed from LayoutTests/fast/css-grid-layout/grid-disabled-by-default.html.
2:35 PM Changeset in webkit [166613] by andersca@apple.com
  • 6 edits
    1 copy in trunk/Source/WebKit2

Demote WKBackForwardListDidChangeNotification to SPI
https://bugs.webkit.org/show_bug.cgi?id=131059

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKBackForwardList.h:
  • UIProcess/API/Cocoa/WKBackForwardList.mm:
  • UIProcess/API/Cocoa/WKBackForwardListInternal.h:
  • UIProcess/API/Cocoa/WKBackForwardListPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKBackForwardListInternal.h.
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::LoaderClient::didChangeBackForwardList):

  • WebKit2.xcodeproj/project.pbxproj:
2:29 PM Changeset in webkit [166612] by aestes@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Add SPI to determine if a WKWebView is displaying a PDF
https://bugs.webkit.org/show_bug.cgi?id=131063

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _isDisplayingPDF]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
2:27 PM Changeset in webkit [166611] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Remove some explicit template instantiations from logging code
https://bugs.webkit.org/show_bug.cgi?id=131065

Reviewed by Tim Horton.

No need to explicitly state template types.

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::dumpChangedLayers):

2:22 PM Changeset in webkit [166610] by commit-queue@webkit.org
  • 2 edits
    1 add
    1 delete in trunk/LayoutTests

[CSS Grid Layout] Make the grid-item-margin-auto-columns-rows.html test a reftest
https://bugs.webkit.org/show_bug.cgi?id=130935

Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-04-01
Reviewed by Darin Adler.

Removed the 'checkLayout' script references from the test.

  • fast/css-grid-layout/grid-item-margin-auto-columns-rows-expected.html: Added.
  • fast/css-grid-layout/grid-item-margin-auto-columns-rows-expected.txt: Removed.
  • fast/css-grid-layout/grid-item-margin-auto-columns-rows.html:
2:21 PM Changeset in webkit [166609] by Manuel Rego Casasnovas
  • 2 edits in trunk/Tools

[GTK] Remove last reference to GTK+ WK1 EWS
https://bugs.webkit.org/show_bug.cgi?id=131058

Reviewed by Martin Robinson.

In r166427 WK1 GTK+ bots and EWS where removed, but this file was missing.

  • QueueStatusServer/config/queues.py: Remove reference to GTK+ WK1 EWS.
2:09 PM Changeset in webkit [166608] by Lucas Forschler
  • 3 edits in trunk/Tools

Add a 32bit JSC builder/tester.
https://bugs.webkit.org/show_bug.cgi?id=131054

Reviewed by Michael Saboff.

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

(Compile32bitJSC):
(Run32bitJSCTests):
(Run32bitJSCTests.countFailures):
(BuildAndTest32bitJSCFactory):
(BuildAndTest32bitJSCFactory.init):

1:47 PM Changeset in webkit [166607] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS WebKit2] Partial repaint is broken
https://bugs.webkit.org/show_bug.cgi?id=131056

Reviewed by Dean Jackson.

  • Shared/mac/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::display):
We need to check if the repaint rects themselves cover the whole
layer's surface, not just their bounds. Otherwise, we'll optimize
out the back->front copy and end up not painting the whole layer.

1:35 PM Changeset in webkit [166606] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Pass a WKNavigationAction to the create UIDelegate method
https://bugs.webkit.org/show_bug.cgi?id=131053

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKUIDelegate.h:
  • UIProcess/Cocoa/UIClient.h:
  • UIProcess/Cocoa/UIClient.mm:

(WebKit::UIClient::setDelegate):
(WebKit::UIClient::createNewPage):

1:33 PM Changeset in webkit [166605] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebKit2

[iOS][WK2] Remove the two finger pan gesture recognizer until it is actually implemented
https://bugs.webkit.org/show_bug.cgi?id=131009

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

The two finger pan should not block the pinch gesture recognizer.

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView gestureRecognizerShouldBegin:]):
(-[WKContentView _twoFingerPanRecognized:]): Deleted.

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

Remove a couple of useless static strings
https://bugs.webkit.org/show_bug.cgi?id=131003

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-01
Reviewed by David Kilzer.

There is zero value in keeping those strings alive.

  • css/StyleProperties.cpp:

(WebCore::isInitialOrInherit):

1:05 PM Changeset in webkit [166603] by mmaxfield@apple.com
  • 5 edits
    3 adds in trunk

svg/text/text-overflow-ellipsis-svgfont-kerning-ligatures.html and svg/css/font-face-crash.html frequently assert in ComplexTextController::offsetForPosition
https://bugs.webkit.org/show_bug.cgi?id=119747

Reviewed by Simon Fraser.

Source/WebCore:

Even though kerning and ligatures currently don't work with the
simple text path, messing those up is better than creating null
CTRun and CTLine objects.

Rather than calling the badly-named renderingContext() function on TextRun objects
to determine if they are drawn with an SVG font, this patch creates a wrapper function
with a better name and uses that instead.

Test: svg/text/svg-font-hittest.html

  • platform/graphics/Font.cpp:

(WebCore::isDrawnWithSVGFont): Wrapper around renderingContext()
(WebCore::Font::drawText): Use wrapper function
(WebCore::Font::drawEmphasisMarks): Use wrapper function
(WebCore::Font::width): Use wrapper function
(WebCore::Font::selectionRectForText): Use wrapper function
(WebCore::Font::offsetForPosition): If we are using an SVG font, use the simple path
instead of the complex one
(WebCore::Font::codePath): Use wrapper function

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::ctFont):

LayoutTests:

Clicking on SVG text used to cause a ComplexTextController to be built
around the SVG text (which is incorrect and would crash). This test
does just that and makes sure there is no crash.

  • svg/text/resources/Litherum.svg: Added.
  • svg/text/svg-font-hittest-expected.txt: Added.
  • svg/text/svg-font-hittest.html: Added.
  • LayoutTests/platform/mac/TestExpectations: Unskipped tests
12:53 PM Changeset in webkit [166602] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Remove limits from WKBackForwardList getters
https://bugs.webkit.org/show_bug.cgi?id=131052

Reviewed by Beth Dakin.

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

(-[WKBackForwardList backList]):
(-[WKBackForwardList forwardList]):
(-[WKBackForwardList backListCount]): Deleted.
(-[WKBackForwardList forwardListCount]): Deleted.
(-[WKBackForwardList backListWithLimit:]): Deleted.
(-[WKBackForwardList forwardListWithLimit:]): Deleted.

  • UIProcess/WebBackForwardList.cpp:

(WebKit::WebBackForwardList::backList):
(WebKit::WebBackForwardList::forwardList):

  • UIProcess/WebBackForwardList.h:
12:38 PM Changeset in webkit [166601] by dbates@webkit.org
  • 3 edits
    2 adds in trunk

RenderQuote must destroy remaining text renderer before first letter renderer
https://bugs.webkit.org/show_bug.cgi?id=78023
<rdar://problem/10830009>

Reviewed by Brent Fulgham.

Merged from Blink (patch by Abhishek Arya):
https://src.chromium.org/viewvc/blink?view=rev&revision=151270

Source/WebCore:

Following the fix for <https://bugs.webkit.org/show_bug.cgi?id=114586>, a
RenderQuote may have child render objects for the first letter of its text
and everything following the first letter so as to support the CSS first-
letter property. The latter renderer is responsible for destroying the former
on destruction. It's sufficient to reverse the destruction of the children of
RenderQuote to ensure that we destroy the remaining text renderer before we
destroy the first letter renderer.

Test: fast/css-generated-content/quote-first-letter-crash.html

  • rendering/RenderQuote.cpp:

(WebCore::RenderQuote::updateText):

LayoutTests:

  • fast/css-generated-content/quote-first-letter-crash-expected.txt: Added.
  • fast/css-generated-content/quote-first-letter-crash.html: Added.
12:21 PM Changeset in webkit [166600] by ddkilzer@apple.com
  • 4 edits
    18 adds in trunk

Do not allow HTTP refresh headers to refresh to javascript: URLs
<http://webkit.org/b/119051>
<rdar://problem/14536453>

Reviewed by Alexey Proskuryakov.

Merged from Blink (patch by tsepez@chromium.org):
https://src.chromium.org/viewvc/blink?revision=153912&view=revision
http://crbug.com/258151

This behaviour has been standard in IE since IE7. This makes us both
more compatible and less vulnerable to XSS.

Source/WebCore:

Tests: http/tests/security/no-javascript-location-percent-escaped.html

http/tests/security/no-javascript-location.html
http/tests/security/no-javascript-refresh-percent-escaped.php
http/tests/security/no-javascript-refresh-spaces.php
http/tests/security/no-javascript-refresh-static-percent-escaped.html
http/tests/security/no-javascript-refresh-static-spaces.html
http/tests/security/no-javascript-refresh-static.html
http/tests/security/no-javascript-refresh.php

  • dom/Document.cpp:

(WebCore::Document::processHttpEquiv):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::receivedFirstData):

  • Do not fire meta http refresh for a javascript: URL protocol.

LayoutTests:

  • http/tests/security/no-javascript-refresh-expected.txt: Added.
  • http/tests/security/no-javascript-refresh-static-expected.txt: Added.
  • http/tests/security/no-javascript-refresh-static.html: Added.
  • http/tests/security/no-javascript-refresh.php: Added.
  • Original Blink layout tests with typos fixed and 'PASS:' text added.
  • http/tests/security/no-javascript-location.html: Added.
  • http/tests/security/no-javascript-location-expected.txt: Added.
  • http/tests/security/resources/no-javascript-location.php: Copied from LayoutTests/http/tests/security/no-javascript-refresh.php.
  • http/tests/security/no-javascript-location-percent-escaped.html: Added.
  • http/tests/security/no-javascript-location-percent-escaped-expected.txt: Added.
  • http/tests/security/resources/no-javascript-location-percent-escaped.php: Added.
  • Add tests using a javascript: URL in a Location: header.
  • http/tests/security/no-javascript-refresh-percent-escaped.php: Copied from LayoutTests/http/tests/security/no-javascript-refresh.php.
  • http/tests/security/no-javascript-refresh-percent-escaped-expected.txt: Added.
  • http/tests/security/no-javascript-refresh-spaces.php: Copied from LayoutTests/http/tests/security/no-javascript-refresh.php.
  • http/tests/security/no-javascript-refresh-spaces-expected.txt: Added.
  • Add tests using a percent-escaped javascript: URL and a javascript: URL with leading spaces in a Refresh: header from a web server.
  • http/tests/security/no-javascript-refresh-static-percent-escaped.html: Added.
  • http/tests/security/no-javascript-refresh-static-percent-escaped-expected.txt: Added.
  • http/tests/security/no-javascript-refresh-static-spaces.html: Added.
  • http/tests/security/no-javascript-refresh-static-spaces-expected.txt: Added.
  • Add tests using a percent-escaped javascript: URL and a javascript: URL with leading spaces in a meta http-equiv tag.
12:07 PM Changeset in webkit [166599] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix. Remove duplicate file entries.

  • WebCore.xcodeproj/project.pbxproj:
11:48 AM Changeset in webkit [166598] by andersca@apple.com
  • 7 edits
    5 copies in trunk/Source/WebKit2

Stub out the web process -> UI process message SPI
https://bugs.webkit.org/show_bug.cgi?id=131048

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

  • UIProcess/API/Cocoa/WKWebViewConfiguration.mm:

(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration _userContentController]):
(-[WKWebViewConfiguration _setUserContentController:]):

  • UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/API/Cocoa/_WKScriptMessage.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptWorld.h.
  • UIProcess/API/Cocoa/_WKScriptMessage.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptWorld.h.

(-[_WKScriptMessage body]):
(-[_WKScriptMessage originatingWebView]):

  • UIProcess/API/Cocoa/_WKScriptMessageHandler.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptWorld.h.
  • UIProcess/API/Cocoa/_WKScriptWorld.h:
  • UIProcess/API/Cocoa/_WKUserContentController.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptWorld.h.
  • UIProcess/API/Cocoa/_WKUserContentController.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h.

(-[_WKUserContentController addScriptMessageHandler:name:world:]):
(-[_WKUserContentController removeScriptMessageHandler:]):

  • WebKit2.xcodeproj/project.pbxproj:
10:45 AM Changeset in webkit [166597] by akling@apple.com
  • 2 edits in trunk/Source/WebKit2

Invalidate CFNetwork connection cache on memory pressure.
<https://webkit.org/b/131038>

Stop holding on to cached HTTP connections if we come under memory pressure.

Reviewed by Geoff Malloc-Garen.

  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::platformLowMemoryHandler):

10:39 AM Changeset in webkit [166596] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Tweak WKPreferences API
https://bugs.webkit.org/show_bug.cgi?id=131047

Reviewed by Simon Fraser.

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

(-[WKPreferences init]):
(-[WKPreferences initWithUserDefaultsKeyPrefix:]):
(-[WKPreferences userDefaultsKeyPrefix]):
(-[WKPreferences initWithUserDefaultsPrefixKey:]): Deleted.
(-[WKPreferences userDefaultsPrefixKey]): Deleted.

10:08 AM Changeset in webkit [166595] by Simon Fraser
  • 9 edits in trunk/Source

Enable WEB_TIMING on Mac and iOS
https://bugs.webkit.org/show_bug.cgi?id=128064

Source/JavaScriptCore:

Reviewed by Sam Weinig, Brent Fulgham.

Enable WEB_TIMING.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Reviewed by Sam Weinig, Brent Fulgham.

Enable WEB_TIMING. Add PerformanceTiming.cpp and JSPerformanceTiming.cpp
to the project.

  • Configurations/FeatureDefines.xcconfig:
  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit/mac:

Reviewed by Sam Weinig, Brent Fulgham.

Enable WEB_TIMING.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Reviewed by Sam Weinig, Brent Fulgham.

Enable WEB_TIMING.

  • Configurations/FeatureDefines.xcconfig:
9:36 AM Changeset in webkit [166594] by commit-queue@webkit.org
  • 7 edits in trunk

AX: AccessibilityRenderObject::ariaLiveRegionAtomic() should default to true if

roleValue is ApplicationAlertRole
ApplicationStatusRole

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

Patch by James Craig <jcraig@apple.com> on 2014-04-01
Reviewed by Chris Fleizach.

Source/WebCore:

Tests: inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion.html:

platform/mac/accessibility/aria-liveregions-attributes.html:

Updated AccessibilityRenderObject::ariaLiveRegionAtomic() to match ARIA spec.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::ariaLiveRegionAtomic):

LayoutTests:

Updated AccessibilityRenderObject::ariaLiveRegionAtomic() to match ARIA spec.

  • inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion-expected.txt:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion.html:
  • platform/mac/accessibility/aria-liveregions-attributes-expected.txt:
  • platform/mac/accessibility/aria-liveregions-attributes.html:
9:32 AM Changeset in webkit [166593] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WTF

[EFL] REGRESSION(166569): It made DoYouEvenBench/Full.html, CSS/QuerySelector.html and Dromaeo performance tests crash
https://bugs.webkit.org/show_bug.cgi?id=131039

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-01
Reviewed by Csaba Osztrogonác.

  • wtf/Platform.h: Disable CSS JIT on EFL until proper fix.
9:18 AM Changeset in webkit [166592] by Dániel Bátyai
  • 3 edits in trunk

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

Reviewed by Anders Carlsson.

  • Source/cmake/OptionsEfl.cmake:
9:04 AM Changeset in webkit [166591] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Unreviewed, rolling out r166583.
https://bugs.webkit.org/show_bug.cgi?id=131040

It's causing frequent crashes when running Layout Tests
(Requested by svillar on #webkit).

Reverted changeset:

"[GTK][Cmake] Enable CSS JIT"
https://bugs.webkit.org/show_bug.cgi?id=131022
http://trac.webkit.org/changeset/166583

8:47 AM Changeset in webkit [166590] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fixing debug builds after r166586.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::addEventListener): Fix the ASSERT.
(WebCore::SVGElement::removeEventListener): Ditto.

8:35 AM Changeset in webkit [166589] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Prevent unnecessary copies in compareEqual template
https://bugs.webkit.org/show_bug.cgi?id=131014

Reviewed by Antti Koivisto.

  • rendering/style/RenderStyle.h:

(compareEqual): Casting the second parameter to a non-const, non-reference type
causes an extra copy of that object. Casting to the const reference type of the
first parameter avoids that.

8:29 AM Changeset in webkit [166588] by Simon Fraser
  • 3 edits in trunk/Source/WebKit2

[UI-side compositing] Fix animations, and add logging
https://bugs.webkit.org/show_bug.cgi?id=131011

Reviewed by Tim Horton.

UI-side animations were broken because GraphicsLayerCARemote::addAnimation()
never called the superclass, so fix.

Add logging for animations to the layer tree commit output.

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::dumpProperty):
(WebKit::RemoteLayerTreeTextStream::operator<<):
(WebKit::dumpChangedLayers):

  • WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:

(WebKit::GraphicsLayerCARemote::addAnimation):

8:28 AM Changeset in webkit [166587] by Alan Bujtas
  • 2 edits in trunk/Source/WebKit2

Build fix after r166582.

  • Shared/ContextMenuContextData.cpp:

(WebKit::ContextMenuContextData::ContextMenuContextData):

8:22 AM Changeset in webkit [166586] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Avoid unnecessary HashSet copies when calling collectInstancesForSVGElement
https://bugs.webkit.org/show_bug.cgi?id=131020

Reviewed by Andreas Kling.

Remove collectInstancesForSVGElement() to avoid HashSet copies when assigning a const
HashSet reference to a non-const HashSet reference. Instead, range-based for-loops are
deployed to iterate directly over the const reference to HashSet that's returned by
SVGElement::instancesForElement(). SVGElement::containingShadowRoot() return value
is checked to see if the iteration should be performed in the first place, preserving
the behavior of collectInstancesForSVGElement().

  • svg/SVGElement.cpp:

(WebCore::SVGElement::addEventListener):
(WebCore::SVGElement::removeEventListener):
(WebCore::collectInstancesForSVGElement): Deleted.

8:20 AM Changeset in webkit [166585] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Move the attributes HashMap out of the parseAttributes function
https://bugs.webkit.org/show_bug.cgi?id=131019

Reviewed by Andreas Kling.

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::parseAttributes): Avoid copying the HashMap object that's being returned by
converting it to an xvalue through using std::move() in the return statement.

8:13 AM Changeset in webkit [166584] by Martin Robinson
  • 3 edits in trunk/Tools

[GTK] No longer build WebKit1 gtkdoc
https://bugs.webkit.org/show_bug.cgi?id=130970

Reviewed by Anders Carlsson.

  • gtk/common.py:

(gtk_version_of_pkg_config_file): Deleted.

  • gtk/generate-gtkdoc:

(get_gtkdoc_module_paths): We no longer need to worry about GTK+ 2, since it
was only applicable for WebKit1.
(get_generator_for_config): No longer look for the WebKit1 configuration file.

7:32 AM Changeset in webkit [166583] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

[GTK][Cmake] Enable CSS JIT
https://bugs.webkit.org/show_bug.cgi?id=131022

Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-04-01
Reviewed by Martin Robinson.

  • wtf/Platform.h: Enable CSS JIT for GTK port.
7:17 AM Changeset in webkit [166582] by Alan Bujtas
  • 92 edits in trunk

Subpixel rendering: Transition class Image (and its dependencies) from int to float to enable subpixel positioned/sized images.
https://bugs.webkit.org/show_bug.cgi?id=130643

Reviewed by Simon Fraser.

This is in preparation to support subpixel positioned/sized background images. While 1x bitmap images can't take
subpixel sizing on hidpi resolutions, both generated and hidpi images can.
This patch does not change Image behavior in general as both position and size are still snapped to integral values.

No change in behavior.

Source/WebCore:

  • WebCore.exp.in:
  • css/CSSCrossfadeValue.cpp:

(WebCore::CSSCrossfadeValue::fixedSize):

  • css/CSSFilterImageValue.cpp:

(WebCore::CSSFilterImageValue::fixedSize):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::drawImageIntoBuffer):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::imageSizeForRenderer):

  • page/EventHandler.cpp:

(WebCore::EventHandler::selectCursor):

  • platform/Cursor.cpp:

(WebCore::determineHotSpot):

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::size):
(WebCore::BitmapImage::currentFrameSize):

  • platform/graphics/BitmapImage.h:
  • platform/graphics/CrossfadeGeneratedImage.cpp:

(WebCore::CrossfadeGeneratedImage::CrossfadeGeneratedImage):
(WebCore::drawCrossfadeSubimage):
(WebCore::CrossfadeGeneratedImage::drawCrossfade):

  • platform/graphics/CrossfadeGeneratedImage.h:
  • platform/graphics/GeneratedImage.h:
  • platform/graphics/Gradient.cpp:

(WebCore::Gradient::adjustParametersForTiledDrawing):

  • platform/graphics/Gradient.h:
  • platform/graphics/GradientImage.cpp:

(WebCore::GradientImage::drawPattern):

  • platform/graphics/GradientImage.h:
  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::createCompatibleBuffer):

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/Image.cpp:

(WebCore::Image::adjustSourceRectForDownSampling):

  • platform/graphics/Image.h:

(WebCore::Image::setContainerSize):
(WebCore::Image::rect):
(WebCore::Image::width):
(WebCore::Image::height):

  • platform/graphics/ImageBuffer.cpp:

(WebCore::ImageBuffer::createCompatibleBuffer):

  • platform/graphics/ImageBuffer.h:

(WebCore::ImageBuffer::create):

  • platform/graphics/IntPoint.cpp:

(WebCore::IntPoint::IntPoint):

  • platform/graphics/IntPoint.h:
  • platform/graphics/IntSize.cpp:

(WebCore::IntSize::IntSize):

  • platform/graphics/IntSize.h:
  • platform/graphics/cairo/ImageBufferCairo.cpp:

(WebCore::ImageBuffer::ImageBuffer):

  • platform/graphics/cairo/ImageCairo.cpp:

(WebCore::Image::drawPattern):

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::ImageBuffer):

  • platform/graphics/cg/ImageBufferDataCG.cpp:
  • platform/graphics/cg/PDFDocumentImage.cpp:

(WebCore::PDFDocumentImage::size):
(WebCore::PDFDocumentImage::updateCachedImageIfNeeded):
(WebCore::applyRotationForPainting):

  • platform/graphics/cg/PDFDocumentImage.h:
  • platform/graphics/cg/PatternCG.cpp:

(WebCore::Pattern::createPlatformPattern):

  • platform/graphics/mac/GraphicsContextMac.mm:
  • platform/graphics/mac/IconMac.mm:
  • platform/graphics/texmap/TextureMapperTiledBackingStore.cpp:

(WebCore::TextureMapperTiledBackingStore::updateContentsFromImageIfNeeded):

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

(WebCore::CoordinatedImageBacking::update):

  • platform/graphics/win/ImageCGWin.cpp:

(WebCore::BitmapImage::getHBITMAPOfSize):
(WebCore::BitmapImage::drawFrameMatchingSourceSize):

  • platform/graphics/win/ImageCairoWin.cpp:

(WebCore::BitmapImage::getHBITMAPOfSize):
(WebCore::BitmapImage::drawFrameMatchingSourceSize):

  • platform/mac/DragImageMac.mm:

(WebCore::createDragImageFromImage):

  • platform/win/DragImageCGWin.cpp:

(WebCore::createDragImageFromImage):

  • platform/win/PasteboardWin.cpp:

(WebCore::Pasteboard::writeImage):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageSizeForError):
(WebCore::RenderImage::paintReplaced):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::drawPlatformResizerImage):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::setContainerSize):

  • svg/graphics/SVGImage.h:
  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::imageSizeForRenderer):

  • svg/graphics/SVGImageCache.h:
  • svg/graphics/SVGImageForContainer.cpp:

(WebCore::SVGImageForContainer::size):

  • svg/graphics/SVGImageForContainer.h:
  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::externalRepresentation):

  • testing/Internals.cpp:

(WebCore::Internals::getCurrentCursorInfo):

Source/WebKit:

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

Source/WebKit2:

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::encodeImage):

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::updateCursor):

LayoutTests:

  • platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-displace-01-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-image-01-b-expected.txt:
  • svg/custom/feDisplacementMap-01-expected.txt:
  • svg/filters/feImage-change-target-id-expected.txt:
  • svg/filters/feImage-filterUnits-objectBoundingBox-primitiveUnits-objectBoundingBox-expected.txt:
  • svg/filters/feImage-filterUnits-objectBoundingBox-primitiveUnits-userSpaceOnUse-expected.txt:
  • svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-objectBoundingBox-expected.txt:
  • svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-userSpaceOnUse-expected.txt:
  • svg/filters/feImage-late-indirect-update-expected.txt:
  • svg/filters/feImage-multiple-targets-id-change-expected.txt:
  • svg/filters/feImage-position-expected.txt:
  • svg/filters/feImage-preserveAspectRatio-all-expected.txt:
  • svg/filters/feImage-preserveAspectratio-expected.txt:
  • svg/filters/feImage-reference-invalidation-expected.txt:
  • svg/filters/feImage-reference-svg-primitive-expected.txt:
  • svg/filters/feImage-remove-target-expected.txt:
  • svg/filters/feImage-subregions-expected.txt:
  • svg/filters/feImage-subregions-preseveAspectRatio-none-expected.txt:
  • svg/filters/feImage-subregions-preseveAspectRatio-none-with-viewBox-expected.txt:
  • svg/filters/feImage-target-add-to-document-expected.txt:
  • svg/filters/feImage-target-attribute-change-expected.txt:
  • svg/filters/feImage-target-attribute-change-with-use-indirection-2-expected.txt:
  • svg/filters/feImage-target-attribute-change-with-use-indirection-expected.txt:
  • svg/filters/feImage-target-changes-id-expected.txt:
  • svg/filters/feImage-target-id-change-expected.txt:
  • svg/filters/feImage-target-inline-style-change-expected.txt:
  • svg/filters/feImage-target-property-change-expected.txt:
  • svg/filters/feImage-target-reappend-to-document-expected.txt:
  • svg/filters/feImage-target-remove-from-document-expected.txt:
  • svg/filters/feImage-target-style-change-expected.txt:
6:47 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
6:45 AM Changeset in webkit [166581] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r166575 - Don't copy the children map in webkitWebViewBaseContainerForall
https://bugs.webkit.org/show_bug.cgi?id=131016

Reviewed by Carlos Garcia Campos.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseContainerForall): Avoid copying the GtkWidget-to-IntRect HashMap object
by transforming the iteration to a range-based for-loop over that HashMap's keys.

6:37 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
6:35 AM Changeset in webkit [166580] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r166574 - [GTK] Don't copy the ResourceResponse object in webkitWebViewDecidePolicy
https://bugs.webkit.org/show_bug.cgi?id=131015

Reviewed by Carlos Garcia Campos.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewDecidePolicy): Avoid copying the ResourceResponce object returned by webkitURIResponseGetResourceResponse.
That function already returns a reference, so the return value should be stored accordingly.

6:25 AM Changeset in webkit [166579] by Carlos Garcia Campos
  • 6 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r166568 - [GTK] Readonly attributes installed as readwrite in GObject DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=130978

Reviewed by Carlos Garcia Campos.

Unify how we decide if an attribute is readable or writeable and improve the code.
This results in some attributes now being marked as read-only which didn't have
corresponding case statements in the set_property switch statements and also correctly
installs set_property support for some more POD types.

  • bindings/scripts/CodeGeneratorGObject.pm:

(IsPropertyReadable): Added this helper to simplify deciding if an attribute is readable.
(IsPropertyWriteable): Added this helper to simplify deciding if an attribute is writeable. Also
update the list of types to reflect the full list of types we can generate setters for.
(GenerateProperty): Use the IsPropertyWriteable helper instead of checking whether the attribute is read-only.
Also fix generation of the blurb by using $mutableString instead of $mutableStringconst which isn't used.
(GenerateProperties): Use grep and the new helpers to simplify the code.
(GetReadableProperties): Deleted.
(GetWriteableProperties): Deleted.

  • bindings/scripts/test/GObject: Update results
6:25 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
6:14 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
6:14 AM Changeset in webkit [166578] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.4

Merge r166410 - [GTK] Running minibrowser with url crashes in debug build
https://bugs.webkit.org/show_bug.cgi?id=130492

Reviewed by Martin Robinson.

Use the ResourceRequest(const URL& url) constructor, instead of the
one taking a String, to call WebPageProxy::loadRequest(), so we
ensure that the passed URI is correctly constructed.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_load_uri): Create an URL out of a SoupURI and
use that to create a ResourceRequest to pass to loadRequest().

5:36 AM Changeset in webkit [166577] by mario.prada@samsung.com
  • 2 edits in trunk/Tools

[GTK] Running minibrowser with url crashes in debug build
https://bugs.webkit.org/show_bug.cgi?id=130492

Reviewed by Martin Robinson.

Update "uri-scheme" test not to use invalid URIs in it, so we
don't get a mistmatch when comparing the original URI stored in
the test class with the one returned by the WebKitWebView.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:

(testWebContextURIScheme): Update the test.

4:38 AM Changeset in webkit [166576] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Fix and update the existing test case for ewk_database_manager_origins_async_get API
https://bugs.webkit.org/show_bug.cgi?id=131017

Patch by Joonghun Park <jh718.park@samsung.com> on 2014-04-01
Reviewed by Gyuyoung Kim.

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

Fix memory leaks and errors caused by duplication of Ecore_Timer deletion
as well as update a naming style of local variable.
(EWK2DatabaseManagerTest::databaseOriginsCallback):
(TEST_F):

2:18 AM WebKitGTK/2.4.x edited by zandobersek@gmail.com
Add two proposed merges for 2.4.1 (diff)
2:11 AM Changeset in webkit [166575] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Don't copy the children map in webkitWebViewBaseContainerForall
https://bugs.webkit.org/show_bug.cgi?id=131016

Reviewed by Carlos Garcia Campos.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseContainerForall): Avoid copying the GtkWidget-to-IntRect HashMap object
by transforming the iteration to a range-based for-loop over that HashMap's keys.

2:07 AM Changeset in webkit [166574] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

[GTK] Don't copy the ResourceResponse object in webkitWebViewDecidePolicy
https://bugs.webkit.org/show_bug.cgi?id=131015

Reviewed by Carlos Garcia Campos.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewDecidePolicy): Avoid copying the ResourceResponce object returned by webkitURIResponseGetResourceResponse.
That function already returns a reference, so the return value should be stored accordingly.

2:04 AM Changeset in webkit [166573] by mitica@adobe.com
  • 2 edits in trunk/Tools

Add myself as a commiter.

1:34 AM Changeset in webkit [166572] by eunmi15.lee@samsung.com
  • 2 edits in trunk/Source/WebKit2

[CoordinatedGraphics] Content scale factor should not be applied to draw contents when fixed layout is not used.
https://bugs.webkit.org/show_bug.cgi?id=130962

Reviewed by Gyuyoung Kim.

Delegating scaling is turned off when fixed layout is not used in the
coordinated graphics, so page scale factor is applied to the contents
directly.
In that case, we should not apply page scale factor to coordinated
graphics to draw contents and calculate visible content rect.

Currently, page scale factor is applied twice to the coordinated
graphics and contents, so result of scaling is abnormal.

  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::transformToScene):
(WebKit::WebView::visibleContentsSize):

1:01 AM Changeset in webkit [166571] by ryuan.choi@samsung.com
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] Rename ewk_application_cache_manager_delete{_all}
https://bugs.webkit.org/show_bug.cgi?id=131012

Reviewed by Gyuyoung Kim.

While discussing Bug 130577, we resulted that _clear and _xxx_del is better name for the EFL.
This patch will rename similar API in ewk_application_cache_manager.

In addition, fixed some typos in doxygen.

  • UIProcess/API/efl/ewk_application_cache_manager.cpp:

(ewk_application_cache_manager_clear): Renamed from ewk_application_cache_manager_delete_all
(ewk_application_cache_manager_entries_for_origin_del): Renamed from ewk_application_cache_manager_delete
(ewk_application_cache_manager_delete_all): Deleted.
(ewk_application_cache_manager_delete): Deleted.

  • UIProcess/API/efl/ewk_application_cache_manager.h:
  • UIProcess/API/efl/tests/test_ewk2_application_cache_manager.cpp:

(TEST_F):

12:41 AM Changeset in webkit [166570] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix when disabled ACCESSIBILITY

  • accessibility/atk/WebKitAccessibleInterfaceTableCell.cpp:

Separated macros not to check ATK version when disabled ACCESSIBILITY

12:38 AM Changeset in webkit [166569] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/Source

[CMake][EFL] Enable CSS JIT
https://bugs.webkit.org/show_bug.cgi?id=131010

Reviewed by Benjamin Poulain.

Source/WebCore:

Add an inclusion path for enabling CSS JIT on EFL and GTK ports.
This patch only enables it for EFL port.

  • CMakeLists.txt:

Source/WTF:

  • wtf/Platform.h: Enable CSS JIT for EFL port.
12:36 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
12:28 AM Changeset in webkit [166568] by Martin Robinson
  • 6 edits in trunk/Source/WebCore

[GTK] Readonly attributes installed as readwrite in GObject DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=130978

Reviewed by Carlos Garcia Campos.

Unify how we decide if an attribute is readable or writeable and improve the code.
This results in some attributes now being marked as read-only which didn't have
corresponding case statements in the set_property switch statements and also correctly
installs set_property support for some more POD types.

  • bindings/scripts/CodeGeneratorGObject.pm:

(IsPropertyReadable): Added this helper to simplify deciding if an attribute is readable.
(IsPropertyWriteable): Added this helper to simplify deciding if an attribute is writeable. Also
update the list of types to reflect the full list of types we can generate setters for.
(GenerateProperty): Use the IsPropertyWriteable helper instead of checking whether the attribute is read-only.
Also fix generation of the blurb by using $mutableString instead of $mutableStringconst which isn't used.
(GenerateProperties): Use grep and the new helpers to simplify the code.
(GetReadableProperties): Deleted.
(GetWriteableProperties): Deleted.

  • bindings/scripts/test/GObject: Update results

Mar 31, 2014:

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

Unreviewed GTK build fix after r166553.

  • UIProcess/API/gtk/WebKitSettings.cpp:

(_WebKitSettingsPrivate::_WebKitSettingsPrivate): Pass 'WebKit2.' as the second argument to WebPreferences::create().

11:09 PM Changeset in webkit [166566] by ryuan.choi@samsung.com
  • 16 edits in trunk

[EFL][WK2] Extract the control of page background out of color_set
https://bugs.webkit.org/show_bug.cgi?id=127539

Reviewed by Gyuyoung Kim.

Source/WebCore:

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

Added m_viewBackgroundColor to clear when m_setDrawsBackground is false.
(WebCore::CoordinatedGraphicsScene::CoordinatedGraphicsScene):
(WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext):
(WebCore::CoordinatedGraphicsScene::paintToGraphicsContext):

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

(WebCore::CoordinatedGraphicsScene::setViewBackgroundColor):
(WebCore::CoordinatedGraphicsScene::viewBackgroundColor):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
Added EFL guard not to set opaque as a default for MainFrameRenderViewLayer.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::ensureRootLayer):
Added EFL guard to apply page scale on RenderView like IOS.

Source/WebKit2:

EFL have a way to change the color using evas_object_color_set and we used it to change background.
But, We should not use it because the alpha value of color_set is used
for the transparancy of object itself including background and contents.

This patch added ewk_view_bg_color_{get|set} to change the background color.

  • UIProcess/API/C/efl/WKViewEfl.cpp:

Extracted controls of page background out of color_set.
color_set will be only used for the opacity of whole contents.
(WKViewSetBackgroundColor): Added to share page background color.
(WKViewGetBackgroundColor):

  • UIProcess/API/C/efl/WKViewEfl.h:
  • UIProcess/API/efl/EwkView.cpp:

(EwkView::handleEvasObjectColorSet):

  • UIProcess/API/efl/ewk_view.cpp:

Removed ewk_view_draws_page_background_set which just control whether to draw background.
ewk_view_bg_color_set will conver it.
(ewk_view_bg_color_set):
(ewk_view_bg_color_get):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/tests/test_ewk2_view.cpp: Added simple test case.
  • UIProcess/efl/WebViewEfl.cpp:

(WebKit::WebViewEfl::setViewBackgroundColor):
(WebKit::WebViewEfl::viewBackgroundColor):

  • UIProcess/efl/WebViewEfl.h:

Tools:

Added an option(C) to change background color.

  • MiniBrowser/efl/main.c:

(window_create):
(elm_main):

11:01 PM Changeset in webkit [166565] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[EFL][WK2]Implement ewk APIs of web local storage which have deletion functions of the local storage entries
https://bugs.webkit.org/show_bug.cgi?id=130577

Patch by Joonghun Park <jh718.park@samsung.com> on 2014-03-31
Reviewed by Gyuyoung Kim.

  • UIProcess/API/efl/ewk_storage_manager.cpp:

(ewk_storage_manager_entries_clear):
(ewk_storage_manager_entries_for_origin_del):

  • UIProcess/API/efl/ewk_storage_manager.h:
  • UIProcess/API/efl/ewk_storage_manager_private.h:

(EwkStorageManager::wkStorageManager):

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

adding and updating API unittest and fixing memory leak of the existing test case
(EWK2StorageManagerTest::getStorageOriginsCallback):
(EWK2StorageManagerTest::checkOrigin):
(EWK2StorageManagerTest::getOrigin):
(TEST_F):

10:44 PM Changeset in webkit [166564] by ryuan.choi@samsung.com
  • 2 edits in trunk/Tools

Unreviewed build fix on the EFL port with latest EFL libraries since r166149

  • ImageDiff/PlatformEfl.cmake: Added ECORE_IMF_INCLUDE_DIRS to include dirs
10:37 PM Changeset in webkit [166563] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[WebGL][OpenGLES] Enable MSAA support for WebGL Canvas
https://bugs.webkit.org/show_bug.cgi?id=130955

Patch by Byungseon Shin <sun.shin@lge.com> on 2014-03-31
Reviewed by Dean Jackson.

To avoid aliasing issues when we render content to WebGL canvas,

we need to implement MSAA support.

  • Imagination OpenGLES GPU Driver already support MSAA, so we need a separate code path to enable it.
  • platform/graphics/Extensions3D.h:
  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:

(WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):

  • platform/graphics/opengl/Extensions3DOpenGLCommon.h:

(WebCore::Extensions3DOpenGLCommon::isImagination):

  • platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:

(WebCore::GraphicsContext3D::reshapeFBOs):

9:13 PM EFLWebKit edited by ryuan.choi@samsung.com
Removed WebKit2 from future plans (diff)
7:45 PM Changeset in webkit [166562] by Lucas Forschler
  • 5 edits in tags/Safari-538.26.1/Source

Versioning.

7:42 PM Changeset in webkit [166561] by Lucas Forschler
  • 1 copy in tags/Safari-538.26.1

New Tag.

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

Rename policy enums to match the delegate methods
https://bugs.webkit.org/show_bug.cgi?id=131002

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKNavigationDelegate.h:

(NS_ENUM):

  • UIProcess/Cocoa/NavigationState.mm:

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

7:03 PM Changeset in webkit [166559] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add more preferences
https://bugs.webkit.org/show_bug.cgi?id=131001

Reviewed by Simon Fraser.

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

(-[WKPreferences isJavaScriptEnabled]):
(-[WKPreferences setJavaScriptEnabled:]):
(-[WKPreferences javaScriptCanOpenWindowsAutomatically]):
(-[WKPreferences setJavaScriptCanOpenWindowsAutomatically:]):
(-[WKPreferences suppressesIncrementalRendering]):
(-[WKPreferences setSuppressesIncrementalRendering:]):
(-[WKPreferences isJavaEnabled]):
(-[WKPreferences setJavaEnabled:]):
(-[WKPreferences arePlugInsEnabled]):
(-[WKPreferences setPlugInsEnabled:]):

6:52 PM Changeset in webkit [166558] by alex.christensen@flexsim.com
  • 2 edits in trunk/WebKitLibraries

[WinCairo] Unreviewed build fix after r166496.

  • win/tools/vsprops/GStreamerCommon.props:

Added gio-2.0.lib to list of GStreamer includes.

6:46 PM Changeset in webkit [166557] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the build.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

6:34 PM Changeset in webkit [166556] by Simon Fraser
  • 4 edits in trunk/Source/WebKit2

Fix the iOS build.

  • UIProcess/ios/RemoteLayerTreeHostIOS.mm:

(WebKit::RemoteLayerTreeHost::createLayer):

  • UIProcess/mac/RemoteLayerTreeHost.h:
  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::setLayerID):
(WebKit::RemoteLayerTreeHost::layerID):
(WebKit::RemoteLayerTreeHost::createLayer):

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

Add a couple of iOS specific preferences
https://bugs.webkit.org/show_bug.cgi?id=130999

Reviewed by Simon Fraser.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/Cocoa/WKPreferences.h:
  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences allowsInlineMediaPlayback]):
(-[WKPreferences setAllowsInlineMediaPlayback:]):
(-[WKPreferences mediaPlaybackRequiresUserAction]):
(-[WKPreferences setMediaPlaybackRequiresUserAction:]):
(-[WKPreferences mediaPlaybackAllowsAirPlay]):
(-[WKPreferences setMediaPlaybackAllowsAirPlay:]):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

6:10 PM Changeset in webkit [166554] by msaboff@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

REGRESSION(r166415): JSObject{Get,Set}Private() don't work with proxies objects
https://bugs.webkit.org/show_bug.cgi?id=130992

Reviewed by Mark Hahnenberg.

Forward JSObjectGetPrivate() and JSObjectSetPrivate() to the wrapped object.

  • API/JSObjectRef.cpp:

(JSObjectGetPrivate):
(JSObjectSetPrivate):

  • API/tests/testapi.c:

(main): Added new test case to validate we are properly foarwarding.

6:02 PM Changeset in webkit [166553] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Add a new -[WKPreferences initWithUserDefaultsPrefixKey:] initializer
https://bugs.webkit.org/show_bug.cgi?id=130996

Reviewed by Simon Fraser.

Add a "key prefix" to the WebKit::WebPreferences create function, so we can use a different
key prefix ("WebKit") for the modern API and not pollute the user defaults namespace with
the old key prefix ("WebKit2.").

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesCreate):
(WKPreferencesCreateWithIdentifier):

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

(-[WKPreferences init]):
(-[WKPreferences initWithUserDefaultsPrefixKey:]):
(-[WKPreferences userDefaultsPrefixKey]):

  • UIProcess/WebPageGroup.cpp:

(WebKit::WebPageGroup::WebPageGroup):

  • UIProcess/WebPreferences.cpp:

(WebKit::WebPreferences::WebPreferences):

  • UIProcess/WebPreferences.h:

(WebKit::WebPreferences::create):

  • UIProcess/mac/WebPreferencesMac.mm:

(WebKit::makeKey):
(WebKit::setStringValueIfInUserDefaults):
(WebKit::setBoolValueIfInUserDefaults):
(WebKit::setUInt32ValueIfInUserDefaults):
(WebKit::setDoubleValueIfInUserDefaults):
(WebKit::WebPreferences::platformInitializeStore):
(WebKit::WebPreferences::platformUpdateStringValueForKey):
(WebKit::WebPreferences::platformUpdateBoolValueForKey):
(WebKit::WebPreferences::platformUpdateUInt32ValueForKey):
(WebKit::WebPreferences::platformUpdateDoubleValueForKey):
(WebKit::WebPreferences::platformUpdateFloatValueForKey):

5:53 PM Changeset in webkit [166552] by psolanki@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove duplicate entries in Derived Sources.

Rubber-stamped by Anders Carlsson.

  • WebKit2.xcodeproj/project.pbxproj:
5:19 PM Changeset in webkit [166551] by ap@apple.com
  • 3 edits
    3 adds in trunk

Crashes in PageConsole::addMessage
https://bugs.webkit.org/show_bug.cgi?id=130991
<rdar://problem/14795232>

Reviewed by Geoffrey Garen.

Source/WebCore:

Test: http/tests/misc/detached-frame-console.html

  • page/DOMWindow.cpp: (WebCore::DOMWindow::printErrorMessage): Added a null check.

It's legitimate for this to be called for a window that is not currently displayed
in a frame.

LayoutTests:

  • http/tests/misc/detached-frame-console-expected.txt: Added.
  • http/tests/misc/detached-frame-console.html: Added.
  • http/tests/misc/resources/detached-frame-console-subframe.html: Added.
5:12 PM Changeset in webkit [166550] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the build.

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::updateLayerTree):

5:08 PM Changeset in webkit [166549] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the build.

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::updateLayerTree):

5:00 PM Changeset in webkit [166548] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r166144?): fast/preloader/document-write.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=130942

  • platform/mac/TestExpectations: Marking as such.
4:50 PM Changeset in webkit [166547] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed test correction after r166530.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(setDefaultsToConsistentValuesForTesting): No need to change preference for all tests. We set the proper
fine-grained setting for swipe tests. This prevents existing tests from breaking.

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

Rename -[WKNavigationAction destinationFrame] to -[WKNavigationAction targetFrame]
https://bugs.webkit.org/show_bug.cgi?id=130994

Reviewed by Dan Bernstein.

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

(-[WKNavigationAction description]):
(-[WKNavigationAction targetFrame]):
(-[WKNavigationAction setTargetFrame:]):
(-[WKNavigationAction destinationFrame]): Deleted.
(-[WKNavigationAction setDestinationFrame:]): Deleted.

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

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

4:30 PM Changeset in webkit [166545] by timothy_horton@apple.com
  • 9 edits in trunk/Source/WebKit2

[iOS WebKit2] Flush all surfaces after painting into all of them, instead of after painting into each one
https://bugs.webkit.org/show_bug.cgi?id=130768
<rdar://problem/16421471>

Reviewed by Benjamin Poulain.

  • Shared/mac/RemoteLayerBackingStore.h:

Make RemoteLayerBackingStore noncopyable.
Add flush(), which synchronously flushes painting operations on the underlying backing store.
Add storage for the CGContext that needs to be flushed, and ensure that it is flushed before we paint again.

  • Shared/mac/RemoteLayerBackingStore.mm:

(RemoteLayerBackingStore::display):

(RemoteLayerBackingStore::drawInContext):
Don't flush the context immediately after painting.

(RemoteLayerBackingStore::flush):
Flush the current front surface/buffer's context.
Clear the new pending-flush members.

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::flushBackingStoreChangesInTransaction):
(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
Crawl through all of the valid changed backing stores in the transaction and flush them.
Reset changed properties after encoding the commit.

  • Shared/mac/RemoteLayerTreeTransaction.h:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::resetChangedProperties):
(WebKit::RemoteLayerTreeTransaction::changedLayers):
(WebKit::RemoteLayerTreeTransaction::changedLayerProperties):

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):
(WebKit::RemoteLayerTreeTransaction::layerPropertiesChanged):
(WebKit::dumpChangedLayers):
Instead of storing a copy of the LayerProperties struct for each changed layer
while building the transaction in the Web process, store a list of changed layers,
and directly encode the commit from those layers' LayerProperties. This provides a few benefits:

  • We avoid copying LayerProperties for every changed layer, every commit
  • We can make RemoteLayerBackingStore noncopyable
  • We can walk the changed layers after building the transaction in order to flush backing store, and actually affect the layers' own RemoteLayerBackingStore instead of a copy.

The UI process will still generate a LayerPropertiesMap at decode time.

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::updateLayerTree):
Don't copy the LayerProperties struct for the debug overlay. Instead,
adjust the properties which the debug overlay whacks directly on the layer,
after applying the normal LayerProperties.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::recursiveBuildTransaction):
Don't reset changed layer properties in the middle of building a transaction. Instead,
RemoteLayerTreeDrawingArea::flushLayers() will reset all the flags on all changed layers
after the commit is encoded.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:

(WebKit::PlatformCALayerRemote::properties):

4:27 PM Changeset in webkit [166544] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Improve GC_LOGGING
https://bugs.webkit.org/show_bug.cgi?id=130988

Reviewed by Geoffrey Garen.

GC_LOGGING can be useful for diagnosing where we're spending our time during collection,
but it doesn't distinguish between Eden and Full collections in the data it gathers. This
patch updates it so that it can. It also adds the process ID to the beginning of each line
of input to be able to distinguish between the output of multiple processes exiting at the
same time.

  • heap/Heap.cpp:

(JSC::Heap::collect):

4:23 PM Changeset in webkit [166543] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Unreviewed, rolling out r166536.
https://bugs.webkit.org/show_bug.cgi?id=130993

This is not the correct fix. (Requested by bfulgham on
#webkit).

Reverted changeset:

"Unreviewed test fix after r166530."
http://trac.webkit.org/changeset/166536

4:15 PM Changeset in webkit [166542] by Simon Fraser
  • 42 edits
    4 adds in trunk/Source

[UI-side compositing] Proxy animations to the UI process
https://bugs.webkit.org/show_bug.cgi?id=130946

Source/WebCore:

Reviewed by Tim Horton.

To proxy CA animations, make PlatformCAAnimation a pure virtual base class
and subclass for Mac, Windows, and Remote (just like PlatformCALayer).

Add coding support for TimingFunctions.

Do some minor #include tidyup.

Minor refactor in GraphicsLayerCA to share some animations code.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/animation/TimingFunction.h: Add setters need for encode/decode.

(WebCore::CubicBezierTimingFunction::setValues):
(WebCore::CubicBezierTimingFunction::setTimingFunctionPreset):
(WebCore::StepsTimingFunction::create):
(WebCore::StepsTimingFunction::setNumberOfSteps):
(WebCore::StepsTimingFunction::setStepAtStart):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::createPlatformCAAnimation):
(WebCore::GraphicsLayerCA::animationCanBeAccelerated): Minor refactor so we can share
code with GraphicsLayerCARemote.
(WebCore::GraphicsLayerCA::addAnimation):
(WebCore::GraphicsLayerCA::createBasicAnimation):
(WebCore::PassRefPtr<PlatformCAAnimation>GraphicsLayerCA::createKeyframeAnimation):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/PlatformCAAnimation.h:

(WebCore::PlatformCAAnimation::~PlatformCAAnimation):
(WebCore::PlatformCAAnimation::isPlatformCAAnimationMac):
(WebCore::PlatformCAAnimation::isPlatformCAAnimationWin):
(WebCore::PlatformCAAnimation::isPlatformCAAnimationRemote):
(WebCore::PlatformCAAnimation::PlatformCAAnimation):
(WebCore::PlatformCAAnimation::setType):

  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/mac/PlatformCAAnimationMac.h: Added.
  • platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayerMac::addAnimationForKey):
(PlatformCALayerMac::animationForKey):

  • platform/graphics/ca/mac/TileController.mm:
  • platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
  • platform/graphics/ca/win/PlatformCAAnimationWin.h: Added.

Source/WebKit2:

Reviewed by Tim Horton.

Add encoding/decoding of TimingFunctions. Add encoding support
for HashSet.

Add PlatformCAAnimationRemote and have PlatformCALayerRemote allow
animations now. PlatformCALayerRemote's properties are defined in the class,
as is the encoding/decoding (much cleaner than having them in the transaction
class I think).

Add support for the "animationDidStart" callback and sending this back to the
web process. This involves a HashMap of layerID->WKAnimationDelegate stored
on the RemoteLayerTreeHost, and a message send via the DrawingArea. On the
other side, RemoteLayerTreeContext stores a HashMap of layerID->PlatformCALayerRemote*
for layers which have just started animations, which is used to get the
PlatformCALayer* to call animationDidStart() on.

This requires that the RemoteLayerTreeHost* be passed down into property application,
and that the RemoteLayerTreeHost have a reference to the drawing area.

To every CALayer in the UI process we -setValue:forKey: to track the PlatformLayerID,
so we can get back to it in order to dispatch "animationDidStart".

Replace some "using namespace WebKit" with "namespace WebKit { }".

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

(IPC::ArgumentCoder<LinearTimingFunction>::encode):
(IPC::ArgumentCoder<LinearTimingFunction>::decode):
(IPC::ArgumentCoder<CubicBezierTimingFunction>::encode):
(IPC::ArgumentCoder<CubicBezierTimingFunction>::decode):
(IPC::ArgumentCoder<StepsTimingFunction>::encode):
(IPC::ArgumentCoder<StepsTimingFunction>::decode):

  • Shared/WebCoreArgumentCoders.h:
  • Shared/mac/RemoteLayerBackingStore.mm:
  • Shared/mac/RemoteLayerTreePropertyApplier.h:
  • Shared/mac/RemoteLayerTreePropertyApplier.mm:

(WebKit::applyPropertiesToLayer):
(WebKit::RemoteLayerTreePropertyApplier::applyProperties):

  • Shared/mac/RemoteLayerTreeTransaction.h:
  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
(WebKit::dumpChangedLayers):

  • UIProcess/ios/RemoteLayerTreeHostIOS.mm:

(WebKit::RemoteLayerTreeHost::layerID):
(WebKit::RemoteLayerTreeHost::createLayer):

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::acceleratedAnimationDidStart):
(WebKit::RemoteLayerTreeDrawingAreaProxy::showDebugIndicator):

  • UIProcess/mac/RemoteLayerTreeHost.h:

(WebKit::RemoteLayerTreeHost::animationDelegates):

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::RemoteLayerTreeHost):
(WebKit::RemoteLayerTreeHost::updateLayerTree):
(WebKit::RemoteLayerTreeHost::layerWillBeRemoved):
(WebKit::RemoteLayerTreeHost::animationDidStart):
(WebKit::RemoteLayerTreeHost::layerID):
(WebKit::RemoteLayerTreeHost::createLayer):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::acceleratedAnimationDidStart):

  • WebProcess/WebPage/DrawingArea.messages.in:
  • WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:

(WebKit::GraphicsLayerCARemote::createPlatformCAAnimation):

  • WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.h: Added.
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm: Added.
  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
(WebKit::PlatformCALayerRemote::animationStarted):
(WebKit::PlatformCALayerRemote::addAnimationForKey):
(WebKit::PlatformCALayerRemote::removeAnimationForKey):
(WebKit::PlatformCALayerRemote::animationForKey):
(PlatformCALayerRemote::recursiveBuildTransaction): Deleted.
(PlatformCALayerRemote::addAnimationForKey): Deleted.
(PlatformCALayerRemote::removeAnimationForKey): Deleted.
(PlatformCALayerRemote::animationForKey): Deleted.

  • WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:
  • WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:

(WebKit::RemoteLayerTreeContext::layerWillBeDestroyed):
(WebKit::RemoteLayerTreeContext::willStartAnimationOnLayer):
(WebKit::RemoteLayerTreeContext::animationDidStart):

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

(WebKit::RemoteLayerTreeDrawingArea::acceleratedAnimationDidStart):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):

4:00 PM Changeset in webkit [166541] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

Double-buffer RemoteLayerBackingStore
https://bugs.webkit.org/show_bug.cgi?id=130990

Reviewed by Simon Fraser.

We'll keep a front and back buffer for each surface; the front is generally currently
being displayed in the UI process, and the back is the one we'll paint into.

Swap the two surfaces each time we paint; since we synchronize with the UI process,
the old front surface will generally be out-of-use by the render server by the time
we paint again. However, since render server commits are asynchronous and we have
no way to syncronize with them yet, we have to check if the (swapped to front) back buffer is in use,
and create a new front buffer if it is.

Triple-buffering would solve this problem, as would synchronization with the render server,
as would a pool of surfaces - we will revisit these solutions in future patches.

  • Shared/mac/RemoteLayerBackingStore.h:
  • Shared/mac/RemoteLayerBackingStore.mm:

(RemoteLayerBackingStore::ensureBackingStore):
(RemoteLayerBackingStore::clearBackingStore):
Factor clearBackingStore() out of ensureBackingStore() and display().

(RemoteLayerBackingStore::display):
Swap buffers. Since m_backSurface will hold on to the back surface's CGContext,
we don't need to worry about tearing down the image first anymore.
Don't worry about creating a back image (nor copying it into the front image)
if we're going to paint the whole layer.

(RemoteLayerBackingStore::drawInContext):
Fix some names.

(RemoteLayerBackingStore::applyBackingStoreToLayer):
Reduce duplication.

(RemoteLayerBackingStore::createImageForFrontBuffer): Deleted.

3:52 PM Changeset in webkit [166540] by timothy_horton@apple.com
  • 5 edits in trunk/Source/WebKit2

Synchronize Web process remote layer tree commits with CoreAnimation commits in the UI process
https://bugs.webkit.org/show_bug.cgi?id=130984

Reviewed by Simon Fraser.

There's no reason for the Web process to paint faster than the UI process
can apply to and commit the CoreAnimation layer tree.

Also, once we get proper double-buffering and purgeable back buffers, we
will need the ability to make some assumptions about in-use surfaces.

Unfortunately, we can't actually tell when the render server commits,
as this is an asynchronous operation in a process we don't control, so
for now, this is only an approximation.

This also means that the assumptions we would like to make won't be
strong guarantees yet.

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
When we commit, install a run loop observer to fire immediately after CoreAnimation commits.

(WebKit::RemoteLayerTreeDrawingAreaProxy::showDebugIndicator):
Fix a typo ('cmponents').

(WebKit::coreAnimationDidCommitLayersCallback):
(WebKit::RemoteLayerTreeDrawingAreaProxy::scheduleCoreAnimationLayerCommitObserver):
(WebKit::RemoteLayerTreeDrawingAreaProxy::coreAnimationDidCommitLayers):
When CA commits, send a message to the Web process letting it know that we
swapped to the new backing store.

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

(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
(WebKit::RemoteLayerTreeDrawingArea::didUpdate):
Defer remote layer tree commits until we get didUpdate() from the UI process.

3:29 PM Changeset in webkit [166539] by matthew_hanson@apple.com
  • 13 edits
    3 deletes in tags/Safari-538.26

Rollout r166415.

3:28 PM Changeset in webkit [166538] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove the trigger for webkit1 tests on the gtk-linux-64-release bot
https://bugs.webkit.org/show_bug.cgi?id=130987

r166427 removed the WebKit1 GTK+ bots, so we don't longer need to
trigger the webkit1 bot tests on the gtk-linux-64-release bot.

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-03-31
Reviewed by Martin Robinson.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
3:19 PM Changeset in webkit [166537] by benjamin@webkit.org
  • 7 edits in trunk/Source/WebCore

CSS JIT: compile the first-child pseudo class
https://bugs.webkit.org/show_bug.cgi?id=130954

Reviewed by Andreas Kling.

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::collectMatchingRules):
The compiler use the context's style directly when resolving style. An error introduced
in the rule collector would cause a crash in the compiled code which would be hard to debug.
Add an assertion early in the stack to catch errors where it is easier to debug them.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::State::initForStyleResolve):

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToPreviousAdjacentElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToPreviousAdjacent):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateIndirectAdjacentTreeWalker):
Refactor those to be able to reuse the code getting a sibling element preceding the current element.

(WebCore::SelectorCompiler::SelectorCodeGenerator::jumpIfNotResolvingStyle):
Extract the code checking the current mode from SelectorCodeGenerator::markParentElementIfResolvingStyle()
in a separate function. This will be useful for all the pseudo class with marking.

(WebCore::SelectorCompiler::SelectorCodeGenerator::markParentElementIfResolvingStyle):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::setFirstChildState):
This is the slow path for when the first-child pseudo class is on a fragment that is not
the rightmost.
The reason to use a slow path is accessing renderStyle() is not trivial and this case isn't not
as common. We should improve this later.

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
This is just implementing the test for first-child plus the tree marking. Nothing fancy,
this is basically the same thing as SelectorChecker.

  • dom/Element.cpp:

(WebCore::Element::setChildrenAffectedByFirstChildRules):

  • dom/Element.h:

C++ fallback to set the flag, to be improved later with the other flags.

  • rendering/style/RenderStyle.h:

I accidentaly put noninheritedFlagsMemoryOffset() as private in the RenderStyle refactoring.

Also update the flags accessor to make them easier to work with from the compiler. In particular,
setFirstChildStateFlags() sets both isUnique and firstChild. Currently the JIT does not need to access
the value so individual flags are made private.

3:17 PM Changeset in webkit [166536] by Brent Fulgham
  • 3 edits in trunk/LayoutTests

Unreviewed test fix after r166530.

After switching to high-resolution continuous scroll output, forgot to update one test case.

  • fast/events/platform-wheelevent-in-scrolling-div-expected.txt:
  • fast/events/platform-wheelevent-in-scrolling-div.html:
3:16 PM Changeset in webkit [166535] by dino@apple.com
  • 12 edits in trunk

Remove WEB_ANIMATIONS
https://bugs.webkit.org/show_bug.cgi?id=130989

Reviewed by Simon Fraser.

Remove this feature flag until we plan to implement.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
3:14 PM Changeset in webkit [166534] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix iOS build.

  • page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm:

(WebCore::ScrollingTreeScrollingNodeIOS::updateLayersAfterDelegatedScroll):

3:04 PM Changeset in webkit [166533] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. iOS build fix after r166532. Add missing comma.

  • dom/DocumentMarker.h:
2:53 PM Changeset in webkit [166532] by beidson@apple.com
  • 8 edits in trunk/Source/WebCore

Add variant of phone number parsing that use DocumentMarker in the current selection
<rdar://problem/16379566> and https://bugs.webkit.org/show_bug.cgi?id=130917

Reviewed by Darin Adler.

  • dom/DocumentMarker.h:

(WebCore::DocumentMarker::AllMarkers::AllMarkers): Add a new TelephoneNumber document marker type.

  • editing/Editor.cpp:

(WebCore::Editor::respondToChangedSelection):
(WebCore::Editor::scanSelectionForTelephoneNumbers): TextIterate over the selected range looking for numbers.
(WebCore::Editor::scanRangeForTelephoneNumbers): Scan the given range for a telephone number,

adding the DocumentMarker to any that are found.

(WebCore::Editor::clearDataDetectedTelephoneNumbers):

  • editing/Editor.h:
  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processCharacterBufferForInBody): Only linkify on iOS.

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paintTelephoneNumberMarker): Placeholder UI while the feature is developed.
(WebCore::InlineTextBox::paintDocumentMarkers):

  • rendering/InlineTextBox.h:
  • testing/Internals.cpp:

(WebCore::markerTypesFrom):

2:23 PM Changeset in webkit [166531] by Simon Fraser
  • 20 edits in trunk/Source

[iOS WK2] Hook up scroll events for accelerated overflow:scroll
https://bugs.webkit.org/show_bug.cgi?id=130976

Source/WebCore:

Reviewed by Tim Horton.

When an accelerated overflow:scroll is scrolled in the UI process,
tell the WebProcess that the scroll happened to update RenderLayer
state and fire events.

In the WebProcess, RemoteScrollingCoordinator gets a message from the
UI process and calls AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll().
Fixed that function to handle scrolling nodes other than the root, which
required storing a map of ScrollingNodeID->RenderLayer* on RenderLayerCompositor,
accessible through FrameView::scrollableAreaForScrollLayerID().

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

(WebCore::FrameView::scrollableAreaForScrollLayerID):

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

(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll): Handle
overflow as well as main frame scrolling nodes.

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::viewportChangedViaDelegatedScrolling): Use isScrollingNode().
(WebCore::ScrollingTree::scrollPositionChangedViaDelegatedScrolling): When an overflow
scroll node was scrolled externally, we have to update layers in decendant nodes,
and then call scrollingTreeNodeDidScroll() which tells the ScrollingCoordinator that
we scrolled.

  • page/scrolling/ScrollingTree.h: Try to reduce confusion between the roles played

by these various functions, some of which happen in the UI process with UI-side
compositing.

  • page/scrolling/ScrollingTreeScrollingNode.h:
  • page/scrolling/ios/ScrollingTreeScrollingNodeIOS.h: Need some functions to be

callable by subclasses.

  • page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm:

(WebCore::ScrollingTreeScrollingNodeIOS::updateLayersAfterDelegatedScroll):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer): Add
scrolling layers to the m_scrollingNodeToLayerMap
(WebCore::RenderLayerCompositor::detachScrollCoordinatedLayer): Remove
layer from the m_scrollingNodeToLayerMap.
(WebCore::RenderLayerCompositor::scrollableAreaForScrollLayerID):

  • rendering/RenderLayerCompositor.h:

Source/WebKit2:

Reviewed by Tim Horton.

When an accelerated overflow:scroll is scrolled in the UI process,
tell the WebProcess that the scroll happened to update RenderLayer
state and fire events.

Add a WKOverflowScrollViewDelegate which is set as the delegate of
UIScrollViews, owned by ScrollingTreeOverflowScrollingNodeIOS, and propagates
-scrollViewDidScroll: messages to ScrollingTree::scrollPositionChangedViaDelegatedScrolling(),
which updates child layers and then, via RemoteScrollingTree::scrollingTreeNodeDidScroll,
tells the RemoteScrollingCoordinator which sends a message to the WebProcess.

  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:

(WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeDidScroll): Name change
to try to reduce confusion.
(WebKit::RemoteScrollingCoordinatorProxy::scrollPositionChanged): Deleted.

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

(WebKit::RemoteScrollingTree::scrollingTreeNodeDidScroll):

  • UIProcess/Scrolling/RemoteScrollingTree.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:

(-[WKOverflowScrollViewDelegate initWithScrollingTreeNode:WebKit::]):
(-[WKOverflowScrollViewDelegate scrollViewDidScroll:]):
(-[WKOverflowScrollViewDelegate scrollViewWillBeginDragging:]):
(-[WKOverflowScrollViewDelegate scrollViewDidEndDragging:willDecelerate:]):
(-[WKOverflowScrollViewDelegate scrollViewDidEndScrollingAnimation:]):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::~ScrollingTreeOverflowScrollingNodeIOS):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateBeforeChildren):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateAfterChildren):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollViewDidScroll):

  • WebProcess/Scrolling/RemoteScrollingCoordinator.mm:

(WebKit::RemoteScrollingCoordinator::scrollPositionChangedForNode): No need for
rounding.

2:22 PM Changeset in webkit [166530] by Brent Fulgham
  • 19 edits in trunk

Reduced Latched Scroll Test Flakiness
https://bugs.webkit.org/show_bug.cgi?id=130983

Reviewed by Darin Adler.

Tools:

  • DumpRenderTree/mac/DumpRenderTree.mm:

(setDefaultsToConsistentValuesForTesting): Test user should have 'high resolution' scrolling.

  • DumpRenderTree/mac/EventSendingController.mm:

(-[EventSendingController mouseScrollByX:andY:withWheel:andMomentumPhases:]): Generate mouse wheel events
with high resolution flags turned on.

  • WebKitTestRunner/mac/EventSenderProxy.mm:

(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases): Ditto.

LayoutTests:

Rebaseline test output for 'hasPreciseScrollingDeltas' behavior.

  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-expected.txt:
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler-expected.txt:
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-expected.txt:
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler-expected.txt:
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-expected.txt:
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-expected.txt:
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler-expected.txt:
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-expected.txt:
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt:
  • platform/mac/fast/scrolling/scroll-div-latched-mainframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-iframe-latched-mainframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-select-latched-mainframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-select-latched-select-expected.txt:
2:18 PM Changeset in webkit [166529] by Antti Koivisto
  • 11 edits
    10 moves in trunk/Source

Rename TileCache to LegacyTileCache
https://bugs.webkit.org/show_bug.cgi?id=130986

Reviewed by Simon Fraser.

../WebCore:

Rename iOS WebKit1 tile cache classes to reflect its status.
This also frees some good type names.

TileCache -> LegacyTileCache
TileGrid -> LegacyTileGrid
TileGridTile -> LegacyTileGridTile
etc.

../WebKit/mac:

  • WebView/WebView.mm:

(+[WebView drainLayerPool]):
(+[WebView _setTileCacheLayerPoolCapacity:]):

2:10 PM Changeset in webkit [166528] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebCore

Small adjustments to WebCore::IOSurface
https://bugs.webkit.org/show_bug.cgi?id=130981

Reviewed by Simon Fraser.

  • WebCore.exp.in:

Export some more things.

  • platform/graphics/cocoa/IOSurface.h:

createImage() can't be const because it calls ensurePlatformContext().

  • platform/graphics/cocoa/IOSurface.mm:

(IOSurface::createImage):
We should be able to create an image even if the CGContext has been cleared (or never created).

(IOSurface::isInUse):
Rename inUse() to isInUse().

(IOSurface::clearGraphicsContext):
Add clearGraphicsContext().

2:08 PM Changeset in webkit [166527] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Allocate IOSurfaces with the same cache mode that CoreAnimation uses
https://bugs.webkit.org/show_bug.cgi?id=130982

Reviewed by Simon Fraser.

  • platform/graphics/cocoa/IOSurface.mm:

(IOSurface::IOSurface):
CA uses kIOMapWriteCombineCache for IOSurfaces allocated on iOS.

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

[CSS Blending] Blend mode property is propagated to multiple GraphicLayers
https://bugs.webkit.org/show_bug.cgi?id=130337

Patch by Ion Rosca <Ion Rosca> on 2014-03-31
Reviewed by Dean Jackson.

Source/WebCore:

Resets the blend mode for graphicsLayer when it has an ancestorClippingLayer.

Test: css3/compositing/blend-mode-ancestor-clipping-layer.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateBlendMode):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateBlendMode):

  • rendering/RenderLayerBacking.h:

LayoutTests:

  • css3/compositing/blend-mode-ancestor-clipping-layer-expected.txt: Added.
  • css3/compositing/blend-mode-ancestor-clipping-layer.html: Added.
2:06 PM Changeset in webkit [166525] by commit-queue@webkit.org
  • 12 edits in trunk

[CSS Blending] showLayerTree should dump layer's blend mode and isolation properties
https://bugs.webkit.org/show_bug.cgi?id=130922

Patch by Ion Rosca <Ion Rosca> on 2014-03-31
Reviewed by Simon Fraser.

Source/WebCore:

This change only updates existing tests involving blending. No new test required,
as there is no new or changed functionality.

  • rendering/RenderLayer.h: adding blendMode() getter.
  • rendering/RenderTreeAsText.cpp:

(WebCore::write):
adding blendMode property and layer's isolation status (does layer isolate blending descendants or not?).

LayoutTests:

Tests are adapted after adding blending information to RenderTreeAsText.

  • platform/mac/css3/compositing/blend-mode-background-expected.txt:
  • platform/mac/css3/compositing/blend-mode-isolated-group-1-expected.txt:
  • platform/mac/css3/compositing/blend-mode-isolated-group-2-expected.txt:
  • platform/mac/css3/compositing/blend-mode-isolated-group-3-expected.txt:
  • platform/mac/css3/compositing/blend-mode-layers-expected.txt:
  • platform/mac/css3/compositing/blend-mode-reflection-expected.txt:
  • platform/mac/css3/compositing/blend-mode-simple-composited-expected.txt:
  • platform/mac/css3/compositing/blend-mode-simple-expected.txt:
2:04 PM Changeset in webkit [166524] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

CSS JIT: clean up the functions ending when generating a checker with context
https://bugs.webkit.org/show_bug.cgi?id=130959

Reviewed by Andreas Kling.

This code got refactored over time and now both branches do the exact same action
on the stack.
This patch removes the stack split and move the stack cleanup in the common ending
just before restoring the callee saved registers.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):

2:00 PM Changeset in webkit [166523] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

ThemeMac should use std::array instead of IntSize* for control sizes
https://bugs.webkit.org/show_bug.cgi?id=130985

Reviewed by Darin Adler.

Replace uses of const IntSize* with const std::array<IntSize, 3>

  • platform/mac/ThemeMac.mm:

(WebCore::sizeFromNSControlSize):
(WebCore::sizeFromFont):
(WebCore::controlSizeFromPixelSize):
(WebCore::setControlSize):
(WebCore::checkboxSizes):
(WebCore::radioSizes):
(WebCore::buttonSizes):
(WebCore::setUpButtonCell):
(WebCore::stepperSizes):

1:55 PM Changeset in webkit [166522] by hmuller@adobe.com
  • 5 edits in trunk/Source/WebCore

[CSS Shapes] Simplify RasterShape implementation
https://bugs.webkit.org/show_bug.cgi?id=130916

Reviewed by Dean Jackson.

Since only floats can specify shape-outside, the RasterShapeIntervals
class only needs to track the first and last above threshold pixel column
(x1 and x2 in the implementation) for each row. Removed code for dealing with
multiple "runs" per row as well as shape-inside internals.

No new tests, since functionality was only removed.

  • rendering/shapes/RasterShape.cpp:

(WebCore::RasterShapeIntervals::computeShapeMarginIntervals):
(WebCore::RasterShapeIntervals::initializeBounds):
(WebCore::RasterShapeIntervals::buildBoundsPath):
(WebCore::RasterShape::getExcludedIntervals):

  • rendering/shapes/RasterShape.h:

(WebCore::RasterShapeIntervals::RasterShapeIntervals):
(WebCore::RasterShapeIntervals::intervalAt):
(WebCore::RasterShape::RasterShape):

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createRasterShape):

  • rendering/shapes/ShapeInterval.h:

(WebCore::ShapeInterval::unite):

1:48 PM Changeset in webkit [166521] by akling@apple.com
  • 2 edits in trunk/Source/WebKit

Blind Windows build fix. Check my mangle-fu.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
1:23 PM Changeset in webkit [166520] by akling@apple.com
  • 5 edits
    1 copy in trunk/Source/WebCore

Always inline toJS() for NodeList.
<https://webkit.org/b/130974>

This is a pretty cheesy optimization, but it's a 3% progression on
Dromaeo/dom-query.html on my MBP.

Reviewed by Benjamin Poulain.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSNodeListCustom.h: Added.

(WebCore::toJS):

  • dom/NodeList.idl:
1:03 PM Changeset in webkit [166519] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Attempt to fix the 32bits debug builds

The additional debug flags in RefCounted cause the structure to have different alignment
with the 64bits flags.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-03-31

  • rendering/style/RenderStyle.cpp:
12:42 PM Changeset in webkit [166518] by Simon Fraser
  • 4 edits in trunk/Source/WebKit2

Fix scrolling on OS X with UI-side compositing
https://bugs.webkit.org/show_bug.cgi?id=130930

Reviewed by Tim Horton.

On iOS, we rely on visible rect updates to propagate scroll offset
changes to the WebProcess. RemoteScrollingCoordinatorProxy was thus hardcoded
to bail from scrollPositionChanged() when the scrolled node was the root node,
but this broke OS X. Fix by adding a behavior flag to RemoteScrollingCoordinatorProxy.

  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:

(WebKit::RemoteScrollingCoordinatorProxy::RemoteScrollingCoordinatorProxy):
(WebKit::RemoteScrollingCoordinatorProxy::scrollPositionChanged):

  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h:

(WebKit::RemoteScrollingCoordinatorProxy::setPropagatesMainFrameScrolls):
(WebKit::RemoteScrollingCoordinatorProxy::propagatesMainFrameScrolls):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::initializeWebPage):

12:42 PM Changeset in webkit [166517] by Simon Fraser
  • 8 edits in trunk/Source/WebCore

Clarify some scrolling tree terminology
https://bugs.webkit.org/show_bug.cgi?id=130929

Reviewed by Tim Horton.

Attempt to reduce some ambiguity in scrolling tree terminology.
When async scrolling occurs, there are two tasks we have to perform:

  1. Layers need to be updated to reflect the scroll
  2. WebCore state has to be updated.

The "updateForViewport" name didn't clearly reflect which of these
tasks was being performed, so rename it to updateLayersAfterViewportChange()
to reflect the fact that it only does the first.

Remove the Mac implementation of updateLayersAfterViewportChange(), since
it was confsued about this, and was never called anyway.

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

(WebCore::ScrollingTree::viewportChangedViaDelegatedScrolling):

  • page/scrolling/ScrollingTreeScrollingNode.h:
  • page/scrolling/ios/ScrollingTreeScrollingNodeIOS.h:
  • page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm:

(WebCore::ScrollingTreeScrollingNodeIOS::updateLayersAfterViewportChange):
(WebCore::ScrollingTreeScrollingNodeIOS::updateForViewport): Deleted.

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::updateLayersAfterViewportChange):
(WebCore::ScrollingTreeScrollingNodeMac::updateForViewport): Deleted.

12:37 PM Changeset in webkit [166516] by timothy_horton@apple.com
  • 18 edits in trunk/Source

[iOS WebKit2] Disable tile cohort retention for now
https://bugs.webkit.org/show_bug.cgi?id=130926
<rdar://problem/16465413>

Reviewed by Simon Fraser.

  • WebCore.exp.in:
  • page/Settings.cpp:

(WebCore::Settings::Settings):
(WebCore::Settings::setScrollingPerformanceLoggingEnabled):
(WebCore::Settings::setAggressiveTileRetentionEnabled): Deleted.

  • page/Settings.h:

(WebCore::Settings::aggressiveTileRetentionEnabled): Deleted.

  • page/Settings.in:

Use Settings.in for these simple settings.

  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::shouldAggressivelyRetainTiles):
(WebCore::GraphicsLayerClient::shouldTemporarilyRetainTileCohorts):

  • platform/graphics/TiledBacking.h:
  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::platformCALayerShouldAggressivelyRetainTiles):
(WebCore::GraphicsLayerCA::platformCALayerShouldTemporarilyRetainTileCohorts):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/PlatformCALayerClient.h:

(WebCore::PlatformCALayerClient::platformCALayerShouldAggressivelyRetainTiles):
(WebCore::PlatformCALayerClient::platformCALayerShouldTemporarilyRetainTileCohorts):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::shouldAggressivelyRetainTiles):
(WebCore::RenderLayerBacking::shouldTemporarilyRetainTileCohorts):

  • rendering/RenderLayerBacking.h:

Plumb the two tile-retention settings through to TileController in a pull manner
instead of a push manner, as there were some cases (especially on iOS) where
the settings weren't always getting pushed down.

  • platform/graphics/ca/mac/TileController.h:
  • platform/graphics/ca/mac/TileController.mm:

(WebCore::TileController::TileController):
(WebCore::TileController::tileRevalidationTimerFired):
(WebCore::TileController::revalidateTiles):
(WebCore::TileController::drawTileMapContents):
Aggressive tile retention wins over temporary retention. If we aren't
using temporary (cohort) retention, throw away the cohort as soon as it
is created.

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

(WebKit::WebPage::updatePreferences):
Add a preference for temporary tile cohort retention (essentially, provide a setting
that means that we will never retain tiles at all once they leave the tile coverage rect).
Defaults to true to maintain existing behavior, except for iOS WebKit2, where
it defaults to false because we don't have the requisite support for purgeable tiles yet.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
(WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):

11:15 AM Changeset in webkit [166515] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

run-webkit-tests should have a --no-timeout option
https://bugs.webkit.org/show_bug.cgi?id=128286

Patch by Jozsef Berta <jberta.u-szeged@partner.samsung.com> on 2014-03-31
Reviewed by Joseph Pecoraro.

  • Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:

(Worker._run_test): Renaming _run_test_with_timeout()
(Worker._run_test_with_or_without_timeout): Renaming _run_test_with_timeout(), because tests can now run without timeout.
(Worker._run_test_in_another_thread): Passing the --no-timeout option to the driver
(Worker._run_test_in_this_thread):
(Worker._run_test_with_timeout): Deleted.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(parse_args): Added the --no-timeout option

11:10 AM Changeset in webkit [166514] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

Radio buttons and checkboxes should share code
https://bugs.webkit.org/show_bug.cgi?id=130915

Reviewed by Sam Weinig.

Radio buttons and checkboxes now share a lot of code. The common term for both is
toggle buttons.

Move these radio-sizing functions up in the file to be next to the checkbox sizing
functions.

  • platform/mac/ThemeMac.mm:

(WebCore::radioSizes):
(WebCore::radioMargins):
(WebCore::radioSize):

Configures a radio button or a checkbox.
(WebCore::configureToggleButton):

Creates a radio button or a checkbox.
(WebCore::createToggleButtonCell):

Still have a shared cell for each.
(WebCore::sharedRadioCell):
(WebCore::sharedCheckboxCell):

Does the work of the old paintRadio() and paintCheckbox().
(WebCore::paintToggleButton):

Use sharedRadioCell() here.
(WebCore::ThemeMac::inflateControlPaintRect):

Call paintToggleButton() for radio buttons and checkboxes.
(WebCore::ThemeMac::paint):

All gone.
(WebCore::configureCheckbox): Deleted.
(WebCore::createCheckboxCell): Deleted.
(WebCore::paintCheckbox): Deleted.
(WebCore::radio): Deleted.
(WebCore::paintRadio): Deleted.

11:02 AM Changeset in webkit [166513] by Samuel White
  • 16 edits
    2 adds in trunk

AX: Need ability to get line range for text marker.
https://bugs.webkit.org/show_bug.cgi?id=130906

Reviewed by Chris Fleizach.

LayoutTests:

Added test to ensure we can get the correct range of a line from a given marker.
Also updated existing bounds-for-range test to include new attribute.

  • platform/mac/accessibility/bounds-for-range-expected.txt:
  • platform/mac/accessibility/line-range-for-text-marker-expected.txt: Added.
  • platform/mac/accessibility/line-range-for-text-marker.html: Added.

Source/WebCore:

Added ability to get line range from any marker on that line. This matches the functionality of existing
attributes such as AXParagraphTextMarkerRangeForTextMarker and AXSentenceTextMarkerRangeForTextMarker.

Test: platform/mac/accessibility/line-range-for-text-marker.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::visiblePositionRangeForRange):
(WebCore::AccessibilityObject::lineRangeForPosition):

  • accessibility/AccessibilityObject.h:
  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):

Tools:

Added a new function in DRT and TestRunner to test that AXLineTextMarkerRangeForTextMarker works as expected.

  • DumpRenderTree/AccessibilityUIElement.cpp:

(lineTextMarkerRangeForTextMarkerCallback):
(AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
(AccessibilityUIElement::getJSClass):

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::lineTextMarkerRangeForTextMarker):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):

  • WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:

(WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):

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

Fix iOS build.

Source/WebCore:

  • page/ChromeClient.h:

(WebCore::ChromeClient::updateViewportConstrainedLayers):

Source/WebKit/ios:

  • WebCoreSupport/WebChromeClientIOS.h:
  • WebCoreSupport/WebChromeClientIOS.mm:
  • WebCoreSupport/WebFixedPositionContent.mm:
  • WebCoreSupport/WebFixedPositionContentInternal.h:
10:13 AM Changeset in webkit [166511] by ap@apple.com
  • 2 edits in trunk/LayoutTests

transitions/3d/interrupted-transition.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=130972

  • platform/mac/TestExpectations: Marked as such.
9:50 AM Changeset in webkit [166510] by fpizlo@apple.com
  • 5 edits in trunk

More validation for FTL inline caches
https://bugs.webkit.org/show_bug.cgi?id=130948

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::handlePutById):

  • runtime/Options.h:

Tools:

  • Scripts/run-jsc-stress-tests:
9:43 AM Changeset in webkit [166509] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[MSE][Mac] Support lease-renewal.
https://bugs.webkit.org/show_bug.cgi?id=130919

Reviewed by Eric Carlson.

Trigger a new key request when receiving an update message containting "renew".

  • platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:

(WebCore::CDMSessionMediaSourceAVFObjC::generateKeyRequest): Drive-by fix; generate a UTF-8

based array.

(WebCore::CDMSessionMediaSourceAVFObjC::update):

9:41 AM Changeset in webkit [166508] by ap@apple.com
  • 2 edits in trunk/LayoutTests

media/track/track-remove-track.html is flaky, crashing and failing
https://bugs.webkit.org/show_bug.cgi?id=130971

  • platform/mac/TestExpectations: Marked as such.
9:32 AM Changeset in webkit [166507] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Remove special handling of soft hyphens in search code
https://bugs.webkit.org/show_bug.cgi?id=130940

Reviewed by Anders Carlsson.

ICU knows to ignore soft hyphens, so we don't need to replace them before searching.

Covered by existing tests.

  • editing/TextIterator.cpp:

(WebCore::foldQuoteMark):
(WebCore::foldQuoteMarks):
(WebCore::SearchBuffer::SearchBuffer):
(WebCore::SearchBuffer::append):
(WebCore::foldQuoteMarkOrSoftHyphen): Deleted.
(WebCore::foldQuoteMarksAndSoftHyphens): Deleted.

9:30 AM Changeset in webkit [166506] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Preparation for using Soup on Windows.
https://bugs.webkit.org/show_bug.cgi?id=130615

Patch by Alex Christensen <achristensen@webkit.org> on 2014-03-31
Reviewed by Carlos Garcia Campos.

Source/WebCore:

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:

Added Soup source files in WinCairo build.

  • loader/soup/CachedRawResourceSoup.cpp:
  • loader/soup/SubresourceLoaderSoup.cpp:
  • platform/soup/SharedBufferSoup.cpp:
  • platform/soup/URLSoup.cpp:
  • platform/network/NetworkStorageSessionStub.cpp:

Only build if USE(SOUP) to prevent building when USE(CURL) is true.

  • platform/network/soup/ResourceHandleSoup.cpp:

Only include unistd.h in non-Visual Studio builds.
This would normally be done with a HAVE_UNISTD_H macro when compiling glib and Soup,
but that would need to be left undefined for Visual Studio.

Source/WTF:

  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:

Add all gobject source files in WinCairo build.

  • wtf/gobject/GRefPtr.h:

Export refGPtr and derefGPtr overloads in WTF.dll to fix linker errors with WebKit.dll when using soup.

9:21 AM Changeset in webkit [166505] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

LLVM IR for store barriers should be nicely arranged and they don't need exception checks
https://bugs.webkit.org/show_bug.cgi?id=130950

Reviewed by Mark Hahnenberg.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::emitStoreBarrier):

8:16 AM Changeset in webkit [166504] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] Do not run WebKit1 unit tests by default
https://bugs.webkit.org/show_bug.cgi?id=130968

Reviewed by Martin Robinson.

  • Scripts/run-gtk-tests:

(TestRunner):

8:05 AM Changeset in webkit [166503] by rakuco@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[CMake] Stop checking for WTF_USE_ICU_UNICODE.
https://bugs.webkit.org/show_bug.cgi?id=130965

Reviewed by Martin Robinson.

This is somewhat of a follow-up to r162782, which got rid of
WTF_USE_ICU_UNICODE in CMake but did not remove the check in JSC's
CMakeLists.txt. This meant the includes and libraries were not
being properly included since then.

  • CMakeLists.txt:
7:51 AM Changeset in webkit [166502] by pmolnar.u-szeged@partner.samsung.com
  • 2 edits in trunk/Source/WebKit2

Buildfix after r166497.

Reviewed by Csaba Osztrogonác.

  • UIProcess/API/efl/ewk_context.h: Missing EAPI added.
7:44 AM Changeset in webkit [166501] by rakuco@webkit.org
  • 2 edits in trunk

[CMake][GTK] Do not expand variables twice in if() checks.
https://bugs.webkit.org/show_bug.cgi?id=130964

Reviewed by Martin Robinson.

In CMake, `if (${foo})' causes $foo to be evaluated first and its value
to be checked by the if clause. This is not what we want, and
configuration fails when, say, GLX support wasn't found as the if
clause is actually evaluated as `if (TRUE AND (OR TRUE))'.

  • Source/cmake/OptionsGTK.cmake: Pass if (FOO) instead of if (${FOO})

where necessary.

7:39 AM Changeset in webkit [166500] by Martin Robinson
  • 7 edits
    2 deletes in trunk

[GTK] Remove scripts code only applicable to autotools
https://bugs.webkit.org/show_bug.cgi?id=130841

Reviewed by Anders Carlsson.

.:

  • Source/cmake/WebKitPackaging.cmake: No longer need to consider autotools files.

Tools:

  • BuildSlaveSupport/build.webkit.org-config/wkbuild.py:

(_should_file_trigger_build): Update file list to reflect GTK+ CMake port.

  • Scripts/webkitpy/common/config/watchlist: Remove the GTK+ build watchlist.
  • Scripts/webkitpy/style/checker.py: The GNUmakefile doesn't exist any longer.
  • gtk/find-make-dist-errors: Removed.
  • gtk/generate-feature-defines-files: Removed.
  • gtk/manifest.txt: No longer need to consider autotools files.
7:38 AM Changeset in webkit [166499] by Martin Robinson
  • 6 edits in trunk

[GTK] Use PROJECT_VERSION_* instead of WEBKIT_*_VERSION
https://bugs.webkit.org/show_bug.cgi?id=130936

Reviewed by Carlos Garcia Campos.

.:

  • Source/cmake/OptionsGTK.cmake: No longer emulate the Autotools macro names.

Source/WebKit/gtk:

  • webkit/webkitversion.h.in: Use PROJECT_VERSION_* macros instead of the Autotools ones.

Source/WebKit2:

  • UIProcess/API/gtk/WebKitVersion.h.in: Use PROJECT_VERSION_* macros instead of the Autotools ones.
7:36 AM Changeset in webkit [166498] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. Addressing reviewing comments for r166491 that I forgot
to address before landing.

  • html/FormController.cpp:

(WebCore::SavedFormState::deserialize): No need to move the std::unique_ptr
object on the way out.
(WebCore::FormController::createSavedFormStateMap): FormKeyGenerator can be
allocated on the stack.
(WebCore::FormController::formStatesFromStateVector): Use auto.

5:59 AM Changeset in webkit [166497] by pmolnar.u-szeged@partner.samsung.com
  • 7 edits
    1 add in trunk/Source/WebKit2

[EFL][WK2] Add ewk APIs to control TLS error policy on WebContext.
https://bugs.webkit.org/show_bug.cgi?id=129740

Reviewed by Gyuyoung Kim.

  • PlatformEfl.cmake:

Added the new SSL test.

  • UIProcess/API/efl/ewk_context.cpp:

(EwkContext::ignoreTLSErrors):
(EwkContext::setIgnoreTLSErrors):
(ewk_context_ignore_tls_errors_get):
(ewk_context_ignore_tls_errors_set):

  • UIProcess/API/efl/ewk_context.h:
  • UIProcess/API/efl/ewk_context_private.h:

Added the API functions.

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.cpp:

(EWK2UnitTestServer::EWK2UnitTestServer):

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

Extended the unit test server to handle TLS.

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

Added tests to check the TLS policy API.

5:32 AM Changeset in webkit [166496] by Carlos Garcia Campos
  • 15 edits in trunk/Source/WebCore

[GTK] Use GMainLoopSource for idle and timeout sources in WebCore
https://bugs.webkit.org/show_bug.cgi?id=130078

Reviewed by Philippe Normand.

  • platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
  • platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
  • platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:
  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  • platform/gtk/GtkDragAndDropHelper.cpp:
  • platform/gtk/SharedTimerGtk.cpp:
4:22 AM Changeset in webkit [166495] by abucur@adobe.com
  • 3 edits
    2 adds in trunk

Wrong layout while animating content in regions
https://bugs.webkit.org/show_bug.cgi?id=125086

Reviewed by David Hyatt.

Source/WebCore:

The region to layer and regions to layer mappings should be cleared when the region chain changes.

Test: fast/regions/layers/region-removed-during-animation.html

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::invalidateRegions): Clear the two maps and flag them for recomputation.
(WebCore::RenderFlowThread::cachedRegionForCompositedLayer): Assert that the returned region exists.

LayoutTests:

Add a test verifying the layout and painting of animated content inside regions
is correct.

  • fast/regions/layers/region-removed-during-animation-expected.html: Added.
  • fast/regions/layers/region-removed-during-animation.html: Added.
4:04 AM Changeset in webkit [166494] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK2 plugin process binary name after r166492.

  • PlatformGTK.cmake: Fix typo.
3:43 AM Changeset in webkit [166493] by Dániel Bátyai
  • 35 edits in trunk/Source

Remove hostThisRegister() and hostThisValue()
https://bugs.webkit.org/show_bug.cgi?id=130895

Reviewed by Geoffrey Garen.

Removed hostThisRegister() and hostThisValue() and instead use thisArgumentOffset() and thisValue() respectively.

Source/JavaScriptCore:

  • API/APICallbackFunction.h:

(JSC::APICallbackFunction::call):

  • API/JSCallbackObjectFunctions.h:

(JSC::JSCallbackObject<Parent>::call):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

  • inspector/JSInjectedScriptHostPrototype.cpp:

(Inspector::jsInjectedScriptHostPrototypeAttributeEvaluate):
(Inspector::jsInjectedScriptHostPrototypeFunctionInternalConstructorName):
(Inspector::jsInjectedScriptHostPrototypeFunctionIsHTMLAllCollection):
(Inspector::jsInjectedScriptHostPrototypeFunctionType):
(Inspector::jsInjectedScriptHostPrototypeFunctionFunctionDetails):
(Inspector::jsInjectedScriptHostPrototypeFunctionGetInternalProperties):

  • inspector/JSJavaScriptCallFramePrototype.cpp:

(Inspector::jsJavaScriptCallFramePrototypeFunctionEvaluate):
(Inspector::jsJavaScriptCallFramePrototypeFunctionScopeType):
(Inspector::jsJavaScriptCallFrameAttributeCaller):
(Inspector::jsJavaScriptCallFrameAttributeSourceID):
(Inspector::jsJavaScriptCallFrameAttributeLine):
(Inspector::jsJavaScriptCallFrameAttributeColumn):
(Inspector::jsJavaScriptCallFrameAttributeFunctionName):
(Inspector::jsJavaScriptCallFrameAttributeScopeChain):
(Inspector::jsJavaScriptCallFrameAttributeThisObject):
(Inspector::jsJavaScriptCallFrameAttributeType):

  • interpreter/CallFrame.h:

(JSC::ExecState::hostThisRegister): Deleted.
(JSC::ExecState::hostThisValue): Deleted.

  • runtime/Arguments.cpp:

(JSC::argumentsFuncIterator):

  • runtime/ArrayPrototype.cpp:

(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncToLocaleString):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncConcat):
(JSC::arrayProtoFuncPop):
(JSC::arrayProtoFuncPush):
(JSC::arrayProtoFuncReverse):
(JSC::arrayProtoFuncShift):
(JSC::arrayProtoFuncSlice):
(JSC::arrayProtoFuncSort):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):
(JSC::arrayProtoFuncReduce):
(JSC::arrayProtoFuncReduceRight):
(JSC::arrayProtoFuncIndexOf):
(JSC::arrayProtoFuncLastIndexOf):
(JSC::arrayProtoFuncValues):
(JSC::arrayProtoFuncEntries):
(JSC::arrayProtoFuncKeys):

  • runtime/BooleanPrototype.cpp:

(JSC::booleanProtoFuncToString):
(JSC::booleanProtoFuncValueOf):

  • runtime/ConsolePrototype.cpp:

(JSC::consoleLogWithLevel):
(JSC::consoleProtoFuncClear):
(JSC::consoleProtoFuncDir):
(JSC::consoleProtoFuncDirXML):
(JSC::consoleProtoFuncTable):
(JSC::consoleProtoFuncTrace):
(JSC::consoleProtoFuncAssert):
(JSC::consoleProtoFuncCount):
(JSC::consoleProtoFuncProfile):
(JSC::consoleProtoFuncProfileEnd):
(JSC::consoleProtoFuncTime):
(JSC::consoleProtoFuncTimeEnd):
(JSC::consoleProtoFuncTimeStamp):
(JSC::consoleProtoFuncGroup):
(JSC::consoleProtoFuncGroupCollapsed):
(JSC::consoleProtoFuncGroupEnd):

  • runtime/DatePrototype.cpp:

(JSC::formateDateInstance):
(JSC::dateProtoFuncToISOString):
(JSC::dateProtoFuncToLocaleString):
(JSC::dateProtoFuncToLocaleDateString):
(JSC::dateProtoFuncToLocaleTimeString):
(JSC::dateProtoFuncGetTime):
(JSC::dateProtoFuncGetFullYear):
(JSC::dateProtoFuncGetUTCFullYear):
(JSC::dateProtoFuncGetMonth):
(JSC::dateProtoFuncGetUTCMonth):
(JSC::dateProtoFuncGetDate):
(JSC::dateProtoFuncGetUTCDate):
(JSC::dateProtoFuncGetDay):
(JSC::dateProtoFuncGetUTCDay):
(JSC::dateProtoFuncGetHours):
(JSC::dateProtoFuncGetUTCHours):
(JSC::dateProtoFuncGetMinutes):
(JSC::dateProtoFuncGetUTCMinutes):
(JSC::dateProtoFuncGetSeconds):
(JSC::dateProtoFuncGetUTCSeconds):
(JSC::dateProtoFuncGetMilliSeconds):
(JSC::dateProtoFuncGetUTCMilliseconds):
(JSC::dateProtoFuncGetTimezoneOffset):
(JSC::dateProtoFuncSetTime):
(JSC::setNewValueFromTimeArgs):
(JSC::setNewValueFromDateArgs):
(JSC::dateProtoFuncSetYear):
(JSC::dateProtoFuncGetYear):
(JSC::dateProtoFuncToJSON):

  • runtime/ErrorPrototype.cpp:

(JSC::errorProtoFuncToString):

  • runtime/FunctionPrototype.cpp:

(JSC::functionProtoFuncToString):
(JSC::functionProtoFuncBind):

  • runtime/NamePrototype.cpp:

(JSC::privateNameProtoFuncToString):

  • runtime/NumberPrototype.cpp:

(JSC::numberProtoFuncToExponential):
(JSC::numberProtoFuncToFixed):
(JSC::numberProtoFuncToPrecision):
(JSC::numberProtoFuncClz):
(JSC::numberProtoFuncToString):
(JSC::numberProtoFuncToLocaleString):
(JSC::numberProtoFuncValueOf):

  • runtime/ObjectPrototype.cpp:

(JSC::objectProtoFuncValueOf):
(JSC::objectProtoFuncHasOwnProperty):
(JSC::objectProtoFuncIsPrototypeOf):
(JSC::objectProtoFuncDefineGetter):
(JSC::objectProtoFuncDefineSetter):
(JSC::objectProtoFuncLookupGetter):
(JSC::objectProtoFuncLookupSetter):
(JSC::objectProtoFuncPropertyIsEnumerable):
(JSC::objectProtoFuncToLocaleString):
(JSC::objectProtoFuncToString):

  • runtime/RegExpPrototype.cpp:

(JSC::regExpProtoFuncTest):
(JSC::regExpProtoFuncExec):
(JSC::regExpProtoFuncCompile):
(JSC::regExpProtoFuncToString):

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncReplace):
(JSC::stringProtoFuncToString):
(JSC::stringProtoFuncCharAt):
(JSC::stringProtoFuncCharCodeAt):
(JSC::stringProtoFuncConcat):
(JSC::stringProtoFuncIndexOf):
(JSC::stringProtoFuncLastIndexOf):
(JSC::stringProtoFuncMatch):
(JSC::stringProtoFuncSearch):
(JSC::stringProtoFuncSlice):
(JSC::stringProtoFuncSplit):
(JSC::stringProtoFuncSubstr):
(JSC::stringProtoFuncSubstring):
(JSC::stringProtoFuncToLowerCase):
(JSC::stringProtoFuncToUpperCase):
(JSC::stringProtoFuncLocaleCompare):
(JSC::stringProtoFuncBig):
(JSC::stringProtoFuncSmall):
(JSC::stringProtoFuncBlink):
(JSC::stringProtoFuncBold):
(JSC::stringProtoFuncFixed):
(JSC::stringProtoFuncItalics):
(JSC::stringProtoFuncStrike):
(JSC::stringProtoFuncSub):
(JSC::stringProtoFuncSup):
(JSC::stringProtoFuncFontcolor):
(JSC::stringProtoFuncFontsize):
(JSC::stringProtoFuncAnchor):
(JSC::stringProtoFuncLink):
(JSC::stringProtoFuncTrim):
(JSC::stringProtoFuncTrimLeft):
(JSC::stringProtoFuncTrimRight):

Source/WebCore:

No new tests, no behavior changes.

  • bindings/js/JSNavigatorCustom.cpp:

(WebCore::JSNavigator::webkitGetUserMedia):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::callPlugin):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

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

(WebCore::jsFloat64ArrayPrototypeFunctionFoo):
(WebCore::jsFloat64ArrayPrototypeFunctionSet):

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

(WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):

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

(WebCore::jsTestCustomNamedGetterPrototypeFunctionAnotherFunction):

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

(WebCore::jsTestEventTargetPrototypeFunctionItem):
(WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
(WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
(WebCore::jsTestEventTargetPrototypeFunctionDispatchEvent):

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

(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod1):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod3):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod1):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod3):

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

(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):

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

(WebCore::jsTestObjPrototypeFunctionVoidMethod):
(WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionByteMethod):
(WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionOctetMethod):
(WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionLongMethod):
(WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionObjMethod):
(WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestObjPrototypeFunctionMethodReturningSequence):
(WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
(WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
(WebCore::jsTestObjPrototypeFunctionSerializedValue):
(WebCore::jsTestObjPrototypeFunctionOptionsObject):
(WebCore::jsTestObjPrototypeFunctionMethodWithException):
(WebCore::jsTestObjPrototypeFunctionCustomMethod):
(WebCore::jsTestObjPrototypeFunctionCustomMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionAddEventListener):
(WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateVoid):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateObj):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateVoidException):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptState):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateWithSpaces):
(WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalString):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsUndefined):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsNullString):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod1):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod2):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod3):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod8):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod9):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod11):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithClamp):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
(WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
(WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
(WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
(WebCore::jsTestObjPrototypeFunctionConvert1):
(WebCore::jsTestObjPrototypeFunctionConvert2):
(WebCore::jsTestObjPrototypeFunctionConvert4):
(WebCore::jsTestObjPrototypeFunctionConvert5):
(WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionImmutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionOrange):
(WebCore::jsTestObjPrototypeFunctionStrictFunction):
(WebCore::jsTestObjPrototypeFunctionStrictFunctionWithSequence):
(WebCore::jsTestObjPrototypeFunctionStrictFunctionWithArray):
(WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
(WebCore::jsTestObjPrototypeFunctionAny):

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

(WebCore::jsTestTypedefsPrototypeFunctionFunc):
(WebCore::jsTestTypedefsPrototypeFunctionSetShadow):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestTypedefsPrototypeFunctionNullableArrayArg):
(WebCore::jsTestTypedefsPrototypeFunctionFuncWithClamp):
(WebCore::jsTestTypedefsPrototypeFunctionImmutablePointFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction2):
(WebCore::jsTestTypedefsPrototypeFunctionCallWithSequenceThatRequiresInclude):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithException):

  • bridge/objc/objc_runtime.mm:

(JSC::Bindings::callObjCFallbackObject):

  • bridge/runtime_method.cpp:

(JSC::callRuntimeMethod):

Source/WebKit2:

  • WebProcess/Plugins/Netscape/JSNPMethod.cpp:

(WebKit::callMethod):

3:39 AM Changeset in webkit [166492] by Carlos Garcia Campos
  • 12 edits in trunk

[GTK] Add support for GTK3 plugins
https://bugs.webkit.org/show_bug.cgi?id=130599

Reviewed by Martin Robinson.

.:

  • Source/cmake/OptionsGTK.cmake:

Source/WebKit2:

We currently have a gtk2 based plugin process mainly for flash
and a few other plugins that use GTK2, but many other plugins
don't even use gtk at all. This patch builds a lighter plugin
process based on GTK3, used by default for all the plugins expect
the ones requiring GTK2. And of course the default plugin process
supports GTK3 plugins.

  • CMakeLists.txt: Add common rules to build the default plugin process.
  • PlatformEfl.cmake: Remove common cmake code that is now in CMakeLists.txt.
  • PlatformGTK.cmake: Rename WebKitPluginProcess to

WebKitPluginProcess2 and add the platform specific rules to build
the default plugin process.

  • Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:

(WebKit::NetscapePluginModule::getPluginInfoForLoadedPlugin):
Check if the loaded plugin module uses GTK2.
(WebKit::NetscapePluginModule::getPluginInfo): Set requiresGtk2 accordingly.
(WebKit::NetscapePluginModule::scanPlugin): Write "requires-gtk2"
line to stdout if the plugin requires GTK2.

  • Shared/Plugins/PluginModuleInfo.h: Add requiresGtk2 boolean member.
  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:

(WebKit::ProcessLauncher::launchProcess): Use the
WebKitPluginProcess2 executable when the plugin requires GTK2.

  • UIProcess/Plugins/PluginProcessProxy.h: Add requiresGtk2 boolean

member to RawPluginMetaData struct.

  • UIProcess/Plugins/gtk/PluginInfoCache.cpp: Bump the cache schema version.

(WebKit::PluginInfoCache::getPluginInfo): Read also requires-gtk2
key from the cache.
(WebKit::PluginInfoCache::updatePluginInfo): Save also
requires-gtk2 key in the cache.

  • UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:

(WebKit::PluginProcessProxy::platformGetLaunchOptions): Add an
extra initialization data parameter if the plugin requires GTK2.
(WebKit::PluginProcessProxy::scanPlugin): Check if "requires-gtk2"
was written to stdout.

3:35 AM Changeset in webkit [166491] by zandobersek@gmail.com
  • 18 edits in trunk/Source/WebCore

Move the rest of Source/WebCore/html/ code to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=129669

Reviewed by Anders Carlsson.

Replace the remaining uses of OwnPtr, PassOwnPtr under Source/WebCore/html/ with std::unique_ptr.

  • html/FormController.cpp:

(WebCore::SavedFormState::SavedFormState):
(WebCore::SavedFormState::deserialize):
(WebCore::FormController::createSavedFormStateMap):
(WebCore::FormController::formElementsState):
(WebCore::FormController::takeStateForFormElement):
(WebCore::FormController::formStatesFromStateVector):

  • html/FormController.h:
  • html/HTMLAreaElement.cpp:

(WebCore::HTMLAreaElement::mapMouseEvent):

  • html/HTMLAreaElement.h:
  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::setSurfaceSize):
(WebCore::HTMLCanvasElement::createImageBuffer):

  • html/HTMLCanvasElement.h:
  • html/HTMLCollection.h:
  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseAttribute):

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::updateVisibleValidationMessage):

  • html/HTMLFormControlElement.h:
  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::addToPastNamesMap):

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

(WebCore::HTMLInputElement::imageLoader):
(WebCore::HTMLInputElement::resetListAttributeTargetObserver):

  • html/HTMLInputElement.h:

(WebCore::HTMLInputElement::hasImageLoader):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseAttribute):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::startLoadingImage):

  • html/HTMLPlugInImageElement.h:
  • html/HTMLVideoElement.cpp:

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

  • html/HTMLVideoElement.h:
  • html/ValidationMessage.cpp:

(WebCore::ValidationMessage::ValidationMessage):
(WebCore::ValidationMessage::setMessage):
(WebCore::ValidationMessage::setMessageDOMAndStartTimer):
(WebCore::ValidationMessage::requestToHideMessage):

  • html/ValidationMessage.h:
3:21 AM Changeset in webkit [166490] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix mixed use of booleans in JPEGImageDecoder.cpp
https://bugs.webkit.org/show_bug.cgi?id=122412

Patch by Maurice van der Pot <griffon26@kfk4ever.com> on 2014-03-31
Reviewed by Darin Adler.

Trivial fix for compilation error; no new tests.

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

(WebCore::JPEGImageReader::decode):
(WebCore::fill_input_buffer):
Use TRUE/FALSE defined by libjpeg for libjpeg booleans

3:12 AM Changeset in webkit [166489] by zandobersek@gmail.com
  • 67 edits in trunk/Source/WebCore

Move Source/WebCore/rendering/ code to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=129664

Reviewed by Anders Carlsson.

Replace uses of OwnPtr and PassOwnPtr in code under Source/WebCore/rendering/ with std::unique_ptr.

  • platform/graphics/FloatPolygon.cpp:

(WebCore::FloatPolygon::FloatPolygon):

  • platform/graphics/FloatPolygon.h:
  • rendering/ClipPathOperation.h:
  • rendering/FlowThreadController.cpp:

(WebCore::FlowThreadController::ensureRenderFlowThreadWithName):

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

(WebCore::HitTestResult::HitTestResult):
(WebCore::HitTestResult::operator=):
(WebCore::HitTestResult::rectBasedTestResult):
(WebCore::HitTestResult::mutableRectBasedTestResult):

  • rendering/HitTestResult.h:
  • rendering/HitTestingTransformState.cpp:
  • rendering/ImageQualityController.h:
  • rendering/RenderBlock.cpp:

(WebCore::removeBlockFromDescendantAndContainerMaps):
(WebCore::RenderBlock::finishDelayUpdateScrollInfo):
(WebCore::RenderBlock::addContinuationWithOutline):
(WebCore::RenderBlock::paintContinuationOutlines):
(WebCore::RenderBlock::insertIntoTrackedRendererMaps):
(WebCore::RenderBlock::removeFromTrackedRendererMaps):
(WebCore::RenderBlock::setComputedColumnCountAndWidth):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::createFloatingObjects):

  • rendering/RenderBlockFlow.h:
  • rendering/RenderBoxRegionInfo.h:
  • rendering/RenderButton.cpp:

(WebCore::RenderButton::styleDidChange):

  • rendering/RenderButton.h:
  • rendering/RenderCounter.cpp:

(WebCore::makeCounterNode):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::updateAllLayerToRegionMappings):
(WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock):

  • rendering/RenderFlowThread.h:
  • rendering/RenderGeometryMap.cpp:

(WebCore::RenderGeometryMap::push):
(WebCore::RenderGeometryMap::pushView):

  • rendering/RenderGeometryMap.h:
  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::GridIterator::nextEmptyGridArea):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::populateExplicitGridAndOrderIterator):
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
(WebCore::RenderGrid::resolveGridPositionsFromStyle):
(WebCore::RenderGrid::resolveGridPositionAgainstOppositePosition):
(WebCore::RenderGrid::resolveNamedGridLinePositionAgainstOppositePosition):
(WebCore::RenderGrid::resolveRowStartColumnStartNamedGridLinePositionAgainstOppositePosition):
(WebCore::RenderGrid::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):

  • rendering/RenderGrid.h:
  • rendering/RenderImageResource.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrder):
(WebCore::RenderLayer::updateTransform):
(WebCore::RenderLayer::setupFilters):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintChildLayerIntoColumns):
(WebCore::RenderLayer::hitTestChildLayerColumns):
(WebCore::RenderLayer::updateClipRects):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:

(WebCore::RenderLayer::clearZOrderLists):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::notifyFlushBeforeDisplayRefresh):
(WebCore::RenderLayerCompositor::registerAllViewportConstrainedLayers):

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

(WebCore::RenderLayer::FilterInfo::map):
(WebCore::RenderLayer::FilterInfo::get):

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

(WebCore::RenderRegion::setRenderBoxRegionInfo):
(WebCore::RenderRegion::takeRenderBoxRegionInfo):

  • rendering/RenderRegion.h:
  • rendering/RenderTable.cpp:

(WebCore::RenderTable::styleDidChange):

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

(WebCore::RenderView::selectionBounds):
(WebCore::RenderView::setSelection):
(WebCore::RenderView::compositor):
(WebCore::RenderView::flowThreadController):
(WebCore::RenderView::imageQualityController):

  • rendering/RenderView.h:
  • rendering/RootInlineBox.h:

(WebCore::RootInlineBox::appendFloat):

  • rendering/TextAutosizer.h:
  • rendering/shapes/PolygonShape.cpp:

(WebCore::computeShapePaddingBounds):
(WebCore::computeShapeMarginBounds):

  • rendering/shapes/PolygonShape.h:

(WebCore::PolygonShape::PolygonShape):

  • rendering/shapes/RasterShape.cpp:

(WebCore::RasterShapeIntervals::computeShapeMarginIntervals):

  • rendering/shapes/RasterShape.h:

(WebCore::RasterShape::RasterShape):

  • rendering/shapes/Shape.cpp:

(WebCore::createInsetShape):
(WebCore::createRectangleShape):
(WebCore::createCircleShape):
(WebCore::createEllipseShape):
(WebCore::createPolygonShape):
(WebCore::Shape::createShape):
(WebCore::Shape::createRasterShape):
(WebCore::Shape::createLayoutBoxShape):

  • rendering/shapes/Shape.h:
  • rendering/shapes/ShapeInfo.h:

(WebCore::ShapeInfo::markShapeAsDirty):
(WebCore::ShapeInfo::isShapeDirty):

  • rendering/shapes/ShapeInsideInfo.h:
  • rendering/style/ContentData.h:
  • rendering/style/CounterDirectives.cpp:

(WebCore::clone):

  • rendering/style/CounterDirectives.h:
  • rendering/style/GridCoordinate.h:
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::addCachedPseudoStyle):
(WebCore::RenderStyle::accessCounterDirectives):
(WebCore::RenderStyle::accessAnimations):
(WebCore::RenderStyle::accessTransitions):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):

  • rendering/style/StyleRareNonInheritedData.h:
  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::RenderSVGResourceGradient::applyResource):

  • rendering/svg/RenderSVGResourceGradient.h:
  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::buildPattern):

  • rendering/svg/RenderSVGResourcePattern.h:
  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::updateShapeFromElement):

  • rendering/svg/RenderSVGShape.h:
  • rendering/svg/SVGResources.cpp:

(WebCore::SVGResources::setClipper):
(WebCore::SVGResources::setFilter):
(WebCore::SVGResources::setMarkerStart):
(WebCore::SVGResources::setMarkerMid):
(WebCore::SVGResources::setMarkerEnd):
(WebCore::SVGResources::setMasker):
(WebCore::SVGResources::setFill):
(WebCore::SVGResources::setStroke):

  • rendering/svg/SVGResources.h:
  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::addResourcesFromRenderer):
(WebCore::SVGResourcesCache::removeResourcesFromRenderer):

  • rendering/svg/SVGResourcesCache.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::initializeMeasurementWithTextRenderer):

  • rendering/svg/SVGTextMetricsBuilder.h:
1:38 AM Changeset in webkit [166488] by svillar@igalia.com
  • 8 edits in trunk/Source/WebCore

Replace DEPRECATED_DEFINE_STATIC_LOCAL by static NeverDestroyed<T> in loader
https://bugs.webkit.org/show_bug.cgi?id=130893

Reviewed by Darin Adler.

  • loader/ImageLoader.cpp:

(WebCore::beforeLoadEventSender):
(WebCore::loadEventSender):
(WebCore::errorEventSender):

  • loader/appcache/ApplicationCacheStorage.cpp:

(WebCore::cacheStorage):

  • loader/appcache/ApplicationCacheStorage.h:
  • loader/archive/ArchiveFactory.cpp:

(WebCore::archiveMIMETypes):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::brokenImage):

  • loader/cache/CachedRawResource.cpp:

(WebCore::shouldIgnoreHeaderForCacheReuse):

  • loader/cache/MemoryCache.cpp:

(WebCore::dummyCachedImageClient):

1:38 AM Changeset in webkit [166487] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r166480 - [GTK] [TextureMapper] Weird brightness with some videos with acceletared compositing
https://bugs.webkit.org/show_bug.cgi?id=130665

Reviewed by Martin Robinson.

When we uploaded a video texture to the mapper we were not
considering that some videos could be decoded into a format
without alpha component. Now we check if the video has alpha and
if it does not, we remove the alpha flag when retrieving the
texture from the pool. For this, the method to get the texture
from the pool was modified to receive the flags, that is mapped to
have alpha by default in order not to break any other existing
code.

Though we have a problem with AC in WTR and that makes it
currently not testable, no new tests are needed because once this
is fixed the current test set suffices to detect a possible
regression in this.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): Check
the video format and decide if the texture shall be pulled with
alpha support or not.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::acquireTextureFromPool): Use the flags
when resetting the texture.

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::BitmapTexture::Flag::None): Added with 0x00.
(WebCore::TextureMapper::acquireTextureFromPool): Added flag
parameter to set up the texture with the default for including
alpha channel.

1:35 AM Changeset in webkit [166486] by svillar@igalia.com
  • 11 edits in trunk/Source/WebCore

Replace DEPRECATED_DEFINE_STATIC_LOCAL by static NeverDestroyed<T> in css
https://bugs.webkit.org/show_bug.cgi?id=130409

Reviewed by Darin Adler.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::logUnimplementedPropertyID):

  • css/CSSDefaultStyleSheets.cpp:

(WebCore::screenEval):
(WebCore::printEval):

  • css/CSSParser.cpp:

(WebCore::strictCSSParserContext):

  • css/CSSPrimitiveValue.cpp:

(WebCore::cssTextCache):

  • css/CSSProperty.cpp:

(WebCore::borderDirections):

  • css/CSSStyleRule.cpp:

(WebCore::selectorTextCache):

  • css/CSSValuePool.cpp:

(WebCore::cssValuePool):

  • css/CSSValuePool.h:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyPageSize::getPageSizeFromName):
(WebCore::DeprecatedStyleBuilder::sharedStyleBuilder):

  • css/DeprecatedStyleBuilder.h:
1:21 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
1:20 AM Changeset in webkit [166485] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r166406 - [GTK] Geoclue2 providers won't work after reloading
https://bugs.webkit.org/show_bug.cgi?id=130898

Reviewed by Martin Robinson.

Don't reuse the Geoclue2 client proxy between different calls to
startPosition(), and create a new client proxy each time instead.

  • platform/geoclue/GeolocationProviderGeoclue2.cpp:

(GeolocationProviderGeoclue::startUpdating): Don't reuse the
client proxy, by always calling geoclue_manager_call_get_client().
(GeolocationProviderGeoclue::stopUpdating): Disconnect from the
'location-updated' signal and dispose the client proxy.

1:19 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
1:18 AM Changeset in webkit [166484] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.4/Source

Merge r166405 - [GTK] Too many redirects visiting www.globalforestwatch.org
https://bugs.webkit.org/show_bug.cgi?id=129681

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-03-28
Reviewed by Martin Robinson.

Source/WebCore:

  • platform/gtk/UserAgentGtk.cpp:

(WebCore::standardUserAgent): Append Safari version to UserAgent
string.

Source/WebKit/gtk:

  • webkit/webkitwebsettings.cpp:

(userAgentForURL): Change outdated comment.

1:07 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
1:05 AM Changeset in webkit [166483] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.4/Source/JavaScriptCore

Merge r163241 - 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):

12:21 AM Changeset in webkit [166482] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WTF

Use std::unique_ptr in WTF::CompressedVector, WTF::GenericCompressedData
https://bugs.webkit.org/show_bug.cgi?id=130737

Switch to using std::unique_ptr instead of OwnPtr and PassOwnPtr
for the CompressedVector and GenericCompressedData classes.

  • wtf/Compression.cpp:

(WTF::GenericCompressedData::create):

  • wtf/Compression.h:

(WTF::CompressedVector::create):
(WTF::CompressibleVector::decompressIfNecessary):

12:04 AM Changeset in webkit [166481] by rniwa@webkit.org
  • 2 edits in trunk/Websites/perf.webkit.org

Some CSS tweaks after r166477 and r166479,

  • public/index.html:

Mar 30, 2014:

11:56 PM WebKitGTK/2.4.x edited by calvaris@igalia.com
(diff)
11:55 PM WebKitGTK/2.4.x edited by calvaris@igalia.com
(diff)
11:39 PM Changeset in webkit [166480] by calvaris@igalia.com
  • 4 edits in trunk/Source/WebCore

[GTK] [TextureMapper] Weird brightness with some videos with acceletared compositing
https://bugs.webkit.org/show_bug.cgi?id=130665

Reviewed by Martin Robinson.

When we uploaded a video texture to the mapper we were not
considering that some videos could be decoded into a format
without alpha component. Now we check if the video has alpha and
if it does not, we remove the alpha flag when retrieving the
texture from the pool. For this, the method to get the texture
from the pool was modified to receive the flags, that is mapped to
have alpha by default in order not to break any other existing
code.

Though we have a problem with AC in WTR and that makes it
currently not testable, no new tests are needed because once this
is fixed the current test set suffices to detect a possible
regression in this.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): Check
the video format and decide if the texture shall be pulled with
alpha support or not.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::acquireTextureFromPool): Use the flags
when resetting the texture.

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::BitmapTexture::Flag::None): Added with 0x00.
(WebCore::TextureMapper::acquireTextureFromPool): Added flag
parameter to set up the texture with the default for including
alpha channel.

11:39 PM Changeset in webkit [166479] by rniwa@webkit.org
  • 3 edits in trunk/Websites/perf.webkit.org

WebKitPerfMonitor: Sometimes text inside panes overlap
https://bugs.webkit.org/show_bug.cgi?id=130956

Reviewed by Gyuyoung Kim.

Revamped the pane UI. Now build info uses table element instead of plane text with BRs. The computed status of
the latest result against baseline/target such as "3% until target" is now shown above the current value. This
reduces the total height of the pane and fits more information per screen capita on the dashboard.

  • public/index.html: Updated and added a bunch of CSS rules for the new look.

(.computeStatus): Don't append the build info here. The build info is constructed as a separate table now.
(.createSummaryRowMarkup): Use th instead of td for "Current", "Baseline", and "Target" in the summary table.
(.buildLabelWithLinks): Construct table rows instead of br separated lines of text. This streamlines the look
of the build info shown in a chart pane and a tooltip.
(Chart): Made .status a table.
(Chart.populate): Prepend status.text, which contains text such as "3% until target", into the summary rows
right above "Current" value, and populate .status with buildLabelWithLinks manually instead of status.text
now that status.text no longer contains it.
(Chart..showTooltipWithResults): Wrap buildLabelWithLinks with a table element.

  • public/js/helper-classes.js:

(TestBuild.formattedRevisions): Don't include repository names in labels since repository names are now added
by buildLabelWithLinks inside th elements. Also place spaces around '-' between two different OS X versions.
e.g. "OS X 10.8 - OS X 10.9" instead of "OS X 10.8-OS X 10.9".
(PerfTestRuns): Use "/s" for "runs/s" and "B" for "bytes" to make text shorter in .status and .summaryTable.
(PerfTestRuns..computeScalingFactorIfNeeded): Avoid placing a space between 'M' and a unit starting with a
capital letter; e.g. "MB" instead of "M B".

11:37 PM Changeset in webkit [166478] by gyuyoung.kim@samsung.com
  • 4 edits
    6 moves
    1 add in trunk/LayoutTests

Move test cases of navigator content utils in own directory
https://bugs.webkit.org/show_bug.cgi?id=130927

Reviewed by Ryosuke Niwa.

Add NavigatorContentUtils dir to fast/dom in order to manage the test cases well.

  • fast/dom/NavigatorContentUtils/is-protocol-handler-registered-expected.txt: Renamed from LayoutTests/fast/dom/is-protocol-handler-registered-expected.txt.
  • fast/dom/NavigatorContentUtils/is-protocol-handler-registered.html: Renamed from LayoutTests/fast/dom/is-protocol-handler-registered.html.
  • fast/dom/NavigatorContentUtils/register-protocol-handler-expected.txt: Renamed from LayoutTests/fast/dom/register-protocol-handler-expected.txt.
  • fast/dom/NavigatorContentUtils/register-protocol-handler.html: Renamed from LayoutTests/fast/dom/register-protocol-handler.html.
  • fast/dom/NavigatorContentUtils/unregister-protocol-handler-expected.txt: Renamed from LayoutTests/fast/dom/unregister-protocol-handler-expected.txt.
  • fast/dom/NavigatorContentUtils/unregister-protocol-handler.html: Renamed from LayoutTests/fast/dom/unregister-protocol-handler.html.
  • platform/efl-wk2/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
11:36 PM Changeset in webkit [166477] by rniwa@webkit.org
  • 3 edits in trunk/Websites/perf.webkit.org

WebKitPerfMonitor: Header and number-of-days slider takes up too much space
https://bugs.webkit.org/show_bug.cgi?id=130957

Reviewed by Gyuyoung Kim.

Moved the slider into the header. Also reduced the spacing between the header and platform names.
This reclaims 50px × width of the screen real estate.

  • public/common.css:

(#title): Reduced the space below the header from 20px to 10px.

  • public/index.html:

(#numberOfDaysPicker): Removed the rounded border around the number-of-days slider.
(#dashboard > tbody > tr > td): Added a 1.5em padding at the bottom.
(#dashboard > thead th): That allows us to remove the padding at the top here. This reduces the wasted screen
real estate between the header and the platform names.

11:22 PM Changeset in webkit [166476] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

11:19 PM Changeset in webkit [166475] by Lucas Forschler
  • 1 copy in tags/Safari-538.26

New Tag.

9:53 PM Changeset in webkit [166474] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Source/WebCore

Adopt range-based for loops to TextCheckerEnchant
https://bugs.webkit.org/show_bug.cgi?id=130714

Reviewed by Darin Adler.

  • platform/text/enchant/TextCheckerEnchant.cpp:

(WebCore::TextCheckerEnchant::ignoreWord):
(WebCore::TextCheckerEnchant::learnWord):
(WebCore::TextCheckerEnchant::checkSpellingOfWord):
(WebCore::TextCheckerEnchant::getGuessesForWord):
(WebCore::TextCheckerEnchant::updateSpellCheckingLanguages):
(WebCore::TextCheckerEnchant::loadedSpellCheckingLanguages):
(WebCore::TextCheckerEnchant::availableSpellCheckingLanguages):
(WebCore::TextCheckerEnchant::freeEnchantBrokerDictionaries):

9:37 PM Changeset in webkit [166473] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/ios

Tried to fix the iOS build.

  • Misc/WebGeolocationCoreLocationProvider.mm:

(-[WebGeolocationCoreLocationProvider start]):
(-[WebGeolocationCoreLocationProvider locationManager:didChangeAuthorizationStatus:]):

8:30 PM Changeset in webkit [166472] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION: compositing/columns/composited-rl-paginated-repaint.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=130953

  • platform/mac/TestExpectations: Marked as such.
8:22 PM Changeset in webkit [166471] by commit-queue@webkit.org
  • 1 edit
    2 deletes in trunk/LayoutTests

Unreviewed, rolling out r166467.
https://bugs.webkit.org/show_bug.cgi?id=130952

The test fails (Requested by ap_ on #webkit).

Reverted changeset:

"Web Inspector: Add a new layout test for better coverage of
accessibility "focused" in inspector-protocol
DOM.getAccessibilityPropertiesForNode"
https://bugs.webkit.org/show_bug.cgi?id=130196
http://trac.webkit.org/changeset/166467

7:37 PM Changeset in webkit [166470] by aestes@apple.com
  • 2 edits in trunk/Tools

Fix two failing layout tests on Mountain Lion after r166466.

  • TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm:

(-[DownloadDelegate _downloadDidStart:]):

5:33 PM Changeset in webkit [166469] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Second attempt to fix 32bits build after r166465

  • rendering/style/RenderStyle.h:

The compiler probably complain about the return value, that makes more sense.

5:13 PM Changeset in webkit [166468] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Attempt to fix 32bits build after r166465

  • rendering/style/RenderStyle.h:
3:59 PM Changeset in webkit [166467] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Web Inspector: Add a new layout test for better coverage of accessibility "focused" in inspector-protocol DOM.getAccessibilityPropertiesForNode
https://bugs.webkit.org/show_bug.cgi?id=130196

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-03-30
Reviewed by Timothy Hatcher.

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-focused-expected.txt: Added.
  • inspector-protocol/dom/getAccessibilityPropertiesForNode-focused.html: Added.
3:33 PM Changeset in webkit [166466] by aestes@apple.com
  • 17 edits in trunk

[Cocoa] Add an originatingWebView property to _WKDownload
https://bugs.webkit.org/show_bug.cgi?id=130945

Reviewed by Anders Carlsson.

Source/WebKit2:

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]): Passed self to WKView's initializer.

  • UIProcess/API/Cocoa/_WKDownload.h: Declared originatingWebView as a weak, readonly property.
  • UIProcess/API/Cocoa/_WKDownload.mm:

(-[_WKDownload originatingWebView]):
(-[_WKDownload setOriginatingWebView:]):

  • UIProcess/API/Cocoa/_WKDownloadInternal.h: Re-declared originatingWebView as readwrite so that

PageClientImpl can call setOriginatingWebView:. Removed some dead code.

  • UIProcess/API/mac/WKView.mm:

(-[WKView initWithFrame:context:configuration:webView:]): Updated to accept a webView parameter.
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): Passed nil for the webView parameter.

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/Cocoa/DownloadClient.mm:

(WebKit::DownloadClient::decideDestinationWithSuggestedFilename): Ensured allowOverwrite is initialized.

  • UIProcess/PageClient.h: Included handleDownloadRequest() on all platforms.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::receivedPolicyDecision): Ditto.
(WebKit::WebPageProxy::handleDownloadRequest): Ditto.

  • UIProcess/WebPageProxy.h: Ditto.
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::handleDownloadRequest): Called -[_WKDownload setOriginatingWebView:].

  • UIProcess/mac/PageClientImpl.h: Added a m_webView member variable.
  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::PageClientImpl): Asserted that m_webView is nil if WK API isn't enabled.
(WebKit::PageClientImpl::handleDownloadRequest): Called -[_WKDownload setOriginatingWebView:].

Tools:

  • TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm:

(-[DownloadDelegate _downloadDidStart:]):
(-[OriginatingWebViewDownloadDelegate initWithWebView:]):
(-[OriginatingWebViewDownloadDelegate _downloadDidStart:]):
(TEST):

1:32 PM Changeset in webkit [166465] by benjamin@webkit.org
  • 7 edits in trunk/Source/WebCore

Make RenderStyle's non inherited flags more JSC friendly
https://bugs.webkit.org/show_bug.cgi?id=130939

Reviewed by Andreas Kling.

Make RenderStyle::NonInheritedFlags accessible to the JIT:
-Make the struct public to give access to the offset.
-Move away from a bit field to static offsets we can use

with the MacroAssembler.

-Reorder the field to simplify bit access of the flags we need.

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyVerticalAlign::createHandler):
(WebCore::ApplyPropertyDisplay::applyInitialValue):
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::RenderStyle):
(WebCore::RenderStyle::copyNonInheritedFrom):
(WebCore::RenderStyle::hashForTextAutosizing):
(WebCore::RenderStyle::equalForTextAutosizing):
(WebCore::RenderStyle::changeRequiresLayout):

  • rendering/style/RenderStyle.h:

(WebCore::RenderStyle::hasAnyPublicPseudoStyles):
(WebCore::RenderStyle::hasPseudoStyle):
(WebCore::RenderStyle::setHasPseudoStyle):

  • rendering/style/StyleMultiColData.cpp:

(WebCore::StyleMultiColData::StyleMultiColData):

  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):

12:50 PM Changeset in webkit [166464] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Fix build of HTMLConverter.mm after r166454

Fixes the following build failures:

WebCore/editing/cocoa/HTMLConverter.mm:1507:13: error: value of type 'WebCore::Element' is not contextually convertible to 'bool'

if (element)


WebCore/editing/cocoa/HTMLConverter.mm:1508:49: error: no matching function for call to 'core'

_caches->floatPropertyValueForNode(*core(element), CSSPropertyVerticalAlign, verticalAlign);

~

In file included from WebCore/editing/cocoa/HTMLConverter.mm:41:
In file included from WebCore/page/Frame.h:42:
In file included from WebCore/editing/VisibleSelection.h:30:
In file included from WebCore/editing/VisiblePosition.h:30:
In file included from WebCore/dom/Position.h:31:
WebCore/editing/TextAffinity.h:54:27: note: candidate function not viable: no known conversion from 'WebCore::Element' to 'NSSelectionAffinity' (aka '_NSSelectionAffinity') for 1st argument
inline WebCore::EAffinity core(NSSelectionAffinity affinity)


WebCore/editing/cocoa/HTMLConverter.mm:1509:81: error: reference to non-static member function must be called; did you mean to call it with no arguments?

attachment.get().bounds = CGRectMake(0, (verticalAlign / 100) * element.clientHeight, element.clientWidth, element.clientHeight);

~

()

WebCore/editing/cocoa/HTMLConverter.mm:1509:103: error: reference to non-static member function must be called; did you mean to call it with no arguments?

attachment.get().bounds = CGRectMake(0, (verticalAlign / 100) * element.clientHeight, element.clientWidth, element.clientHeight);


()

WebCore/editing/cocoa/HTMLConverter.mm:1509:124: error: reference to non-static member function must be called; did you mean to call it with no arguments?

attachment.get().bounds = CGRectMake(0, (verticalAlign / 100) * element.clientHeight, element.clientWidth, element.clientHeight);

~

()

5 errors generated.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::_addAttachmentForElement):

11:43 AM Changeset in webkit [166463] by fpizlo@apple.com
  • 16 edits in trunk

Land the stackmap register liveness glue with the uses of the liveness disabled
https://bugs.webkit.org/show_bug.cgi?id=130924

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

Add the liveness and fix other bugs I found.

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor):

  • ftl/FTLCompile.cpp:

(JSC::FTL::usedRegistersFor):
(JSC::FTL::fixFunctionBasedOnStackMaps):

  • ftl/FTLSlowPathCall.cpp:
  • ftl/FTLSlowPathCallKey.cpp:

(JSC::FTL::SlowPathCallKey::dump):

  • ftl/FTLSlowPathCallKey.h:

(JSC::FTL::SlowPathCallKey::SlowPathCallKey):
(JSC::FTL::SlowPathCallKey::argumentRegisters):
(JSC::FTL::SlowPathCallKey::withCallTarget):

  • ftl/FTLStackMaps.cpp:

(JSC::FTL::StackMaps::Record::locationSet):
(JSC::FTL::StackMaps::Record::liveOutsSet):
(JSC::FTL::StackMaps::Record::usedRegisterSet):

  • ftl/FTLStackMaps.h:
  • ftl/FTLThunks.cpp:

(JSC::FTL::registerClobberCheck):
(JSC::FTL::slowPathCallThunkGenerator):

  • jit/RegisterSet.cpp:

(JSC::RegisterSet::stackRegisters):
(JSC::RegisterSet::reservedHardwareRegisters):
(JSC::RegisterSet::runtimeRegisters):
(JSC::RegisterSet::specialRegisters):
(JSC::RegisterSet::dump):

  • jit/RegisterSet.h:

(JSC::RegisterSet::RegisterSet):
(JSC::RegisterSet::setAny):
(JSC::RegisterSet::setMany):

  • jit/Repatch.cpp:

(JSC::tryCacheGetByID):
(JSC::tryCachePutByID):
(JSC::tryRepatchIn):

  • runtime/Options.cpp:

(JSC::recomputeDependentOptions):

  • runtime/Options.h:

Tools:

Reviewed by Oliver Hunt.

  • Scripts/run-jsc-stress-tests:
9:53 AM Changeset in webkit [166462] by mark.lam@apple.com
  • 2 edits in trunk/PerformanceTests

LongSpider 3d-morph result check is inappropriate.
<https://webkit.org/b/130928>

Reviewed by Filip Pizlo.

The LongSpider 3d-morph component expected result check is incorrect.
The existing test checks if the leading digit of a sum starts with "-1".
However, it turned out that the expected sum is in the order of
-1.8735013540549517e-16 (i.e. very close to 0). With small errors in
the terms of the sum adding up, it is very easy for the resultant sum
to fluctuate. There is no guarantee that the resultant sum's most
significant digit will start with -1 either.

The fix is to do a tolerance check on all the terms of the sum as well
as the total sum value instead. The tolerance should be more lenient
for the sum which accumulates error from the individual terms, then for
individual terms.

  • LongSpider/3d-morph.js:

(expect):

3:48 AM Changeset in webkit [166461] by akling@apple.com
  • 11 edits in trunk/Source/WebCore

Make NodeList and HTMLCollection caching helpers use PassRef.
<https://webkit.org/b/130943>

Tweak the helpers in NodeListsNodeData to return PassRef instead of
PassRefPtr. This knocks 2 branches off of some pretty hot code on
Dromaeo/dom-query.

Reviewed by Antti Koivisto.

  • dom/ChildNodeList.h:
  • dom/ClassNodeList.h:
  • dom/NameNodeList.h:
  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::ensureChildNodeList):
(WebCore::NodeListsNodeData::ensureEmptyChildNodeList):
(WebCore::NodeListsNodeData::addCacheWithAtomicName):
(WebCore::NodeListsNodeData::addCacheWithName):
(WebCore::NodeListsNodeData::addCacheWithQualifiedName):
(WebCore::NodeListsNodeData::addCachedCollection):

  • dom/TagNodeList.h:
  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::create):

  • html/HTMLCollection.h:
  • html/HTMLFormControlsCollection.cpp:

(WebCore::HTMLFormControlsCollection::create):

  • html/HTMLFormControlsCollection.h:
  • html/RadioNodeList.h:
1:32 AM Changeset in webkit [166460] by Antti Koivisto
  • 8 edits in trunk/Source/WebCore

LiveNodeLists should use ElementDescendantIterator
https://bugs.webkit.org/show_bug.cgi?id=130931

Reviewed by Andreas Kling.

Make LiveNodeList traversal use the common DOM tree iterator.

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::ChildNodeList):
(WebCore::ChildNodeList::collectionBegin):
(WebCore::ChildNodeList::collectionTraverseForward):
(WebCore::ChildNodeList::collectionTraverseBackward):
(WebCore::ChildNodeList::invalidateCache):
(WebCore::ChildNodeList::collectionFirst): Deleted.

Iterator for ChildNodeList is still just Node*.

  • dom/ChildNodeList.h:
  • dom/CollectionIndexCache.h:

(WebCore::CollectionIndexCache::hasValidCache):
(WebCore::Iterator>::CollectionIndexCache):
(WebCore::Iterator>::nodeCount):
(WebCore::Iterator>::computeNodeCountUpdatingListCache):
(WebCore::Iterator>::traverseBackwardTo):
(WebCore::Iterator>::traverseForwardTo):
(WebCore::Iterator>::nodeAt):
(WebCore::Iterator>::invalidate):

Make CollectionIndexCache iterator based instead of using NodeType*. The iterator type may
still be a Node* though.

(WebCore::NodeType>::CollectionIndexCache): Deleted.
(WebCore::NodeType>::nodeCount): Deleted.
(WebCore::NodeType>::computeNodeCountUpdatingListCache): Deleted.
(WebCore::NodeType>::nodeBeforeCached): Deleted.
(WebCore::NodeType>::nodeAfterCached): Deleted.
(WebCore::NodeType>::nodeAt): Deleted.
(WebCore::NodeType>::invalidate): Deleted.

  • dom/ElementDescendantIterator.h:

(WebCore::ElementDescendantIterator::operator--):

Add backward iteration support.

(WebCore::ElementDescendantIteratorAdapter::last):
(WebCore::ElementDescendantConstIteratorAdapter::last):

Add a way to get the last item.
Provide std::iterator_traits so we can extract the type.

  • dom/LiveNodeList.h:

(WebCore::CachedLiveNodeList::collectionEnd):
(WebCore::CachedLiveNodeList<NodeListType>::CachedLiveNodeList):
(WebCore::CachedLiveNodeList<NodeListType>::~CachedLiveNodeList):
(WebCore::CachedLiveNodeList<NodeListType>::collectionBegin):
(WebCore::CachedLiveNodeList<NodeListType>::collectionLast):
(WebCore::CachedLiveNodeList<NodeListType>::collectionTraverseForward):
(WebCore::CachedLiveNodeList<NodeListType>::collectionTraverseBackward):
(WebCore::CachedLiveNodeList<NodeListType>::invalidateCache):
(WebCore::CachedLiveNodeList<NodeListType>::collectionFirst): Deleted.

Make LiveNodeList traversal use ElementDescendantIterator.

(WebCore::nextMatchingElement): Deleted.
(WebCore::previousMatchingElement): Deleted.

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::~HTMLCollection):
(WebCore::HTMLCollection::collectionBegin):
(WebCore::HTMLCollection::collectionTraverseForward):
(WebCore::HTMLCollection::collectionTraverseBackward):
(WebCore::HTMLCollection::invalidateCache):
(WebCore::HTMLCollection::collectionFirst): Deleted.

  • html/HTMLCollection.h:

(WebCore::HTMLCollection::collectionEnd):

HTMLCollection still uses Element* as iterator for now.

Note: See TracTimeline for information about the timeline view.