Timeline


and

08/19/10:

21:51 Changeset [65726] by commit-queue@webkit.org

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):
21:28 Changeset [65725] by tkent@chromium.org

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:
20:57 Changeset [65724] by commit-queue@webkit.org

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):
20:37 Changeset [65723] by commit-queue@webkit.org

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.
19:51 Changeset [65722] by commit-queue@webkit.org

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.
18:22 Changeset [65721] by rniwa@webkit.org

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.
18:05 Changeset [65720] by mrobinson@webkit.org

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.
17:58 Changeset [65719] by jamesr@google.com

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:
17:47 Changeset [65718] by kinuko@chromium.org

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):
17:46 Changeset [65717] by vangelis@chromium.org

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:
17:40 Changeset [65716] by simon.fraser@apple.com

2010-08-19 Simon Fraser <simon.fraser@apple.com>

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):
17:03 Changeset [65715] by kinuko@chromium.org

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:
16:39 Changeset [65714] by commit-queue@webkit.org

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:
15:52 Changeset [65713] by ddkilzer@apple.com

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.

15:35 Changeset [65712] by abarth@webkit.org

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.
15:09 Changeset [65711] by ddkilzer@apple.com

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.

14:59 Changeset [65710] by johnnyg@google.com

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:
14:41 Changeset [65709] by weinig@apple.com

Add a few items in the WebKitTestRunner Skipped list.

Rubber-stamped by Jon Honeycutt.

  • platform/mac-wk2/Skipped:
14:32 Changeset [65708] by ddkilzer@apple.com

BUILD FIX: FrameLoaderClientQt.h should include ResourceError.h

  • WebCoreSupport/FrameLoaderClientQt.h: Include ResourceError.h.
14:25 Changeset [65707] by ddkilzer@apple.com

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.

14:23 Changeset [65706] by aroben@apple.com

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.

14:22 Changeset [65705] by aroben@apple.com

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.)

14:22 Changeset [65704] by aroben@apple.com

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.

14:22 Changeset [65703] by aroben@apple.com

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.

14:21 Changeset [65702] by aroben@apple.com

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.

14:21 Changeset [65701] by aroben@apple.com

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.

14:13 Changeset [65700] by senorblanco@chromium.org

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.
14:09 Changeset [65699] by weinig@apple.com

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.

14:03 Changeset [65698] by andreas.kling@nokia.com

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):
13:51 Changeset [65697] by ddkilzer@apple.com

<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.

13:46 Changeset [65696] by ojan@chromium.org

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:
13:16 Changeset [65695] by johnnyg@google.com

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:
13:04 Changeset [65694] by ojan@chromium.org

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 Changeset [65693] by johnnyg@google.com

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 Changeset [65692] by eric@webkit.org

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 Changeset [65691] by ddkilzer@apple.com

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 Changeset [65690] by laszlo.1.gombos@nokia.com

2010-08-19 Laszlo Gombos <laszlo.1.gombos@nokia.com>

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 Changeset [65689] by zmo@google.com

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 Changeset [65688] by commit-queue@webkit.org

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 Changeset [65687] by johnnyg@google.com

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 WebKit Team edited by kbr@google.com
Adjusting my (kbr's) status from committer to reviewer. (diff)
11:28 Changeset [65686] by tony@chromium.org

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 Changeset [65685] by kbr@google.com

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 Changeset [65684] by eric.carlson@apple.com

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 Changeset [65683] by simon.fraser@apple.com

2010-08-19 Simon Fraser <simon.fraser@apple.com>

Fix Chromium build.

  • svg/SVGElement.cpp: (WebCore::SVGElement::attributeChanged):
10:35 Changeset [65682] by johnnyg@google.com

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 Changeset [65681] by simon.fraser@apple.com

2010-08-19 Simon Fraser <simon.fraser@apple.com>

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 Changeset [65680] by rniwa@webkit.org

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 Changeset [65679] by tony@chromium.org

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

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

09:54 Changeset [65678] by tony@chromium.org

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

Unreviewed. Just removing \r's from ChangeLog.

09:46 Changeset [65677] by pfeldman@chromium.org

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):
09:11 Changeset [65676] by jochen@chromium.org

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:
08:47 Changeset [65675] by weinig@apple.com

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.

08:44 Changeset [65674] by commit-queue@webkit.org

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: ():
08:19 Changeset [65673] by jorlow@chromium.org

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):
08:06 Changeset [65672] by commit-queue@webkit.org

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):
08:04 Changeset [65671] by pfeldman@chromium.org

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:
07:53 Changeset [65670] by andreip@google.com

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::):
07:47 Changeset [65669] by pfeldman@chromium.org

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:
07:47 Changeset [65668] by girish@forwardbias.in

[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):

07:38 Changeset [65667] by jorlow@chromium.org

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):
06:30 Changeset [65666] by kov@webkit.org

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):
05:41 Changeset [65665] by zimmermann@webkit.org

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:
05:35 Changeset [65664] by ossy@webkit.org

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.
05:28 Changeset [65663] by pfeldman@chromium.org

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:
05:19 Changeset [65662] by commit-queue@webkit.org

2010-08-19 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>

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:
04:00 Changeset [65661] by alex@webkit.org

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:
01:21 Changeset [65660] by philn@webkit.org

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
01:16 Changeset [65659] by andreas.kling@nokia.com

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.
01:04 Changeset [65658] by philn@webkit.org

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.
00:45 Changeset [65657] by rniwa@webkit.org

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):
00:18 Changeset [65656] by commit-queue@webkit.org

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:

08/18/10:

23:56 Changeset [65655] by andreas.kling@nokia.com

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):
22:59 Changeset [65654] by ariya@webkit.org

[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):

22:56 Changeset [65653] by andreas.kling@nokia.com

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):
22:41 Changeset [65652] by mitz@apple.com

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.
22:38 Changeset [65651] by commit-queue@webkit.org

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):
22:20 Changeset [65650] by commit-queue@webkit.org

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.
21:35 Changeset [65649] by mrobinson@webkit.org

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.
19:14 Changeset [65648] by morrita@google.com

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:
18:04 Changeset [65647] by rniwa@webkit.org

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):
17:26 Changeset [65646] by bdakin@apple.com

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.

16:52 Changeset [65645] by jianli@chromium.org

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.
16:46 Changeset [65644] by weinig@apple.com

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:
16:46 Changeset [65643] by commit-queue@webkit.org

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.
16:33 Changeset [65642] by jianli@chromium.org

Fix layout test crashes in chromium.

  • src/BlobRegistryProxy.cpp:

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

16:26 Changeset [65641] by jianli@chromium.org

Fix chromium build break.

  • src/WebBlobStorageData.cpp:

(WebKit::WebBlobStorageData::itemAt):

16:23 Changeset [65640] by commit-queue@webkit.org

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:
16:19 Changeset [65639] by crogers@google.com

merge trunk 65443:65473 into audio branch

16:10 Changeset [65638] by mrowe@apple.com

Make it so the WebKit2 test slave runs the WebKit2 tests

Reviewed by Sam Weinig.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:
15:48 Changeset [65637] by jianli@chromium.org

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.
15:46 Changeset [65636] by dumi@chromium.org

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):

15:45 Changeset [65635] by mrobinson@webkit.org

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.
15:34 Changeset [65634] by victorw@chromium.org

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

Unreviewed. Fix chromium multi dll build.

  • public/WebIDBKeyPath.h:
15:05 Changeset [65633] by jcivelli@chromium.org

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):
14:45 Changeset [65632] by abarth@webkit.org

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):
14:20 Changeset [65631] by commit-queue@webkit.org

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.
14:20 Changeset [65630] by weinig@apple.com

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:
14:11 Changeset [65629] by laszlo.1.gombos@nokia.com

2010-08-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Unreviewed, trivial Symbian build fix.

[Qt] Remove unnecessary QtGui include from NotificationPresenterClientQt.cpp

  • WebCoreSupport/NotificationPresenterClientQt.cpp:
13:51 Changeset [65628] by ojan@chromium.org

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:
13:43 Changeset [65627] by senorblanco@chromium.org

Fix my badly-merged ChangeLog entry.

13:05 Changeset [65626] by andreas.kling@nokia.com

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 Changeset [65625] by commit-queue@webkit.org

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 Changeset [65624] by crogers@google.com

Ref-counting and other cleanup for CachedAudio

12:12 Changeset [65623] by crogers@google.com

V8 bindings fix for JavaScriptAudioNode

12:03 Changeset [65622] by jianli@chromium.org

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 Changeset [65621] by hyatt@apple.com

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 Changeset [65620] by weinig@apple.com

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 Changeset [65619] by jamesr@google.com

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 Changeset [65618] by jberlin@webkit.org

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 Changeset [65617] by senorblanco@chromium.org

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 Changeset [65616] by ossy@webkit.org

[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 Changeset [65615] by kov@webkit.org

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 Changeset [65614] by ojan@chromium.org

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 Changeset [65613] by andreas.kling@nokia.com

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):
09:52 Changeset [65612] by girish@forwardbias.in

[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):

09:09 Changeset [65611] by commit-queue@webkit.org

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):
09:02 Changeset [65610] by commit-queue@webkit.org

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:
08:30 Changeset [65609] by loislo@chromium.org

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

Unreviewed qt build fix.

  • WebCore.pri:
07:36 Changeset [65608] by loislo@chromium.org

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):
07:18 Changeset [65607] by commit-queue@webkit.org

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):
06:27 Changeset [65606] by yurys@chromium.org

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:
06:20 Changeset [65605] by krit@webkit.org

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):
06:09 Changeset [65604] by hamaji@chromium.org

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):
06:03 QtScript edited by kent.hansen@nokia.com
(diff)
05:36 Changeset [65603] by commit-queue@webkit.org

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):
05:25 Changeset [65602] by morrita@google.com

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:
05:15 Changeset [65601] by zoltan@webkit.org

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):
04:42 Changeset [65600] by aroben@apple.com

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.

03:44 Changeset [65599] by morrita@google.com

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:
03:35 Changeset [65598] by loislo@chromium.org

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):
03:09 Changeset [65597] by pfeldman@chromium.org

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):
03:02 Changeset [65596] by loki@webkit.org

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:
03:00 Changeset [65595] by loislo@chromium.org

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):
02:37 Changeset [65594] by pfeldman@chromium.org

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:
01:56 Changeset [65593] by barraclough@apple.com

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:
01:44 Changeset [65592] by barraclough@apple.com

Windows build fix.

01:42 Changeset [65591] by hamaji@chromium.org

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):
01:38 Changeset [65590] by zherczeg@webkit.org

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.
01:16 Changeset [65589] by barraclough@apple.com

Windows build fix.

00:41 Changeset [65588] by barraclough@apple.com

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.
00:37 Changeset [65587] by abarth@webkit.org

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):

08/17/10:

20:53 Changeset [65586] by girish@forwardbias.in

Reviewed by Antonio Gomes.

[Qt] On Maemo5, there is no libgdk-x11-2.0.so symlink. Look for
libgdk-x11-2.0.so.0 instead on X11 and Maemo5.

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

  • plugins/qt/PluginViewQt.cpp:

(WebCore::getPluginDisplay):

20:08 Changeset [65585] by xan@webkit.org

2010-08-17 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Fix the builds when HAVE_GSETTINGS is defined.

  • webkit/webkitprivate.cpp: (isSchemaAvailable): (inspectorGSettings):
18:55 Changeset [65584] by commit-queue@webkit.org

2010-08-17 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>

Reviewed by Daniel Bates.

REGRESSION(53060): http/tests/security/xssAuditor/malformed-HTML.html timed out on Qt Linux Release Bot
https://bugs.webkit.org/show_bug.cgi?id=33460

Enable http/tests/security/xssAuditor/malformed-HTML.html
tested with qt-4.7 and qt-4.6.

  • platform/qt/Skipped:
18:38 Changeset [65583] by commit-queue@webkit.org

2010-08-17 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>

Reviewed by Ariya Hidayat.

Enable http/tests/security/cross-frame-access-name-getter.html

[Qt] http/tests/security/cross-frame-access-name-getter.html timed out
https://bugs.webkit.org/show_bug.cgi?id=38540

Test works with qt-4.7 and qt-4.6.

  • platform/qt/Skipped:
18:37 Changeset [65582] by victorw@chromium.org

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

Unreviewed. Fixed chromium incremental test json upload.
Quote builder name and test results server in url.

  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
18:22 Changeset [65581] by laszlo.1.gombos@nokia.com

2010-08-17 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by Ariya Hidayat.

[Qt] [Symbian] Consistently use Q_OS_SYMBIAN to guard all Symbian platform dependencies
https://bugs.webkit.org/show_bug.cgi?id=44124

Q_WS_S60 is not defined for Symbian4 devices as Q_WS_S60 used to guard
Avkon UI framework dependencies. Use Q_OS_SYMBIAN everywhere to mark
Symbian dependencies.

  • WebCoreSupport/QtFallbackWebPopup.cpp: (WebCore::QtFallbackWebPopup::populate):

2010-08-17 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by Ariya Hidayat.

[Qt] [Symbian] Consistently use Q_OS_SYMBIAN to guard all Symbian platform dependencies
https://bugs.webkit.org/show_bug.cgi?id=44124

Q_WS_S60 is not defined for Symbian4 devices as Q_WS_S60 used to guard
Avkon UI framework dependencies. Use Q_OS_SYMBIAN everywhere to mark
Symbian dependencies.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::open):
  • QtTestBrowser/launcherwindow.cpp: (LauncherWindow::init): (LauncherWindow::toggleFullScreenMode): (LauncherWindow::showFPS): (LauncherWindow::updateFPS):
  • QtTestBrowser/launcherwindow.h: (WindowOptions::WindowOptions):
  • QtTestBrowser/mainwindow.cpp: (MainWindow::buildUI):
18:20 Changeset [65580] by ariya@webkit.org

[Qt] Remove unused ContextShadowParameter class in GraphicsContextQt
https://bugs.webkit.org/show_bug.cgi?id=44142

Patch by Ariya Hidayat <ariya@sencha.com> on 2010-08-17
Reviewed by Antonio Gomes.

The class is not needed anymore after r65425.
We know have dedicated ContextShadow in its own file.

  • platform/graphics/qt/GraphicsContextQt.cpp:
18:01 Changeset [65579] by darin@apple.com

Add NetworkingContext to avoid layer violations
https://bugs.webkit.org/show_bug.cgi?id=42292

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2010-08-17
Reviewed by Darin Adler.

Preparation: Just add the files to the build system.

.:

  • GNUmakefile.am: Added new files.

WebCore:

  • GNUmakefile.am: Added new files.
  • WebCore.gypi: Ditto.
  • WebCore.pro: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • loader/FrameNetworkingContext.h: Added.
  • platform/network/NetworkingContext.h: Added.

Placeholders with tentative code that might be changed when landing
the rest of it.

WebKit:

  • WebKit.xcodeproj/project.pbxproj: Added new files.

WebKit/chromium:

  • WebKit.gyp: Added new files.
  • src/FrameNetworkingContextImpl.h: Added.

Placeholder with tentative code that might be changed when landing
the rest of it.

WebKit/gtk:

  • WebCoreSupport/FrameNetworkingContextGtk.h: Added.

Placeholder with tentative code that might be changed when landing
the rest of it.

WebKit/mac:

  • WebCoreSupport/WebFrameNetworkingContext.h: Added.

Placeholder with tentative code that might be changed when landing
the rest of it.

  • WebCoreSupport/WebFrameNetworkingContext.mm: Added.

Empty placeholder for now.

WebKit/qt:

  • WebCoreSupport/FrameNetworkingContextQt.cpp: Added.

Empty placeholder for now.

  • WebCoreSupport/FrameNetworkingContextQt.h: Added.

Placeholder with tentative code that might be changed when landing
the rest of it.

WebKit/win:

  • WebCoreSupport/WebFrameNetworkingContext.cpp: Added.

Empty placeholder for now.

  • WebCoreSupport/WebFrameNetworkingContext.h: Added.

Placeholder with tentative code that might be changed when landing
the rest of it.

  • WebKit.vcproj/WebKit.vcproj: Added new files.

WebKit2:

  • WebKit2.xcodeproj/project.pbxproj: Added new files.
  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h: Added.

Placeholder with tentative code that might be changed when landing
the rest of it.

  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: Added.

Empty placeholder for now.

17:59 Changeset [65578] by dpranke@chromium.org

2010-08-17 Dirk Pranke <dpranke@chromium.org>

Reviewed by David Levin.

new-run-webkit-tests: remove --show-sources option

--show-sources is pretty much obsolete with --trace everything, so
I'm removing it.

Also rename a couple of methods in the TestTextDiff class to make their
intended visibility (private) more obvious.

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

  • Scripts/webkitpy/layout_tests/layout_package/printing.py:
  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:
  • Scripts/webkitpy/layout_tests/test_types/image_diff.py:
  • Scripts/webkitpy/layout_tests/test_types/test_type_base.py:
  • Scripts/webkitpy/layout_tests/test_types/text_diff.py:
17:55 Changeset [65577] by dpranke@chromium.org

2010-08-17 Dirk Pranke <dpranke@chromium.org>

Reviewed by David Levin.

