⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Aug 19, 2010:

9:51 PM Changeset in webkit [65726] by commit-queue@webkit.org
  • 4 edits in trunk

2010-08-19 Vincent Scheib <scheib@chromium.org>

Reviewed by David Levin.

[chromium] TilingData::tilePositionY has typo of X where Y should be used
https://bugs.webkit.org/show_bug.cgi?id=44195

Corrected error, and rewrote functions to use for loop instead of recursion.

Unit Tests added to WebKit/chromium/tests/TilingDataTest.cpp

  • platform/graphics/chromium/TilingData.cpp: (WebCore::TilingData::tilePositionX): (WebCore::TilingData::tilePositionY):

2010-08-19 Vincent Scheib <scheib@chromium.org>

Reviewed by David Levin.

[chromium] TilingData::tilePositionY has typo of X where Y should be used
https://bugs.webkit.org/show_bug.cgi?id=44195

Unit tests added for tileSize and tilePosition.

  • tests/TilingDataTest.cpp: (WebCore::TEST):
9:28 PM Changeset in webkit [65725] by tkent@chromium.org
  • 2 edits
    1 delete in trunk/LayoutTests

2010-08-19 Kent Tamura <tkent@chromium.org>

Unreviewed, test expectation update.

Update for r65723.

  • platform/chromium-win/fast/forms/listbox-selection-expected.txt: Removed.
  • platform/chromium/test_expectations.txt:
8:57 PM Changeset in webkit [65724] by commit-queue@webkit.org
  • 5 edits
    1 copy
    3 moves
    3 adds in trunk

2010-08-19 Mihai Parparita <mihaip@chromium.org>

Reviewed by Brady Eidson.

Assertion failure when going back inside frame during onload
https://bugs.webkit.org/show_bug.cgi?id=44217

Adds a test that does a history.back() within the main frame during
onload of a child frame. If HISTORY_ALWAYS_ASYNC was set to 0, this
would crash the DRT with an assertion failure, since we hadn't called
updateForFrameLoadCompleted in the main frame yet.

(renames history-back-within-subframe to history-back-within-subframe-hash
to differentiate between the two otherwise similar tests)

  • fast/history/history-back-within-subframe-hash-expected.txt: Renamed from LayoutTests/fast/history/history-back-within-subframe-expected.txt.
  • fast/history/history-back-within-subframe-hash.html: Renamed from LayoutTests/fast/history/history-back-within-subframe.html.
  • fast/history/history-back-within-subframe-url-expected.txt: Added
  • fast/history/history-back-within-subframe-url.html: Added.
  • fast/history/resources/history-back-within-subframe-hash-2.html: Renamed from LayoutTests/fast/history/resources/history-back-within-subframe-2.html.
  • fast/history/resources/history-back-within-subframe-url-2.html: Added.
  • fast/history/resources/history-back-within-subframe-url-3.html: Added.

2010-08-19 Mihai Parparita <mihaip@chromium.org>

Reviewed by Brady Eidson.

Assertion failure when going back inside frame during onload
https://bugs.webkit.org/show_bug.cgi?id=44217

Fix assertion failure when doing a history.back() within the main frame
during onload of a child frame. This would happen when
HISTORY_ALWAYS_ASYNC was set to 0, because we would only compare the
current frame document sequence numbers when determining if we're in the
same document, instead of also recursing over child frames.

Test: fast/history/history-back-within-subframe-hash.html

  • history/HistoryItem.cpp: (WebCore::HistoryItem::hasSameDocuments):
  • history/HistoryItem.h:
  • loader/RedirectScheduler.cpp: (WebCore::RedirectScheduler::scheduleHistoryNavigation):
8:37 PM Changeset in webkit [65723] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk/LayoutTests

2010-08-19 Kenichi Ishibashi <bashi@google.com>

Reviewed by Kent Tamura.

Improve portability of fast/forms/listbox-selection.html
https://bugs.webkit.org/show_bug.cgi?id=35786

Changed to use script-tests style for improving portability.

  • For sending mouse events to the target element, calculating the item height at runtime instead using Mac-specific metrics.
  • Using mouseDown(), mouseUp(), and keyDown() to send events with modifier keys in a platform-independent way.
  • fast/forms/listbox-selection-expected.txt: Updated to match with new test.
  • fast/forms/listbox-selection.html: Modified to use script-tests style.
  • fast/forms/script-tests/listbox-selection.js: Added.
7:51 PM Changeset in webkit [65722] by commit-queue@webkit.org
  • 4 edits in trunk

2010-08-19 Balazs Kelemen <kb@inf.u-szeged.hu>

Reviewed by Antonio Gomes.

[Qt] Fix cursor change propagation
https://bugs.webkit.org/show_bug.cgi?id=44250

No functional change so new tests.

Propagate the setCursor callback to the PageClient via the HostWindow instead of preassuming
the concrete type of the ChromeClient (what was generally wrong and actually incompatible with WebKit2).

  • platform/qt/WidgetQt.cpp: (WebCore::Widget::setCursor):

2010-08-19 Balazs Kelemen <kb@inf.u-szeged.hu>

Reviewed by Antonio Gomes.

[Qt] Fix cursor change propagation
https://bugs.webkit.org/show_bug.cgi?id=44250

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::setCursor): Implemented. Propagete the callback forward to the PageClient.
6:22 PM Changeset in webkit [65721] by rniwa@webkit.org
  • 3 edits
    2 adds
    22 deletes in trunk/LayoutTests

2010-08-19 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Tony Chang.

dumpAsMarkup conversion: editing/pasteboard/4242293-1.html and editing/pasteboard/copy-paste-bidi.html
https://bugs.webkit.org/show_bug.cgi?id=44220

Converted the tests.

  • editing/pasteboard/4242293-1-expected.txt: Added.
  • editing/pasteboard/4242293-1.html:
  • editing/pasteboard/copy-paste-bidi-expected.txt: Added.
  • editing/pasteboard/copy-paste-bidi.html:
  • platform/chromium-linux/editing/pasteboard/4242293-1-expected.checksum: Removed.
  • platform/chromium-linux/editing/pasteboard/4242293-1-expected.png: Removed.
  • platform/chromium-linux/editing/pasteboard/copy-paste-bidi-expected.checksum: Removed.
  • platform/chromium-linux/editing/pasteboard/copy-paste-bidi-expected.png: Removed.
  • platform/chromium-win/editing/pasteboard/4242293-1-expected.checksum: Removed.
  • platform/chromium-win/editing/pasteboard/4242293-1-expected.png: Removed.
  • platform/chromium-win/editing/pasteboard/4242293-1-expected.txt: Removed.
  • platform/chromium-win/editing/pasteboard/copy-paste-bidi-expected.checksum: Removed.
  • platform/chromium-win/editing/pasteboard/copy-paste-bidi-expected.png: Removed.
  • platform/chromium-win/editing/pasteboard/copy-paste-bidi-expected.txt: Removed.
  • platform/mac-leopard/editing/pasteboard/4242293-1-expected.checksum: Removed.
  • platform/mac-leopard/editing/pasteboard/4242293-1-expected.png: Removed.
  • platform/mac-leopard/editing/pasteboard/copy-paste-bidi-expected.checksum: Removed.
  • platform/mac-leopard/editing/pasteboard/copy-paste-bidi-expected.png: Removed.
  • platform/mac/editing/pasteboard/4242293-1-expected.checksum: Removed.
  • platform/mac/editing/pasteboard/4242293-1-expected.png: Removed.
  • platform/mac/editing/pasteboard/4242293-1-expected.txt: Removed.
  • platform/mac/editing/pasteboard/copy-paste-bidi-expected.checksum: Removed.
  • platform/mac/editing/pasteboard/copy-paste-bidi-expected.png: Removed.
  • platform/mac/editing/pasteboard/copy-paste-bidi-expected.txt: Removed.
  • platform/qt/editing/pasteboard/4242293-1-expected.txt: Removed.
  • platform/qt/editing/pasteboard/copy-paste-bidi-expected.txt: Removed.
6:05 PM Changeset in webkit [65720] by Martin Robinson
  • 2 edits in trunk/LayoutTests

2010-08-19 Martin Robinson <mrobinson@igalia.com>

[GTK] r65681 broke a couple GTK+ a11y tests
https://bugs.webkit.org/show_bug.cgi?id=44316

  • platform/gtk/Skipped: Skip some newly failing tests.
5:58 PM Changeset in webkit [65719] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

2010-08-19 James Robinson <jamesr@chromium.org>

Unreviewed. Clean up test_expectations now that tables/hittesting/filltable-* pass on Chromium.

  • platform/chromium/test_expectations.txt:
5:47 PM Changeset in webkit [65718] by kinuko@chromium.org
  • 5 edits
    3 adds in trunk/WebKit/chromium

2010-08-19 Kinuko Yasuda <kinuko@chromium.org>

Reviewed by Darin Fisher.

Add WebKit API for FileSystem API
https://bugs.webkit.org/show_bug.cgi?id=43151

Add asynchronous FileSystem interface to WebKit API for
FileSystem API.
http://dev.w3.org/2009/dap/file-system/file-dir-sys.html

  • WebKit.gyp:
  • public/WebFileError.h: Added.
  • public/WebFileSystem.h: Added.
  • public/WebFileSystemEntry.h: Added.
  • public/WebFileSystemCallbacks.h: Added.
  • public/WebKitClient.h: (WebKit::WebKitClient::fileSystem):
  • public/WebFrameClient.h: (WebKit::WebFrameClient::openFileSystem):
5:46 PM Changeset in webkit [65717] by vangelis@chromium.org
  • 13 edits
    2 adds
    2 deletes in trunk/WebCore

2010-08-19 Vangelis Kokkevis <vangelis@chromium.org>

Reviewed by Kenneth Russell.

[chromium] Rearranging the accelerated compositing code such that the
layer rendering logic now lives in the layer classes rather than the
compositor. This lifts the restriction of having one texture per layer
and significantly cleans up the compositor code. This change mostly
resulted in a lot of code moving around files. Noteworthy changes
include:

  • Made LayerChromium a proper based class for layers that mostly handles the updates to the layer properties and superlayer / sublayer updates.
  • Introduced a new layer type, ContentLayerChromium, which handles layers that require a GraphicsContext to render their content.
  • ImageLayerChromium and VideoLayerChromium now derive from ContentLayerChromium as they share the same shader and draw function.
  • Removed TransformLayerChromium as its functionality is now replaced by the base LayerChromium class.
  • Re-arranged the order in which the members of LayerChromium are defined in the header file to form a more reasonable logical grouping.
  • Changed LayerRendererChromium to use the shader creation and drawing methods defined in the layer classes. As a result, a lot of GL code was removed from the implementation file.
  • Eliminated randomly dispersed calls to check for GL errors by a macro (GLC) which allows turning error testing on/off with a single define (DEBUG_GL_CALLS defined in LayerRendererChromium.h)
  • Replaced the previous layer render loop with two traversals of the layer hierarchy, the first to update transforms and opacity values and the second to render the layers. Eliminated global Z sorting of all layers as it was wrong. https://bugs.webkit.org/show_bug.cgi?id=44148

Test: Verified that pages using the compositor and compositor

layout tests have not regressed.

  • WebCore.gypi:
  • platform/graphics/chromium/CanvasLayerChromium.cpp: (WebCore::CanvasLayerChromium::SharedValues::SharedValues): (WebCore::CanvasLayerChromium::SharedValues::~SharedValues): (WebCore::CanvasLayerChromium::updateContents): (WebCore::CanvasLayerChromium::draw):
  • platform/graphics/chromium/CanvasLayerChromium.h: (WebCore::CanvasLayerChromium::SharedValues::canvasShaderProgram): (WebCore::CanvasLayerChromium::SharedValues::shaderSamplerLocation): (WebCore::CanvasLayerChromium::SharedValues::shaderMatrixLocation): (WebCore::CanvasLayerChromium::SharedValues::shaderAlphaLocation): (WebCore::CanvasLayerChromium::SharedValues::initialized):
  • platform/graphics/chromium/ContentLayerChromium.cpp: Added. (WebCore::ContentLayerChromium::SharedValues::SharedValues): (WebCore::ContentLayerChromium::SharedValues::~SharedValues): (WebCore::ContentLayerChromium::create): (WebCore::ContentLayerChromium::ContentLayerChromium): (WebCore::ContentLayerChromium::~ContentLayerChromium): (WebCore::ContentLayerChromium::updateContents): (WebCore::ContentLayerChromium::updateTextureRect): (WebCore::ContentLayerChromium::draw):
  • platform/graphics/chromium/ContentLayerChromium.h: Added. (WebCore::ContentLayerChromium::drawsContent): (WebCore::ContentLayerChromium::SharedValues::contentShaderProgram): (WebCore::ContentLayerChromium::SharedValues::shaderSamplerLocation): (WebCore::ContentLayerChromium::SharedValues::shaderMatrixLocation): (WebCore::ContentLayerChromium::SharedValues::shaderAlphaLocation): (WebCore::ContentLayerChromium::SharedValues::initialized):
  • platform/graphics/chromium/GraphicsLayerChromium.cpp: (WebCore::GraphicsLayerChromium::GraphicsLayerChromium): (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
  • platform/graphics/chromium/ImageLayerChromium.cpp: (WebCore::ImageLayerChromium::ImageLayerChromium): (WebCore::ImageLayerChromium::updateContents):
  • platform/graphics/chromium/ImageLayerChromium.h:
  • platform/graphics/chromium/LayerChromium.cpp: (WebCore::loadShader): (WebCore::LayerChromium::SharedValues::SharedValues): (WebCore::LayerChromium::SharedValues::~SharedValues): (WebCore::LayerChromium::LayerChromium): (WebCore::LayerChromium::~LayerChromium): (WebCore::LayerChromium::createShaderProgram): (WebCore::LayerChromium::toGLMatrix): (WebCore::LayerChromium::drawTexturedQuad): (WebCore::LayerChromium::drawDebugBorder): (WebCore::LayerChromium::prepareForDraw):
  • platform/graphics/chromium/LayerChromium.h: (WebCore::LayerChromium::getSublayers): (WebCore::LayerChromium::setPosition): (WebCore::LayerChromium::contentsDirty): (WebCore::LayerChromium::drawsContent): (WebCore::LayerChromium::updateContents): (WebCore::LayerChromium::draw): (WebCore::LayerChromium::SharedValues::quadVerticesVbo): (WebCore::LayerChromium::SharedValues::quadElementsVbo): (WebCore::LayerChromium::SharedValues::maxTextureSize): (WebCore::LayerChromium::SharedValues::borderShaderProgram): (WebCore::LayerChromium::SharedValues::borderShaderMatrixLocation): (WebCore::LayerChromium::SharedValues::borderShaderColorLocation): (WebCore::LayerChromium::SharedValues::initialized): (WebCore::LayerChromium::layerRenderer):
  • platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::LayerRendererChromium): (WebCore::LayerRendererChromium::~LayerRendererChromium): (WebCore::LayerRendererChromium::debugGLCall): (WebCore::LayerRendererChromium::useShader): (WebCore::LayerRendererChromium::drawLayers): (WebCore::LayerRendererChromium::createLayerTexture): (WebCore::LayerRendererChromium::updateLayersRecursive): (WebCore::LayerRendererChromium::drawLayersRecursive): (WebCore::LayerRendererChromium::drawLayer): (WebCore::LayerRendererChromium::checkTextureSize): (WebCore::LayerRendererChromium::initializeSharedObjects): (WebCore::LayerRendererChromium::cleanupSharedObjects):
  • platform/graphics/chromium/LayerRendererChromium.h: (WebCore::LayerRendererChromium::projectionMatrix): (WebCore::LayerRendererChromium::layerSharedValues): (WebCore::LayerRendererChromium::contentLayerSharedValues): (WebCore::LayerRendererChromium::canvasLayerSharedValues):
  • platform/graphics/chromium/TransformLayerChromium.cpp: Removed.
  • platform/graphics/chromium/TransformLayerChromium.h: Removed.
  • platform/graphics/chromium/VideoLayerChromium.cpp: (WebCore::VideoLayerChromium::VideoLayerChromium): (WebCore::VideoLayerChromium::updateContents): (WebCore::VideoLayerChromium::createTextureRect):
  • platform/graphics/chromium/VideoLayerChromium.h:
5:40 PM Changeset in webkit [65716] by Simon Fraser
  • 6 edits in trunk/WebCore

2010-08-19 Simon Fraser <Simon Fraser>

Reviewed by Sam Weinig.

Clean up some selection code
https://bugs.webkit.org/show_bug.cgi?id=44314

Change the concept of "layout" in SelectionController to "updateCaretRect", renaming
methods accordingly.

Move selection and printing methods in RenderView.h into groups.

No behavioral changes.

  • editing/SelectionController.cpp: (WebCore::SelectionController::SelectionController): (WebCore::SelectionController::setSelection): (WebCore::SelectionController::modify): (WebCore::SelectionController::setCaretRectNeedsUpdate): (WebCore::SelectionController::updateCaretRect): (WebCore::SelectionController::localCaretRect): (WebCore::SelectionController::recomputeCaretRect): Test m_caretRectNeedsUpdate first. (WebCore::SelectionController::invalidateCaretRect):
  • editing/SelectionController.h:
  • page/FrameView.cpp: (WebCore::FrameView::layout):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset):
  • rendering/RenderView.h: (WebCore::RenderView::selectionStart): (WebCore::RenderView::selectionEnd): (WebCore::RenderView::printRect): (WebCore::RenderView::setPrintRect):
5:03 PM Changeset in webkit [65715] by kinuko@chromium.org
  • 2 edits in trunk/WebKit/chromium

2010-08-19 Kinuko Yasuda <kinuko@chromium.org>

Reviewed by Jian Li.

[Chromium] Rolls Chromium DEPS forward to 56564
https://bugs.webkit.org/show_bug.cgi?id=44281

Roll Chromium DEPS forward to 56564 to include WebFileSystem
implementation changes.

  • DEPS:
4:39 PM Changeset in webkit [65714] by commit-queue@webkit.org
  • 6 edits
    5 moves
    5 deletes in trunk/LayoutTests

2010-08-19 Fady Samuel <fsamuel@chromium.org>

Reviewed by Dimitri Glazkov.

Fixed table hit testing layout test issues
https://bugs.webkit.org/show_bug.cgi?id=44204

Moved expectations to the same directory as tests.
Expectations were failing due to inconsistent eventSender behavior:
Switched to using elementFromPoint

  • platform/gtk/tables/hittesting/filltable-emptycells-expected.txt: Removed.
  • platform/gtk/tables/hittesting/filltable-levels-expected.txt: Removed.
  • platform/gtk/tables/hittesting/filltable-outline-expected.txt: Removed.
  • platform/gtk/tables/hittesting/filltable-rtl-expected.txt: Removed.
  • platform/gtk/tables/hittesting/filltable-stress-expected.txt: Removed.
  • tables/hittesting/filltable-emptycells-expected.txt: Renamed from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-emptycells-expected.txt.
  • tables/hittesting/filltable-emptycells.html:
  • tables/hittesting/filltable-levels-expected.txt: Renamed from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-levels-expected.txt.
  • tables/hittesting/filltable-levels.html:
  • tables/hittesting/filltable-outline-expected.txt: Renamed from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-outline-expected.txt.
  • tables/hittesting/filltable-outline.html:
  • tables/hittesting/filltable-rtl-expected.txt: Renamed from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-rtl-expected.txt.
  • tables/hittesting/filltable-rtl.html:
  • tables/hittesting/filltable-stress-expected.txt: Renamed from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-stress-expected.txt.
  • tables/hittesting/filltable-stress.html:
