WebKit-https.git
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

7 years agoAfter Editor::setComposition is called, input should scroll to the end of the composi...
commit-queue@webkit.org [Sun, 24 Jun 2012 21:44:47 +0000 (21:44 +0000)]
After Editor::setComposition is called, input should scroll to the end of the composition.
https://bugs.webkit.org/show_bug.cgi?id=88999

Patch by Oli Lan <olilan@chromium.org> on 2012-06-24
Reviewed by Ryosuke Niwa.

Source/WebCore:

This fixes an issue where after a call to setComposition, the start of the composition is revealed
(scrolled to) instead of the end (where the caret/editing point should be).

The change is to allow revealSelectionAfterEditingOperation to take a revealExtent parameter,
and to pass that parameter as true when calling from setIgnoreCompositionSelectionChange, which is
called at the end of setComposition.

Test: fast/forms/input-set-composition-scroll.html

* editing/Editor.cpp:
(WebCore::Editor::revealSelectionAfterEditingOperation):
(WebCore::Editor::setIgnoreCompositionSelectionChange):
* editing/Editor.h:
(Editor):

LayoutTests:

This tests that after setComposition is called, the input scrolls to the end of the composition
(i.e. that the end of the selection/composition is revealed).

* fast/forms/input-set-composition-scroll-expected.txt: Added.
* fast/forms/input-set-composition-scroll.html: Added.

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

7 years agoThe comment in test_expectations_android.txt is unclear as to the purpose of this...
abarth@webkit.org [Sun, 24 Jun 2012 18:44:02 +0000 (18:44 +0000)]
The comment in test_expectations_android.txt is unclear as to the purpose of this file.
https://bugs.webkit.org/show_bug.cgi?id=89832

Reviewed by Ojan Vafai.

This patch attempts to clarify the purpose of this file and what will
happen to it in the future.

* platform/chromium/test_expectations_android.txt:

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

7 years ago[EFL] Skip fast/text/hyphen-min-preferred-width.html
commit-queue@webkit.org [Sun, 24 Jun 2012 17:25:50 +0000 (17:25 +0000)]
[EFL] Skip fast/text/hyphen-min-preferred-width.html
https://bugs.webkit.org/show_bug.cgi?id=89831

Unreviewed EFL gardening. Skip the auto-hyphenation added
in r121102 as the EFL port does not support the feature.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-24

* platform/efl/TestExpectations:

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

7 years ago[Chromium] Release media resources after each LayoutTest on Android
abarth@webkit.org [Sun, 24 Jun 2012 16:29:27 +0000 (16:29 +0000)]
[Chromium] Release media resources after each LayoutTest on Android
https://bugs.webkit.org/show_bug.cgi?id=89720

Reviewed by Eric Carlson.

The LayoutTests can hang when run on Android because we sometimes run
out of media resources. This patch causes us to release our media
resources after each test in order to avoid running out of this
resource. In production, there are other mechanisms that manage this
resource.

* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::resetTestController):

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

7 years agoWeb Inspector: Simplify InspectorIndexedDBAgent to use IDB metadata API
jsbell@chromium.org [Sun, 24 Jun 2012 15:06:53 +0000 (15:06 +0000)]
Web Inspector: Simplify InspectorIndexedDBAgent to use IDB metadata API
https://bugs.webkit.org/show_bug.cgi?id=89495

Reviewed by Vsevolod Vlasov.

No new tests - no functional changes.

* inspector/InspectorIndexedDBAgent.cpp:
(WebCore):

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

7 years agoUnreviewed EFL gardening, generating baselines required after r121085.
joone@webkit.org [Sun, 24 Jun 2012 15:02:59 +0000 (15:02 +0000)]
Unreviewed EFL gardening, generating baselines required after r121085.

* platform/efl/fast/css/text-overflow-ellipsis-text-align-center-expected.txt: Added.
* platform/efl/fast/css/text-overflow-ellipsis-text-align-justify-expected.txt: Added.
* platform/efl/fast/css/text-overflow-ellipsis-text-align-left-expected.txt: Added.
* platform/efl/fast/css/text-overflow-ellipsis-text-align-right-expected.txt: Added.
* platform/efl/fast/css/vertical-text-overflow-ellipsis-text-align-center-expected.txt: Added.
* platform/efl/fast/css/vertical-text-overflow-ellipsis-text-align-justify-expected.txt: Added.
* platform/efl/fast/css/vertical-text-overflow-ellipsis-text-align-left-expected.txt: Added.
* platform/efl/fast/css/vertical-text-overflow-ellipsis-text-align-right-expected.txt: Added.

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