remove --fuzzy-image-diff in new-run-webkit-tests (it doesn't work)

This code bit-rotted at some point more than a year ago, and nobody seems
to miss it. old-run-webkit-tests has a --tolerance flag that new-run-webkit-tests
should support instead, making this flag unnecessary anyway.

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

  • Scripts/webkitpy/layout_tests/layout_package/test_failures.py:
  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:
  • Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: Removed.
17:41 Changeset [65576] by bdakin@apple.com

Adding a MathML Demo and screenshot.

Rubber-stamped by Adele.

  • blog-files/riemann-screenshot.png: Added.
  • demos/mathml: Added.
  • demos/mathml/MathMLDemo.xhtml: Added.
16:57 Changeset [65575] by commit-queue@webkit.org

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

Reviewed by Dimitri Glazkov.

transitions/change-values-during-transition.html fails intermittently
https://bugs.webkit.org/show_bug.cgi?id=28461

Make test less flaky during high CPU usage by changing the expectation
from a hardcoded value to an interpolated one based on when the timeout
actually fires. Made the test much more reliable when running with
--iterations=100 while maxing out the CPU on my machine with a
background process.

  • transitions/change-values-during-transition.html:
16:56 Changeset [65574] by victorw@chromium.org

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

Reviewed by Ojan Vafai.

Update json results generator to have incremental json including
results for tests that pass in current run but failed before.

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

  • Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:
16:40 Changeset [65573] by commit-queue@webkit.org

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

Reviewed by Darin Fisher.

Back button after Google search result click broken
https://bugs.webkit.org/show_bug.cgi?id=44086

Added a reduced test case of Google search result click behavior,
renamed gesture-before-onload-target.html to redirect-target.html
since it's useful for this test too.

  • fast/history/gesture-before-onload-form-submit-expected.txt:
  • fast/history/gesture-before-onload-form-submit.html:
  • fast/history/gesture-before-onload-location-href-expected.txt:
  • fast/history/gesture-before-onload-location-href.html:
  • fast/history/redirect-via-iframe-expected.txt: Added.
  • fast/history/redirect-via-iframe.html: Added.
  • fast/history/resources/iframe-redirect.html: Added.
  • fast/history/resources/redirect-target.html: Renamed from LayoutTests/fast/history/resources/gesture-before-onload-target.html.

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

Reviewed by Darin Fisher.

Back button after Google search result click broken
https://bugs.webkit.org/show_bug.cgi?id=44086

Test: fast/history/redirect-via-iframe.html

isLoadingInAPISense doesn't quite map to onload (it also returns true
if frames are loading, even after the parent frame has fired its onload
handler). Instead, add a flag for the onload event being fired, and
use that.

  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::DocumentLoader):
  • loader/DocumentLoader.h: (WebCore::DocumentLoader::handledOnloadEvents): (WebCore::DocumentLoader::wasOnloadHandled):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::handledOnloadEvents):
  • loader/RedirectScheduler.cpp: (WebCore::RedirectScheduler::mustLockBackForwardList):
16:11 Changeset [65572] by dpranke@chromium.org

2010-08-17 Dirk Pranke <dpranke@chromium.org>

Reviewed by Eric Seidel.

fix test-webkitpy, add easy way to find a checkout root

test-webkitpy currently doesn't work right if run from someplace other
than the checkout root, and it spews a bunch of debug logging because
the deduplicate_tests tests contaminates the test environment.

This patch cleans up the deduplicate_tests unit tests, and creates
two new methods in scm.py: find_checkout_root() and default_scm(),
both of which use a single algorithm for guessing what checkout root
to use if you aren't explicitly told one from a path.

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

  • Scripts/deduplicate-tests:
  • Scripts/webkitpy/common/checkout/scm.py:
  • Scripts/webkitpy/common/checkout/scm_unittest.py:
  • Scripts/webkitpy/layout_tests/deduplicate_tests.py:
  • Scripts/webkitpy/layout_tests/deduplicate_tests_unittest.py:
  • Scripts/webkitpy/layout_tests/port/test.py:
  • Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
  • Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests_unittest.py:
  • Scripts/webkitpy/tool/main.py:
16:05 Changeset [65571] by barraclough@apple.com

Bug 44099 - REGRESSION(r65468): Crashes in StringImpl::find

Reviewed by Sam Weinig.

Bug 44080 introuduced a couple of cases in which array bounds could be overrun.
One of these was fixed in r65493, this patch fixes the other and address the
concerns voiced in comment #6 by restructuring the loops to remove the code
dupliction without introducing an additional if check.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::find):
(WTF::StringImpl::findIgnoringCase):
(WTF::StringImpl::reverseFind):
(WTF::StringImpl::reverseFindIgnoringCase):

16:05 Changeset [65570] by steveblock@google.com

2010-08-17 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Geolocation clearWatch() needs to protect against invalid IDs
https://bugs.webkit.org/show_bug.cgi?id=44096

  • fast/dom/Geolocation/clear-watch-invalid-id-crash-expected.txt: Added.
  • fast/dom/Geolocation/clear-watch-invalid-id-crash.html: Added.
  • fast/dom/Geolocation/script-tests/clear-watch-invalid-id-crash.js: Added.
  • fast/dom/Geolocation/script-tests/notimer-after-unload.js: (document.body.onload):

2010-08-17 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Geolocation clearWatch() needs to protect against invalid IDs
https://bugs.webkit.org/show_bug.cgi?id=44096

If the ID passed to clearWatch() is invalid, we early-out.

Test: fast/dom/Geolocation/clear-watch-invalid-id-crash.html

  • page/Geolocation.cpp: (WebCore::Geolocation::Watchers::set): (WebCore::Geolocation::Watchers::remove): (WebCore::Geolocation::watchPosition): (WebCore::Geolocation::clearWatch):
16:00 Changeset [65569] by senorblanco@chromium.org

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

Reviewed by David Levin.

Allow non-Skia ports to compile with ENABLE(ACCELERATED_2D_CANVAS).
https://bugs.webkit.org/show_bug.cgi?id=44130

No tests; if it compiles, it's good.

  • html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): Fix a warning (treated as error).
  • platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::setGraphicsContext3D): (WebCore::GraphicsContext::syncSoftwareCanvas):
  • platform/graphics/GraphicsContext.h: Make setGraphicsContext3D() and syncSoftwareCanvas() stubbed out, but still present in non-Skia ports. This allows Chrome Mac to compile with ENABLE(ACCELERATED_2D_CANVAS) (although it isn't hooked up yet, it should at least compile).
15:53 Changeset [65568] by crogers@google.com

V8-specific fixes for JavaScriptAudioNode

15:46 Changeset [65567] by victorw@chromium.org

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

Reviewed by Ojan Vafai.

Add support to the test results server for downloading json that
contains test list only.

This is for json results generator to generate incremental json
results so that it includes results not only for tests failed in
current run, but also tests failed before.

Also set the results type to "N" (no data) instead of "P" (pass)
if test results cannot be found in incremental json file.

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

  • TestResultServer/handlers/testfilehandler.py:
  • TestResultServer/model/jsonresults.py:
  • TestResultServer/model/jsonresults_unittest.py:
15:44 Changeset [65566] by beidson@apple.com

WebCore: Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
<rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131

Reviewed by Sam Weinig.

No new tests. (Especially since DRT doesn't spin inner run loops at all, it would be a significant
effort to give it the ability to perform the back/forward navigation in the background to reproduce
this bug)

Manual tests in place of layout tests:

  • manual-tests/back-forward-during-alert-1.html: Added.
  • manual-tests/back-forward-during-alert-2.html: Added.
  • page/Page.cpp:

(WebCore::Page::goToItem):

WebKit: Remove developmentRegion from the project file as it shouldn't have been checked in.

Reviewed by Sam Weinig.

  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac: Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
<rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131

Reviewed by Sam Weinig.

  • WebView/WebView.mm:

(-[WebView canGoBack]): Return false if loads are deferred.
(-[WebView canGoForward]): Ditto.

WebKit/win: Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
<rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131

Reviewed by Sam Weinig.

  • WebView.cpp:

(WebView::canGoBack): Return false if loads are deferred.
(WebView::canGoForward): Ditto.

15:36 Changeset [65565] by joepeck@webkit.org

2010-08-17 Joseph Pecoraro <joepeck@webkit.org>

Reviewed by Pavel Feldman.

Web Inspector: Add XMLHttpRequest Logging Tests
https://bugs.webkit.org/show_bug.cgi?id=44092

  • http/tests/inspector/console-xhr-logging-expected.txt: Added.
  • http/tests/inspector/console-xhr-logging.html: Added.
  • http/tests/inspector/resources/xhr-exists.html: Added.
15:33 Changeset [65564] by ojan@chromium.org

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

Reviewed by Tony Chang.

selectionStart clobbered if textarea isn't focused
https://bugs.webkit.org/show_bug.cgi?id=43814

  • fast/forms/text-control-select-blurred-expected.txt: Added.
  • fast/forms/text-control-select-blurred.html: Added.

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

Reviewed by Tony Chang.

selectionStart clobbered if textarea isn't focused
https://bugs.webkit.org/show_bug.cgi?id=43814

If a text control is blurred, setting selectionStart/end should use
the cached selection value, which is currently stored on the form
control element.

Test: fast/forms/text-control-select-blurred.html

  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setSelectionStart): (WebCore::RenderTextControl::setSelectionEnd):
15:29 Changeset [65563] by dimich@chromium.org

MessagePort.close() crashes if the owning context was destroyed.
https://bugs.webkit.org/show_bug.cgi?id=43140

Reviewed by David Levin.

WebCore:

Test: fast/events/message-port-context-destroyed.html

  • dom/MessagePort.cpp:

(WebCore::MessagePort::postMessage):
(WebCore::MessagePort::start):
(WebCore::MessagePort::close):
(WebCore::MessagePort::contextDestroyed):
Use isEntangled() method to gate various operations on MessagePort. This method also takes into account m_closed bit.

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::stopActiveDOMObjects):
(WebCore::ScriptExecutionContext::closeMessagePorts):

  • dom/ScriptExecutionContext.h:

Add closeMessagePorts() method that closes message ports at the same moments when other ActiveDOMObjects are stopped.

LayoutTests:

  • fast/events/message-port-context-destroyed-expected.txt: Added.
  • fast/events/message-port-context-destroyed.html: Added.
15:22 Changeset [65562] by hclam@chromium.org

Unreviewed. Build fix.

Submitted for Victoria Kirst <vrk@google.com>.

Rebaseline straggler Mac UI video regressions.
Fixing test expectations to match output from r65215 bug fix.

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

  • platform/chromium-mac/fast/layers/video-layer-expected.checksum:
  • platform/chromium-mac/fast/layers/video-layer-expected.png:
  • platform/chromium-mac/media/video-empty-source-expected.checksum:
  • platform/chromium-mac/media/video-empty-source-expected.png:
  • platform/chromium/test_expectations.txt:
15:13 Changeset [65561] by johnnyg@google.com

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

Unreviewed, test expectations.

Skip the filltable-*.html tests on mac and windows. They have no expectations, so expecting
them to FAIL is insufficient to make the bots happy.

  • platform/chromium/test_expectations.txt:
15:10 Changeset [65560] by aroben@apple.com

Use the right path style

  • Scripts/old-run-webkit-tests:
15:08 Changeset [65559] by aroben@apple.com

Fix typo

  • Scripts/old-run-webkit-tests:
15:03 Changeset [65558] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebKit/WebKit

15:02 Changeset [65557] by aroben@apple.com

Don't hang when running run-webkit-tests as a non-Administrator on Vista/7

  • Scripts/old-run-webkit-tests:

(setUpWindowsCrashLogSaving): Use regtool to set NTSD as the
post-mortem debugger, rather than using NTSD itself. The latter waits
for user input when it fails to set the registry values; the former
does not.

14:56 Changeset [65556] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebKit remaining files

14:55 Changeset [65555] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebKit directories 3

14:52 Changeset [65554] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebKit directories 2

14:51 Changeset [65553] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebKit directories 1

14:47 Changeset [65552] by crogers@google.com

merge trunk 61708:65443 into audio branch: JavaScriptGlue

14:46 Changeset [65551] by crogers@google.com

merge trunk 61708:65443 into audio branch: JavaScriptCore

14:41 Changeset [65550] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebCore remaining files

14:39 Changeset [65549] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebCore directories 7

14:37 Changeset [65548] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebCore directories 6

14:36 Changeset [65547] by vestbo@webkit.org

[Qt] Skip media/video-poster-delayed.html

Reviewed by NOBODY.

The QtMultimedia backend has issues with video size hints, skip the test
until this is sorted out.

  • platform/qt/Skipped:
14:35 Changeset [65546] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebCore directories 5

14:32 Changeset [65545] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebCore directories 4

14:30 Changeset [65544] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebCore directories 3

14:27 Changeset [65543] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebCore directories 2

14:26 QtWebKitTriageRoster edited by laszlo.1.gombos@nokia.com
(diff)
14:25 Changeset [65542] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebCore directories 1

14:24 Changeset [65541] by crogers@google.com

merge trunk 61708:65443 into audio branch: WebCore/audio

13:58 Changeset [65540] by aroben@apple.com

Instruct developers to (optionally) install Debugging Tools for Windows

These tools are used by some of our scripts, so are useful for
developers to have installed.

Fixes <http://webkit.org/b/44128> webkit.org building instructions
should recommend installing Debugging Tools for Windows

Reviewed by Sam Weinig.

  • building/tools.html:
13:57 Changeset [65539] by jamesr@google.com

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

Reviewed by David Hyatt.

Updated table cell hit testing and painting to use binary search instead of linear scan.

Improved Table Hit Testing and Painting Performance
https://bugs.webkit.org/show_bug.cgi?id=43933

Tests: fast/table/simple_paint.html

tables/hittesting/filltable-emptycells.html
tables/hittesting/filltable-levels.html
tables/hittesting/filltable-outline.html
tables/hittesting/filltable-rtl.html
tables/hittesting/filltable-stress.html

  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::paintObject): Dirty rect determined using binary search. (WebCore::RenderTableSection::nodeAtPoint): Cell hit determined using binary search

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

Reviewed by David Hyatt.

Updated table cell hit testing and painting to use binary search instead of a linear scan.

Layout tests check that hit testing of empty cells, overlapping cells,
cells with outlines, right-to-left tables, and large
tables all work as expected.

Improved Table Hit Testing and Painting Performance
https://bugs.webkit.org/show_bug.cgi?id=43933

  • fast/table/simple_paint.html: Added.
  • platform/chromium-linux/fast/table/simple_paint-expected.checksum: Added.
  • platform/chromium-linux/fast/table/simple_paint-expected.png: Added.
  • platform/chromium-linux/fast/table/simple_paint-expected.txt: Added.
  • platform/chromium-linux/tables/hittesting/filltable-emptycells-expected.txt: Added.
  • platform/chromium-linux/tables/hittesting/filltable-levels-expected.txt: Added.
  • platform/chromium-linux/tables/hittesting/filltable-outline-expected.txt: Added.
  • platform/chromium-linux/tables/hittesting/filltable-rtl-expected.txt: Added.
  • platform/chromium-linux/tables/hittesting/filltable-stress-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/tables/hittesting/filltable-emptycells-expected.txt: Added.
  • platform/gtk/tables/hittesting/filltable-levels-expected.txt: Added.
  • platform/gtk/tables/hittesting/filltable-outline-expected.txt: Added.
  • platform/gtk/tables/hittesting/filltable-rtl-expected.txt: Added.
  • platform/gtk/tables/hittesting/filltable-stress-expected.txt: Added.
  • tables/hittesting/filltable-emptycells.html: Added.
  • tables/hittesting/filltable-levels.html: Added.
  • tables/hittesting/filltable-outline.html: Added.
  • tables/hittesting/filltable-rtl.html: Added.
  • tables/hittesting/filltable-stress.html: Added.
13:49 Changeset [65538] by inferno@chromium.org

2010-08-17 Abhishek Arya <inferno@chromium.org>

Reviewed by Dave Hyatt.

Only destroy empty anonymous block when it is columns or column span block
in RenderBlock::removeChild.
https://bugs.webkit.org/show_bug.cgi?id=44035

Test: fast/block/basic/empty-anonymous-block-remove-crash.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::removeChild):

2010-08-17 Abhishek Arya <inferno@chromium.org>

Reviewed by Dave Hyatt.

Tests that removing an empty anonymous block does not result in crash.
https://bugs.webkit.org/show_bug.cgi?id=44035

  • fast/block/basic/empty-anonymous-block-remove-crash-expected.txt: Added.
  • fast/block/basic/empty-anonymous-block-remove-crash.html: Added.
13:45 Changeset [65537] by aroben@apple.com

Teach run-webkit-tests, DumpRenderTree, and WebKitTestRunner how to save crash logs on Windows

The crash logs are saved to /tmp/layout-test-results and have names
like CrashLog_02bc_2010-08-17_14-36-20-108.txt.

Unfortunately, crashes in the WebKit2 web process are recorded as
time-outs by run-webkit-tests. Fixing this is covered by
<http://webkit.org/b/44121>.

Fixes <http://webkit.org/b/37859> <rdar://problem/7883560>
DumpRenderTree should save a stack trace and/or dump file when it
crashes

Reviewed by Sam Weinig.

  • DumpRenderTree/win/DumpRenderTree.cpp:

(exceptionFilter):
(main):

  • WebKitTestRunner/win/TestControllerWin.cpp:

(WTR::exceptionFilter):
(WTR::TestController::platformInitialize):
These changes set up an exception filter that prints #CRASHED to
stderr, then lets the exception propagate normally. This allows
run-webkit-tests to detect when we've crashed even when a post-mortem
debugger attaches to the process.

  • Scripts/old-run-webkit-tests:

(top level): Declared some variables used by the crash-log-saving
code.
(openDumpTool): Copy _NT_SYMBOL_PATH into the clean environment so
that the post-mortem debugger has access to it.
(toCygwinPath): Added. This is the opposite of toWindowsPath.
(readFromDumpToolWithTimer): If the dump tool prints #CRASHED to
stderr, consider it a crash.
(setUpWindowsCrashLogSaving): Added. Saves the current post-mortem
debugger, then sets ntsd as the post-mortem debugger. ntsd is
configured to save a crash log and then quit automatically.
(END): Added. Restores the previous post-mortem debugger when the
script exits.

