WebKit-https.git
7 years ago[Qt] Make it possible to build WebKit without QtWidgets
hausmann@webkit.org [Tue, 26 Jun 2012 04:47:14 +0000 (04:47 +0000)]
[Qt] Make it possible to build WebKit without QtWidgets
https://bugs.webkit.org/show_bug.cgi?id=78109

Reviewed by Tor Arne Vestbø.

.:

* Source/QtWebKit.pro: Don't build WK1 tests and examples if WK1 is disabled.
* Source/api.pri: Move WK1 sources away from here and use WEBKIT += webkit1 instead
* WebKit.pro: Add WK1 to SUBDIRS unless no_webkit1 is set.

Source/WebKit:

Moved WebKit1 sources into a separate static library. Only WK1
depends on QtWidgets.

* WebKit1.pri: Added.
* WebKit1.pro: Added.

Source/WebKit2:

* WebKit2.pri: Add missing WK2 specific dependencies.
* qt/MainQt.cpp: Do the QStyle initialization hook only if we are
compiling with QtWidgets support.
(WebKit):
(main):

Tools:

* Tools.pro: Disable various tools that depend on WK1.
* qmake/mkspecs/features/default_post.prf: Add WK1 as supported static lib in WEBKIT
* qmake/mkspecs/features/default_pre.prf: Disable WK1 if QtWidgets is not built.
* qmake/mkspecs/modules/webkit1.prf: Added.

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

7 years ago[chromium] Add WebPluginScrollbar and WebPluginScrollbarClient stub implementations
enne@google.com [Tue, 26 Jun 2012 04:43:44 +0000 (04:43 +0000)]
[chromium] Add WebPluginScrollbar and WebPluginScrollbarClient stub implementations
https://bugs.webkit.org/show_bug.cgi?id=89928

Reviewed by Darin Fisher.

These classes are just typedef'd to be the non-Plugin version. The
next step is to change Chromium to use the Plugin version, then move
most of WebPluginScrollbar to a WebScrollbar in Platform to separate
out the base functionality, while providing the same top level API.

* WebKit.gyp:
* public/WebPluginScrollbar.h: Added.
(WebKit):
* public/WebPluginScrollbarClient.h: Added.
(WebKit):

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

7 years agoUnreviewed build fix after r121223.
hausmann@webkit.org [Tue, 26 Jun 2012 04:41:25 +0000 (04:41 +0000)]
Unreviewed build fix after r121223.

Fix the --minimal Qt build, TextureMapperGL now requires WebGL to be enabled.

* Target.pri:
* WebCore.pri:

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

7 years ago[BlackBerry] Fill more data in device motion event
leo.yang@torchmobile.com.cn [Tue, 26 Jun 2012 04:31:48 +0000 (04:31 +0000)]
[BlackBerry] Fill more data in device motion event
https://bugs.webkit.org/show_bug.cgi?id=89857

Reviewed by Antonio Gomes.

Reviewed internally by Robin Cao.

Fill acceleration and rotation rate into DeviceMotionData.

* WebCoreSupport/DeviceMotionClientBlackBerry.cpp:
(DeviceMotionClientBlackBerry::onMotion):

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

7 years ago[chromium] CCOverdrawMetrics should use the deviceViewportSize to count actual pixels
danakj@chromium.org [Tue, 26 Jun 2012 04:14:54 +0000 (04:14 +0000)]
[chromium] CCOverdrawMetrics should use the deviceViewportSize to count actual pixels
https://bugs.webkit.org/show_bug.cgi?id=89922

Reviewed by Adrienne Walker.

* platform/graphics/chromium/cc/CCOverdrawMetrics.cpp:
(WebCore::CCOverdrawMetrics::recordMetricsInternal):

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

7 years ago[Texmap] Remove platform specific code in BitmapImageGL::updateContents by using
commit-queue@webkit.org [Tue, 26 Jun 2012 03:59:30 +0000 (03:59 +0000)]
[Texmap] Remove platform specific code in BitmapImageGL::updateContents by using
GraphicsContext3D::extractImageData.
https://bugs.webkit.org/show_bug.cgi?id=89867

Patch by Huang Dongsung <luxtella@company100.net> on 2012-06-25
Reviewed by Noam Rosenthal.

No new tests. Covered by existing tests.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore):
(WebCore::BitmapTextureGL::didReset):
(WebCore::BitmapTextureGL::updateContents):

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

7 years ago[EFL][WK2] Include unistd.h in PlatformProcessIdentifier.h.
rakuco@webkit.org [Tue, 26 Jun 2012 03:46:14 +0000 (03:46 +0000)]
[EFL][WK2] Include unistd.h in PlatformProcessIdentifier.h.
https://bugs.webkit.org/show_bug.cgi?id=89804

Reviewed by Hajime Morita.

The pid_t typedef ends up coming from stdlib.h (indirectly via WTF
includes) on Mac and Linux, even though that is not mandated by
POSIX and breaks other platforms (such as FreeBSD). Fix that by
explicitly including unistd.h, which is where the typedef is
supposed to come from.

* Platform/PlatformProcessIdentifier.h:

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

7 years ago[WK2][Qt][EFL] Extract common code from LayerTreeHostQt
commit-queue@webkit.org [Tue, 26 Jun 2012 03:41:27 +0000 (03:41 +0000)]
[WK2][Qt][EFL] Extract common code from LayerTreeHostQt
https://bugs.webkit.org/show_bug.cgi?id=89837

Patch by YoungTaeck Song <youngtaeck.song@samsung.com> on 2012-06-25
Reviewed by Noam Rosenthal.

Extract common code from LayerTreeHostQt to be used by both Qt and Efl.
I renamed LayerTreeHost to LayerTreeCoordinator, and these are moved under WebProcess/WebPage/LayerTreeCoordinator.
I Modified LayerTreeHostProxy to LayerTreeCoordinatorProxy too, Because LayerTreeHostProxy and LayerTreeHost were pair.
Also WebGraphicsLayer moved under that directory.

* CMakeLists.txt:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Platform/CoreIPC/MessageID.h:
* Target.pri:
* UIProcess/API/qt/qquickwebpage.cpp:
(QQuickWebPagePrivate::paint):
(QQuickWebPage::updatePaintNode):
(QQuickWebPagePrivate::updateSize):
* UIProcess/DrawingAreaProxy.cpp:
(WebKit::DrawingAreaProxy::didReceiveLayerTreeCoordinatorProxyMessage):
* UIProcess/DrawingAreaProxy.h:
(WebKit):
(WebKit::DrawingAreaProxy::layerTreeCoordinatorProxy):
(DrawingAreaProxy):
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::didReceiveLayerTreeCoordinatorProxyMessage):
(WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):
* UIProcess/DrawingAreaProxyImpl.h:
(WebKit):
(DrawingAreaProxyImpl):
* UIProcess/LayerTreeCoordinatorProxy.cpp: Renamed from Source/WebKit2/UIProcess/LayerTreeHostProxy.cpp.
(WebKit):
(WebKit::LayerTreeCoordinatorProxy::LayerTreeCoordinatorProxy):
(WebKit::LayerTreeCoordinatorProxy::~LayerTreeCoordinatorProxy):
(WebKit::LayerTreeCoordinatorProxy::updateViewport):
(WebKit::LayerTreeCoordinatorProxy::dispatchUpdate):
(WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
(WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
(WebKit::LayerTreeCoordinatorProxy::removeTileForLayer):
(WebKit::LayerTreeCoordinatorProxy::deleteCompositingLayer):
(WebKit::LayerTreeCoordinatorProxy::setRootCompositingLayer):
(WebKit::LayerTreeCoordinatorProxy::setCompositingLayerState):
(WebKit::LayerTreeCoordinatorProxy::setCompositingLayerChildren):
(WebKit::LayerTreeCoordinatorProxy::setCompositingLayerFilters):
(WebKit::LayerTreeCoordinatorProxy::didRenderFrame):
(WebKit::LayerTreeCoordinatorProxy::createDirectlyCompositedImage):
(WebKit::LayerTreeCoordinatorProxy::destroyDirectlyCompositedImage):
(WebKit::LayerTreeCoordinatorProxy::setContentsSize):
(WebKit::LayerTreeCoordinatorProxy::setVisibleContentsRect):
(WebKit::LayerTreeCoordinatorProxy::renderNextFrame):
(WebKit::LayerTreeCoordinatorProxy::didChangeScrollPosition):
(WebKit::LayerTreeCoordinatorProxy::syncCanvas):
(WebKit::LayerTreeCoordinatorProxy::purgeBackingStores):
* UIProcess/LayerTreeCoordinatorProxy.h: Renamed from Source/WebKit2/UIProcess/LayerTreeHostProxy.h.
(WebKit):
(LayerTreeCoordinatorProxy):
(WebKit::LayerTreeCoordinatorProxy::layerTreeRenderer):
* UIProcess/LayerTreeCoordinatorProxy.messages.in: Renamed from Source/WebKit2/UIProcess/LayerTreeHostProxy.messages.in.
* UIProcess/WebLayerTreeRenderer.cpp:
(WebKit::WebLayerTreeRenderer::WebLayerTreeRenderer):
(WebKit::WebLayerTreeRenderer::updateViewport):
(WebKit::WebLayerTreeRenderer::renderNextFrame):
(WebKit::WebLayerTreeRenderer::purgeBackingStores):
(WebKit::WebLayerTreeRenderer::detach):
* UIProcess/WebLayerTreeRenderer.h:
(WebKit):
(WebLayerTreeRenderer):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveMessage):
* WebKit2.pri:
* WebProcess/WebPage/DrawingArea.h:
(DrawingArea):
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::didReceiveLayerTreeCoordinatorMessage):
* WebProcess/WebPage/DrawingAreaImpl.h:
(DrawingAreaImpl):
* WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/qt/LayerTreeHostQt.cpp.
(WebKit):
(WebKit::LayerTreeCoordinator::create):
(WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::setLayerFlushSchedulingEnabled):
(WebKit::LayerTreeCoordinator::scheduleLayerFlush):
(WebKit::LayerTreeCoordinator::cancelPendingLayerFlush):
(WebKit::LayerTreeCoordinator::setShouldNotifyAfterNextScheduledLayerFlush):
(WebKit::LayerTreeCoordinator::setRootCompositingLayer):
(WebKit::LayerTreeCoordinator::invalidate):
(WebKit::LayerTreeCoordinator::setNonCompositedContentsNeedDisplay):
(WebKit::LayerTreeCoordinator::scrollNonCompositedContents):
(WebKit::LayerTreeCoordinator::forceRepaint):
(WebKit::LayerTreeCoordinator::sizeDidChange):
(WebKit::LayerTreeCoordinator::didInstallPageOverlay):
(WebKit::LayerTreeCoordinator::didUninstallPageOverlay):
(WebKit::LayerTreeCoordinator::setPageOverlayNeedsDisplay):
(WebKit::LayerTreeCoordinator::setPageOverlayOpacity):
(WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
(WebKit::LayerTreeCoordinator::syncLayerState):
(WebKit::LayerTreeCoordinator::syncLayerChildren):
(WebKit::LayerTreeCoordinator::syncCanvas):
(WebKit::LayerTreeCoordinator::syncLayerFilters):
(WebKit::LayerTreeCoordinator::attachLayer):
(WebKit::LayerTreeCoordinator::detachLayer):
(WebKit::updateOffsetFromViewportForSelf):
(WebKit::updateOffsetFromViewportForLayer):
(WebKit::LayerTreeCoordinator::syncFixedLayers):
(WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
(WebKit::LayerTreeCoordinator::layerFlushTimerFired):
(WebKit::LayerTreeCoordinator::createPageOverlayLayer):
(WebKit::LayerTreeCoordinator::destroyPageOverlayLayer):
(WebKit::LayerTreeCoordinator::adoptImageBackingStore):
(WebKit::LayerTreeCoordinator::releaseImageBackingStore):
(WebKit::LayerTreeCoordinator::notifyAnimationStarted):
(WebKit::LayerTreeCoordinator::notifySyncRequired):
(WebKit::LayerTreeCoordinator::paintContents):
(WebKit::LayerTreeCoordinator::showDebugBorders):
(WebKit::LayerTreeCoordinator::showRepaintCounter):
(WebKit::LayerTreeHost::supportsAcceleratedCompositing):
(WebKit::LayerTreeCoordinator::createTile):
(WebKit::LayerTreeCoordinator::updateTile):
(WebKit::LayerTreeCoordinator::removeTile):
(WebKit::LayerTreeCoordinator::visibleContentsRect):
(WebKit::LayerTreeCoordinator::setVisibleContentsRect):
(WebKit::LayerTreeCoordinator::renderNextFrame):
(WebKit::LayerTreeCoordinator::layerTreeTileUpdatesAllowed):
(WebKit::LayerTreeCoordinator::purgeBackingStores):
(WebKit::LayerTreeCoordinator::beginContentUpdate):
* WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h: Renamed from Source/WebKit2/WebProcess/WebPage/qt/LayerTreeHostQt.h.
(WebKit):
(LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::layerTreeContext):
(WebKit::LayerTreeCoordinator::pageOverlayShouldApplyFadeWhenPainting):
(WebKit::LayerTreeCoordinator::pauseRendering):
(WebKit::LayerTreeCoordinator::resumeRendering):
(WebKit::LayerTreeCoordinator::deviceScaleFactorDidChange):
* WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.messages.in: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeHost.messages.in.
* WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.cpp: Renamed from Source/WebKit2/WebProcess/WebCoreSupport/WebGraphicsLayer.cpp.
(WebCore):
(WebCore::layerByIDMap):
(WebCore::WebGraphicsLayer::layerByID):
(WebCore::toWebLayerID):
(WebCore::WebGraphicsLayer::didChangeLayerState):
(WebCore::WebGraphicsLayer::didChangeChildren):
(WebCore::WebGraphicsLayer::didChangeFilters):
(WebCore::WebGraphicsLayer::setShouldUpdateVisibleRect):
(WebCore::WebGraphicsLayer::didChangeGeometry):
(WebCore::WebGraphicsLayer::WebGraphicsLayer):
(WebCore::WebGraphicsLayer::~WebGraphicsLayer):
(WebCore::WebGraphicsLayer::willBeDestroyed):
(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::removeFromParent):
(WebCore::WebGraphicsLayer::setPosition):
(WebCore::WebGraphicsLayer::setAnchorPoint):
(WebCore::WebGraphicsLayer::setSize):
(WebCore::WebGraphicsLayer::setTransform):
(WebCore::WebGraphicsLayer::setChildrenTransform):
(WebCore::WebGraphicsLayer::setPreserves3D):
(WebCore::WebGraphicsLayer::setMasksToBounds):
(WebCore::WebGraphicsLayer::setDrawsContent):
(WebCore::WebGraphicsLayer::setContentsOpaque):
(WebCore::WebGraphicsLayer::setBackfaceVisibility):
(WebCore::WebGraphicsLayer::setOpacity):
(WebCore::WebGraphicsLayer::setContentsRect):
(WebCore::WebGraphicsLayer::setContentsNeedsDisplay):
(WebCore::WebGraphicsLayer::setContentsToCanvas):
(WebCore::WebGraphicsLayer::setFilters):
(WebCore::WebGraphicsLayer::setContentsToImage):
(WebCore::WebGraphicsLayer::setMaskLayer):
(WebCore::WebGraphicsLayer::setReplicatedByLayer):
(WebCore::WebGraphicsLayer::setNeedsDisplay):
(WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
(WebCore::WebGraphicsLayer::id):
(WebCore::WebGraphicsLayer::syncCompositingState):
(WebCore::toWebGraphicsLayer):
(WebCore::WebGraphicsLayer::syncChildren):
(WebCore::WebGraphicsLayer::syncFilters):
(WebCore::WebGraphicsLayer::syncLayerState):
(WebCore::WebGraphicsLayer::syncCanvas):
(WebCore::WebGraphicsLayer::ensureImageBackingStore):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::WebGraphicsLayer::tiledBackingStorePaintBegin):
(WebCore::WebGraphicsLayer::setRootLayer):
(WebCore::WebGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::WebGraphicsLayer::setContentsScale):
(WebCore::WebGraphicsLayer::effectiveContentsScale):
(WebCore::WebGraphicsLayer::adjustContentsScale):
(WebCore::WebGraphicsLayer::createBackingStore):
(WebCore::WebGraphicsLayer::tiledBackingStorePaint):
(WebCore::WebGraphicsLayer::tiledBackingStorePaintEnd):
(WebCore::WebGraphicsLayer::tiledBackingStoreUpdatesAllowed):
(WebCore::WebGraphicsLayer::tiledBackingStoreContentsRect):
(WebCore::WebGraphicsLayer::shouldUseTiledBackingStore):
(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::WebGraphicsLayer::tiledBackingStoreBackgroundColor):
(WebCore::WebGraphicsLayer::beginContentUpdate):
(WebCore::WebGraphicsLayer::createTile):
(WebCore::WebGraphicsLayer::updateTile):
(WebCore::WebGraphicsLayer::removeTile):
(WebCore::WebGraphicsLayer::updateContentBuffers):
(WebCore::WebGraphicsLayer::purgeBackingStores):
(WebCore::WebGraphicsLayer::setWebGraphicsLayerClient):
(WebCore::WebGraphicsLayer::adjustVisibleRect):
(WebCore::WebGraphicsLayer::computeTransformedVisibleRect):
(WebCore::createWebGraphicsLayer):
(WebCore::WebGraphicsLayer::initFactory):
(WebCore::WebGraphicsLayer::selfOrAncestorHaveNonAffineTransforms):
* WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.h: Renamed from Source/WebKit2/WebProcess/WebCoreSupport/WebGraphicsLayer.h.
(WebCore):
(WebKit):
(WebGraphicsLayerClient):
(WebGraphicsLayer):
(WebCore::WebGraphicsLayer::image):
(WebCore::WebGraphicsLayer::fixedToViewport):
(WebCore::WebGraphicsLayer::setFixedToViewport):
(WebCore::WebGraphicsLayer::maskTarget):
(WebCore::WebGraphicsLayer::setMaskTarget):
* WebProcess/WebPage/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::create):
* WebProcess/WebPage/LayerTreeHost.h:
(LayerTreeHost):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didReceiveMessage):

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

