Timeline


and

04/09/12:

23:33 Changeset [113691] by kaustubh@motorola.com
  • 2 edits in trunk/Tools

Unreviewed: adding myself to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
23:24 Changeset [113690] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine two arrays in XPathException into one
https://bugs.webkit.org/show_bug.cgi?id=83442

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-09
Reviewed by Kentaro Hara.

No new tests required.

  • xml/XPathException.cpp:

(XPathExceptionNameDescription):
(WebCore):
(WebCore::XPathException::initializeDescription):

23:18 Changeset [113689] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine exceptionNames and exceptionDescriptions in IDBDatabaseException.cpp into one array
https://bugs.webkit.org/show_bug.cgi?id=83433

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-09
Reviewed by Kentaro Hara.

No new tests required.

  • Modules/indexeddb/IDBDatabaseException.cpp:

(IDBDatabaseExceptionNameDescription):
(WebCore):
(WebCore::IDBDatabaseException::initializeDescription):

23:07 Changeset [113688] by tkent@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Remove unused variable, WebViewImpl::m_lastMousePosition.
https://bugs.webkit.org/show_bug.cgi?id=83550

Reviewed by Kentaro Hara.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::mouseMove):

  • src/WebViewImpl.h:
22:54 Changeset [113687] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine two arrays in SQLException.cpp into one
https://bugs.webkit.org/show_bug.cgi?id=83452

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-09
Reviewed by Kentaro Hara.

No new tests required.

  • Modules/webdatabase/SQLException.cpp:

(SQLExceptionNameDescription):
(WebCore):
(WebCore::SQLException::initializeDescription):

22:51 Changeset [113686] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine two arrays in EventException.cpp into one
https://bugs.webkit.org/show_bug.cgi?id=83451

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-09
Reviewed by Kentaro Hara.

No new tests required.

  • dom/EventException.cpp:

(EventExceptionNameDescription):
(WebCore):
(WebCore::EventException::initializeDescription):

22:50 Changeset [113685] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine two arrays in RangeException.cpp into one
https://bugs.webkit.org/show_bug.cgi?id=83450

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-09
Reviewed by Kentaro Hara.

No new tests required.

  • dom/RangeException.cpp:

(RangeExceptionNameDescription):
(WebCore):
(WebCore::RangeException::initializeDescription):

22:47 Changeset [113684] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebCore

[Texmap] Improve TextureMapperGL readability
https://bugs.webkit.org/show_bug.cgi?id=83477

Change the debugging macros for TextureMapperGL, so that the GL_CMD call can include a semicolon.
Modify some if blocks to have an early return.

Reviewed by Martin Robinson.

No new functionality.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGLData::SharedGLData::scissorClip):
(WebCore::TextureMapperGLData::SharedGLData::applyCurrentClip):
(WebCore::TextureMapperGLData::SharedGLData::~SharedGLData):
(WebCore::TextureMapperGLData::initializeStencil):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::TextureMapperGL::endPainting):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::BitmapTextureGL::didReset):
(WebCore::BitmapTextureGL::updateContents):
(WebCore::BitmapTextureGL::initializeStencil):
(WebCore::BitmapTextureGL::bind):
(WebCore::BitmapTextureGL::~BitmapTextureGL):
(WebCore::TextureMapperGL::bindSurface):
(WebCore::TextureMapperGL::beginClip):

22:45 Changeset [113683] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine two arrays in FileException.cpp into one
https://bugs.webkit.org/show_bug.cgi?id=83449

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-09
Reviewed by Kentaro Hara.

No new tests required.

  • fileapi/FileException.cpp:

(FileExceptionNameDescription):
(WebCore):
(WebCore::FileException::initializeDescription):

22:43 Changeset [113682] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine two arrays in OperationNotAllowedException.cpp into one
https://bugs.webkit.org/show_bug.cgi?id=83445

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-09
Reviewed by Kentaro Hara.

No new tests required.

  • fileapi/OperationNotAllowedException.cpp:

(OperationNotAllowedExceptionNameDescription):
(WebCore):
(WebCore::OperationNotAllowedException::initializeDescription):

22:39 Changeset [113681] by shinyak@chromium.org
  • 11 edits
    5 adds in trunk

Assert triggers VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries.
https://bugs.webkit.org/show_bug.cgi?id=83118

Reviewed by Hajime Morita.

Source/WebCore:

VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries did not work correctly.
There was a case that selection crosses shadow boundaries.

This patch introduces a class TreeScopeAdjuster, which enables us to adjust Node or Position
into a specified tree scope.

Test: fast/dom/shadow/selections-in-shadow.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.ext.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DOMAllInOne.cpp:
  • dom/TreeScope.h:

(TreeScope):

  • dom/TreeScopeAdjuster.cpp: Added.

(WebCore):
(WebCore::TreeScopeAdjuster::TreeScopeAdjuster):
(WebCore::TreeScopeAdjuster::ancestorInThisScope):

Returns the node itself if it's in the same tree scope.
Otherwise, this method checks the shadow ancestor of the node recursively.
If no corresponding node is found, 0 will be returned.

(WebCore::TreeScopeAdjuster::adjustPositionBefore):
(WebCore::TreeScopeAdjuster::adjustPositionAfter):

  • dom/TreeScopeAdjuster.h: Added.

(WebCore):
(TreeScopeAdjuster):
(WebCore::TreeScopeAdjuster::treeScope):

  • editing/VisibleSelection.cpp:

(WebCore::VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries):

LayoutTests:

This tests checks all the combination of element not in a shadow tree, element in a shadow tree,
element in a nested shadow tree, element in a non-youngest shadow tree, element in a nested shadow tree
in non-youngest shadow treee.

  • fast/dom/resources/event-sender-util.js: Added.

(mouseMoveToElem):

  • fast/dom/shadow/selections-in-shadow-expected.txt: Added.
  • fast/dom/shadow/selections-in-shadow.html: Added.
22:36 Changeset [113680] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine two arrays in SVGException.cpp into one
https://bugs.webkit.org/show_bug.cgi?id=83444

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-09
Reviewed by Kentaro Hara.

No new tests required.

  • svg/SVGException.cpp:

(SVGExceptionNameDescription):
(WebCore):
(WebCore::SVGException::initializeDescription):

22:30 Changeset [113679] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine two arrays in XMLHttpRequestException.cpp into one
https://bugs.webkit.org/show_bug.cgi?id=83443

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-09
Reviewed by Kentaro Hara.

No new tests requied.

  • xml/XMLHttpRequestException.cpp:

(XMLHttpRequestExceptionNameDescription):
(WebCore):
(WebCore::XMLHttpRequestException::initializeDescription):

21:57 Changeset [113678] by noam.rosenthal@nokia.com
  • 24 edits
    2 adds in trunk/Source

[WK2] Enable using a single ShareableBitmap for multiple updates
https://bugs.webkit.org/show_bug.cgi?id=83424

Source/WebCore:

Modify BitmapTexture::updateContents to include a source offset.
This allows us to update a texture from a sub-image.

Reviewed by Kenneth Rohde Christiansen.

Tested by existing API tests.

  • platform/graphics/texmap/TextureMapper.h:

(BitmapTexture):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::BitmapTextureGL::didReset):
(WebCore::driverSupportsBGRASwizzling):
(WebCore::BitmapTextureGL::updateContents):

  • platform/graphics/texmap/TextureMapperGL.h:

(WebCore::BitmapTextureGL::textureTarget):
(BitmapTextureGL):

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::BitmapTextureImageBuffer::updateContents):

  • platform/graphics/texmap/TextureMapperImageBuffer.h:

(BitmapTextureImageBuffer):

Source/WebKit2:

Reviewed by Kenneth Rohde Christiansen.

Enabled creating a GraphicsContext that references a rect inside ShareableBitmap.
Added bitmapOffset to UpdateInfo, to allow updates to reference an offset inside the bitmap.
Added UpdateAtlas, a class that manages available rects in a larger ShareableBitmap.

In this iteration, UpdateAtlas has a simple behavior where a rect inside the bitmap is
either available or used. When the buffers are swapped, all used buffers become available
again. A future enhancement might allow triple-buffering, where available rects can be
updated while other rects from the same atlas are in use.

Added the necessary plumbing to allow Qt's UI-side compositing to take advantage of
UpdateAtlas. LayerTreeHostQt creates an atlas per type of bitmap (i.e. one opaque and one
alpha-enabled atlas). When a tile wants to update and there's no available scratch-buffer,
the update would be postponed to the next frame, creating a tiling-artifact in low memory
situations.

  • Shared/UpdateInfo.cpp:

(WebKit::UpdateInfo::encode):
(WebKit::UpdateInfo::decode):

  • Shared/UpdateInfo.h:

(UpdateInfo):

  • Target.pri:
  • UIProcess/LayerTreeHostProxy.cpp:

(WebKit::LayerTreeHostProxy::updateTileForLayer):

  • UIProcess/WebLayerTreeRenderer.cpp:

(WebKit::WebLayerTreeRenderer::syncLayerParameters):
(WebKit::WebLayerTreeRenderer::updateTile):
(WebKit::WebLayerTreeRenderer::createImage):

  • UIProcess/WebLayerTreeRenderer.h:

(TileUpdate):
(WebKit::WebLayerTreeRenderer::TileUpdate::TileUpdate):
(WebLayerTreeRenderer):

  • UIProcess/qt/LayerBackingStore.cpp:

(WebKit::LayerBackingStoreTile::swapBuffers):
(WebKit::LayerBackingStoreTile::setBackBuffer):
(WebKit::LayerBackingStore::createTile):

  • UIProcess/qt/LayerBackingStore.h:

(LayerBackingStoreTile):
(LayerBackingStore):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::tiledBackingStoreBackgroundColor):
(WebCore::WebGraphicsLayer::beginContentUpdate):
(WebCore):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:

(WebGraphicsLayerClient):
(WebGraphicsLayer):

  • WebProcess/WebPage/TiledBackingStoreRemoteTile.cpp:

(WebKit::TiledBackingStoreRemoteTile::updateBackBuffer):

  • WebProcess/WebPage/TiledBackingStoreRemoteTile.h:

(TiledBackingStoreRemoteTileClient):

  • WebProcess/WebPage/UpdateAtlas.cpp: Added.

(WebKit):
(WebKit::UpdateAtlas::UpdateAtlas):
(WebKit::nextPowerOfTwo):
(WebKit::UpdateAtlas::buildLayoutIfNeeded):
(WebKit::UpdateAtlas::findAvailableIndex):
(WebKit::UpdateAtlas::didSwapBuffers):
(WebKit::UpdateAtlas::acquireScratchBuffer):
(WebKit::UpdateAtlas::offsetForIndex):

  • WebProcess/WebPage/UpdateAtlas.h: Added.

(WebCore):
(WebKit):
(UpdateAtlas):
(WebKit::UpdateAtlas::bitmap):
(WebKit::UpdateAtlas::size):
(WebKit::UpdateAtlas::flags):

  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::adoptImageBackingStore):
(WebKit::LayerTreeHostQt::renderNextFrame):
(WebKit::LayerTreeHostQt::purgeBackingStores):
(WebKit):
(WebKit::LayerTreeHostQt::getAtlas):
(WebKit::LayerTreeHostQt::beginContentUpdate):

  • WebProcess/WebPage/qt/LayerTreeHostQt.h:

(LayerTreeHostQt):

21:54 Changeset [113677] by danakj@chromium.org
  • 28 edits in trunk/Source

[chromium] Viewport is not filled when out of texture memory on mac
https://bugs.webkit.org/show_bug.cgi?id=83351

Reviewed by Adrienne Walker.

Source/Platform:

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):

Source/WebCore:

Currently we add gutter quads on the NonCompositedContentHost layer,
which lies above another visible layer - the rubberband layer on mac.
For this reason, on mac, gutter quads were disabled, as well as forcing
the NCCH layer to draw, in order to make the rubberband layer appear.

We move the logic for adding gutter quads into CCRenderPass, and add
gutter quads for all pixels that are visible through the viewport.
This allows us to stop special-casing the NCCH layer, and allows us
to skip drawing the layer equally with other layers. We remove the
backgroundCoversViewport() flag entirely.

In order to do this, we fix a bug in the occlusion tracker, that
allowed opaque() layers with skipsDraw to occlude, by making
the visibleContentOpaqueRegion() method on the layer classes
also return the opaque region for non-tiled layers, always use
its value in the occlusion tracker.

Unit test: CCLayerTreeHostImplTest.viewportCovered

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::LayerChromium):
(WebCore::LayerChromium::pushPropertiesTo):
(WebCore::LayerChromium::visibleContentOpaqueRegion):
(WebCore):

  • platform/graphics/chromium/LayerChromium.h:

(LayerChromium):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::prepareToUpdateTiles):
(WebCore::TiledLayerChromium::visibleContentOpaqueRegion):

  • platform/graphics/chromium/cc/CCLayerImpl.cpp:

(WebCore::CCLayerImpl::CCLayerImpl):
(WebCore::CCLayerImpl::visibleContentOpaqueRegion):
(WebCore):

  • platform/graphics/chromium/cc/CCLayerImpl.h:

(WebCore::CCLayerImpl::appendQuads):
(CCLayerImpl):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::finishCommitOnImplThread):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(WebCore::CCLayerTreeHost::setBackgroundColor):
(CCLayerTreeHost):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

(WebCore::CCLayerTreeHostImpl::backgroundColor):
(WebCore::CCLayerTreeHostImpl::setBackgroundColor):
(CCLayerTreeHostImpl):

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::computeOcclusionBehindLayer):
(WebCore::::markOccludedBehindLayer):

  • platform/graphics/chromium/cc/CCOcclusionTracker.h:

(CCOcclusionTrackerBase):
(WebCore::CCOcclusionTrackerBase::computeVisibleRegionInScreen):

  • platform/graphics/chromium/cc/CCRenderPass.cpp:

(WebCore::CCRenderPass::appendQuadsToFillScreen):
(WebCore):

  • platform/graphics/chromium/cc/CCRenderPass.h:

(WebCore):
(CCRenderPass):

  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::CCTiledLayerImpl::appendQuads):
(WebCore::CCTiledLayerImpl::visibleContentOpaqueRegion):

  • platform/graphics/chromium/cc/CCTiledLayerImpl.h:

(WebCore::CCTiledLayerImpl::skipsDraw):
(CCTiledLayerImpl):

Source/WebKit/chromium:

  • src/NonCompositedContentHost.cpp:

(WebKit::NonCompositedContentHost::NonCompositedContentHost):
(WebKit::NonCompositedContentHost::setBackgroundColor):

  • src/WebLayerTreeView.cpp:

(WebKit::WebLayerTreeView::setBackgroundColor):
(WebKit):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setBackgroundColor):
(WebKit):
(WebKit::WebViewImplContentPainter::paint):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

  • src/WebViewImpl.h:

(WebCore):
(WebViewImpl):

  • tests/CCLayerImplTest.cpp:

(WebCore::TEST):

  • tests/CCLayerTreeHostImplTest.cpp:

(WebKitTests::BlendStateCheckLayer::appendQuads):
(WebKitTests::TEST_F):
(WebKitTests):

  • tests/CCLayerTreeHostTest.cpp:

(WTF):
(CCLayerTreeHostTestCommit):
(WTF::CCLayerTreeHostTestCommit::CCLayerTreeHostTestCommit):
(WTF::CCLayerTreeHostTestCommit::beginTest):
(WTF::CCLayerTreeHostTestCommit::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestCommit::afterTest):
(WTF::TEST_F):
(TestLayerChromium):

  • tests/CCOcclusionTrackerTest.cpp:

(WebKitTests::TestContentLayerChromium::TestContentLayerChromium):
(WebKitTests::TestContentLayerChromium::visibleContentOpaqueRegion):
(WebKitTests::TestContentLayerChromium::setOpaqueContentsRect):
(TestContentLayerChromium):
(WebKitTests::TestContentLayerImpl::TestContentLayerImpl):
(TestContentLayerImpl):
(WebKitTests::TestContentLayerImpl::visibleContentOpaqueRegion):
(WebKitTests::TestContentLayerImpl::setOpaqueContentsRect):

  • tests/CCTiledLayerImplTest.cpp:
  • tests/LayerChromiumTest.cpp:
21:47 Changeset [113676] by macpherson@chromium.org
  • 2 edits in trunk/Source/WebCore

Don't let CSSPropertyWebkitPerspective dereference primitiveValue without null check.
https://bugs.webkit.org/show_bug.cgi?id=83538

Reviewed by Daniel Bates.

No new tests / code cleanup only.

Coverity pointed out that we potentially dereference primitiveValue here without checking for null.
I've added an early out for that case to make sure it can't ever happen. I don't know if it's actually
possible to exercise that code path or not - probably the parser prevents it from being hit in practice.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::collectMatchingRulesForList):

21:42 Changeset [113675] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

<http://webkit.org/b/83539> Web Inspector: ASSERT attempting to unbind null contentDocument

Avoid calling unbind with a null object. The HTMLFrameOwnerElement's
contentDocument can be null.

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-04-09
Reviewed by Timothy Hatcher.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::unbind):

21:27 Changeset [113674] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Parsed Cookie's m_isMaxAgeSet is not needed.
https://bugs.webkit.org/show_bug.cgi?id=83457

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-04-09
Reviewed by Rob Buis.

When m_expiry is not -1, it must be set by setExpiry or setMaxAge. setExpiry will return when m_expiry
has been set. This ensures Max-Age's precedence.
And m_isMaxAgeSet is always false when the cookie is from database. This is not right.

So we use m_expiry instead of m_isMaxAgeSet.

No new tests. Refactor.

  • platform/blackberry/ParsedCookie.cpp:

(WebCore::ParsedCookie::ParsedCookie):
(WebCore::ParsedCookie::setExpiry):
(WebCore::ParsedCookie::setMaxAge):

  • platform/blackberry/ParsedCookie.h:

(ParsedCookie):

21:05 Changeset [113673] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fixed ordering of deleting CCInputHandler and CCLayerTreeHostImpl in layerTreeHostClosedOnImplThread
https://bugs.webkit.org/show_bug.cgi?id=83488

Patch by Min Qin <qinmin@google.com> on 2012-04-09
Reviewed by James Robinson.

CCInputHandler(WebCompositorInputHandlerImpl) has a pointer to CCLayerTreeHostImpl.
So we should delete CCInputHandler earlier as otherwise that pointer could get misused after LayerTreeHostImpl is deleted.
Just fixing a potential NPE error, no behavior change.

  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::layerTreeHostClosedOnImplThread):

20:59 Changeset [113672] by efidler@rim.com
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Update about:config page
https://bugs.webkit.org/show_bug.cgi?id=83515

Reviewed by Rob Buis.

  • WebCoreSupport/AboutData.cpp:

(WebCore::configPage):

  • WebCoreSupport/AboutDataEnableFeatures.in:
  • WebCoreSupport/AboutDataHaveFeatures.in:
  • WebCoreSupport/AboutDataUseFeatures.in:
20:46 Changeset [113671] by commit-queue@webkit.org
  • 12 edits
    2 deletes in trunk

Unreviewed, rolling out r113656.
http://trac.webkit.org/changeset/113656
https://bugs.webkit.org/show_bug.cgi?id=83542

test is broken on chromium-win (Requested by simonjam on
#webkit).

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

Source/WebCore:

  • Modules/intents/Intent.cpp:

(WebCore::Intent::Intent):

  • Modules/intents/Intent.h:

(Intent):

  • Modules/intents/Intent.idl:
  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateParametersCheck):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

Source/WebKit/chromium:

  • public/WebIntent.h:

(WebIntent):

  • src/WebIntent.cpp:

Tools:

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::dispatchIntent):

LayoutTests:

  • webintents/web-intents-invoke-port-expected.txt: Removed.
  • webintents/web-intents-invoke-port.html: Removed.
20:41 Changeset [113670] by inferno@chromium.org
  • 3 edits
    2 adds in trunk

ASSERTION FAILED: !attached() in Node::attach.
https://bugs.webkit.org/show_bug.cgi?id=80726

Reviewed by Adam Barth.

Source/WebCore:

While parsing XML document, prevent attaching the leaf text node
back to document, if its parent is not attached.

Test: fast/dom/text-node-attach-crash.xhtml

  • xml/parser/XMLDocumentParser.cpp:

(WebCore::XMLDocumentParser::exitText):

LayoutTests:

  • fast/dom/text-node-attach-crash-expected.txt: Added.
  • fast/dom/text-node-attach-crash.xhtml: Added.
20:39 Changeset [113669] by simonjam@chromium.org
  • 2 edits
    1 add in trunk/LayoutTests

[Chromium] Unreviewed gardening.

  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-expected.txt: Added.
  • platform/chromium-mac-snowleopard/media/audio-repaint-expected.png:
20:11 Changeset [113668] by danakj@chromium.org
  • 3 edits in trunk/Source/WebCore

[chromium] Replica layers are not drawn, so should not be painted
https://bugs.webkit.org/show_bug.cgi?id=83504

Reviewed by James Robinson.

We attempt to paint replica layers when we are painting the mask layers
in CCLayerTreeHost.cpp.

This is useless code, replica layers have drawsContent() == false, and
have an empty visibleLayerRect, so the paint functions end up early-
outting. But it is a waste of time to try, and confusing to have
this attempted in the code at all, since the replica layers are never
drawn. They exist only for their transforms.

Also the dimensions used for the replica mask are different from the
surface mask, which is confusing and unnecessary as well. The mask is
applied to the same surface contents as the surface mask would be, so
only the surface's contentBounds need to be painted in the replica
mask.

Covered by existing tests.

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::paintMasksForRenderSurface):
(WebCore::CCLayerTreeHost::paintLayerContents):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:
20:05 Changeset [113667] by shinyak@chromium.org
  • 5 edits
    1 add in trunk

ShadowRoot should have selection attribute.
https://bugs.webkit.org/show_bug.cgi?id=82429

Reviewed by Hajime Morita.

Source/WebCore:

This patch makes ShadowRoot have selection attribute. Currently the selection returns
the same object as what window.getSelection() returns.

We will extend DOMSelection to have TreeScope. It will adjust Node into TreeScope.
This will be tracked in Bug 82698.

Test: fast/dom/shadow/selection-in-shadow.html

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::selection):
(WebCore):

  • dom/ShadowRoot.h:

(WebCore):
(ShadowRoot):

  • dom/ShadowRoot.idl:

LayoutTests:

Checks ShadowRoot.selection returns the same selection as what window.getSelection() returns.

  • fast/dom/shadow/selection-in-shadow.html: Added.
20:02 Changeset [113666] by rakuco@webkit.org
  • 55 edits in trunk/LayoutTests

[EFL] Gardening in fast/text/whitespace.

The last commit to these baselines had some weird fonts for some
reason, fix the expected sizes.

  • platform/efl/fast/text/whitespace/002-expected.png:
  • platform/efl/fast/text/whitespace/002-expected.txt:
  • platform/efl/fast/text/whitespace/003-expected.png:
  • platform/efl/fast/text/whitespace/003-expected.txt:
  • platform/efl/fast/text/whitespace/004-expected.png:
  • platform/efl/fast/text/whitespace/004-expected.txt:
  • platform/efl/fast/text/whitespace/005-expected.png:
  • platform/efl/fast/text/whitespace/005-expected.txt:
  • platform/efl/fast/text/whitespace/006-expected.png:
  • platform/efl/fast/text/whitespace/006-expected.txt:
  • platform/efl/fast/text/whitespace/007-expected.png:
  • platform/efl/fast/text/whitespace/007-expected.txt:
  • platform/efl/fast/text/whitespace/008-expected.png:
  • platform/efl/fast/text/whitespace/008-expected.txt:
  • platform/efl/fast/text/whitespace/009-expected.png:
  • platform/efl/fast/text/whitespace/009-expected.txt:
  • platform/efl/fast/text/whitespace/010-expected.png:
  • platform/efl/fast/text/whitespace/010-expected.txt:
  • platform/efl/fast/text/whitespace/011-expected.png:
  • platform/efl/fast/text/whitespace/011-expected.txt:
  • platform/efl/fast/text/whitespace/012-expected.png:
  • platform/efl/fast/text/whitespace/012-expected.txt:
  • platform/efl/fast/text/whitespace/013-expected.png:
  • platform/efl/fast/text/whitespace/013-expected.txt:
  • platform/efl/fast/text/whitespace/014-expected.png:
  • platform/efl/fast/text/whitespace/014-expected.txt:
  • platform/efl/fast/text/whitespace/015-expected.png:
  • platform/efl/fast/text/whitespace/015-expected.txt:
  • platform/efl/fast/text/whitespace/016-expected.png:
  • platform/efl/fast/text/whitespace/016-expected.txt:
  • platform/efl/fast/text/whitespace/018-expected.png:
  • platform/efl/fast/text/whitespace/018-expected.txt:
  • platform/efl/fast/text/whitespace/020-expected.png:
  • platform/efl/fast/text/whitespace/020-expected.txt:
  • platform/efl/fast/text/whitespace/021-expected.png:
  • platform/efl/fast/text/whitespace/021-expected.txt:
  • platform/efl/fast/text/whitespace/025-expected.png:
  • platform/efl/fast/text/whitespace/025-expected.txt:
  • platform/efl/fast/text/whitespace/027-expected.png:
  • platform/efl/fast/text/whitespace/027-expected.txt:
  • platform/efl/fast/text/whitespace/030-expected.png:
  • platform/efl/fast/text/whitespace/030-expected.txt:
  • platform/efl/fast/text/whitespace/normal-after-nowrap-breaking-expected.png:
  • platform/efl/fast/text/whitespace/normal-after-nowrap-breaking-expected.txt:
  • platform/efl/fast/text/whitespace/pre-break-word-expected.png:
  • platform/efl/fast/text/whitespace/pre-break-word-expected.txt:
  • platform/efl/fast/text/whitespace/pre-wrap-last-char-expected.png:
  • platform/efl/fast/text/whitespace/pre-wrap-last-char-expected.txt:
  • platform/efl/fast/text/whitespace/pre-wrap-line-test-expected.png:
  • platform/efl/fast/text/whitespace/pre-wrap-line-test-expected.txt:
  • platform/efl/fast/text/whitespace/pre-wrap-overflow-selection-expected.png:
  • platform/efl/fast/text/whitespace/pre-wrap-overflow-selection-expected.txt:
  • platform/efl/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.png:
  • platform/efl/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.txt:
19:54 Changeset [113665] by eae@chromium.org
  • 26 edits in trunk/Source/WebCore

Replace numeric_limits<LayoutUnit>::min/max with constants
https://bugs.webkit.org/show_bug.cgi?id=83497

Reviewed by Eric Seidel.

Replace all uses of numeric_limits<LayoutUnit>::min/max with
MIN_LAYOUT_UNIT and MAX_LAYOUT_UNIT respectively in preparation for the
switch to subpixel layout.

Also rename zeroLayoutUnit to ZERO_LAYOUT_UNIT to be consistent and
change it to be a define as to avoid global initializer warnings once we
change the definition of LayoutUnit from int to FractionalLayoutUnit.

No new tests, no change in functionality.

  • dom/ElementRareData.h:

(WebCore::defaultMinimumSizeForResizing):

  • editing/FrameSelection.cpp:

(WebCore::NoXPosForVerticalArrowNavigation):

  • platform/graphics/transforms/TransformationMatrix.cpp:

(WebCore::clampEdgeValue):
(WebCore::TransformationMatrix::clampedBoundsOfProjectedQuad):

  • rendering/AutoTableLayout.cpp:

(WebCore::AutoTableLayout::computePreferredLogicalWidths):

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::placeBoxesInBlockDirection):
(WebCore::InlineFlowBox::addBorderOutsetVisualOverflow):
(WebCore::InlineFlowBox::paintFillLayer):
(WebCore::InlineFlowBox::paintBoxDecorations):
(WebCore::InlineFlowBox::paintMask):
(WebCore::InlineFlowBox::computeOverAnnotationAdjustment):

  • rendering/LayoutTypes.h:

(WebCore):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::MarginInfo::MarginInfo):
(WebCore::RenderBlock::computeInitialRegionRangeForBlock):
(WebCore::RenderBlock::adjustFloatingBlock):
(WebCore::RenderBlock::paintColumnRules):
(WebCore::RenderBlock::removeFloatingObject):
(WebCore::RenderBlock::nextFloatLogicalBottomBelow):
(WebCore::RenderBlock::markLinesDirtyInBlockRange):
(WebCore::RenderBlock::clearFloats):
(WebCore::RenderBlock::addOverhangingFloats):
(WebCore::RenderBlock::getClearDelta):
(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
(WebCore::getHeightForLineCount):
(WebCore::RenderBlock::borderFitAdjust):
(WebCore::RenderBlock::adjustForUnsplittableChild):

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::paginationStrut):
(WebCore::RenderBlock::pageLogicalOffset):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::LineLayoutState::updateRepaintRangeFromBox):
(WebCore::RenderBlock::checkFloatsInCleanLine):
(WebCore::RenderBlock::addOverflowFromInlineChildren):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats):
(WebCore::RenderBox::positionForPoint):

  • rendering/RenderBox.h:

(WebCore::RenderBox::minYVisualOverflow):
(WebCore::RenderBox::minXVisualOverflow):
(RenderBox):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::offsetLeft):
(WebCore::RenderBoxModelObject::offsetTop):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
(WebCore::RenderDeprecatedFlexibleBox::allowedChildFlex):

  • rendering/RenderFieldset.cpp:

(WebCore::RenderFieldset::paintBoxDecorations):
(WebCore::RenderFieldset::paintMask):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems):
(WebCore::RenderFlexibleBox::lineBreakLength):
(WebCore::RenderFlexibleBox::alignChildren):
(WebCore::RenderFlexibleBox::applyStretchAlignmentToChild):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::computeLogicalWidth):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::linesVisualOverflowBoundingBox):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::resize):

  • rendering/RenderListMarker.cpp:

(WebCore::RenderListMarker::updateMargins):

  • rendering/RenderMarquee.cpp:

(WebCore::RenderMarquee::computePosition):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::repaintAfterLayoutIfNeeded):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeReplacedLogicalWidth):
(WebCore::RenderReplaced::computePreferredLogicalWidths):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
(WebCore::RenderTable::layout):

  • rendering/RenderTable.h:

(WebCore::RenderTable::bordersPaddingAndSpacingInRowDirection):

  • rendering/RenderText.cpp:

(WebCore::RenderText::linesVisualOverflowBoundingBox):

19:50 Changeset [113664] by rakuco@webkit.org
  • 6 edits in trunk/LayoutTests

[EFL] Gardening in transforms/2d.

Mostly account for the changes caused by the jhbuild and font
commits.

  • platform/efl/transforms/2d/compound-transforms-vs-containers-expected.png:
  • platform/efl/transforms/2d/hindi-rotated-expected.png:
  • platform/efl/transforms/2d/transform-borderbox-expected.png:
  • platform/efl/transforms/2d/transform-fixed-container-expected.png:
  • platform/efl/transforms/2d/transform-origin-borderbox-expected.png:
19:32 Changeset [113663] by leviw@chromium.org
  • 2 edits in trunk/Source/WebCore

Clean up LayoutUnit usage in DOMNodeHighlighter
https://bugs.webkit.org/show_bug.cgi?id=83507

Reviewed by Eric Seidel.

Ensuring DOMNodeHighlighter uses pixel snapping that matches that done in the RenderTree. Changes include:

  • Reverting drawSubstring to use an IntPoint with pixel snapped values instead of a LayoutPoint.
  • Reverting borderBox to an IntRect since it's in absolute coordinates. See https://trac.webkit.org/wiki/LayoutUnit.
  • Frames are still laid out with integers. Cleaning up mainFrameOffset to reflect that.

No new tests. No change in behavior.

  • inspector/DOMNodeHighlighter.cpp:
19:26 Changeset [113662] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Add missing IndexedDB files to CMake build
https://bugs.webkit.org/show_bug.cgi?id=83495

Patch by Jeff Rogers <jrogers@rim.com> on 2012-04-09
Reviewed by Rob Buis.

  • CMakeLists.txt:
  • UseJSC.cmake:
19:13 Changeset [113661] by bdakin@apple.com
  • 2 edits in trunk/LayoutTests

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

All Mac bots occasionally fail tons of media/ sputnik/ and svg/ tests

This is a speculative fix.

  • platform/mac/Skipped:
19:12 Changeset [113660] by barraclough@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

If a callback constructor returns a C++ null, throw a type error.
https://bugs.webkit.org/show_bug.cgi?id=83537

Rubber Stamped by Geoff Garen.

  • API/JSCallbackConstructor.cpp:

(JSC::constructJSCallback):

  • If a callback constructor returns a C++ null, throw a type error.
  • API/tests/testapi.c:

(Base_returnHardNull):

  • API/tests/testapi.js:
    • Add a test case for callback constructors that return a C++ null.
19:06 Changeset [113659] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] WebProcess dies due to m_process->checkURLReceivedFromWebProcess(url) dropping a file URL
https://bugs.webkit.org/show_bug.cgi?id=83506
<rdar://problem/11171264>

Reviewed by Darin Adler.

Cannot test, because dragging within a single window never initiates a navigation, and dragging
across windows is too much for DRT and WTR.

  • platform/mac/DragDataMac.mm: (WebCore::DragData::asURL): Add the same checks that we had

for NSURLPboardType to NSStringPboardType case, preventing dropping of non-HTTP URLs.
String types cannot be sanitized when they are modified by JavaScript, and are thus less trusted.
String checks should be at least as restrictive as URL ones.

19:05 Changeset [113658] by jamesr@google.com
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] More unreviewed OwnPtr<>::operator= related clang build fixes in unit tests.

  • tests/Canvas2DLayerChromiumTest.cpp:
  • tests/LayerChromiumTest.cpp:
18:53 Changeset [113657] by paroga@webkit.org
  • 4 edits in trunk/Source/WTF

Port BinarySemaphoreWin.cpp to WinCE
https://bugs.webkit.org/show_bug.cgi?id=83502

Reviewed by Daniel Bates.

Replace WaitForSingleObjectEx with WaitForSingleObject since
the additonal parameter supported by the extended function
is not used anyway and the function does not exist on WinCE.

  • wtf/CMakeLists.txt:
  • wtf/PlatformWinCE.cmake:
  • wtf/threads/win/BinarySemaphoreWin.cpp:

(WTF::BinarySemaphore::wait):

18:46 Changeset [113656] by commit-queue@webkit.org
  • 9 edits
    2 adds in trunk

Add transfer map argument to Intent constructor
http://dvcs.w3.org/hg/web-intents/raw-file/tip/spec/Overview.html
This adds the ability to pass transferables (i.e. MessagePorts)
through web intents, and puts the calling convention in line
with the Web Messaging spec:
http://dev.w3.org/html5/postmsg/

Implementation in chromium API follows the port-passing method
of PlatformMessagePortChannel.

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

Patch by Greg Billock <gbillock@google.com> on 2012-04-09
Reviewed by Adam Barth.

  • Modules/intents/Intent.cpp:

(WebCore::Intent::create):

  • Modules/intents/Intent.idl:
  • WebCore.gypi:
  • bindings/v8/custom/V8IntentCustom.cpp: Added.

(WebCore):
(WebCore::V8Intent::constructorCallback):

18:44 Changeset [113655] by toyoshim@chromium.org
  • 2 edits in trunk/Tools

Update pywebsocket to 0.7.4.
https://bugs.webkit.org/show_bug.cgi?id=83461

Reviewed by Kent Tamura.

This version supports TLS by using ssl in addition to pyOpenSSL.
Other functional difrerences from 0.7.2 are:

  • strict Sec-WebSocket-Key validation conforming RFC 4648
  • compression ratio logging in debug
  • Scripts/webkitpy/thirdparty/init.py:

(AutoinstallImportHook._install_pywebsocket):

18:41 Changeset [113654] by barraclough@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

If a callback function returns a C++ null, convert to undefined.
https://bugs.webkit.org/show_bug.cgi?id=83534

Reviewed by Geoff Garen.

  • API/JSCallbackFunction.cpp:
    • If a callback function returns a C++ null, convert to undefined.

(JSC::JSCallbackFunction::call):

  • API/tests/testapi.c:

(Base_returnHardNull):

  • API/tests/testapi.js:
    • Add a test case for callback functions that return a C++ null.
18:30 Changeset [113653] by simonjam@chromium.org
  • 10 edits
    1 copy
    2 adds in trunk/LayoutTests

[Chromium] Unreviewed gardening.

  • platform/chromium-linux/media/media-document-audio-repaint-expected.png:
  • platform/chromium-linux/media/media-document-audio-repaint-expected.txt: Added.
  • platform/chromium-linux/scrollbars/scrollbars-on-positioned-content-expected.png:
  • platform/chromium-mac-leopard/scrollbars/scrollbars-on-positioned-content-expected.png:
  • platform/chromium-mac-snowleopard/scrollbars/scrollbars-on-positioned-content-expected.png:
  • platform/chromium-mac/fast/forms/basic-textareas-expected.png:
  • platform/chromium-mac/fast/overflow/hidden-scrollbar-resize-expected.txt: Added.
  • platform/chromium-mac/scrollbars/scrollbars-on-positioned-content-expected.png:
  • platform/chromium-mac/scrollbars/scrollbars-on-positioned-content-expected.txt: Copied from LayoutTests/platform/chromium-win/scrollbars/scrollbars-on-positioned-content-expected.txt.
  • platform/chromium-win/fast/overflow/hidden-scrollbar-resize-expected.txt:
  • platform/chromium-win/scrollbars/scrollbars-on-positioned-content-expected.png:
  • platform/chromium-win/scrollbars/scrollbars-on-positioned-content-expected.txt:
18:23 Changeset [113652] by danakj@chromium.org
  • 10 edits in trunk/Source

[chromium] Cull occluded surface quads
https://bugs.webkit.org/show_bug.cgi?id=81227

Reviewed by Adrienne Walker.

Source/WebCore:

Cull render surface and replica quads during draw based on occlusion.

In order to compute occlusion for the surface or replica, it must not
consider occlusion found in the surface's own subtree. To do this, we
reorder the calls to the occlusion tracker, and add the surface and
replica quads before we "leaveToTargetRenderSurface" which merges
occlusion from the surface's subtree up into its parent.

Unit test: CCOcclusionTrackerTestReplicaOccluded

CCOcclusionTrackerTestSurfaceWithReplicaUnoccluded
CCOcclusionTrackerTestSurfaceAndReplicaOccludedDifferently
CCOcclusionTrackerTestSurfaceChildOfSurface
CCOcclusionTrackerTestSurfaceChildOfClippingSurface

And added some sanity checks to other CCOcclusionTracker tests that have
render surfaces.

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::::leaveToTargetRenderSurface):
(WebCore::::unoccludedContributingSurfaceContentRect):
(WebCore):

  • platform/graphics/chromium/cc/CCOcclusionTracker.h:

(CCOcclusionTrackerBase):

  • platform/graphics/chromium/cc/CCQuadCuller.cpp:

(WebCore::CCQuadCuller::CCQuadCuller):
(WebCore::appendQuadInternal):
(WebCore::CCQuadCuller::append):
(WebCore):
(WebCore::CCQuadCuller::appendSurface):
(WebCore::CCQuadCuller::appendReplica):

  • platform/graphics/chromium/cc/CCQuadCuller.h:

(CCQuadCuller):

  • platform/graphics/chromium/cc/CCRenderPass.cpp:

(WebCore::CCRenderPass::appendQuadsForRenderSurfaceLayer):

  • platform/graphics/chromium/cc/CCRenderPass.h:

(CCRenderPass):

Source/WebKit/chromium:

  • tests/CCOcclusionTrackerTest.cpp:

(WebKitTests::CCOcclusionTrackerTest::TearDown):
(WebKitTests::CCOcclusionTrackerTest::createReplicaLayer):
(CCOcclusionTrackerTest):
(WebKitTests::CCOcclusionTrackerTest::setReplica):
(WebKitTests::CCOcclusionTrackerTestOverlappingSurfaceSiblings::runMyTest):
(WebKitTests::CCOcclusionTrackerTestOverlappingSurfaceSiblingsWithTwoTransforms::runMyTest):
(WebKitTests::CCOcclusionTrackerTestAnimationOpacity1OnMainThread::runMyTest):
(WebKitTests::CCOcclusionTrackerTestAnimationOpacity0OnMainThread::runMyTest):
(WebKitTests::CCOcclusionTrackerTestAnimationTranslateOnMainThread::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceOcclusionTranslatesWithClipping::runMyTest):
(WebKitTests):
(CCOcclusionTrackerTestReplicaOccluded):
(WebKitTests::CCOcclusionTrackerTestReplicaOccluded::runMyTest):
(CCOcclusionTrackerTestSurfaceWithReplicaUnoccluded):
(WebKitTests::CCOcclusionTrackerTestSurfaceWithReplicaUnoccluded::runMyTest):
(CCOcclusionTrackerTestSurfaceAndReplicaOccludedDifferently):
(WebKitTests::CCOcclusionTrackerTestSurfaceAndReplicaOccludedDifferently::runMyTest):
(CCOcclusionTrackerTestSurfaceChildOfSurface):
(WebKitTests::CCOcclusionTrackerTestSurfaceChildOfSurface::runMyTest):

18:19 Changeset [113651] by rniwa@webkit.org
  • 3 edits in trunk

Update perf-o-matic config.js per upstream change.

  • Websites/webkit-perf.appspot.com/js/config.js:

(var):

18:10 Changeset [113650] by jamesr@google.com
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Unreviewed build fix. OwnPtr<>::operator = breaks the build on clang, but not gcc :(

  • tests/CCLayerTreeHostTest.cpp:

(WTF::MockLayerTreeHost::create):

  • tests/Canvas2DLayerChromiumTest.cpp:
  • tests/LayerChromiumTest.cpp:
18:02 Changeset [113649] by bdakin@apple.com
  • 4 edits in trunk/WebKitLibraries

<rdar://problem/11214796>

New WKSI will hopefully fix a common crash seen by the bots in libRIP.A.dylib:
symmetric_convolve

Reviewed by Simon Fraser.

  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceSnowLeopard.a:
18:00 Changeset [113648] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Classic interpreter's GC hooks shouldn't attempt to scan instructions for code blocks that
are currently being generated
https://bugs.webkit.org/show_bug.cgi?id=83531
<rdar://problem/11215200>

Reviewed by Gavin Barraclough.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::stronglyVisitStrongReferences):

17:44 Changeset [113647] by kling@webkit.org
  • 16 edits in trunk/Source/WebCore

Make CSSValuePool share values globally.
<http://webkit.org/b/77700>

Reviewed by Antti Koivisto.

Remove the per-Document CSSValuePool and have everyone use a global pool
accessed via "CSSValuePool& cssValuePool()".

This reduces memory usage by sharing cached CSSValues between all documents,
and relaxes heap churn since the common, persistenly cached values are held
by CSSValuePool forever.

No behavior change thanks to r113588 which introduced a mechanism that makes
sure we never expose internal CSSValue objects to bindings, but read-only
clones of those values.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForNinePieceImageSlice):
(WebCore::valueForNinePieceImageQuad):
(WebCore::valueForNinePieceImageRepeat):
(WebCore::valueForNinePieceImage):
(WebCore::zoomAdjustedPixelValue):
(WebCore::zoomAdjustedNumberValue):
(WebCore::zoomAdjustedPixelValueForLength):
(WebCore::valueForReflection):
(WebCore::getPositionOffsetValue):
(WebCore::CSSComputedStyleDeclaration::currentColorOrValidColor):
(WebCore::getBorderRadiusCornerValues):
(WebCore::getBorderRadiusCornerValue):
(WebCore::getBorderRadiusShorthandValue):
(WebCore::computedTransform):
(WebCore::CSSComputedStyleDeclaration::valueForCustomFilterNumberParameter):
(WebCore::CSSComputedStyleDeclaration::valueForFilter):
(WebCore::valueForGridTrackBreadth):
(WebCore::valueForGridTrackList):
(WebCore::valueForGridPosition):
(WebCore::getDelayValue):
(WebCore::getDurationValue):
(WebCore::createLineBoxContainValue):
(WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
(WebCore::CSSComputedStyleDeclaration::valueForShadow):
(WebCore::valueForFamily):
(WebCore::renderUnicodeBidiFlagsToCSSValue):
(WebCore::renderTextDecorationFlagsToCSSValue):
(WebCore::fillRepeatToCSSValue):
(WebCore::fillSizeToCSSValue):
(WebCore::contentToCSSValue):
(WebCore::counterToCSSValue):
(WebCore::fontFamilyFromStyle):
(WebCore::lineHeightFromStyle):
(WebCore::fontSizeFromStyle):
(WebCore::fontStyleFromStyle):
(WebCore::fontVariantFromStyle):
(WebCore::fontWeightFromStyle):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSComputedStyleDeclaration.h:

(WebCore):

  • css/CSSParser.cpp:

(WebCore::parseColorValue):
(WebCore::parseSimpleLengthValue):
(WebCore::parseKeywordValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseColor):
(WebCore::CSSParser::setStyleSheet):
(WebCore::CSSParser::createPrimitiveNumericValue):
(WebCore::CSSParser::createPrimitiveStringValue):
(WebCore::CSSParser::parseValidPrimitive):
(WebCore::parseBackgroundClip):
(WebCore::CSSParser::parseFillShorthand):
(WebCore::CSSParser::parseAnimationShorthand):
(WebCore::CSSParser::parseTransitionShorthand):
(WebCore::CSSParser::parseShorthand):
(WebCore::CSSParser::parsePage):
(WebCore::CSSParser::parseSizeParameter):
(WebCore::CSSParser::parseContent):
(WebCore::CSSParser::parseAttr):
(WebCore::CSSParser::parseBackgroundColor):
(WebCore::CSSParser::parseFillImage):
(WebCore::CSSParser::parseFillPositionX):
(WebCore::CSSParser::parseFillPositionY):
(WebCore::CSSParser::parseFillPositionComponent):
(WebCore::CSSParser::parseFillPosition):
(WebCore::CSSParser::parseFillRepeat):
(WebCore::CSSParser::parseFillSize):
(WebCore::CSSParser::parseFillProperty):
(WebCore::CSSParser::parseAnimationDirection):
(WebCore::CSSParser::parseAnimationFillMode):
(WebCore::CSSParser::parseAnimationIterationCount):
(WebCore::CSSParser::parseAnimationName):
(WebCore::CSSParser::parseAnimationPlayState):
(WebCore::CSSParser::parseAnimationProperty):
(WebCore::CSSParser::parseAnimationTimingFunction):
(WebCore::CSSParser::parseGridTrackList):
(WebCore::CSSParser::parseDashboardRegions):
(WebCore::CSSParser::parseCounterContent):
(WebCore::CSSParser::parseClipShape):
(WebCore::CSSParser::parseExclusionShape):
(WebCore::CSSParser::parseFont):
(WebCore::FontFamilyValueBuilder::FontFamilyValueBuilder):
(WebCore::FontFamilyValueBuilder::commit):
(FontFamilyValueBuilder):
(WebCore::CSSParser::parseFontFamily):
(WebCore::CSSParser::parseFontVariant):
(WebCore::CSSParser::parseFontWeight):
(WebCore::ShadowParseContext::commitStyle):
(WebCore::CSSParser::parseShadow):
(WebCore::CSSParser::parseReflect):
(WebCore::CSSParser::parseFlex):
(WebCore::BorderImageParseContext::commitBorderImageProperty):
(WebCore::CSSParser::parseBorderImage):
(WebCore::CSSParser::parseBorderImageRepeat):
(WebCore::BorderImageSliceParseContext::commitBorderImageSlice):
(WebCore::BorderImageQuadParseContext::commitNumber):
(WebCore::BorderImageQuadParseContext::commitBorderImageQuad):
(WebCore::CSSParser::parseBorderRadius):
(WebCore::CSSParser::parseAspectRatio):
(WebCore::CSSParser::parseCounter):
(WebCore::parseDeprecatedGradientPoint):
(WebCore::parseDeprecatedGradientColorStop):
(WebCore::CSSParser::parseDeprecatedGradient):
(WebCore::valueFromSideKeyword):
(WebCore::parseGradientColorOrKeyword):
(WebCore::CSSParser::parseLinearGradient):
(WebCore::CSSParser::parseRadialGradient):
(WebCore::CSSParser::parseCrossfade):
(WebCore::CSSParser::parseImageSet):
(WebCore::CSSParser::parseCustomFilter):
(WebCore::CSSParser::parseBuiltinFilterArguments):
(WebCore::CSSParser::parseFilter):
(WebCore::CSSParser::parseFlowThread):
(WebCore::CSSParser::parseRegionThread):
(WebCore::CSSParser::parseTextEmphasisStyle):
(WebCore::CSSParser::parseFontFeatureSettings):
(WebCore::CSSParser::parseFontVariantLigatures):

  • css/CSSParser.h:

(WebCore):
(CSSParser):

  • css/CSSValuePool.cpp:

(WebCore::cssValuePool):
(WebCore):

  • css/CSSValuePool.h:

(CSSValuePool):
(WebCore):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::setProperty):

  • css/StylePropertySet.h:

(StylePropertySet):

  • dom/Document.cpp:
  • dom/Document.h:

(WebCore):
(Document):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::setInlineStyleProperty):
(WebCore::StyledElement::addPropertyToAttributeStyle):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::addHTMLColorToStyle):

  • html/HTMLFontElement.cpp:

(WebCore::HTMLFontElement::collectStyleForAttribute):

  • html/HTMLHRElement.cpp:

(WebCore::HTMLHRElement::collectStyleForAttribute):

  • html/HTMLTableElement.cpp:

(WebCore::HTMLTableElement::createSharedCellStyle):

17:20 Changeset [113646] by simonjam@chromium.org
  • 34 edits
    4 copies
    1 delete in trunk/LayoutTests

[Chromium] Unreviewed, roll out rebaselines for feature that was rolled out.

  • platform/chromium-linux-x86/media/video-empty-source-expected.txt: Copied from LayoutTests/platform/chromium-win/media/video-empty-source-expected.txt.
  • platform/chromium-linux/media/video-empty-source-expected.txt: Copied from LayoutTests/platform/chromium-win/media/video-empty-source-expected.txt.
  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/media/video-empty-source-expected.txt: Copied from LayoutTests/platform/chromium-mac/media/video-empty-source-expected.txt.
  • platform/chromium-mac/fast/forms/basic-textareas-expected.txt:
  • platform/chromium-mac/fast/layers/video-layer-expected.txt:
  • platform/chromium-mac/media/audio-controls-rendering-expected.txt:
  • platform/chromium-mac/media/audio-repaint-expected.txt:
  • platform/chromium-mac/media/controls-after-reload-expected.txt:
  • platform/chromium-mac/media/controls-strict-expected.txt:
  • platform/chromium-mac/media/controls-styling-expected.txt:
  • platform/chromium-mac/media/controls-without-preload-expected.txt:
  • platform/chromium-mac/media/media-controls-clone-expected.txt:
  • platform/chromium-mac/media/media-document-audio-repaint-expected.txt:
  • platform/chromium-mac/media/video-controls-rendering-expected.txt:
  • platform/chromium-mac/media/video-display-toggle-expected.txt:
  • platform/chromium-mac/media/video-empty-source-expected.txt:
  • platform/chromium-mac/media/video-no-audio-expected.txt:
  • platform/chromium-mac/media/video-playing-and-pause-expected.txt:
  • platform/chromium-mac/media/video-volume-slider-expected.txt:
  • platform/chromium-mac/media/video-zoom-controls-expected.txt:
  • platform/chromium-win-vista/media/video-empty-source-expected.txt: Copied from LayoutTests/platform/chromium-win/media/video-empty-source-expected.txt.
  • platform/chromium-win/fast/layers/video-layer-expected.txt:
  • platform/chromium-win/media/audio-controls-rendering-expected.txt:
  • platform/chromium-win/media/audio-repaint-expected.txt:
  • platform/chromium-win/media/controls-after-reload-expected.txt:
  • platform/chromium-win/media/controls-strict-expected.txt:
  • platform/chromium-win/media/controls-styling-expected.txt:
  • platform/chromium-win/media/controls-without-preload-expected.txt:
  • platform/chromium-win/media/media-controls-clone-expected.txt:
  • platform/chromium-win/media/media-document-audio-repaint-expected.txt:
  • platform/chromium-win/media/video-controls-rendering-expected.txt:
  • platform/chromium-win/media/video-display-toggle-expected.txt:
  • platform/chromium-win/media/video-empty-source-expected.txt:
  • platform/chromium-win/media/video-no-audio-expected.txt:
  • platform/chromium-win/media/video-playing-and-pause-expected.txt:
  • platform/chromium-win/media/video-volume-slider-expected.txt:
  • platform/chromium-win/media/video-zoom-controls-expected.txt:
17:03 Changeset [113645] by leviw@chromium.org
  • 4 edits in trunk/Source/WebCore

Prepare html classes for sub-pixel LayoutUnits
https://bugs.webkit.org/show_bug.cgi?id=83491

Reviewed by Eric Seidel.

This patch brings the entire HTML folder up to the current state of the subpixellayout branch. Adding
an intValue flavor of Length that maps to the current value function was also necessary to get us
there. See https://trac.webkit.org/wiki/LayoutUnit and the descriptions below for details.

No new tests. No change in behavior.

  • html/HTMLMarqueeElement.cpp:

(WebCore::HTMLMarqueeElement::scrollAmount): Fixes a compiler error when length returns a float, as
we intend it to do when switching to sub-pixel layout.

  • html/ImageDocument.cpp:

(WebCore::ImageDocumentParser::finish): imageSize is always integral.

  • platform/Length.h:

(WebCore::Length::Length): Added a constructor that takes a FractionalLayoutUnit.
(Length):
(WebCore::Length::intValue): Currently maps directly to Length::value, but the current logic of value
will be migrated here when value is changed to return a float.
(WebCore::Length::setValue): Added a variant that takes a FractionalLayoutUnit.

17:01 Changeset [113644] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] requestAnimationFrame performance choppy & inconsistent
https://bugs.webkit.org/show_bug.cgi?id=83499

Patch by Andrew Lo <anlo@rim.com> on 2012-04-09
Reviewed by Rob Buis.

Respect m_scheduled & m_previousFrameDone flags like the Mac port of
DisplayRefreshMonitor does.
Internal PR: 147826

requestAnimationFrame already covered by tests in LayoutTests/fast/animation.

  • platform/graphics/blackberry/DisplayRefreshMonitorBlackBerry.cpp:

(WebCore::DisplayRefreshMonitor::displayLinkFired):

16:58 Changeset [113643] by macpherson@chromium.org
  • 2 edits in trunk/Source/WebCore

Make CSSValueID's into an enum instead of a collection of integers.
https://bugs.webkit.org/show_bug.cgi?id=83246

Reviewed by Simon Fraser.

This patch simply converts the list of integers into an enum.
Follow-up patches will then convert existing code that uses integers to use the new enum.

No new tests / no functionality changed.

  • css/makevalues.pl:
16:54 Changeset [113642] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed, modernize and clean up uses of ARM assembly mnemonics in inline asm blocks.

  • dfg/DFGOperations.cpp:

(JSC):

  • offlineasm/armv7.rb:
16:49 Changeset [113641] by commit-queue@webkit.org
  • 8 edits
    2 deletes in trunk

Unreviewed, rolling out r113609.
http://trac.webkit.org/changeset/113609
https://bugs.webkit.org/show_bug.cgi?id=83522

it broke tests (Requested by dethbakin on #webkit).

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

Source/WebCore:

  • css/mediaControlsChromium.css:

(audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
(audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):

  • css/mediaControlsQuickTime.css:

(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
(audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
(audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):

  • html/shadow/MediaControlElements.cpp:

(RenderMediaVolumeSliderContainer):
(WebCore):
(WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
(WebCore::RenderMediaVolumeSliderContainer::layout):
(WebCore::MediaControlVolumeSliderContainerElement::createRenderer):

  • html/shadow/MediaControlElements.h:

(MediaControlVolumeSliderContainerElement):

  • html/shadow/MediaControlRootElement.cpp:

(WebCore::MediaControlRootElement::create):

  • html/shadow/MediaControlRootElementChromium.cpp:

(WebCore::MediaControlRootElementChromium::create):

LayoutTests:

  • media/video-controls-rendering-toggle-display-none-expected.txt: Removed.
  • media/video-controls-rendering-toggle-display-none.html: Removed.
16:45 Changeset [113640] by noam.rosenthal@nokia.com
  • 12 edits in trunk/Source/WebKit2

[Qt][WK2] Sync the layer's state and the layer's children separately
https://bugs.webkit.org/show_bug.cgi?id=82534

Reviewed by Kenneth Rohde Christiansen.

Switched the WebLayerInfo struct, which includes a single layer's state,
to use only POD types that can be serialized via SimpleArgumentCoder.
To allow POD-serialization, we serialize the children IDs in a seperate
message (SetLayerChildren), and only when the tree layout has actually
been modified.

  • Shared/WebLayerTreeInfo.cpp:

(WebKit::WebLayerInfo::encode):
(WebKit::WebLayerInfo::decode):

  • Shared/WebLayerTreeInfo.h:

(WebKit::WebLayerInfo::WebLayerInfo):

  • UIProcess/LayerTreeHostProxy.cpp:

(WebKit::LayerTreeHostProxy::setCompositingLayerState):
(WebKit):
(WebKit::LayerTreeHostProxy::setCompositingLayerChildren):

  • UIProcess/LayerTreeHostProxy.h:

(LayerTreeHostProxy):

  • UIProcess/LayerTreeHostProxy.messages.in:
  • UIProcess/WebLayerTreeRenderer.cpp:

(WebKit::WebLayerTreeRenderer::setLayerChildren):
(WebKit):
(WebKit::WebLayerTreeRenderer::setLayerState):

  • UIProcess/WebLayerTreeRenderer.h:

(WebLayerTreeRenderer):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::didChangeLayerState):
(WebCore):
(WebCore::WebGraphicsLayer::didChangeChildren):
(WebCore::WebGraphicsLayer::didChangeGeometry):
(WebCore::WebGraphicsLayer::WebGraphicsLayer):
(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::removeFromParent):
(WebCore::WebGraphicsLayer::setDrawsContent):
(WebCore::WebGraphicsLayer::setContentsOpaque):
(WebCore::WebGraphicsLayer::setBackfaceVisibility):
(WebCore::WebGraphicsLayer::setOpacity):
(WebCore::WebGraphicsLayer::setContentsRect):
(WebCore::WebGraphicsLayer::setContentsToImage):
(WebCore::WebGraphicsLayer::setMaskLayer):
(WebCore::WebGraphicsLayer::setReplicatedByLayer):
(WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
(WebCore::WebGraphicsLayer::id):
(WebCore::WebGraphicsLayer::syncChildren):
(WebCore::WebGraphicsLayer::syncLayerState):
(WebCore::WebGraphicsLayer::syncImageBackingStore):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::WebGraphicsLayer::setRootLayer):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:

(WebGraphicsLayerClient):
(WebGraphicsLayer):

  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::syncLayerState):
(WebKit):
(WebKit::LayerTreeHostQt::syncLayerChildren):

  • WebProcess/WebPage/qt/LayerTreeHostQt.h:

(LayerTreeHostQt):

16:28 Changeset [113639] by dpranke@chromium.org
  • 4 edits in trunk/Tools

add a webkit-patch print-baselines command
https://bugs.webkit.org/show_bug.cgi?id=83348

Reviewed by Adam Barth.

This adds a simple 'print-baselines' command to webkit-patch
that can be used in one of two forms: to print where the
baselines for a given test (or set of tests) on a single port
will be found, or to generate a report for multiple ports.

Example of the former:

$ webkit-patch print-baselines fast/html/keygen.html
For mac-snowleopard
platform/mac/fast/html/keygen-expected.txt
platform/mac/fast/html/keygen-expected.png
$

The latter is most useful for finding out which fallback dirs are
used by which ports for which tests, for example,
'chromium-mac-leopard' uses 100 results from 'platform/mac/leopard'.
No example output is given because the reports are pretty wordy :).

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.baseline_extensions): Added.
(Port.expected_baseline_dict): Added.

  • Scripts/webkitpy/tool/commands/queries.py:

(PrintBaselines):
(PrintBaselines.init):
(PrintBaselines.execute):
(PrintBaselines._print_baselines):
(PrintBaselines._platform_for_path):

16:20 Changeset [113638] by fmalita@chromium.org
  • 2 edits in trunk/Tools

Unreviewed: adding myself to committers.py.

Patch by Florin Malita <fmalita@chromium.org> on 2012-04-09

  • Scripts/webkitpy/common/config/committers.py:
15:52 Changeset [113637] by danakj@chromium.org
  • 6 edits in trunk/Source

[chromium] Make culling work with clipped rects
https://bugs.webkit.org/show_bug.cgi?id=83494

Reviewed by Adrienne Walker.

Source/WebCore:

Use new CCMathUtil transformation methods to deal with rects that clip
the camera plane. This fixes three things:

  1. A layer completely behind the camera is not visible and should not

occlude.

  1. A layer that is clipped by the camera is treated like a

non-axis-aligned transform, as the result of a mapClippedRect() is a
bounding box and may contain pixels not in the original rect. This guards
our use of mapRect() when transforming occluded regions.

  1. A layer's occlusion must be clipped by its scissor rect. This scissor

rect exists in its target space, so occlusion in screen space is only
possible if its target also is axis aligned in the screen, such that
the layer's scissor rect remains a rect in screen space.

Unit tests: CCOcclusionTrackerTestLayerBehindCameraDoesNotOcclude

CCOcclusionTrackerTestLargePixelsOccludeInsideClipRect

  • platform/graphics/chromium/cc/CCMathUtil.cpp:

(WebCore::CCMathUtil::mapQuad):

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::transformSurfaceOpaqueRegion):
(WebCore::computeOcclusionBehindLayer):
(WebCore::::markOccludedBehindLayer):
(WebCore::testContentRectOccluded):
(WebCore::computeUnoccludedContentRect):

Source/WebKit/chromium:

  • tests/CCOcclusionTrackerTest.cpp:

(CCOcclusionTrackerTestLayerBehindCameraDoesNotOcclude):
(WebKitTests::CCOcclusionTrackerTestLayerBehindCameraDoesNotOcclude::runMyTest):
(WebKitTests):
(CCOcclusionTrackerTestLargePixelsOccludeInsideClipRect):
(WebKitTests::CCOcclusionTrackerTestLargePixelsOccludeInsideClipRect::runMyTest):

  • tests/CCQuadCullerTest.cpp:

(WebCore::TestCCOcclusionTrackerImpl::TestCCOcclusionTrackerImpl):
(WebCore::makeLayer):
(WebCore::TEST):

15:49 Changeset [113636] by commit-queue@webkit.org
  • 8 edits
    10 deletes in trunk

Remove unworkable video-buffering-repaints-controls test.
https://bugs.webkit.org/show_bug.cgi?id=83097

.:

Replaces the automated test for progress bar repaints during buffering
with a manual test entry.

Patch by Dale Curtis <dalecurtis@chromium.org> on 2012-04-09
Reviewed by Eric Carlson.

  • ManualTests/media-controls.html:

LayoutTests:

Test has been broken in one way or another for some time now. I've
approached multiple people about possible solutions, but nothing ends
up being stable.

After discussion with fischman and trying a couple more solutions
today, we decided the best course of action is to remove the test.

Patch by Dale Curtis <dalecurtis@chromium.org> on 2012-04-09
Reviewed by Eric Carlson.

  • http/tests/media/video-buffering-repaints-controls-expected.txt: Removed.
  • http/tests/media/video-buffering-repaints-controls.html: Removed.
  • platform/chromium-linux/http/tests/media/video-buffering-repaints-controls-expected.png: Removed.
  • platform/chromium-mac-leopard/http/tests/media/video-buffering-repaints-controls-expected.png: Removed.
  • platform/chromium-mac-snowleopard/http/tests/media/video-buffering-repaints-controls-expected.png: Removed.
  • platform/chromium-mac-snowleopard/http/tests/media/video-buffering-repaints-controls-expected.txt: Removed.
  • platform/chromium-mac/http/tests/media/video-buffering-repaints-controls-expected.png: Removed.
  • platform/chromium-win/http/tests/media/video-buffering-repaints-controls-expected.png: Removed.
  • platform/chromium/test_expectations.txt:
  • platform/efl/Skipped:
  • platform/gtk/Skipped:
  • platform/mac-snowleopard/http/tests/media/video-buffering-repaints-controls-expected.png: Removed.
  • platform/mac-snowleopard/http/tests/media/video-buffering-repaints-controls-expected.txt: Removed.
  • platform/mac/Skipped:
  • platform/mac/test_expectations.txt:
15:44 Changeset [113635] by commit-queue@webkit.org
  • 16 edits
    4 deletes in trunk

Unreviewed, rolling out r113613.
http://trac.webkit.org/changeset/113613
https://bugs.webkit.org/show_bug.cgi?id=83509

crashing most chromium bots (Requested by simonjam on
#webkit).

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

Source/WebCore:

  • Modules/battery/BatteryController.cpp:
  • Modules/battery/BatteryController.h:

(BatteryController):

  • Modules/battery/BatteryManager.cpp:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:

Source/WebKit/chromium:

  • WebKit.gyp:
  • features.gypi:
  • public/WebBatteryStatus.h: Removed.
  • public/WebBatteryStatusClient.h: Removed.
  • public/WebView.h:

(WebKit):
(WebView):

  • public/WebViewClient.h:

(WebKit):

  • src/BatteryClientImpl.cpp: Removed.
  • src/BatteryClientImpl.h: Removed.
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):

  • src/WebViewImpl.h:

(WebKit):
(WebViewImpl):

LayoutTests:

  • platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt:
  • platform/chromium/test_expectations.txt:
15:40 Changeset [113634] by zmo@google.com
  • 5 edits in trunk

bindAttribLocation should check webgl reserved prefix
https://bugs.webkit.org/show_bug.cgi?id=83409

Reviewed by Kenneth Russell.

Source/WebCore:

  • html/canvas/WebGLRenderingContext.cpp: Check for invalid parameters for a few functions.

(WebCore):
(WebCore::WebGLRenderingContext::bindAttribLocation):
(WebCore::WebGLRenderingContext::getAttribLocation):
(WebCore::WebGLRenderingContext::getUniformLocation):

LayoutTests:

  • fast/canvas/webgl/webgl-specific-expected.txt: Added webgl prefix test case for bindAttribLocation.
  • fast/canvas/webgl/webgl-specific.html:
15:40 Changeset [113633] by commit-queue@webkit.org
  • 4 edits in trunk

[BlackBerry] Allow simulator to use GLES2 acceleration
https://bugs.webkit.org/show_bug.cgi?id=81672

Patch by Ming Xie <mxie@rim.com> on 2012-04-09
Reviewed by Rob Buis.

.:

  • Source/cmake/OptionsBlackBerry.cmake:

Tools:

  • Scripts/webkitdirs.pm:

(blackberryCMakeArguments):

15:17 Changeset [113632] by simonjam@chromium.org
  • 1 edit
    4 adds in trunk/LayoutTests

[Chromium] Unreviewed gardening fix.

  • platform/chromium/virtual/threaded/compositing/visibility/README.txt: Added.
15:14 Changeset [113631] by timothy@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the assertion in PageScriptDebugServer::didPause.

https://webkit.org/b/82943

Reviewed by Simon Fraser.

  • bindings/js/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::PageScriptDebugServer): Initialize m_pausedPage
to zero so the assert in didPause will not randomly fire the first time.

15:06 PrefixedAPIs edited by ericu@chromium.org
(diff)
15:05 Changeset [113630] by lforschler@apple.com
  • 4 edits in tags/Safari-536.6.1/Source/WebKit2

Merged r113501.

15:00 Changeset [113629] by lforschler@apple.com
  • 2 edits in tags/Safari-536.6.1/Source/WebKit2

Merged r113523.

14:59 Changeset [113628] by noam.rosenthal@nokia.com
  • 6 edits in trunk/Source/WebKit2

[Qt][WK2] Accelerated and non-accelerated animations need to be synchronized
https://bugs.webkit.org/show_bug.cgi?id=75780

Reviewed by Kenneth Rohde Christiansen.

Remove the ui-side animation code, and return false from addAnimation so that web-side
animations kick in.

  • Shared/WebLayerTreeInfo.cpp:

(WebKit):

  • Shared/WebLayerTreeInfo.h:

(WebLayerInfo):

  • UIProcess/WebLayerTreeRenderer.cpp:

(WebKit::WebLayerTreeRenderer::paintToCurrentGLContext):
(WebKit::WebLayerTreeRenderer::setLayerState):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::didChangeGeometry):
(WebCore::WebGraphicsLayer::syncLayerState):
(WebCore::WebGraphicsLayer::computeTransformedVisibleRect):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:

(WebGraphicsLayer):

14:58 Changeset [113627] by lforschler@apple.com
  • 4 edits in tags/Safari-536.6.1/Source

Versioning.

14:58 Changeset [113626] by simonjam@chromium.org
  • 40 edits
    1 copy
    4 deletes in trunk/LayoutTests

[Chromium] Unreviewed gardening.

  • platform/chromium-linux-x86/media/video-empty-source-expected.txt: Removed.
  • platform/chromium-linux/media/media-document-audio-repaint-expected.png:
  • platform/chromium-linux/media/video-empty-source-expected.txt: Removed.
  • platform/chromium-mac-leopard/fast/forms/basic-textareas-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-expected.txt: Copied from LayoutTests/platform/chromium-mac/fast/forms/basic-textareas-expected.txt.
  • platform/chromium-mac-snowleopard/media/audio-repaint-expected.png:
  • platform/chromium-mac-snowleopard/media/video-empty-source-expected.txt: Removed.
  • platform/chromium-mac/fast/forms/basic-textareas-expected.png:
  • platform/chromium-mac/fast/forms/basic-textareas-expected.txt:
  • platform/chromium-mac/fast/layers/video-layer-expected.txt:
  • platform/chromium-mac/media/audio-controls-rendering-expected.txt:
  • platform/chromium-mac/media/audio-repaint-expected.txt:
  • platform/chromium-mac/media/controls-after-reload-expected.txt:
  • platform/chromium-mac/media/controls-strict-expected.txt:
  • platform/chromium-mac/media/controls-styling-expected.txt:
  • platform/chromium-mac/media/controls-without-preload-expected.txt:
  • platform/chromium-mac/media/media-controls-clone-expected.txt:
  • platform/chromium-mac/media/media-document-audio-repaint-expected.txt:
  • platform/chromium-mac/media/video-controls-rendering-expected.txt:
  • platform/chromium-mac/media/video-display-toggle-expected.txt:
  • platform/chromium-mac/media/video-empty-source-expected.txt:
  • platform/chromium-mac/media/video-no-audio-expected.txt:
  • platform/chromium-mac/media/video-playing-and-pause-expected.txt:
  • platform/chromium-mac/media/video-volume-slider-expected.txt:
  • platform/chromium-mac/media/video-zoom-controls-expected.txt:
  • platform/chromium-win-vista/media/video-empty-source-expected.txt: Removed.
  • platform/chromium-win/fast/layers/video-layer-expected.txt:
  • platform/chromium-win/media/audio-controls-rendering-expected.txt:
  • platform/chromium-win/media/audio-repaint-expected.txt:
  • platform/chromium-win/media/controls-after-reload-expected.txt:
  • platform/chromium-win/media/controls-strict-expected.txt:
  • platform/chromium-win/media/controls-styling-expected.txt:
  • platform/chromium-win/media/controls-without-preload-expected.txt:
  • platform/chromium-win/media/media-controls-clone-expected.txt:
  • platform/chromium-win/media/media-document-audio-repaint-expected.txt:
  • platform/chromium-win/media/video-controls-rendering-expected.txt:
  • platform/chromium-win/media/video-display-toggle-expected.txt:
  • platform/chromium-win/media/video-empty-source-expected.txt:
  • platform/chromium-win/media/video-no-audio-expected.txt:
  • platform/chromium-win/media/video-playing-and-pause-expected.txt:
  • platform/chromium-win/media/video-volume-slider-expected.txt:
  • platform/chromium-win/media/video-zoom-controls-expected.txt:
  • platform/chromium/test_expectations.txt:
14:58 Changeset [113625] by wjmaclean@chromium.org
  • 2 edits in trunk/Tools

Mark myself as a committer
https://bugs.webkit.org/show_bug.cgi?id=83510

Reviewed by Adrienne Walker.

  • Scripts/webkitpy/common/config/committers.py:
14:46 Changeset [113624] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

FrameData constructor zeroes all fields, causing ImageOrientation to be 0
https://bugs.webkit.org/show_bug.cgi?id=83416

Reviewed by Geoff Garen.

Reinstate SimpleClassVectorTraits on FrameData (which were removed by http://trac.webkit.org/changeset/113543)
with canInitializeWithMemset disabled, since two of the FrameData fields cannot be initialized to zero.

No new tests.

  • platform/graphics/BitmapImage.h:
14:40 Changeset [113623] by commit-queue@webkit.org
  • 15 edits in trunk/Source

[chromium] CCLayerTreeHost / WebLayerTreeView should be single ownership, not RefCounted
https://bugs.webkit.org/show_bug.cgi?id=83413

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

Source/Platform:

This makes WebLayerTreeView noncopyable to better match the underlying semantics. There is no code currently
that attempts to copy WebLayerTreeView instances.

  • chromium/public/WebLayerTreeView.h:

(WebKit):
(WebLayerTreeView):

Source/WebCore:

CCLayerTreeHost always has a single logical owner, typically a WebLayerTreeView via either WebViewImpl or the
public API. It is currently refcounted for historical reasons but this isn't necessary and adds confusion.
CCLayerTreeHost instances and pointers are carefully managed currently to avoid leaks. In particular, while
LayerChromium instances hold RefPtr<CCLayerTreeHost>s, whenever we want to destroy a CCLayerTreeHost we
proactively clear out these references inside setRootLayer() to break the cycle.

Refactor covered by existing unit and layout tests.

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::LayerChromium):
(WebCore::LayerChromium::setMaskLayer):
(WebCore::LayerChromium::setReplicaLayer):

  • platform/graphics/chromium/LayerChromium.h:

(WebCore::LayerChromium::layerTreeHost):
(LayerChromium):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::create):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(CCLayerTreeHost):

Source/WebKit/chromium:

Updates tests and implementation for RefPtr->OwnPtr switch. One nice benefit is that since WebLayerTreeView is
explicitly owned by the user of the API we can safely rely on them managing the lifetime of the client and thus
don't have to null check the client all the time.

  • src/WebLayerTreeView.cpp:

(WebKit::WebLayerTreeView::reset):
(WebKit::WebLayerTreeView::isNull):
(WebKit::WebLayerTreeView::initialize):

  • src/WebLayerTreeViewImpl.cpp:

(WebKit::WebLayerTreeViewImpl::create):
(WebKit::WebLayerTreeViewImpl::willBeginFrame):
(WebKit::WebLayerTreeViewImpl::updateAnimations):
(WebKit::WebLayerTreeViewImpl::layout):
(WebKit::WebLayerTreeViewImpl::applyScrollAndScale):
(WebKit::WebLayerTreeViewImpl::createContext):
(WebKit::WebLayerTreeViewImpl::didRecreateContext):
(WebKit::WebLayerTreeViewImpl::didCommit):
(WebKit::WebLayerTreeViewImpl::didCommitAndDrawFrame):
(WebKit::WebLayerTreeViewImpl::didCompleteSwapBuffers):
(WebKit::WebLayerTreeViewImpl::scheduleComposite):

  • src/WebLayerTreeViewImpl.h:

(WebLayerTreeViewImpl):

  • tests/CCLayerTreeHostTest.cpp:

(WTF::MockLayerTreeHost::create):
(CCLayerTreeHostTest):

  • tests/Canvas2DLayerChromiumTest.cpp:
  • tests/LayerChromiumTest.cpp:
  • tests/TiledLayerChromiumTest.cpp:

(WTF::TEST):

14:37 Changeset [113622] by jsbell@chromium.org
  • 8 edits
    1 delete in trunk/Source

Unreviewed, rolling out r113473.
http://trac.webkit.org/changeset/113473
https://bugs.webkit.org/show_bug.cgi?id=83074

Change does not handle cursor retention of LevelDB iterators

Source/WebCore:

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::~IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::createObjectStore):
(WebCore::IDBDatabaseBackendImpl::loadObjectStores):

  • Modules/indexeddb/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
(WebCore::IDBIndexBackendImpl::openCursorInternal):
(WebCore::IDBIndexBackendImpl::countInternal):
(WebCore::IDBIndexBackendImpl::getInternal):
(WebCore::IDBIndexBackendImpl::addingKeyAllowed):

  • Modules/indexeddb/IDBIndexBackendImpl.h:

(WebCore::IDBIndexBackendImpl::create):
(IDBIndexBackendImpl):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
(WebCore::IDBObjectStoreBackendImpl::getInternal):
(WebCore::IDBObjectStoreBackendImpl::putInternal):
(WebCore::IDBObjectStoreBackendImpl::deleteInternal):
(WebCore::IDBObjectStoreBackendImpl::clearInternal):
(WebCore):
(WebCore::IDBObjectStoreBackendImpl::createIndex):
(WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
(WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal):
(WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
(WebCore::IDBObjectStoreBackendImpl::countInternal):
(WebCore::IDBObjectStoreBackendImpl::loadIndexes):
(WebCore::IDBObjectStoreBackendImpl::genAutoIncrementKey):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.h:

(WebCore):
(WebCore::IDBObjectStoreBackendImpl::create):
(WebCore::IDBObjectStoreBackendImpl::databaseId):
(IDBObjectStoreBackendImpl):

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/IDBDatabaseBackendTest.cpp: Removed.
14:32 Changeset [113621] by leviw@chromium.org
  • 2 edits in branches/subpixellayout/Source/WebCore

Cleaning up LayoutUnit usage in DOMNodeHighlighter and removing unnecessary static_casts in ValidationMessage.

14:30 Changeset [113620] by lforschler@apple.com
  • 1 copy in tags/Safari-536.6.1

New Tag.

14:26 Changeset [113619] by commit-queue@webkit.org
  • 1 edit
    1 add
    11 deletes in trunk/LayoutTests

[CSS Regions] Convert a fast/regions pixel test to a ref test
https://bugs.webkit.org/show_bug.cgi?id=83398

Patch by David Alcala <dalcala@adobe.com> on 2012-04-09
Reviewed by Dirk Schulze.

  • fast/regions/position-writing-modes-in-variable-width-regions-expected.html: Added.
  • platform/chromium-linux/fast/regions/position-writing-modes-in-variable-width-regions-expected.png: Removed.
  • platform/chromium-mac-leopard/fast/regions/position-writing-modes-in-variable-width-regions-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/regions/position-writing-modes-in-variable-width-regions-expected.png: Removed.
  • platform/chromium-mac/fast/regions/position-writing-modes-in-variable-width-regions-expected.png: Removed.
  • platform/chromium-mac/fast/regions/position-writing-modes-in-variable-width-regions-expected.txt: Removed.
  • platform/chromium-win/fast/regions/position-writing-modes-in-variable-width-regions-expected.png: Removed.
  • platform/chromium-win/fast/regions/position-writing-modes-in-variable-width-regions-expected.txt: Removed.
  • platform/efl/fast/regions/position-writing-modes-in-variable-width-regions-expected.png: Removed.
  • platform/efl/fast/regions/position-writing-modes-in-variable-width-regions-expected.txt: Removed.
  • platform/mac/fast/regions/position-writing-modes-in-variable-width-regions-expected.png: Removed.
  • platform/mac/fast/regions/position-writing-modes-in-variable-width-regions-expected.txt: Removed.
14:24 Changeset [113618] by jamesr@google.com
  • 8 edits in trunk/Source

[chromium] Texture copies should happen after incremental updates to preserve commit atomicity
https://bugs.webkit.org/show_bug.cgi?id=83392

Reviewed by Adrienne Walker.

Source/WebCore:

This enqueues texture copy operations in the CCTextureUpdater's list instead of evaluating them immediately so
if the update is spread over multiple frames we can properly defer the texture copy until the end. Otherwise,
the texture copy for WebGL / Canvas 2D content happens before the commit completes and the compositor might pick
up a frame for the canvas that's "ahead" of the content around it.

  • platform/graphics/chromium/Canvas2DLayerChromium.cpp:

(WebCore::Canvas2DLayerChromium::updateCompositorResources):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::updateCompositorResources):

  • platform/graphics/chromium/WebGLLayerChromium.cpp:

(WebCore::WebGLLayerChromium::updateCompositorResources):

  • platform/graphics/chromium/cc/CCTextureUpdater.cpp:

(WebCore::CCTextureUpdater::appendUpdate):
(WebCore::CCTextureUpdater::appendPartialUpdate):
(WebCore):
(WebCore::CCTextureUpdater::appendCopy):
(WebCore::CCTextureUpdater::hasMoreUpdates):
(WebCore::CCTextureUpdater::update):
(WebCore::CCTextureUpdater::clear):

  • platform/graphics/chromium/cc/CCTextureUpdater.h:

(CCTextureUpdater):
(UpdateEntry):
(CopyEntry):

Source/WebKit/chromium:

  • tests/Canvas2DLayerChromiumTest.cpp:
14:07 Changeset [113617] by dpranke@chromium.org
  • 2 edits in trunk/Tools

nrwt is failing to upload test results on the chromium-mac-leopard bots
https://bugs.webkit.org/show_bug.cgi?id=83230

Unreviewed, build fix.

It looks like the change in r113399 to use the per-request
timeout variable didn't actually work, so I am removing the
timeout code altogether and counting on the idea that upload
just isn't likely to take that long and the timeouts and
retransmits are largely unused and largely unnecessary. We'll
see if this breaks anywhere else.

  • Scripts/webkitpy/common/net/file_uploader.py:

(FileUploader.init):
(FileUploader._upload_data.callback):
(FileUploader):

13:59 Changeset [113616] by rwlbuis@webkit.org
  • 2 edits in trunk/Tools

[BlackBerry] Cleanup LayoutTestControllerBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=83469

Reviewed by Dirk Schulze.

Remove WTF:: prefixes and fix a warning with the length variable.

  • DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:

(jsStringRefToWebCoreString):
(LayoutTestController::execCommand):
(LayoutTestController::isCommandEnabled):
(LayoutTestController::setUserStyleSheetLocation):
(LayoutTestController::counterValueForElementById):
(LayoutTestController::overridePreference):
(LayoutTestController::setMockGeolocationError):
(LayoutTestController::findString):

13:57 Changeset [113615] by noam.rosenthal@nokia.com
  • 4 edits in trunk/Source/WebKit2

[Qt][WK2] Don't synchronize WebGraphicsLayers to the UI process if the actual layer information wasn't changed
https://bugs.webkit.org/show_bug.cgi?id=82522

Reviewed by Kenneth Rohde Christiansen.

Currently we set the m_modified flags for all of the descendants of a layer
that has changed its geometry. This causes unnecessary layer sync messages.
Instead, we only sync when the actual layer has changed, and add a flag
called m_shouldUpdateVisibleRect that applies to descendants of a layer
that has a modified geometry.

  • Shared/WebLayerTreeInfo.h:
  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::didChangeChildren):
(WebCore):
(WebCore::WebGraphicsLayer::setShouldUpdateVisibleRect):
(WebCore::WebGraphicsLayer::didChangeGeometry):
(WebCore::WebGraphicsLayer::WebGraphicsLayer):
(WebCore::WebGraphicsLayer::setPosition):
(WebCore::WebGraphicsLayer::setAnchorPoint):
(WebCore::WebGraphicsLayer::setSize):
(WebCore::WebGraphicsLayer::setTransform):
(WebCore::WebGraphicsLayer::setChildrenTransform):
(WebCore::WebGraphicsLayer::setPreserves3D):
(WebCore::WebGraphicsLayer::setContentsToImage):
(WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
(WebCore::WebGraphicsLayer::syncImageBackingStore):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::WebGraphicsLayer::tiledBackingStorePaintBegin):
(WebCore::WebGraphicsLayer::setRootLayer):
(WebCore::WebGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::WebGraphicsLayer::setContentsScale):
(WebCore::WebGraphicsLayer::effectiveContentsScale):
(WebCore::WebGraphicsLayer::adjustContentsScale):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:

(WebGraphicsLayer):

13:50 Changeset [113614] by eae@chromium.org
  • 26 edits in branches/subpixellayout/Source/WebCore

Replace numeric_limits<LayoutUnit>::min/max with constants on branch.

13:43 Changeset [113613] by commit-queue@webkit.org
  • 16 edits
    4 adds in trunk

[chromium] Add Battery Status API support.

Source/WebCore:

Add Battery Status API support to chromium.
https://bugs.webkit.org/show_bug.cgi?id=83284

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-04-09
Reviewed by Adam Barth.

This change is covered by tests in batterystatus/.

  • Modules/battery/BatteryController.cpp:

(WebCore::BatteryController::updateBatteryStatus):
(WebCore):

  • Modules/battery/BatteryController.h:

(BatteryController):

  • Modules/battery/BatteryManager.cpp:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:

Source/WebKit/chromium:

The battery-client (BatteryClientChromium) will notify the client (WebBatteryStatusClient) when to start or stop
sending battery status updates. The client, in response will send the notifications to WebViewImpl, which sends
this update information to the WebCore::BatteryClient, and it triggers the appropriate javascript-callbacks.
The spec is at http://www.w3.org/TR/2011/WD-battery-status-20111129/.
https://bugs.webkit.org/show_bug.cgi?id=83284

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-04-09
Reviewed by Adam Barth.

  • WebKit.gyp:
  • features.gypi:
  • public/WebBatteryStatus.h: Added.

(WebKit):
(WebBatteryStatus):
(WebKit::WebBatteryStatus::WebBatteryStatus):

  • public/WebBatteryStatusClient.h: Added.

(WebKit):
(WebBatteryStatusClient):
(WebKit::WebBatteryStatusClient::~WebBatteryStatusClient):

  • public/WebView.h:

(WebKit):
(WebView):
(WebKit::WebView::updateBatteryStatus):

  • public/WebViewClient.h:

(WebKit):
(WebViewClient):
(WebKit::WebViewClient::batteryStatusClient):

  • src/BatteryClientImpl.cpp: Added.

(WebKit):
(WebKit::BatteryClientImpl::BatteryClientImpl):
(WebKit::BatteryClientImpl::updateBatteryStatus):
(WebKit::BatteryClientImpl::setController):
(WebKit::BatteryClientImpl::startUpdating):
(WebKit::BatteryClientImpl::stopUpdating):
(WebKit::BatteryClientImpl::batteryControllerDestroyed):

  • src/BatteryClientImpl.h: Added.

(WebKit):
(BatteryClientImpl):
(WebKit::BatteryClientImpl::~BatteryClientImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit):
(WebKit::WebViewImpl::updateBatteryStatus):

  • src/WebViewImpl.h:

(WebKit):
(WebViewImpl):

LayoutTests:

Add Battery Status API support to chromium.
https://bugs.webkit.org/show_bug.cgi?id=83284

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-04-09
Reviewed by Adam Barth.

  • platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt:
  • platform/chromium/test_expectations.txt:
13:31 Changeset [113612] by leviw@chromium.org
  • 2 edits in branches/subpixellayout/Source/WebCore

Adding more missing double overloads to avoid unnecessary static_casting.

13:31 Changeset [113611] by commit-queue@webkit.org
  • 9 edits
    2 adds in trunk

Unnecessary scroll bar after changing the dimensions of a DIV
https://bugs.webkit.org/show_bug.cgi?id=71541

Patch by SravanKumar Sandela <ssandela@innominds.com> on 2012-04-09
Reviewed by Julien Chaffraix.

Source/WebCore:

overflow: auto was being determined based on clientWidth and clientHeight, which during style change
scenarii will blindly exclude previous scrollbars while computing overflow. This is valid only for
overflow: scroll, but for other cases it wrongly reduces available area. Now it is taken care by
determining the overflow based on pixelSnappedPaddingBoxWidth/Height() which are newly added in RenderBox.

Tests: fast/overflow/overflow-auto-destroy-scroll-after-resizing-expected.html

fast/overflow/overflow-auto-destroy-scroll-after-resizing.html

  • rendering/RenderBox.h:

(WebCore::RenderBox::paddingBoxWidth):
(WebCore::RenderBox::paddingBoxHeight):
(WebCore::RenderBox::pixelSnappedPaddingBoxWidth):
(WebCore::RenderBox::pixelSnappedPaddingBoxHeight):
(RenderBox):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::hasHorizontalOverflow):
(WebCore::RenderLayer::hasVerticalOverflow):

LayoutTests:

Ref tests to check scrollbar behaviour in overflow: auto, on resizing.

  • fast/overflow/overflow-auto-destroy-scroll-after-resizing-expected.html: Added.
  • fast/overflow/overflow-auto-destroy-scroll-after-resizing.html: Added.

scrollbars-on-positioned-content.html and hidden-scrollbar-resize.html needs to be rebaselined
as their expected values were buggy because of redundant scrollbars.

  • platform/chromium/test_expectations.txt:
  • platform/efl/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
13:26 Changeset [113610] by noam.rosenthal@nokia.com
  • 5 edits in trunk/Source/WebKit2

[Qt][WK2] Remove all USE(TILED_BACKING_STORE) defines from code that contains UI_SIDE_COMPOSITING
https://bugs.webkit.org/show_bug.cgi?id=82533

Reviewed by Kenneth Rohde Christiansen.

No change in behavior, removing some #defines.

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::setShouldUpdateVisibleRect):
(WebCore::WebGraphicsLayer::adjustContentsScale):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:

(WebGraphicsLayer):

  • WebProcess/WebPage/LayerTreeHost.h:

(LayerTreeHost):

  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::LayerTreeHostQt):
(WebKit::LayerTreeHostQt::detachLayer):

13:10 Changeset [113609] by commit-queue@webkit.org
  • 9 edits
    2 adds in trunk

Source/WebCore: Simplified volume slider rendering.
https://bugs.webkit.org/show_bug.cgi?id=82150

Patch by Victor Carbune <vcarbune@adobe.com> on 2012-04-09
Reviewed by Eric Carlson.

Test: media/video-controls-rendering-toggle-display-none.html

  • css/mediaControlsChromium.css: Update controls css for Chromium.

(audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
(audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):

  • css/mediaControlsQuickTime.css: Update controls css for Safari.

(audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):

  • html/shadow/MediaControlElements.cpp: Removed particular renderer.

(WebCore):

  • html/shadow/MediaControlElements.h:

(MediaControlVolumeSliderContainerElement): Removed particular renderer.

  • html/shadow/MediaControlRootElement.cpp:

(WebCore::MediaControlRootElement::create): Added a div element as a container. Removed extra
unused mute button.

  • html/shadow/MediaControlRootElementChromium.cpp: Added an extra div element as a container for

the mute button and the volume slider to easily position them relative to each other.
(WebCore::MediaControlRootElementChromium::create):

LayoutTests: Simplified volume rendering.
https://bugs.webkit.org/show_bug.cgi?id=82150

Patch by Victor Carbune <vcarbune@adobe.com> on 2012-04-09
Reviewed by Eric Carlson.

  • media/video-controls-rendering-toggle-display-none-expected.txt: Added.
  • media/video-controls-rendering-toggle-display-none.html: Added.
  • platform/chromium/test_expectations.txt: Marked tests for rebaseline.
13:01 Changeset [113608] by noam.rosenthal@nokia.com
  • 3 edits in trunk/Source/WebKit2

[Qt][WK2] Disable the content-scaling and visible contents rect when the layer's transform is not affine
https://bugs.webkit.org/show_bug.cgi?id=82523

Reviewed by Kenneth Rohde Christiansen.

Always use contentsScale of 1 and a full visibleContentsRect when
the layer's transform is not affine. That's because layer's with
complex transform would not gain from the benefit of contents scaling,
and might also create unexpected layer content sizes.

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::createBackingStore):
(WebCore):
(WebCore::WebGraphicsLayer::tiledBackingStorePaint):
(WebCore::WebGraphicsLayer::tiledBackingStorePaintEnd):
(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::WebGraphicsLayer::updateTile):
(WebCore::WebGraphicsLayer::removeTile):
(WebCore::WebGraphicsLayer::updateContentBuffers):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:

(WebGraphicsLayer):

12:46 Changeset [113607] by leviw@chromium.org
  • 3 edits in trunk/Source/WebCore

Correct some LayoutUnit misuse in FilterEffectRenderer, and RenderBlock
https://bugs.webkit.org/show_bug.cgi?id=83366

Reviewed by Eric Seidel.

Some more preparation of Render classes for FractionalLayoutUnits. See below for details
of each change.

No new tests. No change in behavior.

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRendererHelper::applyFilterEffect): Pixel snapping image rect before
drawing it.

  • rendering/RenderBlock.cpp:

(WebCore::::string): Pixel snapping outputted values for debug.

12:31 Changeset [113606] by shawnsingh@chromium.org
  • 6 edits in trunk/Source

[chromium] Fix layer sorting perspective w if w becomes negative
https://bugs.webkit.org/show_bug.cgi?id=82997

Reviewed by Adrienne Walker.

Source/WebCore:

Unit test added to CCLayerSorterTest.cpp.

This is a follow-up patch after r113364. That other patch
implemented proper clipping so that perspective transforms do not
accidentally make geometry disappear. This patch fixes a similar
problem in the layer sorter code so that layers do not
accidentally get sorted incorrectly.

  • platform/graphics/chromium/cc/CCLayerSorter.cpp:

(WebCore::CCLayerSorter::LayerShape::LayerShape):

  • platform/graphics/chromium/cc/CCMathUtil.cpp:

(WebCore::computeEnclosingRect):
(WebCore::addVertexToClippedQuad):
(WebCore::CCMathUtil::mapClippedQuad):
(WebCore):
(WebCore::CCMathUtil::computeEnclosingRectOfVertices):

  • platform/graphics/chromium/cc/CCMathUtil.h:

(WebCore):
(CCMathUtil):

Source/WebKit/chromium:

  • tests/CCLayerSorterTest.cpp:

(WebCore::TEST):
(WebCore):

12:31 Changeset [113605] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk

[Qt][WK2] Fail to activate links after double tap gesture.
https://bugs.webkit.org/show_bug.cgi?id=83468

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-04-09
Reviewed by Kenneth Rohde Christiansen.

.:

  • ManualTests/link-activation-fails-after-double-tap-gesture.html: Added.

Source/WebKit2:

After a recognized double tap gesture, QtTapGestureRecognizer
gets stuck in the double-tap state. Only tapping outside of
the double tap radius cancels it.
Call reset() to set the default state back.

  • UIProcess/qt/QtTapGestureRecognizer.cpp:

(WebKit::QtTapGestureRecognizer::recognize):

ManualTests/link-activation-fails-after-double-tap-gesture.html: Added.

12:28 Changeset [113604] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

[soup] Crash while loading http://www.jusco.cn
https://bugs.webkit.org/show_bug.cgi?id=68238

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-04-09
Reviewed by Philippe Normand.

.:

  • configure.ac: Bumped the libsoup dependency to 2.37.90.

Source/WebCore:

Test: http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html

When running synchronous XMLHttpRequests, push a new inner thread default
context, so that other sources from timers and network activity do not run.
This will make synchronous requests truly synchronous with the rest of
WebCore.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCoreSynchronousLoader): Clean up the method definitions a bit by writing them inline.
(WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Push a new thread default
context to prevent other sources from running.
(WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Pop the inner thread default context.
(WebCore::closeCallback): If the client is synchronous call didFinishLoading now.
(WebCore::readCallback): Only call didFinishLoading if the client isn't synchronous.
(WebCore::ResourceHandle::defaultSession): Activate use-thread-context so that the soup session
respects the inner thread context.

LayoutTests:

  • http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html: Added.
12:17 WebKitGTK/1.8.x edited by mrobinson@webkit.org
(diff)
12:06 Changeset [113603] by leviw@chromium.org
  • 2 edits in branches/subpixellayout/Source/WebCore

Using FractionalLayoutUnit instead of LayoutUnit for overloaded functions in Length, and using static_cast's in html/ValidationMessage.cpp so the changes can be landed in trunk.

11:58 Changeset [113602] by commit-queue@webkit.org
  • 5 edits in trunk/Source

[chromium] Flip transition painting delayed with threaded animations
https://bugs.webkit.org/show_bug.cgi?id=82571

Patch by Dana Jansens <danakj@chromium.org> on 2012-04-09
Reviewed by Adrienne Walker.

Source/WebCore:

This allows for prepainting to see and paint layers that are not facing
the camera but have animating transforms. This is needed to prepaint
animations that "flip" layers around to make the front visible.

The changes are to add a backFaceIsVisible() helper function in
CCLTHCommon. This is used like before to cull non-double sided
layers, but culling is prevented on main thread when the screen
space transform is unknown due to animation. We add new
helper methods transformToScreenIsKnown() to identify this.

However the layer is not actually visible, so we set the
visibleLayerRect to be empty in this case.

The calculateVisibleLayerRect needs to use the backFaceIsVisible()
helper, so we move it into the .cpp file where it belongs, and make
it static to the file since it is not used outide of CCLTHCommon.cpp
at all.

Unit test: CCLayerTreeHostCommonTest.verifyBackFaceCulling

  • platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:

(WebCore):
(WebCore::backFaceIsVisible):
(WebCore::calculateVisibleLayerRect):
(WebCore::layerOpacityIsOpaque):
(WebCore::transformToParentIsKnown):
(WebCore::transformToScreenIsKnown):
(WebCore::layerShouldBeSkipped):
(WebCore::calculateDrawTransformsAndVisibilityInternal):
(WebCore::walkLayersAndCalculateVisibleLayerRects):

  • platform/graphics/chromium/cc/CCLayerTreeHostCommon.h:

(WebCore):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:

(WebKitTests::TEST):
(WebKitTests):

11:56 Changeset [113601] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

[GTK] Toggle buttons do not size appropriately in some themes
https://bugs.webkit.org/show_bug.cgi?id=82833

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-04-09
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Test: platform/gtk/fast/forms/large-toggle-elements.html

Instead of drawing a toggle button across the entire rectangle of
the WebCore control, draw a default-sized one cenetered in the rectangle.

  • platform/gtk/RenderThemeGtk3.cpp:

(WebCore::paintToggle): Draw default-sized toggles.

LayoutTests:

Add a test for this issue.

  • platform/gtk/fast/forms/large-toggle-elements-expected.png: Added.
  • platform/gtk/fast/forms/large-toggle-elements-expected.txt: Added.
  • platform/gtk/fast/forms/large-toggle-elements.html: Added.
11:50 PrefixedAPIs edited by kbr@google.com
Added links about postMessage prefixing and Transferables (diff)
11:49 Changeset [113600] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

When create JavaScriptNode, do not ignore NumberOfOutputChannels parameter.
https://bugs.webkit.org/show_bug.cgi?id=83250

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-04-09
Reviewed by Chris Rogers.

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::createJavaScriptNode):
(WebCore):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • Modules/webaudio/AudioContext.idl:
  • Modules/webaudio/JavaScriptAudioNode.cpp:

(WebCore::JavaScriptAudioNode::create):
(WebCore):
(WebCore::JavaScriptAudioNode::JavaScriptAudioNode):
(WebCore::JavaScriptAudioNode::initialize):
(WebCore::JavaScriptAudioNode::process):

  • Modules/webaudio/JavaScriptAudioNode.h:

(JavaScriptAudioNode):

11:34 Changeset [113599] by eae@chromium.org
  • 4 edits in branches/subpixellayout/Source/WebCore

Remove size_t versions of methods and numeric_limits from FractionalLayoutUnit on branch.

11:29 Changeset [113598] by robert@webkit.org
  • 2 edits in trunk/LayoutTests

Skip fast/css/align-positioned-object-on-resize.html on Mac platforms.
window.resizeTo() doesn't behave as expected in Mac DRT.

Unreviewed.

  • platform/mac/Skipped:
11:21 Changeset [113597] by inferno@chromium.org
  • 3 edits
    1 add in trunk

Crash due to floats not cleared before starting SVG <text> layout.
https://bugs.webkit.org/show_bug.cgi?id=83021

Reviewed by Dirk Schulze.

.:

  • ManualTests/svg-text-float-not-removed-crash.html: Added.

Source/WebCore:

Manual Test - ManualTests/svg-text-float-not-removed-crash.html.
Can't reproduce the failure in DRT.

forceLayoutInlineChildren is used in SVG <text> layout and overrides
RenderBlock::layoutBlock. However, it missed the 'clearFloats' step,
which will cause a crash when trying to access removed renderers.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::forceLayoutInlineChildren):

11:19 Changeset [113596] by jpfau@apple.com
  • 6 edits
    3 adds in trunk

Filter files from dataTransfer.getData on Mac
https://bugs.webkit.org/show_bug.cgi?id=38876

Reviewed by Enrica Casucci.

Source/WebCore:

The ClipboardMac class now keeps track of whether it was created for copy and paste, dragging and dropping
files or dragging and dropping generic data. This enables the class to block calls to set-/getData when the
clipboard is not operating on generic data, and vice-versa.

Test: fast/events/drop-with-file-paths.html

  • editing/mac/EditorMac.mm:

(WebCore::Editor::newGeneralClipboard):

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::createDraggingClipboard):

  • platform/mac/ClipboardMac.h:

(WebCore::ClipboardMac::create):
(ClipboardMac):

  • platform/mac/ClipboardMac.mm:

(WebCore::Clipboard::create):
(WebCore::ClipboardMac::ClipboardMac):
(WebCore::ClipboardMac::getData):
(WebCore::ClipboardMac::setData):
(WebCore::ClipboardMac::files):

LayoutTests:

  • fast/events/drop-with-file-paths-expected.txt: Added.
  • fast/events/drop-with-file-paths.html: Added.
  • fast/events/resources/file-for-drop-with-file-paths.html: Added.
11:13 Changeset [113595] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Unreviewed, rolling out r113561.
http://trac.webkit.org/changeset/113561
https://bugs.webkit.org/show_bug.cgi?id=83487

broke webkit_unit_tests (Requested by simonjam on #webkit).

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

Source/WebCore:

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::transformSurfaceOpaqueRegion):
(WebCore::computeOcclusionBehindLayer):
(WebCore::::markOccludedBehindLayer):
(WebCore::testContentRectOccluded):
(WebCore::computeUnoccludedContentRect):

Source/WebKit/chromium:

  • tests/CCOcclusionTrackerTest.cpp:

(WebKitTests):

  • tests/CCQuadCullerTest.cpp:

(WebCore::TestCCOcclusionTrackerImpl::TestCCOcclusionTrackerImpl):

11:09 Changeset [113594] by leviw@chromium.org
  • 2 edits in trunk/Source/WebCore

Correct LayoutUnit usage in style functions getRoundedBorderFor
https://bugs.webkit.org/show_bug.cgi?id=83154

Reviewed by Julien Chaffraix.

Correcting LayoutUnit usage in getRoundedBorderFor and the calcRadiiFor helper function.

No new tests. No change in behavior.

  • rendering/style/RenderStyle.cpp:

(WebCore::calcRadiiFor): This is a static internal function that returns the radii based on a size.
It's only called from getRoundedBorderFor, so we're now pixel snapping the size before handing it
to this function.
(WebCore::RenderStyle::getRoundedBorderFor): Takes a LayoutRect and returns the pixel-snapped
resulting RoundedRect. Using a local IntRect to avoid snapping twice.

11:03 WebKitGTK/1.8.x edited by kov@webkit.org
(diff)
11:00 Changeset [113593] by kov@webkit.org
  • 10 edits in releases/WebKitGTK/webkit-1.8

Merging 113019

10:37 Changeset [113592] by robert@webkit.org
  • 3 edits in trunk/LayoutTests

Fix layout test for r113584 on Qt and Mac

Unreviewed.

  • fast/css/align-positioned-object-on-resize.html: Use layoutTestController.display() so that window.resizeTo() is honoured on all DRTs.
  • platform/qt/Skipped: Unskip the above test.
10:36 Changeset [113591] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: zoom on vertical mousewheel in Timeline overview
https://bugs.webkit.org/show_bug.cgi?id=83379

Reviewed by Pavel Feldman.

  • added support for zooming around mouse cursor upon mousewheel event;
  • handle mousewheel event by _onMouseWheel, not scrollWindow, so we only zoom on events internal to overview.
  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineOverviewWindow):
(WebInspector.TimelineOverviewWindow.prototype._endWindowSelectorDragging):
(WebInspector.TimelineOverviewWindow.prototype._onMouseWheel):
(WebInspector.TimelineOverviewWindow.prototype._zoom):

10:26 Changeset [113590] by leviw@chromium.org
  • 3 edits in branches/subpixellayout/Source/WebCore

Fix a bug in calculating pixelSnappedClientWidth/Height (thanks Julien), and cleaning up some style errors in LayoutTypes and Length.

10:17 Changeset [113589] by bbudge@chromium.org
  • 10 edits in trunk

Cross-origin preflight request should not include credentials.
https://bugs.webkit.org/show_bug.cgi?id=37676

Source/WebCore:

Modifies createAccessControlPreflightRequest so it never allows credentials.

Reviewed by Adam Barth.

http/tests/xmlhttprequest/access-control-preflight-credential-sync.html
http/tests/xmlhttprequest/access-control-preflight-credential-async.html

  • loader/CrossOriginAccessControl.cpp:

(WebCore::createAccessControlPreflightRequest):

  • loader/CrossOriginAccessControl.h:

(WebCore):

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight):

LayoutTests:

Modifies preflight credential tests to make sure that cookies aren't sent along with the
CORS prefetch request.

Reviewed by Adam Barth.

  • http/tests/xmlhttprequest/access-control-preflight-credential-async-expected.txt:
  • http/tests/xmlhttprequest/access-control-preflight-credential-async.html:
  • http/tests/xmlhttprequest/access-control-preflight-credential-sync-expected.txt:
  • http/tests/xmlhttprequest/access-control-preflight-credential-sync.html:
  • http/tests/xmlhttprequest/resources/basic-auth/access-control-auth-basic.php:
10:01 Changeset [113588] by antti@apple.com
  • 25 edits in trunk/Source/WebCore

Don't expose internal CSSValues in API
https://bugs.webkit.org/show_bug.cgi?id=83426

Reviewed by Andreas Kling.

The CSSValues returned from functions like CSSStyleDeclaration.getPropertyCSSValue() are currently
the same instances we use internally. This creates various problems. The values can't be shared between
documents as the wrappers would be shared too. Having to maintain per-document CSSValuePools complicate
the architecture and increase memory usage. This also blocks sharing style sheet data structures
between documents.

This patch adds a concept of CSSOM-safe CSSValue. Only the safe values can be wrapped for JS access.
Values are unsafe by default. The CSSOM functions that return CSSValues create safe instances by
cloning the internal values.

The use of APIs that return CSSValues is very rare (the currect CSSOM draft deprecates them) and
cloning is cheap in any case. Future patches will eliminate the per-document value pool in favor
of a global one for a memory win.

In the future we want to replace internally used CSSValues with true internal types (StyleValues) and
use CSSValues exclusively as wrappers (similar to how CSSStyleRule wraps internal StyleRule).

  • bindings/js/JSCSSValueCustom.cpp:

(WebCore::toJS):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValueInternal):

  • css/CSSImageSetValue.cpp:

(WebCore::CSSImageSetValue::CSSImageSetValue):
(WebCore):
(WebCore::CSSImageSetValue::cloneForCSSOM):

  • css/CSSImageSetValue.h:

(CSSImageSetValue):

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::cleanup):

Opportunistically fix a string leak for CSS_COUNTER_NAME values.
Add all cases, remove default.

(WebCore::CSSPrimitiveValue::cloneForCSSOM):
(WebCore):

  • css/CSSPrimitiveValue.h:

(CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::setCSSOMSafe):

  • css/CSSValue.cpp:

(WebCore):
(TextCloneCSSValue):
(WebCore::TextCloneCSSValue::create):
(WebCore::TextCloneCSSValue::cssText):
(WebCore::TextCloneCSSValue::TextCloneCSSValue):

Most non-primitive value types are not exposed in CSSOM. For those we create a dummy value
that contains only the data that is accessible though the base CSSValue interface.

(WebCore::CSSValue::addSubresourceStyleURLs):
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::destroy):
(WebCore::CSSValue::cloneForCSSOM):

  • css/CSSValue.h:

(WebCore):
(CSSValue):
(WebCore::CSSValue::isCSSOMSafe):
(WebCore::CSSValue::isSubtypeExposedToCSSOM):
(WebCore::CSSValue::CSSValue):

  • css/CSSValueList.cpp:

(WebCore::CSSValueList::CSSValueList):
(WebCore):
(WebCore::CSSValueList::cloneForCSSOM):

  • css/CSSValueList.h:

(CSSValueList):

  • css/Counter.h:

(Counter):
(WebCore::Counter::cloneForCSSOM):

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::PropertySetCSSStyleDeclaration::setCssText):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue):
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::removeProperty):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
(WebCore::PropertySetCSSStyleDeclaration::didMutate):
(WebCore):
(WebCore::PropertySetCSSStyleDeclaration::cloneAndCacheForCSSOM):

Maintain a map of safe CSSValues so we can maintain object identity.

  • css/PropertySetCSSStyleDeclaration.h:

(WebCore::PropertySetCSSStyleDeclaration::setNeedsStyleRecalc):
(PropertySetCSSStyleDeclaration):

  • css/RGBColor.cpp:

(WebCore::RGBColor::red):
(WebCore::RGBColor::green):
(WebCore::RGBColor::blue):
(WebCore::RGBColor::alpha):

  • css/Rect.h:

(WebCore::RectBase::RectBase):
(RectBase):
(Rect):
(WebCore::Rect::cloneForCSSOM):
(WebCore::Rect::Rect):
(Quad):
(WebCore::Quad::cloneForCSSOM):
(WebCore::Quad::Quad):

  • css/WebKitCSSFilterValue.cpp:

(WebCore::WebKitCSSFilterValue::WebKitCSSFilterValue):
(WebCore):
(WebCore::WebKitCSSFilterValue::cloneForCSSOM):

  • css/WebKitCSSFilterValue.h:

(WebKitCSSFilterValue):

  • css/WebKitCSSTransformValue.cpp:

(WebCore::WebKitCSSTransformValue::WebKitCSSTransformValue):
(WebCore):
(WebCore::WebKitCSSTransformValue::cloneForCSSOM):

  • css/WebKitCSSTransformValue.h:

(WebKitCSSTransformValue):

  • svg/SVGColor.cpp:

(WebCore::SVGColor::SVGColor):
(WebCore):
(WebCore::SVGColor::cloneForCSSOM):

  • svg/SVGColor.h:

(SVGColor):

  • svg/SVGPaint.cpp:

(WebCore::SVGPaint::SVGPaint):
(WebCore):
(WebCore::SVGPaint::cloneForCSSOM):

  • svg/SVGPaint.h:

(SVGPaint):

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::getPresentationAttribute):

09:44 Changeset [113587] by pfeldman@chromium.org
  • 34 edits
    1 add
    1 delete in trunk

Web Inspector: get rid of WebInspector.Resource.category, use WebInspector.Resource.type instead.
https://bugs.webkit.org/show_bug.cgi?id=83467

Reviewed by Yury Semikhatsky.

Source/WebCore:

WebInspector.Resource.category is derived from the WebInspector.Resource.type and there is no real need it maintaining both.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/AuditLauncherView.js:

(WebInspector.AuditLauncherView.prototype._onResourceStarted):
(WebInspector.AuditLauncherView.prototype._onResourceFinished):

  • inspector/front-end/AuditRules.js:

(WebInspector.AuditRules.GzipRule.prototype._shouldCompress):
(WebInspector.AuditRules.CombineJsResourcesRule):
(WebInspector.AuditRules.CombineCssResourcesRule):
(WebInspector.AuditRules.ParallelizeDownloadRule.prototype.doRun):
(WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
(WebInspector.AuditRules.CacheControlRule.prototype.isCompressible):
(WebInspector.AuditRules.StaticCookielessRule.prototype.processCookies):

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSStyleModelResourceBinding):
(WebInspector.CSSStyleModelResourceBinding.prototype.setContent):
(WebInspector.CSSStyleModelResourceBinding.prototype._innerStyleSheetChanged):

  • inspector/front-end/ContentProviders.js:

(WebInspector.ResourceContentProvider):

  • inspector/front-end/DebuggerPresentationModel.js:

(WebInspector.DebuggerPresentationModelResourceBinding):

  • inspector/front-end/ElementsPanel.js:

(WebInspector.ElementsPanel.prototype._getPopoverAnchor):

  • inspector/front-end/ExtensionServer.js:

(WebInspector.ExtensionServer.prototype._makeResource):

  • inspector/front-end/NetworkManager.js:

(WebInspector.NetworkManager.get this):
(WebInspector.NetworkManager.get NetworkAgent):
(WebInspector.NetworkManager):
(WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
(WebInspector.NetworkDispatcher.prototype._mimeTypeIsConsistentWithType):
(WebInspector.NetworkDispatcher.prototype._updateResourceWithCachedResource):
(WebInspector.NetworkDispatcher.prototype.responseReceived):
(WebInspector.NetworkDispatcher.prototype.webSocketCreated):

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkLogView.prototype._createFilterStatusBarItems):
(WebInspector.NetworkLogView.prototype._updateSummaryBar):
(WebInspector.NetworkDataGridNode.prototype.isFilteredOut):
(WebInspector.NetworkDataGridNode.prototype.refreshResource):
(WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
(WebInspector.NetworkDataGridNode.prototype.refreshGraph):

  • inspector/front-end/Resource.js:

(WebInspector.Resource):
(WebInspector.Resource.registerDomainModelBinding):
(WebInspector.Resource.prototype.set type):
(WebInspector.Resource.prototype.isEditable):
(WebInspector.Resource.prototype.setContent):
(WebInspector.Resource.prototype.requestContent):

  • inspector/front-end/ResourceCategory.js: Removed.
  • inspector/front-end/ResourcePreviewView.js:

(WebInspector.ResourcePreviewView.prototype._createPreviewView):

  • inspector/front-end/ResourceScriptMapping.js:

(WebInspector.ResourceScriptMapping.prototype.addScript):

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
(WebInspector.ResourceTreeModel.prototype._onResourceUpdateDropped):
(WebInspector.ResourceTreeModel.prototype._addFramesRecursively):

  • inspector/front-end/ResourceType.js: Added.

(WebInspector.ResourceType):
(WebInspector.ResourceType.prototype.name):
(WebInspector.ResourceType.prototype.title):
(WebInspector.ResourceType.prototype.categoryTitle):
(WebInspector.ResourceType.prototype.color):
(WebInspector.ResourceType.prototype.isTextType):
(WebInspector.ResourceType.prototype.toString):

  • inspector/front-end/ResourceView.js:

(WebInspector.ResourceView.hasTextContent):
(WebInspector.ResourceView.nonSourceViewForResource):
(WebInspector.EditableResourceSourceFrame.prototype.canEditSource):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.FrameTreeElement.prototype.appendResource):
(WebInspector.FrameResourceTreeElement):
(WebInspector.FrameResourceTreeElement.prototype.onattach):
(WebInspector.ResourceRevisionTreeElement):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.html:

LayoutTests:

  • http/tests/inspector/network/async-xhr-json-mime-type-expected.txt:
  • http/tests/inspector/network/network-iframe-load-and-delete-expected.txt:
  • http/tests/inspector/network/network-xhr-async-expected.txt:
  • http/tests/inspector/network/network-xhr-same-url-as-main-resource.html:
  • http/tests/inspector/network/network-xhr-sync-expected.txt:
  • http/tests/inspector/resource-tree/resource-tree-invalid-mime-type-css-content.html:
  • http/tests/inspector/resource-tree/resource-tree-mimetype.html:
  • http/tests/inspector/resource-tree/resource-tree-test.js:

(initialize_ResourceTreeTest.InspectorTest.dumpResourceTreeEverything):
(initialize_ResourceTreeTest):

  • inspector/debugger/raw-source-code.html:
09:37 Changeset [113586] by alexis.menard@openbossa.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, adding a missing header for the Qt port.

  • Target.pri:
09:35 Changeset [113585] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [network panel] type column shows "undefined" instead of "(Pending)" upon load.
https://bugs.webkit.org/show_bug.cgi?id=83470

Reviewed by Yury Semikhatsky.

isPingRequest is tested for as a field, not a function return value.

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkDataGridNode.prototype._refreshTypeCell):

09:34 Changeset [113584] by robert@webkit.org
  • 4 edits
    2 adds in trunk

REGRESSION (r94492): Incorrect initial layout of absolutely positioned <input> inside centering div
https://bugs.webkit.org/show_bug.cgi?id=77754

Reviewed by David Hyatt.

Source/WebCore:

The correct static position of an center-aligned, inline, absolutely positioned object with a block child can't be known
until the width of the child has been computed. This means that setStaticPositions() in RenderBlockLineLayout is setting
the position too early, before the width of the child has been finalised. To fix, adjust the static position of the inline
positioned object once its child's width has been calculated.

Test: fast/css/align-positioned-object-on-resize.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutPositionedObjects):

LayoutTests:

  • fast/css/align-positioned-object-on-resize-expected.txt: Added.
  • fast/css/align-positioned-object-on-resize.html: Added.
  • platform/qt/Skipped: Skipped on Qt as window.resizeTo() does not work properly in Qt DRT.
09:12 Changeset [113583] by eric.carlson@apple.com
  • 3 edits
    3 adds in trunk

WebVTT parser unnecessarily limits the value of a timestamp
https://bugs.webkit.org/show_bug.cgi?id=83422

Reviewed by Dan Bernstein.

Source/WebCore:

Test: media/track/track-large-timestamp.html

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::collectTimeStamp): Make all constants double instead of int so

the maximum number of hours is increased and so we don't need any casts.

LayoutTests:

  • media/track/captions-webvtt/large-timestamp.vtt: Added.
  • media/track/track-large-timestamp-expected.txt: Added.
  • media/track/track-large-timestamp.html: Added.
09:05 Changeset [113582] by eae@chromium.org
  • 1340 edits
    267 copies
    76 deletes in branches/subpixellayout

Merge trunk changes up until 113577 into subpixel branch.

09:03 Changeset [113581] by inferno@chromium.org
  • 15 edits
    12 adds in trunk

Incorrect placement of new child to table when before child parent is not |this|.
https://bugs.webkit.org/show_bug.cgi?id=82630

Reviewed by Julien Chaffraix.

Source/WebCore:

Tests: fast/table/table-row-split2.html

fast/table/table-section-split2.html
fast/table/table-split.html
fast/table/table-split2.html

and tested by layouttests in commits r97180, r108127, and a few others.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::addChildToAnonymousColumnBlocks): function rename, block->box.
(WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks): ditto.
(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): ditto.

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::moveChildTo): move these functions from RenderBlock, needs to be
used in RenderBox::splitAnonymousBoxesAroundChild.
(WebCore):
(WebCore::RenderBox::moveChildrenTo): ditto.
(WebCore::markBoxForRelayoutAfterSplit): helper to mark a block or table part for complete relayout
after anonymous boxes are split around child.
(WebCore::RenderBox::splitAnonymousBoxesAroundChild): moved from RenderBlock to be able
to work with table parts.

  • rendering/RenderBox.h:

(RenderBox):
(WebCore::RenderBox::moveChildTo):
(WebCore::RenderBox::moveAllChildrenTo):
(WebCore::RenderBox::moveChildrenTo):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::addChild): no longer need the hack added in r95461.

  • rendering/RenderRubyBase.cpp:

(WebCore::RenderRubyBase::moveChildren): function rename, block->box.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::addChild): Use splitAnonymousBoxesAroundChild function when |beforeChild| != |this|.

  • rendering/RenderTableRow.cpp:

(WebCore::RenderTableRow::addChild): ditto.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::addChild): ditto.

LayoutTests:

  • fast/table/cell-in-row-before-misnested-text-crash-css-expected.txt: rebaseline, corrects layout.
  • fast/table/cell-in-row-before-misnested-text-crash-expected.txt: rebaseline, corrects layout.
  • fast/table/row-in-tbody-before-misnested-text-crash-css-expected.txt: rebaseline, corrects layout.
  • fast/table/row-in-tbody-before-misnested-text-crash-expected.txt: rebaseline, corrects layout.
  • fast/table/table-row-split2-expected.png: Added.
  • fast/table/table-row-split2-expected.txt: Added.
  • fast/table/table-row-split2.html: Added.
  • fast/table/table-section-split2-expected.png: Added.
  • fast/table/table-section-split2-expected.txt: Added.
  • fast/table/table-section-split2.html: Added.
  • fast/table/table-split-expected.png: Added.
  • fast/table/table-split-expected.txt: Added.
  • fast/table/table-split.html: Added.
  • fast/table/table-split2-expected.png: Added.
  • fast/table/table-split2-expected.txt: Added.
  • fast/table/table-split2.html: Added.
08:52 PrefixedAPIs edited by jsbell@chromium.org
(diff)
08:51 PrefixedAPIs edited by jsbell@chromium.org
Added IndexedDB links (diff)
08:31 Changeset [113580] by jocelyn.turcotte@nokia.com
  • 2 edits in trunk/Source/WebCore

WebSocketServer: Honour WebSocketFrame::masked in makeFrameData
https://bugs.webkit.org/show_bug.cgi?id=83042

Reviewed by Kent Tamura.

Frames from the server should not be masked.
Currently, the flag is set to false, but the frames were masked anyway.
This causes clients with recent builds of WebKit to abort the connection to the
inspector server, refusing masked frames from the server as per the spec.
This doesn't change the behavior of WebSocket clients, which set the masked flag to true.

  • Modules/websockets/WebSocketFrame.cpp:

(WebCore::appendFramePayload):
(WebCore::WebSocketFrame::makeFrameData):

08:29 Changeset [113579] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

Layout Test in svg are failing
https://bugs.webkit.org/show_bug.cgi?id=82232

Unreviewed Chromium expectations update.

All the tests covered by this bug ran without crashes over a five day
period. Given the previous crash rates, this suggests we've fixed the
problem.

  • platform/chromium/test_expectations.txt:
07:59 Changeset [113578] by eae@chromium.org
  • 2 edits in branches/subpixellayout/Source/WebCore/rendering

Revert abs changes from 113447 on branch as it broke linux builds.

06:43 Changeset [113577] by alexis.menard@openbossa.org
  • 10 edits in trunk/Source/WebCore

[Part 5] We should use CSSPropertyID rather than integers when manipulating CSS property ids.
https://bugs.webkit.org/show_bug.cgi?id=83466

Reviewed by Kentaro Hara.

CSSPropertyID enum holds all the CSS property ids but many parts of WebKit treat the ids
as integers, this patch should adress the last remaining occurences of ints rather than CSSPropertyIDs.

No new tests : There should be no behavior change in this patch.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::collectMatchingRulesForList):

  • css/CSSStyleSelector.h:

(CSSStyleSelector):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::removePropertiesInSet):

  • page/animation/AnimationBase.cpp:

(WebCore::gatherEnclosingShorthandProperties):
(WebCore::AnimationBase::animatableShorthandsAffectingProperty):

  • page/animation/AnimationBase.h:

(AnimationBase):

  • page/animation/CompositeAnimation.cpp:

(WebCore::CompositeAnimation::pauseTransitionAtTime):

  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::animate):
(WebCore::KeyframeAnimation::getAnimatedStyle):
(WebCore::KeyframeAnimation::overrideAnimations):
(WebCore::KeyframeAnimation::resumeOverriddenAnimations):
(WebCore::KeyframeAnimation::timeToNextService):

  • rendering/style/KeyframeList.cpp:

(WebCore::KeyframeList::insert):

  • rendering/style/KeyframeList.h:

(WebCore::KeyframeValue::addProperty):
(WebCore::KeyframeValue::containsProperty):
(WebCore::KeyframeValue::properties):
(KeyframeValue):
(WebCore::KeyframeList::addProperty):
(WebCore::KeyframeList::containsProperty):
(WebCore::KeyframeList::beginProperties):
(WebCore::KeyframeList::endProperties):
(KeyframeList):

06:34 Changeset [113576] by haraken@chromium.org
  • 11 edits in trunk/Source/WebCore

Unreviewed, rebaselined run-bindings-tests results.

  • bindings/scripts/test/JS/JSFloat64Array.cpp:

(WebCore::JSFloat64ArrayConstructor::getOwnPropertySlot):
(WebCore::JSFloat64ArrayConstructor::getOwnPropertyDescriptor):
(WebCore::jsFloat64ArrayConstructor):
(WebCore::JSFloat64Array::getConstructor):
(WebCore::jsFloat64ArrayPrototypeFunctionFoo):
(WebCore::toFloat64Array):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::JSTestActiveDOMObjectConstructor::getOwnPropertySlot):
(WebCore::JSTestActiveDOMObjectConstructor::getOwnPropertyDescriptor):
(WebCore::jsTestActiveDOMObjectExcitingAttr):
(WebCore::jsTestActiveDOMObjectConstructor):
(WebCore::JSTestActiveDOMObject::getConstructor):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
(WebCore::JSTestActiveDOMObjectOwner::isReachableFromOpaqueRoots):
(WebCore::JSTestActiveDOMObjectOwner::finalize):
(WebCore::toTestActiveDOMObject):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:

(WebCore::JSTestCustomNamedGetterConstructor::getOwnPropertySlot):
(WebCore::JSTestCustomNamedGetterConstructor::getOwnPropertyDescriptor):
(WebCore::jsTestCustomNamedGetterConstructor):
(WebCore::JSTestCustomNamedGetter::getConstructor):
(WebCore::jsTestCustomNamedGetterPrototypeFunctionAnotherFunction):
(WebCore::JSTestCustomNamedGetterOwner::isReachableFromOpaqueRoots):
(WebCore::JSTestCustomNamedGetterOwner::finalize):
(WebCore::toTestCustomNamedGetter):

  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:

(WebCore::JSTestEventConstructorConstructor::getOwnPropertySlot):
(WebCore::JSTestEventConstructorConstructor::getOwnPropertyDescriptor):
(WebCore::JSTestEventConstructorConstructor::constructJSTestEventConstructor):
(WebCore::jsTestEventConstructorAttr1):
(WebCore::jsTestEventConstructorAttr2):
(WebCore::jsTestEventConstructorConstructor):
(WebCore::JSTestEventConstructor::getConstructor):
(WebCore::JSTestEventConstructorOwner::isReachableFromOpaqueRoots):
(WebCore::JSTestEventConstructorOwner::finalize):
(WebCore::toTestEventConstructor):

  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::JSTestEventTargetConstructor::getOwnPropertySlot):
(WebCore::JSTestEventTargetConstructor::getOwnPropertyDescriptor):
(WebCore::jsTestEventTargetConstructor):
(WebCore::JSTestEventTarget::getConstructor):
(WebCore::jsTestEventTargetPrototypeFunctionItem):
(WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
(WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
(WebCore::jsTestEventTargetPrototypeFunctionDispatchEvent):
(WebCore::JSTestEventTarget::indexGetter):
(WebCore::JSTestEventTargetOwner::isReachableFromOpaqueRoots):
(WebCore::JSTestEventTargetOwner::finalize):
(WebCore::toTestEventTarget):

  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterfaceConstructor::getOwnPropertySlot):
(WebCore::JSTestInterfaceConstructor::getOwnPropertyDescriptor):
(WebCore::JSTestInterfaceConstructor::constructJSTestInterface):
(WebCore::jsTestInterfaceSupplementalStr1):
(WebCore::jsTestInterfaceSupplementalStr2):
(WebCore::jsTestInterfaceSupplementalStr3):
(WebCore::jsTestInterfaceSupplementalNode):
(WebCore::jsTestInterfaceConstructor):
(WebCore::setJSTestInterfaceSupplementalStr2):
(WebCore::setJSTestInterfaceSupplementalStr3):
(WebCore::setJSTestInterfaceSupplementalNode):
(WebCore::JSTestInterface::getConstructor):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod1):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod3):
(WebCore::JSTestInterfaceOwner::isReachableFromOpaqueRoots):
(WebCore::JSTestInterfaceOwner::finalize):
(WebCore::toTestInterface):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertySlot):
(WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertyDescriptor):
(WebCore::jsTestMediaQueryListListenerConstructor):
(WebCore::JSTestMediaQueryListListener::getConstructor):
(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
(WebCore::JSTestMediaQueryListListenerOwner::isReachableFromOpaqueRoots):
(WebCore::JSTestMediaQueryListListenerOwner::finalize):
(WebCore::toTestMediaQueryListListener):

  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:

(WebCore::JSTestNamedConstructorConstructor::getOwnPropertySlot):
(WebCore::JSTestNamedConstructorConstructor::getOwnPropertyDescriptor):
(WebCore::JSTestNamedConstructorNamedConstructor::constructJSTestNamedConstructor):
(WebCore::jsTestNamedConstructorConstructor):
(WebCore::JSTestNamedConstructor::getConstructor):
(WebCore::JSTestNamedConstructorOwner::isReachableFromOpaqueRoots):
(WebCore::JSTestNamedConstructorOwner::finalize):
(WebCore::toTestNamedConstructor):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjConstructor::getOwnPropertySlot):
(WebCore::JSTestObjConstructor::getOwnPropertyDescriptor):
(WebCore::JSTestObjConstructor::constructJSTestObj):
(WebCore::jsTestObjReadOnlyIntAttr):
(WebCore::jsTestObjReadOnlyStringAttr):
(WebCore::jsTestObjReadOnlyTestObjAttr):
(WebCore::jsTestObjShortAttr):
(WebCore::jsTestObjUnsignedShortAttr):
(WebCore::jsTestObjIntAttr):
(WebCore::jsTestObjLongLongAttr):
(WebCore::jsTestObjUnsignedLongLongAttr):
(WebCore::jsTestObjStringAttr):
(WebCore::jsTestObjTestObjAttr):
(WebCore::jsTestObjSequenceAttr):
(WebCore::jsTestObjXMLObjAttr):
(WebCore::jsTestObjCreate):
(WebCore::jsTestObjReflectedStringAttr):
(WebCore::jsTestObjReflectedIntegralAttr):
(WebCore::jsTestObjReflectedUnsignedIntegralAttr):
(WebCore::jsTestObjReflectedBooleanAttr):
(WebCore::jsTestObjReflectedURLAttr):
(WebCore::jsTestObjReflectedCustomIntegralAttr):
(WebCore::jsTestObjReflectedCustomBooleanAttr):
(WebCore::jsTestObjReflectedCustomURLAttr):
(WebCore::jsTestObjAttrWithGetterException):
(WebCore::jsTestObjAttrWithSetterException):
(WebCore::jsTestObjStringAttrWithGetterException):
(WebCore::jsTestObjStringAttrWithSetterException):
(WebCore::jsTestObjCustomAttr):
(WebCore::jsTestObjWithScriptStateAttribute):
(WebCore::jsTestObjWithScriptExecutionContextAttribute):
(WebCore::jsTestObjWithScriptStateAttributeRaises):
(WebCore::jsTestObjWithScriptExecutionContextAttributeRaises):
(WebCore::jsTestObjWithScriptExecutionContextAndScriptStateAttribute):
(WebCore::jsTestObjWithScriptExecutionContextAndScriptStateAttributeRaises):
(WebCore::jsTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute):
(WebCore::jsTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::jsTestObjConditionalAttr1):
(WebCore::jsTestObjConditionalAttr2):
(WebCore::jsTestObjConditionalAttr3):
(WebCore::jsTestObjConditionalAttr4Constructor):
(WebCore::jsTestObjConditionalAttr5Constructor):
(WebCore::jsTestObjConditionalAttr6Constructor):
(WebCore::jsTestObjCachedAttribute1):
(WebCore::jsTestObjCachedAttribute2):
(WebCore::jsTestObjContentDocument):
(WebCore::jsTestObjMutablePoint):
(WebCore::jsTestObjImmutablePoint):
(WebCore::jsTestObjStrawberry):
(WebCore::jsTestObjStrictFloat):
(WebCore::jsTestObjDescription):
(WebCore::jsTestObjId):
(WebCore::jsTestObjHash):
(WebCore::jsTestObjConstructor):
(WebCore::setJSTestObjShortAttr):
(WebCore::setJSTestObjUnsignedShortAttr):
(WebCore::setJSTestObjIntAttr):
(WebCore::setJSTestObjLongLongAttr):
(WebCore::setJSTestObjUnsignedLongLongAttr):
(WebCore::setJSTestObjStringAttr):
(WebCore::setJSTestObjTestObjAttr):
(WebCore::setJSTestObjSequenceAttr):
(WebCore::setJSTestObjXMLObjAttr):
(WebCore::setJSTestObjCreate):
(WebCore::setJSTestObjReflectedStringAttr):
(WebCore::setJSTestObjReflectedIntegralAttr):
(WebCore::setJSTestObjReflectedUnsignedIntegralAttr):
(WebCore::setJSTestObjReflectedBooleanAttr):
(WebCore::setJSTestObjReflectedURLAttr):
(WebCore::setJSTestObjReflectedCustomIntegralAttr):
(WebCore::setJSTestObjReflectedCustomBooleanAttr):
(WebCore::setJSTestObjReflectedCustomURLAttr):
(WebCore::setJSTestObjAttrWithGetterException):
(WebCore::setJSTestObjAttrWithSetterException):
(WebCore::setJSTestObjStringAttrWithGetterException):
(WebCore::setJSTestObjStringAttrWithSetterException):
(WebCore::setJSTestObjCustomAttr):
(WebCore::setJSTestObjWithScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAttribute):
(WebCore::setJSTestObjWithScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute):
(WebCore::setJSTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::setJSTestObjConditionalAttr1):
(WebCore::setJSTestObjConditionalAttr2):
(WebCore::setJSTestObjConditionalAttr3):
(WebCore::setJSTestObjConditionalAttr4Constructor):
(WebCore::setJSTestObjConditionalAttr5Constructor):
(WebCore::setJSTestObjConditionalAttr6Constructor):
(WebCore::setJSTestObjMutablePoint):
(WebCore::setJSTestObjImmutablePoint):
(WebCore::setJSTestObjStrawberry):
(WebCore::setJSTestObjStrictFloat):
(WebCore::setJSTestObjId):
(WebCore::JSTestObj::getConstructor):
(WebCore::jsTestObjPrototypeFunctionVoidMethod):
(WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionIntMethod):
(WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionObjMethod):
(WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestObjPrototypeFunctionMethodReturningSequence):
(WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
(WebCore::jsTestObjPrototypeFunctionSerializedValue):
(WebCore::jsTestObjPrototypeFunctionIdbKey):
(WebCore::jsTestObjPrototypeFunctionOptionsObject):
(WebCore::jsTestObjPrototypeFunctionMethodWithException):
(WebCore::jsTestObjPrototypeFunctionCustomMethod):
(WebCore::jsTestObjPrototypeFunctionCustomMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionAddEventListener):
(WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateVoid):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateObj):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateVoidException):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptState):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateWithSpaces):
(WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalString):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsUndefined):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsNullString):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod1):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod2):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod3):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongArray):
(WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
(WebCore::jsTestObjPrototypeFunctionConvert1):
(WebCore::jsTestObjPrototypeFunctionConvert2):
(WebCore::jsTestObjPrototypeFunctionConvert3):
(WebCore::jsTestObjPrototypeFunctionConvert4):
(WebCore::jsTestObjPrototypeFunctionConvert5):
(WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionImmutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionOrange):
(WebCore::jsTestObjPrototypeFunctionStrictFunction):
(WebCore::JSTestObjOwner::isReachableFromOpaqueRoots):
(WebCore::JSTestObjOwner::finalize):
(WebCore::toTestObj):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlot):
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertyDescriptor):
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::constructJSTestSerializedScriptValueInterface):
(WebCore::jsTestSerializedScriptValueInterfaceValue):
(WebCore::jsTestSerializedScriptValueInterfaceReadonlyValue):
(WebCore::jsTestSerializedScriptValueInterfaceCachedValue):
(WebCore::jsTestSerializedScriptValueInterfaceCachedReadonlyValue):
(WebCore::jsTestSerializedScriptValueInterfaceConstructor):
(WebCore::setJSTestSerializedScriptValueInterfaceValue):
(WebCore::setJSTestSerializedScriptValueInterfaceCachedValue):
(WebCore::JSTestSerializedScriptValueInterface::getConstructor):
(WebCore::jsTestSerializedScriptValueInterfacePrototypeFunctionAcceptTransferList):
(WebCore::jsTestSerializedScriptValueInterfacePrototypeFunctionMultiTransferList):
(WebCore::JSTestSerializedScriptValueInterfaceOwner::isReachableFromOpaqueRoots):
(WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):
(WebCore::toTestSerializedScriptValueInterface):

06:24 Changeset [113575] by charles.wei@torchmobile.com.cn
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Upstream BlackBerry change to WebCore::TouchEvent
https://bugs.webkit.org/show_bug.cgi?id=83454

Reviewed by Rob Buis.

BlackBerry-port enhances the TouchEvent by adding member variables
to indicate if the event is double-tap or touch-hold.

  • dom/TouchEvent.cpp:

(WebCore::TouchEvent::TouchEvent):
(WebCore::TouchEvent::initTouchEvent):

  • dom/TouchEvent.h:

(TouchEvent):
(WebCore::TouchEvent::setDoubleTap):
(WebCore::TouchEvent::isDoubleTap):
(WebCore::TouchEvent::setTouchHold):
(WebCore::TouchEvent::isTouchHold):

06:20 PrefixedAPIs edited by chutten@rim.com
CSS Properties added sourced from CSSProperty::isInheritedProperty (diff)
05:35 Changeset [113574] by paroga@webkit.org
  • 4 edits in trunk

[CMake] Build fix for USE_SYSTEM_MALLOC after r113570.

.:

  • Source/cmakeconfig.h.cmake:

Source/WTF:

  • wtf/CMakeLists.txt:
04:42 Changeset [113573] by commit-queue@webkit.org
  • 10 edits
    3 deletes in trunk

Remove partially implemented per-Element visibility checks from requestAnimationFrame logic
https://bugs.webkit.org/show_bug.cgi?id=74232

Patch by James Robinson <jamesr@chromium.org> on 2012-04-09
Reviewed by Dean Jackson.

Source/WebCore:

The initial requestAnimationFrame implementation had an Element parameter as the second argument to the
function. This element was intended to convey the element associated with the animation so that when the element
was not visible the animation callback would not be run. The checked in implementation does a very limited check

  • testing for display:none and being detached from the tree - but does it in a way that does not work correctly

if an element's visibility is manipulated by a callback running from a different document. It also adds
significant complexity to the code, making it less hackable and easy to introduce subtle security bugs or
infinite loops.

This patch removes the parameter. Since it has always been marked optional, there is no web compat risk.

If this functionality is added back in the future it needs to be implemented in a way that considers all
callbacks within a Page and not only those within a single Document.

  • dom/Document.cpp:

(WebCore::Document::webkitRequestAnimationFrame):

  • dom/Document.h:
  • dom/RequestAnimationFrameCallback.h:
  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::registerCallback):
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):

  • dom/ScriptedAnimationController.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::webkitRequestAnimationFrame):

  • page/DOMWindow.h:
  • page/DOMWindow.idl:

LayoutTests:

Remove tests for removed functionality.

  • fast/animation/request-animation-frame-display-expected.txt: Removed.
  • fast/animation/request-animation-frame-display.html: Removed.
  • fast/animation/script-tests/request-animation-frame-display.js: Removed.
03:58 Changeset [113572] by paroga@webkit.org
  • 2 edits in trunk/Tools

Build fix for WinCE after r113570.

  • Scripts/build-webkit: Do not use FastMalloc for WinCE.
03:49 Changeset [113571] by paroga@webkit.org
  • 8 edits in trunk/Source

Remove HAVE_STDINT_H
https://bugs.webkit.org/show_bug.cgi?id=83434

Reviewed by Kentaro Hara.

HAVE_STDINT_H is defined with 1 all the time and we us stdint.h without HAVE(STDINT_H) already.

Source/JavaScriptCore:

  • config.h:

Source/WTF:

  • config.h:
  • wtf/FastMalloc.cpp:
  • wtf/TCPageMap.h:
  • wtf/TCSpinLock.h:
  • wtf/TCSystemAlloc.cpp:
03:45 Changeset [113570] by paroga@webkit.org
  • 7 edits in trunk

[CMake] Share build system options across ports
https://bugs.webkit.org/show_bug.cgi?id=72815

Reviewed by Daniel Bates.

Don't define the generic features for every port again.
Add a few macros for reusing the central defined options.

  • CMakeLists.txt:
  • Source/cmake/OptionsBlackBerry.cmake:
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsWinCE.cmake:
  • Source/cmake/WebKitFeatures.cmake:
03:33 Changeset [113569] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Blackberry] m_isRequestedByPlugin should be copied in ResourceRequest
https://bugs.webkit.org/show_bug.cgi?id=83447

Patch by Chris Guan <chris.guan@torchmobile.com.cn> on 2012-04-09
Reviewed by George Staikos.

It is an obvious error, We should copy m_isRequestedByPlugin in ResourceReuest.

No new tests, because those existing plugin test cases are enough.

  • platform/network/blackberry/ResourceRequestBlackBerry.cpp:

(WebCore::ResourceRequest::doPlatformCopyData):
(WebCore::ResourceRequest::doPlatformAdopt):

03:19 Changeset [113568] by eric.carlson@apple.com
  • 2 edits in trunk/Tools

Subscribe eric.carlson@apple.com to Media-related changes
https://bugs.webkit.org/show_bug.cgi?id=83421

Reviewed by Dan Bernstein.

  • Scripts/webkitpy/common/config/watchlist:
03:02 Changeset [113567] by fischman@chromium.org
  • 2 edits in trunk/LayoutTests

Layout Test http/tests/media/media-document.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=83391

[Chromium] Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
02:50 Changeset [113566] by fischman@chromium.org
  • 2 edits in trunk/LayoutTests

several http tests are flaky and crashing on win, debug
https://bugs.webkit.org/show_bug.cgi?id=82505

Remove the expectations of a crash now that the fix (http://crrev.com/131170)
has rolled into webkit in http://trac.webkit.org/changeset/113512

Reviewed by Tony Chang.

  • platform/chromium/test_expectations.txt:
02:48 Changeset [113565] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

check-webkit-style should ignore NULL usage in gtk_style_context_get_style
https://bugs.webkit.org/show_bug.cgi?id=83412

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-04-09
Reviewed by David Levin.

Accept NULL as an argument for gtk_style_context_get_style, because it's
used as a sentinel in a variable argument list.

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_for_null): Add an exception.

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(WebKitStyleTest.test_null_false_zero): Add a test for the exception.

02:42 Changeset [113564] by pfeldman@chromium.org
  • 3 edits in trunk/Source/WebCore

Not reviewed: fixing inspector front-end compilation that has been broken by the
recent SaveAs and DOMStorage changes.

  • inspector/front-end/DOMStorage.js:
  • inspector/front-end/externs.js:

(WebInspector.isURLSaved):

02:39 Changeset [113563] by pfeldman@chromium.org
  • 15 edits
    2 deletes in trunk

Web Inspector: remove ComboBoxFileSelector and SingleFileEditorContainer.
https://bugs.webkit.org/show_bug.cgi?id=83460

Reviewed by Yury Semikhatsky.

Source/WebCore:

We are now using scripts navigator and tabbed editor container, removing the old components.
This change removes the corresponding classes and the abstractions used during the
transition period.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.ScriptsNavigator.prototype._scriptSelected):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.get this):
(WebInspector.ScriptsPanel.prototype.get defaultFocusedElement):
(WebInspector.ScriptsPanel.prototype._addUISourceCode):
(WebInspector.ScriptsPanel.prototype.setScriptSourceIsDirty):
(WebInspector.ScriptsPanel.prototype._reset):
(WebInspector.ScriptsPanel.prototype._showFile):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
(WebInspector.ScriptsPanel.prototype._editorClosed):
(WebInspector.ScriptsPanel.prototype._scriptSelected):
(WebInspector.ScriptsPanel.prototype._hidePinnedNavigator):
(WebInspector.ScriptsPanel.prototype.set _pinNavigator):

  • inspector/front-end/SettingsScreen.js:

(WebInspector.SettingsScreen):

  • inspector/front-end/TabbedEditorContainer.js:

(WebInspector.TabbedEditorContainerDelegate):
(WebInspector.TabbedEditorContainerDelegate.prototype.viewForFile):
(get WebInspector):
(WebInspector.TabbedEditorContainer.prototype._tabClosed):

  • inspector/front-end/scriptsPanel.css:

LayoutTests:

  • inspector/debugger/scripts-combobox-file-selector-history-expected.txt: Removed.
  • inspector/debugger/scripts-combobox-file-selector-history.html: Removed.
  • inspector/debugger/scripts-file-selector-expected.txt:
  • inspector/debugger/scripts-file-selector.html:
  • inspector/debugger/scripts-panel-expected.txt:
  • inspector/debugger/scripts-panel.html:
  • inspector/debugger/scripts-sorting-expected.txt:
  • inspector/debugger/scripts-sorting.html:
  • inspector/debugger/source-frame-count.html:
02:22 Changeset [113562] by dpranke@chromium.org
  • 2 edits in trunk/Tools

webkitpy: use the filesystem object properly in fileuploader
https://bugs.webkit.org/show_bug.cgi?id=83326

Reviewed by Adam Barth.

We should be using the filesystem object rather than the codecs
object.

  • Scripts/webkitpy/common/net/file_uploader.py:

(FileUploader.upload_as_multipart_form_data):

02:05 Changeset [113561] by commit-queue@webkit.org
  • 5 edits in trunk/Source

[chromium] Make culling work with clipped rects
https://bugs.webkit.org/show_bug.cgi?id=83217

Patch by Dana Jansens <danakj@chromium.org> on 2012-04-09
Reviewed by Adrienne Walker.

Source/WebCore:

Use new CCMathUtil transformation methods to deal with rects that clip
the camera plane. This fixes three things:

  1. A layer completely behind the camera is not visible and should not

occlude.

  1. A layer that is clipped by the camera is treated like a

non-axis-aligned transform, as the result of a mapClippedRect() is a
bounding box and may contain pixels not in the original rect. This guards
our use of mapRect() when transforming occluded regions.

  1. A layer's occlusion must be clipped by its scissor rect. This scissor

rect exists in its target space, so occlusion in screen space is only
possible if its target also is axis aligned in the screen, such that
the layer's scissor rect remains a rect in screen space.

Unit tests: CCOcclusionTrackerTestLayerBehindCameraDoesNotOcclude

CCOcclusionTrackerTestLargePixelsOccludeInsideClipRect

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::transformSurfaceOpaqueRegion):
(WebCore::computeOcclusionBehindLayer):
(WebCore::::markOccludedBehindLayer):
(WebCore::testContentRectOccluded):
(WebCore::computeUnoccludedContentRect):

Source/WebKit/chromium:

  • tests/CCOcclusionTrackerTest.cpp:

(CCOcclusionTrackerTestLayerBehindCameraDoesNotOcclude):
(WebKitTests::CCOcclusionTrackerTestLayerBehindCameraDoesNotOcclude::runMyTest):
(WebKitTests):
(CCOcclusionTrackerTestLargePixelsOccludeInsideClipRect):
(WebKitTests::CCOcclusionTrackerTestLargePixelsOccludeInsideClipRect::runMyTest):

  • tests/CCQuadCullerTest.cpp:

(WebCore::TestCCOcclusionTrackerImpl::TestCCOcclusionTrackerImpl):

01:49 Changeset [113560] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Gtk] Web Inspector noinst_DATA images are copied into innacurately named directory
https://bugs.webkit.org/show_bug.cgi?id=83423

Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-04-09
Reviewed by Martin Robinson.

Copy Web Inspector images that are a part of the data not meant
for installation into a directory named 'Images' rather than
a lower-case version of that. This is required as until now,
when using these inspector resources (for example during layout
tests or manually pointing WEBKIT_INSPECTOR_PATH env to that
location), the images were not displayed as they were not loadable.

No new tests - no new functionality.

  • GNUmakefile.am:
00:55 Changeset [113559] by eric@webkit.org
  • 3 edits in trunk/Tools

Enable webkit_unit_tests for commit queue and EWS while tracking failures
https://bugs.webkit.org/show_bug.cgi?id=83329

Unreviewed. Add a missing import to unbreak all the Chromium EWS/CQ bots. :)

line 62, in _create_unit_test_results

return UnitTestResults.results_from_string(results_xml)
NameError: global name 'UnitTestResults' is not defined

  • Scripts/webkitpy/tool/bot/layouttestresultsreader.py:
  • Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:

(LayoutTestResultsReaderTest.test_create_unit_test_results):

00:50 Changeset [113558] by pfeldman@chromium.org
  • 7 edits in trunk

Web Inspector: move breakpoints active state from scripts panel to debugger presentation model.
https://bugs.webkit.org/show_bug.cgi?id=83374

Reviewed by Yury Semikhatsky.

Source/WebCore:

Just moves the state and adds event to propagate it. This is needed to abstract
JavaScriptSourceFrame from the ScriptsPanel.

  • inspector/front-end/DebuggerPresentationModel.js:

(WebInspector.DebuggerPresentationModel):
(WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
(WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
(WebInspector.DebuggerPresentationModel.prototype.setBreakpointsActive):
(WebInspector.DebuggerPresentationModel.prototype.breakpointsActive):

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype._setBreakpoint):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._toggleBreakpointsClicked):
(WebInspector.ScriptsPanel.prototype._breakpointsActiveStateChanged):
(WebInspector.ScriptsPanel.prototype._createDebugToolbar):

LayoutTests:

  • http/tests/inspector/debugger-test.js:
  • inspector/debugger/debugger-breakpoints-not-activated-on-reload.html:
00:48 Changeset [113557] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

DFG should not load the property storage if it is inline.
https://bugs.webkit.org/show_bug.cgi?id=83455

Reviewed by Gavin Barraclough.

We had previously decided to have all property storage accesses go through
the property storage pointer even if they don't "really" have to, because
we were thinking this would help GC barriers somehow. Well, we never ended
up doing anything with that. Hence, doing these wasted loads of the
property storage pointer when the storage is inline is just a waste of CPU
cycles.

This change makes the DFG's inline property accesses (GetByOffset and
PutByOffset) go directly to the inline property storage if the structure(s)
tell us that it's OK.

This looks like an across-the-board 1% win.

  • bytecode/StructureSet.h:

(JSC):
(JSC::StructureSet::allAreUsingInlinePropertyStorage):
(StructureSet):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::fillStorage):

04/08/12:

22:25 Changeset [113556] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

[mac] REGRESSION (r113467): Some canvas tests are failing in WebKit1 when run after compositing/tiled-layers-hidpi.html
https://bugs.webkit.org/show_bug.cgi?id=83453

Reviewed by Sam Weinig.

  • WebView/WebView.mm:

(-[WebView _setCustomBackingScaleFactor:]): When the scale factor parameter was 0, meaning
no custom scale factor, this method was setting the Page scale factor to 0, and that value
was used by canvas. Changed it to correctly set the Page scale factor back to the device
scale factor.

21:59 Changeset [113555] by commit-queue@webkit.org
  • 4 edits in trunk

<content> in <meter> is not rendered correctly.
https://bugs.webkit.org/show_bug.cgi?id=81311

This code changes a code location where MeterValueElement's value
attribute is initialized. In the old code, HTMLMeterElement's attach
did. It is better to initialize the attribute just after creating
meter's shadow subtree.

Patch by Takashi Sakamoto <tasak@google.com> on 2012-04-08
Reviewed by Hajime Morita.

No new tests, because an existing test,
content-element-in-meter-element.html covers.
However test_expectations.txt is changed. Now the test passes.

  • html/HTMLMeterElement.cpp:
  • html/HTMLMeterElement.h:

(HTMLMeterElement):
(HTMLMeterElement::attach):
Removed attach method, because attach method is just calling
LabelableElement::attach after removing didElementStateChange.
(HTMLMeterElement::createShadowSubTree):
Added setWidthPercentage to initialize MeterValueElement's value
attribute.

  • LayoutTests/platform/chromium/test_expectations.txt:

Removed BUGWK81311 fast/dom/shadow/content-element-in-meter.html,
because now contentElementInMeterElement passes.

21:04 Changeset [113554] by abarth@webkit.org
  • 2 edits in trunk/Tools

The port object is missing unit_tests_results_path
https://bugs.webkit.org/show_bug.cgi?id=83448

Unreviewed.

This is causing the cr-linux-ews to throw an exception.

  • Scripts/webkitpy/common/config/ports.py:

(DeprecatedPort.unit_tests_results_path):

13:50 Changeset [113553] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Command-line jsc's exception handling should be rationalized
https://bugs.webkit.org/show_bug.cgi?id=83437

Reviewed by Dan Bernstein.

  • If an exception is thrown during run() execution, it is now propagated, so that it will terminate program execution unless it is caught.


  • If program execution terminates with an exception, the exception is now always printed.


  • When printing the exception, the backtrace is now also printed if one is available. It will only not be available if you use something akin to my favorite line of code, 'throw "error"', since primitives don't have properties and hence we cannot attach a "stack" property to them.
  • jsc.cpp:

(functionRun):
(runWithScripts):

13:46 Changeset [113552] by fpizlo@apple.com
  • 14 edits in trunk/Source/JavaScriptCore

Forced OSR exits should lead to recompilation based on count, not rate
https://bugs.webkit.org/show_bug.cgi?id=83247
<rdar://problem/10720925>

Reviewed by Geoff Garen.

Track which OSR exits happen because of inadequate coverage. Count them
separately. If the count reaches a threshold, immediately trigger
reoptimization.

This is in contrast to the recompilation trigger for all other OSR exits.
Normally recomp is triggered when the exit rate exceeds a certain ratio.

Looks like a slight V8 speedup (sub 1%).

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::forcedOSRExitCounter):
(JSC::CodeBlock::addressOfForcedOSRExitCounter):
(JSC::CodeBlock::offsetOfForcedOSRExitCounter):
(JSC::CodeBlock::shouldReoptimizeNow):
(JSC::CodeBlock::shouldReoptimizeFromLoopNow):
(CodeBlock):

  • bytecode/DFGExitProfile.h:

(JSC::DFG::exitKindToString):

  • dfg/DFGOSRExitCompiler.cpp:

(JSC::DFG::OSRExitCompiler::handleExitCounts):
(DFG):

  • dfg/DFGOSRExitCompiler.h:

(OSRExitCompiler):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOperations.cpp:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • runtime/Options.cpp:

(Options):
(JSC::Options::initializeOptions):

  • runtime/Options.h:

(Options):

13:38 PrefixedAPIs edited by jhawkins@chromium.org
(diff)
11:35 Changeset [113551] by paroga@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix for !ENABLE(CSS_FILTERS) && ASSERT_DISABLED after r109953.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

04/07/12:

20:45 Changeset [113550] by scherkus@chromium.org
  • 2 edits
    19 adds in trunk/LayoutTests

2012-04-07 Andrew Scherkus <scherkus@chromium.org>

[Chromium] Unreviewed, checking in baselines for video-frame-size-change.html.

  • platform/chromium-linux/platform/chromium/compositing/video-frame-size-change-expected.png: Added.
  • platform/chromium-linux/platform/chromium/media/video-frame-size-change-expected.png: Added.
  • platform/chromium-mac-leopard/platform/chromium/compositing/video-frame-size-change-expected.png: Added.
  • platform/chromium-mac-leopard/platform/chromium/media/video-frame-size-change-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/compositing/video-frame-size-change-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/media/video-frame-size-change-expected.png: Added.
  • platform/chromium-mac/platform/chromium/compositing/video-frame-size-change-expected.png: Added.
  • platform/chromium-mac/platform/chromium/compositing/video-frame-size-change-expected.txt: Added.
  • platform/chromium-mac/platform/chromium/media/video-frame-size-change-expected.png: Added.
  • platform/chromium-mac/platform/chromium/media/video-frame-size-change-expected.txt: Added.
  • platform/chromium-win/platform/chromium/compositing/video-frame-size-change-expected.png: Added.
  • platform/chromium-win/platform/chromium/compositing/video-frame-size-change-expected.txt: Added.
  • platform/chromium-win/platform/chromium/media/video-frame-size-change-expected.png: Added.
  • platform/chromium-win/platform/chromium/media/video-frame-size-change-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
11:47 Changeset [113549] by jonlee@apple.com
  • 2 edits in trunk/LayoutTests

Added fast/canvas/webgl/array-message-passing.html to skipped tests on mac.
Tracked by https://bugs.webkit.org/show_bug.cgi?id=83427

  • platform/mac/Skipped:
10:14 Changeset [113548] by paroga@webkit.org
  • 9 edits in trunk

[CMake] Cleanup WTF include directories
https://bugs.webkit.org/show_bug.cgi?id=82716

Reviewed by Eric Seidel.

Source/WebCore:

  • CMakeLists.txt:

Source/WebKit:

  • CMakeLists.txt:

Source/WebKit2:

  • CMakeLists.txt:

Tools:

  • DumpRenderTree/efl/CMakeLists.txt:
  • WinCELauncher/CMakeLists.txt:
08:48 PrefixedAPIs edited by simon.fraser@apple.com
(diff)
08:48 PrefixedAPIs edited by simon.fraser@apple.com
(diff)
08:30 Changeset [113547] by rwlbuis@webkit.org
  • 8 edits
    2 adds in trunk

[BlackBerry] Add Battery Status API support
https://bugs.webkit.org/show_bug.cgi?id=82615

Reviewed by George Staikos.

.:

Enable BATTERY_STATUS.

  • Source/cmake/OptionsBlackBerry.cmake:

Source/WebKit:

Add BatteryClientBlackBerry.cpp to the build.

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

Add client implementation for Battery API.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::init): initialize BatteryClient.

  • WebCoreSupport/BatteryClientBlackBerry.cpp: Added.

(WebCore):
(WebCore::BatteryClientBlackBerry::BatteryClientBlackBerry):
(WebCore::BatteryClientBlackBerry::setController):
(WebCore::BatteryClientBlackBerry::startUpdating):
(WebCore::BatteryClientBlackBerry::stopUpdating):
(WebCore::BatteryClientBlackBerry::batteryControllerDestroyed):
(WebCore::BatteryClientBlackBerry::onLevelChange):
(WebCore::BatteryClientBlackBerry::onChargingChange):
(WebCore::BatteryClientBlackBerry::onChargingTimeChange):
(WebCore::BatteryClientBlackBerry::onDischargingTimeChange):

  • WebCoreSupport/BatteryClientBlackBerry.h: Added.

(WebCore):
(BatteryClientBlackBerry):
(WebCore::BatteryClientBlackBerry::~BatteryClientBlackBerry):

Tools:

Enable BATTERY_STATUS.

  • Scripts/build-webkit:
07:31 Changeset [113546] by rwlbuis@webkit.org
  • 3 edits
    3 adds in trunk

Remove dead code in SVGCSSParser
https://bugs.webkit.org/show_bug.cgi?id=83404

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Remove code that was there to create a SVGColor representation for color, but was never reached. Since
SVGColor is deprecated now (also see bug 15012), this code has lost any potential. Should SVGColor come
back in SVG2 we can revisit this.

Add a test to confirm for SVG we follow the CSS3 handling of color="currentColor". This is something the
removed code never dealt with, but the existing code in CSSParser.cpp handles, make sure we stick to this
behaviour in the future using this test.

Test: svg/custom/currentColor-on-color.html

  • css/SVGCSSParser.cpp:

(WebCore::CSSParser::parseSVGValue):

LayoutTests:

Test that we support color="currentColor" in SVG. This follows from the CSS3 spec, see
http://www.w3.org/TR/css3-color/#currentcolor. This matches FF behaviour.

  • svg/custom/currentColor-on-color-expected.txt: Added.
  • svg/custom/currentColor-on-color.html: Added.
  • svg/custom/script-tests/currentColor-on-color.js: Added.
06:13 Changeset [113545] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed Easter gardening, skip new failing tests to paint the bots green.

  • platform/qt/Skipped:
01:21 Changeset [113544] by zimmermann@webkit.org
  • 4 edits in trunk/LayoutTests

2012-04-07 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Rebaseline three results on Lion, so my baseline passes with tolerance 0 again.

  • platform/mac/svg/W3C-SVG-1.1/animate-elem-30-t-expected.png: Images have wrong colorspace in those results.
  • platform/mac/svg/W3C-SVG-1.1/animate-elem-36-t-expected.png: Ditto.
  • platform/mac/svg/carto.net/selectionlist-expected.png: Ditto.
01:09 Changeset [113543] by zimmermann@webkit.org
  • 2 edits in trunk/Source/WebCore

2012-04-07 Nikolas Zimmermann <nzimmermann@rim.com>

FrameData constructor zeroes all fields, causing ImageOrientation to be 0
https://bugs.webkit.org/show_bug.cgi?id=83416

Inofficially rubber-stamped by Tim Horton.

Lots of svg/as-image/ crash on debug builds. FrameData is used in a Vector and currently
special VectorTraits force it to be initialized with memset(), nulling all members, instead
of properly initializing them causing the ImageOrientation bug. To be able to remove the
SimpleClassVectorTraits specialization, we have to allow FrameData to be copied.

  • platform/graphics/BitmapImage.h:
00:38 Changeset [113542] by zimmermann@webkit.org
  • 19 edits in trunk

2012-04-07 Nikolas Zimmermann <nzimmermann@rim.com>

Work around an entity parsing bug in libxml2 2.7.3 (supplied with Lion) and unskip tests
https://bugs.webkit.org/show_bug.cgi?id=82577

Reviewed by Filip Pizlo.

Unskip several tests on Lion, now that the libxml2 bug doesn't affect us anymore.

  • platform/mac-lion/Skipped:
  • platform/mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.txt:
  • platform/mac/svg/custom/preserve-aspect-ratio-syntax-expected.png:
  • platform/mac/svg/custom/preserve-aspect-ratio-syntax-expected.txt:
  • platform/mac/svg/custom/viewbox-syntax-expected.png:
  • platform/mac/svg/custom/viewbox-syntax-expected.txt:
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png:
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt:
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png:
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt:

2012-04-07 Nikolas Zimmermann <nzimmermann@rim.com>

Work around an entity parsing bug in libxml2 2.7.3 (supplied with Lion) and unskip tests
https://bugs.webkit.org/show_bug.cgi?id=82577

Reviewed by Filip Pizlo.

Work-around entity expansion bug that affects several SVG tests on Lion.

Sample test document which is currently broken:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-W3CDTD SVG 1.1 BasicEN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd" [
<!ENTITY Smile "<rect x='.5' y='.5' width='29' height='39' fill='black' stroke='red'/>">
]>

<svg xmlns="http://www.w3.org/2000/svg">&Smile;</svg>

The expanded rect carries no namespace, thus an Element will be created for it, instead of a SVGRectElement.
libxml2 2.7.4 fixed this bug (https://bugzilla.gnome.org/show_bug.cgi?id=502960) in 2009 already, but Lion
still ships with 2.7.3, so we need to find a work-around for the problem. It works like this:

  • When an entity is requested (getEntityHandler) determine whether the entity is being declared (while the <!ENTITY.. parses) or wheter its references (when the &Smile; is parsed). If its referenced, record the current depth of the libxml2 parser.
  • When startElementNs is called while we're expanding entities, be sure to transfer the namespace of the parent node to the new node, but only do this if the current depth() is greater than the depth() at the time where entity expansion started. This way we only apply our workaround for elements inside entities, that get expanded at the insertion point.
  • When endElementNs is called, and our current depth() is less than our equal to the depth() where entity expansion started, clear the recorded detph(), and stop executing the workaround.

It requires storing an extra integer & boolean in XMLDocumentParser, which is only used for this work-around.

  • xml/parser/XMLDocumentParser.h: (XMLDocumentParser): (WebCore::XMLDocumentParser::isParsingEntityDeclaration): (WebCore::XMLDocumentParser::setIsParsingEntityDeclaration): (WebCore::XMLDocumentParser::depthTriggeringEntityExpansion): (WebCore::XMLDocumentParser::setDepthTriggeringEntityExpansion):
  • xml/parser/XMLDocumentParserLibxml2.cpp: (WebCore::XMLDocumentParser::XMLDocumentParser): (WebCore::hackAroundLibXMLEntityParsingBug): (WebCore::XMLDocumentParser::startElementNs): (WebCore::XMLDocumentParser::endElementNs): (WebCore::entityDeclarationHandler): (WebCore::getEntityHandler): (WebCore::XMLDocumentParser::initializeParserContext):

04/06/12:

22:47 Changeset [113541] by mrowe@apple.com
  • 4 edits in trunk/Source

Versioning.

22:38 Changeset [113540] by mrowe@apple.com
  • 1 copy in tags/Safari-536.6

New tag.

20:28 Changeset [113539] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Unreviewed, rolling out r113526.
http://trac.webkit.org/changeset/113526
https://bugs.webkit.org/show_bug.cgi?id=83417

speculative rollout for broken chrome browser_test (Requested
by simonjam on #webkit).

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

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::stopLoading):
(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::setupForReplaceByMIMEType):
(WebCore):
(WebCore::DocumentLoader::setParsedArchiveData):
(WebCore::DocumentLoader::scheduleArchiveLoad):
(WebCore::DocumentLoader::documentURL):

  • loader/DocumentLoader.h:

(DocumentLoader):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::receivedFirstData):
(WebCore::FrameLoader::loadArchive):
(WebCore::FrameLoader::stopAllLoaders):
(WebCore::FrameLoader::finishedLoadingDocument):
(WebCore):

  • loader/FrameLoader.h:

(FrameLoader):
(WebCore::FrameLoader::archive):

19:13 Changeset [113538] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[chromium] Avoid deleting impl tree when becoming invisible
https://bugs.webkit.org/show_bug.cgi?id=83396

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

This bit of code in CCLayerTreeHost::didBecomeInvisible..() was an attempt to drop resources when becoming
invisible. However, it's fairly confused - we drop textures via TextureManagers when going invisible and
CCLayerImpl destructors can't delete non-managed resources since they do not have access to a context - so this
code was never actually freeing up GPU resources. Having a sometimes-null CCLayerImpl tree when we still have a
valid LayerChromium tree has lead to various tricky bugs.

No new tests since this code wasn't doing anything useful in the first place.

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):

19:06 Changeset [113537] by leo.yang@torchmobile.com.cn
  • 2 edits in trunk/Source/WebCore

LocalFileSystem::initializeLocalFileSystem should be static
https://bugs.webkit.org/show_bug.cgi?id=83356

Reviewed by Rob Buis.

LocalFileSystem::initializeLocalFileSystem should be static because
static LocalFileSystem::localFileSystem() requires initializeLocalFileSystem()
is called before it gets called.

No functionalities changed, no new tests.

  • Modules/filesystem/LocalFileSystem.h:

(LocalFileSystem):

19:04 Changeset [113536] by scherkus@chromium.org
  • 3 edits
    1 add
    1 delete in trunk/LayoutTests

2012-04-06 Andrew Scherkus <scherkus@chromium.org>

[chromium] Add layout tests that exercise rendering path for videos that have changing resolutions.
https://bugs.webkit.org/show_bug.cgi?id=83383

Reviewed by James Robinson.

  • platform/chromium/compositing/video-frame-size-change.html: Added.
  • platform/chromium/media/video-frame-size-change.html: Changed from dumpAsText() to pixel test
19:02 Changeset [113535] by dpranke@chromium.org
  • 1 edit
    51 deletes in trunk/LayoutTests

clone baselines from platform/win to platform/chromium-win
https://bugs.webkit.org/show_bug.cgi?id=83394

Unreviewed, baselines update.

Removes a bunch of "generic" baselines that were mistakenly
cloned in r113509. I forgot to filter out the baselines that
were for win-specific tests, as opposed to win-specific
baselines for generic tests.

  • platform/chromium-win/accessibility/detached-object-notification-crash-expected.txt: Removed.
  • platform/chromium-win/accessibility/document-enabled-state-expected.txt: Removed.
  • platform/chromium-win/accessibility/document-role-expected.txt: Removed.
  • platform/chromium-win/accessibility/focus-events-expected.txt: Removed.
  • platform/chromium-win/accessibility/heading-elements-expected.txt: Removed.
  • platform/chromium-win/accessibility/img-alt-attribute-expected.txt: Removed.
  • platform/chromium-win/accessibility/linked-elements-expected.txt: Removed.
  • platform/chromium-win/accessibility/list-item-role-expected.txt: Removed.
  • platform/chromium-win/accessibility/list-marker-role-expected.txt: Removed.
  • platform/chromium-win/accessibility/list-role-expected.txt: Removed.
  • platform/chromium-win/accessibility/multiple-select-element-role-expected.txt: Removed.
  • platform/chromium-win/accessibility/option-element-position-and-size-expected.txt: Removed.
  • platform/chromium-win/accessibility/option-element-selection-and-focus-events-expected.txt: Removed.
  • platform/chromium-win/accessibility/parent-element-expected.txt: Removed.
  • platform/chromium-win/accessibility/scroll-to-anchor-expected.txt: Removed.
  • platform/chromium-win/accessibility/select-element-role-expected.txt: Removed.
  • platform/chromium-win/accessibility/select-element-valuechange-event-expected.txt: Removed.
  • platform/chromium-win/accessibility/selection-and-focus-expected.txt: Removed.
  • platform/chromium-win/accessibility/single-select-children-changed-expected.txt: Removed.
  • platform/chromium-win/accessibility/single-select-children-expected.txt: Removed.
  • platform/chromium-win/accessibility/text-role-expected.txt: Removed.
  • platform/chromium-win/editing/selection/doubleclick-should-not-expand-across-lines-expected.txt: Removed.
  • platform/chromium-win/editing/selection/shift-page-up-down-expected.txt: Removed.
  • platform/chromium-win/fast/events/alt-numpad-expected.txt: Removed.
  • platform/chromium-win/fast/events/alt-space-scroll-expected.txt: Removed.
  • platform/chromium-win/fast/events/context-click-events-expected.txt: Removed.
  • platform/chromium-win/fast/events/double-dead-char-expected.txt: Removed.
  • platform/chromium-win/fast/events/keyLocation-numpad-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-correct-direction-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-event-fired-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-image-no-scroll-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-imageMap-href-no-scroll-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-imageMap-noHref-scroll-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-nested-divs-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-no-iframe-jump-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-preventDefault-expected.txt: Removed.
  • platform/chromium-win/fast/text/uniscribe-item-boundary-crash-expected.txt: Removed.
  • platform/chromium-win/fast/text/uniscribe-missing-glyph-expected.txt: Removed.
  • platform/chromium-win/inverted-colors/non-composited-expected.png: Removed.
  • platform/chromium-win/inverted-colors/non-composited-expected.txt: Removed.
  • platform/chromium-win/platform/win/plugins/draws-gradient-expected.png: Removed.
  • platform/chromium-win/platform/win/plugins/draws-gradient-expected.txt: Removed.
  • platform/chromium-win/plugins/call-javascript-that-destroys-plugin-expected.txt: Removed.
  • platform/chromium-win/plugins/get-value-netscape-window-expected.txt: Removed.
  • platform/chromium-win/plugins/iframe-inside-overflow-expected.txt: Removed.
  • platform/chromium-win/plugins/npn-invalidate-rect-invalidates-window-expected.txt: Removed.
  • platform/chromium-win/plugins/visibility-hidden-expected.png: Removed.
  • platform/chromium-win/plugins/visibility-hidden-expected.txt: Removed.
  • platform/chromium-win/plugins/window-geometry-initialized-before-set-window-expected.txt: Removed.
  • platform/chromium-win/plugins/window-region-is-set-to-clip-rect-expected.txt: Removed.
  • platform/chromium-win/plugins/windowless-paint-rect-coordinates-expected.txt: Removed.
18:59 PrefixedAPIs edited by dcheng@chromium.org
(diff)
18:54 Changeset [113534] by simonjam@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

[Chromium] Unreviewed gardening.

  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt: Added.
18:25 Changeset [113533] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[GTK] Accelerated compositing is broken after recent TextureMapper reorganizations
https://bugs.webkit.org/show_bug.cgi?id=83393

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-04-06
Reviewed by Noam Rosenthal.

Source/WebCore:

No new tests. This will be covered by existing accelerated compositing tests
once the implementation is complete.

The GTK+ implementation doesn't clip currently, so hold off enabling the
scissor test until necessary.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::beginPainting): Do not enable the scissor test.
(WebCore::TextureMapperGL::beginScissorClip): Enable the scissor test once
we know for sure we will be using scissored clipping.

Source/WebKit/gtk:

Ensure that the layer tree is synced when the root layer is resized.

  • WebCoreSupport/AcceleratedCompositingContextGL.cpp:

(WebKit::AcceleratedCompositingContext::resizeRootLayer): Ensure that the layer
tree is synced when the root layer resizes and remove a call to recomposite
the tree, as it happens anyway.

18:18 PrefixedAPIs edited by jamesr@google.com
(diff)
18:17 Changeset [113532] by keishi@webkit.org
  • 22 edits
    14 deletes in trunk

Remove obsolete parts of <datalist> support code
https://bugs.webkit.org/show_bug.cgi?id=83117

Source/WebCore:

Removing HTMLInputElement::selectedOption because it was removed from the specification.
Removing -webkit-appearance:list-button and -webkit-input-list-button pseudo selector
related code because we decided not to use it.

Reviewed by Kent Tamura.

  • WebCore.order:
  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::pseudoId):
(WebCore::nameToPseudoTypeMap):
(WebCore::CSSSelector::extractPseudoType):

  • css/CSSSelector.h:
  • css/CSSValueKeywords.in:
  • css/html.css:

(datalist):

  • html/HTMLInputElement.cpp:
  • html/HTMLInputElement.h:

(HTMLInputElement):

  • html/HTMLInputElement.idl:
  • inspector/front-end/SourceCSSTokenizer.js:

(WebInspector.SourceCSSTokenizer):

  • inspector/front-end/SourceCSSTokenizer.re2js:
  • inspector/front-end/StylesSidebarPane.js:
  • platform/ThemeTypes.h:
  • platform/chromium/ThemeChromiumMac.mm:

(WebCore::setupButtonCell):
(WebCore::paintButton):
(WebCore::ThemeChromiumMac::controlSize):
(WebCore::ThemeChromiumMac::minimumControlSize):
(WebCore::ThemeChromiumMac::controlBorder):
(WebCore::ThemeChromiumMac::paint):

  • platform/mac/ThemeMac.mm:

(WebCore::setUpButtonCell):
(WebCore::paintButton):
(WebCore::ThemeMac::controlSize):
(WebCore::ThemeMac::minimumControlSize):
(WebCore::ThemeMac::controlBorder):
(WebCore::ThemeMac::paint):

  • platform/qt/RenderThemeQtMobile.cpp:

(WebCore::RenderThemeQtMobile::computeSizeBasedOnStyle):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::adjustStyle):
(WebCore::RenderTheme::paint):
(WebCore::RenderTheme::paintBorderOnly):
(WebCore::RenderTheme::paintDecorations):

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::adjustRepaintRect):

LayoutTests:

Removed tests for HTMLInputElement.selectedOption and -webkit-appearance:list-button.

Reviewed by Kent Tamura.

  • fast/forms/datalist/input-selectedoption-expected.txt: Removed.
  • fast/forms/datalist/input-selectedoption.html: Removed.
  • platform/chromium-linux/fast/forms/datalist/input-selectedoption-expected.png: Removed.
  • platform/chromium-mac-leopard/fast/forms/datalist/input-selectedoption-expected.png: Removed.
  • platform/chromium-mac/fast/forms/datalist/input-selectedoption-expected.png: Removed.
  • platform/chromium-mac/fast/forms/datalist/input-selectedoption-expected.txt: Removed.
  • platform/chromium-win/fast/forms/datalist/input-selectedoption-expected.png: Removed.
  • platform/chromium-win/fast/forms/datalist/input-selectedoption-expected.txt: Removed.
  • platform/chromium-win/platform/mac/fast/forms/input-list-button-size-expected.png: Removed.
  • platform/gtk/fast/forms/input-selectedoption-expected.txt: Removed.
  • platform/mac-leopard/fast/forms/input-list-button-size-expected.png: Removed.
  • platform/mac/Skipped:
  • platform/mac/fast/forms/input-list-button-size-expected.png: Removed.
  • platform/mac/fast/forms/input-list-button-size-expected.txt: Removed.
  • platform/mac/fast/forms/input-list-button-size.html: Removed.
18:16 PrefixedAPIs edited by rniwa@webkit.org
Add specifications for mutation observers API and drag & drop API (diff)
18:12 Changeset [113531] by fischman@chromium.org
  • 3 edits in trunk/Tools

Subscribe feature-media-reviews@c.o to Media-related changes.
https://bugs.webkit.org/show_bug.cgi?id=83397

Reviewed by David Levin.

  • Scripts/webkitpy/common/config/committers.py:
  • Scripts/webkitpy/common/config/watchlist:
18:12 Changeset [113530] by benjamin@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Do not abuse ArrayStorage's m_length for testing array consistency
https://bugs.webkit.org/show_bug.cgi?id=83403

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-06
Reviewed by Geoffrey Garen.

Array creation from a list of values is a 3 steps process:
-JSArray::tryCreateUninitialized()
-JSArray::initializeIndex() for each values
-JSArray::completeInitialization()

Previously, the attribute m_length was not set to the final size
JSArray::tryCreateUninitialized() because it was used to test the array
consistency JSArray::initializeIndex().

This caused the initialization loop using JSArray::initializeIndex() maintain
two counters:
-index of the loop
-storage->m_length++

This patch fixes this by using the index of the initialization loop for the indinces of
JSArray::initializeIndex(). For testing consistency, the variable m_initializationIndex
is introduced if CHECK_ARRAY_CONSISTENCY is defined.

The patch also fixes minor unrelated build issue when CHECK_ARRAY_CONSISTENCY is defined.

This improves the performance of JSArray creation from literals by 8%.

  • runtime/JSArray.cpp:

(JSC::JSArray::tryFinishCreationUninitialized):
(JSC::JSArray::checkConsistency):

  • runtime/JSArray.h:

(ArrayStorage):
(JSC::JSArray::initializeIndex):
(JSC::JSArray::completeInitialization):

18:09 Changeset [113529] by enne@google.com
  • 2 edits in trunk/Tools

[chromium] Add virtual test suite for threaded compositing
https://bugs.webkit.org/show_bug.cgi?id=82263

Reviewed by James Robinson.

Add compositing/visibility as a virtual test suites to test threaded
compositing with. This is a reasonable smoke test of 9 tests, none of
which have any expectations in the non-threaded case.

To fix many of the remaining tests in this virtual test suite, there
will need to be some serious refactoring to merge the conflict between
the way CCScheduler wants to draw frames and the way DRT also wants to
control things. So, in the short term, enable a few simple tests that
are known to be passing.

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumPort.virtual_test_suites):

18:03 Changeset [113528] by oliver@apple.com
  • 2 edits in trunk/Source/WebCore

Accessing the returnValue of a modal dialog should be performed directly on the global object.
https://bugs.webkit.org/show_bug.cgi?id=83414

Reviewed by Gavin Barraclough.

Presumably during the mass-devirtualising of JSObject, this deliberate use of
the GlobalObject's property lookup logic directly was replaced with a dynamic
call. That results in the DOMWindow filtering out the lookup. This regression
was masked by r93567.

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::DialogHandler::returnValue):

17:58 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:57 Changeset [113527] by jonlee@apple.com
  • 4 edits in trunk/Source

Build fix for Windows bots.

Source/JavaScriptCore:

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: export missing symbol.

Source/WebKit2:

  • win/WebKit2.def: Add missing export symbol.
17:53 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:49 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:43 Changeset [113526] by japhet@chromium.org
  • 5 edits in trunk/Source/WebCore

Move Archive processing to DocumentLoader, instead of FrameLoader.
https://bugs.webkit.org/show_bug.cgi?id=83055

Reviewed by Adam Barth.

No new tests, no functionality change intended.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::setupForReplaceByMIMEType):
(WebCore::DocumentLoader::maybeCreateArchive): Renamed from

FrameLoader::finishedLoadingDocument(). Returns true if an archive
was created.

(WebCore::DocumentLoader::setArchive):
(WebCore::DocumentLoader::scheduleArchiveLoad):
(WebCore::DocumentLoader::documentURL): Add a check for whether an archive url

should be returned, so that we don't need special handling in Document and
FrameLoader for overriding the document url later.

  • loader/DocumentLoader.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::receivedFirstData): Remove archive special cases, since

DocumentLoader::documentURL() will return the right thing for legacy archives
and maybeCreateArchive() will override the base url for mhtml.

(WebCore::FrameLoader::loadArchive):

  • loader/FrameLoader.h:
17:41 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:37 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:36 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:34 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:33 Changeset [113525] by charles.wei@torchmobile.com.cn
  • 4 edits in trunk/Source

[BlackBerry] Build fix to match the latest WebCore change
https://bugs.webkit.org/show_bug.cgi?id=83358

Reviewed by Rob Buis.

Source/WebCore:

Update the BlackBerry cmake file to reflect the fact that:
1.VDMXParser.cpp moved from graphics/skia to graphics/chromium.
2.geolocation moved to Modules/geolocation
3.websockets moved to Modules/websockets

  • PlatformBlackBerry.cmake:

Source/WebKit:

  • PlatformBlackBerry.cmake:
17:32 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:30 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:30 Changeset [113524] by charles.wei@torchmobile.com.cn
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Restore some code which was deleted by accident.
https://bugs.webkit.org/show_bug.cgi?id=83357

Reviewed by Rob Buis.

No new tests, just BlackBerry build fix.

  • platform/network/blackberry/ResourceRequest.h:

(ResourceRequest):

  • platform/network/blackberry/ResourceRequestBlackBerry.cpp:

(WebCore):
(WebCore::mimeTypeRequestTypeMap):
(WebCore::ResourceRequest::targetTypeFromMimeType):

17:29 PrefixedAPIs edited by abarth@webkit.org
(diff)
17:24 PrefixedAPIs created by abarth@webkit.org
17:14 Changeset [113523] by hbono@chromium.org
  • 2 edits in trunk/Source/WebKit2

REGRESSION: Cannot write a word with Korean double consonant
https://bugs.webkit.org/show_bug.cgi?id=81186

Reviewed by Dan Bernstein.

WebKit change r103859 posts fake mouse-move events when the keyboard status is
changed. Unfortunately, these mouse events go to input methods and confuse a
Korean input method. This change directly calls handleMouseEvent() instead of
-mouseMoved: to prevent sending these fake events to input methods.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _postFakeMouseMovedEventForFlagsChangedEvent:]):

17:13 Changeset [113522] by simonjam@chromium.org
  • 4 edits
    1 move
    1 add
    2 deletes in trunk/LayoutTests

[Chromium] Unreviewed gardening.

  • platform/chromium-linux/fast/text/atsui-partial-selection-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/fast/text/atsui-partial-selection-expected.png.
  • platform/chromium-mac-snowleopard/fullscreen/full-screen-stacking-context-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/svg/text/non-bmp-positioning-lists-expected.txt: Removed.
  • platform/chromium-mac/fullscreen/full-screen-stacking-context-expected.png:
  • platform/chromium-mac/svg/custom/shape-rendering-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
17:06 Changeset [113521] by jamesr@google.com
  • 5 edits in trunk/LayoutTests

Unreviewed gardening.

Explicitly position canvases for these tests to avoid cross-platform differences.

  • fast/canvas/webgl/webgl-composite-modes-expected.png:
  • fast/canvas/webgl/webgl-composite-modes-repaint-expected.png:
  • fast/canvas/webgl/webgl-composite-modes-repaint.html:
  • fast/canvas/webgl/webgl-composite-modes.html:
17:03 Changeset [113520] by commit-queue@webkit.org
  • 5 edits in trunk

Fix bug in ContainerNode::getRect with scale transforms
https://bugs.webkit.org/show_bug.cgi?id=83385

Patch by Alexandre Elias <aelias@google.com> on 2012-04-06
Reviewed by Simon Fraser.

The bottom-right corner calculation for non-inline and replaced
elements in ContainerNode::getRect was incorrect in the presence of
scaling, because the untransformed element size was added after the
transformation is applied. The rest of the calculations are careful
to always apply the transformation as the last step, but this had been
forgotten in this codepath. The fix is just to make sure the size is
included in the localToAbsolute call.

One bug caused by this was that a scaled element would be cut off
when scrollIntoView(false) is called to scroll its parent container
to make it bottom-visible.

New layout test case in fast/transforms/scrollIntoView-transformed.html

Source/WebCore:

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::getLowerRightCorner):

LayoutTests:

  • fast/transforms/scrollIntoView-transformed-expected.txt:
  • fast/transforms/scrollIntoView-transformed.html:
16:41 Changeset [113519] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

m_shouldRespectImageOrientation is used uninitialized
https://bugs.webkit.org/show_bug.cgi?id=83410

Reviewed by Simon Fraser.

Initialize Settings's m_shouldRespectImageOrientation to false.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

16:26 Changeset [113518] by ap@apple.com
  • 4 edits in trunk/Source

[Mac] Adopt a different method of telling AppKit when inline input isn't supported
https://bugs.webkit.org/show_bug.cgi?id=83408
<rdar://problem/9205734>

Reviewed by Adele Peterson.

16:09 Changeset [113517] by jamesr@google.com
  • 6 edits in trunk

[chromium] Clear values in combinedClear path not respected in WebGLRenderingContext::clearIfComposited()
https://bugs.webkit.org/show_bug.cgi?id=83407

Source/WebCore:

Reviewed by Kenneth Russell.

When doing a combined clear in the drawing buffer path, we have to use the user specified values for the clear
color / mask / depth and not all 0s.

Covered by slight modification to fast/canvas/webgl/canvas-test.html

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::clearIfComposited):

  • platform/graphics/gpu/DrawingBuffer.cpp:

(WebCore::DrawingBuffer::clearFramebuffers):
(WebCore::DrawingBuffer::reset):

  • platform/graphics/gpu/DrawingBuffer.h:

LayoutTests:

Force a composite on each tick to more closely match the test's behavior in an actual browser.

  • fast/canvas/webgl/canvas-test.html:
16:02 Changeset [113516] by tony@chromium.org
  • 2 edits
    2 adds in trunk/LayoutTests

[chromium] Unreviewed gardening.

This test is passing on Chromium Linux, but we have a different expectation
checked in for Chromium Win which uses lighttpd.

  • platform/chromium-linux/http/tests/xmlhttprequest/cache-override-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
15:57 Changeset [113515] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

[chromium] merge redundant conditions in WebCore.gyp
https://bugs.webkit.org/show_bug.cgi?id=83319

Reviewed by Adam Barth.

There were duplicate conditions in some of the targets (e.g., 2
OS=="win" sections) so I merged them and if possible, used an else
block of an existing condition.

No new tests, just refactoring the build file.

  • WebCore.gyp/WebCore.gyp:
15:55 Changeset [113514] by simon.fraser@apple.com
  • 7 edits in trunk/Source/WebCore

Rename paintingGoesToWindow() to paintsIntoWindow()
https://bugs.webkit.org/show_bug.cgi?id=83406

Reviewed by Dirk Schulze.

Rename paintingGoesToWindow() to paintsIntoWindow() to be consistent
with some future refactoring.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::setFilterBackendNeedsRepaintingInRect):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintsWithTransform):
(WebCore::RenderLayer::setBackingNeedsRepaint):
(WebCore::RenderLayer::setBackingNeedsRepaintInRect):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::containsPaintedContent):
(WebCore::RenderLayerBacking::paintsIntoWindow):
(WebCore::RenderLayerBacking::paintIntoLayer):

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::rootLayerAttachmentChanged):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::repaintUsingContainer):

  • rendering/RenderView.cpp:

(WebCore::RenderView::paintBoxDecorations):

15:53 Changeset [113513] by simonjam@chromium.org
  • 2 edits in trunk/Source/WebCore

Roll out change to HTMLParserIdioms.cpp from 82857
https://bugs.webkit.org/show_bug.cgi?id=83402

Change 82857 causes a DCHECK on fast/forms/number/ValidityState-typeMismatch-number.html

Darin suggested we roll out this file here: https://bugs.webkit.org/show_bug.cgi?id=82857#c20

Unreviewed, rolling out change that broke tests.

  • html/parser/HTMLParserIdioms.cpp:

(WebCore::parseToDoubleForNumberType):

15:49 Changeset [113512] by fischman@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll Chromium DEPS
https://bugs.webkit.org/show_bug.cgi?id=83389

Unreviewed, just a DEPS roll (130110:131183)

  • DEPS:
15:48 Changeset [113511] by isherman@chromium.org
  • 5 edits in trunk

Allow site authors to override autofilled fields' colors.
https://bugs.webkit.org/show_bug.cgi?id=66032
http://code.google.com/p/chromium/issues/detail?id=46543

Reviewed by Simon Fraser.

Source/WebCore:

  • css/html.css:

(input:-webkit-autofill): Remove !important declarations.

LayoutTests:

  • fast/forms/input-autofilled-expected.txt:
  • fast/forms/input-autofilled.html:
15:44 Changeset [113510] by enrica@apple.com
  • 9 edits
    2 adds in trunk

Provide Obj-C private API to simplify markup.
https://bugs.webkit.org/show_bug.cgi?id=83334
<rdar://problem/11033861>

Reviewed by Sam Weinig.

Source/WebCore:

Added test in TestWebKitAPI

  • WebCore.exp.in:
  • editing/Editor.cpp:

(WebCore::Editor::simplifyMarkup): Exposing the new command through the editor.

  • editing/Editor.h:

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _simplifyMarkup:endNode:]): Added.

  • WebView/WebViewPrivate.h:

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/SimplifyMarkup.mm: Added.

(-[SimplifyMarkupTest webView:didFinishLoadForFrame:]):

  • TestWebKitAPI/Tests/mac/verboseMarkup.html: Added.
15:43 Changeset [113509] by dpranke@chromium.org
  • 1 edit
    115 adds in trunk/LayoutTests

clone baselines from platform/win to platform/chromium-win
https://bugs.webkit.org/show_bug.cgi?83394

Unreviewed, expectations change.

Copies the win baselines that chromium depends on into a
chromium dir, so that we can remove the dependency on win down
the road.

  • platform/chromium-win/accessibility/aria-fallback-roles-expected.txt: Added.
  • platform/chromium-win/accessibility/detached-object-notification-crash-expected.txt: Added.
  • platform/chromium-win/accessibility/document-enabled-state-expected.txt: Added.
  • platform/chromium-win/accessibility/document-role-expected.txt: Added.
  • platform/chromium-win/accessibility/focus-events-expected.txt: Added.
  • platform/chromium-win/accessibility/heading-elements-expected.txt: Added.
  • platform/chromium-win/accessibility/img-alt-attribute-expected.txt: Added.
  • platform/chromium-win/accessibility/linked-elements-expected.txt: Added.
  • platform/chromium-win/accessibility/list-item-role-expected.txt: Added.
  • platform/chromium-win/accessibility/list-marker-role-expected.txt: Added.
  • platform/chromium-win/accessibility/list-role-expected.txt: Added.
  • platform/chromium-win/accessibility/multiple-select-element-role-expected.txt: Added.
  • platform/chromium-win/accessibility/option-element-position-and-size-expected.txt: Added.
  • platform/chromium-win/accessibility/option-element-selection-and-focus-events-expected.txt: Added.
  • platform/chromium-win/accessibility/parent-element-expected.txt: Added.
  • platform/chromium-win/accessibility/scroll-to-anchor-expected.txt: Added.
  • platform/chromium-win/accessibility/select-element-role-expected.txt: Added.
  • platform/chromium-win/accessibility/select-element-valuechange-event-expected.txt: Added.
  • platform/chromium-win/accessibility/selection-and-focus-expected.txt: Added.
  • platform/chromium-win/accessibility/single-select-children-changed-expected.txt: Added.
  • platform/chromium-win/accessibility/single-select-children-expected.txt: Added.
  • platform/chromium-win/accessibility/text-role-expected.txt: Added.
  • platform/chromium-win/compositing/plugins/composited-plugin-expected.txt: Added.
  • platform/chromium-win/compositing/plugins/small-to-large-composited-plugin-expected.txt: Added.
  • platform/chromium-win/editing/selection/anchor-focus2-expected.txt: Added.
  • platform/chromium-win/editing/selection/anchor-focus3-expected.txt: Added.
  • platform/chromium-win/editing/selection/collapse-selection-in-bidi-expected.txt: Added.
  • platform/chromium-win/editing/selection/doubleclick-should-not-expand-across-lines-expected.txt: Added.
  • platform/chromium-win/editing/selection/drag-text-delay-expected.txt: Added.
  • platform/chromium-win/editing/selection/extend-selection-home-end-expected.txt: Added.
  • platform/chromium-win/editing/selection/mixed-editability-10-expected.txt: Added.
  • platform/chromium-win/editing/selection/shift-page-up-down-expected.txt: Added.
  • platform/chromium-win/editing/selection/transformed-selection-rects-expected.txt: Added.
  • platform/chromium-win/fast/css/zoom-body-scroll-expected.txt: Added.
  • platform/chromium-win/fast/dom/Element/id-in-deletebutton-expected.txt: Added.
  • platform/chromium-win/fast/dom/Window/window-properties-expected.txt: Added.
  • platform/chromium-win/fast/dom/prototype-inheritance-2-expected.txt: Added.
  • platform/chromium-win/fast/events/alt-numpad-expected.txt: Added.
  • platform/chromium-win/fast/events/alt-space-scroll-expected.txt: Added.
  • platform/chromium-win/fast/events/context-click-events-expected.txt: Added.
  • platform/chromium-win/fast/events/double-dead-char-expected.txt: Added.
  • platform/chromium-win/fast/events/keyLocation-numpad-expected.txt: Added.
  • platform/chromium-win/fast/events/panScroll-click-hyperlink-expected.txt: Added.
  • platform/chromium-win/fast/events/panScroll-correct-direction-expected.txt: Added.
  • platform/chromium-win/fast/events/panScroll-event-fired-expected.txt: Added.
  • platform/chromium-win/fast/events/panScroll-image-no-scroll-expected.txt: Added.
  • platform/chromium-win/fast/events/panScroll-imageMap-href-no-scroll-expected.txt: Added.
  • platform/chromium-win/fast/events/panScroll-imageMap-noHref-scroll-expected.txt: Added.
  • platform/chromium-win/fast/events/panScroll-nested-divs-expected.txt: Added.
  • platform/chromium-win/fast/events/panScroll-no-iframe-jump-expected.txt: Added.
  • platform/chromium-win/fast/events/panScroll-preventDefault-expected.txt: Added.
  • platform/chromium-win/fast/forms/cursor-at-editable-content-boundary-expected.txt: Added.
  • platform/chromium-win/fast/forms/select-popup-pagekeys-expected.txt: Added.
  • platform/chromium-win/fast/images/support-broken-image-delegate-expected.txt: Added.
  • platform/chromium-win/fast/js/global-constructors-expected.txt: Added.
  • platform/chromium-win/fast/loader/stateobjects/state-url-sets-links-visited-expected.txt: Added.
  • platform/chromium-win/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
  • platform/chromium-win/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Added.
  • platform/chromium-win/fast/replaced/table-percent-height-text-controls-expected.txt: Added.
  • platform/chromium-win/fast/text/capitalize-boundaries-expected.txt: Added.
  • platform/chromium-win/fast/text/emphasis-combined-text-expected.txt: Added.
  • platform/chromium-win/fast/text/emphasis-expected.png: Added.
  • platform/chromium-win/fast/text/emphasis-expected.txt: Added.
  • platform/chromium-win/fast/text/emphasis-vertical-expected.png: Added.
  • platform/chromium-win/fast/text/emphasis-vertical-expected.txt: Added.
  • platform/chromium-win/fast/text/fallback-traits-fixup-expected.txt: Added.
  • platform/chromium-win/fast/text/international/hindi-whitespace-expected.png: Added.
  • platform/chromium-win/fast/text/international/hindi-whitespace-expected.txt: Added.
  • platform/chromium-win/fast/text/international/text-combine-image-test-expected.png: Added.
  • platform/chromium-win/fast/text/international/text-combine-image-test-expected.txt: Added.
  • platform/chromium-win/fast/text/international/vertical-text-glyph-test-expected.png: Added.
  • platform/chromium-win/fast/text/international/vertical-text-glyph-test-expected.txt: Added.
  • platform/chromium-win/fast/text/international/vertical-text-metrics-test-expected.txt: Added.
  • platform/chromium-win/fast/text/justify-ideograph-complex-expected.txt: Added.
  • platform/chromium-win/fast/text/justify-ideograph-simple-expected.txt: Added.
  • platform/chromium-win/fast/text/justify-ideograph-vertical-expected.txt: Added.
  • platform/chromium-win/fast/text/uniscribe-item-boundary-crash-expected.txt: Added.
  • platform/chromium-win/fast/text/uniscribe-missing-glyph-expected.txt: Added.
  • platform/chromium-win/fast/writing-mode/Kusa-Makura-background-canvas-expected.png: Added.
  • platform/chromium-win/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt: Added.
  • platform/chromium-win/fast/writing-mode/border-vertical-lr-expected.png: Added.
  • platform/chromium-win/fast/writing-mode/border-vertical-lr-expected.txt: Added.
  • platform/chromium-win/fast/writing-mode/japanese-lr-selection-expected.png: Added.
  • platform/chromium-win/fast/writing-mode/japanese-lr-selection-expected.txt: Added.
  • platform/chromium-win/fast/writing-mode/japanese-rl-selection-expected.png: Added.
  • platform/chromium-win/fast/writing-mode/japanese-rl-selection-expected.txt: Added.
  • platform/chromium-win/fast/writing-mode/text-orientation-basic-expected.png: Added.
  • platform/chromium-win/fast/writing-mode/text-orientation-basic-expected.txt: Added.
  • platform/chromium-win/fast/writing-mode/vertical-font-fallback-expected.txt: Added.
  • platform/chromium-win/inverted-colors/non-composited-expected.png: Added.
  • platform/chromium-win/inverted-colors/non-composited-expected.txt: Added.
  • platform/chromium-win/platform/win/plugins/draws-gradient-expected.png: Added.
  • platform/chromium-win/platform/win/plugins/draws-gradient-expected.txt: Added.
  • platform/chromium-win/plugins/call-javascript-that-destroys-plugin-expected.txt: Added.
  • platform/chromium-win/plugins/get-value-netscape-window-expected.txt: Added.
  • platform/chromium-win/plugins/iframe-inside-overflow-expected.txt: Added.
  • platform/chromium-win/plugins/npn-invalidate-rect-invalidates-window-expected.txt: Added.
  • platform/chromium-win/plugins/npp-set-window-called-during-destruction-expected.txt: Added.
  • platform/chromium-win/plugins/plugin-javascript-access-expected.txt: Added.
  • platform/chromium-win/plugins/resize-from-plugin-expected.txt: Added.
  • platform/chromium-win/plugins/visibility-hidden-expected.png: Added.
  • platform/chromium-win/plugins/visibility-hidden-expected.txt: Added.
  • platform/chromium-win/plugins/window-geometry-initialized-before-set-window-expected.txt: Added.
  • platform/chromium-win/plugins/window-region-is-set-to-clip-rect-expected.txt: Added.
  • platform/chromium-win/plugins/windowless-paint-rect-coordinates-expected.txt: Added.
  • platform/chromium-win/printing/page-rule-in-media-query-expected.txt: Added.
  • platform/chromium-win/sputnik/Conformance/11_Expressions/11.5_Multiplicative_Operators/11.5.3_Percent/S11.5.3_A4_T6-expected.txt: Added.
  • platform/chromium-win/svg/zoom/page/zoom-mask-with-percentages-expected.png: Added.
15:35 Changeset [113508] by ggaren@apple.com
  • 19 edits
    4 moves in trunk/Source/JavaScriptCore

Renamed

WeakHeap => WeakSet
HandleHeap => HandleSet

Reviewed by Sam Weinig.

These sets do have internal allocators, but it's confusing to call them
heaps because they're sub-objects of an object called "heap".

  • heap/HandleHeap.cpp: Removed.
  • heap/HandleHeap.h: Removed.
  • heap/HandleSet.cpp: Copied from JavaScriptCore/heap/HandleHeap.cpp.
  • heap/WeakHeap.cpp: Removed.
  • heap/WeakHeap.h: Removed.
  • heap/WeakSet.cpp: Copied from JavaScriptCore/heap/WeakHeap.cpp.
  • heap/WeakSet.h: Copied from JavaScriptCore/heap/WeakHeap.h.

Plus global rename using grep.

15:30 Changeset [113507] by dpranke@chromium.org
  • 3 edits in trunk/Tools

new-run-webkit-tests: fix bugs in 'mock' drt implementation
https://bugs.webkit.org/show_bug.cgi?id=83341

Reviewed by Eric Seidel.

The current implementation crashed in some circumstances for
reference tests and files that were missing expected results.
This patch fixes those cases and adds more unit tests; it is a
precursor to adding unit tests each port that actually uses this
code, in order to get better coverage of the port/*
implementations.

  • Scripts/webkitpy/layout_tests/port/mock_drt.py:

(parse_options):
(MockDRT.input_from_line):
(MockDRT.output_for_test):
(MockDRT.run_one_test):
(MockChromiumDRT.input_from_line):
(MockChromiumDRT.output_for_test):
(MockChromiumDRT.run_one_test):

  • Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:

(MockDRTTest.make_input_output):
(MockDRTTest.expected_output):
(MockDRTTest):
(MockDRTTest.assertTest):
(MockDRTTest.test_missing_image):
(MockDRTTest.test_missing_text):
(MockDRTTest.test_reftest_match):
(MockDRTTest.test_reftest_mismatch):
(MockChromiumDRTTest.expected_output):

15:24 Changeset [113506] by tony@chromium.org
  • 3 edits
    1 add in trunk/LayoutTests

[chromium] Unreviewed gardening. This test is passing on chromium win and linux.

  • platform/chromium-linux-x86/fast/text/atsui-partial-selection-expected.png: Added.
  • platform/chromium-win/fast/text/atsui-partial-selection-expected.png:
  • platform/chromium/test_expectations.txt:
15:23 Changeset [113505] by benjamin@webkit.org
  • 7 edits in trunk/Source

Get rid of the useless flag PREEMPT_GEOLOCATION_PERMISSION
https://bugs.webkit.org/show_bug.cgi?id=83325

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-06
Reviewed by Ryosuke Niwa.

Source/WebCore:

The flag WTF_USE_PREEMPT_GEOLOCATION_PERMISSION was added in r63742 but
was never disabled by anyone. Supporting this feature added complexity by
introducing two authorization scheme.

This patch removes WTF_USE_PREEMPT_GEOLOCATION_PERMISSION and the code supporting
granting the authorization after startUpdating().

  • Modules/geolocation/Geolocation.cpp:

(WebCore::Geolocation::GeoNotifier::runSuccessCallback): With the simplified
authorization code, we ensure stronger constraint on GeoNotifier::runSuccessCallback().
(WebCore::Geolocation::stop):
(WebCore::Geolocation::startRequest):
(WebCore::Geolocation::clearWatch):
(WebCore::Geolocation::setIsAllowed):
(WebCore::Geolocation::positionChanged): The case (!isAllowed()) was there
to support granting the authorization for WTF_USE_PREEMPT_GEOLOCATION_PERMISSION.
(WebCore::Geolocation::handlePendingPermissionNotifiers):

  • Modules/geolocation/Geolocation.h:

(Geolocation):

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataUseFeatures.in:

Source/WTF:

  • wtf/Platform.h: Remove the flag.
15:16 Changeset [113504] by tony@chromium.org
  • 4 edits
    1 delete in trunk/LayoutTests

[chromium] Unreviewed, rebaseline a test on Vista/Win7.

  • platform/chromium-linux/fast/encoding/invalid-UTF-8-expected.txt: Removed.
  • platform/chromium-win/fast/encoding/invalid-UTF-8-expected.png:
  • platform/chromium-win/fast/encoding/invalid-UTF-8-expected.txt:
  • platform/chromium/test_expectations.txt:
15:15 Changeset [113503] by tsepez@chromium.org
  • 13 edits
    3 adds in trunk

Block cross-origin iframe scroll to fragment.
https://bugs.webkit.org/show_bug.cgi?id=73083

Reviewed by Adam Barth.

Add a restriction similar to what FF has done for all iframes for over a
year now. Our change is less disruptive in that it only does this in the
cross-orgin case, which is where the fragment scrolling is problematic.

Source/WebCore:

Test: http/tests/navigation/anchor-frames-cross-origin.html

  • dom/Document.cpp:

(WebCore::Document::canBeAccessedByEveryAncestorFrame):
(WebCore):

  • dom/Document.h:

(Document):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::finishedParsing):
(WebCore::FrameLoader::loadInSameDocument):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::loadWithDocumentLoader):
(WebCore::FrameLoader::shouldPerformFragmentNavigation):
(WebCore::FrameLoader::scrollToFragmentIfAllowed):
(WebCore):

  • loader/FrameLoader.h:

(FrameLoader):

LayoutTests:

  • http/tests/inspector/resource-parameters-expected.txt:
  • http/tests/navigation/anchor-frames-cross-origin-expected.txt: Added.
  • http/tests/navigation/anchor-frames-cross-origin.html: Added.
  • http/tests/navigation/resources/frame-with-anchor-cross-origin.html: Added.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-expected.txt:
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-expected.txt:
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-null-char-expected.txt:
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-javascript-URL-expected.txt:
  • http/tests/security/xssAuditor/anchor-url-dom-write-location2-expected.txt:
  • http/tests/security/xssAuditor/dom-write-location-inline-event-expected.txt:
14:49 Changeset [113502] by jsbell@chromium.org
  • 2 edits
    3 copies in branches/chromium/1084

Merge 112740 - IndexedDB: Race condition causes version change transaction to commit after onblocked
https://bugs.webkit.org/show_bug.cgi?id=82678

Source/WebCore:

For a version change event, the blocked and success events could both be queued
before either is dispatched. The transaction would erroneously be allowed to commit
after the blocked event was dispatched; it should not be, as the request was not
finished.

Reviewed by Tony Chang.

Test: storage/indexeddb/dont-commit-on-blocked.html

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::dispatchEvent):

LayoutTests:

Landing test marked PASS FAIL as WK82776 prevents it from running in DRT; will
run it as a Chromium browser test for now.

Reviewed by Tony Chang.

  • platform/chromium/test_expectations.txt:
  • storage/indexeddb/dont-commit-on-blocked.html: Added.
  • storage/indexeddb/resources/dont-commit-on-blocked-worker.js: Added.

(request.onsuccess):
(onSetVersionBlocked):
(onSetVersionSuccess):
(onTransactionComplete):

TBR=jsbell@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10007047

14:49 Changeset [113501] by jer.noble@apple.com
  • 4 edits in trunk/Source/WebKit2

WebFullScreenManagerProxy::isFullScreen() will create an empty full screen window; steal focus.
https://bugs.webkit.org/show_bug.cgi?id=83388

Reviewed by Geoffrey Garen.

Calling WebFullScreenManagerProxy::isFullScreen() will create a WKFullScreenWindowController if
one does not already exist, since the -[WKView fullScreenWindowController] method will create-on-access.
Add a new call, -[WKView hasFullScreenWindowController], which does not auto-create the controller
and add that check to WebFullScreenManagerProxy::isFullScreen().

  • UIProcess/API/mac/WKView.mm:

(-[WKView hasFullScreenWindowController]):

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/mac/WebFullScreenManagerProxyMac.mm:

(WebKit::WebFullScreenManagerProxy::isFullScreen):

14:48 Changeset [113500] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed, remove a passing test.
tables/mozilla/bugs/bug9024.html is passing on Leopard.

  • platform/chromium/test_expectations.txt:
14:45 Changeset [113499] by jamesr@google.com
  • 14 edits
    1 copy
    1 add in trunk/Tools

Enable webkit_unit_tests for commit queue and EWS while tracking failures
https://bugs.webkit.org/show_bug.cgi?id=83329

Reviewed by Adam Barth.

This adds a step to parse XML output from webkit_unit_tests and consider regressions in the PatchAnalysisTask so
the commit queue and EWS can reject patches that cause regressions.

  • Scripts/webkitpy/common/config/ports.py:

(ChromiumPort.run_webkit_unit_tests_command):

  • Scripts/webkitpy/common/config/ports_mock.py:

(MockPort.unit_tests_results_path):

  • Scripts/webkitpy/common/net/layouttestresults.py:

(LayoutTestResults.init):
(LayoutTestResults.failing_tests):
(LayoutTestResults):
(LayoutTestResults.add_unit_test_failures):

  • Scripts/webkitpy/common/net/unittestresults.py: Copied from Tools/Scripts/webkitpy/tool/steps/runtests_unittest.py.

(UnitTestResults):
(UnitTestResults.results_from_string):

  • Scripts/webkitpy/common/net/unittestresults_unittest.py: Added.

(UnitTestResultsTest):
(UnitTestResultsTest.test_nostring):
(UnitTestResultsTest.test_emptystring):
(UnitTestResultsTest.test_nofailures):
(test_onefailure):
(test_multiple_failures_per_test):

  • Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:

(MockCommitQueue.test_results):
(MockCommitQueue.archive_last_test_results):
(FailingTestCommitQueue.test_results):
(test_flaky_test_failure):
(test_failed_archive):

  • Scripts/webkitpy/tool/bot/layouttestresultsreader.py:

(LayoutTestResultsReader._create_unit_test_results):
(LayoutTestResultsReader.results):

  • Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:

(LayoutTestResultsReaderTest.test_missing_layout_test_results):

  • Scripts/webkitpy/tool/bot/patchanalysistask.py:

(PatchAnalysisTaskDelegate.test_results):
(PatchAnalysisTaskDelegate.archive_last_test_results):
(PatchAnalysisTask._test):
(PatchAnalysisTask._build_and_test_without_patch):
(PatchAnalysisTask._test_patch):

  • Scripts/webkitpy/tool/commands/earlywarningsystem.py:

(AbstractEarlyWarningSystem.test_results):
(AbstractEarlyWarningSystem.archive_last_test_results):

  • Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:

(EarlyWarningSytemTest._test_testing_ews):

  • Scripts/webkitpy/tool/commands/queues.py:

(CommitQueue.test_results):
(CommitQueue.archive_last_test_results):

  • Scripts/webkitpy/tool/commands/queues_unittest.py:

(CommitQueueTest.test_commit_queue):
(test_rollout):
(test_manual_reject_during_processing):

  • Scripts/webkitpy/tool/steps/runtests.py:

(RunTests.run):

  • Scripts/webkitpy/tool/steps/runtests_unittest.py:

(RunTestsTest.test_webkit_run_unit_tests):

14:38 Changeset [113498] by jer.noble@apple.com
  • 5 edits in trunk

Foreground of apple.com/iphone video page visible during full screen animation.
https://bugs.webkit.org/show_bug.cgi?id=83080

Reviewed by Simon Fraser.

Source/WebCore:

No new tests; updated fullscreen/full-screen-stacking-context.html

The apple.com/iphone video page uses a -webkit-mask: CSS style, which creates a stacking
context and causes the page to pop in front of the full screen renderer. Add all the
styles suggested by the W3C full screen spec to the -webkit-full-screen-ancestor rule
to keep these stacking contexts from being created.

  • css/fullscreen.css:

(:-webkit-full-screen-ancestor:not(iframe)):

LayoutTests:

  • fullscreen/full-screen-stacking-context.html:
  • platform/mac/fullscreen/full-screen-stacking-context-expected.png:
14:32 Changeset [113497] by inferno@chromium.org
  • 9 edits in trunk/Source/WebCore

Virtualize createAnonymousBoxWithSameTypeAs.
https://bugs.webkit.org/show_bug.cgi?id=83229

Reviewed by Julien Chaffraix.

This helps to use the same function to create anonymous
table parts and in the future extend to more classes
derived from RenderBox.

The current switch case situation was going to be messy as
we will need to mix cases that were very dependent on the
class, so it made sense to add a virtual function.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
(WebCore::RenderBlock::createAnonymousBoxWithSameTypeAs):

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderBox.h:

(WebCore::RenderBox::createAnonymousBoxWithSameTypeAs):
(RenderBox):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::splitFlow):

  • rendering/RenderTable.h:

(WebCore::RenderTable::createAnonymousBoxWithSameTypeAs):

  • rendering/RenderTableCell.h:

(WebCore::RenderTableCell::createAnonymousBoxWithSameTypeAs):

  • rendering/RenderTableRow.h:

(WebCore::RenderTableRow::createAnonymousBoxWithSameTypeAs):

  • rendering/RenderTableSection.h:

(WebCore::RenderTableSection::createAnonymousBoxWithSameTypeAs):

14:31 Changeset [113496] by timothy_horton@apple.com
  • 6 edits in trunk

[cg] REGRESSION (r101517): Animating the transform of a <rect> with shape-rendering: crispEdges leaves behind garbage
https://bugs.webkit.org/show_bug.cgi?id=82963
<rdar://problem/11170476>

Reviewed by Simon Fraser.

CoreGraphics can inflate the stroke by 1px when drawing a rectangle
with antialiasing disabled at non-integer coordinates, we need to
compensate by inflating the RenderSVGRect repaint bounds by 1px.

No new tests, as this is not reproducible in DRT or WKTR.

  • rendering/svg/RenderSVGRect.cpp:

(WebCore::RenderSVGRect::createShape):
(WebCore::RenderSVGRect::strokeBoundingBox):

  • rendering/svg/RenderSVGRect.h:

(RenderSVGRect):

New Mac baselines for two tests which have SVG <rect>s with shape-rendering: crispEdges.

  • platform/mac/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt:
  • platform/mac/svg/custom/shape-rendering-expected.txt:
14:19 Changeset [113495] by commit-queue@webkit.org
  • 9 edits in trunk

Tools: Enable MediaSource feature for DumpRenderTree so
MediaSource LayoutTests will pass for Chromium.
https://bugs.webkit.org/show_bug.cgi?id=83053

Patch by Aaron Colwell <acolwell@chromium.org> on 2012-04-06
Reviewed by Dimitri Glazkov.

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests: Fix MediaSource LayoutTests to work with the new XHR behavior
that requires asynchronous requests for the 'arraybuffer'
responseType.
https://bugs.webkit.org/show_bug.cgi?id=83053

Patch by Aaron Colwell <acolwell@chromium.org> on 2012-04-06
Reviewed by Dimitri Glazkov.

  • http/tests/media/media-source/webm/video-media-source-errors.html:
  • http/tests/media/media-source/webm/video-media-source-play.html:
  • http/tests/media/media-source/webm/video-media-source-seek.html:
  • http/tests/media/media-source/webm/video-media-source-state-changes.html:
  • http/tests/media/media-source/webm/webm-media-source.js:

(getData.request.onload):
(createClusterGetFunction.return.if):
(createClusterGetFunction):
(loadWebMData):
(getCluster):
(appendCluster):
(getReadyStateName):
(expectSourceState):
(expectReadyState):

  • platform/chromium/test_expectations.txt:
14:17 Changeset [113494] by simon.fraser@apple.com
  • 2 edits in trunk/Source/WebCore

Avoid trying to set filters on transform layers
https://bugs.webkit.org/show_bug.cgi?id=83344

Reviewed by Dean Jackson.

Return early from GraphicsLayerCA::setFilters() when the filters
haven't changed. This avoids trying to clear filters on CALayers
which never had them, which should both help performance, and avoids
console spew related to setting shadow properties on transform layers.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::setFilters):

14:15 Changeset [113493] by jamesr@google.com
  • 17 edits
    6 adds in trunk

WebGL content swapped at wrong time in threaded compositing mode
https://bugs.webkit.org/show_bug.cgi?id=82275

Reviewed by Kenneth Russell.

Source/WebCore:

When using threaded compositing, we need to defer touching the texture ID being used by the compositor until the
appropriate point in the synchronization routine and not before. Specifically, there is no time at which it is
safe to manipulate the texture the compositor may be using from the main thread. This breaks up the presentation
path into a few pieces (depending on the context attributes) in order to maintain these invariants.

Depending on the context attributes and if we're in threaded mode, there are a few different possible back/front
buffer combinations:

  • When the context is antialiased, we have a multisampled renderbuffer and associated framebuffer.
  • In all cases, we have a color texture back buffer.
  • When preserveDrawingBuffer is set or threaded compositing is enabled, we have a separate color texture as a

front buffer.

The resource update is in two phases. First, on the main thread, we prepare the back buffer. This resolves from
the multisampled FBO into the back color buffer if multisampled and swaps the front / back color buffer textures
if preserveDrawingBuffer is false and we're using separate front / back color buffers. Second, on the compositor
thread, we do a texture copy from the back to the front color buffer if preserveDrawingBuffer is true. After
these steps are complete the main thread is free to manipulate the back buffer color texture without affecting
any resources the compositor is using.

One incidental cleanup this patch also does is remove all state queries from DrawingBuffer::clearFramebuffer().

Tests: fast/canvas/webgl/webgl-composite-modes-repaint.html

fast/canvas/webgl/webgl-composite-modes.html

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::WebGLRenderingContext):
(WebCore::WebGLRenderingContext::clearIfComposited):
(WebCore::WebGLRenderingContext::restoreStateAfterClear):
(WebCore::WebGLRenderingContext::reshape):
(WebCore::WebGLRenderingContext::maybeRestoreContext):

  • html/canvas/WebGLRenderingContext.h:

(WebGLRenderingContext):

  • platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:

(WebCore::DrawingBuffer::DrawingBuffer):
(WebCore):
(WebCore::DrawingBuffer::prepareBackBuffer):
(WebCore::DrawingBuffer::requiresCopyFromBackToFrontBuffer):
(WebCore::DrawingBuffer::frontColorBuffer):

  • platform/graphics/cairo/DrawingBufferCairo.cpp:

(WebCore::DrawingBuffer::DrawingBuffer):
(WebCore):
(WebCore::DrawingBuffer::prepareBackBuffer):
(WebCore::DrawingBuffer::requiresCopyFromBackToFrontBuffer):
(WebCore::DrawingBuffer::frontColorBuffer):

  • platform/graphics/chromium/DrawingBufferChromium.cpp:

(WebCore::generateColorTexture):
(WebCore::DrawingBuffer::DrawingBuffer):
(WebCore::DrawingBuffer::initialize):
(WebCore::DrawingBuffer::prepareBackBuffer):
(WebCore):
(WebCore::DrawingBuffer::requiresCopyFromBackToFrontBuffer):
(WebCore::DrawingBuffer::frontColorBuffer):
(WebCore::DrawingBuffer::platformLayer):

  • platform/graphics/chromium/WebGLLayerChromium.cpp:

(WebCore::WebGLLayerChromium::WebGLLayerChromium):
(WebCore::WebGLLayerChromium::paintContentsIfDirty):
(WebCore::WebGLLayerChromium::updateCompositorResources):
(WebCore::WebGLLayerChromium::paintRenderedResultsToCanvas):
(WebCore::WebGLLayerChromium::setNeedsDisplayRect):
(WebCore::WebGLLayerChromium::setDrawingBuffer):

  • platform/graphics/chromium/WebGLLayerChromium.h:

(WebGLLayerChromium):

  • platform/graphics/clutter/DrawingBufferClutter.cpp:

(WebCore::DrawingBuffer::DrawingBuffer):
(WebCore):
(WebCore::DrawingBuffer::prepareBackBuffer):
(WebCore::DrawingBuffer::requiresCopyFromBackToFrontBuffer):
(WebCore::DrawingBuffer::frontColorBuffer):

  • platform/graphics/filters/FECustomFilter.cpp:

(WebCore::FECustomFilter::initializeContext):

  • platform/graphics/gpu/DrawingBuffer.cpp:

(WebCore::DrawingBuffer::create):
(WebCore::DrawingBuffer::clear):
(WebCore::DrawingBuffer::clearFramebuffer):
(WebCore::DrawingBuffer::reset):
(WebCore::DrawingBuffer::discardResources):

  • platform/graphics/gpu/DrawingBuffer.h:

(DrawingBuffer):

  • platform/graphics/gpu/mac/DrawingBufferMac.mm:

(WebCore::DrawingBuffer::DrawingBuffer):
(WebCore):
(WebCore::DrawingBuffer::prepareBackBuffer):
(WebCore::DrawingBuffer::requiresCopyFromBackToFrontBuffer):
(WebCore::DrawingBuffer::frontColorBuffer):

  • platform/graphics/gpu/qt/DrawingBufferQt.cpp:

(WebCore::DrawingBuffer::DrawingBuffer):
(WebCore::DrawingBuffer::platformLayer):
(WebCore::DrawingBuffer::prepareBackBuffer):
(WebCore::DrawingBuffer::requiresCopyFromBackToFrontBuffer):
(WebCore):
(WebCore::DrawingBuffer::frontColorBuffer):

Source/WebKit/chromium:

  • tests/WebGLLayerChromiumTest.cpp:

(WebKit::TEST):

LayoutTests:

Adds some pixel tests for compositing all different combinations of alpha/antialias/preserveDrawingBuffer on
WebGL content.

  • fast/canvas/webgl/webgl-composite-modes-expected.png: Added.
  • fast/canvas/webgl/webgl-composite-modes-expected.txt: Added.
  • fast/canvas/webgl/webgl-composite-modes-repaint-expected.png: Added.
  • fast/canvas/webgl/webgl-composite-modes-repaint-expected.txt: Added.
  • fast/canvas/webgl/webgl-composite-modes-repaint.html: Added.
  • fast/canvas/webgl/webgl-composite-modes.html: Added.
14:10 Changeset [113492] by tony@chromium.org
  • 29 edits
    6 adds in trunk/LayoutTests

[chromium] Unreviewed, land some mac/win baselines for table tests after r111742.

  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug2123-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug2509-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug34176-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug44505-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla_expected_failures/bugs/bug59252-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla_expected_failures/bugs/bug7243-expected.png:
  • platform/chromium-mac-snowleopard/fast/repaint/scroll-inside-table-cell-expected.png:
  • platform/chromium-mac-snowleopard/fast/repaint/scroll-relative-table-inside-table-cell-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug2123-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug2509-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug34176-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug44505-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug59252-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug7243-expected.png:
  • platform/chromium-mac/fast/repaint/scroll-inside-table-cell-expected.png:
  • platform/chromium-mac/fast/repaint/scroll-relative-table-inside-table-cell-expected.png:
  • platform/chromium-mac/fast/table/cell-pref-width-invalidation-expected.txt: Added.
  • platform/chromium-mac/tables/mozilla/bugs/bug2123-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug2123-expected.txt: Added.
  • platform/chromium-mac/tables/mozilla/bugs/bug2509-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug2509-expected.txt: Added.
  • platform/chromium-mac/tables/mozilla/bugs/bug34176-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug34176-expected.txt: Added.
  • platform/chromium-mac/tables/mozilla/bugs/bug44505-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug44505-expected.txt:
  • platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug59252-expected.png:
  • platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug59252-expected.txt: Added.
  • platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug7243-expected.png:
  • platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug7243-expected.txt: Added.
  • platform/chromium-win/fast/repaint/scroll-inside-table-cell-expected.png:
  • platform/chromium-win/fast/repaint/scroll-relative-table-inside-table-cell-expected.png:
  • platform/chromium-win/tables/mozilla/bugs/bug44505-expected.png:
  • platform/chromium-win/tables/mozilla/bugs/bug44505-expected.txt:
  • platform/chromium/test_expectations.txt:
13:41 Changeset [113491] by jchaffraix@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed build fix after r113486 and r113487.

  • rendering/RenderObject.cpp:

Added missing #include.

  • rendering/RenderView.h:

Removed bad OVERRIDE.

13:20 Changeset [113490] by bdakin@apple.com
  • 7 edits
    9 adds in trunk

https://bugs.webkit.org/show_bug.cgi?id=81939
-webkit-image-set should update dynamically when the device scale factor
changes
-and corresponding-
<rdar://problem/11101108>

Reviewed by Darin Adler.

Source/WebCore:

New member variable to keep track of the scale factor.

  • css/CSSImageSetValue.cpp:

(WebCore::CSSImageSetValue::CSSImageSetValue):
(WebCore::CSSImageSetValue::bestImageForScaleFactor):

Merge the two cachedImageSet functions. There was no need for two functions here.

(WebCore::CSSImageSetValue::cachedImageSet):

cachedOrPendingImageSet() now takes a Document as a parameter so that it can
access the deviceScaleFactor. If there is a cached image already and the
Document's deviceScaleFactor doesn't match m_scaleFactor, then m_imageSet is set
to a pending image so that the best fit image will be reassessed and then
loaded.
(WebCore::CSSImageSetValue::cachedOrPendingImageSet):

  • css/CSSImageSetValue.h:

(WebCore):
(CSSImageSetValue):

cachedOrPendingImageSet() now takes a Document.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::collectMatchingRulesForList):

StyleCachedImageSet should inherit from CachedImageClient just like
StyleCachedImage. It should add and remove itself as a client upon creation
and destruction, respectively.

  • rendering/style/StyleCachedImageSet.cpp:

(WebCore::StyleCachedImageSet::StyleCachedImageSet):
(WebCore):
(WebCore::StyleCachedImageSet::~StyleCachedImageSet):

  • rendering/style/StyleCachedImageSet.h:

(StyleCachedImageSet):

LayoutTests:

  • fast/hidpi/image-set-background-dynamic.html: Added.
  • fast/hidpi/image-set-border-image-dynamic.html: Added.
  • fast/hidpi/image-set-in-content-dynamic.html: Added.
  • platform/mac/fast/hidpi/image-set-background-dynamic-expected.png: Added.
  • platform/mac/fast/hidpi/image-set-background-dynamic-expected.txt: Added.
  • platform/mac/fast/hidpi/image-set-border-image-dynamic-expected.png: Added.
  • platform/mac/fast/hidpi/image-set-border-image-dynamic-expected.txt: Added.
  • platform/mac/fast/hidpi/image-set-in-content-dynamic-expected.png: Added.
  • platform/mac/fast/hidpi/image-set-in-content-dynamic-expected.txt: Added.
13:12 Changeset [113489] by staikos@webkit.org
  • 2 edits in trunk/Tools

Turn on vibration support for BlackBerry.

Reviewed by Rob Buis.

  • Scripts/build-webkit:
13:07 Changeset [113488] by schenney@chromium.org
  • 2 edits
    2 adds in trunk/LayoutTests

[Chromium} Rebaseline some failing Leopard tests
https://bugs.webkit.org/show_bug.cgi?id=83387

Unreviewed chromium test expectations update.

  • platform/chromium-mac-leopard/fast/text/atsui-multiple-renderers-expected.png: Added.
  • platform/chromium-mac-leopard/fast/text/find-kana-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
13:04 Changeset [113487] by leviw@chromium.org
  • 3 edits in trunk/Source/WebCore

Update LayoutUnit usage in RenderView
https://bugs.webkit.org/show_bug.cgi?id=83147

Reviewed by Julien Chaffraix.

Updating the usage of LayoutUnits in RenderView in preparation for sub-pixel layout. This mostly
affects paint and repaint functions, which take LayoutRects up to the RenderView level. This is
necessary as we continue to accumulate sub-pixel offsets up to this level.

No new tests. No change in behavior.

  • rendering/RenderView.cpp:

(WebCore::RenderView::paint): Adding an assert that we're being called to paint on pixel
boundaries. We don't currently ever position RenderViews at sub-pixel offsets.
(WebCore::RenderView::shouldRepaint):
(WebCore::RenderView::repaintViewRectangle): Switching to a LayoutRect and cleaning up a fixme
that used decomposed offsets. Pixel snapping is applied before handing the rect up to the
FrameView.
(WebCore::RenderView::repaintRectangleInViewAndCompositedLayers): Pixel snapping before handing
the rect up to the Compositor.
(WebCore::RenderView::computeRectForRepaint):
(WebCore::RenderView::selectionBounds):
(WebCore::RenderView::viewRect):
(WebCore::RenderView::unscaledDocumentRect):

  • rendering/RenderView.h:

(RenderView):

13:02 Changeset [113486] by timothy_horton@apple.com
  • 59 edits
    17 adds in trunk

Add autodetection of image orientation from EXIF information
https://bugs.webkit.org/show_bug.cgi?id=19688
<rdar://problem/4126979> and <rdar://problem/11091578>

Original patch by David Carson and Eric Seidel.

Reviewed by Simon Fraser.

Add support for respecting EXIF image orientation, enabled by default for ImageDocuments.
The setting shouldRespectImageOrientation causes orientation to take effect for any image included via <img>.

Test: fast/images/exif-orientation.html, fast/images/exif-orientation-css.html

File list truncated because it's very long.

12:58 Changeset [113485] by jsbell@chromium.org
  • 3 edits in trunk/LayoutTests

IndexedDB: Race condition in layout test logging from window and worker
https://bugs.webkit.org/show_bug.cgi?id=83378

The sequencing of logging directly from window vs. logging via posted events
from a worker is racy, making this test flake when run under Chromium. Removed
the sensitive logging on the window side; the test logic is unaffected as the
blocked/success event sequence would not be present if the window handler was
not run.

Reviewed by Tony Chang.

  • storage/indexeddb/dont-commit-on-blocked-expected.txt:
  • storage/indexeddb/dont-commit-on-blocked.html:
12:54 Changeset [113484] by leviw@chromium.org
  • 4 edits in trunk/Source

Correct LayoutUnit usgae in RenderThemeQt and RenderThemeQStyle
https://bugs.webkit.org/show_bug.cgi?id=83376

Reviewed by Eric Seidel.

Source/WebCore:

Correcting LayoutUnit usage in QT RenderTheme code.

No new tests. No change in behavior.

  • platform/qt/RenderThemeQt.cpp:

(WebCore::RenderThemeQt::convertToPaintingRect): Rounding the ancestor offset before
applying it to the pixel snapped partRect.
(WebCore::RenderThemeQt::paintSearchFieldCancelButton): Also rounding the ancestor
offset, and also pixel snapping the content rect before painting.

Source/WebKit/qt:

Calculating the progress animation using the pixel-snapped RenderProgress size instead
of the internal sub-pixel version.

  • WebCoreSupport/RenderThemeQStyle.cpp:

(WebCore::RenderThemeQStyle::animationDurationForProgressBar):

12:47 Changeset [113483] by commit-queue@webkit.org
  • 8 edits
    6 moves
    13 adds
    12 deletes in trunk/LayoutTests

[chromium] Rebaseline svg/clip-path/deep-nested-clip-in-mask* expectations
https://bugs.webkit.org/show_bug.cgi?id=83368

Unreviewed Chromium expectations rebaseline.

Patch by Florin Malita <fmalita@google.com> on 2012-04-06

  • platform/chromium-mac-leopard/svg/clip-path/clip-path-pixelation-expected.png:
  • platform/chromium-mac-leopard/svg/clip-path/deep-nested-clip-in-mask-expected.png:
  • platform/chromium-mac-leopard/svg/clip-path/deep-nested-clip-in-mask-panning-expected.png:
  • platform/chromium-mac-snowleopard/svg/clip-path/clip-in-mask-expected.png: Removed.
  • platform/chromium-mac-snowleopard/svg/clip-path/clip-path-pixelation-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/clip-path/deep-nested-clip-in-mask-expected.png:
  • platform/chromium-mac-snowleopard/svg/clip-path/deep-nested-clip-in-mask-panning-expected.png:
  • platform/chromium-mac-snowleopard/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.png: Removed.
  • platform/chromium-mac-snowleopard/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.png: Removed.
  • platform/chromium-mac-snowleopard/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.png: Removed.
  • platform/chromium-mac/svg/clip-path/clip-in-mask-expected.png: Added.
  • platform/chromium-mac/svg/clip-path/clip-path-pixelation-expected.png:
  • platform/chromium-mac/svg/clip-path/deep-nested-clip-in-mask-expected.png: Added.
  • platform/chromium-mac/svg/clip-path/deep-nested-clip-in-mask-panning-expected.png: Added.
  • platform/chromium-mac/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.png: Added.
  • platform/chromium-mac/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.png: Added.
  • platform/chromium-mac/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.png: Added.
  • platform/chromium-win/svg/clip-path/clip-in-mask-expected.png: Added.
  • platform/chromium-win/svg/clip-path/deep-nested-clip-in-mask-expected.png: Added.
  • platform/chromium-win/svg/clip-path/deep-nested-clip-in-mask-expected.txt: Renamed from LayoutTests/platform/chromium-linux/svg/clip-path/deep-nested-clip-in-mask-expected.txt.
  • platform/chromium-win/svg/clip-path/deep-nested-clip-in-mask-panning-expected.png: Added.
  • platform/chromium-win/svg/clip-path/deep-nested-clip-in-mask-panning-expected.txt: Renamed from LayoutTests/platform/chromium-linux/svg/clip-path/deep-nested-clip-in-mask-panning-expected.txt.
  • platform/chromium-win/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.png: Added.
  • platform/chromium-win/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.png: Added.
  • platform/chromium-win/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.png: Added.
  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/clip-path/clip-in-mask-expected.txt: Removed.
  • platform/mac/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.txt: Removed.
  • platform/mac/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.txt: Removed.
  • platform/mac/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.txt: Removed.
  • platform/qt/svg/clip-path/clip-in-mask-expected.txt: Removed.
  • platform/qt/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.txt: Removed.
  • platform/qt/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.txt: Removed.
  • platform/qt/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.txt: Removed.
  • svg/clip-path/clip-in-mask-expected.txt: Renamed from LayoutTests/platform/gtk/svg/clip-path/clip-in-mask-expected.txt.
  • svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.txt: Renamed from LayoutTests/platform/gtk/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.txt.
  • svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.txt: Renamed from LayoutTests/platform/gtk/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.txt.
  • svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.txt: Renamed from LayoutTests/platform/gtk/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.txt.
12:43 Changeset [113482] by schenney@chromium.org
  • 3 edits
    1 add
    1 delete in trunk/LayoutTests

Font-related tests are flaky on Chromium (sometimes glyphs don't draw)
https://bugs.webkit.org/show_bug.cgi?id=66908

Unreviewed chromium test expectations update.

  • platform/chromium-mac-snowleopard/svg/custom/svg-fonts-fallback-expected.png: Removed.
  • platform/chromium-mac/platform/chromium/virtual/gpu/canvas/philip/tests/2d.text.draw.fontface.notinpage-expected.txt:
  • platform/chromium-mac/svg/custom/svg-fonts-fallback-expected.png: Added.
  • platform/chromium/test_expectations.txt:
12:43 Changeset [113481] by kbr@google.com
  • 2 edits in trunk/Source/WebCore

context-lost.html is failing
https://bugs.webkit.org/show_bug.cgi?id=81325

Reviewed by James Robinson.

Ensure that the DrawingBuffer does not attempt to restore the
TEXTURE_2D binding to an already-deleted texture.

Tested with layout test fast/canvas/webgl/context-lost.html as
well as WebGL conformance tests.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::loseContextImpl):

12:37 Changeset [113480] by commit-queue@webkit.org
  • 5 edits
    2 deletes in trunk

Unreviewed, rolling out r113267.
http://trac.webkit.org/changeset/113267
https://bugs.webkit.org/show_bug.cgi?id=83384

causes dhtml perf regression (Requested by simonjam on
#webkit).

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

Source/WebCore:

  • dom/ChildListMutationScope.cpp:

(ChildListMutationScope::MutationAccumulator):
(WebCore::ChildListMutationScope::MutationAccumulator::isAddedNodeInOrder):
(WebCore::ChildListMutationScope::MutationAccumulator::childAdded):
(WebCore::ChildListMutationScope::MutationAccumulationRouter::childAdded):

  • dom/ChildListMutationScope.h:

(WebCore::ChildListMutationScope::childAdded):
(MutationAccumulationRouter):

  • dom/ContainerNode.cpp:

(WebCore):
(WebCore::ContainerNode::insertBefore):
(WebCore::ContainerNode::replaceChild):
(WebCore::ContainerNode::appendChild):
(WebCore::dispatchChildInsertionEvents):
(WebCore::updateTreeAfterInsertion):

LayoutTests:

  • fast/events/domnodeinserted-entire-fragment-expected.txt: Removed.
  • fast/events/domnodeinserted-entire-fragment.html: Removed.
12:28 Changeset [113479] by schenney@chromium.org
  • 2 edits
    4 deletes in trunk/LayoutTests

6 layout tests known to fail on Mac10.6 with CPU-Skia graphics
https://bugs.webkit.org/show_bug.cgi?id=68436

Unreviewed Chromium test expectations update.

One of the files marked in this bug is a minor rebaselining. Done.

  • platform/chromium-mac-leopard/svg/W3C-SVG-1.1/paths-data-12-t-expected.png: Removed.
  • platform/chromium-mac-leopard/svg/W3C-SVG-1.1/paths-data-12-t-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/paths-data-12-t-expected.png: Removed.
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/paths-data-12-t-expected.txt: Removed.
  • platform/chromium/test_expectations.txt:
12:19 Changeset [113478] by schenney@chromium.org
  • 12 edits
    1 add in trunk/LayoutTests

Rebaseline after Skia 2527 landed
https://bugs.webkit.org/show_bug.cgi?id=83375

Unreviewed update of Chromium test expectations.

Patch by Philip Rogers <pdr@google.com> on 2012-04-06

  • platform/chromium-linux/svg/as-background-image/svg-as-background-5-expected.png:
  • platform/chromium-linux/svg/filters/subRegion-one-effect-expected.png:
  • platform/chromium-linux/svg/filters/subRegion-two-effects-expected.png:
  • platform/chromium-mac-leopard/svg/as-background-image/svg-as-background-5-expected.png:
  • platform/chromium-mac-snowleopard/svg/as-background-image/svg-as-background-5-expected.png:
  • platform/chromium-mac/svg/as-background-image/svg-as-background-5-expected.png: Added.
  • platform/chromium-mac/svg/filters/subRegion-one-effect-expected.png:
  • platform/chromium-mac/svg/filters/subRegion-two-effects-expected.png:
  • platform/chromium-win/svg/as-background-image/svg-as-background-5-expected.png:
  • platform/chromium-win/svg/filters/subRegion-one-effect-expected.png:
  • platform/chromium-win/svg/filters/subRegion-two-effects-expected.png:
  • platform/chromium/test_expectations.txt:
12:16 Changeset [113477] by schenney@chromium.org
  • 7 edits
    1 add
    1 delete in trunk/LayoutTests

Rebaseline after r109097
https://bugs.webkit.org/show_bug.cgi?id=79568

Unreviewed update of test expectations.

Patch by Philip Rogers <pdr@google.com> on 2012-04-06

  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-morph-01-f-expected.txt: Removed.
  • platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png: Added.
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-morph-01-f-expected.txt:
  • platform/chromium/test_expectations.txt:
12:14 Changeset [113476] by schenney@chromium.org
  • 16 edits
    14 adds
    1 delete in trunk/LayoutTests

Rebaseline tests for wk62974
https://bugs.webkit.org/show_bug.cgi?id=62974

Unreviewed test expectations update for Chromium.

Patch by Philip Rogers <pdr@google.com> on 2012-04-06

  • platform/chromium-linux/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt: Added.
  • platform/chromium-linux/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png:
  • platform/chromium-linux/svg/text/text-altglyph-01-b-expected.png:
  • platform/chromium-linux/svg/text/text-text-04-t-expected.png:
  • platform/chromium-linux/svg/text/text-text-06-t-expected.png:
  • platform/chromium-linux/svg/wicd/test-rightsizing-b-expected.png:
  • platform/chromium-mac-leopard/svg/text/text-altglyph-01-b-expected.png: Added.
  • platform/chromium-mac-leopard/svg/text/text-text-04-t-expected.png: Added.
  • platform/chromium-mac-leopard/svg/text/text-text-06-t-expected.png: Added.
  • platform/chromium-mac-leopard/svg/wicd/test-rightsizing-b-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt: Added.
  • platform/chromium-mac-snowleopard/svg/wicd/test-rightsizing-b-expected.png: Added.
  • platform/chromium-mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png: Added.
  • platform/chromium-mac/svg/text/text-altglyph-01-b-expected.png: Added.
  • platform/chromium-mac/svg/text/text-text-04-t-expected.png: Added.
  • platform/chromium-mac/svg/text/text-text-06-t-expected.png: Added.
  • platform/chromium-mac/svg/wicd/test-rightsizing-b-expected.png: Added.
  • platform/chromium-win-vista/svg/wicd: Removed.
  • platform/chromium-win-vista/svg/wicd/test-rightsizing-b-expected.png: Removed.
  • platform/chromium-win-xp/svg/wicd: Added.
  • platform/chromium-win-xp/svg/wicd/test-rightsizing-b-expected.png: Added.
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png:
  • platform/chromium-win/svg/text/text-altglyph-01-b-expected.png:
  • platform/chromium-win/svg/text/text-text-04-t-expected.png:
  • platform/chromium-win/svg/text/text-text-06-t-expected.png:
  • platform/chromium-win/svg/wicd/test-rightsizing-b-expected.png:
  • platform/chromium-win/svg/wicd/test-rightsizing-b-expected.txt:
  • platform/chromium/test_expectations.txt:
12:10 Changeset [113475] by schenney@chromium.org
  • 5 edits
    1 add
    2 deletes in trunk/LayoutTests

[Chromium] Layout Test svg/custom/oversized-pattern-scale.svg and svg/custom/transformed-pattern-clamp-svg-root.svg are flaky
https://bugs.webkit.org/show_bug.cgi?id=68982

Unreviewed Chromium expectations update.

These tests now passing without issue.

  • platform/chromium-linux/svg/custom/oversized-pattern-scale-expected.png: Removed.
  • platform/chromium-mac/svg/custom/oversized-pattern-scale-expected.png: Added.
  • platform/chromium-mac/svg/custom/transformed-pattern-clamp-svg-root-expected.png:
  • platform/chromium-win/svg/custom/oversized-pattern-scale-expected.png:
  • platform/chromium-win/svg/custom/transformed-pattern-clamp-svg-root-expected.png:
  • platform/chromium/svg/custom/oversized-pattern-scale-expected.png: Removed.
  • platform/chromium/test_expectations.txt:
12:07 Changeset [113474] by mrobinson@webkit.org
  • 2 edits
    1 add in trunk/LayoutTests

Unskip some tests that appear to be passing on GTK+ and add a
new baseline to deal with whitespace issues.

  • platform/gtk/Skipped: Unskip some tests passing locally.
  • platform/gtk/plugins/document-open-expected.txt: Added.
12:06 Changeset [113473] by jsbell@chromium.org
  • 8 edits
    1 add in trunk/Source

IndexedDB: ObjectStore/Index shouldn't hold reference to backing store
https://bugs.webkit.org/show_bug.cgi?id=83074

Source/WebCore:

We should be able to collect and close the leveldb backing store as soon as the database
connection is closed, but the IDBObjectStoreBackendImpl and IDBIndexBackendImpl were
holding RefPtrs, and those objects are kept alive by script references.

Replaced RefPtrs to the IDBBackingStore with pointers to the IDBDatabase. On the back end,
IDBDatabaseBackendImpl maintains a RefPtr to the IDBObjectStoreBackendImpl object, so
a raw pointer back is safe. On the front end, the IDBObjectStore maintains a RefPtr to
the IDBDatabase so script can navigate upwards. Ditto on both ends for the ObjectStore/Index
relationship. The frontend objects maintain RefPtrs to the backend objects, so the backend
objects and their owners are maintained as long as there's a script reference.

Also made IDBDatabaseBackendImpl handle a null IDBFactoryBackendImpl pointer, for testing.

Reviewed by Tony Chang.

Tests: webkit_unit_tests --gtest_filter="IDBDatabaseBackendTest.*"

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::~IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::createObjectStore):
(WebCore::IDBDatabaseBackendImpl::loadObjectStores):

  • Modules/indexeddb/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
(WebCore::IDBIndexBackendImpl::openCursorInternal):
(WebCore::IDBIndexBackendImpl::countInternal):
(WebCore::IDBIndexBackendImpl::getInternal):
(WebCore::IDBIndexBackendImpl::addingKeyAllowed):

  • Modules/indexeddb/IDBIndexBackendImpl.h:

(WebCore::IDBIndexBackendImpl::create):
(IDBIndexBackendImpl):
(WebCore::IDBIndexBackendImpl::backingStore):
(WebCore::IDBIndexBackendImpl::databaseId):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
(WebCore::IDBObjectStoreBackendImpl::getInternal):
(WebCore::IDBObjectStoreBackendImpl::putInternal):
(WebCore::IDBObjectStoreBackendImpl::deleteInternal):
(WebCore::IDBObjectStoreBackendImpl::clearInternal):
(WebCore):
(WebCore::IDBObjectStoreBackendImpl::createIndex):
(WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
(WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal):
(WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
(WebCore::IDBObjectStoreBackendImpl::countInternal):
(WebCore::IDBObjectStoreBackendImpl::loadIndexes):
(WebCore::IDBObjectStoreBackendImpl::genAutoIncrementKey):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.h:

(WebCore::IDBObjectStoreBackendImpl::create):
(IDBObjectStoreBackendImpl):
(WebCore::IDBObjectStoreBackendImpl::backingStore):
(WebCore::IDBObjectStoreBackendImpl::databaseId):

Source/WebKit/chromium:

Reviewed by Tony Chang.

  • WebKit.gypi:
  • tests/IDBDatabaseBackendTest.cpp: Added.

(WebCore):
(MockIDBBackingStore):
(WebCore::TEST):

11:56 Changeset [113472] by jonlee@apple.com
  • 2 edits in trunk/Source/WebCore

Fix build warning on const long long to int implicit conversion.

  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):

11:55 Changeset [113471] by eae@chromium.org
  • 3 edits in trunk/Source/WebCore

Fix LayoutUnit usage and rounding in RenderBlock and RenderEmbeddedObject
https://bugs.webkit.org/show_bug.cgi?id=83343

Reviewed by Eric Seidel.

Fix usage of LayoutUnits and rounding/pixel snapping in RenderBlock and
RenderEmbeddedObject in preparation for turing on subpixel support.

No new tests, no change in functionality.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::baselinePosition):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::nodeAtPoint):

11:55 Changeset [113470] by schenney@chromium.org
  • 6 edits
    2 adds
    3 deletes in trunk/LayoutTests

Zooming in SVGs in <object> is flakey
https://bugs.webkit.org/show_bug.cgi?id=71673

Unreviewed Chromium test expectations update.

  • platform/chromium-linux-x86/svg/zoom/page: Removed.
  • platform/chromium-linux-x86/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png: Removed.
  • platform/chromium-linux-x86/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt: Removed.
  • platform/chromium-linux/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac-leopard/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac-snowleopard/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt: Removed.
  • platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png: Added.
  • platform/chromium-win-xp/svg/zoom/page: Removed.
  • platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/chromium/test_expectations.txt:
11:50 Changeset [113469] by mrobinson@webkit.org
  • 3 edits in trunk/LayoutTests

[GTK] crash in editing/selection/editable-html-element.html
https://bugs.webkit.org/show_bug.cgi?id=64530

Unskip and rebaseline a test.

  • platform/gtk/Skipped: Unskip this test, because it's passing locally.
  • platform/gtk/editing/selection/editable-html-element-expected.txt:
11:46 Changeset [113468] by mrobinson@webkit.org
  • 5 edits
    1 add in trunk/LayoutTests

REGRESSION(r65062): out of bound access in TextIterator (5 editing tests) on GTK
https://bugs.webkit.org/show_bug.cgi?id=63611

Unskip tests that are now passing and rebaseline ones which
have changed results.

  • platform/gtk/Skipped:
  • platform/gtk/editing/deleting/smart-delete-003-expected.txt:
  • platform/gtk/editing/deleting/smart-delete-004-expected.txt:
  • platform/gtk/editing/pasteboard/paste-text-008-expected.txt:
11:41 Changeset [113467] by mitz@apple.com
  • 12 edits in trunk

<rdar://problem/10912476> HiDPI: Have canvas use a hidpi backing store, but downsample upon access

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig: Added ENABLE_HIGH_DPI_CANVAS.

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig: Added ENABLE_HIGH_DPI_CANVAS.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig: Added ENABLE_HIGH_DPI_CANVAS.

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig: Added ENABLE_HIGH_DPI_CANVAS.

Tools:

  • Scripts/build-webkit: Added high-dpi-canvas option to control ENABLE_HIGH_DPI_CANVAS.

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops: Added ENABLE_HIGH_DPI_CANVAS.
11:34 Changeset [113466] by leviw@chromium.org
  • 6 edits in trunk/Source/WebCore

Update LayoutUnit usage in Editor and Frame
https://bugs.webkit.org/show_bug.cgi?id=83278

Reviewed by Eric Seidel.

Frame and Editor both take input from the embedder, which passes along coordinates in screen
coordinates, which aren't fractional. Updating a few remaining functions to show this, and correcting
some inconsistencies in LayoutUnit usage.

No new tests. No change in behavior.

  • editing/Editor.cpp:

(WebCore::Editor::rangeForPoint): windowToContents returns an IntPoint.
(WebCore::Editor::countMatchesForText): Using enclosingIntRect since we're (fake) repainting the entire
view rect.

  • editing/Editor.h:

(Editor): Correcting mismatched function signature.

  • page/Frame.cpp:

(WebCore::Frame::visiblePositionForPoint): Frame takes points in screen coordinates, usually from the
embedder. Changing these functions to be in IntPoints.
(WebCore::Frame::documentAtPoint): Ditto.
(WebCore::Frame::rangeForPoint): Ditto.

  • page/Frame.h:

(Frame):

  • platform/graphics/IntRect.h:

(enclosingIntRect): Adding an inline no-op copy of the FractionalLayoutRect method enclosingIntRect.

11:34 Changeset [113465] by schenney@chromium.org
  • 2 edits
    7 adds in trunk/LayoutTests

Layout Test svg/text/non-bmp-positioning-lists.svg is failing
https://bugs.webkit.org/show_bug.cgi?id=73494

Unreviewed Chromium test expectations.

The font is not right, but that's not what the test is testing.

  • platform/chromium-linux/svg/text/non-bmp-positioning-lists-expected.png: Added.
  • platform/chromium-linux/svg/text/non-bmp-positioning-lists-expected.txt: Added.
  • platform/chromium-mac-snowleopard/svg/text/non-bmp-positioning-lists-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/text/non-bmp-positioning-lists-expected.txt: Added.
  • platform/chromium-mac/svg/text/non-bmp-positioning-lists-expected.png: Added.
  • platform/chromium-win/svg/text/non-bmp-positioning-lists-expected.png: Added.
  • platform/chromium-win/svg/text/non-bmp-positioning-lists-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
11:30 Changeset [113464] by mrobinson@webkit.org
  • 2 edits in trunk

Fix the GTK+ debug build.

  • Source/autotools/symbols.filter: Add a missing symbol to the symbols.list file.
11:25 Changeset [113463] by schenney@chromium.org
  • 5 edits
    3 adds
    4 deletes in trunk/LayoutTests

SVG filters incorrectly move elements
https://bugs.webkit.org/show_bug.cgi?id=73643

Unreviewed Chromium test expectations update.

  • platform/chromium-linux/svg/as-background-image/svg-as-background-2-expected.png: Removed.
  • platform/chromium-linux/svg/filters/filter-placement-issue-expected.png: Removed.
  • platform/chromium-linux/svg/filters/filterRes2-expected.png: Removed.
  • platform/chromium-mac/svg/filters/filter-placement-issue-expected.png: Added.
  • platform/chromium-mac/svg/filters/filterRes2-expected.png: Modified property svn:mime-type.
  • platform/chromium-win/svg/as-background-image/svg-as-background-2-expected.png:
  • platform/chromium-win/svg/filters/filter-placement-issue-expected.png: Added.
  • platform/chromium-win/svg/filters/filterRes2-expected.png:
  • platform/chromium/test_expectations.txt:
  • platform/efl/svg/as-background-image/svg-as-background-2-expected.txt: Removed.
  • svg/as-background-image/svg-as-background-2-expected.txt: Added.
11:23 Changeset [113462] by tommyw@google.com
  • 12 edits
    3 copies
    1 move
    1 delete in trunk/Source/WebCore

MediaStream API: Deleting the chromium bridge class MediaStreamCenterInternal
https://bugs.webkit.org/show_bug.cgi?id=83167

Reviewed by Adam Barth.

The situation before this patch is that we had a MediaStreamCenter.h with #ifdefs for the chromium specific
private class MediaStreamCenterInternal. This bridge class only shuffled calls between MediaStreamCenter and
WebMediaStreamCenter and was needed before the introduction of Platform.
To get rid of this now unnecessary class I had two alternatives:
1) Sprinkle platform/MediaStreamCenter.h with more #ifdefs, including around the class declaration.
2) Create an abstract base class that the chromium and gstreamer implementations overrides.
My personal preference is 2) since I strongly dislike #ifdefs. The drawback is that MediaStreamCenter now
has a vtable. However since all methods in this class are extremely low-usage it doesn't affect anything
in practice.

No code behaviour changes.

  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • Modules/mediastream/MediaStreamTrack.cpp:

(WebCore::MediaStreamTrack::setEnabled):

  • Modules/mediastream/UserMediaRequest.cpp:
  • Modules/mediastream/UserMediaRequest.h:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • platform/chromium/support/WebMediaStreamSourcesRequest.cpp:
  • platform/mediastream/MediaStreamCenter.cpp:

(WebCore::MediaStreamCenter::MediaStreamCenter):
(WebCore):
(WebCore::MediaStreamCenter::~MediaStreamCenter):

  • platform/mediastream/MediaStreamCenter.h:

(WebCore):
(MediaStreamCenter):

  • platform/mediastream/MediaStreamSourcesQueryClient.h: Copied from Source/WebCore/platform/mediastream/MediaStreamCenter.h.

(WebCore):
(MediaStreamSourcesQueryClient):
(WebCore::MediaStreamSourcesQueryClient::~MediaStreamSourcesQueryClient):

  • platform/mediastream/chromium/MediaStreamCenterChromium.cpp:

(WebCore::MediaStreamCenter::instance):
(WebCore::MediaStreamCenterChromium::MediaStreamCenterChromium):
(WebCore::MediaStreamCenterChromium::~MediaStreamCenterChromium):
(WebCore::MediaStreamCenterChromium::queryMediaStreamSources):
(WebCore::MediaStreamCenterChromium::didSetMediaStreamTrackEnabled):
(WebCore::MediaStreamCenterChromium::didStopLocalMediaStream):
(WebCore::MediaStreamCenterChromium::didConstructMediaStream):
(WebCore::MediaStreamCenterChromium::constructSDP):
(WebCore):
(WebCore::MediaStreamCenterChromium::stopLocalMediaStream):

  • platform/mediastream/chromium/MediaStreamCenterChromium.h: Renamed from Source/WebCore/platform/mediastream/chromium/MediaStreamCenterInternal.h.

(WebKit):
(WebCore):
(MediaStreamCenterChromium):

  • platform/mediastream/chromium/MediaStreamCenterInternal.cpp: Removed.
  • platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp: Copied from Source/WebCore/platform/mediastream/MediaStreamCenter.cpp.

(WebCore):
(WebCore::MediaStreamCenter::instance):
(WebCore::MediaStreamCenterGStreamer::MediaStreamCenterGStreamer):
(WebCore::MediaStreamCenterGStreamer::~MediaStreamCenterGStreamer):
(WebCore::MediaStreamCenterGStreamer::queryMediaStreamSources):
(WebCore::MediaStreamCenterGStreamer::didSetMediaStreamTrackEnabled):
(WebCore::MediaStreamCenterGStreamer::didStopLocalMediaStream):
(WebCore::MediaStreamCenterGStreamer::didConstructMediaStream):
(WebCore::MediaStreamCenterGStreamer::constructSDP):

  • platform/mediastream/gstreamer/MediaStreamCenterGStreamer.h: Copied from Source/WebCore/platform/mediastream/MediaStreamCenter.h.

(WebCore):
(MediaStreamCenterGStreamer):

11:17 Changeset [113461] by simon.fraser@apple.com
  • 3 edits
    2 adds in trunk

Should disable preserves3D() for things that enforce flattening, like overflow and filters
https://bugs.webkit.org/show_bug.cgi?id=83337

Source/WebCore:

Reviewed by Dean Jackson.

The CSS3 Transforms spec says that some properties should cause flattening
of things with transform-style: preserve-3d. We currently do this as a side
effect of the GraphicsLayer structure, but we should really do it at the
RenderStyle level, as we do for other things like stacking context creation.

Test: compositing/overflow-trumps-transform-style.html

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::collectMatchingRulesForList):

LayoutTests:

Reviewed by Dean Jackson.

Test for computed style and layer structure combining transform-style
with overflow.

  • compositing/overflow-trumps-transform-style-expected.txt: Added.
  • compositing/overflow-trumps-transform-style.html: Added.
11:07 Changeset [113460] by tommyw@google.com
  • 6 edits in trunk/Source/WebCore

MediaStream API: MediaStreams stops proper cleanup to take place during a page reload.
https://bugs.webkit.org/show_bug.cgi?id=83143

Reviewed by Adam Barth.

To fix this I have converted MediaStream and LocalMediaStream to be ActiveDOMObjects.

Have no idea how to write a test that succesfully verifies this. I have done manual testing
to verify that proper tear-down now takes place.

  • Modules/mediastream/LocalMediaStream.cpp:

(WebCore::LocalMediaStream::create):
(WebCore::LocalMediaStream::stopFunction):
(WebCore):

  • Modules/mediastream/LocalMediaStream.h:

(LocalMediaStream):

  • Modules/mediastream/LocalMediaStream.idl:
  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::create):
(WebCore::MediaStream::MediaStream):
(WebCore::MediaStream::scriptExecutionContext):

  • Modules/mediastream/MediaStream.h:

(MediaStream):

11:06 Changeset [113459] by schenney@chromium.org
  • 4 edits in trunk/LayoutTests

[chromium] Rounding issue on some RenderSVGPath values
https://bugs.webkit.org/show_bug.cgi?id=75367

Unreviewed Chromium expectations update.

These tests have been stable for a long time, and consistent across
all platforms. Whatever was causing previous flakiness is apparently
no longer happening.

  • platform/chromium/svg/css/composite-shadow-example-expected.txt:
  • platform/chromium/svg/css/composite-shadow-with-opacity-expected.txt:
  • platform/chromium/test_expectations.txt:
10:53 Changeset [113458] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] svg/text/text-style-recalc-crash.html times out
https://bugs.webkit.org/show_bug.cgi?id=75696

Unreviewed Chromium test_expectations cleanup.

The test referenced by this bug has not failed in the current history of the flakiness board.

  • platform/chromium/test_expectations.txt:
10:48 Changeset [113457] by mitz@apple.com
  • 12 edits in trunk/Source/WebCore

<rdar://problem/10912476> Pixel access canvas APIs do not work transparently with high-DPI backing store
https://bugs.webkit.org/show_bug.cgi?id=83072

Reviewed by Simon Fraser.

Made getImageData, putImageData, and toDataURL downsample/upsample when pixels in the canvas
backing store are not in a 1:1 ratio to CSS pixels. This makes clients of these APIs
indifferent to the backing store resolution, up to sampling artifacts.

In order for this to work, ImageBuffer has to know and respect the resolutionScale
parameter. This change makes the Core Graphics-based implementation of ImageBuffer do this,
but on other platforms, resolutionScale values other than 1 will not work. Such platforms
should not enable the HIGH_DPI_CANVAS feature.

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::HTMLCanvasElement): Updated a comment.
(WebCore::HTMLCanvasElement::createImageBuffer): Changed to create an ImageBuffer with
the desired resolution instead of 1.

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::drawImage): Removed code that scaled the source rect,
since this is now handled at the ImageBuffer level.
(WebCore::CanvasRenderingContext2D::createImageData): Now returns ImageData of the requested
size regardless of the backing store resolution.
(WebCore::CanvasRenderingContext2D::getImageData): Ditto.

  • platform/graphics/ImageBuffer.h:

(WebCore::ImageBuffer::create): Removed some code that tried to apply the resolution scale
to the buffer after creating it, and changed to pass the resolution scale down to the
(platform-specific) constructor, which can apply it correctly.

  • platform/graphics/cairo/ImageBufferCairo.cpp:

(WebCore::ImageBuffer::ImageBuffer):

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::ImageBuffer): Added a resolutionScale parameter, which is used to
compute the backing buffer size, and to apply a device scale factor to the context.
(WebCore::ImageBuffer::copyImage): Changed to return an image scaled down to the logical
size of the buffer.
(WebCore::ImageBuffer::getUnmultipliedImageData): Changed to pass the resolution scale to
ImageData::getData().
(WebCore::ImageBuffer::getPremultipliedImageData): Ditto.
(WebCore::ImageBuffer::putByteArray): Changed to pass the resolution scale to
ImageData::putData(). When drawing the byte array as an image, changed to preserve the base
CTM in the destination context (thus mapping from image data pixels to backing store pixels).
(WebCore::ImageBuffer::toDataURL): Fixed a CGColorSpace leak. Made the returned image have
the buffer’s logical size instead of the backing buffer’s size.
(WebCore::ImageDataToDataURL): Fixed a CGColorSpace leak.

  • platform/graphics/cg/ImageBufferDataCG.cpp:

(WebCore::ImageBufferData::getData): Added a resolutionScale parameter. The source
coordinates are scaled by the value of that parameter, and a reverse scaling transform
is applied when copying from the backing store into the destination (either explicitly
using Accelerate or implicitly by drawing as an image). Since after scaling,
unpremultiplication and component permutation are done in-place, made the
non-Accelerate code that does these things safe in this case.
(WebCore::ImageBufferData::putData): Added a resolutionScale parameter. The destination
coordinates are scaled by the value of that parameter, and a scaling transform is applied
when copying from the source into the backing store (either explicitly using Accelerate or
implicitly by drawing as an image). Since after scaling, premultiplication and component
permutation are done in-place, made the non-Accelerate code that does these things safe in
this case.

  • platform/graphics/cg/ImageBufferDataCG.h:
  • platform/graphics/qt/ImageBufferQt.cpp:

(WebCore::ImageBuffer::ImageBuffer):

  • platform/graphics/skia/ImageBufferSkia.cpp:

(WebCore::ImageBuffer::ImageBuffer):

  • platform/graphics/wince/ImageBufferWinCE.cpp:

(WebCore::ImageBuffer::ImageBuffer):

  • platform/graphics/wx/ImageBufferWx.cpp:

(WebCore::ImageBuffer::ImageBuffer):

10:37 Changeset [113456] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[chromium] Draw debug borders for tiles on layers with skipsDraw
https://bugs.webkit.org/show_bug.cgi?id=83352

Patch by Dana Jansens <danakj@chromium.org> on 2012-04-06
Reviewed by Adrienne Walker.

The tiles are given the same color as other missing tiles.

  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::CCTiledLayerImpl::appendQuads):

10:35 Changeset [113455] by rwlbuis@webkit.org
  • 10 edits in trunk/Source

Fix cast-align warnings in JSC
https://bugs.webkit.org/show_bug.cgi?id=80790

Reviewed by George Staikos.

Source/JavaScriptCore:

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::computeJumpType):
(JSC::ARMv7Assembler::link):

  • assembler/LinkBuffer.h:

(JSC::LinkBuffer::linkCode):

  • heap/MarkStack.cpp:

(JSC::SlotVisitor::copyAndAppend):

  • runtime/JSArray.cpp:

(JSC::JSArray::visitChildren):

  • wtf/RefCountedArray.h:

(WTF::RefCountedArray::Header::payload):

Source/WebCore:

  • platform/graphics/WOFFFileFormat.cpp:

(WebCore::readUInt32):
(WebCore::readUInt16):

  • platform/image-encoders/skia/JPEGImageEncoder.cpp:

(WebCore::preMultipliedBGRAtoRGB):

  • platform/network/MIMESniffing.cpp:
10:31 Changeset [113454] by darin@apple.com
  • 17 edits in trunk/Source

Streamline strtod and fix some related problems
https://bugs.webkit.org/show_bug.cgi?id=82857

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • parser/Lexer.cpp:

(JSC::Lexer<>::lex): Use parseDouble. Since we have already scanned the number
and we know it has only correct characters, leading spaces, trailing junk, and
trailing spaces are not a possibility. No need to add a trailing null character.

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::parseInt): Changed overflow based 10 case to use parseDouble. No need
to allow trailing junk since the code above already allows only numeric digits
in the string. This code path is used only in unusual cases, so it's not
optimized for 8-bit strings, but easily could be.
(JSC::jsStrDecimalLiteral): Removed the allow trailing junk argument to this
function template because all the callers are OK with trailing junk. Use the
parseDouble function. No need to copy the data into a byte buffer, because
parseDouble handles that.
(JSC::toDouble): Got rid of the DisallowTrailingJunk argument to the
jsStrDecimalLiteral function template. That's OK because this function
already checks for trailing junk and handles it appropriately. The old code
path was doing it twice.
(JSC::parseFloat): Got rid of the AllowTrailingJunk argument to the
jsStrDecimalLiteral function template; the template allows junk unconditionally.

  • runtime/LiteralParser.cpp:

(JSC::::Lexer::lexNumber): Use parseDouble. Since we have already scanned the number
and we know it has only correct characters, leading spaces, trailing junk, and
trailing spaces are not a possibility. No need to add a trailing null character.
No need to copy the data into a byte buffer, because parseDouble handles that.
We could optimize the UChar case even more because we know all the characters
are ASCII, but not doing that at this time.

Source/WebCore:

Refactoring of code covered by existing tests.

  • dom/ViewportArguments.cpp:

(WebCore::numericPrefix): Removed a confusing comment that just said
"we tolerate extra characters" in a roundabout way. Made the "ok"
argument optional. Changed to call the new version of charactersToFloat
that returns the number of characters parsed rather than using the
charactersToFloatIgnoringJunk/didReadNumber solution from before.
(WebCore::findSizeValue): Since numericPrefix is guaranteed to return 0
when it can't parse, removed the "ok" code. Also changed the unusual
syntax "float(1.0)" to just "1", which works just as well.
(WebCore::findScaleValue): Ditto.
(WebCore::findUserScalableValue): Ditto.

  • html/parser/HTMLParserIdioms.cpp:

(WebCore::parseToDoubleForNumberType): Removed an unneeded code path
and replaced it with an assertion; toDouble no longer will return infinity
or not-a-number values.

Source/WTF:

Replaced the strtod function template with a parseDouble function, eliminating
the following unneeded features:

  • need for a trailing null character and a call to strlen
  • needless conversion of string lengths from size_t to int and back that created the possibility of incorrect truncation
  • one level of function call; use inlining instead
  • construction of the StringToDoubleConverter object; it was used to pass arguments that are known at compile time
  • most of the StringToDoubleConverter::StringToDouble function's body; it was code we did not need
  • parsing of Infinity and NaN at the strtod level; added recently when we moved from the old strtod to the new one, and not needed or helpful at this level
  • multiple copies of code to narrow to single byte strings; in many cases this was done even when starting with an LChar string that is already single-byte, now we handle this with an overload of parseDouble
  • wtf/dtoa.cpp:

Removed a long comment about the original strtod function that no longer
applies since we deleted that function long ago. Removed a lot of includes.
Removed the strtod function templates and its instantiations, since they
are now replaced by the parseDouble function.
(WTF::Internal::parseDoubleFromLongString): Added.

  • wtf/dtoa.h:

Added an include of ASCIICType.h so we can use isASCII in a function in this
header. Left the heretofore unneeded include of double-conversion.h, since we
now want to use it in a function in this header. Removed the AllowTrailingJunkTag
and AllowTrailingSpacesTag enumerations and the strtod function template. Added
new parseDouble function, and inline implementation of it.

  • wtf/dtoa/double-conversion.cc: Removed quite a bit of unused code, hardcoding

all the StringToDouble function arguments that come from data members so it can
be a much smaller static member function. Also changed the types of arguments
from int to size_t.

  • wtf/dtoa/double-conversion.h: Removed most of the StringToDoubleConverter

class, leaving only the conversion function as a static member function.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::toDouble): Got rid of didReadNumber.
(WTF::StringImpl::toFloat): Ditto.

  • wtf/text/StringImpl.h: Ditto.
  • wtf/text/WTFString.cpp:

(WTF::String::toDouble): Got rid of didReadNumber.
(WTF::String::toFloat): Ditto.
(WTF::toDoubleType): Rewrote this function to use parseDouble. Moved the code
to skip leading spaces here, because other callers of parseDouble don't want
to do that. Repurposed the check for an empty string so it's now the same
code shared by all the "parsed nothing" cases. Removed the code to convert
the buffer to ASCII for two reasons: (1) We don't need that code at all when
CharType is LChar, and (2) We now handle this through the two overloads for
the parseDouble function. Disallowing trailing junk is now handled here,
rather than inside parseDouble.
(WTF::charactersToDouble): Updated for changes to toDoubleType. Removed the
didReadNumber argument.
(WTF::charactersToFloat): Ditto. Also added overloads that return the parsed
length. These are a slightly more powerful way to do what didReadNumber was
used for before.

  • wtf/text/WTFString.h: Added comments, eliminated didReadNumber, and added

overloads of charactersToFloat that replace charactersToFloatIgnoringJunk.

10:29 Changeset [113453] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

[chromium] Surface replica should have a separate quad in the render pass
https://bugs.webkit.org/show_bug.cgi?id=83287

Patch by Dana Jansens <danakj@chromium.org> on 2012-04-06
Reviewed by Adrienne Walker.

Generate separate quads for a RenderSurface and its replica. The replica
quad is drawn independently of the surface itself. This allows us to
cull each one independently.

Covered by existing tests.

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawRenderSurfaceQuad):
(WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):

  • platform/graphics/chromium/cc/CCRenderPass.cpp:

(WebCore::CCRenderPass::appendQuadsForRenderSurfaceLayer):

  • platform/graphics/chromium/cc/CCRenderSurface.cpp:

(WebCore::CCRenderSurface::setScissorRect):
(WebCore):
(WebCore::CCRenderSurface::drawContents):
(WebCore::CCRenderSurface::drawReplica):
(WebCore::CCRenderSurface::hasReplica):

  • platform/graphics/chromium/cc/CCRenderSurface.h:

(CCRenderSurface):

  • platform/graphics/chromium/cc/CCRenderSurfaceDrawQuad.cpp:

(WebCore::CCRenderSurfaceDrawQuad::create):
(WebCore::CCRenderSurfaceDrawQuad::CCRenderSurfaceDrawQuad):

  • platform/graphics/chromium/cc/CCRenderSurfaceDrawQuad.h:

(CCRenderSurfaceDrawQuad):
(WebCore::CCRenderSurfaceDrawQuad::isReplica):

10:22 Changeset [113452] by schenney@chromium.org
  • 5 edits
    4 deletes in trunk/LayoutTests

RenderSVGRoot should inherit from RenderReplaced
https://bugs.webkit.org/show_bug.cgi?id=76446

Unreviewed Chromium expectations update.

Second attempt, after the rebaseline tool put expectations in chromium-linux-x86 instead of chormium-linux.

  • platform/chromium-linux-x86/svg/custom/mouse-move-on-svg-container-expected.png: Removed.
  • platform/chromium-linux-x86/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Removed.
  • platform/chromium-linux-x86/svg/custom/mouse-move-on-svg-root-expected.png: Removed.
  • platform/chromium-linux-x86/svg/custom/mouse-move-on-svg-root-standalone-expected.png: Removed.
  • platform/chromium-linux/svg/custom/mouse-move-on-svg-container-expected.png:
  • platform/chromium-linux/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
  • platform/chromium-linux/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/chromium-linux/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
10:10 Changeset [113451] by paroga@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Remove JSC dependency from GregorianDateTime
https://bugs.webkit.org/show_bug.cgi?id=83290

Reviewed by Geoffrey Garen.

This allows us to move it to WTF later.

  • runtime/DateConstructor.cpp:

(JSC::callDate):

  • runtime/JSDateMath.h:
10:10 Changeset [113450] by mrobinson@webkit.org
  • 35 edits in trunk/Source/WebCore

[GObject bindings] Fix the coding style issues in the generated bindings
https://bugs.webkit.org/show_bug.cgi?id=82080

Reviewed by Kentaro Hara.

No new tests. This is covered by the binding tests.

  • bindings/scripts/CodeGeneratorGObject.pm: Fix most style errors in the generated GObject code.
  • bindings/scripts/test/GObject: Updated the expected results.
10:03 Changeset [113449] by adamk@chromium.org
  • 5 edits in trunk

Remove bogus assert from ChildListMutationScope
https://bugs.webkit.org/show_bug.cgi?id=83336

Reviewed by Ryosuke Niwa.

Source/WebCore:

This assert can trivially be triggered from script, but luckily the
code already behaves correctly without it.

  • dom/ChildListMutationScope.cpp:

(WebCore::ChildListMutationScope::MutationAccumulator::enqueueMutationRecord):

LayoutTests:

Added a test that would trigger the assert.

  • fast/mutation/observe-childList-expected.txt:
  • fast/mutation/observe-childList.html:
09:39 Changeset [113448] by commit-queue@webkit.org
  • 17 edits
    2 adds in trunk/Source/WebCore

Unreviewed, rolling out r113442.
http://trac.webkit.org/changeset/113442
https://bugs.webkit.org/show_bug.cgi?id=83373

for breaking JSC bindings compilation (Requested by pfeldman
on #webkit).

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

  • GNUmakefile.list.am:
  • Target.pri:
  • UseJSC.cmake:
  • UseV8.cmake:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSMutationCallbackCustom.cpp: Added.

(WebCore):
(WebCore::JSMutationCallback::handleEvent):

  • bindings/scripts/CodeGenerator.pm:
  • bindings/scripts/CodeGeneratorJS.pm:

(AddIncludesForTypeInImpl):
(GenerateCallbackHeader):
(GenerateCallbackImplementation):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateCallbackHeader):
(GenerateCallbackImplementation):

  • bindings/scripts/test/JS/JSTestCallback.cpp:

(WebCore::JSTestCallback::callbackWithBoolean):

  • bindings/scripts/test/JS/JSTestCallback.h:

(JSTestCallback):

  • bindings/scripts/test/TestCallback.idl:
  • bindings/scripts/test/V8/V8TestCallback.cpp:

(WebCore::V8TestCallback::callbackWithBoolean):

  • bindings/scripts/test/V8/V8TestCallback.h:

(V8TestCallback):

  • bindings/v8/custom/V8MutationCallbackCustom.cpp: Added.

(WebCore):
(WebCore::V8MutationCallback::handleEvent):

  • dom/MutationCallback.idl:
09:26 Changeset [113447] by leviw@chromium.org
  • 4 edits in branches/subpixellayout/Source

Add transitional abs method to LayoutTypes and remove remaining unnecessary expandedIntSize calls.

09:13 Changeset [113446] by commit-queue@webkit.org
  • 5 edits in trunk

[Gtk] Unskip the video track tests
https://bugs.webkit.org/show_bug.cgi?id=82590

Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-04-06
Reviewed by Martin Robinson.

Source/WebCore:

Enable the video track runtime feature for the Gtk port as well.

No new tests - existing ones will be unskipped.

  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore):

LayoutTests:

Unskip passing video track tests and update expectations
where necessary.

  • platform/gtk/Skipped:
  • platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
09:09 Changeset [113445] by msaboff@apple.com
  • 8 edits in trunk/Source

Call Heap::discardAllCompiledCode() in low memory situations
https://bugs.webkit.org/show_bug.cgi?id=83335

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Restructured Heap::discardAllCompiledCode() to do the "Is JavaScriptRunning?"
check inline so that it can be called directly without this check.

  • heap/Heap.cpp:

(JSC::Heap::discardAllCompiledCode):
(JSC::Heap::collectAllGarbage):

  • heap/Heap.h: Added JS_EXPORT_PRIVATE to discardAllCompiledCode() so it can be

called from WebCore.
(Heap):

  • runtime/JSGlobalData.h: Removed unused " void discardAllCompiledCode()" declaration.

(JSGlobalData):

Source/WebCore:

Added call to discardAllCompiledCode() when under memory pressure.
We can re-JIT as needed. This is similar to what we used to do when we did
a full GC which also cleaned up JIT code. Doing a full GC typically didn't
help our memory situation, in fact it made things worse in the really low
memory situation as it caused more paging.

Added pass through discardAllCompiledCode() method to GCController.

  • bindings/js/GCController.cpp:

(WebCore::GCController::discardAllCompiledCode):
(WebCore):

  • bindings/js/GCController.h:

(GCController):

  • platform/mac/MemoryPressureHandlerMac.mm:

(WebCore::MemoryPressureHandler::releaseMemory):

09:05 Changeset [113444] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/rendering/RenderBlock.cpp

Using pixel snapping instead of flooring for Floating object reporting.

09:04 Changeset [113443] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: on a single click in Timeline overview, make a minimal selection centered around cursor
https://bugs.webkit.org/show_bug.cgi?id=82616

Reviewed by Pavel Feldman.

  • center minimal selection on mouse cursor if the mouse hasn't moved (i.e. we had a click, not drag)
  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineOverviewWindow.prototype._endWindowSelectorDragging):

08:45 Changeset [113442] by haraken@chromium.org
  • 17 edits
    2 deletes in trunk/Source/WebCore

Add CodeGenerator support for sequence<> in callbacks.
https://bugs.webkit.org/show_bug.cgi?id=83233

Patch by Vineet Chaudhary <rgf748@motorola.com> on 2012-04-06
Reviewed by Kentaro Hara.

Tests: TestCallback.idl and fast/mutation/callback-arguments.html should pass even after
the changes.

  • GNUmakefile.list.am: Removed unsued custom files V8MutationCallbackCustom.cpp and JSMutationCallbackCustom.cpp from builds.
  • Target.pri: Ditto.
  • UseJSC.cmake: Ditto.
  • UseV8.cmake: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • bindings/js/JSMutationCallbackCustom.cpp: Removed.
  • bindings/scripts/CodeGeneratorJS.pm:

(AddIncludesForTypeInImpl): Add proper header type.
(GenerateCallbackHeader): Generate declaration for the callback with sequence<T> argument.
(GenerateCallbackImplementation): Generate implementation for the callback with sequence<T> argument.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateCallbackHeader): Generate declaration for the callback with sequence<T> argument.
(GenerateCallbackImplementation): Generate implementation for the callback with sequence<T> argument.

  • bindings/scripts/test/JS/JSTestCallback.cpp: Modified test results of run-bindings-tests.

(WebCore):
(WebCore::JSTestCallback::handleEvent):

  • bindings/scripts/test/JS/JSTestCallback.h: Modified test results of run-bindings-tests.

(JSTestCallback):

  • bindings/scripts/test/TestCallback.idl: Added test callback with sequence<> argument.
  • bindings/scripts/test/V8/V8TestCallback.cpp: Modified test results of run-bindings-tests.

(WebCore):
(WebCore::V8TestCallback::handleEvent):

  • bindings/scripts/test/V8/V8TestCallback.h: Modified test results of run-bindings-tests.

(V8TestCallback):

  • bindings/v8/custom/V8MutationCallbackCustom.cpp: Removed.
  • dom/MutationCallback.idl: Removed custom bindings using sequence<T>.
08:33 Changeset [113441] by pfeldman@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r113431.
http://trac.webkit.org/changeset/113431
https://bugs.webkit.org/show_bug.cgi?id=83372

for breaking at least Chromium compilation (Requested by
pfeldman on #webkit).

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

  • rendering/RenderView.cpp:

(WebCore::RenderView::paint):
(WebCore::RenderView::shouldRepaint):
(WebCore::RenderView::repaintViewRectangle):
(WebCore::RenderView::repaintRectangleInViewAndCompositedLayers):
(WebCore::RenderView::computeRectForRepaint):
(WebCore::RenderView::selectionBounds):
(WebCore::RenderView::viewRect):
(WebCore::RenderView::unscaledDocumentRect):

  • rendering/RenderView.h:

(RenderView):

08:30 Changeset [113440] by pfeldman@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: CodeGeneratorInspector.py: completely switch all domains to 'strict' mode
https://bugs.webkit.org/show_bug.cgi?id=83332

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-04-06
Reviewed by Pavel Feldman.

Hardcoded list of domains is removed from generator. Partial domain sorting is dropped as unneeded.
Types with open propery list are introduced: validator allows undocumented properties for them.

Timeline domain code is patched to do runtimeCast in the last moment because true switching to
type-safe interfaces should take significant time and should be done separately.

  • inspector/CodeGeneratorInspector.py:

(Generator.go):
(Generator.process_event):
(Generator.process_command):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::willSendResourceRequest):
(WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):

08:29 Changeset [113439] by schenney@chromium.org
  • 11 edits
    8 adds in trunk/LayoutTests

RenderSVGRoot should inherit from RenderReplaced
https://bugs.webkit.org/show_bug.cgi?id=76446

Unreviewed Chromium test expectations update.

  • platform/chromium-linux-x86/svg/custom/mouse-move-on-svg-container-expected.png: Added.
  • platform/chromium-linux-x86/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Added.
  • platform/chromium-linux-x86/svg/custom/mouse-move-on-svg-root-expected.png: Added.
  • platform/chromium-linux-x86/svg/custom/mouse-move-on-svg-root-expected.txt: Added.
  • platform/chromium-linux-x86/svg/custom/mouse-move-on-svg-root-standalone-expected.png: Added.
  • platform/chromium-win-vista/svg/custom/mouse-move-on-svg-root-expected.png: Added.
  • platform/chromium-win-vista/svg/custom/mouse-move-on-svg-root-expected.txt: Added.
  • platform/chromium-win-xp/svg/custom/mouse-move-on-svg-root-expected.png: Added.
  • platform/chromium-win/svg/custom/mouse-move-on-svg-container-expected.png:
  • platform/chromium-win/svg/custom/mouse-move-on-svg-container-expected.txt:
  • platform/chromium-win/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
  • platform/chromium-win/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
  • platform/chromium-win/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/chromium-win/svg/custom/mouse-move-on-svg-root-expected.txt:
  • platform/chromium-win/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/chromium-win/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:
  • platform/chromium-win/svg/custom/pointer-events-text-css-transform-expected.txt:
  • platform/chromium/test_expectations.txt:
08:23 Changeset [113438] by pfeldman@chromium.org
  • 14 edits in trunk/Source/WebCore

Web Inspector: CodeGeneratorInspector.py: stop accepting raw InspectorObject in generated setters
https://bugs.webkit.org/show_bug.cgi?id=83327

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-04-06
Reviewed by Pavel Feldman.

Generator fixed to have strict types in generated setter methods.

Client code is switched from InspectorObject's and String's to generated types where
needed.

  • inspector/CodeGeneratorInspector.py:

(AdHocTypeContext):
(format_setter_value_expression):

  • inspector/ConsoleMessage.cpp:

(WebCore::messageSourceValue):
(WebCore::messageTypeValue):
(WebCore::messageLevelValue):
(WebCore::ConsoleMessage::addToFrontend):

  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
(WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):

  • inspector/InspectorApplicationCacheAgent.h:

(InspectorApplicationCacheAgent):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::asInspectorStyleSheet):
(WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
(WebCore::InspectorCSSAgent::detectOrigin):

  • inspector/InspectorCSSAgent.h:

(InspectorCSSAgent):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):

  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore):

  • inspector/InspectorMemoryAgent.cpp:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::buildObjectForFrameTree):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::buildObjectForTiming):
(WebCore::buildObjectForCachedResource):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyle::buildObjectForStyle):
(WebCore::InspectorStyleSheet::create):
(WebCore::InspectorStyleSheet::InspectorStyleSheet):
(WebCore::InspectorStyleSheet::buildObjectForRule):
(WebCore::InspectorStyleSheet::resourceStyleSheetText):
(WebCore::InspectorStyleSheet::buildArrayForRuleList):
(WebCore::InspectorStyleSheetForInlineStyle::create):
(WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):

  • inspector/InspectorStyleSheet.h:

(InspectorCSSId):
(WebCore::InspectorCSSId::asProtocolValue): method is made template as now it returns 2 formally different types.
(InspectorStyleSheet):
(WebCore::InspectorStyleSheet::canBind):
(InspectorStyleSheetForInlineStyle):

08:17 Changeset [113437] by pfeldman@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: highlight diff in the gutter, not in the line content.
https://bugs.webkit.org/show_bug.cgi?id=83371

Reviewed by Yury Semikhatsky.

Now that the editing mode is enabled by default, diff highlighting gets annoying.
I am moving it to the gutter (same decoration as before, but now coloring gutter only).

  • inspector/front-end/TextViewer.js:

(WebInspector.TextEditorGutterPanel.prototype.textChanged):

  • inspector/front-end/textViewer.css:

(.diff-container .webkit-added-line.webkit-line-number):
(.diff-container .webkit-removed-line.webkit-line-number):
(.diff-container .webkit-changed-line.webkit-line-number):

08:08 Changeset [113436] by schenney@chromium.org
  • 10 edits
    12 adds in trunk/LayoutTests

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Unreviewed Chromium expectations update.

  • platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-win-xp/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-win-xp/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-win-xp/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-win-xp/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • platform/chromium-win/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png:
  • platform/chromium-win/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/chromium-win/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png:
  • platform/chromium-win/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt:
  • platform/chromium-win/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png:
  • platform/chromium-win/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt:
  • platform/chromium-win/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png:
  • platform/chromium-win/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/chromium/test_expectations.txt:
08:04 Changeset [113435] by pfeldman@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: remove url from the saved urls map before the save action.
https://bugs.webkit.org/show_bug.cgi?id=83364

Reviewed by Yury Semikhatsky.

URL gets added back upon successful save anyways, but if user chooses cancel saving,
we stop bugging him with the save-as dialog.

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkLogView.prototype._exportAll):
(WebInspector.NetworkLogView.prototype._exportResource):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.FrameResourceTreeElement.prototype._appendSaveAsAction.doSave):
(WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent.doSave):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextViewer.prototype._contextMenu):
(WebInspector.TextViewer.prototype._commitEditing):

  • inspector/front-end/TimelineModel.js:

(WebInspector.TimelineModel.prototype.saveToFile):

  • inspector/front-end/inspector.js:
07:43 Changeset [113434] by caseq@chromium.org
  • 8 edits in trunk/Source/WebCore

Web Inspector: display frame details in popover on frame strip in Timeline panel
https://bugs.webkit.org/show_bug.cgi?id=83365

Reviewed by Pavel Feldman.

  • added popovers for frame strips;
  • factored out generateAggregatedInfo for reuse in the above;
  • made frame event dividers thinner, darker and greyer.
  • English.lproj/localizedStrings.js: Added "FPS" and "Frame"
  • inspector/front-end/TimelineFrameController.js:

(WebInspector.TimelineFrameController.prototype._flushFrame): added startTimeOffset.
(WebInspector.TimelineFrameController.prototype._createSyntheticFrame): ditto.

  • inspector/front-end/TimelineModel.js:

(WebInspector.TimelineModel.prototype._updateBoundaries):
(WebInspector.TimelineModel.prototype.recordOffsetInSeconds):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._updateFrames): added link to frame to strip div.
(WebInspector.TimelinePanel.prototype._refresh):
(WebInspector.TimelinePanel.prototype._getPopoverAnchor): handle frame anchors separately.
(WebInspector.TimelinePanel.prototype._mouseMove): ditto.
(WebInspector.TimelinePanel.prototype._showPopover):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.Record.prototype.generatePopupContent):
(WebInspector.TimelinePresentationModel._generateAggregatedInfo): factored out for reuse.
(WebInspector.TimelinePresentationModel.generatePopupContentForFrame):

  • inspector/front-end/inspectorCommon.css:

(.resources-dividers-label-bar):

  • inspector/front-end/timelinePanel.css:

(.timeline .resources-event-divider.timeline-frame-divider): made divider thin and grey.
(.timeline-frame-strip): bumped z-index, added pointer-events: auto.

07:27 Changeset [113433] by pfeldman@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: show "dirty" flag for CSS files edited in the resources panel.
https://bugs.webkit.org/show_bug.cgi?id=83363

Reviewed by Yury Semikhatsky.

Added TextEdited notification into the editable source frame, listening to it
in the resources panel.

  • inspector/front-end/ResourceView.js:

(WebInspector.EditableResourceSourceFrame.prototype._contentChanged):
(WebInspector.EditableResourceSourceFrame.prototype.isDirty):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.FrameResourceTreeElement.prototype._appendRevision):
(WebInspector.FrameResourceTreeElement.prototype.sourceView):
(WebInspector.FrameResourceTreeElement.prototype._sourceViewTextEdited):

07:24 Changeset [113432] by pfeldman@chromium.org
  • 3 edits in branches/chromium/1084

Merge 112841 - Web Inspector: breakpoints are not shown in sidebar pane after switching pretty-print mode.
https://bugs.webkit.org/show_bug.cgi?id=82768

Reviewed by Yury Semikhatsky.

Source/WebCore:

When UISourceCode is replaced with another in ScriptsPanel, newly added
UISourceCode could already have breakpoints. We should iterate over existing
breakpoints and add them to sidebar pane.

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):

LayoutTests:

  • inspector/debugger/script-formatter-breakpoints-expected.txt:
  • inspector/debugger/script-formatter-breakpoints.html:

TBR=podivilov@chromium.org
BUG=122184
Review URL: https://chromiumcodereview.appspot.com/10005037

07:10 Changeset [113431] by leviw@chromium.org
  • 3 edits in trunk/Source/WebCore

Update LayoutUnit usage in RenderView
https://bugs.webkit.org/show_bug.cgi?id=83147

Reviewed by Julien Chaffraix.

Updating the usage of LayoutUnits in RenderView in preparation for sub-pixel layout. This mostly
affects paint and repaint functions, which take LayoutRects up to the RenderView level. This is
necessary as we continue to accumulate sub-pixel offsets up to this level.

No new tests. No change in behavior.

  • rendering/RenderView.cpp:

(WebCore::RenderView::paint): Adding an assert that we're being called to paint on pixel
boundaries. We don't currently ever position RenderViews at sub-pixel offsets.
(WebCore::RenderView::shouldRepaint):
(WebCore::RenderView::repaintViewRectangle): Switching to a LayoutRect and cleaning up a fixme
that used decomposed offsets. Pixel snapping is applied before handing the rect up to the
FrameView.
(WebCore::RenderView::repaintRectangleInViewAndCompositedLayers): Pixel snapping before handing
the rect up to the Compositor.
(WebCore::RenderView::computeRectForRepaint):
(WebCore::RenderView::selectionBounds):
(WebCore::RenderView::viewRect):
(WebCore::RenderView::unscaledDocumentRect):

  • rendering/RenderView.h:

(RenderView):

06:50 Changeset [113430] by leviw@chromium.org
  • 2 edits in branches/subpixellayout/Source/WebCore/platform/win

Cleaning up unneeded FractionalLayoutUnit leakage into Win PopupMenu code.

05:53 Changeset [113429] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Text selection - Can't select texts
https://bugs.webkit.org/show_bug.cgi?id=83355

Fix the problem of not sending out the result of the function
SelectionHandler::regionForTextQuads(). This regression issue
is introduced by the git commit f9446b7d671d48a833ab0acf12b1e20637e0a910.

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2012-04-06
Reviewed by George Staikos.

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::regionForTextQuads):

Add code to return the function result.

05:49 Changeset [113428] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: hide popover on mouseout from anchor
https://bugs.webkit.org/show_bug.cgi?id=83362

Reviewed by Pavel Feldman.

  • start hide popover timer when mouse moves out of popover anchor, as we won't receive mousemove events any more;
  • factored out starting of popover kill timer to a method.
  • inspector/front-end/Popover.js:

(WebInspector.PopoverHelper):
(WebInspector.PopoverHelper.prototype._mouseMove): Factored out StartHidePopoverTimer()
(WebInspector.PopoverHelper.prototype._mouseOut): Just call StartHidePopoverTimer() when mouse moves out of anchor.
(WebInspector.PopoverHelper.prototype._startHidePopoverTimer.doHide):
(WebInspector.PopoverHelper.prototype._startHidePopoverTimer):
(WebInspector.PopoverHelper.prototype._hidePopover): Reset hoverElement (aka anchor) when hiding popover.

05:08 Changeset [113427] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] Unskipped some tests that now pass.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-04-06
Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
05:07 Changeset [113426] by caseq@chromium.org
  • 5 edits in trunk

[Chromium] Web Inspector: getEventListeners(window) crashes on NTP
https://bugs.webkit.org/show_bug.cgi?id=83353

Reviewed by Pavel Feldman.

Source/WebCore:

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::V8InjectedScriptHost::getEventListenersCallback):

LayoutTests:

  • inspector/console/command-line-api-getEventListeners-expected.txt:
  • inspector/console/command-line-api-getEventListeners.html:
03:37 Changeset [113425] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

Touch ChromeClient.h to fix Chromium build.
https://bugs.webkit.org/show_bug.cgi?id=83258

  • page/ChromeClient.h:
03:26 Changeset [113424] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt][Mac] Skip new failing tests to paing the bot green.

  • platform/qt-mac/Skipped:
03:04 Changeset [113423] by ossy@webkit.org
  • 2 edits
    2 adds in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0/svg/as-image/img-preserveAspectRatio-support-1-expected.png: Added.
  • platform/qt-5.0/svg/as-image/img-preserveAspectRatio-support-1-expected.txt: Added.
  • platform/qt-arm/Skipped: Skip new failing tests.
03:01 Changeset [113422] by tkent@chromium.org
  • 6 edits
    3 adds in trunk

Initial LocalizedDateICU.cpp implementation
https://bugs.webkit.org/show_bug.cgi?id=60868

Reviewed by Hajime Morita.

Source/WebCore:

Add LocalizedDateICU.cpp, which supports only Date type. It uses a
short format because a date field is keyboard-editable.
e.g. 5/15/11 in US locale.

  • WebCore.gyp/WebCore.gyp: Exclude LocalizedDateNone.cpp.
  • WebCore.gypi: Add LocalizedDateICU.cpp.
  • platform/text/LocalizedDateICU.cpp: Added.

(WebCore::parseLocalizedDate):
(WebCore::formatLocalizedDate):

LayoutTests:

  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-expected.txt:
  • platform/chromium/fast/forms/date/date-input-visible-strings-expected.txt: Added.
02:02 Changeset [113421] by ossy@webkit.org
  • 6 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, update platform specific expected results.

  • platform/qt/svg/as-image/img-preserveAspectRatio-support-1-expected.txt:
  • platform/qt/svg/as-image/img-preserveAspectRatio-support-2-expected.txt:
  • platform/qt/svg/as-object/object-box-sizing-no-width-height-expected.txt:
  • platform/qt/svg/as-object/svg-embedded-in-html-in-iframe-expected.txt:
  • platform/qt/svg/zoom/page/zoom-mask-with-percentages-expected.txt:
01:39 Changeset [113420] by pfeldman@chromium.org
  • 1 edit in branches/chromium/1084/Source/WebCore/inspector/front-end/inspector.js

Merge 113336 - Web Inspector: CSS file revisions are not restored upon front-end reopen.
https://bugs.webkit.org/show_bug.cgi?id=83292

Reviewed by Yury Semikhatsky.

Populating suggestions before the panel creation now.

  • inspector/front-end/inspector.js:

(WebInspector._doLoadedDoneWithCapabilities.get if):

TBR=pfeldman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10009039

01:29 Changeset [113419] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/Skipped: Unskip tests after r113323.
00:58 Changeset [113418] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

[REGRESSION] Refreshed autofill popup renders garbage
https://bugs.webkit.org/show_bug.cgi?id=83255
http://code.google.com/p/chromium/issues/detail?id=118374

The code used to update only the PopupContainer coordinates as if they were the coordinates relative
to the root view. Instead, a WebWidget positioned relative to the screen origin holds the PopupContainer,
so it is the WebWidget that should be positioned in PopupContainer::refresh(), and the PopupContainer's
location should be (0, 0) (and their sizes should always be equal).

Reviewed by Kent Tamura.

No new tests, as the popup appearance is not testable in WebKit.

  • platform/chromium/PopupContainer.cpp:

(WebCore::PopupContainer::layoutAndCalculateWidgetRect): Variable renamed.
(WebCore::PopupContainer::showPopup): Use m_originalFrameRect rather than frameRect()
for passing into chromeClient.
(WebCore::PopupContainer::showInRect): Set up the correct frameRect() for the container.
(WebCore::PopupContainer::refresh): Resize the container and position the WebWidget correctly.

  • platform/chromium/PopupContainer.h:

(PopupContainer):

00:54 Changeset [113417] by zherczeg@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r113378. ENABLE(MUTATION_OBSERVERS) is disabled so
fast/mutation/clear-transient-without-delivery.html and
fast/mutation/transient-gc-crash.html have been skipped.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-04-06
Reviewed by Zoltan Herczeg.

  • platform/qt/Skipped:
00:45 Changeset [113416] by tkent@chromium.org
  • 11 edits in trunk/Source

Calendar Picker: Add code to open/close the calendar picker
https://bugs.webkit.org/show_bug.cgi?id=83258

Reviewed by Hajime Morita.

Source/WebCore:

No new tests. This code is not used because of no ENABLE_INPUT_TYPE_DATE.

  • WebCore.gypi: Add existing header files.
  • html/DateInputType.cpp:

(WebCore::DateInputType::DateInputType):
Moved from DateInputType.h because the constructor depends on
CalendarPickerElement.
(WebCore::DateInputType::createShadowSubtree):
Store a CalendarPickerElement object.
(WebCore::DateInputType::destroyShadowSubtree):
Release the CalendarPickerElement object.
(WebCore::DateInputType::handleBlurEvent):
Close the calendar picker when the input loses focus.

  • html/DateInputType.h:

(DateInputType):

  • Move the constructor definition to DateInputType.cpp
  • Add function declarations
  • Add m_pickerElement data member.
  • html/shadow/CalendarPickerElement.cpp:

(WebCore::CalendarPickerElement::hostInput): A helper to get the host <input>.
(WebCore::CalendarPickerElement::defaultEventHandler):
If the element is clicked, open a calendar picker.
(WebCore::CalendarPickerElement::openPopup):
Opens a calendar picker by ChromeClient::openPagePopup().
(WebCore::CalendarPickerElement::closePopup):
Closes a calendar picker by ChromeClient::closePagePopup().
(WebCore::CalendarPickerElement::detach):
Closes a calendar picker when the element loses a renderer.

(WebCore::CalendarPickerElement::contentSize):
Provides the initial size of a popup.
(WebCore::addString): A helper for writeDocument().
(WebCore::addJavaScriptString): ditto.
(WebCore::addProperty): ditto.
(WebCore::CalendarPickerElement::writeDocument):
Provides the source of a popup. The function creates a complete HTML with:

  • WebCore/Resources/calendarPicker.css
  • WebCore/Resources/calendarPicker.js
  • An object to pass localization strings and <input> state

(WebCore::CalendarPickerElement::setValueAndClosePopup):
Sets the value from a calendar picker to the <input>.
(WebCore::CalendarPickerElement::didClosePopup):
Clear the popup object.

  • html/shadow/CalendarPickerElement.h:

(CalendarPickerElement): Add declarations.

  • platform/text/LocalizedCalendarICU.cpp:

(WebCore::getFirstDayOfWeek): Make sure this is 0-base. UCAL_SUNDAY is 1.

Source/WebKit/chromium:

  • features.gypi: Enable ENABLE_PAGE_POPUP for non-Android

platforms. This is needed because ENABLE_CALENDAR_PICKER now depends on
ENABLE_PAGE_POPUP.

  • src/ChroemClientImpl.cpp: Add stubs.

(WebKit::ChromeClientImpl::openPagePopup):
(WebKit::ChromeClientImpl::closePagePopup):

  • src/ChromeClientImpl.h: Add declarations of openPagePopup() and closePagePopup().

04/05/12:

22:23 Changeset [113415] by adele@apple.com
  • 4 edits in trunk/Source/WebCore

<rdar://problem/11133179> and https://bugs.webkit.org/show_bug.cgi?id=74129
REGRESSION (SnowLeopard, 5.1.4): All WK2 horizontal scrollbars look broken

Patch by Dan Bernstein, Reviewed by Beth Dakin.

This code assumed that the current CTM wouldn't have extraneous operations built into it,
but this bug is evidence that that assumption was wrong. We should just get the base CTM instead
and apply the device scale factor to it.

No tests added since the SnowLeopard-style scrollbars aren't testable in our regression tests right now.

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::platformApplyDeviceScaleFactor):
(WebCore::GraphicsContext::applyDeviceScaleFactor):

  • platform/graphics/GraphicsContext.h: (GraphicsContext):
  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::platformApplyDeviceScaleFactor):
22:16 Changeset [113414] by yutak@chromium.org
  • 3 edits in trunk/Source/WebCore

Leak in WebSocketChannel with workers/worker-reload.html
https://bugs.webkit.org/show_bug.cgi?id=83345

Reviewed by David Levin.

A speculative fix of memory leaks caused by worker-reload.html.

No new tests, as this change imposes no functional change.

  • Modules/websockets/WorkerThreadableWebSocketChannel.cpp:

(WebCore::WorkerThreadableWebSocketChannel::mainThreadDestroy):
Receive the peer as PassOwnPtr<> so the destructor of the task object can
delete the peer even if the task didn't run before main thread's cleanup period.
(WebCore::WorkerThreadableWebSocketChannel::Bridge::disconnect):

  • Modules/websockets/WorkerThreadableWebSocketChannel.h:

(WorkerThreadableWebSocketChannel):

21:57 Changeset [113413] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

combine two arrays (coreExceptionNames and coreExceptionDescriptions) into one array
https://bugs.webkit.org/show_bug.cgi?id=83141

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-04-05
Reviewed by Adam Barth.

No new tests required.

  • dom/DOMCoreException.cpp:

(CoreException):
(WebCore):
(WebCore::DOMCoreException::initializeDescription):

21:49 Changeset [113412] by mrobinson@webkit.org
  • 3 edits in trunk/LayoutTests

Rebaseline a couple tests for GTK+.

  • platform/gtk/fast/frames/flattening/iframe-flattening-fixed-width-and-height-no-scrolling-expected.txt:
  • platform/gtk/fast/frames/flattening/iframe-flattening-nested-expected.txt:
21:26 Changeset [113411] by rakuco@webkit.org
  • 12 edits in trunk/LayoutTests

[EFL] Gardening; update expctations in fast/css-generated-content.

Mostly adapt to the size changes after the jhbuild and font
commits.

  • platform/efl/fast/css-generated-content/003-expected.txt:
  • platform/efl/fast/css-generated-content/009-expected.png:
  • platform/efl/fast/css-generated-content/009-expected.txt:
  • platform/efl/fast/css-generated-content/013-expected.png:
  • platform/efl/fast/css-generated-content/013-expected.txt:
  • platform/efl/fast/css-generated-content/014-expected.png:
  • platform/efl/fast/css-generated-content/014-expected.txt:
  • platform/efl/fast/css-generated-content/after-duplicated-after-split-expected.png:
  • platform/efl/fast/css-generated-content/after-duplicated-after-split-expected.txt:
  • platform/efl/fast/css-generated-content/inline-display-types-expected.png:
  • platform/efl/fast/css-generated-content/inline-display-types-expected.txt:
21:26 Changeset [113410] by rakuco@webkit.org
  • 7 edits in trunk/LayoutTests

[EFL] Gardening after r110072.

  • platform/efl/fast/clip/008-expected.png:
  • platform/efl/fast/clip/008-expected.txt:
  • platform/efl/fast/clip/011-expected.png:
  • platform/efl/fast/clip/011-expected.txt:
  • platform/efl/fast/clip/012-expected.png:
  • platform/efl/fast/clip/012-expected.txt:
21:26 Changeset [113409] by rakuco@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

[EFL] Gardening after r112112.

  • platform/efl/css2.1/20110323/c543-txt-decor-000-expected.txt: Added.
21:08 Changeset [113408] by rakuco@webkit.org
  • 55 edits
    1 copy
    1 add in trunk/LayoutTests

[EFL] Gardening. Update baselines and expectations in fast/backgrounds, fast/block, fast/box-shadow and fast/box-sizing.

  • platform/efl/fast/backgrounds/001-expected.png:
  • platform/efl/fast/backgrounds/001-expected.txt:
  • platform/efl/fast/backgrounds/animated-svg-as-mask-expected.png:
  • platform/efl/fast/backgrounds/animated-svg-as-mask-expected.txt:
  • platform/efl/fast/backgrounds/background-clip-text-expected.png:
  • platform/efl/fast/backgrounds/background-clip-text-expected.txt:
  • platform/efl/fast/backgrounds/background-inherit-color-bug-expected.png:
  • platform/efl/fast/backgrounds/background-inherit-color-bug-expected.txt:
  • platform/efl/fast/backgrounds/background-leakage-expected.png:
  • platform/efl/fast/backgrounds/background-leakage-expected.txt:
  • platform/efl/fast/backgrounds/background-leakage-transforms-expected.png:
  • platform/efl/fast/backgrounds/background-leakage-transforms-expected.txt:
  • platform/efl/fast/backgrounds/background-origin-root-element-expected.png:
  • platform/efl/fast/backgrounds/background-origin-root-element-expected.txt:
  • platform/efl/fast/backgrounds/background-position-parsing-expected.png:
  • platform/efl/fast/backgrounds/background-position-parsing-expected.txt:
  • platform/efl/fast/backgrounds/body-generated-image-propagated-to-root-expected.png:
  • platform/efl/fast/backgrounds/body-generated-image-propagated-to-root-expected.txt:
  • platform/efl/fast/backgrounds/opacity-on-document-element-expected.png:
  • platform/efl/fast/backgrounds/opacity-on-document-element-expected.txt:
  • platform/efl/fast/backgrounds/quirks-mode-line-box-backgrounds-expected.png:
  • platform/efl/fast/backgrounds/quirks-mode-line-box-backgrounds-expected.txt:
  • platform/efl/fast/backgrounds/repeat/mask-negative-offset-repeat-expected.png:
  • platform/efl/fast/backgrounds/repeat/mask-negative-offset-repeat-expected.txt:
  • platform/efl/fast/backgrounds/repeat/negative-offset-repeat-expected.png:
  • platform/efl/fast/backgrounds/repeat/negative-offset-repeat-expected.txt:
  • platform/efl/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
  • platform/efl/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.txt:
  • platform/efl/fast/backgrounds/size/backgroundSize15-expected.png:
  • platform/efl/fast/backgrounds/size/backgroundSize15-expected.txt:
  • platform/efl/fast/backgrounds/size/backgroundSize16-expected.png:
  • platform/efl/fast/backgrounds/size/backgroundSize16-expected.txt:
  • platform/efl/fast/backgrounds/size/backgroundSize17-expected.png:
  • platform/efl/fast/backgrounds/size/backgroundSize18-expected.png:
  • platform/efl/fast/backgrounds/size/backgroundSize19-expected.png:
  • platform/efl/fast/backgrounds/size/backgroundSize20-expected.png:
  • platform/efl/fast/backgrounds/size/backgroundSize21-expected.png:
  • platform/efl/fast/backgrounds/size/backgroundSize22-expected.png:
  • platform/efl/fast/backgrounds/size/zero-expected.png:
  • platform/efl/fast/backgrounds/size/zero-expected.txt:
  • platform/efl/fast/backgrounds/solid-color-context-restore-expected.png:
  • platform/efl/fast/backgrounds/solid-color-context-restore-expected.txt:
  • platform/efl/fast/backgrounds/svg-as-mask-expected.png: Added.
  • platform/efl/fast/backgrounds/svg-as-mask-expected.txt: Copied from LayoutTests/platform/efl/fast/backgrounds/animated-svg-as-mask-expected.txt.
  • platform/efl/fast/block/float/015-expected.png:
  • platform/efl/fast/block/float/015-expected.txt:
  • platform/efl/fast/box-shadow/basic-shadows-expected.png:
  • platform/efl/fast/box-shadow/basic-shadows-expected.txt:
  • platform/efl/fast/box-shadow/box-shadow-clipped-slices-expected.png:
  • platform/efl/fast/box-shadow/box-shadow-transformed-expected.png:
  • platform/efl/fast/box-shadow/inset-box-shadows-expected.png:
  • platform/efl/fast/box-shadow/inset-expected.png:
  • platform/efl/fast/box-shadow/no-blur-multiple-offsets-expected.png:
  • platform/efl/fast/box-shadow/transform-fringing-expected.png:
  • platform/efl/fast/box-sizing/box-sizing-expected.png:
  • platform/efl/fast/box-sizing/box-sizing-expected.txt:
20:04 Changeset [113407] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Remove intrinsic padding from contentBoxRect(), etc.
https://bugs.webkit.org/show_bug.cgi?id=83092

Patch by David Barton <dbarton@mathscribe.com> on 2012-04-05
Reviewed by Julien Chaffraix.

"Intrinsic padding" does not count as CSS padding, but is treated as padding by basic
layout and rendering code, e.g. RenderBlock::layout(). A lot of code relies on the
equation border-box = content-box + padding + border (+ scrollbars). To keep this valid,
change 5 functions in RenderBox.h to not include intrinsic padding in the content box,
thus reverting to their behavior before the patch for bug 33593. Instead, have
sizingBox(renderer) in CSSComputedStyleDeclaration.cpp explicitly put the intrinsic
padding in computed CSS content-box values [for javascript getComputedStyle()], so the
above equation still also holds for CSS computed values. This seems more consistent with
how the padding...() functions behave since the patch for bug 23487, and will work
better for MathML. For instance, a block's contentLogicalWidth() will be the
availableLogicalWidth() for use by child elements.

No new tests. The only real observable changes are illustrated in the bug 83092 attached
test case and discussion. These are minor and hard to automate.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::sizingBox):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::removeNode):

  • rendering/RenderBox.h:

(WebCore::RenderBox::contentBoxRect):
(WebCore::RenderBox::contentWidth):
(WebCore::RenderBox::contentHeight):
(WebCore::RenderBox::contentLogicalWidth):
(WebCore::RenderBox::contentLogicalHeight):

  • Change these 5 functions to omit intrinsic padding from the content box.
  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::cellBaselinePosition):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::firstLineBoxBaseline):

19:51 Changeset [113406] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk

[BlackBerry] Empty Referrer should not be set into ResourceRequest when loading a main resource.
https://bugs.webkit.org/show_bug.cgi?id=83252

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-04-05
Reviewed by George Staikos.

Test: http/tests/misc/resources/referrer-main-resource.php

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::load):

19:48 Changeset [113405] by hbono@chromium.org
  • 5 edits
    2 adds in trunk

[Chromium] moving a cursor on a misspelled word should not remove a misspelled underline
https://bugs.webkit.org/show_bug.cgi?id=83214

Reviewed by Ryosuke Niwa.

When Chrome enables asynchronous spellchecking, it adds Spelling markers in the
background. For this case, moving a cursor should not remove these markers
because it requires Chrome to spellcheck text again. This change prevents
removing Spelling markers added by spellcheckers asynchronously.

Source/WebCore:

Test: platform/chromium/editing/spelling/move-cursor-to-misspelled-word.html

  • editing/Editor.cpp:

(WebCore::Editor::respondToChangedSelection):

Source/WebKit/chromium:

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems): use marker descriptions instead of spellchecking text when Chrome enables asynchronous spellchecking.

LayoutTests:

  • platform/chromium/editing/spelling/move-cursor-to-misspelled-word-expected.txt: Added.
  • platform/chromium/editing/spelling/move-cursor-to-misspelled-word.html: Added.
19:27 Changeset [113404] by staikos@webkit.org
  • 6 edits
    2 adds in trunk

.: Compile the vibration module for BlackBerry.
https://bugs.webkit.org/show_bug.cgi?id=83340

Reviewed by Rob Buis.

  • Source/cmake/OptionsBlackBerry.cmake:

Source/WebKit: Add the vibration client for BlackBerry.
https://bugs.webkit.org/show_bug.cgi?id=83340

Reviewed by Rob Buis.

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry: Add a vibration client for BlackBerry and enable it.
https://bugs.webkit.org/show_bug.cgi?id=83340

Reviewed by Rob Buis.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::init): enable the client

  • WebCoreSupport/VibrationClientBlackBerry.cpp: Added.

(WebCore):
(WebCore::VibrationClientBlackBerry::VibrationClientBlackBerry):
(WebCore::VibrationClientBlackBerry::vibrate):
(WebCore::VibrationClientBlackBerry::cancelVibration):
(WebCore::VibrationClientBlackBerry::vibrationDestroyed):

  • WebCoreSupport/VibrationClientBlackBerry.h: Added.

(WebCore):
(VibrationClientBlackBerry):
(WebCore::VibrationClientBlackBerry::~VibrationClientBlackBerry):

18:29 Changeset [113403] by eae@chromium.org
  • 6 edits in branches/subpixellayout/Source/WebCore

Removed abs(LayoutUnit) on branch as it confused the chromium linux and gtk builds.

18:25 Changeset [113402] by mrobinson@webkit.org
  • 2 edits in trunk/LayoutTests

Unskip a test that should now be passing after r113004

  • platform/gtk/Skipped: Unskip a test that should now be passing.
18:22 Changeset [113401] by mrobinson@webkit.org
  • 2 edits in trunk/LayoutTests

Unskip some tests on GTK+ that should now be passing.

  • platform/gtk/Skipped:
18:18 Changeset [113400] by commit-queue@webkit.org
  • 8 edits in trunk

CSS Exclusions polygon shape arguments should be comma separated
https://bugs.webkit.org/show_bug.cgi?id=82368

Patch by Hans Muller <hmuller@adobe.com> on 2012-04-05
Reviewed by Ryosuke Niwa.

Source/WebCore:

Changed the CSS Parser to accept a conventional comma separated argument list for the
polygon exclusion shape. The syntax had used spaces to separate x,y coordinates, like:
polygon(10px,20px 30px,40px). Now commas separate points: polygon(10px 20px, 30px 40px).
This change is per the draft exclusions spec, http://dev.w3.org/csswg/css3-exclusions.
Additional relevant information about CSS argument list syntax can be found
here: http://dev.w3.org/csswg/css3-values/#component-whitespace.

Factored comma recognition idiom in CSSParser.cpp into isComma() utility function.

The existing tests have been updated.

  • css/CSSParser.cpp:

(WebCore::isComma)
(WebCore::CSSParser::parseFillPosition)
(WebCore::CSSParser::parseFillRepeat)
(WebCore::CSSParser::parseFillProperty)
(WebCore::CSSParser::parseCubicBezierTimingFunctionValue)
(WebCore::CSSParser::parseAnimationTimingFunction)
(WebCore::CSSParser::parseAnimationProperty)
(WebCore::CSSParser::parseExclusionShapePolygon)
(WebCore::CSSParser::parseDeprecatedGradient)
(WebCore::CSSParser::parseRadialGradient)
(WebCore::CSSParser::parseGradientColorStops)
(WebCore::CSSParser::parseImageSet)
(WebCore::filterInfoForName)
(WebCore::CSSParser::parseCustomFilter)
(WebCore::CSSParser::parseFontFeatureSettings)

  • css/CSSWrapShapes.cpp:

(WebCore::CSSWrapShapePolygon::cssText):

LayoutTests:

Updated the tests to match the polygon syntax defined by the draft exclusions
spec - http://dev.w3.org/csswg/css3-exclusions.

  • fast/exclusions/parsing-wrap-shape-inside-expected.txt:
  • fast/exclusions/parsing-wrap-shape-outside-expected.txt:
  • fast/exclusions/script-tests/parsing-wrap-shape-inside.js:
  • fast/exclusions/script-tests/parsing-wrap-shape-outside.js:
18:14 Changeset [113399] by dpranke@chromium.org
  • 4 edits in trunk/Tools

nrwt is failing to upload test results on the chromium-mac-leopard bots
https://bugs.webkit.org/show_bug.cgi?id=83230

Reviewed by Ojan Vafai.

This should fix things properly; FileUploader() was setting the
socket default timeout value, and apparently that doesn't work
properly with urllib. Also, the class had a bad try/finally
block that was causing the exceptions to be swallowed :(.

  • Scripts/webkitpy/common/net/file_uploader.py:

(FileUploader.init):
(FileUploader._upload_data.callback):
(FileUploader):
(FileUploader._upload_data):

  • Scripts/webkitpy/common/net/networktransaction.py:

(NetworkTimeout.str):
(NetworkTransaction.run):

  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:

(JSONResultsGeneratorBase.upload_json_files):

18:06 Changeset [113398] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash when switching to a tab with plug-ins
https://bugs.webkit.org/show_bug.cgi?id=83339
<rdar://problem/11183338>

Reviewed by Oliver Hunt.

Add an additional check so we don't try to call into plug-ins that haven't yet been initialized.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::setLayerHostingMode):

17:56 Changeset [113397] by fischman@chromium.org
  • 3 edits
    2 moves in trunk/LayoutTests

http/tests/media/media-can-load-when-hidden.html doesn't need to be an HTTP test, and is racy
https://bugs.webkit.org/show_bug.cgi?id=83296

Reviewed by Eric Carlson.

  • media/media-can-load-when-hidden-expected.txt: Renamed from LayoutTests/http/tests/media/media-can-load-when-hidden-expected.txt.
  • media/media-can-load-when-hidden.html: Renamed from LayoutTests/http/tests/media/media-can-load-when-hidden.html.
  • platform/chromium/test_expectations.txt:
  • platform/efl/Skipped:
17:12 Changeset [113396] by benjamin@webkit.org
  • 7 edits in trunk/Source/JavaScriptCore

Speed up the conversion from JSValue to String for bulk operations
https://bugs.webkit.org/show_bug.cgi?id=83243

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-05
Reviewed by Geoffrey Garen.

When making operations on primitive types, we loose some time converting
values to JSString in order to extract the string.

This patch speeds up some basic Array operations by avoiding the creation
of intermediary JSString when possible.

For the cases where we need to convert a lot of JSValue in a tight loop,
an inline conversion is used.

  • runtime/ArrayPrototype.cpp:

(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncToLocaleString):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncPush):
(JSC::arrayProtoFuncSort):

  • runtime/CommonIdentifiers.h:
  • runtime/JSArray.cpp:

(JSC::JSArray::sort):

  • runtime/JSString.h:

(JSC::JSValue::toUString):
(JSC):
(JSC::inlineJSValueNotStringtoUString):
(JSC::JSValue::toUStringInline):

  • runtime/JSValue.cpp:

(JSC::JSValue::toUStringSlowCase):
(JSC):

  • runtime/JSValue.h:

(JSValue):

16:54 Changeset [113395] by jsbell@chromium.org
  • 3 edits
    3 adds in trunk

IndexedDB: Support string.length in keyPaths
https://bugs.webkit.org/show_bug.cgi?id=83221

Source/WebCore:

Special case in the IDB spec - keyPaths can reference the |length| property
of string values. Other instrinsic properties (|length| of Array, etc) are
handled automagically. Relevant section of the updated spec is:
http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#key-path-construct

Reviewed by Kentaro Hara.

Test: storage/indexeddb/keypath-intrinsic-properties.html

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore):

LayoutTests:

Reviewed by Kentaro Hara.

  • storage/indexeddb/keypath-intrinsic-properties-expected.txt: Added.
  • storage/indexeddb/keypath-intrinsic-properties.html: Added.
  • storage/indexeddb/resources/keypath-intrinsic-properties.js: Added.

(test.request.onsuccess):
(test):
(openSuccess.request.onsuccess):
(openSuccess):
(testKeyPaths.checkStringLengths.request.onsuccess):
(testKeyPaths.checkStringLengths):
(testKeyPaths.checkArrayLengths.request.onsuccess):
(testKeyPaths.checkArrayLengths):
(testKeyPaths):

16:40 Changeset [113394] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed gardening. Remove some tests that are passing consistently.

  • platform/chromium/test_expectations.txt:
16:28 Changeset [113393] by arv@chromium.org
  • 3 edits
    4 copies in branches/chromium/1084

Merge 113086 - [v8] Fix memory leak in V8LazyEventListener
https://bugs.webkit.org/show_bug.cgi?id=83057

Reviewed by Ojan Vafai.

Source/WebCore:

This also brings the V8 and JSC implementation closer. The timing when we first lookup
the form element is now same in JSC and V8 (but different from Mozilla).

This also clears the strings once the code has been parsed and the function created.

Tests: fast/dom/inline-event-attributes-moved.html

fast/dom/inline-event-attributes-release.html

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::V8LazyEventListener):
(WebCore::V8LazyEventListener::prepareListenerObject):

  • bindings/v8/V8LazyEventListener.h:

(WebCore::V8LazyEventListener::create):
(V8LazyEventListener):

LayoutTests:

  • fast/dom/inline-event-attributes-moved-expected.txt: Added.
  • fast/dom/inline-event-attributes-moved.html: Added.
  • fast/dom/inline-event-attributes-release-expected.txt: Added.
  • fast/dom/inline-event-attributes-release.html: Added.

TBR=arv@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10007027

16:20 Changeset [113392] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed gardening.
fast/js/cross-global-object-inline-global-var.html is flakey on win debug and
fast/forms/select-style.html is consistently passing.

  • platform/chromium/test_expectations.txt:
16:08 Changeset [113391] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Use QuickSort when sorting primitive values by string representation
https://bugs.webkit.org/show_bug.cgi?id=83312

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-05
Reviewed by Gavin Barraclough.

When the value we are sorting are all primitive values, we do not need to
ensure a stable sort as two values with equal string representation are
indistinguishable from JavaScript.

This gives about 16% performance increase when sorting primitive values.

  • runtime/JSArray.cpp:

(JSC::JSArray::sort):

16:00 Changeset [113390] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Update the InstrumentedPlatformCanvas after rebasing Skia
https://bugs.webkit.org/show_bug.cgi?id=83314

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-04-05
Reviewed by George Staikos.

RIM PR: 143771
One new virtual method was added to the SkCanvas, to draw a nine piece
image. Override it and mark output as not being a solid color anymore.

  • platform/graphics/blackberry/InstrumentedPlatformCanvas.h:

(WebCore::InstrumentedPlatformCanvas::drawBitmapNine):
(InstrumentedPlatformCanvas):

15:57 WebKitGTK/1.8.x edited by mrobinson@webkit.org
(diff)
15:51 Changeset [113389] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

SIGILL in JavaScriptCore on a Geode processor
https://bugs.webkit.org/show_bug.cgi?id=82496

Reviewed by Gavin Barraclough.

Don't attempt to use the DFG when SSE2 is not available.

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::canCompileOpcodes):

15:42 Changeset [113388] by dino@apple.com
  • 2 edits in trunk/Source/WebKit2

[mac] requestAnimationFrame sometimes stuck when page loads in a background tab
https://bugs.webkit.org/show_bug.cgi?id=76105

Unreviewed build fix for Windows. windowIsVisible() is PLATFORM(MAC) only.
This means a Page might start requestAnimationFrame-based animations
even when it isn't visible. This should only happen when a Page is
opened in the background though. The regular hide and show should still
pause animations.

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::resumePainting):

15:33 Changeset [113387] by oliver@apple.com
  • 79 edits in trunk/Source/WebCore

Make WebCore use jsCast rather than static_cast for casting JSC objects
https://bugs.webkit.org/show_bug.cgi?id=83320

Reviewed by Stephanie Lewis.

Mechanically replace static_cast with jsCast where ever we can.

  • WebCore.exp.in:
  • bindings/js/DOMWrapperWorld.cpp:

(WebCore::JSStringOwner::finalize):

  • bindings/js/DOMWrapperWorld.h:

(WebCore::currentWorld):

  • bindings/js/JSArrayBufferCustom.cpp:

(WebCore::JSArrayBufferConstructor::constructJSArrayBuffer):

  • bindings/js/JSAudioContextCustom.cpp:

(WebCore::JSAudioContextConstructor::constructJSAudioContext):

  • bindings/js/JSCSSRuleListCustom.cpp:

(WebCore::JSCSSRuleListOwner::isReachableFromOpaqueRoots):

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
(WebCore::cssPropertyGetterCallback):

  • bindings/js/JSCSSValueCustom.cpp:

(WebCore::JSCSSValueOwner::isReachableFromOpaqueRoots):
(WebCore::JSCSSValueOwner::finalize):

  • bindings/js/JSDOMBinding.cpp:

(WebCore::reportException):

  • bindings/js/JSDOMBinding.h:

(WebCore::deprecatedGlobalObjectForPrototype):
(WebCore::getDOMPrototype):

  • bindings/js/JSDOMFormDataCustom.cpp:

(WebCore::toHTMLFormElement):
(WebCore::JSDOMFormDataConstructor::constructJSDOMFormData):

  • bindings/js/JSDOMMimeTypeArrayCustom.cpp:

(WebCore::JSDOMMimeTypeArray::nameGetter):

  • bindings/js/JSDOMPluginArrayCustom.cpp:

(WebCore::JSDOMPluginArray::nameGetter):

  • bindings/js/JSDOMPluginCustom.cpp:

(WebCore::JSDOMPlugin::nameGetter):

  • bindings/js/JSDOMStringMapCustom.cpp:

(WebCore::JSDOMStringMap::nameGetter):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::toJSDOMWindow):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::childFrameGetter):
(WebCore::indexGetter):
(WebCore::namedItemGetter):
(WebCore::toDOMWindow):

  • bindings/js/JSDOMWindowCustom.h:

(WebCore::asJSDOMWindow):

  • bindings/js/JSDOMWindowShell.h:

(WebCore::JSDOMWindowShell::window):

  • bindings/js/JSDOMWrapper.h:

(WebCore::JSDOMWrapper::globalObject):

  • bindings/js/JSDataViewCustom.cpp:

(WebCore::JSDataViewConstructor::constructJSDataView):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • bindings/js/JSEventTarget.cpp:

(WebCore):
(WebCore::toEventTarget):

  • bindings/js/JSFloat32ArrayCustom.cpp:

(WebCore::JSFloat32ArrayConstructor::constructJSFloat32Array):

  • bindings/js/JSFloat64ArrayCustom.cpp:

(WebCore::JSFloat64ArrayConstructor::constructJSFloat64Array):

  • bindings/js/JSGeolocationCustom.cpp:

(WebCore::JSGeolocation::getCurrentPosition):
(WebCore::JSGeolocation::watchPosition):

  • bindings/js/JSHTMLAllCollectionCustom.cpp:

(WebCore::callHTMLAllCollection):
(WebCore::JSHTMLAllCollection::nameGetter):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::JSHTMLCollection::nameGetter):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::nameGetter):

  • bindings/js/JSHTMLFormElementCustom.cpp:

(WebCore::JSHTMLFormElement::nameGetter):

  • bindings/js/JSHTMLFrameSetElementCustom.cpp:

(WebCore::JSHTMLFrameSetElement::nameGetter):

  • bindings/js/JSHTMLOptionsCollectionCustom.cpp:

(WebCore::JSHTMLOptionsCollection::remove):

  • bindings/js/JSImageConstructor.cpp:

(WebCore::constructImage):

  • bindings/js/JSInjectedScriptManager.cpp:

(WebCore::InjectedScriptManager::createInjectedScript):
(WebCore::InjectedScriptManager::discardInjectedScript):
(WebCore::InjectedScriptManager::injectedScriptFor):

  • bindings/js/JSInt16ArrayCustom.cpp:

(WebCore::JSInt16ArrayConstructor::constructJSInt16Array):

  • bindings/js/JSInt32ArrayCustom.cpp:

(WebCore::JSInt32ArrayConstructor::constructJSInt32Array):

  • bindings/js/JSInt8ArrayCustom.cpp:

(WebCore::JSInt8ArrayConstructor::constructJSInt8Array):

  • bindings/js/JSLazyEventListener.cpp:

(WebCore::JSLazyEventListener::initializeJSFunction):

  • bindings/js/JSNamedNodeMapCustom.cpp:

(WebCore::JSNamedNodeMap::nameGetter):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::JSNodeOwner::isReachableFromOpaqueRoots):
(WebCore::JSNodeOwner::finalize):

  • bindings/js/JSNodeCustom.h:

(WebCore::toJS):

  • bindings/js/JSNodeFilterCustom.cpp:

(WebCore::toNodeFilter):

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):
(WebCore::JSNodeList::nameGetter):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::runtimeObjectPropertyGetter):
(WebCore::callPlugin):

  • bindings/js/JSPopStateEventCustom.cpp:

(WebCore::JSPopStateEvent::state):

  • bindings/js/JSSQLTransactionCustom.cpp:

(WebCore::JSSQLTransaction::executeSql):

  • bindings/js/JSSharedWorkerCustom.cpp:

(WebCore::JSSharedWorkerConstructor::constructJSSharedWorker):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::nameGetter):

  • bindings/js/JSStyleSheetListCustom.cpp:

(WebCore::JSStyleSheetList::nameGetter):

  • bindings/js/JSTextTrackCueCustom.cpp:

(WebCore::JSTextTrackCueOwner::isReachableFromOpaqueRoots):

  • bindings/js/JSTextTrackCustom.cpp:

(WebCore::JSTextTrackOwner::isReachableFromOpaqueRoots):

  • bindings/js/JSTextTrackListCustom.cpp:

(WebCore::JSTextTrackListOwner::isReachableFromOpaqueRoots):

  • bindings/js/JSTrackCustom.cpp:

(WebCore::toTrack):

  • bindings/js/JSUint16ArrayCustom.cpp:

(WebCore::JSUint16ArrayConstructor::constructJSUint16Array):

  • bindings/js/JSUint32ArrayCustom.cpp:

(WebCore::JSUint32ArrayConstructor::constructJSUint32Array):

  • bindings/js/JSUint8ArrayCustom.cpp:

(WebCore::JSUint8ArrayConstructor::constructJSUint8Array):

  • bindings/js/JSUint8ClampedArrayCustom.cpp:

(WebCore::JSUint8ClampedArrayConstructor::constructJSUint8ClampedArray):

  • bindings/js/JSWebKitMutationObserverCustom.cpp:

(WebCore::JSWebKitMutationObserverConstructor::constructJSWebKitMutationObserver):

  • bindings/js/JSWebKitPointCustom.cpp:

(WebCore::JSWebKitPointConstructor::constructJSWebKitPoint):

  • bindings/js/JSWebSocketCustom.cpp:

(WebCore::JSWebSocketConstructor::constructJSWebSocket):

  • bindings/js/JSWorkerContextBase.cpp:

(WebCore::toJSDedicatedWorkerContext):
(WebCore::toJSSharedWorkerContext):

  • bindings/js/JSWorkerCustom.cpp:

(WebCore::JSWorkerConstructor::constructJSWorker):

  • bindings/js/JSXSLTProcessorCustom.cpp:

(WebCore::JSXSLTProcessor::importStylesheet):
(WebCore::JSXSLTProcessor::transformToFragment):
(WebCore::JSXSLTProcessor::transformToDocument):

  • bindings/js/ScriptCallStackFactory.cpp:

(WebCore::createScriptCallStackForInspector):

  • bindings/js/ScriptControllerMac.mm:

(WebCore::updateStyleIfNeededForBindings):

  • bindings/js/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::dispatchDidPause):

  • bindings/js/ScriptObject.cpp:

(WebCore::ScriptGlobalObject::set):

  • bindings/js/ScriptState.cpp:

(WebCore::domWindowFromScriptState):
(WebCore::scriptExecutionContextFromScriptState):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneSerializer::fillTransferMap):
(WebCore::CloneSerializer::dumpArrayBufferView):
(WebCore::CloneDeserializer::getJSValue):
(WebCore::CloneDeserializer::readTerminal):

  • bindings/objc/WebScriptObject.mm:

(-[WebScriptObject _isSafeScript]):
(+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(GenerateGetOwnPropertyDescriptorBody):
(GenerateImplementation):
(GenerateCallWith):
(NativeToJSValue):
(GenerateConstructorDefinition):

  • bridge/jni/jni_jsobject.h:
  • bridge/jni/jni_jsobject.mm:

(JavaJSObject::convertJObjectToValue):

  • bridge/jni/jsc/JavaInstanceJSC.cpp:

(JavaInstance::invokeMethod):

  • bridge/objc/objc_utility.mm:

(JSC::Bindings::convertValueToObjcValue):

  • bridge/runtime_method.cpp:

(JSC::callRuntimeMethod):

  • bridge/runtime_object.cpp:

(JSC::Bindings::callRuntimeConstructor):

  • testing/js/WebCoreTestSupport.cpp:

(WebCoreTestSupport::injectInternalsObject):
(WebCoreTestSupport::resetInternalsObject):

15:21 WebKitGTK/1.8.x edited by mrobinson@webkit.org
(diff)
15:18 Changeset [113386] by commit-queue@webkit.org
  • 5 edits
    5 adds in trunk

[GTK] Scrolling some iframes that are partially out of the viewport leads to repaint errors
https://bugs.webkit.org/show_bug.cgi?id=83309

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-04-05
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Test: platform/gtk/fast/frames/scrolling-iframe-out-of-viewport.html

The X11 backing store was not properly trimming the scroll region when it
was only a portion of the screen. This was hidden by subsequent repaints.

  • platform/gtk/GtkWidgetBackingStoreX11.cpp:

(WebCore::WidgetBackingStore::scroll): Fix the calculation of the scrolling region.

Source/WebKit/gtk:

Instead of only updating scrollRect - preservedRegion, update
scrollRect - (preservedRegion - offscreenPreservedRegion). This ensures that
when part of the scroll rect is moved onscreen from offscreen that part is
queued for a redraw.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::scroll): Properly calculate the area to repaint.

LayoutTests:

Added a pixel test for this issue.

  • platform/gtk/fast/frames/resources/scrolling-iframe-out-of-viewport-interior.html: Added.
  • platform/gtk/fast/frames/scrolling-iframe-out-of-viewport-expected.png: Added.
  • platform/gtk/fast/frames/scrolling-iframe-out-of-viewport-expected.txt: Added.
  • platform/gtk/fast/frames/scrolling-iframe-out-of-viewport.html: Added.
15:07 Changeset [113385] by commit-queue@webkit.org
  • 19 edits in trunk

Unreviewed, rolling out r113299.
http://trac.webkit.org/changeset/113299
https://bugs.webkit.org/show_bug.cgi?id=83297

The patch broke 11 tests on Lion. (Requested by jonlee on
#webkit).

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

Source/WebCore:

  • xml/parser/XMLDocumentParser.h:

(XMLDocumentParser):

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::XMLDocumentParser::XMLDocumentParser):
(WebCore::XMLDocumentParser::startElementNs):
(WebCore::XMLDocumentParser::endElementNs):
(WebCore::getEntityHandler):
(WebCore::XMLDocumentParser::initializeParserContext):

LayoutTests:

  • platform/mac-lion/Skipped:
  • platform/mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.txt:
  • platform/mac/svg/custom/preserve-aspect-ratio-syntax-expected.png:
  • platform/mac/svg/custom/preserve-aspect-ratio-syntax-expected.txt:
  • platform/mac/svg/custom/viewbox-syntax-expected.png:
  • platform/mac/svg/custom/viewbox-syntax-expected.txt:
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png:
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt:
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png:
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt:
15:01 Changeset [113384] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Correct misleading trace event names in Canvas2DLayerChromium
https://bugs.webkit.org/show_bug.cgi?id=83310

Patch by Justin Novosad <junov@chromium.org> on 2012-04-05
Reviewed by Adrienne Walker.

  • platform/graphics/chromium/Canvas2DLayerChromium.cpp:

(WebCore::Canvas2DLayerChromium::paintContentsIfDirty):

14:51 Changeset [113383] by eae@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/rendering/RenderInputSpeech.cpp

Cleanyp RenderInputSpeech on branch.

14:32 Changeset [113382] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed, fast/js/keywords-and-reserved_words.html is
passing again after r113352.

  • platform/chromium/test_expectations.txt:
14:29 Changeset [113381] by dino@apple.com
  • 9 edits in trunk

[mac] requestAnimationFrame sometimes stuck when page loads in a background tab https://bugs.webkit.org/show_bug.cgi?id=76105

Reviewed by Simon Fraser.

Source/WebCore:

Fix three issues with requestAnimationFrame:

  • It's possible for the call to rAF to come to the document before there is a page associated. Added a guard for this.
  • A page may try to suspend the scripted animations before the ScriptedAnimationController exists, in which case we need to suspend it immediately after it is created. Do this by keeping track of the state in Page. Otherwise rAF would be busy looping on hidden pages until they are brought to the front and hidden again.
  • A page created in the background (from WebKit1) does not get informed it is not visible. This can mean that resume() is called more times than suspend() and we get into a state where the number of suspensions becomes -1, and thus fails truthiness tests. Clamp it to values >= 0.

No new tests, since this is not automatically testable. The most reliable test
is to open a page with rAF in a background tab within Safari.

  • dom/Document.cpp:

(WebCore::Document::webkitRequestAnimationFrame):

  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::resume):

  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::suspendScriptedAnimations):
(WebCore::Page::resumeScriptedAnimations):

  • page/Page.h:

(WebCore::Page::scriptedAnimationsSuspended):
(Page):

Source/WebKit2:

When we are resuming painting only start the scripted animations
if we're a visible window. This can happen when tabs are opened
in the background.

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::resumePainting):

LayoutTests:

Add fast/animation/request-animation-frame-during-modal.html
to the skipped list. This patch will ensure that non-visible windows
do not get a requestAnimationFrame callback, so the test will timeout.
See https://bugs.webkit.org/show_bug.cgi?id=83239 to re-enable.

  • platform/mac/Skipped:
14:18 Changeset [113380] by tony@chromium.org
  • 1 edit
    1 copy
    1 delete in trunk/LayoutTests

[chromium] Unreviewed, moving linux result from 32-bit directory to 64 and 32 bit directory.

  • platform/chromium-linux/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Renamed from LayoutTests/platform/chromium-linux-x86/svg/clip-path/clip-path-tspan-and-stroke-expected.png.
14:15 Changeset [113379] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

<rdar://problem/9359029> and https://bugs.webkit.org/show_bug.cgi?id=83311 Crashes in WebProcess at WebCore::HistoryController::recursiveSetProvisionalItem when restoring previous session

Reviewed by Sam Weinig.

It's possible to hit a race condition between the UIProcess and the WebProcess where the UIProcess records for a
page have been cleared out but the WebProcess is still trying to perform a history navigation within that page.

In this situation HistoryController code that expects there to always be a current history item in the back/forward
controller is wrong.

No new tests. (The race conditions involved have proven making a test impractical)

  • loader/HistoryController.cpp:

(WebCore::HistoryController::recursiveSetProvisionalItem): Don't ASSERT the fromItem. We now know there might not be one.
(WebCore::HistoryController::recursiveGoToItem): Ditto
(WebCore::HistoryController::itemsAreClones): Always return false if either item is null, as a null item and a non-null

item cannot possible be clones of each other.

14:11 Changeset [113378] by adamk@chromium.org
  • 6 edits
    4 adds in trunk

Crash in MutationObservers due to an invalid HashSet iterator
https://bugs.webkit.org/show_bug.cgi?id=83304

Reviewed by Ojan Vafai.

Source/WebCore:

If the observed node has been GCed when we clear transient observers
from it, the HashSet iterator in WebKitMutationObserver::deliver would
be invalidated. This patch fixes that behavior by copying the relevant
registrations into a seperate vector first and operating on the copy.

This patch also fixes a bug: transient observers should be cleared
after every microtask, not just when delivering.

Tests: fast/mutation/clear-transient-without-delivery.html

fast/mutation/transient-gc-crash.html

  • dom/MutationObserverRegistration.cpp:

(WebCore::MutationObserverRegistration::observedSubtreeNodeWillDetach):
Notify the observer that it has a transient registration so it can be properly cleared.

  • dom/MutationObserverRegistration.h:

(WebCore::MutationObserverRegistration::hasTransientRegistrations):
Add an accessor for use when deliver() creates its vector of registrations.

  • dom/WebKitMutationObserver.cpp:

(WebCore::WebKitMutationObserver::setHasTransientRegistration): Add this to the active observer set
to allow transient registrations to be cleared appropriately.
(WebCore::WebKitMutationObserver::deliver): Avoid modifying m_registrations while iterating over it.
Clear registrations before checking for a lack of records to deliver.

  • dom/WebKitMutationObserver.h:

LayoutTests:

  • fast/mutation/clear-transient-without-delivery-expected.txt: Added.
  • fast/mutation/clear-transient-without-delivery.html: Added.
  • fast/mutation/transient-gc-crash-expected.txt: Added.
  • fast/mutation/transient-gc-crash.html: Added.
14:04 Changeset [113377] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed, update expectation for
media/nodesFromRect-shadowContent.html since it moved in r113371.

  • platform/chromium/test_expectations.txt:
13:53 Changeset [113376] by rafaelw@chromium.org
  • 2 edits in trunk/LayoutTests

Added takeRecords to WebKitMutationObserver properties list, to fix mac.

  • platform/mac/fast/dom/Window/window-properties-expected.txt:
13:52 Changeset [113375] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, fix lint errors in GTK+ test_expectations.txt file.

  • platform/gtk/test_expectations.txt:

http/tests/security/cross-origin-xsl-redirect-BLOCKED.html had 2 entries
and css3/flexbox/inline-flexbox.html doesn't exist anymore.

13:45 Changeset [113374] by adamk@chromium.org
  • 5 edits in trunk/Source/WebCore

Rebaseline binding tests after r113272.

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore::V8TestInterface::constructorCallback):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructorConstructorCallback):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::V8TestObj::constructorCallback):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):

13:44 Changeset [113373] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebCore

[chromium] Drawing an accelerated canvas onto itself is slow.
https://bugs.webkit.org/show_bug.cgi?id=83295

Fixed by using a GPU-side deepCopy() in skia, so we don't trigger a
readback and re-upload.

Reviewed by James Robinson.

Correctness is covered by existing tests. Performance is covered
by the test case attached to the bug.

  • platform/graphics/skia/ImageSkia.cpp:

(WebCore::BitmapImageSingleFrameSkia::create):

13:35 Changeset [113372] by commit-queue@webkit.org
  • 8 edits in trunk/Source

[chromium] Record the number of tiles paint-culled instead of the incorrect number of pixels
https://bugs.webkit.org/show_bug.cgi?id=82423

Patch by Dana Jansens <danakj@chromium.org> on 2012-04-05
Reviewed by Adrienne Walker.

Source/WebCore:

We currently attempt to record the number of pixels we save from uploading,
however the number is wrong in two ways.
1) An early-out if everything is culled results in nothing being reported.
2) With threaded-compositor, the number of pixels uploaded in one tile can be
changed by culling in another tile, making the number far too difficult to
compute to be worthwhile. If a tile was going to be partial-updated, but is
culled, now a new tile gets to be partial-updated instead, which affects the
numbers.

This patch breaks up CCOverdrawMetrics to make the methods/variables less
overloaded and more clear. This way they don't have to mirror each other
so closely on paint/draw sides.

Then we record the number of tiles for which we prevented upload via paint
culling. This will still over-report (a dirty culled tile stays dirty and
will be culled again each commit), but it seems more reasonable as it
clearly does not try to mimic a performance metric in the way that a pixel
count does, but still gives a rough estimation of the amount of paint
culling going on in a page.

Covered by existing tests, modified where needed.

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

  • platform/graphics/chromium/cc/CCOverdrawMetrics.cpp:

(WebCore::CCOverdrawMetrics::CCOverdrawMetrics):
(WebCore::CCOverdrawMetrics::didCullTileForUpload):
(WebCore):
(WebCore::CCOverdrawMetrics::didUpload):
(WebCore::CCOverdrawMetrics::didCullForDrawing):
(WebCore::CCOverdrawMetrics::recordMetrics):
(WebCore::CCOverdrawMetrics::recordMetricsInternal):

  • platform/graphics/chromium/cc/CCOverdrawMetrics.h:

(CCOverdrawMetrics):
(WebCore::CCOverdrawMetrics::pixelsCulledForDrawing):
(WebCore::CCOverdrawMetrics::pixelsUploadedOpaque):
(WebCore::CCOverdrawMetrics::pixelsUploadedTranslucent):
(WebCore::CCOverdrawMetrics::tilesCulledForUpload):

  • platform/graphics/chromium/cc/CCQuadCuller.cpp:

(WebCore::CCQuadCuller::append):

Source/WebKit/chromium:

  • tests/CCQuadCullerTest.cpp:

(WebCore::TEST):

  • tests/TiledLayerChromiumTest.cpp:

(WTF::TEST):

13:34 Changeset [113371] by tonikitoo@webkit.org
  • 2 moves in trunk/LayoutTests/media

2012-04-05 Antonio Gomes <agomes@rim.com>

Move nodesFromRect-shadowContent test from fast/dom to media, where the
helper .js files are able to work properly.
https://bugs.webkit.org/show_bug.cgi?id=80847 (PART III)

Reviewed by Eric Carlson.

  • media/nodesFromRect-shadowContent-expected.txt: Renamed from LayoutTests/fast/dom/nodesFromRect-shadowContent-expected.txt.
  • media/nodesFromRect-shadowContent.html: Renamed from LayoutTests/fast/dom/nodesFromRect-shadowContent.html.
13:32 Changeset [113370] by tony@chromium.org
  • 3 edits in trunk/LayoutTests

[chromium] Unreviewed, update baselines for tests with 'let' after r113352.

  • platform/chromium/fast/js/reserved-words-as-property-expected.txt:
  • platform/chromium/fast/js/reserved-words-strict-expected.txt:
13:31 Changeset [113369] by enrica@apple.com
  • 10 edits
    2 adds in trunk/Source/WebCore

Provide a separate editing command to cleanup of redundant markup.
https://bugs.webkit.org/show_bug.cgi?id=83240

Reviewed by Ryosuke Niwa.

This patch moves the logic originally performed by the private
method removeRedundantMarkup inside ReplaceSelectionCommand into
a separate command. This way the markup cleanup can be exposed as
a separate command, independent from ReplaceSelectionCommand.

No new tests. No change in functionality.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Added new file to project files.

  • editing/EditorAllInOne.cpp: Added SimplifyMarkupCommand.
  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::doApply): Now uses SimplifyMarkupCommand.

  • editing/ReplaceSelectionCommand.h:

(ReplaceSelectionCommand): Removed removeRedundantMarkup.

  • editing/SimplifyMarkupCommand.cpp: Added.

(WebCore::SimplifyMarkupCommand::SimplifyMarkupCommand):
(WebCore::SimplifyMarkupCommand::doApply):

  • editing/SimplifyMarkupCommand.h: Added.

(WebCore::SimplifyMarkupCommand::create):

13:28 Changeset [113368] by schenney@chromium.org
  • 18 edits
    1 add
    4 deletes in trunk/LayoutTests

Rebaseline text results
https://bugs.webkit.org/show_bug.cgi?id=74928

Unreviewed text expectations update.

Patch by Philip Rogers <pdr@google.com> on 2012-04-05

  • platform/chromium-mac-leopard/svg/text/textPathBoundsBug-expected.png: Removed.
  • platform/chromium-mac-leopard/svg/text/textPathBoundsBug-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/svg/text/textPathBoundsBug-expected.txt: Removed.
  • platform/chromium-win-xp/svg/zoom/page: Removed.
  • platform/chromium-win/fast/repaint/reflection-redraw-expected.png:
  • platform/chromium-win/printing/width-overflow-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-60-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-62-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/pservers-grad-07-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/text-align-04-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/text-align-06-b-expected.png:
  • platform/chromium-win/svg/as-background-image/svg-as-background-4-expected.png:
  • platform/chromium-win/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-win/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-win/svg/carto.net/textbox-expected.png:
  • platform/chromium-win/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-win/svg/custom/js-late-clipPath-creation-expected.png:
  • platform/chromium-win/svg/text/scaling-font-with-geometric-precision-expected.png:
  • platform/chromium-win/svg/text/text-align-05-b-expected.png:
  • platform/chromium-win/svg/text/textPathBoundsBug-expected.png:
  • platform/chromium/test_expectations.txt:
  • platform/efl/svg/as-background-image/svg-as-background-4-expected.txt: Removed.
  • svg/as-background-image/svg-as-background-4-expected.txt: Added.
13:26 Changeset [113367] by eae@chromium.org
  • 3 edits in branches/subpixellayout/Source/WebCore

Remove unused ValueToString function on branch.

13:24 Changeset [113366] by schenney@chromium.org
  • 2 edits
    4 adds in trunk/LayoutTests

[Chromium] Layout test failure svg/clip-path/clip-path-tspan-and-stroke.xhtml
https://bugs.webkit.org/show_bug.cgi?id=83308

Unreviewed Chromium test expectations update.

Also removing some expectations that are no longer needed.

  • platform/chromium-linux-x86/svg/clip-path: Added.
  • platform/chromium-linux-x86/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Added.
  • platform/chromium-win/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Added.
  • platform/chromium-win/svg/clip-path/clip-path-tspan-and-stroke-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
13:21 Changeset [113365] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix 32-bit build.

13:14 Changeset [113364] by shawnsingh@chromium.org
  • 7 edits
    2 adds in trunk/Source

[chromium] Need to clip to homogeneous w=0 plane when applying transforms.
https://bugs.webkit.org/show_bug.cgi?id=80806

Reviewed by Adrienne Walker.

Source/WebCore:

Unit tests added to CCLayerTreeHostCommon. This change is also
covered by other existing unit tests and layout tests.

WebCore TransformationMatrix mapRect / mapQuad / projectQuad do
not properly handle the case where a surface is oriented partially
behind the camera, with a perspective projection. In this case,
projected points may appear to be valid in cartesian coordinates,
but they are indeed not valid, and this problem can only be
detected in homogeneous coordinates after applying the transform,
before the divide-by-w step.

The correct solution is to clip geometry where w < 0. This patch
makes this change local to chromium only, to fix rendering bugs
that arise from this problem. The primary fix is to correct
calculateVisibleLayerRect(), but other ancillary locations are
also fixed, in particular, the antialiasing code path is simply
skipped when this case arises.

Eventually this math needs to be merged into TransformationMatrix,
to fix hit-testing bugs that occur in both Chromium and Safari.

  • WebCore.gypi:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::findTileProgramUniforms):
(WebCore::LayerRendererChromium::drawTileQuad):

  • platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:

(WebCore::CCLayerTreeHostCommon::calculateVisibleRect):
(WebCore::isScaleOrTranslation):
(WebCore::calculateDrawTransformsAndVisibilityInternal):

  • platform/graphics/chromium/cc/CCMathUtil.cpp: Added.

(WebCore):
(WebCore::HomogeneousCoordinate::HomogeneousCoordinate):
(HomogeneousCoordinate):
(WebCore::HomogeneousCoordinate::shouldBeClipped):
(WebCore::HomogeneousCoordinate::cartesianPoint2d):
(WebCore::projectPoint):
(WebCore::mapPoint):
(WebCore::computeClippedPointForEdge):
(WebCore::expandBoundsToIncludePoint):
(WebCore::computeEnclosingRectOfClippedQuad):
(WebCore::computeEnclosingRect):
(WebCore::CCMathUtil::mapClippedRect):
(WebCore::CCMathUtil::projectClippedRect):
(WebCore::CCMathUtil::mapQuad):
(WebCore::CCMathUtil::projectQuad):

  • platform/graphics/chromium/cc/CCMathUtil.h: Added.

(WebCore):
(CCMathUtil):

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::computeUnoccludedContentRect):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:

(WebKitTests::TEST):
(WebKitTests):

13:09 Changeset [113363] by oliver@apple.com
  • 28 edits in trunk/Source/JavaScriptCore

Replace static_cast with jsCast when casting JSCell subclasses in JSC
https://bugs.webkit.org/show_bug.cgi?id=83307

Reviewed by Gavin Barraclough.

Replace all usage of static_cast<JSCell subtype*> with jsCast<> in JavaScriptCore.
This results in assertions when unsafe casts are performed, but simply leaves
a static_cast<> in release builds.

  • API/APICast.h:

(toJS):

  • API/JSCallbackConstructor.cpp:

(JSC::constructJSCallback):

  • API/JSCallbackFunction.cpp:

(JSC::JSCallbackFunction::call):

  • API/JSCallbackObjectFunctions.h:

(JSC::::asCallbackObject):
(JSC::::finishCreation):
(JSC::::construct):
(JSC::::call):

  • API/JSObjectRef.cpp:

(JSObjectGetPrivate):
(JSObjectSetPrivate):
(JSObjectGetPrivateProperty):
(JSObjectSetPrivateProperty):
(JSObjectDeletePrivateProperty):

  • API/JSValueRef.cpp:

(JSValueIsObjectOfClass):

  • API/JSWeakObjectMapRefPrivate.cpp:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::resolve):
(JSC::BytecodeGenerator::resolveConstDecl):

  • debugger/DebuggerActivation.cpp:

(JSC::DebuggerActivation::finishCreation):

  • dfg/DFGOperations.cpp:
  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):
(JSC::Interpreter::privateExecute):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • runtime/Executable.h:

(JSC::isHostFunction):

  • runtime/JSActivation.h:

(JSC::asActivation):

  • runtime/JSArray.cpp:

(JSC::JSArray::defineOwnProperty):

  • runtime/JSArray.h:

(JSC::asArray):

  • runtime/JSBoundFunction.cpp:

(JSC::boundFunctionCall):
(JSC::boundFunctionConstruct):

  • runtime/JSByteArray.h:

(JSC::asByteArray):

  • runtime/JSCell.cpp:

(JSC::JSCell::toObject):

  • runtime/JSCell.h:

(JSC::jsCast):

  • runtime/JSGlobalObject.h:

(JSC::asGlobalObject):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncEval):

  • runtime/JSObject.cpp:

(JSC::JSObject::setPrototypeWithCycleCheck):
(JSC::JSObject::allowsAccessFrom):
(JSC::JSObject::toThisObject):
(JSC::JSObject::unwrappedObject):

  • runtime/JSObject.h:

(JSC::asObject):

  • runtime/JSPropertyNameIterator.h:

(JSC::Register::propertyNameIterator):

  • runtime/JSString.h:

(JSC::asString):
(JSC::JSValue::toString):

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncSubstr):

13:03 Changeset [113362] by schenney@chromium.org
  • 6 edits
    1 add
    3 deletes in trunk/LayoutTests

[Chromium] Layout Test svg/as-object/nested-embedded-svg-size-changes.html times out
https://bugs.webkit.org/show_bug.cgi?id=77183

Unreviewed Chromium test expectations update.

Somehow this test slipped thorugh the crack of rebaselining.

  • platform/chromium-linux-x86/svg/as-object/nested-embedded-svg-size-changes-expected.png: Removed.
  • platform/chromium-linux/svg/as-object/nested-embedded-svg-size-changes-expected.png:
  • platform/chromium-mac-leopard/svg/as-object/nested-embedded-svg-size-changes-expected.png:
  • platform/chromium-mac-snowleopard/svg/as-object/nested-embedded-svg-size-changes-expected.png: Added.
  • platform/chromium-mac/svg/as-object/nested-embedded-svg-size-changes-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-vista/svg/as-object/nested-embedded-svg-size-changes-expected.png: Removed.
  • platform/chromium-win-xp/svg/as-object/nested-embedded-svg-size-changes-expected.png: Removed.
  • platform/chromium-win/svg/as-object/nested-embedded-svg-size-changes-expected.png:
  • platform/chromium/test_expectations.txt:
13:01 Changeset [113361] by paroga@webkit.org
  • 18 edits in trunk

[Qt] Correct <wtf/*.h> include paths.
https://bugs.webkit.org/show_bug.cgi?id=83270

Reviewed by Eric Seidel.

Modify the #include declerations so that the
wtf types are included using the full path.

Source/WebCore:

  • platform/graphics/TiledBackingStoreBackend.h:

Source/WebKit/qt:

  • Api/qwebpage.cpp:
  • WebCoreSupport/ContextMenuClientQt.h:
  • WebCoreSupport/EditorClientQt.h:
  • WebCoreSupport/FrameLoaderClientQt.h:
  • WebCoreSupport/InspectorServerQt.cpp:

Source/WebKit2:

  • Shared/qt/QtNetworkReplyData.cpp:
  • UIProcess/WebLayerTreeRenderer.cpp:
  • UIProcess/qt/LayerBackingStore.h:
  • UIProcess/qt/QtViewportInteractionEngine.cpp:
  • UIProcess/qt/QtViewportInteractionEngine.h:
  • UIProcess/qt/QtWebPageSGNode.h:
  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

Tools:

  • WebKitTestRunner/qt/TestInvocationQt.cpp:
12:49 Changeset [113360] by schenney@chromium.org
  • 3 edits
    1 delete in trunk/LayoutTests

Switch svg/custom tests to repaint harness
https://bugs.webkit.org/show_bug.cgi?id=78115

Unreviewed Chromium expectations update.

Somehow this file was not correctly rebaselined when the original change was made.

  • platform/chromium-linux/svg/custom/repaint-on-constant-size-change-expected.png: Removed.
  • platform/chromium-win/svg/custom/repaint-on-constant-size-change-expected.png: Modified property svn:mime-type.
  • platform/chromium/test_expectations.txt:
12:41 Changeset [113359] by eae@chromium.org
  • 729 edits
    124 copies
    10 deletes in branches/subpixellayout

Merge trunk changes up until 113337 into subpixel branch.

12:38 Changeset [113358] by tonikitoo@webkit.org
  • 2 edits in trunk/Source/WebCore

2012-04-05 Antonio Gomes <agomes@rim.com>

Unreviewed bit left over from rebasing the origin patch before landing it.

Complementary to r113329.

  • rendering/HitTestResult.cpp: (WebCore::HitTestResult::operator=):
12:32 Changeset [113357] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Cleanup test, redundant code in CCSchedulerTest.NoBeginFrameWhenDrawFails
https://bugs.webkit.org/show_bug.cgi?id=83300

Patch by Dana Jansens <danakj@chromium.org> on 2012-04-05
Reviewed by Adrienne Walker.

  • tests/CCSchedulerTest.cpp:

(WebKitTests::TEST):

12:32 Changeset [113356] by rniwa@webkit.org
  • 4 edits in trunk

perf-o-matic should include unit in runs JSON responses
https://bugs.webkit.org/show_bug.cgi?id=83294

Reviewed by Tony Chang.

This is a follow up to r112829. Report the unit in /api/test/runs so that the frontend can show it.
Fixed a bug in Test.update_or_insert that it didn't store the unit when it first created the Test object.

Also increment perf-o-matic's version to 18.

  • Websites/webkit-perf.appspot.com/app.yaml: Incremented the version.
  • Websites/webkit-perf.appspot.com/models.py:

(Test.update_or_insert.execute): Store unit when creating a test.
(Runs.to_json): Include unit.

  • Websites/webkit-perf.appspot.com/models_unittest.py: Added tests.

(TestModelTests.test_update_or_insert_with_unit):
(RunsTest.test_to_json_without_results):
(RunsTest.test_to_json_with_results):
(RunsTest.test_to_json_with_unit):

12:30 Changeset [113355] by benjamin@webkit.org
  • 8 edits
    2 adds in trunk/Source/JavaScriptCore

Make something faster than JSStringBuilder for joining an array of JSValue
https://bugs.webkit.org/show_bug.cgi?id=83180

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-05
Reviewed by Geoffrey Garen.

This patch add the class JSStringJoiner optimized for join() operations.

This class makes stricter constraints than JSStringBuilder in order avoid
memory allocations.

In the best case, the class allocate memory only twice:
-Allocate an array to keep a list of UString to join.
-Allocate the final string.

We also avoid the conversion from 8bits strings to 16bits strings since
they are costly and unlikly to help for subsequent calls.

(JSC::arrayProtoFuncToLocaleString):
(JSC::arrayProtoFuncJoin):

  • runtime/JSStringJoiner.cpp: Added.

(JSC):
(JSC::appendStringToData):
(JSC::joinStrings):
(JSC::JSStringJoiner::build):

  • runtime/JSStringJoiner.h: Added.

(JSC):
(JSStringJoiner):
(JSC::JSStringJoiner::JSStringJoiner):
(JSC::JSStringJoiner::append):

12:25 Changeset [113354] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed, widen the suppression for
http/tests/multipart/policy-ignore-crash.php-- it is flakey on win debug too.

  • platform/chromium/test_expectations.txt:
12:23 Changeset [113353] by schenney@chromium.org
  • 4 edits
    2 adds
    3 deletes in trunk/LayoutTests

[Chromium] LayoutTest failures/flaky for svg/as-background-image
https://bugs.webkit.org/show_bug.cgi?id=83303

Unreviewed Chromium test expectations rationalization.

Apparently the efl port results match Chromium.

  • platform/chromium-win-vista/svg/as-background-image: Removed.
  • platform/chromium-win-vista/svg/as-background-image/svg-as-background-1-expected.png: Removed.
  • platform/chromium-win-vista/svg/as-background-image/svg-as-background-3-expected.png: Removed.
  • platform/chromium-win/svg/as-background-image/svg-as-background-1-expected.png:
  • platform/chromium-win/svg/as-background-image/svg-as-background-3-expected.png:
  • platform/chromium/test_expectations.txt:
  • platform/efl/svg/as-background-image/svg-as-background-1-expected.txt: Removed.
  • platform/efl/svg/as-background-image/svg-as-background-3-expected.txt: Removed.
  • svg/as-background-image/svg-as-background-1-expected.txt: Added.
  • svg/as-background-image/svg-as-background-3-expected.txt: Added.
12:09 Changeset [113352] by barraclough@apple.com
  • 9 edits in trunk

https://bugs.webkit.org/show_bug.cgi?id=77293
[Un]Reserve 'let'

Rubber stamped by Oliver Hunt.

Revert r106198.
This does break the web - e.g. https://bvi.bnc.ca/index/bnc/indexen.html
If we're going to reserve let, we're going to have to do so in a more
circumspect fashion.

Source/JavaScriptCore:

  • parser/Keywords.table:

LayoutTests:

  • fast/js/keywords-and-reserved_words-expected.txt:
  • fast/js/reserved-words-as-property-expected.txt:
  • fast/js/reserved-words-strict-expected.txt:
  • fast/js/script-tests/keywords-and-reserved_words.js:
  • fast/js/script-tests/reserved-words-as-property.js:
  • fast/js/script-tests/reserved-words-strict.js:
12:08 Changeset [113351] by arv@chromium.org
  • 3 edits
    2 deletes in trunk/LayoutTests

HTMLSelectElement does not have a getter for namedItem. This fixes the invalid test
https://bugs.webkit.org/show_bug.cgi?id=83289

Reviewed by Ryosuke Niwa.

http://www.whatwg.org/specs/web-apps/current-work/multipage/the-button-element.html#the-select-element

  • fast/dom/HTMLSelectElement/named-options-expected.txt:
  • fast/dom/HTMLSelectElement/script-tests/named-options.js:
  • platform/chromium-mac/fast/dom/HTMLSelectElement/named-options-expected.txt: Removed.
  • platform/chromium-win/fast/dom/HTMLSelectElement/named-options-expected.txt: Removed.
12:07 Changeset [113350] by zmo@google.com
  • 7 edits in trunk/Source

Unreviewed, rolling out r113241.
http://trac.webkit.org/changeset/113241
https://bugs.webkit.org/show_bug.cgi?id=83293

Requested by sievers@chromium.org (Requested by zhenyao on
#webkit).

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

Source/WebCore:

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::prepareToDraw):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

(CCLayerTreeHostImpl):

  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:

(WebKitTests::TEST_F):

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTest::doBeginTest):

12:05 Changeset [113349] by dglazkov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Fixed incorrect expectations for fonts/cursive.html.

  • platform/chromium/test_expectations.txt: Fixed.
12:04 Changeset [113348] by jpu@apple.com
  • 1 edit in trunk/Source/WebKit2/WebProcess/WebCoreSupport/mac/WebAlternativeTextClient.cpp

Fixing build failure on SnowLeopard caused by changeset 113340.

12:00 Changeset [113347] by shawnsingh@chromium.org
  • 7 edits
    2 deletes in trunk/Source

Unreviewed, rolling out r113341.
http://trac.webkit.org/changeset/113341
https://bugs.webkit.org/show_bug.cgi?id=83299

bots caught some build errors (Requested by shawnsingh on
#webkit).

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

Source/WebCore:

  • WebCore.gypi:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::findTileProgramUniforms):
(WebCore::LayerRendererChromium::drawTileQuad):

  • platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:

(WebCore::CCLayerTreeHostCommon::calculateVisibleRect):
(WebCore::isScaleOrTranslation):
(WebCore::calculateDrawTransformsAndVisibilityInternal):

  • platform/graphics/chromium/cc/CCMathUtil.cpp: Removed.
  • platform/graphics/chromium/cc/CCMathUtil.h: Removed.
  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::projectQuad):
(WebCore):
(WebCore::computeUnoccludedContentRect):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:
11:57 Changeset [113346] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Race condition in CCLayerTreeHostTestSynchronizeAnimationStartTimes
https://bugs.webkit.org/show_bug.cgi?id=83179

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

  • tests/CCLayerTreeHostTest.cpp:

(WTF::TestHooks::willAnimateLayers):
(WTF::MockLayerTreeHostImpl::animateLayers):
(WTF::CCLayerTreeHostTestSynchronizeAnimationStartTimes::CCLayerTreeHostTestSynchronizeAnimationStartTimes):
(CCLayerTreeHostTestSynchronizeAnimationStartTimes):
(WTF::CCLayerTreeHostTestSynchronizeAnimationStartTimes::willAnimateLayers):
(WTF::CCLayerTreeHostTestSynchronizeAnimationStartTimes::notifyAnimationStarted):

11:49 Changeset [113345] by commit-queue@webkit.org
  • 8 edits in trunk/Source

[Chromium] With the skia port, setting LCD text filtering is causing
texture cache invalidations of gpu canvas backing store
https://bugs.webkit.org/show_bug.cgi?id=74183

Patch by Justin Novosad <junov@chromium.org> on 2012-04-05
Reviewed by Stephen White.

Source/WebCore:

Replacing unnecessary usage of SkCanvas::LayerIter with calls to
SkCanvas::isDrawingToLayer(). Same results, lower overhead, and no
GPU texture invalidation.

  • platform/graphics/chromium/FontChromiumWin.cpp:

(WebCore):
(WebCore::TransparencyAwareFontPainter::initializeForGDI):

  • platform/graphics/harfbuzz/FontHarfBuzz.cpp:

(WebCore):
(WebCore::adjustTextRenderMode):

  • platform/graphics/skia/FontSkia.cpp:

(WebCore):
(WebCore::adjustTextRenderMode):

  • platform/graphics/skia/SkiaFontWin.cpp:

(WebCore):
(WebCore::disableTextLCD):

  • rendering/RenderThemeChromiumWin.cpp:

(WebCore):

Source/WebKit/chromium:

Replacing unnecessary usage of SkCanvas::LayerIter with call to
SkCanvas::isDrawingToLayer(). Same results, lower overhead, and no
GPU texture invalidation.

  • src/WebFontImpl.cpp:

(WebKit::WebFontImpl::drawText):

11:47 Changeset [113344] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Properly align members in WebInputEvent and subclasses to make Valgrind happy.
https://bugs.webkit.org/show_bug.cgi?id=81570

Patch by Lei Zhang <thestig@chromium.org> on 2012-04-05
Reviewed by Darin Fisher.

  • public/WebInputEvent.h:

(WebKit):
(WebKit::WebInputEvent::WebInputEvent):
(WebKeyboardEvent):
(WebKit::WebTouchEvent::WebTouchEvent):

11:32 Changeset [113343] by commit-queue@webkit.org
  • 7 edits in trunk

media/track/track-webvtt-tc004-magic-header.html flakily times out
https://bugs.webkit.org/show_bug.cgi?id=72279

Source/WebCore:

Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-04-05
Reviewed by Eric Carlson.

Move all the checking for the WebVTT file identifier from TextTrackLoader
to WebVTTParser, notifying the parser clients of parsing failures through
a new method. Remove the WebVTTParser::fileIdentifierMaximumLength method
and make WebVTTParser::hasRequiredFileIdentifier private. The latter now
operates on a vector holding the identifier data to which data is added
until there's enough of it to possibly hold the optional BOM character
and the required WEBVTT character sequence.

No new tests. Fixes an existing test.

  • html/track/WebVTTParser.cpp: Fix a typo throughout the file:

fileIdentiferLength -> fileIdentifierLength
(WebCore):
(WebCore::WebVTTParser::parseBytes): Only continue with searcing for
the WEBVTT identifier if there's enough data to possibly contain the
identifier. Report that the file failed to parse if the identifier
was then not found.
(WebCore::WebVTTParser::hasRequiredFileIdentifier): Refactor to operate
on the vector containing identifier data and merge with the
hasLongWebVTTIdentifier function.

  • html/track/WebVTTParser.h:

(WebVTTParserClient): Add a new method.
(WebVTTParser):

  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::processNewCueData): Parser is now created
immediately regardless of the mime type the response holds.
(WebCore::TextTrackLoader::fileFailedToParse): Log the error, set the
state to failed, start the cue load timer and cancel the load if the file
was not parsed successfully.
(WebCore):

  • loader/TextTrackLoader.h:

(TextTrackLoader):

LayoutTests:

Remove the test from test expectations file as it should now pass.

Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-04-05
Reviewed by Eric Carlson.

  • platform/chromium/test_expectations.txt:
11:28 Changeset [113342] by darin@chromium.org
  • 12 edits in branches/chromium/1084

Merge 113282 - Switch web intents API to be vendor-prefixed
https://bugs.webkit.org/show_bug.cgi?id=83172

Patch by Greg Billock <gbillock@google.com> on 2012-04-04
Reviewed by Adam Barth.

Source/WebCore:

  • Modules/intents/DOMWindowIntents.idl:
  • Modules/intents/NavigatorIntents.cpp:

(WebCore::NavigatorIntents::webkitStartActivity):

  • Modules/intents/NavigatorIntents.h:

(NavigatorIntents):

  • Modules/intents/NavigatorIntents.idl:

LayoutTests:

  • webintents/resources/web-intents-reload-orig.html:
  • webintents/resources/web-intents-testing.js:

(startIntentWithCallbacks):

  • webintents/web-intents-api-expected.txt:
  • webintents/web-intents-api.html:
  • webintents/web-intents-invoke.html:

TBR=commit-queue@webkit.org
Review URL: https://chromiumcodereview.appspot.com/9949021

11:24 Changeset [113341] by shawnsingh@chromium.org
  • 7 edits
    2 adds in trunk/Source

[chromium] Need to clip to homogeneous w=0 plane when applying transforms.
https://bugs.webkit.org/show_bug.cgi?id=80806

Reviewed by Adrienne Walker.

Source/WebCore:

Unit tests added to CCLayerTreeHostCommon. This change is also
covered by other existing unit tests and layout tests.

WebCore TransformationMatrix mapRect / mapQuad / projectQuad do
not properly handle the case where a surface is oriented partially
behind the camera, with a perspective projection. In this case,
projected points may appear to be valid in cartesian coordinates,
but they are indeed not valid, and this problem can only be
detected in homogeneous coordinates after applying the transform,
before the divide-by-w step.

The correct solution is to clip geometry where w < 0. This patch
makes this change local to chromium only, to fix rendering bugs
that arise from this problem. The primary fix is to correct
calculateVisibleLayerRect(), but other ancillary locations are
also fixed, in particular, the antialiasing code path is simply
skipped when this case arises.

Eventually this math needs to be merged into TransformationMatrix,
to fix hit-testing bugs that occur in both Chromium and Safari.

  • WebCore.gypi:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::findTileProgramUniforms):
(WebCore::LayerRendererChromium::drawTileQuad):

  • platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:

(WebCore::CCLayerTreeHostCommon::calculateVisibleRect):
(WebCore::isScaleOrTranslation):
(WebCore::calculateDrawTransformsAndVisibilityInternal):

  • platform/graphics/chromium/cc/CCMathUtil.cpp: Added.

(WebCore):
(WebCore::HomogeneousCoordinate::HomogeneousCoordinate):
(HomogeneousCoordinate):
(WebCore::HomogeneousCoordinate::shouldBeClipped):
(WebCore::HomogeneousCoordinate::cartesianPoint2d):
(WebCore::projectPoint):
(WebCore::mapPoint):
(WebCore::computeClippedPointForEdge):
(WebCore::expandBoundsToIncludePoint):
(WebCore::computeEnclosingRectOfClippedQuad):
(WebCore::computeEnclosingRect):
(WebCore::CCMathUtil::mapClippedRect):
(WebCore::CCMathUtil::projectClippedRect):
(WebCore::CCMathUtil::mapQuad):
(WebCore::CCMathUtil::projectQuad):

  • platform/graphics/chromium/cc/CCMathUtil.h: Added.

(WebCore):
(CCMathUtil):

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::computeUnoccludedContentRect):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:

(WebKitTests::TEST):
(WebKitTests):

11:16 Changeset [113340] by jpu@apple.com
  • 31 edits
    5 adds in trunk/Source

2012-04-05 Jia Pu <jpu@apple.com>

Move correction panel related functions from EditorClient into separated AlternativeTextClient class.
https://bugs.webkit.org/show_bug.cgi?id=82970

Reviewed by Enrica Casucci.

Move correction panel related functions from WebEditorClient to the new WebAlternativeTextClient.
See WebCore/ChangeLog for details.

  • UIProcess/API/gtk/PageClientImpl.cpp:
  • UIProcess/API/mac/PageClientImpl.h: (PageClientImpl):
  • UIProcess/API/mac/PageClientImpl.mm: (WebKit::PageClientImpl::recordAutocorrectionResponse):
  • UIProcess/API/qt/qquickwebview.cpp:
  • UIProcess/PageClient.h: (PageClient):
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::recordAutocorrectionResponse):
  • UIProcess/mac/CorrectionPanel.h:
  • UIProcess/mac/CorrectionPanel.mm:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/mac/WebAlternativeTextClient.cpp: Added. (WebKit): (WebKit::WebAlternativeTextClient::WebAlternativeTextClient): (WebKit::WebAlternativeTextClient::~WebAlternativeTextClient): (WebKit::WebAlternativeTextClient::showCorrectionAlternative): (WebKit::WebAlternativeTextClient::dismissAlternative): (WebKit::WebAlternativeTextClient::dismissAlternativeSoon): (WebKit::WebAlternativeTextClient::recordAutocorrectionResponse):
  • WebProcess/WebCoreSupport/WebAlternativeTextClient.h: Added. (WebKit): (WebAlternativeTextClient):
  • WebProcess/WebCoreSupport/WebEditorClient.h:
  • WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: (WebKit):
  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::WebPage):

2012-04-05 Jia Pu <jpu@apple.com>

Move correction panel related functions from EditorClient into separated AlternativeTextClient class.
https://bugs.webkit.org/show_bug.cgi?id=82970

Reviewed by Enrica Casucci.

Move correction panel related functions from WebEditorClient to the new WebAlternativeTextClient.
See WebCore/ChangeLog for details.

  • WebCoreSupport/CorrectionPanel.h:
  • WebCoreSupport/CorrectionPanel.mm:
  • WebCoreSupport/WebAlternativeTextClient.h: Added. (WebAlternativeTextClient):
  • WebCoreSupport/WebAlternativeTextClient.mm: Added. (WebAlternativeTextClient::WebAlternativeTextClient): (WebAlternativeTextClient::~WebAlternativeTextClient): (WebAlternativeTextClient::showCorrectionAlternative): (WebAlternativeTextClient::dismissAlternative): (WebAlternativeTextClient::dismissAlternativeSoon): (WebAlternativeTextClient::recordAutocorrectionResponse):
  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm: (WebEditorClient::~WebEditorClient):
  • WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:]):

2012-04-05 Jia Pu <jpu@apple.com>

Move correction panel related functions from EditorClient into separated AlternativeTextClient class.
https://bugs.webkit.org/show_bug.cgi?id=82970

Reviewed by Enrica Casucci.

See WebCore/ChangeLog for details.

  • WebKit.xcodeproj/project.pbxproj:

2012-04-05 Jia Pu <jpu@apple.com>

Move correction panel related functions from EditorClient into separated AlternativeTextClient class.
https://bugs.webkit.org/show_bug.cgi?id=82970

Reviewed by Enrica Casucci.

No new tests, since there's no change of functionality.

The existing correction panel related functions in EditorClient are currently used only by OS X.
We'd like to move them into separate AlternativeTextClient class to avoid using #ifdef's. This
new client class will also hold dictation alternative related interface that we will add soon for
bug 82503.

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • editing/AlternativeTextController.cpp: Changes in this file are all for calling functions in AlternativeTextClient instead of those in EditoClient. (WebCore::AlternativeTextController::show): (WebCore::AlternativeTextController::dismiss): (WebCore::AlternativeTextController::dismissSoon): (WebCore::AlternativeTextController::respondToUnappliedSpellCorrection): (WebCore::AlternativeTextController::timerFired): (WebCore::AlternativeTextController::isAutomaticSpellingCorrectionEnabled): (WebCore::AlternativeTextController::alternativeTextClient): (WebCore): (WebCore::AlternativeTextController::editorClient): (WebCore::AlternativeTextController::textChecker): (WebCore::AlternativeTextController::recordAutocorrectionResponseReversed): (WebCore::AlternativeTextController::recordSpellcheckerResponseForModifiedCorrection):
  • editing/AlternativeTextController.h: (WebCore): (AlternativeTextController):
  • editing/TextCheckingHelper.h: (WebCore):
  • loader/EmptyClients.h: (EmptyEditorClient):
  • page/AlternativeTextClient.h: Added. (WebCore): (AlternativeTextClient): (WebCore::AlternativeTextClient::~AlternativeTextClient):
  • page/EditorClient.h: (EditorClient):
  • page/Page.cpp: (WebCore::Page::Page): (WebCore::Page::PageClients::PageClients):
  • page/Page.h: (WebCore): (PageClients): (Page): (WebCore::Page::alternativeTextClient):
11:15 Changeset [113339] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

gtk_unittest.GtkPortTest.test_get_crash_log failing on windows
https://bugs.webkit.org/show_bug.cgi?id=83176

Patch by Philippe Normand <pnormand@igalia.com> on 2012-04-05
Reviewed by Tony Chang.

Refactored the test to use os.path.join() to specify the
core_pattern value of the empty crash log mock.

  • Scripts/webkitpy/layout_tests/port/gtk_unittest.py:

(GtkPortTest):
(GtkPortTest.assertLinesEqual):
(GtkPortTest.test_get_crash_log):
(_mock_gdb_output):

11:01 Changeset [113338] by dglazkov@chromium.org
  • 2 edits in trunk/LayoutTests

Marked storage/indexeddb/basics-workers.html as flaky across all platforms in DEBUG

  • platform/chromium/test_expectations.txt: Marked.
10:54 Changeset [113337] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix fullscreen video button for android
https://bugs.webkit.org/show_bug.cgi?id=83087

Patch by Min Qin <qinmin@google.com> on 2012-04-05
Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=70437 changed css keyword for fullscreen video button.
It is changed from media-fullscreen-button to media-enter-fullscreen-button.
However, it does not change the value in mediaControlChromiumAndroid.css.
No behavior change.

  • css/mediaControlsChromiumAndroid.css:

(video::-webkit-media-controls-fullscreen-button):

10:46 Changeset [113336] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: CSS file revisions are not restored upon front-end reopen.
https://bugs.webkit.org/show_bug.cgi?id=83292

Reviewed by Yury Semikhatsky.

Populating suggestions before the panel creation now.

  • inspector/front-end/inspector.js:

(WebInspector._doLoadedDoneWithCapabilities.get if):

10:44 Changeset [113335] by simon.fraser@apple.com
  • 5 edits in trunk/Source/WebCore

Add assertions to check for mutation of RenderLayer z-order lists during enumeration
https://bugs.webkit.org/show_bug.cgi?id=83242

Reviewed by James Robinson.

Add debug-only code that detects whether RenderLayer's z-order and
normal flow lists are being cleared or otherwise mutated while we're
enumerating over them.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::paintList):
(WebCore::RenderLayer::calculateLayerBounds):
(WebCore::RenderLayer::dirtyZOrderLists):
(WebCore::RenderLayer::dirtyNormalFlowList):
(WebCore::RenderLayer::updateZOrderListsSlowCase):
(WebCore::RenderLayer::updateNormalFlowList):

  • rendering/RenderLayer.h:

(RenderLayer):
(WebCore::RenderLayer::layerListMutationAllowed):
(WebCore::RenderLayer::setLayerListMutationAllowed):
(WebCore):
(LayerListMutationDetector):
(WebCore::LayerListMutationDetector::LayerListMutationDetector):
(WebCore::LayerListMutationDetector::~LayerListMutationDetector):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::hasVisibleNonCompositingDescendantLayers):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
(WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
(WebCore::RenderLayerCompositor::layerHas3DContent):

10:38 April 2012 Meeting edited by rniwa@webkit.org
(diff)
10:27 Changeset [113334] by zmo@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r113254.
http://trac.webkit.org/changeset/113254
https://bugs.webkit.org/show_bug.cgi?id=83291

Requested by sievers@chromium.org (Requested by zhenyao on
#webkit).

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

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::canDraw):

10:18 Changeset [113333] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Rolling out http://trac.webkit.org/changeset/113262.
Original code was fine.

Rubber-stamped by Oliver Hunt.

  • assembler/MacroAssembler.h:

(JSC::MacroAssembler::additionBlindedConstant):

10:11 Changeset [113332] by zmo@google.com
  • 4 edits in trunk/Source

Unreviewed, rolling out r113307.
http://trac.webkit.org/changeset/113307
https://bugs.webkit.org/show_bug.cgi?id=83288

Requested by sievers@chromium.org (Requested by zhenyao on
#webkit).

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

Source/WebCore:

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::canDraw):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostTest.cpp:

(WTF::TEST_F):

09:56 Changeset [113331] by tony@chromium.org
  • 3 edits
    1 delete in trunk/LayoutTests

[chromium] Unreviewed gardening.
fast/events/click-focus-anchor.html is flakey in debug
fast/filesystem/file-writer-abort-continue.html is hitting an assert.

  • platform/chromium-mac-leopard/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.txt: Removed.
  • platform/chromium/test_expectations.txt:
09:50 Changeset [113330] by ossy@webkit.org
  • 19 edits in trunk

[Qt] Fix includes after QtDeclarative -> QtQML renaming
https://bugs.webkit.org/show_bug.cgi?id=82195

Relanding r112651, because Qt5 is updated everywhere.

Source/WebKit/qt:

  • declarative/experimental/plugin.cpp:
  • declarative/plugin.cpp:

(WebKitQmlPlugin::initializeEngine):

Source/WebKit2:

  • UIProcess/API/qt/qquicknetworkreply_p.h:
  • UIProcess/API/qt/qquicknetworkrequest_p.h:
  • UIProcess/API/qt/qquickwebview.cpp:
  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qwebiconimageprovider_p.h:
  • UIProcess/API/qt/qwebnavigationhistory.cpp:
  • UIProcess/API/qt/qwebnavigationhistory_p.h:
  • UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
  • UIProcess/qt/QtDialogRunner.cpp:

(QtDialogRunner::initForAlert):
(QtDialogRunner::initForConfirm):
(QtDialogRunner::initForPrompt):
(QtDialogRunner::initForAuthentication):
(QtDialogRunner::initForProxyAuthentication):
(QtDialogRunner::initForCertificateVerification):
(QtDialogRunner::initForFilePicker):
(QtDialogRunner::initForDatabaseQuotaDialog):
(QtDialogRunner::createDialog):

  • UIProcess/qt/WebPopupMenuProxyQt.cpp:

(WebKit::WebPopupMenuProxyQt::createItem):
(WebKit::WebPopupMenuProxyQt::createContext):

Tools:

  • MiniBrowser/qt/BrowserWindow.cpp:

(BrowserWindow::updateVisualMockTouchPoints):

  • MiniBrowser/qt/main.cpp:
  • WebKitTestRunner/qt/PlatformWebViewQt.cpp:

(WTR::WrapperWindow::handleStatusChanged):

  • qmake/mkspecs/features/unix/default_post.prf:
09:46 Changeset [113329] by tonikitoo@webkit.org
  • 19 edits
    2 adds in trunk

Extend HitTestResult to support not "discarding" shadow content in favor of its DOM ancestor
https://bugs.webkit.org/show_bug.cgi?id=80847

Reviewed by David Hyatt.
Patch by Antonio Gomes <agomes@rim.com>

.:

Exporting Internals::nodesFromRect symbols for the Gtk build.

  • Source/autotools/symbols.filter:

Source/WebCore:

In order to improve touch precision on shadow tree content, patch
extends the rect-hittest'ing system to allow shadow content
to be stored as the rect-hittest result node list.

Primary use cases are for this extension is making it easier to
improve the clickability of default controls of <video> and <audio>
elements.

For the callee site, the use is simple: if shadow content in the rect-hittest
result is desired, just add an extra 'AllowShadowContent' parameter at the creation
of the HitTestResult object.

Test: fast/dom/nodesFromRect-shadowContent.html

  • dom/Document.cpp:

(WebCore::Document::nodesFromRect):

  • dom/Document.h:

(Document):

  • page/EventHandler.cpp:

(WebCore::EventHandler::hitTestResultAtPoint):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::HitTestResult):
(WebCore::HitTestResult::addNodeToRectBasedTestResult):

  • rendering/HitTestResult.h:

(HitTestResult):
(WebCore::HitTestResult::shadowContentFilterPolicy):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::nodeAtPoint):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestList):

  • testing/Internals.cpp:

(WebCore::Internals::nodesFromRect):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

LayoutTests:

Adds a test that rect-hittest's a element known to have a shadow
tree (<video> with built-in controls), and check if its return type
contains its clickable shadow nodes.

  • fast/dom/nodesFromRect-shadowContent-expected.txt: Added.
  • fast/dom/nodesFromRect-shadowContent.html: Added.
  • fast/dom/resources/nodesFromRect.js:

(check):
(checkShadowContent):

Conflicts:

Source/WebCore/page/FrameView.cpp

09:41 Changeset [113328] by commit-queue@webkit.org
  • 10 edits in trunk

Rename CSS Exclusions "rect" value to "rectangle"
https://bugs.webkit.org/show_bug.cgi?id=82367

Patch by Hans Muller <hmuller@adobe.com> on 2012-04-05
Reviewed by Ryosuke Niwa.

Changed the CSS exclusion shape called "rect" to "rectangle" to match
the current draft spec - http://dev.w3.org/csswg/css3-exclusions.

Source/WebCore:

The meeting minutes where the decision to rename the exclusion "rect" function
to "rectangle" are: http://lists.w3.org/Archives/Public/www-style/2012Feb/0325.html

No new tests were created; just updated the existing ones.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseWrapShapeRectangle):
(WebCore::CSSParser::parseWrapShape):

  • css/CSSParser.h:
  • css/CSSWrapShapes.cpp:

(WebCore::CSSWrapShapeRectangle::cssText):

  • css/CSSWrapShapes.h:

(WebCore::CSSWrapShapeRectangle::create):
(WebCore::CSSWrapShapeRectangle::type):
(WebCore::CSSWrapShapeRectangle::CSSWrapShapeRectangle):

LayoutTests:

  • fast/exclusions/parsing-wrap-shape-inside-expected.txt:
  • fast/exclusions/parsing-wrap-shape-outside-expected.txt:
  • fast/exclusions/script-tests/parsing-wrap-shape-inside.js:
  • fast/exclusions/script-tests/parsing-wrap-shape-outside.js:
09:39 Changeset [113327] by dglazkov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Marked fast/filesystem/file-writer-abort-continue.html as flaky crash
https://bugs.webkit.org/show_bug.cgi?id=83286

  • platform/chromium/test_expectations.txt: Marked.
09:10 Changeset [113326] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Disable paintingGoesToWindow() for the root layer when forced compositing mode is active
https://bugs.webkit.org/show_bug.cgi?id=83127

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-04-05
Reviewed by Rob Buis.

RIM PR: 136381
The BlackBerry port will use accelerated compositing code path to
render the root layer in some situations.

The plan is to do this by activating the "force compositing mode"
setting, but that in itself doesn't get us all the way, since painting
will still go to window for the root layer.

Fixed by adding a special clause in
RenderLayerBacking::paintingGoesToWindow() for PLATFORM(BLACKBERRY).

No new tests, this is currently not testable with the BlackBerry WebKit
testing infrastructure.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::paintingGoesToWindow):

  • rendering/RenderLayerCompositor.h:

(RenderLayerCompositor):
(WebCore::RenderLayerCompositor::inForcedCompositingMode): Added.

08:57 Changeset [113325] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Force compositing mode when backing store is not active
https://bugs.webkit.org/show_bug.cgi?id=83131

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-04-05
Reviewed by George Staikos.

RIM PR: 136381
Normally, the BlackBerry WebKit port resorts to direct rendering when
the backing store is not active. However, direct rendering is broken
with the OpenGL code path. This prevented multiple web pages from being
displayed at once with the new WebPageCompositor API.

Fixed by using accelerated compositing layer to render the root layer
instead of backing store. This will give us a tiled layer backing the
root layer, which for some use cases is even better than direct
rendering.

Reviewed internally by Filip Spacek.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::shouldDirectRenderingToWindow):
(BlackBerry::WebKit::BackingStorePrivate::blitContents):

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setLoadState):
(BlackBerry::WebKit::WebPage::setVisible):
(BlackBerry::WebKit::WebPagePrivate::suspendBackingStore):
(BlackBerry::WebKit::WebPagePrivate::resumeBackingStore):
(BlackBerry::WebKit::WebPagePrivate::compositorDrawsRootLayer):
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::setCompositorDrawsRootLayer):
(BlackBerry::WebKit::WebPagePrivate::drawLayersOnCommit):
(BlackBerry::WebKit::WebPagePrivate::scheduleRootLayerCommit):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayer):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayerIfNeeded):
(BlackBerry::WebKit::WebPagePrivate::rootLayerCommitTimerFired):
(BlackBerry::WebKit::WebPagePrivate::setRootLayerCompositingThread):
(BlackBerry::WebKit::WebPagePrivate::createCompositor):
(BlackBerry::WebKit::WebPagePrivate::suspendRootLayerCommit):
(BlackBerry::WebKit::WebPagePrivate::setNeedsOneShotDrawingSynchronization):

  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositorPrivate::WebPageCompositorPrivate):
(BlackBerry::WebKit::WebPageCompositorPrivate::drawsRootLayer):
(WebKit):
(BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):

  • Api/WebPageCompositor_p.h:

(BlackBerry::WebKit::WebPageCompositorPrivate::rootLayer):
(WebPageCompositorPrivate):
(BlackBerry::WebKit::WebPageCompositorPrivate::setDrawsRootLayer):

  • Api/WebPage_p.h:

(WebPagePrivate):

08:51 Changeset [113324] by rakuco@webkit.org
  • 2 edits
    19 adds in trunk/LayoutTests

[EFL][DRT] Gardening 30 missing expectations
https://bugs.webkit.org/show_bug.cgi?id=83266

Unreviewed EFL gardening.

Patch by Dominik Röttsches <dominik.rottsches@linux.intel.com> on 2012-04-05

  • platform/efl/fast/repaint/transform-rotate-and-remove-expected.txt: Added.
  • platform/efl/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t-expected.txt: Added.
  • platform/efl/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t-expected.txt: Added.
  • platform/efl/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t-expected.txt: Added.
  • platform/efl/svg/as-background-image/svg-as-background-1-expected.png: Added.
  • platform/efl/svg/as-background-image/svg-as-background-1-expected.txt: Added.
  • platform/efl/svg/as-background-image/svg-as-background-3-expected.png: Added.
  • platform/efl/svg/as-background-image/svg-as-background-3-expected.txt: Added.
  • platform/efl/svg/as-background-image/svg-as-background-4-expected.png: Added.
  • platform/efl/svg/as-background-image/svg-as-background-4-expected.txt: Added.
  • platform/efl/svg/foreignObject/fO-display-none-expected.txt: Added.
  • platform/efl/svg/foreignObject/fO-display-none-with-relative-pos-content-expected.txt: Added.
  • platform/efl/svg/foreignObject/fO-parent-display-changes-expected.txt: Added.
  • platform/efl/svg/foreignObject/fO-parent-display-none-expected.txt: Added.
  • platform/efl/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt: Added.
  • platform/efl/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt: Added.
  • platform/efl/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt: Added.
  • platform/efl/svg/repaint/repainting-after-animation-element-removal-expected.txt: Added.
  • platform/efl/test_expectations.txt:
08:51 Changeset [113323] by schenney@chromium.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(99539): Infinite repaint loop with SVGImage and deferred repaint timers
https://bugs.webkit.org/show_bug.cgi?id=78315

Reviewed by Dimitri Glazkov.

The existing fix for this issue was failing to check if the frameView object
was currently _in_ layout, in addition to whether it needs layout. Calling the
redraw method while in layout leads to a debug assertion and potential infinite
layout loops. Now we check whether we need layout or are in layout. We also add
a check when the repaint timer fires to ensure we do not call redraw during layout
at that point.

This patch was tested with tens of thousands of runs on layout test cases that
previously crashed at a rate of about 1 in 25. Now we see no crashes and no test
failures.

No new tests, as this exists to fix flaky existing tests.

  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::imageContentChanged):
(WebCore::SVGImageCache::redrawTimerFired):

08:35 Changeset [113322] by schenney@chromium.org
  • 13 edits
    8 adds
    5 deletes in trunk/LayoutTests

Rebaseline after 73643
https://bugs.webkit.org/show_bug.cgi?id=73643

Unreviewed update of test expectations.

Patch by Philip Rogers <pdr@google.com> on 2012-04-05

  • platform/chromium-linux/svg/clip-path/clipper-placement-issue-expected.png: Removed.
  • platform/chromium-linux/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.txt: Removed.
  • platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
  • platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-example-01-b-expected.png:
  • platform/chromium-mac-leopard/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.png: Removed.
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.txt: Added.
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png: Removed.
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-example-01-b-expected.png: Removed.
  • platform/chromium-mac-snowleopard/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.png:
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-color-01-b-expected.png: Added.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png: Added.
  • platform/chromium-mac/svg/W3C-SVG-1.1/masking-path-01-b-expected.png: Modified property svn:mime-type.
  • platform/chromium-mac/svg/clip-path/clipper-placement-issue-expected.png: Added.
  • platform/chromium-mac/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.png: Added.
  • platform/chromium-mac/svg/filters/feDropShadow-expected.png: Modified property svn:mime-type.
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-example-01-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/masking-path-01-b-expected.png:
  • platform/chromium-win/svg/clip-path/clipper-placement-issue-expected.png: Added.
  • platform/chromium-win/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.png: Added.
  • platform/chromium-win/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.txt: Added.
  • platform/chromium-win/svg/filters/feDropShadow-expected.png: Modified property svn:mime-type.
  • platform/chromium/test_expectations.txt:
08:32 Changeset [113321] by ossy@webkit.org
  • 2 edits in trunk/Tools

[Qt] WK1/WK2 layout test results are diverging
https://bugs.webkit.org/show_bug.cgi?id=82720

The resolving of default font families was altered in Qt5.
This directly affects the font picked by DRT for layout
tests. Since we want to keep the Qt4 and Qt5 results in line,
we can trick DRT in picking the same font as before for now.

Patch by Pierre Rossi <pierre.rossi@gmail.com> on 2012-04-05
Reviewed by Csaba Osztrogonác.

  • DumpRenderTree/qt/QtInitializeTestFonts.cpp:

(WebKit::initializeTestFonts):

07:44 Changeset [113320] by keishi@webkit.org
  • 3 edits
    2 adds in trunk

Hide datalist element
https://bugs.webkit.org/show_bug.cgi?id=82874

Source/WebCore:

The datalist element should be hidden when ENABLE_DATALIST is on.

Reviewed by Kent Tamura.

Tests: fast/forms/datalist/datalist-fallback-content-expected.html

fast/forms/datalist/datalist-fallback-content.html

  • css/html.css:

(datalist): Added display:none.

LayoutTests:

Reviewed by Kent Tamura.

  • fast/forms/datalist/datalist-fallback-content-expected.html: Added.
  • fast/forms/datalist/datalist-fallback-content.html: Added. Tests that fallback content is hidden.
06:49 Changeset [113319] by wjmaclean@chromium.org
  • 2 edits in trunk/Source/WebCore

Adjust max bisection search iterations for TouchpadFlingGestureCurve.
https://bugs.webkit.org/show_bug.cgi?id=83166

Reviewed by James Robinson.

Covered by existing tests.

  • platform/TouchpadFlingPlatformGestureCurve.cpp:

(WebCore):

06:25 Changeset [113318] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: CodeGeneratorInspector.py: switch FileSystem, Profiler and Worker domains to typed API
https://bugs.webkit.org/show_bug.cgi?id=83069

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-04-05
Reviewed by Yury Semikhatsky.

Domains are switched to 'strict' mode. However, hardly any changes were needed in C++ code because
only basic types are currently used in Inspector.json.

  • inspector/CodeGeneratorInspector.py:
  • inspector/InspectorProfilerAgent.cpp:

(WebCore::InspectorProfilerAgent::getProfileHeaders):
(WebCore):
(WebCore::InspectorProfilerAgent::getObjectByHeapObjectId):

  • inspector/InspectorProfilerAgent.h:

(InspectorProfilerAgent):

05:49 Changeset [113317] by leviw@chromium.org
  • 3 edits in trunk/Source/WebCore

DOM measurement APIs should operate on pixel snapped values.
https://bugs.webkit.org/show_bug.cgi?id=83138

Reviewed by Julien Chaffraix.

DOM measurement APIs return unscaled integers. In an effort to return the best possible values (and
most consistent with current behavior) when we use sub-pixel values for Layout, we want to adjust
the actual on-screen position and size values for scaling, not the sub-pixel values.

No new tests. No change in behavior.

  • dom/Element.cpp:

(WebCore::adjustForLocalZoom): Needs to return an integer, since this is what the DOM API calls for.
(WebCore::Element::offsetWidth): Using pixel snapped values for all the following functions.
(WebCore::Element::offsetHeight):
(WebCore::Element::clientLeft):
(WebCore::Element::clientTop):
(WebCore::Element::clientWidth):
(WebCore::Element::clientHeight):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::width):
(WebCore::HTMLImageElement::height):

05:32 Changeset [113316] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Web Inspector: [chromium] clean up WDTFC::saveAs after migration to save()
https://bugs.webkit.org/show_bug.cgi?id=83271

Reviewed by Yury Semikhatsky.

  • public/WebDevToolsFrontendClient.h:
05:22 Changeset [113315] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: add ability to copy resource URL from web inspector's resources page.
https://bugs.webkit.org/show_bug.cgi?id=83175

Reviewed by Yury Semikhatsky.

Added requested context menu item.

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.FrameResourceTreeElement.prototype._handleContextMenuEvent):

05:19 Changeset [113314] by caseq@chromium.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: display frame duration instead of time ruler in Timeline panel's frame mode
https://bugs.webkit.org/show_bug.cgi?id=83184

Reviewed by Pavel Feldman.

  • inspector/front-end/TimelineFrameController.js:

(WebInspector.TimelineFrameController): Maintain reference to TimelinePresentationModel
(WebInspector.TimelineFrameController.prototype._flushFrame): Report frames to TimelinePresentationModel (only real ones)

  • inspector/front-end/TimelineGrid.js:

(WebInspector.TimelineGrid.prototype.removeDividers): remove time marks/labels from upper time ruler

  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineOverviewPane.prototype._updateEventDividers): Updated call site of createEventDivider

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._updateEventDividers):
(WebInspector.TimelinePanel.prototype._shouldShowFrames):
(WebInspector.TimelinePanel.prototype._updateFrames): Frame bars rendering logic.
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline.addTimestampRecords): Do not keep frames in the panel any more.
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
(WebInspector.TimelinePanel.prototype._refresh): Moved updateDividers() call here...
(WebInspector.TimelinePanel.prototype._refreshRecords): ... from here.

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.createEventDivider): Use type & title, not entire record.
(WebInspector.TimelinePresentationModel.prototype.frames): Maintain frames in the TimelinePresentationModel.
(WebInspector.TimelinePresentationModel.prototype.reset): ditto.
(WebInspector.TimelinePresentationModel.prototype.addFrame): ditto.
(WebInspector.TimelinePresentationModel.Record): Fix title for timestamp events (drive by).

  • inspector/front-end/timelinePanel.css:

(.timeline-frame-strip):

04:56 Changeset [113313] by paroga@webkit.org
  • 5 edits in trunk/Source

[WinCE] Remove unnecessary function decleration
https://bugs.webkit.org/show_bug.cgi?id=83155

Reviewed by Kentaro Hara.

Source/JavaScriptCore:

  • runtime/JSDateMath.cpp:

Source/WTF:

  • wtf/DateMath.cpp:
  • wtf/Platform.h:
04:50 Changeset [113312] by morrita@google.com
  • 5 edits in trunk/Source/WebCore

IsCommentNode flags is a waste.
https://bugs.webkit.org/show_bug.cgi?id=83251

Reviewed by Ryosuke Niwa.

Effectively nobody uses it. To save a precious NodeFlags bit, this
change removes NodeFlags::IsCommentFlag and its companion mehtod
Node::isCommentNode().

No new tests. No behaviour change.

  • dom/CharacterData.h:

(WebCore::CharacterData::CharacterData):

  • dom/Comment.cpp:

(WebCore::Comment::Comment):

  • dom/Node.h:
  • rendering/RenderTreeAsText.cpp:

(WebCore::getTagName):
This was the only client of Node::isCommentNode(). Replaced it with nodeType() call.

04:45 Changeset [113311] by ossy@webkit.org
  • 3 edits in trunk/LayoutTests

[Qt][WK2] Skip tests that still failing after implementing layoutTestController.setPageVisibility()
https://bugs.webkit.org/show_bug.cgi?id=83263
[Qt] Moving already skipped test to right place and skip new SHADOW_DOM test.
https://bugs.webkit.org/show_bug.cgi?id=82607

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-04-05
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0-wk2/Skipped:
  • platform/qt/Skipped:
03:58 Changeset [113310] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][DRT] Remove layer-related passing tests from test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=83262

Unreviewed gardening

Fixing test expectations file - some of these cases already pass.

Patch by Dominik Röttsches <dominik.rottsches@linux.intel.com> on 2012-04-05

  • platform/efl/test_expectations.txt:
03:52 Changeset [113309] by commit-queue@webkit.org
  • 5 edits
    1 add in trunk

[BlackBerry] Clear local storage won't take effect until browser exit and relaunch
https://bugs.webkit.org/show_bug.cgi?id=83253

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-04-05
Reviewed by Rob Buis.

.:

RIM PR: #146871
Added a manual test case to test the behavior when press
button "Clear Local Storage" from browser settings.
It has to be a manual test as it requires user interaction.

  • ManualTests/blackberry/clear-localstorage.html: Added.

Source/WebKit/blackberry:

RIM PR: #146871
Cleared the local storage namespace of a WebPage's PageGroup
when WebPage::clearLocalStorage() get called.
Also deleted unused global function clearLocalStorage().

  • Api/BlackBerryGlobal.cpp:
  • Api/BlackBerryGlobal.h:

(WebKit):

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::clearLocalStorage):

03:41 Changeset [113308] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Layout Test fast/text/international/font-fallback-to-common-script.html has flaky image results on all Chromium bots
https://bugs.webkit.org/show_bug.cgi?id=81544

Patch by Matt Falkenhagen <falken@chromium.org> on 2012-04-05
Reviewed by Kent Tamura.

Skip embed-bidi-style-in-isolate-crash.html, which seems to cause the
subsequent layout test to fail (bug https://bugs.webkit.org/show_bug.cgi?id=83260).

  • platform/chromium/test_expectations.txt:
03:14 Changeset [113307] by hans@chromium.org
  • 4 edits in trunk/Source

webkit_unit_tests build fix.
https://bugs.webkit.org/show_bug.cgi?id=83261

Unreviewed, webkit_unit_tests buildfix.

The CCLayerTreeHostTestEmptyContentsShouldNotDraw.runMultiThread test
stopped working after r113254.

Disable it for now.

Source/WebCore:

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::canDraw):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostTest.cpp:

(WTF):
(WTF::TEST_F):

03:10 Changeset [113306] by tkent@chromium.org
  • 1 edit
    2 deletes in trunk/LayoutTests

[Chromium] Remove a wrong expectation file for hebrew-vowels.html.
https://bugs.webkit.org/show_bug.cgi?id=81544

  • platform/chromium-mac-snowleopard/fast/text/international/hebrew-vowels-expected.txt: Removed.
  • platform/chromium-mac/fast/text/international/hebrew-vowels-expected.txt: Removed.
02:30 WebKitEFLLayoutTest edited by dominik.rottsches@intel.com
changing deprecated flags, removing process count (done automatically) (diff)
02:25 Changeset [113305] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK][DRT] Fail fast/filesystem/flags-passing.html on JSC
https://bugs.webkit.org/show_bug.cgi?id=83137

Patch by ChangSeok Oh <shivamidow@gmail.com> on 2012-04-05
Reviewed by Kentaro Hara.

fast/filesystem/flags-passing.html is failed on webkitgtk+ applied FileSystem API patch
for bug58443. 'testsList' is a global array object, but it's accessed in runNextTest
function object like this, "this[testsList[testCounter++]]();". I'm not familiar
with JavaScript and V8, but in my understanding, it looks a bit strange.
'this' in the statement means runNextTest function object which doesn't have
testList array object. (It's a global scope variable.) This test might be able to
pass on V8 JS engine, but not on JSC at least my try.
'testsList' is changed from a function name array to a function array.

  • fast/filesystem/script-tests/flags-passing.js:

(runNextTest):

02:13 Changeset [113304] by philn@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK test_expectations update after r113292.

  • platform/gtk/test_expectations.txt:
02:08 Changeset [113303] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r113279

  • platform/qt/Skipped: Skip a new failing test because ENABLE(MUTATION_OBSERVERS) is disabled.
01:58 Changeset [113302] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening
https://bugs.webkit.org/show_bug.cgi?id=82607
Skip V8 specific test that currently not supported on Qt bots

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-04-05

  • platform/qt/Skipped: fast/dom/shadow/selection-shouldnt-expose-shadow-dom.html
01:53 Changeset [113301] by jochen@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Only shut down V8 if we actually initialized it
https://bugs.webkit.org/show_bug.cgi?id=83159

Reviewed by Pavel Feldman.

  • src/WebKit.cpp:

(WebKit::initialize):
(WebKit::shutdown):

01:47 Changeset [113300] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL] keycode translation is wrong for function keys
https://bugs.webkit.org/show_bug.cgi?id=82738

Source/WebCore:

This patch fixes keycode translation for function keys.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-04-05
Reviewed by Philippe Normand.

Test: fast/events/keydown-function-keys.html

  • platform/efl/EflKeyboardUtilities.cpp:

(WebCore::createWindowsKeyMap):

LayoutTests:

Unskip fast/events/keydown-function-keys.html

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-04-05
Reviewed by Philippe Normand.

  • platform/efl/Skipped:
01:19 FeatureFlags edited by tkent@chromium.org
Add CALENDAR_PICKER (diff)
01:18 Changeset [113299] by zimmermann@webkit.org
  • 19 edits in trunk

Work around an entity parsing bug in libxml2 2.7.3 (supplied with Lion) and unskip tests
https://bugs.webkit.org/show_bug.cgi?id=82577

Reviewed by Filip Pizlo.

Source/WebCore:

Work-around entity expansion bug that affects several SVG tests on Lion.

Sample test document which is currently broken:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-W3CDTD SVG 1.1 BasicEN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd" [
<!ENTITY Smile "<rect x='.5' y='.5' width='29' height='39' fill='black' stroke='red'/>">
]>

<svg xmlns="http://www.w3.org/2000/svg">&Smile;</svg>

The expanded rect carries no namespace, thus an Element will be created for it, instead of a SVGRectElement.
libxml2 2.7.4 fixed this bug (https://bugzilla.gnome.org/show_bug.cgi?id=502960) in 2009 already, but Lion
still ships with 2.7.3, so we need to find a work-around for the problem. It works like this:

  • When an entity is requested (getEntityHandler) determine whether the entity is being declared (while the <!ENTITY.. parses) or wheter its references (when the &Smile; is parsed). If its referenced, record the current depth of the libxml2 parser.
  • When startElementNs is called while we're expanding entities, be sure to transfer the namespace of the parent node to the new node, but only do this if the current depth() is greater than the depth() at the time where entity expansion started. This way we only apply our workaround for elements inside entities, that get expanded at the insertion point.
  • When endElementNs is called, and our current depth() is less than our equal to the depth() where entity expansion started, clear the recorded detph(), and stop executing the workaround.

It requires storing an extra integer & boolean in XMLDocumentParser, which is only used for this work-around.

  • xml/parser/XMLDocumentParser.h:

(XMLDocumentParser):
(WebCore::XMLDocumentParser::isParsingEntityDeclaration):
(WebCore::XMLDocumentParser::setIsParsingEntityDeclaration):
(WebCore::XMLDocumentParser::depthTriggeringEntityExpansion):
(WebCore::XMLDocumentParser::setDepthTriggeringEntityExpansion):

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::XMLDocumentParser::XMLDocumentParser):
(WebCore::hackAroundLibXMLEntityParsingBug):
(WebCore::XMLDocumentParser::startElementNs):
(WebCore::XMLDocumentParser::endElementNs):
(WebCore::entityDeclarationHandler):
(WebCore::getEntityHandler):
(WebCore::XMLDocumentParser::initializeParserContext):

LayoutTests:

Unskip several test on Lion, now that the libxml2 bug doesn't affect us anymore.

  • platform/mac-lion/Skipped:
  • platform/mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.txt:
  • platform/mac/svg/custom/preserve-aspect-ratio-syntax-expected.png:
  • platform/mac/svg/custom/preserve-aspect-ratio-syntax-expected.txt:
  • platform/mac/svg/custom/viewbox-syntax-expected.png:
  • platform/mac/svg/custom/viewbox-syntax-expected.txt:
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png:
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt:
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png:
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt:
00:30 Changeset [113298] by tkent@chromium.org
  • 3 edits
    4 adds in trunk

Add JavaScript and CSS code for the calendar picker implementation
https://bugs.webkit.org/show_bug.cgi?id=83011

Reviewed by Hajime Morita.

.:

  • ManualTests/forms/calendar-picker.html: Added.

Source/WebCore:

Add calendarPicker.js and calendarPicker.css, and add a build rule to
generate a C++ file. This change doesn't make any behavior change
because the code is wrapped by ENABLE(CALENDAR_PICKER).

Tests: ManualTests/forms/calendar-picker.html

  • Resources/calendarPicker.css: Added.
  • Resources/calendarPicker.js: Added.
  • WebCore.gyp/WebCore.gyp: Generate CalendarPicker.{cpp,h} from calendarPicker.{css,js}.
00:29 Changeset [113297] by kinuko@chromium.org
  • 16 edits
    10 adds in trunk

Expose DataTransferItem.getAsEntry() to allow users access dropped files as FileEntry
https://bugs.webkit.org/show_bug.cgi?id=82592

Reviewed by David Levin.

Source/WebCore:

For now the method is prefixed thus it is to be exposed as 'webkitGetAsEntry'.

The API is proposed and discussed in the following whatwg thread:
http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2011-November/033814.html

Add DataTransferItemFilesystem under Modules/filesystem and implemented the bridging part for chromium.

Test: editing/pasteboard/data-transfer-items-drag-drop-entry.html

  • Modules/filesystem/DataTransferItemFileSystem.h: Added.

(DataTransferItemFileSystem):

  • Modules/filesystem/DataTransferItemFileSystem.idl: Added for DataTransferItem.getAsEntry which is only exposed if filesystem is enabled.
  • Modules/filesystem/chromium/DataTransferItemFileSystemChromium.cpp: Added for chromium implementation.
  • Modules/filesystem/chromium/DataTransferItemFileSystemChromium.h: Added.
  • Modules/filesystem/chromium/DraggedIsolatedFileSystem.cpp: Added.
  • Modules/filesystem/chromium/DraggedIsolatedFileSystem.h: Added.
  • WebCore.gypi:
  • platform/chromium/ChromiumDataObject.cpp:
  • platform/chromium/ChromiumDataObject.h:

(WebCore::ChromiumDataObject::filesystemId): Added.
(WebCore::ChromiumDataObject::setFilesystemId): Added.

  • platform/chromium/ClipboardChromium.cpp:

Source/WebKit/chromium:

  • src/WebDragData.cpp:

(WebKit::WebDragData::filesystemId): Added implementation.
(WebKit::WebDragData::setFilesystemId): Added implementation.

Tools:

Added filesystem hook support in EventSender.beginDragWithFiles() for DumpRenderTree.

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::beginDragWithFiles):

LayoutTests:

  • editing/pasteboard/data-transfer-items-drag-drop-entry-expected.txt: Added.
  • editing/pasteboard/data-transfer-items-drag-drop-entry.html: Added.
  • editing/pasteboard/resources/test_directory/test.txt: Added.
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
00:21 Changeset [113296] by philn@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r113279.

  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
Note: See TracTimeline for information about the timeline view.