13:17 Changeset [65536] by commit-queue@webkit.org

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

Unreviewed, rolling out r65516.
http://trac.webkit.org/changeset/65516
https://bugs.webkit.org/show_bug.cgi?id=44126

broke chromium unit tests on mac and linux (Requested by
johnny_g on #webkit).

  • WebKit.gyp:
  • src/WebFrameImpl.cpp: (WebKit::frameContentAsPlainText):
  • tests/RunAllTests.cpp: (main):
  • tests/WebFrameTest.cpp: Removed.
13:14 Changeset [65535] by johnnyg@google.com

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

Unreviewed, test expectation.

Excluding the new geolocation multiple-requests layout tests from chromium.
See https://bugs.webkit.org/show_bug.cgi?id=44118

  • platform/chromium/test_expectations.txt:
13:07 Changeset [65534] by darin@chromium.org

2010-08-17 Darin Fisher <darin@chromium.org>

Reviewed by Darin Adler.

[Chromium] REGRESSION: Incorrect repaint on scrolling with position:fixed elements
https://bugs.webkit.org/show_bug.cgi?id=42949

This is a partial revert of http://trac.webkit.org/changeset/63907

  • page/FrameView.cpp: (WebCore::FrameView::scrollPositionChangedViaPlatformWidget): (WebCore::FrameView::scrollPositionChanged):
  • platform/ScrollView.cpp: (WebCore::ScrollView::valueChanged):
13:06 Changeset [65533] by vestbo@webkit.org

Add testcase for r65514

Reviewed by Eric Carlson.

  • media/video-poster-delayed-expected.txt: Added.
  • media/video-poster-delayed.html: Added.
13:00 Changeset [65532] by kov@webkit.org

2010-08-17 Gustavo Noronha Silva <gustavo.noronha@collabora.couk>

Reviewed by Martin Robinson.

WebBackForwardList.get_{back|forward}_list_with_limit not introspectable
https://bugs.webkit.org/show_bug.cgi?id=43054

  • GNUmakefile.am: Give also API implementation files to the GIR scanner.

WebKit/gtk

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

Reviewed by Martin Robinson.

WebBackForwardList.get_{back|forward}_list_with_limit not introspectable
https://bugs.webkit.org/show_bug.cgi?id=43054

Annotate WebKitWebBackForwardList and the function that is used to fetch it from
the WebKitWebView. More will follow.

  • webkit/webkitwebbackforwardlist.cpp: Annotations, and small improvements to the docs.
  • webkit/webkitwebbackforwardlist.h: Couple empty lines missing.
  • webkit/webkitwebview.cpp:
12:51 Changeset [65531] by senorblanco@chromium.org

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

Unreviewed, rolling out r65528.
http://trac.webkit.org/changeset/65528
https://bugs.webkit.org/show_bug.cgi?id=44123

"Broke a bunch of canvas tests on Chrome win/linux."
(Requested by senorblanco on #webkit).

  • platform/graphics/skia/BitmapImageSingleFrameSkia.h: (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia):
  • platform/graphics/skia/ImageBufferSkia.cpp: (WebCore::ImageBuffer::drawsUsingCopy): (WebCore::ImageBuffer::copyImage): (WebCore::ImageBuffer::draw): (WebCore::ImageBuffer::drawPattern):
  • platform/graphics/skia/ImageSkia.cpp: (WebCore::BitmapImageSingleFrameSkia::create):
  • platform/graphics/skia/NativeImageSkia.cpp:
  • platform/graphics/skia/NativeImageSkia.h:
12:05 Changeset [65530] by mrobinson@webkit.org

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

Reviewed by David Hyatt.

[Cairo] Remove unnecessary full-surface copies from ImageCairo and GraphicsContextCairo
https://bugs.webkit.org/show_bug.cgi?id=44076

No new tests as functionality has not changed.

  • GNUmakefile.am: Added GRefPtrCairo to the sources list.
  • platform/graphics/cairo/GRefPtrCairo.cpp: Added. (WTF::refGPtr): Added specializations for cairo_t and cairo_surface_t. (WTF::derefGPtr):
  • platform/graphics/cairo/GRefPtrCairo.h: Added.
  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::createPlatformShadow): Access the image surface directly from the ImageBuffer instead of wrapping it in an Image.
  • platform/graphics/cairo/ImageCairo.cpp: (WebCore::Image::drawPattern): Create the temporary surface using cairo primitives instead of through the platform-independent WebCore code.
12:04 BuildingOnWindows edited by aroben@apple.com
Added instructions for getting crash logs from regression tests (diff)
12:00 Changeset [65529] by mrobinson@webkit.org

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

[GTK] Clean up WebCore/platform/graphics/gtk/ImageGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=44069

No new tests as functionality has not changed.

  • GNUmakefile.am: Add WEBKITGTK_API_VERSION_STRING definition, which allows WebCore to use this as well.
  • platform/graphics/gtk/ImageGtk.cpp: (getWebKitDataDirectory): Added this helper. (WebCore::Image::loadPlatformResource): Use GOwnPtr for gchar pointers and use the new getWebKitDataDirectory helper.
  • platform/gtk/GOwnPtrGtk.cpp: Move the GtkIconInfo template specialization to this file. (WTF::GtkIconInfo): Added this forward declaration.
  • platform/gtk/GOwnPtrGtk.h: Declaration for new template specialization.

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

Reviewed by Gustavo Noronha Silva.

[GTK] Clean up WebCore/platform/graphics/gtk/ImageGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=44069

  • WebCoreSupport/InspectorClientGtk.cpp: (WebKit::InspectorClient::openInspectorFrontend): Switched to using the new WEBKITGTK_API_VERSION_STRING define.
  • webkit/webkitprivate.cpp: (inspectorGSettings): Ditto.
11:55 Changeset [65528] by senorblanco@chromium.org

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

Reviewed by Darin Fisher.

[CHROMIUM] Eliminate a memcpy() from the canvas.drawImage(canvas, ...) path.
This is the Skia followup to Dave Hyatt's patch in r65449.
https://bugs.webkit.org/show_bug.cgi?id=44115

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): Shouldn't get here anymore, so ASSERT_NOT_REACHED. (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.
11:47 Changeset [65527] by victorw@chromium.org

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

Reviewed by ojan@chromium.org.

Update test results server:

  1. Normalize test results and times after merging (prune tests where all runs pass or do not have data, truncate all test items to max number of builds)
  2. times should be int not string.
  3. when inserting a new test item, should keep old data regardless whether or not they have same item type with new one.

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

  • TestResultServer/model/jsonresults.py:
  • TestResultServer/model/jsonresults_unittest.py:
11:45 Changeset [65526] by jianli@chromium.org

Move BlobRegistry interface and implementation to platform/network
https://bugs.webkit.org/show_bug.cgi?id=44116

Reviewed by Darin Fisher.

Also move BlobData and BlobStorageData since they're part of BlobRegistry
implementation.

  • Android.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/network/BlobData.cpp: Renamed from WebCore/platform/BlobData.cpp.
  • platform/network/BlobData.h: Renamed from WebCore/platform/BlobData.h.
  • platform/network/BlobRegistry.h: Renamed from WebCore/platform/BlobRegistry.h.
  • platform/network/BlobRegistryImpl.cpp: Renamed from WebCore/html/BlobRegistryImpl.cpp.
  • platform/network/BlobRegistryImpl.h: Renamed from WebCore/html/BlobRegistryImpl.h.
  • platform/network/BlobStorageData.h: Renamed from WebCore/html/BlobStorageData.h.
11:43 Changeset [65525] by andreas.kling@nokia.com

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

Reviewed by Ariya Hidayat.

[Qt] Path: Fast approximation of stroke bounding rects
https://bugs.webkit.org/show_bug.cgi?id=44014

In canvas's stroke(), use QPainterPath::controlPointRect() to calculate
a slightly larger bounding rect in a fraction of the time.

  • html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::stroke):
11:39 Changeset [65524] by girish@forwardbias.in

Set PluginQuirkRequiresDefaultScreenDepth for all Flash versions and not
just Flash 10.

Reviewed by Kenneth Rohde Christiansen.

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

  • plugins/PluginPackage.cpp:

(WebCore::PluginPackage::determineQuirks):

11:31 Changeset [65523] by jianli@chromium.org

Change FileStream implementation to prepare for blob resource handling.
https://bugs.webkit.org/show_bug.cgi?id=43985

Reviewed by David Levin.

Change FileStream to support synchronous usage only. All the asychronous
logics are moved to FileStreamProxy. Update the existing FileReader code
to adapt to this change.

  • html/FileReader.cpp: Account for FileStreamProxy changes.

(WebCore::FileReader::didStart):
(WebCore::FileReader::didGetSize):
(WebCore::FileReader::didOpen):
(WebCore::FileReader::didRead):

  • html/FileReader.h:
  • html/FileStream.cpp: Remove m_client and make all calls synchronous only.

(WebCore::FileStream::FileStream):
(WebCore::FileStream::start):
(WebCore::FileStream::stop):
(WebCore::FileStream::getSize):
(WebCore::FileStream::openForRead):
(WebCore::FileStream::openForWrite):
(WebCore::FileStream::close):
(WebCore::FileStream::read):
(WebCore::FileStream::write):
(WebCore::FileStream::truncate):

  • html/FileStream.h: Add getSize() and make all calls synchronous by adding return values.

(WebCore::FileStream::create):

  • html/FileStreamClient.h: Account for FileStreamProxy changes.

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

  • html/FileStreamProxy.cpp: All the logics to handle asynchronous calls are wrapped here.

(WebCore::FileStreamProxy::FileStreamProxy):
(WebCore::FileStreamProxy::create):
(WebCore::FileStreamProxy::fileThread):
(WebCore::didStart):
(WebCore::FileStreamProxy::startOnFileThread):
(WebCore::FileStreamProxy::stop):
(WebCore::derefProxyOnContext):
(WebCore::FileStreamProxy::stopOnFileThread):
(WebCore::didGetSize):
(WebCore::FileStreamProxy::getSize):
(WebCore::FileStreamProxy::getSizeOnFileThread):
(WebCore::didOpen):
(WebCore::FileStreamProxy::openForRead):
(WebCore::FileStreamProxy::openForReadOnFileThread):
(WebCore::FileStreamProxy::openForWrite):
(WebCore::FileStreamProxy::openForWriteOnFileThread):
(WebCore::FileStreamProxy::close):
(WebCore::FileStreamProxy::closeOnFileThread):
(WebCore::didRead):
(WebCore::FileStreamProxy::read):
(WebCore::FileStreamProxy::readOnFileThread):
(WebCore::didWrite):
(WebCore::FileStreamProxy::write):
(WebCore::FileStreamProxy::writeOnFileThread):
(WebCore::didTruncate):
(WebCore::FileStreamProxy::truncate):
(WebCore::FileStreamProxy::truncateOnFileThread):

  • html/FileStreamProxy.h:
  • html/FileThreadTask.h: Change all methods to return void since return value is not needed now.
11:28 Changeset [65522] by weinig@apple.com

Add a few items in the WebKitTestRunner Skipped list.

Rubber-stamped by Anders Carlsson.

  • platform/mac-wk2/Skipped:
11:22 Changeset [65521] by laszlo.1.gombos@nokia.com

2010-08-17 Hui Huang <hui.2.huang@nokia.com>

Reviewed by Laszlo Gombos.

[Qt] Fix ARM5 compiling error in FrameLoaderClientQt.cpp
https://bugs.webkit.org/show_bug.cgi?id=43927

In the Symbian build chain QT_USE_FAST_OPERATOR_PLUS is defined,
which means that the '+' will automatically be performed as the
QStringBuilder '%'. Create a QString explicitly to make sure that
toLocal8bit() member is available that the qPrintable Macro uses.

  • WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):
11:06 Changeset [65520] by dglazkov@chromium.org

2010-08-17 Dimitri Glazkov <dglazkov@chromium.org>

Returned WebCore.xcodeproj to default settings after http://trac.webkit.org/changeset/65468/trunk/WebCore/WebCore.xcodeproj/project.pbxproj.

  • WebCore.xcodeproj/project.pbxproj: Removed developmentRegion = English line.
11:06 Changeset [65519] by eric@webkit.org

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

Reviewed by Alexey Proskuryakov.

sputnik S15.9.3.1_A5_T1~T6 fail when run in timezone other than Pacific Time
https://bugs.webkit.org/show_bug.cgi?id=42625

  • fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T1.html-disabled: Renamed from LayoutTests/fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T1.html.
  • fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T2.html-disabled: Renamed from LayoutTests/fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T2.html.
  • fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T3.html-disabled: Renamed from LayoutTests/fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T3.html.
  • fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T4.html-disabled: Renamed from LayoutTests/fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T4.html.
  • fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T5.html-disabled: Renamed from LayoutTests/fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T5.html.
  • fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T6.html-disabled: Renamed from LayoutTests/fast/js/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.3/S15.9.3.1_A5_T6.html.
11:04 Changeset [65518] by mrobinson@webkit.org

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

GTK+ Build fix for those having stable versions of GLib.

  • configure.ac: Only invoke GLIB_GSETTINGS if we have the necessary gio version.
10:55 Changeset [65517] by dglazkov@chromium.org

Eliminate extra traversal of the tree when determining ability to lazy-attach a Node.
https://bugs.webkit.org/show_bug.cgi?id=43749

Reviewed by Eric Seidel.

Land the actual change that I intended to land in http://trac.webkit.org/changeset/65508.

Neither SVG nor inputs/counters shadow DOM are traveling down this path (they home-bake their attachment),
so the check for shadow tree existence isn't needed.
Gives a small, but consistent win in Dromaeo's DOM Modification test.

  • dom/Node.h:

(WebCore::Node::canLazyAttach): Changed to always return true.

10:45 Changeset [65516] by jcivelli@chromium.org

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

Reviewed by Darin Fisher.

Made WebFrame not report the text from hidden frames.
(some pages contain hidden frames with garbage text that
should not be indexed or used to detect the page's language).
https://bugs.webkit.org/show_bug.cgi?id=39456

  • WebKit.gyp:
  • public/WebCString.h: (WebKit::operator<):
  • public/WebURL.h: (WebKit::operator<):
  • src/WebCString.cpp: (WebKit::WebCString::compare):
  • src/WebFrameImpl.cpp: (WebKit::frameContentAsPlainText):
  • tests/RunAllTests.cpp: (main):
  • tests/WebFrameTest.cpp: Added.
10:24 Changeset [65515] by cmarrin@apple.com

Moved previous link error fix to Base.xcconfig

10:18 Changeset [65514] by vestbo@webkit.org

Restore intrinsic size of video elements after loading poster

Reviewed by Eric Carlson.

The element might already have the instrinsic size of the video, in
which case we don't want to override it witht that of the image.

  • rendering/RenderVideo.cpp: call updateIntrinsicSize() to restore size
10:13 Changeset [65513] by steveblock@google.com

2010-08-17 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

[Qt] fast/dom/Geolocation/disconnected-frame-permission-denied.html fails
https://bugs.webkit.org/show_bug.cgi?id=44059

  • fast/dom/Geolocation/disconnected-frame-permission-denied-expected.txt:
  • fast/dom/Geolocation/script-tests/disconnected-frame-permission-denied.js: (onIframeLoaded): ():
  • platform/chromium/test_expectations.txt:
  • platform/qt/Skipped:
10:05 Changeset [65512] by cmarrin@apple.com

Fixed link errors in WebCore build on Mac

09:54 Changeset [65511] by commit-queue@webkit.org

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

Reviewed by Steve Block.

Geolocation preemptive permissions policy is buggy
https://bugs.webkit.org/show_bug.cgi?id=42811

Adds cases where permission is niether denied or granted immediately and multiple
requests are waiting.

  • fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests-expected.txt: Added.
  • fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html: Added.
  • fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests-expected.txt: Added.
  • fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html: Added.
  • fast/dom/Geolocation/script-tests/delayed-permission-allowed-for-multiple-requests.js: Added. (allowPermission): (): (maybeFinishTest):
  • fast/dom/Geolocation/script-tests/delayed-permission-denied-for-multiple-requests.js: Added. (denyPermission): (maybeFinishTest):
  • platform/gtk/Skipped:
  • platform/qt/Skipped:

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

Reviewed by Steve Block.

Geolocation preemptive permissions policy is buggy
https://bugs.webkit.org/show_bug.cgi?id=42811

While waiting for permission, m_startRequestPermissionNotifier was
used to consider only one pending request. This patch implements a set
m_pendingForPermissionNotifiers to maintain set of pending requests.
When user grants/denies permission all listeners will be notified.
Also fixed issue with hasZeroTimeout() where startTimerIfNeeded() has
to start irrespective of permission state

Tests: 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::startRequest): (WebCore::Geolocation::setIsAllowed): (WebCore::Geolocation::startUpdating): (WebCore::Geolocation::handlePendingPermissionNotifiers):
  • page/Geolocation.h:
09:27 Changeset [65510] by knorton@google.com

2010-08-17 Kelly Norton <knorton@google.com>

Reviewed by Pavel Feldman.

Web Inspector: Fixes a crash in addTimelineRecord when InspectorTimelineAgent
is enabled through WebDevToolsAgentImpl::setApuEnabled.
https://bugs.webkit.org/show_bug.cgi?id=44105

  • src/WebDevToolsAgentImpl.cpp: (WebKit::WebDevToolsAgentImpl::setApuAgentEnabled):
09:18 Changeset [65509] by jorlow@chromium.org

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

Reviewed by Steve Block.

Beginnings of IndexedDB persistance + IDBDatabase.description fleshed out
https://bugs.webkit.org/show_bug.cgi?id=43744