7 years ago[chromium] Remove uncalled ManagedTexture::framebufferTexture2D
commit-queue@webkit.org [Tue, 26 Jun 2012 03:37:53 +0000 (03:37 +0000)]
[chromium] Remove uncalled ManagedTexture::framebufferTexture2D
https://bugs.webkit.org/show_bug.cgi?id=89930

Patch by James Robinson <jamesr@chromium.org> on 2012-06-25
Reviewed by Adrienne Walker.

Removing dead code.

* platform/graphics/chromium/ManagedTexture.cpp:
* platform/graphics/chromium/ManagedTexture.h:
(ManagedTexture):

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

7 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Tue, 26 Jun 2012 03:28:53 +0000 (03:28 +0000)]
Unreviewed.  Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-25

* DEPS:

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

7 years agoJSC should try to make profiling deterministic because otherwise reproducing failures is
fpizlo@apple.com [Tue, 26 Jun 2012 02:53:39 +0000 (02:53 +0000)]
JSC should try to make profiling deterministic because otherwise reproducing failures is
nearly impossible
https://bugs.webkit.org/show_bug.cgi?id=89940

Rubber stamped by Gavin Barraclough.

This rolls out the part of http://trac.webkit.org/changeset/121215 that introduced randomness
into the system. Now, instead of randomizing the tier-up threshold, we always set it to an
artificially low (and statically predetermined!) value. This gives most of the benefit of
threshold randomization without actually making the system behave completely differently on
each invocation.

* bytecode/ExecutionCounter.cpp:
(JSC::ExecutionCounter::setThreshold):
* runtime/Options.cpp:
(Options):
(JSC::Options::initializeOptions):
* runtime/Options.h:
(Options):

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

7 years agoUnreviewed, rolling out r121206.
commit-queue@webkit.org [Tue, 26 Jun 2012 02:52:11 +0000 (02:52 +0000)]
Unreviewed, rolling out r121206.
http://trac.webkit.org/changeset/121206
https://bugs.webkit.org/show_bug.cgi?id=89935

[chromium] webkit_unit_tests
WebViewTest.MHTMLWithMissingResourceFinishesLoading crash
(Requested by ukai on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-25

Source/WebCore:

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::scheduleArchiveLoad):

Source/WebKit/chromium:

* tests/EventListenerTest.cpp:
* tests/FrameTestHelpers.cpp:
(WebKit::FrameTestHelpers::registerMockedURLLoad):
(WebKit::FrameTestHelpers::createWebViewAndLoad):
* tests/FrameTestHelpers.h:
(FrameTestHelpers):
* tests/ListenerLeakTest.cpp:
(WebKit::ListenerLeakTest::RunTest):
* tests/WebFrameTest.cpp:
(WebKit::WebFrameTest::registerMockedHttpURLLoad):
(WebKit::WebFrameTest::registerMockedChromeURLLoad):
* tests/WebViewTest.cpp:
(WebKit::TEST_F):
(WebKit::WebViewTest::testAutoResize):
(WebKit::WebViewTest::testTextInputType):

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

7 years agoUnreviewed, update chromium test expectations.
ukai@chromium.org [Tue, 26 Jun 2012 02:28:35 +0000 (02:28 +0000)]
Unreviewed, update chromium test expectations.

* platform/chromium/TestExpectations:

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

7 years agoValue profiling should use tier-up threshold randomization to get more coverage
fpizlo@apple.com [Tue, 26 Jun 2012 02:14:07 +0000 (02:14 +0000)]
Value profiling should use tier-up threshold randomization to get more coverage
https://bugs.webkit.org/show_bug.cgi?id=89802

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

This patch causes both LLInt and Baseline JIT code to take the OSR slow path several
times before actually doing OSR. If we take the OSR slow path before the execution
count threshold is reached, then we just call CodeBlock::updateAllPredictions() to
compute the current latest least-upper-bound SpecType of all values seen in each
ValueProfile.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::stronglyVisitStrongReferences):
(JSC::CodeBlock::updateAllPredictionsAndCountLiveness):
(JSC):
(JSC::CodeBlock::updateAllPredictions):
(JSC::CodeBlock::shouldOptimizeNow):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::llintExecuteCounter):
(JSC::CodeBlock::jitExecuteCounter):
(CodeBlock):
(JSC::CodeBlock::updateAllPredictions):
* bytecode/ExecutionCounter.cpp:
(JSC::ExecutionCounter::setThreshold):
(JSC::ExecutionCounter::status):
(JSC):
* bytecode/ExecutionCounter.h:
(JSC::ExecutionCounter::count):
(ExecutionCounter):
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGOperations.cpp:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::jitCompileAndSetHeuristics):
(JSC::LLInt::entryOSR):
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::JSGlobalObject):
(JSC):
* runtime/JSGlobalObject.h:
(JSGlobalObject):
(JSC::JSGlobalObject::weakRandomInteger):
* runtime/Options.cpp:
(Options):
(JSC::Options::initializeOptions):
* runtime/Options.h:
(Options):
* runtime/WeakRandom.h:
(WeakRandom):
(JSC::WeakRandom::seedUnsafe):

LayoutTests:

Reviewed by Gavin Barraclough.

* fast/js/dfg-store-unexpected-value-into-argument-and-osr-exit-expected.txt: Added.
* fast/js/dfg-store-unexpected-value-into-argument-and-osr-exit.html: Added.
* fast/js/script-tests/dfg-store-unexpected-value-into-argument-and-osr-exit.js: Added.
(foo):

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

7 years ago[chromium] Ensure that the compositor code which is aware of flipped status of video...
commit-queue@webkit.org [Tue, 26 Jun 2012 02:02:32 +0000 (02:02 +0000)]
[chromium] Ensure that the compositor code which is aware of flipped status of video-textures
per platform executes on Windows.
https://bugs.webkit.org/show_bug.cgi?id=89914

Patch by Anantanarayanan G Iyengar <ananta@chromium.org> on 2012-06-25
Reviewed by James Robinson.

No new tests. (HW video decode is still only being tested manually for orientation)

* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::appendQuads):

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

7 years ago[Chromium] Let the embedder override the max page scale factor set by the page
abarth@webkit.org [Tue, 26 Jun 2012 01:59:57 +0000 (01:59 +0000)]
[Chromium] Let the embedder override the max page scale factor set by the page
https://bugs.webkit.org/show_bug.cgi?id=89406

Reviewed by James Robinson.

Chrome on Android has an option to force the web site to allow page
scaling (for accessibility). This patch adds
WebView::setIgnoreViewportTagMaximumScale, which instructs the WebView
to ignore the maximum scale factor supplied by by the page in the
viewport meta tag.

This patch is a bit different from how this is implemented on the
chromium-android branch, but I'll clean up the branch once this patch
lands.

* public/WebView.h:
(WebView):
* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::dispatchViewportPropertiesDidChange):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::setIgnoreViewportTagMaximumScale):
(WebKit):
* src/WebViewImpl.h:
(WebViewImpl):
(WebKit::WebViewImpl::ignoreViewportTagMaximumScale):
* tests/WebFrameTest.cpp:
(WebKit::TEST_F):
(WebKit):

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

7 years agoUnreviewed, rolling out r121176.
commit-queue@webkit.org [Tue, 26 Jun 2012 01:57:37 +0000 (01:57 +0000)]
Unreviewed, rolling out r121176.
http://trac.webkit.org/changeset/121176
https://bugs.webkit.org/show_bug.cgi?id=89934