7 years agoUnreviewed GTK gardening, generating baselines required after r121085.
zandobersek@gmail.com [Sun, 24 Jun 2012 11:30:25 +0000 (11:30 +0000)]
Unreviewed GTK gardening, generating baselines required after r121085.

* platform/gtk/fast/css/text-overflow-ellipsis-text-align-center-expected.txt: Added.
* platform/gtk/fast/css/text-overflow-ellipsis-text-align-justify-expected.txt: Added.
* platform/gtk/fast/css/text-overflow-ellipsis-text-align-left-expected.txt: Added.
* platform/gtk/fast/css/text-overflow-ellipsis-text-align-right-expected.txt: Added.
* platform/gtk/fast/css/vertical-text-overflow-ellipsis-text-align-center-expected.txt: Added.
* platform/gtk/fast/css/vertical-text-overflow-ellipsis-text-align-justify-expected.txt: Added.
* platform/gtk/fast/css/vertical-text-overflow-ellipsis-text-align-left-expected.txt: Added.
* platform/gtk/fast/css/vertical-text-overflow-ellipsis-text-align-right-expected.txt: Added.

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

7 years agoUnreviewed GTK gardening, move some flaky tests under the
zandobersek@gmail.com [Sun, 24 Jun 2012 11:26:09 +0000 (11:26 +0000)]
Unreviewed GTK gardening, move some flaky tests under the
proper section in the TestExpectations file and narrow down
test expectations for failures that were shown not to be flaky.

* platform/gtk/TestExpectations:

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

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

Reviewed by Sam Weinig.

Instead of sending DidReceiveEvent for key events as DispatchMessageEvenWhenWaitingForSyncReply,
use proper synchronous messages. This makes the WebProcess block while the UIProcess handles
the event but prevents a weird race condition where DidReceiveEvent gets dispatched just before
a synchronous DecidePolicyForNavigationAction and something happens below DidReceiveEvent that
invalidates the frame ID passed to DecidePolicyForNavigationAction.

This is a speculative fire-fighting fix.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveKeyEvent):
(WebKit::WebPageProxy::didReceiveEvent):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::keyEvent):

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

7 years agoWeb Inspector: speed up Timeline and Elements panel rendering
pfeldman@chromium.org [Sun, 24 Jun 2012 07:27:03 +0000 (07:27 +0000)]
Web Inspector: speed up Timeline and Elements panel rendering
https://bugs.webkit.org/show_bug.cgi?id=89771

Reviewed by Yury Semikhatsky.

I used timeline panel to find unnecessary style operations.

* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement.prototype.updateTitle):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._updateEventDividers):
(WebInspector.TimelinePanel.prototype._updateFrames):
(WebInspector.TimelinePanel.prototype.sidebarResized):
(WebInspector.TimelinePanel.prototype.onResize):
(WebInspector.TimelinePanel.prototype._onScroll):
(WebInspector.TimelinePanel.prototype._refresh):
(WebInspector.TimelinePanel.prototype._refreshRecords):
(WebInspector.TimelinePanel.prototype._adjustScrollPosition):

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

7 years agoUnreviewed GTK gardening, skip the auto-hyphenation test
zandobersek@gmail.com [Sun, 24 Jun 2012 05:51:40 +0000 (05:51 +0000)]
Unreviewed GTK gardening, skip the auto-hyphenation test
added in r121102 as the GTK port does not support the feature.

* platform/gtk/TestExpectations:

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

7 years ago[Gtk] REGRESSION(r120918): Causes flaky DND tests
zandobersek@gmail.com [Sun, 24 Jun 2012 05:32:08 +0000 (05:32 +0000)]
[Gtk] REGRESSION(r120918): Causes flaky DND tests
https://bugs.webkit.org/show_bug.cgi?id=89770

Reviewed by Martin Robinson.

Tools:

Connect to the run-file-chooser signal of the WebKitWebView and
return TRUE so no file chooser dialog is run. This prevents certain
test failures.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(webViewRunFileChooser):
(createWebView):

LayoutTests:

Remove test expectations for fast/events/domactivate-sets-underlying-click-event-as-handled.html
as the test now passes since the file chooser dialog is no longer run.

* platform/gtk/TestExpectations:

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