Add a layout test for IDBDatabase.description.

  • storage/indexeddb/database-description-expected.txt: Added.
  • storage/indexeddb/database-description.html: Added.
  • storage/indexeddb/script-tests/database-description.js: Added. (test): (firstSuccess): (secondSuccess): (thirdSuccess):

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

Beginnings of IndexedDB persistance + IDBDatabase.description fleshed out
https://bugs.webkit.org/show_bug.cgi?id=43744

The beginnings of a SQLite backend for IndexedDB. Right now, only persists
meta-data for the database. The rest is coming in future patches. Adds
a manual test to verify persistance.

Test: storage/indexeddb/database-description.html

+ a manual test

  • Android.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • manual-tests/indexed-database.html: Added.
  • page/SecurityOrigin.cpp: (WebCore::SecurityOrigin::databaseIdentifier):
  • platform/FileSystem.cpp: Added. (WebCore::): (WebCore::shouldEscapeUChar): (WebCore::encodeForFileName):
  • platform/FileSystem.h:
  • storage/IDBDatabase.cpp: (WebCore::IDBDatabase::IDBDatabase):
  • storage/IDBDatabase.h: (WebCore::IDBDatabase::description):
  • storage/IDBDatabaseBackendImpl.cpp: (WebCore::extractMetaData): (WebCore::setMetaData): (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): (WebCore::IDBDatabaseBackendImpl::setDescription):
  • storage/IDBDatabaseBackendImpl.h: (WebCore::IDBDatabaseBackendImpl::create):
  • storage/IDBFactory.h:
  • storage/IDBFactory.idl:
  • storage/IDBFactoryBackendImpl.cpp: (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl): (WebCore::IDBFactoryBackendImpl::~IDBFactoryBackendImpl): (WebCore::openSQLiteDatabase): (WebCore::createTables): (WebCore::IDBFactoryBackendImpl::open):
  • storage/IDBFactoryBackendImpl.h: (WebCore::IDBFactoryBackendImpl::create):
09:15 Changeset [65508] by dglazkov@chromium.org

2010-08-17 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Eric Seidel.

Eliminate extra traversal of the tree when determining ability to lazy-attach a Node.
https://bugs.webkit.org/show_bug.cgi?id=43749

Neither SVG nor inputs/counters shadow DOM are traveling down this path (they home-bake their attachment),
so the check for shadow tree existence isn't needed.

Gives a small, but consisten win in Dromaeo's DOM Modification test.

  • dom/Node.cpp: Removed canLazyAttach declaration.
  • dom/Node.h: (WebCore::Node::canLazyAttach): Changed to always return true.
08:59 Changeset [65507] by yurys@chromium.org

2010-08-17 Yury Semikhatsky <yurys@chromium.org>

Unreviewed. Revert r41142. Unskipped tests are still failing.

  • platform/qt/Skipped:
08:55 Changeset [65506] by pfeldman@chromium.org

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

Reviewed by Yury Semikhatsky.

Web Inspector: [CRASH] Console formatting crashes after cross-domain navigation.
https://bugs.webkit.org/show_bug.cgi?id=44103

  • http/tests/inspector-enabled/resources/console-log-frame-before-navigation.html:

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

Reviewed by Yury Semikhatsky.

Web Inspector: [CRASH] Console formatting crashes after cross-domain navigation.
https://bugs.webkit.org/show_bug.cgi?id=44103

  • bindings/js/JSInjectedScriptHostCustom.cpp: (WebCore::InjectedScriptHost::injectedScriptFor):
  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp: (WebCore::InjectedScriptHost::injectedScriptFor):
  • inspector/ConsoleMessage.cpp: (WebCore::ConsoleMessage::addToFrontend):
08:41 Changeset [65505] by yurys@chromium.org

2010-08-17 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: upstream Chromium debugger step tests
https://bugs.webkit.org/show_bug.cgi?id=44106

  • http/tests/inspector-enabled/console-log-before-frame-navigation.html:
  • http/tests/inspector-enabled/resources/console-log-before-frame-navigation.js: Added. (doit.callback): (doit): (receiveMessage): (frontend_dumpConsoleMessages):
  • http/tests/inspector/debugger-test.js: (frontend_captureStackTrace):
  • inspector/debugger-step-in-expected.txt: Added.
  • inspector/debugger-step-in.html: Added.
  • inspector/debugger-step-out-expected.txt: Added.
  • inspector/debugger-step-out.html: Added.
  • inspector/debugger-step-over-expected.txt: Added.
  • inspector/debugger-step-over.html: Added.

2010-08-17 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: upstream Chromium debugger step tests
https://bugs.webkit.org/show_bug.cgi?id=44106

Tests: inspector/debugger-step-in.html

inspector/debugger-step-out.html
inspector/debugger-step-over.html

  • bindings/js/ScriptDebugServer.cpp: (WebCore::ScriptDebugServer::returnEvent): check that debugger is still attached after continue to ensure that current call frame is not 0.

2010-08-17 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: upstream Chromium debugger step tests
https://bugs.webkit.org/show_bug.cgi?id=44106

  • src/js/Tests.js:
08:35 Changeset [65504] by commit-queue@webkit.org

2010-08-17 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>

Reviewed by David Levin.

Trivial fix removing the self-inclusion of a couple of header files.

Self inclusion in Document.h and RenderTheme.h
https://bugs.webkit.org/show_bug.cgi?id=44065

  • dom/Document.h:
  • rendering/RenderTheme.h:
08:03 Changeset [65503] by yurys@chromium.org

2010-08-17 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

[Qt] Web Inspector: inspector/debugger-pause-on-debugger-statement.html times out on Qt
https://bugs.webkit.org/show_bug.cgi?id=41142

  • platform/qt/Skipped: the tests should pass after r65315
08:00 ApplicationsGtk edited by laszlo.1.gombos@nokia.com
(diff)
07:54 Changeset [65502] by noam.rosenthal@nokia.com

2010-08-17 No'am Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Ariya Hidayat.

[Qt] Move the accelerated compositing build flag to the right place
https://bugs.webkit.org/show_bug.cgi?id=43882

  • wtf/Platform.h:

2010-08-17 No'am Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Ariya Hidayat.

[Qt] Move the accelerated compositing build flag to the right place
https://bugs.webkit.org/show_bug.cgi?id=43882

No new tests: build fix.

  • WebCore.pro:
07:49 Changeset [65501] by loislo@chromium.org

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

Unreviewed, rolling out r65500.
http://trac.webkit.org/changeset/65500
https://bugs.webkit.org/show_bug.cgi?id=44108

Qt bots failed to compile. (Requested by loislo on #webkit).

  • GNUmakefile.am:

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

Unreviewed, rolling out r65500.
http://trac.webkit.org/changeset/65500
https://bugs.webkit.org/show_bug.cgi?id=44108

Qt bots failed to compile. (Requested by loislo on #webkit).

  • platform/gtk/Skipped:

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

Unreviewed, rolling out r65500.
http://trac.webkit.org/changeset/65500
https://bugs.webkit.org/show_bug.cgi?id=44108

Qt bots failed to compile. (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-17 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r65500.
http://trac.webkit.org/changeset/65500
https://bugs.webkit.org/show_bug.cgi?id=44108

Qt bots failed to compile. (Requested by loislo on #webkit).

  • WebKit.gyp:

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

Unreviewed, rolling out r65500.
http://trac.webkit.org/changeset/65500
https://bugs.webkit.org/show_bug.cgi?id=44108

Qt bots failed to compile. (Requested by loislo on #webkit).

  • WebCoreSupport/InspectorClientGtk.cpp: (WebKit::InspectorClient::openInspectorFrontend):
07:33 Changeset [65500] by loislo@chromium.org

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):
06:30 Changeset [65499] by pfeldman@chromium.org

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

Reviewed by Pavel Feldman.

Web Inspector: get rid of node and scoped object-specific ids.
https://bugs.webkit.org/show_bug.cgi?id=44097

  • inspector/front-end/ConsoleView.js:
  • inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
  • inspector/front-end/EventListenersSidebarPane.js:
  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor.): (injectedScriptConstructor):
  • inspector/front-end/InjectedScriptAccess.js: (InjectedScriptAccess): (InjectedScriptAccess.getForNode): (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName): (InjectedScriptAccess._installHandler):
  • inspector/front-end/PropertiesSidebarPane.js: (WebInspector.PropertiesSidebarPane.prototype.update):
  • inspector/front-end/RemoteObject.js: (WebInspector.RemoteObjectId): (WebInspector.RemoteObject.resolveNode):
  • inspector/front-end/ScriptsPanel.js:
06:09 Changeset [65498] by kov@webkit.org

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

Reviewed by Martin Robinson.

[GTK] GSettings support adds annoying warnings on systems with older glib versions
https://bugs.webkit.org/show_bug.cgi?id=44056

Add file containing GLIB_GSETTINGS macro so that
configure doesn't spit warnings in older systems.

  • autotools/gsettings.m4: Added.
  • .gitignore: Ignore files that are generated inside autotools explicitely, because we have some that are kept in version control.

WebKit/gtk

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

Reviewed by Martin Robinson.

[GTK] GSettings support adds annoying warnings on systems with older glib versions
https://bugs.webkit.org/show_bug.cgi?id=44056

Use #ifdef instead of #if for HAVE_GSETTINGS to avoid warnings
when it is not defined.

  • WebCoreSupport/InspectorClientGtk.cpp:
  • webkit/webkitprivate.cpp: (webkit_init):
  • webkit/webkitprivate.h:
05:54 QtScript edited by kent.hansen@nokia.com
(diff)
05:23 Changeset [65497] by xan@webkit.org

2010-08-17 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

[GTK] Fix wrapping of core Events in the bindings
https://bugs.webkit.org/show_bug.cgi?id=44095

Return the proper GObject type instead of hardcoding
WebKitDOMEvent for all Event types.

  • bindings/gobject/GObjectEventListener.cpp: (WebCore::GObjectEventListener::handleEvent):
  • bindings/gobject/WebKitDOMBinding.cpp: (WebKit::kit):
05:22 Changeset [65496] by xan@webkit.org

2010-08-17 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Revert supposed build-fix which was in fact reverting a previous
build fix which was correct (oh dear).

  • GNUmakefile.am:
05:15 Changeset [65495] by vestbo@webkit.org

[Qt] Add media element support for preload=none

Reviewed by Antonio Gomes.

  • platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  • platform/graphics/qt/MediaPlayerPrivateQt.h:
05:15 Changeset [65494] by vestbo@webkit.org

[Qt] Pre-roll media when loading media elements

Reviewed by Antonio Gomes.

This ensures we get correct size-hints from QtMultimedia, as well as
the media states Buffering and Buffered instead of Loading and Loaded,
which we use to transition into MediaPlayer::HaveEnoughData.

  • platform/graphics/qt/MediaPlayerPrivateQt.cpp:
  • platform/graphics/qt/MediaPlayerPrivateQt.h:
04:54 Changeset [65493] by commit-queue@webkit.org

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

Reviewed by Shinichiro Hamaji.

Avoid uninitialized memory read in StringImpl::find().

REGRESSION(r65468): Crashes in StringImpl::find
https://bugs.webkit.org/show_bug.cgi?id=44099

  • wtf/text/StringImpl.cpp: (WTF::StringImpl::find):
04:38 Changeset [65492] by vestbo@webkit.org

[Qt] Fix missing default controls for stand-alone media elements

Reviewed by Kenneth Christiansen.

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

  • css/mediaControlsQt.css:
04:18 Changeset [65491] by vestbo@webkit.org

[Qt] Implement ChromeClient's windowToScreen() and screenToWindow()

Reviewed by Kenneth Christiansen.

  • WebCoreSupport/ChromeClientQt.cpp:
02:49 QtWebKitTriageRoster edited by ossy@webkit.org
(diff)
02:30 QtWebKitRelease21 edited by ossy@webkit.org
typo fix (diff)
02:05 Changeset [65490] by yurys@chromium.org

2010-08-17 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: upstream Chromium console tests
https://bugs.webkit.org/show_bug.cgi?id=44057

  • inspector/console-eval-expected.txt: Added.
  • inspector/console-eval-global-expected.txt: Added.
  • inspector/console-eval-global.html: Added.
  • inspector/console-eval.html: Added.
  • platform/chromium/inspector/console-eval-global-expected.txt: Added.

2010-08-17 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: upstream Chromium console tests and remove a couple
of tests that have already been covered with layout tests.
https://bugs.webkit.org/show_bug.cgi?id=44057

  • src/js/Tests.js: (.TestSuite.prototype.testConsoleEval): (.TestSuite.prototype.testConsoleLog): (.TestSuite.prototype.testEvalGlobal):
01:55 Changeset [65489] by commit-queue@webkit.org

2010-08-17 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>

Reviewed by Ariya Hidayat.

[Qt] tests whose bug was closed but are still skipped
https://bugs.webkit.org/show_bug.cgi?id=44068

Enable tests whose bugs have been fixed already:

https://bugs.webkit.org/show_bug.cgi?id=35350 (fixed)
https://bugs.webkit.org/show_bug.cgi?id=28952 (fixed)
https://bugs.webkit.org/show_bug.cgi?id=38502 (see discussion at the end)
https://bugs.webkit.org/show_bug.cgi?id=38604 (fixed)

  • platform/qt/Skipped:
01:32 Changeset [65488] by ariya@webkit.org

2010-08-17 Ariya Hidayat <ariya@sencha.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Reduce the size of the shadow buffer to the clip region
https://bugs.webkit.org/show_bug.cgi?id=44091

Instead of allocating the buffer image (for the blur support) as big
as the rectangle which casts the shadow, we limit the size to the
current clip region.

  • platform/graphics/qt/ContextShadow.cpp: (WebCore::ContextShadow::drawShadowRect):
00:08 Changeset [65487] by mjs@apple.com

Add/correct a few items in the WebKitTestRunner Skipped list.

Rubber stamped by Sam Weinig.

  • platform/mac-wk2/Skipped:

08/16/10:

23:48 Changeset [65486] by philn@webkit.org

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

Reviewed by Martin Robinson.

[GStreamer] media/invalid-media-url-crash.html fails
https://bugs.webkit.org/show_bug.cgi?id=42960

Implemented two ResourceHandleClient callbacks that need to notify
downstream GStreamer elements of errors while accessing the
resource.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: (StreamingClient::wasBlocked): (StreamingClient::cannotShowURL):

LayoutTests:

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

Reviewed by Martin Robinson.

[GStreamer] media/invalid-media-url-crash.html fails
https://bugs.webkit.org/show_bug.cgi?id=42960

  • platform/gtk/Skipped: Unskip fixed test
21:27 Changeset [65485] by kinuko@chromium.org

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

Unreviewed; attempt to fix Chromium Windows build.

  • public/WebFileUtilities.h:
21:07 Changeset [65484] by jhoneycutt@apple.com

Allow some tests to pass in WebKitTestRunner before SharedMemory and
PluginInfoStore are implemented on Windows.

Reviewed by Sam Weinig.

  • Platform/win/SharedMemoryWin.cpp:

Disable not implemented warnings.

  • UIProcess/Plugins/win/PluginInfoStoreWin.cpp:

Ditto.

20:59 Changeset [65483] by morrita@google.com

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

Unreviewed test expectation update.

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

  • platform/chromium/test_expectations.txt:
20:53 Changeset [65482] by kinuko@chromium.org

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

Reviewed by Jian Li.

[chromium] Prepare to rename WebFileSystem interface to WebFileUtilities
https://bugs.webkit.org/show_bug.cgi?id=44077

We are going to have an implementation for HTML5 FileSystem API and
it would probably be less confusing to use the name "WebFileSystem"
for an WebKit API for the HTML5 API.

This patch adds WebFileUtilities interface that is meant to replace
the existing WebFileSystem.

  • WebKit.gyp:
  • public/WebFileSystem.h:
  • public/WebFileUtilities.h: Added.
  • public/WebKitClient.h: (WebKit::WebKitClient::fileUtilities): Added.
  • src/ChromiumBridge.cpp: (WebCore::ChromiumBridge::fileExists): (WebCore::ChromiumBridge::deleteFile): (WebCore::ChromiumBridge::deleteEmptyDirectory): (WebCore::ChromiumBridge::getFileSize): (WebCore::ChromiumBridge::getFileModificationTime): (WebCore::ChromiumBridge::directoryName): (WebCore::ChromiumBridge::pathByAppendingComponent): (WebCore::ChromiumBridge::makeAllDirectories): (WebCore::ChromiumBridge::getAbsolutePath): (WebCore::ChromiumBridge::isDirectory): (WebCore::ChromiumBridge::filePathToURL): (WebCore::ChromiumBridge::openFile): (WebCore::ChromiumBridge::closeFile): (WebCore::ChromiumBridge::seekFile): (WebCore::ChromiumBridge::truncateFile): (WebCore::ChromiumBridge::readFromFile): (WebCore::ChromiumBridge::writeToFile):
20:42 Changeset [65481] by kinuko@chromium.org

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

Unreviewed; build fix attempt for Windows.

  • DefaultDownloadDelegate.cpp:
20:39 Changeset [65480] by jhoneycutt@apple.com

Add some tests that fail in WebKitTestRunner to the Skipped lists.

Rubber-stamped by Sam Weinig.

  • platform/mac-wk2/Skipped:
  • platform/win-wk2/Skipped:
19:21 Changeset [65479] by barraclough@apple.com

Add VectorTraits to String & DefaultHash traits to UString to unify behaviour.

Rubber stamped by Sam Weinig

  • runtime/UString.h:

(JSC::UStringHash::hash):
(JSC::UStringHash::equal):
(WTF::):

  • wtf/text/WTFString.h:

(WTF::):

19:13 Changeset [65478] by barraclough@apple.com

Remove unnecessary includes from UString.h, add new includes as necessary.

Rubber stamped by Sam Weinig

JavaScriptCore:

  • profiler/CallIdentifier.h:
  • profiler/ProfileNode.h:
  • runtime/DateConversion.cpp:
  • runtime/Identifier.h:

(JSC::IdentifierRepHash::hash):

  • runtime/RegExpCache.h:
  • runtime/RegExpKey.h:
  • runtime/UString.cpp:

(JSC::UString::substr):

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

WebCore:

  • dom/ScriptExecutionContext.h:
  • loader/appcache/ApplicationCache.cpp:

WebKit2:

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:
18:54 Changeset [65477] by commit-queue@webkit.org

2010-08-16 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>

Reviewed by Ariya Hidayat.

[Qt] REGRESSION: editing/selection/shrink-selection-after-shift-pagedown.html fails after 56567
https://bugs.webkit.org/show_bug.cgi?id=36628

Just enabling the test, it's not failing anymore.

  • platform/qt/Skipped:
18:19 Changeset [65476] by commit-queue@webkit.org

2010-08-16 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>

Reviewed by Ariya Hidayat.

[Qt] qt/Skipped needs cleanup on outdaded comments
https://bugs.webkit.org/show_bug.cgi?id=44066

Minor improvements/fixes to the list of Skipped Qt tests

  • move bug reference to the right place (#35145)
  • remove outdated bug reference (#32922)
  • move inspector testcase to the right place
  • add reference to bug closed on qt-4.7 (QTBUG-9618)
  • platform/qt/Skipped: cleanups only, no logical changes
18:09 Changeset [65475] by andreas.kling@nokia.com

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

Reviewed by Darin Adler.

CSS: Add fast-path for rgba() color parsing
https://bugs.webkit.org/show_bug.cgi?id=42965

Test: fast/canvas/rgba-parsing.html

  • css/CSSParser.cpp: (WebCore::CSSParser::parseColor): Extended with support for rgba(). (WebCore::parseAlphaValue): Added, parses an alpha value using WTF::strtod() (if necessary) and clamps between 0 and 1. (WebCore::isTenthAlpha):

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

Reviewed by Darin Adler.

CSS: Add fast-path for rgba() color parsing
https://bugs.webkit.org/show_bug.cgi?id=42965

Add a test of rgba() color parsing.

  • fast/canvas/rgba-parsing-expected.txt: Added.
  • fast/canvas/rgba-parsing.html: Added.
  • fast/canvas/script-tests/rgba-parsing.js: Added.
18:07 Changeset [65474] by kinuko@chromium.org

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

Reviewed by Dumitru Daniliuc.

Add idl and mock classes for FileSystem API's {File,Directory}Entry and related interfaces
https://bugs.webkit.org/show_bug.cgi?id=43993

Adding DirectoryEntry, DirectoryReader, EntriesCallback and FileEntry as defined in HTML5 FileSystem API.
http://dev.w3.org/2009/dap/file-system/file-dir-sys.html

Also adding Makefile entries for idl and mock classes added in changeset 64414 (except for Android platforms).

Tests will be added when we add underlying implementation.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • storage/DOMFileSystem.cpp: (WebCore::DOMFileSystem::root):
  • storage/DOMFileSystem.h:
  • storage/DOMFileSystem.idl:
  • storage/DirectoryEntry.cpp: Added.
  • storage/DirectoryEntry.h: Added.
  • storage/DirectoryEntry.idl: Added.
  • storage/DirectoryReader.cpp: Added.
  • storage/DirectoryReader.h: Added.
  • storage/DirectoryReader.idl: Added.
  • storage/EntriesCallback.h: Added.
  • storage/EntriesCallback.idl: Added.
  • storage/EntryArray.cpp: Added.
  • storage/EntryArray.h: Added.
  • storage/EntryArray.idl: Added.
  • storage/Entry.cpp: (WebCore::Entry::Entry): (WebCore::Entry::getMetadata): (WebCore::Entry::moveTo): (WebCore::Entry::copyTo): (WebCore::Entry::remove): (WebCore::Entry::getParent):
  • storage/Entry.h: (WebCore::Entry::isFile): (WebCore::Entry::isDirectory):
  • storage/Entry.idl:
  • storage/FileEntry.cpp: Added.
  • storage/FileEntry.h: Added.
  • storage/FileEntry.idl: Added.
17:46 Changeset [65473] by weinig@apple.com

Add WebKit2 Mac tester to buildbot.

Reviewed by Mark Rowe.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:
17:41 Changeset [65472] by andreas.kling@nokia.com

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

Reviewed by Ariya Hidayat.

[Qt] Path::closeSubpath() should only close the last subpath if it has >1 point
https://bugs.webkit.org/show_bug.cgi?id=44061

Spec link:
http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-closepath

Test: fast/canvas/canvas-closePath-single-point.html

  • platform/graphics/Path.h: Add a Qt-only member to track the last subpath.
  • platform/graphics/qt/PathQt.cpp: (WebCore::Path::closeSubpath): Only close the last subpath if it has more than 1 point. Otherwise behave as moveTo(first point in last subpath) (WebCore::Path::Path): (WebCore::Path::operator=): (WebCore::Path::moveTo): (WebCore::Path::transform):

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

Reviewed by Ariya Hidayat.

[Qt] Path::closeSubpath() should only close the last subpath if it has >1 point
https://bugs.webkit.org/show_bug.cgi?id=44061

Add a test to verify behavior of closePath() when path has only 1 point.

  • fast/canvas/canvas-closePath-single-point-expected.txt: Added.
  • fast/canvas/canvas-closePath-single-point.html: Added.
  • fast/canvas/script-tests/canvas-closePath-single-point.js: Added.
17:20 Changeset [65471] by japhet@chromium.org

2010-08-16 Nate Chapin <japhet@chromium.org>

Unreviewed, build fix.

Don't include TilingDataTest.cpp, since it doesn't
compile on mac.

  • WebKit.gyp:
16:57 Changeset [65470] by japhet@chromium.org

2010-08-16 Nate Chapin <japhet@chromium.org>

Unreviewed, Chromium expectations update.

Mark 3 tests failing on Chromium Win/Linux after r65449.
They appear to have same root cause as
bugs.webkit.org/show_bug.cgi?id=43912.

  • platform/chromium/test_expectations.txt:
16:37 Changeset [65469] by japhet@chromium.org

2010-08-16 Nate Chapin <japhet@chromium.org>

Unreviewed, Chromium mac build fix (with help from jamesr).

  • platform/chromium/ScrollbarThemeChromiumMac.mm: (WebCore::ScrollbarThemeChromiumMac::paint):
16:31 Changeset [65468] by barraclough@apple.com

Bug 44080 - String find/reverseFind methods need tidying up
These methods have a couple of problems with their interface, and implementation.

Reviewed by Sam Weinig

These methods take and int index, and return an int - however this is problematic
since on 64-bit string indices may have a full 32-bit range. This spills out into
surrounding code, which unsafely casts string indices from unsigned to int. Code
checking the result of these methods check for a mix of "== -1", "< 0", and
"== notFound". Clean this up by changing these methods to take an unsigned
starting index, and return a size_t. with a failed match indicated by notFound.
reverseFind also has a special meaning for the starting index argument, in that a
negative index is interpreted as an offset back from the end of the string. Remove
this functionality, in the (1!) case where it is used we should just calculate the
offset by subtracting from the string's length.

The implementation has a few problems too. The code is not in webkit style, in
using assorted abbreviations in variable names, and implementations of similar
find methods with differing argument types were unnecessarily inconsistent. When
find is passed const char* data the string would be handled as latin1 (zero
extended to UTF-16) for all characters but the first; this is sign extended.
Case-insensitive find is broken for unicode strings; the hashing optimization is
not unicode safe, and could result in false negatives.

Unify UString find methods to match String.

JavaScriptCore:

(JSC::escapeQuotes):

  • bytecompiler/NodesCodegen.cpp:

(JSC::substitute):

  • runtime/JSString.cpp:

(JSC::JSString::replaceCharacter):

  • runtime/RegExp.cpp:

(JSC::RegExp::RegExp):

  • runtime/RegExpKey.h:

(JSC::RegExpKey::getFlagsValue):

  • runtime/StringPrototype.cpp:

(JSC::substituteBackreferencesSlow):
(JSC::substituteBackreferences):
(JSC::stringProtoFuncReplace):
(JSC::stringProtoFuncIndexOf):
(JSC::stringProtoFuncLastIndexOf):
(JSC::stringProtoFuncSplit):

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

(JSC::UString::find):
(JSC::UString::reverseFind):

  • wtf/text/AtomicString.h:

(WTF::AtomicString::find):

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::find):
(WTF::StringImpl::findCaseInsensitive):
(WTF::StringImpl::reverseFind):
(WTF::StringImpl::reverseFindCaseInsensitive):
(WTF::StringImpl::endsWith):
(WTF::StringImpl::replace):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::startsWith):

  • wtf/text/WTFString.cpp:

(WTF::String::split):

  • wtf/text/WTFString.h:

(WTF::String::find):
(WTF::String::reverseFind):
(WTF::String::findCaseInsensitive):
(WTF::String::reverseFindCaseInsensitive):
(WTF::String::contains):
(WTF::find):
(WTF::reverseFind):

WebCore:

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::RareData::parseNth):

  • css/CSSStyleDeclaration.cpp:

(WebCore::CSSStyleDeclaration::setProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):

  • dom/Document.cpp:

(WebCore::Document::getImageMap):

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::inputText):

  • editing/InsertTextCommand.cpp:

(WebCore::InsertTextCommand::input):

  • editing/TextIterator.cpp:

(WebCore::TextIterator::handleTextBox):

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::insertText):

  • editing/markup.cpp:

(WebCore::fillContainerFromString):
(WebCore::createFragmentFromText):

  • html/File.cpp:

(WebCore::File::Init):

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::setHost):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseMappedAttribute):

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::isPlaceholderEmpty):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseMappedAttribute):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::performSearch):

  • loader/CrossOriginPreflightResultCache.cpp:

(WebCore::parseAccessControlAllowList):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::substituteMIMETypeFromPluginDatabase):

  • loader/appcache/ApplicationCacheStorage.cpp:

(WebCore::parseHeader):
(WebCore::parseHeaders):

  • loader/icon/IconFetcher.cpp:

(WebCore::parseIconLink):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::parseModalDialogFeatures):

  • page/SecurityOrigin.cpp:

(WebCore::SecurityOrigin::createFromDatabaseIdentifier):

  • page/UserContentURLPattern.cpp:

(WebCore::UserContentURLPattern::parse):

  • page/XSSAuditor.cpp:

(WebCore::XSSAuditor::findInRequest):

  • platform/ContentType.cpp:

(WebCore::ContentType::parameter):
(WebCore::ContentType::type):

  • platform/KURL.cpp:

(WebCore::KURL::lastPathComponent):
(WebCore::KURL::setProtocol):
(WebCore::decodeURLEscapeSequences):
(WebCore::substituteBackslashes):
(WebCore::mimeTypeFromDataURL):

  • platform/Length.cpp:

(WebCore::newCoordsArray):
(WebCore::newLengthArray):

  • platform/LinkHash.cpp:

(WebCore::findSlashDotDotSlash):
(WebCore::findSlashSlash):
(WebCore::findSlashDotSlash):
(WebCore::cleanPath):

  • platform/MIMETypeRegistry.cpp:

(WebCore::MIMETypeRegistry::getMIMETypeForPath):

  • platform/SchemeRegistry.cpp:

(WebCore::SchemeRegistry::shouldTreatURLAsLocal):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::load):

  • platform/mac/DragImageMac.mm:

(WebCore::createDragImageIconForCachedImage):

  • platform/network/CredentialStorage.cpp:

(WebCore::protectionSpaceMapKeyFromURL):
(WebCore::findDefaultProtectionSpaceForURL):

  • platform/network/HTTPParsers.cpp:

(WebCore::skipWhiteSpace):
(WebCore::skipToken):
(WebCore::parseHTTPRefresh):
(WebCore::filenameFromHTTPContentDisposition):
(WebCore::findCharsetInMediaType):
(WebCore::parseXSSProtectionHeader):
(WebCore::extractReasonPhraseFromHTTPStatusLine):

  • platform/network/ResourceResponseBase.cpp:

(WebCore::ResourceResponseBase::isAttachment):
(WebCore::parseCacheHeader):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::updateWidget):

  • storage/Entry.cpp:

(WebCore::Entry::Entry):

  • svg/SVGFont.cpp:

(WebCore::isCompatibleGlyph):

  • svg/SVGURIReference.cpp:

(WebCore::SVGURIReference::getTarget):

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::parseClockValue):
(WebCore::SVGSMILElement::parseCondition):

  • xml/XPathFunctions.cpp:

(WebCore::XPath::FunSubstringBefore::evaluate):
(WebCore::XPath::FunSubstringAfter::evaluate):
(WebCore::XPath::FunTranslate::evaluate):
(WebCore::XPath::FunLang::evaluate):

  • xml/XPathParser.cpp:

(WebCore::XPath::Parser::expandQName):

16:23 Changeset [65467] by rniwa@webkit.org

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

Reviewed by Tony Chang.

REGRESSION(r65208): editing/pasteboard/smart-paste-003.html and smart-paste-004.html crash on Windows Chromium
https://bugs.webkit.org/show_bug.cgi?id=44070

The crash was caused by start or end node being removed in pushDownInlineStyleAroundNode.
It made start and end orphaned, and caused s.node() to be detached from the document.
Fixed the crash by using nodes passed to pushDownInlineStyleAroundNode for start and end if the original
start and end are orphaned because pushDownInlineStyleAroundNode won't prune targetNode.

Test: editing/pasteboard/smart-paste-003-trailing-whitespace.html

  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::removeInlineStyle):

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

Reviewed by Tony Chang.

REGRESSION(r65208): editing/pasteboard/smart-paste-003.html and smart-paste-004.html crash on Windows Chromium
https://bugs.webkit.org/show_bug.cgi?id=44070

The bug only reproduced on Windows when trailing space is selected only on Windows.
Added a crash test to copy & paste a word with trailing space.

  • editing/pasteboard/smart-paste-003-trailing-whitespace-expected.txt: Added.
  • editing/pasteboard/smart-paste-003-trailing-whitespace.html: Added.
  • platform/chromium/test_expectations.txt: editing/pasteboard/smart-paste-003.html and smart-paste-004.html should not crash.
16:06 Changeset [65466] by weinig@apple.com

Fix windows build.

  • Shared/win/CommandLineWin.cpp:
16:00 Changeset [65465] by weinig@apple.com

Remove #includes of <WebCore/PlatformString.h> in favor of <wtf/text/WTFString.h>

Reviewed by Gavin Barraclough.

  • Platform/Module.cpp:
  • Platform/Module.h:
  • Shared/CommandLine.h:
  • Shared/WebCoreArgumentCoders.h:
  • Shared/WebEvent.h:
  • Shared/WebNavigationDataStore.h:
  • Shared/WebPreferencesStore.h:
  • Shared/WebString.h:
  • Shared/WebURL.h:
  • Shared/mac/CommandLineMac.cpp:
  • Shared/qt/UpdateChunk.cpp:
  • UIProcess/API/C/WKContext.cpp:
  • UIProcess/API/C/cf/WKStringCF.cpp:
  • UIProcess/API/C/cf/WKURLCF.cpp:
  • UIProcess/API/cpp/qt/WKStringQt.cpp:
  • UIProcess/API/cpp/qt/WKURLQt.cpp:
  • UIProcess/API/mac/PageClientImpl.mm:
  • UIProcess/API/qt/qgraphicswkview.cpp:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:
  • UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
  • UIProcess/Launcher/win/ProcessLauncherWin.cpp:
  • UIProcess/WebBackForwardListItem.cpp:
  • UIProcess/WebBackForwardListItem.h:
  • UIProcess/WebContext.h:
  • UIProcess/WebContextInjectedBundleClient.cpp:
  • UIProcess/WebFrameProxy.cpp:
  • UIProcess/WebFrameProxy.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPolicyClient.cpp:
  • UIProcess/WebProcessProxy.cpp:
  • UIProcess/WebUIClient.cpp:
  • UIProcess/win/WebView.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.h:
  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
  • WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
  • WebProcess/Plugins/JSNPObject.cpp:
  • WebProcess/Plugins/NPJSObject.cpp:
  • WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
  • WebProcess/Plugins/Netscape/NetscapePluginModule.h:
  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebKitMain.cpp:
  • WebProcess/win/WebProcessMainWin.cpp:
15:54 Changeset [65464] by japhet@chromium.org

2010-08-16 Nate Chapin <japhet@chromium.org>

Chromium win rebaseline + test expectations tweaks.

  • platform/chromium-win/svg/custom/absolute-sized-content-with-resources-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
15:48 Changeset [65463] by jamesr@google.com

fix build

15:35 Changeset [65462] by hyatt@apple.com

Fix Chromium/Qt bustage.

15:32 Changeset [65461] by hyatt@apple.com

Fix Chromium Bustage.

15:30 Changeset [65460] by hyatt@apple.com

Fix Chromium Bustage.

15:22 Changeset [65459] by weinig@apple.com

Null CFURLRef returned from provisionalURL after searching on zillow.com
<rdar://problem/8261812>
https://bugs.webkit.org/show_bug.cgi?id=44072

Reviewed by Gavin Barraclough.

Conversion from WKURLRef to CFRURLRef was breaking on URLs using characters
such as '{'.

  • UIProcess/API/C/cf/WKURLCF.cpp:

(WKURLCopyCFURL): Use code similar to that found in KURLCFNet.cpp for conversion.

14:48 Changeset [65458] by hyatt@apple.com

Fix Qt bustage.

14:43 Changeset [65457] by weinig@apple.com