[chromium] browser_tests assert failed:
FATAL:native_theme_win.cc(1541)] Check failed: false. Invalid
part: 16 (Requested by ukai on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-25

Source/Platform:

* chromium/public/win/WebThemeEngine.h:
(WebKit::WebThemeEngine::paintProgressBar):

Source/WebCore:

* platform/chromium/PlatformSupport.h:
(PlatformSupport):
* platform/chromium/ScrollbarThemeChromiumWin.cpp:
(WebCore::ScrollbarThemeChromiumWin::buttonSize):

Source/WebKit/chromium:

* src/PlatformSupport.cpp:

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

7 years ago[Shadow] Deleting list distributed to Shadow DOM does not work correctly.
shinyak@chromium.org [Tue, 26 Jun 2012 01:49:11 +0000 (01:49 +0000)]
[Shadow] Deleting list distributed to Shadow DOM does not work correctly.
https://bugs.webkit.org/show_bug.cgi?id=89170

Reviewed by Ryosuke Niwa.

Source/WebCore:

When deleting several elements distributed to Shadow DOM, some renderers might be gone in
processing deletion. To fix them, we should call isContentEditable() instead of rendererIsEditable().

Test: editing/shadow/delete-list-in-shadow.html

* editing/DeleteFromTextNodeCommand.cpp:
(WebCore::DeleteFromTextNodeCommand::doApply):

LayoutTests:

* editing/shadow/delete-list-in-shadow-expected.txt: Added.
* editing/shadow/delete-list-in-shadow.html: Added.

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

7 years ago[Chromium] Fix the css stylesheet for android media controls after recent changes
commit-queue@webkit.org [Tue, 26 Jun 2012 01:34:36 +0000 (01:34 +0000)]
[Chromium] Fix the css stylesheet for android media controls after recent changes
https://bugs.webkit.org/show_bug.cgi?id=89910

Patch by Min Qin <qinmin@chromium.org> on 2012-06-25
Reviewed by Adam Barth.

After the recent changes on upstream chrome video controls, we need to change the css style sheet for chrome on android.
No tests needed, just css changes.

* css/mediaControlsChromiumAndroid.css:
(audio):
(audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
(::-webkit-media-controls):
(audio::-webkit-media-controls-enclosure, video::-webkit-media-controls-enclosure):
(video::-webkit-media-controls-enclosure):
(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
(audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
(audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
(audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
(video::-webkit-media-controls-fullscreen-button):
(input[type="range"]::-webkit-media-slider-container):
(input[type="range"]::-webkit-media-slider-thumb):
(audio::-webkit-media-controls-fullscreen-button):

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

7 years ago[Qt] Avoid a deep copy of QImage in GraphicsContext3D::getImageData.
commit-queue@webkit.org [Tue, 26 Jun 2012 01:30:19 +0000 (01:30 +0000)]
[Qt] Avoid a deep copy of QImage in GraphicsContext3D::getImageData.
https://bugs.webkit.org/show_bug.cgi?id=89865

Patch by Huang Dongsung <luxtella@company100.net> on 2012-06-25
Reviewed by Noam Rosenthal.

No new tests. Covered by existing tests.

* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3D::getImageData):

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

7 years agoReduce memory footprint of BitmapImage Vectors.
commit-queue@webkit.org [Tue, 26 Jun 2012 01:26:17 +0000 (01:26 +0000)]
Reduce memory footprint of BitmapImage Vectors.
https://bugs.webkit.org/show_bug.cgi?id=86563

Patch by Nick Carter <nick@chromium.org> on 2012-06-25
Reviewed by Simon Fraser.

No new tests, affects template params only.

* platform/graphics/BitmapImage.h:
(BitmapImage): use an inline capacity of 1 for the image frame Vector
* platform/image-decoders/ImageDecoder.h:
(ImageDecoder): use an inline capacity of 1 for the image frame Vector

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

7 years agoUnreviewed, rolling out r121145.
tkent@chromium.org [Tue, 26 Jun 2012 01:20:05 +0000 (01:20 +0000)]
Unreviewed, rolling out r121145.
http://trac.webkit.org/changeset/121145
https://bugs.webkit.org/show_bug.cgi?id=89847

Had an objection for the change.

Source/WebCore:

* html/FormController.cpp:
(WebCore):
(WebCore::FormControlState::serializeTo):
(WebCore::FormControlState::deserialize):
(WebCore::formStateSignature):
(WebCore::FormController::formElementsState):
(WebCore::FormController::setStateForNewFormElements):
* html/FormController.h:
(FormControlState):
* html/shadow/CalendarPickerElement.cpp:
(WebCore::addJavaScriptString):

Source/WTF:

* wtf/text/StringBuilder.h:

LayoutTests:

* fast/forms/state-restore-broken-state-expected.txt:
* fast/forms/state-restore-various-values-expected.txt: Removed.
* fast/forms/state-restore-various-values.html: Removed.

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

7 years agoFix progress load reporting for MHTML documents.
jcivelli@chromium.org [Tue, 26 Jun 2012 01:12:06 +0000 (01:12 +0000)]
Fix progress load reporting for MHTML documents.

MHTML documents containing references to resources they don't include
never finish loading.
https://bugs.webkit.org/show_bug.cgi?id=71859

Reviewed by Nate Chapin.

Source/WebCore:

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::scheduleArchiveLoad):

Source/WebKit/chromium:

* tests/EventListenerTest.cpp:
* tests/FrameTestHelpers.cpp:
(FrameTestHelpers):
(WebKit::FrameTestHelpers::registerMockedURLLoad):
(WebKit::FrameTestHelpers::registerMockedURLLoadAsHTML):
(WebKit::FrameTestHelpers::createWebViewAndLoad):
* tests/FrameTestHelpers.h:
(FrameTestHelpers):
* tests/ListenerLeakTest.cpp:
(WebKit::ListenerLeakTest::RunTest):
* tests/WebFrameTest.cpp:
(WebKit::WebFrameTest::registerMockedHttpURLLoad):
(WebKit::WebFrameTest::registerMockedChromeURLLoad):
* tests/WebViewTest.cpp:
(WebKit::TEST_F):
(WebKit::WebViewTest::testAutoResize):
(WebKit::WebViewTest::testTextInputType):
(TestWebViewClient):
(WebKit::TestWebViewClient::TestWebViewClient):
(WebKit::TestWebViewClient::didStartLoading):
(WebKit::TestWebViewClient::didStopLoading):
(WebKit::TestWebViewClient::didChangeLoadProgress):
(WebKit::TestWebViewClient::loadingStarted):
(WebKit::TestWebViewClient::loadingStopped):
(WebKit::TestWebViewClient::loadProgress):
(WebKit):

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

7 years agoput vista back for chromium (non-webkit) bots ...
dpranke@chromium.org [Tue, 26 Jun 2012 00:56:41 +0000 (00:56 +0000)]
put vista back for chromium (non-webkit) bots ...
https://bugs.webkit.org/show_bug.cgi?id=89929

Unreviewed, build fix.

Turns out we've only gotten rid of vista on the webkit tests so
far. Put vista back for the other chromium bots ...

* TestResultServer/static-dashboards/flakiness_dashboard.js:
(chromiumPlatform):
* TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
(test):

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

7 years ago[chromium] Use WebGraphicsContext3D in compositor implementation
jamesr@google.com [Tue, 26 Jun 2012 00:55:55 +0000 (00:55 +0000)]
[chromium] Use WebGraphicsContext3D in compositor implementation
https://bugs.webkit.org/show_bug.cgi?id=89700

Reviewed by Adrienne Walker.

Source/Platform:

Puts all callback destructors in protected section and removes obsolete memory callback signature.

* chromium/public/WebGraphicsContext3D.h:
(WebGraphicsContextLostCallback):
(WebGraphicsErrorMessageCallback):
(WebGraphicsSwapBuffersCompleteCallbackCHROMIUM):
(WebGraphicsMemoryAllocationChangedCallbackCHROMIUM):

Source/WebCore:

This converts the compositor implementation from using WebCore::GraphicsContext3D to using the Platform-provided
WebGraphicsContext3D. This removes several unnecessary layers of indirection/wrapping and cuts down the
compositor's implementation dependencies. GraphicsContext3D.h is still widely used to provide GL enum values.
Most of the changes are purely mechanical - changing type names and the like.

Ownership is changed a bit. Instead of multiple components holding references to the compositor's context, the
context is now owned by the CCGraphicsContext, which is now owned directly by CCLayerTreeHostImpl.
CCLayerTreeHostImpl also has ownership of its CCRenderer (LayerRendererChromium in 3D mode) and passes a
non-owning pointer down to the CCRenderer.

Extension checking is a bit different. The compositor does not (and never has) used extensions provided by
WebGL's request/ensure mechanism. It simply checks for the existence of extensions it needs in the GL_EXTENSIONS
string.

FrameBufferSkPictureCanvasLayerTextureUpdater had to be patched as well, since it was grabbing a GrContext off
of the compositor's GraphicsContext3D. This caused many problems. It was inefficient, since it required a full
state flush when switching between ganesh and compositor calls. The gpu memory management was completely broken
since the compositor clobbered ganesh's onMemoryAllocationChanged callback. This moves FBSkPCLTU over to using
the appropriate SharedGraphicsContext3D, like filters.

* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::updateRect):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):
* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:
(FrameBufferSkPictureCanvasLayerTextureUpdater):
* platform/graphics/chromium/GeometryBinding.cpp:
(WebCore::GeometryBinding::GeometryBinding):
* platform/graphics/chromium/GeometryBinding.h:
(WebKit):
(GeometryBinding):
(WebCore::GeometryBinding::context):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::create):
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::initialize):
(WebCore::LayerRendererChromium::~LayerRendererChromium):
(WebCore::LayerRendererChromium::context):
(WebCore::LayerRendererChromium::debugGLCall):
(WebCore::LayerRendererChromium::setVisible):
(WebCore::LayerRendererChromium::drawStreamVideoQuad):
(WebCore::LayerRendererChromium::drawHeadsUpDisplay):
(WebCore::LayerRendererChromium::swapBuffers):
(WebCore::LayerRendererChromium::onMemoryAllocationChanged):
(WebCore):
(WebCore::LayerRendererChromium::onMemoryAllocationChangedOnImplThread):
(WebCore::LayerRendererChromium::discardFramebuffer):
(WebCore::LayerRendererChromium::ensureFramebuffer):
(WebCore::LayerRendererChromium::onContextLost):
(WebCore::LayerRendererChromium::getFramebufferPixels):
(WebCore::LayerRendererChromium::getFramebufferTexture):
(WebCore::LayerRendererChromium::bindFramebufferToTexture):
(WebCore::LayerRendererChromium::initializeSharedObjects):
(WebCore::LayerRendererChromium::tileCheckerboardProgram):
(WebCore::LayerRendererChromium::solidColorProgram):
(WebCore::LayerRendererChromium::headsUpDisplayProgram):
(WebCore::LayerRendererChromium::renderPassProgram):
(WebCore::LayerRendererChromium::renderPassProgramAA):
(WebCore::LayerRendererChromium::renderPassMaskProgram):
(WebCore::LayerRendererChromium::renderPassMaskProgramAA):
(WebCore::LayerRendererChromium::tileProgram):
(WebCore::LayerRendererChromium::tileProgramOpaque):
(WebCore::LayerRendererChromium::tileProgramAA):
(WebCore::LayerRendererChromium::tileProgramSwizzle):
(WebCore::LayerRendererChromium::tileProgramSwizzleOpaque):
(WebCore::LayerRendererChromium::tileProgramSwizzleAA):
(WebCore::LayerRendererChromium::textureProgram):
(WebCore::LayerRendererChromium::textureProgramFlip):
(WebCore::LayerRendererChromium::textureIOSurfaceProgram):
(WebCore::LayerRendererChromium::videoYUVProgram):
(WebCore::LayerRendererChromium::videoStreamTextureProgram):
(WebCore::LayerRendererChromium::cleanupSharedObjects):
(WebCore::LayerRendererChromium::isContextLost):
* platform/graphics/chromium/LayerRendererChromium.h:
(WebKit):
(WebCore):
(LayerRendererChromium):
(WebCore::LayerRendererChromium::isFramebufferDiscarded):
* platform/graphics/chromium/LayerTextureSubImage.cpp:
(WebCore::LayerTextureSubImage::uploadWithTexSubImage):
(WebCore::LayerTextureSubImage::uploadWithMapTexSubImage):
* platform/graphics/chromium/ManagedTexture.cpp:
(WebCore::ManagedTexture::bindTexture):
(WebCore::ManagedTexture::framebufferTexture2D):
* platform/graphics/chromium/PlatformColor.h:
(WebCore::PlatformColor::bestTextureFormat):
* platform/graphics/chromium/ProgramBinding.cpp:
(WebCore::contextLost):
(WebCore::ProgramBindingBase::init):
(WebCore::ProgramBindingBase::cleanup):
(WebCore::ProgramBindingBase::loadShader):
(WebCore::ProgramBindingBase::createShaderProgram):
* platform/graphics/chromium/ProgramBinding.h:
(WebKit):
(ProgramBindingBase):
(WebCore::ProgramBinding::ProgramBinding):
(WebCore::ProgramBinding::initialize):
* platform/graphics/chromium/ShaderChromium.cpp:
(WebCore::VertexShaderPosTex::init):
(WebCore::VertexShaderPosTexYUVStretch::init):
(WebCore::VertexShaderPos::init):
(WebCore::VertexShaderPosTexTransform::init):
(WebCore::VertexShaderQuad::init):
(WebCore::VertexShaderTile::init):
(WebCore::VertexShaderVideoTransform::init):
(WebCore::FragmentTexAlphaBinding::init):
(WebCore::FragmentTexOpaqueBinding::init):
(WebCore::FragmentShaderOESImageExternal::init):
(WebCore::FragmentShaderRGBATexAlphaAA::init):
(WebCore::FragmentTexClampAlphaAABinding::init):
(WebCore::FragmentShaderRGBATexAlphaMask::init):
(WebCore::FragmentShaderRGBATexAlphaMaskAA::init):
(WebCore::FragmentShaderYUVVideo::init):
(WebCore::FragmentShaderColor::init):
(WebCore::FragmentShaderCheckerboard::init):
* platform/graphics/chromium/ShaderChromium.h:
(WebKit):
(VertexShaderPosTex):
(VertexShaderPosTexYUVStretch):
(VertexShaderPos):
(WebCore::VertexShaderPosTexIdentity::init):
(VertexShaderPosTexTransform):
(VertexShaderQuad):
(VertexShaderTile):
(VertexShaderVideoTransform):
(FragmentTexAlphaBinding):
(FragmentTexOpaqueBinding):
(FragmentShaderOESImageExternal):
(FragmentShaderRGBATexAlphaAA):
(FragmentTexClampAlphaAABinding):
(FragmentShaderRGBATexAlphaMask):
(FragmentShaderRGBATexAlphaMaskAA):
(FragmentShaderYUVVideo):
(FragmentShaderColor):
(FragmentShaderCheckerboard):
* platform/graphics/chromium/TextureCopier.cpp:
(WebCore::AcceleratedTextureCopier::AcceleratedTextureCopier):
(WebCore::AcceleratedTextureCopier::~AcceleratedTextureCopier):
(WebCore::AcceleratedTextureCopier::copyTexture):
* platform/graphics/chromium/TextureCopier.h:
(WebKit):
(WebCore):
(WebCore::AcceleratedTextureCopier::create):
(AcceleratedTextureCopier):
* platform/graphics/chromium/TextureManager.h:
* platform/graphics/chromium/ThrottledTextureUploader.cpp:
(WebCore::ThrottledTextureUploader::Query::Query):
(WebCore::ThrottledTextureUploader::Query::~Query):
(WebCore::ThrottledTextureUploader::Query::begin):
(WebCore::ThrottledTextureUploader::Query::end):
(WebCore::ThrottledTextureUploader::Query::isPending):
(WebCore::ThrottledTextureUploader::Query::wait):
(WebCore::ThrottledTextureUploader::ThrottledTextureUploader):
* platform/graphics/chromium/ThrottledTextureUploader.h:
(WebKit):
(WebCore::ThrottledTextureUploader::create):
(WebCore::ThrottledTextureUploader::Query::create):
(Query):
(ThrottledTextureUploader):
* platform/graphics/chromium/TrackingTextureAllocator.cpp:
(WebCore::TrackingTextureAllocator::TrackingTextureAllocator):
(WebCore::TrackingTextureAllocator::createTexture):
(WebCore::TrackingTextureAllocator::deleteTexture):
(WebCore::TrackingTextureAllocator::deleteAllTextures):
* platform/graphics/chromium/TrackingTextureAllocator.h:
(WebKit):
(WebCore::TrackingTextureAllocator::create):
(TrackingTextureAllocator):
* platform/graphics/chromium/cc/CCGraphicsContext.h:
(CCGraphicsContext):
(WebCore::CCGraphicsContext::create2D):
(WebCore::CCGraphicsContext::create3D):
(WebCore::CCGraphicsContext::context3D):
(WebCore::CCGraphicsContext::CCGraphicsContext):
* platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
(WebCore::CCHeadsUpDisplay::draw):
* platform/graphics/chromium/cc/CCIOSurfaceLayerImpl.cpp:
(WebCore::CCIOSurfaceLayerImpl::~CCIOSurfaceLayerImpl):
(WebCore::CCIOSurfaceLayerImpl::willDraw):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::createContext):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHostClient):
(WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
(LayerRendererCapabilities):
(WebCore::CCLayerTreeHost::needsSharedContext):
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::initializeContext):
(WebCore::CCSingleThreadProxy::recreateContext):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
* platform/graphics/chromium/cc/CCTextureUpdater.cpp:
(WebCore::CCTextureUpdater::update):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::initializeContext):
(WebCore::CCThreadProxy::recreateContext):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::initializeContextOnImplThread):
(WebCore::CCThreadProxy::recreateContextOnImplThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::FramePlane::allocateData):
(WebCore::CCVideoLayerImpl::FramePlane::freeData):
(WebCore::CCVideoLayerImpl::copyPlaneData):

Source/WebKit/chromium:

Updates tests for refactor, mostly by removing unnecessary GraphicsContext3D wrapper around mock contexts.

* WebKit.gypi:
* src/WebLayerTreeView.cpp:
(WebKit::WebLayerTreeView::context):
* src/WebLayerTreeViewImpl.cpp:
* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestAtomicCommit::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::drawLayersOnCCThread):
* tests/CCSingleThreadProxyTest.cpp:
* tests/CCThreadedTest.cpp:
(WebKitTests::TestHooks::createContext):
* tests/CCThreadedTest.h:
(TestHooks):
* tests/Canvas2DLayerBridgeTest.cpp:
(Canvas2DLayerBridgeTest::fullLifecycleTest):
* tests/CompositorFakeGraphicsContext3D.h: Removed.
* tests/DrawingBufferChromiumTest.cpp: Removed.
* tests/FakeCCLayerTreeHostClient.h:
* tests/FakeGraphicsContext3DTest.cpp:
(TEST):
* tests/GraphicsLayerChromiumTest.cpp:
* tests/LayerRendererChromiumTest.cpp:
(FakeLayerRendererChromium::FakeLayerRendererChromium):
(LayerRendererChromiumTest::LayerRendererChromiumTest):
(LayerRendererChromiumTest):
(TEST_F):
(TEST):
* tests/TextureCopierTest.cpp:
* tests/ThrottledTextureUploaderTest.cpp:
(WebKit::TEST):
* tests/TiledLayerChromiumTest.cpp:

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

7 years ago[Lion WK2] fast/loader/reload-zero-byte-plugin.html hits assert
andersca@apple.com [Tue, 26 Jun 2012 00:43:47 +0000 (00:43 +0000)]
[Lion WK2] fast/loader/reload-zero-byte-plugin.html hits assert
https://bugs.webkit.org/show_bug.cgi?id=89611
<rdar://problem/11714023>

Reviewed by Sam Weinig.

Source/WebKit2:

Make sure to send the response along to the plug-in in the case where the stream was empty.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::finishedLoading):

LayoutTests:

Remove the test from the Skipped list.

* platform/mac-wk2/Skipped:

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

7 years agoremove chromium vista baselines
dpranke@chromium.org [Tue, 26 Jun 2012 00:31:21 +0000 (00:31 +0000)]
remove chromium vista baselines
https://bugs.webkit.org/show_bug.cgi?id=89927

Unreviewed, expectations change.

Now that we no longer run tests on Vista, no need for the
baselines either.

