⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



May 24, 2014:

8:50 PM Changeset in webkit [169316] by akling@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Object.prototype.toString() should use cached strings for null/undefined.
<https://webkit.org/b/133261>

Normally, when calling Object.prototype.toString() on a regular object,
we'd cache the result of the stringification on the object's structure,
making repeated calls fast.

For null and undefined, we were not as smart. We'd instead construct a
new string with either "[object Null]" or "[object Undefined]" each time.

This was exposed by Dromaeo's JS library tests, where some prototype.js
subtests generate millions of strings this way.

This patch adds two VM-permanent cached strings to the SmallStrings.
Looks like ~10% speed-up on Dromaeo/jslib-traverse-prototype.html

Reviewed by Darin Adler.

  • runtime/ObjectPrototype.cpp:

(JSC::objectProtoFuncToString):

  • runtime/SmallStrings.cpp:

(JSC::SmallStrings::SmallStrings):
(JSC::SmallStrings::initializeCommonStrings):
(JSC::SmallStrings::visitStrongReferences):

  • runtime/SmallStrings.h:

(JSC::SmallStrings::nullObjectString):
(JSC::SmallStrings::undefinedObjectString):

8:30 PM Changeset in webkit [169315] by jhoneycutt@apple.com
  • 2 edits in trunk/Source/WebKit2

Potential null dereference in
WebFrameLoaderClient::dispatchDidFailProvisionalLoad()
<https://bugs.webkit.org/show_bug.cgi?id=133193>

WebFrameLoaderClient::dispatchDidFailProvisionalLoad() calls the
InjectedBundleLoaderClient's didFailProvisionalLoadWithErrorForFrame()
before sending a message to the UI process that a provisional load has
failed. It's possible for the provisional document loader to become
null while calling into the InjectedBundleLoaderClient (as is the case
with the WebKitTestRunner's injected bundle), leading to a null
dereference when trying to send the DidFailProvisionalLoadForFrame
message.

Reviewed by Darin Adler.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
Get the navigation ID before calling into the injected bundle.

8:12 PM Changeset in webkit [169314] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Remove one of the CSSProperty constructor
https://bugs.webkit.org/show_bug.cgi?id=131094

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-05-24
Reviewed by Darin Adler.

Remove one of the CSSProperty constructor, because it is obsolete.

  • css/CSSProperty.h:

(WebCore::CSSProperty::CSSProperty): Deleted.

  • css/StyleProperties.h:

(WebCore::StyleProperties::PropertyReference::toCSSProperty):

1:40 PM Changeset in webkit [169313] by Simon Fraser
  • 6 edits in trunk/Source

Rename ScrollingTreeScrollingNode's m_scrollPosition to make it clear that it's the value committed from the state tree
https://bugs.webkit.org/show_bug.cgi?id=133254

Reviewed by Tim Horton.

Source/WebCore:

Make ScrollingTreeScrollingNode::scrollPosition() pure virtual, and rename
the member variable and associated getter to make it clear that they relate
to the last committed scroll position.

  • page/scrolling/ScrollingTreeScrollingNode.cpp:

(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):

  • page/scrolling/ScrollingTreeScrollingNode.h:

(WebCore::ScrollingTreeScrollingNode::lastCommittedScrollPosition):
(WebCore::ScrollingTreeScrollingNode::scrollPosition): Deleted.

Source/WebKit2:

Override scrollPosition() on ScrollingTreeOverflowScrollingNodeIOS.

  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:

(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollPosition):

1:40 PM Changeset in webkit [169312] by Simon Fraser
  • 8 edits in trunk/Source/WebCore

Share some more ScrollingTreeScrollingNode code
https://bugs.webkit.org/show_bug.cgi?id=133248

Reviewed by Sam Weinig.

Push scrollBy(), scrollByWithoutContentEdgeConstraints() and setScrollPosition()
down to ScrollingTreeFrameScrollingNode.

This requires that scrollPosition() return the right thing for each class, so make
it virtual. Future patches will reduce the confusion between the committed scroll
position and the one derived from layers.

  • page/scrolling/ScrollingTreeFrameScrollingNode.cpp:

(WebCore::ScrollingTreeFrameScrollingNode::scrollBy):
(WebCore::ScrollingTreeFrameScrollingNode::scrollByWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeFrameScrollingNode::setScrollPosition):

  • page/scrolling/ScrollingTreeFrameScrollingNode.h:
  • page/scrolling/ScrollingTreeScrollingNode.h:

(WebCore::ScrollingTreeScrollingNode::scrollPosition):

  • page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
  • page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:

(WebCore::ScrollingTreeFrameScrollingNodeIOS::setScrollPosition): Deleted.
(WebCore::ScrollingTreeFrameScrollingNodeIOS::scrollBy): Deleted.
(WebCore::ScrollingTreeFrameScrollingNodeIOS::scrollByWithoutContentEdgeConstraints): Deleted.

  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:

(WebCore::ScrollingTreeFrameScrollingNodeMac::updateBeforeChildren):
(WebCore::ScrollingTreeFrameScrollingNodeMac::immediateScrollBy):
(WebCore::ScrollingTreeFrameScrollingNodeMac::immediateScrollByWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeFrameScrollingNodeMac::scrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollPosition):
(WebCore::ScrollingTreeFrameScrollingNodeMac::scrollBy): Deleted.
(WebCore::ScrollingTreeFrameScrollingNodeMac::scrollByWithoutContentEdgeConstraints): Deleted.

1:40 PM Changeset in webkit [169311] by Simon Fraser
  • 13 edits in trunk/LayoutTests

Scrolling tests should not try to dump pixels
https://bugs.webkit.org/show_bug.cgi?id=133245

Reviewed by Tim Horton.

dumpAsText(true) -> dumpAsText().

  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler.html:
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select.html:
12:30 PM Changeset in webkit [169310] by Chris Fleizach
  • 23 edits in trunk/Source

AX: fix coordinate mapping for iOS accessibility
https://bugs.webkit.org/show_bug.cgi?id=133188

Reviewed by Sam Weinig.

Source/WebCore:
Make WebCore aware of the accessibility point/rect conversion methods.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
(-[WebAccessibilityObjectWrapper convertRectToScreenSpace:]):

  • loader/EmptyClients.h:
  • page/Chrome.cpp:

(WebCore::Chrome::accessibilityScreenToRootView):
(WebCore::Chrome::rootViewToAccessibilityScreen):

  • page/Chrome.h:
  • page/ChromeClient.h:
  • platform/HostWindow.h:

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::accessibilityScreenToRootView):
(WebChromeClient::rootViewToAccessibilityScreen):