Remove unnecessary copy constructor, assignment operator and swap function.
The defaults (for all except swap) should do just fine.

Reviewed by Gavin Barraclough.

  • Shared/WebPreferencesStore.cpp:
  • Shared/WebPreferencesStore.h:
14:37 Changeset [65456] by hyatt@apple.com

Fix Qt build bustage.

14:36 Changeset [65455] by commit-queue@webkit.org

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

Reviewed by Dimitri Glazkov.

Canvas2D does not support images larger than system's GPU max texture size
https://bugs.webkit.org/show_bug.cgi?id=43864

A new class "TilingData" has been created that provides logic for
splitting a large image into a series of smaller tiles.

GLES2Texture and CLES2Canvas are modified to use the TilingData to
split images on texture upload and render one logical image as many smaller
images.

TilingData is tested via unit tests in WebKit/chromium/tests/TilingDataTest.cpp

  • WebCore.gypi:
  • platform/graphics/chromium/GLES2Canvas.cpp: (WebCore::GLES2Canvas::drawTexturedRect): (WebCore::GLES2Canvas::drawTexturedRectTile):
  • platform/graphics/chromium/GLES2Canvas.h:
  • platform/graphics/chromium/GLES2Texture.cpp: (WebCore::GLES2Texture::GLES2Texture): (WebCore::GLES2Texture::~GLES2Texture): (WebCore::GLES2Texture::create): (WebCore::copySubRect): (WebCore::GLES2Texture::load): (WebCore::GLES2Texture::bindTile):
  • platform/graphics/chromium/GLES2Texture.h: (WebCore::GLES2Texture::tiles):
  • platform/graphics/chromium/TilingData.cpp: Added. (WebCore::computeNumTiles): (WebCore::TilingData::TilingData): (WebCore::TilingData::tileXIndexFromSrcCoord): (WebCore::TilingData::tileYIndexFromSrcCoord): (WebCore::TilingData::tileBounds): (WebCore::TilingData::tileBoundsWithBorder): (WebCore::TilingData::tileBoundsNormalized): (WebCore::TilingData::tilePositionX): (WebCore::TilingData::tilePositionY): (WebCore::TilingData::tileSizeX): (WebCore::TilingData::tileSizeY): (WebCore::TilingData::overlappedTileIndices): (WebCore::TilingData::intersectDrawQuad):
  • platform/graphics/chromium/TilingData.h: Added. (WebCore::TilingData::maxTextureSize): (WebCore::TilingData::totalSizeX): (WebCore::TilingData::totalSizeY): (WebCore::TilingData::numTiles): (WebCore::TilingData::numTilesX): (WebCore::TilingData::numTilesY): (WebCore::TilingData::tileIndex): (WebCore::TilingData::tileXIndex): (WebCore::TilingData::tileYIndex): (WebCore::TilingData::TilingData): (WebCore::TilingData::assertTile):
  • platform/graphics/skia/ImageSkia.cpp: (WebCore::BitmapImage::draw):
  • platform/graphics/skia/PlatformContextSkia.cpp: (WebCore::PlatformContextSkia::uploadSoftwareToHardware):

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

Reviewed by Dimitri Glazkov.

Canvas2D does not support images larger than system's GPU max texture size
https://bugs.webkit.org/show_bug.cgi?id=43864

Unit tests for TilingData class.

  • WebKit.gyp:
  • tests/TilingDataTest.cpp: Added. (WebCore::TEST):
14:34 Changeset [65454] by hyatt@apple.com

Fix GTK build bustage.

14:31 Changeset [65453] by hyatt@apple.com

Fix GTK build bustage.

14:28 Changeset [65452] by hyatt@apple.com

Fix Qt build bustage.

14:26 Changeset [65451] by hyatt@apple.com

Fix GTK build bustage.

14:21 Changeset [65450] by cmarrin@apple.com

Put ANGLE include inside PLATFORM(MAC) to fix Chrome and Qt builds

13:44 Changeset [65449] by hyatt@apple.com

https://bugs.webkit.org/show_bug.cgi?id=43507, stop ImageBuffer from copying its data when rendering after canvas changes happen.

Reviewed by Anders Carlsson.

This patch renames ImageBuffer::image() to ImageBuffer::copyImage(). The new method always returns a new copy that is a current
snapshot of the ImageBuffer.

To draw an ImageBuffer, you now use new GraphicsContext calls: drawImageBuffer. Platforms can then optimize these calls to draw
efficiently without having to copy the bits of the ImageBuffer into an Image.

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSCanvasValue.cpp:

(WebCore::CSSCanvasValue::image):

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::willDraw):
(WebCore::HTMLCanvasElement::reset):
(WebCore::HTMLCanvasElement::paint):
(WebCore::HTMLCanvasElement::setSurfaceSize):
(WebCore::HTMLCanvasElement::copiedImage):
(WebCore::HTMLCanvasElement::clearCopiedImage):

  • html/HTMLCanvasElement.h:
  • html/canvas/CanvasPattern.cpp:

(WebCore::CanvasPattern::CanvasPattern):

  • html/canvas/CanvasPattern.h:

(WebCore::CanvasPattern::create):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::drawImage):
(WebCore::CanvasRenderingContext2D::createPattern):
(WebCore::CanvasRenderingContext2D::drawTextInternal):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
(WebCore::WebGLRenderingContext::reshape):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::texSubImage2D):

  • html/canvas/WebGLRenderingContext.h:

(WebCore::WebGLRenderingContext::paintsIntoCanvasBuffer):

  • platform/graphics/GeneratedImage.cpp:

(WebCore::GeneratedImage::drawPattern):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::drawImageBuffer):
(WebCore::GraphicsContext::clipToImageBuffer):

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/GraphicsContext3D.h:

(WebCore::GraphicsContext3D::paintsIntoCanvasBuffer):

  • platform/graphics/Image.h:
  • platform/graphics/ImageBuffer.h:

(WebCore::ImageBuffer::width):
(WebCore::ImageBuffer::height):

  • platform/graphics/Pattern.cpp:

(WebCore::Pattern::Pattern):

  • platform/graphics/Pattern.h:

(WebCore::Pattern::create):

  • platform/graphics/cairo/GraphicsContextCairo.cpp:
  • platform/graphics/cairo/ImageBufferCairo.cpp:

(WebCore::ImageBuffer::drawsUsingCopy):
(WebCore::ImageBuffer::copyImage):
(WebCore::ImageBuffer::clip):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):

  • platform/graphics/cg/GraphicsContextCG.cpp:
  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::ImageBuffer):
(WebCore::ImageBuffer::drawsUsingCopy):
(WebCore::ImageBuffer::copyImage):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):
(WebCore::ImageBuffer::clip):

  • platform/graphics/cg/ImageBufferData.h:
  • platform/graphics/filters/FEColorMatrix.cpp:

(WebCore::FEColorMatrix::apply):

  • platform/graphics/filters/FEComposite.cpp:

(WebCore::FEComposite::apply):

  • platform/graphics/filters/SourceAlpha.cpp:

(WebCore::SourceAlpha::apply):

  • platform/graphics/filters/SourceGraphic.cpp:

(WebCore::SourceGraphic::apply):

  • platform/graphics/mac/GraphicsContext3DMac.mm:
  • platform/graphics/qt/GraphicsContext3DQt.cpp:
  • platform/graphics/qt/GraphicsContextQt.cpp:
  • platform/graphics/qt/ImageBufferData.h:
  • platform/graphics/qt/ImageBufferQt.cpp:

(WebCore::ImageBufferData::ImageBufferData):
(WebCore::ImageBuffer::drawsUsingCopy):
(WebCore::ImageBuffer::copyImage):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):
(WebCore::ImageBuffer::clip):

  • platform/graphics/skia/GraphicsContextSkia.cpp:
  • platform/graphics/skia/ImageBufferSkia.cpp:

(WebCore::ImageBuffer::drawsUsingCopy):
(WebCore::ImageBuffer::copyImage):
(WebCore::ImageBuffer::clip):
(WebCore::):

  • platform/graphics/wx/GraphicsContextWx.cpp:
  • platform/graphics/wx/ImageBufferWx.cpp:

(WebCore::ImageBuffer::drawsUsingCopy):
(WebCore::ImageBuffer::copyImage):
(WebCore::ImageBuffer::clip):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):

  • platform/mac/ScrollbarThemeMac.mm:

(WebCore::ScrollbarThemeMac::paint):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):

  • rendering/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::applyClippingToContext):

  • rendering/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::postApplyResource):

  • rendering/RenderSVGResourceGradient.cpp:

(WebCore::clipToTextMask):

  • rendering/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::applyResource):

  • rendering/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::buildPattern):

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintProgressBar):

  • svg/SVGFEImageElement.cpp:

(WebCore::SVGFEImageElement::build):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::nativeImageForCurrentFrame):

  • svg/graphics/SVGImage.h:
  • svg/graphics/filters/SVGFEMerge.cpp:

(WebCore::FEMerge::apply):

  • svg/graphics/filters/SVGFEOffset.cpp:

(WebCore::FEOffset::apply):

  • svg/graphics/filters/SVGFETile.cpp:

(WebCore::FETile::apply):

13:19 Changeset [65448] by cmarrin@apple.com

Fixed a warning in ANGLEWebKitBridge.cpp

13:15 Changeset [65447] by cmarrin@apple.com

Build ANGLE for all versions of Mac to fix Leopard build

12:30 BuildingQtOnWindows edited by jocelyn.turcotte@nokia.com
python 2.6 -> python 2.x (diff)
12:18 Changeset [65446] by cmarrin@apple.com

2010-08-16 Paul Sawaya <psawaya@apple.com>

Reviewed by Chris Marrin.

Added shader validation via ANGLE
https://bugs.webkit.org/show_bug.cgi?id=42405

12:12 Changeset [65445] by kevino@webkit.org

[wx] Build fix, do not build WebCore as a convenience library as this leads to
errors in the Win build w/export symbols and causes problems with DOM bindings
debugging in gdb.

12:00 Changeset [65444] by commit-queue@webkit.org

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

Reviewed by Nate Chapin.

Some http/tests/history tests now pass on Chromium after r65340
https://bugs.webkit.org/show_bug.cgi?id=44033

Remove expected failures.

  • platform/chromium/test_expectations.txt:
11:24 Changeset [65443] by loislo@chromium.org

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

Reviewed by Adam Roben.

Current implementation of WebCore post-build step on windows platform is error prone.
It would be better to extract the script into external file.
https://bugs.webkit.org/show_bug.cgi?id=44058

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcproj/copyForwardingHeaders.cmd: Added.
  • WebCore.vcproj/copyInspectorFiles.cmd: Added.
11:09 Changeset [65442] by kevino@webkit.org

[wx] Fix typo in previous build fix.

11:04 Changeset [65441] by commit-queue@webkit.org

2010-08-16 Alex Milowski <alex@milowski.com>

Reviewed by David Levin.

Added the configuration of the MathML related files.

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:

2010-08-16 Alex Milowski <alex@milowski.com>

Reviewed by David Levin.

Added the ENABLE_MATHML=1 to the feature_defines.

  • features.gypi:
10:39 Changeset [65440] by pfeldman@chromium.org

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

Not reviewed: fix Leopard Release inspector tests.

  • inspector/front-end/inspector.js:
10:30 Changeset [65439] by bulach@chromium.org

2010-08-16 Marcus Bulach <bulach@chromium.org>

Reviewed by Jeremy Orlow.

Implements IDBKeyPath extractor.
https://bugs.webkit.org/show_bug.cgi?id=43276

Unit-test IDBKeyPathExtractorTest.cpp.
LayoutTests will arrive as IndexedDB infrastructure is fleshed out.

  • bindings/v8/IDBBindingUtilities.cpp: (WebCore::getValueFrom): (WebCore::createIDBKeyFromSerializedValueAndKeyPath):
  • bindings/v8/IDBBindingUtilities.h:

2010-08-16 Marcus Bulach <bulach@chromium.org>

Reviewed by Jeremy Orlow.

Implements IDBKeyPath extractor.
https://bugs.webkit.org/show_bug.cgi?id=43276

Unit-test IDBKeyPathExtractorTest.cpp.
LayoutTests will arrive as IndexedDB infrastructure is fleshed out.

  • WebKit.gyp:
  • public/WebIDBKey.h:
  • public/WebIDBKeyPath.h: Added. (WebKit::WebIDBKeyPath::WebIDBKeyPath): (WebKit::WebIDBKeyPath::~WebIDBKeyPath):
  • public/WebPrivateOwnPtr.h: Added. (WebKit::WebPrivateOwnPtr::WebPrivateOwnPtr): (WebKit::WebPrivateOwnPtr::~WebPrivateOwnPtr): (WebKit::WebPrivateOwnPtr::reset): (WebKit::WebPrivateOwnPtr::get): (WebKit::WebPrivateOwnPtr::operator->):
  • src/WebIDBKey.cpp: (WebKit::WebIDBKey::createFromValueAndKeyPath):
  • src/WebIDBKeyPath.cpp: Added. (WebKit::WebIDBKeyPath::create): (WebKit::WebIDBKeyPath::WebIDBKeyPath): (WebKit::WebIDBKeyPath::parseError): (WebKit::WebIDBKeyPath::assign): (WebKit::WebIDBKeyPath::reset): (WebKit::WebIDBKeyPath::operator const WTF::Vector<WebCore::IDBKeyPathElement, 0>&):
  • tests/IDBBindingUtilitiesTest.cpp: Added. (WebCore::LocalContext::LocalContext): (WebCore::LocalContext::~LocalContext): (WebCore::checkKeyFromValueAndKeyPathInternal): (WebCore::checkKeyPathNullValue): (WebCore::checkKeyPathStringValue): (WebCore::checkKeyPathNumberValue): (WebCore::TEST):
10:10 Changeset [65438] by kov@webkit.org

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

Reviewed by Kenneth Rohde Christiansen and Martin Robinson.

[GTK] GTK+ drawing idle starved
https://bugs.webkit.org/show_bug.cgi?id=43994

Tune down the priority of the shared timers to guarantee GTK+ has
an opportunity to redraw.

  • platform/gtk/SharedTimerGtk.cpp: (WebCore::setSharedTimerFireTime):
09:44 Changeset [65437] by leandro@webkit.org

2010-08-16 Leandro Pereira <leandro@profusion.mobi>

[EFL] Build fix after r65366.

  • CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if they're empty.
  • jsc/CMakeLists.txt: Ditto.
  • wtf/CMakeLists.txt: Ditto.

2010-08-16 Leandro Pereira <leandro@profusion.mobi>

[EFL] Build fix after r65366.

  • CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if they're empty.

2010-08-16 Leandro Pereira <leandro@profusion.mobi>

[EFL] Build fix after r65366.

EFL port does not support automated tests yet.

  • CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if they're empty.
09:40 Changeset [65436] by steveblock@google.com

Unreviewed build fix.

Add fast/dom/Geolocation/disconnected-frame-permission-denied.html to failing tests for Chromium
https://bugs.webkit.org/show_bug.cgi?id=44059

  • platform/chromium/test_expectations.txt:
09:35 Changeset [65435] by mitz@apple.com

Build fix.

  • WebKitTestRunner/TestController.cpp:

(WTR::createOtherPage): Initialize the contentsSizeChanged member.
(WTR::TestController::initialize): Ditto.

09:33 Changeset [65434] by pfeldman@chromium.org

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

Reviewed by Yury Semikhatsky.

Web Inspector: Make InjectedScript proto-based.
https://bugs.webkit.org/show_bug.cgi?id=44028

  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor): (injectedScriptConstructor.):

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

Reviewed by Yury Semikhatsky.

Web Inspector: Make InjectedScript proto-based.
https://bugs.webkit.org/show_bug.cgi?id=44028
Drive-by test fix.

  • http/tests/inspector-enabled/console-log-before-frame-navigation.html:
  • http/tests/inspector-enabled/resources/console-log-before-frame-navigation.js: Removed.
  • http/tests/inspector-enabled/resources/console-log-frame-before-navigation.html:
09:31 Changeset [65433] by kevino@webkit.org

wxMSW build fix. Don't build the Python DOM bindings until we get the export issues
sorted out.

09:29 Changeset [65432] by ossy@webkit.org

Fix warning in WebCore/plugins/win/PluginPackageWin.cpp
https://bugs.webkit.org/show_bug.cgi?id=43920

Reviewed by Adam Roben.

  • plugins/win/PluginPackageWin.cpp:

(WebCore::PluginPackage::fetchInfo):

09:19 Changeset [65431] by ossy@webkit.org

Unreviewed.

[Qt] fast/dom/Geolocation/disconnected-frame-permission-denied.html fails
https://bugs.webkit.org/show_bug.cgi?id=44059

  • platform/qt/Skipped: fast/dom/Geolocation/disconnected-frame-permission-denied.html skipped until fix.
09:15 Changeset [65430] by pfeldman@chromium.org

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

Not reviewed. Touch inspector file to force frontend deployment.

  • inspector/InspectorController.cpp:
09:06 Changeset [65429] by kevino@webkit.org

[wx] Build fix for non-Win ports on Windows.

08:16 Changeset [65428] by agl@chromium.org

2010-08-16 Adam Langley <agl@chromium.org>

Reviewed by Tony Chang.

[chromium] Improve spacing support for complex text on Linux

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

Previously, our complex text support ignored word-spacing,
justification and letter-spacing. This fixes the first two issues and
allows us to render Scribd's HTML5 documents much better.

Test: fast/text/atsui-spacing-features.html

  • platform/graphics/chromium/FontLinux.cpp: (WebCore::TextRunWalker::TextRunWalker): (WebCore::TextRunWalker::setWordSpacingAdjustment): (WebCore::TextRunWalker::setLetterSpacingAdjustment): (WebCore::TextRunWalker::setPadding): (WebCore::TextRunWalker::setGlyphXPositions): (WebCore::TextRunWalker::isCodepointSpace): (WebCore::Font::drawComplexText): (WebCore::Font::floatWidthForComplexText): (WebCore::Font::offsetForPositionForComplexText): (WebCore::Font::selectionRectForComplexText):