3:52 PM Changeset in webkit [65713] by ddkilzer@apple.com
  • 6 edits in trunk

BUILD FIX: Fix Mac build after Windows WebKit2 changes for Netscape Plug-ins

WebCore:

  • WebCore.exp.in:

(WebCore::ScrollView::contentsToWindow): Added export.

WebKit2:

  • WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:

(WebKit::NetscapePlugin::platformPaint): Changed frameRect() to
m_frameRect.

WebKitTools:

  • MiniBrowser/mac/BrowserWindowController.m:

(decidePolicyForNavigationAction): Updated method signature.
(decidePolicyForNewWindowAction): Updated method signature.

3:35 PM Changeset in webkit [65712] by abarth@webkit.org
  • 1 edit
    4 adds in trunk/LayoutTests

2010-08-19 Adam Barth <abarth@webkit.org>

Reviewed by Alexey Proskuryakov.

<style> inside <noscript> is parsed when JavaScript is enabled.
https://bugs.webkit.org/show_bug.cgi?id=44021

More random bugs fixed by the HTML5 parser. Time to document with a
couple tests. I added both these tests because <noscript> in <body> is
slightly different than <noscript> before <body>.

  • fast/parser/no-style-in-noscript-expected.txt: Added.
  • fast/parser/no-style-in-noscript-with-body-expected.txt: Added.
  • fast/parser/no-style-in-noscript-with-body.html: Added.
  • fast/parser/no-style-in-noscript.html: Added.
3:09 PM Changeset in webkit [65711] by ddkilzer@apple.com
  • 4 edits in trunk

BUILD FIX #3: <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled

Still trying to make Qt Linux Release minimal buildbot happy.

WebCore:

  • plugins/PluginViewNone.cpp: Compile missing methods for Qt.

WebKit/qt:

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::createPlugin): Wrap code that
handles Netscape plugins in #if ENABLE(NETSCAPE_PLUGIN_API)
and #endif.

2:59 PM Changeset in webkit [65710] by johnnyg@google.com
  • 2 edits in trunk/LayoutTests

2010-08-19 Sam Weinig <sam@webkit.org>

Rubber-stamped by Jon Honeycutt.

Add a few items in the WebKitTestRunner Skipped list.

  • platform/mac-wk2/Skipped:
2:41 PM Changeset in webkit [65709] by weinig@apple.com
  • 2 edits in trunk/LayoutTests

Add a few items in the WebKitTestRunner Skipped list.

Rubber-stamped by Jon Honeycutt.

  • platform/mac-wk2/Skipped:
2:32 PM Changeset in webkit [65708] by ddkilzer@apple.com
  • 2 edits in trunk/WebKit/qt

BUILD FIX: FrameLoaderClientQt.h should include ResourceError.h

  • WebCoreSupport/FrameLoaderClientQt.h: Include ResourceError.h.
2:25 PM Changeset in webkit [65707] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

BUILD FIX: <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled

Reviewed by Joseph Pecoraro.

  • plugins/PluginView.cpp: Added #if ENABLE(NETSCAPE_PLUGIN_API)

and #endif macros around the source to fix the Qt Linux Release
Minimal build.

2:23 PM Changeset in webkit [65706] by Adam Roben
  • 2 edits in trunk/WebKit2

Send mouse events to windowless plugins on Windows

This seems to have been the last issue blocking us from playing videos
on vimeo.com.

Fixes <http://webkit.org/b/44276> <rdar://problem/8330398> Can't click
play button in vimeo.com Flash video player in WebKit2 on Windows

Reviewed by Sam Weinig.

  • WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:

(WebKit::toNP): Added. Converts a WebMouseEvent to an NPEvent. Code
was adapted from WebCore's PluginViewWin.cpp.

(WebKit::NetscapePlugin::platformHandleMouseEvent):
(WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
(WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
Convert the WebMouseEvent to an NPEvent and send it to the plugin.

2:22 PM Changeset in webkit [65705] by Adam Roben
  • 8 edits in trunk/WebKit2

Add support for painting windowless plugins on Windows

This gets the video on the front page of vimeo.com painting (though
you can't make it play because we don't support mouse events yet).

Fixes <http://webkit.org/b/44274> <rdar://problem/8330398> Windowless
plugins don't paint in WebKit2 on Windows

Reviewed by Sam Weinig.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_GetValue): Tell the plugin that we support windowless
mode on Windows.
(WebKit::NPN_SetValue): Implemented handling of NPPVpluginWindowBool
by calling through to NetscapePlugin::setIsWindowed.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::NetscapePlugin): Added initialization of
m_isWindowed. It defaults to false on Mac and true on other platforms,
matching WebCore's PluginView.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h: Added m_isWindowed.

(WebKit::NetscapePlugin::setIsWindowed): Added standard setter.

  • WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:

(WebKit::NetscapePlugin::platformPaint): Moved Mac-specific context
translation code here from PluginView::paint.

  • WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:

(WebKit::NetscapePlugin::platformPaint): Implemented. Code was ported
from WebCore's PluginViewWin.cpp.

  • WebProcess/Plugins/Plugin.h: Updated the comment for Plugin::paint

to explain the coordinate system of the context.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::paint): Changed to translate the context from
document to window coordinates. We were previously trying to translate
to plugin-local coordinates, but this only worked for documents whose
origin was the same as the window's origin (i.e., the main frame). The
plugin takes care of any further translations needed. (Mac translates
the context into plugin-local coordinates, and Windows leaves it in
window coordinates.)

2:22 PM Changeset in webkit [65704] by Adam Roben
  • 2 edits in trunk/WebKit2

Implement PluginInfoStore::pluginsDirectories

This makes WebKit2 able to find and load Flash on Windows.

Note that we aren't yet respecting the MozillaPlugins registry key.
That's covered by <http://webkit.org/b/44271>.

Fixes <http://webkit.org/b/43510> <rdar://problem/8273827> WebKit2
should load plugins from the same directories as old-WebKit

Reviewed by Jon Honeycutt and Ada Chan.

  • UIProcess/Plugins/win/PluginInfoStoreWin.cpp:

(WebKit::parseVersionString):
(WebKit::compareVersions):
(WebKit::safariPluginsDirectory):
(WebKit::addMozillaPluginDirectories):
(WebKit::addWindowsMediaPlayerPluginDirectory):
(WebKit::addQuickTimePluginDirectory):
(WebKit::addAdobeAcrobatPluginDirectory):
(WebKit::addMacromediaPluginDirectories):
(WebKit::PluginInfoStore::pluginsDirectories):
Ported (and ever-so-slightly cleaned up) code from WebCore's
PluginDatabaseWin.cpp.

2:22 PM Changeset in webkit [65703] by Adam Roben
  • 4 edits in trunk

Call NP_GetEntryPoints before NP_Initialize on Windows

Doing otherwise will cause Flash and QuickTime to crash inside
NP_Initialize.

Fixes <http://webkit.org/b/44270> <rdar://problem/8330393> Crash in
NP_Initialize when loading QuickTime when running
plugins/embed-attributes-setting.html in WebKit2 on Windows

Reviewed by Sam Weinig.

WebKit2:

  • WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:

(WebKit::NetscapePluginModule::tryLoad): On Windows, first call
NP_GetEntryPoints, then NP_Initialize. Do the reverse on Mac to
prevent Silverlight (e.g.) from crashing (see r38858).

WebKitTools:

Test that NP_Initialize and NP_GetEntryPoints are called in the
correct order

The order differs between Mac and Windows (see r38858).

  • DumpRenderTree/TestNetscapePlugIn/main.cpp: Added a CRASH macro and

a boolean to record whether NP_GetEntryPoints has been called.
(NP_Initialize): Crash on Windows if NP_GetEntryPoints hasn't been
called yet. This matches Flash and QuickTime's behavior. Crash on Mac
if NP_GetEntryPoints has been called already. This matches
Silverlight's behavior.

2:21 PM Changeset in webkit [65702] by Adam Roben
  • 3 edits
    1 add in trunk/WebKit2

Add NetscapePluginWin.cpp

Fixes <http://webkit.org/b/44269> <rdar://problem/8330391>
NetscapePlugin.h contains functions that should be in
NetscapePluginWin.cpp

Reviewed by Sam Weinig.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h: Moved functions from

here...

  • WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: ...to here.
  • win/WebKit2.vcproj: Added NetscapePluginWin.cpp and let VS reorder

the file list.

2:21 PM Changeset in webkit [65701] by Adam Roben
  • 2 edits in trunk/WebKitTools

Make build-webkittestrunner build TestNetscapePlugIn on Windows

Fixes <http://webkit.org/b/44268> <rdar://problem/8330388>

Reviewed by Sam Weinig.

  • WebKitTestRunner/WebKitTestRunner.sln: Added TestNetscapePlugIn.

Threaded it in between ImageDiff and InjectedBundleGenerated.

2:13 PM Changeset in webkit [65700] by senorblanco@chromium.org
  • 4 edits in trunk/WebCore

2010-08-19 Stephen White <senorblanco@chromium.org>

Reviewed by Kenneth Russell.

[CHROMIUM] Assert w/canvas image draw
https://bugs.webkit.org/show_bug.cgi?id=44279

Don't use bitmap->pixelRef()->getPixels() directly; prefer
bitmap->pixels() and an SkAutoLockPixels. Also, make sure to set
the backing store state to Software when it was None. This handles
missing draws when the first call is software. Finally, remove some
spurious prepareForSoftwareDraw() calls in addPath() and beginPath().
It's really the fillPath() or strokePath() that matters.

Covered by LayoutTests/fast/canvas/arc360.html and others.

  • platform/graphics/skia/GraphicsContextSkia.cpp: (WebCore::GraphicsContext::addPath): (WebCore::GraphicsContext::beginPath): Remove spurious prepareForSoftwareDraw() calls.
  • platform/graphics/skia/ImageSkia.cpp: (WebCore::drawBitmapGLES2): Lock SkBitmap's pixels, and use ->getPixels().
  • platform/graphics/skia/PlatformContextSkia.cpp: (WebCore::PlatformContextSkia::prepareForSoftwareDraw): Switch backing store state to Software when it was None.
2:09 PM Changeset in webkit [65699] by weinig@apple.com
  • 8 edits in trunk/WebKit2

Add modifier key info to policy client functions in WebKit2
<rdar://problem/8185298>
https://bugs.webkit.org/show_bug.cgi?id=44280

Reviewed by Adam Roben.

  • UIProcess/API/C/WKAPICast.h:

Add conversion function for modifiers and rename an incorrectly named
toWK to toRef.

  • UIProcess/API/C/WKPage.h:

Add WKEventModifiers enum.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveMessage):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForNewWindowAction):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPolicyClient.cpp:

(WebKit::WebPolicyClient::decidePolicyForNavigationAction):
(WebKit::WebPolicyClient::decidePolicyForNewWindowAction):

  • UIProcess/WebPolicyClient.h:

Pipe through modifier info.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::modifiersForNavigationAction):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
Get modifier info out of the NavigationInfo class in the same manner as
WebKit1.

2:03 PM Changeset in webkit [65698] by andreas.kling@nokia.com
  • 3 edits in trunk/JavaScriptCore

2010-08-19 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Geoffrey Garen.

JSC: Move the static_cast into to(U)Int32 fast case
https://bugs.webkit.org/show_bug.cgi?id=44037

Do the static_cast<(u)int32_t> inline to avoid the function call overhead
for easily converted values (within (u)int32_t range.)

  • runtime/JSValue.cpp: (JSC::toInt32SlowCase): (JSC::toUInt32SlowCase):
  • runtime/JSValue.h: (JSC::JSValue::toInt32): (JSC::JSValue::toUInt32):
1:51 PM Changeset in webkit [65697] by ddkilzer@apple.com
  • 15 edits in trunk

<http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled

Reviewed by Joseph Pecoraro.

WebCore:

  • WebCore.exp.in:

(WebCore::HTMLPlugInElement::getNPObject): Moved from general
section into ENABLE(NETSCAPE_PLUGIN_API) section.
(WebCore::FrameView::windowClipRectForLayer): Moved from
ENABLE(NETSCAPE_PLUGIN_API) section to general section since
it's used by WebKit2.

  • plugins/PluginView.h: Added #if ENABLE(NETSCAPE_PLUGIN_API)

and #endif macros as needed to make iOS WebKit build with
NETSCAPE_PLUGIN_API disabled.

  • plugins/PluginViewNone.cpp: Ditto.

(WebCore::PluginView::platformGetValueStatic):

WebKit/mac:

  • Plugins/Hosted/HostedNetscapePluginStream.mm: Changed

USE(PLUGIN_HOST_PROCESS) to
USE(PLUGIN_HOST_PROCESS) && ENABLE(NETSCAPE_PLUGIN_API).

  • Plugins/Hosted/NetscapePluginHostManager.mm: Ditto.
  • Plugins/Hosted/NetscapePluginHostProxy.mm: Ditto.
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: Ditto.
  • Plugins/Hosted/ProxyInstance.mm: Ditto.
  • Plugins/Hosted/WebHostedNetscapePluginView.mm: Ditto.
  • WebCoreSupport/WebChromeClient.mm: Ditto.

(WebChromeClient::createWindow):

  • WebCoreSupport/WebFrameLoaderClient.mm: Ditto.

(WebFrameLoaderClient::dispatchCreatePage):

  • WebView/WebHTMLView.mm:

(needsCursorRectsSupportAtPoint): Added #if
ENABLE(NETSCAPE_PLUGIN_API) and #endif macros as needed.

  • WebView/WebView.mm:

(+[WebView _isNodeHaltedPlugin:]): Ditto.
(+[WebView _hasPluginForNodeBeenHalted:]): Ditto.
(+[WebView _restartHaltedPluginForNode:]): Ditto.

1:46 PM Changeset in webkit [65696] by ojan@chromium.org
  • 2 edits in trunk/WebKitTools

2010-08-19 Ojan Vafai <ojan@chromium.org>

Reviewed by Adam Barth.

install rietveld's upload script from a versioned url
https://bugs.webkit.org/show_bug.cgi?id=44291

autoinstall expects the file at a given URL to never change.
In order to be able to update the file, we need to be able to
change the path.

  • Scripts/webkitpy/thirdparty/init.py:
1:16 PM Changeset in webkit [65695] by johnnyg@google.com
  • 2 edits in trunk/LayoutTests

2010-08-19 John Gregg <johnnyg@google.com>

Unreviewed, chromium test expectations.

Add expected failures for caret-based pixel tests. See bug 44290.

  • platform/chromium/test_expectations.txt:
1:04 PM Changeset in webkit [65694] by ojan@chromium.org
  • 4 edits in trunk/WebKitTools

2010-08-19 Ojan Vafai <ojan@chromium.org>

Reviewed by Adam Barth.

add --webkit_patch_id to reitveld uploads
https://bugs.webkit.org/show_bug.cgi?id=44289

This is the first step in having rietveld store which
patches have been uploaded and getting rid of the
in-rietveld flag.

  • Scripts/webkitpy/common/net/rietveld.py:
  • Scripts/webkitpy/tool/mocktool.py:
  • Scripts/webkitpy/tool/steps/postcodereview.py:
12:48 PM Changeset in webkit [65693] by johnnyg@google.com
  • 8 edits
    7 adds in trunk/LayoutTests

2010-08-19 John Gregg <johnnyg@google.com>

Unreviewed, chromium rebaselines.

Add new baselines after http://trac.webkit.org/changeset/65665/

  • platform/chromium-linux/svg/custom/pattern-rotate-expected.checksum: Added.
  • platform/chromium-linux/svg/custom/pattern-rotate-expected.png: Added.
  • platform/chromium-linux/svg/transforms: Added.
  • platform/chromium-linux/svg/transforms/text-with-pattern-inside-transformed-html-expected.checksum: Added.
  • platform/chromium-linux/svg/transforms/text-with-pattern-inside-transformed-html-expected.png: Added.
  • platform/chromium-linux/svg/transforms/text-with-pattern-with-svg-transform-expected.checksum: Added.
  • platform/chromium-linux/svg/transforms/text-with-pattern-with-svg-transform-expected.png: Added.
  • platform/chromium-win/svg/custom/pattern-rotate-expected.checksum:
  • platform/chromium-win/svg/custom/pattern-rotate-expected.png:
  • platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.checksum:
  • platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
  • platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.checksum:
  • platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
  • platform/chromium/test_expectations.txt
12:32 PM Changeset in webkit [65692] by eric@webkit.org
  • 37 edits
    14 adds in trunk

2010-08-16 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Make DocumentParser safer to use
https://bugs.webkit.org/show_bug.cgi?id=43055

This also includes a test from
https://bugs.webkit.org/show_bug.cgi?id=42099

These tests were kindly provided by Nate Chapin and Adam Barth.

  • fast/frames/document-write-in-iframe-onload-expected.txt: Copied from LayoutTests/editing/selection/5136696-expected.txt.
  • fast/frames/document-write-in-iframe-onload.html: Added.
  • fast/frames/resources/set-src-to-javascript-url.html: Added.
  • fast/frames/set-parent-src-synchronously-expected.txt: Added.
  • fast/frames/set-parent-src-synchronously.html: Added.
  • fast/parser/document-close-iframe-load-expected.txt: Added.
  • fast/parser/document-close-iframe-load.html: Added.
  • fast/parser/document-close-nested-iframe-load-expected.txt: Added.
  • fast/parser/document-close-nested-iframe-load.html: Added.
  • fast/parser/iframe-sets-parent-to-javascript-url-expected.txt: Added.
  • fast/parser/iframe-sets-parent-to-javascript-url.html: Added.
  • fast/parser/resources/set-parent-to-javascript-url.html: Added.

2010-08-17 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Make DocumentParser safer to use
https://bugs.webkit.org/show_bug.cgi?id=43055

Make DocumentParser and its subclasses RefCounted, and protect
HTMLDocumentParser during parsing. It's possible for a parser to
get deleted if certain actions (e.g., a document.write()) occur
synchronously.

The original version of this patch was written by Nate Chapin.

DocumentParser doesn't actually have to be fully RefCounted, since
the only two things which should ever hold a reference to it are
Document and DocumentParser itself. However using RefCounted and
RefPtr was easier/cleaner than inventing a custom ref() scheme.

This deploys a new "detach()" method throughout the parsing
framework. detach() causes the parser to disconnect from the
document so that no further modifications will be made to the
document while any possible DocumentParser stacks are unwound.

The irony of this patch is that the new detach() system is never
used, since Document always outlives the DocumentParser in all of
our layout tests. There is an ASSERT in ~Document() to verify
that the DocumentParser will not outlive the Document.