Source/WebKit2:
Add in accessibility conversion methods that will check if the methods are present
(if accessibility is not on, they won't be)
and use those to convert points into the right coordinate space that VoiceOver is expecting.

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

(WebKit::WebPageProxy::accessibilityScreenToRootView):
(WebKit::WebPageProxy::rootViewToAccessibilityScreen):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::accessibilityScreenToRootView):
(WebKit::PageClientImpl::rootViewToAccessibilityScreen):

  • UIProcess/mac/PageClientImpl.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::accessibilityScreenToRootView):
(WebKit::WebChromeClient::rootViewToAccessibilityScreen):

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:

(-[WKAccessibilityWebPageObject accessibilityHitTest:]):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::accessibilityScreenToRootView):
(WebKit::WebPage::rootViewToAccessibilityScreen):

  • WebProcess/WebPage/WebPage.h:
7:50 AM Changeset in webkit [169309] by Alan Bujtas
  • 4 edits
    2 adds in trunk

Subpixel rendering: Non-compositing transforms with subpixel coordinates paint to wrong position.
https://bugs.webkit.org/show_bug.cgi?id=133184
<rdar://problem/16745606>

Reviewed by Simon Fraser.

Snapping relative negative coordinate values should produce the same position as if they were
positive absolute coordinates.
When a child box gets positioned off of its containers towards top/left, its relative coordinates
become negative. Pixel snapping those negative values should produce the same
final painting position as if the child box was fixed positioned with positive coordinates.
Since halfway values always round away from zero, negative and positive halfway values
produce opposite rounding direction.
This patch ensures that negative halfway values round to the direction as if they were positive.

Source/WebCore:
Test: fast/layers/hidpi-floor-negative-coordinate-values-to-maintain-rounding-direction.html

  • platform/LayoutUnit.h:

(WebCore::roundToDevicePixel):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintLayerByApplyingTransform):

LayoutTests:

  • fast/layers/hidpi-floor-negative-coordinate-values-to-maintain-rounding-direction-expected.html: Added.
  • fast/layers/hidpi-floor-negative-coordinate-values-to-maintain-rounding-direction.html: Added.
4:49 AM Changeset in webkit [169308] by fred.wang@free.fr
  • 3 edits in trunk/LayoutTests

Update GTK references for some tests after bug 130322.
https://bugs.webkit.org/show_bug.cgi?id=130322

Unreviewed gardening.

  • platform/gtk/mathml/opentype/vertical-LatinModern-expected.txt:
  • platform/gtk/mathml/presentation/mo-stretch-expected.txt:
4:30 AM Changeset in webkit [169307] by fred.wang@free.fr
  • 2 edits in trunk/LayoutTests

Mark some opentype MATH tests failing due to bad references.
https://bugs.webkit.org/show_bug.cgi?id=130322

Unreviewed gardening.

  • platform/mac/TestExpectations:
12:17 AM Changeset in webkit [169306] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebKit2

REGRESSION(r165841): Messages sent before the child process is launched are never sent after r165841
https://bugs.webkit.org/show_bug.cgi?id=131675

Reviewed by Anders Carlsson.

Since r165841 the connection is opened after the pending messages
are sent, because connectionWillOpen might send messages that we
want to happen after the ones already pending. The problem is that
Connection::canSendOutgoingMessages() returns false when
connection hasn't been opened. We should ensure no messages are
sent by connectionWillOpen.

  • Shared/ChildProcessProxy.cpp:

(WebKit::ChildProcessProxy::didFinishLaunching): Open the
connection before sending pending messages.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::connectionWillOpen): Do not call
VisitedLinkProvider::addProcess() here because it tries to send a
message to the web process, but the connection hasn't be opened yet.
(WebKit::WebPageProxy::processDidFinishLaunching): Call
VisitedLinkProvider::addProcess() here instead.

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

(WebKit::WebProcessProxy::didFinishLaunching): Call
WebPageProxy::processDidFinishLaunching() for every web page.

May 23, 2014:

9:56 PM Changeset in webkit [169305] by fred.wang@free.fr
  • 10 edits
    30 adds in trunk

Use size variants and glyph assembly from the MATH data.
https://bugs.webkit.org/show_bug.cgi?id=130322

Reviewed by Chris Fleizach.

Source/WebCore:
This patch modifies the RenderMathMLOperator code to use the MATH table
when one is provided in the current font on the <math> tag. More
precisely, the MathVariants table is used to draw a size variant or
a glyph assembly. The displaystyle attribute is not supported yet, so
for now large operators are always assumed to be in display style. The
MATH support does not work well with all platforms+fonts, so at the
moment the default font-family on the <math> is not changed.

Tests: mathml/opentype/large-operators-LatinModern.html

mathml/opentype/opentype-stretchy.html
mathml/opentype/vertical-LatinModern.html

  • css/mathml.css: We only specify the default font-family on the math root, so that people can easily style the mathematics.

For now, old fonts without the MATH table are still used as the default.
(math):
(math, mfenced > *): Deleted.
(mo, mfenced): Deleted.

  • platform/graphics/SimpleFontData.cpp: don't return the math data if the font is loading.

(WebCore::SimpleFontData::mathData):

  • platform/graphics/opentype/OpenTypeMathData.cpp: update #ifdef so that disabling ENABLE_OPENTYPE_MATH won't lead to errors with unused parameters.