08:14 Changeset [65427] by ossy@webkit.org

Fix warnings: unknown conversion type character 'l' in format
https://bugs.webkit.org/show_bug.cgi?id=43359

Reviewed by Kenneth Rohde Christiansen.

  • loader/icon/IconDatabase.cpp:

(WebCore::IconDatabase::performURLImport): Replace %zu with %lu, because Windows doesn't understand z modifier.
(WebCore::IconDatabase::pruneUnretainedIcons): Use %I64i intsead of %lli on Windows.

  • platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:

(WebCore::MediaPlayerPrivate::totalTimeChanged): Use %I64d intsead of %lld on Windows.

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::SQLiteDatabase::setMaximumSize): Use %I64i intsead of %lli on Windows.

  • storage/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::setQuota): Use %I64u intsead of %llu on Windows.

08:02 Changeset [65426] by ossy@webkit.org

Fix warnings: unknown conversion type character 'l' in format
https://bugs.webkit.org/show_bug.cgi?id=43359

Reviewed by Kenneth Rohde Christiansen.

  • loader/FTPDirectoryParser.cpp: Use %I64u format specifier instead of %llu on Windows.

(WebCore::parseOneFTPLine):

07:32 Changeset [65425] by ariya@webkit.org

[Qt] Shadow blur for rectangle fill
https://bugs.webkit.org/show_bug.cgi?id=44025

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

WebCore:

The blur implementation follows the approximation of Gaussian blur
with three successive box blurs, working on the alpha channel only.
(see http://www.w3.org/TR/SVG/filters.html#feGaussianBlur).

  • WebCore.pro: Refer to ContexShadow.* files.
  • platform/graphics/qt/ContextShadow.cpp: Added.

(WebCore::ContextShadow::ContextShadow):
(WebCore::ContextShadow::clear):
(WebCore::blurHorizontal): Box blurs in horizontal direction, working
on QImage (in-place).
(WebCore::shadowBlur): Main blur function which just calls the
above blurHorizontal function twice, once with transposed image
(equivalent as it would have done vertical box blurs).
(WebCore::ContextShadow::drawShadowRect):

  • platform/graphics/qt/ContextShadow.h: Added.

(WebCore::ContextShadow::):

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::GraphicsContextPlatformPrivate::hasShadow):
(WebCore::GraphicsContext::restorePlatformState):
(WebCore::GraphicsContext::fillRect): Use ContextShadow for the shadow.
(WebCore::GraphicsContext::setPlatformShadow):

LayoutTests:

Update pixel test reference after the blur support.

  • platform/qt/fast/box-shadow/basic-shadows-expected.checksum:
  • platform/qt/fast/box-shadow/basic-shadows-expected.png:
07:09 Changeset [65424] by abecsi@webkit.org

2010-08-16 Andras Becsi <abecsi@webkit.org>

Rubber-stamped by Gustavo Noronha Silva.

[GTK] Build fix for MathML code generation.

No new tests needed.

  • GNUmakefile.am:
06:58 Changeset [65423] by commit-queue@webkit.org

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

Unreviewed, rolling out r65414.
http://trac.webkit.org/changeset/65414
https://bugs.webkit.org/show_bug.cgi?id=44055

GTL & QT tests failing. (Requested by pfeldman on #webkit).

  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor): (injectedScriptConstructor.):
06:39 Changeset [65422] by abecsi@webkit.org

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

Reviewed by Kenneth Rohde Christiansen.

Handle content size change in WebKit2
Re-landing after fix.

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

  • MiniBrowser/mac/BrowserWindowController.m: (-[BrowserWindowController awakeFromNib]): Initialize WKPageUICallback::contetsSizeChanged to 0.
  • MiniBrowser/win/BrowserView.cpp: (BrowserView::create): Initialize WKPageUICallback::contetsSizeChanged to 0.

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

Reviewed by Kenneth Rohde Christiansen.

Handle content size change in WebKit2
Re-landing after fix.

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

Based on the work of Antti Koivisto.
Send message to the UI client when the contents size has changed through the WebChromeClient
and propagate it to the WKPageUIClient.

  • Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: (WebPageProxyMessage::): Added ContentsSizeChanged message kind.
  • UIProcess/API/C/WKPage.h: Added WKPageContentsSizeChangedCallback callback to the WKPageUIClient.
  • UIProcess/API/qt/qwkpage.cpp: (QWKPage::QWKPage): Initialize the new callback to 0.
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didReceiveMessage): Handle ContentsSizeChanged message. Calls contetsSizeChanged. (WebKit::WebPageProxy::contentsSizeChanged): Added. Propagate the event to the the UI client.
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebUIClient.cpp: (WebKit::WebUIClient::contentsSizeChanged): Added. Propagate the event forward to the WKPageUIClient.
  • UIProcess/WebUIClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::contentsSizeChanged): Implemented.
06:28 Changeset [65421] by commit-queue@webkit.org

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

Unreviewed, rolling out r65419.
http://trac.webkit.org/changeset/65419
https://bugs.webkit.org/show_bug.cgi?id=44053

Broke the Windows build (Requested by bbandix on #webkit).

  • Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: (WebPageProxyMessage::):
  • UIProcess/API/C/WKPage.h:
  • UIProcess/API/qt/qwkpage.cpp: (QWKPage::QWKPage):
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didReceiveMessage):
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebUIClient.cpp:
  • UIProcess/WebUIClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::contentsSizeChanged):

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

Unreviewed, rolling out r65419.
http://trac.webkit.org/changeset/65419
https://bugs.webkit.org/show_bug.cgi?id=44053

Broke the Windows build (Requested by bbandix on #webkit).

  • MiniBrowser/mac/BrowserWindowController.m: (-[BrowserWindowController awakeFromNib]):
  • MiniBrowser/win/BrowserView.cpp: (BrowserView::create):
05:58 Changeset [65420] by ariya@webkit.org

2010-08-16 Ariya Hidayat <ariya@sencha.com>

Reviewed by Antonio Gomes.

[Qt] Save and restore shadow state in GraphicsContextQt
https://bugs.webkit.org/show_bug.cgi?id=44031

This is needed after r65362.
Use a new class ContextShadowParameter to track and keep the shadow
state. We use this rather than using GraphicsContextState to allow
possible optimizations (right now only to determine the shadow type,
but in future it might cover things like cached scratch image,
persistent shader, etc).

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::ContextShadowParameter::): (WebCore::ContextShadowParameter::ContextShadowParameter): (WebCore::ContextShadowParameter::clear): (WebCore::GraphicsContextPlatformPrivate::hasShadow): (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): (WebCore::GraphicsContext::savePlatformState): (WebCore::GraphicsContext::restorePlatformState): (WebCore::GraphicsContext::drawRect): (WebCore::GraphicsContext::drawLine): (WebCore::GraphicsContext::strokeArc): (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::fillRect): (WebCore::GraphicsContext::fillRoundedRect): (WebCore::GraphicsContext::setPlatformShadow): (WebCore::GraphicsContext::clearPlatformShadow):
05:52 Changeset [65419] by abecsi@webkit.org

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

Reviewed by Kenneth Rohde Christiansen.

Handle content size change in WebKit2

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

  • MiniBrowser/mac/BrowserWindowController.m: (-[BrowserWindowController awakeFromNib]): Initialize WKPageUICallback::contetsSizeChanged to 0.
  • MiniBrowser/win/BrowserView.cpp: (BrowserView::create): Initialize WKPageUICallback::contetsSizeChanged to 0.

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

Reviewed by Kenneth Rohde Christiansen.

Handle content size change in WebKit2

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

Based on the work of Antti Koivisto.
Send message to the UI client when the contents size has changed through the WebChromeClient
and propagate it to the WKPageUIClient.

  • Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: (WebPageProxyMessage::): Added ContentsSizeChanged message kind.
  • UIProcess/API/C/WKPage.h: Added WKPageContentsSizeChangedCallback callback to the WKPageUIClient.
  • UIProcess/API/qt/qwkpage.cpp: (QWKPage::QWKPage): Initialize the new callback to 0.
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didReceiveMessage): Handle ContentsSizeChanged message. Calls contetsSizeChanged. (WebKit::WebPageProxy::contentsSizeChanged): Added. Propagate the event to the the UI client.
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebUIClient.cpp: (WebKit::WebUIClient::contentsSizeChanged): Added. Propagate the event forward to the WKPageUIClient.
  • UIProcess/WebUIClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::contentsSizeChanged): Implemented.
05:44 Changeset [65418] by ariya@webkit.org

Add my new email address to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
05:43 Changeset [65417] by bulach@chromium.org

2010-07-28 Marcus Bulach <bulach@chromium.org>

Reviewed by Adam Barth.

Implement IDBKeyPath parser.
https://bugs.webkit.org/show_bug.cgi?id=42976

IDBKeyPath is an internal class, exposed only for unit tests for now.
It'll allow indexed database implementation to traverse a given key path and obtain the corresponding properties
from a SerializedScriptValue.

  • WebCore.gypi:
  • storage/IDBKeyPath.cpp: Added. (WebCore::IDBKeyPath::create): (WebCore::IDBKeyPath::IDBKeyPath): (WebCore::IDBKeyPath::~IDBKeyPath): (WebCore::IDBKeyPath::hasNext): (WebCore::IDBKeyPath::next): (WebCore::IDBKeyPath::identifier): (WebCore::IDBKeyPath::hasIndex): (WebCore::IDBKeyPath::indexValue): (WebCore::IDBKeyPath::parserError): (WebCore::IDBKeyPath::parse): (WebCore::IDBKeyPath::Lexer::lex): (WebCore::isSafeIdentifierStartCharacter): (WebCore::isSafeIdentifierCharacter): (WebCore::IDBKeyPath::Lexer::lexIdentifier): (WebCore::IDBKeyPath::Lexer::lexNumber):
  • storage/IDBKeyPath.h: Added. (WebCore::IDBKeyPath::Token::Token): (WebCore::IDBKeyPath::): (WebCore::IDBKeyPath::Lexer::Lexer): (WebCore::IDBKeyPath::Lexer::next): (WebCore::IDBKeyPath::Lexer::currentToken):

2010-07-28 Marcus Bulach <bulach@chromium.org>

Reviewed by Adam Barth.

Implement IDBKeyPath parser.
https://bugs.webkit.org/show_bug.cgi?id=42976

IDBKeyPath is an internal class, exposed only for unit tests for now.
It'll allow indexed database implementation to traverse a given key path and obtain the corresponding properties
from a SerializedScriptValue.

  • WebKit.gyp:
  • tests/IDBKeyPathTest.cpp: Added. (WebCore::ExpectedToken::ExpectedToken): (WebCore::checkKeyPath): (WebCore::TEST):
05:30 Changeset [65416] by steveblock@google.com

2010-08-13 Steve Block <steveblock@google.com>

Reviewed by Alexey Proskuryakov.

Geolocation requests in progress when the frame is disconnected should invoke the error callback
https://bugs.webkit.org/show_bug.cgi?id=43974

If requests are ongoing when the Frame is disconnected, we abort them with a fatal error.
To do this, when Geolocation::disconnectFrame() is called we call cancelAllRequests() to
set a fatal error on all ongoing requests. Once the requests have made their error
callbacks, they are deleted. Note that we check at callback time that the script
execution context for the callback is still valid, so it's safe to attempt these
callbacks even after the Geolocation object's Frame has gone.

This requires a change to allow multiple calls to GeoNotifier::setFatalError().
For repeated calls, we do not replace the existing error. This ensures that when
permission has been denied and the frame is then disconnected, the error callback
reports the permission error, as required by the spec.

Tests: fast/dom/Geolocation/disconnected-frame.html

fast/dom/Geolocation/disconnected-frame-permission-denied.html

  • page/Geolocation.cpp: (WebCore::Geolocation::GeoNotifier::setFatalError): (WebCore::Geolocation::disconnectFrame): (WebCore::Geolocation::startRequest): (WebCore::Geolocation::cancelAllRequests):
  • page/Geolocation.h:

2010-08-13 Steve Block <steveblock@google.com>

Reviewed by Alexey Proskuryakov.

Geolocation requests in progress when the frame is disconnected should invoke the error callback
https://bugs.webkit.org/show_bug.cgi?id=43974

Added new tests to GTK skipped list.

  • fast/dom/Geolocation/disconnected-frame.html: Added.
  • fast/dom/Geolocation/disconnected-frame-expected.txt: Added.
  • fast/dom/Geolocation/script-tests/disconnected-frame.js: Added.
  • fast/dom/Geolocation/resources/disconnected-frame-inner.html: Added.
  • fast/dom/Geolocation/disconnected-frame-permission-denied.html: Added.
  • fast/dom/Geolocation/disconnected-frame-permission-denied-expected.txt: Added.
  • fast/dom/Geolocation/script-tests/disconnected-frame-permission-denied.js: Added.
  • platform/gtk/Skipped:
05:23 Changeset [65415] by pfeldman@chromium.org

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

Reviewed by Joseph Pecoraro.

Web Inspector: upstream frontend-side WebSocket transport.
https://bugs.webkit.org/show_bug.cgi?id=43970

Chromium already has an alternate WebSocket-based communication channel with
the backend. Upstreaming it in this change. We will agree on the URI
of the remote service as the protocol matures.

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

Reviewed by Joseph Pecoraro.

Web Inspector: upstream frontend-side WebSocket transport.
https://bugs.webkit.org/show_bug.cgi?id=43970

Chromium already has an alternate WebSocket-based communication channel with
the backend. Upstreaming it in this change. We will agree on the URI
of the remote service as the protocol matures.

  • src/WebDevToolsFrontendImpl.cpp: (WebKit::WebDevToolsFrontendImpl::dispatchOnInspectorFrontend):
  • src/js/DevTools.js: (WebInspector.loaded): (devtools.domContentLoaded):
05:19 Changeset [65414] by pfeldman@chromium.org

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

Reviewed by Yury Semikhatsky.

Web Inspector: Make InjectedScript proto-based.
https://bugs.webkit.org/show_bug.cgi?id=44028

  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor): (injectedScriptConstructor.):
  • inspector/front-end/inspector.js: (WebInspector.loaded):
05:16 Changeset [65413] by yurys@chromium.org

2010-08-16 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: remove utility context related code from debugger agent
https://bugs.webkit.org/show_bug.cgi?id=44049

  • src/DebuggerAgentManager.cpp: (WebKit::DebuggerAgentManager::onV8DebugMessage): (WebKit::DebuggerAgentManager::pauseScript):
  • src/DebuggerAgentManager.h:
05:16 Changeset [65412] by pfeldman@chromium.org

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

Reviewed by Joseph Pecoraro.

Web Inspector: [REGRESSION] console's clear command does not work.
https://bugs.webkit.org/show_bug.cgi?id=44027

  • inspector/console-clear.html:
  • inspector/console-command-clear-expected.txt: Added.
  • inspector/console-command-clear.html: Copied from LayoutTests/inspector/console-clear.html.

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

Reviewed by Joseph Pecoraro.

Web Inspector: [REGRESSION] console's clear command does not work.
https://bugs.webkit.org/show_bug.cgi?id=44027

Test: inspector/console-command-clear.html

  • inspector/Inspector.idl:
  • inspector/InspectorBackend.cpp:
  • inspector/InspectorBackend.h:
  • inspector/InspectorController.cpp: (WebCore::InspectorController::clearConsoleMessages):
  • inspector/front-end/ConsoleView.js: (WebInspector.ConsoleView.prototype.requestClearMessages):
  • inspector/front-end/inspector.js: (WebInspector.consoleMessagesCleared):
04:57 Changeset [65411] by hamaji@chromium.org

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

Reviewed by Shinichiro Hamaji.

Attempt to fix Chromium's test_shell_tests.

Port Chromium's WebEntities to HTMLEntityTable
https://bugs.webkit.org/show_bug.cgi?id=44036

  • src/WebEntities.cpp: (WebKit::):
04:26 Changeset [65410] by jorlow@chromium.org

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

Ugh, the #if ENABLE() was supposed to be added to Settings not GroupSettings.

  • page/GroupSettings.cpp: (WebCore::GroupSettings::GroupSettings): (WebCore::GroupSettings::setLocalStorageQuotaBytes):
  • page/GroupSettings.h:
  • page/Settings.cpp: (WebCore::Settings::Settings):
  • page/Settings.h:
04:09 Changeset [65409] by jorlow@chromium.org

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

Last build fix?

  • page/PageGroup.cpp: (WebCore::PageGroup::PageGroup):
03:53 Changeset [65408] by jorlow@chromium.org

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

Ugh...another build fix.

  • page/GroupSettings.cpp: (WebCore::GroupSettings::GroupSettings):
  • page/GroupSettings.h:
03:40 Changeset [65407] by jorlow@chromium.org

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

Build fix.

  • GNUmakefile.am:
03:20 Changeset [65406] by jorlow@chromium.org

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

Build fix.

  • page/PageGroup.cpp: (WebCore::PageGroup::localStorage):
03:02 Changeset [65405] by jorlow@chromium.org

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

Some settings are linked to the PageGroup not the Page. Create a new class for those.
https://bugs.webkit.org/show_bug.cgi?id=43794