However I expect that we will soon either find new test cases, or change
the architecture in such a way that DocumentParser will outlive
Document. At which point, the detach() plumbing will be crucial.
Right now detach() serves as a safe-guard against use-after-free bugs
for any case where DocumentParser does outlive the Document.

This also fixes test cases attached to:
https://bugs.webkit.org/show_bug.cgi?id=42099

Tests: fast/frames/document-write-in-iframe-onload.html

fast/frames/set-parent-src-synchronously.html
fast/parser/document-close-iframe-load.html
fast/parser/document-close-nested-iframe-load.html
fast/parser/iframe-sets-parent-to-javascript-url.html

  • dom/Document.cpp:
    • Added a new detachParser() call to be used anywhere we used to call m_parser.clear(). There is an ASSERT in ~DocumentParser which ensures that we get this right.

(WebCore::Document::removedLastRef):
(WebCore::Document::~Document):
(WebCore::Document::createParser):
(WebCore::Document::detachParser):
(WebCore::Document::cancelParsing):
(WebCore::Document::implicitOpen):

  • removed redundant m_parser.clear()

(WebCore::Document::implicitClose):

  • dom/Document.h:
  • dom/DocumentParser.cpp: (WebCore::DocumentParser::~DocumentParser):
    • ASSERT that callers always call detach() before destruction.
    • This ASSERT might prove too cumbersome, but for now it's useful.

(WebCore::DocumentParser::detach):

  • dom/DocumentParser.h:
  • dom/RawDataDocumentParser.h:
  • dom/XMLDocumentParser.cpp: (WebCore::XMLDocumentParser::finish):
    • Add a FIXME explaining part of the reason why stopParsing() and detach() are separate concepts.
  • dom/XMLDocumentParser.h: (WebCore::XMLDocumentParser::create):
  • dom/XMLDocumentParserLibxml2.cpp: (WebCore::XMLDocumentParser::parseDocumentFragment):
  • dom/XMLDocumentParserQt.cpp: (WebCore::XMLDocumentParser::parseDocumentFragment):
  • html/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::detach): (WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded):
  • html/HTMLConstructionSite.h:
  • html/HTMLDocument.cpp: (WebCore::HTMLDocument::createParser):
  • html/HTMLDocument.h:
  • html/HTMLDocumentParser.cpp:
    • We need to protect(this) before calling into any code which might cause the parser to be destroyed.

(WebCore::HTMLDocumentParser::~HTMLDocumentParser):
(WebCore::HTMLDocumentParser::detach):
(WebCore::HTMLDocumentParser::resumeParsingAfterYield):
(WebCore::HTMLDocumentParser::pumpTokenizer):
(WebCore::HTMLDocumentParser::insert):
(WebCore::HTMLDocumentParser::append):
(WebCore::HTMLDocumentParser::end):
(WebCore::HTMLDocumentParser::finish):
(WebCore::HTMLDocumentParser::notifyFinished):
(WebCore::HTMLDocumentParser::executeScriptsWaitingForStylesheets):
(WebCore::HTMLDocumentParser::parseDocumentFragment):

  • html/HTMLDocumentParser.h: (WebCore::HTMLDocumentParser::create):
  • html/HTMLScriptRunner.cpp: (WebCore::HTMLScriptRunner::detach): (WebCore::HTMLScriptRunner::executeParsingBlockingScript): (WebCore::HTMLScriptRunner::executeScript): (WebCore::HTMLScriptRunner::executeScriptsWaitingForStylesheets): (WebCore::HTMLScriptRunner::runScript):
  • html/HTMLScriptRunner.h:
  • html/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::detach): (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): (WebCore::HTMLTreeBuilder::finished):
  • html/HTMLTreeBuilder.h:
  • html/HTMLViewSourceDocument.cpp: (WebCore::HTMLViewSourceDocument::createParser):
  • html/HTMLViewSourceDocument.h:
  • html/HTMLViewSourceParser.cpp: (WebCore::HTMLViewSourceParser::HTMLViewSourceParser):
  • html/HTMLViewSourceParser.h: (WebCore::HTMLViewSourceParser::create):
  • loader/FTPDirectoryDocument.cpp: (WebCore::FTPDirectoryDocumentParser::create): (WebCore::FTPDirectoryDocument::createParser):
  • loader/FTPDirectoryDocument.h:
  • loader/ImageDocument.cpp: (WebCore::ImageDocumentParser::create): (WebCore::ImageDocumentParser::ImageDocumentParser): (WebCore::ImageDocument::createParser):
  • loader/ImageDocument.h:
  • loader/MediaDocument.cpp: (WebCore::MediaDocumentParser::create): (WebCore::MediaDocument::createParser):
  • loader/MediaDocument.h:
  • loader/PluginDocument.cpp: (WebCore::PluginDocumentParser::create): (WebCore::PluginDocument::createParser):
  • loader/PluginDocument.h:
  • loader/SinkDocument.cpp: (WebCore::SinkDocumentParser::create): (WebCore::SinkDocument::createParser):
  • loader/SinkDocument.h:
  • loader/TextDocument.cpp: (WebCore::TextDocumentParser::create): (WebCore::TextDocument::createParser): (WebCore::createTextDocumentParser):
  • loader/TextDocument.h:
12:29 PM Changeset in webkit [65691] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Fix compilation of SelectElement.cpp with ARROW_KEYS_POP_MENU == 0

Reviewed by Simon Fraser.

  • dom/SelectElement.cpp:

(WebCore::SelectElement::menuListDefaultEventHandler): Added
UNUSED_PARAM() macro for htmlForm argument when
ARROW_KEYS_POP_MENU defined as zero.

12:07 PM Changeset in webkit [65690] by Laszlo Gombos
  • 2 edits in trunk/WebCore

2010-08-19 Laszlo Gombos <Laszlo Gombos>

Reviewed by Simon Hausmann.

[Qt] Disable XSLT for production configuration
https://bugs.webkit.org/show_bug.cgi?id=37445

Introduce a new CONFIG option to maintain stable configuration for
the QtWebKit port and disable XSLT for the stable configuration
because of bug 37445.

No new tests as there is no new functionality.

  • features.pri:
11:59 AM Changeset in webkit [65689] by zmo@google.com
  • 13 edits
    2 adds in trunk

2010-08-18 Zhenyao Mo <zmo@google.com>

Reviewed by Kenneth Russell.

Implement strict type checking in js bindings for WebGL functions
https://bugs.webkit.org/show_bug.cgi?id=44202

Test: fast/canvas/webgl/bad-arguments-test.html

  • bindings/js/JSWebGLRenderingContextCustom.cpp: Add type check for wrapper types and DOMString and throw error in case of mismatch. (WebCore::JSWebGLRenderingContext::getAttachedShaders): (WebCore::JSWebGLRenderingContext::getProgramParameter): (WebCore::JSWebGLRenderingContext::getShaderParameter): (WebCore::JSWebGLRenderingContext::getUniform): (WebCore::dataFunctionf): (WebCore::dataFunctioni): (WebCore::dataFunctionMatrix):
  • bindings/scripts/CodeGeneratorJS.pm: Ditto.
  • bindings/scripts/CodeGeneratorV8.pm: Ditto.
  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: Ditto. (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback): (WebCore::V8WebGLRenderingContext::getProgramParameterCallback): (WebCore::V8WebGLRenderingContext::getShaderParameterCallback): (WebCore::V8WebGLRenderingContext::getUniformCallback): (WebCore::vertexAttribAndUniformHelperf): (WebCore::uniformHelperi): (WebCore::uniformMatrixHelper):
  • html/canvas/WebGLRenderingContext.idl: Add attribute StrictTypeChecking for WebGL functions.

2010-08-18 Zhenyao Mo <zmo@google.com>

Reviewed by Kenneth Russell.

Implement strict type checking in js bindings for WebGL functions
https://bugs.webkit.org/show_bug.cgi?id=44202

  • fast/canvas/webgl/bad-arguments-test-expected.txt: Added.
  • fast/canvas/webgl/bad-arguments-test.html: Added.
  • fast/canvas/webgl/error-reporting-expected.txt: Fix bugs due to strict type checking in the js bindings.
  • fast/canvas/webgl/error-reporting.html: ditto.
  • fast/canvas/webgl/gl-object-get-calls-expected.txt: ditto.
  • fast/canvas/webgl/gl-object-get-calls.html: ditto.
  • fast/canvas/webgl/null-object-behaviour-expected.txt: ditto.
  • fast/canvas/webgl/null-object-behaviour.html: ditto.
11:45 AM Changeset in webkit [65688] by commit-queue@webkit.org
  • 3 edits in trunk/WebKit/chromium

2010-08-19 Vincent Scheib <scheib@chromium.org>

Reviewed by David Levin.

Fixing previous Mac only build breakage with TilingDataTest.cpp
https://bugs.webkit.org/show_bug.cgi?id=44223

TilingDataTest.cpp included the wrong header, which had a compile
option around the definition of the WebCore namespace. Without the
namespace defined, error. Fixed by correctly including TilingData.h,
which has no conditional compilation.

  • WebKit.gyp:
  • tests/TilingDataTest.cpp:
11:44 AM Changeset in webkit [65687] by johnnyg@google.com
  • 2 edits in trunk/LayoutTests

2010-08-19 John Gregg <johnnyg@google.com>

Unreviewed, test expectations.

Add some new exceptions for SVG failures, see
https://bugs.webkit.org/show_bug.cgi?id=44278

  • platform/chromium/test_expectations.txt:
11:32 AM WebKit Team edited by kbr@google.com
Adjusting my (kbr's) status from committer to reviewer. (diff)
11:28 AM Changeset in webkit [65686] by tony@chromium.org
  • 2 edits in trunk/BugsSite

2010-08-19 Tony Chang <tony@chromium.org>

Reviewed by Adam Barth.

webkit-patch barfed on upload with a new image test result
https://bugs.webkit.org/show_bug.cgi?id=39097

  • PrettyPatch/PrettyPatch.rb: don't use full path to git
11:25 AM Changeset in webkit [65685] by kbr@google.com
  • 2 edits in trunk/WebKitTools

2010-08-19 Kenneth Russell <kbr@google.com>

Reviewed by David Levin.

Adjust my status from committer to reviewer
https://bugs.webkit.org/show_bug.cgi?id=44277

  • Scripts/webkitpy/common/config/committers.py:
11:13 AM Changeset in webkit [65684] by eric.carlson@apple.com
  • 3 edits in trunk/LayoutTests

2010-08-19 Eric Carlson <eric.carlson@apple.com>

Reviewed by Simon Fraser.

https://bugs.webkit.org/show_bug.cgi?id=33671
media/video-loop.html fails intermittently on GTK and Chromium bots

Rewrite test to make it less timing dependent.

  • media/video-loop-expected.txt:
  • media/video-loop.html:
10:56 AM Changeset in webkit [65683] by Simon Fraser
  • 2 edits in trunk/WebCore

2010-08-19 Simon Fraser <Simon Fraser>

Fix Chromium build.

  • svg/SVGElement.cpp: (WebCore::SVGElement::attributeChanged):
10:35 AM Changeset in webkit [65682] by johnnyg@google.com
  • 3 edits in trunk/LayoutTests

2010-08-19 John Gregg <johnnyg@google.com>

Unreviewed; test expectations.

Update chromium-mac expectations for zoom-mask-with-percentages.svg after
http://trac.webkit.org/changeset/65665/

  • platform/chromium-mac/svg/zoom/page/zoom-mask-with-percentages-expected.checksum:
  • platform/chromium-mac/svg/zoom/page/zoom-mask-with-percentages-expected.png:
10:19 AM Changeset in webkit [65681] by Simon Fraser
  • 19 edits in trunk/WebCore

2010-08-19 Simon Fraser <Simon Fraser>

Reviewed by Nikolas Zimmermann.

HTMLElement::isContentEditable() can cause an updateStyleIfNeeded() to happen in the middle of layout
https://bugs.webkit.org/show_bug.cgi?id=21834
<rdar://problem/8093653&8261394>

If we're in the middle of layout, or painting, and something causes updateStyleIfNeeded() to
get called, then we can end up entering recalcStyle() during layout or painting. This is bad
because it can create/destry the renderers and RenderLayers which are in use by layout/painting.
This is the cause of a number of random crashers, some of which show up more frequently
in content which uses accelerated compositing.

The changes here:

  1. Add an assertion in Document::updateStyleIfNeeded() that we are not laying out or painting.
  2. Remove calls to updateStyleIfNeeded() in editing and caret painting code
  3. Pass along information to CTM and BBox-related SVG methods to indicate whether it's safe to update style.

Tested by new assertions and existing tests.

  • dom/Document.cpp: (WebCore::Document::updateStyleIfNeeded): New assertion that we are not mid-layout or painting. (WebCore::command): Call updateStyleIfNeeded() to ensure that subsequent calls to isContentEditable() return the correct result.
  • dom/Element.cpp: (WebCore::Element::focus): Move the supportsFocus() call to after style has been updated.
  • editing/SelectionController.cpp: (WebCore::SelectionController::localCaretRect): (WebCore::SelectionController::caretRepaintRect): (WebCore::SelectionController::paintCaret):
  • editing/SelectionController.h: (WebCore::SelectionController::localCaretRectForPainting): When painting, use localCaretRectForPainting() which does not update style. Make localCaretRect() non-const so allowing it to update style without ugly casts.
  • html/HTMLElement.cpp: (WebCore::HTMLElement::isContentEditable): Don't call updateStyleIfNeeded() here. (WebCore::HTMLElement::isContentRichlyEditable): Ditto. (WebCore::HTMLElement::contentEditable): Ditto.
  • page/FrameView.h: (WebCore::FrameView::isMidLayout): New accessor, used for asserting.
  • rendering/RenderPath.cpp: (WebCore::fillAndStrokePath): Pass DisallowStyleUpdate to getScreenCTM since we are painting.
  • rendering/RenderSVGResourceContainer.cpp: (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): This is only called when painting, so use DisallowStyleUpdate.
  • svg/SVGElement.cpp: (WebCore::SVGElement::attributeChanged): Changes to the style attribute should not have side effects, since a call to Element::getAttribute() is allowed to result in a call to setAttribute() for the style attribute. To avoid updateStyleIfNeeded() during painting, this must not cause SVG to do extra work.
  • svg/SVGLocatable.cpp: Pass StyleUpdateStrategy down to these methods to indicate whether it's OK to update style. (WebCore::SVGLocatable::getBBox): (WebCore::SVGLocatable::computeCTM): (WebCore::SVGLocatable::getTransformToElement):
  • svg/SVGLocatable.h: (WebCore::SVGLocatable::):
  • svg/SVGStyledLocatableElement.cpp: (WebCore::SVGStyledLocatableElement::getBBox): (WebCore::SVGStyledLocatableElement::getCTM): (WebCore::SVGStyledLocatableElement::getScreenCTM):
  • svg/SVGStyledLocatableElement.h:
  • svg/SVGStyledTransformableElement.cpp: (WebCore::SVGStyledTransformableElement::getCTM): (WebCore::SVGStyledTransformableElement::getScreenCTM): (WebCore::SVGStyledTransformableElement::getBBox):
  • svg/SVGStyledTransformableElement.h:
  • svg/SVGTextElement.cpp: (WebCore::SVGTextElement::getBBox): (WebCore::SVGTextElement::getCTM): (WebCore::SVGTextElement::getScreenCTM):
  • svg/SVGTextElement.h:
10:16 AM Changeset in webkit [65680] by rniwa@webkit.org
  • 2 edits in trunk/WebCore

2010-08-19 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Darin Adler.

Range, EAnnotateForInterchange, and EAbsoluteURLs should be member variables of MarkupAccumulator
https://bugs.webkit.org/show_bug.cgi?id=44229

No new tests are added since this is a clean up.

  • editing/markup.cpp: (WebCore::MarkupAccumulator::MarkupAccumulator): Added shouldResolveURLs, shouldAnnotate, and range. (WebCore::MarkupAccumulator::shouldResolveURLs): Private inline accessor for m_shouldResolveURLs. (WebCore::MarkupAccumulator::shouldAnnotate): Private inline accessor for m_shouldAnnotate. (WebCore::MarkupAccumulator::appendEndTag): Renamed local variable result to markup. (WebCore::MarkupAccumulator::appendStartTag): Removed range, annotate, shouldResolveURLs from the function arguments. (WebCore::MarkupAccumulator::wrapWithNode): Ditto. (WebCore::MarkupAccumulator::appendStartMarkup): Ditto. (WebCore::serializeNodes): Ditto and uses MarkupAccumulator. (WebCore::createMarkup): Uses MarkupAccumulator. (WebCore::serializeNodesWithNamespaces): Ditto.
10:04 AM Changeset in webkit [65679] by tony@chromium.org
  • 1 edit in trunk/BugsSite/ChangeLog

2010-08-19 Tony Chang <tony@chromium.org>

Unreviewed, setting svn:eol-style native on ChangeLog.

9:54 AM Changeset in webkit [65678] by tony@chromium.org
  • 1 edit in trunk/BugsSite/ChangeLog

2010-08-19 Tony Chang <tony@chromium.org>

Unreviewed. Just removing \r's from ChangeLog.

9:46 AM Changeset in webkit [65677] by pfeldman@chromium.org
  • 2 edits in trunk/WebCore

2010-08-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: do not dump inspector errors into the inspected window console.
https://bugs.webkit.org/show_bug.cgi?id=44272

  • inspector/front-end/inspector.js: (WebInspector.reportProtocolError):
9:11 AM Changeset in webkit [65676] by jochen@chromium.org
  • 2 edits in trunk/WebKit/chromium

2010-08-19 Jochen Eisinger <jochen@chromium.org>

Reviewed by Pavel Feldman.

concatenated_devtools_js should depend on inspector_protocol_sources
https://bugs.webkit.org/show_bug.cgi?id=44255

  • WebKit.gyp:
8:47 AM Changeset in webkit [65675] by weinig@apple.com
  • 5 edits in trunk/WebKit2

Add ability to get all the keys from a WKDictionaryRef
https://bugs.webkit.org/show_bug.cgi?id=44221

Reviewed by Adam Roben.

  • Shared/ImmutableDictionary.cpp:

(WebKit::ImmutableDictionary::keys):

  • Shared/ImmutableDictionary.h:

Add keys function.

  • UIProcess/API/C/WKDictionary.cpp:

(WKDictionaryCopyKeys):

  • UIProcess/API/C/WKDictionary.h:

Wrap keys function.

8:44 AM Changeset in webkit [65674] by commit-queue@webkit.org
  • 2 edits in trunk/WebKit/chromium

2010-08-19 Pavel Podivilov <podivilov@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: activate/deactivate breakpoints using v8 debugger flag.
https://bugs.webkit.org/show_bug.cgi?id=44112

  • src/js/DebuggerScript.js: ():
8:19 AM Changeset in webkit [65673] by jorlow@chromium.org
  • 3 edits in trunk/WebCore

2010-08-19 Jeremy Orlow <jorlow@chromium.org>

Chromium build fix.

Use ASSERT_UNUSED on variables that aren't used besides by the ASSERT.

  • storage/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::createObjectStore): (WebCore::IDBDatabaseBackendImpl::removeObjectStore): (WebCore::IDBDatabaseBackendImpl::loadObjectStores):
  • storage/IDBObjectStoreBackendImpl.cpp: (WebCore::IDBObjectStoreBackendImpl::get): (WebCore::IDBObjectStoreBackendImpl::put): (WebCore::IDBObjectStoreBackendImpl::remove): (WebCore::IDBObjectStoreBackendImpl::createIndex): (WebCore::IDBObjectStoreBackendImpl::removeIndex): (WebCore::IDBObjectStoreBackendImpl::openCursor): (WebCore::IDBObjectStoreBackendImpl::loadIndexes):