* platform/chromium-win-vista/canvas/philip/tests/2d.line.cap.round-expected.txt: Removed.
* platform/chromium-win-vista/canvas/philip/tests/2d.strokeRect.zero.5-expected.txt: Removed.
* platform/chromium-win-vista/compositing/geometry/horizontal-scroll-composited-expected.png: Removed.
* platform/chromium-win-vista/compositing/overflow/theme-affects-visual-overflow-expected.txt: Removed.
* platform/chromium-win-vista/compositing/shadows/shadow-drawing-expected.png: Removed.
* platform/chromium-win-vista/css1/font_properties/font-expected.txt: Removed.
* platform/chromium-win-vista/css1/text_properties/line_height-expected.txt: Removed.
* platform/chromium-win-vista/css1/units/percentage_units-expected.png: Removed.
* platform/chromium-win-vista/css2.1/t040103-ident-03-c-expected.png: Removed.
* platform/chromium-win-vista/css2.1/t0803-c5505-imrgn-00-a-ag-expected.txt: Removed.
* platform/chromium-win-vista/css3/selectors3/html/css3-modsel-23-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/html/css3-modsel-24-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/html/css3-modsel-32-expected.txt: Removed.
* platform/chromium-win-vista/css3/selectors3/html/css3-modsel-68-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/html/css3-modsel-69-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/xhtml/css3-modsel-23-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/xhtml/css3-modsel-24-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/xhtml/css3-modsel-69-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/xml/css3-modsel-23-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/xml/css3-modsel-24-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/xml/css3-modsel-68-expected.png: Removed.
* platform/chromium-win-vista/css3/selectors3/xml/css3-modsel-69-expected.png: Removed.
* platform/chromium-win-vista/editing/inserting/4959067-expected.txt: Removed.
* platform/chromium-win-vista/editing/pasteboard/paste-xml-expected.txt: Removed.
* platform/chromium-win-vista/editing/style/style-3681552-fix-002-expected.txt: Removed.
* platform/chromium-win-vista/fast/backgrounds/size/backgroundSize20-expected.png: Removed.
* platform/chromium-win-vista/fast/backgrounds/size/backgroundSize21-expected.png: Removed.
* platform/chromium-win-vista/fast/backgrounds/size/backgroundSize22-expected.png: Removed.
* platform/chromium-win-vista/fast/block/positioning/trailing-space-test-expected.png: Removed.
* platform/chromium-win-vista/fast/box-shadow/single-pixel-shadow-expected.png: Removed.
* platform/chromium-win-vista/fast/canvas/canvas-fillRect-gradient-shadow-expected.txt: Removed.
* platform/chromium-win-vista/fast/canvas/canvas-resize-after-paint-without-layout-expected.png: Removed.
* platform/chromium-win-vista/fast/canvas/webgl/context-lost-expected.txt: Removed.
* platform/chromium-win-vista/fast/compact/001-expected.png: Removed.
* platform/chromium-win-vista/fast/css/box-shadow-and-border-radius-expected.png: Removed.
* platform/chromium-win-vista/fast/css/text-rendering-expected.png: Removed.
* platform/chromium-win-vista/fast/css/text-rendering-expected.txt: Removed.
* platform/chromium-win-vista/fast/css/zoom-body-scroll-expected.txt: Removed.
* platform/chromium-win-vista/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt: Removed.
* platform/chromium-win-vista/fast/dom/HTMLProgressElement/progress-element-expected.txt: Removed.
* platform/chromium-win-vista/fast/forms/select-writing-direction-natural-expected.txt: Removed.
* platform/chromium-win-vista/fast/inline-block/002-expected.png: Removed.
* platform/chromium-win-vista/fast/inline/002-expected.png: Removed.
* platform/chromium-win-vista/fast/js/large-expressions-expected.txt: Removed.
* platform/chromium-win-vista/fast/multicol/client-rects-expected.png: Removed.
* platform/chromium-win-vista/fast/multicol/client-rects-expected.txt: Removed.
* platform/chromium-win-vista/fast/multicol/vertical-rl/nested-columns-expected.png: Removed.
* platform/chromium-win-vista/fast/parser/style-script-head-test-expected.png: Removed.
* platform/chromium-win-vista/fast/repaint/background-misaligned-expected.png: Removed.
* platform/chromium-win-vista/fast/repaint/inline-relative-positioned-expected.txt: Removed.
* platform/chromium-win-vista/fast/replaced/image-tag-expected.png: Removed.
* platform/chromium-win-vista/fast/sub-pixel/selection/selection-gaps-at-fractional-offsets-expected.png: Removed.
* platform/chromium-win-vista/fast/table/tableInsideCaption-expected.png: Removed.
* platform/chromium-win-vista/fast/text/atsui-kerning-and-ligatures-expected.png: Removed.
* platform/chromium-win-vista/fast/text/backslash-to-yen-sign-expected.txt: Removed.
* platform/chromium-win-vista/fast/text/international/bidi-mirror-he-ar-expected.txt: Removed.
* platform/chromium-win-vista/fast/text/international/bidi-neutral-run-expected.png: Removed.
* platform/chromium-win-vista/fast/text/international/danda-space-expected.png: Removed.
* platform/chromium-win-vista/fast/text/international/plane2-expected.txt: Removed.
* platform/chromium-win-vista/fast/text/selection-painted-separately-expected.txt: Removed.
* platform/chromium-win-vista/fast/text/selection-rect-rounding-expected.txt: Removed.
* platform/chromium-win-vista/fast/text/stroking-decorations-expected.png: Removed.
* platform/chromium-win-vista/fast/text/stroking-expected.png: Removed.
* platform/chromium-win-vista/fast/text/unicode-variation-selector-expected.png: Removed.
* platform/chromium-win-vista/fast/text/whitespace/normal-after-nowrap-breaking-expected.png: Removed.
* platform/chromium-win-vista/fast/writing-mode/broken-ideographic-font-expected.txt: Removed.
* platform/chromium-win-vista/fast/writing-mode/english-lr-text-expected.png: Removed.
* platform/chromium-win-vista/http/tests/misc/acid2-expected.txt: Removed.
* platform/chromium-win-vista/http/tests/misc/acid2-pixel-expected.png: Removed.
* platform/chromium-win-vista/platform/chromium/compositing/layout-width-change-expected.png: Removed.
* platform/chromium-win-vista/platform/chromium/virtual/gpu/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.txt: Removed.
* platform/chromium-win-vista/platform/chromium/virtual/gpu/fast/canvas/canvas-resize-after-paint-without-layout-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-SVG-1.1/masking-intro-01-f-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-SVG-1.1/text-intro-05-t-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt: Removed.
* platform/chromium-win-vista/svg/as-image/image-respects-pageScaleFactor-expected.png: Removed.
* platform/chromium-win-vista/svg/as-image/image-respects-pageScaleFactor-expected.txt: Removed.
* platform/chromium-win-vista/svg/as-object/svg-embedded-in-html-in-iframe-expected.txt: Removed.
* platform/chromium-win-vista/svg/css/composite-shadow-text-expected.png: Removed.
* platform/chromium-win-vista/svg/css/shadow-changes-expected.png: Removed.
* platform/chromium-win-vista/svg/custom/bug45331-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/js-late-gradient-and-object-creation-expected.png: Removed.
* platform/chromium-win-vista/svg/custom/js-late-pattern-and-object-creation-expected.png: Removed.
* platform/chromium-win-vista/svg/custom/mouse-move-on-svg-root-expected.png: Removed.
* platform/chromium-win-vista/svg/custom/mouse-move-on-svg-root-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/pattern-referencing-preserve-aspect-ratio-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/use-clipped-hit-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/use-disappears-after-style-update-expected.txt: Removed.
* platform/chromium-win-vista/svg/custom/use-modify-target-symbol-expected.txt: Removed.
* platform/chromium-win-vista/svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr-expected.png: Removed.
* platform/chromium-win-vista/svg/dynamic-updates/SVGImageElement-dom-width-attr-expected.png: Removed.
* platform/chromium-win-vista/svg/dynamic-updates/SVGImageElement-dom-x-attr-expected.png: Removed.
* platform/chromium-win-vista/svg/dynamic-updates/SVGImageElement-dom-y-attr-expected.png: Removed.
* platform/chromium-win-vista/svg/dynamic-updates/SVGImageElement-svgdom-height-prop-expected.png: Removed.
* platform/chromium-win-vista/svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop-expected.png: Removed.
* platform/chromium-win-vista/svg/dynamic-updates/SVGImageElement-svgdom-width-prop-expected.png: Removed.
* platform/chromium-win-vista/svg/dynamic-updates/SVGImageElement-svgdom-x-prop-expected.png: Removed.
* platform/chromium-win-vista/svg/dynamic-updates/SVGImageElement-svgdom-y-prop-expected.png: Removed.
* platform/chromium-win-vista/svg/filters/big-sized-filter-2-expected.png: Removed.
* platform/chromium-win-vista/svg/filters/feComposite-expected.png: Removed.
* platform/chromium-win-vista/svg/filters/feDisplacementMap-expected.png: Removed.
* platform/chromium-win-vista/svg/filters/feLighting-crash-expected.png: Removed.
* platform/chromium-win-vista/svg/filters/feMerge-expected.png: Removed.
* platform/chromium-win-vista/svg/filters/shadow-on-filter-expected.png: Removed.
* platform/chromium-win-vista/svg/filters/shadow-on-rect-with-filter-expected.png: Removed.
* platform/chromium-win-vista/svg/filters/subRegion-in-userSpace-expected.png: Removed.
* platform/chromium-win-vista/svg/stroke/zero-length-path-linecap-rendering-expected.txt: Removed.
* platform/chromium-win-vista/svg/stroke/zero-length-subpaths-linecap-rendering-expected.txt: Removed.
* platform/chromium-win-vista/svg/text/bidi-text-query-expected.png: Removed.
* platform/chromium-win-vista/svg/text/bidi-text-query-expected.txt: Removed.
* platform/chromium-win-vista/svg/text/bidi-tspans-expected.txt: Removed.
* platform/chromium-win-vista/svg/text/text-intro-05-t-expected.png: Removed.
* platform/chromium-win-vista/svg/text/text-intro-05-t-expected.txt: Removed.
* platform/chromium-win-vista/svg/zoom/page/zoom-foreignObject-expected.png: Removed.
* platform/chromium-win-vista/svg/zoom/page/zoom-hixie-rendering-model-004-expected.png: Removed.
* platform/chromium-win-vista/svg/zoom/page/zoom-mask-with-percentages-expected.png: Removed.
* platform/chromium-win-vista/tables/mozilla/bugs/bug120107-expected.png: Removed.
* platform/chromium-win-vista/tables/mozilla/bugs/bug1271-expected.png: Removed.
* platform/chromium-win-vista/tables/mozilla/bugs/bug12908-2-expected.png: Removed.
* platform/chromium-win-vista/tables/mozilla/bugs/bug13169-expected.png: Removed.
* platform/chromium-win-vista/tables/mozilla/bugs/bug196870-expected.png: Removed.
* platform/chromium-win-vista/tables/mozilla/bugs/bug50695-2-expected.png: Removed.
* platform/chromium-win-vista/tables/mozilla/marvin/tables_align_center-expected.png: Removed.
* platform/chromium-win-vista/tables/mozilla_expected_failures/bugs/bug61042-1-expected.png: Removed.
* platform/chromium-win-vista/tables/mozilla_expected_failures/bugs/bug92647-1-expected.png: Removed.
* platform/chromium-win-vista/transforms/2d/hindi-rotated-expected.png: Removed.
* platform/chromium-win-vista/transforms/2d/hindi-rotated-expected.txt: Removed.

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

7 years ago[chromium] Make CCThreadProxy not draw a frame mid-commit
enne@google.com [Tue, 26 Jun 2012 00:29:20 +0000 (00:29 +0000)]
[chromium] Make CCThreadProxy not draw a frame mid-commit
https://bugs.webkit.org/show_bug.cgi?id=89905

Reviewed by James Robinson.

If commitComplete is not called before the next frame goes up, then
then the max scroll position on the root scroll layer is not updated.
This causes the compositor-side scrollbar to have an incorrect
visibleSize, causing the thumbRect to become stretched, relative to
when it was originally painted.

CCScheduler::setVisible has the side effect of kicking off a frame, so
move it last.

* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::scheduledActionCommit):

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

7 years agoupdate flakiness dashboard after removing chromium-vista bots
dpranke@chromium.org [Tue, 26 Jun 2012 00:18:30 +0000 (00:18 +0000)]
update flakiness dashboard after removing chromium-vista bots
https://bugs.webkit.org/show_bug.cgi?id=89925

Unreviewed, build fix.

More changes missed in r121194 :(.

* TestResultServer/static-dashboards/flakiness_dashboard.js:
(chromiumPlatform):
* TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
(test):

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

7 years ago[Chromium] Add a chromium-webkit API to create a serializable file system.
commit-queue@webkit.org [Tue, 26 Jun 2012 00:11:55 +0000 (00:11 +0000)]
[Chromium] Add a chromium-webkit API to create a serializable file system.
https://bugs.webkit.org/show_bug.cgi?id=89776

In order to send a DOMFileSystem as part of WebIntent payload data it
should be serializable. Therefore, I added an API that allows us to
create serializable file system in chromium code.

Patch by Kausalya Madhusudhanan <kmadhusu@chromium.org> on 2012-06-25
Reviewed by Adam Barth.

* public/WebFrame.h:
(WebFrame):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::createSerializableFileSystem):
(WebKit):
* src/WebFrameImpl.h:
(WebFrameImpl):

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

7 years ago[BlackBerry] Add JSC statistics into about:memory
commit-queue@webkit.org [Tue, 26 Jun 2012 00:08:19 +0000 (00:08 +0000)]
[BlackBerry] Add JSC statistics into about:memory
https://bugs.webkit.org/show_bug.cgi?id=89779

Patch by Yong Li <yoli@rim.com> on 2012-06-25
Reviewed by Rob Buis.

Source/JavaScriptCore:

Add MemoryStatistics.cpp into build, and fill JITBytes for BlackBerry port.

* PlatformBlackBerry.cmake:
* runtime/MemoryStatistics.cpp:
(JSC::globalMemoryStatistics):

Source/WebKit/blackberry:

Add detailed JS memory statistics to about:memory page.

* WebCoreSupport/AboutData.cpp:
(WebCore::dumpJSCTypeCountSetToTableHTML):
(WebCore):
(WebCore::memoryPage):

Source/WTF:

Turn on WTF_USE_EXPORT_MACROS for BlackBerry port.
This will make macros like JS_EXPORT_PRIVATE work without
extra porting.

* wtf/Platform.h:

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

7 years agoEventSource: Events should not be dispatched after close()
commit-queue@webkit.org [Mon, 25 Jun 2012 23:59:55 +0000 (23:59 +0000)]
EventSource: Events should not be dispatched after close()
https://bugs.webkit.org/show_bug.cgi?id=85346

Patch by Pablo Flouret <pablof@motorola.com> on 2012-06-25
Reviewed by Adam Barth.

Source/WebCore:

Spec changed to make sure that no events are dispatched after close() is
called, even if more data was received before the call to close().

See,
https://www.w3.org/Bugs/Public/show_bug.cgi?id=14331#c5
http://html5.org/tools/web-apps-tracker?from=6771&to=6772

Firefox behaves like this already.

Test: http/tests/eventsource/eventsource-events-after-close.html

* page/EventSource.cpp:
(WebCore::EventSource::parseEventStream):

LayoutTests:

* http/tests/eventsource/eventsource-events-after-close-expected.txt: Added.
* http/tests/eventsource/eventsource-events-after-close.html: Added.

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

7 years agoremove support for chromium vista from tools
dpranke@chromium.org [Mon, 25 Jun 2012 23:53:10 +0000 (23:53 +0000)]
remove support for chromium vista from tools
https://bugs.webkit.org/show_bug.cgi?id=89915

Reviewed by Tony Chang.

Tools:

This change is all deleting code and updating tests to handle
the configuration being gone. All tests now pass except for a
few unittests for the flakiness dashboard which were failing
before this patch.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js:
* Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:
(BaselineOptimizerTest.test_complex_shadowing):
* Scripts/webkitpy/layout_tests/port/builders.py:
* Scripts/webkitpy/layout_tests/port/chromium.py:
* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
* Scripts/webkitpy/layout_tests/port/chromium_win.py:
(ChromiumWinPort):
* Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
(ChromiumWinTest.test_versions):
(ChromiumWinTest.test_baseline_path):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
* Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
(BuildCoverageExtrapolatorTest.test_extrapolate):

LayoutTests:

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed. Build fix.
hclam@chromium.org [Mon, 25 Jun 2012 23:28:19 +0000 (23:28 +0000)]
Unreviewed. Build fix.

Rebaseline layout test expectations from r121179.

* platform/chromium-linux/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac-snowleopard/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-win/compositing/reflections/animation-inside-reflection-expected.png:

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

7 years agoFixing compilation failure in StyleResolver.cpp/CSSParser.cpp
commit-queue@webkit.org [Mon, 25 Jun 2012 23:15:44 +0000 (23:15 +0000)]
Fixing compilation failure in StyleResolver.cpp/CSSParser.cpp
https://bugs.webkit.org/show_bug.cgi?id=89892

Patch by Mike West <mkwst@chromium.com> on 2012-06-25
Reviewed by Alexis Menard.

Adding CSSPropertyVariable to switch statements in CSSParser and
StyleResolver to fix compilation errors under ninja/clang. I've
added both as new cases to the switches, with FIXME comments for
implementation.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):

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

7 years agoFix for a memory leak with MHTMLArchives.
jcivelli@chromium.org [Mon, 25 Jun 2012 23:03:28 +0000 (23:03 +0000)]
Fix for a memory leak with MHTMLArchives.

MHTML files present a flat list of frames and resources but the WebKit Archive
has a tree strcture. So the MHTMLArchive class make sures that every frame
knows about any other frames and resources.
Because these objects are ref counted, that would introduce circular references
preventing the entire Archive from being deleted.
This fixes this by:
- making sure the top-frame (which appears as the first entry in the MHTML) is
  not referenced by the other frames.
- when the main frame is deleted it traverse the entire subarchive (sub-frames)
  graph and makes sure they clear all their references to other subarchives.

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

Reviewed by Adam Barth.

* loader/archive/Archive.cpp:
(WebCore::Archive::clearAllSubframeArchives):
(WebCore):
(WebCore::Archive::clearAllSubframeArchivesImpl):
* loader/archive/Archive.h:
(Archive):
* loader/archive/mhtml/MHTMLArchive.cpp:
(WebCore::MHTMLArchive::~MHTMLArchive):
(WebCore):
(WebCore::MHTMLArchive::create):
* loader/archive/mhtml/MHTMLArchive.h:
(MHTMLArchive):

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

7 years agoUnreviewed, rolling out r121178.
hclam@chromium.org [Mon, 25 Jun 2012 22:45:39 +0000 (22:45 +0000)]
Unreviewed, rolling out r121178.
http://trac.webkit.org/changeset/121178
https://bugs.webkit.org/show_bug.cgi?id=89784

New unit test added is failing on WebKit Linux (dbg)

Source/WebCore:

* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::setBounds):

Source/WebKit/chromium:

* tests/LayerChromiumTest.cpp:

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

7 years agoUnreviewed, rolling out r121137.
hclam@chromium.org [Mon, 25 Jun 2012 22:27:06 +0000 (22:27 +0000)]
Unreviewed, rolling out r121137.
http://trac.webkit.org/changeset/121137

Chromium build fix, (un)touch files to build on Chromium Win
Release

* css/CSSParserMode.h:
* css/CSSValue.h:
(WebCore):
* css/CSSVariableValue.h:
* page/Settings.h:
* rendering/style/RenderStyle.h:
* rendering/style/StyleRareInheritedData.h:
* rendering/style/StyleVariableData.h:

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

7 years agoMac bot gardening.
jonlee@apple.com [Mon, 25 Jun 2012 22:25:05 +0000 (22:25 +0000)]
Mac bot gardening.
https://bugs.webkit.org/show_bug.cgi?id=89611

* platform/mac-wk2/Skipped:

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

7 years agoUnreviewed, rolling out r121129.
hclam@chromium.org [Mon, 25 Jun 2012 22:19:03 +0000 (22:19 +0000)]
Unreviewed, rolling out r121129.
http://trac.webkit.org/changeset/121129
https://bugs.webkit.org/show_bug.cgi?id=89542

Chromium ASan failure: crbug.com/134402

Source/WebCore:

* css/CSSParser.cpp:
(WebCore::CSSParserContext::CSSParserContext):
(WebCore::operator==):
(WebCore):
(WebCore::CSSParser::detectDashToken):
(WebCore::CSSParser::lex):
* css/CSSParser.h:
(CSSParser):
* css/CSSParserMode.h:
(CSSParserContext):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
* page/Settings.h:
(Settings):
* testing/InternalSettings.cpp:
* testing/InternalSettings.h:
(InternalSettings):
* testing/InternalSettings.idl:

Source/WebKit/chromium:

* features.gypi:
* public/WebSettings.h:
* src/WebSettingsImpl.cpp:
* src/WebSettingsImpl.h:
(WebSettingsImpl):

LayoutTests:

* fast/css/variables/border-width.html:
* fast/css/variables/build-supports-variables-expected.txt: Removed.
* fast/css/variables/build-supports-variables.html: Removed.
* fast/css/variables/colors-test.html:
* fast/css/variables/complex-cycle.html:
* fast/css/variables/computed-style.html:
* fast/css/variables/inherited-values.html:
* fast/css/variables/inline-styles.html:
* fast/css/variables/invalid-shorthand.html:
* fast/css/variables/invalid-variable-value.html:
* fast/css/variables/multi-level-cycle.html:
* fast/css/variables/redefinition.html:
* fast/css/variables/shorthand.html:
* fast/css/variables/simple-cycle.html:
* fast/css/variables/transform-test.html:
* fast/css/variables/undefined.html:
* fast/css/variables/use-before-defined.html:
* fast/css/variables/var-inside-shorthand.html:
* fast/css/variables/variable-chain.html:

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

7 years agoRoll Chromium DEPS to r144020
hclam@chromium.org [Mon, 25 Jun 2012 22:13:24 +0000 (22:13 +0000)]
Roll Chromium DEPS to r144020
https://bugs.webkit.org/show_bug.cgi?id=89912

Build fixed now! Unreviewed.

Rolled DEPS to fix chromium build.
Patch by Scott Graham <scottmg@chromium.org>.

* DEPS:

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

7 years agoIndexedDB: Stub out new onSuccess() handler for chromium
commit-queue@webkit.org [Mon, 25 Jun 2012 22:09:36 +0000 (22:09 +0000)]
IndexedDB: Stub out new onSuccess() handler for chromium
https://bugs.webkit.org/show_bug.cgi?id=89895