Since persistient storage is shared between pages, there's no way to modify
some settings related to it on a per page basis. As such, it's not technically
correct for these settings to be on the Page's settings. Create a new class
called GroupSettings, move group-wide local storage setting there (the other we
can't), and add a new setting for IndexedDB's path (which is prompting this change).

No behavior has changed, so no tests.

  • Android.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • page/GroupSettings.cpp: Added. (WebCore::GroupSettings::GroupSettings): (WebCore::GroupSettings::setLocalStorageQuotaBytes): (WebCore::GroupSettings::setLocalStorageDatabasePath): (WebCore::GroupSettings::setIndexedDBDatabasePath):
  • page/GroupSettings.h: Added. (WebCore::GroupSettings::create): (WebCore::GroupSettings::localStorageQuotaBytes): (WebCore::GroupSettings::localStorageDatabasePath): (WebCore::GroupSettings::indexedDBDatabasePath):
  • page/PageGroup.cpp: (WebCore::PageGroup::PageGroup): (WebCore::PageGroup::localStorage):
  • page/PageGroup.h: (WebCore::PageGroup::groupSettings):
  • page/Settings.cpp: (WebCore::Settings::Settings): (WebCore::Settings::setSessionStorageQuota):
  • page/Settings.h:
02:44 Changeset [65404] by morrita@google.com

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

Unreviewed; test expectations fix for Chromium.

  • platform/chromium/test_expectations.txt:
02:21 Changeset [65403] by zoltan@webkit.org

Unreviewed Qt WebKit2 build fix.

Patch by Balazs Kelemen <kb@inf.u-szeged.hu> on 2010-08-16

  • UIProcess/qt/WebContextQt.cpp:

(WebKit::WebContext::platformSetUpWebProcess): Added empty stub implementation.

  • WebKit2.pro: Enumerate new files, include WebKit.pri for correct define macro set.
02:09 Changeset [65402] by abarth@webkit.org

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

Reviewed by Alexey Proskuryakov.

document.write causes the links to appear twice (noscript content is not ignored)
https://bugs.webkit.org/show_bug.cgi?id=16230

Add a test for this case.

  • fast/parser/document-write-noscript-expected.txt: Added.
  • fast/parser/document-write-noscript.html: Added.
01:51 Changeset [65401] by abarth@webkit.org

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

Reviewed by Alexey Proskuryakov.

document.write() isn't processed immediately before DOM access
https://bugs.webkit.org/show_bug.cgi?id=36881

Test that document.write gets flushed before DOM access takes place.

  • fast/tokenizer/document-write-racing-dom-access-expected.txt: Added.
  • fast/tokenizer/document-write-racing-dom-access.html: Added.
01:45 Changeset [65400] by hamaji@chromium.org

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

Not reviewed. Chromium test expectations updates and rebaselines.

  • platform/chromium-linux/fast/canvas/setWidthResetAfterForcedRender-expected.checksum: Added.
  • platform/chromium-linux/fast/canvas/setWidthResetAfterForcedRender-expected.png: Added.
  • platform/chromium-linux/fast/text/word-space-expected.checksum:
  • platform/chromium-linux/fast/text/word-space-expected.png:
  • platform/chromium-linux/tables/mozilla/other/wa_table_thtd_rowspan-expected.checksum:
  • platform/chromium-linux/tables/mozilla/other/wa_table_thtd_rowspan-expected.png:
  • platform/chromium-mac/fast/canvas/setWidthResetAfterForcedRender-expected.checksum: Added.
  • platform/chromium-mac/fast/canvas/setWidthResetAfterForcedRender-expected.png: Added.
  • platform/chromium-mac/fast/text/word-space-expected.checksum: Added.
  • platform/chromium-mac/fast/text/word-space-expected.png: Added.
  • platform/chromium-mac/tables/mozilla/other/wa_table_thtd_rowspan-expected.checksum: Added.
  • platform/chromium-mac/tables/mozilla/other/wa_table_thtd_rowspan-expected.png: Added.
  • platform/chromium-win/fast/canvas/setWidthResetAfterForcedRender-expected.checksum: Added.
  • platform/chromium-win/fast/canvas/setWidthResetAfterForcedRender-expected.png: Added.
  • platform/chromium-win/fast/canvas/setWidthResetAfterForcedRender-expected.txt: Added.
  • platform/chromium-win/fast/text/word-space-expected.checksum:
  • platform/chromium-win/fast/text/word-space-expected.png:
  • platform/chromium-win/fast/text/word-space-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-32-t-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/shapes-intro-01-t-expected.txt:
  • platform/chromium-win/tables/mozilla/other/wa_table_thtd_rowspan-expected.checksum:
  • platform/chromium-win/tables/mozilla/other/wa_table_thtd_rowspan-expected.png:
  • platform/chromium-win/tables/mozilla/other/wa_table_thtd_rowspan-expected.txt:
  • platform/chromium-win/tables/mozilla/other/wa_table_tr_align-expected.txt:
  • platform/chromium/test_expectations.txt:
01:45 Changeset [65399] by zoltan@webkit.org

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

Add my old e-mail addresses to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
01:22 Changeset [65398] by morrita@google.com

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

Unreviewd, added skip list entries.

This is follow up for r65395. QT port ignores tests under
editing/pasteboard.

  • platform/qt/Skipped:
01:14 Changeset [65397] by morrita@google.com

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

Unreviewd, added skip list entries.

This is follow up for r65395. GTK port ignores tests under
editing/pasteboard.

  • platform/gtk/Skipped:
01:04 Changeset [65396] by abarth@webkit.org

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

Reviewed by Alexey Proskuryakov.

HTML5 fragment parsing doesn't load iframes
https://bugs.webkit.org/show_bug.cgi?id=44038

Test that iframes created in detached documents actually get loaded
when they're adopted into attached documents (or, rather, when they're
inserted into the DOM).

  • fast/frames/adopt-from-created-document-expected.txt: Added.
  • fast/frames/adopt-from-created-document.html: Added.

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

Reviewed by Alexey Proskuryakov.

HTML5 fragment parsing doesn't load iframes
https://bugs.webkit.org/show_bug.cgi?id=44038

Previously, this code assumed that every source iframe was actually
attached to a render tree. It tried to "keep the iframe alive" as it
moved documents. However, if the iframe wasn't attached to begin with,
it was never "alive," so trying to keep a dead iframe alive lead to a
... zombie iframe.

Test: fast/frames/adopt-from-created-document.html

  • dom/Document.cpp: (WebCore::Document::adoptNode):
00:30 Changeset [65395] by morrita@google.com

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

Reviewed by Tony Chang.

https://bugs.webkit.org/show_bug.cgi?id=43778
Dropping should fire textInput event.

  • editing/pasteboard/drop-text-events-expected.txt: Added.
  • editing/pasteboard/drop-text-events-sideeffect-expected.txt: Added.
  • editing/pasteboard/drop-text-events-sideeffect.html: Added.
  • editing/pasteboard/drop-text-events.html: Added.
  • editing/pasteboard/script-tests/drop-text-events-sideeffect.js: Added.
  • editing/pasteboard/script-tests/drop-text-events.js: Added.

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

Reviewed by Tony Chang.

https://bugs.webkit.org/show_bug.cgi?id=43778
Dropping should fire textInput event

This change:

  • added TextEvent::m_isDrop to distinguish drop-initiated events.
  • added to dispatch TextEvent from DragController before making a side effect and cancel the side effect if the event prevents default

Tests: editing/pasteboard/drop-text-events-sideeffect.html

editing/pasteboard/drop-text-events.html

  • dom/TextEvent.cpp: (WebCore::TextEvent::createForDrop): Added. (WebCore::TextEvent::TextEvent):
  • dom/TextEvent.h: (WebCore::TextEvent::isDrop): Added.
  • editing/Editor.cpp: (WebCore::Editor::handleTextEvent): (WebCore::Editor::findEventTargetFrom): Extracted from findEventTargetFromSelection(). (WebCore::Editor::findEventTargetFromSelection):
  • editing/Editor.h:
  • page/DragController.cpp: (WebCore::DragController::dispatchTextInputEventFor): Added. (WebCore::DragController::concludeEditDrag): Added an event dispatch path.
  • page/DragController.h:

08/15/10:

23:38 Changeset [65394] by ariya@webkit.org

2010-08-15 Ariya Hidayat <ariya@sencha.com>

Unreviewed, rolling out r65393.
http://trac.webkit.org/changeset/65393
https://bugs.webkit.org/show_bug.cgi?id=44031

Breaks some canvas tests.

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContextPlatformPrivate::): (WebCore::GraphicsContextPlatformPrivate::hasShadow): (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): (WebCore::GraphicsContext::savePlatformState): (WebCore::GraphicsContext::restorePlatformState): (WebCore::GraphicsContext::strokeArc): (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::fillRect): (WebCore::GraphicsContext::fillRoundedRect): (WebCore::GraphicsContext::setPlatformShadow): (WebCore::GraphicsContext::clearPlatformShadow):
23:19 Changeset [65393] by ariya@webkit.org

[Qt] Save and restore shadow state in GraphicsContextQt
https://bugs.webkit.org/show_bug.cgi?id=44031

Patch by Ariya Hidayat <ariya@sencha.com> on 2010-08-15
Reviewed by Antonio Gomes.

This is needed after r65362.
Use a new class ContextShadowParameter to track and keep the shadow
state. We use this rather than using GraphicsContextState to allow
possible optimizations (right now only to determine the shadow type,
but in future it might cover things like cached scratch image,
persistent shader, etc).

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::ContextShadowParameter::):
(WebCore::ContextShadowParameter::ContextShadowParameter):
(WebCore::ContextShadowParameter::clear):
(WebCore::GraphicsContextPlatformPrivate::hasShadow):
(WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
(WebCore::GraphicsContext::savePlatformState):
(WebCore::GraphicsContext::restorePlatformState):
(WebCore::GraphicsContext::drawRect):
(WebCore::GraphicsContext::drawLine):
(WebCore::GraphicsContext::strokeArc):
(WebCore::GraphicsContext::drawConvexPolygon):
(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::strokePath):
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::fillRoundedRect):
(WebCore::GraphicsContext::setPlatformShadow):
(WebCore::GraphicsContext::clearPlatformShadow):

22:27 Changeset [65392] by ariya@webkit.org

2010-08-15 Ariya Hidayat <ariya@sencha.com>

Reviewed by Antonio Gomes.

[Qt] Border should not cast shadows
https://bugs.webkit.org/show_bug.cgi?id=44015

Update pixel test reference.

  • platform/qt/fast/box-shadow/basic-shadows-expected.checksum:
  • platform/qt/fast/box-shadow/basic-shadows-expected.png:

2010-08-15 Ariya Hidayat <ariya@sencha.com>

Reviewed by Antonio Gomes.

[Qt] Border should not cast shadows
https://bugs.webkit.org/show_bug.cgi?id=44015

Shadows should be not casted except for brush fill (which is not what
drawLine and drawRect are supposed to do).

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::drawRect): Remove shadow painting, (WebCore::GraphicsContext::drawLine): ditto.
20:28 Changeset [65391] by commit-queue@webkit.org

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

Reviewed by Antonio Gomes.

[EFL] Build error on r65378
https://bugs.webkit.org/show_bug.cgi?id=44019

Add GENERATE_JSON macro for HTMLEntityNames.json instead of HTMLEntityNames.gperf

  • cmake/WebKitMacros.cmake:

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

Reviewed by Antonio Gomes.

[EFL] Build error on r65378
https://bugs.webkit.org/show_bug.cgi?id=44019

Change build script for HTMLEntityNames.json instead of HTMLEntityNames.gperf

  • CMakeLists.txt:
18:58 Changeset [65390] by jhoneycutt@apple.com

WebEditorClient::didBeginEditing is never called in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42939

Reviewed by Sam Weinig.

  • WebKitTestRunner/PlatformWebView.h:

Declare focus().

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::resetStateToConsistentValues):
Focus the PlatformWebView.

  • WebKitTestRunner/mac/PlatformWebViewMac.mm:

(WTR::PlatformWebView::focus):
Stubbed.

  • WebKitTestRunner/win/PlatformWebViewWin.cpp:

(WTR::PlatformWebView::focus):
Focus the view.

18:57 Changeset [65389] by jhoneycutt@apple.com

run-webkit-tests should not strip editing callbacks when using
WebKitTestRunner on Windows
https://bugs.webkit.org/show_bug.cgi?id=44000

Reviewed by Mark Rowe.

  • Scripts/old-run-webkit-tests:

Leave $stripEditingCallbacks undefined until we look for command-line
arguments. If using WebKit2, set it to 0 if not explicity set on the
command line. Later, set it to isCygwin() to match old behavior if it is
not yet defined.

18:48 Changeset [65388] by abarth@webkit.org

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

Reviewed by Eric Seidel.

Port Chromium's WebEntities to HTMLEntityTable
https://bugs.webkit.org/show_bug.cgi?id=44036

This code is wrong and needs to be removed. However, at least after
this patch, it will compile.

  • src/WebEntities.cpp: (WebKit::): (WebKit::WebEntities::WebEntities):
  • src/WebEntities.h:
17:12 Changeset [65387] by kevino@webkit.org

[wx] Build fix, add missing header.

17:05 Changeset [65386] by kevino@webkit.org

[wx] Build fix, don't build PluginDataNone.cpp even on GTK as PluginDataWx.cpp compiles.

17:02 Changeset [65385] by kevino@webkit.org

[wx] Build fix, don't build intermediate source in DerivedSources dir.

16:47 Changeset [65384] by kevino@webkit.org

[wx] Build fix, remove define always set to the correct value by wtf/Platform.h.

13:15 Changeset [65383] by joepeck@webkit.org

2010-08-14 Joseph Pecoraro <joepeck@webkit.org>

Reviewed by Pavel Feldman.

Web Inspector: -attach and detach should work
https://bugs.webkit.org/show_bug.cgi?id=43924

  • WebKit.xcodeproj/project.pbxproj: Added WebInspectorFrontend.{h,mm}.

2010-08-14 Joseph Pecoraro <joepeck@webkit.org>

Reviewed by Pavel Feldman.

Web Inspector: -attach and detach should work
https://bugs.webkit.org/show_bug.cgi?id=43924

For actions that relate only to the Web Inspector's Frontend
window (actions on the InspectorFrontendClient) the new Obj-C
wrapper class WebInspectorFrontend can be used. For now, this
is just attach and detach.

  • WebCoreSupport/WebInspectorClient.mm: (WebInspectorClient::openInspectorFrontend): setup and attach the WebInspectorFrontend to the WebInspector.
  • WebInspector/WebInspector.h:
  • WebInspector/WebInspector.mm: (-dealloc): (-attach:): delegate to the frontend. (-detach:): delegate to the frontend. (-setFrontend:):
  • WebInspector/WebInspectorFrontend.h: Added.
  • WebInspector/WebInspectorFrontend.mm: Added. (-[WebInspectorFrontend initWithFrontendClient:]): (-[WebInspectorFrontend attach]): (-[WebInspectorFrontend detach]):
  • WebInspector/WebInspectorPrivate.h:
12:43 Changeset [65382] by abarth@webkit.org

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

Reviewed by Eric Seidel.

document.write() doesn't flush plain text
https://bugs.webkit.org/show_bug.cgi?id=8961

Add test cases for flushing character tokens.

  • fast/tokenizer/flush-characters-in-document-write-evil-expected.txt: Added.
  • fast/tokenizer/flush-characters-in-document-write-evil.html: Added.
  • fast/tokenizer/flush-characters-in-document-write-expected.txt: Added.
  • fast/tokenizer/flush-characters-in-document-write.html: Added.

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

Reviewed by Eric Seidel.

document.write() doesn't flush plain text
https://bugs.webkit.org/show_bug.cgi?id=8961

Originally I thought we should buffer the character tokens until we've
reached the end of the input stream, but that's not how the spec
handles things (it emits the character tokens one-by-one).

Tests: fast/tokenizer/flush-characters-in-document-write-evil.html

fast/tokenizer/flush-characters-in-document-write.html

  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::emitEndOfFile): (WebCore::HTMLTokenizer::nextToken): (WebCore::HTMLTokenizer::haveBufferedCharacterToken):
    • Renamed this function now that it's simplier.
  • html/HTMLTokenizer.h:
08:34 Changeset [65381] by abarth@webkit.org

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

Reviewed by Eric Seidel.

Don't try to replace a non-existent document after executing JavaScript URLs
https://bugs.webkit.org/show_bug.cgi?id=44024

Test what happens if a JavaScript URL returns a value after deleting
the frame it was supposed to operate on.

  • fast/frames/javascript-url-for-deleted-frame-expected.txt: Added.
  • fast/frames/javascript-url-for-deleted-frame.html: Added.

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

Reviewed by Eric Seidel.

Don't try to replace a non-existent document after executing JavaScript URLs
https://bugs.webkit.org/show_bug.cgi?id=44024

Synchronous JavaScript execution is evil. Previously, the frame was
deleted after executing the JavaScript URL, so we'd get confused when
we tried to replace its document.

Test: fast/frames/javascript-url-for-deleted-frame.html

  • bindings/ScriptControllerBase.cpp: (WebCore::ScriptController::executeIfJavaScriptURL):
07:10 Changeset [65380] by commit-queue@webkit.org

2010-08-15 Gyuyoung Kim <gyuyoung.kim@samsung.com>

Reviewed by Antonio Gomes.

[EFL] Enable localStorage of HTML5 for WebKit EFL
https://bugs.webkit.org/show_bug.cgi?id=44020

  • ewk/ewk_view.cpp: (_ewk_view_priv_new):
00:24 Changeset [65379] by mitz@apple.com

Revised build fix from r65363 based on suggestion from Darin Adler.

  • UIProcess/API/C/WKArray.h: Include stddef.h.
  • UIProcess/API/C/WKBase.h: Uninclude ctype.h.
  • UIProcess/API/C/WKData.h: Include stddef.h.
  • UIProcess/API/C/WKDictionary.h: Ditto.
Note: See TracTimeline for information about the timeline view.