8:06 AM Changeset in webkit [65672] by commit-queue@webkit.org
  • 5 edits in trunk

2010-08-19 Andrey Kosyakov <caseq@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: expose Panel.onSelectionChanged in extension API
https://bugs.webkit.org/show_bug.cgi?id=44171

  • inspector/extensions-api-expected.txt:
  • inspector/extensions-expected.txt:

2010-08-19 Andrey Kosyakov <caseq@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: expose Panel.onSelectionChanged in extension API
https://bugs.webkit.org/show_bug.cgi?id=44171

  • inspector/front-end/ExtensionAPI.js: (injectedExtensionAPI.PanelImpl): (injectedExtensionAPI):
8:04 AM Changeset in webkit [65671] by pfeldman@chromium.org
  • 3 edits in trunk/WebKitTools

2010-08-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Yury Semikhatsky.

Chromium DevTools: remove injected script fetcher from test harness.
https://bugs.webkit.org/show_bug.cgi?id=44266

  • DumpRenderTree/chromium/DRTDevToolsAgent.cpp:
  • DumpRenderTree/chromium/DRTDevToolsAgent.h:
7:53 AM Changeset in webkit [65670] by andreip@google.com
  • 32 edits
    17 copies
    5 adds in trunk

2010-08-19 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

[IndexedDB] Abort idle IDBTransactions when the JS context they were created in finishes execution.
https://bugs.webkit.org/show_bug.cgi?id=44101

  • storage/indexeddb/resources/shared.js: (unexpectedErrorCallback):
  • storage/indexeddb/script-tests/transaction-basics.js: Added. (abortCallback): (createTransactionCallback): (test):
  • storage/indexeddb/transaction-basics-expected.txt: Added.
  • storage/indexeddb/transaction-basics.html: Added.

2010-08-19 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

[IndexedDB] Abort idle IDBTransactions when the JS context they were created in finishes execution.
https://bugs.webkit.org/show_bug.cgi?id=44101

This change also introduces the TransactionCoordinator, which will be used
to schedule transactions for execution.

Test: storage/indexeddb/transaction-basics.html

  • WebCore.gypi:
  • bindings/v8/V8DOMWrapper.cpp: (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
  • bindings/v8/V8Proxy.cpp: (WebCore::V8Proxy::runScript): (WebCore::V8Proxy::callFunction): (WebCore::V8Proxy::didLeaveScriptContext):
  • bindings/v8/V8Proxy.h:
  • dom/EventTarget.cpp: (WebCore::EventTarget::toIDBTransaction):
  • dom/EventTarget.h:
  • page/PageGroup.h: (WebCore::PageGroup::hasIDBFactory):
  • storage/IDBAbortEvent.cpp: Added. (WebCore::IDBAbortEvent::create): (WebCore::IDBAbortEvent::IDBAbortEvent): (WebCore::IDBAbortEvent::~IDBAbortEvent):
  • storage/IDBAbortEvent.h: Added. (WebCore::IDBAbortEvent::isIDBAbortEvent):
  • storage/IDBDatabase.cpp: (WebCore::IDBDatabase::transaction):
  • storage/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): (WebCore::IDBDatabaseBackendImpl::transaction):
  • storage/IDBDatabaseBackendImpl.h: (WebCore::IDBDatabaseBackendImpl::create):
  • storage/IDBDatabaseBackendInterface.h:
  • storage/IDBFactoryBackendImpl.cpp: (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl): (WebCore::IDBFactoryBackendImpl::open): (WebCore::IDBFactoryBackendImpl::abortPendingTransactions):
  • storage/IDBFactoryBackendImpl.h:
  • storage/IDBFactoryBackendInterface.h:
  • storage/IDBPendingTransactionMonitor.cpp: Added. (WebCore::IDBPendingTransactionMonitor::addPendingTransaction): (WebCore::IDBPendingTransactionMonitor::removePendingTransaction): (WebCore::IDBPendingTransactionMonitor::clearPendingTransactions): (WebCore::IDBPendingTransactionMonitor::pendingTransactions):
  • storage/IDBPendingTransactionMonitor.h: Added.
  • storage/IDBTransaction.cpp: (WebCore::IDBTransaction::IDBTransaction): (WebCore::IDBTransaction::onAbort): (WebCore::IDBTransaction::id): (WebCore::IDBTransaction::stop): (WebCore::IDBTransaction::timerFired):
  • storage/IDBTransaction.h:
  • storage/IDBTransactionBackendInterface.h:
  • storage/IDBTransactionCallbacks.h: Added. (WebCore::IDBTransactionCallbacks::~IDBTransactionCallbacks):
  • storage/IDBTransactionCoordinator.cpp: Added. (WebCore::IDBTransactionBackendImpl::~IDBTransactionBackendImpl): (WebCore::IDBTransactionBackendImpl::create): (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): (WebCore::IDBTransactionBackendImpl::objectStore): (WebCore::IDBTransactionBackendImpl::mode): (WebCore::IDBTransactionBackendImpl::scheduleTask): (WebCore::IDBTransactionBackendImpl::abort): (WebCore::IDBTransactionBackendImpl::sqliteDatabase): (WebCore::IDBTransactionBackendImpl::id): (WebCore::IDBTransactionBackendImpl::setCallbacks): (WebCore::IDBTransactionCoordinator::IDBTransactionCoordinator): (WebCore::IDBTransactionCoordinator::~IDBTransactionCoordinator): (WebCore::IDBTransactionCoordinator::createTransaction): (WebCore::IDBTransactionCoordinator::abort):
  • storage/IDBTransactionCoordinator.h: Added. (WebCore::IDBTransactionCoordinator::create):

2010-08-19 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

[IndexedDB] Abort idle IDBTransactions when the JS context they were created in finishes execution.
https://bugs.webkit.org/show_bug.cgi?id=44101

  • WebKit.gyp:
  • public/WebIDBDatabase.h: (WebKit::WebIDBDatabase::transaction):
  • public/WebIDBFactory.h: (WebKit::WebIDBFactory::abortPendingTransactions):
  • public/WebIDBTransaction.h: Added. (WebKit::WebIDBTransaction::~WebIDBTransaction): (WebKit::WebIDBTransaction::mode): (WebKit::WebIDBTransaction::objectStore): (WebKit::WebIDBTransaction::abort): (WebKit::WebIDBTransaction::id): (WebKit::WebIDBTransaction::setCallbacks):
  • public/WebIDBTransactionCallbacks.h: Added. (WebKit::WebIDBTransactionCallbacks::~WebIDBTransactionCallbacks): (WebKit::WebIDBTransactionCallbacks::onAbort): (WebKit::WebIDBTransactionCallbacks::id):
  • src/IDBDatabaseProxy.cpp: (WebCore::IDBDatabaseProxy::transaction):
  • src/IDBFactoryBackendProxy.cpp: (WebCore::IDBFactoryBackendProxy::abortPendingTransactions):
  • src/IDBFactoryBackendProxy.h:
  • src/IDBTransactionBackendProxy.cpp: Added. (WebCore::IDBTransactionBackendProxy::create): (WebCore::IDBTransactionBackendProxy::IDBTransactionBackendProxy): (WebCore::IDBTransactionBackendProxy::~IDBTransactionBackendProxy): (WebCore::IDBTransactionBackendProxy::objectStore): (WebCore::IDBTransactionBackendProxy::mode): (WebCore::IDBTransactionBackendProxy::abort): (WebCore::IDBTransactionBackendProxy::scheduleTask): (WebCore::IDBTransactionBackendProxy::sqliteDatabase): (WebCore::IDBTransactionBackendProxy::id): (WebCore::IDBTransactionBackendProxy::setCallbacks):
  • src/IDBTransactionBackendProxy.h: Added.
  • src/IDBTransactionCallbacksProxy.cpp: Added. (WebCore::IDBTransactionCallbacksProxy::create): (WebCore::IDBTransactionCallbacksProxy::IDBTransactionCallbacksProxy): (WebCore::IDBTransactionCallbacksProxy::~IDBTransactionCallbacksProxy): (WebCore::IDBTransactionCallbacksProxy::onAbort): (WebCore::IDBTransactionCallbacksProxy::id):
  • src/IDBTransactionCallbacksProxy.h: Added.
  • src/WebDOMStringList.cpp: (WebKit::WebDOMStringList::length):
  • src/WebIDBDatabaseImpl.cpp: (WebKit::WebIDBDatabaseImpl::transaction):
  • src/WebIDBDatabaseImpl.h:
  • src/WebIDBFactoryImpl.cpp: (WebKit::WebIDBFactoryImpl::abortPendingTransactions):
  • src/WebIDBFactoryImpl.h:
  • src/WebIDBTransactionCallbacksImpl.cpp: Added. (WebCore::WebIDBTransactionCallbacksImpl::WebIDBTransactionCallbacksImpl): (WebCore::WebIDBTransactionCallbacksImpl::~WebIDBTransactionCallbacksImpl): (WebCore::WebIDBTransactionCallbacksImpl::onAbort): (WebCore::WebIDBTransactionCallbacksImpl::id):
  • src/WebIDBTransactionCallbacksImpl.h: Added.
  • src/WebIDBTransactionImpl.cpp: Added. (WebKit::WebIDBTransactionImpl::WebIDBTransactionImpl): (WebKit::WebIDBTransactionImpl::~WebIDBTransactionImpl): (WebKit::WebIDBTransactionImpl::mode): (WebKit::WebIDBTransactionImpl::objectStore): (WebKit::WebIDBTransactionImpl::abort): (WebKit::WebIDBTransactionImpl::id): (WebKit::WebIDBTransactionImpl::setCallbacks):
  • src/WebIDBTransactionImpl.h: Added. (WebKit::):
7:47 AM Changeset in webkit [65669] by pfeldman@chromium.org
  • 8 edits in trunk

2010-08-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Yury Semikhatsky.

Chromium DevTools: There is no need in resource-based InjectedScript.js source.
Now that we populate front-end after its onload handler, we don't need
to install injected script early. Exposing injected script source on the WebCore
level here.
https://bugs.webkit.org/show_bug.cgi?id=44029

  • inspector/InjectedScriptHost.h: (WebCore::InjectedScriptHost::injectedScriptSource):

2010-08-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Yury Semikhatsky.

Chromium DevTools: There is no need in resource-based InjectedScript.js source.
Now that we populate front-end after its onload handler, I don't think we need
to install injected script early.
https://bugs.webkit.org/show_bug.cgi?id=44029

  • public/WebDevToolsAgentClient.h:
  • src/WebDevToolsAgentImpl.cpp: (WebKit::): (WebKit::WebDevToolsAgentImpl::attach): (WebKit::WebDevToolsAgentImpl::frontendLoaded):

2010-08-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Yury Semikhatsky.

Chromium DevTools: There is no need in resource-based InjectedScript.js source.
Now that we populate front-end after its onload handler, we don't need
to install injected script early. Exposing injected script source on the WebCore
level here.
https://bugs.webkit.org/show_bug.cgi?id=44029

  • DumpRenderTree/chromium/DRTDevToolsAgent.cpp: (DRTDevToolsAgent::runtimePropertyChanged): (DRTDevToolsAgent::delayedFrontendLoaded): (DRTDevToolsAgent::frontendLoaded):
  • DumpRenderTree/chromium/DRTDevToolsAgent.h:
7:47 AM Changeset in webkit [65668] by Girish Ramakrishnan
  • 2 edits in trunk/WebKit/qt

[Qt] Inject wmode=opaque for both QWebView and QGraphicsWebView on Maemo5
as Flash XEmbed support is flaky.

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

Reviewed by Kenneth Christiansen.

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::createPlugin):

7:38 AM Changeset in webkit [65667] by jorlow@chromium.org
  • 16 edits in trunk

2010-08-18 Jeremy Orlow <jorlow@chromium.org>

Implement persistance for IndexedDB ObjectStores
https://bugs.webkit.org/show_bug.cgi?id=44164

Remove old object stores before running test.

  • storage/indexeddb/resources/shared.js: (deleteAllObjectStores):
  • storage/indexeddb/script-tests/objectstore-basics.js: (openSuccess):
  • storage/indexeddb/script-tests/open-cursor.js: (openSuccess):

2010-08-18 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Steve Block.

Implement persistance for IndexedDB ObjectStores
https://bugs.webkit.org/show_bug.cgi?id=44164

Get rid of the in-memory storage of ObjectStores and instead
use SQL backed memory.

Existing tests give most of the coverage. Will update the manual
test in the next patch (which will also re-work database.description).

  • manual-tests/indexed-database.html: Get rid of race where you can click before the page loads.
  • platform/sql/SQLiteStatement.cpp: Add two helper functions (WebCore::SQLiteStatement::bindInt): (WebCore::SQLiteStatement::isColumnNull):
  • platform/sql/SQLiteStatement.h:
  • storage/IDBCursorBackendImpl.cpp:
  • storage/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): (WebCore::IDBDatabaseBackendImpl::createObjectStore): (WebCore::IDBDatabaseBackendImpl::removeObjectStore): (WebCore::IDBDatabaseBackendImpl::importObjectStores):
  • storage/IDBDatabaseBackendImpl.h: (WebCore::IDBDatabaseBackendImpl::sqliteDatabase):
  • storage/IDBFactoryBackendImpl.cpp: (WebCore::createTables):
  • storage/IDBIndexBackendImpl.cpp: (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl): (WebCore::IDBIndexBackendImpl::sqliteDatabase):
  • storage/IDBIndexBackendImpl.h: (WebCore::IDBIndexBackendImpl::create):
  • storage/IDBObjectStoreBackendImpl.cpp: (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl): (WebCore::whereClause): (WebCore::bindKey): (WebCore::IDBObjectStoreBackendImpl::get): (WebCore::IDBObjectStoreBackendImpl::put): (WebCore::IDBObjectStoreBackendImpl::remove): (WebCore::IDBObjectStoreBackendImpl::createIndex): (WebCore::IDBObjectStoreBackendImpl::removeIndex): (WebCore::IDBObjectStoreBackendImpl::openCursor): (WebCore::IDBObjectStoreBackendImpl::importIndexes): (WebCore::IDBObjectStoreBackendImpl::sqliteDatabase):
  • storage/IDBObjectStoreBackendImpl.h: (WebCore::IDBObjectStoreBackendImpl::create): (WebCore::IDBObjectStoreBackendImpl::database):
6:30 AM Changeset in webkit [65666] by kov@webkit.org
  • 13 edits in trunk

LayoutTests

2010-08-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Kenneth Rohde Christiansen.

[Gtk] Enable view mode media feature layout test
https://bugs.webkit.org/show_bug.cgi?id=43278

Unskip tests that are now passing.

  • platform/gtk/Skipped:

WebKit/gtk

2010-08-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Kenneth Rohde Christiansen.

[Gtk] Enable view mode media feature layout test
https://bugs.webkit.org/show_bug.cgi?id=43278

Add the view-mode property, to control the WebCore page's viewMode.

  • docs/webkitgtk-sections.txt:
  • webkit/webkitwebview.cpp: (webkit_web_view_get_property): (webkit_web_view_set_property): (webkit_web_view_class_init): (webkit_web_view_set_view_mode): (webkit_web_view_get_view_mode):
  • webkit/webkitwebview.h:

WebKitTools

2010-08-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Kenneth Rohde Christiansen.

[Gtk] Enable view mode media feature layout test
https://bugs.webkit.org/show_bug.cgi?id=43278

Add view mode media feature testing infrastructure, and add
placeholder methods for the other platforms'
LayoutTestControllers.

  • DumpRenderTree/LayoutTestController.cpp: (setViewModeMediaFeatureCallback): (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setViewModeMediaFeature):
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setViewModeMediaFeature):
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setViewModeMediaFeature):
  • DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setViewModeMediaFeature):
5:41 AM Changeset in webkit [65665] by Nikolas Zimmermann
  • 76 edits
    16 adds in trunk

2010-08-19 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

Pattern is rasterized
https://bugs.webkit.org/show_bug.cgi?id=41396

SVG pattern size changed when resizing browser
https://bugs.webkit.org/show_bug.cgi?id=38704

Incorrect pattern tilling
https://bugs.webkit.org/show_bug.cgi?id=41603

Apply same fixes to <pattern> that <mask> recently received. Build the tile image in absolute coordinates,
to avoid pixelation, when the target element is scaled. Also fixes problems when zooming into patterns.

Clamp ImageBuffer sizes to RenderSVGRoots viewport, now that gradient/pattern and mask buffers are created
in absolute coordinates -> no more huge image buffer allocations, that could fail.

Drop overflow="visible" support for <pattern>, which complicates the code a lot. Neither Opera nor Firefox
support this, and SVG 1.1 2nd Edition says that the rendering behaviour is "undefined".

Tests: svg/batik/paints/patternRegions-positioned-objects.svg

svg/custom/pattern-incorrect-tiling.svg
svg/custom/pattern-no-pixelation.svg
svg/transforms/text-with-mask-with-svg-transform.svg

  • rendering/PaintInfo.h: (WebCore::PaintInfo::applyTransform): Don't alter the repaint rect if it's infinite (only affects SVG). (WebCore::PaintInfo::infiniteRect): Moved from RenderLayer into PaintInfo, as applyTransform() needs it.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::calculateClipRects): s/ClipRects::infiniteRect/PaintInfo::infiniteRect/
  • rendering/RenderLayer.h: Moved infiniteRect() to PaintInfo.
  • rendering/RenderLayerBacking.cpp: (WebCore::clipBox): s/ClipRects::infiniteRect/PaintInfo::infiniteRect/
  • rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::clippedByAncestor): Ditto.
  • rendering/RenderSVGResourceGradient.cpp: (WebCore::createMaskAndSwapContextForTextGradient): Clamp image buffer size, use new SVGImageBufferTools helper methods for that. (WebCore::clipToTextMask): Adapt to renames/code changes in SVGImageBufferTools. (WebCore::RenderSVGResourceGradient::applyResource): Ditto.
  • rendering/RenderSVGResourceMasker.cpp: (WebCore::RenderSVGResourceMasker::applyResource): lamp image buffer size, use new SVGImageBufferTools helper methods for that. (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): Adapt to renames/code changes in SVGImageBufferTools.
  • rendering/RenderSVGResourceMasker.h:
  • rendering/RenderSVGResourcePattern.cpp: (WebCore::RenderSVGResourcePattern::applyResource): Rewrite to create tile image buffers in absolute coordinates, avoids pixelation artefacts. (WebCore::calculatePatternBoundaries): (WebCore::RenderSVGResourcePattern::buildTileImageTransform): (WebCore::RenderSVGResourcePattern::createTileImage):
  • rendering/RenderSVGResourcePattern.h:
  • rendering/SVGImageBufferTools.cpp: (WebCore::SVGImageBufferTools::transformationToOutermostSVGCoordinateSystem): Helper method, concating all localToParentTransforms() up until RenderSVGRoot is reached. (WebCore::SVGImageBufferTools::createImageBuffer): Simplified. (WebCore::SVGImageBufferTools::clipToImageBuffer): Rename absoluteTargetRect to clampedAbsoluteTargetRect. (WebCore::SVGImageBufferTools::roundedImageBufferSize): New helper method to centralize FloatSize -> IntSize rounding, when creating image buffers. (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer): New helper methods to clamp an image buffer rect against the viewport.
  • rendering/SVGImageBufferTools.h:
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderSupport::renderSubtreeToImage): Use PaintInfo::infiniteRect() as repaint rect, to avoid any culling. (WebCore::SVGRenderSupport::findTreeRootObject): Renamed from svgRootTreeObject, and expose it. (WebCore::SVGRenderSupport::layoutChildren): s/svgRootTreeObject/findTreeRootObject/.
  • rendering/SVGRenderSupport.h:
  • svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::setCurrentTranslate): Be sure to relayout on invalidation, otherwhise resources are not updated, and we have to update them, as they depend on the absolute transform.