(WebCore::OpenTypeMathData::OpenTypeMathData):
(WebCore::OpenTypeMathData::getMathConstant):
(WebCore::OpenTypeMathData::getItalicCorrection):
(WebCore::OpenTypeMathData::getMathVariants):

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::boundsForGlyph):
(WebCore::RenderMathMLOperator::heightForGlyph):
(WebCore::RenderMathMLOperator::advanceForGlyph):
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths): We handle preferred width of size variants.
(WebCore::RenderMathMLOperator::shouldAllowStretching): This function now only returns whether the operator will stretch and no longer has side effect.
(WebCore::RenderMathMLOperator::getGlyphAssemblyFallBack): We add a function to convert from the MathVariant table data to the format supported by RenderMathMLOperator.
(WebCore::RenderMathMLOperator::getDisplayStyleLargeOperator): We add a function to get the glyph that will be used for large operators in display style.
(WebCore::RenderMathMLOperator::findStretchyData): We make this function handle size variants.
(WebCore::RenderMathMLOperator::updateStyle): We handle size variants.
(WebCore::RenderMathMLOperator::paint): We handle size variants.

  • rendering/mathml/RenderMathMLOperator.h:

LayoutTests:
This adds some pixel tests for large operators and vertical stretchy operators.

  • mathml/opentype/LICENSE-LatinModern.txt: Added.
  • mathml/opentype/large-operators-LatinModern.html: Added.
  • mathml/opentype/latinmodern-math.woff: Added.
  • mathml/opentype/opentype-stretchy.html: Added.
  • mathml/opentype/stretchy.woff: Added.
  • mathml/opentype/vertical-LatinModern.html: Added.
  • platform/efl/mathml/opentype/large-operators-LatinModern-expected.png: Added.
  • platform/efl/mathml/opentype/large-operators-LatinModern-expected.txt: Added.
  • platform/efl/mathml/opentype/opentype-stretchy-expected.png: Added.
  • platform/efl/mathml/opentype/opentype-stretchy-expected.txt: Added.
  • platform/efl/mathml/opentype/vertical-LatinModern-expected.png: Added.
  • platform/efl/mathml/opentype/vertical-LatinModern-expected.txt: Added.
  • platform/gtk/mathml/opentype/large-operators-LatinModern-expected.png: Added.
  • platform/gtk/mathml/opentype/large-operators-LatinModern-expected.txt: Added.
  • platform/gtk/mathml/opentype/opentype-stretchy-expected.png: Added.
  • platform/gtk/mathml/opentype/opentype-stretchy-expected.txt: Added.
  • platform/gtk/mathml/opentype/vertical-LatinModern-expected.png: Added.
  • platform/gtk/mathml/opentype/vertical-LatinModern-expected.txt: Added.
  • platform/gtk/mathml/presentation/mo-stretch-expected.png: update reference due to change in mathml.css
  • platform/gtk/mathml/presentation/mo-stretch-expected.txt: ditto
  • platform/mac/mathml/opentype/large-operators-LatinModern-expected.txt: Added.
  • platform/mac/mathml/opentype/opentype-stretchy-expected.txt: Added.
  • platform/mac/mathml/opentype/vertical-LatinModern-expected.txt: Added.
  • platform/mac-wk2/mathml/opentype/large-operators-LatinModern-expected.txt: Added.
  • platform/mac-wk2/mathml/opentype/opentype-stretchy-expected.txt: Added.
  • platform/mac-wk2/mathml/opentype/vertical-LatinModern-expected.txt: Added.
  • platform/win/TestExpectations: Mark the OpenType MATH tests as failing
9:35 PM Changeset in webkit [169304] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

REGRESSION: Rubberbanding out jumps to top left corner on google.com
https://bugs.webkit.org/show_bug.cgi?id=133253
<rdar://problem/17025664>

Patch by Ian Henderson <ianh@apple.com> on 2014-05-23
Reviewed by Benjamin Poulain.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView scrollViewWillEndDragging:withVelocity:targetContentOffset:]):
Avoid deceleration during zooming to work around a UIKit bug.

9:31 PM Changeset in webkit [169303] by matthew_hanson@apple.com
  • 5 edits in branches/safari-538.34-branch/Source

Versioning.

9:25 PM Changeset in webkit [169302] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebKit2

[iOS][WK2] Avoid updating the view from the viewport configuration unnecessarily
https://bugs.webkit.org/show_bug.cgi?id=133255
<rdar://problem/16890926>

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

All the updates were mostly harmless since they are pretty cheap, but they can be
very annoying for debugging.

This patch skips viewportUpdates in the trivial cases.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _setMinimumLayoutSizeOverride:]):
(-[WKWebView _setMinimumLayoutSizeOverrideForMinimalUI:]):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::mainFrameDidLayout):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::viewportPropertiesDidChange):

9:07 PM Changeset in webkit [169301] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-538.34.48

Create Safari-538.34.48 tag.

8:45 PM Changeset in webkit [169300] by benjamin@webkit.org
  • 8 edits in trunk/Source/WebKit2

[iOS][WK2] The page scale factor randomly resets to initial scale when editing
https://bugs.webkit.org/show_bug.cgi?id=133244

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-23
Reviewed by Enrica Casucci.

We were never telling the WebProcess that zoom is used triggered. As a result, the ViewportConfiguration was free
to reset the scale whenever it felt like it. The fix is to call willStartUserTriggeredZoom before changing the scale.

This patch also split _willStartUserTriggeredScrollingOrZooming from willStartUserTriggeredZoom
and rename it to willStartPanOrPinchGesture. This is just a tiny cleanup since the only thing left in _willStartUserTriggeredScrollingOrZooming
was gesture related.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _zoomToFocusRect:WebCore::selectionRect:WebCore::fontSize:minimumScale:maximumScale:allowScaling:forceScroll:]):
(-[WKWebView scrollViewWillBeginZooming:withView:]):
(-[WKWebView scrollViewWillBeginDragging:]):

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView scrollViewWillBeginDragging:]):

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

(-[WKContentView willStartUserTriggeredZoom]):
(-[WKContentView willStartUserTriggeredScroll]): Deleted.

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