This is the chromium side of a refactor which will
introduce an onSuccess() method which includes the raw
SerializedScriptValue to the frontend, so the primaryKey
injection can happen in the front end, rather than
the V8 helper process.

Patch by Alec Flett <alecflett@chromium.org> on 2012-06-25
Reviewed by Darin Fisher.

* public/WebIDBCallbacks.h:
(WebKit):
(WebKit::WebIDBCallbacks::onSuccess):
* src/IDBCallbacksProxy.cpp:
(WebKit::IDBCallbacksProxy::onSuccess):
* src/IDBCallbacksProxy.h:
(IDBCallbacksProxy):
* src/WebIDBCallbacksImpl.cpp:
(WebKit::WebIDBCallbacksImpl::onSuccess):
(WebKit):
* src/WebIDBCallbacksImpl.h:
(WebIDBCallbacksImpl):

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

7 years agoUse InterpolationLow on chromium-android
abarth@webkit.org [Mon, 25 Jun 2012 22:01:23 +0000 (22:01 +0000)]
Use InterpolationLow on chromium-android
https://bugs.webkit.org/show_bug.cgi?id=89849

Reviewed by Daniel Bates.

Source/WebCore:

Min Qin writes:

  Using InterpolationHigh is very very expensive when resampling
  images.  For example, it took 1400ms to decode an image on
  http://www.crossfitsunnyvale.com/blog/, but it took 2800 ms to do the
  resampling Switch to InterpolationLow will result in linear
  resampling. It is much faster as the time it tooks is almost
  non-noticable [sic] on the trace.

* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::State::State):

Source/WTF:

Introduce a USE macro to control image interpolation quality.

* wtf/Platform.h:

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

7 years agoIndexedDB: Remove unused backend property accessors
jsbell@chromium.org [Mon, 25 Jun 2012 21:57:14 +0000 (21:57 +0000)]
IndexedDB: Remove unused backend property accessors
https://bugs.webkit.org/show_bug.cgi?id=89893

Reviewed by Darin Fisher.

Source/WebCore:

Following the "metadata" API addition in trac.webkit.org/changeset/121059
the IDBXXXBackendInterface types no longer need per-property accessors.

No new tests - no functional changes.

* Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Remove method implementation.
* Modules/indexeddb/IDBDatabaseBackendImpl.h: Remove methods.
(IDBDatabaseBackendImpl):
* Modules/indexeddb/IDBDatabaseBackendInterface.h: Remove methods.
(IDBDatabaseBackendInterface):
* Modules/indexeddb/IDBIndexBackendImpl.h: Make methods simple accessors.
(IDBIndexBackendImpl):
(WebCore::IDBIndexBackendImpl::name):
(WebCore::IDBIndexBackendImpl::keyPath):
(WebCore::IDBIndexBackendImpl::unique):
(WebCore::IDBIndexBackendImpl::multiEntry):
* Modules/indexeddb/IDBIndexBackendInterface.h: Remove methods.
* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: Remove method implementation.
* Modules/indexeddb/IDBObjectStoreBackendImpl.h: Make methods simple accessors.
(IDBObjectStoreBackendImpl):
(WebCore::IDBObjectStoreBackendImpl::name):
(WebCore::IDBObjectStoreBackendImpl::keyPath):
(WebCore::IDBObjectStoreBackendImpl::autoIncrement):
* Modules/indexeddb/IDBObjectStoreBackendInterface.h: Remove methods.

Source/WebKit/chromium:

Following the "metadata" API addition in trac.webkit.org/changeset/121059
per-property accessors can be removed from the Chromium WebKit API.

* src/WebIDBDatabaseImpl.cpp: Removed name, version, objectStoreNames.
* src/WebIDBDatabaseImpl.h:
(WebIDBDatabaseImpl):
* src/WebIDBIndexImpl.cpp: Removed name, keyPath, unique, multiEntry.
* src/WebIDBIndexImpl.h:
(WebIDBIndexImpl):
* src/WebIDBObjectStoreImpl.cpp: Removed name, keyPath, autoIncrement, indexNames.
* src/WebIDBObjectStoreImpl.h:
(WebIDBObjectStoreImpl):

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

7 years agoAdd layout tests for audio codecs
commit-queue@webkit.org [Mon, 25 Jun 2012 21:45:37 +0000 (21:45 +0000)]
Add layout tests for audio codecs
https://bugs.webkit.org/show_bug.cgi?id=88794

Patch by Raymond Toy <rtoy@google.com> on 2012-06-25
Reviewed by Chris Rogers.

New tests and expected results
* webaudio/codec-tests/aac/vbr-128kbps-44khz-expected.wav: Added.
* webaudio/codec-tests/aac/vbr-128kbps-44khz.html: Added.
* webaudio/codec-tests/mp3/128kbps-44khz-expected.wav: Added.
* webaudio/codec-tests/mp3/128kbps-44khz.html: Added.
* webaudio/codec-tests/vorbis/vbr-128kbps-44khz-expected.wav: Added.
* webaudio/codec-tests/vorbis/vbr-128kbps-44khz.html: Added.
* webaudio/codec-tests/vorbis/vbr-70kbps-44khz-expected.wav: Added.
* webaudio/codec-tests/vorbis/vbr-70kbps-44khz.html: Added.
* webaudio/codec-tests/vorbis/vbr-96kbps-44khz-expected.wav: Added.
* webaudio/codec-tests/vorbis/vbr-96kbps-44khz.html: Added.
* webaudio/codec-tests/wav/24bit-22khz-resample-expected.wav: Added.
* webaudio/codec-tests/wav/24bit-22khz-resample.html: Added.
* webaudio/codec-tests/wav/24bit-44khz-expected.wav: Added.
* webaudio/codec-tests/wav/24bit-44khz.html: Added.
* webaudio/resources/audio-codec-test.js: Added.
(runDecodingTest):
(finishedLoading):

Media files for the tests
* webaudio/resources/media/128kbps-44khz.mp3: Added.
* webaudio/resources/media/24bit-22khz.wav: Added.
* webaudio/resources/media/24bit-44khz.wav: Added.
* webaudio/resources/media/vbr-128kbps-44khz.m4a: Added.
* webaudio/resources/media/vbr-128kbps-44khz.ogg: Added.
* webaudio/resources/media/vbr-70kbps-44khz.ogg: Added.
* webaudio/resources/media/vbr-96kbps-44khz.ogg: Added.

Platform-specific expected results
* platform/chromium-linux/webaudio/codec-tests/aac/vbr-128kbps-44khz-expected.wav: Added.
* platform/chromium-linux/webaudio/codec-tests/mp3/128kbps-44khz-expected.wav: Added.
* platform/chromium-linux/webaudio/codec-tests/wav/24bit-22khz-resample-expected.wav: Added.
* platform/chromium-mac/webaudio/codec-tests/aac/vbr-128kbps-44khz-expected.wav: Added.
* platform/chromium-mac/webaudio/codec-tests/mp3/128kbps-44khz-expected.wav: Added.
* platform/chromium-win/webaudio/codec-tests/aac/vbr-128kbps-44khz-expected.wav: Added.
* platform/chromium-win/webaudio/codec-tests/mp3/128kbps-44khz-expected.wav: Added.
* platform/chromium-win/webaudio/codec-tests/wav/24bit-22khz-resample-expected.wav: Added.

New test expectations
* platform/chromium/TestExpectations: Disable aac/mp3 tests until bots have support.
* platform/efl/TestExpectations: Disable all webaudio codec tests
* platform/gtk/TestExpectations: Disable all webaudio codec tests
* platform/mac/TestExpectations: Disable all webaudio codec tests
* platform/qt/TestExpectations: Disable all webaudio codec tests

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

7 years ago[Chromium] add empty impl of WebThemeEngine::getSize() for DRT
hclam@chromium.org [Mon, 25 Jun 2012 21:31:38 +0000 (21:31 +0000)]
[Chromium] add empty impl of WebThemeEngine::getSize() for DRT
https://bugs.webkit.org/show_bug.cgi?id=89907

Not reviewed. Fix build in Chromium.

Patch by Scott Graham <scottmg@chromium.org> on 2012-06-25

* DumpRenderTree/chromium/WebThemeEngineDRTWin.cpp:
(WebThemeEngineDRTWin::getSize):
* DumpRenderTree/chromium/WebThemeEngineDRTWin.h:
(WebThemeEngineDRTWin):

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

7 years ago[EFL] Add support for building with ENABLE_MEDIA_STREAM
commit-queue@webkit.org [Mon, 25 Jun 2012 21:26:06 +0000 (21:26 +0000)]
[EFL] Add support for building with ENABLE_MEDIA_STREAM
https://bugs.webkit.org/show_bug.cgi?id=88413

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-25
Reviewed by Dirk Pranke.

Add files which are needed for supporting the Media Stream
feature.

No change in functionality so no new tests.

* PlatformEfl.cmake:

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

7 years ago[Texmap] TextureMapperPaintOptions should keep current surface.
commit-queue@webkit.org [Mon, 25 Jun 2012 21:18:22 +0000 (21:18 +0000)]
[Texmap] TextureMapperPaintOptions should keep current surface.
https://bugs.webkit.org/show_bug.cgi?id=89266

Source/WebCore:

Before this patch, if a replica layer has a descendant replica child, the child
layer does not render the result in the parent layer's surface because
TextureMapperPaintOptions does not keep current surface.
This patch amends that TextureMapperPaintOptions keeps current surface before
calling paintSelfAndChildrenWithReplica recursively, so previous surface could be
restored after paintSelfAndChildrenWithReplica.

Patch by Huang Dongsung <luxtella@company100.net> on 2012-06-25
Reviewed by Noam Rosenthal.

Test: compositing/reflections/animation-inside-reflection.html

* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::paintRecursive):

LayoutTests:

Add a opacity property to two div layers in animation-insiVde-reflection
test.
Texmap has a bug when a transparent reflection layer has another
transparent reflection layer, so two reflection layer in
animation-inside-reflection test have opacity in order to cover Texmap's
bug.

Patch by Huang Dongsung <luxtella@company100.net> on 2012-06-25
Reviewed by Noam Rosenthal.

* compositing/reflections/animation-inside-reflection.html:
* platform/chromium-linux/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac-leopard/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac-snowleopard/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-win/compositing/reflections/animation-inside-reflection-expected.png:
* platform/efl/compositing/reflections/animation-inside-reflection-expected.png:
* platform/mac-snowleopard/compositing/reflections/animation-inside-reflection-expected.png:
* platform/qt/compositing/reflections/animation-inside-reflection-expected.png: Added.
* platform/qt/compositing/reflections/animation-inside-reflection-expected.txt: Added.

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

7 years ago[chromium] Layer chromium should need a redraw after getting its first non-empty...
commit-queue@webkit.org [Mon, 25 Jun 2012 20:19:35 +0000 (20:19 +0000)]
[chromium] Layer chromium should need a redraw after getting its first non-empty bounds.
https://bugs.webkit.org/show_bug.cgi?id=89784

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-25
Reviewed by James Robinson.

Previously, we'd only set needs redraw if the old bounds were zero,
and the new bounds were non-zero, but we should actually have
checked that the old bounds were non-empty.

Source/WebCore:

Unit test: LayerChromiumTestWithoutFixture.setBoundsTriggersSetNeedsRedrawAfterGettingNonEmptyBounds

* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::setBounds):

Source/WebKit/chromium:

* tests/LayerChromiumTest.cpp:

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

7 years agoSource/Platform: Plumb Scrollbar button dimensions through WebThemeEngine
commit-queue@webkit.org [Mon, 25 Jun 2012 19:47:57 +0000 (19:47 +0000)]
Source/Platform: Plumb Scrollbar button dimensions through WebThemeEngine
https://bugs.webkit.org/show_bug.cgi?id=89264

Patch by Scott Graham <scottmg@chromium.org> on 2012-06-25
Reviewed by James Robinson.

Rather than making the height of the scrollbar buttons the same as the
width of the scrollbar, delegate to the WebThemeEngine. This allows
matching the Aura theme rather than the standard Windows theme.

* chromium/public/win/WebThemeEngine.h:
(WebKit):
(WebThemeEngine):

Source/WebCore: Plumb Scrollbar button dimensions down to WebThemeEngine
https://bugs.webkit.org/show_bug.cgi?id=89264

Patch by Scott Graham <scottmg@chromium.org> on 2012-06-25
Reviewed by James Robinson.

Rather than making the height of the scrollbar buttons the same as the
width of the scrollbar, delegate to the WebThemeEngine. This allows
matching the Aura theme rather than the standard Windows theme.

No new tests, as bounds are overridden for DRT.

* platform/chromium/PlatformSupport.h:
(PlatformSupport):
* platform/chromium/ScrollbarThemeChromiumWin.cpp:
(WebCore::ScrollbarThemeChromiumWin::buttonSize):

Source/WebKit/chromium: Plumb Scrollbar button dimensions down to WebThemeEngine
https://bugs.webkit.org/show_bug.cgi?id=89264

Patch by Scott Graham <scottmg@chromium.org> on 2012-06-25
Reviewed by James Robinson.

Rather than making the height of the scrollbar buttons the same as the
width of the scrollbar, delegate to the WebThemeEngine. This allows
matching the Aura theme rather than the standard Windows theme.

* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::getThemePartSize):
(WebCore):

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

7 years agoFast path for simple transform parsing
antti@apple.com [Mon, 25 Jun 2012 19:33:07 +0000 (19:33 +0000)]
Fast path for simple transform parsing
https://bugs.webkit.org/show_bug.cgi?id=89898

Reviewed by Anders Carlsson.

When manipulating transforms using script, the transform value parsing can show up in profiles pretty heavily
(up 4% in some cases). We can optimize it easily by implementing a fast path that does not spin up the full CSS
parser, like we already do for several other common value types.

The patch implements a fast path for transform(), transformX/Y/Z() and transform3D(). It speeds up parsing by >5x.

* css/CSSParser.cpp:
(WebCore):
(WebCore::parseTransformArguments):
(WebCore::parseTransformValue):
(WebCore::CSSParser::parseValue):

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

7 years agoRemove unused static function shadowFor
commit-queue@webkit.org [Mon, 25 Jun 2012 19:04:11 +0000 (19:04 +0000)]
Remove unused static function shadowFor
https://bugs.webkit.org/show_bug.cgi?id=89824

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-25
Reviewed by Daniel Bates.

shadowFor is not used anymore after r117796. No behaviour changes.

* dom/TreeScopeAdopter.cpp:

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

7 years agoRemove unused constant timeWithoutMouseMovementBeforeHidingControls
commit-queue@webkit.org [Mon, 25 Jun 2012 18:56:20 +0000 (18:56 +0000)]
Remove unused constant timeWithoutMouseMovementBeforeHidingControls
https://bugs.webkit.org/show_bug.cgi?id=89823

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-25
Reviewed by Daniel Bates.

After r87692, timeWithoutMouseMovementBeforeHidingControls is not used anymore.

* html/HTMLMediaElement.cpp:
(WebCore):

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

7 years ago[Chromium] RenderPass textures are evicted at the end of every frame
commit-queue@webkit.org [Mon, 25 Jun 2012 18:49:38 +0000 (18:49 +0000)]
[Chromium] RenderPass textures are evicted at the end of every frame
https://bugs.webkit.org/show_bug.cgi?id=89786

Patch by Zeev Lieber <zlieber@chromium.org> on 2012-06-25
Reviewed by Adrienne Walker.

Source/WebCore:

Removed calls to TextureManager::reduceMemoryToLimit inside
finishDrawingFrame() method.

Added unit tests to verify new behavior.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::finishDrawingFrame):

Source/WebKit/chromium:

Added unit tests to verify large textures are staying in memory
and available for render pass optimization.

* tests/CCLayerTreeHostImplTest.cpp:

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

7 years agoMissing implementation of textInputController.setComposition() causes bot redness
jonlee@apple.com [Mon, 25 Jun 2012 18:05:13 +0000 (18:05 +0000)]
Missing implementation of textInputController.setComposition() causes bot redness
https://bugs.webkit.org/show_bug.cgi?id=89845

* platform/mac/Skipped: Skip fast/forms/input-set-composition-scroll.html

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

7 years ago[EFL] Implement Network Information API
gyuyoung.kim@samsung.com [Mon, 25 Jun 2012 18:01:42 +0000 (18:01 +0000)]
[EFL] Implement Network Information API
https://bugs.webkit.org/show_bug.cgi?id=87067

Reviewed by Kenneth Rohde Christiansen.

.:

* Source/cmake/FindEFL.cmake: Find eeze library in build system.

Source/WebKit:

* PlatformEfl.cmake: Add dependency of eeze library.

Source/WebKit/efl:

Implement NetworkInfoClientEfl.cpp using eeze library. However, this patch only
supports this feature on ethernet interface.

* WebCoreSupport/NetworkInfoClientEfl.cpp:
(WebCore):
(WebCore::NetworkInfoClientEfl::NetworkInfoClientEfl):
(WebCore::NetworkInfoClientEfl::startUpdating):
(WebCore::NetworkInfoClientEfl::stopUpdating):
(WebCore::NetworkInfoClientEfl::bandwidth):
(WebCore::NetworkInfoClientEfl::metered):
* WebCoreSupport/NetworkInfoClientEfl.h:
(NetworkInfoClientEfl):