7 years ago[chromium] Return has value, in function returning void
kseo@webkit.org [Sun, 24 Jun 2012 05:29:31 +0000 (05:29 +0000)]
[chromium] Return has value, in function returning void
https://bugs.webkit.org/show_bug.cgi?id=89822

Reviewed by Adam Barth.

A followup for r121091.

* src/WebHistoryItem.cpp:
(WebKit::WebHistoryItem::setPageScaleFactor):
* src/WebImageLayer.cpp:
(WebKit::WebImageLayer::setBitmap):
* src/WebLayer.cpp:
(WebKit::WebLayer::setMaskLayer):
* src/WebOptionElement.cpp:
(WebKit::WebOptionElement::setValue):
(WebKit::WebOptionElement::setDefaultSelected):

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

7 years ago[chromium] Layout Test fast/text/hyphen-min-preferred-width.html is failing
kbr@google.com [Sun, 24 Jun 2012 03:47:10 +0000 (03:47 +0000)]
[chromium] Layout Test fast/text/hyphen-min-preferred-width.html is failing
https://bugs.webkit.org/show_bug.cgi?id=89820

Unreviewed gardening; marked test as known failure.

* platform/chromium/TestExpectations:

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

7 years agoInserting nodes is slow due to Node::notifyNodeListsAttributeChanged (20%+)
rniwa@webkit.org [Sun, 24 Jun 2012 03:13:19 +0000 (03:13 +0000)]
Inserting nodes is slow due to Node::notifyNodeListsAttributeChanged (20%+)
https://bugs.webkit.org/show_bug.cgi?id=73853

Reviewed by Anders Carlsson and Ojan Vafai.

Invalidate all node lists at document level to avoid having to walk up the DOM tree in the invalidation.
In particular, this makes appending node O(1) with respect to the depth of the tree in common cases when
we have node lists somewhere in the tree scope.

We now invalidate more node lists than we used to but it shouldn't matter much in practice because
most websites don't add or remove nodes or modify relevant attributes while iterating through node lists.
The change would also register each node list to document thereby consuming one extra pointer, however,
this should not have a significant memory impact given we used to do it unintentionally until I fixed it in
r110797 three months ago.

Also, RadioNodeList and LabelsNodeList had always been invalidated at document level so this refactoring
also allows us to move calls to registerDynamicSubtreeNodeList and unregisterDynamicSubtreeNodeList in
those node lists to DynamicSubtreeNodeList, and even delete NodeListsNodeData::invalidateCaches().

In addition, removed m_numNodeListCaches from TreeScope since it was only used to avoid walking up
the ancestors in invalidateNodeListsCacheAfterAttributeChanged and invalidateNodeListsCacheAfterChildrenChanged
but we don't walk up the ancestors any more. Also note that m_listsInvalidatedAtDocument tells us exactly
how many node lists are present for each document.

* dom/Document.cpp:
(WebCore::Document::clearNodeListCaches): Optionally takes a qualified attribute name so that we don't
have to invalidate tag node lists when only attributes are modified.
* dom/Document.h:
(Document):
* dom/DynamicNodeList.cpp:
(WebCore::DynamicSubtreeNodeList::~DynamicSubtreeNodeList): Calls unregisterDynamicSubtreeNodeList.
* dom/DynamicNodeList.h:
(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList): Calls registerDynamicSubtreeNodeList.
* dom/Node.cpp:
(WebCore::Node::clearRareData):
(WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged): No longer walks up the tree to invalidate
node list caches. All invalidations are done in Document::clearNodeListCaches.
(WebCore::Node::invalidateNodeListsCacheAfterChildrenChanged): Ditto.
(WebCore::Node::getElementsByTagName):
(WebCore::Node::getElementsByTagNameNS):
(WebCore::Node::getElementsByName):
(WebCore::Node::getElementsByClassName):
(WebCore::Node::radioNodeList):
(WebCore):
(WebCore::NodeRareData::createNodeLists):
* dom/NodeRareData.h:
(NodeListsNodeData):
(WebCore::NodeListsNodeData::adoptTreeScope): Invalidate node list caches while registering and
unregistering node lists from old and new documents respectively now that invalidateCaches() has been
(WebCore::NodeRareData::ensureNodeLists):
(NodeRareData):
* dom/TreeScope.cpp:
(WebCore::TreeScope::TreeScope):
* dom/TreeScope.h:
(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@121106 268f45cc-cd09-0410-ab3c-d52691b4dbfc