2010-08-19 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

Pattern is rasterized
https://bugs.webkit.org/show_bug.cgi?id=41396

SVG pattern size changed when resizing browser
https://bugs.webkit.org/show_bug.cgi?id=38704

Incorrect pattern tilling
https://bugs.webkit.org/show_bug.cgi?id=41603

Update pattern results after fixing the pixelation issues.

  • platform/mac-leopard/svg/batik/paints/patternRegions-expected.checksum:
  • platform/mac-leopard/svg/batik/paints/patternRegions-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.checksum:
  • platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
  • platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.checksum: Added.
  • platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.png: Added.
  • platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.txt: Added.
  • platform/mac/svg/batik/text/textEffect3-expected.checksum:
  • platform/mac/svg/batik/text/textEffect3-expected.png:
  • platform/mac/svg/custom/absolute-sized-content-with-resources-expected.checksum:
  • platform/mac/svg/custom/absolute-sized-content-with-resources-expected.png:
  • platform/mac/svg/custom/grayscale-gradient-mask-expected.checksum:
  • platform/mac/svg/custom/grayscale-gradient-mask-expected.png:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.checksum:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-gradient-creation-expected.checksum:
  • platform/mac/svg/custom/js-late-gradient-creation-expected.png:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.checksum:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-pattern-creation-expected.checksum:
  • platform/mac/svg/custom/js-late-pattern-creation-expected.png:
  • platform/mac/svg/custom/non-scaling-stroke-expected.checksum:
  • platform/mac/svg/custom/non-scaling-stroke-expected.png:
  • platform/mac/svg/custom/pattern-incorrect-tiling-expected.checksum: Added.
  • platform/mac/svg/custom/pattern-incorrect-tiling-expected.png: Added.
  • platform/mac/svg/custom/pattern-incorrect-tiling-expected.txt: Added.
  • platform/mac/svg/custom/pattern-no-pixelation-expected.checksum: Added.
  • platform/mac/svg/custom/pattern-no-pixelation-expected.png: Added.
  • platform/mac/svg/custom/pattern-no-pixelation-expected.txt: Added.
  • platform/mac/svg/custom/pattern-rotate-expected.checksum:
  • platform/mac/svg/custom/pattern-rotate-expected.png:
  • platform/mac/svg/custom/stroked-pattern-expected.checksum:
  • platform/mac/svg/custom/stroked-pattern-expected.png:
  • platform/mac/svg/custom/text-rotated-gradient-expected.checksum:
  • platform/mac/svg/custom/text-rotated-gradient-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-height-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-height-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-width-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-width-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-x-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-x-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-y-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-y-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-height-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-height-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-width-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-width-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-x-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-x-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-y-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-y-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGPatternElement-dom-patternContentUnits-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGPatternElement-dom-patternContentUnits-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGPatternElement-svgdom-patternContentUnits-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGPatternElement-svgdom-patternContentUnits-prop-expected.png:
  • platform/mac/svg/text/selection-background-color-expected.checksum:
  • platform/mac/svg/text/selection-background-color-expected.png:
  • platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.checksum: Added.
  • platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.png: Added.
  • platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.txt: Added.
  • platform/mac/svg/transforms/text-with-pattern-inside-transformed-html-expected.checksum:
  • platform/mac/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
  • platform/mac/svg/transforms/text-with-pattern-with-svg-transform-expected.checksum:
  • platform/mac/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
  • platform/mac/svg/zoom/page/zoom-mask-with-percentages-expected.checksum:
  • platform/mac/svg/zoom/page/zoom-mask-with-percentages-expected.png:
  • svg/batik/paints/patternRegions-positioned-objects.svg: Added.
  • svg/custom/pattern-incorrect-tiling.svg: Added.
  • svg/custom/pattern-no-pixelation.svg: Added.
  • svg/transforms/text-with-mask-with-svg-transform.svg: Added.
  • svg/transforms/text-with-pattern-inside-transformed-html.xhtml:
5:35 AM Changeset in webkit [65664] by Csaba Osztrogonác
  • 1 edit
    32 adds in trunk/LayoutTests

Unreviewed.

[Qt] Add platform specific expected results for new passing tests.
Compared to Mac png files and Mac expected files.

  • platform/qt/fast/canvas/setWidthResetAfterForcedRender-expected.checksum: Added.
  • platform/qt/fast/canvas/setWidthResetAfterForcedRender-expected.png: Added.
  • platform/qt/fast/canvas/setWidthResetAfterForcedRender-expected.txt: Added.
  • platform/qt/fast/table/early-table-layout-expected.checksum: Added.
  • platform/qt/fast/table/early-table-layout-expected.png: Added.
  • platform/qt/fast/table/early-table-layout-expected.txt: Added.
  • platform/qt/http/tests/misc/slow-loading-image-in-pattern-expected.checksum: Added.
  • platform/qt/http/tests/misc/slow-loading-image-in-pattern-expected.png: Added.
  • platform/qt/http/tests/misc/slow-loading-image-in-pattern-expected.txt: Added.
  • platform/qt/svg/W3C-SVG-1.1/filters-turb-02-f-expected.checksum: Added.
  • platform/qt/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png: Added.
  • platform/qt/svg/W3C-SVG-1.1/filters-turb-02-f-expected.txt: Added.
  • platform/qt/svg/custom/absolute-sized-content-with-resources-expected.checksum: Added.
  • platform/qt/svg/custom/absolute-sized-content-with-resources-expected.png: Added.
  • platform/qt/svg/custom/absolute-sized-content-with-resources-expected.txt: Added.
  • platform/qt/svg/custom/js-update-stop-linked-gradient-expected.checksum: Added.
  • platform/qt/svg/custom/js-update-stop-linked-gradient-expected.png: Added.
  • platform/qt/svg/custom/js-update-stop-linked-gradient-expected.txt: Added.
  • platform/qt/svg/in-html: Added.
  • platform/qt/svg/in-html/circle-expected.checksum: Added.
  • platform/qt/svg/in-html/circle-expected.png: Added.
  • platform/qt/svg/in-html/circle-expected.txt: Added.
  • platform/qt/svg/zoom/page/zoom-mask-with-percentages-expected.checksum: Added.
  • platform/qt/svg/zoom/page/zoom-mask-with-percentages-expected.png: Added.
  • platform/qt/svg/zoom/page/zoom-mask-with-percentages-expected.txt: Added.
  • platform/qt/tables/layering: Added.
  • platform/qt/tables/layering/paint-test-layering-1-expected.checksum: Added.
  • platform/qt/tables/layering/paint-test-layering-1-expected.png: Added.
  • platform/qt/tables/layering/paint-test-layering-1-expected.txt: Added.
  • platform/qt/tables/layering/paint-test-layering-2-expected.checksum: Added.
  • platform/qt/tables/layering/paint-test-layering-2-expected.png: Added.
  • platform/qt/tables/layering/paint-test-layering-2-expected.txt: Added.
5:28 AM Changeset in webkit [65663] by pfeldman@chromium.org
  • 4 edits in trunk/WebKit/chromium

2010-08-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Yury Semikhatsky.

Chromium DevTools: remove setRuntimeFeatureEnabled API method that
is no longer used.
https://bugs.webkit.org/show_bug.cgi?id=44237

  • public/WebDevToolsAgent.h:
  • src/WebDevToolsAgentImpl.cpp:
  • src/WebDevToolsAgentImpl.h:
5:19 AM Changeset in webkit [65662] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

2010-08-19 Ademar de Souza Reis Jr <Ademar Reis>

Reviewed by Kenneth Rohde Christiansen.

Remove outdated reference to http/tests/history/redirect-*.pl tests

[Qt] DRT keepWebHistory is not being called in redirect-30*.pl tests
https://bugs.webkit.org/show_bug.cgi?id=34212

Those tests have been renamed on
http://trac.webkit.org/changeset/65340

And are passing on the bot since then.

  • platform/qt/Skipped:
4:00 AM Changeset in webkit [65661] by alex
  • 7 edits in trunk/WebCore

2010-08-19 Alejandro G. Castro <alex@igalia.com>

Reviewed by Dirk Schulze.

[GTK] The size of the shadow image uses the standard deviation
size instead of the blur radius
https://bugs.webkit.org/show_bug.cgi?id=40793

The kernelSize variable was renamed to radius and recalculated
considering the CSS3 specification
http://www.w3.org/TR/css3-background/#the-box-shadow, and the
visual result of other browsers. The HTML5 canvas shadow standard
deviation calculation that was used, was not appropiate for the
blur distance specified in the CSS3.

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/cairo/FontCairo.cpp: (WebCore::Font::drawGlyphs):
  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::calculateShadowBufferDimensions): Changed the calculation, now we use the parameter in the style directly as recomended in the CSS3 standard. (WebCore::drawPathShadow): (WebCore::drawBorderlessRectShadow): (WebCore::GraphicsContext::createPlatformShadow): We get the standard deviation from the radius using the new function and we create the filter with that deviation.
  • platform/graphics/cairo/ImageCairo.cpp: (WebCore::BitmapImage::draw):
  • platform/graphics/filters/FEGaussianBlur.cpp: (WebCore::FEGaussianBlur::calculateStdDeviation): Added this function that gets the standard deviation from the blur radius. Required in the CSS3 case where we have this radio and we need the deviation to initialize the algorithm.
  • platform/graphics/filters/FEGaussianBlur.h:
1:21 AM Changeset in webkit [65660] by Philippe Normand
  • 2 edits in trunk/LayoutTests

2010-08-19 Philippe Normand <pnormand@igalia.com>

Unreviewed, skip crashing test.

[GStreamer] multiple <video> elements + PulseAudio are crash-prone
https://bugs.webkit.org/show_bug.cgi?id=44235

  • platform/gtk/Skipped: Skip media/video-layer-crash.html
1:16 AM Changeset in webkit [65659] by andreas.kling@nokia.com
  • 2 edits in trunk/WebCore

2010-08-19 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Avoid unnecessary string copy in TextCodecQt::decode()
https://bugs.webkit.org/show_bug.cgi?id=44232

  • platform/text/qt/TextCodecQt.cpp: (WebCore::TextCodecQt::decode): Use String::append(const UChar*, int) to avoid creating a temporary string.
1:04 AM Changeset in webkit [65658] by Philippe Normand
  • 24 edits
    4 adds in trunk

Reviewed by Gustavo Noronha Silva.

[GStreamer] GTK XOverlay support in GStreamerGWorld
https://bugs.webkit.org/show_bug.cgi?id=39474

  • configure.ac: gst-interfaces link support needed for use of GstXOverlay interface.
  • GNUmakefile.am: Added new FullscreenVideoController files in the build.

LayoutTests:

Reviewed by Gustavo Noronha Silva.

[GStreamer] GTK XOverlay support in GStreamerGWorld
https://bugs.webkit.org/show_bug.cgi?id=39474

Rebaselined tests showing the video controls containing the new
fullscreen button.

  • platform/gtk/media/controls-after-reload-expected.txt:
  • platform/gtk/media/controls-drag-timebar-expected.txt:
  • platform/gtk/media/controls-strict-expected.txt:
  • platform/gtk/media/controls-styling-expected.txt:
  • platform/gtk/media/video-controls-rendering-expected.txt:

WebCore:

Reviewed by Gustavo Noronha Silva.

[GStreamer] GTK XOverlay support in GStreamerGWorld
https://bugs.webkit.org/show_bug.cgi?id=39474

GStreamerGWorld now catches synchronous messages coming from the
sinks and creates a GTK window where the video can be overlayed if
fullscreen display is requested using enterFullscreen.

  • GNUmakefile.am:
  • platform/graphics/gstreamer/GStreamerGWorld.cpp: (WebCore::gstGWorldSyncMessageCallback): (WebCore::GStreamerGWorld::GStreamerGWorld): (WebCore::GStreamerGWorld::~GStreamerGWorld): (WebCore::GStreamerGWorld::enterFullscreen): (WebCore::GStreamerGWorld::exitFullscreen): (WebCore::GStreamerGWorld::setWindowOverlay):
  • platform/graphics/gstreamer/GStreamerGWorld.h: (WebCore::GStreamerGWorld::pipeline): (WebCore::GStreamerGWorld::platformVideoWindow):
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  • platform/graphics/gstreamer/PlatformVideoWindow.h: Added. (WebCore::PlatformVideoWindow::createWindow): (WebCore::PlatformVideoWindow::window): (WebCore::PlatformVideoWindow::videoWindowId):
  • platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: Added. (PlatformVideoWindow::PlatformVideoWindow):

WebKt/gtk:

Reviewed by Gustavo Noronha Silva.

[GStreamer] GTK XOverlay support in GStreamerGWorld
https://bugs.webkit.org/show_bug.cgi?id=39474

New FullscreenVideoController object, private in the webview. It
is created when the user presses the fullscreen button of the
video controls. Video is displayed in fullscreen, controls are
displayed when the user moves the mouse and when the video is
paused. There's also basic keyboard shortcuts support: F/f to
leave fullscreen, space to toggle play/pause and up/down to
control volume.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::supportsFullscreenForNode): (WebKit::ChromeClient::enterFullscreenForNode): (WebKit::ChromeClient::exitFullscreenForNode):
  • WebCoreSupport/ChromeClientGtk.h:
  • WebCoreSupport/FullscreenVideoController.cpp: Added. (hideHudCallback): (onFullscreenGtkMotionNotifyEvent): (onFullscreenGtkActiveNotification): (onFullscreenGtkConfigureEvent): (onFullscreenGtkDestroy): (togglePlayPauseActivated): (exitFullscreenActivated): (progressBarUpdateCallback): (timeScaleButtonPressed): (timeScaleButtonReleased): (timeScaleValueChanged): (volumeValueChanged): (playerVolumeChangedCallback): (playerMuteChangedCallback): (FullscreenVideoController::FullscreenVideoController): (FullscreenVideoController::~FullscreenVideoController): (FullscreenVideoController::setMediaElement): (FullscreenVideoController::gtkConfigure): (FullscreenVideoController::showHud): (FullscreenVideoController::hideHud): (onFullscreenGtkKeyPressEvent): (FullscreenVideoController::enterFullscreen): (FullscreenVideoController::updateHudPosition): (FullscreenVideoController::exitOnUserRequest): (FullscreenVideoController::exitFullscreen): (FullscreenVideoController::canPlay): (FullscreenVideoController::play): (FullscreenVideoController::pause): (FullscreenVideoController::playStateChanged): (FullscreenVideoController::togglePlay): (FullscreenVideoController::volume): (FullscreenVideoController::muted): (FullscreenVideoController::setVolume): (FullscreenVideoController::volumeChanged): (FullscreenVideoController::muteChanged): (FullscreenVideoController::currentTime): (FullscreenVideoController::setCurrentTime): (FullscreenVideoController::duration): (FullscreenVideoController::percentLoaded): (FullscreenVideoController::beginSeek): (FullscreenVideoController::doSeek): (FullscreenVideoController::endSeek): (timeToString): (FullscreenVideoController::updateHudProgressBar): (FullscreenVideoController::createHud):
  • WebCoreSupport/FullscreenVideoController.h: Added. (FullscreenVideoController::mediaElement):
  • webkit/webkitprivate.cpp: (webkit_web_view_enter_fullscreen): (webkit_web_view_exit_fullscreen):
  • webkit/webkitprivate.h:

WebKit/gtk/po:

Reviewed by Gustavo Noronha Silva.

[GStreamer] GTK XOverlay support in GStreamerGWorld
https://bugs.webkit.org/show_bug.cgi?id=39474

  • POTFILES: Added new file that contains strings to extract.
12:45 AM Changeset in webkit [65657] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

2010-08-19 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Tony Chang.

REGRESSION(r64303): dumpAsMarkup doesn't print the output without layoutTestController
https://bugs.webkit.org/show_bug.cgi?id=44225

Have notifyDone append Markup._container to document.body even if window.layoutTestController is undefined.

  • resources/dump-as-markup.js: (Markup.notifyDone):
12:18 AM Changeset in webkit [65656] by commit-queue@webkit.org
  • 13 edits
    3 adds in trunk/WebCore

2010-08-19 Eric Uhrhane <ericu@chromium.org>

Reviewed by David Levin.

Add idl and mock classes for FileWriter.
https://bugs.webkit.org/show_bug.cgi?id=44075

No new tests, since there's no new functionality.

New do-nothing classes, but the real IDL:

  • FileWriter.idl:
  • FileWriter.h:
  • FileWriter.cpp:

The build file changes to include the above:

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Added FileWriter event names and required EventTarget changes.

  • dom/EventNames.h:
  • dom/EventTarget.cpp: (WebCore::EventTarget::toFileWriter):
  • dom/EventTarget.h:

Aug 18, 2010:

11:56 PM Changeset in webkit [65655] by andreas.kling@nokia.com
  • 2 edits in trunk/WebCore

2010-08-18 Andreas Kling <andreas.kling@nokia.com>

Rubber-stamped by Ariya Hidayat.

[Qt] Remove unused variable in GraphicsContext::fillRect()

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::fillRect):
10:59 PM Changeset in webkit [65654] by ariya@webkit.org
  • 2 edits in trunk/WebCore

[Qt] Short lived shadow buffer for blur operation
https://bugs.webkit.org/show_bug.cgi?id=44094

Patch by Ariya Hidayat <ariya@sencha.com> on 2010-08-18
Reviewed by Kenneth Rohde Christiansen.

ContextShadow needs a scratch image as the buffer for the blur filter.
Instead of creating and destroying the buffer for every operation,
we create a buffer which will be automatically purged via a timer.

  • platform/graphics/qt/ContextShadow.cpp:

(WebCore::):
(WebCore::ShadowBuffer::ShadowBuffer):
(WebCore::ShadowBuffer::scratchImage):
(WebCore::ShadowBuffer::schedulePurge):
(WebCore::ShadowBuffer::purgeBuffer):
(WebCore::ContextShadow::drawShadowRect):

10:56 PM Changeset in webkit [65653] by andreas.kling@nokia.com
  • 2 edits in trunk/JavaScriptCore

2010-08-18 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Geoffrey Garen.

REGRESSION(r58469): Math.pow() always returns double-backed JSValue which is extremely slow as array subscript
https://bugs.webkit.org/show_bug.cgi?id=43742

Add codegen for pow() to return Int32 values when possible.

  • jit/ThunkGenerators.cpp: (JSC::powThunkGenerator):
10:41 PM Changeset in webkit [65652] by mitz@apple.com
  • 4 edits in trunk/LayoutTests

fast/text/hyphenate-character.html is failing on the Leopard Commit Bot
https://bugs.webkit.org/show_bug.cgi?id=41093
-and some of-
fast/text/hyphen* tests have different results on Leopard
https://bugs.webkit.org/show_bug.cgi?id=43296

Reviewed by Mark Rowe.

  • fast/text/hyphenate-character.html: Specify the hyphenation locale, which removes the

dependency on user preferences.

  • fast/text/hyphens.html: Ditto.
  • platform/mac-leopard/Skipped: Don’t skip the above tests.
10:38 PM Changeset in webkit [65651] by commit-queue@webkit.org
  • 2 edits in trunk/WebCore

2010-08-18 Alexey Marinichev <amarinichev@chromium.org>

Reviewed by Darin Fisher.

[chromium] scrolling issues when accelerated compositor is enabled
https://bugs.webkit.org/show_bug.cgi?id=43992

Corrected scroll position not being updated, and an off-by-half error.
Int cast and floorf are taken out because they produce incorrect
transformation matrix. The information lost there is not immediately
obvious because of rounding that happens when texture is mapped with
GL_NEAREST filtering mode. These errors accumulate, and after some
scrolling it becomes more apparent.

To test the former, follow instructions in the bug. To test the
latter, change GL_NEAREST to GL_LINEAR in LayerRendererChromium.cpp.
Scrolling should work properly for all window sizes, without blurring
images and shifting them to the left.

  • platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::drawLayers):
10:20 PM Changeset in webkit [65650] by commit-queue@webkit.org
  • 2 edits in trunk/WebCore

2010-08-18 Simon Hausmann <simon.hausmann@nokia.com>

Reviewed by Ariya Hidayat.

[Qt] Implement GraphicsContext::clipOut more efficiently
https://bugs.webkit.org/show_bug.cgi?id=43416

The current implementation of clipOut uses QPainter::clipRegion().boundingRect(),
which is a very slow function because it converts the entire clip region - which
may potentially contain a complex path - into a set of QRegion rectangles, just
to throw away all that information and use the bounding rect.

QTBUG-12618 implements a faster function in QPainter: QPainter::clipBoundingRect().

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::clipOut): Use QPainter::clipBoundingRect() with Qt >= 4.8. (WebCore::GraphicsContext::clipOutEllipseInRect): Ditto.
9:35 PM Changeset in webkit [65649] by Martin Robinson
  • 3 edits in trunk/WebCore

2010-08-18 Martin Robinson <mrobinson@igalia.com>

Reviewed by Gustavo Noronha Silva.

[GTK] Since the GSEAL changes moz_gtk_scrollbar_button_paint fiddles the widget allocation but doesn't preserve it
https://bugs.webkit.org/show_bug.cgi?id=44211

No new tests as we do not currently use the scrollbar button painting
code. Tests for this issue will be enabled when we have pixel tests
for WebCore-drawn interior frame scrollbars.

  • platform/gtk/GtkVersioning.h: Add backward-compatible functions for getting and setting the widget allocation.
  • platform/gtk/gtk2drawing.c: (moz_gtk_scrollbar_button_paint): Use new backward-compatible functions for getting and setting the widget allocation.
7:14 PM Changeset in webkit [65648] by morrita@google.com
  • 4 edits in trunk/LayoutTests

2010-08-17 MORITA Hajime <morrita@google.com>

Reviewed by Tony Chang.

[Chromium] editing/pasteboard/drop-text-events.html failed.
https://bugs.webkit.org/show_bug.cgi?id=44051

  • editing/pasteboard/drop-text-events-expected.txt:
  • editing/pasteboard/script-tests/drop-text-events.js: Supressed side effect during a drag.
  • platform/chromium/test_expectations.txt:
6:04 PM Changeset in webkit [65647] by rniwa@webkit.org
  • 2 edits in trunk/WebCore

2010-08-18 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Darin Adler.

Group functions in markup.cpp into MarkupAccumulatorWrapper
https://bugs.webkit.org/show_bug.cgi?id=43936

Renamed MarkupAccumulatorWrapper to MarkupAccumulator and moved the MarkupAccumulatorWrapper
to the top of markup.cpp. Made various functions private member functions of MarkupAccumulator.

No new tests are added since this is a cleanup.

  • editing/markup.cpp: (WebCore::MarkupAccumulator::): (WebCore::MarkupAccumulator::MarkupAccumulator): (WebCore::MarkupAccumulator::appendString): (WebCore::MarkupAccumulator::appendStartTag): (WebCore::MarkupAccumulator::appendEndTag): (WebCore::MarkupAccumulator::wrapWithNode): (WebCore::MarkupAccumulator::wrapWithStyleNode): (WebCore::MarkupAccumulator::takeResults): (WebCore::MarkupAccumulator::appendAttributeValue): (WebCore::MarkupAccumulator::escapeContentText): (WebCore::MarkupAccumulator::appendQuotedURLAttributeValue): (WebCore::MarkupAccumulator::stringValueForRange): (WebCore::MarkupAccumulator::ucharRange): (WebCore::MarkupAccumulator::appendUCharRange): (WebCore::MarkupAccumulator::renderedText): (WebCore::MarkupAccumulator::shouldAddNamespaceElement): (WebCore::MarkupAccumulator::shouldAddNamespaceAttribute): (WebCore::MarkupAccumulator::appendNamespace): (WebCore::MarkupAccumulator::appendDocumentType): (WebCore::MarkupAccumulator::removeExteriorStyles): (WebCore::MarkupAccumulator::appendStartMarkup): (WebCore::MarkupAccumulator::shouldSelfClose): (WebCore::MarkupAccumulator::appendEndMarkup): (WebCore::serializeNodes): (WebCore::createMarkup): (WebCore::serializeNodesWithNamespaces):
5:26 PM Changeset in webkit [65646] by Beth Dakin
  • 4 edits
    4 adds in trunk

WebCore: Fix for https://bugs.webkit.org/show_bug.cgi?id=44207 Empty mfrac
and empty munderover cause crashes

-and corresponding-

<rdar://problem/8325160>

Reviewed by Sam Weinig.

This is just a matter of adding null checks in the right places.

  • mathml/RenderMathMLFraction.cpp:

(WebCore::RenderMathMLFraction::baselinePosition):

  • mathml/RenderMathMLUnderOver.cpp:

(WebCore::RenderMathMLUnderOver::baselinePosition):

LayoutTests: Tests for https://bugs.webkit.org/show_bug.cgi?id=44207 Empty mfrac
and empty munderover cause crashes

-and corresponding-

<rdar://problem/8325160>

  • mathml/EmptyMFracCrash-expected.txt: Added.
  • mathml/EmptyMFracCrash.xhtml: Added.
  • mathml/EmptyMunderOverCrash-expected.txt: Added.
  • mathml/EmptyMunderOverCrash.xhtml: Added.

Reviewed by Sam Weinig.

4:52 PM Changeset in webkit [65645] by jianli@chromium.org
  • 12 edits
    2 moves in trunk/WebCore

Move FileStream to platform.
https://bugs.webkit.org/show_bug.cgi?id=44213

Reviewed by David Levin.

In addition to moving files over, FileStream has been changed to remove
ExceptionCode dependency. Also update FileStreamProxy and FileRead to
account for this change.

  • Android.mk:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • html/FileReader.cpp:

(WebCore::FileReader::didOpen):

  • html/FileReader.h:
  • html/FileStream.cpp: Removed.
  • html/FileStream.h: Removed.
  • html/FileStreamClient.h:

(WebCore::FileStreamClient::didTruncate):
(WebCore::FileStreamClient::didOpen):

  • html/FileStreamProxy.cpp:

(WebCore::didOpen):
(WebCore::FileStreamProxy::openForReadOnFileThread):
(WebCore::FileStreamProxy::openForWriteOnFileThread):
(WebCore::FileStreamProxy::write):
(WebCore::FileStreamProxy::writeOnFileThread):
(WebCore::didTruncate):
(WebCore::FileStreamProxy::truncateOnFileThread):

  • html/FileStreamProxy.h:
  • platform/FileStream.cpp: Renamed from WebCore/FileStream.cpp and updated.
  • platform/FileStream.h: Renamed from WebCore/FileStream.h and updated.
4:46 PM Changeset in webkit [65644] by weinig@apple.com
  • 9 edits in trunk/WebKit2

Add ability to set custom userAgent for WebKit2
https://bugs.webkit.org/show_bug.cgi?id=44215

Reviewed by Jon Honeycutt.

  • Shared/CoreIPCSupport/WebPageMessageKinds.h:

(WebPageMessage::):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetCustomUserAgent):

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

(WebKit::WebPageProxy::setCustomUserAgent):

  • UIProcess/WebPageProxy.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::userAgent):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::setCustomUserAgent):
(WebKit::WebPage::userAgent):
(WebKit::WebPage::didReceiveMessage):

  • WebProcess/WebPage/WebPage.h:
4:46 PM Changeset in webkit [65643] by commit-queue@webkit.org
  • 2 edits in trunk

2010-08-18 Lucas De Marchi <lucas.demarchi@profusion.mobi>

Reviewed by Antonio Gomes.

[EFL] Bump library dependencies
https://bugs.webkit.org/show_bug.cgi?id=44182

Prepare for EFL release. All the EFL dependencies were bumped to
1.0.0. Eina and Ecore_X needed a bump because of API has changed and
the others were changed just to follow those two and because this is
a stable release.

  • cmake/FindEFL.cmake: Bump dependencies.
4:33 PM Changeset in webkit [65642] by jianli@chromium.org
  • 2 edits in trunk/WebKit/chromium

Fix layout test crashes in chromium.

  • src/BlobRegistryProxy.cpp:

(WebCore::BlobRegistryProxy::registerBlobURL):
(WebCore::BlobRegistryProxy::unregisterBlobURL):

4:26 PM Changeset in webkit [65641] by jianli@chromium.org
  • 2 edits in trunk/WebKit/chromium

Fix chromium build break.

  • src/WebBlobStorageData.cpp:

(WebKit::WebBlobStorageData::itemAt):

4:23 PM Changeset in webkit [65640] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

2010-08-18 Fady Samuel <fsamuel@chromium.org>

Reviewed by Dimitri Glazkov.

Updated Test Expectations for Table Hit Testing Layout Tests to Produce Results from Canaries
https://bugs.webkit.org/show_bug.cgi?id=44177

  • platform/chromium/test_expectations.txt:
4:19 PM Changeset in webkit [65639] by crogers@google.com
  • 186 edits
    6 copies
    1 delete in branches/audio

merge trunk 65443:65473 into audio branch

4:10 PM Changeset in webkit [65638] by mrowe@apple.com
  • 2 edits in trunk/WebKitTools

Make it so the WebKit2 test slave runs the WebKit2 tests

Reviewed by Sam Weinig.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:
3:48 PM Changeset in webkit [65637] by jianli@chromium.org
  • 5 edits
    9 adds in trunk

WebCore: Chromium side implementation of blob data and blob registry.
https://bugs.webkit.org/show_bug.cgi?id=43871

Reviewed by Darin Fisher.

Wrap !PLATFORM(CHROMIUM) around blobRegistry() so that chromium uses the
implementation in WebKit Chromium.

  • platform/network/BlobRegistryImpl.cpp:

WebKit/chromium: [chromium] Chromium side implementation of blob data and blob registry.
https://bugs.webkit.org/show_bug.cgi?id=43871

Reviewed by Darin Fisher.

  • WebKit.gyp:
  • public/WebBlobData.h: Added.
  • public/WebBlobRegistry.h: Added.
  • public/WebBlobStorageData.h: Added.
  • public/WebKitClient.h:

(WebKit::WebKitClient::blobRegistry):

  • src/BlobRegistryProxy.cpp: Added.
  • src/BlobRegistryProxy.h: Added.
  • src/WebBlobData.cpp: Added.
  • src/WebBlobRegistryImpl.cpp: Added.
  • src/WebBlobRegistryImpl.h: Added.
  • src/WebBlobStorageData.cpp: Added.
3:46 PM Changeset in webkit [65636] by dumi@chromium.org
  • 3 edits in trunk/WebKit/chromium

Propagate the m_downloadFilePath correctly.
https://bugs.webkit.org/show_bug.cgi?id=44198

Reviewed by Darin Fisher.

  • src/WebURLRequest.cpp:

(WebKit::WebURLRequestPrivateImpl::WebURLRequestPrivateImpl):

  • src/WebURLResponse.cpp:

(WebKit::WebURLResponsePrivateImpl::WebURLResponsePrivateImpl):

3:45 PM Changeset in webkit [65635] by Martin Robinson
  • 3 edits in trunk/WebCore

2010-08-18 Martin Robinson <mrobinson@igalia.com>

Reviewed by Gustavo Noronha Silva.

[GTK] Bots are showing lots of GTK_IS_CONTAINER critical warnings
https://bugs.webkit.org/show_bug.cgi?id=40990

Instead of relying on the ScrollView's adjustment members to determine if a
Scrollbar should be native or just a shell of the parent's scrollbar (main frame
scrollbar), just check if this ScrollView has a parent. This will ensure the
correct behavior when main frame scrollbar's are created after the ScrollView's
containing adjustments go away.

Lack of warnings during tests are the test for this fix.

  • platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::createScrollbar): Decide what type of scrollbar to make based on the result of the parent() method.
  • platform/gtk/ScrollbarGtk.cpp: (ScrollbarGtk::ScrollbarGtk): Allow for an m_adjustment which is null. (ScrollbarGtk::attachAdjustment): Ditto. (ScrollbarGtk::updateThumbPosition): Ditto. (ScrollbarGtk::updateThumbProportion): Ditto.
3:34 PM Changeset in webkit [65634] by victorw@chromium.org
  • 2 edits in trunk/WebKit/chromium

2010-08-18 Victor Wang <victorw@chromium.org>

Unreviewed. Fix chromium multi dll build.

  • public/WebIDBKeyPath.h:
3:05 PM Changeset in webkit [65633] by jcivelli@chromium.org
  • 10 edits
    8 copies
    2 adds in trunk/WebKit/chromium

2010-08-18 Jay Civelli <jcivelli@chromium.org>

Reviewed by Darin Fisher.

Renaming the WebEvent to WebDOMEvent and adding a new event class
for mouse events so that the event listener API can be used to listen
to them. The renaming is needed as there already is a WebMouseEvent class.
https://bugs.webkit.org/show_bug.cgi?id=43453

  • WebKit.gyp:
  • public/WebDOMEvent.h: Added.
  • public/WebDOMEventListener.h: Added.
  • public/WebDOMMouseEvent.h: Added.
  • public/WebDOMMutationEvent.h: Added.
  • public/WebNode.h:
  • src/EventListenerWrapper.cpp:
  • src/EventListenerWrapper.h:
  • src/WebDOMEvent.cpp: Added.
  • src/WebDOMEventListener.cpp: Added.
  • src/WebDOMEventListenerPrivate.cpp: Added.
  • src/WebDOMEventListenerPrivate.h: Added.
  • src/WebDOMMouseEvent.cpp: Added.
  • src/WebDOMMutationEvent.cpp: Added.
  • src/WebNode.cpp: (WebKit::WebNode::isElementNode): (WebKit::WebNode::addDOMEventListener): (WebKit::WebNode::removeDOMEventListener):
2:45 PM Changeset in webkit [65632] by abarth@webkit.org
  • 2 edits in trunk/WebCore

2010-08-18 Adam Barth <abarth@webkit.org>

Reviewed by David Levin.

NOT_REACHED is reachable in SVGLength
https://bugs.webkit.org/show_bug.cgi?id=44150

The author of this code was confused. This code is reachable. We just
haven't implemented it yet.

  • svg/SVGLength.cpp: (WebCore::SVGLength::setValue):
2:20 PM Changeset in webkit [65631] by commit-queue@webkit.org
  • 4 edits in trunk/WebCore

2010-08-18 Balazs Kelemen <kb@inf.u-szeged.hu>

Reviewed by Antonio Gomes.

[Qt] Use LAZY_NATIVE_CURSOR
https://bugs.webkit.org/show_bug.cgi?id=44062

No functional change so new tests.

Change Cursor behaviour to match the LAZY_NATIVE_CURSOR policy.

  • platform/Cursor.h: Typedef PlatformCursor to be a QCursor* to be able create it dynamically. (WebCore::Cursor::Cursor): Remove the ifdef for Qt.
  • platform/qt/CursorQt.cpp: Remove the Cursors class since we have the static cursor instances for the common cursor types in Cursor.cpp. Move the logic that maps the cursor types to QCursor instances into ensurePlatformCursor. (WebCore::Cursor::Cursor): (WebCore::Cursor::~Cursor): (WebCore::Cursor::operator=): (WebCore::createCustomCursor): (WebCore::Cursor::ensurePlatformCursor):
  • platform/qt/WidgetQt.cpp: (WebCore::Widget::setCursor): Adjust to the PlatformCursor change.
2:20 PM Changeset in webkit [65630] by weinig@apple.com
  • 2 edits in trunk/WebKitTools

Make run-webkit-tests --webkit-test-runner build DumpRenderTree
in addition to WebKitTestRunner to get the DumpRenderTreeSupport
module and the TestNetscapePlugin.

Reviewed by Mark Rowe.

  • Scripts/old-run-webkit-tests:
2:11 PM Changeset in webkit [65629] by Laszlo Gombos
  • 2 edits in trunk/WebKit/qt

2010-08-18 Laszlo Gombos <Laszlo Gombos>

Unreviewed, trivial Symbian build fix.

[Qt] Remove unnecessary QtGui include from NotificationPresenterClientQt.cpp

  • WebCoreSupport/NotificationPresenterClientQt.cpp:
1:51 PM Changeset in webkit [65628] by ojan@chromium.org
  • 6 edits in trunk/LayoutTests

2010-08-18 Ojan Vafai <ojan@chromium.org>

Reviewed by Tony Chang.

skip the new perf tests on non-chromium to gather data on which ones are flaky
https://bugs.webkit.org/show_bug.cgi?id=44200

  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
1:43 PM Changeset in webkit [65627] by senorblanco@chromium.org
  • 1 edit in trunk/WebCore/ChangeLog

Fix my badly-merged ChangeLog entry.

1:05 PM Changeset in webkit [65626] by andreas.kling@nokia.com
  • 2 edits in trunk/WebCore

2010-08-18 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Darin Adler.