(-[WKContentView willStartPanOrPinchGesture]):
(-[WKContentView _willStartUserTriggeredScrollingOrZooming]): Deleted.

7:17 PM Changeset in webkit [169299] by timothy_horton@apple.com
  • 22 edits
    9 adds in trunk/Source

REGRESSION (iOS WebKit2): requestAnimationFrame fires more than once between layer tree commits
https://bugs.webkit.org/show_bug.cgi?id=132794
<rdar://problem/16877909>

Reviewed by Simon Fraser.

Virtualize DisplayRefreshMonitor so that WebKit2 can implement its own DisplayRefreshMonitor for UI-side compositing views.
This allows the synchronization of requestAnimationFrame callbacks with UI-side compositing painting.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • page/ChromeClient.h:

(WebCore::ChromeClient::graphicsLayerFactory):
(WebCore::ChromeClient::createDisplayRefreshMonitor):

  • platform/graphics/DisplayRefreshMonitorFactory.h: Added.
  • platform/graphics/GraphicsLayerUpdater.cpp:

(WebCore::GraphicsLayerUpdater::createDisplayRefreshMonitor):

  • platform/graphics/GraphicsLayerUpdater.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::createDisplayRefreshMonitor):

  • rendering/RenderLayerCompositor.h:

Give the ChromeClient a chance to provide us with a custom DisplayRefreshMonitor.
If it does not, we'll fall back to making a DisplayRefreshMonitorMac or
DisplayRefreshMonitorIOS depending on the platform.

  • dom/ScriptedAnimationController.cpp:
  • dom/ScriptedAnimationController.h:
  • platform/graphics/DisplayRefreshMonitor.cpp:
  • platform/graphics/DisplayRefreshMonitor.h:
  • platform/graphics/DisplayRefreshMonitorClient.cpp: Added.
  • platform/graphics/DisplayRefreshMonitorClient.h: Added.
  • platform/graphics/DisplayRefreshMonitorManager.cpp: Added.
  • platform/graphics/DisplayRefreshMonitorManager.h: Added.

Split DisplayRefreshMonitor.cpp into one file per class.
Use references in a few places.
Remove some useless comments.

  • platform/graphics/DisplayRefreshMonitor.cpp:

(WebCore::DisplayRefreshMonitor::displayDidRefresh):
Use takeAny() and remove a FIXME about it not existing.

  • platform/graphics/DisplayRefreshMonitorClient.cpp: Added.

(WebCore::DisplayRefreshMonitorClient::fireDisplayRefreshIfNeeded):
Use an early return instead of having the whole function body in an if().

  • platform/graphics/ios/DisplayRefreshMonitorIOS.h: Added.
  • platform/graphics/ios/DisplayRefreshMonitorIOS.mm:
  • platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
  • platform/graphics/mac/DisplayRefreshMonitorMac.h: Added.

Virtualize DisplayRefreshMonitorIOS and DisplayRefreshMonitorMac,
and move things specific to each of them out of DisplayRefreshMonitor itself.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createDisplayRefreshMonitor):

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::graphicsLayerFactory):
(WebKit::DrawingArea::createDisplayRefreshMonitor):
Plumb the DisplayRefreshMonitor request through to the DrawingArea.
RemoteLayerTreeDrawingArea will implement and return a RemoteLayerTreeDisplayRefreshMonitor.

  • WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h: Added.

(WebKit::RemoteLayerTreeDisplayRefreshMonitor::create):

  • WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm: Added.

(WebKit::RemoteLayerTreeDisplayRefreshMonitor::RemoteLayerTreeDisplayRefreshMonitor):
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::~RemoteLayerTreeDisplayRefreshMonitor):
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::requestRefreshCallback):
When requesting a display refresh callback, schedule a layer commit.
It may end up being empty, but will still call us back with a didUpdate,
upon which we'll fire the callback.

(WebKit::RemoteLayerTreeDisplayRefreshMonitor::didUpdateLayers):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::createDisplayRefreshMonitor):
(WebKit::RemoteLayerTreeDrawingArea::willDestroyDisplayRefreshMonitor):
Keep track of the set of DisplayRefreshMonitors.

(WebKit::RemoteLayerTreeDrawingArea::didUpdate):
Fire requestAnimationFrame callbacks once the UI process commits the new layer tree.

7:11 PM Changeset in webkit [169298] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

CSS JIT: Apply backtracking optimization to adjacent backtracking
https://bugs.webkit.org/show_bug.cgi?id=132951

Patch by Yusuke Suzuki <Yusuke Suzuki> on 2014-05-23
Reviewed by Benjamin Poulain.

Apply the backtracking optimization to the adjacent backtracking.
This optimization is already done for the descendant backtracking.
We apply this to the adjacent backtracking similarly.

Source/WebCore:
Test: fast/selectors/backtracking-adjacent-optimized.html

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::solveAdjacentBacktrackingActionForDirectAdjacent):
(WebCore::SelectorCompiler::solveBacktrackingAction):
(WebCore::SelectorCompiler::computeBacktrackingStartOffsetInChain):
(WebCore::SelectorCompiler::computeBacktrackingHeightFromDescendant):
(WebCore::SelectorCompiler::computeBacktrackingWidthFromIndirectAdjacent):
(WebCore::SelectorCompiler::SelectorCodeGenerator::computeBacktrackingInformation):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateIndirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::linkFailures):
(WebCore::SelectorCompiler::computeBacktrackingStartHeightFromDescendant): Deleted.

LayoutTests:

  • fast/selectors/backtracking-adjacent-optimized-expected.txt: Added.
  • fast/selectors/backtracking-adjacent-optimized.html: Added.
6:06 PM Changeset in webkit [169297] by achristensen@apple.com
  • 5 edits in trunk/Source/WebCore

Make CSS JIT run on ARM64.
https://bugs.webkit.org/show_bug.cgi?id=133156

Reviewed by Benjamin Poulain.

  • cssjit/FunctionCall.h:

(WebCore::FunctionCall::saveAllocatedRegisters):
(WebCore::FunctionCall::restoreAllocatedRegisters):
Use StackAllocator's new push and pop functions to push and pop a vector instead of iterating it.

  • cssjit/RegisterAllocator.h:

(WebCore::RegisterAllocator::reserveCalleeSavedRegisters):
(WebCore::RegisterAllocator::restoreCalleeSavedRegisters):
Return a vector of registers to allocate instead of doing the allocation to make the RegisterAllocator
not need to know about the StackAllocator and to use the new vector push and pop functions.
(WebCore::RegisterAllocator::~RegisterAllocator):
Store RegisterIDs instead of StackReferences to avoid needing to know about the stack.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::compile):
Removed the requirement for assert to be disabled to print disassembly when debugging css jit.
(WebCore::SelectorCompiler::SelectorCodeGenerator::generatePrologue):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateEpilogue):
Added to correctly push the link register and frame pointer.
This is required if the jit code calls a function on arm64 and helpful for debugging tools on x86_64.
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
Generate the prologue and epilogue which respectively push and pop
the link register, frame pointer, and callee saved registers if needed.

  • cssjit/StackAllocator.h:

(WebCore::StackAllocator::push):
(WebCore::StackAllocator::pop):
Added new vector push and pop functions to use stp and ldb instructions on arm64.

5:29 PM Changeset in webkit [169296] by matthew_hanson@apple.com
  • 5 edits in branches/safari-538.34-branch/Source

Versioning.

5:23 PM Changeset in webkit [169295] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Hide fullscreen immediately when switching tabs.
https://bugs.webkit.org/show_bug.cgi?id=133239

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-05-23
Reviewed by Eric Carlson.

Source/WebCore:
This change allows fullscreen to disappear immediately while still cleaning
up fullscreen normally.

  • WebCore.exp.in:
  • platform/ios/WebVideoFullscreenControllerAVKit.h:

renamed function to requestHideAndExitFullscreen

  • platform/ios/WebVideoFullscreenControllerAVKit.mm:

renamed function to requestHideAndExitFullscreen

(-[WebVideoFullscreenController requestHideAndExitFullscreen]):
rename of requestExitFullscreen that also hides.

(-[WebVideoFullscreenController requestExitFullscreen]): Deleted.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.h: declare requestHideAndExitFullscreen()
  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen):
this hides the window before requesting exitfullscreen from the model.

Source/WebKit/mac:
Renamed a function to better describe it's new functionality.

  • WebView/WebView.mm:

(-[WebView viewDidMoveToWindow]):
now calls: requestHideAndExitFullscreen

Source/WebKit2:
Renamed a function to better describe it's new functionality.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::viewStateDidChange):
now calls: requestHideAndExitFullscreen

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

REGRESSION (WebKit2): Keyboard disappears/appears automatically between text boxes.
https://bugs.webkit.org/show_bug.cgi?id=133243
<rdar://problem/16761913>

Reviewed by Benjamin Poulain.

We need to ensure that when an element loses focus and another one gets it,
this is handled in one single message in the UI process to avoid seeing
the keyboard animating in and out.
This is accomplished by always postponing the blur notification until all events
have been processed.
If a new node is focused before the delayed blur notification is sent to the UI
process, the message we send includes both blur and focus notification. In this case,
the postponed blur notification is not sent.

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

(WebKit::PageClientImpl::startAssistingNode):

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

(-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]):
(-[WKContentView _startAssistingNode:userIsInteracting:userObject:]): Deleted.

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::startAssistingNode):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

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

(WebKit::WebPage::elementDidFocus):
(WebKit::WebPage::elementDidBlur):

5:13 PM Changeset in webkit [169293] by msaboff@apple.com
  • 2 edits in trunk/Tools

REGRESSION(r169265): sh: line 0: cd: ../.vm
https://bugs.webkit.org/show_bug.cgi?id=133242

Rubber stamped by Geoffrey Garen.

Added missing shell escapes '\' required as part of previous fix.

  • Scripts/run-jsc-stress-tests:
5:12 PM Changeset in webkit [169292] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove an assertion.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadRequest):

4:59 PM Changeset in webkit [169291] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-538.34.47

New Tag.

4:52 PM Changeset in webkit [169290] by timothy_horton@apple.com
  • 8 edits
    2 adds in trunk/Source

[iOS] WKPDFView should have a page indicator
https://bugs.webkit.org/show_bug.cgi?id=133109
<rdar://problem/16383003>

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _setHasCustomContentView:loadedMIMEType:WTF::]):
(-[WKWebView _setObscuredInsets:]):
Forward obscured insets changes to the custom content view.

(-[WKWebView _updateScrollViewBackground]):
If we have a custom content view, use its background instead of the
(likely nonexistent) page's when updaing the scroll view's background color.

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/Cocoa/WKWebViewContentProvider.h:
  • UIProcess/Cocoa/WKWebViewContentProviderDelegate.h: Added.
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _setInsetForOverlaidAccessoryViews:]):
Add SPI for clients to inform us about potential overlaid accessory views
which should be taken into account e.g. for positioning the page indicator.

Add a view that sits fixed on top of the WKWebView, ignores interaction,
but provides the WKWebViewContentProvider a place to install views
that don't scroll along with the content.

  • UIProcess/ios/WKPDFPageNumberIndicator.h: Added.
  • UIProcess/ios/WKPDFPageNumberIndicator.mm: Added.

(-[WKPDFPageNumberIndicator initWithFrame:]):
(-[WKPDFPageNumberIndicator dealloc]):
(-[WKPDFPageNumberIndicator setCurrentPageNumber:]):
(-[WKPDFPageNumberIndicator setPageCount:]):
(-[WKPDFPageNumberIndicator show]):
(-[WKPDFPageNumberIndicator hide:]):
(-[WKPDFPageNumberIndicator moveToPoint:animated:]):
(-[WKPDFPageNumberIndicator sizeThatFits:]):
(-[WKPDFPageNumberIndicator _updateLabel]):
(-[WKPDFPageNumberIndicator _makeRoundedCorners]):
Add a page number indicator.

  • UIProcess/ios/WKPDFView.mm:

(-[WKPDFView dealloc]):
(-[WKPDFView web_setScrollView:]):
(-[WKPDFView _revalidateViews]):
(-[WKPDFView _offsetForPageNumberIndicator]):
(-[WKPDFView _updatePageNumberIndicator]):
(-[WKPDFView web_setObscuredInsets:]):
(-[WKPDFView web_setInsetForOverlaidAccessoryViews:]):
(-[WKPDFView web_setFixedOverlayView:]):
(-[WKPDFView _computePageAndDocumentFrames]):
Update the page number indicator when the topmost visible page changes.
Move the page number indicator around when the obscured insets change.

  • WebKit2.xcodeproj/project.pbxproj:
  • English.lproj/Localizable.strings:
4:32 PM Changeset in webkit [169289] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Revert the erroneous change committed in r169286.

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTest._run_with_driver):

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

Fix test failures on the bot.

  • UIProcess/API/Cocoa/WKProcessPool.mm:

(websiteDataDirectoryURL):
If we have no bundle identifier, use the process name.

3:37 PM Changeset in webkit [169287] by ggaren@apple.com
  • 1 edit
    1 add in trunk/PerformanceTests

Performance testing, diamond-square terrain generation + canvas
https://bugs.webkit.org/show_bug.cgi?id=133054

Reviewed by Ryosuke Niwa.

This test was written by Hunter Loftis. It originally appeared on his
blog @ <http://www.playfuljs.com/realistic-terrain-in-130-lines/>.

I did a bit of editing for format and benchmark suitability.

  • Canvas/terrain.html: Added.
3:37 PM Changeset in webkit [169286] by ggaren@apple.com
  • 2 edits in trunk/Tools

run-perf-tests should ignore whitespace lines when snarfing test output
https://bugs.webkit.org/show_bug.cgi?id=133238

Reviewed by Ryosuke Niwa.

Required for PerformanceTests/Canvas/terrain.html.

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTest._run_with_driver):
(PerfTest):

3:32 PM Changeset in webkit [169285] by mhahnenberg@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Remove operationCallGetter

Rubber stamped by Filip Pizlo.

Nobody calls this function.

3:14 PM Changeset in webkit [169284] by akling@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Templatize GC's destructor invocation for dtor type.
<https://webkit.org/b/133231>

Get rid of a branch in callDestructor() by templatizing it for
the DestructorType. Removed JSCell::methodTableForDestruction()
since this was the only call site and it was jumping through
a bunch of unnecessary hoops.

Reviewed by Geoffrey Garen.

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::callDestructor):
(JSC::MarkedBlock::specializedSweep):

  • heap/MarkedBlock.h:
  • runtime/JSCell.h:
  • runtime/JSCellInlines.h:

(JSC::JSCell::methodTableForDestruction): Deleted.

3:13 PM Changeset in webkit [169283] by akling@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Support inline caching of RegExpMatchesArray.length
<https://webkit.org/b/133234>

Give RegExpMatchesArray.length the same treatment as JSArray in
repatch so we don't have to go out of line on every access.

~13% speed-up on Octane/regexp.

Reviewed by Geoffrey Garen.

  • jit/Repatch.cpp:

(JSC::tryCacheGetByID):

  • runtime/RegExpMatchesArray.h:

(JSC::isRegExpMatchesArray):

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

REGRESSION (iOS WebKit2): Autocorrection is not accurate when changing selection.
https://bugs.webkit.org/show_bug.cgi?id=133237
<rdar://problem/16655776>

Reviewed by Ryosuke Niwa.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView beginSelectionChange]):
(-[WKContentView endSelectionChange]):

When the selection is changed with a gesture in an editable element,
we must notify the keyboard to make sure the autocorrection engine
updates its typing context. WKContentView must implement
beginSelectionChange and endSelectionChange to call into
the keyboard layer.

2:32 PM Changeset in webkit [169281] by Brent Fulgham
  • 4 edits in trunk/Source/WebKit2

[iOS] WK2: Provide implementation for windowFrame
https://bugs.webkit.org/show_bug.cgi?id=133205
<rdar://problem/16894890>

Reviewed by Benjamin Poulain.

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

(WebKit::UIDelegate::UIClient::windowFrame): Added.

  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::convertToUserSpace): Added.

2:32 PM Changeset in webkit [169280] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Remove invalid ASSERT in wordRangeForPosition.
https://bugs.webkit.org/show_bug.cgi?id=133232

Reviewed by Ryosuke Niwa.

In WK2 for iOS this function is called on every selection change.
The selection could be set by Javascript in an element that is not visible.
In that case we won't be able to create a VisiblePosition therefore wordRangeForPosition
should not ASSERT that the VisiblePosition is not null, but rather
perform an early return if it is null.

  • editing/VisibleUnits.cpp:

(WebCore::wordRangeFromPosition):

1:32 PM Changeset in webkit [169279] by dburkart@apple.com
  • 3 edits
    5 copies
    2 adds in branches/safari-537.77-branch

Merged r167832. <rdar://problem/16975563>

1:32 PM Changeset in webkit [169278] by Simon Fraser
  • 3 edits in trunk/LayoutTests

Rebaseline two tests affected by r169229.

  • platform/mac-wk2/compositing/tiling/rotated-tiled-clamped-expected.txt:
  • platform/mac-wk2/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
1:31 PM Changeset in webkit [169277] by Manuel Rego Casasnovas
  • 2 edits in trunk/Source/WebCore

[CSS Grid Layout] Use gridRowCount() and gridColumnCount() when possible
https://bugs.webkit.org/show_bug.cgi?id=133213

Reviewed by Sergio Villar Senin.

Use gridRowCount() and gridColumnCount() instead of m_grid.size() and
m_grid[0].size() to make the code more descriptive and easier to
understand.

No new tests (No change in behavior).

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::growGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):

12:51 PM Changeset in webkit [169276] by ap@apple.com
  • 4 edits in trunk/Source/WebCore

