Share http/tests/media/video-load-and-stall.cgi for other tests
https://bugs.webkit.org/show_bug.cgi?id=93389

Reviewed by Eric Carlson.

Moving http/tests/media/video-laod-and-stall.cgi to
http/tests/resources/load-and-stall.cgi.

Also changes tests that use this file to point to the new location.

* http/tests/media/remove-while-loading.html:
* http/tests/media/video-play-stall-before-meta-data.html:
* http/tests/media/video-play-stall-seek.html:
* http/tests/media/video-play-stall.html:
* http/tests/resources/load-and-stall.cgi: Renamed from LayoutTests/http/tests/media/video-load-and-stall.cgi.
* http/tests/security/contentSecurityPolicy/media-src-allowed.html:
* http/tests/security/contentSecurityPolicy/media-src-blocked-expected.txt:
* http/tests/security/contentSecurityPolicy/media-src-blocked.html:
* platform/chromium/http/tests/security/contentSecurityPolicy/media-src-blocked-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124920 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use the initialization from literal for JSC's Identifiers
https://bugs.webkit.org/show_bug.cgi?id=93193

Reviewed by Geoffrey Garen.

Source/JavaScriptCore: 

This patches modify Identifier ot take advantage of the new initialization from literal.

In addition to the memory savings (~600bytes per instance), this gives us a 2% speed
improvement on CommonIdentifiers on average.

* runtime/CommonIdentifiers.cpp:
(JSC::CommonIdentifiers::CommonIdentifiers):
Null and empty strings are forbidden for literal initialization. Use the most efficient constructors
instead of a literal.

* runtime/Identifier.cpp:
(IdentifierASCIIStringTranslator):
Rename IdentifierCStringTranslator to IdentifierASCIIStringTranslator to make the text encoding
explicit.
(JSC::IdentifierASCIIStringTranslator::hash):
(JSC::IdentifierASCIIStringTranslator::equal):
(JSC::IdentifierASCIIStringTranslator::translate): Use the fast initialization from literal.
(JSC::Identifier::add):
* runtime/Identifier.h:
(JSC::Identifier::Identifier):

Source/WTF: 

* wtf/text/StringImpl.h: Update the names for the HashTranslator used by Identifier.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124922 268f45cc-cd09-0410-ab3c-d52691b4dbfc
       [Qt] New API tests introuduced in r119723 marked as fail, but pass
       https://bugs.webkit.org/show_bug.cgi?id=88870

Reviewed by Alexis Menard.

Revert r119723, because there are 2 failing tests, and the author and
the reviewer of the original patch ignore the bug report long time ago.

* UIProcess/API/qt/tests/qmltests/WebView/tst_devicePixelRatio.qml: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124923 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Knob slot animation is flipped
https://bugs.webkit.org/show_bug.cgi?id=93396

Reviewed by Beth Dakin.

When painting the scrollbar knob slot, use rectForPart: since it correctly takes the expansion transition state into account.

* platform/mac/ScrollbarThemeMac.mm:
(WebCore::scrollbarPainterPaint):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124924 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Use WebCompositor interface in Platform API instead of CCProxy to query threaded compositor status
https://bugs.webkit.org/show_bug.cgi?id=93398

Reviewed by Adam Barth.

Source/Platform:

Adds thread status query interfaces to WebCompositor for WebKit code that wants to know if we are in threaded
mode.

* chromium/public/WebCompositor.h:
(WebCompositor):

Source/WebCore:

Converts non-compositor code that cares about threaded compositing status over to query WebCompositor instead of
CCProxy.

* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
* platform/chromium/support/WebCompositorImpl.cpp:
(WebKit):
(WebKit::WebCompositor::threadingEnabled):
(WebKit::WebCompositor::onCompositorThread):
(WebKit::WebCompositorImpl::threadingEnabled):
* platform/chromium/support/WebCompositorImpl.h:
(WebCompositorImpl):
* platform/graphics/chromium/Canvas2DLayerBridge.cpp:
(WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
* platform/graphics/chromium/DrawingBufferChromium.cpp:
(WebCore::DrawingBuffer::DrawingBuffer):

Source/WebKit/chromium:

Converts non-compositor code that cares about threaded compositing status over to query WebCompositor instead of
CCProxy.

* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::supportsType):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::composite):
(WebKit::WebViewImpl::scheduleAnimation):
(WebKit::WebViewImpl::scheduleComposite):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124925 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Switch PlatformLayer typedef to Platform API type for PLATFORM(CHROMIUM)
https://bugs.webkit.org/show_bug.cgi?id=93335

Reviewed by Adrienne Walker.

Source/Platform:

Add APIs to control scrolling behavior on WebScrollableLayer.

* chromium/public/WebScrollableLayer.h:
(WebScrollableLayer):

Source/WebCore:

This converts the PlatformLayer typedef to WebKit::WebLayer (part of the chromium Platform API) for the
Chromium port. This involves some odd const_cast<>s in places since cross-platform interfaces assume that
PlatformLayer is a potentially heavy implementation class, but WebLayer is a thin smart pointer type.

* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::createScrollbarLayer):
(WebCore::ScrollingCoordinator::setScrollLayer):
(WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers):
(WebCore::ScrollingCoordinator::setLayerIsFixedToContainerLayer):
* platform/graphics/PlatformLayer.h:
(WebKit):
(WebCore):
* platform/graphics/chromium/Canvas2DLayerBridge.cpp:
(WebCore::Canvas2DLayerBridge::layer):
* platform/graphics/chromium/Canvas2DLayerBridge.h:
(Canvas2DLayerBridge):
* platform/graphics/chromium/DrawingBufferChromium.cpp:
(WebCore::DrawingBufferPrivate::layer):
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::removeFromParent):
(WebCore::GraphicsLayerChromium::setDrawsContent):
(WebCore::GraphicsLayerChromium::setContentsVisible):
(WebCore::GraphicsLayerChromium::setMaskLayer):
(WebCore::GraphicsLayerChromium::setContentsToCanvas):
(WebCore::GraphicsLayerChromium::setContentsToMedia):
(WebCore::GraphicsLayerChromium::primaryLayer):
(WebCore::GraphicsLayerChromium::platformLayer):
(WebCore::GraphicsLayerChromium::updateChildList):
* platform/graphics/chromium/GraphicsLayerChromium.h:
(GraphicsLayerChromium):

Source/WebKit/chromium:

Update for new PlatformLayer typedef. This removes knowledge of WebCore::LayerChromium from all classes
except for NonCompositedContentHost, which still punches through for a few minor APIs that I'll address
in a separate patch.

* src/NonCompositedContentHost.cpp:
(WebKit::NonCompositedContentHost::NonCompositedContentHost):
(WebKit::NonCompositedContentHost::setScrollLayer):
(WebKit::NonCompositedContentHost::scrollLayer):
(WebKit::NonCompositedContentHost::notifySyncRequired):
* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::platformLayer):
* src/WebMediaPlayerClientImpl.h:
(WebMediaPlayerClientImpl):
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::platformLayer):
* src/WebPluginContainerImpl.h:
(WebCore):
(WebPluginContainerImpl):
* src/WebScrollableLayer.cpp:
(WebKit::WebScrollableLayer::setNonFastScrollableRegion):
(WebKit):
(WebKit::WebScrollableLayer::setIsContainerForFixedPositionLayers):
(WebKit::WebScrollableLayer::setFixedToContainerLayer):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setRootGraphicsLayer):
* tests/Canvas2DLayerBridgeTest.cpp:
* tests/GraphicsLayerChromiumTest.cpp:
(WebKitTests::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):
(WebKitTests::TEST_F):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124927 268f45cc-cd09-0410-ab3c-d52691b4dbfc