CSS: Make rgb() and rgba() fast paths case-insensitive
https://bugs.webkit.org/show_bug.cgi?id=44107

Also inlined the string comparisons against "rgb(" and "rgba("
which is faster and avoids creating a temporary String object.

  • css/CSSParser.cpp: (WebCore::mightBeRGBA): (WebCore::mightBeRGB): (WebCore::CSSParser::parseColor):
12:22 PM Changeset in webkit [65625] by commit-queue@webkit.org
  • 1 edit
    5 moves in trunk/LayoutTests

2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r65619.
http://trac.webkit.org/changeset/65619
https://bugs.webkit.org/show_bug.cgi?id=44194

Broke mac bots (Requested by jamesr on #webkit).

  • platform/chromium-linux/tables/hittesting/filltable-emptycells-expected.txt: Renamed from LayoutTests/tables/hittesting/filltable-emptycells-expected.txt.
  • platform/chromium-linux/tables/hittesting/filltable-levels-expected.txt: Renamed from LayoutTests/tables/hittesting/filltable-levels-expected.txt.
  • platform/chromium-linux/tables/hittesting/filltable-outline-expected.txt: Renamed from LayoutTests/tables/hittesting/filltable-outline-expected.txt.
  • platform/chromium-linux/tables/hittesting/filltable-rtl-expected.txt: Renamed from LayoutTests/tables/hittesting/filltable-rtl-expected.txt.
  • platform/chromium-linux/tables/hittesting/filltable-stress-expected.txt: Renamed from LayoutTests/tables/hittesting/filltable-stress-expected.txt.
12:12 PM Changeset in webkit [65624] by crogers@google.com
  • 4 edits in branches/audio/WebCore/audio

Ref-counting and other cleanup for CachedAudio

12:12 PM Changeset in webkit [65623] by crogers@google.com
  • 1 edit in branches/audio/WebCore/audio/JavaScriptAudioNode.idl

V8 bindings fix for JavaScriptAudioNode

12:03 PM Changeset in webkit [65622] by jianli@chromium.org
  • 8 edits in trunk/WebCore

Change BlobStorageData to reuse BlobData.
https://bugs.webkit.org/show_bug.cgi?id=44188

Reviewed by Darin Fisher.

Also addressed Darin's feedbacks for bug 44116.

  • html/ThreadableBlobRegistry.cpp:

(WebCore::registerBlobURLTask):
(WebCore::registerBlobURLFromTask):
(WebCore::unregisterBlobURLTask):

  • platform/network/BlobData.cpp:

(WebCore::BlobData::appendData):

  • platform/network/BlobData.h:

(WebCore::BlobDataItem::BlobDataItem):

  • platform/network/BlobRegistry.h:
  • platform/network/BlobRegistryImpl.cpp:

(WebCore::blobRegistry):
(WebCore::BlobRegistryImpl::appendStorageItems):
(WebCore::BlobRegistryImpl::registerBlobURL):

  • platform/network/BlobRegistryImpl.h:
  • platform/network/BlobStorageData.h:

(WebCore::BlobStorageData::create):
(WebCore::BlobStorageData::contentType):
(WebCore::BlobStorageData::contentDisposition):
(WebCore::BlobStorageData::items):
(WebCore::BlobStorageData::BlobStorageData):

11:45 AM Changeset in webkit [65621] by hyatt@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Martin Robinson.

Fix a typo in my previous canvas checkin. m_in->resultImage() was originally m_in2->resultImage(),
and I accidentally changed it when swapping the order of the arguments.

  • platform/graphics/filters/FEComposite.cpp:

(WebCore::FEComposite::apply):

11:40 AM Changeset in webkit [65620] by weinig@apple.com
  • 3 edits in trunk/WebKit2

Make WKBundleNodeHandleRef usable from WKRetainPtr.

Rubber-stamped by John Sullivan.

  • WebKit2.xcodeproj/project.pbxproj: Make WKBundleNodeHandle.h public.
  • WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.h: Add WKRetain/WKRelease overloads.
11:21 AM Changeset in webkit [65619] by jamesr@google.com
  • 1 edit
    5 moves in trunk/LayoutTests

2010-08-18 James Robinson <jamesr@chromium.org>

Unreviewed. Move some test expectations that are not platform specific to the right place.

  • platform/chromium-linux/tables/hittesting/filltable-emptycells-expected.txt: Removed.
  • platform/chromium-linux/tables/hittesting/filltable-levels-expected.txt: Removed.
  • platform/chromium-linux/tables/hittesting/filltable-outline-expected.txt: Removed.
  • platform/chromium-linux/tables/hittesting/filltable-rtl-expected.txt: Removed.
  • platform/chromium-linux/tables/hittesting/filltable-stress-expected.txt: Removed.
  • tables/hittesting/filltable-emptycells-expected.txt: Copied from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-emptycells-expected.txt.
  • tables/hittesting/filltable-levels-expected.txt: Copied from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-levels-expected.txt.
  • tables/hittesting/filltable-outline-expected.txt: Copied from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-outline-expected.txt.
  • tables/hittesting/filltable-rtl-expected.txt: Copied from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-rtl-expected.txt.
  • tables/hittesting/filltable-stress-expected.txt: Copied from LayoutTests/platform/chromium-linux/tables/hittesting/filltable-stress-expected.txt.
11:16 AM Changeset in webkit [65618] by jberlin@webkit.org
  • 2 edits in trunk/WebKit/win

2010-08-18 Jessie Berlin <jberlin@apple.com>

Reviewed by Adam Roben.

Bug 44180 - WebView::paint fails to paint a child WebView of a Layered Window.
https://bugs.webkit.org/show_bug.cgi?id=44180


Decide to end painting if the m_backingStoreBitmap is null after the call to
ensureBackingStore() instead of when the rcPaint rect filled by BeginPaint is empty.
The rcPaint rect filled by BeginPaint is always empty for a child WebView of a Layered
Window, even if GetUpdateRect and GetUpdateRgn report a non-empty region that needs
painting.

  • WebView.cpp: (WebView::paint):
11:11 AM Changeset in webkit [65617] by senorblanco@chromium.org
  • 6 edits in trunk/WebCore

2010-08-17 Stephen White <senorblanco@chromium.org>

Reviewed by Darin Fisher.

[CHROMIUM] Eliminate a memcpy() from the canvas.drawImage(canvas, ...) path.
https://bugs.webkit.org/show_bug.cgi?id=44115

This is the Skia followup to Dave Hyatt's patch in r65449.
Covered by canvas layout tests.

  • platform/graphics/skia/BitmapImageSingleFrameSkia.h: Add a "copyPixels" argument to the create() static to indicate if the caller wants the pixels to be copied or ref'ed.
  • platform/graphics/skia/ImageBufferSkia.cpp: (WebCore::ImageBuffer::drawsUsingCopy): We don't use the always-copy path anymore, so return false. (WebCore::ImageBuffer::copyImage): Force a copy here. (WebCore::ImageBuffer::draw): (WebCore::ImageBuffer::drawPattern): Create a temporary BitampImageSingleFrameSkia wrapped around the canvas's bitmap, and draw with it immediately. If drawing to our own canvas, copy the pixels, otherwise just shallow copy.
  • platform/graphics/skia/ImageSkia.cpp: (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia): Make the constructor take an SkBitmap to be wrapped. (WebCore::BitmapImageSingleFrameSkia::create): Implement the "copyPixels" flag: if true, do a deep copy, otherwise do a shallow copy.
  • platform/graphics/skia/NativeImageSkia.cpp: (WebCore::NativeImageSkia::NativeImageSkia):
  • platform/graphics/skia/NativeImageSkia.h: Implement a new constructor that shallow-copies the given SkBitmap.
10:51 AM Changeset in webkit [65616] by Csaba Osztrogonác
  • 3 edits in trunk/WebCore

[Qt] Request for permission before starting Geolocation service
https://bugs.webkit.org/show_bug.cgi?id=42027

Patch by Mahesh Kulkarni <mahesh.kulkarni@nokia.com> on 2010-08-18
Reviewed by Steve Block.

Handles starting location acquisition when request is granted for ports using
"!CLIENT_BASED_GEOLOCATION and PREEMPT_GEOLOCATION_PERMISSION" policy
Only Qt port as of today uses the above combination. Enable
PREEMPT_GEOLOCATION_PERMISSION for qt port.

Below tests cover these changes on platform using PREEMPT_GEOLOCATION_PERMISSION

  • fast/dom/Geolocation/delayed-permission-allowed.html
  • fast/dom/Geolocation/delayed-permission-denied.html
  • fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html
  • fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html
  • WebCore.pro:
  • page/Geolocation.cpp:

(WebCore::Geolocation::handlePendingPermissionNotifiers):

10:47 AM Changeset in webkit [65615] by kov@webkit.org
  • 2 edits in trunk/WebKit/gtk

2010-08-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Martin Robinson.

[GTK] WebBackForwardList's new_with_web_view should not be public
https://bugs.webkit.org/show_bug.cgi?id=43802

Deprecate the constructor. The introspection annotation has been
fixed in a previous commit.

  • webkit/webkitwebbackforwardlist.cpp:
10:34 AM Changeset in webkit [65614] by ojan@chromium.org
  • 1 edit
    16 adds in trunk/LayoutTests

2010-08-13 Ojan Vafai <ojan@chromium.org>

Reviewed by Darin Adler.

add ability to test order-of-magnitude in layout tests
https://bugs.webkit.org/show_bug.cgi?id=43997

Uses the R2 value to determine likelihood the performance
is linear and then logs the x and y axis appropriately to determine
log n and n
2 cases. These are all estimates though, so we try
up to three times if we don't get the correct expected result.

In practice, with the tests below, we almost always get the correct
result, but sometimes the O(1) tests get registered as O(n) or indeterminate.

  • perf/array-binary-search-expected.txt: Added.
  • perf/array-binary-search.html: Added.
  • perf/array-nested-loop-expected.txt: Added.
  • perf/array-nested-loop.html: Added.
  • perf/array-push-pop-expected.txt: Added.
  • perf/array-push-pop.html: Added.
  • perf/array-reverse-expected.txt: Added.
  • perf/array-reverse.html: Added.
  • perf/object-keys-expected.txt: Added.
  • perf/object-keys.html: Added.
  • perf/set-attribute-expected.txt: Added.
  • perf/set-attribute.html: Added.
  • perf/typing-at-end-of-line-expected.txt: Added.
  • perf/typing-at-end-of-line.html: Added.
  • resources/magnitude-perf.js: Added. (Magnitude.description): (Magnitude._log): (Magnitude._debug): (Magnitude.run): (Magnitude._run): (Magnitude._rSquared): (Magnitude._logIterationInfo): (Magnitude._bigOGuess): (Magnitude._runIteration): (Magnitude):
10:28 AM Changeset in webkit [65613] by andreas.kling@nokia.com
  • 6 edits in trunk/WebCore

2010-08-18 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Darin Adler.

CanvasStyle method naming cleanup
https://bugs.webkit.org/show_bug.cgi?id=44184

Renamed the various create() overloads to reflect what they're
constructing the CanvasStyle from.

The unused CanvasStyle::create(grayLevel) and accompanying constructor
were removed.

Also renamed the isEquivalentColor overloads to isEquivalent{RGBA,CMYKA}

  • bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::toHTMLCanvasStyle):
  • bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: (WebCore::toCanvasStyle):
  • html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::State::State): (WebCore::CanvasRenderingContext2D::setStrokeColor): (WebCore::CanvasRenderingContext2D::setFillColor):
  • html/canvas/CanvasStyle.cpp: (WebCore::CanvasStyle::createFromString): (WebCore::CanvasStyle::createFromStringWithOverrideAlpha): (WebCore::CanvasStyle::createFromGradient): (WebCore::CanvasStyle::createFromPattern): (WebCore::CanvasStyle::isEquivalentRGBA): (WebCore::CanvasStyle::isEquivalentCMYKA):
  • html/canvas/CanvasStyle.h: (WebCore::CanvasStyle::createFromRGBA): (WebCore::CanvasStyle::createFromGrayLevelWithAlpha): (WebCore::CanvasStyle::createFromRGBAChannels): (WebCore::CanvasStyle::createFromCMYKAChannels):
9:52 AM Changeset in webkit [65612] by Girish Ramakrishnan
  • 5 edits in trunk/WebCore

[Qt] Implement Maemo5 local rendering NPAPI extension. See
https://wiki.mozilla.org/Plugins:NokiaMaemoImageSurface for details.

With the local rendering extension, Flash will paint into a 16-bit surface.
For wmode=transparent, Flash expects the surface to contain the contents
beneath it. As it is tricky to implement the content propagation across all
graphics systems, transparent Flash is not supported. We just fill the surface
with white and wmode=transparent behaves the same as wmode=opaque with a white
background.

Reviewed by Kenneth Rohde Christiansen.

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

  • WebCore.pro:
  • plugins/PluginView.cpp:

(WebCore::PluginView::setValue):
(WebCore::PluginView::PluginView):

  • plugins/PluginView.h:
  • plugins/qt/PluginViewQt.cpp:

(WebCore::PluginView::updatePluginWidget):
(WebCore::PluginView::paintUsingImageSurfaceExtension):
(WebCore::PluginView::paint):
(WebCore::PluginView::platformGetValueStatic):

9:09 AM Changeset in webkit [65611] by commit-queue@webkit.org
  • 3 edits in trunk/WebCore

2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r65603.
http://trac.webkit.org/changeset/65603
https://bugs.webkit.org/show_bug.cgi?id=44179