Tools:

* efl/jhbuild.modules: Add eeze library dependency.

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

7 years ago[GTK] Add graphviz debug output for the gstreamer video pipeline.
commit-queue@webkit.org [Mon, 25 Jun 2012 17:47:44 +0000 (17:47 +0000)]
[GTK] Add graphviz debug output for the gstreamer video pipeline.
https://bugs.webkit.org/show_bug.cgi?id=89660

Patch by Allan Xavier <allan.xavier@undefinedltd.co.uk> on 2012-06-25
Reviewed by Martin Robinson.

Dump the current video pipeline as a graphviz DOT file when the
pipeline state changes or when an error occours.

No new tests as the change is only useful for debugging.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):

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

7 years agoASSERT(m_wheelEventHandlerCount > 0) can fire
abarth@webkit.org [Mon, 25 Jun 2012 17:39:07 +0000 (17:39 +0000)]
ASSERT(m_wheelEventHandlerCount > 0) can fire
https://bugs.webkit.org/show_bug.cgi?id=89856

Reviewed by Eric Seidel.

Source/WebCore:

When a node with a wheel or a touch event is moved from one document to
another, the didAddMumble/didRemoveMumble calls do not balance because
they're called on different documents. This patch twiddles the counts
appropriately in that case.

Test: fast/events/move-element-with-wheel-and-touch-event-listeners.html

* dom/EventNames.h:
(WebCore::EventNames::isTouchEventType):
(EventNames):
(WebCore::EventNames::touchEventNames):
* dom/Node.cpp:
(WebCore::Node::didMoveToNewDocument):

LayoutTests:

Test what happens when we move a node with wheel and/or touch events
from one document to another. Prior to this patch, this test triggers
ASSERT(m_wheelEventHandlerCount > 0) in Document.cpp.

* fast/events/move-element-with-wheel-and-touch-event-listeners-expected.txt: Added.
* fast/events/move-element-with-wheel-and-touch-event-listeners.html: Added.

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

7 years agoSplit map* functions out of StyleResolver into a helper object
eric@webkit.org [Mon, 25 Jun 2012 17:36:38 +0000 (17:36 +0000)]
Split map* functions out of StyleResolver into a helper object
https://bugs.webkit.org/show_bug.cgi?id=89881

Reviewed by Daniel Bates.

These map* functions are completely independent of the rest of StyleResolver
and only exist to serve StyleBuilder.
CSSToStyleMap doesn't even want to have a StyleResolver pointer, but
currently needs one to access the resolve-lifetime caches for the
current resolve.  Once we split out that per-resolve state into
some sort of ResolveState/ResolveInfo object (akin to PaintInfo/LayoutState)
then this object will be even simpler.

No behavioral change, thus no tests.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSToStyleMap.cpp: Added.
(WebCore):
(WebCore::CSSToStyleMap::style):
(WebCore::CSSToStyleMap::rootElementStyle):
(WebCore::CSSToStyleMap::useSVGZoomRules):
(WebCore::CSSToStyleMap::styleImage):
(WebCore::CSSToStyleMap::mapFillAttachment):
(WebCore::CSSToStyleMap::mapFillClip):
(WebCore::CSSToStyleMap::mapFillComposite):
(WebCore::CSSToStyleMap::mapFillOrigin):
(WebCore::CSSToStyleMap::mapFillImage):
(WebCore::CSSToStyleMap::mapFillRepeatX):
(WebCore::CSSToStyleMap::mapFillRepeatY):
(WebCore::CSSToStyleMap::mapFillSize):
(WebCore::CSSToStyleMap::mapFillXPosition):
(WebCore::CSSToStyleMap::mapFillYPosition):
(WebCore::CSSToStyleMap::mapAnimationDelay):
(WebCore::CSSToStyleMap::mapAnimationDirection):
(WebCore::CSSToStyleMap::mapAnimationDuration):
(WebCore::CSSToStyleMap::mapAnimationFillMode):
(WebCore::CSSToStyleMap::mapAnimationIterationCount):
(WebCore::CSSToStyleMap::mapAnimationName):
(WebCore::CSSToStyleMap::mapAnimationPlayState):
(WebCore::CSSToStyleMap::mapAnimationProperty):
(WebCore::CSSToStyleMap::mapAnimationTimingFunction):
(WebCore::CSSToStyleMap::mapNinePieceImage):
(WebCore::CSSToStyleMap::mapNinePieceImageSlice):
(WebCore::CSSToStyleMap::mapNinePieceImageQuad):
(WebCore::CSSToStyleMap::mapNinePieceImageRepeat):
* css/CSSToStyleMap.h: Added.
(WebCore):
(CSSToStyleMap):
(WebCore::CSSToStyleMap::CSSToStyleMap):
* css/StyleBuilder.cpp:
(WebCore::ApplyPropertyFillLayer::applyValue):
(WebCore::ApplyPropertyBorderImage::applyValue):
(WebCore::ApplyPropertyBorderImageModifier::applyValue):
(WebCore):
(WebCore::ApplyPropertyAnimation::map):
(WebCore::StyleBuilder::StyleBuilder):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::collectMatchingRulesForList):
* css/StyleResolver.h:
(WebCore::StyleResolver::styleMap):
(StyleResolver):

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

7 years ago[EFL] Support screenDepth() functionality.
gyuyoung.kim@samsung.com [Mon, 25 Jun 2012 17:14:41 +0000 (17:14 +0000)]
[EFL] Support screenDepth() functionality.
https://bugs.webkit.org/show_bug.cgi?id=89423

Reviewed by Kenneth Rohde Christiansen.

Support screenDepth() based on ecore_x_window_depth_get(). This functionality may be used by
both WebKit1 and WebKit2. So, concrete function is placed into EflScreenUtilities.cpp.

This patch can't support existing test cases. Because, EFL DumpRenderTree works without X11 window
by default.

* platform/efl/EflScreenUtilities.cpp:
(WebCore::getPixelDepth):
(WebCore):
* platform/efl/EflScreenUtilities.h:
(WebCore):
* platform/efl/PlatformScreenEfl.cpp:
(WebCore::screenDepth):
(WebCore::screenDepthPerComponent):

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

7 years ago[Shadow] Executing Italic and InsertUnorderedList in Shadow DOM causes a crash
shinyak@chromium.org [Mon, 25 Jun 2012 16:59:25 +0000 (16:59 +0000)]
[Shadow] Executing Italic and InsertUnorderedList in Shadow DOM causes a crash
https://bugs.webkit.org/show_bug.cgi?id=88495

Reviewed by Ryosuke Niwa.

Source/WebCore:

InsertionPoint::removedFrom(insertionPoint) tries to find its owner ElementShadow from
parentNode or insertionPoint. If the parent node exsits but we cannot reach ElementShadow from
the parent node, InsertionPoint::removedFrom does not try to find ElementShadow anymore.

It's OK if the ElementShadow is being destructed, but there is a case ElementShadow is not being
destructed in editing. In this case, we should try to find ElementShadow from insertionPoint.
Otherwise it will bring inconsistency to Shadow DOM, and causes a crash.

Actually checking the existence of parentNode() does not make any sense. We should get
shadowRoot() directly.

Test: editing/shadow/insertorderedlist-crash.html

* html/shadow/InsertionPoint.cpp:
(WebCore::InsertionPoint::removedFrom):

LayoutTests:

* editing/shadow/insertorderedlist-crash-expected.txt: Added.
* editing/shadow/insertorderedlist-crash.html: Added.

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

7 years agoRemove responseBlob field from XMLHttpResponse.idl
kinuko@chromium.org [Mon, 25 Jun 2012 16:56:21 +0000 (16:56 +0000)]
Remove responseBlob field from XMLHttpResponse.idl
https://bugs.webkit.org/show_bug.cgi?id=89859

Reviewed by Eric Seidel.

Remove XMLHttpResponse.responseBlob from XMLHttpResponse.idl, which
has only been exposed for a very limited time (since r120574) but
probably should not have been done so since XHR2 spec no longer has
the field.  A quick search also showed that no one seems to be using the field.

(More context: the field was added long time ago with a runtime guard
which had never been enabled until the guard was removed in r120574
to remove XHR_RESPONSE_BLOB on all platforms.)

No new tests as no tests use this field.

* xml/XMLHttpRequest.idl: Removed responseBlob field.

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

7 years agoHeap-use-after-free in WebKit::MainThreadFileSystemCallbacks
kinuko@chromium.org [Mon, 25 Jun 2012 16:30:49 +0000 (16:30 +0000)]
Heap-use-after-free in WebKit::MainThreadFileSystemCallbacks
https://bugs.webkit.org/show_bug.cgi?id=87019

Reviewed by David Levin.

Should not access the CallbacksBridge's member field after it's freed.

* src/WorkerFileSystemCallbacksBridge.cpp:
(WebKit::WorkerFileSystemCallbacksBridge::cleanUpAfterCallback):

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

7 years agoAdd static qualifier to GraphicsContext3D::extractImageData.
commit-queue@webkit.org [Mon, 25 Jun 2012 15:40:43 +0000 (15:40 +0000)]
Add static qualifier to GraphicsContext3D::extractImageData.
https://bugs.webkit.org/show_bug.cgi?id=89866

GraphicsContext3D::extractImageData does not use member variables.
Each platform Accelerated-compositing implementation can use this method in
order to get pixel data of an Image or ImageBuffer object.

Patch by Huang Dongsung <luxtella@company100.net> on 2012-06-25
Reviewed by Noam Rosenthal.

No new tests since there's no change on code behavior.

* platform/graphics/GraphicsContext3D.h:
(GraphicsContext3D):

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

7 years ago[BlackBerry] Use AIR controls if client doesn't support HTML control
commit-queue@webkit.org [Mon, 25 Jun 2012 15:27:54 +0000 (15:27 +0000)]
[BlackBerry] Use AIR controls if client doesn't support HTML control
https://bugs.webkit.org/show_bug.cgi?id=89777

Patch by Crystal Zhang <haizhang@rim.com> on 2012-06-25
Reviewed by Yong Li.

Currently HTML controls depend on client implementing CreateWindow event, for those clients
that don't implement CreateWindow event, use old AIR controls so we don't break them.

PR 163818.

Internal reviewed by Mike Fenton.

* Api/WebPageClient.h:
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::openPagePopup):
* WebCoreSupport/PagePopupBlackBerry.cpp:
(WebCore::PagePopupBlackBerry::sendCreatePopupWebViewRequest):
* WebCoreSupport/PagePopupBlackBerry.h:
(PagePopupBlackBerry):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::openSelectPopup):

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

7 years ago[Qt] Unskip 3D transform tests.
commit-queue@webkit.org [Mon, 25 Jun 2012 15:14:41 +0000 (15:14 +0000)]
[Qt] Unskip 3D transform tests.
https://bugs.webkit.org/show_bug.cgi?id=89878

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-06-25
Reviewed by Csaba Osztrogonác.

* platform/qt-5.0-wk2/Skipped:
* platform/qt/Skipped:

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

7 years agoWeb Inspector: toggling style should not start property edit first.
pfeldman@chromium.org [Mon, 25 Jun 2012 14:36:00 +0000 (14:36 +0000)]
Web Inspector: toggling style should not start property edit first.
https://bugs.webkit.org/show_bug.cgi?id=89834

Reviewed by Yury Semikhatsky.

Source/WebCore:

Otherwise property flickers upon toggling.

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertyTreeElement.prototype):

LayoutTests:

* http/tests/inspector/elements-test.js:
(initialize_ElementTest.InspectorTest.dumpSelectedElementStyles):
(initialize_ElementTest.InspectorTest.toggleStylePropertyEnabled):
* inspector/styles/styles-disable-inherited.html:
* inspector/styles/styles-disable-then-change.html:
* inspector/styles/styles-disable-then-delete.html:
* inspector/styles/styles-disable-then-enable.html:
* inspector/styles/undo-property-toggle.html:

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

7 years ago[BlackBerry] Require text editable element to be enabled for VKB
rwlbuis@webkit.org [Mon, 25 Jun 2012 14:30:10 +0000 (14:30 +0000)]
[BlackBerry] Require text editable element to be enabled for VKB
https://bugs.webkit.org/show_bug.cgi?id=89876

Reviewed by Yong Li.

After bug 58837 got in, children of <fieldset> now can inherit the disabled
state of the fieldset. When trying for instance fast/forms/fieldset/fieldset-disabled.html,
it can be seen that when they are visually disabled, the input handling can still be triggered. So
add an extra check to isTextBasedContentEditableElement that the element is enabled.

Reviewed internally by Mike Fenton.

* WebKitSupport/DOMSupport.cpp:
(BlackBerry::WebKit::DOMSupport::isTextBasedContentEditableElement):

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

7 years agoWeb Inspector: "Emulate Touch Events" breaks selecting elements with "touchstart...
apavlov@chromium.org [Mon, 25 Jun 2012 14:26:48 +0000 (14:26 +0000)]
Web Inspector: "Emulate Touch Events" breaks selecting elements with "touchstart" event listeners for inspection.
https://bugs.webkit.org/show_bug.cgi?id=89861

Reviewed by Vsevolod Vlasov.

Upon a mousepress, Inspector should be queried for the "Inspect element" mode up-front,
before dispatching a synthetic "touchstart" event.

* page/EventHandler.cpp:
(WebCore::EventHandler::handleMousePressEvent):

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

7 years agoUnreviewed. Update NEWS and configure.ac for 1.9.4 release
carlosgc@webkit.org [Mon, 25 Jun 2012 13:38:19 +0000 (13:38 +0000)]
Unreviewed. Update NEWS and configure.ac for 1.9.4 release

.:

* configure.ac: Bump version number.

Source/WebKit/gtk:

* NEWS: Added release notes for 1.9.4.

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

7 years ago[WK2][Qt][EFL] Move LayerBackingStore into common directory
commit-queue@webkit.org [Mon, 25 Jun 2012 13:16:24 +0000 (13:16 +0000)]
[WK2][Qt][EFL] Move LayerBackingStore into common directory
https://bugs.webkit.org/show_bug.cgi?id=89838

Patch by YoungTaeck Song <youngtaeck.song@samsung.com> on 2012-06-25
Reviewed by Noam Rosenthal.

Move LayerBackingStore into 'Source/WebKit2/UIProcess/texmap' to be used by both Qt and Efl.

* Target.pri:
* UIProcess/texmap/LayerBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/qt/LayerBackingStore.cpp.
(WebKit):
(WebKit::LayerBackingStoreTile::swapBuffers):
(WebKit::LayerBackingStoreTile::setBackBuffer):
(WebKit::LayerBackingStore::createTile):
(WebKit::LayerBackingStore::removeTile):
(WebKit::LayerBackingStore::updateTile):
(WebKit::LayerBackingStore::texture):
(WebKit::LayerBackingStore::paintToTextureMapper):
(WebKit::LayerBackingStore::commitTileOperations):
* UIProcess/texmap/LayerBackingStore.h: Renamed from Source/WebKit2/UIProcess/qt/LayerBackingStore.h.
(WebKit):
(LayerBackingStoreTile):
(WebKit::LayerBackingStoreTile::LayerBackingStoreTile):
(WebKit::LayerBackingStoreTile::scale):
(LayerBackingStore):
(WebKit::LayerBackingStore::create):
(WebKit::LayerBackingStore::LayerBackingStore):

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

7 years agoWeb Inspector: [Styles] Cannot visually set caret before the first CSS property name...
apavlov@chromium.org [Mon, 25 Jun 2012 12:41:44 +0000 (12:41 +0000)]
Web Inspector: [Styles] Cannot visually set caret before the first CSS property name character
https://bugs.webkit.org/show_bug.cgi?id=89869

Reviewed by Vsevolod Vlasov.

The issue was due to the "editbox" SPAN having a negative margin, thus the leftmost caret position was getting clipped
by a synthetic SPAN container added by the TextPrompt.

* inspector/front-end/elementsPanel.css:
(.styles-section .properties > li.child-editing .webkit-css-property):
(.styles-section .properties li.child-editing):

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

7 years agoMicrodata: document.getItems(typeNames) is not returning Microdata items when typeNam...
arko@motorola.com [Mon, 25 Jun 2012 12:09:33 +0000 (12:09 +0000)]
Microdata: document.getItems(typeNames) is not returning Microdata items when typeNames argument is not specified.
https://bugs.webkit.org/show_bug.cgi?id=89757

Reviewed by Ryosuke Niwa.

With r120979 change, it creates MicroDataItemList with m_typeNames = "http://webkit.org/microdata/undefinedItemType",
when typeNames argument is not specified. Modified the check in nodeMatches() accordingly.

This fixes the following failing tests :
    fast/dom/MicroData/002.html
    fast/dom/MicroData/003.html
    fast/dom/MicroData/007.html
    fast/dom/MicroData/009.html
    fast/dom/MicroData/properties-collection-must-see-the-properties-added-in-itemref.html

