Timeline



Jan 19, 2012:

11:45 PM Changeset in webkit [105485] by Alexandru Chiculita
  • 18 edits
    3 adds in trunk

Source/WebCore: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Added setCSSCustomFilterEnabled/isCSSCustomFilterEnabled that is false by default.
I've enabled it by default on Apple Mac, to make sure there's no behavior change. Anyway, CSS shaders need
WebGL enabled, so it ends up being disabled by default.

Reviewed by Nikolas Zimmermann.

Test: css3/filters/effect-custom-disabled.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseFilter):

Do not parse the custom() function when shaders are disabled.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

Do not overwrite the old style->filter() if parsing fails.

(WebCore::CSSStyleSelector::createFilterOperations):

Do not continue if one custom() filter fails to parse.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setCSSCustomFilterEnabled):
(WebCore::Settings::isCSSCustomFilterEnabled):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::isCSSCustomFilterEnabled):
(WebCore::FilterEffectRenderer::build):

Avoid creating the filter when shaders are disabled. It may happen to get here if shaders were disabled between parsing and rendering.

Source/WebKit/mac: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Added private WebPreference property called "WebKitCSSCustomFilterEnabled".

Reviewed by Nikolas Zimmermann.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
(-[WebPreferences cssCustomFilterEnabled]):
(-[WebPreferences setCSSCustomFilterEnabled:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit2: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Reviewed by Nikolas Zimmermann.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetCSSCustomFilterEnabled):
(WKPreferencesGetCSSCustomFilterEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

LayoutTests: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Reviewed by Nikolas Zimmermann.

  • css3/filters/effect-custom-disabled-expected.txt: Added.
  • css3/filters/effect-custom-disabled.html: Added.
  • css3/filters/script-tests/effect-custom-disabled.js: Added.

(testInvalidFilterRule):

  • platform/wk2/Skipped:

Skipped a couple of tests that call overridePreference.

11:18 PM Changeset in webkit [105484] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Node::canHaveLightChildRendererWithShadow is not used anywhere.
https://bugs.webkit.org/show_bug.cgi?id=76627

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-19
Reviewed by Darin Adler.

Since Node::canHaveLightChildRendererWithShadow is not overriden anywhere, and it returns always false.
We can remove it.

No new tests, because no change in behavior.

  • dom/Node.h:
  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::shouldCreateRenderer):

10:39 PM Changeset in webkit [105483] by kinuko@chromium.org
  • 8 edits in trunk/Source

Cleanup: make constant variable names in fileapi/ conform to WebKit's coding guideline
https://bugs.webkit.org/show_bug.cgi?id=76625

Reviewed by David Levin.

Source/WebCore:

No new tests as this patch has no functional changes.

  • fileapi/BlobURL.cpp:

(WebCore::BlobURL::getIdentifier):
(WebCore::BlobURL::createBlobURL):

  • fileapi/BlobURL.h:
  • fileapi/FileWriter.cpp:

(WebCore::FileWriter::write):
(WebCore::FileWriter::truncate):

  • platform/AsyncFileSystem.cpp:

(WebCore::AsyncFileSystem::crackFileSystemURL):
(WebCore::AsyncFileSystem::toURL):
(WebCore::AsyncFileSystem::isAvailable):

  • platform/AsyncFileSystem.h:

Source/WebKit/chromium:

Also removing (almost) duplicated implementation of AsyncFileSystem::crackFileSystem.

  • src/AsyncFileSystemChromium.cpp:
9:25 PM Changeset in webkit [105482] by rolandsteiner@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed: add layout test to Chromium test_expectations.txt file after changes to Mac underline drawing.

  • platform/chromium/test_expectations.txt:
8:58 PM Changeset in webkit [105481] by Lucas Forschler
  • 5 edits in tags/Safari-535.18.1/Source

Versioning

8:54 PM Changeset in webkit [105480] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

8:33 PM Changeset in webkit [105479] by Lucas Forschler
  • 1 copy in tags/Safari-535.18.1

New Tag.

7:44 PM Changeset in webkit [105478] by Lucas Forschler
  • 1 copy in tags/Safari-535.18

New Tag.

7:36 PM Changeset in webkit [105477] by dbates@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Remove "Safari 5.1 shipped" text from debugging instructions; move misplaced </ol>

Rubber-stamped by Sam Weinig.

  • building/debug.html:
7:22 PM Changeset in webkit [105476] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Replace improper #import with an #include.

  • UIProcess/Plugins/PluginProcessProxy.cpp:

Fixes warnings.

7:04 PM Changeset in webkit [105475] by weinig@apple.com
  • 64 edits
    6 moves in trunk/Source

Move RunLoop to WebCore/platform
https://bugs.webkit.org/show_bug.cgi?id=76471

Reviewed by Anders Carlsson.

Source/WebCore:

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Add newly moved files.

  • platform/RunLoop.cpp: Moved from Source/WebKit2/Platform/RunLoop.cpp.
  • platform/RunLoop.h: Moved from Source/WebKit2/Platform/RunLoop.h.
  • platform/gtk/RunLoopGtk.cpp: Moved from Source/WebKit2/Platform/gtk/RunLoopGtk.cpp.
  • platform/mac/RunLoopMac.mm: Moved from Source/WebKit2/Platform/mac/RunLoopMac.mm.
  • platform/qt/RunLoopQt.cpp: Moved from Source/WebKit2/Platform/qt/RunLoopQt.cpp.
  • platform/win/RunLoopWin.cpp: Moved from Source/WebKit2/Platform/win/RunLoopWin.cpp.

Move the files.

Source/WebKit2:

  • GNUmakefile.am:
  • Platform/CoreIPC/Connection.cpp:
  • Platform/CoreIPC/Connection.h:
  • Platform/CoreIPC/mac/ConnectionMac.cpp:
  • PluginProcess/PluginControllerProxy.h:
  • PluginProcess/PluginProcess.cpp:
  • PluginProcess/PluginProcess.h:
  • PluginProcess/WebProcessConnection.cpp:
  • PluginProcess/mac/PluginProcessMainMac.mm:
  • PluginProcess/qt/PluginProcessMainQt.cpp:
  • Shared/ChildProcess.cpp:
  • Shared/ChildProcess.h:
  • Target.pri:
  • UIProcess/API/mac/FindIndicatorWindow.h:
  • UIProcess/API/mac/WKView.mm:
  • UIProcess/DrawingAreaProxyImpl.h:
  • UIProcess/Launcher/ThreadLauncher.cpp:
  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:
  • UIProcess/Launcher/mac/ThreadLauncherMac.mm:
  • UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
  • UIProcess/Launcher/qt/ThreadLauncherQt.cpp:
  • UIProcess/Launcher/win/ProcessLauncherWin.cpp:
  • UIProcess/Launcher/win/ThreadLauncherWin.cpp:
  • UIProcess/LayerTreeHostProxy.h:
  • UIProcess/Plugins/PluginProcessProxy.cpp:
  • UIProcess/ResponsivenessTimer.cpp:
  • UIProcess/ResponsivenessTimer.h:
  • UIProcess/TiledDrawingAreaProxy.h:
  • UIProcess/VisitedLinkProvider.h:
  • UIProcess/WebConnectionToWebProcess.cpp:
  • UIProcess/WebConnectionToWebProcess.h:
  • UIProcess/WebContext.cpp:
  • UIProcess/win/WebView.cpp:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
  • WebProcess/Plugins/Netscape/NetscapePlugin.h:
  • WebProcess/Plugins/Netscape/NetscapePluginStream.h:
  • WebProcess/Plugins/PluginView.h:
  • WebProcess/WebConnectionToUIProcess.cpp:
  • WebProcess/WebConnectionToUIProcess.h:
  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:
  • WebProcess/WebPage/DrawingAreaImpl.h:
  • WebProcess/WebPage/EventDispatcher.cpp:
  • WebProcess/WebPage/PageOverlay.h:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebProcess.cpp:
  • WebProcess/WebProcess.h:

(WebKit::WebProcess::runLoop):

  • WebProcess/gtk/WebProcessMainGtk.cpp:
  • WebProcess/mac/WebProcessMainMac.mm:
  • WebProcess/qt/WebProcessMainQt.cpp:
  • WebProcess/win/WebProcessMainWin.cpp:
  • win/WebKit2.vcproj:

Remove RunLoop code and update #includes.

7:02 PM Changeset in webkit [105474] by kov@webkit.org
  • 2 edits in trunk/Tools

Unreviewed build fix. Wrong variable being used as the cwd for git
remote update command.

  • gtk/run-with-jhbuild:

(update_jhbuild):

6:51 PM Changeset in webkit [105473] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

Fix inconsistent text selection behavior with option-shift-left/right/up/down.
https://bugs.webkit.org/show_bug.cgi?id=75652

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-19
Reviewed by Enrica Casucci.

On Mac, selecting backwards by word, line or paragraph from the middle
of some text, and then going forward leaves the caret back in the middle
with no selection, instead of directly selecting to the other end of the
word/line/paragraph (Unix/Windows behavior). Fix this by adding a new
editing behavior to control whether the selection should go across the
initial position of the caret directly or not in situations like the one
outlined above.

Source/WebCore:

Test: editing/selection/selection-extend-should-not-move-across-caret-on-mac.html

  • editing/EditingBehavior.h:

(WebCore::EditingBehavior::shouldExtendSelectionByWordOrLineAcrossCaret):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::modify):

LayoutTests:

  • editing/selection/selection-extend-should-not-move-across-caret-on-mac-expected.txt: Added.
  • editing/selection/selection-extend-should-not-move-across-caret-on-mac.html: Added.
6:45 PM Changeset in webkit [105472] by kov@webkit.org
  • 2 edits in trunk/Tools

[GTK] ensure the jhbuild used by webkit is as up-to-date as needed
https://bugs.webkit.org/show_bug.cgi?id=76585

Reviewed by Martin Robinson.

This allows us to specify a minimum version of jhbuild required,
while also providing stability against changes done to the master
branch, by letting us choose what is the exact version that will
be used.

  • gtk/run-with-jhbuild: refactored for more hackability and easier

reading
(jhbuild_installed): checks whether jhbuild is installed
(jhbuild_cloned): checks whether jhbuild has been cloned
(jhbuild_at_expected_revision): checks whether jhbuild is at the
expected revision
(update_jhbuild): brings jhbuild to the expected revision
(clone_jhbuild): clones jhbuild
(install_jhbuild): build and installs jhbuild
(update_webkitgtk_libs): runs update-webkitgtk-libs
(ensure_jhbuild): high-level logic to decide whether and which of
the steps above are executed

6:41 PM Changeset in webkit [105471] by Simon Fraser
  • 4 edits
    3 adds in trunk

Regression (r98735): Video chat moles in Gmail render incorrectly on Mac OS
https://bugs.webkit.org/show_bug.cgi?id=75682

Source/WebCore:

Reviewed by James Robinson.

RenderLayerBacking::isSimpleContainerCompositingLayer() gave incorret
results in the case where the layer itself was visibility:hidden, but
where it had visible, non-composited descendant layers.

Fix by breaking RenderLayerBacking::hasVisibleNonCompositingDescendants()
into two methods, one that tests for renderers in this layer which
render stuff (and are thus affected by visibility on this layer), and
another which walks descendant, non-composited layers looking for those
which are visible.

Removed an early return in the "renderObject->node()->isDocumentNode()"
clause, because we want to run the same code that we run for non-document
nodes.

Test: compositing/visibility/layer-visible-content.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
(WebCore::RenderLayerBacking::containsNonEmptyRenderers):
(WebCore::RenderLayerBacking::hasVisibleNonCompositingDescendantLayers):

  • rendering/RenderLayerBacking.h:

LayoutTests:

Reviewed by James Robinson.

Testcase with a combination of visibility:hidden, overflow, positioning and
transforms.

  • compositing/visibility/layer-visible-content-expected.png: Added.
  • compositing/visibility/layer-visible-content-expected.txt: Added.
  • compositing/visibility/layer-visible-content.html: Added.
6:21 PM Changeset in webkit [105470] by commit-queue@webkit.org
  • 11 edits in trunk/Source

[chromium] Draw gutter quads outside root content layer
https://bugs.webkit.org/show_bug.cgi?id=76328

Patch by Alexandre Elias <aelias@google.com> on 2012-01-19
Reviewed by James Robinson.

Add new layer property "backgroundCoversViewport". If the content
layers don't fully cover the render surface, this code calculates the
difference between the root clip rect and the root content layer and
draws up to four background-color quads in exactly the area that would
be undrawn.

Test: CCTiledLayerImplTest::backgroundCoversViewport

Source/WebCore:

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::LayerChromium):
(WebCore::LayerChromium::setBackgroundCoversViewport):
(WebCore::LayerChromium::pushPropertiesTo):

  • platform/graphics/chromium/LayerChromium.h:

(WebCore::LayerChromium::backgroundCoversViewport):

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

(WebCore::CCLayerImpl::CCLayerImpl):
(WebCore::CCLayerImpl::setBackgroundCoversViewport):

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

(WebCore::CCLayerImpl::backgroundCoversViewport):

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

(WebCore::CCTiledLayerImpl::appendQuads):

Source/WebKit/chromium:

  • src/NonCompositedContentHost.cpp:

(WebKit::NonCompositedContentHost::NonCompositedContentHost):

  • tests/CCLayerImplTest.cpp:

(WebCore::TEST):

  • tests/CCTiledLayerImplTest.cpp:

(WebCore::TEST):

  • tests/LayerChromiumTest.cpp:
6:03 PM Changeset in webkit [105469] by commit-queue@webkit.org
  • 7 edits
    2 copies in trunk/Source/WebKit/chromium

Web Intents chromium API modifications to track IntentRequest invocation method
https://bugs.webkit.org/show_bug.cgi?id=76014

Patch by Greg Billock <gbillock@google.com> on 2012-01-19
Reviewed by Darin Fisher.

  • public/WebFrameClient.h:

(WebKit::WebFrameClient::dispatchIntent):

  • public/WebIntent.h:
  • public/WebIntentRequest.h: Added.
  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchIntent):

  • src/FrameLoaderClientImpl.h:
  • src/WebIntent.cpp:
  • src/WebIntentRequest.cpp: Added.
5:47 PM Changeset in webkit [105468] by caryclark@google.com
  • 4 edits in trunk

[Skia Mac] Match style of platform error underline for misspellings
https://bugs.webkit.org/show_bug.cgi?id=76556

Reviewed by Stephen White.

Source/WebCore:

Add Darwin-specific code in Skia to draw the error underline so that
it matches the CoreGraphics style.

Many existing layout tests inadvertantly trigger the misspelling
underline by including the word 'foo' in an editable field. Those
tests are temporarily suppressed separately in an edit to
test_expectations.txt.

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::drawLineForTextChecking):

LayoutTests:

Suppress editing tests with misspellings, since the error underline
is drawn differently.

  • platform/chromium/test_expectations.txt:
5:34 PM Changeset in webkit [105467] by noam.rosenthal@nokia.com
  • 5 edits in trunk/Source/WebCore

[Texmap] TextureMapper creates two many big intermediate surfaces
https://bugs.webkit.org/show_bug.cgi?id=76336

Reviewed by Simon Hausmann.

The following has been done to optimize surface allocation:

  1. Instead of using a viewport-size surface, use a surface in the size of the layer's bounding rect and apply the transform after the content has been rendered into it.
  2. Avoid generating intermediate surface for occasions where they're not necessary, such as nested reflections without opacity.
  3. Releasing of textures from the pool is now implicit, based on refCount.
  4. Do not use intermediate surfaces for preserve-3d layers. This is in alignment with other ports.

Tests in LayoutTests/compositing/masks and LayoutTests/compositing/reflection cover this.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::acquireTextureFromPool):

  • platform/graphics/texmap/TextureMapper.h:
  • platform/graphics/texmap/TextureMapperNode.cpp:

(WebCore::TextureMapperNode::paintSelf):
(WebCore::TextureMapperNode::paintSelfAndChildren):
(WebCore::TextureMapperNode::intermediateSurfaceRect):
(WebCore::TextureMapperNode::shouldPaintToIntermediateSurface):
(WebCore::TextureMapperNode::isVisible):
(WebCore::TextureMapperNode::paintSelfAndChildrenWithReplica):
(WebCore::TextureMapperNode::paintRecursive):
(WebCore::TextureMapperNode::syncCompositingStateSelf):
(WebCore::TextureMapperNode::syncCompositingState):

  • platform/graphics/texmap/TextureMapperNode.h:

(WebCore::TextureMapperPaintOptions::TextureMapperPaintOptions):

5:22 PM Changeset in webkit [105466] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] A Skia roll will break some tests - marking as expected
https://bugs.webkit.org/show_bug.cgi?id=76638

Unreviewed test_expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-19

  • platform/chromium/test_expectations.txt: Adding MAC to svg/custom/zero-path-square-cap-rendering.svg
5:10 PM Changeset in webkit [105465] by ap@apple.com
  • 2 edits in trunk/Tools

[WK2] DumpRenderTree converts "file:///" to a path differently
https://bugs.webkit.org/show_bug.cgi?id=76653

Reviewed by John Sullivan.

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: (WTR::lastFileURLPathComponent):

Do print a slash if there are no path components.

4:57 PM Changeset in webkit [105464] by eric@webkit.org
  • 3 edits in trunk/Tools

webkit-patch cannot rollout patches without changelog/bug number
https://bugs.webkit.org/show_bug.cgi?id=75962

Reviewed by Adam Barth.

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

(AbstractRolloutPrepCommand._prepare_state):

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

(AbstractRolloutPrepCommandTest.test_prepare_state):

4:44 PM Changeset in webkit [105463] by eric@webkit.org
  • 3 edits
    2 adds in trunk

Assertion failure in WebCore::HTMLFrameElementBase::insertedIntoDocument()
https://bugs.webkit.org/show_bug.cgi?id=50312

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Removed the ASSERT and updated the comment.

Test: fast/frames/assert-on-insertedIntoDocument.html

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::insertedIntoDocument):

LayoutTests:

  • fast/frames/assert-on-insertedIntoDocument-expected.txt: Added.
  • fast/frames/assert-on-insertedIntoDocument.html: Added.
4:29 PM Changeset in webkit [105462] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Replace WGC3D visibility extension with resource_usage extension. [Part 1 of 3]
https://bugs.webkit.org/show_bug.cgi?id=76634

Patch by Michal Mocny <mmocny@google.com> on 2012-01-19
Reviewed by Kenneth Russell.

  • public/platform/WebGraphicsContext3D.h:

(WebKit::WebGraphicsContext3D::setVisibilityCHROMIUM):
(WebKit::WebGraphicsContext3D::setResourceUsageCHROMIUM):

  • src/GraphicsContext3DChromium.cpp:

(WebCore::GraphicsContext3DPrivate::setVisibilityCHROMIUM):

  • tests/FakeWebGraphicsContext3D.h:

(WebKit::FakeWebGraphicsContext3D::setResourceUsageCHROMIUM):

4:13 PM Changeset in webkit [105461] by ap@apple.com
  • 4 edits in trunk

[WK2] fast/url/degenerate-file-base.html fails
https://bugs.webkit.org/show_bug.cgi?id=76619

Reviewed by Adam Roben.

Tools:

A URL generated form local path for loading had an extra slash, making document.URL
incorrect in all WebKit2 tests (file://localhost//path/to/test.html).

  • WebKitTestRunner/TestInvocation.cpp: (WTR::createWKURL):

LayoutTests:

  • platform/qt-wk2/Skipped: Unskipped the test.
4:07 PM Changeset in webkit [105460] by jamesr@google.com
  • 36 edits in trunk/Source

[chromium] Remove CCLayerDelegate, add ContentLayerDelegate for painting
https://bugs.webkit.org/show_bug.cgi?id=76663

Reviewed by Kenneth Russell.

Source/WebCore:

CCLayerDelegate used to be an interface with a half-dozen callbacks on it, but now it has only one call -
paintContents() - and that one call is only valid for one subclass of LayerChromium, ContentLayerChromium. This
removes the CCLayerDelegate pointer from LayerChromium and adds a ContentLayerDelegate for the paint call.

The majority of the code changes in this patch are removing the nil parameter from various places that construct
LayerChromium instances. Also tightens the type of GraphicsLayerChromium::m_layer to ContentLayerChromium.

Refactoring/removing dead code, so no new tests.

  • platform/graphics/chromium/Canvas2DLayerChromium.cpp:

(WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):

  • platform/graphics/chromium/CanvasLayerChromium.cpp:

(WebCore::CanvasLayerChromium::CanvasLayerChromium):

  • platform/graphics/chromium/CanvasLayerChromium.h:
  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerPainter::create):
(WebCore::ContentLayerPainter::ContentLayerPainter):
(WebCore::ContentLayerChromium::create):
(WebCore::ContentLayerChromium::ContentLayerChromium):

  • platform/graphics/chromium/ContentLayerChromium.h:

(WebCore::ContentLayerDelegate::~ContentLayerDelegate):
(WebCore::ContentLayerChromium::clearDelegate):

  • platform/graphics/chromium/DrawingBufferChromium.cpp:

(WebCore::DrawingBuffer::platformLayer):

  • platform/graphics/chromium/GraphicsLayerChromium.cpp:

(WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
(WebCore::GraphicsLayerChromium::setContentsToImage):
(WebCore::GraphicsLayerChromium::setContentsToCanvas):
(WebCore::GraphicsLayerChromium::setContentsToMedia):
(WebCore::GraphicsLayerChromium::updateLayerPreserves3D):

  • platform/graphics/chromium/GraphicsLayerChromium.h:
  • platform/graphics/chromium/ImageLayerChromium.cpp:

(WebCore::ImageLayerChromium::create):
(WebCore::ImageLayerChromium::ImageLayerChromium):

  • platform/graphics/chromium/ImageLayerChromium.h:
  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::create):
(WebCore::LayerChromium::LayerChromium):

  • platform/graphics/chromium/LayerChromium.h:
  • platform/graphics/chromium/PluginLayerChromium.cpp:

(WebCore::PluginLayerChromium::create):
(WebCore::PluginLayerChromium::PluginLayerChromium):

  • platform/graphics/chromium/PluginLayerChromium.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::TiledLayerChromium):
(WebCore::TiledLayerChromium::drawsContent):

  • platform/graphics/chromium/TiledLayerChromium.h:
  • platform/graphics/chromium/VideoLayerChromium.cpp:

(WebCore::VideoLayerChromium::create):
(WebCore::VideoLayerChromium::VideoLayerChromium):

  • platform/graphics/chromium/VideoLayerChromium.h:
  • platform/graphics/chromium/WebGLLayerChromium.cpp:

(WebCore::WebGLLayerChromium::create):
(WebCore::WebGLLayerChromium::WebGLLayerChromium):

  • platform/graphics/chromium/WebGLLayerChromium.h:

Source/WebKit/chromium:

  • src/WebContentLayerImpl.cpp:

(WebKit::WebContentLayerImpl::~WebContentLayerImpl):

  • src/WebContentLayerImpl.h:
  • src/WebExternalTextureLayerImpl.cpp:

(WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayerImpl::~WebExternalTextureLayerImpl):

  • src/WebExternalTextureLayerImpl.h:
  • src/WebLayerImpl.cpp:

(WebKit::WebLayerImpl::WebLayerImpl):
(WebKit::WebLayerImpl::~WebLayerImpl):

  • src/WebLayerImpl.h:
  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::readyStateChanged):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::WebPluginContainerImpl):

  • tests/CCLayerIteratorTest.cpp:
  • tests/CCLayerTreeHostCommonTest.cpp:

(WebCore::LayerChromiumWithForcedDrawsContent::LayerChromiumWithForcedDrawsContent):
(WebCore::TEST):

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTest::doBeginTest):
(WTF::ContentLayerChromiumWithUpdateTracking::create):
(WTF::ContentLayerChromiumWithUpdateTracking::ContentLayerChromiumWithUpdateTracking):

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

(WTF::FakeTiledLayerChromium::FakeTiledLayerChromium):

  • tests/TreeSynchronizerTest.cpp:

(WebCore::MockLayerChromium::MockLayerChromium):
(WebCore::TEST):

4:00 PM Changeset in webkit [105459] by tony@chromium.org
  • 2 edits in trunk/Source/JavaScriptCore

[chromium] Remove an obsolete comment about features.gypi
https://bugs.webkit.org/show_bug.cgi?id=76643

There can be only one features.gypi.

Reviewed by James Robinson.

3:48 PM Changeset in webkit [105458] by abarth@webkit.org
  • 1 edit
    5 adds in trunk/LayoutTests

Add Chromium-specific image baselines for
fast/css/text-overflow-input.html. These results all appear to be
correct.

  • platform/chromium-linux/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-mac-leopard/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-win/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-win/fast/css/text-overflow-input-expected.txt: Added.
3:47 PM Changeset in webkit [105457] by commit-queue@webkit.org
  • 9 edits in trunk

[Coverity] Fix uninitialized constructor defects in .../html
https://bugs.webkit.org/show_bug.cgi?id=74965

Patch by Greg Billock <gbillock@google.com> on 2012-01-19
Reviewed by Simon Fraser.

Test: fast/canvas/script-tests/canvas-webkitLineDash.js

  • html/HTMLFormCollection.cpp:

(WebCore::HTMLFormCollection::HTMLFormCollection):

  • html/StepRange.cpp:

(WebCore::StepRange::StepRange):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::State::State):

  • html/canvas/CanvasStyle.h:

(WebCore::CanvasStyle::CMYKAValues::CMYKAValues):

  • html/canvas/WebGLGetInfo.cpp:

(WebCore::WebGLGetInfo::WebGLGetInfo):

  • html/parser/CSSPreloadScanner.cpp:

(WebCore::CSSPreloadScanner::CSSPreloadScanner):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::WebVTTParser):

3:38 PM Changeset in webkit [105456] by abarth@webkit.org
  • 13 edits
    1 move
    1 add in trunk/PerformanceTests

PerformanceTests's runner.js shouldn't be Parser-specific
https://bugs.webkit.org/show_bug.cgi?id=76670

Reviewed by Ryosuke Niwa.

This runner script is used by a bunch of difference performance tests.
It shouldn't be in the Parser directory anymore.

  • Bindings/event-target-wrapper.html:
  • Mutation/append-child-deep.html:
  • Mutation/append-child.html:
  • Mutation/inner-html.html:
  • Mutation/remove-child-deep.html:
  • Mutation/remove-child.html:
  • Parser/html-parser.html:
  • Parser/html5-full-render.html:
  • Parser/resources/runner.js: Removed.
  • Parser/simple-url.html:
  • Parser/tiny-innerHTML.html:
  • Parser/url-parser.html:
  • Parser/xml-parser.html:
  • resources: Added.
  • resources/runner.js: Copied from PerformanceTests/Parser/resources/runner.js.
3:34 PM Changeset in webkit [105455] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[SKIA / CHROMIUM] Add another test to test_expectations to prepare for change to use sw-rasterized paths in skia-gpu
https://bugs.webkit.org/show_bug.cgi?id=76469

Patch by Brian Salomon <bsalomon@google.com> on 2012-01-19
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
3:20 PM Changeset in webkit [105454] by Alexandru Chiculita
  • 8 edits in trunk

CSS Shaders: Remove the setTimeout from the layout tests
https://bugs.webkit.org/show_bug.cgi?id=76535

Reviewed by Tony Chang.

Source/WebCore:

We had setTimeout on old tests because the snapshot picture was taken too early, before the shaders were loaded.
The problem was that the RenderLayer was notified that the shader was loaded only after the onload event was triggered,
so a simple setTimeout(0) would have fixed the issue, but better than that would be to to always call CachedResource::data
in CachedShader::data, which notifies the load earlier (before onload).

No new tests, just removed the setTimeout from old ones.

  • loader/cache/CachedShader.cpp:

(WebCore::CachedShader::data):

LayoutTests:

No need for setTimeout anymore, so I've removed them from the custom filter tests.

  • css3/filters/custom-filter-shader-cache.html:
  • css3/filters/effect-custom-combined-missing.html:
  • css3/filters/effect-custom-parameters.html:
  • css3/filters/effect-custom.html:
  • css3/filters/missing-custom-filter-shader.html:
3:07 PM Changeset in webkit [105453] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Improve touch handling performance by reusing the hitTest result
https://bugs.webkit.org/show_bug.cgi?id=75506

Patch by Min Qin <qinmin@google.com> on 2012-01-19
Reviewed by Adam Barth.

This is a performance optimization and should not cause behavior changes. Existing tests should cover it.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent):

3:01 PM Changeset in webkit [105452] by ojan@chromium.org
  • 3 edits in trunk/Tools

check-webkit-style of the chromium test_expectations.txt file doesn't test all chromium ports
https://bugs.webkit.org/show_bug.cgi?id=76510

Reviewed by Adam Barth.

Unlike other style rules, if you get the syntax of the test_expectations.txt
file wrong, the layout tests won't run. Also, this check is simple and only
slows down committing if you actually modify one of the test_expectations.txt files.

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

(TestExpectationsChecker.check_test_expectations):
(TestExpectationsChecker.check):

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

(TestExpectationsTestCase.test_check_covers_all_configurations):
(TestExpectationsTestCase.test_check_covers_all_configurations.mock_check_test_expectations):
(TestExpectationsTestCase):
(assert_lines_lint):

2:56 PM Changeset in webkit [105451] by jonlee@apple.com
  • 8 edits
    7 adds in trunk

Add text-overflow support that allows placeholder and value text to show an ellipsis when not focused
https://bugs.webkit.org/show_bug.cgi?id=76118
<rdar://problem/9271742>

Reviewed by Dan Bernstein.

Source/WebCore:

Tests: fast/css/text-overflow-input-focus-placeholder-expected.html

fast/css/text-overflow-input-focus-placeholder.html
fast/css/text-overflow-input-focus-value-expected.html
fast/css/text-overflow-input-focus-value.html
fast/css/text-overflow-input.html

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::styleDidChange): When the style of the text control
changes, we update the text overflow property of the placeholder.
(WebCore::RenderTextControlSingleLine::createInnerTextStyle): When the style of the text control
changes, we update the text overflow property of the inner text block.
(WebCore::RenderTextControlSingleLine::textShouldBeTruncated): The text of the value and placeholder should
only contain the ellipsis if the input's text-overflow property is set to ellipsis, and the input is not focused.

  • rendering/RenderTextControlSingleLine.h:

LayoutTests:

  • fast/css/text-overflow-input-focus-placeholder-expected.html: Added.
  • fast/css/text-overflow-input-focus-placeholder.html: Added.
  • fast/css/text-overflow-input-focus-value-expected.html: Added.
  • fast/css/text-overflow-input-focus-value.html: Added.
  • fast/css/text-overflow-input.html: Added.

New baselines:

  • platform/mac/fast/css/text-overflow-input-expected.png: Added.
  • platform/mac/fast/css/text-overflow-input-expected.txt: Added.

Needs baselines:

  • platform/chromium/test_expectations.txt:
  • platform/gtk/test_expectations.txt:
  • platform/qt/test_expectations.txt:
  • platform/win/test_expectations.txt:
2:50 PM Changeset in webkit [105450] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Build fix. Revert an unintentional change to WebKitDriver in r105443.

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

(DriverProxy.init):

2:46 PM Changeset in webkit [105449] by dpranke@chromium.org
  • 6 edits in trunk

remove the duplicated build rules from WebKit.gyp, Tools.gyp
https://bugs.webkit.org/show_bug.cgi?id=73384

Reviewed by Tony Chang.

Source/WebKit/chromium:

This patch removes the no-longer-necessary conditional logic for
build_webkit_exes_from_webkit_gyp; we now always build the exes
from their own dedicated gyp files.

  • WebKit.gyp:
  • WebKitUnitTests.gyp:
  • gyp_webkit:

Tools:

This patch removes the no-longer-necessary conditional logic for
build_webkit_exes_from_webkit_gyp; we now always build the exes
from their own dedicated gyp files.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
2:36 PM Changeset in webkit [105448] by abarth@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

Add a V8-specific baseline for fast/regex/syntax-errors.html.

  • platform/chromium/fast/regex/syntax-errors-expected.txt: Added.
2:07 PM Changeset in webkit [105447] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebKit/win

Merged r92291.

2:07 PM Changeset in webkit [105446] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

This test can also timeout.

  • platform/chromium/test_expectations.txt:
2:04 PM Changeset in webkit [105445] by ap@apple.com
  • 2 edits in trunk/Tools

make-new-script-test should work with HTTP tests
https://bugs.webkit.org/show_bug.cgi?id=76603

Reviewed by Adam Roben.

  • Scripts/make-new-script-test:

(makePathToSharedSources): Renamed from makeTestRelativePathToSharedSources(), since it
now also creates absolute paths for HTTP.

1:57 PM Changeset in webkit [105444] by ggaren@apple.com
  • 6 edits
    2 adds in trunk

Implicit creation of a regular expression should eagerly check for syntax errors
https://bugs.webkit.org/show_bug.cgi?id=76642

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

This is a correctness fix and a slight optimization.

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncMatch):
(JSC::stringProtoFuncSearch): Check for syntax errors because that's the
correct behavior.

  • runtime/RegExp.cpp:

(JSC::RegExp::match): ASSERT that we aren't a syntax error. (One line
of code change, many lines of indentation change.)

Since we have no clients that try to match a RegExp that is a syntax error,
let's optimize out the check.

LayoutTests:

Reviewed by Oliver Hunt.

  • fast/js/code-serialize-paren-expected.txt:
  • fast/js/script-tests/code-serialize-paren.js: This test was secretly

broken due to a regexp syntax error. Now fixed.

  • fast/regex/syntax-errors-expected.txt: Added.
  • fast/regex/syntax-errors.html: Added.
1:50 PM Changeset in webkit [105443] by rniwa@webkit.org
  • 13 edits
    1 copy in trunk

Some perf tests time out when ran by run-perf-tests
https://bugs.webkit.org/show_bug.cgi?id=76612

Reviewed by Dirk Pranke and Eric Seidel.

PerformanceTests:

Replace all images in html5.html by geenbox.png to avoid accessing whatwg.org when
running the parser tests. Also call dumpAsText, waitUntilDone, and notifyDone automatically
inside runner.js to avoid having to call them in individual tests.

  • Bindings/event-target-wrapper.html: Removed calls to layoutTestController methods since

they are now called by runner.js automatically.

  • Parser/resources/greenbox.png: Copied from LayoutTests/fast/css/resources/greenbox.png.
  • Parser/resources/html5.html:
  • Parser/resources/runner.js:

(runLoop):

Tools:

Always pass --no-timeout to DumpRenderTree from run-perf-tests.
Otherwise some tests such as Parser/xml-parser.html will timeout.

--no-timeout option is currently supported by Chromium and Mac ports.

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

(Port.to.create_driver):

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

(ChromiumDriver.init):
(ChromiumDriver._wrapper_options):

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

(Driver.init):
(DriverProxy.init):

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

(WebKitDriver.init):
(WebKitDriver.cmd_line):

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

(WebKitDriverTest.test_read_binary_block):
(WebKitDriverTest):
(WebKitDriverTest.test_no_timeout):

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(get_tests_run.RecordingTestDriver.init):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):
(PerfTestsRunner._run_tests_set):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(create_runner):

1:49 PM Changeset in webkit [105442] by mhahnenberg@apple.com
  • 28 edits
    8 adds in trunk/Source

Implement a new allocator for backing stores
https://bugs.webkit.org/show_bug.cgi?id=75181

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

We want to move away from using fastMalloc for the backing stores for
some of our objects (e.g. JSArray, JSObject, JSString, etc). These backing
stores have a nice property in that they only have a single owner (i.e. a
single pointer to them at any one time). One way that we can take advantage
of this property is to implement a simple bump allocator/copying collector,
which will run alongside our normal mark/sweep collector, that only needs to
update the single owner pointer rather than having to redirect an arbitrary
number of pointers in from-space to to-space.

This plan can give us a number of benefits. We can beat fastMalloc in terms
of both performance and memory usage, we can track how much memory we're using
far more accurately than our rough estimation now through the use of
reportExtraMemoryCost, and we can allocate arbitrary size objects (as opposed
to being limited to size classes like we have been historically). This is also
another step toward moving away from lazy destruction, which will improve our memory footprint.

We start by creating said allocator and moving the ArrayStorage for JSArray
to use it rather than fastMalloc.

The design of the collector is as follows:
Allocation:
-The collector allocates 64KB chunks from the OS to use for object allocation.
-Each chunk contains an offset, a flag indicating if the block has been pinned,

and a payload, along with next and prev pointers so that they can be put in DoublyLinkedLists.

-Any allocation greater than 64KB gets its own separate oversize block, which

is managed separately from the rest.

-If the allocator receives a request for more than the remaining amount in the

current block, it grabs a fresh block.

-Grabbing a fresh block means grabbing one off of the global free list (which is now

shared between the mark/sweep allocator and the bump allocator) if there is one.
If there isn't a new one we do one of two things: allocate a new block from the OS
if we're not ready for a GC yet, or run a GC and then try again. If we still don't
have enough space after the GC, we allocate a new block from the OS.

Garbage collection:
-At the start of garbage collection during conservative stack scanning, if we encounter

what appears to be a pointer to a bump-allocated block of memory, we pin that block so
that it will not be copied for this round of collection.

-We also pin any oversize blocks that we encounter, which effectively doubles as a

"mark bit" for that block. Any oversize blocks that aren't pinned at the end of copying
are given back to the OS.

-Marking threads are now also responsible for copying bump-allocated objects to newSpace
-Each marking thread has a private 64KB block into which it copies bump-allocated objects that it encounters.
-When that block fills up, the marking thread gives it back to the allocator and requests a new one.
-When all marking has concluded, each thread gives back its copy block, even if it isn't full.
-At the conclusion of copying (which is done by the end of the marking phase), we un-pin

any pinned blocks and give any blocks left in from-space to the global free list.

(JSC::AllocationSpace::allocateSlowCase):
(JSC::AllocationSpace::allocateBlock):
(JSC::AllocationSpace::freeBlocks):

  • heap/AllocationSpace.h:

(JSC::AllocationSpace::waterMark):

  • heap/BumpBlock.h: Added.

(JSC::BumpBlock::BumpBlock):

  • heap/BumpSpace.cpp: Added.

(JSC::BumpSpace::tryAllocateSlowCase):

  • heap/BumpSpace.h: Added.

(JSC::BumpSpace::isInCopyPhase):
(JSC::BumpSpace::totalMemoryAllocated):
(JSC::BumpSpace::totalMemoryUtilized):

  • heap/BumpSpaceInlineMethods.h: Added.

(JSC::BumpSpace::BumpSpace):
(JSC::BumpSpace::init):
(JSC::BumpSpace::contains):
(JSC::BumpSpace::pin):
(JSC::BumpSpace::startedCopying):
(JSC::BumpSpace::doneCopying):
(JSC::BumpSpace::doneFillingBlock):
(JSC::BumpSpace::recycleBlock):
(JSC::BumpSpace::getFreshBlock):
(JSC::BumpSpace::borrowBlock):
(JSC::BumpSpace::addNewBlock):
(JSC::BumpSpace::allocateNewBlock):
(JSC::BumpSpace::fitsInBlock):
(JSC::BumpSpace::fitsInCurrentBlock):
(JSC::BumpSpace::tryAllocate):
(JSC::BumpSpace::tryAllocateOversize):
(JSC::BumpSpace::allocateFromBlock):
(JSC::BumpSpace::tryReallocate):
(JSC::BumpSpace::tryReallocateOversize):
(JSC::BumpSpace::isOversize):
(JSC::BumpSpace::isPinned):
(JSC::BumpSpace::oversizeBlockFor):
(JSC::BumpSpace::blockFor):

  • heap/ConservativeRoots.cpp:

(JSC::ConservativeRoots::ConservativeRoots):
(JSC::ConservativeRoots::genericAddPointer):
(JSC::ConservativeRoots::add):

  • heap/ConservativeRoots.h:
  • heap/Heap.cpp:

(JSC::Heap::Heap):
(JSC::Heap::blockFreeingThreadMain):
(JSC::Heap::reportExtraMemoryCostSlowCase):
(JSC::Heap::getConservativeRegisterRoots):
(JSC::Heap::markRoots):
(JSC::Heap::collect):
(JSC::Heap::releaseFreeBlocks):

  • heap/Heap.h:

(JSC::Heap::waterMark):
(JSC::Heap::highWaterMark):
(JSC::Heap::setHighWaterMark):
(JSC::Heap::tryAllocateStorage):
(JSC::Heap::tryReallocateStorage):

  • heap/HeapBlock.h: Added.

(JSC::HeapBlock::HeapBlock):

  • heap/MarkStack.cpp:

(JSC::MarkStackThreadSharedData::MarkStackThreadSharedData):
(JSC::SlotVisitor::drain):
(JSC::SlotVisitor::drainFromShared):
(JSC::SlotVisitor::startCopying):
(JSC::SlotVisitor::allocateNewSpace):
(JSC::SlotVisitor::copy):
(JSC::SlotVisitor::copyAndAppend):
(JSC::SlotVisitor::doneCopying):

  • heap/MarkStack.h:
  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::recycle):
(JSC::MarkedBlock::MarkedBlock):

  • heap/MarkedBlock.h:
  • heap/MarkedSpace.cpp:

(JSC::MarkedSpace::MarkedSpace):

  • heap/MarkedSpace.h:

(JSC::MarkedSpace::allocate):
(JSC::MarkedSpace::forEachBlock):
(JSC::MarkedSpace::SizeClass::resetAllocator):

  • heap/SlotVisitor.h:

(JSC::SlotVisitor::SlotVisitor):

  • heap/TinyBloomFilter.h:

(JSC::TinyBloomFilter::reset):

  • runtime/JSArray.cpp:

(JSC::JSArray::JSArray):
(JSC::JSArray::finishCreation):
(JSC::JSArray::tryFinishCreationUninitialized):
(JSC::JSArray::~JSArray):
(JSC::JSArray::enterSparseMode):
(JSC::JSArray::defineOwnNumericProperty):
(JSC::JSArray::setLengthWritable):
(JSC::JSArray::getOwnPropertySlotByIndex):
(JSC::JSArray::getOwnPropertyDescriptor):
(JSC::JSArray::putByIndexBeyondVectorLength):
(JSC::JSArray::deletePropertyByIndex):
(JSC::JSArray::getOwnPropertyNames):
(JSC::JSArray::increaseVectorLength):
(JSC::JSArray::unshiftCountSlowCase):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::unshiftCount):
(JSC::JSArray::visitChildren):
(JSC::JSArray::sortNumeric):
(JSC::JSArray::sort):
(JSC::JSArray::compactForSorting):
(JSC::JSArray::subclassData):
(JSC::JSArray::setSubclassData):
(JSC::JSArray::checkConsistency):

  • runtime/JSArray.h:

(JSC::JSArray::inSparseMode):
(JSC::JSArray::isLengthWritable):

  • wtf/CheckedBoolean.h: Added.

(CheckedBoolean::CheckedBoolean):
(CheckedBoolean::~CheckedBoolean):
(CheckedBoolean::operator bool):

  • wtf/DoublyLinkedList.h:

(WTF::::push):

  • wtf/StdLibExtras.h:

(WTF::isPointerAligned):

Source/JavaScriptGlue:

Added forwarding header for new CheckedBoolean used in the bump allocator.

  • ForwardingHeaders/wtf/CheckedBoolean.h: Added.

Source/WebCore:

No new tests.

Added forwarding header for new CheckedBoolean used in the bump allocator.

  • ForwardingHeaders/wtf/CheckedBoolean.h: Added.
1:41 PM Changeset in webkit [105441] by rniwa@webkit.org
  • 5 edits
    2 adds in trunk

Crash in CompositeEditCommand::ensureComposition
https://bugs.webkit.org/show_bug.cgi?id=76207

Reviewed by Chang Shu.

Source/WebCore:

The crash was caused by TypingCommand not kept alive when new editing commands are executed
during adding more typings to the open last typing command since m_lastEditCommand is replaced
by the new command. Fixed the bug by keeping them alive a little longer with RefPtr.

Test: editing/execCommand/editing-command-while-executing-typing-command-crash.html

  • editing/FrameSelection.cpp:

(WebCore::shouldStopBlinkingDueToTypingCommand):
(WebCore::FrameSelection::updateAppearance):

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::deleteSelection):
(WebCore::TypingCommand::deleteKeyPressed):
(WebCore::TypingCommand::forwardDeleteKeyPressed):
(WebCore::TypingCommand::insertText):
(WebCore::TypingCommand::insertLineBreak):
(WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
(WebCore::TypingCommand::insertParagraphSeparator):
(WebCore::TypingCommand::lastTypingCommandIfStillOpenForTyping):
(WebCore::TypingCommand::closeTyping):

  • editing/TypingCommand.h:

LayoutTests:

Add a regression test.

  • editing/execCommand/editing-command-while-executing-typing-command-crash-expected.txt: Added.
  • editing/execCommand/editing-command-while-executing-typing-command-crash.html: Added.
1:16 PM Changeset in webkit [105440] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed debug build fix.

Remove ASSERT that the cached match is cacheable (we don't store that flag anymore.)

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):

12:55 PM Changeset in webkit [105439] by adachan@apple.com
  • 10 edits in trunk/Source/WebKit2

Need a WebKit2 API for setting media volume https://bugs.webkit.org/show_bug.cgi?id=76560

Reviewed by Dan Bernstein.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode): Encode the mediaVolume parameter.
(WebKit::WebPageCreationParameters::decode): Decode the mediaVolume parameter.

  • Shared/WebPageCreationParameters.h:
  • UIProcess/API/C/WKPage.cpp:

(WKPageSetMediaVolume): Call WebPageProxy::setMediaVolume().

  • UIProcess/API/C/WKPagePrivate.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy): Initialize new data member m_mediaVolume.
(WebKit::WebPageProxy::setMediaVolume): Bail if the volume hasn't changed. Update m_mediaVolume
and bail if the page is no longer valid. Otherwise, send a WebPage::SetMediaVolume message to
the web process.
(WebKit::WebPageProxy::creationParameters): Add media volume to the creation parameters.

  • UIProcess/WebPageProxy.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialize media volume from the WebPageCreationParameters.
(WebKit::WebPage::setMediaVolume): Call Page::setMediaVolume().

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in: Add the SetMediaVolume message.
12:52 PM Changeset in webkit [105438] by robert@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix Debug build after r105433

Unreviewed, build fix.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::recalcCollapsedBorders):

12:47 PM Changeset in webkit [105437] by benwells@chromium.org
  • 3 edits in trunk/Tools

Add support for window.print to chromium DRT
https://bugs.webkit.org/show_bug.cgi?id=76479

When used in a test window.print goes into print mode and then
straight out again. This will allow the afterprint event to be
tested by having the afterprint event happen before the dump
happens.

Reviewed by Mihai Parparita.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::printPage):

  • DumpRenderTree/chromium/WebViewHost.h:
12:35 PM Changeset in webkit [105436] by dpranke@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, Roll DEPS to most recent LKGR (118291).

  • DEPS:
12:32 PM Changeset in webkit [105435] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

CSSStyleSelector: Factor 'isCacheable' flag out of MatchedResult.
<http://webkit.org/b/76376>

Reviewed by Antti Koivisto.

Break up the MatchResult struct into MatchResult and MatchRanges. The matched
declaration cache only needs the ranges, so we save 4 bytes per entry.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::matchAllRules):
(WebCore::CSSStyleSelector::matchUARules):
(WebCore::CSSStyleSelector::pseudoStyleForElement):
(WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
(WebCore::operator==):
(WebCore::operator!=):
(WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):
(WebCore::CSSStyleSelector::addToMatchedDeclarationCache):
(WebCore::CSSStyleSelector::applyMatchedDeclarations):

  • css/CSSStyleSelector.h:

(WebCore::CSSStyleSelector::MatchRanges::MatchRanges):
(WebCore::CSSStyleSelector::MatchResult::MatchResult):

12:28 PM Changeset in webkit [105434] by eric.carlson@apple.com
  • 6 edits
    2 adds in trunk

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

Reviewed by Darin Adler.

Notify the media element when tracks are added to and removed from a document instead of
a tree because we don't want to trigger loading unless a track element is in the document.

Test: media/track/track-delete-during-setup.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::trackWasRemoved): Renamed from trackWillBeRemoved because it is

now called after removal.

  • html/HTMLMediaElement.h:
  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::insertedIntoDocument): Was insertedIntoTree. Use this instead

because we care about when a track is inserted and removed from a document, not a tree.

(WebCore::HTMLTrackElement::removedFromDocument): Ditto.

  • html/HTMLTrackElement.h:
12:27 PM Changeset in webkit [105433] by robert@webkit.org
  • 3 edits
    2 adds in trunk

Hit ASSERTION FAILED: table()->collapseBorders() on techcrunch.com
https://bugs.webkit.org/show_bug.cgi?id=76405

Reviewed by Julien Chaffraix.

Source/WebCore:

Tests: fast/css/nested-table-with-collapsed-borders.html

Change recalcCollapsedBorders() so that it only collects border values for the current
table. Calculating the borders for nested tables was wrong as well as wasting cycles, though it would never
have impacted rendering since a cell only paints the borders that match its own.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::recalcCollapsedBorders):

LayoutTests:

  • fast/css/nested-table-with-collapsed-borders-expected.html: Added.
  • fast/css/nested-table-with-collapsed-borders.html: Added.
12:03 PM Changeset in webkit [105432] by dbates@webkit.org
  • 2 edits
    5 adds
    4 deletes in trunk/Websites/webkit.org

Update Debugging on Mac OS X instructions for Safari 5.1/WebKit 2
https://bugs.webkit.org/show_bug.cgi?id=67102

Reviewed by Eric Seidel.

Add instructions for debugging UIProcess and WebProcess using Xcode 4.

  • building/active-scheme-xcode4.png: Added.
  • building/build-settings-tab-xcode4.png: Added.
  • building/build-window.png: Removed.
  • building/custom-executable-xcode4.png: Added.
  • building/custom-executable.png: Removed.
  • building/debug-mac-uiprocess.html: Added.
  • building/debug.html:
  • building/debug.png: Removed.
  • building/info-tab.png: Removed.
  • building/run-xcode4.png: Added.
12:01 PM Changeset in webkit [105431] by jer.noble@apple.com
  • 54 edits in trunk/Source

Make WebAudio API const-correct.
https://bugs.webkit.org/show_bug.cgi?id=76573

Reviewed by Daniel Bates.

Source/WebCore:

No new tests; no net change in functionality, so covered by existing tests.

The non-const data() accessor was renamed mutableData() to expose const-correctness
bugs during compile time:

  • platform/audio/AudioChannel.h:

(WebCore::AudioChannel::mutableData):

The following functions were made const correct:

  • platform/audio/AudioArray.h:

(WebCore::AudioArray::copyToRange):

  • platform/audio/AudioBus.h:

(WebCore::AudioBus::createBufferFromRange):
(WebCore::AudioBus::createBySampleRateConverting):
(WebCore::AudioBus::createByMixingToMono):

  • platform/audio/FFTConvolver.cpp:

(WebCore::FFTConvolver::process):

  • platform/audio/FFTConvolver.h:
  • platform/audio/FFTFrame.cpp:

(WebCore::FFTFrame::doPaddedFFT):
(WebCore::FFTFrame::doFFT):

  • platform/audio/FFTFrame.h:
  • platform/audio/ReverbConvolverStage.cpp:

(WebCore::ReverbConvolverStage::ReverbConvolverStage):
(WebCore::ReverbConvolverStage::process):

  • platform/audio/ReverbConvolverStage.h:
  • platform/audio/ReverbInputBuffer.cpp:

(WebCore::ReverbInputBuffer::write):

  • platform/audio/ReverbInputBuffer.h:
  • platform/audio/SincResampler.cpp:

(WebCore::SincResampler::process):

  • platform/audio/SincResampler.h:
  • platform/audio/ZeroPole.cpp:

(WebCore::ZeroPole::process):

  • platform/audio/ZeroPole.h:
  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::channelByType):

  • platform/audio/AudioBus.h:

(WebCore::AudioBus::gain):

  • platform/audio/AudioDSPKernelProcessor.cpp:

(WebCore::AudioDSPKernelProcessor::process):

  • platform/audio/AudioDSPKernelProcessor.h:
  • platform/audio/AudioProcessor.h:
  • platform/audio/DynamicsCompressor.cpp:

(WebCore::DynamicsCompressor::process):

  • platform/audio/DynamicsCompressor.h:
  • platform/audio/DynamicsCompressorKernel.cpp:

(WebCore::DynamicsCompressorKernel::process):

  • platform/audio/DynamicsCompressorKernel.h:
  • platform/audio/EqualPowerPanner.cpp:

(WebCore::EqualPowerPanner::pan):

  • platform/audio/EqualPowerPanner.h:
  • platform/audio/HRTFElevation.h:

(WebCore::HRTFElevation::numberOfAzimuths):

  • platform/audio/HRTFPanner.cpp:

(WebCore::HRTFPanner::pan):

  • platform/audio/HRTFPanner.h:
  • platform/audio/Panner.h:
  • platform/audio/Reverb.cpp:

(WebCore::Reverb::process):

  • platform/audio/Reverb.h:
  • platform/audio/ReverbConvolver.cpp:

(WebCore::ReverbConvolver::process):

  • platform/audio/ReverbConvolver.h:
  • platform/audio/ffmpeg/FFTFrameFFMPEG.cpp:

(WebCore::FFTFrame::doFFT):

  • platform/audio/mkl/FFTFrameMKL.cpp:

(WebCore::FFTFrame::doFFT):

The following functions were modified to use the renamed mutableData() accessor:

  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::processWithGainFromMonoStereo):
(WebCore::AudioBus::copyWithSampleAccurateGainValuesFrom):

  • platform/audio/AudioChannel.cpp:

(WebCore::AudioChannel::scale):
(WebCore::AudioChannel::copyFrom):
(WebCore::AudioChannel::copyFromRange):
(WebCore::AudioChannel::sumFrom):

  • platform/audio/AudioDSPKernelProcessor.cpp:

(WebCore::AudioDSPKernelProcessor::process):

  • platform/audio/AudioResampler.cpp:

(WebCore::AudioResampler::process):

  • platform/audio/DynamicsCompressor.cpp:

(WebCore::DynamicsCompressor::process):

  • platform/audio/EqualPowerPanner.cpp:

(WebCore::EqualPowerPanner::pan):

  • platform/audio/HRTFKernel.cpp:

(WebCore::extractAverageGroupDelay):
(WebCore::HRTFKernel::HRTFKernel):
(WebCore::HRTFKernel::createImpulseResponse):

  • platform/audio/HRTFPanner.cpp:

(WebCore::HRTFPanner::pan):

  • platform/audio/MultiChannelResampler.cpp:

(WebCore::MultiChannelResampler::process):

  • platform/audio/Reverb.cpp:

(WebCore::Reverb::process):

  • platform/audio/ReverbConvolver.cpp:

(WebCore::ReverbConvolver::ReverbConvolver):
(WebCore::ReverbConvolver::process):

  • platform/audio/mac/AudioFileReaderMac.cpp:

(WebCore::AudioFileReader::createBus):

  • platform/audio/mac/FFTFrameMac.cpp:

(WebCore::FFTFrame::doFFT):

  • webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::process):
(WebCore::AudioBufferSourceNode::renderFromBuffer):

  • webaudio/BiquadProcessor.cpp:

(WebCore::BiquadProcessor::process):

  • webaudio/JavaScriptAudioNode.cpp:

(WebCore::JavaScriptAudioNode::process):

  • webaudio/OfflineAudioDestinationNode.cpp:

(WebCore::OfflineAudioDestinationNode::render):

  • webaudio/RealtimeAnalyser.cpp:

(WebCore::RealtimeAnalyser::writeInput):

  • webaudio/WaveShaperProcessor.cpp:

(WebCore::WaveShaperProcessor::process):

Source/WebKit/chromium:

The following functions were modified to use the renamed mutableData() accessor:

  • src/AudioDestinationChromium.cpp:

(WebCore::AudioDestinationChromium::FIFO::fillBuffer):
(WebCore::AudioDestinationChromium::FIFO::consume):

  • src/WebAudioData.cpp:

(WebCore::WebAudioBus::channelData):

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::AudioSourceProviderImpl::provideInput):

11:15 AM Changeset in webkit [105430] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, inspector closure compilation fix.

  • inspector/front-end/ScriptsPanel.js:
  • inspector/front-end/TabbedEditorContainer.js:
11:13 AM Changeset in webkit [105429] by hyatt@apple.com
  • 8 edits in trunk

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

Before landing support for centering, fix the keyword value to match the latest draft.
The new keyword is "contain" instead of "bounds."

Revised the existing parsing tests to reflect the updated value.

Reviewed by Dan Bernstein.

Source/WebCore:

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator LineGridSnap):

  • css/CSSValueKeywords.in:
  • rendering/style/RenderStyleConstants.h:

LayoutTests:

  • fast/line-grid/line-grid-snap-parsing-expected.txt:
  • fast/line-grid/script-tests/line-grid-snap-parsing.js:
11:00 AM Changeset in webkit [105428] by tony@chromium.org
  • 10 edits
    1 copy
    2 adds in trunk/Source

Enable use of precompiled headers in Chromium port on Windows.

Bug 76381 - Use precompiled headers in Chromium port on Windows
https://bugs.webkit.org/show_bug.cgi?id=76381

Patch by Joi Sigurdsson <joi@chromium.org> on 2012-01-19
Reviewed by Tony Chang.

Source/JavaScriptCore:

Source/Platform:

  • Platform.gyp/Platform.gyp: Include WinPrecompile.gypi.

Source/WebCore:

No new tests needed; if the change builds and existing tests pass
that should provide enough coverage.

  • WebCore.gyp/WebCore.gyp: Include WinPrecompile.gypi.

Source/WebKit/chromium:

  • WebKit.gyp: Include WinPrecompile.gypi.
  • WinPrecompile.cpp: Added.
  • WinPrecompile.gypi: Added.
  • WinPrecompile.h: Added.

Source/WTF:

  • WTF.gyp/WTF.gyp: Include WinPrecompile.gypi.
10:57 AM Changeset in webkit [105427] by vsevik@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Switching tabs in TabbedEditorContainer should reveal selected script in navigator.
https://bugs.webkit.org/show_bug.cgi?id=76636

Reviewed by Pavel Feldman.

Renamed FileSelector's ScriptSelected event into FileSelected, added EditorSelected
event to EditorContainer.
Renamed _showSourceFrame into _showFile.
Made _uiSourceCodeRemoved reuse _removeSourceFrame.

  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.ScriptsNavigator.prototype.scriptSelected):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):
(WebInspector.ScriptsPanel.prototype._showAndRevealInFileSelector):
(WebInspector.ScriptsPanel.prototype._editorSelected):
(WebInspector.ScriptsPanel.prototype._fileSelected):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goBack):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goForward):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._filesSelectChanged):

  • inspector/front-end/TabbedEditorContainer.js:

(WebInspector.TabbedEditorContainer):
(WebInspector.TabbedEditorContainer.prototype._tabSelected):

10:55 AM Changeset in webkit [105426] by mihnea@adobe.com
  • 4 edits in trunk

[CSSRegions]Add support for background-color in region styling
https://bugs.webkit.org/show_bug.cgi?id=71488

Reviewed by David Hyatt.

Source/WebCore:

This patch enables region styling again. The region styling tests were also added back.
With the improvements from https://bugs.webkit.org/show_bug.cgi?id=76265, hopefully we will not see the same 3% regressions
in performance.

  • rendering/RenderObject.h:

(WebCore::RenderObject::style):

LayoutTests:

Add back the region styling tests.

  • platform/mac-snowleopard/Skipped:
10:53 AM Changeset in webkit [105425] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Crash at WebCore::MediaControlRootElement::makeOpaque + 97
https://bugs.webkit.org/show_bug.cgi?id=76391

Reviewed by John Sullivan.

No new tests; Speculative fix for crash.

Crash report data suggests this crash is occurring as the document is being
closed. Check the nullity of document()->page() before deref-ing.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlPanelElement::makeOpaque):

10:36 AM Changeset in webkit [105424] by kov@webkit.org
  • 2 edits in trunk

Rubber-stamped by Martin Robinson.

  • Source/autotools/symbols.filter: try to fix the 32 bits release

bot by also adding the symbol it generates

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

Layout Test fast/text/international/spaces-combined-in-vertical-text.html is failing
https://bugs.webkit.org/show_bug.cgi?id=75787

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-19
Reviewed by Simon Fraser.

This is a tweak to my patch in r104322. On some platforms
RenderCombineText::combineText() can abort early during inline
iteration, causing this loop in skipLeadingWhitespace to spin,
hence the layout test timeouts. This patch accounts for that
condition and makes the loop iteration more robust.

No new test because this is fixing a failure on an existing test.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace):

9:54 AM Changeset in webkit [105422] by kerz@chromium.org
  • 1 edit in branches/chromium/963/LayoutTests/platform/chromium/test_expectations.txt

clean up branch expectations

9:52 AM Changeset in webkit [105421] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

HRTFPanner not rendering correctly on mac port
https://bugs.webkit.org/show_bug.cgi?id=76397

Reviewed by Eric Carlson.

No new tests; HRTF results are currently not testable.

Re-generate the Composite.wav file from its constituent azimuth & elevation files.

  • platform/audio/resources/Composite.wav:
9:45 AM Changeset in webkit [105420] by hyatt@apple.com
  • 3 edits
    2 adds in trunk

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

Fix crash when nested line grids are used. Make sure to bail out if no line grid
is found rather than crashing.

Reviewed by Dan Bernstein.

Source/WebCore:

Added fast/line-grid/line-grid-nested.html.

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::establishLineGrid):

LayoutTests:

  • fast/line-grid/line-grid-nested-expected.txt: Added.
  • fast/line-grid/line-grid-nested.html: Added.
9:40 AM Changeset in webkit [105419] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] WebKit2 GTK+ API public headers are not installed
https://bugs.webkit.org/show_bug.cgi?id=76626

Reviewed by Martin Robinson.

  • GNUmakefile.am: Rename webkit2gtk_headers as

libwebkit2gtkinclude_HEADERS to match libwebkit2gtkincludedir so
that headers are installed during make install.

9:34 AM Changeset in webkit [105418] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] A Skia roll will break some tests - marking as expected
https://bugs.webkit.org/show_bug.cgi?id=76638

Unreviewed test_expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-19

  • platform/chromium/test_expectations.txt:
9:30 AM Changeset in webkit [105417] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebKit2

[GTK] Add print-backgrounds setting to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=76616

Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitSettings.cpp:

(webKitSettingsSetProperty):
(webKitSettingsGetProperty):
(webkit_settings_class_init):
(webkit_settings_get_print_backgrounds):
(webkit_settings_set_print_backgrounds):

  • UIProcess/API/gtk/WebKitSettings.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
  • UIProcess/API/gtk/tests/TestWebKitSettings.cpp:

(testWebKitSettings):

8:55 AM Changeset in webkit [105416] by enrica@apple.com
  • 4 edits in trunk

editingAttributedStringFromRange in WebHTMLConverter does not handle NSUnderlineStyleAttributeName.
https://bugs.webkit.org/show_bug.cgi?id=76588
<rdar://problem/9325183>

Source/WebCore:

Reviewed by Dan Bernstein.

Added TestWebKitAPI test.

  • platform/mac/HTMLConverter.mm:

(+[WebHTMLConverter editingAttributedStringFromRange:]):

Tools:

Added test.

Reviewed by Dan Bernstein.

  • TestWebKitAPI/Tests/mac/InspectorBar.mm:

(TestWebKitAPI::TEST):

8:39 AM Changeset in webkit [105415] by apavlov@chromium.org
  • 11 edits
    2 adds in trunk

Web Inspector: Implement screen resolution emulation backend
https://bugs.webkit.org/show_bug.cgi?id=76532

Reviewed by Pavel Feldman.

Source/WebCore:

The emulation affects [min-|max-]device-(width|height) media queries, window.screen.(width|height),
and window.inner(Width|Height).

Test: inspector/styles/override-screen-size.html

  • css/MediaQueryEvaluator.cpp:

(WebCore::device_heightMediaFeatureEval): Apply device-height override if necessary.
(WebCore::device_widthMediaFeatureEval): Apply device-width override if necessary.

  • inspector/Inspector.json:
  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::InspectorCSSAgent):
(WebCore::InspectorCSSAgent::startSelectorProfiler):
(WebCore::InspectorCSSAgent::stopSelectorProfilerImpl):
(WebCore::InspectorCSSAgent::willMatchRule):
(WebCore::InspectorCSSAgent::didMatchRule):
(WebCore::InspectorCSSAgent::willProcessRule):
(WebCore::InspectorCSSAgent::didProcessRule):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::applyScreenWidthOverrideImpl):
(WebCore::InspectorInstrumentation::applyScreenHeightOverrideImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::applyScreenWidthOverride):
(WebCore::InspectorInstrumentation::applyScreenHeightOverride):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::restore):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::setScreenSizeOverride):
(WebCore::InspectorPageAgent::applyScreenWidthOverride):
(WebCore::InspectorPageAgent::applyScreenHeightOverride):
(WebCore::InspectorPageAgent::updateFrameViewFixedLayout):
(WebCore::InspectorPageAgent::clearFrameViewFixedLayout):
(WebCore::InspectorPageAgent::setFrameViewFixedLayout):

  • inspector/InspectorPageAgent.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::innerHeight): Apply height override if necessary.
(WebCore::DOMWindow::innerWidth): Apply width override if necessary.

  • page/Screen.cpp:

(WebCore::Screen::height): Apply height override if necessary.
(WebCore::Screen::width): Apply width override if necessary.

LayoutTests:

  • inspector/styles/override-screen-size-expected.txt: Added.
  • inspector/styles/override-screen-size.html: Added.
8:36 AM Changeset in webkit [105414] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK test_expectations update for a new failing test.

  • platform/gtk/test_expectations.txt:
7:37 AM Changeset in webkit [105413] by jocelyn.turcotte@nokia.com
  • 13 edits in trunk/Source

[Qt] Handle the layers visible rect calculation on the web process.
https://bugs.webkit.org/show_bug.cgi?id=74720

Reviewed by Noam Rosenthal.

Source/WebCore:

Remove all visible rect calculation related code from TextureMapperNode.

  • platform/graphics/texmap/TextureMapperNode.cpp:
  • platform/graphics/texmap/TextureMapperNode.h:

Source/WebKit2:

The layers now get their visible rect on the web process through the
root layer when the UI process call setVisibleContentRectAndScale,
previously only used for the non-composited content layer.
The rect is then carried down the layers in the tree which apply it the inverse
of their transform before handing it to their tiled backing store.

This ensures that new layers get a proper visible rect right on creation,
and also that simultaneous visible rect and scale changes are applied synchronously.

This patch also uses clampedBoundsOfProjectedQuad instead of mapRect
to transform the visible rect correctly for 3D transformed layers.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initializeDesktop):
(QQuickWebViewPrivate::initializeTouch):
(QQuickWebViewPrivate::updateDesktopViewportSize):
(QQuickWebViewPrivate::updateTouchViewportSize):
(QQuickWebView::geometryChanged):
Make sure that the visible rect is updated for the desktop view as well.

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/LayerTreeHostProxy.h:
  • UIProcess/qt/LayerTreeHostProxyQt.cpp:

(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::setMaskLayer):
(WebCore::WebGraphicsLayer::syncCompositingState):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::WebGraphicsLayer::setVisibleContentRectAndScale):
(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::WebGraphicsLayer::computeTransformedVisibleRect):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:
  • WebProcess/WebPage/LayerTreeHost.messages.in:
  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::setVisibleContentRectAndScale):

  • WebProcess/WebPage/qt/LayerTreeHostQt.h:
7:27 AM Changeset in webkit [105412] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK gardening skipping 3 new test failures.

  • platform/gtk/Skipped:
7:12 AM Changeset in webkit [105411] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, unskip passing test.

  • platform/qt/Skipped:
7:05 AM Changeset in webkit [105410] by vsevik@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Improve focus switching in scripts panel.
https://bugs.webkit.org/show_bug.cgi?id=76628

Reviewed by Pavel Feldman.

  • inspector/front-end/Dialog.js:

(WebInspector.Dialog.prototype._hide):

  • inspector/front-end/FilteredItemSelectionDialog.js:

(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.JavaScriptOutlineDialog.prototype.selectItem):

  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._showSourceLine):

5:56 AM Changeset in webkit [105409] by vsevik@chromium.org
  • 11 edits in trunk/Source/WebCore

Web Inspector: Add isSelfOrAnsector and isSelfOrDescendant methods to utilities.
https://bugs.webkit.org/show_bug.cgi?id=76618

Added isSelfOrAncestor, isSelfOrDescendant and WebInspector.restoreFocusFromElement methods.

Reviewed by Pavel Feldman.

  • inspector/front-end/Drawer.js:
  • inspector/front-end/HelpScreen.js:

(WebInspector.HelpScreen.prototype._onBlur):

  • inspector/front-end/MetricsSidebarPane.js:

(WebInspector.MetricsSidebarPane.prototype._handleKeyDown):

  • inspector/front-end/Popover.js:
  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.showUISourceCode):

  • inspector/front-end/StylesSidebarPane.js:

():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.detach):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextEditorMainPanel.prototype._updateSelectionOnStartEditing):
(WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):

  • inspector/front-end/UIUtils.js:

(WebInspector.startEditing.cleanUpAfterEditing):
(WebInspector.restoreFocusFromElement):

  • inspector/front-end/utilities.js:

(Element.prototype.isInsertionCaretInside):
():

5:53 AM Changeset in webkit [105408] by kling@webkit.org
  • 6 edits in trunk/Source/WebCore

DynamicNodeList: Simplify internal Caches object.
<http://webkit.org/b/76600>

Reviewed by Ryosuke Niwa.

Move m_caches from DynamicSubtreeNodeList and ChildNodeList up into DynamicNodeList.
Remove the inheritance from RefCounted and store it simply as "Caches m_caches"
This avoids one heap allocation per DynamicNodeList. Also reordered the Caches members
to pack slightly better on 64-bit.

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::ChildNodeList):
(WebCore::ChildNodeList::length):
(WebCore::ChildNodeList::item):

  • dom/ChildNodeList.h:
  • dom/DynamicNodeList.cpp:

(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):

  • dom/DynamicNodeList.h:

(WebCore::DynamicNodeList::invalidateCache):

  • dom/Node.cpp:

(WebCore::NodeRareData::clearChildNodeListCache):

5:47 AM Changeset in webkit [105407] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: TabbedPane closeAllTabs does not close all tabs.
https://bugs.webkit.org/show_bug.cgi?id=76624

Reviewed by Pavel Feldman.

  • inspector/front-end/ScriptsPanel.js:
  • inspector/front-end/TabbedPane.js:

(WebInspector.TabbedPane.prototype.closeAllTabs):

5:32 AM Changeset in webkit [105406] by rwlbuis@webkit.org
  • 2 edits in trunk/Source/WebCore

image/pjpeg not supported for decoding on BlackBerry platform
https://bugs.webkit.org/show_bug.cgi?id=76595

Reviewed by Antonio Gomes.

Add image/pjpeg as one of the supported types for image decoding on BlackBerry platform.

  • platform/MIMETypeRegistry.cpp:

(WebCore::initializeSupportedImageMIMETypes):

5:04 AM Changeset in webkit [105405] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip new failing tests.

  • platform/qt-wk2/Skipped:
  • platform/qt/Skipped:
5:03 AM Changeset in webkit [105404] by commit-queue@webkit.org
  • 45 edits in trunk

Unreviewed, rolling out r105402.
http://trac.webkit.org/changeset/105402
https://bugs.webkit.org/show_bug.cgi?id=76623

Layout test problems (Requested by WildFox on #webkit).

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

Source/WebCore:

  • css/svg.css:

(svg):

  • rendering/RenderBox.h:

(WebCore::RenderBox::computeIntrinsicRatioInformation):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::computeReplacedLogicalWidth):
(WebCore::RenderImage::computeIntrinsicRatioInformation):

  • rendering/RenderImage.h:
  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeReplacedLogicalWidth):
(WebCore::RenderReplaced::logicalHeightIsAuto):
(WebCore::RenderReplaced::computeReplacedLogicalHeight):

  • rendering/RenderReplaced.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight):

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGViewportContainer.h:
  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::viewport):
(WebCore::SVGSVGElement::parseMappedAttribute):
(WebCore::updateCSSForAttribute):
(WebCore::SVGSVGElement::svgAttributeChanged):
(WebCore::SVGSVGElement::localCoordinateSpaceTransform):
(WebCore::SVGSVGElement::currentViewBoxRect):

  • svg/SVGSVGElement.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::size):
(WebCore::SVGImage::computeIntrinsicDimensions):

  • svg/graphics/SVGImage.h:

LayoutTests:

  • platform/mac/svg/custom/dynamic-empty-path-expected.png:
  • platform/mac/svg/custom/fractional-rects-expected.png:
  • platform/mac/svg/custom/js-update-container-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt:
  • platform/mac/svg/custom/use-css-no-effect-on-shadow-tree-expected.png:
  • platform/mac/svg/custom/viewBox-hit-expected.png:
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png:
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt:
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute.xhtml:
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute.xhtml:
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute.xhtml:
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute.xhtml:
  • svg/foreignObject/text-tref-02-b-expected.txt:
4:59 AM Changeset in webkit [105403] by alexis.menard@openbossa.org
  • 11 edits
    2 adds in trunk

Strange Result for getComputedStyle on borderWidth set in em
https://bugs.webkit.org/show_bug.cgi?id=18294

Reviewed by Tony Chang.

Source/WebCore:

BorderValue stores its width on a 12 bits unsigned. This patch
increase it to 27. The patch also modify the way to set the
width or to get it, we now use a unsigned rather than a short.

Test: fast/css/border-width-large.html

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLength):

  • css/CSSStyleApplyProperty.cpp:

(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • page/animation/AnimationBase.cpp:

(WebCore::blendFunc):
(WebCore::AnimationBase::ensurePropertyMap):

  • platform/animation/AnimationUtilities.h:

(WebCore::blend):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::adjustStyle):

  • rendering/style/BorderData.h:

(WebCore::BorderData::borderLeftWidth):
(WebCore::BorderData::borderRightWidth):
(WebCore::BorderData::borderTopWidth):
(WebCore::BorderData::borderBottomWidth):

  • rendering/style/BorderValue.h:

(WebCore::BorderValue::width):

  • rendering/style/RenderStyle.cpp:
  • rendering/style/RenderStyle.h:

(WebCore::RenderStyleBitfields::borderLeftWidth):
(WebCore::RenderStyleBitfields::borderRightWidth):
(WebCore::RenderStyleBitfields::borderTopWidth):
(WebCore::RenderStyleBitfields::borderBottomWidth):
(WebCore::RenderStyleBitfields::setBorderLeftWidth):
(WebCore::RenderStyleBitfields::setBorderRightWidth):
(WebCore::RenderStyleBitfields::setBorderTopWidth):
(WebCore::RenderStyleBitfields::setBorderBottomWidth):
(WebCore::RenderStyleBitfields::initialBorderWidth):
(WebCore::RenderStyleBitfields::initialColumnRuleWidth):
(WebCore::RenderStyleBitfields::initialOutlineWidth):

LayoutTests:

This test covers that setting big values to border-width will
return correct values.

  • fast/css/border-width-large-expected.txt: Added.
  • fast/css/border-width-large.html: Added.
4:41 AM Changeset in webkit [105402] by Nikolas Zimmermann
  • 45 edits in trunk

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Reviewed by Antti Koivisto.

Source/WebCore:

Remove a gazillion of hacks out of our SVG implementation, by correctly differentiating between the
SVG width/height attributes and the CSS width/height properties. They need to be treated independently
when handling the intrinsic size negotiation, according to both CSS 2.1 & SVG 1.1 2nd Edition specs.

Fixes several bugs in the LayoutTests/svg/custom/*object*sizing tests, we now match Opera perfectly. FF still has some bugs, and IE9 as well.

  • css/svg.css: Remove hardcoded, width/height: 100% on <svg>.
  • rendering/RenderBox.h:

(WebCore::RenderBox::computeIntrinsicRatioInformation): Make 'intrinsicRatio' a float, and add 'intrinsicSize' as seperated FloatSize, to avoid confusion.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): Add forgotton case for percentage intrinsic sizes, that lead to workarounds in other places, that can now be removed.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::computeReplacedLogicalWidth): Directly use imageHasRelativeWidth/Height(), it does differentiate between SVG/CSS width/height attributes/properties now.
(WebCore::RenderImage::computeIntrinsicRatioInformation): Adapt to 'intrinsicRatio' argument change.

  • rendering/RenderImage.h: Ditto.
  • rendering/RenderReplaced.cpp: Refactor existing code, break out firstContainingBlockWithLogicalWidth/hasReplacedLogicalWidth/hasReplacedLogicalHeight/hasAutoHeightOrContainingBlockWithAutoHeight.

(WebCore::firstContainingBlockWithLogicalWidth): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalWidth): Refactored, and exported, so SVGSVGElement::widthAttributeEstablishesViewport() can use it.
(WebCore::hasAutoHeightOrContainingBlockWithAutoHeight): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalHeight): Refactored, and exported, so SVGSVGElement::heightAttributeEstablishesViewport() can use it.
(WebCore::RenderReplaced::computeReplacedLogicalWidth): Adapt to 'intrinsicRatio' changes ('intrinsicSize' is now decoupled from it). Refactor so that RenderSVGRoot can directly use it as well!
(WebCore::RenderReplaced::computeReplacedLogicalHeight): Ditto.

  • rendering/RenderReplaced.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation): Only determine the intrinsic size & ratio using the SVG width/height attributes, not the CSS width/height properties, as it's specified.
(WebCore::resolveLengthAttributeForSVG): Helper function for computeReplacedLogicalWidth/Height, that scales Length values that come from SVG width/height attributes.
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth): Finally remove home-brewn size computation logic - it can be fully shared with RenderReplaced now that we inherit from it.
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto.

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGViewportContainer.h:

(WebCore::RenderSVGViewportContainer::viewport): Export viewport() for easier length resolution.

  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport): Finally clean up this hell, and make it easy to understand. Only need to resolve lengths against either RenderSVGRoot or RenderSVGViewportContainer now.

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::viewport): Remove wrong code and disable this. Its not used, and we have no test coverage for it. Its current implementation didn't make any sense.
(WebCore::SVGSVGElement::parseMappedAttribute): Remove hacks mapping SVG width/height attributes to CSS properties.
(WebCore::SVGSVGElement::svgAttributeChanged): Ditto.
(WebCore::SVGSVGElement::localCoordinateSpaceTransform): Refactored.
(WebCore::SVGSVGElement::currentViewBoxRect): Ditto.
(WebCore::SVGSVGElement::currentViewportSize): Ditto.
(WebCore::SVGSVGElement::widthAttributeEstablishesViewport): Main logic determining if the SVG or CSS properties establish the viewport - a direct transliteration from the spec.
(WebCore::SVGSVGElement::heightAttributeEstablishesViewport): Ditto.
(WebCore::SVGSVGElement::intrinsicWidth): Helper.
(WebCore::SVGSVGElement::intrinsicHeight): Ditto.

  • svg/SVGSVGElement.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::size): Cleanup code.
(WebCore::SVGImage::hasRelativeWidth): Added, avoids hacks in RenderBoxModelObject.
(WebCore::SVGImage::hasRelativeHeight): Ditto.
(WebCore::SVGImage::computeIntrinsicDimensions): Make use of new SVGSVGElement::computeIntrinsicDimensions.

  • svg/graphics/SVGImage.h:

LayoutTests:

Update SVG pixel test baseline.

  • platform/mac/svg/custom/dynamic-empty-path-expected.png: Marginal changes.
  • platform/mac/svg/custom/fractional-rects-expected.png: Ditto.
  • platform/mac/svg/custom/js-update-container-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Align with Opera, gives same result now. All *object*sizing* tests are passing now.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/use-css-no-effect-on-shadow-tree-expected.png: Marginal changes.
  • platform/mac/svg/custom/viewBox-hit-expected.png: Ditto.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Ditto.
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute.xhtml: Fix test, now that our bug is fixed.
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/foreignObject/text-tref-02-b-expected.txt: Size is not reported anymore.
4:17 AM Changeset in webkit [105401] by Nikolas Zimmermann
  • 3 edits in trunk/LayoutTests

RenderSVGRoot should inherit from RenderReplaced
https://bugs.webkit.org/show_bug.cgi?id=76446

Reviewed by Pavel Feldman.

Fix Chromium specific problem with svg/text/select-x-list-4.svg, making it fail on the bots.
After transforming the endPos.x + 1 -> absEndPos.x, subtract -1 again, to be sure we don't
select text too far after the end position, making the selection currently disappear, which
is a bug, but can be avoided in this testcase.

  • platform/chromium/test_expectations.txt: Unskip test.
  • svg/text/resources/SelectionTestCase.js:

(selectRange): Subtract -1 from absEndPos.x.

3:18 AM Changeset in webkit [105400] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Do full incremental builds until bots use update-webkit

Rubber-stamped by Simon Hausmann.

3:06 AM Changeset in webkit [105399] by vestbo@webkit.org
  • 2 edits in trunk/Tools

Fix the Qt build

Unreviewed build fix.

  • Scripts/webkitdirs.pm:

(buildQMakeProjects):

3:00 AM Changeset in webkit [105398] by vestbo@webkit.org
  • 6 edits in trunk

[Qt] Make build-webkit always do safe incremental builds after update-webkit

When building against Qt5 with GCC we would just run 'make' in the build dir,
and rely on the dependency files output by GCC (-MD) to handle dependency
tracking, but that fails for special-cases like adding a Q_OBJECT macro
to a header.

To guarantee that an incrmental build will work, we have to run 'make qmake',
which we now do on every build-webkit that's followed by a successful run
of update-webkit. The reasoning is that update-webkit can result in such
potential corner-cases being applied, and since we can't know for sure
unless we inspect the diff and account for all the corner cases we assume
the worst and always run 'make qmake'.

After a succesful run of build-webkit we proceed to do just 'make' for any
subsequent runs, since we assume that the developer knows what kind of
changes he/she is doing, and when a 'make qmake' is needed.

Reviewed by Simon Hausmann.

2:24 AM Changeset in webkit [105397] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskip now passing tests.

  • platform/qt-5.0/Skipped:
  • platform/qt-wk2/Skipped:
2:16 AM Changeset in webkit [105396] by rniwa@webkit.org
  • 5 edits
    4 adds in trunk

drop event isn't fired for contentEditable in edit drag
https://bugs.webkit.org/show_bug.cgi?id=57185

Reviewed by Adam Barth.

Source/WebCore:

Dispatch drop and dragend events after edit drag per HTML5 spec:
http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#drag-and-drop-processing-model

There are two major differences between the spec and WebKit's new behavior:

While the spec says we have to insert the dragged contents immediately after dispatching drop event
and delete the source in the default event handler of dragend event, doing so in WebKit is extremely
difficult because of the way we manage the selection. Instead, we continue to delete the source
and insert the dragged contents immediately after the drop event; this behavior matches that of Firefox 9.

When the dragged contents and the destination of the move is in the same text node, ReplaceSelectionCommand
may end up replacing it with a new text node. But this removal causes a problem when EventHandler uses
the node to dispatch dragend event because the node is "orphaned" from its parent at that point. To mitigate
this issue, we update the dragState's m_dragSrc when the node is orphaned by the edit drag. While this behavior
may differ from the spec and other browsers, not delivering dragend to the editing host seems strictly worse than
dispatching it at the slightly wrong target.

Tests: fast/events/moving-text-should-fire-drop-and-dragend-events-2.html

fast/events/moving-text-should-fire-drop-and-dragend-events.html

  • page/DragController.cpp:

(WebCore::DragController::performDrag): Dispatch drop event even when m_isHandlingDrag is true as long
as DragDestinationActionDHTML is an acceptable action.
(WebCore::DragController::concludeEditDrag): Call updateDragStateAfterEditDragIfNeeded after inserting
the dragged contents. This is necessary when ReplaceSelectionCommand or MoveSelectionCommand modifies
the source node while inserting the dragged contents.

  • page/EventHandler.cpp:

(WebCore::EventHandler::performDragAndDrop): Clear the drag state only if drop event's default action
was prevented so that we dispatch dragevent event later.
(WebCore::EventHandler::updateDragStateAfterEditDragIfNeeded): Update dragState's m_dragSrc when the node
is orphaned. See above for the rationale.

  • page/EventHandler.h:

LayoutTests:

Added tests ensure moving text in contenteditable regions fire dragstart, drop, and dragend events.

  • fast/events/moving-text-should-fire-drop-and-dragend-events-2-expected.txt: Added.
  • fast/events/moving-text-should-fire-drop-and-dragend-events-2.html: Added.
  • fast/events/moving-text-should-fire-drop-and-dragend-events-expected.txt: Added.
  • fast/events/moving-text-should-fire-drop-and-dragend-events.html: Added.
1:58 AM Changeset in webkit [105395] by kinuko@chromium.org
  • 14 edits in trunk/Source

Cleanup: Move chrome-specific filesystem type handling code (for FileSystem API) under chromium directory
https://bugs.webkit.org/show_bug.cgi?id=76551

Reviewed by Darin Fisher.

WebKit-svn/Source/WebCore:

Moved the implementation of crackFileSystemURL() and toURL() from
WebCore/fileapi/DOMFileSystemBase into WebCore/platform/AsyncFileSystem
so that each platform can extend/implement their behavior if necessary.

No new tests since this patch has no functionality changes. (Existing
tests should pass)

  • fileapi/DOMFileSystemBase.cpp: Moved the implementation of

crackFileSystemURL() to AsyncFileSystem
(WebCore::DOMFileSystemBase::crackFileSystemURL):

  • fileapi/DOMFileSystemBase.h:
  • fileapi/EntryBase.cpp: Moved the implementation of toURL() to AsyncFileSystem

(WebCore::EntryBase::toURL):

  • page/DOMWindow.cpp: Removed chrome-specific type handling code.

(WebCore::DOMWindow::webkitRequestFileSystem):

  • page/DOMWindow.h: Removed chrome-specific filesystem type

(EXTERNAL).

  • platform/AsyncFileSystem.cpp: Added default implementation of toURL() and crackFileSystemURL()

(WebCore::AsyncFileSystem::toURL):
(WebCore::AsyncFileSystem::crackFileSystemURL):

  • platform/AsyncFileSystem.h:
  • workers/WorkerContext.cpp: Removed chrome-specific type handling code.

(WebCore::WorkerContext::webkitRequestFileSystem):
(WebCore::WorkerContext::webkitRequestFileSystemSync):

WebKit-svn/Source/WebKit/chromium:

  • src/AssertMatchingEnums.cpp: Removed matching assertion for TypeExternal as it's no longer defined separately.
  • src/AsyncFileSystemChromium.cpp: Added crackFileSystemURL() and toURL() implementation that

handle chrome-specific filesystem type (EXTERNAL) as well as regular TEMPORARY/PERSISTENT types.
(WebCore::AsyncFileSystem::crackFileSystemURL): Added.
(WebCore::AsyncFileSystemChromium::toURL): Added.

  • src/AsyncFileSystemChromium.h:
1:22 AM Changeset in webkit [105394] by mihnea@adobe.com
  • 7 edits in trunk/Source/WebCore

Cache RenderStyle pointer as a method to avoid performance regression for region styling
https://bugs.webkit.org/show_bug.cgi?id=76265

Reviewed by David Hyatt.

No new tests since this is just refactoring.
When region styling was enabled in https://bugs.webkit.org/show_bug.cgi?id=71488,
it introduced a performance regression due to the change of RenderObject::style() method.
This patch tries to avoid a new performance regression when region styling will be enabled again.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::MarginInfo::MarginInfo):
(WebCore::RenderBlock::styleWillChange):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::computePreferredLogicalWidths):
(WebCore::getBorderPaddingMargin):
(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::LineBreaker::nextLineBreak):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed):
(WebCore::RenderBox::styleWillChange):
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::updateBoxModelInfoFromStyle):
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::computeLogicalWidthUsing):
(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::computePositionedLogicalHeight):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::styleWillChange):
(WebCore::RenderBoxModelObject::updateBoxModelInfoFromStyle):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::styleDidChange):

  • rendering/RenderText.cpp:

(WebCore::RenderText::styleDidChange):
(WebCore::RenderText::computePreferredLogicalWidths):

1:08 AM Changeset in webkit [105393] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Random characters got rendered as empty boxes or with incorrect glyphs even when a font is present
https://bugs.webkit.org/show_bug.cgi?id=76508

Patch by Kazuhiro Inaba <kinaba@chromium.org> on 2012-01-19
Reviewed by Kent Tamura.

Wrapped GetGlyphIndices() API calls so that when they failed we trigger font
loading outside the sandbox and retry the call.

No new auto tests since the bug involves the system's occasional cache behavior
and thus there's no reliable way to reproduce and test the situation.

  • platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:

(WebCore::getGlyphIndices):
GDI call wrapper ensuring fonts to be loaded.
(WebCore::initSpaceGlyph):
Changed to use the wrapper function.
(WebCore::fillBMPGlyphs):
Changed to use the wrapper function.
Introduced scoped HDC management by HWndDC.
(WebCore::GlyphPage::fill):

12:58 AM Changeset in webkit [105392] by dmazzoni@google.com
  • 14 edits in trunk/LayoutTests

Unreviewed - re-enables tests on chromium-mac by making minor changes to cause the expectations to be identical on all Chromium configurations.

12:31 AM Changeset in webkit [105391] by abarth@webkit.org
  • 7 edits in trunk

createAttributeNS should understand that "xmlns" is allowed in the http://www.w3.org/2000/xmlns/
https://bugs.webkit.org/show_bug.cgi?id=76579

Reviewed by Eric Seidel.

Source/WebCore:

This patch cleans up a tiny corner case involving the (somewhat
magical) xmlns attribute that we uncovered when working on
setAttributeNS.

Tests: fast/dom/Document/createAttributeNS-namespace-err.html

  • dom/Document.cpp:

(WebCore::Document::importNode):
(WebCore::Document::hasValidNamespaceForElements):
(WebCore::Document::hasValidNamespaceForAttributes):
(WebCore::Document::createElementNS):
(WebCore::Document::createAttributeNS):

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

(WebCore::Element::setAttributeNS):

LayoutTests:

  • fast/dom/Document/createAttributeNS-namespace-err-expected.txt:
  • fast/dom/Document/script-tests/createAttributeNS-namespace-err.js:
12:29 AM Changeset in webkit [105390] by rolandsteiner@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for DEBUG: remove comparison of an unsigned variable with '>= 0' in ASSERT.

No new tests. (no functionality change)

  • webaudio/AudioNodeOutput.cpp:

(WebCore::AudioNodeOutput::AudioNodeOutput):

Jan 18, 2012:

11:52 PM Changeset in webkit [105389] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[v8] Low efficiency of writing long string from web application to plugin.
https://bugs.webkit.org/show_bug.cgi?id=76592

The efficiency will be improved by 300 times in the best case, when the
size of string reaches 1MB.

Patch by Li Yin <li.yin@intel.com> on 2012-01-18
Reviewed by Adam Barth.

  • bindings/v8/V8NPUtils.cpp:

(WebCore::convertV8ObjectToNPVariant):

11:39 PM Changeset in webkit [105388] by abarth@webkit.org
  • 2 edits
    2 adds in trunk

Assigning to Element.prefix should throw exception when using illegal characters
https://bugs.webkit.org/show_bug.cgi?id=76589

Reviewed by Eric Seidel.

This patch fixes a FIXME and implements the INVALID_CHARACTER_ERR
exception described in
http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-NodeNSPrefix

Tests: fast/dom/Element/prefix-setter-exception.html

  • dom/Node.cpp:

(WebCore::isValidNameStartCharacter):
(WebCore::isValidNameCharacter):
(WebCore::hasInvalidValidNameCharacters):
(WebCore::Node::checkSetPrefix):

11:05 PM Changeset in webkit [105387] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

ShadowContent query should be able to have fallback elements.
https://bugs.webkit.org/show_bug.cgi?id=75306

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-18
Reviewed by Hajime Morita.

Source/WebCore:

When no elements are selected by a shadow content element selector query,
light children are selected as a fallback elements.

Test: fast/dom/shadow/shadow-contents-fallback.html

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::NodeRenderingContext):

Considers fallback phase. When no elements are chosen, the phase is set to 'fallback'.

(WebCore::NodeRenderingContext::nextRenderer):

Takes fallback phase into account.

(WebCore::NodeRenderingContext::previousRenderer): ditto.

  • dom/NodeRenderingContext.h:
  • html/shadow/HTMLContentElement.cpp:

(WebCore::HTMLContentElement::attach):

Calculates inclusions before attaching light children.

  • html/shadow/HTMLContentElement.h:

(WebCore::HTMLContentElement::hasInclusion):

LayoutTests:

  • fast/dom/shadow/shadow-contents-fallback-expected.txt: Added.
  • fast/dom/shadow/shadow-contents-fallback.html: Added.
10:51 PM Changeset in webkit [105386] by tkent@chromium.org
  • 4 edits
    2 adds in trunk

REGRESSION(r100111): A 'change' event does not fire when a mouse drag
occurs to switch elements in a listbox <select>
https://bugs.webkit.org/show_bug.cgi?id=76244

Reviewed by Hajime Morita.

Source/WebCore:

Test: fast/forms/select/listbox-drag-in-non-multiple.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::updateSelectedState):
Do not update m_activeSelectionState for non-multiple <select>.
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
Use setActiveSelection*Index() and updateListBoxSelection(true) instead
of updateSelectedState() because updateSelectedState() updates
m_lastOnChangeSelection and will prevent the mouseup handler from
dispatching 'change' event.
We should not call listBoxOnChange() in the mousemove handler in order
to align the behavior of IE and Firefox.

LayoutTests:

  • fast/forms/resources/common.js:

(mouseMoveToIndexInListbox): Added.

  • fast/forms/select/listbox-drag-in-non-multiple-expected.txt: Added.
  • fast/forms/select/listbox-drag-in-non-multiple.html: Added.
10:30 PM Changeset in webkit [105385] by Lucas Forschler
  • 5 edits in branches/safari-534.54-branch/Source

Versioning.

10:29 PM Changeset in webkit [105384] by Lucas Forschler
  • 1 copy in tags/Safari-534.54.8

New tag.

10:25 PM Changeset in webkit [105383] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge <rdar://problem/10516690>

10:11 PM Changeset in webkit [105382] by dgrogan@chromium.org
  • 2 edits in trunk/LayoutTests

update resolve-url-sync-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=76581

Reviewed by Eric Seidel.

  • http/tests/filesystem/workers/resolve-url-sync-expected.txt:
10:00 PM Changeset in webkit [105381] by rniwa@webkit.org
  • 7 edits
    1 add in trunk

run-perf-tests should support Skipped list
https://bugs.webkit.org/show_bug.cgi?id=76594

Reviewed by Adam Barth.

PerformanceTests:

Add Skipped list to be used by run-perf-tests as it can only runs tests in
Bindings, Parser, and inspector at the moment.

  • Skipped: Added.

Tools:

Add a support for Skipped list in run-perf-tests; also skip files in resources directories.

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

(Port.perf_tests_dir):
(Port.skipped_perf_tests):
(Port.skips_perf_test):
(Port.relative_perf_test_filename):

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

(TestPort.perf_tests_dir):

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

(WebKitPort._expectations_from_skipped_files):
(WebKitPort):
(WebKitPort.skipped_layout_tests):
(WebKitPort.skipped_perf_tests):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._collect_tests):
(PerfTestsRunner.run):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(test_run_test_set_with_json_output):
(test_run_test_set_with_json_source):
(test_collect_tests_with_skipped_list):
(test_collect_tests_with_skipped_list.add_file):

9:56 PM Changeset in webkit [105380] by tsepez@chromium.org
  • 6 edits
    1 add in trunk/Source/WebKit/chromium

Pass content-security-policy directive into shared workers.
https://bugs.webkit.org/show_bug.cgi?id=75660

Reviewed by Darin Fisher.

  • public/WebContentSecurityPolicy.h: Added.
  • public/WebSharedWorker.h:

(WebKit::WebSharedWorker::startWorkerContext):

  • src/AssertMatchingEnums.cpp:
  • src/SharedWorkerRepository.cpp:

(WebCore::SharedWorkerScriptLoader::notifyFinished):

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::startWorkerContext):

  • src/WebSharedWorkerImpl.h:
9:40 PM Changeset in webkit [105379] by eric@webkit.org
  • 3 edits
    3 adds in trunk

setAttributeNS should comply with the obscure rules of DOM2, just like createAttributeNS and createElementNS do
https://bugs.webkit.org/show_bug.cgi?id=76143

Reviewed by Adam Barth.

Source/WebCore:

Test: fast/dom/Element/setAttributeNS-namespace-err.html

  • dom/Element.cpp:

(WebCore::Element::setAttributeNS):

LayoutTests:

  • fast/dom/Element/script-tests/setAttributeNS-namespace-err.js: Added.

(assert):
(stringForExceptionCode):
(assertEquals):
(sourceify):
(runNSTests):

  • fast/dom/Element/setAttributeNS-namespace-err-expected.txt: Added.
  • fast/dom/Element/setAttributeNS-namespace-err.html: Added.
9:20 PM Changeset in webkit [105378] by rolandsteiner@chromium.org
  • 5 edits in trunk

Unreviewed, rolling out r105376.
http://trac.webkit.org/changeset/105376
https://bugs.webkit.org/show_bug.cgi?id=76601

Roll 76493 back in after discussion with jsbell (Requested by
rolandsteiner on #webkit).

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

Source/WebCore:

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::injectIDBKeyIntoSerializedValue):

LayoutTests:

  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
8:18 PM Changeset in webkit [105377] by commit-queue@webkit.org
  • 4 edits
    8 adds in trunk/Source

[chromium] Create a base-class CCAnimation to represent compositor animations
https://bugs.webkit.org/show_bug.cgi?id=73233

Source/WebCore:

Adds a kernel for running animations on the chromium compositor
thread.

Patch by Ian Vollick <vollick@chromium.org> on 2012-01-18
Reviewed by Kenneth Russell.

  • WebCore.gypi:
  • platform/graphics/chromium/cc/CCActiveAnimation.cpp: Added.

(WebCore::CCActiveAnimation::CCActiveAnimation):
(WebCore::CCActiveAnimation::setRunState):
(WebCore::CCActiveAnimation::isFinishedAt):
(WebCore::CCActiveAnimation::trimTimeToCurrentIteration):

  • platform/graphics/chromium/cc/CCActiveAnimation.h: Added.

(WebCore::CCActiveAnimation::create):
(WebCore::CCActiveAnimation::~CCActiveAnimation):
(WebCore::CCActiveAnimation::group):
(WebCore::CCActiveAnimation::targetProperty):
(WebCore::CCActiveAnimation::runState):
(WebCore::CCActiveAnimation::iterations):
(WebCore::CCActiveAnimation::setIterations):
(WebCore::CCActiveAnimation::startTime):
(WebCore::CCActiveAnimation::setStartTime):
(WebCore::CCActiveAnimation::isFinished):
(WebCore::CCActiveAnimation::animationCurve):

  • platform/graphics/chromium/cc/CCAnimationCurve.cpp: Added.

(WebCore::CCAnimationCurve::toFloatAnimationCurve):
(WebCore::CCAnimationCurve::toTransformAnimationCurve):

  • platform/graphics/chromium/cc/CCAnimationCurve.h: Added.

(WebCore::CCAnimationCurve::~CCAnimationCurve):
(WebCore::CCFloatAnimationCurve::~CCFloatAnimationCurve):
(WebCore::CCFloatAnimationCurve::type):
(WebCore::CCTransformAnimationCurve::~CCTransformAnimationCurve):
(WebCore::CCTransformAnimationCurve::type):

  • platform/graphics/chromium/cc/CCLayerAnimationControllerImpl.cpp: Added.

(WebCore::CCLayerAnimationControllerImpl::create):
(WebCore::CCLayerAnimationControllerImpl::CCLayerAnimationControllerImpl):
(WebCore::CCLayerAnimationControllerImpl::animate):
(WebCore::CCLayerAnimationControllerImpl::add):
(WebCore::CCLayerAnimationControllerImpl::getActiveAnimation):
(WebCore::CCLayerAnimationControllerImpl::hasActiveAnimation):
(WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForNextTick):
(WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForStartTime):
(WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForTargetAvailability):
(WebCore::CCLayerAnimationControllerImpl::resolveConflicts):
(WebCore::CCLayerAnimationControllerImpl::purgeFinishedAnimations):
(WebCore::CCLayerAnimationControllerImpl::tickAnimations):

  • platform/graphics/chromium/cc/CCLayerAnimationControllerImpl.h: Added.

(WebCore::CCLayerAnimationControllerImplClient::~CCLayerAnimationControllerImplClient):

Source/WebKit/chromium:

Patch by Ian Vollick <vollick@chromium.org> on 2012-01-18
Reviewed by Kenneth Russell.

  • WebKit.gypi:
  • tests/CCActiveAnimationTest.cpp: Added.

(WebCore::FakeFloatAnimation::duration):
(WebCore::FakeFloatAnimation::getValue):
(WebCore::createActiveAnimation):
(WebCore::TEST):

  • tests/CCLayerAnimationControllerImplTest.cpp: Added.

(WebCore::FakeControllerClient::FakeControllerClient):
(WebCore::FakeControllerClient::~FakeControllerClient):
(WebCore::FakeControllerClient::opacity):
(WebCore::FakeControllerClient::setOpacity):
(WebCore::FakeControllerClient::transform):
(WebCore::FakeControllerClient::setTransform):
(WebCore::FakeControllerClient::animationControllerImplDidActivate):
(WebCore::FakeControllerClient::activeControllers):
(WebCore::FakeTransformTransition::FakeTransformTransition):
(WebCore::FakeTransformTransition::duration):
(WebCore::FakeTransformTransition::getValue):
(WebCore::FakeFloatTransition::FakeFloatTransition):
(WebCore::FakeFloatTransition::duration):
(WebCore::FakeFloatTransition::getValue):
(WebCore::TEST):

8:07 PM Changeset in webkit [105376] by rolandsteiner@chromium.org
  • 5 edits in trunk

Unreviewed, rolling out r105331.
http://trac.webkit.org/changeset/105331
https://bugs.webkit.org/show_bug.cgi?id=76599

May have broken Chromium InjectIDBKey browser_test (Requested
by rolandsteiner on #webkit).

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

Source/WebCore:

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::injectIDBKeyIntoSerializedValue):

LayoutTests:

  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
8:02 PM Changeset in webkit [105375] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Remove some unused code in AudioContext
https://bugs.webkit.org/show_bug.cgi?id=76506

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-01-18
Reviewed by Kenneth Russell.

No new tests required.

  • webaudio/AudioContext.cpp:

(WebCore::AudioContext::constructCommon):
(WebCore::AudioContext::uninitialize):

  • webaudio/AudioContext.h:
7:28 PM Changeset in webkit [105374] by dpranke@chromium.org
  • 2 edits in trunk/Tools

Fix path to chromium_src_dir introduced in previous change.

Unreviewed, build fix.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
7:22 PM Changeset in webkit [105373] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Only create AudioBus with required number of channels for AudioNodeOutput
https://bugs.webkit.org/show_bug.cgi?id=76417

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-01-18
Reviewed by Kenneth Russell.

No new tests required.

  • webaudio/AudioNodeOutput.cpp:

(WebCore::AudioNodeOutput::AudioNodeOutput):
(WebCore::AudioNodeOutput::setNumberOfChannels):
(WebCore::AudioNodeOutput::updateInternalBus):
(WebCore::AudioNodeOutput::updateNumberOfChannels):
(WebCore::AudioNodeOutput::pull):

  • webaudio/AudioNodeOutput.h:
6:55 PM Changeset in webkit [105372] by kling@webkit.org
  • 11 edits
    2 adds in trunk

Cache and reuse the NodeList returned by Node::childNodes().
<http://webkit.org/b/76591>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Instead of only caching the DynamicNodeList::Caches for .childNodes on NodeRareData,
cache the full ChildNodeList object. Lifetime management is left to wrappers who
invalidate the cached (raw) pointer via Node::removeCachedChildNodeList(), called
from ~ChildNodeList().

This is a slight behavior change, in that Node.childNodes === Node.childNodes will
now be true. This matches the behavior of both Firefox and Opera.

This reduces memory consumption by 192 kB (on 32-bit) when viewing the full
HTML5 spec at <http://whatwg.org/c>

Test: fast/dom/gc-9.html

fast/dom/node-childNodes-idempotence.html

  • dom/Node.cpp:

(WebCore::Node::childNodes):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):
(WebCore::NodeRareData::childNodeList):
(WebCore::NodeRareData::setChildNodeList):

Only construct one ChildNodeList per Node and store it on NodeRareData for
retrieval across childNodes() calls.

  • dom/ChildNodeList.h:

(WebCore::ChildNodeList::create):

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::ChildNodeList):

Construct the Caches at creation instead of passing it to the constructor.

(WebCore::ChildNodeList::reset):

Added, resets the internal cache.

(WebCore::ChildNodeList::~ChildNodeList):

Call Node::removeCachedChildNodeList().

  • dom/DynamicNodeList.cpp:
  • dom/DynamicNodeList.h:

Have DynamicNodeList (and subclasses) respond "true" to isDynamicNodeList().
Previously only DynamicSubtreeNodeList (and subclasses) were doing this.
Without it, JSC may GC our ChildNodeLists prematurely (due to NodeList's
isReachableFromOpaqueRoots() implementation checking isDynamicNodeList().)

  • dom/Node.h:
  • dom/Node.cpp:

(WebCore::Node::removeCachedChildNodeList):

Added for ~ChildNodeList() to remove the pointer to itself from the Node.

(WebCore::NodeRareData::clearChildNodeListCache):

Call ChildNodeList::reset().

LayoutTests:

Updated gc-9.html to document the new lifetime characteristics of a .childNodes with
custom properties. Also added a test to verify that .childNodes === .childNodes.

  • fast/dom/gc-9-expected.txt:
  • fast/dom/gc-9.html:
  • fast/dom/node-childNodes-idempotence-expected.txt: Added.
  • fast/dom/node-childNodes-idempotence.html: Added.
6:39 PM Changeset in webkit [105371] by jamesr@google.com
  • 12 edits in trunk/Source

Unreviewed, rolling out r105366.
http://trac.webkit.org/changeset/105366
https://bugs.webkit.org/show_bug.cgi?id=76015

Breaks CCLayerTreeHostImplTest unit test

Source/WebCore:

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCDrawQuad::drawsOpaque):
(WebCore::CCDrawQuad::needsBlending):

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

(WebCore::CCQuadCuller::cullOccludedQuads):

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

(WebCore::CCSolidColorDrawQuad::CCSolidColorDrawQuad):

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

(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):

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

(WebCore::CCTiledLayerImpl::appendQuads):
(WebCore::CCTiledLayerImpl::syncTextureId):

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

Source/WebKit/chromium:

  • tests/CCQuadCullerTest.cpp:

(WebCore::TestDrawQuad::TestDrawQuad):
(WebCore::TestDrawQuad::create):
(WebCore::setQuads):

  • tests/CCTiledLayerImplTest.cpp:

(WebCore::createLayer):
(WebCore::TEST):
(WebCore::getQuads):
(WebCore::coverageVisibleRectOnTileBoundaries):
(WebCore::coverageVisibleRectIntersectsTiles):
(WebCore::coverageVisibleRectIntersectsBounds):

6:02 PM Changeset in webkit [105370] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Save two ID checks on CSS Min/Width property validation
https://bugs.webkit.org/show_bug.cgi?id=76565

The same validation is done again in the next case statement. Check for
CSSValueIntrinsic and CSSValueMinIntrinsic was done twice when the value
is a number.

Patch by Thiago Marcos P. Santos <tmpsantos@gmail.com> on 2012-01-18
Reviewed by Andreas Kling.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

5:54 PM Changeset in webkit [105369] by ap@apple.com
  • 9 edits
    5 adds in trunk

Need infrastructure to test Content-Disposition filename encoding support
https://bugs.webkit.org/show_bug.cgi?id=76572
<rdar://problem/6421825>

Reviewed by Sam Weinig.

Made policy delegate log suggested file name when resource has Content-Disposition: attachment.

WebKitTestRunner does not have a policy delegate yet, bug 42546.

  • DumpRenderTree/mac/PolicyDelegate.mm: (dispositionTypeFromContentDispositionHeader): (-[PolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]):
5:53 PM Changeset in webkit [105368] by jonlee@apple.com
  • 2 edits in trunk/Source/WebKit2

Another build fix for r105364.

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess): Missing #if.

5:44 PM Changeset in webkit [105367] by jonlee@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix for r105364. Unreviewed.

  • WebProcess/Notifications/WebNotificationManager.cpp: Wrap methods in #if ENABLE(NOTIFICATIONS)

(WebKit::WebNotificationManager::initialize):
(WebKit::WebNotificationManager::didUpdateNotificationDecision):
(WebKit::WebNotificationManager::didRemoveNotificationDecisions):
(WebKit::WebNotificationManager::policyForOrigin):

5:42 PM Changeset in webkit [105366] by commit-queue@webkit.org
  • 12 edits in trunk/Source

[chromium] Use region reported painted opaque for draw culling
https://bugs.webkit.org/show_bug.cgi?id=76015

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

New unit tests in CCQuadCullerTest.cpp and CCTiledLayerImplTest.cpp

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCDrawQuad::opaqueRect):
(WebCore::CCDrawQuad::needsBlending):

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

(WebCore::CCQuadCuller::cullOccludedQuads):

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

(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):

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

(WebCore::DrawableTile::opaqueRect):
(WebCore::DrawableTile::setOpaqueRect):
(WebCore::CCTiledLayerImpl::appendQuads):
(WebCore::CCTiledLayerImpl::pushTileProperties):

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

Source/WebKit/chromium:

  • tests/CCQuadCullerTest.cpp:

(WebCore::TestDrawQuad::TestDrawQuad):
(WebCore::TestDrawQuad::create):
(WebCore::setQuads):
(WebCore::TEST):

  • tests/CCTiledLayerImplTest.cpp:

(WebCore::createLayer):
(WebCore::TEST):
(WebCore::getQuads):
(WebCore::coverageVisibleRectOnTileBoundaries):
(WebCore::coverageVisibleRectIntersectsTiles):
(WebCore::coverageVisibleRectIntersectsBounds):

5:19 PM Changeset in webkit [105365] by vrk@chromium.org
  • 3 edits in trunk/Source/WebCore

HTMLMediaElement should fire 'progress' event before 'idle' if it was previously loading
https://bugs.webkit.org/show_bug.cgi?id=76568

Reviewed by Eric Carlson.

This fires a progress event when going from a non-empty state to idle,
for the same reason that a progress event is fired when going from a
non-idle state to loaded. Also consolidated logic in a single helper method.

No new tests because the decision of if/when a user agent sets the network state
to idle is up to the user agent in this scenario.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::setNetworkState):
(WebCore::HTMLMediaElement::changeNetworkStateFromLoadingToIdle):

  • html/HTMLMediaElement.h:
5:14 PM Changeset in webkit [105364] by jonlee@apple.com
  • 34 edits in trunk/Source

[WK2] Sync call for notifications permissions causes flashes on gmail.com
https://bugs.webkit.org/show_bug.cgi?id=76570
<rdar://problem/10647155>

Reviewed by Anders Carlsson and Sam Weinig.

Source/WebCore:

  • WebCore.exp.in: Export SecurityOrigin::toString().

Add runtime setting to enable/disable notifications.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h: Add new bit for whether notifications are enabled.

(WebCore::Settings::setNotificationsEnabled):
(WebCore::Settings::notificationsEnabled):

Source/WebKit2:

The website code figures out the permission level for its security origin by making a JS call (called
checkPermission()) that is synchronous. The way this was implemented was to make a synchronous call from
the WebNotificationManager to its proxy. That call goes to the WK API layer to find the policy, and
returns that policy back to the JS.

The synchronous nature of this call causes the white flash to appear in certain cases.

To fix this, the checkPermission() call is handled all within the web process, instead of going up into
the UI process. To do this, the web process initializes the WebNotificationManager with a copy of the
notification permissions. Any time the WK client makes a change to the permissions, that gets sent down
asynchronously, and the cached copy in WebNotificationManager gets updated.

A page's settings may disable notifications altogether. Before, this would have been handled by the WK
client, since retrieving the permissions were also handled there. Now that the lookup happens in the web
process, we need to add that setting in WebCore.

Update notification permissions to use the security origin's string representation, rather than its

database identifier.

  • UIProcess/Notifications/WebNotification.cpp:

(WebKit::WebNotification::WebNotification):

  • UIProcess/Notifications/WebNotification.h:

(WebKit::WebNotification::create):

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::show): Registering the provider with the manager is handled in
initialize() now.
(WebKit::WebNotificationManagerProxy::cancel): Registering the provider with the manager is handled in
initialize() now.

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::requestNotificationPermission):
(WebKit::WebPageProxy::showNotification):

  • UIProcess/WebPageProxy.h:
  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp:

(WebKit::NotificationPermissionRequestManager::startRequest): Only start the request if notifications
are enabled.

  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::show): Only show notification is they are enabled.
(WebKit::WebNotificationManager::cancel): Only cancel if notifications are enabled.

Remove synchronous message to get policy for a given origin. Instead, use the cached copy in

WebNotificationManager.

  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::policyForOrigin): Looks for the permission in the cached copy.
If it doesn't exist, return NotificationPresenter::PermissionNotAllowed.

  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp:

(WebKit::NotificationPermissionRequestManager::permissionLevel): Update permissionLevel to use
policyForOrigin().

Remove old WK API function to get the policy. Because this function was the only synchronous message,
we remove the sync-message-related functions also. Also, add in some #includes that might have been
omitted in prior patches.

  • UIProcess/API/C/WKNotificationProvider.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.messages.in: Remove NotificationPermissionLevel.
  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:
  • UIProcess/Notifications/WebNotificationProvider.h: Remove policyForNotificationPermissionAtOrigin().
  • UIProcess/Notifications/WebNotificationProvider.cpp:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveSyncMessage): Remove conditional to forward sync messages to the
notification manager proxy.

Mechanism for client to update the permissions copy in WebNotificationManager.

  • WebProcess/Notifications/WebNotificationManager.messages.in: Add new messages

didUpdateNotificationDecision and didRemoveNotificationDecisions.

  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::initialize):
(WebKit::WebNotificationManager::didUpdateNotificationDecision): Update the entry.
(WebKit::WebNotificationManager::didRemoveNotificationDecisions): Remove the entry.

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::providerDidUpdateNotificationPolicy):
(WebKit::WebNotificationManagerProxy::providerDidRemoveNotificationPolicies): Convert the array of
origins to remove, and send it to the WebNotificationManager.

  • UIProcess/API/C/WKNotificationManager.h: Expose these update functions as WK API.
  • UIProcess/API/C/WKNotificationManager.cpp:

(WKNotificationManagerProviderDidUpdateNotificationPolicy):
(WKNotificationManagerProviderDidRemoveNotificationPolicies):

Initialize WebNotificationManager with permissions. Initialize WebPage with notifications enabled bit

from settings.

  • Shared/WebProcessCreationParameters.h: Add map of notification permissions as part of the

parameters.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

  • UIProcess/Notifications/WebNotificationProvider.h: Retrieve copy of existing notification permissions.
  • UIProcess/Notifications/WebNotificationProvider.cpp:
  • UIProcess/API/C/WKNotificationProvider.h: Add WK API to get a copy of the permissions.
  • UIProcess/Notifications/WebNotificationManagerProxy.h: Add populateCopyOfNotificationPermissions().
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::initializeProvider): Add the manager at the time of initialization.
Similar calls in show() and cancel() are removed in following patch.
(WebKit::WebNotificationManagerProxy::populateCopyOfNotificationPermissions): Clear the existing copy.
Populate with origin string, and whether that origin is allowed to post. If no decision has been made
by the user, then there should be no item in this dictionary.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::ensureWebProcess): When the web process is initialized, we get a copy of the
permissions, and send it to the web process to initialize the notification manager.

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess): Initialize the notification manager.

  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::initialize): Initialize the permissions copy.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences): Set notifications enabled bit from settings.

Expose toString() method from WebCore::SecurityOrigin. Work is also towards bug 74956.

  • Shared/API/c/WKSecurityOrigin.h: Refactor WKSecurityOriginCreateFromIdentifier to

WKSecurityOriginCreateFromDatabaseIdentifier and add WKSecurityOriginCreateFromString function.

  • Shared/API/c/WKSecurityOrigin.cpp:

(WKSecurityOriginCreateFromString):
(WKSecurityOriginCreateFromDatabaseIdentifier):
(WKSecurityOriginCopyToString):

Refactor WebSecurityOrigin::create() to WebSecurityOrigin::createFromDatabaseIdentifier()
and add WebSecurityOrigin::createFromString().

  • Shared/WebSecurityOrigin.h:

(WebKit::WebSecurityOrigin::createFromString):
(WebKit::WebSecurityOrigin::createFromDatabaseIdentifier):
(WebKit::WebSecurityOrigin::toString): Added function.

Refactor with renamed createFromDatabaseIdentifier() method.

  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
(WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
(WebKit::WebDatabaseManagerProxy::didModifyOrigin):
(WebKit::WebDatabaseManagerProxy::didModifyDatabase):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::exceededDatabaseQuota):
(WebKit::WebPageProxy::requestGeolocationPermissionForFrame):

Add WK API calls to change notificationsEnabled bit in WebCore::Settings.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetNotificationsEnabled):
(WKPreferencesGetNotificationsEnabled):

  • UIProcess/API/C/WKPreferences.h:
5:11 PM Changeset in webkit [105363] by jamesr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

IndexedDB: Fix InjectIDBKeyTest.SubProperty test failure
https://bugs.webkit.org/show_bug.cgi?id=76582

Correct the test, now that https://bugs.webkit.org/show_bug.cgi?id=76493
changes the semantics so that intermediate objects are created if possible
to satisfy autoIncrement keypaths.

Patch by Joshua Bell <jsbell@chromium.org> on 2012-01-18
Reviewed by James Robinson.

  • tests/IDBBindingUtilitiesTest.cpp:

(WebCore::TEST):

5:09 PM Changeset in webkit [105362] by Lucas Forschler
  • 4 edits
    3 copies in branches/safari-534.54-branch

Merged r95580.

5:08 PM Changeset in webkit [105361] by tsepez@chromium.org
  • 1 edit
    4 copies in branches/chromium/963

Merge 103851 - REGRESSION (r94492): Text is shifted to the right in some buttons in the Mac App Store
BUG=104325
Review URL: https://chromiumcodereview.appspot.com/9252034

5:06 PM Changeset in webkit [105360] by tsepez@chromium.org
  • 1 edit
    4 copies in branches/chromium/912

Merge 103851 - REGRESSION (r94492): Text is shifted to the right in some buttons in the Mac App Store
BUG=104325
Review URL: https://chromiumcodereview.appspot.com/9216003

4:57 PM Changeset in webkit [105359] by cdn@chromium.org
  • 2 edits
    6 copies in branches/chromium/963

Merge 104328 - [CSSRegions]Crash while collecting svg elements in render flow thread.
https://bugs.webkit.org/show_bug.cgi?id=73735

BUG=106309
Review URL: http://codereview.chromium.org/9250028

4:56 PM Changeset in webkit [105358] by Lucas Forschler
  • 7 edits in branches/safari-534.54-branch

Merge 89155.

4:55 PM Changeset in webkit [105357] by cdn@chromium.org
  • 2 edits
    6 copies in branches/chromium/912

Merge 104328 - [CSSRegions]Crash while collecting svg elements in render flow thread.
https://bugs.webkit.org/show_bug.cgi?id=73735

BUG=106309
Review URL: http://codereview.chromium.org/9253028

4:52 PM Changeset in webkit [105356] by tsepez@chromium.org
  • 3 edits in branches/chromium/963

Merge 103429 - Source/WebCore: [Chromium] DatabaseTrackerChromium: iterating DatabaseSet races with Database disposal on worker thread
BUG=107873
Review URL: https://chromiumcodereview.appspot.com/9255031

4:49 PM Changeset in webkit [105355] by tsepez@chromium.org
  • 3 edits in branches/chromium/912

Merge 103429 - Source/WebCore: [Chromium] DatabaseTrackerChromium: iterating DatabaseSet races with Database disposal on worker thread
BUG=107873
Review URL: https://chromiumcodereview.appspot.com/9254017

4:42 PM Changeset in webkit [105354] by tsepez@chromium.org
  • 1 edit
    3 copies in branches/chromium/963

Merge 103206 - Positioned Floats: Assertion hit in fast/block/positioning/positioned-float-layout-after-image-load.html
BUG=107939
Review URL: https://chromiumcodereview.appspot.com/9232038

4:39 PM Changeset in webkit [105353] by tsepez@chromium.org
  • 1 edit
    3 copies in branches/chromium/912

Merge 103206 - Positioned Floats: Assertion hit in fast/block/positioning/positioned-float-layout-after-image-load.html
BUG=107939
Review URL: https://chromiumcodereview.appspot.com/9253026

4:39 PM Changeset in webkit [105352] by inferno@chromium.org
  • 1 edit
    3 copies in branches/chromium/963

Merge 103979 - v8 binding: npCreateV8ScriptObject() should not returned an existing V8NPObject if the rootObject doesn't match
BUG=107616
Review URL: https://chromiumcodereview.appspot.com/9250027

4:39 PM Changeset in webkit [105351] by inferno@chromium.org
  • 1 edit
    3 copies in branches/chromium/912

Merge 103979 - v8 binding: npCreateV8ScriptObject() should not returned an existing V8NPObject if the rootObject doesn't match
BUG=107616
Review URL: https://chromiumcodereview.appspot.com/9260002

4:34 PM Changeset in webkit [105350] by inferno@chromium.org
  • 3 edits
    2 copies in branches/chromium/912

Merge 104123 - Crash due to first-letter block processing
BUG=107277
Review URL: https://chromiumcodereview.appspot.com/9249043

4:34 PM Changeset in webkit [105349] by inferno@chromium.org
  • 3 edits
    2 copies in branches/chromium/963

Merge 104123 - Crash due to first-letter block processing
BUG=107277
Review URL: https://chromiumcodereview.appspot.com/9252031

4:31 PM Changeset in webkit [105348] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/963

Merge 104317 - Crash with range selection across different documents.
BUG=106484
Review URL: https://chromiumcodereview.appspot.com/9251030

4:31 PM Changeset in webkit [105347] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/912

Merge 104317 - Crash with range selection across different documents.
BUG=106484
Review URL: https://chromiumcodereview.appspot.com/9250025

4:30 PM Changeset in webkit [105346] by tsepez@chromium.org
  • 3 edits
    6 copies in branches/chromium/963

Merge 105120 - Heap-use-after-free in WebCore::RenderBlock::selectionGaps
Review URL: https://chromiumcodereview.appspot.com/9251029

4:26 PM Changeset in webkit [105345] by inferno@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp

Merge 104609 - [skia] not all convex paths are convex, so recompute convexity for the problematic ones
BUG=108605
Review URL: https://chromiumcodereview.appspot.com/9250022

4:25 PM Changeset in webkit [105344] by tsepez@chromium.org
  • 3 edits
    6 copies in branches/chromium/912

Merge 105120 - Heap-use-after-free in WebCore::RenderBlock::selectionGaps
BUG=108267
Review URL: https://chromiumcodereview.appspot.com/9250021

4:24 PM Changeset in webkit [105343] by inferno@chromium.org
  • 1 edit in branches/chromium/912/Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp

Merge 104609 - [skia] not all convex paths are convex, so recompute convexity for the problematic ones
BUG=108605
Review URL: https://chromiumcodereview.appspot.com/9254016

4:22 PM Changeset in webkit [105342] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/963

Merge 104441 - insertAdjacentHTML doesn't play nice with DocumentFragment
BUG=109556
Review URL: https://chromiumcodereview.appspot.com/9250020

4:21 PM Changeset in webkit [105341] by tsepez@chromium.org
  • 1 edit
    2 copies in branches/chromium/963

Merge 104275 - Fix a crash by importing an element of which local name ends with ":input".
BUG=108461
Review URL: https://chromiumcodereview.appspot.com/9249042

4:18 PM Changeset in webkit [105340] by tsepez@chromium.org
  • 1 edit
    2 copies in branches/chromium/912

Merge 104275 - Fix a crash by importing an element of which local name ends with ":input".
BUG=108461
Review URL: https://chromiumcodereview.appspot.com/9249041

4:16 PM Changeset in webkit [105339] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

REGRESSION (r88886): Tabs restore blank when running Safari with a nightly build for the first time
https://bugs.webkit.org/show_bug.cgi?id=76587
<rdar://problem/9739135>

Reviewed by Sam Weinig.

  • UIProcess/cf/WebPageProxyCF.cpp:

Change CurrentSessionStateDataVersion back to 2.

  • WebProcess/WebPage/DecoderAdapter.cpp:

(WebKit::DecoderAdapter::decodeString):

  • WebProcess/WebPage/EncoderAdapter.cpp:

(WebKit::EncoderAdapter::encodeString):
Backport the CoreIPC string encoding and decoding functions that were in place prior to r88886.

4:12 PM Changeset in webkit [105338] by cdn@chromium.org
  • 2 edits
    2 copies in branches/chromium/963

Merge 104183 - Source/WebCore: Crash due to reparenting of relpositioned object under anonymous block
https://bugs.webkit.org/show_bug.cgi?id=70848

The associated test case creates a condition where a relative
positioned renderer is a descendant of an anonymous block for a
table column. The anonymous block is the containingBlock() for the
relpositioned renderer. Removal of a div causes the anonymous blocks to
be merged, and the renderer becomes a descendant of a different block.
Since the new containingBlock() has an empty positionedObject list,
the relpositioned renderer does not get layout after being dirtied.

This patch changes containingBlock() so that it returns the container
of an anonymous block for positioned objects, not the anonymous
block itself. It also adds an ASSERT to insertPositionedObject()
to flag any other cases where something is trying to create a
positioned object list on an anonymous block.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertPositionedObject):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

LayoutTests: Crash due to reparenting of relpositioned object in table
https://bugs.webkit.org/show_bug.cgi?id=70848

Adding test that exercises the crash condition in bug 70848.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • fast/css/relative-position-replaced-in-table-display-crash-expected.txt: Added
  • fast/css/relative-position-replaced-in-table-display-crash.html: Added

Review URL: http://codereview.chromium.org/9263001

4:10 PM Changeset in webkit [105337] by cdn@chromium.org
  • 2 edits
    2 copies in branches/chromium/912

Merge 104183 - Source/WebCore: Crash due to reparenting of relpositioned object under anonymous block
https://bugs.webkit.org/show_bug.cgi?id=70848

The associated test case creates a condition where a relative
positioned renderer is a descendant of an anonymous block for a
table column. The anonymous block is the containingBlock() for the
relpositioned renderer. Removal of a div causes the anonymous blocks to
be merged, and the renderer becomes a descendant of a different block.
Since the new containingBlock() has an empty positionedObject list,
the relpositioned renderer does not get layout after being dirtied.

This patch changes containingBlock() so that it returns the container
of an anonymous block for positioned objects, not the anonymous
block itself. It also adds an ASSERT to insertPositionedObject()
to flag any other cases where something is trying to create a
positioned object list on an anonymous block.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertPositionedObject):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

LayoutTests: Crash due to reparenting of relpositioned object in table
https://bugs.webkit.org/show_bug.cgi?id=70848

Adding test that exercises the crash condition in bug 70848.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • fast/css/relative-position-replaced-in-table-display-crash-expected.txt: Added
  • fast/css/relative-position-replaced-in-table-display-crash.html: Added

Review URL: http://codereview.chromium.org/9232034

4:08 PM Changeset in webkit [105336] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/912

Merge 104441 - insertAdjacentHTML doesn't play nice with DocumentFragment
BUG=109556
Review URL: https://chromiumcodereview.appspot.com/9249040

4:07 PM Changeset in webkit [105335] by ojan@chromium.org
  • 2 edits in trunk/Tools

Fix tests from http://trac.webkit.org/changeset/105332.

The code assumed that if you passed an options object with a configuration
attribute that it would have a valid value. A bunch of the testing mocks
do things like having a configuration value of None.

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

(Port.init):

3:40 PM Changeset in webkit [105334] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Update a few chromium expectations.

  • platform/chromium/test_expectations.txt:
3:29 PM Changeset in webkit [105333] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Provide access to user's list of preferred languages
https://bugs.webkit.org/show_bug.cgi?id=76138

Reviewed by Timothy Hatcher.

No new tests, tested by fast/harness/user-preferred-language.html.

  • platform/mac/Language.mm:

(WebCore::platformUserPreferredLanguages): Don't over-release a the CFStrings returned by

CFLocaleCopyPreferredLanguages.

3:14 PM Changeset in webkit [105332] by ojan@chromium.org
  • 3 edits in trunk/Tools

Shave 0.5 seconds off check-webkit-style runtime for test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=76576

Reviewed by Adam Barth.

Avoid calling default_configuration in base.py. We don't need it for
checking test_expectations.txt style. It takes ~0.5 seconds to run on my
Mac Pro. It's the call to "perl Tools/Scripts/webkit-build-directory --top-level"
from common.executive.

At some point someone should probably look into why that call is so slow
since it's on the critical path for run-webkit-tests and build-webkit startup.

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

(Port.init):

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

(TestExpectationsChecker._determine_port_from_exepectations_path):

3:07 PM Changeset in webkit [105331] by jsbell@chromium.org
  • 5 edits in trunk

IndexedDB: Implement create-intermediate-objects semantics when injecting values via keyPaths
https://bugs.webkit.org/show_bug.cgi?id=76493

Source/WebCore:

Reviewed by Tony Chang.

Tests: storage/indexeddb/objectstore-autoincrement.html

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::injectIDBKeyIntoSerializedValue):

LayoutTests:

Per discussion on public-webapps, when injecting a key into a value, create intermediate
objects if necessary.

Reviewed by Tony Chang.

  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
3:03 PM Changeset in webkit [105330] by dpranke@chromium.org
  • 7 edits
    1 move
    1 add in trunk

[chromium] move Tools.gyp, switch build-webkit --chromium to All.gyp
https://bugs.webkit.org/show_bug.cgi?id=76505

Reviewed by Tony Chang.

.:

Update with newly-generated files.

  • .gitignore:

Source/WebKit/chromium:

Update path to Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp.

  • All.gyp:
  • gyp_webkit:
  • change to using All.gyp
  • change build_webkit_exes_from_webkit_gyp to 0

Tools:

Update chromium build script to use All.gyp instead of WebKit.gyp

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: Renamed from Source/WebKit/chromium/Tools.gyp.
  • Scripts/webkitdirs.pm:
2:58 PM Changeset in webkit [105329] by jsbell@chromium.org
  • 7 edits in trunk

IndexedDB: Invalid keys yielded by key paths should raise exceptions, not error callbacks
https://bugs.webkit.org/show_bug.cgi?id=76075

Reviewed by Tony Chang.

Source/WebCore:

Tests: storage/indexeddb/objectstore-basics.html

  • storage/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::put):

LayoutTests:

  • storage/indexeddb/mozilla/bad-keypath-expected.txt:
  • storage/indexeddb/mozilla/bad-keypath.html:
  • storage/indexeddb/objectstore-basics-expected.txt:
  • storage/indexeddb/objectstore-basics.html:
2:49 PM Changeset in webkit [105328] by jamesr@google.com
  • 2 edits in trunk/Source/WebCore

[chromium] Fix compile error from bug #76211
https://bugs.webkit.org/show_bug.cgi?id=76575

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

No new tests. Fixing compile only.

  • platform/graphics/chromium/ImageLayerChromium.cpp:

(WebCore::ImageLayerTextureUpdater::prepareToUpdate):

2:49 PM Changeset in webkit [105327] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Update chromium linux pixel baseline for svg test

  • platform/chromium-linux/svg/custom/linking-a-03-b-viewBox-expected.png:
2:48 PM Changeset in webkit [105326] by Martin Robinson
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] WebKit-3.0.gir does not include information about C includes or exported packages
https://bugs.webkit.org/show_bug.cgi?id=49875

Patch by Evan Nemerson <evan@coeus-group.com> on 2012-01-18
Reviewed by Martin Robinson.

  • GNUmakefile.am: Add some information to the GIR generator to fix

Vala binding generation.

2:43 PM Changeset in webkit [105325] by mitz@apple.com
  • 2 edits in trunk/Tools

Don’t hardcode the path to ‘make‘.

Patch by Sam Weinig <sam@webkit.org> on 2012-01-18
Reviewed by Dan Bernstein.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2:39 PM Changeset in webkit [105324] by dgrogan@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

IndexedDB: Check for permission before using IndexedDB from a worker.
https://bugs.webkit.org/show_bug.cgi?id=76500

Reviewed by David Levin.

  • src/IDBFactoryBackendProxy.cpp:

(WebKit::AllowIndexedDBMainThreadBridge::create):
(WebKit::AllowIndexedDBMainThreadBridge::cancel):
(WebKit::AllowIndexedDBMainThreadBridge::result):
(WebKit::AllowIndexedDBMainThreadBridge::signalCompleted):
(WebKit::AllowIndexedDBMainThreadBridge::AllowIndexedDBMainThreadBridge):
(WebKit::AllowIndexedDBMainThreadBridge::allowIndexedDBTask): Call
webView->permissionClient()->allowIndexedDB on the main thread because
ContentSettingsObserver::AllowIndexedDB(), which is called down the
chain, expects to be run on the main thread.
(WebKit::AllowIndexedDBMainThreadBridge::didComplete):
(WebKit::IDBFactoryBackendProxy::allowIDBFromWorkerThread): Wait for
main permission check to complete on main thread before proceeding on
worker thread.

2:37 PM Changeset in webkit [105323] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] Add a flag telling plug-in if it can enter sandbox
https://bugs.webkit.org/show_bug.cgi?id=76467

Reviewed by Anders Carlsson.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: (WebKit::NPN_GetValue): Added a private flag.
2:34 PM Changeset in webkit [105322] by jsbell@chromium.org
  • 2 edits in trunk/Tools

Adding myself to committers.py
https://bugs.webkit.org/show_bug.cgi?id=76569

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
2:32 PM Changeset in webkit [105321] by abarth@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION (r104000): AdBlock extension fails to load/function
https://bugs.webkit.org/show_bug.cgi?id=75554

Reviewed by Andy Estes.

Source/WebCore:

Previously, we would claim the documentElement was available before
we'd actually attached it to the DOM (which we now do via the
attachment queue). This issue was noted in the code with a FIXME
comment, but there was no test coverage for the issue. This patch
resolves the FIXME and adds a test.

Test: userscripts/document-element-available-at-start.html

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):

LayoutTests:

This test checks that the documentElement is available when user
scripts are run at document start.

  • userscripts/document-element-available-at-start-expected.txt: Added.
  • userscripts/document-element-available-at-start.html: Added.
2:27 PM Changeset in webkit [105320] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[SKIA / CHROMIUM] Add some canvas tests to test_expectations to prepare for changes to use sw-rasterized paths in skia-gpu
https://bugs.webkit.org/show_bug.cgi?id=76469

Patch by Brian Salomon <bsalomon@google.com> on 2012-01-18
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
2:13 PM Changeset in webkit [105319] by abarth@webkit.org
  • 4 edits in trunk/Tools

Up the cap on test failures tolerated by the EWS so the mac-ews can run to completion
https://bugs.webkit.org/show_bug.cgi?id=76567

Reviewed by Eric Seidel.

Current the AppleMac port has slightly more failures than we allow on
the EWS, causing the mac-ews to spin. This patch ups the limit a bit,
which should hopefully let the mac-ews run to completion. Once
AppleMac has fewer failures, we can lower the cap again.

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

(LayoutTestResultsReaderTest.test_layout_test_results):

  • Scripts/webkitpy/tool/steps/runtests.py:

(RunTests):

  • Scripts/webkitpy/tool/steps/steps_unittest.py:
2:07 PM Changeset in webkit [105318] by tommyw@google.com
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] MediaStream API: Make WebMediaStreamDescriptor copyable
https://bugs.webkit.org/show_bug.cgi?id=76526

Reviewed by Darin Fisher.

This patch adds a copy constructor and a assignment operator to WebMediaStreamDescriptor.

  • public/platform/WebMediaStreamDescriptor.h:

(WebKit::WebMediaStreamDescriptor::WebMediaStreamDescriptor):
(WebKit::WebMediaStreamDescriptor::operator=):

  • src/WebMediaStreamDescriptor.cpp:

(WebKit::WebMediaStreamDescriptor::assign):

1:58 PM Changeset in webkit [105317] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] REGRESSION(r105310): Two inspector tests fails
https://bugs.webkit.org/show_bug.cgi?id=76566

  • platform/qt/Skipped: Skip failing tests to paint the bot green.
1:47 PM Changeset in webkit [105316] by jamesr@google.com
  • 2 edits
    4 adds in trunk/LayoutTests

[chromium] Update expectations, add a few new baselines.

  • platform/chromium/http/tests/misc/bubble-drag-events-expected.txt: Added.
  • platform/chromium/http/tests/misc/drag-over-iframe-invalid-source-crash-expected.txt: Added.
  • platform/chromium/http/tests/misc/iframe-invalid-source-crash-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
1:45 PM Changeset in webkit [105315] by eric.carlson@apple.com
  • 33 edits
    4 adds in trunk

Provide access to user's list of preferred languages
https://bugs.webkit.org/show_bug.cgi?id=76138

Reviewed by Alexey Proskuryakov.

.:

  • Source/autotools/symbols.filter: List the new functions.

Source/WebCore:

Test: fast/harness/user-preferred-language.html

  • WebCore.exp.in: Export the new functions.
  • WebCore.order: Ditto.
  • Target.pri: Include new files.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCoreTestSupport.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • platform/Language.cpp:

(WebCore::defaultLanguage): Return userPreferredLanguages[0].
(WebCore::preferredLanguagesOverride): New, return the languages override.
(WebCore::overrideUserPreferredLanguages): New, set the languages override.
(WebCore::userPreferredLanguages): New, return the languages array.

  • platform/Language.h:
  • platform/blackberry/LocalizedStringsBlackBerry.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/chromium/LanguageChromium.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/efl/LanguageEfl.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/gtk/LanguageGtk.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/mac/Language.mm:

(+[WebLanguageChangeObserver _webkit_languagePreferencesDidChange]): Flag the user languages

as invalid.

(WebCore::platformLanguage): Removed.
(WebCore::platformUserPreferredLanguages): New, return the list of user preferred languages.

  • platform/qt/LanguageQt.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/win/LanguageWin.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • testing/Internals.cpp:

(WebCore::Internals::userPreferredLanguages): New, return the platform's user preferred languages.
(WebCore::Internals::setUserPreferredLanguages): New, override the user's preferred languages.

  • testing/Internals.h:
  • testing/Internals.idl: Add userPreferredLanguages.
  • testing/js/JSInternalsCustom.cpp:

(WebCore::JSInternals::userPreferredLanguages): New.
(WebCore::JSInternals::setUserPreferredLanguages): New.

  • testing/v8/V8InternalsCustom.cpp:

(WebCore::V8Internals::userPreferredLanguagesAccessorGetter): New.
(WebCore::V8Internals::userPreferredLanguagesAccessorSetter): New.

Source/WebKit2:

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode): Encode the languages array.
(WebKit::WebProcessCreationParameters::decode): Decode the languages array.

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::languageChanged): Override the WebProcess userPreferredLanguages.
(WebKit::WebContext::ensureWebProcess): Initialize parameters.languages.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess): Override user languages array.
(WebKit::WebProcess::userPreferredLanguagesChanged): Ditto.

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in: Define UserPreferredLanguagesChanged.
  • win/WebKit2.def: Export the new functions.
  • win/WebKit2CFLite.def: Ditto.

Tools:

  • GNUmakefile.am: Add JSInternalsCustom.cpp.

LayoutTests:

  • fast/harness/user-preferred-language-expected.txt: Added.
  • fast/harness/user-preferred-language.html: Added.
1:41 PM Changeset in webkit [105314] by commit-queue@webkit.org
  • 14 edits
    1 add in trunk/Source

[chromium] Enable tracking opaque region in Skia graphics context, return it from LayerTextureUpdater
https://bugs.webkit.org/show_bug.cgi?id=76211

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

New unit tests in LayerTextureUpdaterTest.cpp

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapCanvasLayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerChromium::createTextureUpdater):

  • platform/graphics/chromium/LayerTextureUpdater.h:

(WebCore::LayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/PlatformCanvas.h:

(WebCore::PlatformCanvas::Painter::skiaContext):

  • platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::SkPictureCanvasLayerTextureUpdater::SkPictureCanvasLayerTextureUpdater):
(WebCore::SkPictureCanvasLayerTextureUpdater::prepareToUpdate):
(WebCore::SkPictureCanvasLayerTextureUpdater::setOpaque):

  • platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/LayerTextureUpdaterTest.cpp: Added.

(WebCore::TestLayerPainterChromium::TestLayerPainterChromium):
(WebCore::TestLayerPainterChromium::paint):
(WebCore::PaintFillOpaque::operator()):
(WebCore::PaintFillAlpha::operator()):
(WebCore::TEST):

  • tests/TiledLayerChromiumTest.cpp:

(WTF::FakeLayerTextureUpdater::prepareToUpdate):

1:34 PM Changeset in webkit [105313] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] DumpRenderTree converts "file:///" to a path differently
https://bugs.webkit.org/show_bug.cgi?id=76563

  • platform/qt/Skipped: Skip http/tests/misc/iframe-invalid-source-crash.html until fix.
1:23 PM Changeset in webkit [105312] by jamesr@google.com
  • 5 edits
    2 adds
    1 delete in trunk/LayoutTests

[chromium] Update pixel results due to skia roll

  • platform/chromium-linux/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
  • platform/chromium-mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
  • platform/chromium-mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Added.
  • platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Removed.
  • platform/chromium-win/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
1:03 PM Changeset in webkit [105311] by commit-queue@webkit.org
  • 16 edits
    4 copies
    2 moves in trunk/Source

[chromium] Refactor canvas, plugin, and video drawing to be more data-driven
https://bugs.webkit.org/show_bug.cgi?id=76274

Patch by Tim Dresser <tdresser@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

This is the first step in refactoring canvas, plugin, and video drawing.
The CCCustomLayerDrawQuad implementation has been copied to CCCanvasDrawQuad, CCPluginDrawQuad and CCVideoDrawQuad.
All references to CustomLayer have been removed.

As this is a refactor, no new tests were added. CCLayerTreeHostImplTest.blendingOffWhenDrawingOpaqueLayers was modified to
no longer test culling.

  • WebCore.gypi:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawQuad):
(WebCore::LayerRendererChromium::drawCanvasQuad):
(WebCore::LayerRendererChromium::drawVideoQuad):
(WebCore::LayerRendererChromium::drawPluginQuad):

  • platform/graphics/chromium/LayerRendererChromium.h:
  • platform/graphics/chromium/cc/CCCanvasDrawQuad.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp.

(WebCore::CCCanvasDrawQuad::create):
(WebCore::CCCanvasDrawQuad::CCCanvasDrawQuad):

  • platform/graphics/chromium/cc/CCCanvasDrawQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h.

(WebCore::CCCanvasDrawQuad::layer):

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

(WebCore::CCCanvasLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
  • platform/graphics/chromium/cc/CCDrawQuad.cpp:

(WebCore::CCDrawQuad::toCanvasDrawQuad):
(WebCore::CCDrawQuad::toVideoDrawQuad):
(WebCore::CCDrawQuad::toPluginDrawQuad):

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

(WebCore::CCLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCPluginDrawQuad.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp.

(WebCore::CCPluginDrawQuad::create):
(WebCore::CCPluginDrawQuad::CCPluginDrawQuad):

  • platform/graphics/chromium/cc/CCPluginDrawQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h.

(WebCore::CCPluginDrawQuad::layer):

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

(WebCore::CCPluginLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCPluginLayerImpl.h:
  • platform/graphics/chromium/cc/CCQuadCuller.cpp:
  • platform/graphics/chromium/cc/CCVideoDrawQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp.

(WebCore::CCVideoDrawQuad::create):
(WebCore::CCVideoDrawQuad::CCVideoDrawQuad):

  • platform/graphics/chromium/cc/CCVideoDrawQuad.h: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h.

(WebCore::CCVideoDrawQuad::layer):

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

(WebCore::CCVideoLayerImpl::appendQuads):

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

Source/WebKit/chromium:

No longer test culling in CCLayerTreeHostImplTest.blendingOffWhenDrawingLayers.

  • tests/CCLayerTreeHostImplTest.cpp:

(WebKit::BlendStateCheckLayer::appendQuads):
(WebKit::BlendStateCheckLayer::setExpectation):
(WebKit::BlendStateCheckLayer::quadsAppended):
(WebKit::BlendStateCheckLayer::BlendStateCheckLayer):
(WebKit::TEST_F):

12:59 PM Changeset in webkit [105310] by vsevik@chromium.org
  • 9 edits
    4 adds in trunk

Web Inspector: Unsafe cross origin access errors should show stack trace in console.
https://bugs.webkit.org/show_bug.cgi?id=73099

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/console-cross-origin-iframe-logging.html

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::addConsoleMessage):

  • dom/ScriptExecutionContext.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::shouldAllowNavigation):

  • page/Console.cpp:

(WebCore::Console::addMessage):

  • page/Console.h:
  • page/DOMWindow.cpp:

(WebCore::PostMessageTimer::PostMessageTimer):
(WebCore::PostMessageTimer::stackTrace):
(WebCore::DOMWindow::postMessage):
(WebCore::DOMWindow::postMessageTimerFired):
(WebCore::DOMWindow::printErrorMessage):

LayoutTests:

  • http/tests/inspector/console-cross-origin-iframe-logging-expected.txt: Added.
  • http/tests/inspector/console-cross-origin-iframe-logging.html: Added.
  • http/tests/inspector/resources/cross-origin-iframe.html: Added.
  • platform/chromium/http/tests/inspector/console-cross-origin-iframe-logging-expected.txt: Added.
12:33 PM Changeset in webkit [105309] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-534.54-branch

Merged r98935.

12:29 PM Changeset in webkit [105308] by commit-queue@webkit.org
  • 13 edits in trunk/Source/WebCore

Add [CallWith] support for attributes in JSC/V8 idl code generators.
Part of https://bugs.webkit.org/show_bug.cgi?id=76035

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

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
(GenerateAttributeCallWith):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateAttributeCallWith):

  • bindings/scripts/test/CPP/WebDOMTestObj.cpp:

(WebDOMTestObj::withScriptStateAttribute):
(WebDOMTestObj::setWithScriptStateAttribute):
(WebDOMTestObj::withScriptExecutionContextAttribute):
(WebDOMTestObj::setWithScriptExecutionContextAttribute):
(WebDOMTestObj::withScriptStateAttributeRaises):
(WebDOMTestObj::setWithScriptStateAttributeRaises):
(WebDOMTestObj::withScriptExecutionContextAttributeRaises):
(WebDOMTestObj::setWithScriptExecutionContextAttributeRaises):

  • bindings/scripts/test/CPP/WebDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:

(webkit_dom_test_obj_get_with_script_state_attribute):
(webkit_dom_test_obj_set_with_script_state_attribute):
(webkit_dom_test_obj_get_with_script_execution_context_attribute):
(webkit_dom_test_obj_set_with_script_execution_context_attribute):
(webkit_dom_test_obj_get_with_script_state_attribute_raises):
(webkit_dom_test_obj_set_with_script_state_attribute_raises):
(webkit_dom_test_obj_get_with_script_execution_context_attribute_raises):
(webkit_dom_test_obj_set_with_script_execution_context_attribute_raises):
(webkit_dom_test_obj_set_property):
(webkit_dom_test_obj_get_property):
(webkit_dom_test_obj_class_init):

  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::jsTestObjWithScriptStateAttribute):
(WebCore::jsTestObjWithScriptExecutionContextAttribute):
(WebCore::jsTestObjWithScriptStateAttributeRaises):
(WebCore::jsTestObjWithScriptExecutionContextAttributeRaises):
(WebCore::setJSTestObjWithScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAttribute):
(WebCore::setJSTestObjWithScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAttributeRaises):

  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:

(-[DOMTestObj withScriptStateAttribute]):
(-[DOMTestObj setWithScriptStateAttribute:]):
(-[DOMTestObj withScriptExecutionContextAttribute]):
(-[DOMTestObj setWithScriptExecutionContextAttribute:]):
(-[DOMTestObj withScriptStateAttributeRaises]):
(-[DOMTestObj setWithScriptStateAttributeRaises:]):
(-[DOMTestObj withScriptExecutionContextAttributeRaises]):
(-[DOMTestObj setWithScriptExecutionContextAttributeRaises:]):

  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjInternal::withScriptStateAttributeAttrGetter):
(WebCore::TestObjInternal::withScriptStateAttributeAttrSetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeAttrGetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeAttrSetter):
(WebCore::TestObjInternal::withScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjInternal::withScriptStateAttributeRaisesAttrSetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeRaisesAttrGetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeRaisesAttrSetter):

12:18 PM Changeset in webkit [105307] by ap@apple.com
  • 3 edits in trunk/LayoutTests

file:// doesn't work as base URL
https://bugs.webkit.org/show_bug.cgi?id=76496

Updating more layout test results.

  • fast/loader/url-parse-1-expected.txt: This was already in the patch, just failed to land.
  • http/tests/misc/bubble-drag-events-expected.txt: Missed that one among failure noise.
12:16 PM Changeset in webkit [105306] by eae@chromium.org
  • 3708 edits
    382 copies
    47 deletes in branches/subpixellayout

Merging trunk changes up until 105194 into subpixel branch.

12:12 PM Changeset in webkit [105305] by commit-queue@webkit.org
  • 4 edits in trunk

[Qt][WK2] Broken build with undefined reference to shm_open and shm_unlink
https://bugs.webkit.org/show_bug.cgi?id=76538

Patch by Luciano Wolf <Luciano Miguel Wolf> on 2012-01-18
Reviewed by Tor Arne Vestbø.

The -lrt parameter was coming before -lWebKit2 during linkage.

Moved rt lib inclusion from Source/api.pri to WebKit2.pri as it should be aware
of its own dependencies instead of letting WebKit guess about. Letting
it on api.pri can lead to a wrong parameter's order during linker phase.
Ubuntu 11.10 was giving errors about SharedMemory (shm_open and
shm_unlink undefined symbols).

.:

  • Source/api.pri:

Source/WebKit2:

The issue was fixed with the help of Aloisio Almeida and Lauro Venancio.

  • WebKit2.pri:
12:04 PM WebKit Team edited by jonlee@apple.com
Adding Jon Lee as committer. (diff)
11:59 AM Changeset in webkit [105304] by reed@google.com
  • 2 edits in trunk/LayoutTests

add test expections ahead of skia DEPS roll
https://bugs.webkit.org/show_bug.cgi?id=76477

Reviewed by NOBODY: Unreviewed
see http://code.google.com/p/chromium/issues/detail?id=110493

  • platform/chromium/test_expectations.txt:
11:48 AM Changeset in webkit [105303] by jamesr@google.com
  • 15 edits
    2 adds
    2 deletes in trunk/LayoutTests

[chromium] Update expectations and baselines for various tests

  • platform/chromium-linux/svg/transforms/animated-path-inside-transformed-html-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/linking-a-03-b-all-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/linking-a-03-b-viewBox-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-container-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/chromium-mac/svg/custom/mouse-move-on-svg-container-expected.png: Removed.
  • platform/chromium-mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Removed.
  • platform/chromium-win/svg/custom/linking-a-03-b-viewBox-expected.png:
  • platform/chromium-win/svg/custom/linking-a-03-b-viewBox-expected.txt:
  • platform/chromium-win/svg/transforms/animated-path-inside-transformed-html-expected.png:
  • platform/chromium/test_expectations.txt:
11:39 AM Changeset in webkit [105302] by abarth@webkit.org
  • 2 edits in trunk/Tools

Add Chromium Linux GPU 32 to the list of allowed Chromium Linux
configurations.

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

(ChromiumLinuxPort.init):

11:24 AM Changeset in webkit [105301] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebKit/mac

Merged r105291.

10:59 AM Changeset in webkit [105300] by Lucas Forschler
  • 1 edit in branches/safari-534.54-branch/LayoutTests/fast/dom/importNode-confusing-localName.html

Merge layoutest fix from 10695015.

10:58 AM Changeset in webkit [105299] by pfeldman@chromium.org
  • 2 edits in trunk/LayoutTests

Not reviewed: fix failing inspector test.

  • inspector/elements/set-html-via-resource.html:
10:57 AM Changeset in webkit [105298] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-534.54-branch

Merged r104275.

10:51 AM Changeset in webkit [105297] by Lucas Forschler
  • 3 edits
    6 copies in branches/safari-534.54-branch

Merged r97088.

10:49 AM Changeset in webkit [105296] by timothy_horton@apple.com
  • 5 edits
    3 adds in trunk

[CG] Rasterized scaling of transformed SVG shapes with gradient fill and -webkit-svg-shadow applied
https://bugs.webkit.org/show_bug.cgi?id=76482
<rdar://problem/10415483>

Reviewed by Simon Fraser.

Scale the CGLayer used when filling or stroking a shadowed path or rect with
a gradient in GraphicsContextCG. Previously, the CGLayer was created and rendered
into at the untransformed size of the shape, leading to pixelation when it was
then scaled up and drawn into the destination.

Add AffineTransform::mapSize() to map a size through a transformation.

Test: svg/custom/transform-with-shadow-and-gradient.svg

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::strokePath):
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::strokeRect):

  • platform/graphics/transforms/AffineTransform.cpp:

(WebCore::AffineTransform::mapSize): Added.

  • platform/graphics/transforms/AffineTransform.h:

Add a test that ensures that SVG shapes are drawn crisply when transformed
if they have both a gradient fill and -webkit-svg-shadow applied.

  • platform/mac/svg/custom/transform-with-shadow-and-gradient-expected.png: Added.
  • platform/mac/svg/custom/transform-with-shadow-and-gradient-expected.txt: Added.
  • svg/custom/transform-with-shadow-and-gradient.svg: Added.
10:46 AM Changeset in webkit [105295] by dmazzoni@google.com
  • 18 edits
    18 adds in trunk

Accessibility: Chromium needs methods to scroll an object into view or to a specific location.
https://bugs.webkit.org/show_bug.cgi?id=73460

Reviewed by Chris Fleizach.

Source/WebCore:

Tests: platform/chromium/accessibility/scroll-to-global-point-main-window.html

platform/chromium/accessibility/scroll-to-global-point-nested.html
platform/chromium/accessibility/scroll-to-global-point-iframe.html
platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html
platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html
platform/chromium/accessibility/scroll-to-make-visible-iframe.html
platform/chromium/accessibility/scroll-to-make-visible-main-window.html
platform/chromium/accessibility/scroll-to-make-visible-nested.html
platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::computeBestScrollOffset):
(WebCore::AccessibilityObject::scrollToMakeVisible):
(WebCore::AccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebCore::AccessibilityObject::scrollToGlobalPoint):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityObject::scrollTo):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityRenderObject::scrollTo):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::getScrollableAreaIfScrollable):
(WebCore::AccessibilityScrollView::scrollTo):

  • accessibility/AccessibilityScrollView.h:

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::scrollToMakeVisible):
(WebKit::WebAccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebKit::WebAccessibilityObject::scrollToGlobalPoint):

Tools:

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/chromium/AccessibilityUIElement.cpp:

(AccessibilityUIElement::AccessibilityUIElement):
(AccessibilityUIElement::scrollToMakeVisibleCallback):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocusCallback):
(AccessibilityUIElement::scrollToGlobalPointCallback):

  • DumpRenderTree/chromium/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

LayoutTests:

  • platform/chromium/accessibility/scroll-to-global-point-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html: Added.
10:41 AM Changeset in webkit [105294] by ap@apple.com
  • 7 edits
    3 adds in trunk

file:// doesn't work as base URL
https://bugs.webkit.org/show_bug.cgi?id=76496

Reviewed by Darin Adler.

Test: fast/url/degenerate-file-base.html

  • platform/KURL.cpp: (WebCore::KURL::parse): Handle degenerate file URLs properly.
10:41 AM Changeset in webkit [105293] by Lucas Forschler
  • 6 edits
    2 copies in branches/safari-534.54-branch

Merged r95371.

10:20 AM Changeset in webkit [105292] by loislo@chromium.org
  • 4 edits in trunk/Source/WebCore

[chromium] Web Inspector: highlight DOM nodes from detached DOM trees.
https://bugs.webkit.org/show_bug.cgi?id=76545

Reviewed by Yury Semikhatsky.

  • inspector/front-end/DetailedHeapshotGridNodes.js:

(WebInspector.HeapSnapshotGenericObjectNode):
(WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshotNode.prototype.get isNativeRoot):
(WebInspector.HeapSnapshotNode.prototype.get isDetachedDOMTree):
(WebInspector.HeapSnapshot.prototype._init):
(WebInspector.HeapSnapshot.prototype._markDetachedDOMTreeNodes):
(WebInspector.HeapSnapshot.prototype._markQueriableHeapObjects):
(WebInspector.HeapSnapshot.prototype._calculateFlags):

  • inspector/front-end/heapProfiler.css:

(.detached-dom-tree-node):

10:12 AM Changeset in webkit [105291] by enrica@apple.com
  • 4 edits
    1 add in trunk

Source/WebKit/mac: Missing NSForegroundColorAttributeName should be treated as black instead of transparent.
https://bugs.webkit.org/show_bug.cgi?id=76490
<rdar://problem/9460733>

Starting with Lion, there is no more NSForegroundColor attribute in the dictionary
if the color matches the default (solid black).
The fix consists in treating the lack of color as solid black instead of transparent as
we did before.

Added a TestWebKitAPI test.

Reviewed by Darin Adler and Dan Bernstein.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _styleForAttributeChange:]):

Tools: Missing NSForegroundColorAttributeName should be treated as black instead of transparent.
https://bugs.webkit.org/show_bug.cgi?id=76490
<rdar://problem/9460733>

Added TestWebKitAPI test.

Reviewed by Dan Bernstein.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added new test file.
  • TestWebKitAPI/Tests/mac/InspectorBar.mm: Added test that calls

changeAttributes to the WebView.

10:10 AM Changeset in webkit [105290] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Cross-platform processor core counter fix
https://bugs.webkit.org/show_bug.cgi?id=76540

Patch by Roland Takacs <takacs.roland@stud.u-szeged.hu> on 2012-01-18
Reviewed by Zoltan Herczeg.

I attached "OS(FREEBSD)" to "#if OS(DARWIN)
OS(OPENBSD) OS(NETBSD)"

and I removed the OS checking macros from ParallelJobsGeneric.cpp because
the NumberOfCores.cpp contains them for counting CPU cores.
The processor core counter patch located at
https://bugs.webkit.org/show_bug.cgi?id=76530

  • wtf/NumberOfCores.cpp:
  • wtf/ParallelJobsGeneric.cpp:
10:06 AM Changeset in webkit [105289] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[GTK] Listen to GDK_SCROLL_MASK
https://bugs.webkit.org/show_bug.cgi?id=76529

Source/WebKit/gtk:

Set GDK_SCROLL_MASK explicitly, as WebKitWebView does handle
scroll events, scrolling currently works because GTK+ happens
to send such events to widgets listening to GDK_BUTTON_PRESS_MASK,
but this isn't the intended behavior, so it's subject to change.

Patch by Carlos Garnacho <carlosg@gnome.org> on 2012-01-18
Reviewed by Martin Robinson.

  • webkit/webkitwebview.cpp:

(webkit_web_view_realize):

Source/WebKit2:

Set GDK_SCROLL_MASK explicitly, as WebKitWebViewBase does handle
scroll events, scrolling currently works because GTK+ happens
to send such events to widgets listening to GDK_BUTTON_PRESS_MASK,
but this isn't the intended behavior, so it's subject to change.

Patch by Carlos Garnacho <carlosg@gnome.org> on 2012-01-18
Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseRealize):

9:56 AM Changeset in webkit [105288] by pfeldman@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: there should be a way to set HTML for given frame.
https://bugs.webkit.org/show_bug.cgi?id=76548

Reviewed by Yury Semikhatsky.

  • inspector/Inspector.json:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::setDocumentContent):

  • inspector/InspectorPageAgent.h:
  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMModelResourceBinding.prototype.setContent.callbackWrapper):
(WebInspector.DOMModelResourceBinding.prototype.setContent):

9:41 AM Changeset in webkit [105287] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] fontCache related assertion revealed by r105143
https://bugs.webkit.org/show_bug.cgi?id=76534

Unreviewed gardening. Skip a guilty test to paint the bot green.

  • platform/qt/Skipped:
9:40 AM Changeset in webkit [105286] by sergio@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] [regression] A couple of tests failing after r105253
https://bugs.webkit.org/show_bug.cgi?id=76549

Reviewed by Gustavo Noronha Silva.

Fixes a regression added by r105253. The method that
RenderThemeGtk needs to overwrite is popsMenuBySpaceOrReturn()
instead of popsMenuByArrowKeys().

No new tests as it's already covered by
fast/forms/select-popup-pagekeys.html and
fast/forms/select/menulist-onchange-fired-with-key-up-down.html
that started to fail after the revision mentioned above.

  • platform/gtk/RenderThemeGtk.h:

(WebCore::RenderThemeGtk::popsMenuBySpaceOrReturn):

9:35 AM Changeset in webkit [105285] by abecsi@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Fix the debug build.

Unreviewed.

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(setInputPanelVisible): Remove assertion from non-member function.

9:27 AM Changeset in webkit [105284] by pfeldman@chromium.org
  • 2 edits
    1 add in trunk/LayoutTests

Not reviewed: adding missing test data file.

  • inspector/elements/resources/set-html-via-resource-iframe.html: Added.
  • platform/qt/Skipped:
9:19 AM Changeset in webkit [105283] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r105262.
https://bugs.webkit.org/show_bug.cgi?id=76457

  • platform/qt/Skipped: Skip inspector/elements/set-html-via-resource.html until proper fix.
9:14 AM Changeset in webkit [105282] by caseq@chromium.org
  • 7 edits in trunk

Web Inspector: omit compression field in HAR entries for resources coming from cache
https://bugs.webkit.org/show_bug.cgi?id=76543

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • inspector/front-end/HAREntry.js:

(WebInspector.HAREntry.prototype._buildContent):
(WebInspector.HAREntry.prototype.get responseCompression):

LayoutTests:

  • http/tests/inspector/resource-har-conversion-expected.txt:
  • http/tests/inspector/resource-har-headers-expected.txt:
  • http/tests/inspector/resource-parameters-expected.txt:
  • platform/chromium/http/tests/inspector/resource-har-conversion-expected.txt: Removed.
9:09 AM Changeset in webkit [105281] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip failing tests, simplify qt-wk2 skipped list.

  • platform/qt-wk2/Skipped:
  • platform/wk2/Skipped:
8:57 AM Changeset in webkit [105280] by mihnea@adobe.com
  • 5 edits in trunk

[CSSRegions]Fix region style code in CSSStyleSelector
https://bugs.webkit.org/show_bug.cgi?id=76453

Reviewed by Antti Koivisto.

Source/WebCore:

Follow up after comments in https://bugs.webkit.org/show_bug.cgi?id=76064.
With the new approach, the css rule specificity is correctly taken into account
when applying the region style rule.
No new tests, the region style tests are still disabled.

  • css/CSSStyleSelector.cpp:

(WebCore::RuleSet::RuleSetSelectorPair::RuleSetSelectorPair):
(WebCore::CSSStyleSelector::CSSStyleSelector):
(WebCore::CSSStyleSelector::addMatchedDeclaration):
(WebCore::CSSStyleSelector::collectMatchingRules):
(WebCore::CSSStyleSelector::collectMatchingRulesForRegion):
(WebCore::CSSStyleSelector::matchRules):
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
(WebCore::CSSStyleSelector::matchAllRules):
(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):
(WebCore::CSSStyleSelector::checkRegionStyle):
(WebCore::CSSStyleSelector::checkRegionSelector):
(WebCore::RuleData::RuleData):
(WebCore::RuleSet::RuleSet):
(WebCore::RuleSet::addRule):
(WebCore::RuleSet::addRegionRule):
(WebCore::RuleSet::addRulesFromSheet):
(WebCore::isInsideRegionRule):
(WebCore::CSSStyleSelector::applyDeclaration):
(WebCore::CSSStyleSelector::applyDeclarations):
(WebCore::CSSStyleSelector::isValidRegionStyleProperty):
(WebCore::CSSStyleSelector::applyProperty):

  • css/CSSStyleSelector.h:

LayoutTests:

Fix the test as it was not taking into account the selector specificity.

  • fast/regions/region-style-block-background-color.html:
8:39 AM Changeset in webkit [105279] by jer.noble@apple.com
  • 7 edits in trunk

Mac fails to fire an 'error' event for a <video> <source> having an URL with no file extension
https://bugs.webkit.org/show_bug.cgi?id=76494

Reviewed by Eric Carlson.

No new tests; fixes compositing/video/video-with-invalid-source.html. Modified
media/video-source-error-no-candidate.html to check error condition.

When we run out of media engines for a given resource, inform the media player client
that resource loading failed by calling mediaPlayerResourceNotSupported().

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerResourceNotSupported):

  • html/HTMLMediaElement.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::loadWithNextMediaEngine):

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerResourceNotSupported):

8:06 AM Changeset in webkit [105278] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

WebKit2 needs layoutTestController.overridePreference
https://bugs.webkit.org/show_bug.cgi?id=42197

Unreviewed gardening, skip failing tests due to this bug.

  • platform/wk2/Skipped:
8:02 AM Changeset in webkit [105277] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Test fonts metric differencies with Qt5
https://bugs.webkit.org/show_bug.cgi?id=75710

Unreviewed gardening, unskip now passing tests after tesfont fix

  • platform/qt-5.0/Skipped:
7:42 AM Changeset in webkit [105276] by Alexandru Chiculita
  • 19 edits
    11 adds in trunk

CSS Shaders: Parse float parameters for the custom() filter syntax
https://bugs.webkit.org/show_bug.cgi?id=76253

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Custom CSS filters allow passing parameters from CSS to the underlying rendering technology (in this case WebGL Shaders).
This patch adds support for parameters of types float, vec2, vec3 and vec4.

https://dvcs.w3.org/hg/FXTF/raw-file/tip/custom/index.html#feCustomParamsAttribute

Tests: css3/filters/effect-custom-combined-missing.html

css3/filters/effect-custom-parameters.html

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Added CustomFilterParameter.h, CustomFilterNumberParameter.h and CustomFilterOperation.cpp to the projects.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::valueForCustomFilterNumberParameter):
(WebCore::CSSComputedStyleDeclaration::valueForCustomFilterParameter):
(WebCore::CSSComputedStyleDeclaration::valueForFilter):

Added the computed parameters in alphabetic order (CustomFilterOperation always keeps the parameters sorted).

  • css/CSSComputedStyleDeclaration.h:
  • css/CSSStyleSelector.cpp:

(WebCore::sortParametersByNameComparator):
(WebCore::CSSStyleSelector::parseCustomFilterNumberParamter):
(WebCore::CSSStyleSelector::parseCustomFilterParameterList):
(WebCore::CSSStyleSelector::createCustomFilterOperation):

Added parsing for float, vec2, vec3 and vec4. The values are space separated.

  • css/CSSStyleSelector.h:
  • platform/graphics/filters/CustomFilterNumberParameter.h: Added.

(WebCore::CustomFilterNumberParameter::create):
(WebCore::CustomFilterNumberParameter::size):
(WebCore::CustomFilterNumberParameter::valueAt):
(WebCore::CustomFilterNumberParameter::addValue):
(WebCore::CustomFilterNumberParameter::CustomFilterNumberParameter):

  • platform/graphics/filters/CustomFilterOperation.cpp: Added.

(WebCore::CustomFilterOperation::CustomFilterOperation):
(WebCore::CustomFilterOperation::~CustomFilterOperation):

Moved constructor and destructor in CustomFilterOperation.cpp to avoid including CustomFilterParameter everywhere.

(WebCore::CustomFilterOperation::hasSortedParameterList):

Debug runtime check that we always have parameters in alphabetic order.

  • platform/graphics/filters/CustomFilterOperation.h:

(WebCore::CustomFilterOperation::create):
(WebCore::CustomFilterOperation::parameters):

Just added the parameters list. Not using a map, but keeping the items sorted by name. We need them sorted
to make it easy and fast to merge two CustomFilterOperations during animations.

  • platform/graphics/filters/CustomFilterParameter.h: Added.

(WebCore::CustomFilterParameter::~CustomFilterParameter):
(WebCore::CustomFilterParameter::parameterType):
(WebCore::CustomFilterParameter::name):
(WebCore::CustomFilterParameter::CustomFilterParameter):

  • platform/graphics/filters/CustomFilterShader.cpp:

(WebCore::CustomFilterShader::uniformLocationByName):

  • platform/graphics/filters/CustomFilterShader.h:
  • platform/graphics/filters/FECustomFilter.cpp:

(WebCore::FECustomFilter::FECustomFilter):
(WebCore::FECustomFilter::create):
(WebCore::FECustomFilter::platformApplySoftware):
(WebCore::FECustomFilter::bindProgramNumberParameters):
(WebCore::FECustomFilter::bindProgramParameters):

Added code that maps the parameters from CSS to WebGL.

(WebCore::FECustomFilter::bindProgramAndBuffers):

  • platform/graphics/filters/FECustomFilter.h:
  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build):

Fixed a case when the filter was not created, letting the filter add itself as a source of its own.
Also added a test case for this particular case: css3/filters/effect-custom-combined-missing.html.

LayoutTests:

  • css3/filters/custom-filter-property-computed-style-expected.txt:
  • css3/filters/effect-custom-combined-missing-expected.png: Added.
  • css3/filters/effect-custom-combined-missing-expected.txt: Added.
  • css3/filters/effect-custom-combined-missing.html: Added.

Testing that missing shader filters will not enter an infinite loop.

  • css3/filters/effect-custom-parameters-expected.png: Added.
  • css3/filters/effect-custom-parameters-expected.txt: Added.
  • css3/filters/effect-custom-parameters.html: Added.
  • css3/filters/resources/color-offset-parameters.fs: Added.
  • css3/filters/resources/vertex-offset-parameters.vs: Added.

Testing parameter passing from CSS to WebGL.

  • css3/filters/script-tests/custom-filter-property-computed-style.js:

Added computed style checks for number parameters.

7:36 AM Changeset in webkit [105275] by kenneth@webkit.org
  • 10 edits in trunk/Source/WebKit2

[Qt] Zoom in to the focused node only when vkb starts becoming visible https://bugs.webkit.org/show_bug.cgi?id=76174

Reviewed by Simon Hausmann.

Remove the old code which always zoomed in when something got focus,
even via JavaScript, and replaced it with code checking the state of
the Qt input panel.

Also make sure that we do not zoom in or request the input panel if
the item is not focused.

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/qt/QtPageClient.cpp:
  • UIProcess/qt/QtPageClient.h:
  • UIProcess/qt/QtWebPageEventHandler.cpp:

(QtWebPageEventHandler::QtWebPageEventHandler):
(QtWebPageEventHandler::~QtWebPageEventHandler):
(QtWebPageEventHandler::inputPanelVisibleChanged):

  • UIProcess/qt/QtWebPageEventHandler.h:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::respondToChangedSelection):

7:21 AM Changeset in webkit [105274] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: resource tree model leaks frames
https://bugs.webkit.org/show_bug.cgi?id=76533

Reviewed by Pavel Feldman.

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeModel.prototype._frameDetached):
(WebInspector.ResourceTreeModel.prototype._removeFrame):
(WebInspector.ResourceTreeFrame.prototype._removeChildFrame):

7:07 AM Changeset in webkit [105273] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

Cross-platform processor core counter
https://bugs.webkit.org/show_bug.cgi?id=76530

Unreviewed cross-MinGW buildfix after r105270.

  • wtf/NumberOfCores.cpp: Use windows.h instead of Windows.h.
6:20 AM Changeset in webkit [105272] by vsevik@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Enable support for Open Script dialog based on FilteredItemSelectionDialog.
https://bugs.webkit.org/show_bug.cgi?id=76466

Reviewed by Pavel Feldman.

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

(WebInspector.JavaScriptOutlineDialog.createShortcut):
(WebInspector.OpenResourceDialog.filterOutEmptyURLs):
(WebInspector.OpenResourceDialog):
(WebInspector.OpenResourceDialog.install):
(WebInspector.OpenResourceDialog._show):
(WebInspector.OpenResourceDialog.createShortcut):
(WebInspector.OpenResourceDialog.prototype.itemTitleAt):
(WebInspector.OpenResourceDialog.prototype.itemKeyAt):
(WebInspector.OpenResourceDialog.prototype.itemsCount):
(WebInspector.OpenResourceDialog.prototype.requestItems):
(WebInspector.OpenResourceDialog.prototype.selectItem):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.showUISourceCode):

6:15 AM Changeset in webkit [105271] by rgabor@webkit.org
  • 3 edits in trunk/LayoutTests

[Qt] Update another SVG expected after r105247.

Unreviewed.

  • platform/qt/svg/custom/pointer-events-text-css-transform-expected.png:
  • platform/qt/svg/custom/pointer-events-text-css-transform-expected.txt:
6:15 AM Changeset in webkit [105270] by commit-queue@webkit.org
  • 11 edits
    2 adds in trunk/Source

Cross-platform processor core counter
https://bugs.webkit.org/show_bug.cgi?id=76530

Patch by Roland Takacs <takacs.roland@stud.u-szeged.hu> on 2012-01-18
Reviewed by Zoltan Herczeg.

Source/JavaScriptCore:

Two files have been created that include the processor core counter function.
It used to be in ParallelJobsGeneric.h/cpp before.

(JSC::Options::initializeOptions):

  • wtf/CMakeLists.txt:
  • wtf/NumberOfCores.cpp: Added.

(WTF::numberOfProcessorCores):

  • wtf/NumberOfCores.h: Added.
  • wtf/ParallelJobsGeneric.cpp:

(WTF::ParallelEnvironment::ParallelEnvironment):

  • wtf/ParallelJobsGeneric.h:

Source/WTF:

Two files have been added to the project, namely NumberOfCores.h/cpp,
that include a CPU core number determining function.

  • WTF.pro:
5:57 AM Changeset in webkit [105269] by rgabor@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] svg/carto.net/frameless-svg-parse-error.html asserting after r105143
https://bugs.webkit.org/show_bug.cgi?id=76534

Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
5:52 AM Changeset in webkit [105268] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Not reviewed: follow up to r105262, fixing front-end compilation.

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMDocument):
(WebInspector.DOMModelResourceBinding.prototype.setContent.setOuterHTML):

5:35 AM Changeset in webkit [105267] by kbalazs@webkit.org
  • 10 edits in trunk

[Qt] Consolidate layout test crash logging
https://bugs.webkit.org/show_bug.cgi?id=75088

Reviewed by Simon Hausmann.

Move backtrace generating logic into WTFReportBacktrace
and add a way to deinstall signal handlers if we know
that we have already printed the backtrace.

.:

  • Source/qtwebkit-export.map:

Source/JavaScriptCore:

(WTFLogLocker::WTFReportBacktrace):
(WTFLogLocker::WTFSetCrashHook):
(WTFLogLocker::WTFInvokeCrashHook):

  • wtf/Assertions.h:

Tools:

  • DumpRenderTree/qt/main.cpp:

(crashHandler):
(setupSignalHandlers):
(WTFCrashHook):
(main):

  • WebKitTestRunner/InjectedBundle/qt/InjectedBundleQt.cpp:

(WTR::crashHandler):
(WTR::setupSignalHandlers):
(WTR::crashHook):
(WTR::InjectedBundle::platformInitialize):

5:26 AM Changeset in webkit [105266] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after testfonts update.

  • platform/qt-5.0/fast/html/font-weight-bold-for-b-and-strong-expected.png:
  • platform/qt-5.0/fast/html/font-weight-bold-for-b-and-strong-expected.txt:
5:15 AM Changeset in webkit [105265] by rgabor@webkit.org
  • 23 edits in trunk/LayoutTests

[Qt] Update some SVG expected after r105247.

Unreviewed.

  • platform/qt/svg/custom/linking-a-03-b-all-expected.png:
  • platform/qt/svg/custom/linking-a-03-b-all-expected.txt:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-expected.png:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-expected.txt:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-transform-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-container-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-container-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-root-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:
  • platform/qt/svg/custom/pointer-events-image-css-transform-expected.png:
  • platform/qt/svg/custom/pointer-events-image-css-transform-expected.txt:
  • platform/qt/svg/custom/pointer-events-image-expected.png:
  • platform/qt/svg/custom/pointer-events-image-expected.txt:
  • platform/qt/svg/custom/pointer-events-text-expected.png:
  • platform/qt/svg/custom/pointer-events-text-expected.txt:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.txt:
5:00 AM Changeset in webkit [105264] by mario@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] platform/gtk/accessibility/combo-box-collapsed-selection-changed.html is failing after r105253
https://bugs.webkit.org/show_bug.cgi?id=76531

Unreviewed. Skip test now failing in the GTK port.

  • platform/gtk/Skipped: Skip test.
5:00 AM Changeset in webkit [105263] by loislo@chromium.org
  • 2 edits in trunk/Tools

Unreviewed build fix after r105256.

There was a cyclic dependency between self._port and self._host assigments.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):

4:52 AM Changeset in webkit [105262] by pfeldman@chromium.org
  • 10 edits
    2 adds in trunk

Web Inspector: track HTML revisions when editing DOM and / or upon free flow edits.
https://bugs.webkit.org/show_bug.cgi?id=76457

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: inspector/elements/set-html-via-resource.html

  • inspector/DOMEditor.cpp:

(WebCore::DOMEditor::patchNode):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::getOuterHTML):
(WebCore::InspectorDOMAgent::setOuterHTML):
(WebCore::InspectorDOMAgent::buildObjectForNode):

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMNode):
(WebInspector.DOMNode.prototype.setNodeName):
(WebInspector.DOMNode.prototype.setNodeValue):
(WebInspector.DOMNode.prototype.setAttribute):
(WebInspector.DOMNode.prototype.setAttributeValue):
(WebInspector.DOMNode.prototype.removeAttribute):
(WebInspector.DOMNode.prototype.getChildNodes.mycallback):
(WebInspector.DOMNode.prototype.getChildNodes):
(WebInspector.DOMNode.prototype.setOuterHTML):
(WebInspector.DOMNode.prototype.removeNode):
(WebInspector.DOMNode.prototype.moveTo):
(WebInspector.DOMDocument):
(WebInspector.DOMAgent):
(WebInspector.DOMAgent.prototype._setDocument):
(WebInspector.DOMAgent.prototype._buildHighlightConfig):
(WebInspector.DOMAgent.prototype._markRevision):
(WebInspector.DOMAgent.prototype._captureDOM.callback):
(WebInspector.DOMAgent.prototype._captureDOM):
(WebInspector.DOMModelResourceBinding.prototype.setContent):
(WebInspector.DOMModelResourceBinding.prototype.setContent.setOuterHTML):
(WebInspector.DOMModelResourceBinding.prototype.setContent.withDocument):

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):

LayoutTests:

  • inspector/elements/resources/set-outer-html-body-iframe.html:
  • inspector/elements/set-html-via-resource-expected.txt: Added.
  • inspector/elements/set-html-via-resource.html: Added.
4:46 AM Changeset in webkit [105261] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Popover does not disappear, causes debugger failure.
https://bugs.webkit.org/show_bug.cgi?id=71363

Reviewed by Pavel Feldman.

This is a work-around simple enough for a merge. The real fix would
be to get TextViewer to manage the highlight on its own, so it's not
accidently removed while re-building DOM for the text chunk.

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype._onHidePopover):

3:33 AM Changeset in webkit [105260] by vestbo@webkit.org
  • 2 edits in trunk/Tools

Add new watchlist rule for the Qt build system

Reviewed by Simon Hausmann.

3:32 AM Changeset in webkit [105259] by vestbo@webkit.org
  • 4 edits in trunk

[Qt] Move OTHER_FILES from WebKit.pro to Tools.pro

Reviewed by Simon Hausmann.

3:32 AM Changeset in webkit [105258] by vestbo@webkit.org
  • 4 edits in trunk/Tools

[Qt] Allow building only a subset of the WebKit sub-projects

Fixes build-jsc, broken in r104825.

We no longer need the intermediate buildQMakeQtProject(), as we're the
only port using qmake, and buildQMakeProject is now highly Qt specific.

<http://webkit.org/b/76179>

Reviewed by Simon Hausmann.

3:25 AM Changeset in webkit [105257] by Philippe Normand
  • 11 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r105247 and r105253.

  • platform/gtk/css3/images/cross-fade-overflow-position-expected.txt:
  • platform/gtk/fast/forms/implicit-submission-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-container-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-root-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:
  • platform/gtk/svg/custom/pointer-events-image-css-transform-expected.txt:
  • platform/gtk/svg/custom/pointer-events-image-expected.txt:
  • platform/gtk/svg/custom/pointer-events-text-css-transform-expected.txt:
  • platform/gtk/svg/custom/pointer-events-text-expected.txt:
2:52 AM Changeset in webkit [105256] by rniwa@webkit.org
  • 4 edits in trunk/Tools

run-perf-tests should generate a json file that summaries the result
https://bugs.webkit.org/show_bug.cgi?id=76504

Reviewed by Adam Barth.

Add an ability to generate a json file to run-perf-test in the preparation for perf bots.
New option --outout-json-path specifies the json file's path, and --source-json-path specifies
another json file to be merged into the generated json file.

Also fixed a bug that --build wasn't set by default.

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

(TestPort.webkit_base):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):
(PerfTestsRunner):
(PerfTestsRunner._parse_args):
(PerfTestsRunner.run):
(PerfTestsRunner._generate_json_if_specified):
(PerfTestsRunner._process_chromium_style_test_result):
(PerfTestsRunner._process_parser_test_result):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(MainTest):
(create_runner):
(test_run_test_set):
(test_run_test_set_for_parser_tests):
(test_run_test_set_with_summary_json):
(test_collect_tests):
(test_parse_args):

2:52 AM Changeset in webkit [105255] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix.
https://bugs.webkit.org/show_bug.cgi?id=76525

Removed missing build headers.

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-18

  • WebCore.xcodeproj/project.pbxproj:
2:40 AM Changeset in webkit [105254] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, fix clashing svg/custom/linking-a-03-b-viewBox.svg expectation.

  • platform/chromium/test_expectations.txt:
2:39 AM Changeset in webkit [105253] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Use RenderTheme in HTMLSelectElement instead of #defines.
<http://webkit.org/b/76519>

Patch by Jun Mukai <mukai@chromium.org> on 2012-01-18
Reviewed by Kent Tamura.

Tests: no new tests because of no behavioral changes.

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::platformHandleKeydownEvent):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):

  • platform/gtk/RenderThemeGtk.h:

(WebCore::RenderThemeGtk::popsMenuByArrowKeys):

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::popsMenuByArrowKeys):
(WebCore::RenderTheme::popsMenuBySpaceOrReturn):

  • rendering/RenderThemeChromiumLinux.h:

(WebCore::RenderThemeChromiumLinux::popsMenuBySpaceOrReturn):

  • rendering/RenderThemeMac.h:

(WebCore::RenderThemeMac::popsMenuByArrowKeys):

2:15 AM Changeset in webkit [105252] by apavlov@chromium.org
  • 2 edits in branches/chromium/963/Source/WebCore/inspector/front-end

Merge 105140 - Web Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
https://bugs.webkit.org/show_bug.cgi?id=76058

Reviewed by Pavel Feldman.

As per the results of a war room:

  • Auto-suggest only after user typing (avoid showing suggestions when navigating through the user input.)
  • Do not select the first item if the suggest box is shown at the end of prompt (to allow Enter to commit the input.)
  • Only show grayed autocompletion at the end of prompt (otherwise show a suggest box with the first item selected.)
  • Grayed autocompletion can only be accepted with the End or Right keys.
  • Enter can accept a selected suggestion item from the list, without committing the input.
  • Retain the CSS model editing behavior as close to the existing one as possible.
  • Enable PageUp/PageDown to navigate the suggest box items.
  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype):
():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.set text):
(WebInspector.TextPrompt.prototype._removeSuggestionAids):
(WebInspector.TextPrompt.prototype._selectStart.moveBackIfOutside):
(WebInspector.TextPrompt.prototype._selectStart):
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPrompt.prototype.acceptAutoComplete):
(WebInspector.TextPrompt.prototype.complete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):
(WebInspector.TextPrompt.prototype.tabKeyPressed):
(WebInspector.TextPrompt.prototype.downKeyPressed):
(WebInspector.TextPrompt.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype._onNextItem):
(WebInspector.TextPrompt.SuggestBox.prototype._onPreviousItem):
(WebInspector.TextPrompt.SuggestBox.prototype.updateSuggestions):
(WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
(WebInspector.TextPrompt.SuggestBox.prototype._canShowBox):
(WebInspector.TextPrompt.SuggestBox.prototype._rememberRowCountPerViewport):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
(WebInspector.TextPrompt.SuggestBox.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):

TBR=apavlov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9252006

2:08 AM Changeset in webkit [105251] by rolandsteiner@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed: Chromium test_expectations.txt update

  • platform/chromium/test_expectations.txt:
2:00 AM Changeset in webkit [105250] by inferno@chromium.org
  • 3 edits
    3 adds in trunk

Source/WebCore: Crash in FrameView::forceLayoutParentViewIfNeeded.
https://bugs.webkit.org/show_bug.cgi?id=76309

Reviewed by Nikolas Zimmermann.

updateWidgetPositions can blow away the owning renderer
and its frameview, so need to protect it with refptr.

Test: svg/dom/parent-view-layout-crash.html

  • page/FrameView.cpp:

(WebCore::FrameView::forceLayoutParentViewIfNeeded):

LayoutTests: Crash in FrameView::forceLayoutParentViewIfNeeded.
https://bugs.webkit.org/show_bug.cgi?id=76309

Reviewed by Nikolas Zimmermann.

  • svg/dom/parent-view-layout-crash-expected.txt: Added.
  • svg/dom/parent-view-layout-crash.html: Added.
  • svg/dom/resources/svg-font-face.svg: Added.
1:22 AM EFLWebKitCodingStyle edited by gyuyoung.kim@samsung.com
(diff)
1:22 AM EFLWebKitCodingStyle edited by gyuyoung.kim@samsung.com
(diff)
1:15 AM Changeset in webkit [105249] by commit-queue@webkit.org
  • 29 edits
    6 moves in trunk

Move ShadowContentElement from dom/ to html/ and make ShadowContentElement subclass of HTMLElement.
https://bugs.webkit.org/show_bug.cgi?id=76241

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-18
Reviewed by Dimitri Glazkov.

.:

  • Source/autotools/symbols.filter: Exposed necessary symbols.

Source/WebCore:

Renamed ShadowContentElement to HTMLContentElement, and move it from dom/ to html/.
Also, ShadowInclusionSelector and ShadowContentSelectorQuery are renamed to
Content InclusionSelector and ContentSelectorQuery respectively.

No new tests, because no change in behavior.

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

(WebCore::nextRendererOf):
(WebCore::previousRendererOf):
(WebCore::firstRendererOf):
(WebCore::lastRendererOf):
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):

  • dom/NodeRenderingContext.h:

(WebCore::NodeRenderingContext::includer):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::includerFor):
(WebCore::ShadowRoot::inclusions):
(WebCore::ShadowRoot::ensureInclusions):

  • dom/ShadowRoot.h:
  • html/HTMLDetailsElement.cpp:

(WebCore::DetailsContentElement::DetailsContentElement):
(WebCore::DetailsSummaryElement::DetailsSummaryElement):

  • html/HTMLElementsAllInOne.cpp:
  • html/HTMLSummaryElement.cpp:

(WebCore::SummaryContentElement::SummaryContentElement):

  • html/shadow/ContentInclusionSelector.cpp: Renamed from Source/WebCore/dom/ShadowInclusionSelector.cpp.

(WebCore::ShadowInclusion::append):
(WebCore::ShadowInclusion::unlink):
(WebCore::ShadowInclusionList::ShadowInclusionList):
(WebCore::ShadowInclusionList::~ShadowInclusionList):
(WebCore::ShadowInclusionList::find):
(WebCore::ShadowInclusionList::clear):
(WebCore::ShadowInclusionList::append):
(WebCore::ContentInclusionSelector::ContentInclusionSelector):
(WebCore::ContentInclusionSelector::~ContentInclusionSelector):
(WebCore::ContentInclusionSelector::select):
(WebCore::ContentInclusionSelector::unselect):
(WebCore::ContentInclusionSelector::findFor):
(WebCore::ContentInclusionSelector::didSelect):
(WebCore::ContentInclusionSelector::willSelectOver):

  • html/shadow/ContentInclusionSelector.h: Renamed from Source/WebCore/dom/ShadowInclusionSelector.h.

(WebCore::ShadowInclusion::includer):
(WebCore::ShadowInclusion::content):
(WebCore::ShadowInclusion::next):
(WebCore::ShadowInclusion::previous):
(WebCore::ShadowInclusion::ShadowInclusion):
(WebCore::ShadowInclusion::create):
(WebCore::ShadowInclusionList::first):
(WebCore::ShadowInclusionList::last):
(WebCore::ShadowInclusionList::isEmpty):
(WebCore::ShadowInclusionSet::add):
(WebCore::ShadowInclusionSet::remove):
(WebCore::ShadowInclusionSet::isEmpty):
(WebCore::ShadowInclusionSet::Translator::hash):
(WebCore::ShadowInclusionSet::Translator::equal):
(WebCore::ShadowInclusionSet::Hash::hash):
(WebCore::ShadowInclusionSet::Hash::equal):
(WebCore::ShadowInclusionSet::find):
(WebCore::ContentInclusionSelector::hasCandidates):

  • html/shadow/ContentSelectorQuery.cpp: Renamed from Source/WebCore/dom/ShadowContentSelectorQuery.cpp.

(WebCore::ContentSelectorQuery::ContentSelectorQuery):
(WebCore::ContentSelectorQuery::matches):

  • html/shadow/ContentSelectorQuery.h: Renamed from Source/WebCore/dom/ShadowContentSelectorQuery.h.
  • html/shadow/HTMLContentElement.cpp: Renamed from Source/WebCore/dom/ShadowContentElement.cpp.

(WebCore::HTMLContentElement::create):
(WebCore::HTMLContentElement::HTMLContentElement):
(WebCore::HTMLContentElement::~HTMLContentElement):
(WebCore::HTMLContentElement::attach):
(WebCore::HTMLContentElement::detach):
(WebCore::HTMLContentElement::select):
(WebCore::HTMLContentElement::setSelect):

  • html/shadow/HTMLContentElement.h: Renamed from Source/WebCore/dom/ShadowContentElement.h.

(WebCore::HTMLContentElement::inclusions):
(WebCore::HTMLContentElement::isContentElement):
(WebCore::HTMLContentElement::rendererIsNeeded):
(WebCore::HTMLContentElement::createRenderer):
(WebCore::toHTMLContentElement):

  • testing/Internals.cpp:

(WebCore::Internals::createContentElement):

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit2:

  • win/WebKit2.def: Exposed necessary symbols.
  • win/WebKit2CFLite.def: ditto.

LayoutTests:

Renamed internals.createShadowContentElement to internals.createContentElement.

  • fast/dom/shadow/content-element-includer.html:
  • fast/dom/shadow/content-element-renderers.html:
  • fast/dom/shadow/create-content-element.html:
  • fast/dom/shadow/shadow-contents-select.html:
1:04 AM Changeset in webkit [105248] by Carlos Garcia Campos
  • 2 edits in trunk

Unreviewed. Fix GTK+ build after r105245.

  • Source/autotools/symbols.filter: Fix symbol name.
12:45 AM Changeset in webkit [105247] by Nikolas Zimmermann
  • 31 edits in trunk

RenderSVGRoot should inherit from RenderReplaced
https://bugs.webkit.org/show_bug.cgi?id=76446

Reviewed by Zoltan Herczeg.

Source/WebCore:

Let RenderSVGRoot inherit from RenderReplaced, instead of faking RenderReplaced, by inherting from RenderBox
and calling setReplaced(true) in the constructor. The outermost <svg> element is a replaced element in the
sense of CSS, and thus this is just a logical move. It fixes some issues where the <svg> root appeared
as selection leaf, covered by existing tests.

It allows us to simplify the painting, as outlines, etc. are painted by RenderReplaced now.
While I was it, speed up the local to border box computations by caching the result.

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::paint):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::RenderSVGRoot):
(WebCore::RenderSVGRoot::layout):
(WebCore::RenderSVGRoot::paintReplaced):
(WebCore::RenderSVGRoot::willBeDestroyed):
(WebCore::RenderSVGRoot::styleWillChange):
(WebCore::RenderSVGRoot::styleDidChange):
(WebCore::RenderSVGRoot::updateFromElement):
(WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):
(WebCore::RenderSVGRoot::localToParentTransform):
(WebCore::RenderSVGRoot::computeFloatRectForRepaint):
(WebCore::RenderSVGRoot::mapLocalToContainer):
(WebCore::RenderSVGRoot::nodeAtPoint):

  • rendering/svg/RenderSVGRoot.h:

(WebCore::RenderSVGRoot::canHaveChildren):
(WebCore::RenderSVGRoot::canBeSelectionLeaf):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::setupInitialView):

LayoutTests:

Update test results after making RenderSVGRoot inherit from RenderReplaced.

  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/custom/linking-a-03-b-all-expected.png: Text layout changed, we didn't relayout the tree when entering a new view before.
  • platform/mac/svg/custom/linking-a-03-b-all-expected.txt: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-expected.png: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-expected.txt: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-transform-expected.png: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-transform-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-container-expected.png: Moving the circle, triggered a selection before, where it shouldn't. It's gone now.
  • platform/mac/svg/custom/mouse-move-on-svg-container-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-expected.png: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.png: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-image-css-transform-expected.png: Caret position which is reported changed, due the selection leaf changes.
  • platform/mac/svg/custom/pointer-events-image-css-transform-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-image-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-image-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-text-css-transform-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-text-css-transform-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-text-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-text-expected.txt: Ditto.
  • platform/mac/svg/foreignObject/text-tref-02-b-expected.png: This now reports a valid size for the RenderSVGRoot in the <fO> subtree.
  • svg/foreignObject/text-tref-02-b-expected.txt: Ditto.

Jan 17, 2012:

11:36 PM Changeset in webkit [105246] by rolandsteiner@chromium.org
  • 18 edits
    18 deletes in trunk

Unreviewed, rolling out r105244.
http://trac.webkit.org/changeset/105244
https://bugs.webkit.org/show_bug.cgi?id=76518

broke Chromium Mac (Requested by rolandsteiner on #webkit).

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

Source/WebCore:

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::checkboxOrRadioValue):

  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityRenderObject.cpp:
  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityScrollView.cpp:
  • accessibility/AccessibilityScrollView.h:

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp:

Tools:

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/chromium/AccessibilityUIElement.cpp:

(AccessibilityUIElement::AccessibilityUIElement):

  • DumpRenderTree/chromium/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::removeSelection):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:
  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::removeSelection):

LayoutTests:

  • platform/chromium/accessibility/scroll-to-global-point-iframe-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-iframe.html: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-main-window-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-main-window.html: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-nested-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-nested.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-nested-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-nested.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html: Removed.
10:55 PM Changeset in webkit [105245] by commit-queue@webkit.org
  • 11 edits in trunk

[Internals] Should be able to access corresponding Document object.
https://bugs.webkit.org/show_bug.cgi?id=76425

.:

Added exported symbols.

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Adam Barth.

  • Source/autotools/symbols.filter:

Source/WebCore:

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Adam Barth.

  • Allow FrameDestructionObserver to re-setting the Frame reference.
  • Make Internals a subclass of FrameDestructionObserver.

Since Internals::reset() is called for each test, we can access
the acive Frame object during the test. The frame reference will be
used by coming changes.

No new tests. Covered by existing tests.

  • WebCore.exp.in:
  • page/FrameDestructionObserver.cpp:

(WebCore::FrameDestructionObserver::FrameDestructionObserver):
(WebCore::FrameDestructionObserver::~FrameDestructionObserver):
(WebCore::FrameDestructionObserver::observe):

  • page/FrameDestructionObserver.h:
  • testing/Internals.cpp:

(WebCore::Internals::Internals):
(WebCore::Internals::reset):

  • testing/Internals.h:

Source/WebKit2:

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Adam Barth.

  • win/WebKit2.def: Added exporting symbols.
  • win/WebKit2CFLite.def: Added exporting symbols.
10:41 PM Changeset in webkit [105244] by dmazzoni@google.com
  • 18 edits
    18 adds in trunk

Accessibility: Chromium needs methods to scroll an object into view or to a specific location.
https://bugs.webkit.org/show_bug.cgi?id=73460

Reviewed by Chris Fleizach.

Source/WebCore:

Tests: platform/chromium/accessibility/scroll-to-global-point-main-window.html

platform/chromium/accessibility/scroll-to-global-point-nested.html
platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html
platform/chromium/accessibility/scroll-to-make-visible-iframe.html
platform/chromium/accessibility/scroll-to-make-visible-main-window.html
platform/chromium/accessibility/scroll-to-make-visible-nested.html
platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::computeBestScrollOffset):
(WebCore::AccessibilityObject::scrollToMakeVisible):
(WebCore::AccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebCore::AccessibilityObject::scrollToGlobalPoint):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityObject::scrollTo):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityRenderObject::scrollTo):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::getScrollableAreaIfScrollable):
(WebCore::AccessibilityScrollView::scrollTo):

  • accessibility/AccessibilityScrollView.h:

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::scrollToMakeVisible):
(WebKit::WebAccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebKit::WebAccessibilityObject::scrollToGlobalPoint):

Tools:

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/chromium/AccessibilityUIElement.cpp:

(AccessibilityUIElement::AccessibilityUIElement):
(AccessibilityUIElement::scrollToMakeVisibleCallback):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocusCallback):
(AccessibilityUIElement::scrollToGlobalPointCallback):

  • DumpRenderTree/chromium/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

LayoutTests:

  • platform/chromium/accessibility/scroll-to-global-point-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html: Added.
10:39 PM Changeset in webkit [105243] by mdelaney@apple.com
  • 1 edit in trunk/Source/WebCore/WebCore.exp.in

Fixing broken build. Missed a file in r105234.

10:06 PM Changeset in webkit [105242] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

https://bugs.webkit.org/show_bug.cgi?id=75089
Access-Control-Request-Headers value should be lowercase

Source/WebCore:

Access-Control-Request-Headers is used when issuing a preflight request to let the server know
the HTTP headers that will be used when the actual request is made.
As per the W3C specification, Access-Control-Request-Headers value should be set in lowercase.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-17
Reviewed by Alexey Proskuryakov.

Test: http/tests/xmlhttprequest/access-control-preflight-request-header-lowercase.html

  • loader/CrossOriginAccessControl.cpp:

(WebCore::createAccessControlPreflightRequest): setting Access-Control-Request-Headers value to lowercase

LayoutTests:

Added test to verify that the Access-Control-Request-Headers value is sent in lowercase.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-17
Reviewed by Alexey Proskuryakov.

  • http/tests/xmlhttprequest/access-control-preflight-request-header-lowercase-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-preflight-request-header-lowercase.html: Added.
  • http/tests/xmlhttprequest/resources/access-control-preflight-request-header-lowercase.php: Added.
9:49 PM Changeset in webkit [105241] by hayato@chromium.org
  • 4 edits in trunk/Source/WebCore

Clean EventContext and move phase-tweaking logic to EventDispatcher.
https://bugs.webkit.org/show_bug.cgi?id=76414

Reviewed by Dimitri Glazkov.

No tests. No change in behavior.

  • dom/EventContext.cpp:

(WebCore::EventContext::handleLocalEvents):

  • dom/EventContext.h:

(WebCore::EventContext::currentTargetSameAsTarget):

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchEvent):

8:28 PM Changeset in webkit [105240] by gyuyoung.kim@samsung.com
  • 6 edits in trunk/Source/WebKit/efl

[EFL] Use static const insted of #define macro.
https://bugs.webkit.org/show_bug.cgi?id=76499

Reviewed by Hajime Morita.

WebKit coding style prefers const to #define. EFL port needs to use const insted of #define macro.
This patch replace global variables defined by #define with const.

  • ewk/ewk_tiled_backing_store.cpp:

(_ewk_tiled_backing_store_smart_add):
(_ewk_tiled_backing_store_zoom_set_internal):

  • ewk/ewk_tiled_backing_store.h:
  • ewk/ewk_tiled_matrix.cpp:

(ewk_tile_matrix_new):

  • ewk/ewk_view.cpp:

(_ewk_view_repaint_add):
(_ewk_view_repaints_flush):
(_ewk_view_scroll_add):
(_ewk_view_scrolls_flush):
(_ewk_view_priv_new):
(ewk_view_base_smart_set):

  • ewk/ewk_view_tiled.cpp:

(_ewk_view_tiled_smart_pre_render_start):

8:15 PM Changeset in webkit [105239] by noel.gordon@gmail.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Remove public/WebWorker.h from the gyp projects
https://bugs.webkit.org/show_bug.cgi?id=76512

Reviewed by David Levin.

public/WebWorker.h was removed in r105020, remove references from the gyp projects.

  • WebKit.gyp:
8:13 PM Changeset in webkit [105238] by levin@chromium.org
  • 3 edits in trunk/Source/WebCore

Need to figure out which assert is firing when worker-read-blob-async.html fails.
https://bugs.webkit.org/show_bug.cgi?id=76503

Reviewed by Adam Barth.

No new functionality exposed so no new tests.

This is just a quick and dirty way to make these asserts unique
to expose which one of them is firing on a machine that doesn't have a
good stack trace.

  • dom/ActiveDOMObject.cpp:

(WebCore::ContextDestructionObserver::ContextDestructionObserver):
(WebCore::ContextDestructionObserver::~ContextDestructionObserver):
(WebCore::ActiveDOMObject::ActiveDOMObject):
(WebCore::ActiveDOMObject::~ActiveDOMObject):

  • storage/DatabaseSync.cpp:

(WebCore::DatabaseSync::openDatabaseSync):
(WebCore::DatabaseSync::~DatabaseSync):
(WebCore::DatabaseSync::changeVersion):
(WebCore::DatabaseSync::runTransaction):

8:02 PM Changeset in webkit [105237] by Lucas Forschler
  • 5 edits in branches/safari-534.54-branch/Source

Versioning.

8:01 PM Changeset in webkit [105236] by abarth@webkit.org
  • 2 edits in trunk/Tools

Enable tests on the mac-ews
https://bugs.webkit.org/show_bug.cgi?id=76502

Reviewed by Simon Fraser.

Apple now has five machines running the mac-ews. Lucas Forschler has
asked that we try enabling tests to see if we have enough bandwidth.

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

(MacEWS):

8:01 PM Changeset in webkit [105235] by Lucas Forschler
  • 1 copy in tags/Safari-534.54.7

New tag.

7:59 PM Changeset in webkit [105234] by mdelaney@apple.com
  • 8 edits in trunk/Source

On post-Lion releases, preserve the Lion behavior where WebKit explicitly calls -setGeometryFlipped on the hosting layer for applications that were linked on Lion or earlier.

7:24 PM Changeset in webkit [105233] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Clear 'm_size' of DrawingBuffer in the 'clear' function
https://bugs.webkit.org/show_bug.cgi?id=76239

Patch by Yongsheng Zhu <yongsheng.zhu@intel.com> on 2012-01-17
Reviewed by Kenneth Russell.

Clear the resources of DrawingBuffer but don't clear 'm_size'. This makes
's_currentResourceUsePixels' is not calculated correctly.

  • platform/graphics/gpu/DrawingBuffer.cpp:

(WebCore::DrawingBuffer::clear):

7:19 PM Changeset in webkit [105232] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Add a check-webkit-style exception for GDBInterface.cpp
https://bugs.webkit.org/show_bug.cgi?id=76187

Add an exception for Source/JavaScriptCore/jit/GDBInterface.cpp so
that it does not fail the style check.

Patch by Sanjoy Das <sanjoy@playingwithpointers.com> on 2012-01-17
Reviewed by Martin Robinson.

  • Scripts/webkitpy/style/checker.py: Tell the style checker to not run

readability/naming tests on
Source/JavaScriptCore/jit/GDBInterface.cpp.

  • Scripts/webkitpy/style/checker_unittest.py:

(GlobalVariablesTest.test_path_rules_specifier): Add a test for
the above exception.

7:16 PM Changeset in webkit [105231] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Fix getBBox for perpendicular paths
https://bugs.webkit.org/show_bug.cgi?id=76177

Patch by Philip Rogers <pdr@google.com> on 2012-01-17
Reviewed by Darin Adler.

Source/WebCore:

Test: svg/custom/getBBox-perpendicular-path.svg

  • platform/graphics/FloatRect.cpp:

(WebCore::FloatRect::unite):
(WebCore::FloatRect::uniteEvenIfEmpty):
(WebCore::FloatRect::uniteIfNonZero):

  • platform/graphics/FloatRect.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::computeContainerBoundingBoxes):

LayoutTests:

  • svg/custom/getBBox-perpendicular-path-expected.txt: Added.
  • svg/custom/getBBox-perpendicular-path.svg: Added.
7:09 PM Changeset in webkit [105230] by kbr@google.com
  • 2 edits in trunk/Source/WebCore

[chromium] Apply color profiles in more cases
https://bugs.webkit.org/show_bug.cgi?id=76498

Reviewed by Stephen White.

Not adding new tests, as application of the color profile is not
guaranteed for images used as textures in WebGL. Ran existing
WebGL layout tests; all pass.

  • platform/image-decoders/skia/ImageDecoderSkia.cpp:

(WebCore::ImageFrame::setStatus):

6:48 PM Changeset in webkit [105229] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark some compositing tests as failing with an IMAGE diff due to video playback problem

  • platform/chromium/test_expectations.txt:
6:43 PM Changeset in webkit [105228] by Simon Fraser
  • 7 edits in trunk/LayoutTests

Fix media handling in compositing tests after r105219.

Reviewed by James Robinson.

Seeking seems to have issues on Chromium, and cause these tests to
timeout, so change the tests to play, then seek back to time 0.

New image results now show the first frame of the movie.

  • compositing/resources/media-testing.js:

(ensureFrameVisible):

  • platform/mac/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/mac/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/mac/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/mac/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/mac/compositing/self-painting-layers-expected.png:
6:18 PM Changeset in webkit [105227] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Rename quickLookPreviewItemsAtWindowLocation: to quickLookWithEvent:
<rdar://problem/10688913>

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView quickLookWithEvent:]):

6:06 PM Changeset in webkit [105226] by Nate Chapin
  • 6 edits in trunk/Source/WebCore

Ensure we don't cancel revalidation of a CachedResource
in the middle of successful revalidation.
It's more reliable to enforce this in CachedResource than in
SubresourceLoader.
https://bugs.webkit.org/show_bug.cgi?id=75713

Reviewed by Adam Barth.

No new test, the buggy case requires a non-stubbed window.print().

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::didFinishLoading):

  • loader/SubresourceLoader.h:
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::CachedResource):
(WebCore::CachedResource::clearResourceToRevalidate):
(WebCore::CachedResource::switchClientsToRevalidatedResource):

  • loader/cache/CachedResource.h:
6:06 PM Changeset in webkit [105225] by ojan@chromium.org
  • 5 edits in trunk/LayoutTests

Tweak results.html keyboard handling and flagging UI
https://bugs.webkit.org/show_bug.cgi?id=76331

Reviewed by Simon Fraser.

-Make it so that hitting j/k at the start selects the first/last test
instead of the second/none'th test.
-Use the unicode black flag character instead of " (flagged)"
-Make the text color of the whole selected row red. This showed
which row was selected without being to garish I think.
-Allow for having the flagged tests be space-separated instead of
newline separated.

  • fast/harness/resources/results-test.js:
  • fast/harness/results-expected.txt:
  • fast/harness/results.html:
6:03 PM Changeset in webkit [105224] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk

NULL ptr in WebCore::RenderSVGInlineText::localCaretRect
https://bugs.webkit.org/show_bug.cgi?id=75851

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-17
Reviewed by Ryosuke Niwa.

.:

Added a check for null box in localCaretRect, to match test in other
implementations. Adding a manual test because the crash is not
reproducible in DRT.

  • ManualTests/svg-modify-deleted-selection.svg: Added.

Source/WebCore:

Added a check for null box in localCaretRect, to match test in other
implementations. Adding a manual test because the crash is not reproducible
in DRT.

Test: ManualTests/svg-modify-deleted-selection.svg

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::localCaretRect):

6:00 PM Changeset in webkit [105223] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Factored out some code into a helper function.

I think this might help getting rid of omit-frame-pointer.

Reviewed by Sam Weinig.

No benchmark change.

  • runtime/StringPrototype.cpp:

(JSC::removeUsingRegExpSearch): Moved to here...
(JSC::replaceUsingRegExpSearch): ...from here.

5:56 PM Changeset in webkit [105222] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/rendering/RenderLayer.cpp

Changing pixelSnappedScrollHeight/Width to not directly access member variables. This fixes a bug now that there's a cache and dirty bit.

5:33 PM Changeset in webkit [105221] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merged r103913 & r103915.

5:23 PM Changeset in webkit [105220] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merge 104593.

5:18 PM Changeset in webkit [105219] by Simon Fraser
  • 22 edits
    1 add in trunk/LayoutTests

Reduce the number of compositing test failures
https://bugs.webkit.org/show_bug.cgi?id=76495

Reviewed by James Robinson.

General cleanup of compositing tests:

  • video tests now do a seek to guarantee that the pixel result will show a frame
  • video tests use a shared JS file (can't use media/video-test.js because it always calls dumpAsText(), which is not reversible).
  • ideo-with-invalid-source.html fixed to use a file extension so that the error event fires (bug 76494).
  • pixel results rebaselined.
  • compositing/geometry/clipped-video-controller.html:
  • compositing/geometry/video-fixed-scrolling.html:
  • compositing/geometry/video-opacity-overlay.html:
  • compositing/layers-inside-overflow-scroll.html:
  • compositing/overflow/scroll-ancestor-update.html:
  • compositing/reflections/load-video-in-reflection.html:
  • compositing/resources/media-testing.js: Added.

(ensureFrameVisible):

  • compositing/self-painting-layers.html:
  • compositing/video/video-with-invalid-source.html:
  • compositing/visibility/visibility-simple-video-layer.html:
  • platform/mac/compositing/color-matching/image-color-matching-expected.png:
  • platform/mac/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/mac/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/mac/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/mac/compositing/overflow/scroll-ancestor-update-expected.png:
  • platform/mac/compositing/overflow/scroll-ancestor-update-expected.txt:
  • platform/mac/compositing/plugins/composited-plugin-expected.png:
  • platform/mac/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/mac/compositing/reflections/simple-composited-reflections-expected.png:
  • platform/mac/compositing/self-painting-layers-expected.png:
  • platform/mac/compositing/video/video-background-color-expected.png:
  • platform/mac/test_expectations.txt:
5:16 PM Changeset in webkit [105218] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

https://bugs.webkit.org/show_bug.cgi?id=76245
[Mac][DRT] should allow query string for the file URL.

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Tony Chang.

Taught DRT about file:// as a url instead of a file path.
We are now able to use a path file:///foo/bar.html?baz as a url
with which DRT opens "/foo/bar.html" with "baz" as a query string.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(runTest):

5:11 PM Changeset in webkit [105217] by caio.oliveira@openbossa.org
  • 40 edits
    8 adds in trunk

Uint8ClampedArray support
https://bugs.webkit.org/show_bug.cgi?id=74455

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/PredictedType.cpp:

(JSC::predictionToString):
(JSC::predictionFromClassInfo):

  • bytecode/PredictedType.h:

(JSC::isUint8ClampedArrayPrediction):
(JSC::isActionableMutableArrayPrediction):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::initialize):
(JSC::DFG::AbstractState::execute):

  • dfg/DFGNode.h:

(JSC::DFG::Node::shouldSpeculateUint8ClampedArray):

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::performNodeCSE):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::clampDoubleToByte):
(JSC::DFG::compileClampIntegerToByte):
(JSC::DFG::SpeculativeJIT::compilePutByValForByteArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • runtime/JSCell.h:
  • runtime/JSGlobalData.h:
  • wtf/Forward.h:
  • wtf/Uint8Array.h:
  • wtf/Uint8ClampedArray.h: Added.

(WTF::Uint8ClampedArray::set):
(WTF::Uint8ClampedArray::create):
(WTF::Uint8ClampedArray::Uint8ClampedArray):
(WTF::Uint8ClampedArray::subarray):

Source/WebCore:

Test: fast/js/dfg-uint8clampedarray.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • ForwardingHeaders/wtf/Uint8ClampedArray.h: Added.
  • GNUmakefile.list.am:
  • Target.pri:
  • UseJSC.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSDOMWindowCustom.cpp:
  • bindings/js/JSUint8ClampedArrayCustom.cpp: Added.

(WebCore::JSUint8ClampedArray::indexSetter):
(WebCore::toJS):
(WebCore::JSUint8ClampedArray::set):
(WebCore::JSUint8ClampedArrayConstructor::constructJSUint8ClampedArray):

  • bindings/scripts/CodeGeneratorJS.pm:

(IsTypedArrayType):
(GenerateHeader):

  • html/canvas/Uint8ClampedArray.idl: Added.
  • page/DOMWindow.idl:

Source/WTF:

  • WTF.pro:

LayoutTests:

  • fast/canvas/webgl/array-unit-tests-expected.txt:
  • fast/canvas/webgl/array-unit-tests.html:
  • fast/dom/Window/script-tests/window-property-descriptors.js:
  • fast/dom/Window/window-properties.html:
  • fast/dom/script-tests/constructed-objects-prototypes.js:

(constructorPropertiesOnWindow):

  • fast/dom/script-tests/prototype-inheritance-2.js:

(constructorNamesForWindow):

  • fast/js/dfg-uint8clampedarray-expected.txt: Added.
  • fast/js/dfg-uint8clampedarray.html: Added.
  • fast/js/script-tests/dfg-uint8clampedarray.js: Added.

(getter1):
(setter1):
(getter2):
(setter2):
(getter3):
(setter3):
(getter4):
(setter4):
(getters.getter1.a):
(.a):
(setters.setter1.a):
(safeGetter):
(safeSetter):

  • fast/js/script-tests/global-constructors.js:
  • platform/chromium/fast/canvas/webgl/array-unit-tests-expected.txt: Copied from LayoutTests/fast/canvas/webgl/array-unit-tests-expected.txt.
  • platform/chromium/test_expectations.txt:
4:59 PM Changeset in webkit [105216] by Lucas Forschler
  • 4 edits in branches/safari-534.54-branch/Source/WebCore

Merged r97303.

4:54 PM Changeset in webkit [105215] by Lucas Forschler
  • 8 edits
    2 copies in branches/safari-534.54-branch

Merged r96973.

4:50 PM Changeset in webkit [105214] by jamesr@google.com
  • 7 edits in trunk/LayoutTests

[chromium] Update baselines

  • platform/chromium-linux/animations/cross-fade-webkit-mask-box-image-expected.png:
  • platform/chromium-mac-snowleopard/animations/cross-fade-webkit-mask-box-image-expected.png:
  • platform/chromium-win/animations/cross-fade-webkit-mask-box-image-expected.png:
  • platform/chromium-win/svg/carto.net/window-expected.png:
  • platform/chromium-win/svg/carto.net/window-expected.txt:
4:41 PM Changeset in webkit [105213] by ojan@chromium.org
  • 2 edits
    1 add in trunk/Tools

Check style on test_expectations.txt files before commit
https://bugs.webkit.org/show_bug.cgi?id=76484

Reviewed by Adam Barth.

Unlike other style rules, if you get the syntax of the test_expectations.txt
file wrong, the layout tests won't run. Also, this check is simple and only
slows down committing if you actually modify one of the test_expectations.txt files.

  • Scripts/webkitpy/tool/steps/commit.py:

(Commit._check_test_expectations):
(Commit.run):

  • Scripts/webkitpy/tool/steps/commit_unittest.py: Added.

(CommitTest):
(CommitTest.test_check_test_expectations):

4:33 PM Changeset in webkit [105212] by inferno@chromium.org
  • 3 edits
    3 adds in trunk

Crash in in WebCore::EventHandler::mouseMoved.
https://bugs.webkit.org/show_bug.cgi?id=76462

Reviewed by Ryosuke Niwa.

Source/WebCore:

handleMouseMoveEvent call in EventHandler::mouseMoved can
blow away the frame from underneath. Protect it with a frameview
refptr.

Test: fast/events/mouse-moved-remove-frame-crash.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::mouseMoved):

LayoutTests:

  • fast/events/mouse-moved-remove-frame-crash-expected.txt: Added.
  • fast/events/mouse-moved-remove-frame-crash.html: Added.
  • fast/events/resources/mouse-move.html: Added.
4:19 PM Changeset in webkit [105211] by Lucas Forschler
  • 24 edits
    2 copies in branches/safari-534.54-branch/Source/WebCore

Merge 96966.

4:18 PM Changeset in webkit [105210] by kerz@chromium.org
  • 5 edits in branches/chromium/963

Merge 105070 - Web Inspector: styles sidebar rendering is broken
https://bugs.webkit.org/show_bug.cgi?id=76065

Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertiesSection):

  • inspector/front-end/elementsPanel.css:

(.styles-section .header .subtitle):
(.styles-section .properties):

LayoutTests:

  • http/tests/inspector/elements-test.js:

(initialize_ElementTest.InspectorTest.dumpSelectedElementStyles): Fix dump output due to DOM changes.

TBR=apavlov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9242032

4:16 PM Changeset in webkit [105209] by kerz@chromium.org
  • 2 edits in branches/chromium/963/Source/WebCore

Merge 105071 - Web Inspector: timeline record bars may overlap with the records column
https://bugs.webkit.org/show_bug.cgi?id=76387

Reviewed by Yury Semikhatsky.

  • inspector/front-end/timelinePanel.css:

(#timeline-container .split-view-sidebar-left):

TBR=pfeldman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9242031

4:13 PM Changeset in webkit [105208] by kerz@chromium.org
  • 3 edits
    3 copies in branches/chromium/963

Merge 104140 - WebKit adds vertical paddings and borders to the fixed width of CSS tables
https://bugs.webkit.org/show_bug.cgi?id=74955

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-01-05
Reviewed by Julien Chaffraix.

Source/WebCore:

Test: fast/table/css-table-width.html

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::computeLogicalWidth):

Changed the width calculation for CSS tables to take into account horizontal
paddings and borders instead of vertical paddings and borders.

LayoutTests:

Added tests to check that the fixed width style is applied correctly to
CSS tables with respect to table paddings and borders.

  • fast/table/css-table-width-expected.txt: Added.
  • fast/table/css-table-width.html: Added.
  • fast/table/script-tests/css-table-width.js: Added.

(computeCSSTableOffsetWidth):
(computeCSSTableOffsetHeight):
(computeCSSTableProperty):

TBR=commit-queue@webkit.org
Review URL: https://chromiumcodereview.appspot.com/9220007

4:12 PM Changeset in webkit [105207] by alexis.menard@openbossa.org
  • 3 edits in trunk/LayoutTests

Increase test coverage for -webkit-border-image.
https://bugs.webkit.org/show_bug.cgi?id=76473

Reviewed by Tony Chang.

Make sure we also set the width of the border in the shorthand. It will help
in the future to remove CSSBorderImageValue class without breaking this property.

  • fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
  • fast/css/getComputedStyle/getComputedStyle-border-image.html:
4:10 PM Changeset in webkit [105206] by ostapenko.viatcheslav@nokia.com
  • 4 edits in trunk

[Qt] Debug build fails with debug qt5
https://bugs.webkit.org/show_bug.cgi?id=76463

Reviewed by Simon Hausmann.

Add QNetworkCookie include in order to satisfy sizeof in QTypeInfo in debug builds.

Source/WebKit/qt:

  • WebCoreSupport/FrameNetworkingContextQt.cpp:

Tools:

  • QtTestBrowser/cookiejar.h:
4:06 PM Changeset in webkit [105205] by jamesr@google.com
  • 3 edits
    24 adds in trunk/LayoutTests

[chromium] Update expectations for line-grid tests and one random svg thing

  • platform/chromium-linux/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-linux/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-linux/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-linux/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-floating-expected.txt: Added.
  • platform/chromium-win/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-inside-columns-expected.txt: Added.
  • platform/chromium-win/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-into-floats-expected.txt: Added.
  • platform/chromium-win/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-positioned-expected.txt: Added.
  • platform/chromium-win/svg/custom/js-late-clipPath-and-object-creation-expected.png:
  • platform/chromium-win/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
3:57 PM Changeset in webkit [105204] by jamesr@google.com
  • 5 edits
    1 move
    1 delete in trunk/LayoutTests

[chromium] Update expectations/baselines for cross-fade change

  • css3/images/cross-fade-overflow-position-expected.txt: Renamed from LayoutTests/platform/mac/css3/images/cross-fade-overflow-position-expected.txt.
  • platform/chromium-linux/css3/images/cross-fade-overflow-position-expected.png:
  • platform/chromium-mac-snowleopard/css3/images/cross-fade-overflow-position-expected.png:
  • platform/chromium-win/css3/images/cross-fade-overflow-position-expected.png:
  • platform/chromium/test_expectations.txt:
  • platform/qt/css3/images/cross-fade-overflow-position-expected.txt: Removed.
3:46 PM Changeset in webkit [105203] by weinig@apple.com
  • 51 edits in trunk/Source

Add helper macro for forward declaring objective-c classes
https://bugs.webkit.org/show_bug.cgi?id=76485

Reviewed by Anders Carlsson.

Source/JavaScriptCore:

  • wtf/Compiler.h:

Add OBJC_CLASS macro which helps reduce code when forward declaring an
objective-c class in a header which can be included from both Objective-C
and non-Objective-C files.

Source/WebCore:

  • accessibility/AccessibilityObject.h:
  • bindings/js/ScriptController.h:
  • bridge/objc/objc_utility.h:
  • page/DragClient.h:
  • page/EditorClient.h:
  • platform/AutodrainedPool.h:
  • platform/ContextMenuItem.h:
  • platform/Cursor.h:
  • platform/DragData.h:
  • platform/DragImage.h:
  • platform/KURL.h:
  • platform/Pasteboard.h:
  • platform/PlatformKeyboardEvent.h:
  • platform/PlatformMenuDescription.h:
  • platform/PlatformScreen.h:
  • platform/SharedBuffer.h:
  • platform/Widget.h:
  • platform/cf/SchedulePair.h:
  • platform/graphics/BitmapImage.h:
  • platform/graphics/FontPlatformData.h:
  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/GraphicsLayer.h:
  • platform/graphics/Icon.h:
  • platform/graphics/Image.h:
  • platform/graphics/MediaPlayer.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/ca/PlatformCAAnimation.h:
  • platform/graphics/ca/mac/TileCache.h:
  • platform/graphics/mac/ColorMac.h:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  • platform/graphics/mac/MediaPlayerProxy.h:
  • platform/mac/ClipboardMac.h:
  • platform/mac/LocalCurrentGraphicsContext.h:
  • platform/mac/PasteboardHelper.h:
  • platform/mac/PopupMenuMac.h:
  • platform/mac/ScrollAnimatorMac.h:
  • platform/mac/WebCoreSystemInterface.h:
  • platform/network/ResourceHandle.h:
  • platform/network/ResourceHandleClient.h:
  • platform/network/ResourceHandleInternal.h:
  • platform/network/cf/AuthenticationChallenge.h:
  • platform/network/cf/ResourceError.h:
  • platform/network/cf/ResourceRequest.h:
  • platform/network/cf/ResourceResponse.h:
  • rendering/RenderThemeMac.h:

Deploy OBJC_CLASS for a little code reduction.

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebDragClient.h:

Deploy OBJC_CLASS for a little code reduction.

  • config.h:

Remove duplicate copy of OBJC_CLASS.

3:31 PM Changeset in webkit [105202] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Fix duplicate expectations for canvas tests on mac

  • platform/chromium/test_expectations.txt:
3:26 PM Changeset in webkit [105201] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit/mac

REGRESSION (r101413): Correction panel overlaps misspelled text.
https://bugs.webkit.org/show_bug.cgi?id=74589
<rdar://problem/10585115>

When converting the rectangle from the root view, we need
to take into account the height of the rectangle.

Reviewed by Anders Carlsson.

  • WebView/WebView.mm:

(-[WebView _convertRectFromRootView:]):

3:25 PM Changeset in webkit [105200] by commit-queue@webkit.org
  • 2 edits
    1 add
    4 deletes in trunk/LayoutTests

Convert some fast/regions pixel tests to reftests
https://bugs.webkit.org/show_bug.cgi?id=74133

Patch by Jacob Goldstein <jacobg@adobe.com> on 2012-01-17
Reviewed by Tony Chang.

  • fast/regions/webkit-flow-inlines-dynamic-expected.html: Added.
  • fast/regions/webkit-flow-inlines-dynamic.html:
  • platform/efl/fast/regions/webkit-flow-inlines-dynamic-expected.png: Removed.
  • platform/efl/fast/regions/webkit-flow-inlines-dynamic-expected.txt: Removed.
  • platform/mac/fast/regions/webkit-flow-inlines-dynamic-expected.png: Removed.
  • platform/mac/fast/regions/webkit-flow-inlines-dynamic-expected.txt: Removed.
3:10 PM Changeset in webkit [105199] by dpranke@chromium.org
  • 2 edits in trunk/Tools

webkitpy: fix json import on linux
https://bugs.webkit.org/show_bug.cgi?id=76481

Reviewed by Adam Barth.

For some reason, the version of simplejson autoinstalled on my linux
box seems to be broken. We should really only be using
simplejson if json isn't available anyway, so this change looks
for json first.

  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:

(JSONGeneratorTest.test_test_timings_trie):

3:04 PM Changeset in webkit [105198] by leviw@chromium.org
  • 31 edits in branches/subpixellayout/LayoutTests/platform

Rebaselining expectations for new float/line measuring changes

3:02 PM Changeset in webkit [105197] by leviw@chromium.org
  • 2 edits in branches/subpixellayout/Source/WebCore/rendering

Stop using pixel snapped values for x values when laying out floats. This is necessary when there are two floats on a line both at 50% width. Switching to pixel snapped values for measuring the available width when laying out bidi runs. Switching improper truncating in shrinkAvailableWidthForNewFloatIfNeeded to pixel snapped values.

2:36 PM Changeset in webkit [105196] by fpizlo@apple.com
  • 19 edits
    16 adds in branches/safari-534.54-branch

Merge 105107.

Source/JavaScriptCore:

2012-01-15 Filip Pizlo <fpizlo@apple.com>


DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361
<rdar://problem/10698060>


Reviewed by Geoff Garen.


Added the ability to cache JS getter calls and custom getter calls in the DFG.
Most of this is pretty mundane, since the old JIT supported this functionality
as well. But a couple interesting things had to happen:


  • There are now two variants of GetById: GetById, which works as before, and GetByIdFlush, which flushes registers prior to doing the GetById. Only GetByIdFlush can be used for caching getters. We detect which GetById style to use by looking at the inline caches of the old JIT.


  • Exception handling for getter calls planted in stubs uses a separate lookup handler routine, which uses the CodeOrigin stored in the StructureStubInfo.


This is a 40% speed-up in the Dromaeo DOM Traversal average. It removes all of
the DFG regressions we saw in Dromaeo. This is neutral on SunSpider, V8, and
Kraken.


  • bytecode/StructureStubInfo.h:
  • dfg/DFGAbstractState.cpp: (JSC::DFG::AbstractState::execute):
  • dfg/DFGAssemblyHelpers.h: (JSC::DFG::AssemblyHelpers::emitExceptionCheck):
  • dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::willNeedFlush): (JSC::DFG::ByteCodeParser::parseBlock):
  • dfg/DFGCCallHelpers.h: (JSC::DFG::CCallHelpers::setupResults):
  • dfg/DFGJITCompiler.cpp: (JSC::DFG::JITCompiler::link):
  • dfg/DFGJITCompiler.h: (JSC::DFG::PropertyAccessRecord::PropertyAccessRecord): (JSC::DFG::JITCompiler::addExceptionCheck):
  • dfg/DFGNode.h: (JSC::DFG::Node::hasIdentifier): (JSC::DFG::Node::hasHeapPrediction):
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPropagator.cpp: (JSC::DFG::Propagator::propagateNodePredictions):
  • dfg/DFGRepatch.cpp: (JSC::DFG::tryCacheGetByID): (JSC::DFG::tryBuildGetByIDList):
  • dfg/DFGSpeculativeJIT.h: (JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):
  • dfg/DFGSpeculativeJIT32_64.cpp: (JSC::DFG::SpeculativeJIT::cachedGetById): (JSC::DFG::SpeculativeJIT::compile):
  • dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::cachedGetById): (JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

2012-01-16 Filip Pizlo <fpizlo@apple.com>


DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361
<rdar://problem/10698060>


Reviewed by Geoff Garen.


  • fast/js/dfg-custom-getter-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined.html: Added.
  • fast/js/dfg-custom-getter-throw.html: Added.
  • fast/js/dfg-custom-getter.html: Added.
  • fast/js/dfg-getter-expected.txt: Added.
  • fast/js/dfg-getter-throw-expected.txt: Added.
  • fast/js/dfg-getter-throw.html: Added.
  • fast/js/dfg-getter.html: Added.
  • fast/js/script-tests/dfg-custom-getter-throw-inlined.js: Added. (foo): (baz): (bar):
  • fast/js/script-tests/dfg-custom-getter-throw.js: Added. (foo): (bar):
  • fast/js/script-tests/dfg-custom-getter.js: Added. (foo):
  • fast/js/script-tests/dfg-getter-throw.js: Added. (foo): (bar):
  • fast/js/script-tests/dfg-getter.js: Added. (foo):
2:31 PM Changeset in webkit [105195] by dpranke@chromium.org
  • 2 edits in trunk/Tools

Fix failures in test-webkitpy caused by r105177.

Unreviewed, build fix.

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

(ChromiumLinuxPort._determine_driver_path_statically):
(ChromiumLinuxPort._static_build_path):

2:14 PM Changeset in webkit [105194] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r105172.

  • platform/qt/css3/images/cross-fade-overflow-position-expected.png:
  • platform/qt/css3/images/cross-fade-overflow-position-expected.txt:
2:09 PM Changeset in webkit [105193] by tony@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/rendering/RenderFlexibleBox.cpp

Fix compilation after r105165.

The merge was bad because there have been refactoring changes that weren't
included on the branch.
Review URL: https://chromiumcodereview.appspot.com/9243024

1:44 PM Changeset in webkit [105192] by mrowe@apple.com
  • 3 edits
    3 adds in branches/safari-534.54-branch

Merge r99649.

1:43 PM Changeset in webkit [105191] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Add some canvas tests to test_expectations to prepare for changes to use sw-rasterized paths in skia-gpu
https://bugs.webkit.org/show_bug.cgi?id=76469

Patch by Brian Salomon <bsalomon@google.com> on 2012-01-17
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
1:39 PM Changeset in webkit [105190] by eae@chromium.org
  • 12 edits in branches/subpixellayout

Windows build fixes for webkit, with this patch the apple windows port builds

1:37 PM Changeset in webkit [105189] by mrowe@apple.com
  • 3 edits
    3 adds in branches/safari-534.54-branch

Merge r99982.

1:31 PM Changeset in webkit [105188] by Lucas Forschler
  • 3 edits
    3 copies in branches/safari-534.54-branch

Merged r91148.

1:04 PM Changeset in webkit [105187] by mrowe@apple.com
  • 5 edits
    1 add in branches/safari-534.54-branch/Source/WebCore

Merge r94107.

12:57 PM Changeset in webkit [105186] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

SpaceSplitString: Share equivalent string piece vectors.
<http://webkit.org/b/76458>

Reviewed by Antti Koivisto.

Make SpaceSplitStringData ref-counted and cache them in a hashmap to reduce memory
usage and avoid redundant string splitting work. This reduces memory consumption
by 618 kB (on 64-bit) when viewing the full HTML5 spec at <http://whatwg.org/c>

  • dom/SpaceSplitString.h:

Add the source string to SpaceSplitStringData so we have a key for uncaching
in the destructor. Also bumped the vector's inline size from 2 to 4.

  • dom/SpaceSplitString.cpp:

(WebCore::sharedDataMap):
(WebCore::SpaceSplitStringData::create):
(WebCore::SpaceSplitStringData::createUnique):
(WebCore::SpaceSplitStringData::SpaceSplitStringData):
(WebCore::SpaceSplitString::SpaceSplitString):
(WebCore::SpaceSplitString::set):
(WebCore::SpaceSplitStringData::createVector):

Added create helpers for SpaceSplitStringData. Moved case folding from
createVector() to create(AtomicString). Added a hash map for caching
AtomicString -> SpaceSplitStringData.

(WebCore::SpaceSplitStringData::~SpaceSplitStringData):

Remove the SpaceSplitStringData from the sharedDataMap().

  • dom/SpaceSplitString.cpp:

(WebCore::SpaceSplitString::ensureUnique):

Added, detaches from the shared SpaceSplitStringData if necessary.

(WebCore::SpaceSplitStringData::add):
(WebCore::SpaceSplitStringData::remove):

Assert that add() and remove() are only used on unique SpaceSplitStringData.

(WebCore::SpaceSplitString::add):
(WebCore::SpaceSplitString::remove):

Call ensureUnique() to potentially detach from a shared SpaceSplitStringData
before making modifications.

  • dom/SpaceSplitString.cpp:

(WebCore::SpaceSplitStringData::containsAll):

Added gratuitous fast path for containsAll(*this).

12:44 PM Changeset in webkit [105185] by mrowe@apple.com
  • 7 edits in branches/safari-534.54-branch/Source/WebCore

Merge r100408.

12:32 PM Changeset in webkit [105184] by dpranke@chromium.org
  • 3 edits in trunk/Tools

webkitpy: make PortFactory.get() be fully data-driven
https://bugs.webkit.org/show_bug.cgi?id=76360

Reviewed by Eric Seidel.

Refactor PortFactory.get() to be fully data-driven.

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

(PortFactory):
(PortFactory._default_port):
(PortFactory.get):
(PortFactory.get.in):

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

(FactoryTest.assert_port):

12:27 PM Changeset in webkit [105183] by dpranke@chromium.org
  • 23 edits in trunk/Tools

webkitpy: add determine_full_port_name(), clean up port.init()
https://bugs.webkit.org/show_bug.cgi?id=76357

Reviewed by Adam Barth.

Each Port class is now required to implement a 'port_name' field
that will match the start of all ports constructed by this class and
a 'determine_full_port_name' field that will make the port
fully-qualified.

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

(ApplePort.init):

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

(Port):
(Port.determine_port_name):
(Port.init):

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

(ChromiumPort.for):
(ChromiumPort.init):
(ChromiumPort):
(ChromiumPort._chromium_base_dir):
(ChromiumPort.path_from_chromium_base):

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

(ChromiumGpuLinuxPort):
(ChromiumGpuLinuxPort.init):
(ChromiumGpuMacPort):
(ChromiumGpuMacPort.init):
(ChromiumGpuWinPort):
(ChromiumGpuWinPort.init):

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

(ChromiumLinuxPort):
(ChromiumLinuxPort.determine_port_name):
(ChromiumLinuxPort.init):

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

(ChromiumMacPort):
(ChromiumMacPort.determine_port_name):
(ChromiumMacPort.init):

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

(ChromiumWinPort):
(ChromiumWinPort.determine_port_name):
(ChromiumWinPort.init):

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

(DryRunPort):
(DryRunPort.determine_port_name):
(DryRunPort.init):

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

(EflPort):

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

(PortFactory):
(PortFactory._default_port):
(PortFactory.get):
(PortFactory.get.in):

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

(FactoryTest.assert_port):

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

(GoogleChromeLinux32Port):
(GoogleChromeLinux32Port.determine_port_name):
(GoogleChromeLinux64Port):
(GoogleChromeLinux64Port.determine_port_name):
(GoogleChromeMacPort):
(GoogleChromeMacPort.determine_port_name):
(GoogleChromeWinPort):
(GoogleChromeWinPort.determine_port_name):

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

(GtkPort):

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

(MacPort):
(MacPort.determine_port_name):
(MacPort.init):

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

(test_versions):

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

(MockDRTPort):
(MockDRTPort.determine_port_name):
(MockDRTPort.init):
(MockDRT):
(MockDRT.determine_port_name):

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

(PortTestCase.make_port):

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

(QtPort):
(QtPort.determine_port_name):
(QtPort.init):

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

(TestPort):
(TestPort.determine_port_name):
(TestPort.init):

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

(WebKitPort.init):

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

(WinPort):
(WinPort.determine_port_name):

  • Scripts/webkitpy/tool/servers/rebaselineserver.py:

(get_test_baselines.AllPlatformsPort.init):

  • Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:

(get_test_config.TestMacPort):
(get_test_config):

12:14 PM Changeset in webkit [105182] by mrowe@apple.com
  • 3 edits
    2 adds in branches/safari-534.54-branch

Merge r101543.

11:59 AM Changeset in webkit [105181] by mrowe@apple.com
  • 4 edits in branches/safari-534.54-branch/Source/WebCore

Merge r103118.

11:37 AM Changeset in webkit [105180] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebKit/win

Merge r101808.

11:25 AM Changeset in webkit [105179] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merge r104669.

11:25 AM Changeset in webkit [105178] by mrowe@apple.com
  • 3 edits in branches/safari-534.54-branch/Source/WebCore

Merge r104619.

11:25 AM Changeset in webkit [105177] by dpranke@chromium.org
  • 3 edits in trunk/Tools

webkitpy: clean up port code in preparation for static port names
https://bugs.webkit.org/show_bug.cgi?id=76356

Reviewed by Adam Barth.

To fix bug 76215 and be able to determine appropriate port names
in webkitpy without actually constructing Port objects, we need
to shuffle some logic in the chromium ports to be able to figure
out whether we built DRT in 32 or 64-bit mode.

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

(ChromiumPort):
(ChromiumPort._chromium_base_dir):
(ChromiumPort.init):
(ChromiumPort.path_from_chromium_base):

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

(ChromiumLinuxPort):
(ChromiumLinuxPort._determine_driver_path_statically):
(ChromiumLinuxPort._static_build_path):
(ChromiumLinuxPort._determine_architecture):
(ChromiumLinuxPort.init):
(ChromiumLinuxPort._build_path):

11:16 AM Changeset in webkit [105176] by hyatt@apple.com
  • 13 edits
    13 adds in trunk

Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=76197

Implementation of baseline grid alignment. This patch implements line grid tracking in the layout state,
and also implements the snapping of lines to baselines. It works with normal flow, positioning and floats and
with pagination, as long as the grid is inside the pagination context and not outside.

Reviewed by Simon Fraser.

Added a bunch of new tests in fast/line-grid.

  • WebCore.xcodeproj/project.pbxproj:
  • rendering/InlineFlowBox.h:

(WebCore::InlineFlowBox::setHasTextChildren):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::propagateLineGridInfo):
(WebCore::LayoutState::establishLineGrid):

  • rendering/LayoutState.h:

(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::pageLogicalHeight):
(WebCore::LayoutState::currentLineGrid):
(WebCore::LayoutState::currentLineGridOffset):
(WebCore::LayoutState::layoutOffset):
(WebCore::LayoutState::needsBlockDirectionLocationSetBeforeLayout):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::pageLogicalTopForOffset):
(WebCore::RenderBlock::adjustLinePositionForPagination):

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::lineGridBox):
(WebCore::RenderBlock::setLineGridBox):
(WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutInlineChildren):
(WebCore::RenderBlock::layoutLineGridBox):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::regionLogicalTopForLine):

  • rendering/RenderFlowThread.h:
  • rendering/RenderView.h:

(WebCore::RenderView::pushLayoutState):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::alignBoxesInBlockDirection):
(WebCore::RootInlineBox::lineGridSnapAdjustment):

  • rendering/RootInlineBox.h:

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

Add tests for baseline line grid alignment.

Reviewed by Simon Fraser.

  • fast/line-grid/line-grid-floating.html: Added.
  • fast/line-grid/line-grid-inside-columns.html: Added.
  • fast/line-grid/line-grid-into-floats.html: Added.
  • fast/line-grid/line-grid-positioned.html: Added.
  • platform/mac/fast/line-grid: Added.
  • platform/mac/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-floating-expected.txt: Added.
  • platform/mac/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-inside-columns-expected.txt: Added.
  • platform/mac/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-into-floats-expected.txt: Added.
  • platform/mac/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-positioned-expected.txt: Added.
11:13 AM Changeset in webkit [105175] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge r104727.

11:10 AM Changeset in webkit [105174] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/rendering/RenderImage.cpp

Fixing truncation vs pixel snapping when drawing broken images.

11:09 AM Changeset in webkit [105173] by vsevik@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/loader/SubresourceLoader.cpp

Merge 104887 - Web Inspector: [Chomium] Resources loaded with 304 status code have receiving time of 15000 days in network panel.
https://bugs.webkit.org/show_bug.cgi?id=76176

Reviewed by Nate Chapin.

No new tests. Can't trigger this with inspector tests. Will add one when the Resource Timing API is in.

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse): Use monotonic time.

TBR=simonjam@chromium.org
BUG=110154
Review URL: https://chromiumcodereview.appspot.com/9243015

11:02 AM Changeset in webkit [105172] by timothy_horton@apple.com
  • 6 edits
    5 adds in trunk

-webkit-cross-fade doesn't respect background-size
https://bugs.webkit.org/show_bug.cgi?id=74902
<rdar://problem/10605289>

Reviewed by Simon Fraser.

CrossfadeGeneratedImage should report its intrinsic size, instead of
improperly conforming to the size of its container.

Test: css3/images/cross-fade-background-size.html

  • platform/graphics/CrossfadeGeneratedImage.h:

(WebCore::CrossfadeGeneratedImage::setContainerSize):
(WebCore::CrossfadeGeneratedImage::usesContainerSize):
(WebCore::CrossfadeGeneratedImage::hasRelativeWidth):
(WebCore::CrossfadeGeneratedImage::hasRelativeHeight):
(WebCore::CrossfadeGeneratedImage::size):

Add a test (cross-fade-background-size.html) which ensures that the
background-size CSS property interacts reasonably with -webkit-cross-fade.

Modify cross-fade-overflow-position to hit both the tiled and non-tiled codepaths.

  • css3/images/cross-fade-background-size.html: Added.
  • css3/images/cross-fade-overflow-position.html:
  • css3/images/resources/stripes-large.png: Added.
  • css3/images/resources/stripes-small.png: Added.
  • platform/mac/css3/images/cross-fade-background-size-expected.png: Added.
  • platform/mac/css3/images/cross-fade-background-size-expected.txt: Added.
  • platform/mac/css3/images/cross-fade-overflow-position-expected.png:
  • platform/mac/css3/images/cross-fade-overflow-position-expected.txt:
11:00 AM Changeset in webkit [105171] by vsevik@chromium.org
  • 8 edits
    1 move
    1 add
    1 delete in trunk/Source/WebCore

Web Inspector: Refactor JavaScriptOutlineDialog: extract FilteredItemSelectionDialog and reuse DialogDelegate.
https://bugs.webkit.org/show_bug.cgi?id=76455

Reviewed by Yury Semikhatsky.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.sh:
  • inspector/front-end/Dialog.js:

(WebInspector.Dialog):
(WebInspector.Dialog.prototype._hide):

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

(WebInspector.FilteredItemSelectionDialog):
(WebInspector.FilteredItemSelectionDialog.prototype.position):
(WebInspector.FilteredItemSelectionDialog.prototype.focus):
(WebInspector.FilteredItemSelectionDialog.prototype.willHide):
(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.FilteredItemSelectionDialog.prototype.get _itemsLoaded):
(WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._hideItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._itemElementVisible):
(WebInspector.FilteredItemSelectionDialog.prototype._showItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._checkItemAt):
(WebInspector.FilteredItemSelectionDialog.prototype._createSearchRegExp):
(WebInspector.FilteredItemSelectionDialog.prototype._filterItems):
(WebInspector.FilteredItemSelectionDialog.prototype._onKeyDown):
(WebInspector.FilteredItemSelectionDialog.prototype._scheduleFilter):
(WebInspector.FilteredItemSelectionDialog.prototype._updateSelection):
(WebInspector.FilteredItemSelectionDialog.prototype._onMouseMove):
(WebInspector.FilteredItemSelectionDialog.prototype._onScroll):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItems):
(WebInspector.FilteredItemSelectionDialog.prototype._clearHighlight):
(WebInspector.FilteredItemSelectionDialog.prototype._clearElementHighlight.changes.this._elementHighlightChanges.get if):
(WebInspector.FilteredItemSelectionDialog.prototype._clearElementHighlight):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItem.get var):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItem):
(WebInspector.FilteredItemSelectionDialog.prototype._itemElementInViewport):
(WebInspector.SelectionDialogContentProvider):
(WebInspector.SelectionDialogContentProvider.prototype.itemTitleAt):
(WebInspector.SelectionDialogContentProvider.prototype.itemKeyAt):
(WebInspector.SelectionDialogContentProvider.prototype.itemsCount):
(WebInspector.SelectionDialogContentProvider.prototype.requestItems):
(WebInspector.SelectionDialogContentProvider.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog):
(WebInspector.JavaScriptOutlineDialog.didAddChunk):
(WebInspector.JavaScriptOutlineDialog.install):
(WebInspector.JavaScriptOutlineDialog._show):
(WebInspector.JavaScriptOutlineDialog.createShortcut):
(WebInspector.JavaScriptOutlineDialog.prototype.itemTitleAt):
(WebInspector.JavaScriptOutlineDialog.prototype.itemKeyAt):
(WebInspector.JavaScriptOutlineDialog.prototype.itemsCount):
(WebInspector.JavaScriptOutlineDialog.prototype.requestItems):
(WebInspector.JavaScriptOutlineDialog.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog.prototype._appendItemElements):

  • inspector/front-end/JavaScriptOutlineDialog.js: Removed.
  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/filteredItemSelectionDialog.css: Renamed from Source/WebCore/inspector/front-end/javaScriptOutlineDialog.css.

(.js-outline-dialog > input):
(.js-outline-dialog > div.progress):
(.js-outline-dialog > div.container):
(.js-outline-dialog > .container > div.item):
(.js-outline-dialog > .container > div.item.selected):
(.js-outline-dialog > .container > div.item > span.highlight):

  • inspector/front-end/inspector.html:
10:57 AM Changeset in webkit [105170] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge fix for 10516690.

10:55 AM Changeset in webkit [105169] by commit-queue@webkit.org
  • 4 edits in trunk/Tools

Do not remove pixel failures for ref tests.
https://bugs.webkit.org/show_bug.cgi?id=76243

Patch by Hao Zheng <zhenghao@chromium.org> on 2012-01-17
Reviewed by Tony Chang.

'NRWT --no-pixel-tests' complains when reftests are expected to
be image mismatch.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager._update_summary_with_result):

  • Scripts/webkitpy/layout_tests/models/test_failures.py:

(is_reftest_failure):
(determine_result_type):

10:34 AM WebKit Team edited by dbates@webkit.org
(diff)
10:28 AM Changeset in webkit [105168] by abarth@webkit.org
  • 1 edit
    6 adds in trunk/LayoutTests

Import some NodeIterator tests from mozilla
https://bugs.webkit.org/show_bug.cgi?id=76442

Reviewed by Daniel Bates.

These tests are imported from mozilla-central. I tried to make the
minimal changes when importing them rather than rewire them into
script-tests. They appear to have uncovered a bug, which I will
investigate in a followup patch.

  • traversal/moz-bug559526-expected.txt: Added.
  • traversal/moz-bug559526.html: Added.
  • traversal/moz-bug590771-expected.txt: Added.
  • traversal/moz-bug590771.html: Added.
  • traversal/moz-mutations-3-expected.txt: Added.
  • traversal/moz-mutations-3.html: Added.
10:26 AM Changeset in webkit [105167] by Simon Fraser
  • 2 edits in trunk/Source/WebKit/mac

<rdar://problem/10703228> ASSERTION FAILED: Uncaught exception - Cannot lock focus on image <NSImage 0x1206572a0 Size={0, 0} Reps=( )>, because it is size zero loading techcrunch.com

Reviewed by Anders Carlsson.

Avoid trying to create image snapshots for zero-sized plugins, because
it causes -[NSView lockFocus] to throw an exception.

  • Plugins/WebBaseNetscapePluginView.mm:

(-[WebBaseNetscapePluginView cacheSnapshot]):

10:11 AM Changeset in webkit [105166] by commit-queue@webkit.org
  • 1 edit
    3 moves in trunk

Move tests out of WebCore/manual-tests to toplevel ManualTests.
It looks like the manual-tests folder wasn't noticed by git (or me :).

Move some SVG manual tests from deprecated WebCore/manual-tests to toplevel ManualTests
https://bugs.webkit.org/show_bug.cgi?id=76437

Patch by Raul Hudea <rhudea@adobe.com> on 2012-01-17
Reviewed by Daniel Bates.

  • ManualTests/svg-animation-css-transform.html: Renamed from Source/WebCore/manual-tests/svg-animation-css-transform.html.
  • ManualTests/svg-css-animate-compound.html: Renamed from Source/WebCore/manual-tests/svg-css-animate-compound.html.
  • ManualTests/svg-css-transition-compound.html: Renamed from Source/WebCore/manual-tests/svg-css-transition-compound.html.
9:44 AM Changeset in webkit [105165] by tony@chromium.org
  • 4 edits
    4 copies in branches/chromium/963

Merge 104645 - Need to handle absolutely positioned elements inside flexboxes
https://bugs.webkit.org/show_bug.cgi?id=70793

Reviewed by David Hyatt.

Source/WebCore:

Tests: css3/flexbox/insert-text-crash.html

css3/flexbox/position-absolute-child.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::computePreferredMainAxisExtent): Skip the size of positioned elements.
(WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm): Add placeholders for positioned elements.
(WebCore::RenderFlexibleBox::prepareChildForPositionedLayout): Positions the layer for the positioned child.
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren): Handle positioned elements.
(WebCore::RenderFlexibleBox::layoutColumnReverse): Adjust the main axis offset of the layer for positioned elements.

  • rendering/RenderFlexibleBox.h:

LayoutTests:

  • css3/flexbox/insert-text-crash-expected.txt: Added.
  • css3/flexbox/insert-text-crash.html: Added.
  • css3/flexbox/position-absolute-child-expected.txt: Added.
  • css3/flexbox/position-absolute-child.html: Added.

TBR=tony@chromium.org

9:35 AM Changeset in webkit [105164] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, avoid webkit_tests aborts due to clashing SVG test expectations.

  • platform/chromium/test_expectations.txt:
9:06 AM Changeset in webkit [105163] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Unskip now passing tests.

Patch by Ádám Kallai <Kallai.Adam@stud.u-szeged.hu> on 2012-01-17
Reviewed by Csaba Osztrogonác.

8:11 AM Changeset in webkit [105162] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

REGRESSION(r81225): ORWT should ignore reftests
https://bugs.webkit.org/show_bug.cgi?id=67936

Patch by Balazs Ankes <Ankes.Balazs@stud.u-szeged.hu> on 2012-01-17
Reviewed by Csaba Osztrogonác.

  • Scripts/old-run-webkit-tests:

(isUsedInReftest): $filename should be the first parameter
(findTestsToRun): run test if it isn't reftest

8:03 AM Changeset in webkit [105161] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/gtk

[Gtk] Input text field not repainted when value is changed
https://bugs.webkit.org/show_bug.cgi?id=76279

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

Force pending relayouts before freezing the dirty region in a temporary.
This prevents the following code from throwing the dirty updates away
after the original paint is finished.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::paintWebView): Remove the relayout.
(WebKit::ChromeClient::paint): Move the relayout here, before the
dirty region is frozen.

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

Web Inspector: CodeGeneratorInspector.py: start using typedefs
https://bugs.webkit.org/show_bug.cgi?id=76382

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-17
Reviewed by Yury Semikhatsky.

Generator is patched accordingly.

  • inspector/CodeGeneratorInspector.py:

(EnumConstants.get_enum_constant_code):
(TypeBuilderPass):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.get_generate_pass_id):
(TypeBindings.create_type_declaration_):
(TypeBindings.create_type_declaration_.PlainString):
(TypeBindings.create_type_declaration_.PlainString.get_code_generator):
(TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
(TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.PlainString.get_in_c_type_text):
(TypeBindings.create_type_declaration_.TypedefString):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder.String):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.register_use):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.get_generate_pass_id):
(TypeBindings.create_type_declaration_.TypedefString.reduce_to_raw_type):
(TypeBindings.create_type_declaration_.TypedefString.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.TypedefString.get_in_c_type_text):
(get_generate_pass_id):
(ArrayBinding.get_code_generator.CodeGenerator):
(ArrayBinding.get_code_generator.CodeGenerator.get_generate_pass_id):
(Generator.process_types.create_type_builder_caller):
(Generator.process_types.create_type_builder_caller.call_type_builder):
(Generator.process_types):

7:42 AM Changeset in webkit [105159] by kov@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Fix python unit test I broke with r105142

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

(WebKitPortTest.test_gtk_port):

7:37 AM Changeset in webkit [105158] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebKit2

[GTK] [WK2] WebKitPrivate should include the entire WebKit2 C API
https://bugs.webkit.org/show_bug.cgi?id=76345

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

Isolate all of the WebKit2 C API includes into WebKitPrivate.h and no longer
include anything other than WebKit2.h for the C API.

  • UIProcess/API/gtk/WebKitBackForwardList.cpp: Use WebKitPrivate.h now.
  • UIProcess/API/gtk/WebKitBackForwardListItem.cpp: Ditto.
  • UIProcess/API/gtk/WebKitPrivate.h: Add WebKit2.h, WKAPICast.h and WKRetainPtr.h includes.
  • UIProcess/API/gtk/WebKitSettings.cpp: Use WebKitPrivate.h.
  • UIProcess/API/gtk/WebKitUIClient.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWebContext.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWebView.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWebViewBase.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWindowProperties.cpp: Ditto.
7:37 AM Changeset in webkit [105157] by yurys@chromium.org
  • 10 edits in trunk/Source/WebCore

Web Inspector: provide basic information about DOM character data size
https://bugs.webkit.org/show_bug.cgi?id=76059

Memory agent allows to estimate size of DOM character data and size of WebCore
strings held by JavaScript objects.

Reviewed by Pavel Feldman.

  • bindings/js/ScriptProfiler.h:

(WebCore::ScriptProfiler::visitExternalJSStrings):

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::visitExternalJSStrings):

  • bindings/v8/ScriptProfiler.h:
  • bindings/v8/V8Binding.cpp:

(WebCore::WebCoreStringResource::visitStrings):
(WebCore::V8BindingPerIsolateData::visitJSExternalStrings):

  • bindings/v8/V8Binding.h:
  • inspector/DOMWrapperVisitor.h:
  • inspector/Inspector.json:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::CharacterDataStatistics::DOMTreeStatistics::DOMTreeStatistics):
(WebCore::CharacterDataStatistics::DOMTreeStatistics::collectNodeStatistics):
(WebCore::CharacterDataStatistics::CounterVisitor::CounterVisitor):
(WebCore::CharacterDataStatistics::CounterVisitor::domGroups):
(WebCore::CharacterDataStatistics::CounterVisitor::strings):
(WebCore::CharacterDataStatistics::CounterVisitor::visitNode):
(WebCore::CharacterDataStatistics::CounterVisitor::visitJSExternalString):
(WebCore::InspectorMemoryAgent::getDOMNodeCount):

  • inspector/InspectorMemoryAgent.h:
7:34 AM Changeset in webkit [105156] by vsevik@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Dialogs style and DialogDelegate interface fixes.
https://bugs.webkit.org/show_bug.cgi?id=76449

Reviewed by Pavel Feldman.

  • inspector/front-end/Dialog.js:

(WebInspector.Dialog):
(WebInspector.Dialog.currentInstance):
(WebInspector.Dialog.show):
(WebInspector.Dialog.hide):
(WebInspector.Dialog.prototype._hide):
(WebInspector.Dialog.prototype._onGlassPaneFocus):
(WebInspector.Dialog.prototype._onFocus):
(WebInspector.Dialog.prototype._position):
(WebInspector.Dialog.prototype._onKeyDown):
(WebInspector.DialogDelegate.prototype.wasShown):
(WebInspector.DialogDelegate.prototype.position):
(WebInspector.DialogDelegate.prototype.focus):
(WebInspector.DialogDelegate.prototype.onEnter):
(WebInspector.DialogDelegate.prototype.willHide):

  • inspector/front-end/GoToLineDialog.js:

(WebInspector.GoToLineDialog):
(WebInspector.GoToLineDialog.prototype.focus):
(WebInspector.GoToLineDialog.prototype._onGoClick):
(WebInspector.GoToLineDialog.prototype._applyLineNumber):
(WebInspector.GoToLineDialog.prototype.onEnter):

  • inspector/front-end/dialog.css:

(.dialog):

7:30 AM Changeset in webkit [105155] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Don't set the 'primary' flag when mocking touch-points in MiniBrowser

Qt 5 no longer has that flag.

Reviewed by Simon Hausmann.

7:29 AM Changeset in webkit [105154] by yurys@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: ConsoleMessage.cpp and InspectorResourceAgent.cpp doesn't conform to Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=76403

A couple of protocol fixes.

Reviewed by Pavel Feldman.

  • inspector/ConsoleMessage.cpp: return 'log' in case some unsupported value is passed.

We cannot omit that return statement as GCC would complain on missing return statement
despite all enum values are listed.
(WebCore::messageTypeValue):

  • inspector/Inspector-0.1.json: fixed v0.1 protocol definition.
  • inspector/Inspector.json: made CachedResource.response field optional.
7:03 AM Changeset in webkit [105153] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Web Inspector: remove "Document DOM tree" class and "Detached DOM tree" from the Summary view.
https://bugs.webkit.org/show_bug.cgi?id=76450

Reviewed by Yury Semikhatsky.

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshot.prototype._buildAggregates):

7:02 AM Changeset in webkit [105152] by kubo@profusion.mobi
  • 3 edits in trunk/Source/WebKit/efl

[EFL] Emit "resource,request,willsend" from ewk_view.
https://bugs.webkit.org/show_bug.cgi?id=76292

Reviewed by Andreas Kling.

Make ewk_view dispatch the "resource,request,willsend" signal as well,
so that it is possible to know whether the request is for the main
frame itself or for anything else.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::dispatchWillSendRequest):

  • ewk/ewk_view.h:
6:35 AM Changeset in webkit [105151] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Crash in fast/text/regional-indicator-symobls.html
https://bugs.webkit.org/show_bug.cgi?id=69419

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-17
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0/Skipped: Removing it from skipped list as it is working now.
6:34 AM Changeset in webkit [105150] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] fast/canvas/2d.text.draw.fill.maxWidth.gradient.html fails with newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=74785

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-01-17
Reviewed by Csaba Osztrogonác.

Upstream bug in Qt 5 is fixed, so we can unskip the test now.

  • platform/qt-5.0/Skipped:
6:31 AM Changeset in webkit [105149] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] editing/selection/regional-indicators.html fails
https://bugs.webkit.org/show_bug.cgi?id=66500

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-17
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0/Skipped: This test is not failing anymore,

removing it from skipped list.

6:28 AM Changeset in webkit [105148] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] fast/canvas/canvas-largedraws.html crashes with newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=75167

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-01-17
Reviewed by Csaba Osztrogonác.

Bug is fixed upstream, so it should be safe to unskip it now.

  • platform/qt-5.0/Skipped:
5:22 AM Changeset in webkit [105147] by yurys@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

2012-01-17 Yury Semikhatsky <yurys@chromium.org>

Unreviewed. Update Chromium dependency 117616:117882

  • DEPS:
5:17 AM Changeset in webkit [105146] by commit-queue@webkit.org
  • 14 edits in trunk/Source/WebKit2

[Qt] Implement HTTP authentication QML API
https://bugs.webkit.org/show_bug.cgi?id=75535

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-17
Reviewed by Kenneth Rohde Christiansen.

This patch implements the QML API for handling HTTP authentication.
The implementation uses a syncronous message between the WebProcess
and the UIProcess which is called when the authenticationRequired
signal is emitted from QNAM.

Based in part upon patch by Peter Hartmann.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::handleAuthenticationRequiredRequest):
(QQuickWebViewExperimental::authenticationDialog):
(QQuickWebViewExperimental::setAuthenticationDialog):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::authenticationRequiredRequest):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/qt/QtDialogRunner.cpp:

(AuthenticationDialogContextObject::AuthenticationDialogContextObject):
(AuthenticationDialogContextObject::hostname):
(AuthenticationDialogContextObject::realm):
(AuthenticationDialogContextObject::prefilledUsername):
(AuthenticationDialogContextObject::accept):
(AuthenticationDialogContextObject::reject):
(QtDialogRunner::initForAuthentication):

  • UIProcess/qt/QtDialogRunner.h:

(QtDialogRunner::username):
(QtDialogRunner::password):
(QtDialogRunner::onAuthenticationAccepted):

  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::handleAuthenticationRequiredRequest):

  • UIProcess/qt/QtPageClient.h:
  • WebProcess/qt/QtNetworkAccessManager.cpp:

(WebKit::QtNetworkAccessManager::QtNetworkAccessManager):
(WebKit::QtNetworkAccessManager::onAuthenticationRequired):

  • WebProcess/qt/QtNetworkAccessManager.h:
5:09 AM Changeset in webkit [105145] by Nikolas Zimmermann
  • 4 edits in trunk/LayoutTests

2012-01-17 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Update Qt results after r105143..

  • platform/qt/svg/carto.net/window-expected.txt:
  • platform/qt/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/qt/svg/custom/js-late-gradient-and-object-creation-expected.txt:
5:03 AM Changeset in webkit [105144] by Nikolas Zimmermann
  • 6 edits in trunk/LayoutTests

2012-01-17 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Update Gtk results after r105143..

  • platform/gtk/svg/carto.net/window-expected.txt:
  • platform/gtk/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/gtk/svg/custom/js-late-gradient-and-object-creation-expected.txt:
  • platform/gtk/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/gtk/svg/custom/use-detach-expected.txt:
4:42 AM Changeset in webkit [105143] by Nikolas Zimmermann
  • 29 edits
    12 adds in trunk

Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Source/WebCore:

Final patch fixing the performance regression from r81168 plus giving us more performance we ever had.
The testcase attached to bug 65711 creates 200 tspans as <text> children, and modifies just the first <tspan>s
content periodically using a timer. It ran with <3 FPS in release builds before, and now at around 60 FPS,
where the most dominant code path remaining is CG painting text. Still theres room to optimize further, as
Intruments shows.

Historically we rebuilt all SVGTextLayoutAttributes stored in the RenderSVGInlineText, whenever any
children of the <text> subtree changed, in any way. This lead to a recomputation of the x/y/dx/dy/rotate
value lists, for the whole tree, a recreation of the line box tree and finally a measurement of all characters
in the subtree.

This patch, and its previous patches preparing this, introduces progressive relayout for the SVG text subtree.
DOM tree mutations, x/y/dx/dy/rotate value lists changes, and measuring-all-characters are now strictly decoupled.

#1) x/y/dx/dy/rotate list changes:
The x/y/dx/dy/rotate lists are only ever rebuilt, if they change or upon the initial RenderSVGText layout.
This information is now cached in the so-called SVGCharacterDataMap, in each of the SVGTextLayoutAttributes,
associated with a specific RenderSVGInlineText.

#2) DOM tree mutations:
If a new RenderSVGInlineText gets added to the tree, we have to create SVGTextLayoutAttributes for the new
renderer, measure its characters, and cache the information in the attributes. Adding a new renderer to
a SVG <text> subtree can affect the positioning of the previous and next sibling in the tree, due the
whitespace merging logic. Example:

<text y="50" x="50 100 150">A<tspan></tspan> C</text>:
RenderSVGText {text} at (50,36) size 111x18 contains 1 chunk(s)

RenderSVGInlineText {#text} at (0,0) size 12x18

chunk 1 text run 1 at (50.00,50.00) startOffset 0 endOffset 1 width 12.00: "A"

RenderSVGTSpan {tspan} at (0,0) size 0x0
RenderSVGInlineText {#text} at (50,0) size 61x18

chunk 1 text run 1 at (100.00,50.00) startOffset 0 endOffset 1 width 4.00: " "
chunk 1 text run 1 at (150.00,50.00) startOffset 0 endOffset 1 width 11.00: "C"

<text y="50" x="50 100 150">A<tspan>B</tspan> C</text>:
RenderSVGText {text} at (50,36) size 115x18 contains 1 chunk(s)

RenderSVGInlineText {#text} at (0,0) size 12x18

chunk 1 text run 1 at (50.00,50.00) startOffset 0 endOffset 1 width 12.00: "A"

RenderSVGTSpan {tspan} at (0,0) size 11x18

RenderSVGInlineText {#text} at (50,0) size 11x18

chunk 1 text run 1 at (100.00,50.00) startOffset 0 endOffset 1 width 11.00: "B"

RenderSVGInlineText {#text} at (100,0) size 15x18

chunk 1 text run 1 at (150.00,50.00) startOffset 0 endOffset 2 width 15.00: " C"

Its obvious that adding a #text node as child to the <tspan> potentially affects the next & previous
siblings in the DOM tree. Take extra care of these possibilities, by properly remeasuring not only
the newly added renderer, but also the previous & next siblings layout attributes.

Mutation of text nodes, or removal of text/tspan elements from the tree is handled in the same way.

#3) Measuring the text subtree:
Don't cache the metrics information in the SVGRootInlineBox, as it doesn't survive relayouts (RenderSVGText::layout).
They're stored in the SVGTextLayoutAttributes, and will be updated if the underlying text content changes.

Tests: svg/text/append-text-node-to-tspan.html

svg/text/modify-text-node-in-tspan.html
svg/text/remove-text-node-from-tspan.html

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::addChild):

  • rendering/svg/RenderSVGInline.h:
  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::willBeDestroyed):
(WebCore::RenderSVGInlineText::setTextInternal):
(WebCore::RenderSVGInlineText::styleDidChange):

  • rendering/svg/RenderSVGInlineText.h:

(WebCore::RenderSVGInlineText::layoutAttributes):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::recursiveUpdateLayoutAttributes):
(WebCore::RenderSVGText::layoutAttributesChanged):
(WebCore::findPreviousAndNextAttributes):
(WebCore::RenderSVGText::layoutAttributesWillBeDestroyed):
(WebCore::RenderSVGText::textDOMChanged):
(WebCore::RenderSVGText::layout):
(WebCore::RenderSVGText::addChild):
(WebCore::recursiveCollectLayoutAttributes):
(WebCore::RenderSVGText::rebuildLayoutAttributes):

  • rendering/svg/RenderSVGText.h:

(WebCore::RenderSVGText::layoutAttributes):

  • rendering/svg/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
(WebCore::findFirstAndLastAttributesInVector):
(WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
(WebCore::SVGRootInlineBox::reorderValueLists):

  • rendering/svg/SVGRootInlineBox.h:
  • rendering/svg/SVGTextLayoutAttributes.h:
  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:

(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForWholeTree):

  • rendering/svg/SVGTextLayoutEngine.cpp:

(WebCore::SVGTextLayoutEngine::SVGTextLayoutEngine):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics):
(WebCore::SVGTextLayoutEngine::currentVisualCharacterMetrics):
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):

  • rendering/svg/SVGTextLayoutEngine.h:

(WebCore::SVGTextLayoutEngine::layoutAttributes):

  • rendering/svg/SVGTextMetrics.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::measureTextRenderer):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):

  • svg/SVGTextContentElement.cpp:

(WebCore::SVGTextContentElement::childrenChanged):

LayoutTests:

Update some results, that changed again slightly. Land new tests covering partial SVG <text> subtree updating.

  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/carto.net/window-expected.png:
  • platform/mac/svg/carto.net/window-expected.txt:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/mac/svg/custom/use-detach-expected.png:
  • platform/mac/svg/custom/use-detach-expected.txt:
  • platform/mac/svg/text/append-text-node-to-tspan-expected.png: Added.
  • platform/mac/svg/text/append-text-node-to-tspan-expected.txt: Added.
  • platform/mac/svg/text/modify-text-node-in-tspan-expected.png: Added.
  • platform/mac/svg/text/modify-text-node-in-tspan-expected.txt: Added.
  • platform/mac/svg/text/remove-text-node-from-tspan-expected.png: Added.
  • platform/mac/svg/text/remove-text-node-from-tspan-expected.txt: Added.
  • svg/text/append-text-node-to-tspan.html: Added.
  • svg/text/modify-text-node-in-tspan.html: Added.
  • svg/text/remove-text-node-from-tspan.html: Added.
4:29 AM Changeset in webkit [105142] by kov@webkit.org
  • 3 edits in trunk/Tools

GTK+ EWS needs to run update-webkitgtk-libs after applying a patch
https://bugs.webkit.org/show_bug.cgi?id=75857

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2012-01-16
Reviewed by Adam Barth.

  • Scripts/webkitdirs.pm:

(buildAutotoolsProject): move cleaning the build to happen early,
and handle --update-gtk right after that

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

(GtkPort.build_webkit_command): pass --update-gtk as an option to
build-webkit, so that it is used in the EWS

4:20 AM Changeset in webkit [105141] by apavlov@chromium.org
  • 3 edits in trunk/LayoutTests

[Chromium] Unreviewed, fix Linux image expectations for two SVG tests.

  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:
4:13 AM Changeset in webkit [105140] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
https://bugs.webkit.org/show_bug.cgi?id=76058

Reviewed by Pavel Feldman.

As per the results of a war room:

  • Auto-suggest only after user typing (avoid showing suggestions when navigating through the user input.)
  • Do not select the first item if the suggest box is shown at the end of prompt (to allow Enter to commit the input.)
  • Only show grayed autocompletion at the end of prompt (otherwise show a suggest box with the first item selected.)
  • Grayed autocompletion can only be accepted with the End or Right keys.
  • Enter can accept a selected suggestion item from the list, without committing the input.
  • Retain the CSS model editing behavior as close to the existing one as possible.
  • Enable PageUp/PageDown to navigate the suggest box items.
  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype):
():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.set text):
(WebInspector.TextPrompt.prototype._removeSuggestionAids):
(WebInspector.TextPrompt.prototype._selectStart.moveBackIfOutside):
(WebInspector.TextPrompt.prototype._selectStart):
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPrompt.prototype.acceptAutoComplete):
(WebInspector.TextPrompt.prototype.complete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):
(WebInspector.TextPrompt.prototype.tabKeyPressed):
(WebInspector.TextPrompt.prototype.downKeyPressed):
(WebInspector.TextPrompt.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype._onNextItem):
(WebInspector.TextPrompt.SuggestBox.prototype._onPreviousItem):
(WebInspector.TextPrompt.SuggestBox.prototype.updateSuggestions):
(WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
(WebInspector.TextPrompt.SuggestBox.prototype._canShowBox):
(WebInspector.TextPrompt.SuggestBox.prototype._rememberRowCountPerViewport):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
(WebInspector.TextPrompt.SuggestBox.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):

3:57 AM Changeset in webkit [105139] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: CSS backend doesn't conform to Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=76402

Reviewed by Yury Semikhatsky.

  • inspector/Inspector.json:
  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::buildObjectForStyle):

3:13 AM Changeset in webkit [105138] by tommyw@google.com
  • 8 edits in trunk/Source/WebCore

MediaStream API: Add the mediaStream constructor
https://bugs.webkit.org/show_bug.cgi?id=76436

Adding support for creating a MediaStream using a collection of MediaStreamTracks.

Reviewed by Adam Barth.

Tests for the Media Stream API will be provided by the bug 56587, pending enough landed code.

  • mediastream/MediaStream.cpp:

(WebCore::MediaStream::create):

  • mediastream/MediaStream.h:
  • mediastream/MediaStream.idl:
  • mediastream/MediaStreamTrack.cpp:

(WebCore::MediaStreamTrack::component):

  • mediastream/MediaStreamTrack.h:
  • platform/mediastream/MediaStreamCenter.cpp:

(WebCore::MediaStreamCenter::didConstructMediaStream):

  • platform/mediastream/MediaStreamCenter.h:
2:51 AM Changeset in webkit [105137] by jsbell@chromium.org
  • 10 edits in trunk

IndexedDB: IDBIndex.get/getKey should yield undefined, not an error
https://bugs.webkit.org/show_bug.cgi?id=76116

Source/WebCore:

Pass an undefined value (for IDBIndex.get()) or a null key
(for IDBIndex.getKey()) back as the result, rather than raising
an exception.

Reviewed by Adam Barth.

Tests: storage/indexeddb/index-basics.html

storage/indexeddb/cursor-index-delete.html
storage/indexeddb/duplicates.html

  • storage/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::getInternal):

  • storage/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess):

LayoutTests:

Reviewed by Adam Barth.

  • storage/indexeddb/cursor-index-delete-expected.txt:
  • storage/indexeddb/cursor-index-delete.html:
  • storage/indexeddb/duplicates-expected.txt:
  • storage/indexeddb/duplicates.html:
  • storage/indexeddb/index-basics-expected.txt:
  • storage/indexeddb/index-basics.html:
2:49 AM Changeset in webkit [105136] by Philippe Normand
  • 5 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r105129.

  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
2:39 AM WebKitGTK/Releasing edited by Carlos Garcia Campos
(diff)
2:26 AM Changeset in webkit [105135] by macpherson@chromium.org
  • 8 edits in trunk/Source/WebCore

Remove references to CSSPrimitiveValue::primitiveType().
https://bugs.webkit.org/show_bug.cgi?id=76363

Reviewed by Hajime Morita.

No new tests / refactoring only.

Goal is to remove primitiveType() completely. Only code left using it after this patch is in SVG.
I've introduced some abstractions in CSSPrimitiveValue for time and angles to reduce duplicated code elsewhere.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseColor):

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeDegrees):

  • css/CSSPrimitiveValue.h:

(WebCore::CSSPrimitiveValue::isAngle):
(WebCore::CSSPrimitiveValue::isAttr):
(WebCore::CSSPrimitiveValue::isCounter):
(WebCore::CSSPrimitiveValue::isFontIndependentLength):
(WebCore::CSSPrimitiveValue::isLength):
(WebCore::CSSPrimitiveValue::isPx):
(WebCore::CSSPrimitiveValue::isRect):
(WebCore::CSSPrimitiveValue::isRGBColor):
(WebCore::CSSPrimitiveValue::isShape):
(WebCore::CSSPrimitiveValue::isTime):
(WebCore::CSSPrimitiveValue::computeTime):

  • css/CSSStyleSelector.cpp:

(WebCore::convertToLength):
(WebCore::createGridTrackBreadth):
(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::mapFillSize):
(WebCore::CSSStyleSelector::mapFillXPosition):
(WebCore::CSSStyleSelector::mapFillYPosition):
(WebCore::CSSStyleSelector::mapAnimationDelay):
(WebCore::CSSStyleSelector::mapAnimationDuration):
(WebCore::CSSStyleSelector::mapNinePieceImageSlice):
(WebCore::CSSStyleSelector::mapNinePieceImageQuad):
(WebCore::CSSStyleSelector::colorFromPrimitiveValue):
(WebCore::CSSStyleSelector::createTransformOperations):
(WebCore::CSSStyleSelector::createCustomFilterOperation):
(WebCore::CSSStyleSelector::createFilterOperations):

  • css/MediaQueryEvaluator.cpp:

(WebCore::parseAspectRatio):
(WebCore::numberValue):
(WebCore::computeLength):

  • editing/EditingStyle.cpp:

(WebCore::cssValueToRGBA):
(WebCore::EditingStyle::extractFontSizeDelta):
(WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
(WebCore::isCSSValueLength):
(WebCore::hasTransparentBackgroundColor):

2:26 AM Changeset in webkit [105134] by bbudge@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

AssociatedURLLoader adds support for the HTTP response header Access-Control-Expose-Header.
https://bugs.webkit.org/show_bug.cgi?id=76419

Reviewed by Adam Barth.

  • src/AssociatedURLLoader.cpp:

(WebKit::AssociatedURLLoader::ClientAdapter::didReceiveResponse):

  • tests/AssociatedURLLoaderTest.cpp:

(WebKit::AssociatedURLLoaderTest::CheckAccessControlHeaders):
(WebKit::TEST_F):

1:28 AM Changeset in webkit [105133] by vestbo@webkit.org
  • 3 edits in trunk/Tools

[Qt] Don't add _debug postfix to targets when building debug only

Reviewed by Simon Hausmann.

1:27 AM Changeset in webkit [105132] by vestbo@webkit.org
  • 4 edits
    1 add in trunk

[Qt] Add more files to project-files for easier navigation in Qt Creator

Reviewed by Simon Hausmann.

12:36 AM Changeset in webkit [105131] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361

Reviewed by Csaba Osztrogonác.

Fix for 32-bit.

  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryBuildGetByIDList):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

12:25 AM Changeset in webkit [105130] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed morning gardening.

  • platform/qt/Skipped: Skip a failing test.
  • platform/qt/fast/dom/Window/window-properties-expected.txt: Updated.
12:23 AM Changeset in webkit [105129] by Philippe Normand
  • 4 edits in trunk

[GTK] fast/dom/constructed-objects-prototypes.html fails
https://bugs.webkit.org/show_bug.cgi?id=75432

Reviewed by Martin Robinson.

Tools:

  • Scripts/build-webkit: Enable video-track in GTK.

LayoutTests:

  • platform/gtk/test_expectations.txt: Test now passing no longer

needs to be skipped.

12:18 AM Changeset in webkit [105128] by Philippe Normand
  • 14 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r105075 and r105085.

  • platform/gtk/editing/execCommand/insertImage-expected.txt:
  • platform/gtk/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt:
  • platform/gtk/fast/block/float/015-expected.txt:
  • platform/gtk/fast/borders/rtl-border-05-expected.txt:
  • platform/gtk/fast/dom/34176-expected.txt:
  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/gtk/fast/dom/inner-text-expected.txt:
  • platform/gtk/fast/encoding/utf-16-big-endian-expected.txt:
  • platform/gtk/fast/encoding/utf-16-little-endian-expected.txt:
  • platform/gtk/fast/hidpi/broken-image-icon-hidpi-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug2962-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug56201-expected.txt:
  • platform/gtk/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:

Jan 16, 2012:

11:08 PM Changeset in webkit [105127] by rolandsteiner@chromium.org
  • 6 edits
    1 delete in trunk/LayoutTests

Unreviewed:more Chromium Linux rebaselining

  • platform/chromium-linux-x86/svg/text/text-align-03-b-expected.png: Removed.
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-linux/svg/text/text-align-03-b-expected.png:
10:44 PM Changeset in webkit [105126] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Internals] member varaibles should follow naming convention.
https://bugs.webkit.org/show_bug.cgi?id=76426

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-16
Reviewed by Kent Tamura.

No new tests. Just a rename.

  • testing/Internals.cpp:

(WebCore::Internals::Internals):
(WebCore::Internals::setPasswordEchoEnabled):
(WebCore::Internals::setPasswordEchoDurationInSeconds):
(WebCore::Internals::reset):

  • testing/Internals.h:
10:02 PM Changeset in webkit [105125] by rolandsteiner@chromium.org
  • 8 edits
    6 deletes in trunk/LayoutTests

Unreviewed: updated baselines for Chromium Linux

  • platform/chromium-linux-x86/svg/W3C-SVG-1.1/text-text-01-b-expected.png: Removed.
  • platform/chromium-linux-x86/svg/foreignObject/text-tref-02-b-expected.png: Removed.
  • platform/chromium-linux-x86/svg/text/text-align-02-b-expected.png: Removed.
  • platform/chromium-linux-x86/svg/text/text-spacing-01-b-expected.png: Removed.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.txt: Removed.
  • platform/chromium-linux/svg/W3C-SVG-1.1/text-text-01-b-expected.png:
  • platform/chromium-linux/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/chromium-linux/svg/text/text-align-02-b-expected.png:
  • platform/chromium-linux/svg/text/text-spacing-01-b-expected.png:
  • platform/chromium-linux/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
  • platform/chromium-linux/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
  • platform/chromium-linux/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:
9:28 PM WebKit Team edited by sh4.seo@samsung.com
(diff)
9:24 PM Changeset in webkit [105124] by rolandsteiner@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed: rebaselining fast/backgrounds/mask-box-image

  • platform/chromium-mac-snowleopard/fast/backgrounds/mask-box-image-expected.png: Added.
  • platform/chromium-win/fast/backgrounds/mask-box-image-expected.png: Added.
  • platform/chromium-win/fast/backgrounds/mask-box-image-expected.txt: Added.
7:56 PM Changeset in webkit [105123] by hayato@chromium.org
  • 5 edits in trunk

Implement multiple AT_TARGET event dispatching in regard to shadow tree.
https://bugs.webkit.org/show_bug.cgi?id=76217

Reviewed by Dimitri Glazkov.

The original motivation is to fix the regression: Event.eventPhase is not set to 2
(at target) when handling dblclick event in <input> element.
Since the issue is not specific to <input> element, but general one, this patch fixes
the regression by adapting a living draft spec of shadow DOM.
This won't break a compatibility if there is no shadow boundaries in event dispatching.
See the following shadow dom spec how multiple AT_TARGET events work.
http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#event-dispatch

Source/WebCore:

  • dom/EventContext.cpp:

(WebCore::EventContext::handleLocalEvents):

LayoutTests:

  • fast/dom/shadow/shadow-boundary-events-expected.txt:
  • fast/dom/shadow/shadow-boundary-events.html:
7:47 PM Changeset in webkit [105122] by toyoshim@chromium.org
  • 2 edits in trunk/Tools

Add toyoshim as a committer.
https://bugs.webkit.org/show_bug.cgi?id=76390

Reviewed by Hajime Morita.

  • Scripts/webkitpy/common/config/committers.py:
7:35 PM Changeset in webkit [105121] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

platformRequest(QNX) need to get the conditional information from ResourceRequest.
https://bugs.webkit.org/show_bug.cgi?id=75216

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-01-16
Reviewed by George Staikos.

Pass the isConditional() flag in ResourceRequest to the QNX platform's network request.
QNX platform's network needs this flag to determine whether to use disk-cache.

  • platform/network/blackberry/ResourceRequestBlackBerry.cpp:

(ResourceRequest::initializePlatformRequest):

6:25 PM Changeset in webkit [105120] by robert@webkit.org
  • 5 edits
    6 adds in trunk

Heap-use-after-free in WebCore::RenderBlock::selectionGaps
https://bugs.webkit.org/show_bug.cgi?id=75013

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/table/multiple-captions-crash3.html

fast/table/multiple-captions-crash4.html
fast/table/multiple-captions-crash5.html

When a child float is removed, the parent needs to ensure any reference to the
child is also removed from the floating objects list in any sibling block that
it intruded into.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::markSiblingsWithFloatsForLayout):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):

LayoutTests:

In multiple-captions-crash3.html a floating object is added as a child to a caption element, then removed and
added as a child to another caption element. When added to the first caption element it is added
to the floating objects list of both the parent tbody element and the keygen element, as it intrudes
into the latter. When removed, a stale reference to the floating object remains in the keygen element.
When the keygen element is in layout it attempts to access the stale reference to the floating object and
crashes. The fix is to ensure that any floats added as intruding floats to sibling blocks are removed
when the child is removed from the tree.

multiple-captions-crash4.html and multiple-captions-crash5.html are variants of this scenario.

  • fast/table/multiple-captions-crash3-expected.html: Added.
  • fast/table/multiple-captions-crash3.html: Added.
  • fast/table/multiple-captions-crash4-expected.html: Added.
  • fast/table/multiple-captions-crash4.html: Added.
  • fast/table/multiple-captions-crash5-expected.html: Added.
  • fast/table/multiple-captions-crash5.html: Added.
6:00 PM Changeset in webkit [105119] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merge r99591.

5:49 PM Changeset in webkit [105118] by mrowe@apple.com
  • 8 edits in branches/safari-534.54-branch/Source

Merge r103860.

5:33 PM Changeset in webkit [105117] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge r104049.

5:21 PM Changeset in webkit [105116] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge r103925.

5:21 PM Changeset in webkit [105115] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge r103871.

5:21 PM Changeset in webkit [105114] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge r103869.

5:21 PM Changeset in webkit [105113] by mrowe@apple.com
  • 19 edits in branches/safari-534.54-branch/Source

Merge r103858.

5:17 PM Changeset in webkit [105112] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/10702758> REGRESSION: Every Safari Reader WKView leaks

Reviewed by John Sullivan and Ada Chan.

  • UIProcess/API/mac/WKView.mm:

(-[WKView viewDidMoveToWindow]): Since this method can be called multiple times in a row
while [self window] is non-nil, check if there isn’t already an event monitor before adding
a new one.

5:12 PM Changeset in webkit [105111] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION: r102553 Autocorrection bubble doesn't show up
https://bugs.webkit.org/show_bug.cgi?id=76408
<rdar://problem/10644746>

Prior to r102553 Editor::markAllMisspellingsAndBadGrammarInRanges() used to pass its
textCheckingOptions directly to markAndReplaceFor(). Now a request object is used,
but, when the object is created, the TextCheckingTypeShowCorrectionPanel flag is dropped.

Reviewed by Darin Adler.

  • editing/Editor.cpp:

(WebCore::Editor::resolveTextCheckingTypeMask): Add TextCheckingTypeShowCorrectionPanel to
the returned checkingTypes when appropriate.

5:10 PM Changeset in webkit [105110] by Lucas Forschler
  • 1 edit
    2 copies in branches/safari-534.54-branch/LayoutTests

Merged r100471.

5:06 PM Changeset in webkit [105109] by Lucas Forschler
  • 3 edits
    3 copies in branches/safari-534.54-branch

Merged r104660.

5:04 PM Changeset in webkit [105108] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-534.54-branch

Merged r104762.

4:53 PM Changeset in webkit [105107] by fpizlo@apple.com
  • 18 edits
    15 adds in trunk

DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361
<rdar://problem/10698060>

Source/JavaScriptCore:

Reviewed by Geoff Garen.

Added the ability to cache JS getter calls and custom getter calls in the DFG.
Most of this is pretty mundane, since the old JIT supported this functionality
as well. But a couple interesting things had to happen:

  • There are now two variants of GetById: GetById, which works as before, and GetByIdFlush, which flushes registers prior to doing the GetById. Only GetByIdFlush can be used for caching getters. We detect which GetById style to use by looking at the inline caches of the old JIT.


  • Exception handling for getter calls planted in stubs uses a separate lookup handler routine, which uses the CodeOrigin stored in the StructureStubInfo.


This is a 40% speed-up in the Dromaeo DOM Traversal average. It removes all of
the DFG regressions we saw in Dromaeo. This is neutral on SunSpider, V8, and
Kraken.

  • bytecode/StructureStubInfo.h:
  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGAssemblyHelpers.h:

(JSC::DFG::AssemblyHelpers::emitExceptionCheck):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCCallHelpers.h:

(JSC::DFG::CCallHelpers::setupResults):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::PropertyAccessRecord::PropertyAccessRecord):
(JSC::DFG::JITCompiler::addExceptionCheck):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::hasHeapPrediction):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::propagateNodePredictions):

  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

LayoutTests:

Reviewed by Geoff Garen.

  • fast/js/dfg-custom-getter-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined.html: Added.
  • fast/js/dfg-custom-getter-throw.html: Added.
  • fast/js/dfg-custom-getter.html: Added.
  • fast/js/dfg-getter-expected.txt: Added.
  • fast/js/dfg-getter-throw-expected.txt: Added.
  • fast/js/dfg-getter-throw.html: Added.
  • fast/js/dfg-getter.html: Added.
  • fast/js/script-tests/dfg-custom-getter-throw-inlined.js: Added.

(foo):
(baz):
(bar):

  • fast/js/script-tests/dfg-custom-getter-throw.js: Added.

(foo):
(bar):

  • fast/js/script-tests/dfg-custom-getter.js: Added.

(foo):

  • fast/js/script-tests/dfg-getter-throw.js: Added.

(foo):
(bar):

  • fast/js/script-tests/dfg-getter.js: Added.

(foo):

4:36 PM Changeset in webkit [105106] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Fix <rdar://problem/10678175>.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::notityPositionChanged):

4:25 PM Changeset in webkit [105105] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash when calling SecItemAdd with a null result pointer
https://bugs.webkit.org/show_bug.cgi?id=76407
<rdar://problem/10696087>

Reviewed by Brady Eidson.

Add null check.

  • WebProcess/mac/SecItemShimMethods.mm:

(WebKit::webSecItemAdd):

4:19 PM Changeset in webkit [105104] by mrowe@apple.com
  • 7 edits
    2 adds in branches/safari-534.54-branch

Merge r102540.

4:16 PM Changeset in webkit [105103] by bfulgham@webkit.org
  • 2 edits in trunk/WebKitLibraries

[WinCairo] Build correction. Switch to Apple style builds without
the _debug postfix so that launching tools, etc., will work properly.

  • win/tools/vsprops/debug_wincairo.vsprops: Remove use of _debug in

output files to be consistent with WebKit build/test tools.

4:08 PM Changeset in webkit [105102] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merge fix for 9593456.

4:04 PM Changeset in webkit [105101] by ap@apple.com
  • 2 edits in trunk/Source/WebKit/mac

A follow-up fix for:
A warning is logged to console when typing a bare "/" in Safari address bar
https://bugs.webkit.org/show_bug.cgi?id=76236

<rdar://problem/10702986>

Reviewed by John Sullivan.

  • Misc/WebNSURLExtras.mm: (+[NSURL _web_URLWithData:relativeToURL:]): It's OK to have a path when there is a base URL.
3:55 PM Changeset in webkit [105100] by mrowe@apple.com
  • 9 edits in branches/safari-534.54-branch/Source/WebKit2

Merge r96014.

3:46 PM Changeset in webkit [105099] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merge r104378.

3:46 PM Changeset in webkit [105098] by jonlee@apple.com
  • 10 edits in trunk/Source

Build fix for r105086.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:
  • wtf/Platform.h:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • notifications/NotificationCenter.idl: change to use ENABLE_TEXT_NOTIFICATIONS_ONLY, which is only defined on Mac platform.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
3:38 PM Changeset in webkit [105097] by mrowe@apple.com
  • 2 edits in branches/safari-534.54-branch/Source/WebKit2

Merge r104663.

3:38 PM Changeset in webkit [105096] by mrowe@apple.com
  • 4 edits in branches/safari-534.54-branch/Source/WebKit2

Merge r104377.

3:38 PM Changeset in webkit [105095] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix typo in StyledElement::mappedAttributeCount().
<http://webkit.org/b/76393>

Rubber-stamped by Antti Koivisto.

  • dom/StyledElement.h:

(WebCore::StyledElement::mappedAttributeCount): Less &&, more ?:

2:49 PM Changeset in webkit [105094] by jonlee@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix for r105086.

  • notifications/NotificationCenter.idl: expand ENABLE macro for .idl.
2:39 PM Changeset in webkit [105093] by Antti Koivisto
  • 3 edits in trunk/Source/WebCore

Cache CSSStyleSelector::Features in RuleSets
https://bugs.webkit.org/show_bug.cgi?id=76337

Reviewed by Andreas Kling.

Currently whenever the style selector is updated we go through all the applicable rules and
collect the used features again. We should keep the features around as part of the RuleSets
and update them incrementally. Collecting the features will then be just a matter of taking
the union of all features used by the RuleSets.

This is 1-2% CPU time reduction (engadget, nytimes) due less time spent in feature collection.

This also simplifies the code by removing the need to cache the default style sheet features
separately.

  • css/CSSStyleSelector.cpp:


Remove the global siblingRulesInDefaultStyle and uncommonAttributeRulesInDefaultStyle RuleSets.
These are now part of the cached features of the defaultStyle.


(WebCore::RuleSet::features):

Add a field for caching the features.


(WebCore::makeRuleSet):
(WebCore::CSSStyleSelector::collectFeatures):

Unify the features of all RuleSets.
Create RuleSets for sibling and uncommon attribute lookups at the end.


(WebCore::CSSStyleSelector::appendAuthorStylesheets):
(WebCore::CSSStyleSelector::Features::add):
(WebCore::ensureDefaultStyleSheetsForElement):
(WebCore::CSSStyleSelector::locateSharedStyle):
(WebCore::collectFeaturesFromSelector):
(WebCore::collectFeaturesFromRuleData):
(WebCore::RuleSet::addToRuleSet):
(WebCore::RuleSet::addRule):

Collect the features when adding the rules rather than as a separate pass through all the rules.


  • css/CSSStyleSelector.h:

(WebCore::CSSStyleSelector::usesSiblingRules):
(WebCore::CSSStyleSelector::RuleSelectorPair::RuleSelectorPair):

Use Vector instead of a RuleSet for sibling and uncommon attribute selectors so unifying
Features is simpler.

2:37 PM Changeset in webkit [105092] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Huge filter area cause hangs and malloc failures
https://bugs.webkit.org/show_bug.cgi?id=75711

Reviewed by Dean Jackson.

Filtering an element with a child that had a huge negative text-indent
was extremely slow, because transparencyClipBox() returned a huge rect.

Add a method, paintingExtent(), that wraps transparencyClipBox()
and intersects it with the paintDirtyRect to constrain the size
of the rect used for filters and transparency layers.

Transparency layer extent is not testable in layout tests.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintingExtent):
(WebCore::RenderLayer::beginTransparencyLayers): Floating point literals are required
to avoid ambiguous constructor call.
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):

  • rendering/RenderLayer.h:
2:21 PM Changeset in webkit [105091] by Simon Fraser
  • 3 edits
    4 adds in trunk

Borders and box masks behave incorrectly with overlapping offsets
https://bugs.webkit.org/show_bug.cgi?id=76137

Source/WebCore:

Reviewed by Dean Jackson.

There are some correct behaviors for -webkit-mask-box-image where
parts of the mask are missing (when the sum of the slice sizes is
greater than one dimension of the image). To render correctly
in these cases, always use a transparency layer when rendering
the mask.

Test: fast/backgrounds/mask-box-image.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintMaskImages):

LayoutTests:

Reviewed by Dean Jackson.

Test -webkit-mask-box-image with large slice sizes, with and
without a transform.

  • fast/backgrounds/mask-box-image.html: Added.
  • fast/backgrounds/resources/dot.png: Added.
  • platform/mac/fast/backgrounds/mask-box-image-expected.png: Added.
  • platform/mac/fast/backgrounds/mask-box-image-expected.txt: Added.
2:19 PM Changeset in webkit [105090] by Simon Fraser
  • 3 edits
    3 adds in trunk

Filtered element with composited content beneath it must be composited
https://bugs.webkit.org/show_bug.cgi?id=76322

Source/WebCore:

Reviewed by Dean Jackson.

If a RenderLayer has a filter effect, and a composited descendant, then
that layer must also be composited so that the filter is applied via
the compositing system, rather than via painting (otherwise the filter
will not affect the descendant).

Test: css3/filters/filtered-compositing-descendant.html

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingWhenDescendantsAreCompositing):

LayoutTests:

Reviewed by Dean Jackson.

Testcase with a filtered element having a composited child.

  • css3/filters/filtered-compositing-descendant-expected.png: Added.
  • css3/filters/filtered-compositing-descendant-expected.txt: Added.
  • css3/filters/filtered-compositing-descendant.html: Added.
1:53 PM Changeset in webkit [105089] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix assertion failure in mappedAttributesEquivalent().
<http://webkit.org/b/76393>

Rubber-stamped by Antti Koivisto.

The assertion that two mapped attributes with matching name/value will always
have the exact same decl() was wrong, so make it a proper check once again.

  • css/CSSStyleSelector.cpp:

(WebCore::mappedAttributesEquivalent):

1:31 PM Changeset in webkit [105088] by bfulgham@webkit.org
  • 6 edits in trunk/Tools

[WinCairo] Build fix after r104155. Several debug targets were not
properly including the '*Common' property sheets.

  • DumpRenderTree/win/DumpRenderTreeLauncherDebugCairoCFLite.vsprops:
  • DumpRenderTree/win/ImageDiffLauncherDebugCairoCFLite.vsprops:
  • MiniBrowser/Configurations/MiniBrowserLauncherDebugCairoCFLite.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerLauncherDebugCairoCFLite.vsprops:
  • WinLauncher/WinLauncherLauncherDebugCairoCFLite.vsprops:
1:18 PM Changeset in webkit [105087] by bbudge@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

Changes AssociatedURLLoader to remove non-whitelisted HTTP response headers for CORS requests,
and Set-Cookie and Set-Cookie2 response headers for all requests.
https://bugs.webkit.org/show_bug.cgi?id=76228

Reviewed by Adam Barth.

  • src/AssociatedURLLoader.cpp:

(WebKit::AssociatedURLLoader::ClientAdapter::create):
(WebKit::AssociatedURLLoader::ClientAdapter::ClientAdapter):
(WebKit::AssociatedURLLoader::ClientAdapter::didReceiveResponse):
(WebKit::AssociatedURLLoader::loadAsynchronously):

  • tests/AssociatedURLLoaderTest.cpp:

(WebKit::AssociatedURLLoaderTest::didReceiveResponse):
(WebKit::TEST_F):

1:11 PM Changeset in webkit [105086] by jonlee@apple.com
  • 4 edits in trunk/Source

Remove HTML notifications support on Mac
https://bugs.webkit.org/show_bug.cgi?id=76401
<rdar://problem/10589881>

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • wtf/Platform.h: Define ENABLE_HTML_NOTIFICATIONS macro.

Source/WebCore:

  • notifications/NotificationCenter.idl:
12:50 PM Changeset in webkit [105085] by commit-queue@webkit.org
  • 12 edits
    25 adds in trunk

Add offline web applications API applicationCache.abort.
https://bugs.webkit.org/show_bug.cgi?id=76270

Patch by xueqing huang <huangxueqing@baidu.com> on 2012-01-16
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Tests:
http/tests/appcache/abort-cache-onchecking.html
http/tests/appcache/abort-cache-onchecking-manifest-404.html
http/tests/appcache/abort-cache-onchecking-resource-404.html
http/tests/appcache/abort-cache-ondownloading.html
http/tests/appcache/abort-cache-ondownloading-manifest-404.html
http/tests/appcache/abort-cache-ondownloading-resource-404.html
http/tests/appcache/abort-cache-onprogress.html

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::abort):

  • loader/appcache/ApplicationCacheGroup.h:
  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::abort):

  • loader/appcache/ApplicationCacheHost.h:
  • loader/appcache/DOMApplicationCache.cpp:

(WebCore::DOMApplicationCache::abort):

  • loader/appcache/DOMApplicationCache.h:
  • loader/appcache/DOMApplicationCache.idl:

Source/WebKit/chromium:

  • src/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::abort):

LayoutTests:

  • http/tests/appcache/abort-cache-onchecking-expected.txt: Added.
  • http/tests/appcache/abort-cache-onchecking-manifest-404-expected.txt: Added.
  • http/tests/appcache/abort-cache-onchecking-manifest-404.html: Added.
  • http/tests/appcache/abort-cache-onchecking-resource-404-expected.txt: Added.
  • http/tests/appcache/abort-cache-onchecking-resource-404.html: Added.
  • http/tests/appcache/abort-cache-onchecking.html: Added.
  • http/tests/appcache/abort-cache-ondownloading-expected.txt: Added.
  • http/tests/appcache/abort-cache-ondownloading-manifest-404-expected.txt: Added.
  • http/tests/appcache/abort-cache-ondownloading-manifest-404.html: Added.
  • http/tests/appcache/abort-cache-ondownloading-resource-404-expected.txt: Added.
  • http/tests/appcache/abort-cache-ondownloading-resource-404.html: Added.
  • http/tests/appcache/abort-cache-ondownloading.html: Added.
  • http/tests/appcache/abort-cache-onprogress-expected.txt: Added.
  • http/tests/appcache/abort-cache-onprogress.html: Added.
  • http/tests/appcache/resources/abort-cache-onchecking-resource-404.manifest: Added.
  • http/tests/appcache/resources/abort-cache-onchecking.manifest: Added.
  • http/tests/appcache/resources/abort-cache-onchecking.text: Added.
  • http/tests/appcache/resources/abort-cache-ondownloading-resource-404.manifest: Added.
  • http/tests/appcache/resources/abort-cache-ondownloading.manifest: Added.
  • http/tests/appcache/resources/abort-cache-ondownloading.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress-1.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress-2.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress-3.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress-4.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress.manifest: Added.
  • platform/chromium/test_expectations.txt:
12:28 PM Changeset in webkit [105084] by kling@webkit.org
  • 6 edits in trunk/Source/WebCore

Remove caching of mapped attribute count on NamedNodeMap.
<http://webkit.org/b/76393>

Reviewed by Antti Koivisto.

Stop caching the mapped attribute count on Element's attribute map, effectively
shrinking NamedNodeMap by one CPU word. The price we pay is always walking over
the map in matchAllRules(), even if it has no mapped attribute styles.

This reduces memory consumption by 605 kB (on 64-bit) when viewing the full
HTML5 spec at <http://whatwg.org/c>

  • css/CSSStyleSelector.cpp:

(WebCore::mappedAttributesEquivalent):

Moved here from NamedNodeMap::mappedMapsEquivalent() to accomodate the only
user under the added assumption that the two attribute maps have the same
number of mapped attributes.

(WebCore::CSSStyleSelector::matchAllRules):

We don't have NamedNodeMap::hasMappedAttributes() at our convenience any
more so walk the attribute map (if there is one) looking for styles to add.

(WebCore::CSSStyleSelector::canShareStyleWithElement):

Compare the elements' mapped attribute counts at an earlier time. This is
slightly more expensive but we used to do it near the end anyway and this
ends up rejecting elements that can't share style before doing a lot of
semi-expensive checks.

  • dom/StyledElement.h:

(WebCore::StyledElement::mappedAttributeCount):

  • dom/NamedNodeMap.h:

(WebCore::NamedNodeMap::mappedAttributeCount):

  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::clearAttributes):

Remove NamedNodeMap::m_mappedAttributeCount and add a function that walks
the attribute map counting the attributes that have a decl().

  • dom/NamedNodeMap.h:
  • dom/StyledElement.cpp:

(WebCore::StyledElement::attributeChanged):

Remove declAdded()/declRemoved() callbacks.

12:22 PM Changeset in webkit [105083] by Lucas Forschler
  • 5 edits in branches/safari-534.54-branch/Source

Versioning.

12:02 PM Changeset in webkit [105082] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

REGRESSION(r105072): It broke committers_unittest.py
https://bugs.webkit.org/show_bug.cgi?id=76396

Reviewed by Adam Barth.

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

(CommittersTest._assert_fuzz_match): It should handle more names.
(CommittersTest.test_contributors_by_fuzzy_match_with_legacy_names): Fix the testcase.

12:01 PM Changeset in webkit [105081] by Lucas Forschler
  • 1 copy in tags/Safari-534.54.6

New tag.

11:50 AM Changeset in webkit [105080] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebCore

Merged r91324.

11:28 AM Changeset in webkit [105079] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix.

Added necessary header files to VectorMath.cpp to fix Chromium compile error.

  • platform/audio/VectorMath.cpp:
10:53 AM Changeset in webkit [105078] by jer.noble@apple.com
  • 4 edits in trunk/Source/WebCore

WebAudio: Optimize AudioChannel::maxAbsValue().
https://bugs.webkit.org/show_bug.cgi?id=74359

Reviewed by Eric Carlson.

No new tests; optimization of existing code, so covered by existing test cases.

  • platform/audio/AudioChannel.cpp:

(WebCore::AudioChannel::maxAbsValue): Replace implementation with optimized vector math

operation.

  • platform/audio/VectorMath.cpp:

(WebCore::VectorMath::vmaxmgv): Vector math operation for determining maximum

magnitude in a vector.

  • platform/audio/VectorMath.h:
10:46 AM Changeset in webkit [105077] by ap@apple.com
  • 2 edits in trunk/Source/WebKit/mac

A warning is logged to console when typing a bare "/" in Safari address bar
https://bugs.webkit.org/show_bug.cgi?id=76236

Reviewed by John Sullivan.

  • Misc/WebNSURLExtras.mm: (+[NSURL _web_URLWithData:relativeToURL:]): Bail out early for paths.
10:42 AM Changeset in webkit [105076] by commit-queue@webkit.org
  • 5 edits
    3 adds in trunk

https://bugs.webkit.org/show_bug.cgi?id=41210
Cross Origin XMLHttpRequest can not expose headers indicated in Access-Control-Expose-Headers HTTP Response Header

Source/WebCore:

Parsing the "Access-Control-Expose-Headers" in the XMLHTTPRequest response header.
If the custom response-header is part of Access-Control-Expose-Headers, then consider that custom response-header as a valid one.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-16
Reviewed by Alexey Proskuryakov.

Test: http/tests/xmlhttprequest/access-control-response-with-expose-headers.html

  • loader/CrossOriginAccessControl.cpp:

(WebCore::parseAccessControlExposeHeadersAllowList): parsing logic of Access-Control-Expose-Headers

  • loader/CrossOriginAccessControl.h:
  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::getAllResponseHeaders): checking whether the custom response-header is part of "Access-Control-Expose-Headers"
(WebCore::XMLHttpRequest::getResponseHeader): checking whether the custom response-header is part of "Access-Control-Expose-Headers"

LayoutTests:

Added test cases for Access-Control-Expose-Headers

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-16
Reviewed by Alexey Proskuryakov.

  • http/tests/xmlhttprequest/access-control-response-with-expose-headers-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-response-with-expose-headers.html: Added.
  • http/tests/xmlhttprequest/resources/access-control-response-with-expose-headers.php: Added.
10:40 AM Changeset in webkit [105075] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[GTK] Include gtk+3 in the jhbuild modules
https://bugs.webkit.org/show_bug.cgi?id=76284

Patch by Mario Sanchez Prada <msanchez@igalia.com> on 2012-01-16
Reviewed by Philippe Normand.

  • gtk/jhbuild.modules: Add some gtk+3 to the jhbuild moduleset.
10:17 AM Changeset in webkit [105074] by zeno.albisser@nokia.com
  • 8 edits in trunk/Source

[Qt] Fix QT_VERSION related warnings when building on Mac OS X
https://bugs.webkit.org/show_bug.cgi?id=76340

Source/JavaScriptCore:

This bug was caused by r104826.
As already mentioned for https://bugs.webkit.org/show_bug.cgi?id=57239
we should not use "using namespace WebCore" in header files,
because it might cause ambiguous references.
This patch reverts the changes from r104826 and r104981
and removes the "using namespace WebCore" statement from
two header files.

Reviewed by Tor Arne Vestbø.

  • wtf/Platform.h:

Source/WebKit2:

This bug was caused by r104826.
As was already mentioned for https://bugs.webkit.org/show_bug.cgi?id=57239
we should not use "using namespace WebCore" in header files,
because it might cause ambiguous references.
This patch reverts the changes from r104826 and r104981
and removes the "using namespace WebCore" statement from
two header files.

Reviewed by Tor Arne Vestbø.

  • Shared/WebLayerTreeInfo.h:

(WebKit::WebLayerUpdateInfo::WebLayerUpdateInfo):
(WebKit::WebLayerAnimation::WebLayerAnimation):

  • UIProcess/LayerTreeHostProxy.h:

(WebKit::LayerTreeHostProxy::layerByID):
(WebKit::LayerTreeHostProxy::rootLayer):
(WebKit::LayerTreeHostProxy::notifyAnimationStarted):
(WebKit::LayerTreeHostProxy::notifySyncRequired):

  • UIProcess/qt/LayerTreeHostProxyQt.cpp:
  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:
  • WebProcess/WebPage/qt/LayerTreeHostQt.h:
10:05 AM Changeset in webkit [105073] by apavlov@chromium.org
  • 55 edits
    2 copies
    1 move
    8 adds
    14 deletes in trunk/LayoutTests

[Chromium] Unreviewed, rebaseline SVG tests after r105061.

  • platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/W3C-SVG-1.1/text-text-01-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/foreignObject/text-tref-02-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/text/text-align-02-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/text/text-align-03-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/text/text-spacing-01-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.png: Added.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.txt.
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
  • platform/chromium-linux/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
  • platform/chromium-linux/svg/text/select-textLength-spacing-squeeze-2-expected.txt: Removed.
  • platform/chromium-linux/svg/text/text-path-01-b-expected.png:
  • platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt:
  • platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-mac-leopard/svg/batik/text/textAnchor-expected.png:
  • platform/chromium-mac-leopard/svg/batik/text/textProperties2-expected.png:
  • platform/chromium-mac-leopard/svg/text/text-align-01-b-expected.png:
  • platform/chromium-mac-leopard/svg/text/text-align-03-b-expected.png:
  • platform/chromium-mac-leopard/svg/text/text-tselect-02-f-expected.png:
  • platform/chromium-mac-snowleopard/svg/batik/text/textAnchor-expected.png:
  • platform/chromium-mac-snowleopard/svg/batik/text/textProperties2-expected.png:
  • platform/chromium-mac-snowleopard/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/bidi-text-anchor-direction-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-1-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-2-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-3-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/text-align-01-b-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/text-align-03-b-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/text-spacing-01-b-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/text-tselect-02-f-expected.png:
  • platform/chromium-mac-snowleopard/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt: Renamed from LayoutTests/platform/chromium/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt.
  • platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
  • platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
  • platform/chromium-win-vista/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
  • platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
  • platform/chromium-win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
  • platform/chromium-win-xp/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
  • platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-04-t-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/coords-trans-04-t-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/text-text-01-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/text-text-01-b-expected.txt:
  • platform/chromium-win/svg/batik/text/verticalTextOnPath-expected.txt:
  • platform/chromium-win/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/chromium-win/svg/custom/tref-update-expected.txt:
  • platform/chromium-win/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/chromium-win/svg/text/select-textLength-spacing-squeeze-2-expected.txt:
  • platform/chromium-win/svg/text/select-textLength-spacing-squeeze-4-expected.png:
  • platform/chromium-win/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.txt:
  • platform/chromium-win/svg/text/text-align-02-b-expected.png:
  • platform/chromium-win/svg/text/text-align-03-b-expected.png:
  • platform/chromium-win/svg/text/text-align-04-b-expected.txt:
  • platform/chromium-win/svg/text/text-align-06-b-expected.png:
  • platform/chromium-win/svg/text/text-align-06-b-expected.txt:
  • platform/chromium-win/svg/text/text-spacing-01-b-expected.png:
  • platform/chromium-win/svg/text/text-text-01-b-expected.txt:
  • platform/chromium-win/svg/text/text-tspan-01-b-expected.txt:
  • platform/chromium-win/svg/text/text-ws-01-t-expected.txt:
  • platform/chromium-win/svg/text/text-ws-02-t-expected.txt:
  • platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
  • platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:
  • platform/chromium-win/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png:
  • platform/chromium-win/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt:
  • platform/chromium/svg/text/bidi-text-anchor-direction-expected.png: Removed.
10:03 AM Changeset in webkit [105072] by danw@gnome.org
  • 2 edits in trunk/Tools

Add myself as a committer

Unreviewed

  • Scripts/webkitpy/common/config/committers.py:
9:31 AM Changeset in webkit [105071] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: timeline record bars may overlap with the records column
https://bugs.webkit.org/show_bug.cgi?id=76387

Reviewed by Yury Semikhatsky.

  • inspector/front-end/timelinePanel.css:

(#timeline-container .split-view-sidebar-left):

9:24 AM Changeset in webkit [105070] by apavlov@chromium.org
  • 5 edits in trunk

Web Inspector: styles sidebar rendering is broken
https://bugs.webkit.org/show_bug.cgi?id=76065

Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertiesSection):

  • inspector/front-end/elementsPanel.css:

(.styles-section .header .subtitle):
(.styles-section .properties):

LayoutTests:

  • http/tests/inspector/elements-test.js:

(initialize_ElementTest.InspectorTest.dumpSelectedElementStyles): Fix dump output due to DOM changes.

9:18 AM Changeset in webkit [105069] by kubo@profusion.mobi
  • 2 edits in trunk/Tools

Unreviewed; fix the build when --as-needed and --no-copy-dt-needed-entries are passed to the linker.

Some recent versions of a few Linux distributions have started passing
--as-needed and --no-copy-dt-needed-entries by default to the linker,
which broke the build when SHARED_CORE was turned on, as libwtf_efl.so
needed a few symbols from libjavascriptcore_efl.so.

  • DumpRenderTree/efl/CMakeLists.txt: Explicitly pass WTF_LIBRARY_NAME

before JavaScriptCore_LIBRARY_NAME in DumpRenderTree_LIBRARIES so the
libraries are searched in the right order by the linker.

9:17 AM Changeset in webkit [105068] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

[Qt] Inremental build problem revealed by https://bugs.webkit.org/show_bug.cgi?id=74455

Reviewed by Tor Arne Vestbø.

  • DerivedSources.pri: supplemental_dependency.tmp must depends on idl files too.
8:56 AM Changeset in webkit [105067] by pfeldman@chromium.org
  • 13 edits in trunk

Web Inspector: do not merge iframes into a single DOM hierarchy.
https://bugs.webkit.org/show_bug.cgi?id=76383

Reviewed by Timothy Hatcher.

Source/WebCore:

  • inspector/DOMEditor.h:
  • inspector/Inspector.json:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::unbind):
(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::innerFirstChild):
(WebCore::InspectorDOMAgent::innerParentNode):

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
(WebInspector.CSSStyleModel.prototype.setRuleSelector):
(WebInspector.CSSStyleModel.prototype.addRule.callback):
(WebInspector.CSSStyleModel.prototype.addRule):
(WebInspector.CSSStyleModel.prototype._ownerDocumentId):

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMNode):
(WebInspector.DOMNode.prototype.getChildNodes):
(WebInspector.DOMNode.prototype._insertChild):
(WebInspector.DOMNode.prototype._setChildrenPayload):
(WebInspector.DOMDocument):
(WebInspector.DOMAgent.prototype._setDetachedRoot):

  • inspector/front-end/ElementsTreeOutline.js:

LayoutTests:

  • http/tests/inspector/elements-test.js:

(initialize_ElementTest.InspectorTest.findNode.processChildren):

  • inspector/console/console-dirxml-expected.txt:
  • inspector/console/console-tests-expected.txt:
  • inspector/elements/set-outer-html-body.html:
  • inspector/styles/styles-iframe.html:
8:47 AM Changeset in webkit [105066] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: setCurrentFocusElement should not update selection when focus is moved to text field or text area.
https://bugs.webkit.org/show_bug.cgi?id=76384

Reviewed by Timothy Hatcher.

  • inspector/front-end/JavaScriptOutlineDialog.js:

(WebInspector.JavaScriptOutlineDialog):

  • inspector/front-end/UIUtils.js:

(WebInspector._isTextEditingElement):
(WebInspector.setCurrentFocusElement):

8:13 AM Changeset in webkit [105065] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK] set audio resources path in NRTW
https://bugs.webkit.org/show_bug.cgi?id=76380

Reviewed by Martin Robinson.

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

(GtkPort.setup_environ_for_server): Set $AUDIO_RESOURCES_PATH so
the uninstalled audio resources are used during webaudio tests.

8:08 AM Changeset in webkit [105064] by Philippe Normand
  • 5 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r105061.

  • platform/gtk/svg/carto.net/colourpicker-expected.txt:
  • platform/gtk/svg/carto.net/combobox-expected.txt:
  • platform/gtk/svg/carto.net/slider-expected.txt:
  • platform/gtk/svg/carto.net/textbox-expected.txt:
8:00 AM Changeset in webkit [105063] by Philippe Normand
  • 1 edit
    10 adds in trunk/LayoutTests

Unreviewed, GTK baselines for new tests.

  • platform/gtk/css2.1/20110323/border-collapse-offset-002-expected.txt: Added.
  • platform/gtk/css2.1/20110323/outline-color-applies-to-008-expected.txt: Added.
  • platform/gtk/fast/borders/border-image-slice-constrained-expected.txt: Added.
  • platform/gtk/fast/text/unicode-variation-selector-expected.txt: Added.
  • platform/gtk/http/tests/media/video-buffering-repaints-controls-expected.txt: Added.
  • platform/gtk/media/video-colorspace-yuv420-expected.txt: Added.
  • platform/gtk/media/video-colorspace-yuv422-expected.txt: Added.
  • platform/gtk/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt: Added.
  • platform/gtk/svg/filters/filter-refresh-expected.txt: Added.
6:28 AM Changeset in webkit [105062] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[Qt] Remove references to PagePointer in the FrameNetworkingContext
https://bugs.webkit.org/show_bug.cgi?id=76342

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-16
Reviewed by Simon Hausmann.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::createNetworkingContext):

  • WebProcess/qt/QtNetworkAccessManager.cpp:

(WebKit::QtNetworkAccessManager::obtainOriginatingWebPage):

  • WebProcess/qt/QtNetworkAccessManager.h:
6:04 AM Changeset in webkit [105061] by Nikolas Zimmermann
  • 38 edits in trunk

Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Source/WebCore:

Enable simple code path in SVGTextMetricsBuilder, allowing fast-measurement of simple text.
This affects the geometry of several <text> elements, thus several tests need rebaselining.

  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::advance):
(WebCore::SVGTextMetricsBuilder::advanceComplexText):

LayoutTests:

Update some test results after enabling the simple code path to measure SVG text.

  • platform/mac/svg/W3C-SVG-1.1/animate-elem-06-t-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/animate-elem-06-t-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/text-text-01-b-expected.txt:
  • platform/mac/svg/batik/text/smallFonts-expected.png:
  • platform/mac/svg/batik/text/textAnchor-expected.txt:
  • platform/mac/svg/carto.net/window-expected.png:
  • platform/mac/svg/carto.net/window-expected.txt:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/mac/svg/custom/text-repaint-including-stroke-expected.png:
  • platform/mac/svg/custom/use-clipped-hit-expected.txt:
  • platform/mac/svg/custom/use-detach-expected.png:
  • platform/mac/svg/custom/use-detach-expected.txt:
  • platform/mac/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-1-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-2-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-3-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.txt:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.txt:
  • platform/mac/svg/text/text-align-01-b-expected.png:
  • platform/mac/svg/text/text-align-01-b-expected.txt:
  • platform/mac/svg/text/text-align-02-b-expected.txt:
  • platform/mac/svg/text/text-align-04-b-expected.txt:
  • platform/mac/svg/text/text-align-06-b-expected.png:
  • platform/mac/svg/text/text-align-06-b-expected.txt:
  • platform/mac/svg/text/text-deco-01-b-expected.txt:
  • platform/mac/svg/text/text-fonts-01-t-expected.txt:
  • platform/mac/svg/text/text-spacing-01-b-expected.png:
  • platform/mac/svg/text/text-text-04-t-expected.png:
  • platform/mac/svg/text/text-text-05-t-expected.png:
  • platform/mac/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
  • platform/mac/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
  • platform/mac/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:
5:44 AM Changeset in webkit [105060] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: CodeGeneratorInspector.py: generate array types.
https://bugs.webkit.org/show_bug.cgi?id=75284

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-16
Reviewed by Yury Semikhatsky.

New classes are generated for ecah array type instance. Some includes
and ifdefs are fixed.

  • inspector/CodeGeneratorInspector.py:

(ArrayBinding):
(ArrayBinding.get_code_generator):
(ArrayBinding.get_code_generator.CodeGenerator):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.call_generate_type_builder):
(ArrayBinding.get_code_generator.CodeGenerator.generate_forward_declaration):
(ArrayBinding.get_code_generator.CodeGenerator.register_use):
(ArrayBinding.get_in_c_type_text):
(ArrayBinding.get_setter_value_expression_pattern):
(ArrayBinding.reduce_to_raw_type):
(RawTypeBinding):
(RawTypeBinding.init):
(RawTypeBinding.get_code_generator):
(RawTypeBinding.get_in_c_type_text):
(RawTypeBinding.get_setter_value_expression_pattern):
(RawTypeBinding.reduce_to_raw_type):
(TypeData.init):
(TypeData.get_binding):

  • inspector/ConsoleMessage.cpp:
  • inspector/InspectorValues.h:
5:40 AM Changeset in webkit [105059] by Carlos Garcia Campos
  • 4 edits in trunk

[GTK] Update NEWS and configure.ac for 1.7.4 release
https://bugs.webkit.org/show_bug.cgi?id=76375

Reviewed by Philippe Normand.

.:

  • configure.ac: Bumped version number.

Source/WebKit/gtk:

  • NEWS: Added release notes for 1.7.4.
5:35 AM Changeset in webkit [105058] by pfeldman@chromium.org
  • 5 edits
    3 adds in trunk

Web Inspector: editing body multiplies head
https://bugs.webkit.org/show_bug.cgi?id=62272

Patch by Pavel Feldman <pfeldman@chromium.org> on 2012-01-15
Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: inspector/elements/set-outer-html-body.html

  • inspector/DOMEditor.cpp:

(WebCore::DOMEditor::patchDocument):
(WebCore::DOMEditor::patchNode):
(WebCore::DOMEditor::innerPatchChildren):
(WebCore::DOMEditor::insertBefore):

  • inspector/DOMEditor.h:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::setOuterHTML):

LayoutTests:

  • inspector/elements/resources/set-outer-html-body-iframe.html: Added.
  • inspector/elements/set-outer-html-body-expected.txt: Added.
  • inspector/elements/set-outer-html-body.html: Added.
5:08 AM Changeset in webkit [105057] by Nikolas Zimmermann
  • 15 edits in trunk/Source/WebCore

Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Change the way we store x/y/dx/dy/rotate values for a <text> element and its ancestors.

SVGTextLayoutAttributesBuilder used to hold a Vector<float> for x/y/dx/dy/rotate, each as big
as the whole text subtree length. For each character, that has an absolute position, or rotation
the value was stored in this list. For all other characters a special empty value marker was stored.

This is highly inefficient, and is now replaced with a HashMap<unsigned, SVGCharacterData> where
SVGCharacterData is a struct, holding float x/y/dx/dy/rotate. The code is now optimized for the
common case, where only a few characters actually specify such values, eg:
<text x="50" y="90">looooong text<tspan x="50" y="30">abc</tspan></text>.

NOTE: There are still some inefficiencies in this patch (especially the copying of SVGTextLayoutAttributes).
To keep the patch size smaller, I decided to fix this in another patch, and only fix the memory issue with this patch.

This reduces the memory consumption from 35MB to 10MB on the attached testcase in bug 65711.

Doesn't affect any test, yet. A follow-up commit will enable the usage of the simple code path, using WidthIterator,
in SVGTextMetricsBuilder, which will result in several layout test changes, because of geometry changes.

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::RenderSVGInlineText):
(WebCore::RenderSVGInlineText::characterStartsNewTextChunk):

  • rendering/svg/RenderSVGInlineText.h:

(WebCore::RenderSVGInlineText::layoutAttributes):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::layout):
(WebCore::recursiveCollectLayoutAttributes):
(WebCore::RenderSVGText::rebuildLayoutAttributes):

  • rendering/svg/RenderSVGText.h:
  • rendering/svg/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
(WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
(WebCore::SVGRootInlineBox::closestLeafChildForPosition):
(WebCore::swapItemsInLayoutAttributes):
(WebCore::findFirstAndLastAttributesInVector):
(WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):

  • rendering/svg/SVGTextLayoutAttributes.cpp:

(WebCore::SVGTextLayoutAttributes::clear):
(WebCore::dumpSVGCharacterDataMapValue):
(WebCore::SVGTextLayoutAttributes::dump):

  • rendering/svg/SVGTextLayoutAttributes.h:

(WebCore::SVGTextLayoutAttributes::characterDataMap):

  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:

(WebCore::SVGTextLayoutAttributesBuilder::SVGTextLayoutAttributesBuilder):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextRenderer):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForWholeTree):
(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForTextRenderer):
(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForWholeTree):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesIfNeeded):
(WebCore::processRenderSVGInlineText):
(WebCore::SVGTextLayoutAttributesBuilder::collectTextPositioningElements):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributes):
(WebCore::updateCharacterData):
(WebCore::SVGTextLayoutAttributesBuilder::fillCharacterDataMap):

  • rendering/svg/SVGTextLayoutAttributesBuilder.h:

(WebCore::SVGTextLayoutAttributesBuilder::clearTextPositioningElements):

  • rendering/svg/SVGTextLayoutEngine.cpp:

(WebCore::SVGTextLayoutEngine::updateRelativePositionAdjustmentsIfNeeded):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):

  • rendering/svg/SVGTextLayoutEngine.h:

(WebCore::SVGTextLayoutEngine::layoutAttributes):

  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::advance):
(WebCore::SVGTextMetricsBuilder::advanceComplexText):
(WebCore::SVGTextMetricsBuilder::measureTextRenderer):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):

5:00 AM Changeset in webkit [105056] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

CSSCanvasValue can't be renamed, enforce this at compile-time.
<http://webkit.org/b/76352>

Reviewed by Antti Koivisto.

Have the CSSCanvasValue constructor take the name as an argument instead of
having a setName() that's only called from one place in CSSParser.

  • css/CSSCanvasValue.h:

(WebCore::CSSCanvasValue::create):
(WebCore::CSSCanvasValue::CSSCanvasValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseCanvas):

4:57 AM Changeset in webkit [105055] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

CSSStyleSelector: Dodge parser when creating default LTR/RTL declarations.
<http://webkit.org/b/76374>

Reviewed by Antti Koivisto.

Pass CSSValueLtr/CSSValueRtl directly to setProperty() instead of parsing "ltr"/"rtl".

  • css/CSSStyleSelector.cpp:

(WebCore::leftToRightDeclaration):
(WebCore::rightToLeftDeclaration):

4:25 AM Changeset in webkit [105054] by Carlos Garcia Campos
  • 4 edits in trunk/Source

Unreviewed. Fix make distcheck.

Source/JavaScriptCore:

  • GNUmakefile.list.am: Fix typo.

Source/WebCore:

  • GNUmakefile.list.am: Add missing files.
4:19 AM Changeset in webkit [105053] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] ldflags and cflags should take precedence over the existing flags in gtkdoc.py
https://bugs.webkit.org/show_bug.cgi?id=76369

Reviewed by Xan Lopez.

If there's an installed version of webkit and there are new
symbols in the build tree, gtkdoc-scanobj fails due to undefined
references, because the env ldflags are given before the local
ones.

  • gtk/gtkdoc.py:

(GTKDoc._run_gtkdoc_scangobj):

4:05 AM Changeset in webkit [105052] by rolandsteiner@chromium.org
  • 3 edits in trunk/Source/WebCore

CSSStyleSelector constructor and appendAuthorStylesheets() contain duplicated code
https://bugs.webkit.org/show_bug.cgi?id=76043

Re-use appendAuthorStylesheets() from within CSSStyleSelector constructor.

Reviewed by Antti Koivisto.

No new tests. (refactoring)

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::CSSStyleSelector):

  • css/StyleSheetList.h:

(WebCore::StyleSheetList::vector):

3:40 AM UsingGitWithWebKit edited by peter@chromium.org
Revert spam-change (diff)
3:39 AM BuildBot edited by peter@chromium.org
Revert spam-change (diff)
3:32 AM Changeset in webkit [105051] by commit-queue@webkit.org
  • 2 edits
    2 deletes in trunk/Source/WebKit/chromium

Unreviewed, rolling out r105040.
http://trac.webkit.org/changeset/105040
https://bugs.webkit.org/show_bug.cgi?id=76373

Breaks Win (dbg) canary builder (Requested by apavlov on
#webkit).

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

  • WebKit.gypi:
  • tests/DispatchEventTest.cpp: Removed.
  • tests/data/event_target.html: Removed.
3:31 AM Changeset in webkit [105050] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk

[crash] Renderer crashes when spell checking a disabled input field.
https://bugs.webkit.org/show_bug.cgi?id=75941

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-16
Reviewed by Hajime Morita.

.:

  • ManualTests/editing-disabled-node-replace-crash.html: Added.

Source/WebCore:

We confirm the selection is editable before replacing text.

Tests: ManualTests/editing-disabled-node-replace-crash.html

  • editing/Editor.cpp:

(WebCore::Editor::replaceSelectionWithFragment):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::doApply):

3:28 AM Changeset in webkit [105049] by commit-queue@webkit.org
  • 9 edits in trunk/Source

Fix compilation errors on build-webkit --debug --no-svg --no-svg-fonts --no-svg-dom-objc-bindings on mac.
https://bugs.webkit.org/show_bug.cgi?id=75865

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-16
Reviewed by Hajime Morita.

Source/WebCore:

  • WebCore.exp.in:
  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyDisplay::isValidDisplayValue):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::imageSizeForRenderer):

  • platform/graphics/FontFastPath.cpp:

(WebCore::Font::drawGlyphBuffer):

  • rendering/FilterEffectRenderer.cpp:
  • svg/SVGElementInstance.idl:

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _pauseSVGAnimation:onSMILNode:atTime:]):

3:09 AM Changeset in webkit [105048] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Compilation error on build-webkit --debug --no-request-animation-frame on mac.
https://bugs.webkit.org/show_bug.cgi?id=75875

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-16
Reviewed by Hajime Morita.

  • dom/Document.cpp:

(WebCore::Document::windowScreenDidChange):

3:04 AM Changeset in webkit [105047] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, mark two inspector/debugger tests as SLOW on Linux Debug.

  • platform/chromium/test_expectations.txt:
2:55 AM Changeset in webkit [105046] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, suppres webaudio/gain.html failures on Windows.

  • platform/chromium/test_expectations.txt:
2:51 AM Changeset in webkit [105045] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Web Inspector: Fix GoToLineDialog and extract common dialog functionality.
https://bugs.webkit.org/show_bug.cgi?id=69341

Unreviewed trivial buildfix/typo fix after r105043.

  • inspector/front-end/WebKit.qrc:
2:23 AM Changeset in webkit [105044] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Solaris Studio supports alignment macros too
https://bugs.webkit.org/show_bug.cgi?id=75453

Patch by Pavel Heimlich <tropikhajma@gmail.com> on 2012-01-16
Reviewed by Hajime Morita.

  • wtf/Alignment.h:
1:56 AM Changeset in webkit [105043] by vsevik@chromium.org
  • 7 edits
    1 move
    1 add in trunk/Source/WebCore

Web Inspector: Fix GoToLineDialog and extract common dialog functionality.
https://bugs.webkit.org/show_bug.cgi?id=69341

Fixed dialog: in old implementation dialog never hides if you press mouse button
on Go button and release it somewhere else.
Dialog functionality extracted to be used for search dialog.

Reviewed by Pavel Feldman.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.sh:
  • inspector/front-end/Dialog.js: Added.

(WebInspector.Dialog):
(WebInspector.Dialog.show):
(WebInspector.Dialog.prototype._hide):
(WebInspector.Dialog.prototype._onFocus):
(WebInspector.Dialog.prototype._doFocus):
(WebInspector.Dialog.prototype._position):
(WebInspector.Dialog.prototype._onKeyDown):
(WebInspector.Dialog.prototype._onClick):
(WebInspector.DialogDelegate):
(WebInspector.DialogDelegate.prototype.get defaultFocusedElement):
(WebInspector.DialogDelegate.prototype.get okButton):
(WebInspector.DialogDelegate.prototype.onAction):

  • inspector/front-end/GoToLineDialog.js:

(WebInspector.GoToLineDialog):
(WebInspector.GoToLineDialog._show):
(WebInspector.GoToLineDialog.prototype.get defaultFocusedElement):
(WebInspector.GoToLineDialog.prototype.get okButton):
(WebInspector.GoToLineDialog.prototype.onAction):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/dialog.css: Renamed from Source/WebCore/inspector/front-end/goToLineDialog.css.

(.dialog-glass-pane):
(.dialog):
(.dialog-contents):
(.go-to-line-dialog input):
(.go-to-line-dialog button):
(.go-to-line-dialog button:active):

  • inspector/front-end/inspector.html:
1:41 AM Changeset in webkit [105042] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit/efl

[EFL] Build fix when using pango as font backends.
https://bugs.webkit.org/show_bug.cgi?id=76368

Unreviewed build fix.

  • ewk/ewk_view.cpp: include RefPtrCairo.h
1:37 AM Changeset in webkit [105041] by jochen@chromium.org
  • 7 edits in trunk

ScriptRunner should also keep references to pending async scripts
https://bugs.webkit.org/show_bug.cgi?id=76350

Reviewed by Adam Barth.

Source/WebCore:

The CachedResourceLoader only keeps a raw pointer to a ScriptElement.
If an async ScriptElement is removed from the document before it is
executed, it might be garbage collected before the script is loaded, so
it's never run.

By making the ScriptRunner keep an explicit reference to the
ScriptElement while it's loading (as is done for sync ScriptElements),
we can guarantee that the ScriptElement lives until it is executed.

No more flaky timeouts: http/tests/misc/async-script.html:

  • dom/ScriptElement.cpp:

(WebCore::ScriptElement::prepareScript):
(WebCore::ScriptElement::notifyFinished):

  • dom/ScriptRunner.cpp:

(WebCore::ScriptRunner::~ScriptRunner):
(WebCore::ScriptRunner::queueScriptForExecution):
(WebCore::ScriptRunner::notifyScriptReady):

  • dom/ScriptRunner.h:

(WebCore::ScriptRunner::hasPendingScripts):

LayoutTests:

  • http/tests/misc/async-script.html:
  • platform/qt/Skipped: unskip http/tests/misc/async-script.html
1:23 AM Changeset in webkit [105040] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk/Source/WebKit/chromium

Reland chromium event dispatch test from https://bugs.webkit.org/show_bug.cgi?id=72988
https://bugs.webkit.org/show_bug.cgi?id=73837

The original patch had a mistake that caused it to fail (not sure how I
missed that or why the bots didn't catch it).

Patch by Dave Michael <dmichael@chromium.org> on 2012-01-16
Reviewed by Hajime Morita.

  • WebKit.gypi:
  • tests/DispatchEventTest.cpp: Added.

(WebKit::MockListener::MockListener):
(WebKit::MockListener::~MockListener):
(WebKit::MockListener::events):
(WebKit::DispatchEventTest::DispatchEventTest):
(WebKit::DispatchEventTest::TearDown):
(WebKit::DispatchEventTest::createMessageEvent):
(WebKit::TEST_F):

  • tests/data/event_target.html: Added.
1:16 AM Changeset in webkit [105039] by reni@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix; added WebCore.exp.in changes lost in r105036.

  • WebCore.exp.in:
12:47 AM Changeset in webkit [105038] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

ScriptRunner should also keep references to pending async scripts
https://bugs.webkit.org/show_bug.cgi?id=76350

  • platform/qt/Skipped: Skip http/tests/misc/async-script.html until fix.
12:42 AM Changeset in webkit [105037] by yuqiang.xian@intel.com
  • 6 edits in trunk/Source/JavaScriptCore

Build fix on 32bit if verbose debug is enabled in DFG
https://bugs.webkit.org/show_bug.cgi?id=76351

Reviewed by Hajime Morita.

Mostly change "%lu" to "%zu" to print a "size_t" variable.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::endBasicBlock):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::parseCodeBlock):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::predictArgumentTypes):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

Jan 15, 2012:

11:33 PM Changeset in webkit [105036] by commit-queue@webkit.org
  • 9 edits in trunk/Source

Add DeviceOrientationEvent.absolute
https://bugs.webkit.org/show_bug.cgi?id=51742

Patch by Xinchao He <xinchao.he@intel.com> on 2012-01-15
Reviewed by Darin Fisher.

This patch add the DeviceOrientationEvent.absolute to follow the
latest w3c device orientation event spec.
http://www.w3.org/TR/orientation-event/

Source/WebCore:

  • bindings/js/JSDeviceOrientationEventCustom.cpp:

(WebCore::JSDeviceOrientationEvent::absolute):
(WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):

  • bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:

(WebCore::V8DeviceOrientationEvent::absoluteAccessorGetter):
(WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):

  • dom/DeviceOrientation.cpp:

(WebCore::DeviceOrientation::create):
(WebCore::DeviceOrientation::DeviceOrientation):
(WebCore::DeviceOrientation::absolute):
(WebCore::DeviceOrientation::canProvideAbsolute):

  • dom/DeviceOrientation.h:
  • dom/DeviceOrientationEvent.idl:

Source/WebKit/chromium:

  • public/WebDeviceOrientation.h:

(WebKit::WebDeviceOrientation::WebDeviceOrientation):
(WebKit::WebDeviceOrientation::canProvideAbsolute):
(WebKit::WebDeviceOrientation::absolute):

  • src/WebDeviceOrientation.cpp:

(WebKit::WebDeviceOrientation::WebDeviceOrientation):
(WebKit::WebDeviceOrientation::operator=):
(WebKit::WebDeviceOrientation::operator PassRefPtr<WebCore::DeviceOrientation>):

8:03 PM Changeset in webkit [105035] by fpizlo@apple.com
  • 5 edits
    1 add in trunk/Source/JavaScriptCore

The C calling convention logic in DFG::SpeculativeJIT should be available even
when not generating code for the DFG speculative path
https://bugs.webkit.org/show_bug.cgi?id=76355

Reviewed by Dan Bernstein.

Moved all of the logic for placing C call arguments into the right place (stack
or registers) into a new class, DFG::CCallHelpers. This class inherits from
AssemblyHelpers, another DFG grab-bag of helper functions. I could have moved
this code into AssemblyHelpers, but decided against it, because I wanted to
limit the number of methods each class in the JIT has. Hence now we have a
slightly odd organization of JIT classes in DFG: MacroAssembler (basic instruction
emission) <= AssemblyHelpers (some additional JS smarts) <= CCallHelpers
(understands calls to C functions) <= JITCompiler (can compile a graph to machine
code). Each of these except for JITCompiler can be reused for stub compilation.

  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGCCallHelpers.h: Added.

(JSC::DFG::CCallHelpers::CCallHelpers):
(JSC::DFG::CCallHelpers::resetCallArguments):
(JSC::DFG::CCallHelpers::addCallArgument):
(JSC::DFG::CCallHelpers::setupArguments):
(JSC::DFG::CCallHelpers::setupArgumentsExecState):
(JSC::DFG::CCallHelpers::setupArgumentsWithExecState):
(JSC::DFG::CCallHelpers::setupTwoStubArgs):
(JSC::DFG::CCallHelpers::setupStubArguments):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::JITCompiler):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):

4:57 PM Changeset in webkit [105034] by kling@webkit.org
  • 1 edit in trunk/Source/WebCore/ChangeLog

Fix wrong bug URL in ChangeLog.

3:18 PM Changeset in webkit [105033] by macpherson@chromium.org
  • 5 edits in trunk/Source/WebCore

Remove external references to CSSPrimitiveValue::UnitTypes enum.
https://bugs.webkit.org/show_bug.cgi?id=76229

Reviewed by Darin Adler.

No new tests / refactoring only.

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::addFontFaceRule):

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::addStops):
(WebCore::positionFromValue):
(WebCore::CSSGradientValue::isCacheable):
(WebCore::CSSRadialGradientValue::resolveRadius):
(WebCore::CSSRadialGradientValue::createGradient):

  • css/CSSPrimitiveValue.h:

(WebCore::CSSPrimitiveValue::isUnitTypeLength):
(WebCore::CSSPrimitiveValue::isFontRelativeLength):
(WebCore::CSSPrimitiveValue::isIdent):
(WebCore::CSSPrimitiveValue::isNumber):
(WebCore::CSSPrimitiveValue::isPercentage):
(WebCore::CSSPrimitiveValue::isString):
(WebCore::CSSPrimitiveValue::isURI):

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyLength::applyValue):
(WebCore::ApplyPropertyBorderRadius::applyValue):
(WebCore::ApplyPropertyFontSize::applyValue):
(WebCore::ApplyPropertyCursor::applyValue):
(WebCore::ApplyPropertyPageSize::applyValue):
(WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
(WebCore::ApplyPropertyZoom::applyValue):

3:08 PM BuildBot edited by gulendekorasyon@gmail.com
(diff)
3:07 PM WikiStart edited by gulendekorasyon@gmail.com
(diff)
3:06 PM UsingGitWithWebKit edited by gulendekorasyon@gmail.com
(diff)
3:02 PM WikiStart edited by gulendekorasyon@gmail.com
(diff)
12:14 PM Changeset in webkit [105032] by commit-queue@webkit.org
  • 11 edits in trunk

Fix compilation errors on build-webkit --debug --no-video on mac.
https://bugs.webkit.org/show_bug.cgi?id=75867

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-15
Reviewed by Philippe Normand.

Source/JavaScriptCore:

Make ENABLE_VIDEO_TRACK conditional on ENABLE_VIDEO, video track feature
doesn't build without video.

  • wtf/Platform.h:

Source/WebCore:

  • Some exported HTMLMediaElement symbols were guarded by FULLSCREEN_API feature instead of VIDEO.
  • Unused parameter warning in CanvasRenderingContext::wouldTaintOrigin().
  • RenderThemeMac::shouldShowPlaceholderWhenFocused() implementation wrongly guarded by VIDEO feature.
  • WebCore.exp.in:
  • html/canvas/CanvasRenderingContext.cpp:

(WebCore::CanvasRenderingContext::wouldTaintOrigin):

  • rendering/RenderThemeMac.mm:

Source/WebKit/mac:

  • WebChromeClient::fullScreenRendererChanged() declaration wrongly guarded by VIDEO feature instead of FULLSCREEN_API.
  • _isAnyMoviePlaying implementation depends on VIDEO.
  • WebCoreSupport/WebChromeClient.h:
  • WebView/WebFullScreenController.mm:

(-[WebFullScreenController _isAnyMoviePlaying]):

Tools:

Add --[no-]video-track to build-webkit, since video track feature
depends on video.

  • Scripts/build-webkit:
11:42 AM Changeset in webkit [105031] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

CSSParser: Fix failing assertion below BorderImageQuadParseContext.
<http://webkit.org/b/76343> and <rdar://problem/10584969>

Reviewed by Antti Koivisto.

No longer asserts: fast/borders/inline-mask-overlay-image-outset-vertical-rl.html

  • css/CSSParser.cpp:

(WebCore::BorderImageSliceParseContext::commitBorderImageSlice):
(WebCore::BorderImageQuadParseContext::commitBorderImageQuad):

Clone CSSValues by copying the RefPtrs instead of going through
the CSSValuePool's create-from-double factory. This prevents an
assertion when the incoming value is CSSValueAuto.

11:01 AM WikiStart edited by robert@roberthogan.net
(diff)
9:17 AM Changeset in webkit [105030] by robert@webkit.org
  • 6 edits
    2 adds in trunk

<embed> width and height properties propagate to parent object node
https://bugs.webkit.org/show_bug.cgi?id=17688

Reviewed by Eric Seidel.

Source/WebCore:

Test: fast/images/embed-does-not-propagate-dimensions-to-object-ancestor.html

WebKit seems to have inherited this behaviour from KHTML. When the width/height
of an <embed> element is set, it propagates the values up to any parent <object>
element. There doesn't seem to be any good reason for this and it is not consistent
with the behaviour of Firefox and Opera.

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::insertedIntoDocument):
(WebCore::HTMLEmbedElement::attributeChanged): Removed

  • html/HTMLEmbedElement.h:

(WebCore::HTMLEmbedElement::attributeChanged): Removed

LayoutTests:

  • fast/dom/insertedIntoDocument-child-expected.txt:
  • fast/dom/insertedIntoDocument-sibling-expected.txt: These tests were added by http://trac.webkit.org/changeset/81611. The fact that an <embed> element inserted into the document no longer passes its height/width up to its parent object node seems to prevent the node getting removed by a simple garbage collection now so the <embed> added by the test is still there at the end, creating the trailing spaces. This is consistent with Opera's treatment of the test, FF is entirely different - it doesn't add the embed node in the first place. So given that the purpose of the test is to cause a crash (?), the change in result seems benign.
  • fast/images/embed-does-not-propagate-dimensions-to-object-ancestor-expected.txt: Added.
  • fast/images/embed-does-not-propagate-dimensions-to-object-ancestor.html: Added. This tests that the width/height for an embed element does not get propagated to the parent object.
6:20 AM WikiStart edited by gulendekorasyon@gmail.com
(diff)
5:48 AM Changeset in webkit [105029] by robert@webkit.org
  • 5 edits in trunk/Source/WebCore

compareBorders() is called too often during painting
https://bugs.webkit.org/show_bug.cgi?id=73349

Reviewed by Julien Chaffraix.

Collapsed borders are re-calculated every time they are painted.
This is unnecessary, they only change with the layout or style so calculate and
cache them whenever the layout or style changes and use the cached values when
painting. The cache is stored in the table section so that the memory footprint
of a table is only increased when it has collapsing borders.

The gain in performance here consists of skipping collapsed border computation
during painting. The only path that incurs a small performance penalty is the
additional get/set on the cache when a collapsed border is computed. This penalty only applies
during style change, layout, or when the width of the table is calculated. The computed
border value is not stored in the cache when it has been calculated without its color
for borderHalfStart and co., so that code path is unaffected by this change.

No new tests, covered by existing collapsed border tests.

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::willBeDestroyed): remove entries from collapsed border cache
(WebCore::RenderTableCell::collapsedStartBorder):

Compute, and also cache if the full border including color was computed.

(WebCore::RenderTableCell::computeCollapsedStartBorder):
(WebCore::RenderTableCell::collapsedEndBorder): ditto
(WebCore::RenderTableCell::computeCollapsedEndBorder):
(WebCore::RenderTableCell::collapsedBeforeBorder): ditto
(WebCore::RenderTableCell::computeCollapsedBeforeBorder):
(WebCore::RenderTableCell::collapsedAfterBorder): ditto
(WebCore::RenderTableCell::computeCollapsedAfterBorder):
(WebCore::RenderTableCell::cachedCollapsedLeftBorder):

Inline the function since it is only called in paintCollapsedBorders and remove
includeColor as a parameter. Move the call to the table's style to the caller rather
than call it 4 times in a row. Use the cached border values directly.

(WebCore::RenderTableCell::cachedCollapsedRightBorder): ditto
(WebCore::RenderTableCell::cachedCollapsedTopBorder): ditto
(WebCore::RenderTableCell::cachedCollapsedBottomBorder): ditto
(WebCore::RenderTableCell::paintCollapsedBorders):

This function always uses the collapsed border cache now.

  • rendering/RenderTableCell.h: Make the collapsed border functions private.
  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::removeCachedCollapsedBorders): The cache is deleted by the HashMap

since it is the only owner of the cached item.

(WebCore::RenderTableSection::setCachedCollapsedBorder):
(WebCore::RenderTableSection::cachedCollapsedBorder):

This will assert if there is no cached collapsed border for the side of the
cell requested by the caller.

  • rendering/RenderTableSection.h: HashMap wouldn't let me use CollapsedBorderSide in the key value for the cache so use int instead.
Note: See TracTimeline for information about the timeline view.