4 tests crash on Qt bot (Requested by Ossy on #webkit).

  • WebCore.pro:
  • page/Geolocation.cpp: (WebCore::Geolocation::handlePendingPermissionNotifiers):
9:02 AM Changeset in webkit [65610] by commit-queue@webkit.org
  • 2 edits in trunk/WebCore

2010-08-18 Ryuan Choi <ryuan.choi@samsung.com>

Unreviewed. Attempted build fix for EFL

[EFL]REGRESSION(65530) need to fix build break
https://bugs.webkit.org/show_bug.cgi?id=44154

  • CMakeListsEfl.txt:
8:30 AM Changeset in webkit [65609] by loislo@chromium.org
  • 2 edits in trunk/WebCore

2010-08-18 Ilya Tikhonovsky <loislo@chromium.org>

Unreviewed qt build fix.

  • WebCore.pri:
7:36 AM Changeset in webkit [65608] by loislo@chromium.org
  • 19 edits
    1 add
    1 delete in trunk

2010-08-16 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: replace hand written InspectorBackendStub.js with generated one.
New command-line flag was added to combine-javascript-resources.
It specifies the location of generated scripts.
https://bugs.webkit.org/show_bug.cgi?id=43791

  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • combine-javascript-resources:
  • inspector/CodeGeneratorInspector.pm:
  • inspector/front-end/InspectorBackendStub.js: Removed.
  • inspector/front-end/WebKit.qrc:

2010-08-16 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: replace hand written InspectorBackendStub.js with generated one.
https://bugs.webkit.org/show_bug.cgi?id=43791

  • GNUmakefile.am:

2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

WebInspector: inspector tests for GTK were added to Skip list.
They should be enabled later.
Bug for GTK https://bugs.webkit.org/show_bug.cgi?id=43977
https://bugs.webkit.org/show_bug.cgi?id=43791

  • platform/gtk/Skipped:

2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: replace hand written InspectorBackendStub.js with generated one.
https://bugs.webkit.org/show_bug.cgi?id=43791

  • WebKit.gyp:

2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: replace hand written InspectorBackendStub.js with generated one.
https://bugs.webkit.org/show_bug.cgi?id=43791

  • WebCoreSupport/InspectorClientGtk.cpp: (WebKit::InspectorClient::openInspectorFrontend):
7:18 AM Changeset in webkit [65607] by commit-queue@webkit.org
  • 2 edits in trunk/WebCore

2010-08-18 Andrey Kosyakov <caseq@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: extension panels do not occupy entire panel client area.
https://bugs.webkit.org/show_bug.cgi?id=44167

  • inspector/front-end/ExtensionServer.js: (WebInspector.ExtensionServer.prototype._onCreatePanel): (WebInspector.ExtensionServer.prototype._createClientIframe):
6:27 AM Changeset in webkit [65606] by yurys@chromium.org
  • 3 edits
    1 add in trunk/LayoutTests

2010-08-18 Pavel Podivilov <podivilov@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: inspector tests should be frontend-driven

  • http/tests/inspector/inspector-test2.js: Added. (initializeInspectorTest): (initializeInspectorTest.): (): (completeTest): (dumpArray): (dumpObject): (output): (didEvaluateForTestInFrontend):
  • inspector/debugger-breakpoints-not-activated-on-reload-expected.txt:
  • inspector/debugger-breakpoints-not-activated-on-reload.html:
6:20 AM Changeset in webkit [65605] by krit@webkit.org
  • 22 edits
    2 adds in trunk/WebCore

2010-08-18 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

Use SVGPathParser logic to traverse states of a Path
https://bugs.webkit.org/show_bug.cgi?id=44009

Move the getPathSegAtLength logic from SVGPathSegList into a new SVGPathConsumer
class: SVGPathTraversalStateBuilder.
This allows us to get a SVGPathSeg at a given length for SVGPathByteStreams and SVGPathSegLists.
It is also possible to use unaltered SVG path data, instead of just normalized path data.
This is the final preparation to provide normalized and unaltered SVGPathSegLists
on SVGPathElement.

  • Android.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • svg/SVGAllInOne.cpp:
  • svg/SVGPathBuilder.h: (WebCore::SVGPathBuilder::nextPathSegment): (WebCore::SVGPathBuilder::quitEarlier):
  • svg/SVGPathByteStreamBuilder.h: (WebCore::SVGPathByteStreamBuilder::nextPathSegment): (WebCore::SVGPathByteStreamBuilder::quitEarlier):
  • svg/SVGPathConsumer.h:
  • svg/SVGPathElement.cpp: (WebCore::SVGPathElement::getPathSegAtLength):
  • svg/SVGPathElement.h:
  • svg/SVGPathElement.idl:
  • svg/SVGPathParser.cpp: (WebCore::SVGPathParser::parsePathDataFromSource):
  • svg/SVGPathParserFactory.cpp: (WebCore::globalSVGPathTraversalStateBuilder): (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathSegList):
  • svg/SVGPathParserFactory.h:
  • svg/SVGPathSegList.cpp:
  • svg/SVGPathSegList.h:
  • svg/SVGPathSegListBuilder.h: (WebCore::SVGPathSegListBuilder::nextPathSegment): (WebCore::SVGPathSegListBuilder::quitEarlier):
  • svg/SVGPathStringBuilder.h: (WebCore::SVGPathStringBuilder::nextPathSegment): (WebCore::SVGPathStringBuilder::quitEarlier):
  • svg/SVGPathTraversalStateBuilder.cpp: Added. New Consumer for SVGPathParser. (WebCore::SVGPathTraversalStateBuilder::SVGPathTraversalStateBuilder): (WebCore::SVGPathTraversalStateBuilder::moveTo): (WebCore::SVGPathTraversalStateBuilder::lineTo): (WebCore::SVGPathTraversalStateBuilder::curveToCubic): (WebCore::SVGPathTraversalStateBuilder::closePath): (WebCore::SVGPathTraversalStateBuilder::setDesiredLength): (WebCore::SVGPathTraversalStateBuilder::quitEarlier): (WebCore::SVGPathTraversalStateBuilder::nextPathSegment): (WebCore::SVGPathTraversalStateBuilder::pathSegmentIndex):
  • svg/SVGPathTraversalStateBuilder.h: Added. (WebCore::SVGPathTraversalStateBuilder::setCurrentTraversalState): (WebCore::SVGPathTraversalStateBuilder::cleanup): (WebCore::SVGPathTraversalStateBuilder::lineToHorizontal): (WebCore::SVGPathTraversalStateBuilder::lineToVertical): (WebCore::SVGPathTraversalStateBuilder::curveToCubicSmooth): (WebCore::SVGPathTraversalStateBuilder::curveToQuadratic): (WebCore::SVGPathTraversalStateBuilder::curveToQuadraticSmooth): (WebCore::SVGPathTraversalStateBuilder::arcTo):
6:09 AM Changeset in webkit [65604] by hamaji@chromium.org
  • 3 edits in trunk/WebKit/chromium

2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r65238.
http://trac.webkit.org/changeset/65238
https://bugs.webkit.org/show_bug.cgi?id=44168

Check if clobbering chromium bot fixes the layout test
failures (Requested by hamaji on #webkit).

  • public/WebFrameClient.h: (WebKit::WebFrameClient::frameDetached):
  • src/FrameLoaderClientImpl.cpp: (WebKit::FrameLoaderClientImpl::detachedFromParent3):
6:03 AM QtScript edited by kent.hansen@nokia.com
(diff)
5:36 AM Changeset in webkit [65603] by commit-queue@webkit.org
  • 3 edits in trunk/WebCore

2010-08-18 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>

Reviewed by Steve Block.

[Qt] Request for permission before starting Geolocation service
https://bugs.webkit.org/show_bug.cgi?id=42027

Handles starting location acquisition when request is granted for ports using
"!CLIENT_BASED_GEOLOCATION and PREEMPT_GEOLOCATION_PERMISSION" policy
Only Qt port as of today uses the above combination. Enable
PREEMPT_GEOLOCATION_PERMISSION for qt port.

Below tests cover these changes on platform using PREEMPT_GEOLOCATION_PERMISSION

  • fast/dom/Geolocation/delayed-permission-allowed.html
  • fast/dom/Geolocation/delayed-permission-denied.html
  • fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html
  • fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html
  • WebCore.pro:
  • page/Geolocation.cpp: (WebCore::Geolocation::handlePendingPermissionNotifiers):
5:25 AM Changeset in webkit [65602] by morrita@google.com
  • 2 edits in trunk/LayoutTests

2010-08-18 Yuta Kitamura <yutak@chromium.org>

Unreviewed, test expectation update.

Remove duplicate expectation.

Update Chromium test expectations
https://bugs.webkit.org/show_bug.cgi?id=44162

  • platform/chromium/test_expectations.txt:
5:15 AM Changeset in webkit [65601] by zoltan@webkit.org
  • 2 edits in trunk/WebKit2

2010-08-18 Zoltan Horvath <zoltan@webkit.org>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Forwards QtWebProcess' stdout, stderr onto the UI process
https://bugs.webkit.org/show_bug.cgi?id=44159

For debugging purposes forwards stdout and stderr of QtWebProcess onto the UI process.

  • UIProcess/Launcher/qt/ProcessLauncherQt.cpp: (WebKit::ProcessLauncherHelper::launch):
4:42 AM Changeset in webkit [65600] by Adam Roben
  • 2 edits in trunk/WebKitTools

Fix hang when saving crash logs on Windows

  • Scripts/old-run-webkit-tests:

(setUpWindowsCrashLogSaving):
(END):
Pass -s to regtool so it will write the Auto value as a string instead
of as a number. This was causing a "do you want to debug?" dialog to
appear.

3:44 AM Changeset in webkit [65599] by morrita@google.com
  • 2 edits in trunk/LayoutTests

2010-08-18 Yuta Kitamura <yutak@chromium.org>

Unreviewed. test expectation update.

Update Chromium test expectations.
https://bugs.webkit.org/show_bug.cgi?id=44162

  • platform/chromium/test_expectations.txt:
3:35 AM Changeset in webkit [65598] by loislo@chromium.org
  • 19 edits
    1 add
    1 delete in trunk

2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r65595.
http://trac.webkit.org/changeset/65595
https://bugs.webkit.org/show_bug.cgi?id=44161

qt build failed (Requested by loislo on #webkit).

  • GNUmakefile.am:

2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r65595.
http://trac.webkit.org/changeset/65595
https://bugs.webkit.org/show_bug.cgi?id=44161

qt build failed (Requested by loislo on #webkit).

  • platform/gtk/Skipped:

2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r65595.
http://trac.webkit.org/changeset/65595
https://bugs.webkit.org/show_bug.cgi?id=44161

qt build failed (Requested by loislo on #webkit).

  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.pro:
  • WebCore.vcproj/copyInspectorFiles.cmd:
  • WebCore.xcodeproj/project.pbxproj:
  • combine-javascript-resources:
  • inspector/CodeGeneratorInspector.pm:
  • inspector/front-end/InspectorBackendStub.js: Added. (WebInspector.InspectorBackendStub): (WebInspector.InspectorBackendStub.prototype._registerDelegate): (WebInspector.InspectorBackendStub.prototype.sendMessageToBackend):
  • inspector/front-end/InspectorBackendStub.qrc: Removed.
  • inspector/front-end/WebKit.qrc:

2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r65595.
http://trac.webkit.org/changeset/65595
https://bugs.webkit.org/show_bug.cgi?id=44161

qt build failed (Requested by loislo on #webkit).

  • WebKit.gyp:

2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r65595.
http://trac.webkit.org/changeset/65595
https://bugs.webkit.org/show_bug.cgi?id=44161

qt build failed (Requested by loislo on #webkit).

  • WebCoreSupport/InspectorClientGtk.cpp: (WebKit::InspectorClient::openInspectorFrontend):
3:09 AM Changeset in webkit [65597] by pfeldman@chromium.org
  • 4 edits in trunk/WebCore

2010-08-18 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: make objectId of string type instead of object.
https://bugs.webkit.org/show_bug.cgi?id=44160

  • WebCore.xcodeproj/project.pbxproj:
  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor.):
  • inspector/front-end/InjectedScriptAccess.js: (get InjectedScriptAccess.getForObjectId):
  • inspector/front-end/RemoteObject.js: (WebInspector.RemoteObject.prototype.getProperties): (WebInspector.RemoteObject.prototype.setPropertyValue): (WebInspector.RemoteObject.prototype.pushNodeToFrontend):
3:02 AM Changeset in webkit [65596] by loki@webkit.org
  • 3 edits in trunk/JavaScriptCore

2010-08-18 Gabor Loki <loki@webkit.org>

Reviewed by Gavin Barraclough.

The JITStackFrame is wrong using Thumb-2 JIT with JSVALUE32_64
https://bugs.webkit.org/show_bug.cgi?id=43897

A 64 bits wide member in a structure is aligned to 8 bytes on ARM by
default, but this is not taken into account in the offset defines of
JITStackFrame.

  • jit/JITStubs.cpp:
  • jit/JITStubs.h:
3:00 AM Changeset in webkit [65595] by loislo@chromium.org
  • 19 edits
    1 add
    1 delete in trunk

2010-08-16 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: replace hand written InspectorBackendStub.js by generated one.
New command-line flag was added to combine-javascript-resources.
It specifies the location of generated scripts.
https://bugs.webkit.org/show_bug.cgi?id=43791

  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • combine-javascript-resources:
  • inspector/CodeGeneratorInspector.pm:
  • inspector/front-end/InspectorBackendStub.js: Removed.
  • inspector/front-end/WebKit.qrc:

2010-08-16 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: replace hand written InspectorBackendStub.js by generated one.
https://bugs.webkit.org/show_bug.cgi?id=43791

  • GNUmakefile.am:

2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

WebInspector: inspector tests for GTK were added to Skip list.
They should be enabled later.
Bug for GTK https://bugs.webkit.org/show_bug.cgi?id=43977
https://bugs.webkit.org/show_bug.cgi?id=43791

  • platform/gtk/Skipped:

2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: replace hand written InspectorBackendStub.js by generated one.
https://bugs.webkit.org/show_bug.cgi?id=43791

  • WebKit.gyp:

2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: replace hand written InspectorBackendStub.js by generated one.
https://bugs.webkit.org/show_bug.cgi?id=43791

  • WebCoreSupport/InspectorClientGtk.cpp: (WebKit::InspectorClient::openInspectorFrontend):
2:37 AM Changeset in webkit [65594] by pfeldman@chromium.org
  • 5 edits in trunk/WebKit/chromium

2010-08-17 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Yury Semikhatsky.

Chromium DevTools: Support runtime property name/value pairs
instead of feature names as navigation state.
https://bugs.webkit.org/show_bug.cgi?id=44054

  • public/WebDevToolsAgent.h:
  • public/WebDevToolsAgentClient.h: (WebKit::WebDevToolsAgentClient::runtimePropertyChanged):
  • src/WebDevToolsAgentImpl.cpp: (WebKit::WebDevToolsAgentImpl::setRuntimeProperty): (WebKit::WebDevToolsAgentImpl::setApuAgentEnabled):
  • src/WebDevToolsAgentImpl.h:
1:56 AM Changeset in webkit [65593] by barraclough@apple.com
  • 16 edits in trunk/JavaScriptCore

Rename UString::substr to substringSharingImpl, add to WTF::String.
Now WTF::String can do everything that JSC::UString can do!

Rubber stamped by Sam Weinig.

(JSC::escapeQuotes):

  • bytecompiler/NodesCodegen.cpp:

(JSC::substitute):

  • parser/SourceProvider.h:

(JSC::UStringSourceProvider::getRange):

  • runtime/FunctionPrototype.cpp:

(JSC::insertSemicolonIfNeeded):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::parseInt):

  • runtime/JSONObject.cpp:

(JSC::gap):
(JSC::Stringifier::indent):
(JSC::Stringifier::unindent):

  • runtime/JSString.cpp:

(JSC::JSString::replaceCharacter):

  • runtime/NumberPrototype.cpp:

(JSC::numberProtoFuncToFixed):
(JSC::numberProtoFuncToPrecision):

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncReplace):
(JSC::trimString):

  • runtime/UString.cpp:

(JSC::UString::substringSharingImpl):

  • runtime/UString.h:
  • wtf/text/WTFString.cpp:

(WTF::String::substringSharingImpl):

  • wtf/text/WTFString.h:
1:44 AM Changeset in webkit [65592] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

Windows build fix.

1:42 AM Changeset in webkit [65591] by hamaji@chromium.org
  • 2 edits in trunk/WebCore

2010-08-18 Shinichiro Hamaji <hamaji@chromium.org>

Reviewed by Dimitri Glazkov.

Printer font is different from screen font
https://bugs.webkit.org/show_bug.cgi?id=43340

Not testable because PNG output in layoutTestController.setPrinting
for chromium isn't implemented yet.

  • platform/graphics/FontDescription.h: Use screen font even for printing on Mac Chromium (WebCore::FontDescription::setUsePrinterFont):
1:38 AM Changeset in webkit [65590] by zherczeg@webkit.org
  • 5 edits
    4 adds in trunk

WebCore: Fix displaying problem of feTurbulence.
https://bugs.webkit.org/show_bug.cgi?id=44111

Patch by Renata Hodovan <reni@inf.u-szeged.hu> on 2010-08-18
Reviewed by Dirk Schulze.

Change the order of calculating turbulenceFunctionResult
and clamping it. Furthermore remove the unnecessary rounding of m_seed.
Add a new test for checking the change of seed's value.

Test: svg/W3C-SVG-1.1/filters-turb-02-f.svg

  • svg/graphics/filters/SVGFETurbulence.cpp:

(WebCore::FETurbulence::initPaint):
(WebCore::FETurbulence::calculateTurbulenceValueForPoint):
(WebCore::FETurbulence::apply):

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

Patch by Renata Hodovan <reni@inf.u-szeged.hu> on 2010-08-18
Reviewed by Dirk Schulze.

Update expected result of test svg/W3C-SVG-1.1/filters-turb-01-f.svg and
add a new test for checking the change of the seed value.

  • platform/mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.checksum:
  • platform/mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.checksum: Added.
  • platform/mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png: Added.
  • platform/mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.txt: Added.
  • svg/W3C-SVG-1.1/filters-turb-02-f.svg: Added.
1:16 AM Changeset in webkit [65589] by barraclough@apple.com
  • 3 edits in trunk/JavaScriptCore

Windows build fix.

12:41 AM Changeset in webkit [65588] by barraclough@apple.com
  • 27 edits
    2 adds in trunk

Bug 44146 - Remove toDouble/toUInt32 methods from UString.

Reviewed by Sam Weinig.

JavaScriptCore:

These methods all implement JavaScript language specific behaviour, and as such
are not suited to being on a generic string object. They are also inefficient
and incorrectly used, refactor & cleanup. Uses of these methods really divide
out into two cases.

ToNumber:
Uses of toDouble from JSString and from parseFloat are implementing ecma's
ToNumber conversion from strings (see ecma-262 9.3.1), so UString::toDouble
should largely just be moved out to a global jsToNumber function. ToNumber is
capable of recognizing either decimal or hexadecimal numbers, but parseFloat
should only recognize decimal values. This is currently handled by testing for
hexadecimal before calling toDouble, which should unnecessary - instead we can
just split out the two parts to the grammar into separate functions. Also,
strtod recognizes a set of literals (nan, inf, and infinity - all with any
capitalization) - which are not defined by any of the specs we are implementing.
To handle this we need to perform additional work in toDouble to convert the
unsupported cases of infinities back to NaNs. Instead we should simply remove
support for this literals from strtod. This should provide a more desirable
behaviour for all clients of strtod.

Indexed properties:
Uses of the toStrictUInt32 methods are were all converting property names to
indices, and all uses of toUInt32 were incorrect; in all cases we should have
been calling toUInt32. This error results in some incorrect behaviour in the
DOM (accessing property "0 " of a NodeList should fail; it currently does not).
Move this method onto Identifier (our canonical property name), and make it
always perform a strict conversion. Add a layout test to check NodeList does
convert indexed property names correctly.

(JSC::Arguments::getOwnPropertySlot):
(JSC::Arguments::getOwnPropertyDescriptor):
(JSC::Arguments::put):
(JSC::Arguments::deleteProperty):

  • runtime/Identifier.cpp:

(JSC::Identifier::toUInt32):

  • runtime/Identifier.h:

(JSC::Identifier::toUInt32):

  • runtime/JSArray.cpp:

(JSC::JSArray::getOwnPropertySlot):
(JSC::JSArray::getOwnPropertyDescriptor):
(JSC::JSArray::put):
(JSC::JSArray::deleteProperty):

  • runtime/JSArray.h:

(JSC::Identifier::toArrayIndex):

  • runtime/JSByteArray.cpp:

(JSC::JSByteArray::getOwnPropertySlot):
(JSC::JSByteArray::getOwnPropertyDescriptor):
(JSC::JSByteArray::put):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::isInfinity):
(JSC::jsHexIntegerLiteral):
(JSC::jsStrDecimalLiteral):
(JSC::jsToNumber):
(JSC::parseFloat):

  • runtime/JSGlobalObjectFunctions.h:
  • runtime/JSString.cpp:

(JSC::JSString::getPrimitiveNumber):
(JSC::JSString::toNumber):
(JSC::JSString::getStringPropertyDescriptor):

  • runtime/JSString.h:

(JSC::JSString::getStringPropertySlot):

  • runtime/ObjectPrototype.cpp:

(JSC::ObjectPrototype::put):

  • runtime/StringObject.cpp:

(JSC::StringObject::deleteProperty):

  • runtime/UString.cpp:
  • runtime/UString.h:
  • wtf/dtoa.cpp:

(WTF::strtod):

WebCore:

These methods all implement JavaScript language specific behaviour, and as such
are not suited to being on a generic string object. They are also inefficient
and incorrectly used, refactor & cleanup. Uses of these methods really divide
out into two cases.

ToNumber:
Uses of toDouble from JSString and from parseFloat are implementing ecma's
ToNumber conversion from strings (see ecma-262 9.3.1), so UString::toDouble
should largely just be moved out to a global jsToNumber function. ToNumber is
capable of recognizing either decimal or hexadecimal numbers, but parseFloat
should only recognize decimal values. This is currently handled by testing for
hexadecimal before calling toDouble, which should unnecessary - instead we can
just split out the two parts to the grammar into separate functions. Also,
strtod recognizes a set of literals (nan, inf, and infinity - all with any
capitalization) - which are not defined by any of the specs we are implementing.
To handle this we need to perform additional work in toDouble to convert the
unsupported cases of infinities back to NaNs. Instead we should simply remove
support for this literals from strtod. This should provide a more desirable
behaviour for all clients of strtod.

Indexed properties:
Uses of the toStrictUInt32 methods are were all converting property names to
indices, and all uses of toUInt32 were incorrect; in all cases we should have
been calling toUInt32. This error results in some incorrect behaviour in the
DOM (accessing property "0 " of a NodeList should fail; it currently does not).
Move this method onto Identifier (our canonical property name), and make it
always perform a strict conversion. Add a layout test to check NodeList does
convert indexed property names correctly.

Test: fast/dom/NodeList/nodelist-item-with-index.html

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertyDescriptor):

  • bindings/js/JSHTMLAllCollectionCustom.cpp:

(WebCore::callHTMLAllCollection):
(WebCore::JSHTMLAllCollection::item):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::callHTMLCollection):
(WebCore::JSHTMLCollection::item):

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::callNodeList):

  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::getOwnPropertySlot):
(JSC::RuntimeArray::getOwnPropertyDescriptor):
(JSC::RuntimeArray::put):

LayoutTests:

Test that indexing into nodelists works correctly, particularly
wrt indices passed as strings that contain whitespace.

  • fast/dom/NodeList/nodelist-item-with-index-expected.txt: Added.
  • fast/dom/NodeList/nodelist-item-with-index.html: Added.
12:37 AM Changeset in webkit [65587] by abarth@webkit.org
  • 2 edits in trunk/WebCore

2010-08-18 Adam Barth <abarth@webkit.org>

Reviewed by Adele Peterson.

Null dereference in DOMSelection::deleteFromDocument
https://bugs.webkit.org/show_bug.cgi?id=44153

deleteFromDocument checks selection->isNone() before calling
selection->selection().toNormalizedRange(), but toNormalizedRange()
notes that it needs to updateLayout(), which can make the selection
isNone() again. In that case, we crash on a NULL pointer in
deleteFromDocument. I don't know how to trigger that situation in a
test, but cross_fuzz was able to hit it, so we should fix it.

  • page/DOMSelection.cpp: (WebCore::DOMSelection::deleteFromDocument):
Note: See TracTimeline for information about the timeline view.