* dom/Document.cpp:
(WebCore::Document::getItems): Use undefinedItemType to avoid String conversion.
* dom/MicroDataItemList.cpp:
(WebCore::MicroDataItemList::undefinedItemType): It defines "http://webkit.org/microdata/undefinedItemType"
string using DEFINE_STATIC_LOCAL to avoid String conversion.
(WebCore::MicroDataItemList::MicroDataItemList): Use document() method of DynamicNodeList to obtain
document of owner element.
(WebCore::MicroDataItemList::~MicroDataItemList): Removed originalTypeNames null check.
(WebCore::MicroDataItemList::nodeMatches): Return true if originalTypeNames is equal to undefinedItemType.
* dom/MicroDataItemList.h:

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

7 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Mon, 25 Jun 2012 11:55:26 +0000 (11:55 +0000)]
Unreviewed. Fix make distcheck.

* GNUmakefile.list.am: Add missing header file.

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

7 years ago[Qt] Fix Win32 debug build
hausmann@webkit.org [Mon, 25 Jun 2012 11:21:06 +0000 (11:21 +0000)]
[Qt] Fix Win32 debug build

Reviewed by Tor Arne Vestbø.

Source/WebCore:

Consistently use use_all_in_one_files when requested in the configuration. The previous
Linux condition has been moved to Tools/qmake/mkspecs/features/unix/default_pre.prf

* Target.pri:

Tools:

Consolidate use_all_in_one_files into mac/unix/win32 default_pre.prf.

* qmake/mkspecs/features/unix/default_pre.prf:
* qmake/mkspecs/features/win32/default_pre.prf: Added.

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

7 years agoFix rewinding of SVG animations
pdr@google.com [Mon, 25 Jun 2012 10:31:06 +0000 (10:31 +0000)]
Fix rewinding of SVG animations
https://bugs.webkit.org/show_bug.cgi?id=89846

Reviewed by Nikolas Zimmermann.

Source/WebCore:

r116451 introduced an optimization to only clear non-freeze animations when
calling setCurrentTime (via reset()). This causes fill=freeze animations to
not clear which breaks rewinding of an animation.

In the presence of multiple animations, we reset the first animation to the
base value and accumulate all results into that; this masked the problem because
2 animations were required to hit the bug (our tests primarily cover just 1).

Test: svg/animations/animate-reset-freeze.html

* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::reset):

LayoutTests:

* svg/animations/animate-reset-freeze-expected.txt: Added.
* svg/animations/animate-reset-freeze.html: Added.

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

7 years agoChange the serialization format of form control state to make the code simple
tkent@chromium.org [Mon, 25 Jun 2012 09:43:07 +0000 (09:43 +0000)]
Change the serialization format of form control state to make the code simple
https://bugs.webkit.org/show_bug.cgi?id=89847

Reviewed by Hajime Morita.

Source/WebCore:

We used multiple strings to represent state of single form control. It
made the code complex. We change the serialization format so that one
CSV string represents state.

Examples in the old format:
    "0"
    "1", "value"
    "3", "value1", "value2,value2", "value3"

Examples in the new format:
    ""
    ",value"
    ",value1,value2\,value2,value3"

Test: fast/forms/state-restore-various-values.html

* html/FormController.cpp:
(WebCore::FormControlState::serialize):
Generate comma-separated string.
',' in a value is serialized as "\,".
We changed the signature because we don't need the out-argument.
(WebCore::FormControlState::deserialize):
Parses the input comma-separated string.
We changed the signature because we don't need multiple input strings.
(formStateSignature):
Bump up the version because of the representation change.
(WebCore::FormController::formElementsState):
The new serialized format occupies just one string for one control.
- Expected size is now 3n+1.
- Use FormControlState::serialize().
(WebCore::FormController::setStateForNewFormElements):
The new serialized format occupies just one string for one control.
So we can check the vector size before the iteration.
* html/FormController.h:
(FormControlState): Change the function signatures.

* html/shadow/CalendarPickerElement.cpp:
(WebCore::addJavaScriptString): Use StringBuilder::appendEscaped().

Source/WTF:

* wtf/text/StringBuilder.h:
(WTF::StringBuilder::appendEscaped): Added. This function adds the
escaped form of the input string. e.g. if stiring="foo,bar" escape='\'
special=',', the appended string is foo\,bar.

LayoutTests:

* fast/forms/state-restore-broken-state-expected.txt:
Apply the serialization format change.
* fast/forms/state-restore-various-values-expected.txt: Added.
* fast/forms/state-restore-various-values.html: Added.

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

7 years agoWeb Inspector: add external resources size to the native memory diagram
yurys@chromium.org [Mon, 25 Jun 2012 09:26:50 +0000 (09:26 +0000)]
Web Inspector: add external resources size to the native memory diagram
https://bugs.webkit.org/show_bug.cgi?id=89754

Reviewed by Vsevolod Vlasov.

Size of external strings and arrays is now reported through the inspector
protocol and displayed on the native memory chart.

* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/ScriptProfiler.h:
(WebCore):
(WebCore::ScriptProfiler::visitJSDOMWrappers):
(WebCore::ScriptProfiler::visitExternalJSStrings):
(WebCore::ScriptProfiler::visitExternalJSArrays):
* bindings/v8/ScriptProfiler.cpp:
(WebCore::ScriptProfiler::visitJSDOMWrappers):
(WebCore::ScriptProfiler::visitExternalJSStrings):
(WebCore::ScriptProfiler::visitExternalJSArrays):
(WebCore):
* bindings/v8/ScriptProfiler.h:
(WebCore):
(ScriptProfiler):
* bindings/v8/V8Binding.cpp:
(WebCore::WebCoreStringResource::visitStrings):
(WebCore::V8BindingPerIsolateData::visitJSExternalStrings):
* bindings/v8/V8Binding.h:
(WebCore):
(V8BindingPerIsolateData):
* inspector/BindingVisitors.h: Renamed from Source/WebCore/inspector/DOMWrapperVisitor.h.
(WTF):
(WebCore):
(NodeWrapperVisitor):
(WebCore::NodeWrapperVisitor::~NodeWrapperVisitor):
(ExternalStringVisitor):
(WebCore::ExternalStringVisitor::~ExternalStringVisitor):
(ExternalArrayVisitor):
(WebCore::ExternalArrayVisitor::~ExternalArrayVisitor):
* inspector/InspectorMemoryAgent.cpp:
(MemoryBlockName):
(WebCore):
(WebCore::jsExternalResourcesInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):
* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.MemoryBlockViewProperties._initialize):

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

7 years ago[GTK] Test /webkit2/WebKitWebView/permission-requests fails due to a runtime warning
carlosgc@webkit.org [Mon, 25 Jun 2012 08:42:39 +0000 (08:42 +0000)]
[GTK] Test /webkit2/WebKitWebView/permission-requests fails due to a runtime warning
https://bugs.webkit.org/show_bug.cgi?id=89858

Reviewed by Xan Lopez.

* UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
(testWebViewPermissionRequests): Make runtime warnings non-fatal
for test /webkit2/WebKitWebView/permission-requests.

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

7 years ago[GTK] Remove unused code in LayerTreeHostGtk.
commit-queue@webkit.org [Mon, 25 Jun 2012 07:18:03 +0000 (07:18 +0000)]
[GTK] Remove unused code in LayerTreeHostGtk.
https://bugs.webkit.org/show_bug.cgi?id=89854

LayerTreeHostGtk::deviceScaleFactor() is unused and LayerTreeHost does not have
virtual float deviceScaleFactor() const;

Patch by Huang Dongsung <luxtella@company100.net> on 2012-06-25
Reviewed by Martin Robinson.

* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
* WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
(LayerTreeHostGtk):

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

7 years ago[Qt] Unreviewed gardening, skip new failing tests.
kkristof@inf.u-szeged.hu [Mon, 25 Jun 2012 07:02:18 +0000 (07:02 +0000)]
[Qt] Unreviewed gardening, skip new failing tests.

* platform/qt/Skipped:

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

7 years agoRemove USE(CHROMIUM_NET) because it is unused
abarth@webkit.org [Mon, 25 Jun 2012 06:34:26 +0000 (06:34 +0000)]
Remove USE(CHROMIUM_NET) because it is unused
https://bugs.webkit.org/show_bug.cgi?id=89850

Reviewed by Eric Seidel.

I didn't see any mentions of CHROMIUM_NET when I grepped the Source
directory. Also, this USE macro isn't defined on OS(DARWIN) or
OS(ANDROID), which seems a bit odd given that Chromium uses the same
network stack on all platforms.

* wtf/Platform.h:

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

7 years ago[Qt] Unreviewed gardening, skip new failing tests.
kkristof@inf.u-szeged.hu [Mon, 25 Jun 2012 06:21:21 +0000 (06:21 +0000)]
[Qt] Unreviewed gardening, skip new failing tests.

* platform/qt/Skipped:

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

7 years agoREGRESSION(r120329): Intermittent WebProcess shutdowns due to out-of-line DidReceiveE...
kling@webkit.org [Mon, 25 Jun 2012 05:08:35 +0000 (05:08 +0000)]
REGRESSION(r120329): Intermittent WebProcess shutdowns due to out-of-line DidReceiveEvent messages.
<rdar://problem/11686974>
<http://webkit.org/b/89659>

Unreviewed tests assertion fix, handleKeyboardEvent() should call didReceiveKeyEvent()
rather than didReceiveEvent().

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::handleKeyboardEvent):
(WebKit::WebPageProxy::didReceiveKeyEvent):

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

7 years agoUnreviewed compile error fix of Chromium Win Release.
ukai@chromium.org [Mon, 25 Jun 2012 04:33:02 +0000 (04:33 +0000)]
Unreviewed compile error fix of Chromium Win Release.
Touch header files for ENABLE(CSS_VARIABLES) so that
it forces to rebuild files by changing ENABLE(CSS_VARIABLES)
in Sources/WebKit/chromium/features.gypi at r121129

* css/CSSParserMode.h:
* css/CSSValue.h:
(WebCore):
* css/CSSVariableValue.h:
* page/Settings.h:
* rendering/style/RenderStyle.h:
* rendering/style/StyleRareInheritedData.h:
* rendering/style/StyleVariableData.h:

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

7 years ago[Texmap] Minor cleanup for TextureMapper::accelerationMode()
commit-queue@webkit.org [Mon, 25 Jun 2012 03:40:09 +0000 (03:40 +0000)]
[Texmap] Minor cleanup for TextureMapper::accelerationMode()
https://bugs.webkit.org/show_bug.cgi?id=89825

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-06-24
Reviewed by Kenneth Rohde Christiansen.

Replace the virtual method with a simple member variable.

* platform/graphics/texmap/TextureMapper.h:
(WebCore::TextureMapper::accelerationMode):
(WebCore::TextureMapper::TextureMapper):
(TextureMapper):
* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::TextureMapperGL):
* platform/graphics/texmap/TextureMapperGL.h:
* platform/graphics/texmap/TextureMapperImageBuffer.h:
(WebCore::TextureMapperImageBuffer::TextureMapperImageBuffer):

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

7 years ago[Qt] Enable <input type="color"> support by default
commit-queue@webkit.org [Mon, 25 Jun 2012 03:32:21 +0000 (03:32 +0000)]
[Qt] Enable <input type="color"> support by default
https://bugs.webkit.org/show_bug.cgi?id=89653

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-06-24
Reviewed by Kenneth Rohde Christiansen.

This feature is complete for Qt WebKit2. Enabling by default
will help to mature the implementation.

* Scripts/webkitperl/FeatureList.pm:
* qmake/mkspecs/features/features.pri:

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

7 years ago[WK2][Qt][EFL] Modify Qt specific code to common code
commit-queue@webkit.org [Mon, 25 Jun 2012 03:28:27 +0000 (03:28 +0000)]
[WK2][Qt][EFL] Modify Qt specific code to common code
https://bugs.webkit.org/show_bug.cgi?id=89839

Patch by YoungTaeck Song <youngtaeck.song@samsung.com> on 2012-06-24
Reviewed by Noam Rosenthal.

Modify paintToGraphicsContext’s first argument QPainter to PlatformGraphicsContext to be used by both Qt and Efl.

* UIProcess/WebLayerTreeRenderer.cpp:
(WebKit::WebLayerTreeRenderer::paintToGraphicsContext):

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

7 years agoUnreviewed GTK/EFL gardening after r121121.
joone@webkit.org [Mon, 25 Jun 2012 03:25:25 +0000 (03:25 +0000)]
Unreviewed GTK/EFL gardening after r121121.
Marked fast/forms/input-set-composition-scroll.html as known failure
tracked by the bug 89845.

* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:

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

7 years agoCSS3 calc: transitions starting and ending with a calc expression move to end state
mikelawther@chromium.org [Mon, 25 Jun 2012 03:16:07 +0000 (03:16 +0000)]
CSS3 calc: transitions starting and ending with a calc expression move to end state
https://bugs.webkit.org/show_bug.cgi?id=89738

Reviewed by Tony Chang.

Source/WebCore:

The equality operator for CalculationValue was not working as expected. The
equality operator for OwnPtr is private, as OwnPtrs should always be different.
The OwnPtrs ended up getting cast to bool before being compared, and the
comparison was always returning true.

The comparison between OwnPtrs has been removed. It doesn't add value to compare
the raw pointers either, since OwnPtrs should always be unique. We cannot
ASSERT the uniqueness though, as it is legitimate to compare a CalculationValue
to itself.

Test: css3/calc/transition-start-end-with-calc.html

* platform/CalculationValue.h:
(WebCore::CalculationValue::operator==):

LayoutTests:

* css3/calc/transition-start-end-with-calc-expected.txt: Added.
* css3/calc/transition-start-end-with-calc.html: Added.

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

7 years agoNodeRenderingContext::AttachingPhase is redundant.
morrita@google.com [Mon, 25 Jun 2012 02:25:43 +0000 (02:25 +0000)]
NodeRenderingContext::AttachingPhase is redundant.
https://bugs.webkit.org/show_bug.cgi?id=79220

Reviewed by Dimitri Glazkov.

This change removes NodeRenderingContext::AttachingPhase and
NodeRenderingContext::m_phase respectively. The state originally
represented as m_phase is naturally encoded into other member variables.

NodeRenderingContext::m_visualParentShadow is also replaced, with
a local variable parentScope.

Basically, what NodeRenderingContext wants to know is the parent of
the composed shadow tree and an optional insertion point where the
node is distributed. Once these becomes clear, m_phase is no longer required.
It was rather a historical artifact.

No new tests. No behavioral change.

* dom/NodeRenderingContext.cpp: Replaced m_phase with implicit states.
(WebCore::NodeRenderingContext::NodeRenderingContext):
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):
(WebCore::NodeRenderingContext::parentRenderer):
(WebCore::NodeRenderingContext::shouldCreateRenderer):
(WebCore::NodeRenderingContext::isOnEncapsulationBoundary):
(WebCore::NodeRenderingContext::isOnUpperEncapsulationBoundary):
* dom/NodeRenderingContext.h:
(NodeRenderingContext):
(WebCore::NodeRenderingContext::parentNodeForRenderingAndStyle): Removed an assert which checks m_phase.
(WebCore::NodeRenderingContext::resetStyleInheritance): Removed an assert which checks m_phase.
* html/shadow/InsertionPoint.h:
(WebCore::isInsertionPoint): Fix null case check.
(WebCore::isLowerEncapsulationBoundary): Renamed from isShadowBoundary()

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

7 years agoREGRESSION(r121124): LayoutTests/fast/block/inline-children-root-linebox-crash.html...
antti@apple.com [Mon, 25 Jun 2012 02:14:26 +0000 (02:14 +0000)]
REGRESSION(r121124): LayoutTests/fast/block/inline-children-root-linebox-crash.html asserts
https://bugs.webkit.org/show_bug.cgi?id=89844

Reviewed by Dan Bernstein.

We need to check for the flipped writing mode and take the slow path if it is used.

* rendering/RenderGeometryMap.cpp:
(WebCore::RenderGeometryMap::pushMappingsToAncestor):

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

7 years agoAdd runtime flag to enable/disable CSS variables (in addition to existing compile...
macpherson@chromium.org [Mon, 25 Jun 2012 02:03:45 +0000 (02:03 +0000)]
Add runtime flag to enable/disable CSS variables (in addition to existing compile-time flag).
https://bugs.webkit.org/show_bug.cgi?id=89542

Reviewed by Dimitri Glazkov.

Source/WebCore:

Added fast/css/variables/build-supports-variables.html to test runtime flag in test environment.
Updated all other css variables tests to enable the runtime flag from JS.

* css/CSSParser.cpp:
(WebCore::CSSParserContext::CSSParserContext):
(WebCore::operator==):
(WebCore::CSSParser::cssVariablesEnabled):
(WebCore):
(WebCore::CSSParser::detectDashToken):
(WebCore::CSSParser::lex):
* css/CSSParser.h:
(CSSParser):
* css/CSSParserMode.h:
(CSSParserContext):
* page/Settings.h:
(Settings):
(WebCore::Settings::setCSSVariablesEnabled):
(WebCore::Settings::cssVariablesEnabled):

Source/WebKit/chromium:

* features.gypi:
* public/WebSettings.h:
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setExperimentalCSSVariablesEnabled):
(WebKit):
* src/WebSettingsImpl.h:
(WebSettingsImpl):

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

7 years agoSelected option is not restored correctly
tkent@chromium.org [Mon, 25 Jun 2012 01:47:35 +0000 (01:47 +0000)]
Selected option is not restored correctly
https://bugs.webkit.org/show_bug.cgi?id=89623

