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

Timeline



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.