REGRESSION (r153917): Chart for the Category Explorer within Quicken Essentials
does not draw until you force a redraw
https://bugs.webkit.org/show_bug.cgi?id=133228
<rdar://problem/15221231>

Reviewed by Simon Fraser.

  • platform/RuntimeApplicationChecks.cpp: (WebCore::applicationIsQuickenEssentials):
  • platform/RuntimeApplicationChecks.h:

Added a check for Quicken Essentials.

  • platform/mac/WidgetMac.mm: (WebCore::Widget::paint): Don't do an early return

for Quicken Essentials, it depends on drawing to update its layer.

12:24 PM Changeset in webkit [169275] by Lucas Forschler
  • 15 edits in branches/safari-537.77-branch/Source

Rollout 169219. <rdar://problem/16975536>

12:10 PM Changeset in webkit [169274] by Lucas Forschler
  • 1 edit in branches/safari-537.77-branch/Source/WebCore/platform/graphics/filters/FilterOperation.h

Build fix after rdar://problem/16975484.

12:01 PM Changeset in webkit [169273] by mihnea@adobe.com
  • 5 edits in trunk

REGRESSION(r169105): fast/regions/cssom/region-range-for-box-crash.html is more crashy than before
https://bugs.webkit.org/show_bug.cgi?id=133124

Reviewed by David Hyatt.

Source/WebCore:
When adjusting the end points of a subtree selection in the case of a document
with named flows, we have to make sure that we pass the computed end
points to the visible selection algorithm only if the end points are
part of the same subtree, otherwise assume a selection clear behavior.

The test fast/regions/cssom/region-range-for-box-crash.html is used to
test this behavior.

  • rendering/SelectionSubtreeRoot.cpp:

(WebCore::SelectionSubtreeRoot::adjustForVisibleSelection):
(WebCore::SelectionSubtreeRoot::selectionStartEndPositions): Moved to header file.

  • rendering/SelectionSubtreeRoot.h:

(WebCore::SelectionSubtreeRoot::selectionStartEndPositions):

LayoutTests:
Unskip the test file that used to crash.

12:00 PM Changeset in webkit [169272] by dburkart@apple.com
  • 3 edits in branches/safari-537.77-branch/Source/WebCore

Merged r165862. <rdar://problem/16975511>

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

Use a per app directory structure for website data
https://bugs.webkit.org/show_bug.cgi?id=133125
<rdar://problem/16830143>

Reviewed by Dan Bernstein, Sam Weinig and Tim Horton.

Put website data in subdirectories of ~/Library/WebKit/<bundle ID>/WebsiteData.
We use "LocalStorage", "WebSQL", and "IndexedDB" subdirectories.

  • UIProcess/API/Cocoa/WKProcessPool.mm:

(websiteDataDirectoryURL):
(-[WKProcessPool _initWithConfiguration:]):

11:36 AM Changeset in webkit [169270] by mhahnenberg@apple.com
  • 5 edits in trunk/LayoutTests

Rebaseline some tests after r169260

  • fast/dom/Geolocation/enabled-expected.txt:
  • fast/dom/Geolocation/script-tests/enabled.js:
  • js/dom/delete-syntax-expected.txt:
  • js/dom/script-tests/delete-syntax.js:
11:36 AM Changeset in webkit [169269] by matthew_hanson@apple.com
  • 5 edits in branches/safari-538.34-branch/Source

Versioning.

11:33 AM Changeset in webkit [169268] by dburkart@apple.com
  • 2 edits in branches/safari-537.77-branch/LayoutTests

Merged r161008. <rdar://problem/16975471>

11:29 AM Changeset in webkit [169267] by dburkart@apple.com
  • 2 edits in branches/safari-537.77-branch/LayoutTests

Merged r160896. <rdar://problem/16975471>

11:22 AM Changeset in webkit [169266] by dburkart@apple.com
  • 9 edits
    2 copies in branches/safari-537.77-branch

Merged r160847. <rdar://problem/16975471>

11:05 AM Changeset in webkit [169265] by msaboff@apple.com
  • 2 edits in trunk/Tools

REGRESSION (r169241) Crash running run-jsc-stress-tests on EFL ARM
https://bugs.webkit.org/show_bug.cgi?id=133223

Reviewed by Geoffrey Garen.

Change runAndMonitorTestRunnerCommand() to convert the *cmd argument to a
string before calling IO.popen() to work with older versions of ruby.
Changed the remote path in runShellTestRunner to quote the command
string we want to run via ssh so that it will work correctly with array
to string conversion needed for popen.

  • Scripts/run-jsc-stress-tests:
11:02 AM Changeset in webkit [169264] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

reset m_havePreparedToPlay when changing media engines.
https://bugs.webkit.org/show_bug.cgi?id=133199

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-05-23
Reviewed by Eric Carlson.

If a play request comes in before the media player is created, m_havePreparedToPlay
is set to true. But when the player is created, this prevents the new player from
getting the prepare call.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerEngineUpdated): set m_havePreparedToPlay false.

10:52 AM Changeset in webkit [169263] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip some snapshotting tests failing after r169173.
https://bugs.webkit.org/show_bug.cgi?id=133227.

  • platform/mac-wk2/TestExpectations:
10:22 AM Changeset in webkit [169262] by Michał Pakuła vel Rutka
  • 5 edits in trunk/LayoutTests

Unreviewed EFL gardening

  • platform/efl/TestExpectations: Add test expectation for tests faling after r167840.
  • platform/efl/fast/borders/border-antialiasing-expected.png: Rebaseline after r168046.
  • platform/efl/fast/borders/border-antialiasing-expected.txt: Ditto.
  • platform/efl/fast/forms/fieldset-align-expected.txt: Rebaseline after r168575.
10:11 AM Changeset in webkit [169261] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove 'css-shaders' option from the build-webkit
https://bugs.webkit.org/show_bug.cgi?id=133212

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-05-23
Reviewed by Daniel Bates.

Original CSS shaders removed in r162644.

  • Scripts/webkitperl/FeatureList.pm:
10:08 AM Changeset in webkit [169260] by oliver@apple.com
  • 2 edits in trunk/Source/WebCore

Navigator object needs to have properties directly on the instance object
https://bugs.webkit.org/show_bug.cgi?id=133221

Reviewed by Mark Lam.

Flag the Navigator object as requiring properties to be on the instance
as there were a few compatibility issues when on the prototype.

  • bindings/scripts/CodeGeneratorJS.pm:

(InterfaceRequiresAttributesOnInstance):

9:42 AM Changeset in webkit [169259] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

[Cocoa] WKNavigationResponsePrivate.h is internal
https://bugs.webkit.org/show_bug.cgi?id=133218

Reviewed by Dean Jackson.

  • WebKit2.xcodeproj/project.pbxproj: Promote WKNavigationResponsePrivate.h to private.
9:13 AM Changeset in webkit [169258] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Switch CSSGradientValue to use more references
https://bugs.webkit.org/show_bug.cgi?id=133206

Reviewed by Andreas Kling.

Switch from pointers to references in various places.

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::image):
(WebCore::CSSGradientValue::addStops):
(WebCore::positionFromValue):
(WebCore::CSSGradientValue::computeEndPoint):
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::resolveRadius):
(WebCore::CSSRadialGradientValue::createGradient):

  • css/CSSGradientValue.h:
7:27 AM Changeset in webkit [169257] by Alan Bujtas
  • 5 edits
    3 adds in trunk

Subpixel rendering: Make webkit-box-shadow painting subpixel aware.
https://bugs.webkit.org/show_bug.cgi?id=133201
<rdar://problem/16072830>

Reviewed by Simon Fraser.

This patch enables webkit-box-shadow to be painted on a subpixel position. However, we
still truncate -webkit-box-shadow property values. Tracked here: http://webkit.org/b/133202

Source/WebCore:
Test: fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position.html

  • platform/graphics/FloatRoundedRect.cpp:

(WebCore::FloatRoundedRect::inflateWithRadii): same as in from RoundedRect.
(WebCore::FloatRoundedRect::adjustRadii): same as in from RoundedRect.

  • platform/graphics/FloatRoundedRect.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintBoxShadow):

LayoutTests:
Currently not ref-testable.

  • fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position.html: Added.
  • platform/mac/fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position-expected.png: Added.
  • platform/mac/fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position-expected.txt: Added.
3:29 AM Changeset in webkit [169256] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] GObject DOM bindings API break test should fail in the bots when the command fails to run
https://bugs.webkit.org/show_bug.cgi?id=133209

Reviewed by Sergio Villar Senin.

Return FAILURE when the command failed to run.

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

(RunGtkWebKitGObjectDOMBindingsAPIBreakTests.evaluateCommand):

2:57 AM Changeset in webkit [169255] by Carlos Garcia Campos
  • 8 edits
    3 copies
    5 moves
    7 adds
    1 delete in trunk/Source/WebKit2

[UNIX] Reorganize and cleanup main functions of GTK and EFL ports
https://bugs.webkit.org/show_bug.cgi?id=131024

Reviewed by Gustavo Noronha Silva.

Move main function implementation files to <process-dir>/EntryPoint/unix/<ProcessName>Main.cpp
files that are now shared by GTK and EFL ports. These files call a
main method that wraps a new method ChildProcessMain that contains
the common code and uses a helper class for the platform specific
code. GTK+ and EFL ports implement that helper class for every process type.

  • NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp: Renamed from Source/WebKit2/efl/MainEfl.cpp.

(main):

  • NetworkProcess/efl/NetworkProcessMainEfl.cpp: Renamed from Source/WebKit2/unix/NetworkMainUnix.cpp.

(WebKit::NetworkProcessMainUnix):

  • NetworkProcess/gtk/NetworkProcessMainGtk.cpp: Renamed from Source/WebKit2/NetworkProcess/unix/NetworkProcessMainUnix.cpp.

(WebKit::NetworkProcessMainUnix):

  • NetworkProcess/unix/NetworkProcessMainUnix.h:
  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • PluginProcess/EntryPoint/unix/PluginProcessMain.cpp: Renamed from Source/WebKit2/unix/PluginMainUnix.cpp.

(main):

  • PluginProcess/unix/PluginProcessMainUnix.cpp:

(WebKit::webkitXError):
(WebKit::PluginProcessMainUnix):

  • PluginProcess/unix/PluginProcessMainUnix.h:
  • Shared/unix/ChildProcessMain.cpp: Copied from Source/WebKit2/WebProcess/efl/WebProcessMainEfl.h.

(WebKit::ChildProcessMainBase::parseCommandLine):

  • Shared/unix/ChildProcessMain.h: Renamed from Source/WebKit2/WebProcess/gtk/WebProcessMainGtk.h.

(WebKit::ChildProcessMainBase::platformInitialize):
(WebKit::ChildProcessMainBase::platformFinalize):
(WebKit::ChildProcessMainBase::initializationParameters):
(WebKit::ChildProcessMain):

  • WebProcess/EntryPoint/unix/WebProcessMain.cpp: Renamed from Source/WebKit2/gtk/MainGtk.cpp.

(main):

  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainUnix):
(dummyExtensionErrorHandler): Deleted.

  • WebProcess/gtk/WebProcessMainGtk.cpp:

(WebKit::WebProcessMainUnix):

  • WebProcess/unix/WebProcessMainUnix.h: Renamed from Source/WebKit2/WebProcess/efl/WebProcessMainEfl.h.
2:09 AM Changeset in webkit [169254] by berto@igalia.com
  • 2 edits in trunk/Tools

[GTK] Install libharfbuzz-dev in Tools/gtk/install-dependencies
https://bugs.webkit.org/show_bug.cgi?id=133210

Reviewed by Carlos Garcia Campos.

  • gtk/install-dependencies:
12:02 AM Changeset in webkit [169253] by Antti Koivisto
  • 2 edits in trunk/Source/WebKit

Try to fix windows build.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Note: See TracTimeline for information about the timeline view.