Reviewed by Hajime Morita.

Source/WebCore:

Details of the bug:
We saved a state of a <select> element as a string of which length was
the size of <select>'s children. e.g. If a <select> had five children
and the second and the fifth items were selected, the state string was:
        ".X..X"

This didn't work well if the structure of the children was updated after
parsing. For example,
1. A page has the following <select> initially:
  <select multiple>
    <option>Banana
    <option>Lemon
    <option>Orange
    <option>Strawberry
  <select>

2. For some reasons, <option>Apple</option> is prepended to the children.
3. Some items are selected.
4. The page is unloaded. Selection state is saved.
5. A user go back to the page again. A browser parses the page again.
6. Try to restore the <select> state with the saved data at 4.
  But "Apple" is missing. The <select> has wrong selections.

Solution:
We save the state as a set of selected values. If "Banana" and
"Strawberry" are selected in the above <select>, we save two strings;
"Banana" and "Strawberry", not ".X..X".

Test: fast/forms/select/select-state-restore.html

* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::saveFormControlState):
Store selected value strings to a FormControlState object.
(WebCore::HTMLSelectElement::searchOptionsForValue):
A helper function to find an <option> with the specified value.
(WebCore::HTMLSelectElement::restoreFormControlState):
Clear all of selections, then select options with saved values.
In order to avoid O(M x N) loop, we start searching at position we found
the previous value.
* html/HTMLSelectElement.h: Declare searchOptionsForValue.
* html/FormController.cpp:
(formStateSignature): Bump up the version because this is a incompatible
change.

LayoutTests:

* fast/forms/select/select-state-restore-expected.txt: Added.
* fast/forms/select/select-state-restore.html: Added.

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

7 years agoAdd snap to css3-images image-resolution
commit-queue@webkit.org [Mon, 25 Jun 2012 01:46:14 +0000 (01:46 +0000)]
Add snap to css3-images image-resolution
https://bugs.webkit.org/show_bug.cgi?id=89745

Patch by David Barr <davidbarr@chromium.org> on 2012-06-24
Reviewed by Tony Chang.

Source/WebCore:

Due to floating point imprecision, it is difficult to be precise in dpcm.
So use PrimitiveValue::roundForImpreciseConversion rather than just floor.

No new tests; extended fast/css/image-resolution/image-resolution.html

* css/CSSParser.cpp: Accept snap identifier in image-resolution property.
(WebCore::CSSParser::parseImageResolution): Map CSSValueSnap to identifier value from cssValuePool.
* css/CSSValueKeywords.in: Add snap.
* css/StyleBuilder.cpp: Extend ApplyPropertyImageResolution to apply RenderStyle::imageResolutionSnap.
(WebCore::ApplyPropertyImageResolution::applyInheritValue): Apply RenderStyle::imageResolutionSnap.
(WebCore::ApplyPropertyImageResolution::applyInitialValue): Apply RenderStyle::imageResolutionSnap.
(WebCore::ApplyPropertyImageResolution::applyValue): Map CSSValueSnap to ImageResolutionSnapPixels.
* rendering/RenderImage.cpp: Extend conditions for recalculation of intrinsic size.
(WebCore::RenderImage::styleDidChange): Update intrinsic size if RenderStyle::imageResolutionSnap() has changed.
(WebCore::RenderImage::imageDimensionsChanged): Floor scale factor to int, round up if less than 0.01 away from ceiling.
* rendering/style/RenderStyle.cpp: Include StyleRareInheritedData::m_imageResolutionSnap in style diff.
(WebCore::RenderStyle::diff): Map change in StyleRareInheritedData::m_imageResolutionSnap to StyleDifferenceLayout.
* rendering/style/RenderStyle.h: Add RenderStyle::imageResolutionSnap, RenderStyle::setImageResolutionSnap, RenderStyle::initialImageResolutionSnap.
* rendering/style/RenderStyleConstants.h: Add enum ImageResolutionSnap.
* rendering/style/StyleRareInheritedData.cpp: Add StyleRareInheritedData::m_imageResolutionSnap.
(WebCore::StyleRareInheritedData::StyleRareInheritedData): Add m_imageResolutionSnap to default and copy constructor.
(WebCore::StyleRareInheritedData::operator==): Include m_imageResolutionSnap in comparison.
* rendering/style/StyleRareInheritedData.h: Add StyleRareInheritedData::m_imageResolutionSnap.
(StyleRareInheritedData): Add 1-bit field StyleRareInheritedData::m_imageResolutionSnap.

LayoutTests:

* fast/css/image-resolution/image-resolution-expected.txt:
* fast/css/image-resolution/image-resolution.html:

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

7 years agoUnreviewed, rolling out r121106.
commit-queue@webkit.org [Mon, 25 Jun 2012 00:41:05 +0000 (00:41 +0000)]
Unreviewed, rolling out r121106.
http://trac.webkit.org/changeset/121106
https://bugs.webkit.org/show_bug.cgi?id=89841

Caused 85% performance regressions on Dromaeo/jslib-modify-
jquery.html (Requested by rniwa on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-24

* dom/Document.cpp:
(WebCore::Document::clearNodeListCaches):
* dom/Document.h:
(Document):
* dom/DynamicNodeList.cpp:
(WebCore::DynamicSubtreeNodeList::~DynamicSubtreeNodeList):
* dom/DynamicNodeList.h:
(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
* dom/Node.cpp:
(WebCore::Node::clearRareData):
(WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged):
(WebCore::Node::invalidateNodeListsCacheAfterChildrenChanged):
(WebCore::Node::getElementsByTagName):
(WebCore::Node::getElementsByTagNameNS):
(WebCore::Node::getElementsByName):
(WebCore::Node::getElementsByClassName):
(WebCore::Node::radioNodeList):
(WebCore::NodeListsNodeData::invalidateCaches):
(WebCore):
(WebCore::NodeRareData::createNodeLists):
* dom/NodeRareData.h:
(NodeListsNodeData):
(WebCore::NodeListsNodeData::adoptTreeScope):
(WebCore::NodeRareData::ensureNodeLists):
(NodeRareData):
* dom/TreeScope.cpp:
(WebCore::TreeScope::TreeScope):
* dom/TreeScope.h:
(WebCore::TreeScope::addNodeListCache):
(WebCore::TreeScope::removeNodeListCache):
(WebCore::TreeScope::hasNodeListCaches):
(TreeScope):
* dom/TreeScopeAdopter.cpp:
(WebCore::TreeScopeAdopter::moveTreeToNewScope):
* html/LabelableElement.cpp:
(WebCore::LabelableElement::labels):
* html/LabelsNodeList.cpp:
(WebCore::LabelsNodeList::LabelsNodeList):
(WebCore::LabelsNodeList::~LabelsNodeList):
* html/RadioNodeList.cpp:
(WebCore::RadioNodeList::RadioNodeList):
(WebCore::RadioNodeList::~RadioNodeList):

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

7 years agoChange the type of the second argument of FrameSelection::revealSelection to use...
abarth@webkit.org [Mon, 25 Jun 2012 00:29:03 +0000 (00:29 +0000)]
Change the type of the second argument of FrameSelection::revealSelection to use RevealExtentOption
https://bugs.webkit.org/show_bug.cgi?id=89833

Reviewed by Ryosuke Niwa.

As requested by Ryosuke Niwa.  Rare boolean parameters are hard to read.

* WebCore.exp.in:
* editing/Editor.cpp:
(WebCore::Editor::revealSelectionAfterEditingOperation):
* editing/Editor.h:
(Editor):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::setSelection):
(WebCore::FrameSelection::revealSelection):
* editing/FrameSelection.h:

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

7 years agoOptimize RenderGeometryMap mappings gathering
antti@apple.com [Mon, 25 Jun 2012 00:14:23 +0000 (00:14 +0000)]
Optimize RenderGeometryMap mappings gathering
https://bugs.webkit.org/show_bug.cgi?id=89828

Reviewed by Simon Fraser.

RenderGeometryMap currently gathers mappings by climbing the rendering tree. This is slow and can produce
large number of mapping steps. In the common case we already have the child layer coordinates available in
the layer tree and we can just use that.

The combination of faster mappings gathering and fewer number of applying steps reduces time spent under
RenderLayerCompositor::computeCompositingRequirements to less than half when scrolling the mobile version
of twitter.com.

* rendering/RenderGeometryMap.cpp:
(WebCore):
(WebCore::RenderGeometryMap::pushMappingsToAncestor):

    Use pre-computed mapping from the layer tree when possible.

(WebCore::RenderGeometryMap::popMappingsToAncestor):
* rendering/RenderGeometryMap.h:

    Add some inline capacity.

(WebCore):
(RenderGeometryMap):
* rendering/RenderLayer.h:
(WebCore::RenderLayer::canUseConvertToLayerCoords):
(RenderLayer):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):

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

7 years agoRename isPositioned to isOutOfFlowPositioned for clarity
simon.fraser@apple.com [Mon, 25 Jun 2012 00:11:30 +0000 (00:11 +0000)]
Rename isPositioned to isOutOfFlowPositioned for clarity
https://bugs.webkit.org/show_bug.cgi?id=89836

Reviewed by Antti Koivisto.

RenderObject and RenderStyle had an isPositioned() method that was
confusing, because it excluded relative positioning. Rename to
isOutOfFlowPositioned(), which makes it clearer that it only applies
to absolute and fixed positioning.

Simple rename; no behavior change.

Source/WebCore:

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::getPositionOffsetValue):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
* dom/Text.cpp:
(WebCore::Text::rendererIsNeeded):
* editing/DeleteButtonController.cpp:
(WebCore::isDeletableElement):
* editing/TextIterator.cpp:
(WebCore::shouldEmitNewlinesBeforeAndAfterNode):
* rendering/AutoTableLayout.cpp:
(WebCore::shouldScaleColumns):
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::addToLine):
(WebCore::InlineFlowBox::placeBoxesInInlineDirection):
(WebCore::InlineFlowBox::requiresIdeographicBaseline):
(WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
(WebCore::InlineFlowBox::computeLogicalBoxHeights):
(WebCore::InlineFlowBox::placeBoxesInBlockDirection):
(WebCore::InlineFlowBox::flipLinesInBlockDirection):
(WebCore::InlineFlowBox::computeOverflow):
(WebCore::InlineFlowBox::computeOverAnnotationAdjustment):
(WebCore::InlineFlowBox::computeUnderAnnotationAdjustment):
* rendering/InlineIterator.h:
(WebCore::isIteratorTarget):
* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::MarginInfo::MarginInfo):
(WebCore::RenderBlock::styleWillChange):
(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::addChildToContinuation):
(WebCore::RenderBlock::addChildToAnonymousColumnBlocks):
(WebCore::RenderBlock::containingColumnsBlock):
(WebCore::RenderBlock::columnsBlockForSpanningElement):
(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
(WebCore::getInlineRun):
(WebCore::RenderBlock::isSelfCollapsingBlock):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::addOverflowFromBlockChildren):
(WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
(WebCore::RenderBlock::handlePositionedChild):
(WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):
(WebCore::RenderBlock::collapseMargins):
(WebCore::RenderBlock::clearFloatsIfNeeded):
(WebCore::RenderBlock::simplifiedNormalFlowLayout):
(WebCore::RenderBlock::isSelectionRoot):
(WebCore::RenderBlock::blockSelectionGaps):
(WebCore::RenderBlock::clearFloats):
(WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
(WebCore::RenderBlock::markSiblingsWithFloatsForLayout):
(WebCore::isChildHitTestCandidate):
(WebCore::InlineMinMaxIterator::next):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
(WebCore::RenderBlock::firstLineBoxBaseline):
(WebCore::RenderBlock::lastLineBoxBaseline):
(WebCore::RenderBlock::updateFirstLetter):
(WebCore::shouldCheckLines):
(WebCore::getHeightForLineCount):
(WebCore::RenderBlock::adjustForBorderFit):
(WebCore::inNormalFlow):
(WebCore::RenderBlock::adjustLinePositionForPagination):
(WebCore::RenderBlock::adjustBlockChildForPagination):
(WebCore::RenderBlock::renderName):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::shouldSkipCreatingRunsForObject):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::setMarginsForRubyRun):
(WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
(WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
(WebCore::RenderBlock::layoutInlineChildren):
(WebCore::requiresLineBox):
(WebCore::RenderBlock::LineBreaker::skipTrailingWhitespace):
(WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace):
(WebCore::RenderBlock::LineBreaker::nextLineBreak):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
(WebCore::RenderBox::styleWillChange):
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::updateBoxModelInfoFromStyle):
(WebCore::RenderBox::offsetFromContainer):
(WebCore::RenderBox::positionLineBox):
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::renderBoxRegionInfo):
(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::computeReplacedLogicalWidthUsing):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::availableLogicalHeightUsing):
(WebCore::percentageLogicalHeightIsResolvable):
* rendering/RenderBox.h:
(WebCore::RenderBox::stretchesToViewport):
(WebCore::RenderBox::isDeprecatedFlexItem):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::adjustedPositionRelativeToOffsetParent):
(WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint):
* rendering/RenderBoxModelObject.h:
(WebCore::RenderBoxModelObject::requiresLayer):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::childDoesNotAffectWidthOrFlexing):
(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
(WebCore::RenderDeprecatedFlexibleBox::renderName):
* rendering/RenderFieldset.cpp:
(WebCore::RenderFieldset::findLegend):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
(WebCore::RenderFlexibleBox::autoMarginOffsetInMainAxis):
(WebCore::RenderFlexibleBox::availableAlignmentSpaceForChild):
(WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
(WebCore::RenderFlexibleBox::computeNextFlexLine):
(WebCore::RenderFlexibleBox::resolveFlexibleLengths):
(WebCore::RenderFlexibleBox::prepareChildForPositionedLayout):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
(WebCore::RenderFlexibleBox::layoutColumnReverse):
(WebCore::RenderFlexibleBox::adjustAlignmentForChild):
(WebCore::RenderFlexibleBox::flipForRightToLeftColumn):
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::renderName):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::computeIntrinsicRatioInformation):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::addChildIgnoringContinuation):
(WebCore::RenderInline::addChildToContinuation):
(WebCore::RenderInline::generateCulledLineBoxRects):
(WebCore):
(WebCore::RenderInline::culledInlineFirstLineBox):
(WebCore::RenderInline::culledInlineLastLineBox):
(WebCore::RenderInline::culledInlineVisualOverflowBoundingBox):
(WebCore::RenderInline::computeRectForRepaint):
(WebCore::RenderInline::dirtyLineBoxes):
* rendering/RenderLayer.cpp:
(WebCore::checkContainingBlockChainForPagination):
(WebCore::RenderLayer::updateLayerPosition):
(WebCore::isPositionedContainer):
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::shouldBeNormalFlowOnly):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):
* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
* rendering/RenderListItem.cpp:
(WebCore::getParentOfFirstLineBox):
* rendering/RenderMultiColumnBlock.cpp:
(WebCore::RenderMultiColumnBlock::renderName):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::markContainingBlocksForLayout):
(WebCore::RenderObject::setPreferredLogicalWidthsDirty):
(WebCore::RenderObject::invalidateContainerPreferredLogicalWidths):
(WebCore::RenderObject::styleWillChange):
(WebCore::RenderObject::offsetParent):
* rendering/RenderObject.h:
(WebCore::RenderObject::isOutOfFlowPositioned):
(WebCore::RenderObject::isInFlowPositioned):
(WebCore::RenderObject::hasClip):
(WebCore::RenderObject::isFloatingOrOutOfFlowPositioned):
* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::removeChildNode):
* rendering/RenderReplaced.cpp:
(WebCore::hasAutoHeightOrContainingBlockWithAutoHeight):
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::rubyText):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::addChild):
(WebCore::RenderTable::computeLogicalWidth):
(WebCore::RenderTable::layout):
* rendering/style/RenderStyle.h:

Source/WebKit/blackberry:

* Api/WebPage.cpp:
(BlackBerry::WebKit::isPositionedContainer):
(BlackBerry::WebKit::isNonRenderViewFixedPositionedContainer):
(BlackBerry::WebKit::isFixedPositionedContainer):

Source/WebKit2:

* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
(WebKit::updateOffsetFromViewportForSelf):

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

7 years agoMade debug-{minibrowser,safari,test-runner} work with LLDB.
mitz@apple.com [Sun, 24 Jun 2012 23:07:31 +0000 (23:07 +0000)]
Made debug-{minibrowser,safari,test-runner} work with LLDB.

Reviewed by Sam Weinig.

* Scripts/debug-minibrowser: Pass INCLUDE_OPTIONS_FOR_DEBUGGING to
printHelpAndExitForRunAndDebugWebKitAppIfNeeded().
* Scripts/debug-safari: Ditto.
* Scripts/debug-test-runner: Ditto.
* Scripts/webkitdirs.pm:
(debugger): Added. Calls determineDebugger() if needed and returns the chosen debugger.
(determineDebugger): Added. Sets the debugger to "lldb" if the --use-lldb switch is present,
and to "gdb" otherwise.
(printHelpAndExitForRunAndDebugWebKitAppIfNeeded): Changed to print help for the
--target-web-process and --use-lldb switches if passed INCLUDE_OPTIONS_FOR_DEBUGGING.
(execMacWebKitAppForDebugging): Changed to use the chosen debugger.

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