Timeline


and

06/13/12:

23:56 Changeset [120289] by kinuko@chromium.org

Unreviewed build fix attempt for r120285

  • Modules/filesystem/DOMFileSystemBase.cpp:

(WebCore):

23:54 Changeset [120288] by morrita@google.com

Unreviewed expectation update.

  • bindings/scripts/test/V8/V8Float64Array.cpp:
  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:
  • bindings/scripts/test/V8/V8TestEventTarget.cpp:
  • bindings/scripts/test/V8/V8TestException.cpp:
  • bindings/scripts/test/V8/V8TestInterface.cpp:
  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
  • bindings/scripts/test/V8/V8TestNode.cpp:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::V8TestObj::installPerContextProperties):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
23:47 Changeset [120287] by zandobersek@gmail.com

Unreviewed GTK gardening after r120246 and r120257, updating baselines.

  • platform/gtk/fast/hidpi/video-controls-in-hidpi-expected.txt:
  • platform/gtk/fast/layers/video-layer-expected.txt:
  • platform/gtk/fast/table/max-width-integer-overflow-expected.txt: Added.
  • platform/gtk/media/audio-controls-rendering-expected.txt:
  • platform/gtk/media/audio-repaint-expected.txt:
  • platform/gtk/media/controls-strict-expected.txt:
  • platform/gtk/media/controls-styling-expected.txt:
  • platform/gtk/media/controls-without-preload-expected.txt:
  • platform/gtk/media/media-controls-clone-expected.txt:
  • platform/gtk/media/media-document-audio-repaint-expected.txt:
  • platform/gtk/media/video-controls-rendering-expected.txt:
  • platform/gtk/media/video-empty-source-expected.txt:
  • platform/gtk/media/video-no-audio-expected.txt:
  • platform/gtk/media/video-volume-slider-expected.txt:
  • platform/gtk/media/video-zoom-controls-expected.txt:
23:43 Changeset [120286] by dominicc@chromium.org

[Chromium] Unreviewed: Update expectations
https://bugs.webkit.org/show_bug.cgi?id=88949

http/tests/media/media-source/video-media-source-add-and-remove-ids.html
is passing on canary bots but producing text diffs on the WebKit
waterfall. As noted in the bug, I believe the text diffs are
timing-related.

  • platform/chromium/TestExpectations:
23:41 Changeset [120285] by kinuko@chromium.org

Move isolated file system code out of chromium-specific directory
https://bugs.webkit.org/show_bug.cgi?id=88997

Reviewed by Adam Barth.

The code does not need to be chromium-specific. Any platforms that
have file system implementation and manage mappings from file system
id to a set of files should share the code.

No new tests as this has no functional/behavioral changes.

  • Modules/filesystem/DOMFileSystem.cpp:

(WebCore::DOMFileSystem::createIsolatedFileSystem):
(WebCore):

  • Modules/filesystem/DOMFileSystem.h:

(DOMFileSystem):

  • Modules/filesystem/DOMFileSystemBase.h:

(DOMFileSystemBase):

  • Modules/filesystem/FileSystemType.h:
  • Modules/filesystem/chromium/DOMFileSystemChromium.cpp:
  • Modules/filesystem/chromium/DOMFileSystemChromium.h: Removed.
  • Modules/filesystem/chromium/DraggedIsolatedFileSystem.cpp:

(WebCore::DraggedIsolatedFileSystem::getDOMFileSystem):

  • WebCore.gypi:
23:31 Changeset [120284] by commit-queue@webkit.org

[Chromium] Add WebDocument.images
https://bugs.webkit.org/show_bug.cgi?id=88837

Patch by Jesse Greenwald <jgreenwald@google.com> on 2012-06-13
Reviewed by Adam Barth.

This method is needed on Android to support the existing
WebView.documentHasImages Java API.

  • public/WebDocument.h:

(WebDocument):

  • src/WebDocument.cpp:

(WebKit::WebDocument::images):
(WebKit):

23:30 Changeset [120283] by dominicc@chromium.org

Unreviewed: Disable verifyHitTestingForSingleLayer.
https://bugs.webkit.org/show_bug.cgi?id=89065

It is failing on canary debug bots.

  • tests/CCLayerTreeHostCommonTest.cpp:
23:17 Changeset [120282] by kinuko@chromium.org

File::lastModifiedDate should use NaN or separate boolean flag for null Date value
https://bugs.webkit.org/show_bug.cgi?id=87826

Reviewed by Kent Tamura.

Test: http/tests/local/fileapi/file-last-modified-after-delete.html

  • fileapi/File.cpp:

(WebCore::File::File):
(WebCore::File::captureSnapshot):
(WebCore::File::lastModifiedDate):
(WebCore::File::lastModifiedDateForBinding): Removed.

  • fileapi/File.h:

(File):

  • fileapi/File.idl:
  • platform/FileMetadata.h:

(WebCore::FileMetadata::FileMetadata):

  • platform/FileSystem.h:
  • platform/FileStream.cpp:

(WebCore::FileStream::getSize):

  • platform/chromium/support/WebHTTPBody.cpp:

(WebKit::WebHTTPBody::elementAt):

  • platform/network/BlobData.h:

(WebCore::BlobDataItem::doNotCheckFileChange): Removed.

  • platform/network/BlobData.cpp:
  • platform/network/cf/FormDataStreamCFNet.cpp:

(WebCore::advanceCurrentStream):

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::blobIsOutOfDate):

22:59 Changeset [120281] by efidler@rim.com

Fix CMake build with SMOOTH_SCROLLING enabled
https://bugs.webkit.org/show_bug.cgi?id=89032

Reviewed by Antonio Gomes.

SMOOTH_SCROLLING pulls in ScrollAnimatorNone.cpp, which has
dependencies on platform/ActivePlatformGestureAnimation.cpp and
platform/TouchpadFlingPlatformGestureCurve.cpp

  • CMakeLists.txt:
22:22 Changeset [120280] by commit-queue@webkit.org

Source/WebCore: Touched CSSPropertyNames.in to trigger a proper rebuild

[CSS Regions] Adding feature defines for CSS Regions & exclusions for Windows
https://bugs.webkit.org/show_bug.cgi?id=88645

Patch by Mihai Balan <mibalan@adobe.com> on 2012-06-13
Reviewed by Sam Weinig.

Previous work on #87442 added feature defines to allow proper disabling of CSS Regions and
exclusions (previously even with the feature disabled, parsing still worked). However, the
feature defines were enabled on Mac only - they were broken on Windows. This
patch adds the feature defines to (re)enable regions and exclusions on Windows.

  • css/CSSPropertyNames.in: Touched to trigger a proper rebuild. Incremental builds were broken on Windows.

WebKitLibraries: Fix for #88645 - enabling regions on Windows

[CSS Regions] Adding feature defines for CSS Regions & exclusions for Windows
https://bugs.webkit.org/show_bug.cgi?id=88645

Patch by Mihai Balan <mibalan@adobe.com> on 2012-06-13
Reviewed by Sam Weinig.

Previous work on #87442 added feature defines to allow proper disabling of CSS Regions and
exclusions (previously even with the feature disabled, parsing still worked). However, the
feature defines were enabled on Mac only - they were broken on Windows. This
patch adds the feature defines to (re)enable regions and exclusions on Windows.

  • win/tools/vsprops/FeatureDefines.vsprops: Added default value for ENABLE_CSS_EXCLUSIONS and ENABLE_CSS_REGIONS
  • win/tools/vsprops/FeatureDefinesCairo.vsprops: ditto
22:10 Changeset [120279] by commit-queue@webkit.org

make sure headers are included only once per file
https://bugs.webkit.org/show_bug.cgi?id=88931

Patch by Arnaud Renevier <arno@renevier.net> on 2012-06-13
Reviewed by Darin Adler.

  • Modules/indexeddb/IDBDatabase.cpp:
  • WebCorePrefix.h:
  • bindings/js/JSHTMLAllCollectionCustom.cpp:
  • bindings/v8/V8Utilities.cpp:
  • bindings/v8/custom/V8LocationCustom.cpp:
  • bridge/NP_jsobject.cpp:
  • editing/Editor.cpp:
  • html/HTMLMediaElement.cpp:
  • platform/graphics/cairo/PlatformContextCairo.cpp:
  • rendering/InlineFlowBox.cpp:
21:37 Changeset [120278] by commit-queue@webkit.org

[WK2] Add implementation for dispatchIntent in WebFrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=88340

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-13
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add implementation for dispatchIntent() in WebFrameLoaderClient.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Shared/API/c/WKBase.h:
  • Shared/APIClientTraits.h:
  • Shared/APIObject.h:
  • Shared/IntentData.cpp: Added.

(WebKit):
(WebKit::IntentData::encode):
(WebKit::IntentData::decode):

  • Shared/IntentData.h: Added.

(CoreIPC):
(WebKit):
(IntentData):

  • Target.pri:
  • UIProcess/API/C/WKAPICast.h:

(WebKit):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/API/gtk/WebKitLoaderClient.cpp:

(attachLoaderClientToView):

  • UIProcess/WebIntentData.cpp: Added.

(WebKit):
(WebKit::WebIntentData::WebIntentData):
(WebKit::WebIntentData::data):

  • UIProcess/WebIntentData.h: Added.

(WebKit):
(WebIntentData):
(WebKit::WebIntentData::create):
(WebKit::WebIntentData::~WebIntentData):
(WebKit::WebIntentData::action):
(WebKit::WebIntentData::payloadType):
(WebKit::WebIntentData::extras):
(WebKit::WebIntentData::suggestions):
(WebKit::WebIntentData::type):

  • UIProcess/WebLoaderClient.cpp:

(WebKit):
(WebKit::WebLoaderClient::didReceiveIntentForFrame):

  • UIProcess/WebLoaderClient.h:

(WebKit):
(WebLoaderClient):

  • UIProcess/WebPageProxy.cpp:

(WebKit):
(WebKit::WebPageProxy::didReceiveIntentForFrame):

  • UIProcess/WebPageProxy.h:

(WebKit):
(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchIntent):

Tools:

Update initialization of WKPageLoaderClient.

  • MiniBrowser/mac/BrowserWindowController.m:

(-[BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):

21:19 Changeset [120277] by timothy_horton@apple.com

Rename _swapView:with: to _replaceView:with:
https://bugs.webkit.org/show_bug.cgi?id=89037

Reviewed by Darin Adler.

_swapView:with: is a misnomer - after calling it, the first view is no longer
contained within the view hierarchy. "Replace" is a more accurate term.

  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController enterFullScreen:]):
(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
(-[WKFullScreenWindowController _replaceView:with:]):

21:18 Changeset [120276] by morrita@google.com

Unreviewed typo fix.

  • platform/RefCountedSupplement.h:
21:12 Changeset [120275] by commit-queue@webkit.org

Unreviewed, rolling out r120268.
http://trac.webkit.org/changeset/120268
https://bugs.webkit.org/show_bug.cgi?id=89060

WebCompositor::setPerTilePaintingEnabled hits an assertion in
DEBUG (Requested by dominicc|work on #webkit).

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

Source/Platform:

  • chromium/public/WebLayerTreeView.h:

(WebCore):
(WebKit::WebLayerTreeView::Settings::Settings):
(Settings):

Source/WebCore:

  • WebCore.gypi:
  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setPerTileDrawingEnabled):
(WebCore::Settings::perTileDrawingEnabled):
(Settings):
(WebCore::Settings::setPartialSwapEnabled):
(WebCore::Settings::partialSwapEnabled):
(WebCore::Settings::setThreadedAnimationEnabled):
(WebCore::Settings::threadedAnimationEnabled):

  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::addAnimation):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::initialize):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):

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

(WebCore::CCDebugRectHistory::enabled):
(WebCore::CCDebugRectHistory::saveDebugRectsForCurrentFrame):

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

(WebCore):
(CCDebugRectHistory):

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

(WebCore::CCHeadsUpDisplay::enabled):
(WebCore::CCHeadsUpDisplay::showPlatformLayerTree):
(WebCore::CCHeadsUpDisplay::showDebugRects):
(WebCore::CCHeadsUpDisplay::draw):
(WebCore::CCHeadsUpDisplay::drawHudContents):
(WebCore::CCHeadsUpDisplay::drawDebugRects):

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

(WebCore):
(CCHeadsUpDisplay):

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

(WebCore::CCLayerTreeHost::create):
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::animateLayers):

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

(WebCore::CCSettings::CCSettings):
(CCSettings):
(CCLayerTreeHost):
(WebCore::CCLayerTreeHost::settings):

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

(WebCore::CCLayerTreeHostImpl::create):
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::calculateRenderSurfaceLayerList):
(WebCore::CCLayerTreeHostImpl::animateLayers):

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

(CCLayerTreeHostImpl):

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

(CCRendererClient):
(WebCore::CCRenderer::settings):

  • platform/graphics/chromium/cc/CCSettings.cpp: Removed.
  • platform/graphics/chromium/cc/CCSettings.h: Removed.
  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::setPerTileDrawingEnabled):
(WebCore):

  • testing/InternalSettings.h:

(InternalSettings):

Source/WebKit/chromium:

  • WebKit.gypi:
  • public/WebCompositor.h:

(WebCompositor):

  • public/WebSettings.h:
  • src/WebCompositorImpl.cpp:

(WebKit::WebCompositor::shutdown):

  • src/WebLayerTreeView.cpp:

(WebKit::WebLayerTreeView::Settings::operator CCSettings):

  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setPerTilePaintingEnabled):
(WebKit):
(WebKit::WebSettingsImpl::setPartialSwapEnabled):
(WebKit::WebSettingsImpl::setThreadedAnimationEnabled):

  • src/WebSettingsImpl.h:

(WebSettingsImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

  • tests/CCLayerTreeHostImplTest.cpp:
  • tests/CCLayerTreeHostTest.cpp:
  • tests/CCTestCommon.h: Removed.
  • tests/CCThreadedTest.cpp:

(WebKitTests::MockLayerTreeHostImpl::create):
(WebKitTests::MockLayerTreeHostImpl::MockLayerTreeHostImpl):
(WebKitTests::MockLayerTreeHost::create):
(WebKitTests::MockLayerTreeHost::createLayerTreeHostImpl):
(WebKitTests::MockLayerTreeHost::MockLayerTreeHost):
(WebKitTests::CCThreadedTest::runTest):

  • tests/CCThreadedTest.h:

(CCThreadedTest):
(MockLayerTreeHostImpl):

  • tests/GraphicsLayerChromiumTest.cpp:

(WebKitTests::MockLayerTreeHost::create):
(WebKitTests::MockLayerTreeHost::createLayerTreeHostImpl):
(WebKitTests::MockLayerTreeHost::MockLayerTreeHost):
(WebKitTests::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):

  • tests/LayerChromiumTest.cpp:
  • tests/LayerRendererChromiumTest.cpp:

(LayerRendererChromiumTest):
(TEST_F):
(TEST):

  • tests/TextureLayerChromiumTest.cpp:
  • tests/TiledLayerChromiumTest.cpp:
  • tests/TreeSynchronizerTest.cpp:

(WebKitTests::TEST):

Tools:

  • DumpRenderTree/chromium/WebPreferences.cpp:

(WebPreferences::applyTo):

21:08 Changeset [120274] by hbono@chromium.org

[chromium] Add WebFrame::replaceMisspelledRange
https://bugs.webkit.org/show_bug.cgi?id=88618

Reviewed by Kent Tamura.

This change adds WebFrame::replaceMisspelledRange, which replaces the range of a
misspelled marker with text so Chromium can use it for replacing misspelled
words with suggetions.

  • public/WebFrame.h:

(WebFrame):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::replaceMisspelledRange):
(WebKit):

  • src/WebFrameImpl.h:

(WebFrameImpl):

20:57 Changeset [120273] by kinuko@chromium.org

[Chromium] Unreviewed: Add rebaseline and update expectations.
https://bugs.webkit.org/show_bug.cgi?id=87356

Patch by Eric Uhrhane <ericu@chromium.org>

  • platform/chromium/fast/files/read-blob-async-expected.txt: Added.
  • platform/chromium/fast/files/workers/worker-read-blob-async-expected.txt: Added.
  • platform/chromium/fast/files/workers/worker-read-blob-sync-expected.txt: Added.
20:47 Changeset [120272] by timothy_horton@apple.com

REGRESSION (r120252): run-webkit-tests on Mac fails
https://bugs.webkit.org/show_bug.cgi?id=89057

Reviewed by Dan Bernstein.

get_option will happily return None (the default only kicks in if
the option is actually *not set*). We should instead check get_option's
return value and default to "x86_64" architecture ourselves.

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

(MacPort.init):

20:40 Changeset [120271] by dominicc@chromium.org

[Chromium] Unreviewed: Rebaseline for Mac

Rebaselining after r119893. There was a rebasline in r120221 but
it failed on Chromium WebKit waterfall and canaries after that, so
trying again.

  • platform/chromium-mac/fast/borders/border-antialiasing-expected.png:
20:28 Changeset [120270] by wangxianzhu@chromium.org

[Chromium] Let Android and Linux share WebFontRendering decl/impl.
https://bugs.webkit.org/show_bug.cgi?id=88802

Reviewed by Adam Barth.

  • WebKit.gyp:
  • public/linux/WebFontRendering.h: Temporarily forwards to the new file under linuxish.
  • public/linuxish: Added.
  • public/linuxish/WebFontRendering.h: Copied from chromium/public/linux/WebFontRendering.h.
  • src/linux/WebFontRendering.cpp: Removed.
  • src/linuxish: Added.
  • src/linuxish/WebFontRendering.cpp: Copied from chromium/src/linux/WebFontRendering.cpp.
20:22 Changeset [120269] by dominicc@chromium.org

[Chromium] Unreviewed: Update expectations
https://bugs.webkit.org/show_bug.cgi?id=88949

http/tests/media/media-source/video-media-source-add-and-remove-ids.html
is flakily hitting an ASSERT on Chromium canaries.

  • platform/chromium/TestExpectations:
20:15 Changeset [120268] by commit-queue@webkit.org

[chromium] Certain settings in CCSettings could be global
https://bugs.webkit.org/show_bug.cgi?id=88384

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-13
Reviewed by James Robinson.

Source/Platform:

  • chromium/public/WebLayerTreeView.h:

(WebCore):
(WebKit::WebLayerTreeView::Settings::Settings):
(Settings):

Source/WebCore:

No new tests. No new functionality.

  • WebCore.gypi:
  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(Settings):

  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::addAnimation):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::initialize):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):

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

(WebCore::CCDebugRectHistory::enabled):
(WebCore::CCDebugRectHistory::saveDebugRectsForCurrentFrame):

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

(WebCore):
(CCDebugRectHistory):

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

(WebCore::CCHeadsUpDisplay::enabled):
(WebCore::CCHeadsUpDisplay::showPlatformLayerTree):
(WebCore::CCHeadsUpDisplay::showDebugRects):
(WebCore::CCHeadsUpDisplay::draw):
(WebCore::CCHeadsUpDisplay::drawHudContents):
(WebCore::CCHeadsUpDisplay::drawDebugRects):

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

(WebCore):
(CCHeadsUpDisplay):

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

(WebCore::CCLayerTreeHost::create):
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::animateLayers):

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

(WebCore::CCLayerTreeSettings::CCLayerTreeSettings):
(CCLayerTreeSettings):
(CCLayerTreeHost):
(WebCore::CCLayerTreeHost::settings):

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

(WebCore::CCLayerTreeHostImpl::create):
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::calculateRenderSurfaceLayerList):
(WebCore::CCLayerTreeHostImpl::animateLayers):

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

(CCLayerTreeHostImpl):

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

(CCRendererClient):
(WebCore::CCRenderer::settings):

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

(WebCore):
(WebCore::CCSettings::perTilePaintingEnabled):
(WebCore::CCSettings::setPerTilePaintingEnabled):
(WebCore::CCSettings::partialSwapEnabled):
(WebCore::CCSettings::setPartialSwapEnabled):
(WebCore::CCSettings::acceleratedAnimationEnabled):
(WebCore::CCSettings::setAcceleratedAnimationEnabled):
(WebCore::CCSettings::reset):

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

(WebCore):
(CCSettings):

  • testing/InternalSettings.cpp:
  • testing/InternalSettings.h:

(InternalSettings):

Source/WebKit/chromium:

  • WebKit.gypi:
  • public/WebCompositor.h:

(WebCompositor):

  • public/WebSettings.h:
  • src/WebCompositorImpl.cpp:

(WebKit::WebCompositor::shutdown):
(WebKit):
(WebKit::WebCompositor::setPerTilePaintingEnabled):
(WebKit::WebCompositor::setPartialSwapEnabled):
(WebKit::WebCompositor::setAcceleratedAnimationEnabled):

  • src/WebLayerTreeView.cpp:

(WebKit):
(WebKit::WebLayerTreeView::Settings::operator CCLayerTreeSettings):

  • src/WebSettingsImpl.cpp:
  • src/WebSettingsImpl.h:

(WebSettingsImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

  • tests/CCLayerTreeHostImplTest.cpp:
  • tests/CCLayerTreeHostTest.cpp:

(WTF):
(CCLayerTreeHostTestShortlived1):
(WTF::CCLayerTreeHostTestShortlived1::CCLayerTreeHostTestShortlived1):
(WTF::CCLayerTreeHostTestShortlived1::beginTest):
(WTF::CCLayerTreeHostTestShortlived1::afterTest):

  • tests/CCTestCommon.h: Added.

(WebKitTests):
(CCScopedSettings):
(WebKitTests::CCScopedSettings::CCScopedSettings):
(WebKitTests::CCScopedSettings::~CCScopedSettings):

  • tests/CCThreadedTest.cpp:

(WebKitTests::MockLayerTreeHostImpl::create):
(WebKitTests::MockLayerTreeHostImpl::MockLayerTreeHostImpl):
(WebKitTests::MockLayerTreeHost::create):
(WebKitTests::MockLayerTreeHost::createLayerTreeHostImpl):
(WebKitTests::MockLayerTreeHost::MockLayerTreeHost):
(WebKitTests::CCThreadedTest::runTest):

  • tests/CCThreadedTest.h:

(CCThreadedTest):
(MockLayerTreeHostImpl):

  • tests/GraphicsLayerChromiumTest.cpp:

(WebKitTests::MockLayerTreeHost::create):
(WebKitTests::MockLayerTreeHost::createLayerTreeHostImpl):
(WebKitTests::MockLayerTreeHost::MockLayerTreeHost):
(WebKitTests::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):

  • tests/LayerChromiumTest.cpp:
  • tests/LayerRendererChromiumTest.cpp:

(LayerRendererChromiumTest):
(TEST_F):
(TEST):

  • tests/TextureLayerChromiumTest.cpp:
  • tests/TiledLayerChromiumTest.cpp:
  • tests/TreeSynchronizerTest.cpp:

(WebKitTests::TEST):

Tools:

  • DumpRenderTree/chromium/WebPreferences.cpp:

(WebPreferences::applyTo):

19:36 Changeset [120267] by commit-queue@webkit.org

[BlackBerry] Apply New Style and JS for Select Popup
https://bugs.webkit.org/show_bug.cgi?id=89020

Patch by Crystal Zhang <haizhang@rim.com> on 2012-06-13
Reviewed by Rob Buis.

PR 162854

Source/WebCore:

Use new python script for data generating, as the old one is too simple and problematic.

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

Use new styled CSS files for select popup, also remove most JS functions
to a separate JS file, only pass the parameters to JS, and use new python
script for data generating, as the old one is too simple and problematic.

  • WebCoreSupport/SelectPopupClient.cpp:

(WebCore::SelectPopupClient::generateHTML):

19:27 Changeset [120266] by danakj@chromium.org

[chromium] Assert if iterating an invalid RenderSurfaceLayerList, where a layer in the list has no RenderSurface
https://bugs.webkit.org/show_bug.cgi?id=89004

Reviewed by Adrienne Walker.

Source/WebCore:

A RenderSurfaceLayerList expects that all layers in the list own a
RenderSurface. If an invalid RSLL is iterated over, the
CCLayerIterator class will now ASSERT in debug mode, as well as
considering the list empty in release mode.

We will be adding code to CCLayerTreeHostImpl to save a RSLL across
frames, so adding a clearRenderSurfaces() method with a FIXME comment
to make it clear that we should clear the RSLL when we remove
RenderSurfaces from the layers in the saved RSLL.

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

(WebCore::CCLayerIterator::CCLayerIterator):

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

(WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
(WebCore::clearRenderSurfacesOnCCLayerImplRecursive):
(WebCore::CCLayerTreeHostImpl::clearRenderSurfaces):
(WebCore):

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

(CCLayerTreeHostImpl):

Source/WebKit/chromium:

  • tests/CCLayerIteratorTest.cpp:
19:03 Changeset [120265] by yael.aharon@nokia.com

Remove redundant code from RenderView and RenderBlock
https://bugs.webkit.org/show_bug.cgi?id=89019

Reviewed by Abhishek Arya.

As pointed out in https://bugs.webkit.org/show_bug.cgi?id=83981#c7 , RenderView::insertFixedPositionedObject()
is redundant and should be removed.
No new tests.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertPositionedObject):
(WebCore::RenderBlock::removePositionedObject):

  • rendering/RenderView.cpp:

(WebCore):

  • rendering/RenderView.h:

(RenderView):

17:40 Changeset [120264] by commit-queue@webkit.org

Address some feedbacks in layout test
https://bugs.webkit.org/show_bug.cgi?id=88909

Patch by Min Qin <qinmin@google.com> on 2012-06-13
Reviewed by Eric Carlson.

Fixed some comments in https://bugs.webkit.org/show_bug.cgi?id=88897.
Reduced the timeout to 100 ms and fixed the function definition.

  • media/no-autoplay-with-user-gesture-requirement.html:
17:38 Changeset [120263] by danakj@chromium.org

[chromium] Create a CCStreamVideoDrawQuad used for StreamTexture video output
https://bugs.webkit.org/show_bug.cgi?id=88826

Reviewed by Adrienne Walker.

Remove the matrix from the CCVideoDrawQuad, and create a new quad
specifically for StreamTexture video decoder output. This quad
contains only the fields needed for display - textureId and the
matrix to be applied to texture coords.

Removes the (0, 0, 1, 1) "transform" from the shader used for these
quads, as it was a no-op.

No new tests, no change in behaviour.

  • WebCore.gypi:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawQuad):
(WebCore::LayerRendererChromium::drawStreamVideoQuad):
(WebCore::LayerRendererChromium::drawVideoQuad):

  • platform/graphics/chromium/LayerRendererChromium.h:

(WebCore):
(LayerRendererChromium):

  • platform/graphics/chromium/ShaderChromium.cpp:

(WebCore::VertexShaderVideoTransform::VertexShaderVideoTransform):
(WebCore::VertexShaderVideoTransform::init):
(WebCore::VertexShaderVideoTransform::getShaderString):

  • platform/graphics/chromium/ShaderChromium.h:

(VertexShaderVideoTransform):

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

(WebCore::CCDrawQuad::toStreamVideoDrawQuad):
(WebCore):

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

(WebCore):
(CCDrawQuad):

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

(WebCore):
(WebCore::CCStreamVideoDrawQuad::create):
(WebCore::CCStreamVideoDrawQuad::CCStreamVideoDrawQuad):

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

(WebCore):
(CCStreamVideoDrawQuad):
(WebCore::CCStreamVideoDrawQuad::textureId):
(WebCore::CCStreamVideoDrawQuad::matrix):

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

(WebCore::CCVideoLayerImpl::appendQuads):

17:13 Changeset [120262] by mrobinson@webkit.org

[GTK] Add an accelerated compositing implementation for WebKit2
https://bugs.webkit.org/show_bug.cgi?id=86037

Reviewed by Alejandro G. Castro.

Source/WebCore:

No new tests. These changes are covered by the compositing tests, which
we will gradually try to turn on for the bots.

Add a new GLContext method for getting to current default framebuffer size, which
is quite useful for preventing composited content quivering while resizing.

  • platform/graphics/cairo/GLContext.h:
  • platform/graphics/glx/GLContextGLX.cpp:

(WebCore::GLContextGLX::defaultFrameBufferSize): Added this implementation for X11
which asks the X server for the window size.

  • platform/graphics/glx/GLContextGLX.h:

Source/WebKit2:

Add an implementation of LayerTreeHost for GTK+ that uses TextureMapperGL.
Later this implementation will fall back to using the ImageBuffer TextureMapper.

  • GNUmakefile.am: Add new files to the compilation.
  • Shared/LayerTreeContext.h:

(LayerTreeContext): The GTK+ version of the LayerTreeContext just holds window handle.

  • Shared/gtk/LayerTreeContextGtk.cpp: Copied from Source/WebKit2/WebProcess/WebPage/LayerTreeHost.cpp.
  • WebProcess/WebPage/gtk/LayerTreeHostGtk.h: Added.
  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: Added.

Add this LayerTreeHost implementation that just creates a GL context from the widget X11 window ID.
Later implementations might find a more cross-platform solution.

  • WebProcess/WebPage/gtk/WebPageGtk.cpp:

(WebKit::WebPage::platformInitialize): Initialize the native window handle to be zero.
(WebKit::WebPage::widgetMapped): When mapping the widget, try to get the native window
handle and send it to the WebProcess.

17:04 Changeset [120261] by shawnsingh@chromium.org

[chromium] Implement hit-testing for impl-side input handling in accelerated compositor
https://bugs.webkit.org/show_bug.cgi?id=88972

Reviewed by Adrienne Walker.

Source/WebCore:

The original hit testing code by Sami Kyostila.

This patch implements a simple impl-side hit-testing helper
function. At this time, the main motivation for this is so that
composited scrollable layers can be scrolled by the impl thread --
and a prerequisite for that is the ability to hit-test on the impl
thread, to determine where the scrolling action should be applied.

To implement the actual hit test, it's possible to compute the hit
test in two equivalent ways: (a) inverse-project the point into
local space, or (b) forward-transform the rect to screen space
It's not obvious which one would perform better, or which one
would be more robust to w < 0 homogeneous clipping issues. For
this patch, we simply opt for the inverse-projection approach.

10 unit tests added to CCLayerTreeHostCommonTest.cpp:

CCLayerTreeHostCommonTest.verifyHitTestingForEmptyLayerList
CCLayerTreeHostCommonTest.verifyHitTestingForSingleLayer
CCLayerTreeHostCommonTest.verifyHitTestingForSinglePositionedLayer
CCLayerTreeHostCommonTest.verifyHitTestingForSingleRotatedLayer
CCLayerTreeHostCommonTest.verifyHitTestingForSinglePerspectiveLayer
CCLayerTreeHostCommonTest.verifyHitTestingForSingleLayerWithScaledContents
CCLayerTreeHostCommonTest.verifyHitTestingForSimpleClippedLayer
CCLayerTreeHostCommonTest.verifyHitTestingForMultiClippedRotatedLayer
CCLayerTreeHostCommonTest.verifyHitTestingForMultipleLayers
CCLayerTreeHostCommonTest.verifyHitTestingForMultipleLayerLists

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

(WebCore::pointHitsRect):
(WebCore):
(WebCore::pointIsClippedBySurfaceOrClipRect):
(WebCore::CCLayerTreeHostCommon::findLayerThatIsHitByPoint):

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

(CCLayerTreeHostCommon):

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

(WebCore::projectHomogeneousPoint):
(WebCore::mapHomogeneousPoint):
(WebCore::CCMathUtil::mapClippedRect):
(WebCore::CCMathUtil::projectClippedRect):
(WebCore::CCMathUtil::mapClippedQuad):
(WebCore::CCMathUtil::mapQuad):
(WebCore::CCMathUtil::projectPoint):
(WebCore):

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

(WebCore):
(CCMathUtil):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:
16:50 WebKitGTK/WebKit2Roadmap edited by mrobinson@webkit.org
(diff)
16:47 WebKitGTK/WebKit2Roadmap edited by mrobinson@webkit.org
(diff)
16:40 Changeset [120260] by charles.wei@torchmobile.com.cn

Need customized toDOMStringList for IndexedDB JSC binding.
https://bugs.webkit.org/show_bug.cgi?id=87965

Reviewed by Kentaro Hara.

IndexedDB database interface uses DOMStringList as the input parameter.
The generated toDOMStringList() can't convert an JSArray of Strings to
native DOMStringList. We need a custom function to do this.

Because this patch adds one new file (JSDOMStringList.cpp), all build systems
are updated accordingly to pick up this file.

Tests: Corresponding bindings/scripts/test/JS files have been updated accordingly.

  • GNUmakefile.list.am:
  • Target.pri:
  • UseJSC.cmake:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSDOMStringListCustom.cpp: Added.

(WebCore):
(WebCore::toDOMStringList):

  • bindings/scripts/CodeGeneratorJS.pm:

(IndexGetterReturnsStrings):
(GenerateHeader):
(GetNativeType):
(GetNativeTypeForCallbacks):
(JSValueToNative):

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

(WebCore::JSTestCallback::callbackWithStringList):

  • bindings/scripts/test/JS/JSTestCallback.h:

(JSTestCallback):

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

(WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):

  • dom/DOMStringList.idl:
16:33 Changeset [120259] by lforschler@apple.com

Versioning.

16:30 Changeset [120258] by lforschler@apple.com

New Tag.

16:30 Changeset [120257] by jpfau@apple.com

Padding and borders can cause integer overflow in block layouts
https://bugs.webkit.org/show_bug.cgi?id=88820
<rdar://problem/11328762>

Reviewed by Tony Chang.

Source/WebCore:

Tests: fast/block/block-size-integer-overflow.html

fast/flexbox/box-size-integer-overflow.html
fast/table/table-size-integer-overflow.html

  • rendering/AutoTableLayout.cpp: Decreased max int.

(WebCore::AutoTableLayout::computePreferredLogicalWidths):

  • rendering/FixedTableLayout.cpp: Use shared constant.

(WebCore::FixedTableLayout::computePreferredLogicalWidths):

  • rendering/RenderBlock.cpp: Removed unused constant.
  • rendering/TableLayout.h: Add shared constant.

(TableLayout):

LayoutTests:

  • fast/block/block-size-integer-overflow-expected.txt: Added.
  • fast/block/block-size-integer-overflow.html: Added.
  • fast/flexbox/box-size-integer-overflow-expected.txt: Added.
  • fast/flexbox/box-size-integer-overflow.html: Added.
  • fast/table/table-size-integer-overflow-expected.txt: Added.
  • fast/table/table-size-integer-overflow.html: Added.
16:25 Changeset [120256] by commit-queue@webkit.org

make sure headers are included only once per file
https://bugs.webkit.org/show_bug.cgi?id=88929

Patch by Arnaud Renevier <arno@renevier.net> on 2012-06-13
Reviewed by Kentaro Hara.

  • wtf/FastMalloc.cpp:
  • wtf/MathExtras.h:
  • wtf/OSAllocator.h:
16:07 Changeset [120255] by commit-queue@webkit.org

Refactor WebGLFramebuffer to handle texture attachments
https://bugs.webkit.org/show_bug.cgi?id=88697

Patch by Gregg Tavares <gman@google.com> on 2012-06-13
Reviewed by Adrienne Walker.

In order to add support for depth textures WebGLFramebuffer
needed to be refactored to handle textures as attachments.

No new tests as no new functionality.

  • html/canvas/WebGLFramebuffer.cpp:

(WebCore::WebGLFramebuffer::WebGLAttachment::WebGLAttachment):
(WebCore):
(WebCore::WebGLFramebuffer::WebGLAttachment::~WebGLAttachment):
(WebCore::WebGLFramebuffer::WebGLFramebuffer):
(WebCore::WebGLFramebuffer::setAttachmentForBoundFramebuffer):
(WebCore::WebGLFramebuffer::attach):
(WebCore::WebGLFramebuffer::getAttachmentObject):
(WebCore::WebGLFramebuffer::getAttachment):
(WebCore::WebGLFramebuffer::removeAttachmentFromBoundFramebuffer):
(WebCore::WebGLFramebuffer::getColorBufferWidth):
(WebCore::WebGLFramebuffer::getColorBufferHeight):
(WebCore::WebGLFramebuffer::getColorBufferFormat):
(WebCore::WebGLFramebuffer::checkStatus):
(WebCore::WebGLFramebuffer::onAccess):
(WebCore::WebGLFramebuffer::hasStencilBuffer):
(WebCore::WebGLFramebuffer::deleteObjectImpl):
(WebCore::WebGLFramebuffer::initializeAttachments):

  • html/canvas/WebGLFramebuffer.h:

(WebGLAttachment):
(WebGLFramebuffer):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::framebufferRenderbuffer):
(WebCore::WebGLRenderingContext::reattachDepthStencilAttachments):
(WebCore::WebGLRenderingContext::framebufferTexture2D):
(WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):

  • html/canvas/WebGLRenderingContext.h:

(WebGLRenderingContext):

15:58 Changeset [120254] by commit-queue@webkit.org

[Chromium] Crash when WebViewImpl::setIsTransparent is called before the WebLayerTreeView has been initialized.
https://bugs.webkit.org/show_bug.cgi?id=89013

Patch by David Reveman <reveman@chromium.org> on 2012-06-13
Reviewed by James Robinson.

Add !m_layerTreeView.isNull() check to WebViewImpl::setIsTransparent.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setIsTransparent):

15:55 Changeset [120253] by dpranke@chromium.org

Unreviewed, expectations changes.

  • platform/chromium-win/http/tests/misc/location-replace-crossdomain-expected.txt:
  • platform/chromium/fast/events/constructors/speech-recognition-error-constructor-expected.txt: Added.
15:37 Changeset [120252] by dpranke@chromium.org

new-run-webkit-tests does not support --32-bit like ORWT did
https://bugs.webkit.org/show_bug.cgi?id=71634

Reviewed by Ojan Vafai.

This patch adds support for 32-bit apple mac builds, adding the
--32-bit flag for compatibility with ORWT and fixing the port
architecture() definition to actually return the correct values.

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

(ApplePort._generate_all_test_configurations):

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

(port_options):

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

(MacPort):
(MacPort.init):
(MacPort._build_driver_flags):
(MacPort.setup_environ_for_server):

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

(test_sample_process_throws_exception):
(test_32bit):
(test_32bit.run_script):
(test_64bit):
(test_64bit.run_script):

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

(WebKitPort._build_driver):
(WebKitPort._build_driver_flags):

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

(WinPort):

14:59 Changeset [120251] by commit-queue@webkit.org

Remove return statement in void method
https://bugs.webkit.org/show_bug.cgi?id=88998

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-06-13
Reviewed by Andreas Kling

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::collectStyleForAttribute):

14:44 Changeset [120250] by benjamin@webkit.org

Implement the simple constructors WTFURL's KURL
https://bugs.webkit.org/show_bug.cgi?id=85724

Reviewed by Adam Barth.

Source/WebCore:

This patch implement the correct initialization of KURL from an absolute URL.
The URL correctness is also relaxed in order to have KURLWTFURL works similarily to KURL.

  • platform/KURLWTFURL.cpp:

(WebCore::KURL::KURL):
(WebCore::KURL::isValid):
(WebCore::KURL::string):
(WebCore::KURL::protocol):
(WebCore::KURL::host):
(WebCore::KURL::port): Fix a bug where invalidPortNumber was returned if no port was defined.
(WebCore::KURL::hasFragmentIdentifier):
(WebCore::KURL::fragmentIdentifier):
(WebCore::KURL::protocolIs):
(WebCore::KURL::removeFragmentIdentifier):
(WebCore):
(WebCore::KURL::print):

  • platform/cf/KURLCFNet.cpp:

(WebCore::KURL::KURL):
(WebCore::KURL::createCFURL):
(WebCore):

  • platform/mac/KURLMac.mm:

(WebCore::KURL::KURL):
(WebCore::KURL::createCFURL):
(WebCore):
Use the code of KURL to make the conversion from WTFURL to NSURL.

Source/WTF:

This patch extends WTFURL with:
-support basic debugging using print() methods
-parsing in the incomming string character set (8bits or 16bits)
-add a function for parsing of relative URL (but no implementation yet)

  • WTF.xcodeproj/project.pbxproj:
  • wtf/text/WTFString.h:

(String):

  • wtf/url/api/ParsedURL.cpp:

(WTF::ParsedURL::ParsedURL):
(WTF):
(WTF::ParsedURL::hasFragment): Add this method to query the framgent availability without
allocating a new String.
(WTF::ParsedURL::withoutFragment): This method is added to implement KURL::removeFragmentIdentifier() and
the parsing of empty relative URL (where we return the base without fragment).
(WTF::ParsedURL::print):

  • wtf/url/api/ParsedURL.h:

(ParsedURL):
(WTF::ParsedURL::spec):

  • wtf/url/api/URLString.h:

(URLString):

  • wtf/url/src/URLParser.h:

(WTF):
(URLParser):
(WTF::URLParser::parseURLWithBase):

  • wtf/url/src/URLSegments.cpp:

(WTF::URLSegments::length):
(WTF::URLSegments::charactersBefore):

  • wtf/url/src/URLSegments.h:

(URLSegments):
Change the boolean argument includeDelimiter in favor of an enum to improve readability.

14:35 Changeset [120249] by rniwa@webkit.org

Remove webkitpy code to support legacy test_expectations.txt files
https://bugs.webkit.org/show_bug.cgi?id=89038

Reviewed by Dirk Pranke.

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

(Port.path_to_test_expectations_file):
(Port.expectations_dict):

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

(PortTest.test_uses_test_expectations_file):

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

(WebKitPortTest.test_path_to_test_expectations_file):
(test_test_expectations):

  • Scripts/webkitpy/style/checker.py:

(CheckerDispatcher.should_skip_without_warning):
(CheckerDispatcher._create_checker):

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

(TestExpectationsTestCase._expect_port_for_expectations_path):

  • Scripts/webkitpy/tool/steps/commit.py:

(Commit._check_test_expectations):

  • Scripts/webkitpy/tool/steps/commit_unittest.py:

(CommitTest.test_check_test_expectations):

14:09 Changeset [120248] by scheib@chromium.org

Remove duplicate webkitpointerlockchange events when unlocking.
https://bugs.webkit.org/show_bug.cgi?id=88917

Reviewed by Dimitri Glazkov.

Source/WebCore:

Subsequent patches adding the new API for entering and exiting
pointer lock would be burdened by handling multiple change events
when the lock target is changed. This change introduces
temporary code to suppress duplicate change events.

Existing tests simplified by removing the duplicate change events.

  • page/PointerLockController.cpp:

(WebCore::PointerLockController::requestPointerLock):
(WebCore::PointerLockController::didLosePointerLock):

  • page/PointerLockController.h:

(PointerLockController):

LayoutTests:

Part of a series of refactoring changes to update pointer lock API to
the fullscreen locking style. https://bugs.webkit.org/show_bug.cgi?id=84402

Tests simplified by removing the duplicate change events.

  • pointer-lock/lock-already-locked-expected.txt:
  • pointer-lock/pointerlockchange-pointerlockerror-events-expected.txt:
  • pointer-lock/pointerlockchange-pointerlockerror-events.html:
14:07 Changeset [120247] by dpranke@chromium.org

nrwt: remove port.test_expectations() and port.test_expectations_overrides()
https://bugs.webkit.org/show_bug.cgi?id=88948

Reviewed by Ojan Vafai.

In the final patch of this run, we remove the
test_expectations() and test_expectation_overrides() methods
from the Port class - callers must now use just
expectations_dict().

Note that support for the cascade in new-run-webkit-tests is
complete but only Chromium uses it; webkit-patch
rebaseline-expectations still does not support updating entries
in any file other than the first expectations file, however.

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

(Port.path_to_test_expectations_file):
(Port.uses_test_expectations_file):
(Port.expectations_files):

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

(PortTest.test_additional_expectations):

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

(ChromiumPortTest.test_expectations_files):

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

(TestGoogleChromePort.test_get_google_chrome_port):

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

(test_test_expectations):
(test_legacy_test_expectations):

14:01 Changeset [120246] by commit-queue@webkit.org

Update range sliders rendering for volume and playback position of new Chrome video controls.
https://bugs.webkit.org/show_bug.cgi?id=88623

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-06-13
Reviewed by Eric Carlson.

No new tests, final patch will contain the rebaselined tests.

The Chrome video controls are receiving a visual update. This patch contains updates to the
rendering of the range sliders for the playback position and the volume. This includes the
creation of a shadowPseudoId to be able to style the range sliders via CSS, the rendering
of the slider background and the highlighted ranges.

  • css/mediaControlsChromium.css:

(input[type="range"]::-webkit-media-slider-container):
Adjust the styling of the slider container backgrounds.
(input[type="range"]::-webkit-media-slider-thumb):
Adjust the styling of the slider thumbs.

  • html/shadow/SliderThumbElement.cpp:

(WebCore::sliderThumbShadowPseudoId):
Add an accessor function for the slider thumb shadowPseudoId.
(WebCore::mediaSliderThumbShadowPseudoId):
Add an accessor function for the media slider thumb shadowPseudoId.
(WebCore::SliderThumbElement::shadowPseudoId):
Add a different CSS pseudo-class name to the media slider thumbs.
(WebCore::TrackLimiterElement::shadowPseudoId):
Add a different CSS pseudo-class name to the media slider thumbs.
(WebCore::SliderContainerElement::shadowPseudoId):
Add a different CSS pseudo-class name to the media slider background container.

  • rendering/RenderMediaControlsChromium.cpp:

(WebCore::paintRoundedSliderBackground):
Add function to draw rounded background of sliders in a dark color.
(WebCore::paintSliderRangeHighlight):
Add function to draw a highlighted grey region on the sliders, which is rounded only at
its ends.
(WebCore::paintMediaSlider):
Update the background and buffered range renderings on the playback position slider by making
use of the new helper functions.
(WebCore::paintMediaVolumeSlider):
Update the background and buffered range renderings on the volume slider by making
use of the new helper functions.

13:56 Changeset [120245] by commit-queue@webkit.org

[BlackBerry] Update Select Popup's styling
https://bugs.webkit.org/show_bug.cgi?id=89005

Patch by Christopher Hutten-Czapski <chutten@rim.com> on 2012-06-13
Reviewed by Rob Buis.

Add in some nicely-styled CSS and JS for the BlackBerry port's <select>

  • Resources/blackberry/popupControlBlackBerry.css:

(body):
(.popup-area):
(.popup-area>:first-child):
(.popup-buttons):
(.popup-button-divider):
(.popup-button):
(.popup-button:active):
(.popup-button:first-child:active):
(.popup-button:last-child:active):
(.popup-button:only-child:active):

  • Resources/blackberry/selectControlBlackBerry.css: Added.

(.select-area):
(.select-area:last-child):
(.option):
(.optgroup:last-child):
(.selected):
(.optgroup):
(.optgroup .option):

  • Resources/blackberry/selectControlBlackBerry.js: Added.
13:53 Changeset [120244] by fpizlo@apple.com

DFG should be able to set watchpoints on global variables
https://bugs.webkit.org/show_bug.cgi?id=88692

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

Rolling back in after fixing Windows build issues, and implementing
branchTest8 for the Qt port's strange assemblers.

This implements global variable constant folding by allowing the optimizing
compiler to set a "watchpoint" on globals that it wishes to constant fold.
If the watchpoint fires, then an OSR exit is forced by overwriting the
machine code that the optimizing compiler generated with a jump.

As such, this patch is adding quite a bit of stuff:

  • Jump replacement on those hardware targets supported by the optimizing JIT. It is now possible to patch in a jump instruction over any recorded watchpoint label. The jump must be "local" in the sense that it must be within the range of the largest jump distance supported by a one instruction jump.


  • WatchpointSets and Watchpoints. A Watchpoint is a doubly-linked list node that records the location where a jump must be inserted and the destination to which it should jump. Watchpoints can be added to a WatchpointSet. The WatchpointSet can be fired all at once, which plants all jumps. WatchpointSet also remembers if it had ever been invalidated, which allows for monotonicity: we typically don't want to optimize using watchpoints on something for which watchpoints had previously fired. The act of notifying a WatchpointSet has a trivial fast path in case no Watchpoints are registered (one-byte load+branch).


  • SpeculativeJIT::speculationWatchpoint(). It's like speculationCheck(), except that you don't have to emit branches. But, you need to know what WatchpointSet to add the resulting Watchpoint to. Not everything that you could write a speculationCheck() for will have a WatchpointSet that would get notified if the condition you were speculating against became invalid.


  • SymbolTableEntry now has the ability to refer to a WatchpointSet. It can do so without incurring any space overhead for those entries that don't have WatchpointSets.


  • The bytecode generator infers all global function variables to be watchable, and makes all stores perform the WatchpointSet's write check, and marks all loads as being potentially watchable (i.e. you can compile them to a watchpoint and a constant).


Put together, this allows for fully sleazy inlining of calls to globally
declared functions. The inline prologue will no longer contain the load of
the function, or any checks of the function you're calling. I.e. it's
pretty much like the kind of inlining you would see in Java or C++.
Furthermore, the watchpointing functionality is built to be fairly general,
and should allow setting watchpoints on all sorts of interesting things
in the future.

The sleazy inlining means that we will now sometimes inline in code paths
that have never executed. Previously, to inline we would have either had
to have executed the call (to read the call's inline cache) or have
executed the method check (to read the method check's inline cache). Now,
we might inline when the callee is a watched global variable. This
revealed some humorous bugs. First, constant folding disagreed with CFA
over what kinds of operations can clobber (example: code path A is dead
but stores a String into variable X, all other code paths store 0 into
X, and then you do CompareEq(X, 0) - CFA will say that this is a non-
clobbering constant, but constant folding thought it was clobbering
because it saw the String prediction). Second, inlining would crash if
the inline callee had not been compiled. This patch fixes both bugs,
since otherwise run-javascriptcore-tests would report regressions.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • assembler/ARMv7Assembler.h:

(ARMv7Assembler):
(JSC::ARMv7Assembler::ARMv7Assembler):
(JSC::ARMv7Assembler::labelForWatchpoint):
(JSC::ARMv7Assembler::label):
(JSC::ARMv7Assembler::replaceWithJump):
(JSC::ARMv7Assembler::maxJumpReplacementSize):

  • assembler/AbstractMacroAssembler.h:

(JSC):
(AbstractMacroAssembler):
(Label):
(JSC::AbstractMacroAssembler::watchpointLabel):
(JSC::AbstractMacroAssembler::readPointer):

  • assembler/AssemblerBuffer.h:
  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::branchTest8):
(MacroAssemblerARM):
(JSC::MacroAssemblerARM::replaceWithJump):
(JSC::MacroAssemblerARM::maxJumpReplacementSize):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::load8Signed):
(JSC::MacroAssemblerARMv7::load16Signed):
(MacroAssemblerARMv7):
(JSC::MacroAssemblerARMv7::replaceWithJump):
(JSC::MacroAssemblerARMv7::maxJumpReplacementSize):
(JSC::MacroAssemblerARMv7::branchTest8):
(JSC::MacroAssemblerARMv7::jump):
(JSC::MacroAssemblerARMv7::makeBranch):

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::branchTest8):
(MacroAssemblerMIPS):
(JSC::MacroAssemblerMIPS::replaceWithJump):
(JSC::MacroAssemblerMIPS::maxJumpReplacementSize):

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::branchTest8):
(MacroAssemblerSH4):
(JSC::MacroAssemblerSH4::replaceWithJump):
(JSC::MacroAssemblerSH4::maxJumpReplacementSize):

  • assembler/MacroAssemblerX86.h:

(MacroAssemblerX86):
(JSC::MacroAssemblerX86::branchTest8):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::replaceWithJump):
(MacroAssemblerX86Common):
(JSC::MacroAssemblerX86Common::maxJumpReplacementSize):

  • assembler/MacroAssemblerX86_64.h:

(MacroAssemblerX86_64):
(JSC::MacroAssemblerX86_64::branchTest8):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::X86Assembler):
(X86Assembler):
(JSC::X86Assembler::cmpb_im):
(JSC::X86Assembler::testb_im):
(JSC::X86Assembler::labelForWatchpoint):
(JSC::X86Assembler::label):
(JSC::X86Assembler::replaceWithJump):
(JSC::X86Assembler::maxJumpReplacementSize):
(JSC::X86Assembler::X86InstructionFormatter::memoryModRM):

  • bytecode/CodeBlock.cpp:

(JSC):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::dump):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::appendOSRExit):
(JSC::CodeBlock::appendSpeculationRecovery):
(CodeBlock):
(JSC::CodeBlock::appendWatchpoint):
(JSC::CodeBlock::numberOfWatchpoints):
(JSC::CodeBlock::watchpoint):
(DFGData):

  • bytecode/DFGExitProfile.h:

(JSC::DFG::exitKindToString):
(JSC::DFG::exitKindIsCountable):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeForChain):

  • bytecode/Instruction.h:

(Instruction):
(JSC::Instruction::Instruction):

  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName):

  • bytecode/Watchpoint.cpp: Added.

(JSC):
(JSC::Watchpoint::~Watchpoint):
(JSC::Watchpoint::correctLabels):
(JSC::Watchpoint::fire):
(JSC::WatchpointSet::WatchpointSet):
(JSC::WatchpointSet::~WatchpointSet):
(JSC::WatchpointSet::add):
(JSC::WatchpointSet::notifyWriteSlow):
(JSC::WatchpointSet::fireAllWatchpoints):

  • bytecode/Watchpoint.h: Added.

(JSC):
(Watchpoint):
(JSC::Watchpoint::Watchpoint):
(JSC::Watchpoint::setDestination):
(WatchpointSet):
(JSC::WatchpointSet::isStillValid):
(JSC::WatchpointSet::hasBeenInvalidated):
(JSC::WatchpointSet::startWatching):
(JSC::WatchpointSet::notifyWrite):
(JSC::WatchpointSet::addressOfIsWatched):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::ResolveResult::checkValidity):
(JSC::BytecodeGenerator::addGlobalVar):
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::resolve):
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitResolveWithBase):
(JSC::BytecodeGenerator::emitResolveWithThis):
(JSC::BytecodeGenerator::emitGetStaticVar):
(JSC::BytecodeGenerator::emitPutStaticVar):

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):

  • bytecompiler/NodesCodegen.cpp:

(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::PostfixResolveNode::emitBytecode):
(JSC::PrefixResolveNode::emitBytecode):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::ConstDeclNode::emitCodeSingle):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):
(JSC::DFG::AbstractState::clobberStructures):

  • dfg/DFGAbstractState.h:

(AbstractState):
(JSC::DFG::AbstractState::didClobber):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCCallHelpers.h:

(CCallHelpers):
(JSC::DFG::CCallHelpers::setupArguments):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::globalVarWatchpointElimination):
(CSEPhase):
(JSC::DFG::CSEPhase::globalVarStoreElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::run):

  • dfg/DFGCorrectableJumpPoint.h:

(JSC::DFG::CorrectableJumpPoint::isSet):
(CorrectableJumpPoint):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::link):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasIdentifierNumberForCheck):
(Node):
(JSC::DFG::Node::identifierNumberForCheck):
(JSC::DFG::Node::hasRegisterPointer):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::OSRExit):

  • dfg/DFGOSRExit.h:

(OSRExit):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):
(JSC::DFG::SpeculativeJIT::appendCall):
(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_put_global_var_check):
(JSC):
(JSC::JIT::emitSlow_op_put_global_var_check):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_put_global_var_check):
(JSC):
(JSC::JIT::emitSlow_op_put_global_var_check):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):
(JSC):

  • jit/JITStubs.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(LLInt):

  • llint/LLIntSlowPaths.h:

(LLInt):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/JSObject.cpp:

(JSC::JSObject::removeDirect):

  • runtime/JSObject.h:

(JSObject):

  • runtime/JSSymbolTableObject.h:

(JSC::symbolTableGet):
(JSC::symbolTablePut):
(JSC::symbolTablePutWithAttributes):

  • runtime/SymbolTable.cpp: Added.

(JSC):
(JSC::SymbolTableEntry::copySlow):
(JSC::SymbolTableEntry::freeFatEntrySlow):
(JSC::SymbolTableEntry::couldBeWatched):
(JSC::SymbolTableEntry::attemptToWatch):
(JSC::SymbolTableEntry::addressOfIsWatched):
(JSC::SymbolTableEntry::addWatchpoint):
(JSC::SymbolTableEntry::notifyWriteSlow):
(JSC::SymbolTableEntry::inflateSlow):

  • runtime/SymbolTable.h:

(JSC):
(SymbolTableEntry):
(Fast):
(JSC::SymbolTableEntry::Fast::Fast):
(JSC::SymbolTableEntry::Fast::isNull):
(JSC::SymbolTableEntry::Fast::getIndex):
(JSC::SymbolTableEntry::Fast::isReadOnly):
(JSC::SymbolTableEntry::Fast::getAttributes):
(JSC::SymbolTableEntry::Fast::isFat):
(JSC::SymbolTableEntry::SymbolTableEntry):
(JSC::SymbolTableEntry::~SymbolTableEntry):
(JSC::SymbolTableEntry::operator=):
(JSC::SymbolTableEntry::isNull):
(JSC::SymbolTableEntry::getIndex):
(JSC::SymbolTableEntry::getFast):
(JSC::SymbolTableEntry::getAttributes):
(JSC::SymbolTableEntry::isReadOnly):
(JSC::SymbolTableEntry::watchpointSet):
(JSC::SymbolTableEntry::notifyWrite):
(FatEntry):
(JSC::SymbolTableEntry::FatEntry::FatEntry):
(JSC::SymbolTableEntry::isFat):
(JSC::SymbolTableEntry::fatEntry):
(JSC::SymbolTableEntry::inflate):
(JSC::SymbolTableEntry::bits):
(JSC::SymbolTableEntry::freeFatEntry):
(JSC::SymbolTableEntry::pack):
(JSC::SymbolTableEntry::isValidIndex):

Source/WTF:

Reviewed by Geoffrey Garen.

Added ability to set the inline capacity of segmented vectors.

Also added the ability ot ASSERT_NOT_REACHED() without having to
propagate NO_RETURN macros, which would be a show-stopper for code
that is conditionally unreachable.

  • wtf/Assertions.h:

(UNREACHABLE_FOR_PLATFORM):

  • wtf/SegmentedVector.h:

(WTF):
(SegmentedVectorIterator):
(WTF::SegmentedVectorIterator::operator=):
(WTF::SegmentedVectorIterator::SegmentedVectorIterator):
(SegmentedVector):

LayoutTests:

Rubber stamped by Geoffrey Garen.

Added a test for watchpoints. Also updated the jsc-test-list to include the latest
tests.

  • fast/js/dfg-call-function-hit-watchpoint-expected.txt: Added.
  • fast/js/dfg-call-function-hit-watchpoint.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-call-function-hit-watchpoint.js: Added.

(foo):
(bar):
(.foo):

13:43 Changeset [120243] by dpranke@chromium.org

nrwt: implement the actual cascade of TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=88947

Reviewed by Ojan Vafai.

This change implements the actual cascade by removing the
concept of 'overrides' from the TestExpectations object and
parsing each file separately.

There is an actual semantic change in this patch, in that
setting an expectation on a directory in one file will override
the expectations on any individual tests set in prior files. The
test_overridesdirectory() unit test verifies this.

Otherwise, this patch mostly consists of deleting code :).

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectationsModel.init):
(TestExpectationsModel.add_expectation_line):
(TestExpectationsModel._add_test):
(TestExpectationsModel._already_seen_better_match):
(TestExpectations.init):
(TestExpectations._add_expectations):

  • Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:

(test_overridesdirectory):

13:37 Changeset [120242] by zandobersek@gmail.com

Unreviewed GTK gardening after r120228, fix an incorrect test expectation.

  • platform/gtk/TestExpectations:
13:29 Changeset [120241] by commit-queue@webkit.org

[V8] IndexedDB: Cursor value modifications should be preserved until cursor iterates
https://bugs.webkit.org/show_bug.cgi?id=83526

Patch by Alec Flett <alecflett@chromium.org> on 2012-06-13
Reviewed by Kentaro Hara.

Source/WebCore:

Cache the 'value' attribute of IDBCursorWithValue with policy
determined by IDBCursor.cpp, to follow spec behavior of keeping a
consistent script object until the cursor advances. See
http://www.w3.org/TR/IndexedDB/#widl-IDBCursorWithValueSync-value
for details.

Test: storage/indexeddb/cursor-value.html

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::IDBCursor):
(WebCore::IDBCursor::value):
(WebCore::IDBCursor::setValueReady):

  • Modules/indexeddb/IDBCursor.h:

(IDBCursor):
(WebCore::IDBCursor::valueIsDirty):

  • Modules/indexeddb/IDBCursorWithValue.idl:
  • WebCore.gypi:
  • bindings/v8/IDBCustomBindings.cpp: Added.

(WebCore):
(WebCore::V8IDBCursorWithValue::valueAccessorGetter):

LayoutTests:

  • storage/indexeddb/cursor-value-expected.txt: Added.
  • storage/indexeddb/cursor-value.html: Added.
  • storage/indexeddb/resources/cursor-value.js: Added.

(openDatabase.request.onsuccess.request.onsuccess):
(openDatabase.request.onsuccess):
(openDatabase):
(testCursor.request.onsuccess):
(testCursor):
(ensureModificationsNotPersisted.request.onsuccess):
(ensureModificationsNotPersisted):

13:14 Changeset [120240] by dpranke@chromium.org

webkitpy: update callers to use port.expectation_dict() instead of test_expectations() and test_expectations_overrides()
https://bugs.webkit.org/show_bug.cgi?id=88946

Reviewed by Ojan Vafai.

In preparation for fully supporting cascading expectations files
and removing the 'overrides' concept.

There should be no functional changes in this patch.

  • Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:

(ManagerTest.test_update_summary_with_result):
(ResultSummaryTest.get_result_summary):

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectations.init):

  • Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:

(parse_exp):
(SkippedTests.check):
(RemoveConfigurationsTest.test_remove):
(test_remove_line):

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(LintTest.test_all_configurations.FakePort.init):
(LintTest.test_all_configurations.FakePort.expectations_dict):
(LintTest.test_lint_test_fileserrors):

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

(test_overrides_are_included_correctly):

13:04 Changeset [120239] by commit-queue@webkit.org

Code cleanup from bug 88881 to share the SliderVerticalPart code.
https://bugs.webkit.org/show_bug.cgi?id=88930

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-06-13
Reviewed by Eric Carlson.

No new tests - this is just code cleanup.

  • html/shadow/SliderThumbElement.cpp:

(WebCore::hasVerticalAppearance):
Avoid having two ifdef-ed returns in the code depending on ENABLE(VIDEO).

12:46 Changeset [120238] by dpranke@chromium.org

webkitpy: rework the TestExpectations style checker in preparation for the cascade
https://bugs.webkit.org/show_bug.cgi?id=88945

Reviewed by Ojan Vafai.

This patch changes the style checker to call the
TestExpectations parser directly and be oblivious as to what the
port's actual expectations are.

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

(TestExpectationsChecker.init):
(TestExpectationsChecker.check_test_expectations):

12:45 Changeset [120237] by ossy@webkit.org

REGRESSION(r120108): It made http/tests/loading/gmail-assert-on-load.html fail
https://bugs.webkit.org/show_bug.cgi?id=88923

Patch by Shrey Banga <banga@chromium.org> on 2012-06-13
Reviewed by Csaba Osztrogonác.

  • http/tests/loading/gmail-assert-on-load-expected.txt: Removed.
  • http/tests/misc/gmail-assert-on-load-expected.txt: Added.
  • http/tests/misc/gmail-assert-on-load.html: Renamed from LayoutTests/http/tests/loading/gmail-assert-on-load.html.

All tests in http/tests/loading dump frame load events, which are not
consistent or relevant for this test. So it had to be moved out of
http/tests/loading.

  • platform/qt/Skipped: This test can be unskipped now
12:40 Changeset [120236] by dpranke@chromium.org

nrwt: restructure the port classes to handle multiple expectations files
https://bugs.webkit.org/show_bug.cgi?id=88944

Reviewed by Ojan Vafai.

This patch restructures the Port classes so that each port
returns a list of TestExpectations files to be used (in a new, public,
expectations_files() method), and the base implementation rolls them
up into the ordered expectations_dict(), which becomes a public
method.

port.path_to_test_expectations_file(), port.test_expectations(),
and port.test_expectations_overrides() are then reimplemented as
wrappers around port.expectations_dict().
port.test_expectations() and port.test_expectations_overrides()
will eventually be removed when the cascade is fully completed,
and port.path_to_test_expectations_file() will be removed when
the rebaselining tool supports the cascade
(expectations_files() may also become private at that point).

There should be no functional changes in this patch, but a bunch
of custom logic gets deleted!

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

(Port.expectations_dict):
(Port):
(Port.expectations_files):
(Port.test_expectations):
(Port.test_expectations_overrides):

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

(PortTest.test_additional_expectations):
(PortTest.test_uses_test_expectations_file):

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

(ChromiumPort.all_baseline_variants):
(ChromiumPort.expectations_files):

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

(ChromiumPortTest.test_overrides_and_builder_names):

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

(_expectations_files):
(GoogleChromeLinux32Port.expectations_files):
(GoogleChromeLinux64Port.expectations_files):
(GoogleChromeMacPort.expectations_files):
(GoogleChromeWinPort.expectations_files):

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

(TestGoogleChromePort._verify_expectations_overrides):

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

(PortTestCase.test_expectations_ordering):

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

(WebKitPort._skipped_file_search_paths):

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

(TestRebaseline.test_rebaseline_updates_expectations_file_noop):
(test_rebaseline_updates_expectations_file):
(test_rebaseline_does_not_include_overrides):
(test_rebaseline_expectations):
(test_overrides_are_included_correctly):

12:28 Changeset [120235] by bfulgham@webkit.org

[WinCairo] Update URL of WinCairoRequirements.zip download.
https://bugs.webkit.org/show_bug.cgi?id=89009

Reviewed by Martin Robinson.

  • Tools/Scripts/update-webkit-dependency: Put fallback code

to download a "last update" time from servers that don't properly
report Last-Modified in their HTTP header.

  • Tools/Scripts/update-webkit-wincairo-libs: Change download link

for the WinCairo build requirements bundle.

12:21 Changeset [120234] by commit-queue@webkit.org

[chromium mac] Don't include things in subframeworks of
ApplicationServices.framework.

A CoreText #include (with quotes instead of brackets, even) sprung up
in r120506, bug 69826.

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

Patch by Mark Mentovai <mark@chromium.org> on 2012-06-13
Reviewed by Stephen White.

No new tests.

  • platform/graphics/harfbuzz/ng/HarfBuzzFaceCoreText.cpp:
12:09 Changeset [120233] by abecsi@webkit.org

[Qt][WK2] ASSERT(m_rawAttributes.initialScale > 0) in QtViewportHandler::initialRect()
https://bugs.webkit.org/show_bug.cgi?id=89026

Reviewed by Csaba Osztrogonác.

Only act on viewport attribute changes if the layout size is valid.

  • UIProcess/qt/QtViewportHandler.cpp:

(WebKit::QtViewportHandler::setInitialScaleIfNeeded):
(WebKit::QtViewportHandler::viewportAttributesChanged):

12:08 Changeset [120232] by ossy@webkit.org

REGRESSION (r120204-r120206): 37 fast/profiler tests failing on GTK Linux 64-bit Release
https://bugs.webkit.org/show_bug.cgi?id=89006

Patch by Vineet Chaudhary <rgf748@motorola.com> on 2012-06-13
Reviewed by Enrica Casucci.

  • fast/profiler/nested-start-and-stop-profiler-expected.txt:
  • fast/profiler/resources/profiler-test-JS-resources.js:

(printProfileNodeWithoutTime): change childern to children()

12:00 Changeset [120231] by bfulgham@webkit.org

[WinCairo] Build fix after Windows export definition file change.

  • win/WebKit2CFLite.def: Add missing symbol exports.
11:50 Changeset [120230] by dpranke@chromium.org

nrwt: preliminary cleanup before supporting cascading expectations files
https://bugs.webkit.org/show_bug.cgi?id=88942

Reviewed by Ojan Vafai.

This change just prepares the TestExpectations parser to get filenames
along with the expectations, and improves the warning messages so that
they contain the filenames along with the line numbers.

There should be no functional changes in this patch.

  • Scripts/webkitpy/layout_tests/controllers/test_expectations_editor_unittest.py:

(TestExpectationEditorTests.make_parsed_expectation_lines):

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectationParser.parse):
(TestExpectationParser.expectation_for_skipped_test):
(TestExpectationParser._tokenize):
(TestExpectationParser._tokenize_list):
(TestExpectationLine):
(TestExpectationsModel.init):
(TestExpectationsModel._already_seen_better_match):
(TestExpectations.init):
(TestExpectations._shorten_filename):
(TestExpectations._report_warnings):
(TestExpectations._add_skipped_tests):

  • Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:

(TestExpectationParserTests._tokenize):
(TestExpectationParserTests.test_tokenize_blank):
(TestExpectationParserTests.test_tokenize_missing_colon):
(TestExpectationParserTests.test_tokenize_extra_colon):
(TestExpectationParserTests.test_tokenize_empty_comment):
(TestExpectationParserTests.test_tokenize_comment):
(TestExpectationParserTests.test_tokenize_missing_equal):
(TestExpectationParserTests.test_tokenize_extra_equal):
(TestExpectationParserTests.test_tokenize_valid):
(TestExpectationParserTests.test_tokenize_valid_with_comment):
(TestExpectationParserTests.test_tokenize_valid_with_multiple_modifiers):
(TestExpectationParserTests.test_parse_empty_string):
(TestExpectationSerializerTests._tokenize):
(TestExpectationSerializerTests.assert_round_trip):
(TestExpectationSerializerTests.assert_list_round_trip):

  • Scripts/webkitpy/tool/servers/gardeningserver.py:

(GardeningExpectationsUpdater.update_expectations):

11:45 Changeset [120229] by commit-queue@webkit.org

Removing an extra HandleScope in V8Proxy::evaluateInIsolatedWorld
https://bugs.webkit.org/show_bug.cgi?id=88451

Patch by Eriq Augustine <eaugusti@chromium.org> on 2012-06-13
Reviewed by Adam Barth.

Any values retuned by the evaluation will get destroyed with the extra
HandleScope.

I was unable to cause a test failure, however this feature is tested by:
platform/chromium/http/tests/misc/execute-and-return-value.html

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::evaluateInIsolatedWorld):

11:21 Changeset [120228] by zandobersek@gmail.com

[Gtk] Enable link prefetch support in the developer builds
https://bugs.webkit.org/show_bug.cgi?id=89011

Reviewed by Martin Robinson.

.:

Rather export an automake conditional than define a preprocessor
macro for enabling link prefetch support.

  • configure.ac:

Source/WebCore:

Handle the ENABLE_LINK_PREFETCH conditional in standard way.

No new tests - covered by existing link prefetch tests.

  • GNUmakefile.am:

Tools:

Enable the link prefetch support for Gtk by default in developer
builds.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Remove expectations for link prefetch tests that now pass and
recategorise a few failures that now fail due to missing
dumpResourceResponseMIMETypes implementation in DumpRenderTree.

  • platform/gtk/TestExpectations:
11:11 Changeset [120227] by abarth@webkit.org

Merge 120219 - [Chromium] WebFrameImpl::find doesn't work for searching from a selection.
https://bugs.webkit.org/show_bug.cgi?id=88885

Patch by Martin Kosiba <mkosiba@google.com> on 2012-06-13
Reviewed by Adam Barth.

Remember the active match not just until the seatchText changes but for the entire find session.

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::find):
(WebKit::WebFrameImpl::setFindEndstateFocusAndSelection):

TBR=commit-queue@webkit.org
Review URL: https://chromiumcodereview.appspot.com/10541145

11:04 Changeset [120226] by wangxianzhu@chromium.org

Unreviewed, rolling out r120220.
http://trac.webkit.org/changeset/120220
https://bugs.webkit.org/show_bug.cgi?id=89021

The patch broke build Chromium Win Release (Requested by
wangxianzhu on #webkit).

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

  • WebKit.gyp:
  • public/linux/WebFontRendering.h:

(WebKit):
(WebFontRendering):

  • public/linuxish/WebFontRendering.h: Removed.
  • src/linux/WebFontRendering.cpp: Renamed from Source/WebKit/chromium/src/linuxish/WebFontRendering.cpp.

(WebKit):
(WebKit::WebFontRendering::setHinting):
(WebKit::WebFontRendering::setAntiAlias):
(WebKit::WebFontRendering::setSubpixelGlyphs):
(WebKit::WebFontRendering::setSubpixelRendering):
(WebKit::WebFontRendering::setSubpixelPositioning):
(WebKit::WebFontRendering::setLCDOrder):
(WebKit::WebFontRendering::setLCDOrientation):

10:56 Changeset [120225] by jchaffraix@webkit.org

Unreviewed flakiness removal.

  • platform/chromium/TestExpectations:

The test was improved as bug 52064 (which was fixed some time ago). The test isn't showing
up as flaky anymore so removing it.

10:36 Changeset [120224] by commit-queue@webkit.org

Rename currentDeviceMotion to lastMotion in DeviceMotionClient
https://bugs.webkit.org/show_bug.cgi?id=88854

Patch by Amy Ousterhout <aousterh@chromium.org> on 2012-06-13
Reviewed by Adam Barth.

Rename the function currentDeviceMotion to lastMotion in DeviceMotionClient.
This makes it consistent with the similar function lastOrientation in DeviceOrientationClient.

Source/WebCore:

Just a rename, so does not require any new tests.

  • dom/DeviceMotionClient.h:

(DeviceMotionClient):

  • dom/DeviceMotionController.cpp:

(WebCore::DeviceMotionController::timerFired):
(WebCore::DeviceMotionController::addListener):

  • loader/EmptyClients.h:

(WebCore::EmptyDeviceMotionClient::lastMotion):

  • platform/qt/DeviceMotionClientQt.cpp:

(WebCore::DeviceMotionClientQt::lastMotion):

  • platform/qt/DeviceMotionClientQt.h:

(DeviceMotionClientQt):

  • platform/qt/DeviceMotionProviderQt.h:

(WebCore::DeviceMotionProviderQt::lastMotion):

Source/WebKit/blackberry:

  • WebCoreSupport/DeviceMotionClientBlackBerry.cpp:

(DeviceMotionClientBlackBerry::lastMotion):
(DeviceMotionClientBlackBerry::onMotion):

  • WebCoreSupport/DeviceMotionClientBlackBerry.h:

(DeviceMotionClientBlackBerry):

Source/WebKit/efl:

  • WebCoreSupport/DeviceMotionClientEfl.cpp:

(WebCore::DeviceMotionClientEfl::lastMotion):

  • WebCoreSupport/DeviceMotionClientEfl.h:

(DeviceMotionClientEfl):

Source/WebKit/gtk:

  • WebCoreSupport/DeviceMotionClientGtk.cpp:

(WebKit::DeviceMotionClientGtk::lastMotion):

  • WebCoreSupport/DeviceMotionClientGtk.h:

(DeviceMotionClientGtk):

10:32 Changeset [120223] by vsevik@chromium.org

Web Inspector: Breakpoint's _uiLocationRemoved() method is never called.
https://bugs.webkit.org/show_bug.cgi?id=89003

Reviewed by Pavel Feldman.

  • inspector/front-end/BreakpointManager.js:

(WebInspector.BreakpointManager.prototype.breakpointLocationsForUISourceCode):
(WebInspector.BreakpointManager.Breakpoint):
(WebInspector.BreakpointManager.Breakpoint.prototype._locationUpdated):
(WebInspector.BreakpointManager.Breakpoint.prototype._resetLocations):
(WebInspector.BreakpointManager.Breakpoint.prototype._fakeBreakpointAtPrimaryLocation):

  • inspector/front-end/FileSystemModel.js: Drive by compilation fix.

(WebInspector.FileSystemModel):

10:30 Changeset [120222] by dgrogan@chromium.org

IndexedDB: Add tests, an assert, and some comments around open/close/setVersion call sequencing
https://bugs.webkit.org/show_bug.cgi?id=88829

Reviewed by Tony Chang.

Source/WebCore:

Test: storage/indexeddb/three-setversion-calls.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::processPendingCalls):

LayoutTests:

  • storage/indexeddb/factory-deletedatabase-interactions-expected.txt:
  • storage/indexeddb/resources/factory-deletedatabase-interactions.js:

(Connection.this.open.req.onsuccess.that.handle.onversionchange):
(Connection.this.open.req.onsuccess):
(Connection.this.open):
(test3):
(test4.runSteps.):
(test4):
(test4.):

  • storage/indexeddb/resources/three-setversion-calls.js: Added.

(test):
(openDBConnection):
(successHandler.return.trans.oncomplete):
(openSuccess1.deleteRequest.onsuccess):
(openSuccess1):

  • storage/indexeddb/three-setversion-calls-expected.txt: Added.
  • storage/indexeddb/three-setversion-calls.html: Added.
10:24 Changeset [120221] by leviw@chromium.org

Unreviewed Chromium test expectation update after r119893.

  • fast/multicol/nested-columns-expected.txt: Added.
  • fast/multicol/vertical-lr/nested-columns-expected.txt: Added.
  • platform/chromium-linux-x86/fast/borders: Removed.
  • platform/chromium-linux-x86/fast/multicol/vertical-rl: Added.
  • platform/chromium-linux-x86/fast/multicol/vertical-rl/nested-columns-expected.png: Added.
  • platform/chromium-linux/fast/borders/border-antialiasing-expected.png:
  • platform/chromium-linux/fast/multicol/nested-columns-expected.png:
  • platform/chromium-linux/fast/multicol/vertical-lr/nested-columns-expected.png:
  • platform/chromium-linux/fast/multicol/vertical-rl/nested-columns-expected.png:
  • platform/chromium-linux/fast/sub-pixel/file-upload-control-at-fractional-offset-expected.png: Added.
  • platform/chromium-linux/fast/sub-pixel/file-upload-control-at-fractional-offset-expected.txt: Added.
  • platform/chromium-mac-leopard/fast/borders/border-antialiasing-expected.png:
  • platform/chromium-mac-leopard/fast/multicol/nested-columns-expected.png:
  • platform/chromium-mac-leopard/fast/sub-pixel/file-upload-control-at-fractional-offset-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/sub-pixel/file-upload-control-at-fractional-offset-expected.txt: Removed.
  • platform/chromium-mac/fast/borders/border-antialiasing-expected.png:
  • platform/chromium-mac/fast/multicol/nested-columns-expected.png:
  • platform/chromium-mac/fast/multicol/vertical-lr/nested-columns-expected.png:
  • platform/chromium-mac/fast/multicol/vertical-rl/nested-columns-expected.png:
  • platform/chromium-mac/fast/sub-pixel/file-upload-control-at-fractional-offset-expected.png: Added.
  • platform/chromium-mac/fast/sub-pixel/file-upload-control-at-fractional-offset-expected.txt: Added.
  • platform/chromium-win-vista/fast/borders: Removed.
  • platform/chromium-win-vista/fast/multicol: Added.
  • platform/chromium-win-vista/fast/multicol/vertical-rl: Added.
  • platform/chromium-win-vista/fast/multicol/vertical-rl/nested-columns-expected.png: Added.
  • platform/chromium-win-xp/fast/borders: Removed.
  • platform/chromium-win/fast/borders/border-antialiasing-expected.png:
  • platform/chromium-win/fast/multicol/nested-columns-expected.png:
  • platform/chromium-win/fast/multicol/vertical-lr/nested-columns-expected.png:
  • platform/chromium-win/fast/multicol/vertical-rl/nested-columns-expected.png:
  • platform/chromium-win/fast/sub-pixel/file-upload-control-at-fractional-offset-expected.png: Added.
  • platform/chromium-win/fast/sub-pixel/file-upload-control-at-fractional-offset-expected.txt: Added.
  • platform/chromium/TestExpectations:
  • platform/efl/fast/multicol/nested-columns-expected.txt: Removed.
  • platform/efl/fast/multicol/vertical-lr/nested-columns-expected.txt: Removed.
  • platform/gtk/fast/multicol/nested-columns-expected.txt: Removed.
  • platform/gtk/fast/multicol/vertical-lr/nested-columns-expected.txt: Removed.
10:09 Changeset [120220] by wangxianzhu@chromium.org

[Chromium] Let Android and Linux share WebFontRendering decl/impl.
https://bugs.webkit.org/show_bug.cgi?id=88802

Reviewed by Adam Barth.

  • WebKit.gyp:
  • public/linux/WebFontRendering.h: Temporarily forwards to the new file under linuxish.
  • public/linuxish: Added.
  • public/linuxish/WebFontRendering.h: Copied from chromium/public/linux/WebFontRendering.h.
  • src/linux/WebFontRendering.cpp: Removed.
  • src/linuxish: Added.
  • src/linuxish/WebFontRendering.cpp: Copied from chromium/src/linux/WebFontRendering.cpp.
09:41 Changeset [120219] by commit-queue@webkit.org

[Chromium] WebFrameImpl::find doesn't work for searching from a selection.
https://bugs.webkit.org/show_bug.cgi?id=88885

Patch by Martin Kosiba <mkosiba@google.com> on 2012-06-13
Reviewed by Adam Barth.

Remember the active match not just until the seatchText changes but for the entire find session.

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::find):
(WebKit::WebFrameImpl::setFindEndstateFocusAndSelection):

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

[Qt] Fixed visible content rect lost during page-load
https://bugs.webkit.org/show_bug.cgi?id=88991

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-06-13
Reviewed by Kenneth Rohde Christiansen.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):

09:26 Changeset [120217] by ossy@webkit.org

Update buildbot master in autoinstaller to match build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=88992

Reviewed by Adam Barth.

  • Scripts/webkitpy/thirdparty/init.py:

(AutoinstallImportHook._install_buildbot):

09:16 Changeset [120216] by zandobersek@gmail.com

Skip the isolated world tests for Gtk - the infrastructure is missing
and they take too long to fail by timing out, lengthening the bot cycles.

Rubber-stamped by Philippe Normand.

  • platform/gtk/TestExpectations:
09:13 Changeset [120215] by commit-queue@webkit.org

Unreviewed, rolling out r120209.
http://trac.webkit.org/changeset/120209
https://bugs.webkit.org/show_bug.cgi?id=89007

Broke the WebKit2 mac build. (Requested by andersca on
#webkit).

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

Source/WebKit2:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Shared/API/c/WKBase.h:
  • Shared/APIClientTraits.h:
  • Shared/APIObject.h:
  • Shared/IntentData.cpp: Removed.
  • Shared/IntentData.h: Removed.
  • Target.pri:
  • UIProcess/API/C/WKAPICast.h:

(WebKit):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/API/gtk/WebKitLoaderClient.cpp:

(attachLoaderClientToView):

  • UIProcess/WebIntentData.cpp: Removed.
  • UIProcess/WebIntentData.h: Removed.
  • UIProcess/WebLoaderClient.cpp:
  • UIProcess/WebLoaderClient.h:

(WebKit):
(WebLoaderClient):

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

(WebKit):
(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchIntent):

Tools:

  • MiniBrowser/mac/BrowserWindowController.m:

(-[BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):

08:35 Changeset [120214] by vsevik@chromium.org

Web Inspector: Errors when pending console messages are attached to JavaScriptSourceFrame.
https://bugs.webkit.org/show_bug.cgi?id=88712

Reviewed by Pavel Feldman.

  • inspector/front-end/PresentationConsoleMessageHelper.js:

(WebInspector.PresentationConsoleMessageHelper):
(WebInspector.PresentationConsoleMessageHelper.prototype._addPendingConsoleMessage):
(WebInspector.PresentationConsoleMessageHelper.prototype._parsedScriptSource):

08:29 Changeset [120213] by peter@chromium.org

[Chromium] Fix Clang build with USE(NATIVE_FULLSCREEN_VIDEO)=1
https://bugs.webkit.org/show_bug.cgi?id=88987

Reviewed by Simon Hausmann.

The enterFullscreen method is declared as const by MediaPlayerPrivateInterface,
so this one should be declared as such as well.

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::enterFullscreen):

  • src/WebMediaPlayerClientImpl.h:

(WebMediaPlayerClientImpl):

08:15 Changeset [120212] by zoltan@webkit.org

check-webkit-style needs to respect Qt API coding style
https://bugs.webkit.org/show_bug.cgi?id=88995

Reviewed by Csaba Osztrogonác.

Add -whitespace/declaration exception to Qt API files.

  • Scripts/webkitpy/style/checker.py:
08:14 Changeset [120211] by alexis.menard@openbossa.org

Web Inspector: add a way to get the remote inspector url for a given page.
https://bugs.webkit.org/show_bug.cgi?id=88902

Reviewed by Jocelyn Turcotte.

Expose the remote inspector url for a given page in the API. If you want
to create a web view and load directly the inspector for the page you want to inspect,
it helps to get the url as it is impossible to figure it out from the API layer.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewExperimental::remoteInspectorUrl):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/InspectorServer/WebInspectorServer.cpp:

(WebKit):
(WebKit::WebInspectorServer::inspectorUrlForPageID):

  • UIProcess/InspectorServer/WebInspectorServer.h:

(WebInspectorServer):

  • UIProcess/InspectorServer/WebSocketServer.cpp:

(WebKit::WebSocketServer::WebSocketServer):
(WebKit::WebSocketServer::listen):
(WebKit::WebSocketServer::close):

  • UIProcess/InspectorServer/WebSocketServer.h:

(WebKit::WebSocketServer::bindAddress):
(WebKit::WebSocketServer::port):
(WebKit::WebSocketServer::serverState):
(WebSocketServer):

  • UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:

(WebKit::remoteInspectorPagePath):
(WebKit):
(WebKit::WebInspectorServer::inspectorUrlForPageID):
(WebKit::WebInspectorServer::buildPageList):

  • UIProcess/WebInspectorProxy.h:

(WebKit::WebInspectorProxy::remoteInspectionPageID):

08:07 Changeset [120210] by zandobersek@gmail.com

Unreviewed GTK gardening after r120100, r120167, r120173 and r120181.

  • fast/events/constructors/speech-recognition-error-constructor-expected.txt:
  • platform/gtk/editing/pasteboard/4641033-expected.txt:
  • platform/gtk/editing/selection/mixed-editability-1-expected.txt:
  • platform/gtk/editing/selection/paragraph-granularity-expected.txt:
  • platform/gtk/editing/selection/triple-click-in-pre-expected.txt:
  • platform/gtk/editing/selection/word-granularity-expected.txt:
  • platform/gtk/fast/multicol/span/clone-flexbox-expected.txt:
  • platform/gtk/http/tests/misc/location-replace-crossdomain-expected.txt:
08:05 Changeset [120209] by commit-queue@webkit.org

[WK2] Add implementation for dispatchIntent in WebFrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=88340

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-13
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add implementation for dispatchIntent() in WebFrameLoaderClient.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Shared/API/c/WKBase.h:
  • Shared/APIClientTraits.h:
  • Shared/APIObject.h:
  • Shared/IntentData.cpp: Added.

(WebKit):
(WebKit::IntentData::encode):
(WebKit::IntentData::decode):

  • Shared/IntentData.h: Added.

(CoreIPC):
(WebKit):
(IntentData):

  • Target.pri:
  • UIProcess/API/C/WKAPICast.h:

(WebKit):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/API/gtk/WebKitLoaderClient.cpp:

(attachLoaderClientToView):

  • UIProcess/WebIntentData.cpp: Added.

(WebKit):
(WebKit::WebIntentData::WebIntentData):
(WebKit::WebIntentData::data):

  • UIProcess/WebIntentData.h: Added.

(WebKit):
(WebIntentData):
(WebKit::WebIntentData::create):
(WebKit::WebIntentData::~WebIntentData):
(WebKit::WebIntentData::action):
(WebKit::WebIntentData::payloadType):
(WebKit::WebIntentData::extras):
(WebKit::WebIntentData::suggestions):
(WebKit::WebIntentData::type):

  • UIProcess/WebLoaderClient.cpp:

(WebKit):
(WebKit::WebLoaderClient::didReceiveIntentForFrame):

  • UIProcess/WebLoaderClient.h:

(WebKit):
(WebLoaderClient):

  • UIProcess/WebPageProxy.cpp:

(WebKit):
(WebKit::WebPageProxy::didReceiveIntentForFrame):

  • UIProcess/WebPageProxy.h:

(WebKit):
(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchIntent):

Tools:

Update initialization of WKPageLoaderClient.

  • MiniBrowser/mac/BrowserWindowController.m:

(-[BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):

08:03 Changeset [120208] by apavlov@chromium.org

Web Inspector: Support user attributes in DOMNode
https://bugs.webkit.org/show_bug.cgi?id=88706

Reviewed by Pavel Feldman.

Source/WebCore:

This change allows clients to store arbitrary properties on DOMNodes and know if there are descendants
(and how many of them) having a certain property set.

Test: inspector/elements/user-attributes.html

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMNode.prototype._removeChild):
(WebInspector.DOMNode.prototype._updateChildUserPropertyCountsOnRemoval):
(WebInspector.DOMNode.prototype._updateDescendantUserPropertyCount):
(WebInspector.DOMNode.prototype.setUserProperty):
(WebInspector.DOMNode.prototype.removeUserProperty):
(WebInspector.DOMNode.prototype.getUserProperty):
(WebInspector.DOMNode.prototype.descendantUserPropertyCount):

LayoutTests:

  • http/tests/inspector/elements-test.js:

(initialize_ElementTest.InspectorTest.dumpElementsTree.dumpMap):
(initialize_ElementTest.InspectorTest.dumpElementsTree.userPropertyDataDump):
(initialize_ElementTest.InspectorTest.dumpElementsTree.print):
(initialize_ElementTest.InspectorTest.dumpElementsTree):

  • inspector/elements/resources/user-properties.js: Added.

(test.step0):
(test.step1):
(test.step2):
(test):

  • inspector/elements/user-properties-expected.txt: Added.
  • inspector/elements/user-properties.html: Added.
08:01 Changeset [120207] by commit-queue@webkit.org

[Qt] Handle multiple held buttons in touch mocking.
https://bugs.webkit.org/show_bug.cgi?id=88865

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-06-13
Reviewed by Kenneth Rohde Christiansen.

Add handling for multiple held mouse-buttons in the appropiate places.
To do this last-pos and start-pos are now also read from the last recorded
touch-point instead from object-global variables.

  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::notify):
(MiniBrowserApplication::updateTouchPoint):

  • MiniBrowser/qt/MiniBrowserApplication.h:

(MiniBrowserApplication):

07:40 Changeset [120206] by commit-queue@webkit.org

REGRESSION:Bindings sequence<T> in Console.idl, Internals.idl and ScriptProfileNode.idl should be T[]
https://bugs.webkit.org/show_bug.cgi?id=84863

Patch by Vineet Chaudhary <vineet.chaudhary@motorola.com> on 2012-06-13
Reviewed by Kentaro Hara.

With reference to http://www.w3.org/TR/WebIDL/#idl-sequence
"Sequences must not be used as the type of an attribute, constant or exception field."
So we should use T[] instead of sequence<T>.

Source/WebCore:

Tests: bindings/scripts/test/TestObj.idl

fast/harness/user-preferred-language.html
inspector/profiler/cpu-profiler-profiling-without-inspector.html
media/track/track-language-preference.html

  • bindings/scripts/CodeGenerator.pm:

(GetSequenceType): Getter for getting sequence type.
(GetArrayType): Getter for getting array type.
(AssertNotSequenceType): Check sequences must not be used as the type of an attribute,
constant or exception field.

  • bindings/scripts/CodeGeneratorCPP.pm:

(SkipFunction): Exclude bindings code for type sequence.
(SkipAttribute): Check for sequences must not be used as the type of an attribute,
constant or exception field.
(AddIncludesForType): Exclude header inclusion code for type array/sequence.

  • bindings/scripts/CodeGeneratorGObject.pm:

(SkipAttribute): Check for sequences must not be used as the type of an attribute,
constant or exception field.
(SkipFunction): Exclude bindings code for type sequence.

  • bindings/scripts/CodeGeneratorJS.pm:

(AddIncludesForType): Exclude header inclusion code for type array/sequence.
(GenerateImplementation): Check for sequences must not be used as the type of an attribute,
constant or exception field.
(GetNativeType):
(JSValueToNative):
(NativeToJSValue):

  • bindings/scripts/CodeGeneratorObjC.pm:

(SkipFunction): Exclude bindings code for type sequence.
(SkipAttribute): Exclude bindings code for type array.
(AddForwardDeclarationsForType):
(AddIncludesForType):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrGetter):
(GetNativeType):
(JSValueToNative):
(CreateCustomSignature):
(NativeToJSValue):

  • bindings/scripts/test/JS/JSTestObj.cpp: Updated code from run-bindings-tests.

(WebCore):
(WebCore::jsTestObjPrototypeFunctionMethodWithSequenceArg):

  • bindings/scripts/test/JS/JSTestObj.h: Updated code from run-bindings-tests.

(WebCore):

  • bindings/scripts/test/TestObj.idl: Tests.
  • bindings/scripts/test/V8/V8TestObj.cpp: Updated code from run-bindings-tests.

(TestObjV8Internal):
(WebCore::TestObjV8Internal::methodWithSequenceArgCallback):
(WebCore):

  • inspector/ScriptProfileNode.idl: Using sequence<T> for children().
  • page/Console.idl: Using Array[T] for profiles attribute.
  • testing/Internals.idl: Using sequence<T> for userPreferredLanguages().

LayoutTests:

  • fast/harness/user-preferred-language.html: Using getter and setter

for userPreferredLanguages.

  • inspector/profiler/cpu-profiler-profiling-without-inspector.html:

Use ScriptProfileNode.children as function.

  • media/track/track-language-preference-expected.txt:
  • media/track/track-language-preference.html: Using setter for

userPreferredLanguages.

07:39 Changeset [120205] by kbalazs@webkit.org

[Qt][WK2] Scanning plugins blocks the UI for a long time
https://bugs.webkit.org/show_bug.cgi?id=88535

Reviewed by Simon Hausmann.

Implement a persistent cache for the meta data of plugins.
This way the UI process will not block for too long when
it's time to scan the plugins (except the first time).
The cache is a json file stored in a standard hidden cache
directory.

  • Shared/qt/QtDefaultDataLocation.cpp: Added.

(WebKit):
(WebKit::defaultDataLocation):

  • Shared/qt/QtDefaultDataLocation.h: Added.

(WebKit):
Added a common helper for the path we use to
put stuff into.

  • Target.pri:
  • UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:

(WebKit::cacheFile):
(WebKit):
(WebKit::readMetaDataFromCacheFile):
(WebKit::writeToCacheFile):
(WebKit::appendToCacheFile):
(WebKit::tryReadPluginMetaDataFromCacheFile):
(WebKit::PluginProcessProxy::scanPlugin):

  • UIProcess/qt/WebContextQt.cpp:
07:37 Changeset [120204] by kkristof@inf.u-szeged.hu

[Qt] Unreviewed gardening.

Rebaseline updated tests to green Qt bots.

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-06-13

  • platform/qt/editing/pasteboard/4641033-expected.txt:
  • platform/qt/editing/selection/mixed-editability-1-expected.txt:
  • platform/qt/editing/selection/paragraph-granularity-expected.txt:
  • platform/qt/editing/selection/triple-click-in-pre-expected.txt:
  • platform/qt/editing/selection/word-granularity-expected.txt:
  • platform/qt/http/tests/misc/location-replace-crossdomain-expected.txt:
07:27 Changeset [120203] by hausmann@webkit.org

[Qt] Make it possible to disable -Werror in production builds

Reviewed by Tor Arne Vestbø.

Don't do -Werror if build-webkit is called with --qmakearg=CONFIG+=production_build,
something qt5.git's qtwebkit.pri will soon do.

  • qmake/mkspecs/features/unix/default_post.prf:
07:22 Changeset [120202] by kenneth@webkit.org

[Qt] Do not set contents pos to the current position
https://bugs.webkit.org/show_bug.cgi?id=88990

Reviewed by Laszlo Gombos.

This is basically an optimization but it also solves flickering
in some cases.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebView::setContentPos):

07:08 Changeset [120201] by commit-queue@webkit.org

[EFL][DRT] Gardening for a greener bot
https://bugs.webkit.org/show_bug.cgi?id=88971

Unreviewed, EFL gardening.

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-06-13

  • platform/efl/TestExpectations:
  • platform/efl/fast/multicol/span/clone-flexbox-expected.txt: rebaselined after r120100.
  • platform/efl/http/tests/loading/gmail-assert-on-load-expected.txt: Added, we print more verbosely.
06:54 Changeset [120200] by commit-queue@webkit.org

[GTK][EFL] Skip http/tests/misc/redirect-to-about-blank.html
https://bugs.webkit.org/show_bug.cgi?id=88962

Unreviewed gardening. Skip http/tests/misc/redirect-to-about-blank.html
for both EFL and GTK ports. The test is failing after r120145.

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

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
06:51 Changeset [120199] by commit-queue@webkit.org

[EFL] Store and compare md5sum of jhbuild files to trigger cleaning Dependencies
https://bugs.webkit.org/show_bug.cgi?id=85790

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-06-13
Reviewed by Gustavo Noronha Silva.

Add md5 checks for jhbuild configuration for EFL, reusing the gtk jhbuild related
code in webkitdirs.pm.

  • Scripts/webkitdirs.pm:

(jhbuildConfigurationChanged):
(saveJhbuildMd5):
(cleanJhbuild):
(buildAutotoolsProject):
(generateBuildSystemFromCMakeProject):

06:51 Changeset [120198] by zandobersek@gmail.com

Unreviewed GTK gardening, clean up the crashing tests, either removing
their expectations completely or expanding them to avoid false 'newly-passing'
reports. Also split some expectations as some tests are failing differently in
debug and release builds.

  • platform/gtk/TestExpectations:
06:46 Changeset [120197] by haraken@chromium.org

Merge 117928 - REGRESSION r110315: Event handler throws TypeError for an input element with name="arguments"
https://bugs.webkit.org/show_bug.cgi?id=86991

Reviewed by Ojan Vafai.

Source/WebCore:

Original Chromium bug: http://code.google.com/p/chromium/issues/detail?id=128723

Consider the following html:

<html><body><form>
<input type="hidden" name="arguments"></input>
<div onclick="onclicked()" id="divInsideForm">Click here</div>
</form></body>
<script>
function onclicked() {

alert("onclicked");

}
</script>
</html>

If we click "Click here", JavaScript throws "Uncaught TypeError: undefined has no properties".

This is a regression caused by r110315. V8LazyEventListener should not use
'arguments' to retrieve the execution contexts, since 'arguments' can be
shadowed by JavaScript.

This patch changes V8LazyEventListener so that it retrieves contexts
by this[2], this[1] and this[0].

Test: fast/forms/form-input-named-arguments.html

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject):

LayoutTests:

The added test checks whether an event handler is successfully invoked
for an input element with name="arguments".

  • fast/forms/form-input-named-arguments-expected.txt: Added.
  • fast/forms/form-input-named-arguments.html: Added.

TBR=haraken@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10532125

06:37 Changeset [120196] by hausmann@webkit.org

[Qt] Remove dependency to QtScript for the Qt 5 build
https://bugs.webkit.org/show_bug.cgi?id=88993

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Replace the use of QScriptEngine::ValueOwnership with an enum local
to the class where it is used (QtInstance).

  • Target.pri:
  • bindings/js/ScriptControllerQt.cpp:

(WebCore::ScriptController::createScriptInstanceForWidget):

  • bridge/qt/qt_instance.cpp:

(JSC::Bindings::QtInstance::QtInstance):
(JSC::Bindings::QtInstance::~QtInstance):
(JSC::Bindings::QtInstance::getQtInstance):

  • bridge/qt/qt_instance.h:

(QtInstance):
(JSC::Bindings::QtInstance::create):

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::convertQVariantToValue):

  • bridge/qt/qt_runtime_qt4.cpp:

(JSC::Bindings::convertQVariantToValue):

Source/WebKit/qt:

When building against Qt 5, replace the use of QScriptEngine::ValueOwnership with
a (compatible) QWebFrame::ValueOwnership enum.

  • Api/qwebframe.cpp:

(qtSenderCallback):
(QWebFrame::addToJavaScriptWindowObject):

  • Api/qwebframe.h:
  • tests/qobjectbridge/tst_qobjectbridge.cpp:

(tst_QObjectBridge::arrayObjectEnumerable):
(tst_QObjectBridge::ownership):
(tst_QObjectBridge::qObjectWrapperWithSameIdentity):

06:11 Changeset [120195] by caio.oliveira@openbossa.org

[Qt] Save a JSGlobalContextRef instead of a JSContextRef in QtConnectionObject
https://bugs.webkit.org/show_bug.cgi?id=88905

Make QtConnectionObject use JSContextGetGlobalContext and store the
JSGlobalContextRef. Previous code was working but saving JSContextRef was wrong in terms of
API.

There's an assumption that JSGlobalContextRef will outlive the connection objects, and
because of it no JSGlobalContextRetain/Release calls were added.

Reviewed by Noam Rosenthal.

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::QtRuntimeConnectionMethod::call):
(JSC::Bindings::QtConnectionObject::QtConnectionObject):

  • bridge/qt/qt_runtime.h:

(QtConnectionObject):

  • bridge/qt/qt_runtime_qt4.cpp:

(JSC::Bindings::QtRuntimeConnectionMethod::call):
(JSC::Bindings::QtConnectionObject::QtConnectionObject):

06:04 Changeset [120194] by commit-queue@webkit.org

Add dpi to css3-images image-resolution
https://bugs.webkit.org/show_bug.cgi?id=85439

Patch by David Barr <davidbarr@chromium.org> on 2012-06-13
Reviewed by Tony Chang.

Source/WebCore:

No new tests; extended fast/css/image-resolution/image-resolution.html

  • css/CSSGrammar.y:
  • css/CSSParser.cpp:

(WebCore::CSSParser::validUnit):
(WebCore::CSSParser::createPrimitiveNumericValue):
(WebCore::unitFromString):
(WebCore::CSSParser::parseValidPrimitive):
(WebCore::CSSParser::detectNumberToken):

  • css/CSSPrimitiveValue.cpp:

(WebCore::isValidCSSUnitTypeForDoubleConversion):
(WebCore::unitCategory):
(WebCore::conversionToCanonicalUnitsScaleFactor):
(WebCore::CSSPrimitiveValue::customCssText):
(WebCore::CSSPrimitiveValue::cloneForCSSOM):

  • css/CSSPrimitiveValue.h:

LayoutTests:

  • fast/css/image-resolution/image-resolution-expected.txt:
  • fast/css/image-resolution/image-resolution.html:
05:52 Changeset [120193] by qi.2.zhang@nokia.com

[Qt] Add configure test for zlib and set WTF_USE_ZLIB if found
https://bugs.webkit.org/show_bug.cgi?id=88763

Tools:

Add configure test for zlib and set WTF_USE_ZLIB if found to enable websocket
extension.

Reviewed by Simon Hausmann.

  • qmake/config.tests/libzlib: Added.
  • qmake/config.tests/libzlib/libzlib.cpp: Added.

(main):

  • qmake/config.tests/libzlib/libzlib.pro: Added.
  • qmake/mkspecs/features/features.prf:
  • qmake/sync.profile:

LayoutTests:

Move failed websocket extension test case to qt-4.8 after enable it in qt5

Reviewed by Simon Hausmann.

  • platform/qt-4.8/Skipped:
  • platform/qt/Skipped:
05:48 Changeset [120192] by commit-queue@webkit.org

[EFL] http/tests/xmlhttprequest/origin-exact-matching.html can be unskipped
https://bugs.webkit.org/show_bug.cgi?id=88960

Unreviewed EFL gardening.
http/tests/xmlhttprequest/origin-exact-matching.html can be
unskipped after r120107.

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

  • platform/efl/TestExpectations:
05:41 Changeset [120191] by commit-queue@webkit.org

FileAPI: type should be converted to be lower case in Blob constructor.
https://bugs.webkit.org/show_bug.cgi?id=88696

Patch by Li Yin <li.yin@intel.com> on 2012-06-13
Reviewed by Kentaro Hara.

Source/WebCore:

Spec: http://dev.w3.org/2006/webapi/FileAPI/#dfn-BlobPropertyBag
Spec: http://dev.w3.org/2006/webapi/FileAPI/#attributes-blob
The ASCII-encoded string in lower case representing the media type of the Blob.

Test: fast/files/blob-constructor.html

  • bindings/js/JSBlobCustom.cpp:

(WebCore::JSBlobConstructor::constructJSBlob):

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCallback):

LayoutTests:

Spec: http://dev.w3.org/2006/webapi/FileAPI/#dfn-BlobPropertyBag
Add sub-test to track changing upper case into lower case of type in Blob constructor.

  • fast/files/blob-constructor-expected.txt:
  • fast/files/script-tests/blob-constructor.js:
05:34 Changeset [120190] by rniwa@webkit.org

Fonts, fullscreen, gamepad, and html5lib tests should use testRunner instead of layoutTestController
https://bugs.webkit.org/show_bug.cgi?id=88959

Reviewed by Darin Adler.

  • fonts/valid-standard-font.html:
  • fullscreen/anonymous-block-merge-crash.html:
  • fullscreen/full-screen-element-stack.html:
  • fullscreen/full-screen-frameset.html:
  • fullscreen/full-screen-iframe-zIndex.html:
  • fullscreen/full-screen-keyboard-disabled.html:
  • fullscreen/full-screen-keyboard-enabled.html:
  • fullscreen/full-screen-remove-ancestor-during-transition.html:
  • fullscreen/full-screen-remove-sibling.html:
  • fullscreen/full-screen-render-inline.html:
  • fullscreen/full-screen-request-rejected.html:
  • fullscreen/full-screen-request-removed.html:
  • fullscreen/full-screen-restrictions.html:
  • fullscreen/full-screen-stacking-context.html:
  • fullscreen/full-screen-test.js:

(runWithKeyDown):
(endTest):

  • fullscreen/full-screen-zIndex-after.html:
  • fullscreen/full-screen-zIndex.html:
  • fullscreen/non-ancestor-iframe.html:
  • fullscreen/parent-flow-inline-with-block-child.html:
  • fullscreen/video-controls-override.html:
  • html5lib/resources/runner.js:

(run):

  • html5lib/webkit-resumer.html:
  • platform/gtk/fonts/custom-font-missing-glyphs.html:
  • platform/gtk/fonts/font-face-with-complex-text.html:
  • platform/gtk/fonts/font-family-fallback.html:
  • platform/gtk/fonts/synthetic-oblique-positioning.html:
05:31 Changeset [120189] by kkristof@inf.u-szeged.hu

[Qt] Unreviewed gardening. Skip new failing tests.

  • platform/qt/Skipped:
05:28 Changeset [120188] by commit-queue@webkit.org

[BlackBerry] Enable MEDIA_STREAM by default
https://bugs.webkit.org/show_bug.cgi?id=88849

Patch by Robin Cao <robin.cao@torchmobile.com.cn> on 2012-06-13
Reviewed by Antonio Gomes.

.:

  • Source/cmake/OptionsBlackBerry.cmake:
  • Source/cmakeconfig.h.cmake:

Source/WebCore:

Covered by existing test cases.

  • CMakeLists.txt:
  • PlatformBlackBerry.cmake:
  • platform/mediastream/blackberry/DeprecatedPeerConnectionHandler.cpp: Added.

(WebCore):
(WebCore::DeprecatedPeerConnectionHandler::create):
(WebCore::DeprecatedPeerConnectionHandler::DeprecatedPeerConnectionHandler):
(WebCore::DeprecatedPeerConnectionHandler::~DeprecatedPeerConnectionHandler):
(WebCore::DeprecatedPeerConnectionHandler::produceInitialOffer):
(WebCore::DeprecatedPeerConnectionHandler::handleInitialOffer):
(WebCore::DeprecatedPeerConnectionHandler::processSDP):
(WebCore::DeprecatedPeerConnectionHandler::processPendingStreams):
(WebCore::DeprecatedPeerConnectionHandler::sendDataStreamMessage):
(WebCore::DeprecatedPeerConnectionHandler::stop):

  • platform/mediastream/blackberry/MediaStreamCenterBlackBerry.cpp: Added.

(WebCore):
(WebCore::MediaStreamCenter::instance):
(WebCore::MediaStreamCenterBlackBerry::MediaStreamCenterBlackBerry):
(WebCore::MediaStreamCenterBlackBerry::~MediaStreamCenterBlackBerry):
(WebCore::MediaStreamCenterBlackBerry::queryMediaStreamSources):
(WebCore::MediaStreamCenterBlackBerry::didSetMediaStreamTrackEnabled):
(WebCore::MediaStreamCenterBlackBerry::didStopLocalMediaStream):
(WebCore::MediaStreamCenterBlackBerry::didCreateMediaStream):
(WebCore::MediaStreamCenterBlackBerry::constructSDP):

  • platform/mediastream/blackberry/MediaStreamCenterBlackBerry.h: Added.

(WebCore):
(MediaStreamCenterBlackBerry):

Source/WebKit:

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::init):

  • WebCoreSupport/UserMediaClientImpl.cpp: Added.

(WebCore):
(WebCore::UserMediaClientImpl::UserMediaClientImpl):
(WebCore::UserMediaClientImpl::~UserMediaClientImpl):
(WebCore::UserMediaClientImpl::pageDestroyed):
(WebCore::UserMediaClientImpl::requestUserMedia):
(WebCore::UserMediaClientImpl::cancelUserMediaRequest):

  • WebCoreSupport/UserMediaClientImpl.h: Added.

(WebKit):
(WebCore):
(UserMediaClientImpl):

Tools:

  • Scripts/webkitperl/FeatureList.pm:
05:23 WebInspector edited by ojwbetts@gmail.com
remove spam (diff)
05:04 Changeset [120187] by sergio@webkit.org

Unreviewed gardening. Removed some tests passing in all the GTK
bots from the test expectations file.

  • platform/gtk/TestExpectations:
04:51 Changeset [120186] by pfeldman@chromium.org

Web Inspector: working copy should be committed even if domain binding returns error.
https://bugs.webkit.org/show_bug.cgi?id=88884

Reviewed by Vsevolod Vlasov.

Committing working copy is about saving file. It should always succeed.

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode.prototype.commitWorkingCopy):

04:45 Changeset [120185] by pfeldman@chromium.org

Web Inspector: show revisions of all modified files in local modifications view
https://bugs.webkit.org/show_bug.cgi?id=88864

Reviewed by Vsevolod Vlasov.

This change allows all local modifications to be seen in a single view. View is now
singleton, listening to all revisions being added. Revert captions were reworked
(see the screenshot).

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

(WebInspector.RevisionHistoryView.populateRevisions):
(WebInspector.RevisionHistoryView):
(WebInspector.RevisionHistoryView.showHistory):
(WebInspector.RevisionHistoryView.reset):
(WebInspector.RevisionHistoryView.prototype._createResourceItem.clearHistory):
(WebInspector.RevisionHistoryView.prototype._createResourceItem):
(WebInspector.RevisionHistoryView.prototype._revisionAdded.get if):
(WebInspector.RevisionHistoryView.prototype._revisionAdded):
(WebInspector.RevisionHistoryView.prototype._revealResource.get if):
(WebInspector.RevisionHistoryView.prototype._revealResource):
(WebInspector.RevisionHistoryView.prototype._reset):
(WebInspector.RevisionHistoryTreeElement):
(WebInspector.RevisionHistoryTreeElement.prototype.onattach):
(WebInspector.RevisionHistoryTreeElement.prototype.oncollapse):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._reset):
(WebInspector.ScriptsPanel.prototype._editorSelected):

  • inspector/front-end/revisionHistory.css:

(.revision-history-link-row):
(.revision-history-drawer li.revision-history-revision):

04:38 Changeset [120184] by pfeldman@chromium.org

Web Inspector: Make "Go to source and line" possible with "go to file" dialog
https://bugs.webkit.org/show_bug.cgi?id=88740

Reviewed by Vsevolod Vlasov.

Selection dialog now allows search query rewrite and uses line number
suffix to go to a particular line.

  • inspector/front-end/FilteredItemSelectionDialog.js:

(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.FilteredItemSelectionDialog.prototype._createSearchRegExp):
(WebInspector.SelectionDialogContentProvider.prototype.selectItem):
(WebInspector.SelectionDialogContentProvider.prototype.rewriteQuery):
(WebInspector.JavaScriptOutlineDialog.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog.prototype.rewriteQuery):
(WebInspector.OpenResourceDialog.prototype.selectItem):
(WebInspector.OpenResourceDialog.prototype.rewriteQuery):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.showUISourceCode):

  • inspector/front-end/StylesPanel.js:

(WebInspector.StyleSheetOutlineDialog.prototype.selectItem):
(WebInspector.StyleSheetOutlineDialog.prototype.rewriteQuery):

04:31 Changeset [120183] by vestbo@webkit.org

Prevent stderr output from messing up detection of build path

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

Warnings such as 'perl: warning: Setting locale failed' will otherwise
end up as the build path when calling out to webkit-build-directory.

Reviewed by Ojan Vafai.

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

(Config.build_directory):

04:27 Changeset [120182] by pfeldman@chromium.org

Web Inspector: Make "Go to source and line" possible with "go to file" dialog
https://bugs.webkit.org/show_bug.cgi?id=88740

Reviewed by Vsevolod Vlasov.

Selection dialog now allows search query rewrite and uses line number
suffix to go to a particular line.

  • inspector/front-end/FilteredItemSelectionDialog.js:

(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.FilteredItemSelectionDialog.prototype._createSearchRegExp):
(WebInspector.SelectionDialogContentProvider.prototype.selectItem):
(WebInspector.SelectionDialogContentProvider.prototype.rewriteQuery):
(WebInspector.JavaScriptOutlineDialog.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog.prototype.rewriteQuery):
(WebInspector.OpenResourceDialog.prototype.selectItem):
(WebInspector.OpenResourceDialog.prototype.rewriteQuery):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.showUISourceCode):

  • inspector/front-end/StylesPanel.js:

(WebInspector.StyleSheetOutlineDialog.prototype.selectItem):
(WebInspector.StyleSheetOutlineDialog.prototype.rewriteQuery):

03:48 Changeset [120181] by hans@chromium.org

Speech JavaScript API: Add test for constructing SpeechRecognitionError events
https://bugs.webkit.org/show_bug.cgi?id=88868

Reviewed by Adam Barth.

Source/WebCore:

This adds a test for constructing SpeechRecognitionError events, and
code to make it work.

Test: fast/events/constructors/speech-recognition-error-constructor.html

  • Modules/speech/SpeechRecognitionError.cpp:

(WebCore::SpeechRecognitionError::create):
(WebCore):
(WebCore::SpeechRecognitionError::SpeechRecognitionError):
(WebCore::SpeechRecognitionErrorInit::SpeechRecognitionErrorInit):

  • Modules/speech/SpeechRecognitionError.h:

(SpeechRecognitionErrorInit):
(WebCore):
(SpeechRecognitionError):
(WebCore::SpeechRecognitionError::code):

  • Modules/speech/SpeechRecognitionError.idl:

LayoutTests:

Add a layout test for constructing SpeechRecognitionError events.

  • fast/events/constructors/speech-recognition-error-constructor-expected.txt: Added.
  • fast/events/constructors/speech-recognition-error-constructor.html: Added.
03:38 Changeset [120180] by rniwa@webkit.org

Chromium rebaseline after r120173.

  • platform/chromium-linux/editing/pasteboard/4641033-expected.txt:
  • platform/chromium-linux/editing/selection/paragraph-granularity-expected.png:
  • platform/chromium-linux/editing/selection/triple-click-in-pre-expected.png:
  • platform/chromium-linux/editing/selection/word-granularity-expected.png:
  • platform/chromium-mac-leopard/editing/selection/paragraph-granularity-expected.png:
  • platform/chromium-mac-leopard/editing/selection/triple-click-in-pre-expected.png:
  • platform/chromium-mac-leopard/editing/selection/word-granularity-expected.png:
  • platform/chromium-mac-snowleopard/editing/selection/paragraph-granularity-expected.png:
  • platform/chromium-mac-snowleopard/editing/selection/triple-click-in-pre-expected.png:
  • platform/chromium-mac-snowleopard/editing/selection/word-granularity-expected.png:
  • platform/chromium-mac/editing/selection/paragraph-granularity-expected.png:
  • platform/chromium-mac/editing/selection/triple-click-in-pre-expected.png:
  • platform/chromium-mac/editing/selection/word-granularity-expected.png:
  • platform/chromium-win/editing/inserting/editable-html-element-expected.txt:
  • platform/chromium-win/editing/pasteboard/4641033-expected.png:
  • platform/chromium-win/editing/pasteboard/4641033-expected.txt:
  • platform/chromium-win/editing/selection/mixed-editability-1-expected.txt:
  • platform/chromium-win/editing/selection/paragraph-granularity-expected.png:
  • platform/chromium-win/editing/selection/paragraph-granularity-expected.txt:
  • platform/chromium-win/editing/selection/triple-click-in-pre-expected.png:
  • platform/chromium-win/editing/selection/triple-click-in-pre-expected.txt:
  • platform/chromium-win/editing/selection/word-granularity-expected.png:
  • platform/chromium-win/editing/selection/word-granularity-expected.txt:
03:28 Changeset [120179] by rniwa@webkit.org

Fix a wrong rebaseline in r120178.

  • editing/pasteboard/file-input-files-access-expected.txt:
03:21 Changeset [120178] by rniwa@webkit.org

Tools: Update the builder name for Apple Lion builders.

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

LayoutTests: Mac rebaseline after r120167 and r120173.

Also revert an inadvertent change to file.invalidext.

  • editing/pasteboard/file-input-files-access-expected.txt:
  • editing/pasteboard/paste-sanitize-crash-2-expected.txt:
  • editing/pasteboard/resources/file.invalidext:
  • editing/selection/blockquote-crash-expected.txt:
  • editing/style/4230923-expected.txt:
  • platform/mac/editing/pasteboard/4641033-expected.txt:
  • platform/mac/editing/selection/mixed-editability-1-expected.txt:
  • platform/mac/editing/selection/paragraph-granularity-expected.txt:
  • platform/mac/editing/selection/triple-click-in-pre-expected.txt:
  • platform/mac/editing/selection/word-granularity-expected.txt:
  • platform/mac/http/tests/misc/location-replace-crossdomain-expected.txt:
02:52 Changeset [120177] by commit-queue@webkit.org

Implement InspectorFileSystemAgent::readDirectory for FileSystem support.
https://bugs.webkit.org/show_bug.cgi?id=87724

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-06-13
Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: http/tests/inspector/filesystem/read-directory.html

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

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorFileSystemAgent.cpp:

(InspectorFileSystemAgent::FrontendProvider):
(WebCore):
(WebCore::InspectorFileSystemAgent::create):
(WebCore::InspectorFileSystemAgent::readDirectory):
(WebCore::InspectorFileSystemAgent::InspectorFileSystemAgent):

  • inspector/InspectorFileSystemAgent.h:

(WebCore):
(InspectorFileSystemAgent):

LayoutTests:

  • http/tests/inspector/filesystem/filesystem-test.js: Added.
  • http/tests/inspector/filesystem/read-directory-expected.txt: Added.
  • http/tests/inspector/filesystem/read-directory.html: Added.
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
  • platform/wincairo/Skipped:
02:49 Changeset [120176] by rniwa@webkit.org

Revert the removal of 2 editing tests in r120173.

  • editing/pasteboard/copy-paste-float.html: Copied from LayoutTests/editing/pasteboard/copy-paste-float.html.
  • platform/mac/editing/selection/word-thai.html: Copied from LayoutTests/platform/mac/editing/selection/word-thai.html.
02:38 Changeset [120175] by zandobersek@gmail.com

Unreviewed, rolling out r120172.
http://trac.webkit.org/changeset/120172
https://bugs.webkit.org/show_bug.cgi?id=88976

The patch causes compilation failures on Gtk, Qt and Apple Win
bots (Requested by zdobersek on #webkit).

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

Source/JavaScriptCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::nop):
(JSC::ARMv7Assembler::label):
(JSC::ARMv7Assembler::readPointer):
(ARMv7Assembler):

  • assembler/AbstractMacroAssembler.h:

(JSC):
(AbstractMacroAssembler):
(Label):

  • assembler/AssemblerBuffer.h:
  • assembler/MacroAssemblerARM.h:
  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::nop):
(JSC::MacroAssemblerARMv7::jump):
(JSC::MacroAssemblerARMv7::makeBranch):

  • assembler/MacroAssemblerMIPS.h:
  • assembler/MacroAssemblerSH4.h:
  • assembler/MacroAssemblerX86.h:

(MacroAssemblerX86):
(JSC::MacroAssemblerX86::moveWithPatch):

  • assembler/MacroAssemblerX86Common.h:
  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::branchTest8):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::cmpb_im):
(JSC::X86Assembler::codeSize):
(JSC::X86Assembler::label):
(JSC::X86Assembler::X86InstructionFormatter::memoryModRM):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::appendOSRExit):
(JSC::CodeBlock::appendSpeculationRecovery):
(DFGData):

  • bytecode/DFGExitProfile.h:

(JSC::DFG::exitKindToString):
(JSC::DFG::exitKindIsCountable):

  • bytecode/Instruction.h:
  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName):

  • bytecode/Watchpoint.cpp: Removed.
  • bytecode/Watchpoint.h: Removed.
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::ResolveResult::checkValidity):
(JSC::BytecodeGenerator::addGlobalVar):
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::resolve):
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitResolveWithBase):
(JSC::BytecodeGenerator::emitResolveWithThis):
(JSC::BytecodeGenerator::emitGetStaticVar):
(JSC::BytecodeGenerator::emitPutStaticVar):

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):

  • bytecompiler/NodesCodegen.cpp:

(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::PostfixResolveNode::emitBytecode):
(JSC::PrefixResolveNode::emitBytecode):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::ConstDeclNode::emitCodeSingle):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):
(JSC::DFG::AbstractState::clobberStructures):

  • dfg/DFGAbstractState.h:

(AbstractState):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCCallHelpers.h:

(JSC::DFG::CCallHelpers::setupArguments):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::globalVarStoreElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::run):

  • dfg/DFGCorrectableJumpPoint.h:
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::link):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasRegisterPointer):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::OSRExit):

  • dfg/DFGOSRExit.h:

(OSRExit):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):
(JSC::DFG::SpeculativeJIT::appendCallSetResult):
(JSC::DFG::SpeculativeJIT::speculationCheck):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITPropertyAccess.cpp:
  • jit/JITPropertyAccess32_64.cpp:
  • jit/JITStubs.cpp:
  • jit/JITStubs.h:
  • llint/LLIntSlowPaths.cpp:
  • llint/LLIntSlowPaths.h:

(LLInt):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/JSObject.cpp:

(JSC::JSObject::removeDirect):

  • runtime/JSObject.h:

(JSObject):

  • runtime/JSSymbolTableObject.h:

(JSC::symbolTableGet):
(JSC::symbolTablePut):
(JSC::symbolTablePutWithAttributes):

  • runtime/SymbolTable.cpp: Removed.
  • runtime/SymbolTable.h:

(JSC):
(JSC::SymbolTableEntry::isNull):
(JSC::SymbolTableEntry::getIndex):
(SymbolTableEntry):
(JSC::SymbolTableEntry::getAttributes):
(JSC::SymbolTableEntry::isReadOnly):
(JSC::SymbolTableEntry::pack):
(JSC::SymbolTableEntry::isValidIndex):

Source/WTF:

  • wtf/SegmentedVector.h:

(WTF):
(SegmentedVectorIterator):
(WTF::SegmentedVectorIterator::operator=):
(WTF::SegmentedVectorIterator::SegmentedVectorIterator):
(SegmentedVector):

LayoutTests:

  • fast/js/dfg-call-function-hit-watchpoint-expected.txt: Removed.
  • fast/js/dfg-call-function-hit-watchpoint.html: Removed.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-call-function-hit-watchpoint.js: Removed.
02:19 Changeset [120174] by rniwa@webkit.org

Commit the rest of changes for r120167.

  • http/tests/history/resources/back-during-onload-hung-page.php:
  • http/tests/misc/embed-image-load-outlives-gc-without-crashing.html:
  • http/tests/misc/image-input-type-outlives-gc-without-crashing.html:
  • http/tests/misc/image-load-outlives-gc-without-crashing.html:
  • http/tests/misc/object-image-load-outlives-gc-without-crashing.html:
  • http/tests/security/:
01:51 Changeset [120173] by rniwa@webkit.org

Editing tests should use testRunner instead of layoutTestController
https://bugs.webkit.org/show_bug.cgi?id=88955

Reviewed by Darin Adler.

  • editing/:
  • platform/blackberry/editing/text-iterator/findString-markers.html:
  • platform/chromium-linux/editing/selection/linux_selection_color.html:
  • platform/chromium-win/editing/selection/paragraph-granularity-expected.txt:
  • platform/chromium-win/editing/selection/triple-click-in-pre-expected.txt:
  • platform/chromium-win/editing/selection/word-granularity-expected.txt:
  • platform/chromium/editing/spelling/delete-misspelled-word.html:
  • platform/chromium/editing/spelling/move-cursor-to-misspelled-word.html:
  • platform/gtk/editing/pasteboard/middle-button-paste.html:
  • platform/gtk/editing/pasteboard/script-tests/middle-click-onpaste.js:
  • platform/gtk/editing/selection/caret-mode-document-begin-end.html:
  • platform/gtk/editing/selection/paragraph-granularity-expected.txt:
  • platform/gtk/editing/selection/triple-click-in-pre-expected.txt:
  • platform/gtk/editing/selection/word-granularity-expected.txt:
  • platform/mac/editing/:
  • platform/qt/editing/selection/paragraph-granularity-expected.txt:
  • platform/qt/editing/selection/triple-click-in-pre-expected.txt:
  • platform/qt/editing/selection/word-granularity-expected.txt:
  • platform/win/editing/deleting/delete-start-block-expected.txt:
  • platform/win/editing/pasteboard/pasting-crlf-isnt-translated-to-crcrlf-win.html:
  • platform/win/editing/selection/shift-page-up-down.html:
01:20 Changeset [120172] by fpizlo@apple.com

DFG should be able to set watchpoints on global variables
https://bugs.webkit.org/show_bug.cgi?id=88692

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

This implements global variable constant folding by allowing the optimizing
compiler to set a "watchpoint" on globals that it wishes to constant fold.
If the watchpoint fires, then an OSR exit is forced by overwriting the
machine code that the optimizing compiler generated with a jump.

As such, this patch is adding quite a bit of stuff:

  • Jump replacement on those hardware targets supported by the optimizing JIT. It is now possible to patch in a jump instruction over any recorded watchpoint label. The jump must be "local" in the sense that it must be within the range of the largest jump distance supported by a one instruction jump.


  • WatchpointSets and Watchpoints. A Watchpoint is a doubly-linked list node that records the location where a jump must be inserted and the destination to which it should jump. Watchpoints can be added to a WatchpointSet. The WatchpointSet can be fired all at once, which plants all jumps. WatchpointSet also remembers if it had ever been invalidated, which allows for monotonicity: we typically don't want to optimize using watchpoints on something for which watchpoints had previously fired. The act of notifying a WatchpointSet has a trivial fast path in case no Watchpoints are registered (one-byte load+branch).


  • SpeculativeJIT::speculationWatchpoint(). It's like speculationCheck(), except that you don't have to emit branches. But, you need to know what WatchpointSet to add the resulting Watchpoint to. Not everything that you could write a speculationCheck() for will have a WatchpointSet that would get notified if the condition you were speculating against became invalid.


  • SymbolTableEntry now has the ability to refer to a WatchpointSet. It can do so without incurring any space overhead for those entries that don't have WatchpointSets.


  • The bytecode generator infers all global function variables to be watchable, and makes all stores perform the WatchpointSet's write check, and marks all loads as being potentially watchable (i.e. you can compile them to a watchpoint and a constant).


Put together, this allows for fully sleazy inlining of calls to globally
declared functions. The inline prologue will no longer contain the load of
the function, or any checks of the function you're calling. I.e. it's
pretty much like the kind of inlining you would see in Java or C++.
Furthermore, the watchpointing functionality is built to be fairly general,
and should allow setting watchpoints on all sorts of interesting things
in the future.

The sleazy inlining means that we will now sometimes inline in code paths
that have never executed. Previously, to inline we would have either had
to have executed the call (to read the call's inline cache) or have
executed the method check (to read the method check's inline cache). Now,
we might inline when the callee is a watched global variable. This
revealed some humorous bugs. First, constant folding disagreed with CFA
over what kinds of operations can clobber (example: code path A is dead
but stores a String into variable X, all other code paths store 0 into
X, and then you do CompareEq(X, 0) - CFA will say that this is a non-
clobbering constant, but constant folding thought it was clobbering
because it saw the String prediction). Second, inlining would crash if
the inline callee had not been compiled. This patch fixes both bugs,
since otherwise run-javascriptcore-tests would report regressions.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • assembler/ARMv7Assembler.h:

(ARMv7Assembler):
(JSC::ARMv7Assembler::ARMv7Assembler):
(JSC::ARMv7Assembler::labelForWatchpoint):
(JSC::ARMv7Assembler::label):
(JSC::ARMv7Assembler::replaceWithJump):
(JSC::ARMv7Assembler::maxJumpReplacementSize):

  • assembler/AbstractMacroAssembler.h:

(JSC):
(AbstractMacroAssembler):
(Label):
(JSC::AbstractMacroAssembler::watchpointLabel):

  • assembler/AssemblerBuffer.h:
  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::replaceWithJump):
(MacroAssemblerARM):
(JSC::MacroAssemblerARM::maxJumpReplacementSize):

  • assembler/MacroAssemblerARMv7.h:

(MacroAssemblerARMv7):
(JSC::MacroAssemblerARMv7::replaceWithJump):
(JSC::MacroAssemblerARMv7::maxJumpReplacementSize):
(JSC::MacroAssemblerARMv7::branchTest8):
(JSC::MacroAssemblerARMv7::jump):
(JSC::MacroAssemblerARMv7::makeBranch):

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::replaceWithJump):
(MacroAssemblerMIPS):
(JSC::MacroAssemblerMIPS::maxJumpReplacementSize):

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::replaceWithJump):
(MacroAssemblerSH4):
(JSC::MacroAssemblerSH4::maxJumpReplacementSize):

  • assembler/MacroAssemblerX86.h:

(MacroAssemblerX86):
(JSC::MacroAssemblerX86::branchTest8):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::replaceWithJump):
(MacroAssemblerX86Common):
(JSC::MacroAssemblerX86Common::maxJumpReplacementSize):

  • assembler/MacroAssemblerX86_64.h:

(MacroAssemblerX86_64):
(JSC::MacroAssemblerX86_64::branchTest8):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::X86Assembler):
(X86Assembler):
(JSC::X86Assembler::cmpb_im):
(JSC::X86Assembler::testb_im):
(JSC::X86Assembler::labelForWatchpoint):
(JSC::X86Assembler::label):
(JSC::X86Assembler::replaceWithJump):
(JSC::X86Assembler::maxJumpReplacementSize):
(JSC::X86Assembler::X86InstructionFormatter::memoryModRM):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::appendOSRExit):
(JSC::CodeBlock::appendSpeculationRecovery):
(CodeBlock):
(JSC::CodeBlock::appendWatchpoint):
(JSC::CodeBlock::numberOfWatchpoints):
(JSC::CodeBlock::watchpoint):
(DFGData):

  • bytecode/DFGExitProfile.h:

(JSC::DFG::exitKindToString):
(JSC::DFG::exitKindIsCountable):

  • bytecode/Instruction.h:

(Instruction):
(JSC::Instruction::Instruction):

  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName):

  • bytecode/Watchpoint.cpp: Added.

(JSC):
(JSC::Watchpoint::~Watchpoint):
(JSC::Watchpoint::correctLabels):
(JSC::Watchpoint::fire):
(JSC::WatchpointSet::WatchpointSet):
(JSC::WatchpointSet::~WatchpointSet):
(JSC::WatchpointSet::add):
(JSC::WatchpointSet::notifyWriteSlow):
(JSC::WatchpointSet::fireAllWatchpoints):

  • bytecode/Watchpoint.h: Added.

(JSC):
(Watchpoint):
(JSC::Watchpoint::Watchpoint):
(JSC::Watchpoint::setDestination):
(WatchpointSet):
(JSC::WatchpointSet::isStillValid):
(JSC::WatchpointSet::hasBeenInvalidated):
(JSC::WatchpointSet::startWatching):
(JSC::WatchpointSet::notifyWrite):
(JSC::WatchpointSet::addressOfIsWatched):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::ResolveResult::checkValidity):
(JSC::BytecodeGenerator::addGlobalVar):
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::resolve):
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitResolveWithBase):
(JSC::BytecodeGenerator::emitResolveWithThis):
(JSC::BytecodeGenerator::emitGetStaticVar):
(JSC::BytecodeGenerator::emitPutStaticVar):

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):

  • bytecompiler/NodesCodegen.cpp:

(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::PostfixResolveNode::emitBytecode):
(JSC::PrefixResolveNode::emitBytecode):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::ConstDeclNode::emitCodeSingle):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):
(JSC::DFG::AbstractState::clobberStructures):

  • dfg/DFGAbstractState.h:

(AbstractState):
(JSC::DFG::AbstractState::didClobber):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCCallHelpers.h:

(CCallHelpers):
(JSC::DFG::CCallHelpers::setupArguments):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::globalVarWatchpointElimination):
(CSEPhase):
(JSC::DFG::CSEPhase::globalVarStoreElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::run):

  • dfg/DFGCorrectableJumpPoint.h:

(JSC::DFG::CorrectableJumpPoint::isSet):
(CorrectableJumpPoint):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::link):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasIdentifierNumberForCheck):
(Node):
(JSC::DFG::Node::identifierNumberForCheck):
(JSC::DFG::Node::hasRegisterPointer):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::OSRExit):

  • dfg/DFGOSRExit.h:

(OSRExit):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):
(JSC::DFG::SpeculativeJIT::appendCall):
(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_put_global_var_check):
(JSC):
(JSC::JIT::emitSlow_op_put_global_var_check):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_put_global_var_check):
(JSC):
(JSC::JIT::emitSlow_op_put_global_var_check):

  • jit/JITStubs.cpp:

(JSC::JITThunks::JITThunks):
(JSC::DEFINE_STUB_FUNCTION):
(JSC):

  • jit/JITStubs.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(LLInt):

  • llint/LLIntSlowPaths.h:

(LLInt):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/JSObject.cpp:

(JSC::JSObject::removeDirect):

  • runtime/JSObject.h:

(JSObject):

  • runtime/JSSymbolTableObject.h:

(JSC::symbolTableGet):
(JSC::symbolTablePut):
(JSC::symbolTablePutWithAttributes):

  • runtime/SymbolTable.cpp: Added.

(JSC):
(JSC::SymbolTableEntry::copySlow):
(JSC::SymbolTableEntry::freeFatEntrySlow):
(JSC::SymbolTableEntry::couldBeWatched):
(JSC::SymbolTableEntry::attemptToWatch):
(JSC::SymbolTableEntry::addressOfIsWatched):
(JSC::SymbolTableEntry::addWatchpoint):
(JSC::SymbolTableEntry::notifyWriteSlow):
(JSC::SymbolTableEntry::inflateSlow):

  • runtime/SymbolTable.h:

(JSC):
(SymbolTableEntry):
(Fast):
(JSC::SymbolTableEntry::Fast::Fast):
(JSC::SymbolTableEntry::Fast::isNull):
(JSC::SymbolTableEntry::Fast::getIndex):
(JSC::SymbolTableEntry::Fast::isReadOnly):
(JSC::SymbolTableEntry::Fast::getAttributes):
(JSC::SymbolTableEntry::Fast::isFat):
(JSC::SymbolTableEntry::SymbolTableEntry):
(JSC::SymbolTableEntry::~SymbolTableEntry):
(JSC::SymbolTableEntry::operator=):
(JSC::SymbolTableEntry::isNull):
(JSC::SymbolTableEntry::getIndex):
(JSC::SymbolTableEntry::getFast):
(JSC::SymbolTableEntry::getAttributes):
(JSC::SymbolTableEntry::isReadOnly):
(JSC::SymbolTableEntry::watchpointSet):
(JSC::SymbolTableEntry::notifyWrite):
(FatEntry):
(JSC::SymbolTableEntry::FatEntry::FatEntry):
(JSC::SymbolTableEntry::isFat):
(JSC::SymbolTableEntry::fatEntry):
(JSC::SymbolTableEntry::inflate):
(JSC::SymbolTableEntry::bits):
(JSC::SymbolTableEntry::freeFatEntry):
(JSC::SymbolTableEntry::pack):
(JSC::SymbolTableEntry::isValidIndex):

Source/WTF:

Reviewed by Geoffrey Garen.

Added ability to set the inline capacity of segmented vectors.

  • wtf/SegmentedVector.h:

(WTF):
(SegmentedVectorIterator):
(WTF::SegmentedVectorIterator::operator=):
(WTF::SegmentedVectorIterator::SegmentedVectorIterator):
(SegmentedVector):

LayoutTests:

Rubber stamped by Geoffrey Garen.

Added a test for watchpoints. Also updated the jsc-test-list to include the latest
tests.

  • fast/js/dfg-call-function-hit-watchpoint-expected.txt: Added.
  • fast/js/dfg-call-function-hit-watchpoint.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-call-function-hit-watchpoint.js: Added.

(foo):
(bar):
(.foo):

01:19 Changeset [120171] by commit-queue@webkit.org

Change the styling of the Chromium video controls.
https://bugs.webkit.org/show_bug.cgi?id=88297

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-06-13
Reviewed by Eric Carlson.

No new tests, final patch will contain the rebaselined tests.

The Chrome video controls are receiving a visual update. This patch includes CSS changes,
the removal of the now no longer needed controls background div, and the introduction of
new images for the buttons.

  • css/mediaControlsChromium.css:

(audio):
Adjust height of audio controls.
(::-webkit-media-controls):
Use flexbox on media controls shadow DOM.
(audio::-webkit-media-controls-enclosure, video::-webkit-media-controls-enclosure):
Adjust height, max-width, text-indent and box-sizing, and reset padding to 0.
(video::-webkit-media-controls-enclosure):
Use 5px padding only for video controls and adjust height accordingly.
(audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
Use flexbox on panel, adjust bottom alignment, height, background color and border radius.
(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
Display buttons inline with fixed width and height, vertically centered, no padding and
6px space to next controls element (this will be 15px incl the space in the image).
(audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
Display buttons inline with fixed width and height, vertically centered, no padding and
9px space to next controls element (this will be 15px incl the space in the image).
(audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
Display text as block, without broder, adjusted height, font-family, font-size and 9px space
to next controls element (this will be 15px incl the space in the image).
(audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
Adjust height, padding, background-color, min-wdith and 15px space to next controls element.
(audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
Adjust height, max- and min-width, background-color and 15px space to next controls element.

  • html/shadow/MediaControlRootElementChromium.cpp:

(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
Remove timeline container, which is not necessary any longer because of the use of flexbox.
(WebCore::MediaControlRootElementChromium::create):
Remove timeline container, which is not necessary any longer because of the use of flexbox.
(WebCore::MediaControlRootElementChromium::setMediaController):
Remove timeline container, which is not necessary any longer because of the use of flexbox.
(WebCore::MediaControlRootElementChromium::reset):
Show the timeline instead of the timeline container when resetting.
(WebCore::MediaControlRootElementChromium::reportedError):
Hide the timeline instead of the timeline container when running into an error.

  • rendering/RenderMediaControlsChromium.cpp:

(WebCore::paintMediaMuteButton):
Introduce new image resources for the mute button and adjust it based on volume levels.
(WebCore::paintMediaPlayButton):
Introduce new image resources for the play button.
(WebCore::getMediaSliderThumb):
Introduce new image resources for the position slider thumb.
(WebCore::paintMediaVolumeSliderThumb):
Introduce new image resources for the volume slider thumb.
Remove timeline container rendering.
(WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
Add timeline container painting to the "not reached" elements.
(WebCore):
Provide size settings for the position and volume sliders.
(WebCore::RenderMediaControlsChromium::adjustMediaSliderThumbSize):
Calculate correct width and height settings for the new image resources of the position and volume
slider thumbs.

  • rendering/RenderThemeChromiumMac.h:

(RenderThemeChromiumMac):
Remove timeline container rendering (i.e. the media controls background).

  • rendering/RenderThemeChromiumMac.mm:

Remove timeline container rendering (i.e. the media controls background).

  • rendering/RenderThemeChromiumSkia.cpp:

Remove timeline container rendering (i.e. the media controls background).

  • rendering/RenderThemeChromiumSkia.h:

(RenderThemeChromiumSkia):
Remove timeline container rendering (i.e. the media controls background).

01:18 Changeset [120170] by kkristof@inf.u-szeged.hu

[Qt] Unreviewed gardening.

Skip svg/as-image/svg-nested.html which is timeout only on Qt-4.8.

  • platform/qt-4.8/Skipped: skip svg/as-image/svg-nested.html
  • platform/qt/TestExpectations: removed the slow marker from this test
01:17 Changeset [120169] by kinuko@chromium.org

Unreviewed, fixing English nits suggested by review for r120165.

  • fileapi/Blob.cpp:

(WebCore::Blob::webkitSlice):

  • fileapi/Blob.h:

(Blob):

01:05 Changeset [120168] by morrita@google.com

REGRESSION(r118098): <content> element does not render distributed children when cloned from another document
https://bugs.webkit.org/show_bug.cgi?id=88148

Source/WebCore:

Reviewed by Dimitri Glazkov.

The shadow DOM availability was decided through FrameLoaderClient.
But there are documents which don't have any associated frames, in
which any shadow DOM related elements cannot be constructed. That
resulsted the regression.

This change introduces a Page-based client called
ContextFeaturesClient which takes the role from FrameLoaderClient
to decide the feature availability, and ContextFeatures which is a
proxy of ContextFeaturesClient. ContextEnabledFeatures is is
replaced with ContextFeatures.

Each ContextFeatures object is owned by a Page, and is attached to
each Document in the page even if the page itself has no referenct
to Frames or Pages. With ContextFeatures, each Document can decide
the feature availability even if it cannot reach Page or Frame.

On RefCountedSupplement: Document instance can live longer than a
Page where it is shwon. This means that ContextFeatures instance
needs to survive after owner Page destruction because it's
referenced from possibly surviving Documents. RefCountedSupplement
is introduced to cover this scenario: It allows supplement classes
to live after Page's destruction.

RefCountedSupplement::hostDestroyed() is notified when the hosting
page is gone. ContextFeatures clears its reference to the client
using this notification.

Test: fast/dom/shadow/elements-in-frameless-document.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementation):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::determineScope):

  • dom/ContextFeatures.cpp: Added.

(WebCore):
(WebCore::ContextFeaturesClient::empty):
(WebCore::ContextFeatures::supplementName):
(WebCore::ContextFeatures::defaultSwitch):
(WebCore::ContextFeatures::shadowDOMEnabled):
(WebCore::ContextFeatures::styleScopedEnabled):
(WebCore::ContextFeatures::pagePopupEnabled):
(WebCore::provideContextFeaturesTo):
(WebCore::provideContextFeaturesToDocumentFrom):

  • dom/ContextFeatures.h: Added.

(WebCore):
(ContextFeatures):
(WebCore::ContextFeatures::ContextFeatures):
(WebCore::ContextFeatures::hostDestroyed):
(ContextFeaturesClient):
(WebCore::ContextFeaturesClient::~ContextFeaturesClient):
(WebCore::ContextFeaturesClient::isEnabled):
(WebCore::ContextFeatures::create):
(WebCore::ContextFeatures::isEnabled):

  • dom/DOMAllInOne.cpp:
  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::createDocument):
(WebCore::DOMImplementation::createHTMLDocument):

  • dom/Document.h:

(WebCore::Document::contextFeatures):

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::setContextFeatures):

  • dom/Position.cpp:

(WebCore::Position::Position):
(WebCore::Position::findParent):

  • dom/TreeScope.cpp:

(WebCore::TreeScope::getSelection):

  • dom/make_names.pl:

(printConstructorInterior):
(printFactoryCppFile):
(printWrapperFunctions):
(printWrapperFactoryCppFile):

  • editing/markup.cpp:

(WebCore::createFragmentFromMarkupWithContext):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::registerWithScopingNode):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):

  • html/shadow/HTMLContentElement.cpp:

(WebCore::contentTagName):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::patchDocument):

  • loader/FrameLoaderClient.h:
  • platform/RefCountedSupplement.h: Copied from Source/WebCore/platform/Supplementable.h.

(WebCore):
(RefCountedSupplement):
(WebCore::RefCountedSupplement::hostDestroyed):
(Wrapper):
(WebCore::RefCountedSupplement::Wrapper::Wrapper):
(WebCore::RefCountedSupplement::Wrapper::~Wrapper):
(WebCore::RefCountedSupplement::Wrapper::wrapped):
(WebCore::RefCountedSupplement::provideTo):
(WebCore::RefCountedSupplement::from):

  • platform/Supplementable.h:

(WebCore::Supplement::isRefCountedWrapper):

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseXML):

Source/WebKit/chromium:

Reviewed by Dimitri Glazkov.

  • Added ContextFeaturesClientImpl which implements WebCore::ContextFeaturesClient.
  • Replaced PagePopupFrameLoaderClient with PagePopupFeaturesClient.
  • WebKit.gyp:
  • public/WebPermissionClient.h:

(WebKit):
(WebKit::WebPermissionClient::allowWebComponents):

  • src/ContextFeaturesClientImpl.cpp: Renamed from Source/WebCore/bindings/generic/ContextEnabledFeatures.cpp.

(WebKit):
(WebKit::ContextFeaturesClientImpl::isEnabled):

  • src/ContextFeaturesClientImpl.h: Renamed from Source/WebCore/bindings/generic/ContextEnabledFeatures.h.

(WebKit):
(ContextFeaturesClientImpl):
(WebKit::ContextFeaturesClientImpl::ContextFeaturesClientImpl):
(WebKit::ContextFeaturesClientImpl::setPermissionClient):

  • src/FrameLoaderClientImpl.cpp:
  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

  • src/WebPagePopupImpl.cpp:

(PagePopupFeaturesClient):
(WebKit::PagePopupFeaturesClient::isEnabled):
(WebKit):
(WebKit::WebPagePopupImpl::initPage):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setPermissionClient):
(WebKit::WebViewImpl::WebViewImpl):

  • src/WebViewImpl.h:

(WebKit):

LayoutTests:

Reviewed by Dimitri Glazkov.

  • fast/dom/shadow/elements-in-frameless-document-expected.txt: Added.
  • fast/dom/shadow/elements-in-frameless-document.html: Added.
00:49 Changeset [120167] by rniwa@webkit.org

HTTP tests should use testRunner instead of layoutTestController
https://bugs.webkit.org/show_bug.cgi?id=88969

Reviewed by Darin Adler.

  • http/tests/appcache/:
  • http/tests/cache/cancel-during-failure-crash.html:
  • http/tests/cache/cancel-during-revalidation-succeeded.html:
  • http/tests/cache/history-only-cached-subresource-loads-max-age-https.html:
  • http/tests/cache/history-only-cached-subresource-loads.html:
  • http/tests/cache/loaded-from-cache-after-reload-within-iframe.html:
  • http/tests/cache/loaded-from-cache-after-reload.html:
  • http/tests/cache/post-redirect-get.php:
  • http/tests/cache/post-with-cached-subresources.php:
  • http/tests/cache/resources/stopped-revalidation-result.html:
  • http/tests/cache/resources/subresource-test.js:

(nextTest):

  • http/tests/cache/stopped-revalidation.html:
  • http/tests/cache/subresource-failover-to-network.html:
  • http/tests/cache/subresource-fragment-identifier.html:
  • http/tests/cache/subresource-multiple-instances.html:
  • http/tests/cache/xhr-body.html:
  • http/tests/cache/zero-length-xhr.html:
  • http/tests/canvas/philip/tests.js:

(_addTest.endTest):
(_addTest.window.onload):
(_addTest):

  • http/tests/canvas/webgl/origin-clean-conformance.html:
  • http/tests/cookies/resources/cookies-test-pre.js:
  • http/tests/cookies/resources/resetCookies.js:

(resetCookies):

  • http/tests/cookies/resources/setArraycookies-result.php:
  • http/tests/cookies/resources/setUtf8Cookies-result.php:
  • http/tests/cookies/resources/third-party-cookie-relaxing-iframe.html:
  • http/tests/cookies/third-party-cookie-relaxing.html:
  • http/tests/css/cross-fade-reload.html:
  • http/tests/css/css-imports-redirect-cycle.html:
  • http/tests/css/font-face-src-loading.html:
  • http/tests/css/resources/link-css-disabled-value-with-slow-loading-sheet-in-error.js:
  • http/tests/css/resources/link-css-disabled-value-with-slow-loading-sheet.js:
  • http/tests/css/resources/request-logging.js:

(startTest):
(endTest):

  • http/tests/download/basic-ascii.html:
  • http/tests/download/default-encoding.html:
  • http/tests/download/inherited-encoding-form-submission-result.html:
  • http/tests/download/inherited-encoding.html:
  • http/tests/download/literal-utf-8.html:
  • http/tests/eventsource/eventsource-bad-mime-type.html:
  • http/tests/eventsource/eventsource-content-type-charset.html:
  • http/tests/eventsource/eventsource-eof.html:
  • http/tests/eventsource/eventsource-parse-event-stream.html:
  • http/tests/eventsource/eventsource-reconnect-during-navigate-crash.html:
  • http/tests/eventsource/eventsource-reconnect.html:
  • http/tests/eventsource/eventsource-status-code-states.html:
  • http/tests/eventsource/existent-eventsource-status-error-iframe-crash.html:
  • http/tests/eventsource/non-existent-eventsource-status-error-iframe-crash.html:
  • http/tests/eventsource/resources/wait-then-notify-done.php:
  • http/tests/eventsource/workers/eventsource-simple.html:
  • http/tests/fileapi/create-blob-url-from-data-url.html:
  • http/tests/filesystem/no-cache-filesystem-url.html:
  • http/tests/globalhistory/history-delegate-basic-302-redirect.html:
  • http/tests/globalhistory/history-delegate-basic-refresh-redirect.html:
  • http/tests/globalhistory/history-delegate-basic-title.html:
  • http/tests/globalhistory/history-delegate-basic-visited-links.html:
  • http/tests/history/:
  • http/tests/incremental/frame-focus-before-load.html:
  • http/tests/incremental/partial-jpeg.html:
  • http/tests/incremental/pause-in-script-element.pl:
  • http/tests/incremental/slow-utf8-css.html:
  • http/tests/incremental/slow-utf8-html.pl:
  • http/tests/incremental/split-hex-entities.pl:
  • http/tests/inspector-enabled/console-clear-arguments-on-frame-navigation.html:
  • http/tests/inspector-enabled/console-clear-arguments-on-frame-remove.html:
  • http/tests/inspector-enabled/console-log-before-frame-navigation.html:
  • http/tests/inspector-enabled/contentSecurityPolicy-blocks-setInterval.html:
  • http/tests/inspector-enabled/contentSecurityPolicy-blocks-setTimeout.html:
  • http/tests/inspector-enabled/database-open.html:
  • http/tests/inspector-enabled/dedicated-workers-list.html:
  • http/tests/inspector-enabled/document-write.html:
  • http/tests/inspector-enabled/dom-storage-open.html:
  • http/tests/inspector-enabled/injected-script-discard.html:
  • http/tests/inspector-enabled/resources/console-clear-arguments-iframe.html:
  • http/tests/inspector/console-resource-errors.html:
  • http/tests/inspector/console-websocket-error.html:
  • http/tests/inspector/indexeddb/resources/without-indexed-db.html:
  • http/tests/inspector/inspector-test.js:
  • http/tests/inspector/network/ping.html:
  • http/tests/inspector/resource-tree/resources/script-initial.js:

(foo):

  • http/tests/inspector/resource-tree/resources/script-navigated.js:

(foo):

  • http/tests/inspector/web-socket-frame-error.html:
  • http/tests/inspector/web-socket-frame.html:
  • http/tests/loading/:
  • http/tests/local/absolute-url-strip-whitespace.html:
  • http/tests/local/blob/script-tests/send-hybrid-blob.js:

(runTests):

  • http/tests/local/drag-over-remote-content.html:
  • http/tests/local/fail.css:

(#pass):

  • http/tests/local/formdata/send-form-data-constructed-from-form.html:
  • http/tests/local/link-stylesheet-load-order-preload.html:
  • http/tests/local/link-stylesheet-load-order.html:
  • http/tests/local/link-stylesheet-preferred.html:
  • http/tests/local/style-access-before-stylesheet-loaded.html:
  • http/tests/local/stylesheet-and-script-load-order-http.html:
  • http/tests/local/stylesheet-and-script-load-order-media-print.html:
  • http/tests/local/stylesheet-and-script-load-order.html:
  • http/tests/media/reload-after-dialog.html:
  • http/tests/media/resources/test.txt:
  • http/tests/media/video-buffered-range-contains-currentTime.html:
  • http/tests/media/video-cancel-load.html:
  • http/tests/media/video-cookie.html:
  • http/tests/media/video-error-abort.html:
  • http/tests/messaging/cross-domain-message-event-dispatch.html:
  • http/tests/messaging/cross-domain-message-send.html:
  • http/tests/mime/quoted-charset.php:
  • http/tests/mime/resources/uppercase-mime-type.php:
  • http/tests/mime/standard-mode-does-not-load-stylesheet-with-text-plain-and-css-extension.html:
  • http/tests/mime/standard-mode-does-not-load-stylesheet-with-text-plain.html:
  • http/tests/mime/standard-mode-loads-stylesheet-with-charset-and-css-extension.html:
  • http/tests/mime/standard-mode-loads-stylesheet-with-charset.html:
  • http/tests/mime/standard-mode-loads-stylesheet-with-empty-content-type.html:
  • http/tests/mime/standard-mode-loads-stylesheet-with-text-css-and-invalid-type.html:
  • http/tests/mime/uppercase-mime-type.html:
  • http/tests/misc/:
  • http/tests/websocket/tests/:
  • http/tests/workers/resources/worker-redirect.js:

(runNextTest):

  • http/tests/workers/resources/worker-util.js:

(waitUntilThreadCountMatches.return):
(waitUntilThreadCountMatches):
(done):

  • http/tests/workers/shared-worker-importScripts.html:
  • http/tests/workers/shared-worker-invalid-url.html:
  • http/tests/workers/terminate-during-sync-operation.html:
  • http/tests/workers/text-encoding.html:
  • http/tests/workers/worker-document-domain-security.html:
  • http/tests/workers/worker-importScripts.html:
  • http/tests/workers/worker-importScriptsOnError.html:
  • http/tests/workers/worker-invalid-url.html:
  • http/tests/workers/worker-workerScriptNotThere.html:
  • http/tests/xmlhttprequest/:
  • http/tests/xmlviewer/dumpAsText/frames.html:
  • http/tests/xmlviewer/dumpAsText/xhtml-tag.xml:
  • http/tests/xmlviewer/extensions-api.html:
  • platform/chromium-win/http/tests/websocket/tests/hixie76/bad-sub-protocol-control-chars-expected.txt:
  • platform/chromium/http/tests/misc/execute-and-return-value.html:
  • platform/chromium/http/tests/misc/selectionAsMarkup.html:
  • platform/chromium/http/tests/permissionclient/image-permissions.html:
  • platform/chromium/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt:
  • platform/chromium/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt:
  • platform/chromium/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt:
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-allowed.html:
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-blocked.html:
  • platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed.html:
  • platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-blocked.html:
  • platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-allowed.html:
  • platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-blocked.html:
  • platform/chromium/http/tests/security/window-named-proto-expected.txt:
  • platform/qt/http/tests/cookies/strict-third-party-cookie-blocking.html:
  • platform/qt/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt:
  • platform/qt/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt:
  • platform/qt/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:
00:32 Changeset [120166] by hausmann@webkit.org

[Qt][Win]QtTestBrowser somehow picks up DumpRenderTree's main.cpp, causing a failure to link
https://bugs.webkit.org/show_bug.cgi?id=88874

Patch by Joel Dillon <joel.dillon@codethink.co.uk> on 2012-06-13
Reviewed by Simon Hausmann.

Rename main.cpp in QtTestBrowser because on Windows
it conflicts with main.cpp from DumpRenderTree.

  • QtTestBrowser/QtTestBrowser.pro:
  • QtTestBrowser/qttestbrowser.cpp: Renamed from Tools/QtTestBrowser/main.cpp.

(launcherMain):
(LauncherApplication):
(LauncherApplication::urls):
(LauncherApplication::isRobotized):
(LauncherApplication::robotTimeout):
(LauncherApplication::robotExtraTime):
(LauncherApplication::applyDefaultSettings):
(LauncherApplication::LauncherApplication):
(requiresGraphicsView):
(LauncherApplication::handleUserOptions):
(main):

06/12/12:

23:50 Changeset [120165] by kinuko@chromium.org

Unprefix Blob.webkitSlice
https://bugs.webkit.org/show_bug.cgi?id=78111

Reviewed by Adam Barth.

Source/WebCore:

Add unprefixed Blob.slice and start showing a deprecation message when webkitSlice is called.

No new tests: existing tests that call webkitSlice() are converted to slice(). They should keep running.

  • bindings/gobject/WebKitDOMCustom.cpp:

(webkit_dom_blob_slice): Removed.
(webkit_dom_blob_webkit_slice): Added.

  • fileapi/Blob.cpp:

(WebCore::Blob::slice):
(WebCore):
(WebCore::Blob::webkitSlice):
(WebCore::Blob::sliceInternal): Added.

  • fileapi/Blob.h:

(WebCore):
(Blob):

  • fileapi/Blob.idl:

LayoutTests:

Converted existing tests that are calling Blob.webkitSlice() to call slice().

  • fast/files/blob-slice-overflow.html:
  • fast/files/blob-slice-test.html:
  • fast/files/resources/read-blob-test-cases.js:

(testReadingSlicedFileBlob):
(testReadingSlicedTextBlob):
(testReadingSlicedArrayBufferBlob):
(testReadingSlicedHybridBlob):
(testReadingTripleSlicedHybridBlob):

  • fast/filesystem/resources/file-writer-utils.js:

(verifyByteRangeIsZeroesHelper):

  • http/tests/local/blob/script-tests/send-hybrid-blob.js:

(runHybridBlobTest):

  • http/tests/local/blob/script-tests/send-sliced-data-blob.js:

(runSliceTest):

  • http/tests/local/fileapi/script-tests/send-sliced-dragged-file.js:

(onStableFileDrop):
(onUnstableFileDrop):

  • http/tests/local/formdata/resources/send-form-data-common.js:

(testSendingFormData):

  • inspector/profiler/heap-snapshot-loader.html:
23:33 Changeset [120164] by commit-queue@webkit.org

Unreviewed, rolling out r120036.
http://trac.webkit.org/changeset/120036
https://bugs.webkit.org/show_bug.cgi?id=88965

"assert failed in debug build" (Requested by maryw on
#webkit).

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

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::handleNotifyDataReceived):

23:01 Changeset [120163] by ossy@webkit.org

[Qt] Unreviewed morning gardening, skip new failing tests.

  • platform/qt/Skipped:
22:39 Changeset [120162] by ossy@webkit.org

[Qt][Mac] Unreviewed buildfix after r120076.

  • WebCoreSupport/QTKitFullScreenVideoHandler.h:
22:19 Changeset [120161] by commit-queue@webkit.org

[chromium] Roll chromium rev in DEPS
https://bugs.webkit.org/show_bug.cgi?id=88934

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-12
Reviewed by James Robinson.

Rolling to 141410

  • DEPS:
22:00 Changeset [120160] by commit-queue@webkit.org

webcore should depend on webcore_arm_neon for only arm target_arch
https://bugs.webkit.org/show_bug.cgi?id=88839

Patch by Wei James <james.wei@intel.com> on 2012-06-12
Reviewed by Adam Barth.

  • WebCore.gyp/WebCore.gyp:
21:56 Changeset [120159] by fpizlo@apple.com

Unreviewed build fix for ARMv7 debug builds.

  • jit/JITStubs.cpp:

(JSC::JITThunks::JITThunks):

21:50 Changeset [120158] by commit-queue@webkit.org

Can't set el.type on a <button> element
https://bugs.webkit.org/show_bug.cgi?id=14439

Patch by Edaena Salinas Jasso <edaena@apple.com> on 2012-06-12
Reviewed by Darin Adler.

Source/WebCore:

Test: fast/dom/HTMLButtonElement/change-type.html

  • bindings/objc/PublicDOMInterfaces.h:
  • html/HTMLButtonElement.cpp:

(WebCore::HTMLButtonElement::setType): Added implementation of setType method.
(WebCore):

  • html/HTMLButtonElement.h:

(HTMLButtonElement): Added setType method.

  • html/HTMLButtonElement.idl: Removed readonly restriction to the type variable.

LayoutTests:

  • fast/dom/HTMLButtonElement/change-type-expected.txt: Added.
  • fast/dom/HTMLButtonElement/change-type.html: Added.
21:47 Changeset [120157] by dominicc@chromium.org

[Chromium] Unreviewed: Update expectations for http/tests/media/media-source/webm/video-media-source-seek.html

This test has racy events (seeked and webkitsourceended) so is
flaky on Linux Dbg. Updated bug 85952 that is tracking flakiness
in these tests.

  • platform/chromium/TestExpectations:
21:32 Changeset [120156] by bashi@chromium.org

[Chromium] Implement font shaping with font-feature-settings on Mac
https://bugs.webkit.org/show_bug.cgi?id=69826

Reviewed by Tony Chang.

Source/WebCore:

Add HarfBuzz-ng text shaper.
Chromium mac port uses it as secondary text shaper to support OpenType features.
HarfBuzz-ng is only used when -webkit-font-feature-settings is specified and
corresponding font is not an AAT font.

No new tests. css3/font-feature-settings-rendering.html should pass on Chromium mac port.

  • WebCore.gyp/WebCore.gyp: Added harfbuzz-ng dependencies.
  • WebCore.gypi: Added harfbuzz-ng files.
  • platform/graphics/FontPlatformData.h:

(FontPlatformData): Added m_harfbuzzFace.

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::platformDataInit): Copy m_harfbuzzFace.
(WebCore::FontPlatformData::platformDataAssign): Ditto.
(WebCore):
(WebCore::isAATFont):
(WebCore::FontPlatformData::harfbuzzFace):

  • platform/graphics/harfbuzz/ng/HarfBuzzFace.cpp: Added.

(WebCore):
(WebCore::harfbuzzFaceCache):
(WebCore::HarfBuzzFace::HarfBuzzFace):
(WebCore::HarfBuzzFace::~HarfBuzzFace):

  • platform/graphics/harfbuzz/ng/HarfBuzzFace.h: Added.

(WebCore):
(HarfBuzzFace):
(WebCore::HarfBuzzFace::create):

  • platform/graphics/harfbuzz/ng/HarfBuzzFaceCoreText.cpp: Added.

(WebCore):
(WebCore::floatToHarfBuzzPosition):
(WebCore::getGlyph):
(WebCore::getGlyphHorizontalAdvance):
(WebCore::getGlyphHorizontalOrigin):
(WebCore::getGlyphExtents):
(WebCore::harfbuzzCoreTextGetFontFuncs):
(WebCore::releaseTableData):
(WebCore::harfbuzzCoreTextGetTable):
(WebCore::HarfBuzzFace::createFace):
(WebCore::HarfBuzzFace::createFont):
(WebCore::HarfBuzzShaper::createGlyphBufferAdvance):

  • platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp: Added.

(WebCore):
(WebCore::harfbuzzPositionToFloat):
(WebCore::HarfBuzzShaper::HarfBuzzRun::HarfBuzzRun):
(WebCore::HarfBuzzShaper::HarfBuzzRun::setGlyphAndPositions):
(WebCore::HarfBuzzShaper::HarfBuzzRun::characterIndexForXPosition):
(WebCore::HarfBuzzShaper::HarfBuzzRun::xPositionForOffset):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):
(WebCore::HarfBuzzShaper::~HarfBuzzShaper):
(WebCore::HarfBuzzShaper::setFontFeatures):
(WebCore::HarfBuzzShaper::shape):
(WebCore::HarfBuzzShaper::setupHarfBuzzRun):
(WebCore::HarfBuzzShaper::shapeHarfBuzzRun):
(WebCore::HarfBuzzShaper::setGlyphPositionsForHarfBuzzRun):
(WebCore::HarfBuzzShaper::offsetForPosition):
(WebCore::HarfBuzzShaper::selectionRect):

  • platform/graphics/harfbuzz/ng/HarfBuzzShaper.h: Added.

(WebCore):
(HarfBuzzShaper):
(WebCore::HarfBuzzShaper::totalWidth):
(HarfBuzzRun):
(WebCore::HarfBuzzShaper::HarfBuzzRun::create):
(WebCore::HarfBuzzShaper::HarfBuzzRun::setWidth):
(WebCore::HarfBuzzShaper::HarfBuzzRun::numCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzRun::numGlyphs):
(WebCore::HarfBuzzShaper::HarfBuzzRun::width):
(WebCore::HarfBuzzShaper::HarfBuzzRun::rtl):

  • platform/graphics/mac/FontComplexTextMac.cpp:

(WebCore):
(WebCore::preferHarfBuzz): Added.
(WebCore::Font::selectionRectForComplexText): Use HarfBuzzShaper if font-feature-settings exists.
(WebCore::Font::drawComplexText): Ditto.
(WebCore::Font::floatWidthForComplexText): Ditto.
(WebCore::Font::offsetForPositionForComplexText): Ditto.

LayoutTests:

  • platform/chromium/TestExpectations: Updated expectation of css3/font-feature-settings-rendering.html. The result need to be rebaselined.
20:39 Changeset [120155] by dominicc@chromium.org

[Chromium] Unreviewed: Update expectations

fast/forms/datetimelocal/input-valueasdate-datetimelocal.html is
passing, so I expanded fast/forms/datetimelocal to TEXT failures
for all other tests. See bug 29359.

Likewise for
fast/forms/color/input-value-sanitization-color.html. See bug
88951.

fast/js/integer-division-neg2tothe32-by-neg1.html is passing on
Chromium WebKit waterfall, so updating CRASH to PASS CRASH. See
bug 81732.

  • platform/chromium/TestExpectations:
20:31 Changeset [120154] by macpherson@chromium.org

WIP: Implement CSS Variables Standard.
https://bugs.webkit.org/show_bug.cgi?id=85580

Reviewed by Ojan Vafai.

Implement CSS Variables Module Level 1. (See http://www.w3.org/TR/css-variables/)

A HashMap of properties is referenced by RenderStyle, and used to store variables as strings.
That HashMap is copy-on-write, and unless new variables are defined is simply a pointer to the
parent's definitions. At usage time the variable's value is parsed according to the CSS property
where it is used.
Variables can:

Define lists of values (ie. entire shorthand values).
Define individual values.
Refer to other variables. (Cycle detection is implemented).

Please see the supplied test cases for example usage.

Missing features:

CSS variables cannot yet be used inside some functions such as -webkit-calc.

Covered by existing test suite under fast/css/variables.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSGrammar.y:
  • css/CSSParser.cpp:

(WebCore):
(WebCore::filterProperties):
(WebCore::CSSParser::createStylePropertySet):
(WebCore::CSSParser::validUnit):
(WebCore::CSSParser::createPrimitiveNumericValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::storeVariableDeclaration):
(WebCore::CSSParser::detectDashToken):
(WebCore::CSSParser::lex):

  • css/CSSParser.h:

(CSSParser):

  • css/CSSParserValues.cpp:

(WebCore::CSSParserValue::createCSSValue):

  • css/CSSPrimitiveValue.cpp:

(WebCore::isValidCSSUnitTypeForDoubleConversion):
(WebCore::CSSPrimitiveValue::getStringValue):
(WebCore::CSSPrimitiveValue::customSerializeResolvingVariables):
(WebCore):

  • css/CSSPrimitiveValue.h:

(CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::isVariableName):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSValue.cpp:

(WebCore::CSSValue::serializeResolvingVariables):
(WebCore):
(WebCore::CSSValue::destroy):

  • css/CSSValue.h:

(CSSValue):
(WebCore::CSSValue::isVariableValue):

  • css/CSSValueList.cpp:

(WebCore):
(WebCore::CSSValueList::customSerializeResolvingVariables):

  • css/CSSValueList.h:

(CSSValueList):

  • css/CSSVariableValue.h: Added.

(WebCore):
(CSSVariableValue):
(WebCore::CSSVariableValue::create):
(WebCore::CSSVariableValue::name):
(WebCore::CSSVariableValue::value):
(WebCore::CSSVariableValue::CSSVariableValue):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

  • css/StyleResolver.h:
  • css/WebKitCSSTransformValue.cpp:

(WebCore):
(WebCore::WebKitCSSTransformValue::customSerializeResolvingVariables):

  • css/WebKitCSSTransformValue.h:

(WebKitCSSTransformValue):

  • css/makeprop.pl:
  • rendering/style/RenderStyle.h:
  • rendering/style/StyleVariableData.h: Added.

(WebCore):
(StyleVariableData):
(WebCore::StyleVariableData::create):
(WebCore::StyleVariableData::copy):
(WebCore::StyleVariableData::operator==):
(WebCore::StyleVariableData::operator!=):
(WebCore::StyleVariableData::setVariable):
(WebCore::StyleVariableData::StyleVariableData):

20:23 Changeset [120153] by ggaren@apple.com

Try to fix the build.

Maybe don't export inlined functions.

  • wtf/ThreadingPrimitives.h:

(WTF::MutexTryLocker::MutexTryLocker):
(WTF::MutexTryLocker::~MutexTryLocker):
(WTF::MutexTryLocker::locked):

20:05 Changeset [120152] by dominicc@chromium.org

[Chromium] Unreviewed: Update expectations for video-media-source-add-and-remove-ids.html
https://bugs.webkit.org/show_bug.cgi?id=88949

  • platform/chromium/TestExpectations:
19:50 Changeset [120151] by ggaren@apple.com

Build fix for case-sensitive file systems: use the right case.

  • heap/ListableHandler.h:
19:37 Changeset [120150] by lforschler@apple.com

Wrap bot types inside ().
https://bugs.webkit.org/show_bug.cgi?id=88893

Reviewed by Stephanie Lewis.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
19:06 Changeset [120149] by ggaren@apple.com

GC should be 1.7X faster
https://bugs.webkit.org/show_bug.cgi?id=88840

Reviewed by Oliver Hunt.

I profiled, and removed anything that showed up as a concurrency
bottleneck. Then, I added 3 threads to our max thread count, since we
can scale up to more threads now.

  • heap/BlockAllocator.cpp:

(JSC::BlockAllocator::BlockAllocator):
(JSC::BlockAllocator::~BlockAllocator):
(JSC::BlockAllocator::releaseFreeBlocks):
(JSC::BlockAllocator::waitForRelativeTimeWhileHoldingLock):
(JSC::BlockAllocator::waitForRelativeTime):
(JSC::BlockAllocator::blockFreeingThreadMain):

  • heap/BlockAllocator.h:

(BlockAllocator):
(JSC::BlockAllocator::allocate):
(JSC::BlockAllocator::deallocate): Use a spin lock for the common case
where we're just popping a linked list. (A pthread mutex would sleep our
thread even if the lock were only contended for a microsecond.)

Scope the lock to avoid holding it while allocating VM, since that's a
slow activity and it doesn't modify any of our data structures.

We still use a pthread mutex to handle our condition variable since we
have to, and it's not a hot path.

  • heap/CopiedSpace.cpp:

(JSC::CopiedSpace::CopiedSpace):
(JSC::CopiedSpace::doneFillingBlock):

  • heap/CopiedSpace.h:

(JSC::CopiedSpace::CopiedSpace): Use a spin lock for the to space lock,
since it just guards linked list and hash table manipulation.

  • heap/MarkStack.cpp:

(JSC::MarkStackSegmentAllocator::MarkStackSegmentAllocator):
(JSC::MarkStackSegmentAllocator::allocate):
(JSC::MarkStackSegmentAllocator::release):
(JSC::MarkStackSegmentAllocator::shrinkReserve): Use a spin lock, since
we're just managing a linked list.

(JSC::MarkStackArray::donateSomeCellsTo): Changed donation to be proportional
to our current stack size. This fixes cases where we used to donate too
much. Interestingly, donating too much was starving the donor (when it
ran out of work later) *and* the recipient (since it had to wait on a
long donation operation to complete before it could acquire the lock).

In the worst case, we're still guaranteed to donate N cells in roughly log N time.

This change also fixes cases where we used to donate too little, since
we would always keep a fixed minimum number of cells. In the worst case,
with N marking threads, would could have N large object graph roots in
our stack for the duration of GC, and scale to only 1 thread.

It's an interesting observation that a single object in the mark stack
might represent an arbitrarily large object graph -- and only the act
of marking can find out.

(JSC::MarkStackArray::stealSomeCellsFrom): Steal in proportion to idle
threads. Once again, this fixes cases where constants could cause us
to steal too much or too little.

(JSC::SlotVisitor::donateKnownParallel): Always wake up other threads
if they're idle. We can afford to do this because we're conservative
about when we donate.

(JSC::SlotVisitor::drainFromShared):

  • heap/MarkStack.h:

(MarkStackSegmentAllocator):
(MarkStackArray):
(JSC):

  • heap/SlotVisitor.h: Merged the "should I donate?" decision into a

single function, for simplicity.

  • runtime/Options.cpp:

(minimumNumberOfScansBetweenRebalance): Reduced the delay before donation
a lot. We can afford to do this because, in the common case, donation is
a single branch that decides not to donate.

(cpusToUse): Use more CPUs now, since we scale better now.

  • runtime/Options.h:

(Options): Removed now-unused variables.

18:29 Changeset [120148] by fpizlo@apple.com

REGRESSION(120121): inspector tests crash in DFG
https://bugs.webkit.org/show_bug.cgi?id=88941

Reviewed by Geoffrey Garen.

The CFG simplifier has two different ways of fixing up GetLocal, Phantom, and Flush. If we've
already fixed up the node one way, we shouldn't try the other way. The reason why we shouldn't
is that the second way depends on the node referring to other nodes in the to-be-jettisoned
block. After fixup they potentially will refer to nodes in the block being merged to.

  • dfg/DFGCFGSimplificationPhase.cpp:

(JSC::DFG::CFGSimplificationPhase::fixPossibleGetLocal):
(JSC::DFG::CFGSimplificationPhase::mergeBlocks):

18:28 Changeset [120147] by morrita@google.com

Shadow Pseudo ID should be able to nest to point nested shadow DOM.
https://bugs.webkit.org/show_bug.cgi?id=62218

Reviewed by Dimitri Glazkov.

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

  • updateSpecifiersWithElementName() didn't take nesting into account. tag history can contain selector entries which isn't marked as ShadowDescendant yet. such entry can be found by investigating isUnknownPseudoElement().
  • SelectorChecker::checkSelector() was too strict. Unknown pseudo elements are essentially a kind of class or id in implementation perspective. For such, rejecting by missing elementStyle doesn't make sense: It isn't a pseudo but a real element for WebCore after all.
  • Added Internals::setShadowPseudoId() to create a test harness whose DOM tree contains pseudo shadow ids.

Before this change, following selecdtor chain is created for "p::-shadow-child::-nested-shadow-child":

[both tag name and -shadow-id are set] <-(ShadowDescendant)- [-nested-shadow-id]

What we want, which is created by this change is:

[tag] <-(ShadowDescendant)- [-shadow-id is set] <-(ShadowdescenDant)- [-nested-shadow-id]

Test: fast/dom/shadow/shadow-nested-pseudo-id.html

  • WebCore.exp.in:
  • css/CSSParser.cpp:

(WebCore::CSSParser::updateSpecifiersWithElementName):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOneSelector):

  • testing/Internals.cpp:

(WebCore::Internals::setShadowPseudoId):
(WebCore):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit2:

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:

LayoutTests:

  • fast/dom/shadow/shadow-nested-pseudo-id-expected.txt: Added.
  • fast/dom/shadow/shadow-nested-pseudo-id.html: Added.
17:42 BuildingOnWindows edited by alex.christensen@flexsim.com
There is no directory called OpenSource. LayoutTests is just in the … (diff)
17:39 Changeset [120146] by ojan@chromium.org

Chromium rebaselines after r120135. The new results are clearly more correct.

  • platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-expected.png:
  • platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png:
  • platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png:
17:33 Changeset [120145] by commit-queue@webkit.org

[soup] Prevent setting or editing httpOnly cookies from JavaScript
https://bugs.webkit.org/show_bug.cgi?id=88760

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-12
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Prevent setting or overwriting httpOnly cookies from JavaScript.
Fix setCookies() so that it parses all the cookies and not just
the first one.

Test: http/tests/cookies/js-get-and-set-http-only-cookie.html

  • platform/network/soup/CookieJarSoup.cpp:

(WebCore::httpOnlyCookieExists):
(WebCore):
(WebCore::setCookies):

Tools:

Update libsoup to v2.39.2, glib to v2.33.2 and glib-networking
to v2.33.2 for both GTK and EFL ports.

  • efl/jhbuild.modules:
  • gtk/jhbuild.modules:

LayoutTests:

Unskip http/tests/cookies/js-get-and-set-http-only-cookie.html for
both GTK and EFL ports now that that we don't allow overwriting
httpOnly cookies from JavaScript anymore.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
17:28 Changeset [120144] by commit-queue@webkit.org

[EFL] Enable SHADOW_DOM flag
https://bugs.webkit.org/show_bug.cgi?id=87732

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-12
Reviewed by Kentaro Hara.

.:

Enable SHADOW_DOM flag by default at compile time for EFL port.

  • Source/autotools/symbols.filter: Fix GTK build by adding new symbol.
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmakeconfig.h.cmake:

Source/WebCore:

Test: fast/dom/shadow/shadow-root-innerHTML.html

  • dom/ShadowRoot.idl: Add JSGenerateToJSObject extended attribute so

that the ShadowRoot properties are accessible on JS side.

  • testing/Internals.idl: Fix SHADOW_DOM ifdef check.

Source/WebKit:

Add WebCore/bindings/generic to include directories so
that we can include RuntimeEnabledFeatures.h.

  • CMakeLists.txt:

Source/WebKit/efl:

Add Ewk setting to toggle Shadow DOM support at runtime.

  • ewk/ewk_settings.cpp:

(ewk_settings_shadow_dom_enable_get):
(ewk_settings_shadow_dom_enable_set):

  • ewk/ewk_settings.h:

Tools:

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues): Enable
SHADOW_DOM by default in DRT.

  • DumpRenderTree/efl/DumpRenderTreeView.cpp:

(onFocusCanCycle): Enable focus cycling in EFL DRT to behave like
Chromium and Mac ports.
(drtViewAdd):

  • Scripts/webkitperl/FeatureList.pm: Enable SHADOW_DOM flag by default

at compile time for EFL port.

LayoutTests:

Unskip most of the test cases associated to Shadow DOM now that the
feature is enabled by default for EFL's DRT.

  • platform/efl/Skipped:
  • platform/efl/TestExpectations:
  • platform/efl/fast/dom/shadow/form-in-shadow-expected.txt: Added.
  • platform/efl/fast/dom/shadow/tab-order-iframe-and-shadow-expected.txt: Added.
17:23 Changeset [120143] by leo.yang@torchmobile.com.cn

Dynamic hash table in DOMObjectHashTableMap is wrong in multiple threads
https://bugs.webkit.org/show_bug.cgi?id=87334

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Add a copy member function to JSC::HasTable. This function will copy all data
members except for *table* which contains thread specific data that prevents
up copying it. When you want to copy a JSC::HashTable that was constructed
on another thread you should call JSC::HashTable::copy().

  • runtime/Lookup.h:

(JSC::HashTable::copy):
(HashTable):

Source/WebCore:

Adapt to JSC::HashTable::copy to avoid copy dynamic table member of a HashTable.
The dynamic table may be allocated on other thread and contains thread specific
identifiers. For example, a hash table of JSEntryArray was first initialized on a
worker thread, and then the user reloaded the page, another worker thread is
created due to reload, the dynamic allocated table in *staticTable* is specific
to the first worker thread which has died. If the user reload the page again,
the dynamic table will be freed and memory corruption will occur.

No functionalities changed, no new tests.

  • bindings/js/DOMObjectHashTableMap.h:

(WebCore::DOMObjectHashTableMap::get):

17:10 Changeset [120142] by commit-queue@webkit.org

[chromium] Port Canvas2DLayerBridge over to WebExternalTextureLayer
https://bugs.webkit.org/show_bug.cgi?id=88597

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

Source/Platform:

This adds two new APIs to WebExternalTextureLayer that are used by the accelerated 2d canvas path:

  • willModifyTexture() is called to indicate that a system outside the compositor's control is about to modify

the texture backing the WebExternalTextureLayer. This indicates to the compositor that it needs to avoid
producing more frames using this texture until it can do a full commit - either by double buffering or
appropriate flow control.

  • setRateLimitContext() is called to enable rate limiting for this texture. The rate limiting logic blocks if

too many invalidate() or invalidateRect() calls are made on the texture outside of the context of a
WebLayerTreeViewClient::updateAnimations() call to prevent a non-vsynced producer from getting too far ahead of
the compositor.

  • chromium/public/WebExternalTextureLayer.h:

(WebKit::WebExternalTextureLayer::WebExternalTextureLayer):
(WebExternalTextureLayer):

Source/WebCore:

This converts Canvas2DLayerBridge to using public WebLayer API types instead of LayerChromium types.

  • platform/graphics/chromium/Canvas2DLayerBridge.cpp:

(WebCore::AcceleratedDeviceContext::AcceleratedDeviceContext):
(WebCore::AcceleratedDeviceContext::prepareForDraw):
(AcceleratedDeviceContext):
(WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::skCanvas):
(WebCore::Canvas2DLayerBridge::prepareTexture):
(WebCore::Canvas2DLayerBridge::context):
(WebCore::Canvas2DLayerBridge::layer):
(WebCore::Canvas2DLayerBridge::contextAcquired):

  • platform/graphics/chromium/Canvas2DLayerBridge.h:

(WebCore):
(Canvas2DLayerBridge):

Source/WebKit/chromium:

Implementations for new WebExternalTextureLayer APIs, updates test.

  • src/WebExternalTextureLayer.cpp:

(WebKit::WebExternalTextureLayer::willModifyTexture):
(WebKit):
(WebKit::WebExternalTextureLayer::setRateLimitContext):

  • tests/Canvas2DLayerBridgeTest.cpp:

(Canvas2DLayerBridgeTest::fullLifecycleTest):

17:04 Changeset [120141] by lforschler@apple.com

Merged r119280 -> <rdar://problem/11620927>

17:01 Changeset [120140] by ojan@chromium.org

Add some expecations to green the chromium tree while the bugs are resolved.

  • platform/chromium/TestExpectations:
16:56 Changeset [120139] by lforschler@apple.com

Merged r119758 -> <rdar://problem/11430118>

16:40 Changeset [120138] by beidson@apple.com

https://bugs.webkit.org/show_bug.cgi?id=88928
[WK2] New http/tests/loading/* tests fail

There's some latent timing issue with WK2 tests that prevents us from getting the last load delegate callback
before finishing the test.

Fortunately for the sake of these tests the load delegate dumps are entirely irrelevant.
Moving them from http/tests/loading to http/tests/misc and getting new, cleaner results fixes this.

Rubberstamped by Darin Adler.

  • http/tests/misc/embed-image-load-outlives-gc-without-crashing-expected.txt: Renamed from LayoutTests/http/tests/loading/embed-image-load-outlives-gc-without-crashing-expected.txt.
  • http/tests/misc/embed-image-load-outlives-gc-without-crashing.html: Renamed from LayoutTests/http/tests/loading/embed-image-load-outlives-gc-without-crashing.html.
  • http/tests/misc/image-input-type-outlives-gc-without-crashing-expected.txt: Renamed from LayoutTests/http/tests/loading/image-input-type-outlives-gc-without-crashing-expected.txt.
  • http/tests/misc/image-input-type-outlives-gc-without-crashing.html: Renamed from LayoutTests/http/tests/loading/image-input-type-outlives-gc-without-crashing.html.
  • http/tests/misc/image-load-outlives-gc-without-crashing-expected.txt: Renamed from LayoutTests/http/tests/loading/image-load-outlives-gc-without-crashing-expected.txt.
  • http/tests/misc/image-load-outlives-gc-without-crashing.html: Renamed from LayoutTests/http/tests/loading/image-load-outlives-gc-without-crashing.html.
  • http/tests/misc/object-image-load-outlives-gc-without-crashing-expected.txt: Renamed from LayoutTests/http/tests/loading/object-image-load-outlives-gc-without-crashing-expected.txt.
  • http/tests/misc/object-image-load-outlives-gc-without-crashing.html: Renamed from LayoutTests/http/tests/loading/object-image-load-outlives-gc-without-crashing.html.
  • http/tests/misc/resources/slowimage.php: Renamed from LayoutTests/http/tests/loading/resources/slowimage.php.
  • http/tests/misc/svg-image-load-outlives-gc-without-crashing-expected.txt: Renamed from LayoutTests/http/tests/loading/svg-image-load-outlives-gc-without-crashing-expected.txt.
  • http/tests/misc/svg-image-load-outlives-gc-without-crashing.html: Renamed from LayoutTests/http/tests/loading/svg-image-load-outlives-gc-without-crashing.html.
  • http/tests/misc/video-poster-image-load-outlives-gc-without-crashing-expected.txt: Renamed from LayoutTests/http/tests/loading/video-poster-image-load-outlives-gc-without-crashing-expected.txt.
  • http/tests/misc/video-poster-image-load-outlives-gc-without-crashing.html: Renamed from LayoutTests/http/tests/loading/video-poster-image-load-outlives-gc-without-crashing.html.
16:16 Changeset [120137] by fpizlo@apple.com

DFG should not ASSERT if you have a double use of a variable that is not revealed to be a double
until after CFG simplification
https://bugs.webkit.org/show_bug.cgi?id=88927
<rdar://problem/11513971>

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

Speculation fixup needs to run if simplification did things, because simplification can change
predictions - particularly if you had a control flow path that stored weird things into a
variable, but that path got axed by the simplifier.

Running fixup in the fixpoint requires making it idempotent, which it previously wasn't. Only
one place needed to be changed, namely the un-MustGenerate-ion of ValueToInt32.

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

LayoutTests:

Reviewed by Geoffrey Garen.

  • fast/js/dfg-double-use-of-post-simplification-double-prediction-expected.txt: Added.
  • fast/js/dfg-double-use-of-post-simplification-double-prediction.html: Added.
  • fast/js/script-tests/dfg-double-use-of-post-simplification-double-prediction.js: Added.

(foo):

16:07 Changeset [120136] by alexis.menard@openbossa.org

Fix packing in StyleBoxData for Windows.
https://bugs.webkit.org/show_bug.cgi?id=88858

Reviewed by Tony Chang.

MSVC doesn't pack bitfields if the types are mixed.
We can safely change the bool type to an unsigned so
the packing will happen. I have added a compile assert
for future regressions.

No new tests : we should not see any regressions.

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

(StyleBoxData):

16:04 Changeset [120135] by enne@google.com

[chromium] Paint scrollbars on WebKit thread and composite those textures
https://bugs.webkit.org/show_bug.cgi?id=88145

Reviewed by James Robinson.

Source/WebCore:

Scrollbars were previously painted and uploaded on the compositor
thread. This isn't possible to do for many scrollbar themes. This
patch changes ScrollbarLayerChromium to paint the scrollbar into two
parts: the thumb, and everything else. These are uploaded into
textures and synced over to the CCScrollbarImpl where they are
composited and drawn.

Mac and overlay scrollbars are still not enabled to have compositor
thread-updated scrollbars.

As a bonus, fix LayerRendererChromium::drawTextureQuad to draw quads
that do not fill the entire layer bounds.

Tested by existing layout and unit tests by removing the condition
that these scrollbar layers are only created when the threaded proxy
exists.

  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::scrollbarLayerDidChange):

  • platform/ScrollbarThemeComposite.cpp:

(WebCore::ScrollbarThemeComposite::thumbRect):
(WebCore):

  • platform/ScrollbarThemeComposite.h:

(ScrollbarThemeComposite):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawTextureQuad):

  • platform/graphics/chromium/ScrollbarLayerChromium.cpp:

(WebCore::ScrollbarLayerChromium::ScrollbarLayerChromium):
(WebCore::ScrollbarLayerChromium::theme):
(WebCore):
(WebCore::ScrollbarLayerChromium::pushPropertiesTo):
(ScrollbarBackgroundPainter):
(WebCore::ScrollbarBackgroundPainter::create):
(WebCore::ScrollbarBackgroundPainter::paint):
(WebCore::ScrollbarBackgroundPainter::ScrollbarBackgroundPainter):
(ScrollbarThumbPainter):
(WebCore::ScrollbarThumbPainter::create):
(WebCore::ScrollbarThumbPainter::paint):
(WebCore::ScrollbarThumbPainter::ScrollbarThumbPainter):
(WebCore::ScrollbarLayerChromium::setLayerTreeHost):
(WebCore::ScrollbarLayerChromium::createTextureUpdaterIfNeeded):
(WebCore::ScrollbarLayerChromium::updatePart):
(WebCore::ScrollbarLayerChromium::update):

  • platform/graphics/chromium/ScrollbarLayerChromium.h:

(WebCore):
(ScrollbarLayerChromium):

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

(WebCore::CCScrollbarLayerImpl::CCScrollbarLayerImpl):
(WebCore::CCScrollbarLayerImpl::appendQuads):

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

(WebCore::CCScrollbarLayerImpl::setBackgroundTextureId):
(WebCore::CCScrollbarLayerImpl::setThumbTextureId):
(CCScrollbarLayerImpl):

Source/WebKit/chromium:

Remove scrollbarLayerLostContext test that no longer makes sense. The
compositor won't draw at all after a lost context if it has no
contents.

  • tests/CCLayerTreeHostImplTest.cpp:
15:52 Changeset [120134] by commit-queue@webkit.org

[BlackBerry] Crash when rendering web page that's being destroyed
https://bugs.webkit.org/show_bug.cgi?id=88915

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-06-12
Reviewed by Rob Buis.

PR #164943

This was a null pointer dereference that happened when the compositor
was asked to render after being disconnected from its web page.

  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositorPrivate::render):

15:47 Changeset [120133] by commit-queue@webkit.org

WinLauncher should show loading errors
https://bugs.webkit.org/show_bug.cgi?id=80760

Patch by Ashod Nakashian <ashodnakashian@yahoo.com> on 2012-06-12
Reviewed by Brent Fulgham.

  • WinLauncher/WinLauncher.cpp: Added load-fail handler to show messagebox with error.

(WinLauncherWebHost::didFailProvisionalLoadWithError):

  • WinLauncher/WinLauncher.h:

(WinLauncherWebHost::didFailProvisionalLoadWithError):
(WinLauncherWebHost):

15:39 Changeset [120132] by tony@chromium.org

Replaced items in a flexbox should be coerced to display:block
https://bugs.webkit.org/show_bug.cgi?id=87068

Reviewed by Ojan Vafai.

Source/WebCore:

The flexbox spec lists HTML tags that should automatically be converted
to display:block when a flex child. It also says that atomic inline-level
children should become block (e.g., inline-table should be treated as table).
http://dev.w3.org/csswg/css3-flexbox/#flex-items

Test: css3/flexbox/flexitem.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

LayoutTests:

  • css3/flexbox/flexitem-expected.txt: Added.
  • css3/flexbox/flexitem.html: Added.
  • css3/flexbox/resources/flexbox.js:

(checkExpectedValues):

15:36 Changeset [120131] by jsbell@chromium.org

IndexedDB: ObjectStore/Index shouldn't hold reference to backing store
https://bugs.webkit.org/show_bug.cgi?id=83074

Reviewed by Tony Chang.

Source/WebCore:

We should be able to collect and close the leveldb backing store as soon as the database
connection is closed, but the IDBObjectStoreBackendImpl and IDBIndexBackendImpl were
holding RefPtrs, and those objects are kept alive by script references.

Replaced RefPtrs to the IDBBackingStore with pointers to the IDBDatabase. On the back end,
IDBDatabaseBackendImpl maintains a RefPtr to the IDBObjectStoreBackendImpl object, so
a raw pointer back is safe. On the front end, the IDBObjectStore maintains a RefPtr to
the IDBDatabase so script can navigate upwards. Ditto on both ends for the ObjectStore/Index
relationship. The frontend objects maintain RefPtrs to the backend objects, so the backend
objects and their owners are maintained as long as there's a script reference. To ensure
that all LevelDB objects are destructed in the right order, transactions indirectly track all
open cursors and ensure they are closed when the transaction finishes, and database closing
is explicitly prevented from occurring until transactions are complete.

Also made IDBDatabaseBackendImpl handle a null IDBFactoryBackendImpl pointer, for testing.

Tests: storage/indexeddb/database-close.html

storage/indexeddb/persistence.html
[Chromium] webkit_unit_tests --gtest_filter=IDBDatabaseBackendTest.BackingStoreRetention

  • Modules/indexeddb/IDBCursorBackendImpl.cpp:

(WebCore::IDBCursorBackendImpl::close): Release LevelDB resources when closed to allow backing store to close.

  • Modules/indexeddb/IDBCursorBackendImpl.h:

(WebCore):

  • Modules/indexeddb/IDBDatabase.cpp: Ensure connection close deferred until all transactions are finished.

(WebCore::IDBDatabase::transactionCreated): Accounting.
(WebCore::IDBDatabase::transactionFinished): Accounting.
(WebCore::IDBDatabase::close):
(WebCore):
(WebCore::IDBDatabase::closeConnection):

  • Modules/indexeddb/IDBDatabase.h:

(IDBDatabase):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Track outstanding transactions for forced-close scenarios.

(WebCore::IDBDatabaseBackendImpl::~IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::createObjectStore): Don't pass in backing store reference.
(WebCore::IDBDatabaseBackendImpl::setVersion): Use transaction() for consistent accounting.
(WebCore::IDBDatabaseBackendImpl::transactionFinished): Accounting.
(WebCore::IDBDatabaseBackendImpl::transaction): Accounting.
(WebCore::IDBDatabaseBackendImpl::close): Unregister from factory when last connection is closed.
(WebCore::IDBDatabaseBackendImpl::loadObjectStores): Don't pass in backing store reference.
(WebCore::IDBDatabaseBackendImpl::removeObjectStoreFromMap):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(WebCore):
(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBFactoryBackendImpl.cpp:

(WebCore::IDBFactoryBackendImpl::deleteDatabase): Don't hang on to deleted databases eternally.

  • Modules/indexeddb/IDBFactoryBackendImpl.h: Backend map controls IDBDatabaseBackend lifetimes.

(IDBFactoryBackendImpl):

  • Modules/indexeddb/IDBIndexBackendImpl.cpp: Don't hold backing store references.

(WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):

  • Modules/indexeddb/IDBIndexBackendImpl.h:

(WebCore::IDBIndexBackendImpl::create):
(IDBIndexBackendImpl):
(WebCore::IDBIndexBackendImpl::backingStore):
(WebCore::IDBIndexBackendImpl::databaseId):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: Don't hold backing store references.

(WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
(WebCore::IDBObjectStoreBackendImpl::createIndex):
(WebCore::IDBObjectStoreBackendImpl::loadIndexes):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.h:

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

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess):

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::IDBTransaction): For IDBDatabase accounting, allow ref during ctor.
(WebCore::IDBTransaction::onAbort): Accounting.
(WebCore::IDBTransaction::onComplete): Accounting.

  • Modules/indexeddb/IDBTransaction.h:

(WebCore::IDBTransaction::isVersionChange): Convenience function.
(IDBTransaction):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::abort): Cleanup ordering to allow backing store to close.
(WebCore::IDBTransactionBackendImpl::commit): Cleanup ordering to allow backing store to close.

Source/WebKit/chromium:

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

(WebCore):
(WebCore::TEST):

LayoutTests:

The storage/indexeddb/persistence.html test verifies http://webkit.org/b/88788 which
was revealed by this patch set. The storage/indexeddb/database-close.html test verifies
the precise database connection closing semantics defined in the IDB spec.

  • storage/indexeddb/database-close-expected.txt: Added.
  • storage/indexeddb/database-close.html: Added.
  • storage/indexeddb/persistence-expected.txt: Added.
  • storage/indexeddb/persistence.html: Added.
  • storage/indexeddb/resources/database-close.js: Added.

(test):
(openConnection.request.onsuccess.request.onsuccess):
(openConnection.request.onsuccess):
(openConnection):
(openVersionChangeConnection.request2.onsuccess):
(openVersionChangeConnection):
(testClose.transactionCompleted):
(testClose.request.onsuccess):
(testClose):

  • storage/indexeddb/resources/persistence.js: Added.

(test):
(openAndChangeVersion.request.onsuccess.request.onsuccess.trans.oncomplete):
(openAndChangeVersion.request.onsuccess.request.onsuccess):
(openAndChangeVersion.request.onsuccess):

15:19 Changeset [120130] by ryuan.choi@samsung.com

[EFL][WK2] Add MiniBrowserEfl.
https://bugs.webkit.org/show_bug.cgi?id=61850

Reviewed by Chang Shu.

Implement MiniBrowser for EFL.

  • CMakeLists.txt:
  • MiniBrowser/efl/CMakeLists.txt: Added.
  • MiniBrowser/efl/main.c: Added.

(_MiniBrowser):
(main_signal_exit):
(on_ecore_evas_resize):
(browserCreate):
(main):

15:12 Changeset [120129] by enne@google.com

[chromium] Don't set visible layer rect in CCLayerTreeHost paint iteration
https://bugs.webkit.org/show_bug.cgi?id=88895

Reviewed by James Robinson.

We should only set visible layer rects during the recursion in
CClayerTreeHostCommon and not while we're painting. This is one last
straggling piece of code that never got moved.

Tested by existing mask-related layout tests.

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

(WebCore::CCLayerTreeHost::paintMasksForRenderSurface):

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

(WebCore::calculateVisibleAndScissorRectsInternal):

15:02 Changeset [120128] by danakj@chromium.org

[chromium] Set contentBounds() on impl layers in CCLayerTreeHostCommonTests
https://bugs.webkit.org/show_bug.cgi?id=88903

Reviewed by Adrienne Walker.

Without setting the contentBounds() on impl layers, the visibleLayerRect
will be wrong. This is not the case for main-thread layers, which most
of the tests in this file use. But this is a potential serious confusion
for future test implementors so I'd like to make it explicit now.

  • tests/CCLayerTreeHostCommonTest.cpp:
14:57 Changeset [120127] by danakj@chromium.org

[chromium] Return empty visibleLayerRect for layers with empty content bounds
https://bugs.webkit.org/show_bug.cgi?id=88901

Reviewed by Adrienne Walker.

Source/WebCore:

This change should only affect tests. Currently if you set up a
CCLayerImpl with some bounds, but don't set the contentBounds, then
they are empty by default. In this case the visibleLayerRect gets
set inappropriately to the layer's target surface contentRect which
in a completely different coordinate space.

Fixed up tests that were passing bogusly and failed after this change.

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

(WebCore::calculateVisibleLayerRect):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:
14:55 Changeset [120126] by ossy@webkit.org

[Qt] Unreviwed nightly gardening.

  • platform/qt/Skipped:
14:46 Changeset [120125] by enne@google.com

[chromium] ScrollingCoordinator::setScrollLayer should update scroll layer ids
https://bugs.webkit.org/show_bug.cgi?id=88882

Reviewed by James Robinson.

Tested manually, as scrollbar layers are currently only created when
threaded compositing is enabled and none of those layout tests trigger
this bug.

  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::ScrollingCoordinatorPrivate::setScrollLayer):
(ScrollingCoordinatorPrivate):
(WebCore::ScrollingCoordinatorPrivate::setHorizontalScrollbarLayer):
(WebCore::ScrollingCoordinatorPrivate::setVerticalScrollbarLayer):
(WebCore::createScrollbarLayer):
(WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
(WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):

  • platform/graphics/chromium/ScrollbarLayerChromium.h:

(WebCore::ScrollbarLayerChromium::setScrollLayerId):
(ScrollbarLayerChromium):

  • platform/graphics/chromium/TreeSynchronizer.cpp:

(WebCore::TreeSynchronizer::updateScrollbarLayerPointersRecursive):

14:44 Changeset [120124] by zhajiang@rim.com

[BlackBerry] Scale was incorrect when reloading a simple web page after initial load
https://bugs.webkit.org/show_bug.cgi?id=88889

Reviewed by Adam Treat.
Patch by Jacky Jiang <zhajiang@rim.com>

PR: 164442
When we were reloading a web page with the load type FrameLoadTypeSame
after the initial load, the first layout timer was fired after the load
Finished state, in which case the web page would have no chance to zoom
to the initial scale during the layout as it was only for load
Committed state. This patch takes care of it.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::layoutFinished):
(BlackBerry::WebKit::WebPagePrivate::shouldZoomToInitialScaleOnLoad):
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::zoomToInitialScaleOnLoad):

  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidFirstVisuallyNonEmptyLayout):

14:40 Changeset [120123] by ossy@webkit.org

[Qt] Unreviwed nightly gardening.

  • platform/qt/Skipped: Remove rolled out tests.
  • platform/qt/fast/multicol/span/clone-flexbox-expected.txt: Updated after r120100.
14:39 Changeset [120122] by commit-queue@webkit.org

Source/WebCore: [chromium mac] Don't include things in subframeworks of
ApplicationServices.framework.

Subframeworks move around from SDK to SDK and OS release to OS
release, but just using the top-level umbrella framework guarantees
forward compatibility. When building for Chromium Mac, just #include
<ApplicationServices/ApplicationServices.h> instead of reaching in to
subframeworks.

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

Patch by Mark Mentovai <mark@chromium.org> on 2012-06-12
Reviewed by Stephen White.

No new tests.

  • platform/graphics/GlyphBuffer.h:
  • platform/graphics/mac/ComplexTextControllerCoreText.mm:
  • platform/graphics/skia/GraphicsContextSkia.cpp:

Source/WebKit/chromium: [chromium mac] Don't #include things in subframeworks of
ApplicationServices.framework.

#including the umbrella <ApplicatonServices/ApplicationServices.h>
exposed an ambiguous name, FontMetrics, that needs to be fully
qualified as WebCore::FontMetrics.

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

Patch by Mark Mentovai <mark@chromium.org> on 2012-06-12
Reviewed by Stephen White.

  • src/WebFontImpl.cpp:

(WebKit::WebFontImpl::estimateTextBounds):

14:18 WebKit Team edited by helder.correia@nokia.com
(diff)
14:15 Changeset [120121] by fpizlo@apple.com

REGRESSION (r119779): Javascript TypeError: 'undefined' is not an object
https://bugs.webkit.org/show_bug.cgi?id=88783
<rdar://problem/11640299>

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

If you don't keep alive the base of an object access over the various checks
you do for the prototype chain, you're going to have a bad time.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetById):

LayoutTests:

Reviewed by Geoffrey Garen.

  • fast/js/dfg-proto-access-inline-osr-exit-expected.txt: Added.
  • fast/js/dfg-proto-access-inline-osr-exit.html: Added.
  • fast/js/script-tests/dfg-proto-access-inline-osr-exit.js: Added.

(foo):
(Thingy):

14:09 Changeset [120120] by helder@sencha.com

Unreviewed. Update my email address in committers.py.

  • Scripts/webkitpy/common/config/committers.py:
14:08 Changeset [120119] by igor.o@sisa.samsung.com

Apply animations and transitions for first-letter element
https://bugs.webkit.org/show_bug.cgi?id=85253

Source/WebCore:

Add animations and transitions support for the first-letter
pseudo element.
Instead of calling RenderOject::node() in the animations code,
now we need to call RenderObject::styledGeneratingNode() because
pseudo elements does not have a Node associated with the
RenderObject.

Initial patch by Simon Fraser

Reviewed by Simon Fraser.

Tests: animations/first-letter-animation.html

animations/first-letter-play-state.html
transitions/first-letter-color-transition.html
transitions/first-letter-transition.html

  • page/animation/AnimationBase.cpp:

(WebCore::AnimationBase::updateStateMachine):

  • page/animation/AnimationController.cpp:

(WebCore::AnimationControllerPrivate::updateAnimations):
(WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
(WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
(WebCore::AnimationController::cancelAnimations):
(WebCore::AnimationController::updateAnimations):

  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::pauseAnimation):
(WebCore::ImplicitAnimation::sendTransitionEvent):

  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::KeyframeAnimation):
(WebCore::KeyframeAnimation::pauseAnimation):
(WebCore::KeyframeAnimation::endAnimation):
(WebCore::KeyframeAnimation::sendAnimationEvent):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateFirstLetterStyle):
(WebCore::RenderBlock::createFirstLetterRenderer):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::clippedOverflowRectForRepaint):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::setAnimatableStyle):
(WebCore::RenderObject::styledGeneratingNode):
(WebCore):

  • rendering/RenderObject.h:

(RenderObject):

LayoutTests:

Reviewed by Simon Fraser.

  • animations/first-letter-animation-expected.txt: Added.
  • animations/first-letter-animation.html: Added.
  • animations/first-letter-play-state-expected.txt: Added.
  • animations/first-letter-play-state.html: Added.
  • transitions/first-letter-color-transition-expected.txt: Added.
  • transitions/first-letter-color-transition.html: Added.
  • transitions/first-letter-transition-expected.txt: Added.
  • transitions/first-letter-transition.html: Added.
14:04 Changeset [120118] by tkent@chromium.org

Checking a radio button doesn't uncheck other buttons in the same group in some cases.
https://bugs.webkit.org/show_bug.cgi?id=88835

Reviewed by Ryosuke Niwa.

Source/WebCore:

This change fixes a bug that checking a radio button in a radio button
group in a form detached from a document tree doesn't uncheck another
checked radio button in the radio button group.

A radio button participates in a radio button group in the following
conditions:

  • If it is owned by a form element regardless of the form is in a

document tree or not, or

  • If it is not owned by any form elements and it is in a document tree.

A radio button group for the radio button is owned by the document.

For HTMLInputElement::removedFrom():
The old code always unregistered the radio button if it was removed from
the document tree. It was incorrect because we don't need to unregister
it if it has an owner form and the owner form is not changed by
removedFrom().
If the owner form is cleared by removedFrom(), willChangeForm()
unregisters the radio button. So what we should do in removedFrom() is
to unregister the radio button only if the radio button group is owned
by the document.

For HTMLInputElement::insertedInto():
The old code always registered the radio button if it is inserted into
the document tree. It was incorrect because we don't need to register it
if it has an owner form and the owner form is not changed by
insertedInto().
If the owner form is changed by insertedInto(), didChangeForm()
registers the radio button. So We should register the radio button only
if its radio button group will be owned by the document.

Test: Add test cases to fast/forms/radio/radio-group.html

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::insertedInto):
Register this to CheckedRadioButtons only if new group owner is Document.
(WebCore::HTMLInputElement::removedFrom):
Unregister this from CheckedRadioButtons only if old group owner was Document.

LayoutTests:

  • fast/forms/radio/radio-group-expected.txt:
  • fast/forms/radio/radio-group.html: Add test cases.
13:54 Changeset [120117] by jamesr@google.com

[chromium] REGRESSION(119769): Canvas2DLayerBridge may go away before its TextureLayerChromium
https://bugs.webkit.org/show_bug.cgi?id=88910

Reviewed by Adrienne Walker.

Source/WebCore:

Unregister the bridge as its TextureLayerChromium client when going away.

Covered by new unit test in Canvas2DLayerBridgeTest.cpp.

  • platform/graphics/chromium/Canvas2DLayerBridge.cpp:

(WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):

Source/WebKit/chromium:

New unit test to verify that we can still update a TextureLayerChromium after the bridge owning it has gone
away.

  • tests/Canvas2DLayerBridgeTest.cpp:
13:54 Changeset [120116] by cevans@google.com

Merge 119872
BUG=130927
Review URL: https://chromiumcodereview.appspot.com/10544115

13:50 Changeset [120115] by cevans@google.com

Merge 119870
BUG=130722
Review URL: https://chromiumcodereview.appspot.com/10536125

13:45 Changeset [120114] by commit-queue@webkit.org

IndexedDB: Error codes, phase two
https://bugs.webkit.org/show_bug.cgi?id=88690

Patch by Alec Flett <alecflett@chromium.org> on 2012-06-12
Reviewed by Tony Chang.

Source/WebCore:

Update the next phase of IndexedDB error codes to match the spec.
This update is mostly focused on DATA_ERR vs CONSTRAINT_ERR.

Also moves some of the error checking for the transaction mode
into the frontend and replaces the backend checks with asserts, so that
we can consolidate error checking in one place.

This also removes a few FIXME's that are no longer true (about
I/O errors - the spec was updated and our implementation was
already correct)

No new tests, existing tests cover changed behavior.

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::deleteFunction):

  • Modules/indexeddb/IDBCursorBackendImpl.cpp:

(WebCore::IDBCursorBackendImpl::deleteFunction):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::setVersionInternal):

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
(WebCore::IDBObjectStore::deleteFunction):
(WebCore::IDBObjectStore::clear):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::put):
(WebCore::IDBObjectStoreBackendImpl::putInternal):
(WebCore::IDBObjectStoreBackendImpl::deleteFunction):
(WebCore::IDBObjectStoreBackendImpl::clear):

  • Modules/indexeddb/IDBTransaction.h:

(WebCore::IDBTransaction::enumMode):

  • Modules/indexeddb/IDBTransactionBackendImpl.h:

LayoutTests:

  • storage/indexeddb/cursor-advance-expected.txt:
  • storage/indexeddb/index-unique-expected.txt:
  • storage/indexeddb/mozilla/index-prev-no-duplicate-expected.txt:
  • storage/indexeddb/mozilla/index-prev-no-duplicate.html:
  • storage/indexeddb/objectstore-basics-expected.txt:
  • storage/indexeddb/objectstore-basics-workers-expected.txt:
  • storage/indexeddb/resources/cursor-advance.js:

(openSuccess):
(createObjectStore.trans.oncomplete):
(createObjectStore):
(populateObjectStore):

  • storage/indexeddb/resources/index-unique.js:

(addMoreDataFailed):

  • storage/indexeddb/resources/objectstore-basics.js:

(addAgainFailure):

13:38 Changeset [120113] by commit-queue@webkit.org

[EFL] Resolve CMake warnings on overlapping search paths for EFL jhbuild-enabled build
https://bugs.webkit.org/show_bug.cgi?id=84707

Fixing CMAKE prefix path for 64bit systems to avoid CMAKE warnings on those.
use_lib64 variable is preconfigured to True by jhbuild.

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-06-12
Reviewed by Dirk Pranke.

  • efl/jhbuildrc:
13:37 Changeset [120112] by commit-queue@webkit.org

Disable autoplay when user gesture is required for media playback
https://bugs.webkit.org/show_bug.cgi?id=88897

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

When user gesture is required for media playback, we should block autoplay.
Otherwise, people will use autoplay instead of video.play() to bypass the gesture requirement.
Test: media/no-autoplay-with-user-gesture-requirement.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::setReadyState):

13:37 Changeset [120111] by rniwa@webkit.org

Use testRunner in accessibility tests instead of layoutTestController
https://bugs.webkit.org/show_bug.cgi?id=88755

Reviewed by Tony Chang.

Replaced all instances of layoutTestController in accessibility tests by testRunner.

  • accessibility/:
  • platform/chromium/accessibility/:
  • platform/gtk/accessibility/:
  • platform/mac/accessibility/:
  • platform/win/accessibility/:
13:27 Changeset [120110] by danakj@chromium.org

Add zlieber@chromium.org to contributors list
https://bugs.webkit.org/show_bug.cgi?id=88904

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
13:21 Changeset [120109] by lforschler@apple.com

Rename Apple bots to a standard convention.
https://bugs.webkit.org/show_bug.cgi?id=88893

Note: This has the side effect of grouping all of the Apple bots together in the waterfall.

Reviewed by Simon Fraser.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
13:20 Changeset [120108] by commit-queue@webkit.org

HTML parser should yield more to improve perceived page load time
https://bugs.webkit.org/show_bug.cgi?id=86165

Source/WebCore:

Patch by Shrey Banga <banga@chromium.org> on 2012-06-12
Reviewed by Tony Gentilcore.

Test: fast/events/event-yield-timing.html

We want the parser to yield at least every 500ms to keep the page somewhat responsive and allow painting.
Since it would be too expensive to check the time after each token, the previous heuristic was to check every 4,096 tokens.
That works fine for most tokens, but a script may spend an arbitrary amount of time executing.

This patch fixes the issue by causing the parser to check the elapsed time immediately after executing a script.

  • html/parser/HTMLParserScheduler.cpp:

(WebCore::HTMLParserScheduler::checkForYieldBeforeScript):

  • html/parser/HTMLParserScheduler.h:

(WebCore::PumpSession::PumpSession):
(PumpSession):
(WebCore::HTMLParserScheduler::checkForYieldBeforeToken):

LayoutTests:

Added test for parser yield times after seeing a script

Patch by Shrey Banga <banga@chromium.org> on 2012-06-12
Reviewed by Tony Gentilcore.

  • fast/parser/parser-yield-timing-expected.txt: Added.
  • fast/parser/parser-yield-timing.html: Added.
  • http/tests/loading/gmail-assert-on-load-expected.txt: The test was added

for an assert that failed on debug builds when an iframe removed itself
from its parent window after blocking for 1 second. In previous builds,
the destroyIt() function was called without yielding to the event loop,
which lead to didFailLoadWithError being called. The fix for bug 86165
ensures that we yield after executing the script, which leads to
didHandleOnloadEventsForFrame being called instead. This is the cause
of the change in output of the test. The test still successfully removes
the iframe and since no asserts fail in the debug build, we should consider
it as passing.

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

LayoutTests/http/tests/xmlhttprequest/origin-exact-matching.html is giving trouble due to too many redirects
https://bugs.webkit.org/show_bug.cgi?id=88896

Patch by Pablo Flouret <pablof@motorola.com> on 2012-06-12
Reviewed by Darin Adler.

The test was giving out "too many redirect" errors on GTK and EFL due to
using redirect-cors.php without an actual url to redirect.

Redirects are not actually tested in that test, a script that set the
Access-Control-Allow-Origin header to an arbitrary origin was needed and
redirect-cors.php was the only existing one that had the capability. The
infinite redirect thing was an unintended consequence.
Use resources/access-control-allow-lists.php to set the header instead.

  • http/tests/xmlhttprequest/origin-exact-matching-expected.txt:
  • http/tests/xmlhttprequest/resources/origin-exact-matching-iframe.html:
13:01 Changeset [120106] by ojan@chromium.org

Update more expectations to match the state of the bots.

  • platform/chromium/TestExpectations:
12:55 Changeset [120105] by enne@google.com

[chromium] Fix incorrect LayerChromium scroll position for RTL overflow pages
https://bugs.webkit.org/show_bug.cgi?id=88887

Reviewed by James Robinson.

The scroll position on layers needs to take into account the scroll
origin, since RTL pages start scrolled all the way to the right.
Otherwise, when scrolling left the scroll position incorrectly will go
negative, causing havok in scrollbar theme code that just assumes that
it's always scrolled all the way to the left.

Also, now that the scroll origin is passed into NCCH, handle
scrollOrigin.y() for layer adjusting. This is always zero in practice,
but it seemed awkward to just drop it and that assumption could always
change in the future.

  • src/NonCompositedContentHost.cpp:

(WebKit::NonCompositedContentHost::setViewport):
(WebKit::NonCompositedContentHost::paintContents):

  • src/NonCompositedContentHost.h:

(NonCompositedContentHost):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::updateLayerTreeViewport):

12:47 Changeset [120104] by zandobersek@gmail.com

Unreviewed GTK gardening after r120099, fix two incorrect text expectations.

  • platform/gtk/TestExpectations:
12:17 Changeset [120103] by commit-queue@webkit.org

[chromium] Don't crash in CCLayerIterator if the root layer doesn't have a render surface
https://bugs.webkit.org/show_bug.cgi?id=88886

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-06-12
Reviewed by James Robinson.

If we are iterating over a render render surface layer list where the
root layer does not have a render surface, fail gracefully instead of
crashing.

Tests: CCLayerIteratorTest.{emptyTree,rootLayerWithoutRenderSurface}

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

(WebCore::CCLayerIterator::CCLayerIterator):

12:17 Changeset [120102] by cevans@google.com

Merge 119158
BUG=129191
Review URL: https://chromiumcodereview.appspot.com/10542126

12:07 Changeset [120101] by cevans@google.com

Merge 119914
BUG=121128
Review URL: https://chromiumcodereview.appspot.com/10533113

12:06 Changeset [120100] by ojan@chromium.org

Change default for flex-grow back to 0
https://bugs.webkit.org/show_bug.cgi?id=88443

Reviewed by Tony Chang.

Source/WebCore:

  • rendering/style/RenderStyle.h:

LayoutTests:

  • css3/flexbox/flex-algorithm.html:
  • css3/flexbox/flex-order.html:
  • css3/flexbox/flex-property-parsing-expected.txt:
  • css3/flexbox/flex-property-parsing.html:
12:01 Changeset [120099] by zandobersek@gmail.com

[Gtk] TestExpectations should remove use of FAIL expectations
https://bugs.webkit.org/show_bug.cgi?id=88894

Reviewed by Martin Robinson.

Remove FAIL expectation from Gtk's TestExpectations file, replacing it
with TEXT or IMAGE in case of reftests. That should suffice for now as the
buildbots don't run pixel tests at the moment.

  • platform/gtk/TestExpectations:
11:52 Changeset [120098] by cevans@google.com

Merge 119439
BUG=131087
Review URL: https://chromiumcodereview.appspot.com/10537130

11:52 Changeset [120097] by annacc@chromium.org

Separate RemoveID test cases.
https://bugs.webkit.org/show_bug.cgi?id=88798

Reviewed by Eric Carlson.

  • http/tests/media/media-source/video-media-source-add-and-remove-ids-expected.txt:
  • http/tests/media/media-source/video-media-source-add-and-remove-ids.html:
11:24 Changeset [120096] by beidson@apple.com

<rdar://problem/11593686> and https://bugs.webkit.org/show_bug.cgi?id=88683
Garbage collection of an <img> element can cause reentrant event dispatch.

Reviewed by Darin Adler.

Source/WebCore:

The most straightforward solution is for ImageLoader to keep its Element alive
with ref/deref any time the Image is actually loading.

ImageLoader should always do this for all Elements, and if those Elements want/need
different behavior for when they are detached then they need to manually stop their
loads.

Tests: http/tests/loading/embed-image-load-outlives-gc-without-crashing.html

http/tests/loading/image-input-type-outlives-gc-without-crashing.html
http/tests/loading/image-load-outlives-gc-without-crashing.html
http/tests/loading/object-image-load-outlives-gc-without-crashing.html
http/tests/loading/svg-image-load-outlives-gc-without-crashing.html
http/tests/loading/video-poster-image-load-outlives-gc-without-crashing.html

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::ImageLoader):
(WebCore::ImageLoader::~ImageLoader):
(WebCore::ImageLoader::setImage):
(WebCore::ImageLoader::updateFromElement):
(WebCore::ImageLoader::notifyFinished):
(WebCore::ImageLoader::updatedHasPendingLoadEvent):
(WebCore::ImageLoader::dispatchPendingBeforeLoadEvent):
(WebCore::ImageLoader::dispatchPendingLoadEvent):

  • loader/ImageLoader.h:

(ImageLoader):

LayoutTests:

New tests for all users of ImageLoader:

  • http/tests/loading/embed-image-load-outlives-gc-without-crashing-expected.txt: Added.
  • http/tests/loading/embed-image-load-outlives-gc-without-crashing.html: Added.
  • http/tests/loading/image-input-type-outlives-gc-without-crashing-expected.txt: Added.
  • http/tests/loading/image-input-type-outlives-gc-without-crashing.html: Added.
  • http/tests/loading/image-load-outlives-gc-without-crashing-expected.txt: Added.
  • http/tests/loading/image-load-outlives-gc-without-crashing.html: Added.
  • http/tests/loading/object-image-load-outlives-gc-without-crashing-expected.txt: Added.
  • http/tests/loading/object-image-load-outlives-gc-without-crashing.html: Added.
  • http/tests/loading/resources/slowimage.php: Added.
  • http/tests/loading/svg-image-load-outlives-gc-without-crashing-expected.txt: Added.
  • http/tests/loading/svg-image-load-outlives-gc-without-crashing.html: Added.
  • http/tests/loading/video-poster-image-load-outlives-gc-without-crashing-expected.txt: Added.
  • http/tests/loading/video-poster-image-load-outlives-gc-without-crashing.html: Added.

Shared sub resource for all of those tests:

  • http/tests/loading/resources/slowimage.php: Added.
11:21 Changeset [120095] by ojan@chromium.org

Update some tests to better match actual results on the bots.

  • platform/chromium/TestExpectations:
11:07 Changeset [120094] by shawnsingh@chromium.org

[chromium] Make damage tracking more robust to early exits
https://bugs.webkit.org/show_bug.cgi?id=84803

Reviewed by James Robinson.

Source/WebCore:

All CCDamageTrackerTest unit tests updated;
One new unit test added:

CCDamageTrackerTest.verifyDamageAccumulatesUntilReset

Damage tracking inherently needs to be aware of all changes that
occur for every frame. Before this patch, anyone modifying details
of CCLayerTreeHostImpl and the drawing phases of the compositor
needed to be careful to avoid early exiting once draw is
initiated, otherwise running the risk of damage tracking's state
getting out-of-sync from actual changes. This patch makes the
damage tracker API more asynchronous-like, so that damage will
continue to accumulate until it is explicitly notified that
damaged areas have been drawn. This will allow more freedom in
designing and restructuing drawing code in the compositor, without
worrying as much about damage tracking getting out-of-sync.

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

(WebCore::CCDamageTracker::didDrawDamagedArea):

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

(WebCore::CCLayerTreeHostImpl::drawLayers):

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

(CCLayerTreeHostImpl):

Source/WebKit/chromium:

  • tests/CCDamageTrackerTest.cpp:

(WebKitTests::clearDamageForAllSurfaces):
(WebKitTests::TEST_F):

11:02 Changeset [120093] by commit-queue@webkit.org

Make document.documentURI readonly from JavaScript
https://bugs.webkit.org/show_bug.cgi?id=65187

Patch by Mike West <mkwst@chromium.org> on 2012-06-12
Reviewed by Alexey Proskuryakov.

Source/WebCore:

The DOM4 working draft marks the documentURI attribute as read only
(http://www.w3.org/TR/dom/#document). Firefox has shipped with this
behavior since https://hg.mozilla.org/mozilla-central/rev/3bc751906409
landed in October 2011, IE9 doesn't support the property, and
Opera throws a NO_MODIFICATION_ALLOWED_ERR. This patch changes WebKit
to silently fail (matching Firefox's behavior) by setting the property
to readonly in the IDL.

Document::setDocumentURI and the m_documentURI property are retained
for compatibility with ObjC clients, and the readonly attribute is
ifdeffed out for ObjC.

This patch adds a single test to verify the behavior, and removes a
variety of tests that depended on the writable behavior. In particular,
potential security issues involving the document.baseURL property are
avoided completely as long as this property can't be changed.

Test: fast/dom/documenturi-readonly.html

  • dom/Document.cpp:

(WebCore::Document::setDocumentURI):

Adds a comment explaining that the fallback is necessary only to
support ObjC, not for JS calls.

  • dom/Document.cpp:

(WebCore::Document::updateBaseURL):

Ditto.

(Document):

  • dom/Document.idl:

Add readonly to the attribute and drop null value when not in
LANGUAGE_OBJECTIVE_C.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/SetDocumentURI.html: Added.
  • TestWebKitAPI/Tests/mac/SetDocumentURI.mm: Added.

(-[SetDocumentURITest webView:didFinishLoadForFrame:]):
(TestWebKitAPI):
(TestWebKitAPI::TEST):

LayoutTests:

  • dom/xhtml/level3/core/documentsetdocumenturi01-expected.txt: Removed.
  • dom/xhtml/level3/core/documentsetdocumenturi01.xhtml-disabled: Renamed from LayoutTests/dom/xhtml/level3/core/documentsetdocumenturi01.xhtml.
  • dom/xhtml/level3/core/documentsetdocumenturi02-expected.txt: Removed.
  • dom/xhtml/level3/core/documentsetdocumenturi02.xhtml-disabled: Renamed from LayoutTests/dom/xhtml/level3/core/documentsetdocumenturi02.xhtml.

Disabling these two tests, because they write out documentURI which is a file: URL dependent on a local path.

  • dom/xhtml/level3/core/documentsetdocumenturi03-expected.txt:
  • dom/xhtml/level3/core/nodegetbaseuri02-expected.txt:

Updating these two tests to match the new, read-only behavior.

  • fast/dom/documenturi-affects-relative-paths-expected.txt: Removed.
  • fast/dom/documenturi-affects-relative-paths.html: Removed.
  • fast/dom/documenturi-assigned-junk-implies-baseuri-null-expected.txt: Removed.
  • fast/dom/documenturi-assigned-junk-implies-baseuri-null.html: Removed.
  • fast/dom/documenturi-assigned-junk-implies-relative-urls-do-not-resolve-expected.txt: Removed.
  • fast/dom/documenturi-assigned-junk-implies-relative-urls-do-not-resolve.html: Removed.
  • fast/dom/documenturi-can-hold-arbitrary-string-expected.txt: Removed.
  • fast/dom/documenturi-can-hold-arbitrary-string.html: Removed.

Removing now-irrelevant tests.

  • fast/dom/documenturi-readonly-expected.txt: Added.
  • fast/dom/documenturi-readonly.html: Added.

Adding a test to verify that document.documentURI is read-only.

  • http/tests/security/xss-DENIED-document-baseURI-javascript-expected.txt: Removed.
  • http/tests/security/xss-DENIED-document-baseURI-javascript-with-spaces-expected.txt: Removed.
  • http/tests/security/xss-DENIED-document-baseURI-javascript-with-spaces.html: Removed.
  • http/tests/security/xss-DENIED-document-baseURI-javascript.html: Removed.
  • platform/chromium/dom/xhtml/level3/core/nodegetbaseuri02-expected.txt: Added

Platform-specific result for Chromium, which doesn't set the line property on exceptions.

  • storage/domstorage/events/documentURI-expected.txt: Removed.
  • storage/domstorage/events/documentURI.html: Removed.
  • storage/domstorage/events/script-tests/documentURI.js: Removed.

Removing now-irrelevant tests.

10:52 Changeset [120092] by ossy@webkit.org

Support !ENABLE(VIDEO) builds with horizontally layed out video controls.
https://bugs.webkit.org/show_bug.cgi?id=88881

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-06-12
Reviewed by Csaba Osztrogonác.

No new tests as this is a regression from WK87835.

  • html/shadow/SliderThumbElement.cpp:

(WebCore::hasVerticalAppearance):
Ifdef out video related functionality, since usesVerticalVolumeSlider
does not exist in that case.

10:28 Changeset [120091] by commit-queue@webkit.org

[BlackBerry] Fix crash in InputHandler
https://bugs.webkit.org/show_bug.cgi?id=88808

Patch by Crystal Zhang <haizhang@rim.com> on 2012-06-12
Reviewed by Antonio Gomes.

m_page is destroyed before InputHandler, so should move the call to destroy popup to chromeDestroyed().

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::chromeDestroyed():

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::~InputHandler):

10:11 Changeset [120090] by lforschler@apple.com

Merged r119739 -> <rdar://problem/11616643>

10:08 Changeset [120089] by lforschler@apple.com

Merged r119644 -> <rdar://problem/11575112>

10:05 Changeset [120088] by lforschler@apple.com

Merged r119543 -> <rdar://problem/11602601>

10:04 Changeset [120087] by lforschler@apple.com

Merged r119542 -> <rdar://problem/11602601>

09:57 Changeset [120086] by pfeldman@chromium.org

Web Inspector: allow clearing revision history.
https://bugs.webkit.org/show_bug.cgi?id=88847

Reviewed by Vsevolod Vlasov.

This change also renames "Revision history" to "Local modifications".
I intend to list modifications to all files in that view in the subsequent change.

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

(WebInspector.Resource._clearResourceHistory):

  • inspector/front-end/RevisionHistoryView.js:

(WebInspector.RevisionHistoryView.else.clearHistory):
(WebInspector.RevisionHistoryView):
(WebInspector.RevisionHistoryView.prototype._revisionAdded):
(WebInspector.RevisionHistoryTreeElement):
(WebInspector.RevisionHistoryTreeElement.prototype._createLine):
(WebInspector.RevisionHistoryTreeElement.prototype.allowRevert):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.appendApplicableItems):

09:44 Changeset [120085] by pfeldman@chromium.org

Web Inspector: use jsdifflib for revision diff calculation.
https://bugs.webkit.org/show_bug.cgi?id=88791

Reviewed by Vsevolod Vlasov.

Present diff calculation is incomplete, it does not properly handle the following case:

[a, b, c, d, e, f, g, h] => [c, d, e, f, g, h, a, b]

We should not be implementing diff by ourselves. I imported jsdifflib from
https://github.com/cemerick/jsdifflib. It has BSD license that is compatible with WebKit.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/front-end/RevisionHistoryView.js:

(WebInspector.RevisionHistoryTreeElement.prototype.onexpand.step2):
(WebInspector.RevisionHistoryTreeElement.prototype.onexpand):
(WebInspector.RevisionHistoryTreeElement.prototype._createLine.appendLineNumber):
(WebInspector.RevisionHistoryTreeElement.prototype._createLine):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/externs.js:

(difflib.stringAsLines):
(difflib.SequenceMatcher):
(difflib.SequenceMatcher.prototype.get_opcodes):

  • inspector/front-end/inspector.html:
  • inspector/front-end/jsdifflib.js: Added.

(difflib.defaultJunkFunction):
(difflib.stripLinebreaks):
(difflib.stringAsLines):
(difflib.reduce):
(difflib.
ntuplecomp):
(difflib.calculate_ratio):
(difflib.
dictget):
(difflib.SequenceMatcher.this.set_seqs):
(difflib.SequenceMatcher.this.set_seq1):
(difflib.SequenceMatcher.this.set_seq2):
(difflib.SequenceMatcher.this.chain_b):
(difflib.SequenceMatcher.this.find_longest_match):
(difflib.SequenceMatcher.this.get_matching_blocks):
(difflib.SequenceMatcher.this.get_opcodes):
(difflib.SequenceMatcher.this.get_grouped_opcodes):
(difflib.SequenceMatcher.this.quick_ratio):
(difflib.SequenceMatcher.this.real_quick_ratio):

  • inspector/front-end/revisionHistory.css:

(.revision-history-line-separator .webkit-line-number):

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

[EFL] enable LEGACY_WEBKIT_BLOB_BUILDER flag
https://bugs.webkit.org/show_bug.cgi?id=88715

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-12
Reviewed by Noam Rosenthal.

.:

Enable LEGACY_WEBKIT_BLOB_BUILDER flag by default on EFL port.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmakeconfig.h.cmake:

Tools:

Enable LEGACY_WEBKIT_BLOB_BUILDER flag by default on EFL port.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Unskip fast/files/blob-builder-crash.html now that
LEGACY_WEBKIT_BLOB_BUILDER flag is enabled by default
on EFL port.

  • platform/efl/Skipped:
09:28 Changeset [120083] by ossy@webkit.org

[Qt] Fix -Werror for the buildbots
https://bugs.webkit.org/show_bug.cgi?id=88223

Rubber-stamped by Tor Arne Vestbø.

Revert a part of r119269 to enable Werror again for non qt-developer-builds. (for bots for example)

  • qmake/mkspecs/features/unix/default_post.prf:
09:15 Changeset [120082] by commit-queue@webkit.org

[GStreamer] http/tests/media/video-buffered-range-contains-currentTime.html is failing
https://bugs.webkit.org/show_bug.cgi?id=87575

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-12
Reviewed by Philippe Normand.

Source/WebCore:

When EOS is reached in forward playback, the position does not necessarily
match the duration. This confuses HTMLMediaElement and causes the "ended"
event not to be fired. To avoid this, we synchronize position and duration
values in this case.

Test: http/tests/media/video-buffered-range-contains-currentTime.html

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

LayoutTests:

Unskip http/tests/media/video-buffered-range-contains-currentTime.html for both
GTK and EFL ports now that MediaPlayerPrivateGStreamer correctly reports EOS and
now that the "ended" event is properly fired.

  • platform/efl/TestExpectations:
  • platform/efl/http/tests/media/video-buffered-range-contains-currentTime-expected.png: Added.
  • platform/gtk/TestExpectations:
  • platform/gtk/http/tests/media/video-buffered-range-contains-currentTime-expected.png: Added.
08:34 Changeset [120081] by kinuko@chromium.org

Refactor InputType::receiveDroppedFiles to take DragData
https://bugs.webkit.org/show_bug.cgi?id=88860

Reviewed by Kent Tamura.

So that we can centralize the file paths related code into FileInputType
and makes it easier to extract more data from DragData for
<input type=file> (like bug 88293 for directory drag-and-drop).

No new tests as this has no behavioral changes.

  • html/FileInputType.cpp:

(WebCore::FileInputType::receiveDroppedFiles):

  • html/FileInputType.h:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::receiveDroppedFiles):

  • html/HTMLInputElement.h:
  • html/InputType.cpp:

(WebCore::InputType::receiveDroppedFiles):

  • html/InputType.h:
  • page/DragController.cpp:

(WebCore::DragController::concludeEditDrag):

08:29 Changeset [120080] by commit-queue@webkit.org

Generate -webkit-box-decoration-break property only when the feature is enabled
https://bugs.webkit.org/show_bug.cgi?id=88861

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-06-12
Reviewed by Alexis Menard.

Otherwise it will hit an assertion if the property is present on the
style but the feature disabled. Also fixes a compilation warning when
the feature is disabled.

  • css/CSSPropertyNames.in:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

08:11 Changeset [120079] by mario@webkit.org

[Gtk] Many tests revealed as passing after moving from Skipped to test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=85591

Reviewed by Martin Robinson.

Remove FAIL text expectations for sputnik tests that have been
consistently passing on all the Gtk builders.

  • platform/gtk/TestExpectations:
08:10 Changeset [120078] by darin@apple.com

Tweaked the Mac export file a bit more, adding more-correct iOS cases.

Reviewed by David Kilzer.

  • WebCore.exp.in: Rearrangement.
08:06 Changeset [120077] by kenneth@webkit.org

Unreviewed build fix.

  • UIProcess/qt/QtViewportHandler.cpp:

(WebKit::QtViewportHandler::initialRect):

08:04 Changeset [120076] by jocelyn.turcotte@nokia.com

Using extrernal ICU library on case unsensitive drives will not work
https://bugs.webkit.org/show_bug.cgi?id=70913

Reviewed by Csaba Osztrogonác.

Source/WebCore:

  • platform/graphics/surfaces/GraphicsSurface.h:

Source/WebKit2:

  • WebProcess/WebPage/UpdateAtlas.cpp:

Source/WTF:

Properly set the include path for the WTF module and for modules using it.
The path should include Source/WTF/wtf only when building WTF itself. Other
modules are expected to include the headers as #include <wtf/Header.h>, so
only add Source/WTF to their include path.

"unicode/utf8.h" should now then always reference to ICU in the include path
and "wtf/unicode/UTF8.h" reference to the WTF version.
This will work as long as WTF object files don't depend on ICU themselves.

Removed gobject, qt and unicode from the include path as those directories
don't exist anymore.

  • WTF.pri:
  • WTF.pro:
07:55 Changeset [120075] by kenneth@webkit.org

[Qt] Do not move/scale content while the user is interacting with it
https://bugs.webkit.org/show_bug.cgi?id=88872

Reviewed by Simon Hausmann.

Don't try moving content into valid bounds when the content
size changes and the user is interacting with the content.

Only apply the viewport initial scale after user interaction
has ended.

  • UIProcess/qt/QtViewportHandler.cpp:

(WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
(WebKit::QtViewportHandler::setInitialScaleIfNeeded):
(WebKit::QtViewportHandler::viewportAttributesChanged):
(WebKit::QtViewportHandler::pageContentsSizeChanged):
(WebKit::QtViewportHandler::initialRect):
(WebKit):

  • UIProcess/qt/QtViewportHandler.h:

(QtViewportHandler):

07:51 Changeset [120074] by commit-queue@webkit.org

[BlackBerry] Use a safer way to shrink JS memory usage
https://bugs.webkit.org/show_bug.cgi?id=88811

Patch by Yong Li <yoli@rim.com> on 2012-06-12
Reviewed by Antonio Gomes.

We should just make a GC request and JSC will check if it is safe to do anything.

  • Api/BlackBerryGlobal.cpp:

(BlackBerry::WebKit::clearMemoryCaches):

07:39 Changeset [120073] by danakj@chromium.org

[chromium] Use TextureDrawQuad for video layer output when it produces a single GL texture
https://bugs.webkit.org/show_bug.cgi?id=88814

Reviewed by Adrienne Walker.

When a CCVideLayerImpl produces quads for a frame that is contained
in a single GL texture, then use the TextureDrawQuad instead of the
VideoDrawQuad. Moves the computation for the RGBA(software) and
NativeTexture (hardware) cases from LayerRendererChromium into
CCVideoLayerImpl, so it can embed these values in the TextureDrawQuad.

No new tests, behaviour should be the same.

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawStreamTexture):
(WebCore::LayerRendererChromium::drawVideoQuad):

  • platform/graphics/chromium/LayerRendererChromium.h:

(LayerRendererChromium):

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

(WebCore::CCVideoLayerImpl::appendQuads):

07:31 Changeset [120072] by commit-queue@webkit.org

Change the volume slider to horizontal rendering for Chrome video controls.
https://bugs.webkit.org/show_bug.cgi?id=87835

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-06-12
Reviewed by Eric Carlson.

Source/WebCore:

No new tests - final patch in the Chrome controls update series will contain rebaselined tests.

The Chrome video controls are receiving a visual update. The volume slider is moved into
the controls with horizontal rendering, the volume slider container is removed. The visual
update itself is in a separate patch.

  • css/mediaControlsChromium.css:

(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
Removed relative positioning to render all controls elements equally in DOM order.
(audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
Removed absolute positioning to render all controls elements equally in DOM order.
(audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
Removed absolute positioning to render all controls elements equally in DOM order.
(audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
Removed volume slider container - it's not necessary any more.
(audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
Remove flexbox and introduce inline display to always display this field.
(audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
Removed absolute positioning to render all controls elements equally in DOM order.

  • html/shadow/MediaControlRootElementChromium.cpp:

(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
Removed volume slider container - it's not necessary any more.
(WebCore::MediaControlRootElementChromium::create):
Appended the volume slider and the mute button directly to the panel, removed volume slider container.
(WebCore::MediaControlRootElementChromium::setMediaController):
Removed volume slider container.
(WebCore::MediaControlRootElementChromium::reportedError):
Removed volume slider container.
(WebCore::MediaControlRootElementChromium::showVolumeSlider):
Removed volume slider container.

  • html/shadow/MediaControlRootElementChromium.h:

(WebCore):
(MediaControlRootElementChromium):
Removed volume slider container.

  • html/shadow/SliderThumbElement.cpp:

(WebCore::hasVerticalAppearance):
Allow use of horizontal media volume slider.
(WebCore::RenderSliderThumb::layout):
Reuse hasVerticalAppearance function.

  • rendering/RenderMediaControlsChromium.cpp:

(WebCore::RenderMediaControlsChromium::paintMediaVolumeSlider):
Change line drawing from vertical to horizontal.

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::usesVerticalVolumeSlider):
Add usesVerticalVolumeSlider function to allow horizontal volume sliders.

  • rendering/RenderThemeChromiumMac.h:

(WebCore::RenderThemeChromiumMac::usesVerticalVolumeSlider):
Add usesVerticalVolumeSlider function to allow horizontal volume sliders.
Add usesVerticalVolumeSlider function to allow horizontal volume sliders.

  • rendering/RenderThemeChromiumSkia.h:

(WebCore::RenderThemeChromiumSkia::usesVerticalVolumeSlider):
Add usesVerticalVolumeSlider function to allow horizontal volume sliders.

LayoutTests:

The Chrome video controls are receiving a visual update. The volume slider is included into
the controls with horizontal rendering, the volume slider container is removed. The visual
update itself is in a separate patch.

  • platform/chromium/TestExpectations:

Temporarily skip tests related to volume controls rendering for Chromium.

07:21 Changeset [120071] by commit-queue@webkit.org

[CSSRegions]NamedFlow::overset should return true when there's no region chain attached
https://bugs.webkit.org/show_bug.cgi?id=88515

The CSS Regions specifies that the "overset" attribute needs to return true if the content overflows, there's no region attached to the flow
or if the NamedFlow is in the NULL state:
http://www.w3.org/TR/css3-regions/#dom-named-flow-overset

Source/WebCore:

This patch updates WebKit's behavior in the last two situations to match the one in the spec.

Patch by Andrei Bucur <abucur@adobe.com> on 2012-06-12
Reviewed by Andreas Kling.

Test: fast/regions/webkit-named-flow-overset.html was updated

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::RenderFlowThread):
(WebCore::RenderFlowThread::computeOverflowStateForRegions): If the last valid region is null, the flow has not region chain attached or it's in the NULL state.

LayoutTests:

The overset test was updated to cover the attribute value in case of a flow in the NULL state.

Patch by Andrei Bucur <abucur@adobe.com> on 2012-06-12
Reviewed by Andreas Kling.

  • fast/regions/webkit-named-flow-overset-expected.txt:
  • fast/regions/webkit-named-flow-overset.html:
06:58 Changeset [120070] by pfeldman@chromium.org

Web Inspector: Provide context menu for deleting recorded profile on Profiles Panel
https://bugs.webkit.org/show_bug.cgi?id=88286

Added the context menu to delete the selected profile.

Patch by Rahul Tiwari <rahultiwari.cse.iitr@gmail.com> on 2012-06-12
Reviewed by Pavel Feldman.

No new tests required as UI related change

  • English.lproj/localizedStrings.js: Removed property svn:mime-type.
  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfileSidebarTreeElement.prototype.handleContextMenuEvent):

06:52 Changeset [120069] by pfeldman@chromium.org

2012-06-12 Pavel Feldman <pfeldman@chromium.org>

Not reviewed: removed svn:mime-type property from English.lproj/localizedStrings.js

  • English.lproj/localizedStrings.js
06:45 Changeset [120068] by mitz@apple.com

Tried to fix the notification-enabled build after r120044.

  • notifications/NotificationController.cpp:

(WebCore::NotificationController::NotificationController):
(WebCore::NotificationController::create):
(WebCore::provideNotification):

  • notifications/NotificationController.h:

(NotificationController):

06:40 Changeset [120067] by mario@webkit.org

Unreviewed gardening. Skip test failing randomly in GTK bots after r120040.

  • platform/gtk/TestExpectations:
06:33 Changeset [120066] by commit-queue@webkit.org

[Qt][Texmap] Falling leaves demo missing clipping.
https://bugs.webkit.org/show_bug.cgi?id=88704

The bug originated from begining native painting mode of QPainter after enabling
scissor test, because begining native painting mode disables scissor test.

Covered by existing compositing tests.

Patch by Huang Dongsung <luxtella@company100.net> on 2012-06-12
Reviewed by Noam Rosenthal.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::beginPainting):

06:30 Changeset [120065] by ossy@webkit.org

[Qt][Win] Buildfix related to fromWinHBITMAP
https://bugs.webkit.org/show_bug.cgi?id=88863

Reviewed by Jocelyn Turcotte.

  • platform/graphics/qt/GraphicsContextQt.cpp: Add qt_pixmapFromWinHBITMAP and HBitmapFormat enum.

(WebCore):
(WebCore::GraphicsContext::releaseWindowsContext):

  • platform/graphics/qt/ImageQt.cpp:

(WebCore): Move qt_pixmapFromWinHBITMAP to outside of WebCore namespace. (Fix after r119924.)

06:19 Changeset [120064] by commit-queue@webkit.org

[CMake] Enabled CSS_BOX_DECORATION_BREAK by default
https://bugs.webkit.org/show_bug.cgi?id=88850

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-06-12
Reviewed by Alexis Menard.

Enabled it by default on CMake ports like in other ports.
This patch is a follow up to r120029.

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:
05:51 Changeset [120063] by kbalazs@webkit.org

[REGRESSION][WTR] Build fail with werror after r120054
https://bugs.webkit.org/show_bug.cgi?id=88862

Reviewed by Csaba Osztrogonác.

Some static helpers become unused after counterValueForElementById
has moved to Internals. Let's remove them.

  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:

(WTR):

05:28 Changeset [120062] by commit-queue@webkit.org

[Shadow DOM] <style> inside Shadow subtree should be scoped inside the subtree.
https://bugs.webkit.org/show_bug.cgi?id=87805

Source/WebCore:

Modified HTMLStyleElement to be treated as a scoped style independent
of its "scoped" attribute's value if HTMLStyleElement is in shadow
subtree. HTMLStyleElement has the following four cases talking about
"scoped" attribute and whether is in shadow subtree or not:
1, HTMLStyleElement is "scoped" and is in document tree,
2, HTMLStyleElement is "scoped" and is in shadow subtree,
3, HTMLStyleElement is not "scoped" and is in document tree, and
4, HTMLStyleElement is not "scoped" and is in shadow subtree.
The case 1 and 2 are not changed. This patch affected the case 4.
At the case 4, the HTMLStyleElement's scoping node is the shadow root.
This change is the first step for fixing style scope bug,
i.e. HTMLStyleElements in shadow subtree are applied to any element
in document tree.

Patch by Takashi Sakamoto <tasak@google.com> on 2012-06-12
Reviewed by Dimitri Glazkov.

Test: fast/css/style-scoped/style-scoped-change-scoped-in-shadow.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::determineScope):
Modified to return a shadow root if a targeted stylesheet owner node is
not scoped but in some shadow DOM subtree.

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::HTMLStyleElement):
(WebCore::HTMLStyleElement::parseAttribute):
Modified to use the below scopedAttributeChanged when a changed
attribute's name is "scoped".
(WebCore::HTMLStyleElement::scopedAttributeChanged):
Newly added. According to new scoped value and isInShadowTree,
add or remove style rules to/from scopedAuthorRules via
registerWithScopingNode or unregisterWithScopingNode.
(WebCore::HTMLStyleElement::registerWithScopingNode):
Added one boolean argument to determine whether HTMLStyleElement is
scoped or not. The reason why not using scoped() is the comment:
"We cannot rely on the scoped element already being present when this
method is invoked. Therefore we cannot rely on scoped()"
(WebCore::HTMLStyleElement::unregisterWithScopingNode):
Changed the code for updating m_isRegisteredWithScopingNode. Now
set m_scopedStyleRegistrationState to be NotRegistered.
(WebCore::HTMLStyleElement::insertedInto):
Modified to invoke registerWithScopingNode when an element is not
scoped but in some shadow subtree.
(WebCore::HTMLStyleElement::removedFrom):
Modified to invoke unregisterWithScopingNode when an element is not
scoped but in some shadow subtree.

  • html/HTMLStyleElement.h:

(HTMLStyleElement):
Modified the type of m_isRegisteredWithScopingNode from bool to
enum and renamed to m_scopedStyleRegistrationState. Now the member
variable keeps what HTMLStyleElement's scoping node is, i.e.
none (this means, not in shadow subtree and not scoped), shadow root or
parent node.
Added one new method scopedAttributeChanged's declaration and
modified the declaration of registerWithScopingNode.

LayoutTests:

Patch by Takashi Sakamoto <tasak@google.com> on 2012-06-12
Reviewed by Dimitri Glazkov.

  • fast/css/style-scoped/registering-shadowroot-expected.txt:
  • fast/css/style-scoped/registering-shadowroot.html:
  • fast/css/style-scoped/style-scoped-change-scoped-in-shadow-expected.txt: Added.
  • fast/css/style-scoped/style-scoped-change-scoped-in-shadow.html: Added.
05:06 Changeset [120061] by commit-queue@webkit.org

Removing unused parameter Page
https://bugs.webkit.org/show_bug.cgi?id=88848

Patch by Amy Ousterhout <aousterh@chromium.org> on 2012-06-12
Reviewed by Kentaro Hara.

Removed the unused parameter Page* supplied to the create function
and constructor in DeviceOrientationController.

The parameter Page* was previously stored in an instance variable
m_page, but this was removed (see https://bugs.webkit.org/show_bug.cgi?id=88812).

No new tests because the removed parameter was unused and untested.

  • dom/DeviceOrientationController.cpp:

(WebCore::DeviceOrientationController::DeviceOrientationController):
(WebCore::DeviceOrientationController::create):
(WebCore::provideDeviceOrientationTo):

  • dom/DeviceOrientationController.h:

(DeviceOrientationController):

04:53 Changeset [120060] by ossy@webkit.org

[Qt] Slave losts cause build break on bots
https://bugs.webkit.org/show_bug.cgi?id=38980

Minor fix after r59261.

Reviewed by Tor Arne Vestbø.

  • Scripts/build-webkit:

(unlinkZeroFiles): Don't remove 0 byte sized directories, because they are always 0 byte sized on Windows.

04:48 Changeset [120059] by mario@webkit.org

Unreviewed. Add reference to bug 88859 for test skipped in r120055.

  • platform/efl/Skipped:
  • platform/gtk/TestExpectations:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
  • platform/wincairo/Skipped:
04:30 Changeset [120058] by dominicc@chromium.org

[Chromium] Unreviewed: Add expectations for speech-recognition-event-constructor

This looks like it was failing as it was added in r120053. Filed
bug 88856.

  • platform/chromium/TestExpectations:
04:18 Changeset [120057] by commit-queue@webkit.org

Unreviewed, rolling out r120051.
http://trac.webkit.org/changeset/120051
https://bugs.webkit.org/show_bug.cgi?id=88852

some tests are crashing (Requested by morrita on #webkit).

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

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/generic/ContextEnabledFeatures.cpp: Renamed from Source/WebKit/chromium/src/ContextFeaturesClientImpl.cpp.

(WebCore):
(WebCore::ContextEnabledFeatures::shadowDOMEnabled):
(WebCore::ContextEnabledFeatures::styleScopedEnabled):
(WebCore::ContextEnabledFeatures::pagePopupEnabled):

  • bindings/generic/ContextEnabledFeatures.h: Renamed from Source/WebKit/chromium/src/ContextFeaturesClientImpl.h.

(WebCore):
(ContextEnabledFeatures):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementation):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::determineScope):

  • dom/ContextFeatures.cpp: Removed.
  • dom/ContextFeatures.h: Removed.
  • dom/DOMAllInOne.cpp:
  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::createDocument):
(WebCore::DOMImplementation::createHTMLDocument):

  • dom/Document.cpp:

(WebCore::Document::Document):

  • dom/Document.h:

(WebCore):
(Document):

  • dom/Position.cpp:

(WebCore::Position::Position):
(WebCore::Position::findParent):

  • dom/TreeScope.cpp:

(WebCore::TreeScope::getSelection):

  • dom/make_names.pl:

(printConstructorInterior):
(printFactoryCppFile):
(printWrapperFunctions):
(printWrapperFactoryCppFile):

  • editing/markup.cpp:

(WebCore::createFragmentFromMarkupWithContext):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::registerWithScopingNode):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):

  • html/shadow/HTMLContentElement.cpp:

(WebCore::contentTagName):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::patchDocument):

  • loader/FrameLoaderClient.h:

(WebCore::FrameLoaderClient::allowShadowDOM):
(WebCore::FrameLoaderClient::allowStyleScoped):
(FrameLoaderClient):
(WebCore::FrameLoaderClient::allowPagePopup):

  • platform/RefCountedSupplement.h: Removed.
  • platform/Supplementable.h:
  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseXML):

Source/WebKit/chromium:

  • WebKit.gyp:
  • public/WebPermissionClient.h:

(WebKit::WebPermissionClient::allowWebComponents):

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::allowShadowDOM):
(WebKit):
(WebKit::FrameLoaderClientImpl::allowStyleScoped):

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

  • src/WebPagePopupImpl.cpp:

(WebKit::WebPagePopupImpl::initPage):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setPermissionClient):
(WebKit::WebViewImpl::WebViewImpl):

  • src/WebViewImpl.h:

(WebKit):

LayoutTests:

  • fast/dom/shadow/elements-in-frameless-document-expected.txt: Removed.
  • fast/dom/shadow/elements-in-frameless-document.html: Removed.
04:09 Changeset [120056] by ossy@webkit.org

[Qt] Diverging test results on 32/64 bit architectures
https://bugs.webkit.org/show_bug.cgi?id=82601

Unreviewed gardening, update expected files.

  • platform/qt/Skipped: Unskip svg/transforms/transform-origin-css-property.xhtml, because it passes now.
  • platform/qt/fast/repaint/moving-shadow-on-container-expected.png:
  • platform/qt/fast/repaint/moving-shadow-on-path-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/paths-data-03-f-expected.png:
  • platform/qt/svg/custom/use-on-symbol-inside-pattern-expected.png:
  • platform/qt/svg/custom/use-on-symbol-inside-pattern-expected.txt:
  • platform/qt/svg/transforms/transform-origin-css-property-expected.png: Removed, because it is a reftest.
  • platform/qt/svg/transforms/transform-origin-css-property-expected.txt: Removed, because it is a reftest.
04:05 Changeset [120055] by kinuko@chromium.org

Unreviewed; skipping the new XHR blob test on the platforms where XHR_RESPONSE_BLOB is not enabled.
http/tests/xmlhttprequest/response-blob-size.html

  • platform/efl/Skipped:
  • platform/gtk/TestExpectations:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
  • platform/wincairo/Skipped:
03:47 Changeset [120054] by kaustubh@motorola.com

[DRT] LTC:: counterValueForElementById() could be moved to Internals.
https://bugs.webkit.org/show_bug.cgi?id=84406

Reviewed by Hajime Morita.

.:

Exporting Internals::counterValueForElement symbols for the Gtk build.

  • Source/autotools/symbols.filter:

Source/WebCore:

Move the counterValueForElementById from LayoutTestCotroller to Internals and
remove the old platform specific implementations as it exclusively tests WebCore functionality.

Covered by existing test cases.

  • testing/Internals.cpp:

(WebCore::Internals::counterValue):
(WebCore):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit/efl:

Move the counterValueForElementById from LayoutTestCotroller to Internals and
remove the old platform specific implementations as it exclusively tests WebCore functionality.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

Source/WebKit/gtk:

Move the counterValueForElementById from LayoutTestCotroller to Internals and
remove the old platform specific implementations as it exclusively tests WebCore functionality.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

Source/WebKit/qt:

Move the counterValueForElementById from LayoutTestCotroller to Internals and
remove the old platform specific implementations as it exclusively tests WebCore functionality.

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:
  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Source/WebKit/win:

Move the counterValueForElementById from LayoutTestCotroller to Internals and
remove the old platform specific implementations as it exclusively tests WebCore functionality.

  • Interfaces/IWebFramePrivate.idl:
  • WebFrame.cpp:
  • WebFrame.h:

Source/WebKit2:

Exporting Internals::counterValueForElement symbols for the win build.

  • win/WebKit2.def:

Tools:

Move the counterValueForElementById from LayoutTestCotroller to Internals and
remove the old platform specific implementations as it exclusively tests WebCore functionality.

  • DumpRenderTree/LayoutTestController.cpp:

(LayoutTestController::staticFunctions):

  • DumpRenderTree/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::LayoutTestController):
(LayoutTestController::setPOSIXLocale):

  • DumpRenderTree/chromium/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
  • DumpRenderTree/mac/LayoutTestControllerMac.mm:
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp:
  • DumpRenderTree/qt/LayoutTestControllerQt.h:

(LayoutTestController):

  • DumpRenderTree/win/LayoutTestControllerWin.cpp:
  • DumpRenderTree/wx/LayoutTestControllerWx.cpp:
  • WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:

(WTR):

  • WebKitTestRunner/InjectedBundle/LayoutTestController.h:

(LayoutTestController):

LayoutTests:

Move the counterValueForElementById from LayoutTestCotroller to Internals and
remove the old platform specific implementations as it exclusively tests WebCore functionality.

  • fast/css/counters/2displays-expected.txt:
  • fast/css/counters/2displays.html:
  • fast/css/counters/adding-nodes.html:
  • fast/css/counters/after-continuation-expected.txt:
  • fast/css/counters/after-continuation.html:
  • fast/css/counters/content-021-expected.txt:
  • fast/css/counters/content-021.html:
  • fast/css/counters/counter-before-content-not-incremented.html:
  • fast/css/counters/counter-increment-000-expected.txt:
  • fast/css/counters/counter-increment-000.html:
  • fast/css/counters/counter-increment-001-expected.txt:
  • fast/css/counters/counter-increment-001.html:
  • fast/css/counters/counter-increment-002.html:
  • fast/css/counters/counter-increment-inherit-expected.txt:
  • fast/css/counters/counter-increment-inherit.htm:
  • fast/css/counters/counter-increment-overflow.html:
  • fast/css/counters/counter-increment-tests-expected.txt:
  • fast/css/counters/counter-increment-tests.htm:
  • fast/css/counters/counter-reset-000.html:
  • fast/css/counters/counter-reset-001.html:
  • fast/css/counters/counter-reset-002.html:
  • fast/css/counters/counterValueForElementById-expected.txt:
  • fast/css/counters/counterValueForElementById.html:
  • fast/css/counters/deep-before-expected.txt:
  • fast/css/counters/deep-before.html:
  • fast/css/counters/invalidate-cached-counter-node.html:
  • fast/css/counters/nesting.html:
03:38 Changeset [120053] by hans@chromium.org

Speech JavaScript API: Make SpeechRecognitionError an Event
https://bugs.webkit.org/show_bug.cgi?id=88784

Reviewed by Adam Barth.

Source/WebCore:

Make SpeechRecognitionError an Event. The spec was updated to make it
an event in its own right, rather than an attribute of
SpeechRecognitionEvent.

Test: fast/speech/scripted/speechrecognition-errors.html

  • Modules/speech/SpeechRecognition.cpp:

(WebCore::SpeechRecognition::didReceiveError):

  • Modules/speech/SpeechRecognitionError.cpp:

(WebCore::SpeechRecognitionError::SpeechRecognitionError):
(WebCore::SpeechRecognitionError::interfaceName):
(WebCore):

  • Modules/speech/SpeechRecognitionError.h:

(WebCore::SpeechRecognitionError::create):
(SpeechRecognitionError):

  • Modules/speech/SpeechRecognitionError.idl:
  • Modules/speech/SpeechRecognitionEvent.cpp:

(WebCore::SpeechRecognitionEvent::SpeechRecognitionEvent):

  • Modules/speech/SpeechRecognitionEvent.h:

(SpeechRecognitionEventInit):
(SpeechRecognitionEvent):

  • Modules/speech/SpeechRecognitionEvent.idl:
  • dom/EventNames.in:

Tools:

Make it possible to have MockWebSpeechRecognizer fire error events.

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::LayoutTestController):
(LayoutTestController::setMockSpeechRecognitionError):

  • DumpRenderTree/chromium/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/chromium/MockWebSpeechRecognizer.cpp:

(WebKit):
(ErrorTask):
(WebKit::ErrorTask::ErrorTask):
(MockWebSpeechRecognizer::addMockResult):
(MockWebSpeechRecognizer::setError):

  • DumpRenderTree/chromium/MockWebSpeechRecognizer.h:

(MockWebSpeechRecognizer):

LayoutTests:

Add a layout test that fires a SpeechRecognitionError.

  • fast/speech/scripted/speechrecognition-errors-expected.txt: Added.
  • fast/speech/scripted/speechrecognition-errors.html: Added.
03:13 Changeset [120052] by mario@webkit.org

Unreviewed gardening. Skip test failing on GTK bots after r119947.

  • platform/gtk/TestExpectations: Skip test.
02:49 Changeset [120051] by morrita@google.com

REGRESSION(r118098): <content> element does not render distributed children when cloned from another document
https://bugs.webkit.org/show_bug.cgi?id=88148

Source/WebCore:

Reviewed by Dimitri Glazkov.

The shadow DOM availability was decided through FrameLoaderClient.
But there are documents which don't have any associated frames, in
which any shadow DOM related elements cannot be constructed. That
resulsted the regression.

This change introduces a Page-based client called
ContextFeaturesClient which takes the role from FrameLoaderClient
to decide the feature availability, and ContextFeatures which is a
proxy of ContextFeaturesClient. ContextEnabledFeatures is is
replaced with ContextFeatures.

Each ContextFeatures object is owned by a Page, and is attached to
each Document in the page even if the page itself has no referenct
to Frames or Pages. With ContextFeatures, each Document can decide
the feature availability even if it cannot reach Page or Frame.

On RefCountedSupplement: Document instance can live longer than a
Page where it is shwon. This means that ContextFeatures instance
needs to survive after owner Page destruction because it's
referenced from possibly surviving Documents. RefCountedSupplement
is introduced to cover this scenario: It allows supplement classes
to live after Page's destruction.

RefCountedSupplement::hostDestroyed() is notified when the hosting
page is gone. ContextFeatures clears its reference to the client
using this notification.

Test: fast/dom/shadow/elements-in-frameless-document.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementation):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::determineScope):

  • dom/ContextFeatures.cpp: Added.

(WebCore):
(WebCore::ContextFeaturesClient::empty):
(WebCore::ContextFeatures::supplementName):
(WebCore::ContextFeatures::defaultSwitch):
(WebCore::ContextFeatures::shadowDOMEnabled):
(WebCore::ContextFeatures::styleScopedEnabled):
(WebCore::ContextFeatures::pagePopupEnabled):
(WebCore::provideContextFeaturesTo):
(WebCore::provideContextFeaturesToDocumentFrom):

  • dom/ContextFeatures.h: Added.

(WebCore):
(ContextFeatures):
(WebCore::ContextFeatures::ContextFeatures):
(WebCore::ContextFeatures::hostDestroyed):
(ContextFeaturesClient):
(WebCore::ContextFeaturesClient::~ContextFeaturesClient):
(WebCore::ContextFeaturesClient::isEnabled):
(WebCore::ContextFeatures::create):
(WebCore::ContextFeatures::isEnabled):

  • dom/DOMAllInOne.cpp:
  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::createDocument):
(WebCore::DOMImplementation::createHTMLDocument):

  • dom/Document.h:

(WebCore::Document::contextFeatures):

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::setContextFeatures):

  • dom/Position.cpp:

(WebCore::Position::Position):
(WebCore::Position::findParent):

  • dom/TreeScope.cpp:

(WebCore::TreeScope::getSelection):

  • dom/make_names.pl:

(printConstructorInterior):
(printFactoryCppFile):
(printWrapperFunctions):
(printWrapperFactoryCppFile):

  • editing/markup.cpp:

(WebCore::createFragmentFromMarkupWithContext):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::registerWithScopingNode):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):

  • html/shadow/HTMLContentElement.cpp:

(WebCore::contentTagName):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::patchDocument):

  • loader/FrameLoaderClient.h:
  • platform/RefCountedSupplement.h: Copied from Source/WebCore/platform/Supplementable.h.

(WebCore):
(RefCountedSupplement):
(WebCore::RefCountedSupplement::hostDestroyed):
(Wrapper):
(WebCore::RefCountedSupplement::Wrapper::Wrapper):
(WebCore::RefCountedSupplement::Wrapper::~Wrapper):
(WebCore::RefCountedSupplement::Wrapper::wrapped):
(WebCore::RefCountedSupplement::provideTo):
(WebCore::RefCountedSupplement::from):

  • platform/Supplementable.h:

(WebCore::Supplement::isRefCountedWrapper):

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseXML):

Source/WebKit/chromium:

Reviewed by Dimitri Glazkov.

  • Added ContextFeaturesClientImpl which implements WebCore::ContextFeaturesClient.
  • Replaced PagePopupFrameLoaderClient with PagePopupFeaturesClient.
  • WebKit.gyp:
  • public/WebPermissionClient.h:

(WebKit):
(WebKit::WebPermissionClient::allowWebComponents):

  • src/ContextFeaturesClientImpl.cpp: Renamed from Source/WebCore/bindings/generic/ContextEnabledFeatures.cpp.

(WebKit):
(WebKit::ContextFeaturesClientImpl::isEnabled):

  • src/ContextFeaturesClientImpl.h: Renamed from Source/WebCore/bindings/generic/ContextEnabledFeatures.h.

(WebKit):
(ContextFeaturesClientImpl):
(WebKit::ContextFeaturesClientImpl::ContextFeaturesClientImpl):
(WebKit::ContextFeaturesClientImpl::setPermissionClient):

  • src/FrameLoaderClientImpl.cpp:
  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

  • src/WebPagePopupImpl.cpp:

(PagePopupFeaturesClient):
(WebKit::PagePopupFeaturesClient::isEnabled):
(WebKit):
(WebKit::WebPagePopupImpl::initPage):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setPermissionClient):
(WebKit::WebViewImpl::WebViewImpl):

  • src/WebViewImpl.h:

(WebKit):

LayoutTests:

Reviewed by Dimitri Glazkov.

  • fast/dom/shadow/elements-in-frameless-document-expected.txt: Added.
  • fast/dom/shadow/elements-in-frameless-document.html: Added.
02:21 Changeset [120050] by dominicc@chromium.org

[Chromium] Unreviewed: Rebaseline gradient-after-transparent-border

Font antialiasing differences are causing this to fail after
rebaseline in r120043.

  • platform/chromium-linux/fast/gradients/gradient-after-transparent-border-expected.png:
02:10 Changeset [120049] by tkent@chromium.org

Remove unnecessary functions: setName() and formControlName()
https://bugs.webkit.org/show_bug.cgi?id=88392

Reviewed by Kentaro Hara.

Source/WebCore:

'name' IDL attributes of form-related elements should be [Reflected],
and we don't need to have setName(). We used formControlName() for
name() implementation, and formControlName() is not needed because it
just converts a null attribute to an empty string. Our binding code does it.

We don't remove FormAssociatedElement::name() because many C++ code use it.

FormAssociatedElement::name() is virtual, and HTMLInputElement overrides
it so that it returns a cache of the name attribtue value because
CheckedRadioButtons class needs to know an old name attribute value when
the name attribtue is changed.

References:
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-iframe-element.html#dom-object-name
http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#dom-form-name
http://www.whatwg.org/specs/web-apps/current-work/multipage/association-of-controls-and-forms.html#dom-fe-name

Test: fast/forms/name-attribute.html

  • dom/Element.h: Remove formControlName().
  • html/FormAssociatedElement.cpp:

(WebCore::FormAssociatedElement::name):
Copied from formControlName() implementation of HTMLFormControlElement.

  • html/FormAssociatedElement.h:

(FormAssociatedElement): Make name() virtual, remove formControlName().

  • html/FormController.cpp:

(WebCore::FormController::formElementsState):
Use name() instead of formControlName().

  • html/HTMLFormControlElement.cpp:

Remove formControlName() and setName().

  • html/HTMLFormControlElement.h: ditto.
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::name): Renamed from formControlName().

  • html/HTMLInputElement.h:

(HTMLInputElement): Renamed formControlName() to name(), and make it public.

  • html/HTMLKeygenElement.idl: Make 'name' [Reflected].
  • html/HTMLObjectElement.cpp: Remove formControlName().
  • html/HTMLObjectElement.h: ditto.
  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::appendFormData):
Use name() instead of formControlName().

  • html/HTMLSelectElement.idl: Make 'name' [Reflected].
  • html/HTMLTextAreaElement.idl: Make 'name' [Reflected].

LayoutTests:

  • fast/forms/name-attribute-expected.txt: Added.
  • fast/forms/name-attribute.html: Added.
01:58 Changeset [120048] by mario@webkit.org

Unreviewed gardening. Skip test crashing on GTK debug bots.

  • platform/gtk/TestExpectations: Skip test.
01:32 FeatureFlags edited by tkent@chromium.org
Add CSS_BOX_DECORATION_BREAK (diff)
01:21 Changeset [120047] by annacc@chromium.org

[Chromium] video-media-source-add-and-remove-ids.html needs to be skipped
until a chromium patch lands that will cause different expectations.

Unreviewed.

  • platform/chromium/TestExpectations:
00:46 Changeset [120046] by dominicc@chromium.org

[Chromium] Unreviewed: Rebaseline gradients tests

Rebaseline two gradients tests after r120033 that I missed in
rebaselines in r120043.

  • platform/chromium-linux-x86/fast/gradients/css3-radial-gradients2-expected.png: Removed.
  • platform/chromium-linux/fast/gradients/css3-radial-gradients2-expected.png:
  • platform/chromium-linux/fast/gradients/gradient-after-transparent-border-expected.png:
00:08 Changeset [120045] by commit-queue@webkit.org

Property names of the built-in object cannot be retrieved
after trying to delete one of its properties
https://bugs.webkit.org/show_bug.cgi?id=86461

Patch by Hojong Han <hojong.han@samsung.com> on 2012-06-12
Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

  • runtime/JSObject.cpp:

(JSC::getClassPropertyNames):
(JSC::JSObject::getOwnPropertyNames):

LayoutTests:

  • fast/js/delete-syntax-expected.txt:
  • fast/js/script-tests/delete-syntax.js:

06/11/12:

23:24 Changeset [120044] by thakis@chromium.org

Remove unused member variables found by clang's -Wunused-private-field
https://bugs.webkit.org/show_bug.cgi?id=88812

Reviewed by Anders Carlsson.

Source/WebCore:

Change a few |class|s that were used only to pin down the size of
existing classes to |struct|, so that clang doesn't warn about these
memvars.

No intended behavior change.

  • Modules/geolocation/GeolocationController.cpp:

(WebCore::GeolocationController::GeolocationController):

  • Modules/geolocation/GeolocationController.h:

(GeolocationController):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • Modules/webaudio/AudioParamTimeline.h:

(AudioParamTimeline):

  • accessibility/AccessibilityScrollbar.h:

(AccessibilityScrollbar):

  • bindings/v8/ScriptScope.cpp:

(WebCore::ScriptScope::ScriptScope):

  • bindings/v8/ScriptScope.h:

(ScriptScope):

  • css/CSSValue.cpp:
  • css/StylePropertySet.cpp:
  • dom/DeviceOrientationController.cpp:

(WebCore::DeviceOrientationController::DeviceOrientationController):

  • dom/DeviceOrientationController.h:

(DeviceOrientationController):

  • editing/ReplaceSelectionCommand.cpp:

(ReplacementFragment):
(WebCore::ReplacementFragment::ReplacementFragment):

  • editing/TextIterator.cpp:

(WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):

  • editing/TextIterator.h:

(SimplifiedBackwardsTextIterator):
(BackwardsCharacterIterator):

  • html/HTMLFormCollection.cpp:

(WebCore::HTMLFormCollection::HTMLFormCollection):

  • html/HTMLFormCollection.h:

(HTMLFormCollection):

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):

  • html/shadow/MediaControlElements.h:

(MediaControlFullscreenButtonElement):

  • html/shadow/MediaControlRootElementChromium.cpp:

(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):

  • html/shadow/MediaControlRootElementChromium.h:

(MediaControlRootElementChromium):

  • html/track/LoadableTextTrack.cpp:

(WebCore::LoadableTextTrack::LoadableTextTrack):

  • html/track/LoadableTextTrack.h:

(LoadableTextTrack):

  • inspector/CodeGeneratorInspector.py:

(Generator.go):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::InspectorCSSAgent):

  • inspector/InspectorCSSAgent.h:

(InspectorCSSAgent):

  • inspector/InspectorDOMDebuggerAgent.cpp:

(WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):

  • inspector/InspectorDOMDebuggerAgent.h:

(InspectorDOMDebuggerAgent):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::InspectorMemoryAgent):

  • inspector/InspectorMemoryAgent.h:

(InspectorMemoryAgent):

  • notifications/NotificationController.cpp:

(WebCore::NotificationController::NotificationController):

  • notifications/NotificationController.h:

(NotificationController):

  • page/animation/CompositeAnimation.h:

(WebCore::CompositeAnimation::CompositeAnimation):
(CompositeAnimation):

  • platform/Length.cpp:
  • platform/audio/ReverbConvolver.cpp:

(WebCore::ReverbConvolver::ReverbConvolver):

  • platform/audio/ReverbConvolver.h:

(ReverbConvolver):

  • platform/audio/ReverbConvolverStage.cpp:

(WebCore::ReverbConvolverStage::ReverbConvolverStage):

  • platform/audio/ReverbConvolverStage.h:

(ReverbConvolverStage):

  • platform/graphics/TextRun.cpp:

(ExpectedTextRunSize):

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

(CCThreadProxy):

  • platform/graphics/filters/FECustomFilter.cpp:

(WebCore::FECustomFilter::FECustomFilter):

  • platform/graphics/filters/FECustomFilter.h:

(FECustomFilter):

  • platform/image-decoders/jpeg/JPEGImageDecoder.cpp:

(JPEGImageReader):

  • platform/leveldb/LevelDBTransaction.cpp:

(WebCore::LevelDBTransaction::TreeIterator::next):

  • platform/text/TextCodecICU.cpp:

(WebCore::TextCodecICU::TextCodecICU):

  • platform/text/TextCodecICU.h:

(TextCodecICU):

  • rendering/InlineBox.cpp:
  • rendering/InlineFlowBox.cpp:
  • rendering/RenderText.cpp:
  • rendering/style/KeyframeList.h:

(WebCore::KeyframeList::KeyframeList):
(KeyframeList):

  • rendering/svg/RenderSVGTextPath.cpp:

(WebCore::RenderSVGTextPath::RenderSVGTextPath):

  • rendering/svg/RenderSVGTextPath.h:
  • rendering/svg/SVGInlineTextBox.cpp:
  • svg/SVGPathByteStreamSource.cpp:
  • svg/SVGPathByteStreamSource.h:
  • svg/SVGPathTraversalStateBuilder.cpp:

(WebCore::SVGPathTraversalStateBuilder::SVGPathTraversalStateBuilder):

  • svg/SVGPathTraversalStateBuilder.h:

(SVGPathTraversalStateBuilder):

  • xml/XSLStyleSheet.h:

Source/WebKit/chromium:

  • src/AudioDestinationChromium.cpp:

(WebCore::AudioDestinationChromium::AudioDestinationChromium):

  • src/AudioDestinationChromium.h:

(AudioDestinationChromium):

  • src/InspectorFrontendClientImpl.cpp:

(WebKit::InspectorFrontendClientImpl::InspectorFrontendClientImpl):

  • src/InspectorFrontendClientImpl.h:

(InspectorFrontendClientImpl):

  • src/WebFrameImpl.cpp:

(ChromePluginPrintContext):

  • src/WebInputEvent.cpp:
  • src/WorkerAsyncFileSystemChromium.cpp:

(WebCore::WorkerAsyncFileSystemChromium::createWorkerFileSystemCallbacksBridge):

  • src/WorkerAsyncFileWriterChromium.cpp:

(WebCore::WorkerAsyncFileWriterChromium::WorkerAsyncFileWriterChromium):

  • src/WorkerAsyncFileWriterChromium.h:

(WorkerAsyncFileWriterChromium):

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTestSetVisible::CCLayerTreeHostTestSetVisible):
(CCLayerTreeHostTestSetVisible):

23:22 Changeset [120043] by dominicc@chromium.org

[Chromium] Unreviewed: Rebaseline gradients tests

r120033 added IMAGE failures for bunch of gradient tests that will
need rebaselining as a result of that change. This is that
rebaseline.

(File list elided because it is too long.)

23:17 Changeset [120042] by kinuko@chromium.org

XHR returns size==0 Blob
https://bugs.webkit.org/show_bug.cgi?id=88750

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Response Blob's .size field must have the correct response size.

Test: http/tests/xmlhttprequest/response-blob-size.html

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseBlob):

LayoutTests:

  • http/tests/xmlhttprequest/response-blob-size-expected.txt: Added.
  • http/tests/xmlhttprequest/response-blob-size.html: Added.
23:03 Changeset [120041] by ryuan.choi@samsung.com

[CMAKE][WK2] Make WebProcess target name more clear.
https://bugs.webkit.org/show_bug.cgi?id=88767

Reviewed by Ryosuke Niwa.

  • CMakeLists.txt: Change WebProcess_NAME to WebProcess_EXECUTABLE_NAME.
22:40 Changeset [120040] by commit-queue@webkit.org

Introduce an Enclosure Element for Chromium video controls.
https://bugs.webkit.org/show_bug.cgi?id=87683

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-06-11
Reviewed by Eric Carlson.

Source/WebCore:

Updated tests.

The Chrome video controls are receiving a visual update. A new enclosure div is required
to provide for a offset space from the video's boundaries. The visual update itself is in
a separate patch.

  • css/mediaControlsChromium.css:

(video::-webkit-media-controls-enclosure):
Introduce CSS for enclosure div so it doesn't show yet.

  • html/shadow/MediaControlRootElementChromium.cpp:

(WebCore::MediaControlChromiumEnclosureElement::MediaControlChromiumEnclosureElement):
Definition of the new enclosure element.
(WebCore::MediaControlChromiumEnclosureElement::create):
Definition of a create operator for the new enclosure element.
(WebCore::MediaControlChromiumEnclosureElement::shadowPseudoId):
Definition of the shadowPseudoId of -webkit-media-controls-enclosure for the enclosure div.
(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
Initialize member element for enclosure div.
(WebCore::MediaControlRootElementChromium::create):
Instantiate enclosure div and add into DOM between controls and panel elements.
(WebCore::MediaControlRootElementChromium::setMediaController):
Set media controller for enclosure div.
(WebCore::MediaControlRootElementChromium::createTextTrackDisplay):
Insert text track display container to enclosure rather than panel.

  • html/shadow/MediaControlRootElementChromium.h:

(WebCore):
(MediaControlChromiumEnclosureElement):
(WebCore::MediaControlChromiumEnclosureElement::setMediaController):
(WebCore::MediaControlChromiumEnclosureElement::mediaController):
(WebCore::MediaControlChromiumEnclosureElement::isMediaControlElement):
Add declaration of the new enclosure element and its member functions.
(MediaControlRootElementChromium):
Add member variable to controls root element to hold the enclosure element.

LayoutTests:

Change fullscreen/video-controls-override.html, media/media-controls-invalid-url.html and
media/track/track-cue-rendering-snap-to-lines-not-set.html to deal with the new enclosure
div in Chromium controls and use the mediaControlsElement() helper function to find elements
inside the controls.
Fail video controls tests in test expectations.

  • fullscreen/video-controls-override-expected.txt: Updated.
  • fullscreen/video-controls-override.html: Use mediaControlsElement helper function.
  • media/media-controls-invalid-url.html: Use mediaControlsElement helper function.
  • media/track/track-cue-rendering-snap-to-lines-not-set.html: Height is provided by enclosure element.
  • platform/chromium/TestExpectations: Fail video controls tests.
22:32 Changeset [120039] by ojan@chromium.org

Don't show the ASAN builders in garden-o-matic since they don't get block WebKit rolls.
https://bugs.webkit.org/show_bug.cgi?id=88836

Reviewed by Dirk Pranke.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js:
21:23 Changeset [120038] by dominicc@chromium.org

[Chromium] Unreviewed: Expectations for track-cues-cuechange.html
https://bugs.webkit.org/show_bug.cgi?id=88833

media/track/track-cues-cuechange.html is timing out flakily like
some other media tests noted in bug 88833.

  • platform/chromium/TestExpectations:
21:10 Changeset [120037] by commit-queue@webkit.org

WebKit doesn't allow replacing the document element with a DocumentFragment containing one element
https://bugs.webkit.org/show_bug.cgi?id=88681

Patch by Elliott Sprehn <esprehn@gmail.com> on 2012-06-11
Reviewed by Ojan Vafai.

Source/WebCore:

Fix bug where replacing an immediate child of a Document with a DocumentFragment
would throw a HIERARCHY_REQUEST_ERR instead of replacing the node as required by DOM4.
http://www.w3.org/TR/domcore/#mutation-algorithms

  • dom/Document.cpp:

(WebCore::Document::canReplaceChild):

When the newChild was a DocumentFragment we incorrectly
iterated over the document's children twice instead of the
fragment when counting the total number of elements and
doctypes to enfoce that there's only one of each.

LayoutTests:

Re-enables a bunch of disabled tests that are long since fixed and rewrites
the tests to use a more modern js-test-pre.js style.
https://bugs.webkit.org/show_bug.cgi?id=12751

  • fast/dom/Document/replace-child-expected.txt:
  • fast/dom/Document/replace-child.html:
20:46 Changeset [120036] by mary.wu@torchmobile.com.cn

[BlackBerry] Add handling of notifyDataReceived in NetworkJob even there's no data inside
https://bugs.webkit.org/show_bug.cgi?id=88773

Reviewed by Rob Buis.

Handling notifyDataReceived event even if there is no data inside.
This event was critical because it gives downloadFilterStream a chance
to follow up NetworkStream close event, and it also make pluginView in
FrameLoaderBlackBerry return normal logic.

RIM PR# 164563

Reviewed internally by Leo Yang.

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::handleNotifyDataReceived):

20:44 Changeset [120035] by mary.wu@torchmobile.com.cn

[BlackBerry] Wrong mimetype for empty file link
https://bugs.webkit.org/show_bug.cgi?id=88642

Reviewed by Rob Buis.

RIM PR# 164164

For empty file link, we shouldn't give "application/octet-stream"
which will lead to download.

Reviewed internally by Charles Wei.

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::sendResponseIfNeeded):

20:21 Changeset [120034] by dominicc@chromium.org

[Chromium] Unreviewed: Update test expectations with bugs for media test timeouts

  • platform/chromium/TestExpectations:
20:04 Changeset [120033] by commit-queue@webkit.org

GeneratorGeneratedImage should cache images for the non-tiled case
https://bugs.webkit.org/show_bug.cgi?id=87094

Patch by Jin Yang <jin.a.yang@intel.com> on 2012-06-11
Reviewed by Simon Fraser.

Source/WebCore:

We cache the generated image if generator is not changed. By compared
with generating image on the fly, it will lose a little pixel precision
and several layout tests should be rebaselined. With this patch, the IE test
drive benchmark "Bayou" can gain about 50%.

No new tests. Performance optimization.

  • platform/graphics/GeneratorGeneratedImage.cpp:

(WebCore::GeneratorGeneratedImage::draw):

LayoutTests:

Update expectations: added failures for baselines to come.

  • platform/chromium/TestExpectations:
20:04 Changeset [120032] by commit-queue@webkit.org

[EFL] Remove CMakeCache.txt before building
https://bugs.webkit.org/show_bug.cgi?id=88717

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-11
Reviewed by Antonio Gomes.

Remove CMake cache file before every build to avoid using outdated
build flags when new features get enabled. This will avoid unexpected
failures on the bots due to outdated build flags.

  • Scripts/webkitdirs.pm:

(generateBuildSystemFromCMakeProject):

20:02 Changeset [120031] by scheib@chromium.org

Add new Pointer Lock spec attribute webkitPointerLockElement.
https://bugs.webkit.org/show_bug.cgi?id=88799

Source/WebCore:

Reviewed by Dimitri Glazkov.

Part of a series of refactoring changes to update pointer lock API to
the fullscreen locking style. https://bugs.webkit.org/show_bug.cgi?id=84402

New attribute webkitPointerLockElement added. Follow up patches
will remove the previous isLocked attribute. Tests updated to use
the new attribute.

  • bindings/generic/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::webkitPointerLockElementEnabled):

  • dom/Document.cpp:

(WebCore):
(WebCore::Document::webkitPointerLockElement):

  • dom/Document.h:

(Document):

  • dom/Document.idl:
  • page/PointerLockController.h:

(WebCore::PointerLockController::element):

Tools:

Reviewed by Dimitri Glazkov.

Part of a series of refactoring changes to update pointer lock API to
the fullscreen locking style. https://bugs.webkit.org/show_bug.cgi?id=84402

New attribute webkitPointerLockElement added. Follow up patches
will remove the previous isLocked attribute. Tests updated to use
the new attribute.

WebViewHost logic required modification to correctly repond to
a lock, unlock, pointerLockElement call series. Specifically,
unlocking must be queued after a lock command is issued always
as the lock state may not be set yet with a lock request in flight.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::requestPointerUnlock): Always post didLosePointerLock task.
(WebViewHost::didLosePointerLock): Signal didLosePointerLock only if pointer was locked.

LayoutTests:

Part of a series of refactoring changes to update pointer lock API to
the fullscreen locking style. https://bugs.webkit.org/show_bug.cgi?id=84402

New attribute webkitPointerLockElement added. Follow up patches
will remove the previous isLocked attribute. Tests updated to use
the new attribute.

Reviewed by Dimitri Glazkov.

  • pointer-lock/lock-already-locked-expected.txt:
  • pointer-lock/lock-already-locked.html:
  • pointer-lock/pointer-lock-api-expected.txt:
  • pointer-lock/pointer-lock-api.html:
  • pointer-lock/pointerlocklost-event-expected.txt:
  • pointer-lock/pointerlocklost-event.html:
19:51 Changeset [120030] by scheib@chromium.org

Consolidate Pointer Lock runtime enabled flags to just one.
https://bugs.webkit.org/show_bug.cgi?id=88810

Reviewed by Dimitri Glazkov.

Source/WebCore:

No new tests.

  • bindings/generic/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::pointerLockEnabled):
(WebCore::RuntimeEnabledFeatures::setPointerLockEnabled):

  • dom/MouseEvent.idl:
  • page/Navigator.idl:

Source/WebKit/chromium:

  • src/WebRuntimeFeatures.cpp:

(WebKit::WebRuntimeFeatures::enablePointerLock):
(WebKit::WebRuntimeFeatures::isPointerLockEnabled):

19:21 Changeset [120029] by alexis.menard@openbossa.org

[CSS3 Backgrounds and Borders] Protect box-decoration-break behind a feature flag.
https://bugs.webkit.org/show_bug.cgi?id=88804

Reviewed by Tony Chang.

Protect box-decoration-break behind a feature flag enabled by default.

.:

  • configure.ac:

Source/WebCore:

No new tests : no behavior change here.

  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.am:
  • css/CSSComputedStyleDeclaration.cpp:

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

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSValueKeywords.in:
  • css/StyleBuilder.cpp:

(WebCore::StyleBuilder::StyleBuilder):

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

(WebCore::StyleBoxData::StyleBoxData):
(WebCore::StyleBoxData::operator==):

  • rendering/style/StyleBoxData.h:

(StyleBoxData):

Source/WebKit/chromium:

  • features.gypi:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
  • qmake/mkspecs/features/features.pri:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:
19:05 Changeset [120028] by dominicc@chromium.org

[Chromium] Unreviewed: http/tests/xmlhttprequest/origin-exact-matching.html is timing out on XP about half the time

  • platform/chromium/TestExpectations:
18:48 Changeset [120027] by jchaffraix@webkit.org

Unreviewed expected result update after r120017.

  • platform/gtk/fast/block/basic/fieldset-stretch-to-legend-expected.txt:

Rebaselined gtk.

  • platform/efl/Skipped:
  • platform/qt/Skipped:

Skipped the test with some explanation on those platforms as I couldn't get
the new baseline.

18:42 Changeset [120026] by mitz@apple.com

Updated expected results for this test after r120017.

  • platform/mac/fast/block/basic/fieldset-stretch-to-legend-expected.png:
  • platform/mac/fast/block/basic/fieldset-stretch-to-legend-expected.txt:
18:12 Changeset [120025] by mitz@apple.com

Added http/tests/security/mixedContent/blob-url-in-iframe.html back to the Mac skip list, as
it is still failing intermittently. <http://webkit.org/b/88736> will track this.

  • platform/mac/Skipped:
18:09 FeatureFlags edited by tkent@chromium.org
Add CSS_IMAGE_RESOLUTION (diff)
17:58 Changeset [120024] by gyuyoung.kim@samsung.com

[CMAKE][EFL] Remove duplicated executable output path
https://bugs.webkit.org/show_bug.cgi?id=88765

Reviewed by Daniel Bates.

CMake files for EFL port have redefined executable output path. However, EFL port doesn't
need to define again because it is already defined in top-level CMake file.

Source/JavaScriptCore:

  • shell/CMakeLists.txt:

Source/WebKit2:

  • CMakeLists.txt:

Tools:

  • DumpRenderTree/efl/CMakeLists.txt:
  • EWebLauncher/CMakeLists.txt:
17:39 Changeset [120023] by jamesr@google.com

[chromium] Port DrawingBufferChromium from TextureLayerChromium over to WebExternalTextureLayer
https://bugs.webkit.org/show_bug.cgi?id=86273

Reviewed by Adrienne Walker.

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebExternalTextureLayer.h:

(WebKit):
(WebExternalTextureLayer):

  • chromium/public/WebExternalTextureLayerClient.h: Copied from Source/WebKit/chromium/src/WebExternalTextureLayer.cpp.

(WebKit):
(WebTextureUpdater):
(WebKit::WebTextureUpdater::~WebTextureUpdater):
(WebExternalTextureLayerClient):
(WebKit::WebExternalTextureLayerClient::~WebExternalTextureLayerClient):

Source/WebCore:

This converts more WebCore code over to using public APIs instead of internal compositor layer types.

Refactor only, no change in behavior thus no new tests.

  • platform/graphics/chromium/DrawingBufferChromium.cpp:

(WebCore::DrawingBufferPrivate::DrawingBufferPrivate):
(WebCore::DrawingBufferPrivate::~DrawingBufferPrivate):
(WebCore::DrawingBufferPrivate::layer):
(DrawingBufferPrivate):

  • platform/graphics/chromium/TextureLayerChromium.cpp:

(WebCore::TextureLayerChromium::~TextureLayerChromium):
(WebCore::TextureLayerChromium::setRateLimitContext):
(WebCore::TextureLayerChromium::setNeedsDisplayRect):
(WebCore::TextureLayerChromium::update):

  • platform/graphics/chromium/TextureLayerChromium.h:

(WebKit):
(TextureLayerChromiumClient):

Source/WebKit/chromium:

  • src/WebExternalTextureLayer.cpp:

(WebTextureUpdaterImpl):
(WebKit::WebTextureUpdaterImpl::WebTextureUpdaterImpl):
(WebKit):
(WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayer::create):
(WebKit::WebExternalTextureLayer::clearClient):
(WebKit::WebExternalTextureLayer::setOpaque):
(WebKit::WebExternalTextureLayer::setPremultipliedAlpha):

17:32 Changeset [120022] by commit-queue@webkit.org

[BlackBerry] Autofill feature implementation for BlackBerry porting
https://bugs.webkit.org/show_bug.cgi?id=85577

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-06-11
Reviewed by Rob Buis.

Remove the autofill saving procedure out of dispatchWillSubmitForm, this procedure
is same as the procedure in dispatchWillSendSubmitEvent.
Some sites will redirect to other url in its login process, which will cause the
user get notified to save credentials for this provisional redirecting url if we
put this saving procedure in dispatchWillSubmitForm. So we should remove it to make
sure we only save the autofill data before the submit event is fired.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchWillSubmitForm):

17:29 Changeset [120021] by andersca@apple.com

Pass the right color space over to the web process so we can set it on our CA context
https://bugs.webkit.org/show_bug.cgi?id=88819
<rdar://problem/11629050>

Reviewed by John Sullivan.

Source/WebKit2:

  • Platform/mac/LayerHostingContext.h:

(LayerHostingContext):

  • Platform/mac/LayerHostingContext.mm:

(WebKit::LayerHostingContext::createForPort):
(WebKit::LayerHostingContext::createForWindowServer):
Use a single constructor and explicitly set up the parameters of the constructed object.

(WebKit::LayerHostingContext::setColorSpace):
(WebKit::LayerHostingContext::colorSpace):
Add getter and setter.

  • Scripts/webkit2/messages.py:

(struct_or_class):
WebKit::ColorSpaceData is a struct.

  • Shared/WebPageCreationParameters.cpp:

Encode and decode the color space parameter.

  • Shared/WebPageCreationParameters.h:

Add the color space.

  • Shared/mac/ColorSpaceData.h: Added.
  • Shared/mac/ColorSpaceData.mm: Added.

Add a new class that represents a color space that can be sent over the wire.

  • UIProcess/API/mac/PageClientImpl.h:
  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::colorSpace):
Call through to the WKView.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _windowDidChangeBackingProperties:]):
Fix whitespace.

(-[WKView viewDidChangeBackingProperties]):
Check if our new color space is different from the current one and null the current one out if that is the case,
it will be reinitialized by the next call to -[WKView _colorSpace].

(-[WKView _colorSpace:]):
Compute the color space. If we're not in a window we'll get the main screen's color space.

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::colorSpaceDidChange):
Add empty stub.

  • UIProcess/PageClient.h:

Add colorSpace getter.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):
Initialize the color space.

  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:

(WebKit::TiledCoreAnimationDrawingAreaProxy::colorSpaceDidChange):
Send the new color space over to the web process.

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::colorSpace):
Call through to the page client.

  • WebKit2.xcodeproj/project.pbxproj:

Add ColorSpaceData.h and ColorSpaceData.mm.

  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/DrawingArea.messages.in:

Add SetColorSpace message.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
Set the color space from the creation parameters.

(WebKit::TiledCoreAnimationDrawingArea::setColorSpace):
Set the color space on the layer hosting context.

(WebKit::TiledCoreAnimationDrawingArea::updateLayerHostingContext):
Make sure we apply the color space from the previous layer hosting context if one exists.

WebKitLibraries:

Add WKCAContextSetColorSpace and WKCAContextGetColorSpace.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceSnowLeopard.a:
17:02 Changeset [120020] by commit-queue@webkit.org

[BlackBerry] Seek calls are being unnecessarily delayed
https://bugs.webkit.org/show_bug.cgi?id=88732

Patch by Max Feil <mfeil@rim.com> on 2012-06-11
Reviewed by Antonio Gomes.

There is a problem with the way the m_userDrivenSeekTimer is
implemented. When MediaPlayerPrivate::seek() is called, there
is always a 100ms delay even if the timer is not running. The
timer is supposed to space out (i.e. throttle) repeated seeks
that come in too soon after a previous seek, but currently it
is slowing down even single seeks and seeks that come in with
adequate delay after a previous seek. I fixed this in my patch
by improving the way the timer fired function is called.

A note on the new m_lastSeekTimePending flag: This flag is
needed so that userDrivenSeekTimerFired() knows whether or not
to perform the seek. The only case where this flag will not be
set is if no MediaPlayerPrivate::seek() call came in while the
timer was active, in which case it's important to do nothing.
I could encode this flag's information into the m_lastSeekTime
float, for example by initializing it and resetting it to NAN
and using isnan(). But I feel that using a separate bool is a
more portable approach.

No new tests. I would like to propose not including a layout test
with this fix. Doing timing tests for 100ms delays is tricky
from Javascript, and I don't think the benefit of such a test
outweighs the extra time it would take to develop one. The test
would also be a problem to maintain as it may give different
results over different runs and across different target hardware.

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:

(WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::seek):
(WebCore::MediaPlayerPrivate::userDrivenSeekTimerFired):

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:

(MediaPlayerPrivate):

16:48 Changeset [120019] by ojan@chromium.org

Don't consider show warnings in the garden-o-matic UI for non-layout test failures
https://bugs.webkit.org/show_bug.cgi?id=88816

Reviewed by Dirk Pranke.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/base.js:

Expose a way to clear AsynchronousCaches.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js:

Clear the buildInfo cache at the beginning of each test in order to avoid having one test affect another.

16:18 Changeset [120018] by commit-queue@webkit.org

[BlackBerry] Unexpected repeats of short media
https://bugs.webkit.org/show_bug.cgi?id=88733

Patch by Max Feil <mfeil@rim.com> on 2012-06-11
Reviewed by Antonio Gomes.

Source/WebCore:

The m_userDrivenSeekTimer is causing unwanted repeats of short
media such as sound effects because it is causing the current
time to not reflect that the media has finished playing.
This problem only affects media whose duration is close to
or less than the SeekSubmissionDelay, which is currently
set to 100ms. My fix is to ignore the userDrivenSeekTimer in
MediaPlayerPrivate::currentTime() if the duration of the media
is within twice the SeekSubmissionDelay. Seek drag smoothness
is a non-issue for such short media.

Test: platform/blackberry/media/short-media-repeats-correctly.html

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:

(WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
(WebCore):
(WebCore::MediaPlayerPrivate::currentTime):
(WebCore::MediaPlayerPrivate::seek):
(WebCore::MediaPlayerPrivate::userDrivenSeekTimerFired):

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:

(MediaPlayerPrivate):

LayoutTests:

Test for problem where short media repeats unintentionally.

  • media/content/short.wav: Added.
  • platform/blackberry/media/short-media-repeats-correctly-expected.txt: Added.
  • platform/blackberry/media/short-media-repeats-correctly.html: Added.
16:14 Changeset [120017] by jchaffraix@webkit.org

Account for margin after when laying out <legend> element
https://bugs.webkit.org/show_bug.cgi?id=35981

Reviewed by Abhishek Arya.

Source/WebCore:

Tests: fast/forms/legend-after-margin-horizontal-writing-mode.html

fast/forms/legend-after-margin-vertical-writing-mode.html
fast/forms/legend-after-margin-with-before-border-horizontal-mode.html
fast/forms/legend-small-after-margin-before-border-horizontal-mode.html

The existing code would ignore margin after when layouting out the <legend>. This
change only adds the code to handle the margin after, the margin before is still
ignored as it's not obvious how it should be working.

  • rendering/RenderFieldset.cpp:

(WebCore::RenderFieldset::layoutSpecialExcludedChild):
Split the code in 2 code paths to reflect how we position and size. Those are covered by the
tests above.

LayoutTests:

  • fast/forms/legend-after-margin-horizontal-writing-mode-expected.html: Added.
  • fast/forms/legend-after-margin-horizontal-writing-mode.html: Added.
  • fast/forms/legend-after-margin-vertical-writing-mode-expected.html: Added.
  • fast/forms/legend-after-margin-vertical-writing-mode.html: Added.
  • fast/forms/legend-after-margin-with-before-border-horizontal-mode-expected.html: Added.
  • fast/forms/legend-after-margin-with-before-border-horizontal-mode.html: Added.
  • fast/forms/legend-small-after-margin-before-border-horizontal-mode-expected.html: Added.
  • fast/forms/legend-small-after-margin-before-border-horizontal-mode.html: Added.
16:12 Changeset [120016] by jamesr@google.com

[chromium] Use WebGraphicsContext3D in rate limiting logic inside compositor
https://bugs.webkit.org/show_bug.cgi?id=86259

Reviewed by Adrienne Walker.

This refactors the compositor's rate limiting implementation to use the Platform API's WebGraphicsContext3D
directly instead of WebCore::GraphicsContext3D to cut down on the number of spurious WebCore dependencies in the
compositor. The one change in contract is that the caller to CCLayerTreeHost::startRateLimit() now has to call
CCLayerTreeHost::stopRateLimit() before allowing the referenced context to go away since CCLayerTreeHost no
longer retains a reference, but this was always happening already.

  • platform/graphics/chromium/Canvas2DLayerChromium.cpp:

(WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
(WebCore::Canvas2DLayerChromium::setNeedsDisplayRect):

  • platform/graphics/chromium/RateLimiter.cpp:

(WebCore::RateLimiter::create):
(WebCore::RateLimiter::RateLimiter):
(WebCore::RateLimiter::start):
(WebCore::RateLimiter::rateLimitContext):

  • platform/graphics/chromium/RateLimiter.h:

(WebKit):
(RateLimiter):

  • platform/graphics/chromium/TextureLayerChromium.cpp:

(WebCore::TextureLayerChromium::~TextureLayerChromium):
(WebCore::TextureLayerChromium::setRateLimitContext):
(WebCore::TextureLayerChromium::setNeedsDisplayRect):

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

(WebCore::CCLayerTreeHost::startRateLimiter):
(WebCore::CCLayerTreeHost::stopRateLimiter):
(WebCore::CCLayerTreeHost::rateLimit):
(WebCore):

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

(CCLayerTreeHost):

15:58 Changeset [120015] by danakj@chromium.org

[chromium] Separate CCVideoDrawQuad and from the layer tree and video provider by removing ManagedTexture and WebVideoFrame pointers from the quad
https://bugs.webkit.org/show_bug.cgi?id=88363

Reviewed by Adrienne Walker.

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebVideoFrame.h:
  • chromium/src/WebVideoFrame.cpp: Removed.

Source/WebCore:

CCVideoDrawQuad should not contain any pointers to data in the layer
tree so we are able to serialize it across process boundaries. This
patch removes the ManagedTexture pointers from the quad class,
replacing them with texture ids. It removes the WebVideoFrame* from
the quad, replacing it with the frame provider's texture id included
in the WebVideoFrame structure. And it uses a WebTransformationMatrix
instead of a pointer to an array of floats.

Texture allocation is done in CCVideoLayerImpl via the
contentsTextureAllocator, so that the memory usage can be tracked.

We move the copyPlaneToTextures() method back from LayerRendererChromium
to CCVideoLayerImpl, as this method uses the texture data pointer in the
WebVideoFrame, and we do not want to give this pointer to the quad
class. Instead, this method makes use of the LayerTextureSubImage class
to copy the pixel data into the texture.

LayerTextureSubImage is updated to allow non-4byte texture formats.

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawYUV):
(WebCore::LayerRendererChromium::drawRGBA):
(WebCore::LayerRendererChromium::drawNativeTexture2D):
(WebCore::LayerRendererChromium::drawStreamTexture):
(WebCore::LayerRendererChromium::drawVideoQuad):

  • platform/graphics/chromium/LayerTextureSubImage.cpp:

(WebCore::LayerTextureSubImage::uploadWithTexSubImage):
(WebCore::LayerTextureSubImage::uploadWithMapTexSubImage):

  • platform/graphics/chromium/TextureCopier.cpp:
  • platform/graphics/chromium/cc/CCVideoDrawQuad.cpp:

(WebCore::CCVideoDrawQuad::create):
(WebCore::CCVideoDrawQuad::CCVideoDrawQuad):

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

(CCVideoDrawQuad):
(WebCore::CCVideoDrawQuad::planes):
(WebCore::CCVideoDrawQuad::frameProviderTextureId):

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

(WebCore::CCVideoLayerImpl::~CCVideoLayerImpl):
(WebCore::CCVideoLayerImpl::willDraw):
(WebCore::CCVideoLayerImpl::willDrawInternal):
(WebCore::CCVideoLayerImpl::appendQuads):
(WebCore::CCVideoLayerImpl::didDraw):
(WebCore::CCVideoLayerImpl::FramePlane::allocateData):
(WebCore):
(WebCore::CCVideoLayerImpl::FramePlane::freeData):
(WebCore::CCVideoLayerImpl::allocatePlaneData):
(WebCore::CCVideoLayerImpl::copyPlaneData):
(WebCore::CCVideoLayerImpl::freePlaneData):
(WebCore::CCVideoLayerImpl::freeUnusedPlaneData):
(WebCore::CCVideoLayerImpl::didLoseContext):

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

(FramePlane):
(WebCore::CCVideoLayerImpl::FramePlane::FramePlane):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:
  • tests/CCTiledLayerTestCommon.h:

(WebKitTests::FakeTextureCopier::copyToTexture):

  • tests/Canvas2DLayerChromiumTest.cpp:
15:41 Changeset [120014] by jsbell@chromium.org

IndexedDB: Object stores are not successfully deleted
https://bugs.webkit.org/show_bug.cgi?id=88788

Reviewed by Tony Chang.

Source/WebCore:

Discovered while working on http://webkit.org/b/83074 - object stores are not
being deleted from the backing store. Deletion would succeed in the in-memory
data structures, but after closing/re-opening the backing store the object store
(but not its indexes/data) would reappear. Due to 83074, this isn't detectable
by DRT without a full restart.

Test: [chromium] webkit_unit_tests --gtest_filter='IDBLevelDBCodingTest.ComparisonTest'

  • Modules/indexeddb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::compare):

Source/WebKit/chromium:

  • tests/IDBLevelDBCodingTest.cpp:

(IDBLevelDBCoding::TEST):

15:29 Changeset [120013] by ericu@chromium.org

Crash in fast/files/read tests during Garbage Collection
https://bugs.webkit.org/show_bug.cgi?id=87165

Reviewed by Michael Saboff

Source/WebCore:

Fix previous fix for hasPendingActivity, and fix a bug in a complex
abort case as well--abort during the final progress event of a write
would hang the writer.

  • Modules/filesystem/FileWriter.cpp:

(WebCore::FileWriter::stop):
(WebCore::FileWriter::write):
(WebCore::FileWriter::truncate):
(WebCore::FileWriter::didWrite):
(WebCore::FileWriter::didTruncate):
(WebCore::FileWriter::didFail):
(WebCore::FileWriter::completeAbort):
(WebCore::FileWriter::doOperation):
(WebCore::FileWriter::signalCompletion):

LayoutTests:

Simplify file-writer-abort-continue.js a bit, and add a new test case
for a write that gets aborted in the final progress event, which
previously would have hung the FileWriter.

  • fast/filesystem/file-writer-abort-continue-expected.txt:
  • fast/filesystem/resources/file-writer-abort-continue.js:
15:16 Changeset [120012] by commit-queue@webkit.org

.: Replace obsolete mkdir_p variable with MKDIR_P
https://bugs.webkit.org/show_bug.cgi?id=88790

Patch by Arnaud Renevier <arno@renevier.net> on 2012-06-11
Reviewed by Martin Robinson.

  • GNUmakefile.am:
  • configure.ac:

Source/WebKit/gtk/po: Replace obsolete mkdir_p variables with MKDIR_P
https://bugs.webkit.org/show_bug.cgi?id=88790

Patch by Arnaud Renevier <arno@renevier.net> on 2012-06-11
Reviewed by Martin Robinson.

  • GNUmakefile.am:
15:05 Changeset [120011] by commit-queue@webkit.org

WebAudio tests need to set WebKitWebAudioEnabled.
https://bugs.webkit.org/show_bug.cgi?id=88624

Patch by Dongwoo Im <dw.im@samsung.com> on 2012-06-11
Reviewed by Chris Rogers.

  • webaudio/audiochannelmerger-basic.html: Set WebKitWebAudioEnabled by including 'audio-testing.js'.
  • webaudio/audionode-connect-order.html: ditto.
  • webaudio/biquadfilternode-basic.html: ditto.
  • webaudio/delaynode-maxdelay.html: ditto.
  • webaudio/delaynode-scheduling.html: ditto.
  • webaudio/delaynode.html: ditto.
  • webaudio/javascriptaudionode-downmix8-2channel-input.html: ditto.
  • webaudio/javascriptaudionode-upmix2-8channel-input.html: ditto.
  • webaudio/mediaelementaudiosourcenode-gc.html: ditto.
  • webaudio/mediaelementaudiosourcenode.html: ditto.
  • webaudio/realtimeanalyser-fft-sizing.html: ditto.
  • webaudio/stereo2mono-down-mixing.html: ditto.
15:04 Changeset [120010] by tonikitoo@webkit.org

[BlackBerry] [BlackBerry] browser video player fullscreen mode (portrait) does not play well with rotation
https://bugs.webkit.org/show_bug.cgi?id=88809

Reviewed by Rob Buis.
Patch by Antonio Gomes <agomes@rim.com>

Adjust the media container dimensions, whenever the FrameView::frameRect
(aka viewport rect) changes

Reviewed internally by Jacky Jiang.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::updateViewportSize):

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::fullScreenRendererChanged):

15:03 Changeset [120009] by tonikitoo@webkit.org

browser video player fullscreen mode (portrait) does not play well with viewport metatag - Controls are off screen so cannot exit fullscreen https://bugs.webkit.org/show_bug.cgi?id=88719 PR #164026

Reviewed by Rob Buis.
Patch by Antonio Gomes <agomes@rim.com>

Instead of using WebPage's viewport size, which suffers from
dealing with transformed coordinates, viewport metatag changes,
etc, lets use WebCore::FrameView's visibleContentRect::Size::Width,
which abstract all these variations.

It fixes an overscale issue we were having when video player entered
fullscreen, and webpage had viewport metatag set.

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::fullScreenRendererChanged):

14:37 Changeset [120008] by shawnsingh@chromium.org

[chromium] Implement position:fixed in compositor thread
https://bugs.webkit.org/show_bug.cgi?id=70103

Reviewed by Adrienne Walker.

Source/WebCore:

Significant contributions to this patch by Alpha Lam and Sami Kyostila.

This patch is the compositor-side change that adds support for
fixed-position layers to be composited layers. Before this patch,
fixed-position elements were positioned only by WebCore (i.e. main
thread when painting), and the compositor did not have enough
knowledge on its own to position it properly. This patch adds the
necessary math and plumbs the necessary layer information so that
the impl thread can properly position fixed-position elements on
its own. This support is necessary for correctness of composited
fixed-position elements, which can greatly help to avoid
repainting container layers when scrolling with a fixed-position
layer.

There also needs to be WebCore-side support for this, which is
addressed in https://bugs.webkit.org/show_bug.cgi?id=78864

Unit tests added to CCLayerTreeHostCommonTest:

CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerWithDirectContainer
CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerWithTransformedDirectContainer
CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerWithDistantContainer
CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerWithDistantContainerAndTransforms
CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerWithMultipleScrollDeltas
CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerWithIntermediateSurfaceAndTransforms
CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerWithMultipleIntermediateSurfaces
CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerWithContainerLayerThatHasSurface
CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerThatIsAlsoFixedPositionContainer
CCLayerTreeHostCommonTest.verifyScrollCompensationForFixedPositionLayerThatHasNoContainer

  • platform/graphics/chromium/LayerChromium.cpp:

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

  • platform/graphics/chromium/LayerChromium.h:

(WebCore::LayerChromium::setIsContainerForFixedPositionLayers):
(WebCore::LayerChromium::isContainerForFixedPositionLayers):
(LayerChromium):
(WebCore::LayerChromium::setFixedToContainerLayerVisibleRect):
(WebCore::LayerChromium::fixedToContainerLayerVisibleRect):

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

(WebCore::CCLayerImpl::CCLayerImpl):

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

(WebCore::CCLayerImpl::setIsContainerForFixedPositionLayers):
(WebCore::CCLayerImpl::isContainerForFixedPositionLayers):
(CCLayerImpl):
(WebCore::CCLayerImpl::setFixedToContainerLayerVisibleRect):
(WebCore::CCLayerImpl::fixedToContainerLayerVisibleRect):

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

(WebCore::computeScrollCompensationForThisLayer):
(WebCore):
(WebCore::computeScrollCompensationMatrixForChildren):
(WebCore::calculateDrawTransformsInternal):
(WebCore::CCLayerTreeHostCommon::calculateDrawTransforms):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:
14:17 Changeset [120007] by dpranke@chromium.org

nrwt exits early too frequently
https://bugs.webkit.org/show_bug.cgi?id=73843

Reviewed by Ryosuke Niwa.

Change the defaults for new-run-webkit-tests for both
--exit-after-n-failures and --exit-after-n-crashes-or-timeouts
to zero (i.e., we will never exit early by default).

If people want their buildbots to exit early it is their
responsibility to update their buildbot configs appropriately.

Note that we have tests that ensure that these flags work for
non-zero numbers, but we don't have tests that either test the
default or ensure that zero means "run all of the tests". I
think that's okay but can add tests if others disagree.

Also note that it looks like no changes on the build.webkit.org
master.cfg are necessary; all of the bots seem to be using the
RunWebKitTests wrapper which is already setting the flags. There
is a NewRunWebKitTests wrapper, but that looks to be unused; I
will delete that in a separate patch.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(parse_args):

14:01 Changeset [120006] by jschuh@chromium.org

Merge 119733

BUG=127185
TBR=raymes@webkit.org
Review URL: https://chromiumcodereview.appspot.com/10540108

13:52 Changeset [120005] by weinig@apple.com

Remove support for disconnected/excluded from search frames, they are not used by Safari anymore
https://bugs.webkit.org/show_bug.cgi?id=88723

Reviewed by Dan Bernstein.

Source/WebCore:

  • WebCore.exp.in:

Update export.

  • editing/Editor.cpp:

(WebCore::Editor::rangeOfString):
(WebCore::Editor::countMatchesForText):

  • editing/Editor.h:

(Editor):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::findFrameForNavigation):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::parent):
(WebCore::DOMWindow::top):

  • page/EventHandler.cpp:

(WebCore::EventHandler::hitTestResultAtPoint):

  • page/Frame.cpp:

(WebCore::Frame::Frame):

  • page/Frame.h:

(Frame):

  • page/FrameTree.cpp:

(WebCore::FrameTree::parent):
(WebCore::FrameTree::top):

  • page/FrameTree.h:

(FrameTree):

  • page/Location.cpp:

(WebCore::Location::ancestorOrigins):

  • xml/XMLTreeViewer.cpp:

(WebCore::XMLTreeViewer::hasNoStyleInformation):
Update for the removal of disconnected frames and text search exclusions concepts.

Source/WebKit/blackberry:

  • WebKitSupport/InPageSearchManager.cpp:

(BlackBerry::WebKit::InPageSearchManager::scopeStringMatches):

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::scopeStringMatches):

Source/WebKit/mac:

  • WebView/WebFrame.mm:
  • WebView/WebFramePrivate.h:

Remove -[WebFrame _setIsDisconnected:] and -[WebFrame _setExcludeFromTextSearch:]

Source/WebKit/win:

  • WebFrame.cpp:

(WebFrame::setIsDisconnected):
(WebFrame::setExcludeFromTextSearch):
Stop doing anything in these functions.

13:30 Changeset [120004] by ojan@chromium.org

Last large slew of Chromium windows png rebaselines. See http://crbug.com/131829 for more information.
List of rebaselined files excluded because it's too long.

13:22 Changeset [120003] by commit-queue@webkit.org

[chromium] WebInputEvent::isGestureEventType should return true for GestureTwoFingerTap
https://bugs.webkit.org/show_bug.cgi?id=88789

Patch by Varun Jain <varunjain@chromium.org> on 2012-06-11
Reviewed by Adam Barth.

  • public/WebInputEvent.h:

(WebKit::WebInputEvent::isGestureEventType):

13:16 Changeset [120002] by andersca@apple.com

Crash when a plug-in tries to use the NPRuntime API with JavaScript disabled
https://bugs.webkit.org/show_bug.cgi?id=88797
<rdar://problem/11574844>

Reviewed by Brady Eidson.

  • PluginProcess/PluginControllerProxy.cpp:

(WebKit::PluginControllerProxy::initialize):
Handle the windowNPObjectID being 0.

(WebKit::PluginControllerProxy::windowScriptNPObject):
Handle m_windownPObject being null.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::windowScriptNPObject):
Return null if JavaScript is disabled.

(WebKit::PluginView::pluginElementNPObject):
Ditto.

13:16 Changeset [120001] by commit-queue@webkit.org

[EFL] [DRT] Reset CacheModel before running each test
https://bugs.webkit.org/show_bug.cgi?id=87534

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-11
Reviewed by Gustavo Noronha Silva.

Reset cache model to default before running each test to fix some
flaky tests on EFL build bots. Also fix case value in setCacheModel.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:

(LayoutTestController::setCacheModel):

13:15 Changeset [120000] by wangxianzhu@chromium.org

SVGImageCache leaks image data
https://bugs.webkit.org/show_bug.cgi?id=87792

Source/WebCore:

There are two functions to remove a client from a CachedImage:

  • CachedResource::removeClient()
  • CachedImage::removeClientForRenderer().

It's easy to make error to call the former which will leak the cached
image buffers in SVGImageCache.

This change combined the two by adding the virtual
CachedResource::didRemoveClient(). CachedImage will do SVGImageCache
cleanup in the function.

Reviewed by Nikolas Zimmermann.

Test: svg/as-image/svg-image-leak-cached-data.html

  • loader/cache/CachedFont.h:

(WebCore::CachedFontClient::resourceClientType): Added 'const'.

  • loader/cache/CachedImage.cpp:

(WebCore):
(WebCore::CachedImage::didRemoveClient): Removes the client from SVGImageCache.
(WebCore::CachedImage::lookupOrCreateImageForRenderer):

  • loader/cache/CachedImage.h:

(CachedImage):
(WebCore::CachedImageClient::resourceClientType): Added 'const'.

  • loader/cache/CachedRawResource.h:

(WebCore::CachedRawResourceClient::resourceClientType): Added 'const'.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::removeClient): Added invocation of didRemoveClient().

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::didRemoveClient): Added for subclasses to do additional works.

  • loader/cache/CachedResourceClient.h:

(WebCore::CachedResourceClient::resourceClientType): Added 'const'.

  • loader/cache/CachedSVGDocument.h:

(WebCore::CachedSVGDocumentClient::resourceClientType): Added 'const'.

  • loader/cache/CachedStyleSheetClient.h:

(WebCore::CachedStyleSheetClient::resourceClientType): Added 'const'.

  • rendering/style/StyleCachedImage.cpp:

(WebCore::StyleCachedImage::removeClient):

  • rendering/style/StyleCachedImageSet.cpp:

(WebCore::StyleCachedImageSet::removeClient):

  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::~SVGImageCache): Added checking for leaks.
(WebCore::SVGImageCache::removeClientFromCache):
(WebCore::SVGImageCache::setRequestedSizeAndScales):
(WebCore::SVGImageCache::requestedSizeAndScales):
(WebCore::SVGImageCache::lookupOrCreateBitmapImageForClient):

  • svg/graphics/SVGImageCache.h:

(WebCore):
(SVGImageCache):

LayoutTests:

Reviewed by Nikolas Zimmermann.

New test case.

  • svg/as-image/svg-image-leak-cached-data-expected.txt: Added.
  • svg/as-image/svg-image-leak-cached-data.html: Added.
12:50 Changeset [119999] by commit-queue@webkit.org

[GTK] Memory leaks in DRT EventSender.cpp
https://bugs.webkit.org/show_bug.cgi?id=88774

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-11
Reviewed by Martin Robinson.

Fix a few possible memory leaks in EventSender code.

  • DumpRenderTree/gtk/EventSender.cpp:

(contextClickCallback): Free the event returned by gdk_event_new().
(mouseDownCallback): Ditto.
(mouseUpCallback): Ditto.

12:45 Changeset [119998] by commit-queue@webkit.org

[EFL] REGRESSION (r119788): tests rely on pathToLocalResource are failing after r119788
https://bugs.webkit.org/show_bug.cgi?id=88661

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-11
Reviewed by Dirk Pranke.

Tools:

Pass string length explicitly when creating String object from
non-null-terminated UChar* returned by characters().

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:

(LayoutTestController::pathToLocalResource):

LayoutTests:

Unskip test cases which rely on pathToLocalResource().

  • platform/efl/TestExpectations:
11:54 Changeset [119997] by pilgrim@chromium.org

[Chromium] Call shared timer functions directly
https://bugs.webkit.org/show_bug.cgi?id=88781

Reviewed by Adam Barth.

Part of a refactoring series. See tracking bug 82948.

Source/WebCore:

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

  • platform/chromium/SharedTimerChromium.cpp:

(WebCore::setSharedTimerFiredFunction):
(WebCore::setSharedTimerFireInterval):

Source/WebKit/chromium:

  • src/PlatformSupport.cpp:

(WebCore):

11:48 Changeset [119996] by commit-queue@webkit.org

Relative pos. input fields in columns vanish when you start typing in them
https://bugs.webkit.org/show_bug.cgi?id=76834

Patch by Pravin D <pravind.2k4@gmail.com> on 2012-06-11
Reviewed by Julien Chaffraix.

Source/WebCore:

Test: fast/multicol/multicol-with-child-renderLayer-for-input.html

  • page/FrameView.cpp:

(WebCore::updateLayerPositionFlags):
Helper function to prepare the UpdateLayerPositionsFlags based on the input parameters.
If didFullRepaint flag is set, then CheckForRepaints flag is removed from the default flags.
Also during a relayout of a subtree, if the RenderLayer of the subtree root is paginated then updatePagination flag is
included in the flags.

(WebCore):
(WebCore::FrameView::layout):
Now uses the helper function updateLayerPositionFlags() to get the final set of UpdateLayerPositionsFlags.

  • rendering/RenderLayer.h:

(WebCore::RenderLayer::isPaginated):
(RenderLayer):
isPaginated function is made public so that FrameView class can use it prepare UpdateLayerPositionsFlags.

LayoutTests:

  • fast/multicol/multicol-with-child-renderLayer-for-input-expected.html: Added.
  • fast/multicol/multicol-with-child-renderLayer-for-input.html: Added.
11:37 Changeset [119995] by fischman@chromium.org

Merge 119742 - Plumb CORS attribute information from HTMLMediaElement to media players so it can be used
https://bugs.webkit.org/show_bug.cgi?id=88349

Reviewed by Adam Barth.

Source/WebCore:

Test: http/tests/security/video-cross-origin-readback.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerCORSMode):
(WebCore):

  • html/HTMLMediaElement.h:

(HTMLMediaElement):

  • html/canvas/CanvasRenderingContext.cpp:

(WebCore::CanvasRenderingContext::wouldTaintOrigin):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::didPassCORSAccessCheck):
(WebCore):

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerCORSMode):
(MediaPlayer):

  • platform/graphics/MediaPlayerPrivate.h:

(WebCore::MediaPlayerPrivateInterface::didPassCORSAccessCheck):
(MediaPlayerPrivateInterface):

Source/WebKit/chromium:

  • public/WebMediaPlayer.h:

(WebMediaPlayer):

  • src/AssertMatchingEnums.cpp:
  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::loadInternal):
(WebKit::WebMediaPlayerClientImpl::didPassCORSAccessCheck):
(WebKit):

  • src/WebMediaPlayerClientImpl.h:

(WebMediaPlayerClientImpl):

LayoutTests:

  • http/tests/security/resources/video-cross-origin-allow.php: Added.
  • http/tests/security/video-cross-origin-readback-expected.txt: Added.
  • http/tests/security/video-cross-origin-readback.html: Added.
  • platform/efl/Skipped:
  • platform/gtk/TestExpectations:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
  • platform/wk2/Skipped:

TBR=fischman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10536097

11:36 Changeset [119994] by pilgrim@chromium.org

[Chromium] Remove some dead code in PasteboardChromium
https://bugs.webkit.org/show_bug.cgi?id=88782

Reviewed by Adam Barth.

Part of a refactoring series. See tracking bug 82948.
Leftover detritus from bug 88038.

  • platform/chromium/PasteboardChromium.cpp:

(WebCore::Pasteboard::documentFragment):

11:35 Changeset [119993] by commit-queue@webkit.org

[Chromium] Removing long WebDeviceOrientation constructor
https://bugs.webkit.org/show_bug.cgi?id=88779

Patch by Amy Ousterhout <aousterh@chromium.org> on 2012-06-11
Reviewed by Adam Barth.

Removing the WebDeviceOrientation constructor with nine parameters.
Chromium has been changed to use the default constructor and setter
functions instead (see https://chromiumcodereview.appspot.com/10542025/).

  • public/WebDeviceOrientation.h:
11:29 Changeset [119992] by rniwa@webkit.org

Use testRunner instead of layoutTestController in compositing tests
https://bugs.webkit.org/show_bug.cgi?id=88766

Reviewed by Tony Chang.

  • compositing/:
  • compositing/animation/:
  • compositing/backface-visibility/:
  • compositing/backing/:
  • compositing/culling/:
  • compositing/geometry/:
  • compositing/iframes/:
  • compositing/iframes/resources/:
  • compositing/images/:
  • compositing/layer-creation/:
  • compositing/masks/:
  • compositing/overflow/:
  • compositing/plugins/:
  • compositing/reflections/:
  • compositing/repaint/:
  • compositing/resources/:
  • compositing/rtl/:
  • compositing/scaling/:
  • compositing/tiling/:
  • compositing/transitions/:
  • compositing/video/:
  • compositing/visibility/:
  • compositing/webgl/:
  • platform/chromium/compositing/:
  • platform/chromium/compositing/force-compositing-mode/:
  • platform/chromium/compositing/rubberbanding/:
  • platform/mac/compositing/canvas/:
11:26 Changeset [119991] by ojan@chromium.org

Large slew of Chromium windows png rebaselines. See http://crbug.com/131829 for more information.

List of rebaselined files excluded because it's too long.

11:23 Changeset [119990] by rniwa@webkit.org

Use testRunner instead of layoutTestController in css 1, css 2.1, and css3 tests
https://bugs.webkit.org/show_bug.cgi?id=88769

Reviewed by Tony Chang.

  • css1/units/zero-duration-without-units.html:
  • css3/calc/:
  • css3/filters/:
  • css3/filters/custom/:
  • css3/filters/resources/:
  • css3/filters/script-tests/:
  • css3/flexbox/:
  • css3/font-feature-settings-rendering.html:
  • css3/images/cross-fade-invalidation.html:
  • css3/images/optimize-contrast-canvas.html:
  • css3/images/optimize-contrast-image.html:
  • css3/khtml-background-size-0x0-bmp.html:
  • css3/parsing-css3-nthchild.html:
  • css3/style-zoomed-image.html:
  • css3/viewport-percentage-lengths/css3-viewport-percentage-lengths-getStyle.html:
  • css3/zoom-coords.xhtml:
  • platform/win/css2.1/resources/run-webkit-tests-epilogue.html:
  • platform/win/css2.1/resources/run-webkit-tests-prologue.html:
11:21 Changeset [119989] by fischman@chromium.org

Merge 119569 - [chromium] Add a WebKit::WebMediaPlayer::CORSMode enum in preparation for 88349
https://bugs.webkit.org/show_bug.cgi?id=88388

Reviewed by Darin Fisher.

  • public/WebMediaPlayer.h:

TBR=fischman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10533083

11:14 Changeset [119988] by commit-queue@webkit.org

[chromium] Provide access to the WebPlugin created by the helper plugin widget
https://bugs.webkit.org/show_bug.cgi?id=88028

Patch by David Dorwin <ddorwin@chromium.org> on 2012-06-11
Reviewed by Adam Barth.

Source/WebKit/chromium:

A WebPlugin is created when the document created by createHelperPlugin() is laid out.
Expose it so the embedder can interact with the plugin instance.

  • public/WebHelperPlugin.h:

(WebKit):
(WebHelperPlugin):

  • public/WebMediaPlayerClient.h:

(WebKit):

  • public/WebPlugin.h:

(WebKit::WebPlugin::isPlaceholder):
(WebPlugin):

  • src/WebHelperPluginImpl.cpp:

(WebKit::WebHelperPluginImpl::WebHelperPluginImpl):
(WebKit):
(WebKit::WebHelperPluginImpl::getPlugin):
(WebKit::WebHelperPluginImpl::initPage):
(WebKit::WebHelperPluginImpl::close):

  • src/WebHelperPluginImpl.h:

(WebKit):
(WebHelperPluginImpl):

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::createHelperPlugin):

  • src/WebMediaPlayerClientImpl.h:

(WebMediaPlayerClientImpl):

  • src/WebPagePopupImpl.cpp:

Tools:

Added isPlaceholder() to WebPlugin.

  • DumpRenderTree/chromium/TestWebPlugin.h:

(TestWebPlugin::isPlaceholder):

11:13 Changeset [119987] by peter@chromium.org

[Chromium] Theme updates for Android in menu list rendering and selection backgrounds
https://bugs.webkit.org/show_bug.cgi?id=88775

Reviewed by Adam Barth.

For Chrome on Android, use the width of the scrollbar down arrow instead
of the scrollbar's width for determining the arrow padding to apply for
menu list rendering, as WebKit isn't drawing a scrollbar (thus width=0).

Furthermore, change the default active selection background color to be
equal to the tap highlighting color.

These changes should be covered by existing layout tests.

  • rendering/RenderThemeChromiumAndroid.cpp:

(WebCore::RenderThemeChromiumAndroid::menuListArrowPadding):
(WebCore): Retrieve the scrollbar down arrow's size via PlatformSupport.

  • rendering/RenderThemeChromiumAndroid.h: Override the menuListArrowPadding

and platformActiveSelectionBackgroundColor methods, and add a static
static RGBA32 color for the default active selection bg color.

  • rendering/RenderThemeChromiumSkia.cpp:

(WebCore::RenderThemeChromiumSkia::menuListArrowPadding): Default to

the scrollbar thickness, not changing behavior for non-Android.

(WebCore::RenderThemeChromiumSkia::menuListInternalPadding): Instead

of polling the scrollbar thickness, call menuListArrowPadding().

  • rendering/RenderThemeChromiumSkia.h:

(RenderThemeChromiumSkia): Add the menuListArrowPadding() as a protected method.

10:39 Changeset [119986] by tony@chromium.org

rebaseline from garden-o-matic leaves N processes each time it is run
https://bugs.webkit.org/show_bug.cgi?id=88586

Reviewed by Dirk Pranke.

This appears to only be a problem on python 2.7. Maybe a bug causing
pools to not be garbage collected?

  • Scripts/webkitpy/common/system/executive.py:

(Executive.run_in_parallel): close() and join() the process pool.

  • Scripts/webkitpy/common/system/executive_unittest.py:

(ExecutiveTest.test_run_in_parallel):

10:22 Changeset [119985] by rniwa@webkit.org

Use testRunner instead of layoutTestController in animations tests
https://bugs.webkit.org/show_bug.cgi?id=88757

Reviewed by Tony Chang.

  • animations/3d/change-transform-in-end-event.html:
  • animations/3d/replace-filling-transform.html:
  • animations/3d/state-at-end-event-transform.html:
  • animations/3d/transform-origin-vs-functions.html:
  • animations/animation-add-events-in-handler.html:
  • animations/animation-border-overflow.html:
  • animations/animation-controller-drt-api.html:
  • animations/animation-direction-reverse-fill-mode-hardware.html:
  • animations/animation-direction-reverse-fill-mode.html:
  • animations/animation-drt-api-multiple-keyframes.html:
  • animations/animation-drt-api.html:
  • animations/animation-end-event-destroy-renderer.html:
  • animations/animation-end-event-short-iterations.html:
  • animations/animation-hit-test-transform.html:
  • animations/animation-hit-test.html:
  • animations/animation-iteration-event-destroy-renderer.html:
  • animations/animation-matrix-negative-scale-unmatrix.html:
  • animations/animation-on-inline-crash.html:
  • animations/animation-shorthand-overriding.html:
  • animations/animation-shorthand-removed.html:
  • animations/animation-shorthand.html:
  • animations/animation-start-event-destroy-renderer.html:
  • animations/animation-welcome-safari.html:
  • animations/body-removal-crash.html:
  • animations/change-keyframes-name.html:
  • animations/change-transform-style-during-animation.html:
  • animations/combo-transform-translate+scale.html:
  • animations/empty-keyframes.html:
  • animations/fill-mode-forwards.html:
  • animations/fill-mode-iteration-count-non-integer.html:
  • animations/fill-mode-missing-from-to-keyframes.html:
  • animations/fill-mode-multiple-keyframes.html:
  • animations/fill-mode-removed.html:
  • animations/fill-mode-reverse.html:
  • animations/fill-mode-transform.html:
  • animations/fill-mode.html:
  • animations/fill-unset-properties.html:
  • animations/font-size-using-ems.html-disabled:
  • animations/import-crash.html:
  • animations/keyframe-timing-functions-transform.html:
  • animations/keyframe-timing-functions2.html:
  • animations/keyframes-iteration-count-non-integer.html:
  • animations/longhand-timing-function.html:
  • animations/missing-from-to-transforms.html:
  • animations/missing-from-to.html:
  • animations/pause-crash.html:
  • animations/resources/animation-test-helpers.js:

(checkExpectedValue):
(endTest):

  • animations/state-at-end-event.html:
  • animations/suspend-resume-animation-events.html:
  • animations/suspend-transform-animation.html:
  • animations/transition-and-animation-3.html:
  • animations/unanimated-style.html:
10:19 Changeset [119984] by commit-queue@webkit.org

Add css3-images image-resolution (dppx only)
https://bugs.webkit.org/show_bug.cgi?id=85332

Patch by David Barr <davidbarr@chromium.org> on 2012-06-11
Reviewed by Tony Chang.

The css3-images module is at candidate recommendation.
http://www.w3.org/TR/2012/CR-css3-images-20120417/#image-resolution

Source/WebCore:

Test: fast/css/image-resolution.html

  • css/CSSComputedStyleDeclaration.cpp:

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

  • css/CSSGrammar.y:
  • css/CSSParser.cpp:

(WebCore::CSSParser::validUnit):
(WebCore::CSSParser::createPrimitiveNumericValue):
(WebCore::unitFromString):
(WebCore::CSSParser::parseValidPrimitive):
(WebCore::CSSParser::parseValue):
(WebCore):
(WebCore::CSSParser::parseImageResolution):
(WebCore::CSSParser::detectNumberToken):

  • css/CSSParser.h:
  • css/CSSPrimitiveValue.cpp:

(WebCore::isValidCSSUnitTypeForDoubleConversion):
(WebCore::unitCategory):
(WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory):
(WebCore::CSSPrimitiveValue::customCssText):
(WebCore::CSSPrimitiveValue::cloneForCSSOM):

  • css/CSSPrimitiveValue.h:
  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyNames.in:
  • css/StyleBuilder.cpp:

(WebCore):
(ApplyPropertyImageResolution):
(WebCore::ApplyPropertyImageResolution::applyInheritValue):
(WebCore::ApplyPropertyImageResolution::applyInitialValue):
(WebCore::ApplyPropertyImageResolution::applyValue):
(WebCore::ApplyPropertyImageResolution::createHandler):
(WebCore::StyleBuilder::StyleBuilder):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::styleDidChange):
(WebCore::RenderImage::imageDimensionsChanged):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::diff):

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

(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):

  • rendering/style/StyleRareInheritedData.h:

(StyleRareInheritedData):

LayoutTests:

  • fast/css/image-resolution/image-resolution-expected.txt: Added.
  • fast/css/image-resolution/image-resolution.html: Added.
  • platform/chromium/TestExpectations: Skip tests until image-resolution implementation lands.
  • platform/efl/TestExpectations: Skip tests until image-resolution implementation lands.
  • platform/gtk/TestExpectations: Skip tests until image-resolution implementation lands.
  • platform/mac/TestExpectations: Skip tests until image-resolution implementation lands.
  • platform/qt/TestExpectations: Skip tests until image-resolution implementation lands.
09:57 Changeset [119983] by tonikitoo@webkit.org

Make media (<video> and <audio>) slide draggable again https://bugs.webkit.org/show_bug.cgi?id=88742 PR #158199

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

First check if the element is a range type then gets its
shadow DOM ancestor.

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::shouldConvertTouchToMouse):

09:49 Changeset [119982] by danakj@chromium.org

[chromium] Free texture from CCIOSurfaceLayerImpl when it is destroyed
https://bugs.webkit.org/show_bug.cgi?id=88371

Reviewed by James Robinson.

Source/WebCore:

Unit test: CCLayerTreeHostImplTest.layersFreeTextures

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

(WebCore::CCIOSurfaceLayerImpl::~CCIOSurfaceLayerImpl):
(WebCore::CCIOSurfaceLayerImpl::willDraw):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:
08:31 Changeset [119981] by carlosgc@webkit.org

Unreviewed. Fix make distcheck issues.

.:

  • GNUmakefile.am: Initialize jscore nosource variables.

Source/JavaScriptCore:

  • GNUmakefile.list.am: Remove non existent header file.

Source/WebCore:

  • GNUmakefile.am: Add idl files in editing dir to EXTRA_DIST.
  • GNUmakefile.list.am: Add missing header file.

Source/WTF:

  • GNUmakefile.list.am: Add missing header file.
07:59 Changeset [119980] by dominicc@chromium.org

[Chromium] Unreviewed: Rebaseline more SVG tests on Windows.

  • platform/chromium-linux-x86/svg/batik/filters/filterRegions-expected.png: Removed.
  • platform/chromium-win-vista/svg/batik/paints/gradientLimit-expected.png: Added.
  • platform/chromium-win-xp/svg/batik/paints/patternPreserveAspectRatioA-expected.png: Added.
  • platform/chromium-win-xp/svg/batik/text/smallFonts-expected.png: Added.
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-glyph-04-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/interact-cursor-01-f-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/interact-order-01-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/interact-order-02-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/interact-zoom-01-t-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/linking-a-01-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/linking-a-02-b-expected.png:
  • platform/chromium-win/svg/as-image/img-preserveAspectRatio-support-2-expected.png:
  • platform/chromium-win/svg/as-image/same-image-two-instances-expected.png:
  • platform/chromium-win/svg/as-image/svg-as-relative-image-expected.png:
  • platform/chromium-win/svg/as-image/svg-image-change-content-size-expected.png:
  • platform/chromium-win/svg/batik/filters/feTile-expected.png:
  • platform/chromium-win/svg/batik/filters/filterRegions-expected.png:
07:37 Changeset [119979] by dominicc@chromium.org

[Chromium] Unreviewed: Rebaselines for svg/as-background-image tests on Windows.

  • platform/chromium-linux/svg/as-background-image/svg-as-background-2-expected.png: Removed.
  • platform/chromium-win/svg/as-background-image/svg-as-background-2-expected.png:
  • platform/chromium-win/svg/as-background-image/svg-as-background-4-expected.png:
  • platform/chromium-win/svg/as-background-image/svg-as-background-5-expected.png:
  • platform/chromium-win/svg/as-background-image/svg-as-background-with-relative-size-expected.png:
  • platform/chromium-win/svg/as-background-image/svg-background-partial-redraw-expected.png:
  • platform/chromium-win/svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size-expected.png:
07:33 Changeset [119978] by mitz@apple.com

Reverted r119940 because it caused multiple media tests to fail on Lion.

Source/WebCore:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::prepareForLoad):
(WebCore):
(WebCore::HTMLMediaElement::userCancelledLoad):

  • html/HTMLMediaElement.h:

(HTMLMediaElement):

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::commonMovieAttributes):

LayoutTests:

  • http/tests/media/video-src-invalid-error-expected.txt: Removed.
  • http/tests/media/video-src-invalid-error.html: Removed.
07:05 Changeset [119977] by zoltan@webkit.org

Source/WebCore: [Qt] Add config tests for WEBP imagedecoder library, modify HAVE(decoderlibrary) to USE(...)$
https://bugs.webkit.org/show_bug.cgi?id=87841

Reviewed by Simon Hausmann.

No new tests were needed.

  • Target.pri:
  • WebCore.pri:
  • platform/image-decoders/ImageDecoder.cpp:

(WebCore::ImageDecoder::create):

Tools: [Qt] Add config tests for WEBP imagedecoder library, modify HAVE(decoderlibrary) to USE(...)
https://bugs.webkit.org/show_bug.cgi?id=87841

Reviewed by Simon Hausmann.

  • qmake/config.tests/libwebp/libwebp.cpp: Added.

(main):

  • qmake/config.tests/libwebp/libwebp.pro: Added.
  • qmake/sync.profile:
07:02 Changeset [119976] by ossy@webkit.org

[Qt] Gardening after r119962. Four inspector/debugger tests still fail after they have been re-enabled.
https://bugs.webkit.org/show_bug.cgi?id=43332

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-06-11
Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
06:53 Changeset [119975] by kenneth@webkit.org

Add QML api for setting device width and height
https://bugs.webkit.org/show_bug.cgi?id=88777

Reviewed by Simon Hausmann.

Source/WebCore:

Change the default values for deviceWidth/Height to be 0 (unset). The
original values were introduced by Qt and 0 makes it possible to
detect if a value has never been set and therefore fall back.

Only Qt depended on the former values.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

Source/WebKit2:

Add the new API and set the default values to 0 (unset). The
current values were introduced by Qt and only Qt depends on them.

  • Shared/WebPreferencesStore.h:

(WebKit):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewExperimental::deviceWidth):
(QQuickWebViewExperimental::setDeviceWidth):
(QQuickWebViewExperimental::deviceHeight):
(QQuickWebViewExperimental::setDeviceHeight):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/qt/QtViewportHandler.cpp:

(WebKit::QtViewportHandler::viewportItemSizeChanged):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::sendViewportAttributesChanged):

06:20 Changeset [119974] by tkent@chromium.org

[Chromium] Should call frameDetached() in WebPagePopupImpl::close()
https://bugs.webkit.org/show_bug.cgi?id=88754

Reviewed by Adam Barth.

  • src/WebPagePopupImpl.cpp:

(WebKit::WebPagePopupImpl::close): Calls FrameLoader::frameDetached().

05:49 Changeset [119973] by dominicc@chromium.org

[Chromium] Unreviewed: Rebaselines and updated expectations for media tests

Pixel differences are due to antialiasing and different rounded
corners on the media progress bar. The difference is not
noticeable.

  • platform/chromium-win/media/audio-controls-rendering-expected.png:
  • platform/chromium-win/media/audio-repaint-expected.png:
  • platform/chromium-win/media/controls-after-reload-expected.png:
  • platform/chromium-win/media/controls-layout-direction-expected.png:
  • platform/chromium-win/media/controls-strict-expected.png:
  • platform/chromium-win/media/controls-styling-expected.png:
  • platform/chromium-win/media/controls-without-preload-expected.png:
  • platform/chromium-win/media/media-controls-clone-expected.png:
  • platform/chromium-win/media/media-document-audio-repaint-expected.png:
  • platform/chromium-win/media/video-controls-rendering-expected.png:
  • platform/chromium-win/media/video-display-toggle-expected.png:
  • platform/chromium-win/media/video-layer-crash-expected.png:
  • platform/chromium-win/media/video-no-audio-expected.png:
  • platform/chromium-win/media/video-playing-and-pause-expected.png:
  • platform/chromium-win/media/video-transformed-expected.png:
  • platform/chromium-win/media/video-volume-slider-expected.png:
  • platform/chromium-win/media/video-zoom-controls-expected.png:
  • platform/chromium/TestExpectations:
05:19 Changeset [119972] by dominicc@chromium.org

[Chromium] Unreviewed: Mark track-cue-rendering-inner-timestamps.html failing on Vista

  • platform/chromium/TestExpectations:
04:27 Changeset [119971] by commit-queue@webkit.org

[Qt] Skipping http/tests/security/mixedContent/filesystem-url-in-iframe.html
https://bugs.webkit.org/show_bug.cgi?id=88770

ENABLE(FILE_SYSTEM) is disabled; this test should be skipped until
that feature is enabled. Moving it up into the proper section of the
Skipped file to make sure it's enabled if and when the feature makes
it into the port.

Patch by Mike West <mkwst@chromium.org> on 2012-06-11
Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
03:29 Changeset [119970] by ossy@webkit.org

[Qt][Win] Add missing includes to fix the build
https://bugs.webkit.org/show_bug.cgi?id=88538

Reviewed by Simon Hausmann.

  • Api/qwebframe.cpp:
  • WebCoreSupport/ChromeClientQt.cpp:
  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:
  • WebCoreSupport/GeolocationClientQt.cpp:
  • WebCoreSupport/IconDatabaseClientQt.cpp:
03:24 Changeset [119969] by ossy@webkit.org

[Qt][Win] Fix UString related build problem in Source/WebCore/bridge/qt/qt_instance.cpp
https://bugs.webkit.org/show_bug.cgi?id=88310

Reviewed by Simon Hausmann.

  • bridge/qt/qt_instance.cpp:

(JSC::Bindings::QtInstance::getPropertyNames):

02:49 Changeset [119968] by hausmann@webkit.org

[Qt][WK2] Compute and set cache capacities using the current CacheModel
https://bugs.webkit.org/show_bug.cgi?id=73918

Unreviewed build fix.

No new tests added as this is a build fix.

Patch by Michael Brüning <michael.bruning@nokia.com> on 2012-06-11

  • platform/qt/FileSystemQt.cpp:
02:38 Changeset [119967] by commit-queue@webkit.org

Rect-based hittesting doesn't work in tables.
https://bugs.webkit.org/show_bug.cgi?id=86605

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-06-11
Reviewed by Julien Chaffraix.

Source/WebCore:

The existing code only performed a single binary lookup for the central
hit-test point. This meant area-based hit-testing did not work across
table-cell borders. All cells spanned by a hit-test area must be hit
tested.

This patch introduces three auxilary functions to help calculate rows
and columns spanned by an rect. These are intended to also be used by
repaint logic in a later patch.

For point-based hit-testing we maintain unchanged behavior and still
only hit test a single column in a single row.

Test: fast/dom/nodesFromRect-table.html

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::logicalRectForWritingModeAndDirection):
(WebCore::RenderTableSection::spannedRows):
(WebCore::RenderTableSection::spannedColumns):
(WebCore::RenderTableSection::nodeAtPoint):

  • rendering/RenderTableSection.h:

(RenderTableSection):

LayoutTests:

Test nodesFromRect on tables.

  • fast/dom/nodesFromRect-table-expected.txt: Added.
  • fast/dom/nodesFromRect-table.html: Added.
02:26 Changeset [119966] by commit-queue@webkit.org

Adding a flag to show fullscreen media controls in chromium
https://bugs.webkit.org/show_bug.cgi?id=88266

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

Source/WebCore:

The default chromium shadow DOM for media element does not contain fullscreen button.
This change adds a flag to display the fullscreen button.
It will be used by the android port.

No new tests needed. We will use the same layout tests as desktop chromium.
However, new test result expections will be added later.

  • html/shadow/MediaControlRootElementChromium.cpp:

(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
(WebCore::MediaControlRootElementChromium::create):
(WebCore::MediaControlRootElementChromium::setMediaController):
(WebCore::MediaControlRootElementChromium::reset):
(WebCore::MediaControlRootElementChromium::reportedError):

  • html/shadow/MediaControlRootElementChromium.h:

(MediaControlRootElementChromium):

Source/WebKit/chromium:

Adding a flag to the gyp file so that we can enable fullscreen media control

  • features.gypi:
02:17 Changeset [119965] by commit-queue@webkit.org

[Qt][WK2] Compute and set cache capacities using the current CacheModel
https://bugs.webkit.org/show_bug.cgi?id=73918

Patch by Michael Brüning <michael.bruning@nokia.com> on 2012-06-11
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

No new tests needed / applicable (using operating system functionality).

Added method to read free file system space for a path to support cache model
implementation in Qt WK 2.

  • platform/FileSystem.h:

(WebCore):

  • platform/qt/FileSystemQt.cpp:

(WebCore::getVolumeFreeSizeForPath): Added for Qt ports.
(WebCore):

Source/WebKit2:

Added implementation of cache model for Qt WK 2 port including supporting
functionality such as WebProcess creation parameters and default values
for disk cache directories.

  • Shared/WebProcessCreationParameters.cpp:

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

  • Shared/WebProcessCreationParameters.h:

(WebProcessCreationParameters):

  • UIProcess/qt/WebContextQt.cpp:

(WebKit::defaultDiskCacheDirectory):
(WebKit):
(WebKit::WebContext::platformInitializeWebProcess):

  • WebProcess/qt/WebProcessQt.cpp:

(WebKit::physicalMemorySizeInBytes):
(WebKit::WebProcess::platformSetCacheModel):
(WebKit::WebProcess::platformInitializeWebProcess):

02:00 Changeset [119964] by ossy@webkit.org

[Qt] Gardening, skip new failing tests.

Patch by Szilard Ledan <szledan@inf.u-szeged.hu> on 2012-06-11
Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
01:26 Changeset [119963] by commit-queue@webkit.org

[EFL] skip http/tests/cookies/js-get-and-set-http-only-cookie.html test case
https://bugs.webkit.org/show_bug.cgi?id=88751

Unreviewed EFL gardening. Skip newly introduced test case that is failing
on most ports.

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

  • platform/efl/TestExpectations:
01:24 Changeset [119962] by commit-queue@webkit.org

[JSC] Web Inspector: implement breaking from native callback
https://bugs.webkit.org/show_bug.cgi?id=43332

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-06-11
Reviewed by Pavel Feldman.

These test cases were enabled:
LayoutTests/inspector/debugger/dom-breakpoints.html
LayoutTests/inspector/debugger/event-listener-breakpoints.html
LayoutTests/inspector/debugger/step-through-event-listeners.html
LayoutTests/inspector/debugger/xhr-breakpoints.html

  • bindings/js/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::breakProgram):

  • bindings/js/ScriptDebugServer.h:

(WebCore::supportsNativeBreakpoints):

01:23 Changeset [119961] by dominicc@chromium.org

[Chromium] Unreviewed: Remove expectations for passing tests

The flakiness dashboard indicates that
platform/chromium/virtual/gpu/canvas/philip/tests/2d.gradient.radial.cone.cylinder.html
and
platform/chromium/virtual/gpu/fast/canvas/canvas-currentColor.html
are passing on all platforms now.

  • platform/chromium/TestExpectations:
01:17 Changeset [119960] by morrita@google.com

Spellchecker crash in async scenario.
https://bugs.webkit.org/show_bug.cgi?id=88617

Reviewed by Tony Chang.

SpellCheckRequest::invokeRequest() can be reached after the frame is detached.
SpellCheckRequest should ignore such a request since TextCheckerClient is not available
for detached Frames.

No new tests. It's hard to reproduce this.

  • editing/SpellChecker.cpp:

(WebCore::SpellChecker::invokeRequest):

01:11 Changeset [119959] by commit-queue@webkit.org

[EFL] Unskip http/tests/security/mixedContent/blob-url-in-iframe.html
https://bugs.webkit.org/show_bug.cgi?id=88752

Unreviewed EFL gardening. Unskip http/tests/security/mixedContent/blob-url-in-iframe.html
now that it no longer depends on the legacy blob builder (r119944).

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

  • platform/efl/TestExpectations:
00:41 Changeset [119958] by ryuan.choi@samsung.com

[EFL] Extract CursorMap from WidgetEfl.cpp.
https://bugs.webkit.org/show_bug.cgi?id=88633

Reviewed by Ryosuke Niwa.

In order to share CursorMap in WebKit/efl and UIProcess of WebKit2/Efl,
extract it and expose getEcoreCursor.

No new tests, refactoring only.

  • platform/efl/EflScreenUtilities.cpp:

(WebCore):
(CursorMap):
(WebCore::CursorMap::cursor):
(WebCore::CursorMap::CursorMap):
(WebCore::getEcoreCursor):

  • platform/efl/EflScreenUtilities.h:

(WebCore):

  • platform/efl/WidgetEfl.cpp:

(WebCore::Widget::applyFallbackCursor):

00:14 QtWebKitForQt5 edited by hausmann@webkit.org
(diff)

06/10/12:

23:58 Changeset [119957] by commit-queue@webkit.org

Unreviewed, rolling out r119955.
http://trac.webkit.org/changeset/119955
https://bugs.webkit.org/show_bug.cgi?id=88758

Breaks Chromium compile - Chromium depends on removed API
(Requested by dominicc on #webkit).

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

Source/WebCore:

  • WebCore.exp.in:
  • editing/Editor.cpp:

(WebCore::Editor::insideVisibleArea):
(WebCore):
(WebCore::Editor::firstVisibleRange):
(WebCore::Editor::lastVisibleRange):
(WebCore::Editor::nextVisibleRange):
(WebCore::Editor::rangeOfString):
(WebCore::Editor::countMatchesForText):

  • editing/Editor.h:

(Editor):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::findFrameForNavigation):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::parent):
(WebCore::DOMWindow::top):

  • page/EventHandler.cpp:

(WebCore::EventHandler::hitTestResultAtPoint):

  • page/Frame.cpp:

(WebCore::Frame::Frame):

  • page/Frame.h:

(Frame):
(WebCore::Frame::isDisconnected):
(WebCore):
(WebCore::Frame::setIsDisconnected):
(WebCore::Frame::excludeFromTextSearch):
(WebCore::Frame::setExcludeFromTextSearch):

  • page/FrameTree.cpp:

(WebCore::FrameTree::parent):
(WebCore::FrameTree::top):

  • page/FrameTree.h:

(FrameTree):

  • page/Location.cpp:

(WebCore::Location::ancestorOrigins):

  • xml/XMLTreeViewer.cpp:

(WebCore::XMLTreeViewer::hasNoStyleInformation):

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _setIsDisconnected:]):
(-[WebFrame _setExcludeFromTextSearch:]):

  • WebView/WebFramePrivate.h:

Source/WebKit/win:

  • WebFrame.cpp:

(WebFrame::setIsDisconnected):
(WebFrame::setExcludeFromTextSearch):

23:23 Changeset [119956] by kinuko@chromium.org

Using BlobBuilder should show a deprecation warning message (if it is enabled)
https://bugs.webkit.org/show_bug.cgi?id=88644

Reviewed by Jian Li.

Source/WebCore:

Mac has already disabled BlobBuilder, but Chromium still has it.
We should start showing a warning to let people migrate to using Blob constructor.

Tests: fast/files/blob-builder-crash.html

  • fileapi/WebKitBlobBuilder.cpp:

(WebCore):
(WebCore::WebKitBlobBuilder::create):

  • fileapi/WebKitBlobBuilder.h:

(WebCore):
(WebKitBlobBuilder):

  • fileapi/WebKitBlobBuilder.idl:

LayoutTests:

  • fast/files/blob-builder-crash-expected.txt:
23:11 Changeset [119955] by weinig@apple.com

Remove support for disconnected/excluded from search frames, they are not used by Safari anymore
https://bugs.webkit.org/show_bug.cgi?id=88723

Reviewed by Dan Bernstein.

Source/WebCore:

  • WebCore.exp.in:

Update export.

  • editing/Editor.cpp:

(WebCore::Editor::rangeOfString):
(WebCore::Editor::countMatchesForText):

  • editing/Editor.h:

(Editor):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::findFrameForNavigation):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::parent):
(WebCore::DOMWindow::top):

  • page/EventHandler.cpp:

(WebCore::EventHandler::hitTestResultAtPoint):

  • page/Frame.cpp:

(WebCore::Frame::Frame):

  • page/Frame.h:

(Frame):

  • page/FrameTree.cpp:

(WebCore::FrameTree::parent):
(WebCore::FrameTree::top):

  • page/FrameTree.h:

(FrameTree):

  • page/Location.cpp:

(WebCore::Location::ancestorOrigins):

  • xml/XMLTreeViewer.cpp:

(WebCore::XMLTreeViewer::hasNoStyleInformation):
Update for the removal of disconnected frames and text search exclusions concepts.

Source/WebKit/mac:

  • WebView/WebFrame.mm:
  • WebView/WebFramePrivate.h:

Remove -[WebFrame _setIsDisconnected:] and -[WebFrame _setExcludeFromTextSearch:]

Source/WebKit/win:

  • WebFrame.cpp:

(WebFrame::setIsDisconnected):
(WebFrame::setExcludeFromTextSearch):
Stop doing anything in these functions.

23:03 Changeset [119954] by kinuko@chromium.org

Move Quota related code out of DOMWindow and into the quota/ folder
https://bugs.webkit.org/show_bug.cgi?id=88512

Patch by Kinuko Yasuda <kinuko@google.com> on 2012-06-07
Reviewed by Adam Barth.

No new tests: no visible changes.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • Modules/quota/DOMWindowQuota.cpp: Added.
  • Modules/quota/DOMWindowQuota.h: Added.
  • Modules/quota/DOMWindowQuota.idl: Added.
  • Modules/quota/StorageInfo.cpp: Renamed from Source/WebCore/storage/StorageInfo.cpp.
  • Modules/quota/StorageInfo.h: Renamed from Source/WebCore/storage/StorageInfo.h.
  • Modules/quota/StorageInfo.idl: Renamed from Source/WebCore/storage/StorageInfo.idl.
  • Modules/quota/StorageInfoErrorCallback.h: Renamed from Source/WebCore/storage/StorageInfoErrorCallback.h.
  • Modules/quota/StorageInfoErrorCallback.idl: Renamed from Source/WebCore/storage/StorageInfoErrorCallback.idl.
  • Modules/quota/StorageInfoQuotaCallback.h: Renamed from Source/WebCore/storage/StorageInfoQuotaCallback.h.
  • Modules/quota/StorageInfoQuotaCallback.idl: Renamed from Source/WebCore/storage/StorageInfoQuotaCallback.idl.
  • Modules/quota/StorageInfoUsageCallback.h: Renamed from Source/WebCore/storage/StorageInfoUsageCallback.h.
  • Modules/quota/StorageInfoUsageCallback.idl: Renamed from Source/WebCore/storage/StorageInfoUsageCallback.idl.
  • Target.pri:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcproj/WebCoreCommon.vsprops:
  • WebCore.vcproj/copyForwardingHeaders.cmd:
  • WebCore.xcodeproj/project.pbxproj:
  • page/DOMWindow.cpp:
  • page/DOMWindow.h:
  • page/DOMWindow.idl:
22:47 Changeset [119953] by dominicc@chromium.org

[Chromium] Unreviewed: Add expectations for svg-as-background-6.html

Like other SVG tests noted in bug 83303, this test fails on
Windows because it uses a sans-serif font where a serif font is
expected.

  • platform/chromium/TestExpectations:
22:35 Changeset [119952] by dominicc@chromium.org

[Chromium] Unreviewed: Rebaseline fixed-position-transform-composited-page-scale on Linux, Win

These differ in antialiasing only, where there are already
platform differences antialiasing.

  • platform/chromium-linux/compositing/geometry/fixed-position-transform-composited-page-scale-expected.png:
  • platform/chromium-win/compositing/geometry/fixed-position-transform-composited-page-scale-expected.png:
21:45 Changeset [119951] by dominicc@chromium.org

[Chromium] Unreviewed: Update
css3/font-feature-settings-rendering.html again -- actually it may
pass if a particular DLL is installed. So expect PASS or
IMAGE+TEXT failure from this test.

  • platform/chromium/TestExpectations:
21:38 Changeset [119950] by dominicc@chromium.org

[Chromium] Unreviewed: Update
css3/font-feature-settings-rendering.html expectations to fail on
XP.

  • platform/chromium/TestExpectations:
20:58 Changeset [119949] by hayato@chromium.org

An inheritance of '-webkit-user-modify' does not stop at shadow boundary.
https://bugs.webkit.org/show_bug.cgi?id=88514

Reviewed by Ryosuke Niwa.

Source/WebCore:

In StyleResolver::styleForElement(), we reset '-webkit-user-modify'
CSS property after inheriting a parent style, but that is not
enough. We also have to reset '-webkit-user-modify' when we use a
cached result in applying matched properties.

Test: fast/dom/shadow/user-modify-inheritance.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyMatchedProperties):
(WebCore::StyleResolver::styleForElement):

  • css/StyleResolver.h:

(StyleResolver):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::inheritFrom):

  • rendering/style/RenderStyle.h:

LayoutTests:

  • fast/dom/shadow/user-modify-inheritance-expected.txt: Added.
  • fast/dom/shadow/user-modify-inheritance.html: Added.
19:30 Changeset [119948] by yosin@chromium.org

[Forms] Introduce Decimal behind the InputNumber type
https://bugs.webkit.org/show_bug.cgi?id=88383

Reviewed by Kent Tamura.

Source/WebCore:

This patch introduces decimal arithmetic for steppable input types,
e.g. date, datetime, number, range, and so on, to avoid rounding error
caused by base 2 floating point representation, e.g. C/C++ double type.

Most of decimal arithmetic calculations are implemented in StepRange
class, replacing "double" with "Decimal", InputType::applyStep, and
InputType::stepFromRenderer.

Changes introduced by this patch are still intermediate state.
Following patch will replace InputNumber type to Decimal type for
completion of introducing decimal arithmetic.

Test: fast/forms/range/range-value-rounding.html

  • html/BaseDateAndTimeInputType.cpp:

(WebCore::BaseDateAndTimeInputType::serialize): Changed for Decimal type.
(WebCore::BaseDateAndTimeInputType::serializeWithComponents): ditto.

  • html/DateInputType.cpp:

(WebCore::DateInputType::createStepRange): Replaced NumberWithDecimalPlaces to InputNumber.

  • html/DateTimeInputType.cpp:

(WebCore::DateTimeInputType::createStepRange): Replaced NumberWithDecimalPlaces to InputNumber.

  • html/DateTimeLocalInputType.cpp:

(WebCore::DateTimeLocalInputType::createStepRange): Replaced NumberWithDecimalPlaces to InputNumber.

  • html/InputType.cpp:

(WebCore::InputType::rangeUnderflow): Changed for Decimal type.
(WebCore::InputType::rangeOverflow): Changed for Decimal type.
(WebCore::InputType::minimum): Changed for Decimal type.
(WebCore::InputType::maximum): ditto.
(WebCore::InputType::isInRange): ditto.
(WebCore::InputType::isOutOfRange): ditto.
(WebCore::InputType::stepMismatch): ditto.
(WebCore::InputType::validationMessage): ditto.
(WebCore::InputType::parseToNumberOrNaN): ditto.
(WebCore::InputType::applyStep): ditto.
(WebCore::InputType::stepUpFromRenderer): ditto.

  • html/InputType.h:

(InputType): Removed parseToNumberWIthDecimaplPlaces.

  • html/MonthInputType.cpp:

(WebCore::MonthInputType::createStepRange): Changed for Decimal type.

  • html/NumberInputType.cpp:

(WebCore::RealNumberRenderSize): Added for calculateRenderSize.
(WebCore::calculateRenderSize): Added. This function replacess lengthBeforeDecimalPoint.
(WebCore::NumberInputType::createStepRange): Changed for Decimal type.
(WebCore::NumberInputType::sizeShouldIncludeDecoration): Changed to use calculateRenderSize.
(WebCore::NumberInputType::parseToNumber): Changed for Decimal type.
(WebCore::NumberInputType::serialize): ditto.

  • html/NumberInputType.h:

(NumberInputType): Removed parseToNumberWIthDecimaplPlaces.

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::createStepRange): Changed for Decimal type.
(WebCore::RangeInputType::handleKeydownEvent): ditto.
(WebCore::RangeInputType::parseToNumber): ditto.
(WebCore::RangeInputType::serialize): ditto.

  • html/StepRange.cpp:

(WebCore::StepRange::StepRange): Removed decimal places and changed for Decimal type.
(WebCore::StepRange::acceptableError): Changed for Decimal type.
(WebCore::StepRange::alignValueForStep): ditto.
(WebCore::StepRange::clampValue): Changed for Decimal type and std::min/max.
(WebCore::StepRange::parseStep): Changed for Decimal type and removed NumberWithDecimalPlaces.
(WebCore::StepRange::stepMismatch): Changed for Decimal type.
(WebCore::convertDoubleToInputNumber): Changed to real implementation.
(WebCore::convertInputNumberToDouble): Changed to real implementation.

  • html/StepRange.h:

(InputNumber): Replacement of NumberWithDecimalPlaces.
(WebCore::StepRange::InputNumber::InputNumber):

  • html/TimeInputType.cpp:

(WebCore::TimeInputType::createStepRange): Changed for Decimal type.

  • html/WeekInputType.cpp:

(WebCore::WeekInputType::createStepRange): Changed for Decimal type.

  • html/parser/HTMLParserIdioms.cpp:

(WebCore::serializeForNumberType): Added Decimal version.
(WebCore::parseToDecimalForNumberType): Added.

  • html/parser/HTMLParserIdioms.h: Updated comments for parseToDoubleForNumberType.
  • html/shadow/SliderThumbElement.cpp:

(WebCore::sliderPosition): Changed for Decimal type.

LayoutTests:

  • fast/forms/range/range-value-rounding-expected.txt: Added.
  • fast/forms/range/range-value-rounding.html: Added.
19:16 Changeset [119947] by commit-queue@webkit.org

[BlackBerry] Possible to clobber httponly cookie.
https://bugs.webkit.org/show_bug.cgi?id=86067

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

Source/WebCore:

If a cookie is set by javaScript and there is already a same httpOnly cookie in cookieManager,
we should reject it. If it has a httpOnly property, we reject it, too.

Test: http/tests/cookies/js-get-and-set-http-only-cookie.html

  • platform/blackberry/CookieJarBlackBerry.cpp:

(WebCore::setCookies):

  • platform/blackberry/CookieManager.cpp:

(WebCore::CookieManager::setCookies):
(WebCore::CookieManager::checkAndTreatCookie):
(WebCore::CookieManager::addCookieToMap):
(WebCore::CookieManager::setPrivateMode):

  • platform/blackberry/CookieManager.h:
  • platform/blackberry/CookieMap.cpp:

(WebCore::CookieMap::addOrReplaceCookie):
(WebCore::CookieMap::removeCookie):

  • platform/blackberry/CookieMap.h:

(CookieMap):

LayoutTests:

  • http/tests/cookies/js-get-and-set-http-only-cookie-expected.txt: Added.
  • http/tests/cookies/js-get-and-set-http-only-cookie.html: Added.
  • platform/chromium/http/tests/cookies/js-get-and-set-http-only-cookie-expected.txt: Added.
14:36 Changeset [119946] by rniwa@webkit.org

Expose layoutTestController as testRunner
https://bugs.webkit.org/show_bug.cgi?id=88210

Reviewed by Darin Adler.

Tools:

  • DumpRenderTree/LayoutTestController.cpp:

(LayoutTestController::makeWindowObject):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::bindJSObjectsToWindow):

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::initJSObjects):

  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:

(WTR::LayoutTestController::makeWindowObject):

LayoutTests:

Add a test for testRunner object.

  • fast/harness/testrunner-object-expected.txt: Added.
  • fast/harness/testrunner-object.html: Added.
13:18 Changeset [119945] by commit-queue@webkit.org

Access control allow lists starting with a comma are parsed incorrectly (CORS)
https://bugs.webkit.org/show_bug.cgi?id=88461

Patch by Pablo Flouret <pablof@motorola.com> on 2012-06-10
Reviewed by Adam Barth.

Source/WebCore:

The parsing algorithm would stop parsing at the first comma (being an
empty entry, of sorts) and bail out, effectively ignoring the whole
header.

Test: http/tests/xmlhttprequest/access-control-allow-lists-starting-with-comma.html

  • loader/CrossOriginPreflightResultCache.cpp:

(WebCore::parseAccessControlAllowList):

LayoutTests:

  • http/tests/xmlhttprequest/access-control-allow-lists-starting-with-comma-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-allow-lists-starting-with-comma.html: Added.
  • http/tests/xmlhttprequest/resources/access-control-allow-lists.php: Added.
12:48 Changeset [119944] by commit-queue@webkit.org

Removing mixed content tests' dependency on WebKitBlobBuilder:
https://bugs.webkit.org/show_bug.cgi?id=88736

http/tests/security/mixedContent/blob-url-in-iframe.html and
http/tests/security/mixedContent/filesystem-url-in-iframe.html both
relied on WebKitBlobBuilder, which is disabled on some builds. `new
Blob()` is the new hotness that these tests should be using instead. This
patch migrates both tests to the new API.

It also reenables blob-url-in-iframe.html on mac (filesystem-url-in-iframe.html
remains disabled, as the filesystem APIs are disabled entirely).

Patch by Mike West <mkwst@chromium.org> on 2012-06-10
Reviewed by Adam Barth.

  • http/tests/security/mixedContent/blob-url-in-iframe.html:
  • http/tests/security/mixedContent/filesystem-url-in-iframe.html:
  • platform/mac/Skipped:
12:19 Changeset [119943] by darin@apple.com

Some additional tweaks to keep TreeShared code simple/clean
https://bugs.webkit.org/show_bug.cgi?id=88738

Reviewed by Adam Barth.

  • platform/TreeShared.h: Make constructor and destructor both protected.

It's slightly dangerous to have a public non-virtual destructor, and there
is no reason it needs to be public.
(WebCore::TreeShared::~TreeShared): Make debug-only destructor non-virtual;
we were getting no value from it being virtual. Now that it's non-virtual,
there is no need to use an #if on it since it's an empty inline destructor
in non-debug builds.

11:44 Changeset [119942] by commit-queue@webkit.org

[EFL][GTK] media/track/track-cue-rendering-inner-timestamps.html is failing
https://bugs.webkit.org/show_bug.cgi?id=88725

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-10
Reviewed by Eric Carlson.

  • media/track/track-cue-rendering-inner-timestamps.html: Round the timestamp values

so that the test passes for EFL and GTK ports.

  • platform/efl/TestExpectations: Unskip test.
  • platform/gtk/TestExpectations: Unskip test.
11:41 Changeset [119941] by commit-queue@webkit.org

[EFL] Skip fast/dom/frame-loading-via-document-write.html
https://bugs.webkit.org/show_bug.cgi?id=88737

Unreviewed EFL gardening. Skipping test that is flaky after r119788.

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

  • platform/efl/TestExpectations:
11:18 Changeset [119940] by jer.noble@apple.com

REGRESSION: Setting invalid media "src" does not cause "error" event
https://bugs.webkit.org/show_bug.cgi?id=88423

Reviewed by Eric Carlson.

Source/WebCore:

Test: http/tests/media/video-src-invalid-error.html

Two problems here. When the loadTimer is scheduled, the m_pendingLoadFlags
variable is set to specify what type of load is scheduled. It is cleared
when the loadTimer fires. But, when prepareForLoad() stops the loadTimer,
it does not clear the m_pendingLoadFlags variable, so the next time
scheduleLoad() is called (when the src is changed to an invalid URL)
prepareForLoad() is not called again.

Second problem: Due to a bug in QTKit (<rdar://problem/11606415>), the
QTMovieLoadStateChangedNotification is never fired for an invalid http
URL if QTMovieOpenAsyncRequiredAttribute:YES is not passed when creating
the QTMovie.

Add a new utility method which both stops the m_loadTimer and clears the
m_pendingLoadFlags, and use it in all the places where m_loadTimer was
stopped explicitly:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::prepareForLoad):
(WebCore::HTMLMediaElement::stopLoadTimer): Added
(WebCore::HTMLMediaElement::userCancelledLoad):

  • html/HTMLMediaElement.h:

And pass QTMovieOpenAsyncRequiredAttribute:YES when creating the QTMovie:

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::commonMovieAttributes):

LayoutTests:

  • http/tests/media/video-src-invalid-error-expected.txt: Added.
  • http/tests/media/video-src-invalid-error.html: Added.
11:14 Changeset [119939] by jer.noble@apple.com

Add logging functions to MediaPlayerPrivateQTKit.
https://bugs.webkit.org/show_bug.cgi?id=88425

Reviewed by Eric Carlson.

No new tests; adds logging functions to aide debugging.

MediaPlayerPrivateQTKit should emit the same kind of logging messages as
other MediaPlayerPrivate engines to aide in debugging.

Distinguish between loadedRangesChanged() and loadStateChanged() for logging
purposes:

  • platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::loadedRangesChanged):
(-[WebCoreMovieObserver loadedRangesChanged:]):

Add LOG messages for each of the following functions:

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::~MediaPlayerPrivateQTKit):
(WebCore::MediaPlayerPrivateQTKit::createQTMovie):
(WebCore::MediaPlayerPrivateQTKit::createQTMovieView):
(WebCore::MediaPlayerPrivateQTKit::detachQTMovieView):
(WebCore::MediaPlayerPrivateQTKit::createQTVideoRenderer):
(WebCore::MediaPlayerPrivateQTKit::destroyQTVideoRenderer):
(WebCore::MediaPlayerPrivateQTKit::createQTMovieLayer):
(WebCore::MediaPlayerPrivateQTKit::destroyQTMovieLayer):
(WebCore::MediaPlayerPrivateQTKit::setUpVideoRendering):
(WebCore::MediaPlayerPrivateQTKit::tearDownVideoRendering):
(WebCore::MediaPlayerPrivateQTKit::load):
(WebCore::MediaPlayerPrivateQTKit::prepareToPlay):
(WebCore::MediaPlayerPrivateQTKit::play):
(WebCore::MediaPlayerPrivateQTKit::pause):
(WebCore::MediaPlayerPrivateQTKit::seek):
(WebCore::MediaPlayerPrivateQTKit::cancelSeek):
(WebCore::MediaPlayerPrivateQTKit::setVolume):
(WebCore::MediaPlayerPrivateQTKit::setRate):
(WebCore::MediaPlayerPrivateQTKit::setPreservesPitch):
(WebCore::MediaPlayerPrivateQTKit::cancelLoad):
(WebCore::MediaPlayerPrivateQTKit::prepareForRendering):
(WebCore::MediaPlayerPrivateQTKit::updateStates):
(WebCore::MediaPlayerPrivateQTKit::loadStateChanged):
(WebCore::MediaPlayerPrivateQTKit::rateChanged):
(WebCore::MediaPlayerPrivateQTKit::sizeChanged):
(WebCore::MediaPlayerPrivateQTKit::timeChanged):
(WebCore::MediaPlayerPrivateQTKit::didEnd):
(WebCore::MediaPlayerPrivateQTKit::clearMediaCache):
(WebCore::MediaPlayerPrivateQTKit::clearMediaCacheForSite):
(WebCore::MediaPlayerPrivateQTKit::disableUnsupportedTracks):

11:09 Changeset [119938] by jer.noble@apple.com

WebCore should use a single definition of an invalid media time.
https://bugs.webkit.org/show_bug.cgi?id=88572

Reviewed by Eric Carlson.

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

Add a new, universal definition for an invalid media time:

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayer::invalidTime):

Use this new definition instead of the hodge podge of (identical) local
definitions for an invalid media time:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::invalidateCachedTime):
(WebCore::HTMLMediaElement::currentTime):
(WebCore::HTMLMediaElement::initialTime):
(WebCore::HTMLMediaElement::playbackProgressTimerFired):
(WebCore::HTMLMediaElement::prepareMediaFragmentURI):
(WebCore::HTMLMediaElement::applyMediaFragmentURI):

  • html/MediaFragmentURIParser.cpp:

(WebCore::MediaFragmentURIParser::invalidTimeValue):
(WebCore::MediaFragmentURIParser::MediaFragmentURIParser):
(WebCore::MediaFragmentURIParser::startTime):
(WebCore::MediaFragmentURIParser::endTime):
(WebCore::MediaFragmentURIParser::parseTimeFragment):

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
(WebCore::MediaPlayerPrivateAVFoundation::duration):
(WebCore::MediaPlayerPrivateAVFoundation::seeking):
(WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
(WebCore::MediaPlayerPrivateAVFoundation::invalidateCachedDuration):

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:

(MediaPlayerPrivateAVFoundation):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration):

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::duration):
(WebCore::MediaPlayerPrivateQTKit::updateStates):
(WebCore::MediaPlayerPrivateQTKit::timeChanged):

10:15 Changeset [119937] by darin@apple.com

Remove unneeded callRemovedLastRef function from TreeShared refactoring
https://bugs.webkit.org/show_bug.cgi?id=88653

Reviewed by Sam Weinig.

.:

  • Source/autotools/symbols.filter: Filter removedLastRef instead of

callRemovedLastRef.

Source/WebCore:

  • WebCore.exp.in: Updated to remove callRemovedLastRef and add removedLastRef.
  • dom/ContainerNode.cpp: Removed callRemovedLastRef, which is no longer

needed and also had a bad cast in it.

  • dom/Document.h: Made removedLastRef private and non-virtual and made Node

a friend so it can call the private function.

  • dom/Node.cpp:

(WebCore::Node::removedLastRef): Moved here. This should not be an inline
function. Added comments explaining why it should not be inlined. Also added
explicit code to call to Document::removedLastRef, and added a comment why
that's the right thing to do here.

  • dom/Node.h: Inherit from TreeShared<Node, ContainerNode>. Made the

removedLastRef function non-virtual and removed it from the header file.
Updated TreeShared using statements. Made the TreeShared template class a
friend so it can call the private removedLastRef.

  • html/HTMLFormControlElement.h: Updated TreeShared using statements to specify

Node instead, which accomplishes the same thing.

  • html/HTMLObjectElement.h: Ditto.
  • platform/TreeShared.h: Made TreeShared take two template arguments for the

node type and the parent node type. Removed the callRemovedLastRef functions and
the extra forward declarations it required. Removed the private unused
removedLastRef function; not sure why it was left in here at all.
(WebCore::TreeShared::deref): Call removedLastRef instead of callRemovedLastRef.
(WebCore::TreeShared::setParent): Use ParentNodeType.
(WebCore::TreeShared::parent): Ditto.
(WebCore::adopted): Updated to have both template arguments.

  • svg/SVGElementInstance.cpp:

(WebCore::SVGElementInstance::removedLastRef): Replaced callRemovedLastRef with
this. Moved the body out of the header and added a comment explaining why the
function should not be inlined.

  • svg/SVGElementInstance.h: Made removedLastRef non-virtual, non-inline, and

private. Made TreeShared a friend so it can call the private removedLastRef.
Updated TreeShared using statements.

Source/WebKit2:

  • win/WebKit2.def: Export removedLastRef instead of callRemovedLastRef.
  • win/WebKit2CFLite.def: Ditto.
09:54 Changeset [119936] by zandobersek@gmail.com

Unreviewed GTK gardening. Updating a few animations tests baselines,
adding test expectations for one FileSystem test.

  • platform/gtk/TestExpectations:
  • platform/gtk/animations/3d/change-transform-in-end-event-expected.txt:
  • platform/gtk/animations/3d/matrix-transform-type-animation-expected.txt: Added.
  • platform/gtk/animations/3d/state-at-end-event-transform-expected.txt:
09:33 Changeset [119935] by mitz@apple.com

Temporarily added http/tests/security/mixedContent/blob-url-in-iframe.html to the Mac skip
list. <http://webkit.org/b/88736> tracks moving this test off of the legacy
WebKitBlobBuilder API.

  • platform/mac/Skipped:
09:14 Changeset [119934] by mitz@apple.com

Added http/tests/security/mixedContent/filesystem-url-in-iframe.html to the Mac skip list,
because FILE_SYSTEM is not enabled.

Part of: http/tests/security/mixedContent/blob-url-in-iframe.html and http/tests/security/mixedContent/filesystem-url-in-iframe.html are failing
<http://webkit.org/b/88736>

  • platform/mac/Skipped:
09:14 Changeset [119933] by commit-queue@webkit.org

[EFL] 2 fast/multicol/span tests are flaky
https://bugs.webkit.org/show_bug.cgi?id=88734

Unreviewed EFL gardening. Move to TestExpectations 2 tests that
are flaky on the bot.

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

  • platform/efl/TestExpectations:
08:37 Changeset [119932] by darin@apple.com
  • WebCore.exp.in: Re-sorted and alphabetized the file.
08:32 Changeset [119931] by commit-queue@webkit.org

[EFL][GTK] Skip http/tests/xmlhttprequest/origin-exact-matching.html added in r119911
https://bugs.webkit.org/show_bug.cgi?id=88728

Unreviewed gardening. Skip new test added in r119911 which fails for both
GTK and EFL ports.

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

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
08:29 Changeset [119930] by commit-queue@webkit.org

[EFL] Several test cases can be unskipped
https://bugs.webkit.org/show_bug.cgi?id=88731

Unreviewed EFL gardening. Unskip a few tests that are passing after
r118618 was rolled out.

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

  • platform/efl/TestExpectations:
07:53 Changeset [119929] by commit-queue@webkit.org

[EFL] skip userscripts/window-onerror-for-isolated-world-*.html tests
https://bugs.webkit.org/show_bug.cgi?id=88730

Unreviewed EFL gardening. Skip a few tests causing flakiness.

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

  • platform/efl/Skipped:
  • platform/efl/TestExpectations:
07:21 Changeset [119928] by ryuan.choi@samsung.com

[EFL][WK2] Add and refactor ewk API in order to support MiniBrowser without WK API.
https://bugs.webkit.org/show_bug.cgi?id=84124

Reviewed by Chang Shu.

Modify ewk_view and add ewk_context to provide a platform-depedent WebKit2
API.
This patch provides the minimum to support MiniBrowser.

  • PlatformEfl.cmake: add ewk_context.cpp.
  • UIProcess/API/efl/EWebKit2.h: Added.
  • UIProcess/API/efl/ewk_context.cpp: Added.

(_Ewk_Context):
(createDefaultWebContext):
(ewk_context_WKContext_get):
(ewk_context_default_get):

  • UIProcess/API/efl/ewk_context.h: Added.
  • UIProcess/API/efl/ewk_context_private.h: Added.
  • UIProcess/API/efl/ewk_view.cpp:

(_Ewk_View_Private_Data):
(_ewk_view_priv_del):
(ewk_view_base_add):
(ewk_view_add_with_context):
(ewk_view_add):
(ewk_view_uri_set):
(ewk_view_uri_get):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/ewk_view_private.h:
06:44 Changeset [119927] by kbalazs@webkit.org

[Qt][Win] Fix building Source/WebCore/plugins/win/PluginViewWin.cpp
https://bugs.webkit.org/show_bug.cgi?id=88308

Reviewed by Simon Hausmann.

No new tests, just a build fix.

Use ownerWindow() from page client. It has been
introduced for x11 plugins to solve exactly the
same problem.

  • plugins/win/PluginViewWin.cpp:

(windowHandleForPageClient):

05:49 Changeset [119926] by paroga@webkit.org

Unreviewed. Build fix for !ENABLE(JIT) after r119844 and r119925.

  • runtime/Executable.h:

(ExecutableBase):
(JSC::ExecutableBase::clearCodeVirtual):

05:25 Changeset [119925] by paroga@webkit.org

Unreviewed. Build fix for !ENABLE(JIT) after r119844.

  • runtime/Executable.h:

(ExecutableBase):
(JSC):

05:09 Changeset [119924] by kbalazs@webkit.org

[Qt][Win] Fix building ImageQt.cpp
https://bugs.webkit.org/show_bug.cgi?id=88306

Reviewed by Simon Hausmann.

No new tests, this is just a build fix.

  • platform/graphics/qt/ImageQt.cpp:

(WebCore):
(WebCore::BitmapImage::create):
Adapt to the "API" changes in Qt.

04:43 Changeset [119923] by commit-queue@webkit.org

[EFL][GTK] Skip media/track/track-cue-rendering-inner-timestamps.html added in r119907
https://bugs.webkit.org/show_bug.cgi?id=88726

Unreviewed gardening. Skip test added in r119907 for GTK and EFL ports.

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

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:

06/09/12:

23:36 Changeset [119922] by commit-queue@webkit.org

Make WebGL mark draws for compositing even if the draw count is zero
https://bugs.webkit.org/show_bug.cgi?id=88718

Patch by Gregg Tavares <gman@google.com> on 2012-06-09
Reviewed by Kenneth Russell.

No new tests as no new functionality.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::drawArrays):
(WebCore::WebGLRenderingContext::drawElements):

23:31 Changeset [119921] by dominicc@chromium.org

[Chromium] Remove JavaScriptCore dependencies from gyp
https://bugs.webkit.org/show_bug.cgi?id=88510

Reviewed by Adam Barth.

Chromium doesn't support JSC any more and there doesn't seem to be
a strong interest in using GYP as the common build system in other
ports.

Source/JavaScriptCore:

  • JavaScriptCore.gyp/JavaScriptCore.gyp: WebCore still depends on YARR interpreter.
  • JavaScriptCore.gypi: Only include YARR source.
  • gyp/JavaScriptCore.gyp: Removed.
  • gyp/gtk.gyp: Removed.

Source/WebCore:

No new functionality => No new tests.

  • gyp/WebCore.gyp: Removed.
  • gyp/copy-forwarding-and-icu-headers.sh: Removed.
  • gyp/copy-inspector-resources.sh: Removed.
  • gyp/generate-derived-sources.sh: Removed.
  • gyp/generate-webcore-export-file-generator.sh: Removed.
  • gyp/gtk.gyp: Removed.
  • gyp/run-if-exists.sh: Removed.
  • gyp/streamline-inspector-source.sh: Removed.
  • gyp/update-info-plist.sh: Removed.

Source/WTF:

  • WTF.gyp/WTF.gyp:

Tools:

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
  • Scripts/generate-project-files: Removed.
19:45 Changeset [119920] by rniwa@webkit.org

Remove a Chromium test expectation for the test that has been rolled out in r119918.

  • platform/chromium/TestExpectations:
18:08 Changeset [119919] by darin@apple.com

Refactor and improve code style in TextResourceDecoder to prepare for buffering improvement
https://bugs.webkit.org/show_bug.cgi?id=88566

Reviewed by Alexey Proskuryakov.

  • loader/TextResourceDecoder.cpp:

(WebCore::bytesEqual): Added helper function to make comparing against sequences of bytes
easier to read at the call site.
(WebCore::KanjiCode::judge): Changed to use bytesEqual in a few places, merged multiple if
statements, got rid of else after goto.
(WebCore::TextResourceDecoder::checkForCSSCharset): Changed to use early return instead of
nesting the whole function. Changed to use bytesEqual.
(WebCore::skipComment): Changed to use early return for more cases. Changed to use bytesEqual.
(WebCore::TextResourceDecoder::checkForHeadCharset): Changed to use bytesEqual.
(WebCore::TextResourceDecoder::decode): Changed to use emptyString() instead of "", since
the former is more efficient.

16:03 Changeset [119918] by commit-queue@webkit.org

Unreviewed, rolling out r118618 and r119353.
http://trac.webkit.org/changeset/118618
http://trac.webkit.org/changeset/119353
https://bugs.webkit.org/show_bug.cgi?id=88720

Caused at least 30 different crashes on ClusterFuzz (Requested
by inferno-sec on #webkit).

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

Source/WebCore:

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::checkForHTTPStatusCodeError):

  • loader/cache/CachedCSSStyleSheet.cpp:

(WebCore::CachedCSSStyleSheet::allClientsRemoved):

  • loader/cache/CachedFont.cpp:

(WebCore::CachedFont::allClientsRemoved):

  • loader/cache/CachedFont.h:

(WebCore::CachedFontClient::resourceClientType):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::removeClientForRenderer):
(WebCore):
(WebCore::CachedImage::allClientsRemoved):
(WebCore::CachedImage::lookupOrCreateImageForRenderer):

  • loader/cache/CachedImage.h:

(CachedImage):
(WebCore::CachedImageClient::resourceClientType):

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::allClientsRemoved):
(WebCore):

  • loader/cache/CachedRawResource.h:

(CachedRawResource):
(WebCore::CachedRawResourceClient::resourceClientType):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::removeClient):

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::allClientsRemoved):

  • loader/cache/CachedResourceClient.h:

(WebCore::CachedResourceClient::resourceClientType):

  • loader/cache/CachedSVGDocument.h:

(WebCore::CachedSVGDocumentClient::resourceClientType):

  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::allClientsRemoved):

  • loader/cache/CachedStyleSheetClient.h:

(WebCore::CachedStyleSheetClient::resourceClientType):

  • rendering/style/StyleCachedImage.cpp:

(WebCore::StyleCachedImage::removeClient):

  • rendering/style/StyleCachedImageSet.cpp:

(WebCore::StyleCachedImageSet::removeClient):

  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::~SVGImageCache):
(WebCore::SVGImageCache::removeRendererFromCache):
(WebCore::SVGImageCache::setRequestedSizeAndScales):
(WebCore::SVGImageCache::requestedSizeAndScales):
(WebCore::SVGImageCache::lookupOrCreateBitmapImageForRenderer):

  • svg/graphics/SVGImageCache.h:

(WebCore):
(SVGImageCache):

LayoutTests:

  • http/tests/cache/cancel-in-progress-load-expected.txt: Removed.
  • http/tests/cache/cancel-in-progress-load.html: Removed.
  • http/tests/misc/write-while-waiting.html:
  • svg/as-image/svg-image-leak-cached-data-expected.txt: Removed.
  • svg/as-image/svg-image-leak-cached-data.html: Removed.
14:38 Changeset [119917] by rniwa@webkit.org

Fix Chromium test expectations after my previous commit (r119916).

  • platform/chromium/TestExpectations:
13:57 Changeset [119916] by rniwa@webkit.org

Spring CRASH cleanup of Chromium test expectations.
Removed a whole bunch of bogus CRASH test expectations.

  • platform/chromium/TestExpectations:
12:58 Changeset [119915] by rniwa@webkit.org

Remove bogus CRASH expectations from skipped tests.
There's no point in specifying test expectation when tests are skipped.

  • platform/chromium/TestExpectations:
12:37 Changeset [119914] by fmalita@chromium.org

Fixed-position foreignObject descendants should be relative to the foreignObject viewport
https://bugs.webkit.org/show_bug.cgi?id=88547

Reviewed by Abhishek Arya.

Source/WebCore:

Tests: svg/foreignObject/fO-fixed-position-crash.html

svg/foreignObject/fixed-position-expected.svg
svg/foreignObject/fixed-position.svg

Fixed position elements are currently registered with the top level
RenderView even when embedded within an SVG foreignOject. This patch
changes containingBlock() & container() to return the containing
foreignObject renderer instead.

The new foreignObject fixed position behavior matches that of current
FireFox and Opera versions and is consistent with the spec:
http://www.w3.org/TR/CSS2/visuren.html#fixed-positioning
http://www.w3.org/TR/SVG/coords.html#EstablishingANewViewport

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):
(WebCore::RenderObject::container):

LayoutTests:

  • svg/foreignObject/fO-fixed-position-crash-expected.txt: Added.
  • svg/foreignObject/fO-fixed-position-crash.html: Added.
  • svg/foreignObject/fixed-position-expected.svg: Added.
  • svg/foreignObject/fixed-position.svg: Added.
12:35 Changeset [119913] by abarth@webkit.org

Can't use eval in iframes sanbdoxed via CSP header
https://bugs.webkit.org/show_bug.cgi?id=88450

Reviewed by Mihai Parparita.

Source/WebCore:

The initial empty document in a frame inherits the security context of
its parent (including the CSP policy). When we load the real document,
in some cases we'll do a "secure transition" to the new document. That
means that we leave the global object in place in case the parent
document has created any properties that it expects will be visible to
the new document.

If the parent document has a CSP policy that blocks eval, the "no eval"
bit will be set on the global object of the initial document. When we
perform a "secure transition" to the new document, we'll keep the bit,
which is wrong. In this patch, we reset the bit by always enabling
eval when clearing the context, regardless of whether we're performing
a "secure transition".

Test: http/tests/security/contentSecurityPolicy/iframe-inside-csp.html

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::enableEval):
(WebCore):

  • bindings/js/ScriptController.h:

(ScriptController):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::enableEval):
(WebCore):
(WebCore::ScriptController::disableEval):

  • bindings/v8/ScriptController.h:

(ScriptController):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::clear):

LayoutTests:

  • http/tests/security/contentSecurityPolicy/iframe-inside-csp-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/iframe-inside-csp.html: Added.
  • http/tests/security/contentSecurityPolicy/resources/sandboxed-eval.php: Added.
12:14 Changeset [119912] by commit-queue@webkit.org

[EFL] skip new tests added in r119883
https://bugs.webkit.org/show_bug.cgi?id=88716

Unreviewed EFL gardening. Skip new tests added in r119883.

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

  • platform/efl/Skipped:
  • platform/efl/TestExpectations:
11:42 Changeset [119911] by commit-queue@webkit.org

The value in Access-Control-Allow-Origin is not being matched correctly for CORS-enabled requests
https://bugs.webkit.org/show_bug.cgi?id=88139

Patch by Pablo Flouret <pablof@motorola.com> on 2012-06-09
Reviewed by Adam Barth.

Source/WebCore:

Compare a request's origin with the value given in any
Access-Control-Allow-Origin headers in an exact, case-sensitive manner,
instead of using SecurityOrigin::isSameSchemeHostPort(). Per step 3 of
the resource sharing check algorithm in
http://dvcs.w3.org/hg/cors/raw-file/tip/Overview.html#resource-sharing-check

Test: http/tests/xmlhttprequest/origin-exact-matching.html

  • loader/CrossOriginAccessControl.cpp:

(WebCore::passesAccessControlCheck):

LayoutTests:

  • http/tests/xmlhttprequest/origin-exact-matching-expected.txt: Added.
  • http/tests/xmlhttprequest/origin-exact-matching.html: Added.
  • http/tests/xmlhttprequest/resources/basic-auth/access-control-auth-basic.php: Get rid of a trailing slash in the origin.
  • http/tests/xmlhttprequest/resources/origin-exact-matching-iframe.html: Added.
11:26 Changeset [119910] by commit-queue@webkit.org

[EFL] Skip tests that rely on pathToLocalResource() due to regression in r119788
https://bugs.webkit.org/show_bug.cgi?id=88714

Unreviewed EFL gardening. Skip tests that rely on pathToLocalResource()
due to regression in r119788.

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

  • platform/efl/TestExpectations:
10:34 Changeset [119909] by ggaren@apple.com

Unreviewed, rolling back in part2 of r118646.

This patch removes eager finalization.

Weak pointer finalization should be lazy
https://bugs.webkit.org/show_bug.cgi?id=87599

Reviewed by Sam Weinig.

  • heap/Heap.cpp:

(JSC::Heap::collect): Don't finalize eagerly -- we'll do it lazily.

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::sweep): Do sweep weak sets when sweeping a block,
since we won't get another chance.

  • heap/MarkedBlock.h:

(JSC::MarkedBlock::sweepWeakSet):

  • heap/MarkedSpace.cpp:

(MarkedSpace::WeakSetSweep):

  • heap/MarkedSpace.h:

(JSC::MarkedSpace::sweepWeakSets): Removed now-unused code.

10:11 Changeset [119908] by commit-queue@webkit.org

[Qt][Texmap] All layers with backingStore are opaque when using TextureMapperGL.
https://bugs.webkit.org/show_bug.cgi?id=88703

The bug originated from StillImage that is not override
Image::currentFrameHasAlpha(), so it always returns false.
StillImage is used by ImageBuffer, and if Texmap draws contents on ImageBuffer,
TextureMapperBackingStore thinks contents does not have alpha.

Covered by existing compositing tests.

Patch by Huang Dongsung <luxtella@company100.net> on 2012-06-09
Reviewed by Noam Rosenthal.

  • platform/graphics/qt/StillImageQt.cpp:

(WebCore::StillImage::currentFrameHasAlpha):
(WebCore):

  • platform/graphics/qt/StillImageQt.h:

(StillImage):

10:01 Changeset [119907] by commit-queue@webkit.org

Basic support for timestamps within a TextTrackCue
https://bugs.webkit.org/show_bug.cgi?id=88187

Implemented support for timestamps within a TextTrackCue.
This enables rendering functionality for Karaoke and Paint-on captions.

Patch by Victor Carbune <victor@rosedu.org> on 2012-06-09
Reviewed by Eric Carlson.

Source/WebCore:

Test: media/track/track-cue-rendering-inner-timestamps.html

  • css/mediaControls.css: Remove the background shadow pseudo-id and

added two others, which can be further used for styling past / future
contents of the cue.
(video::-webkit-media-text-track-past-nodes): Used to style elements
within the cue that are before the current movie time.
(video::-webkit-media-text-track-future-nodes): Used to style elements
within the cue that are after the current movie time.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::updateActiveTextTrackCues): Regardless of whether
the active set changed or not, the current cues need to be informed of the current
movie time.

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::TextTrackCue): Initiliazed past and future containers.
(WebCore::TextTrackCue::getCueAsHTML): Checked whether the current cue text has
inner timestamps or not, in order to render faster if no timestamps are there.
(WebCore::TextTrackCue::updateDisplayTree): Added method that keeps the past and future
containers up to date, given a current movie time.
(WebCore):
(WebCore::TextTrackCue::getDisplayTree): Replaced the cue background container with the
past cues container. The *internal* display tree of the cue now has two containers,
representing past and future elements.

  • html/track/TextTrackCue.h: Added several variables to support the new functionality.

(TextTrackCue):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::constructTreeFromToken): Updated representation for this patch.

  • html/track/WebVTTParser.h:

(WebVTTParser): Made public the collectTimeStamp method, as this is required for
parsing timestamps within a cue as well.

LayoutTests:

  • media/track/captions-webvtt/captions-inner-timestamps.vtt: Added.
  • media/track/track-cue-rendering-inner-timestamps-expected.txt: Added.
  • media/track/track-cue-rendering-inner-timestamps.html: Added.
09:53 Changeset [119906] by vsevik@chromium.org

Web Inspector: Open links in Sources panel by default and fallback to Resources and Network panel otherwise.
https://bugs.webkit.org/show_bug.cgi?id=88710

Reviewed by Pavel Feldman.

  • inspector/front-end/inspector.js:

(WebInspector.documentClick.followLink):
(WebInspector.documentClick):
(WebInspector._showAnchorLocation):

09:48 Changeset [119905] by vsevik@chromium.org

Web Inspector: Only expand root domain in Sources/Scripts panel
https://bugs.webkit.org/show_bug.cgi?id=88135

Reviewed by Pavel Feldman.

  • inspector/front-end/NavigatorView.js:

(WebInspector.NavigatorTreeOutline._treeElementsCompare.compare.typeWeight):
(WebInspector.NavigatorTreeOutline._treeElementsCompare):
(WebInspector.NavigatorFolderTreeElement.prototype.onattach):

09:46 Changeset [119904] by vsevik@chromium.org

Web Inspector: Pretty print should respect text editor indent setting.
https://bugs.webkit.org/show_bug.cgi?id=88713

Reviewed by Pavel Feldman.

  • inspector/front-end/ScriptFormatter.js:
09:29 Changeset [119903] by mitz@apple.com

Fixed the build after r119895.

  • WebCore.xcodeproj/project.pbxproj:
06:18 Changeset [119902] by caseq@chromium.org

Web Inspector: [refactoring] rename TimelineVerticalOverview into TimelineFrameOverview
https://bugs.webkit.org/show_bug.cgi?id=88708

Reviewed by Vsevolod Vlasov.

  • rename TimelineVerticalOverview to TimelineFrameOverview;
  • rename associated fields, parameters, CSS classes etc;
  • rename overview mode designators to match the UI;
  • drop unused CSS rules for old-style mode selector;
  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineOverviewPane):
(WebInspector.TimelineOverviewPane.prototype._showEvents):
(WebInspector.TimelineOverviewPane.prototype._showFrames):
(WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
(WebInspector.TimelineOverviewPane.prototype._setFrameMode):
(WebInspector.TimelineOverviewPane.prototype._onCategoryVisibilityChanged):
(WebInspector.TimelineOverviewPane.prototype._update):
(WebInspector.TimelineOverviewPane.prototype.addFrame):
(WebInspector.TimelineOverviewPane.prototype.zoomToFrame):
(WebInspector.TimelineOverviewPane.prototype._reset):
(WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
(WebInspector.TimelineFrameOverview):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel):
(WebInspector.TimelinePanel.prototype._shouldShowFrames):
(WebInspector.TimelinePanel.prototype.revealRecordAt):

  • inspector/front-end/timelinePanel.css:

(.timeline-frame-overview #timeline-overview-grid):
(.timeline-frame-overview .timeline-overview-window):
(.timeline-frame-overview .timeline-overview-dividers-background):
(.timeline-frame-overview #timeline-overview-memory):
(.timeline-frame-overview-status-bar-item.toggled-on .glyph):
(.timeline-frame-overview-bars):
(.timeline.timeline-frame-overview .resources-divider):
(.sidebar-tree-item .timeline-frame-overview-status-bar-item):

05:01 Changeset [119901] by vsevik@chromium.org

IndexedDB: Inspector should handle null, string, and array keyPaths
https://bugs.webkit.org/show_bug.cgi?id=84303

Reviewed by Pavel Feldman.

Source/WebCore:

Supported different key path types and updated tests to cover each case.
Key path strings are now highlighted in the DataGrid column headers.

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

(WebCore):

  • inspector/front-end/IndexedDBModel.js:

(WebInspector.IndexedDBModel.idbKeyPathFromKeyPath):
(WebInspector.IndexedDBModel.keyPathStringFromIDBKeyPath):
(WebInspector.IndexedDBModel.prototype._loadDatabase.callback):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.ObjectStore.prototype.get keyPathString):
(WebInspector.IndexedDBModel.Index.prototype.get keyPathString):

  • inspector/front-end/IndexedDBViews.js:

(WebInspector.IDBDataView.prototype._createDataGrid):
(WebInspector.IDBDataView.prototype._keyColumnHeaderFragment):
(WebInspector.IDBDataView.prototype._keyPathStringFragment):
(WebInspector.IDBDataGridNode.prototype.createCell):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.IDBObjectStoreTreeElement.prototype._updateTooltip):
(WebInspector.IDBIndexTreeElement.prototype._updateTooltip):

LayoutTests:

  • http/tests/inspector/indexeddb/database-structure-expected.txt:
  • http/tests/inspector/indexeddb/database-structure.html:
04:49 Changeset [119900] by commit-queue@webkit.org

[EFL] Gardening failure case on EFL build bot
https://bugs.webkit.org/show_bug.cgi?id=88656

Unreviewed EFL gardening after r119795. jquery/core.html test
is crashing on debug bot and failing with a text diff on
release bot.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-09

  • platform/efl/TestExpectations:
04:25 Changeset [119899] by vsevik@chromium.org

Web Inspector: Increase size limits for resource content cached in InspectorResourceAgent.
https://bugs.webkit.org/show_bug.cgi?id=88674

Reviewed by Pavel Feldman.

  • inspector/NetworkResourcesData.cpp:
04:23 Changeset [119898] by vsevik@chromium.org

Web Inspector: Limit DebuggerAgent.Location use to DebuggerModel only, introduce WebInspector.RawLocation to be used elsewhere.
https://bugs.webkit.org/show_bug.cgi?id=87270

Reviewed by Pavel Feldman.

Source/WebCore:

Introduced WebInspector.RawLocation interface, a generic raw location independent from concrete domain (Styles, Debugger).
Made WebInspector.DebuggerModel.Location implement it and switched all debugger related methods to it.

  • inspector/front-end/BreakpointManager.js:

(WebInspector.BreakpointManager.prototype._breakpointResolved):

  • inspector/front-end/CompilerScriptMapping.js:

(WebInspector.CompilerScriptMapping.prototype.rawLocationToUILocation):

  • inspector/front-end/DebuggerModel.js:

(WebInspector.DebuggerModel.Location):
(WebInspector.DebuggerModel.prototype.continueToLocation):
(WebInspector.DebuggerModel.prototype.setBreakpointByScriptLocation):
(WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
(WebInspector.DebuggerModel.prototype.setBreakpoint):
(WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
(WebInspector.DebuggerModel.prototype._breakpointResolved):
(WebInspector.DebuggerModel.prototype.createRawLocation):
(WebInspector.DebuggerModel.prototype.createRawLocationByURL):
(WebInspector.DebuggerModel.prototype.setSelectedCallFrame):
(WebInspector.DebuggerModel.prototype.createLiveLocation):
(WebInspector.DebuggerModel.CallFrame.prototype.get location):
(WebInspector.DebuggerModel.CallFrame.prototype.createLiveLocation):

  • inspector/front-end/DebuggerResourceBinding.js:

(WebInspector.DebuggerResourceBinding.setScriptSource.didEditScriptSource):
(WebInspector.DebuggerResourceBinding.setScriptSource):
(WebInspector.DebuggerResourceBinding.prototype.setContent.get if):
(WebInspector.DebuggerResourceBinding.prototype.setContent):
(WebInspector.DebuggerResourceBinding.prototype._setContentWithInitialContent):

  • inspector/front-end/JavaScriptSource.js:

(WebInspector.JavaScriptSource.prototype.uiLocationToRawLocation):

  • inspector/front-end/Linkifier.js:
  • inspector/front-end/ObjectPopoverHelper.js:

(WebInspector.ObjectPopoverHelper.prototype._showObjectPopover.showObjectPopover.):
(WebInspector.ObjectPopoverHelper.prototype._showObjectPopover):

  • inspector/front-end/PresentationConsoleMessageHelper.js:
  • inspector/front-end/RawSourceCode.js:
  • inspector/front-end/ResourceScriptMapping.js:

(WebInspector.ResourceScriptMapping.prototype.rawLocationToUILocation):

  • inspector/front-end/Script.js:

(WebInspector.Script.prototype.rawLocationToUILocation):

  • inspector/front-end/ScriptSnippetModel.js:

(WebInspector.SnippetScriptMapping.prototype.rawLocationToUILocation):

  • inspector/front-end/SourceMapping.js:
  • inspector/front-end/UISourceCode.js:

(WebInspector.RawLocation):

LayoutTests:

  • inspector/debugger/breakpoint-manager.html:
  • inspector/debugger/pause-in-inline-script.html:
03:16 Changeset [119897] by commit-queue@webkit.org

Web Inspector: Add message loop instrumentation to public API and timeline agent
https://bugs.webkit.org/show_bug.cgi?id=88639

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-06-09
Reviewed by Vsevolod Vlasov.

Message loop instrumentation will show when the render thread is busy.
That way developer can discover if a render thread business causes low fps, or not.

Source/WebCore:

  • inspector/InspectorClient.h:

(WebCore::InspectorClient::startMessageLoopMonitoring): Starts observer.
(WebCore::InspectorClient::stopMessageLoopMonitoring): Stops observer.

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):
Changed timeline agent constructor parameters.

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::willProcessTaskImpl):
Forwards observer notification.
(WebCore):
(WebCore::InspectorInstrumentation::didProcessTaskImpl):
Ditto.

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willProcessTask):
Ditto.
(WebCore):
(WebCore::InspectorInstrumentation::didProcessTask):
Ditto.

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::start):
Starts observer.
(WebCore::InspectorTimelineAgent::stop):
Stops observer.
(WebCore::InspectorTimelineAgent::supportsFrameInstrumentation):
Changed result origin.
(WebCore::InspectorTimelineAgent::willProcessTask):
Noop implementqation.
(WebCore):
(WebCore::InspectorTimelineAgent::didProcessTask):
Noop implementqation.
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
Changed constructor parameters.

  • inspector/InspectorTimelineAgent.h:

(WebCore::InspectorTimelineAgent::create):
Ditto.
(InspectorTimelineAgent):

  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):
Changed timeline agent constructor parameters.

Source/WebKit/chromium:

  • public/WebDevToolsAgent.h:

(WebDevToolsAgent):

  • public/WebDevToolsAgentClient.h:

(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::startMessageLoopMonitoring):
Request message loop notifications.
(WebKit::WebDevToolsAgentClient::stopMessageLoopMonitoring):
Cancel message loop notifications.

  • src/InspectorClientImpl.cpp:

(WebKit::InspectorClientImpl::startMessageLoopMonitoring):
Request message loop notifications.
(WebKit):
(WebKit::InspectorClientImpl::stopMessageLoopMonitoring):
Cancel message loop notifications.

  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::startMessageLoopMonitoring):
Request message loop notifications.
(WebKit):
(WebKit::WebDevToolsAgentImpl::stopMessageLoopMonitoring):
Cancel message loop notifications.
(WebKit::WebDevToolsAgentImpl::instrumentWillProcessTask):
Message loop notification.
(WebKit::WebDevToolsAgentImpl::instrumentDidProcessTask):
Ditto.

  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

03:13 Changeset [119896] by caseq@chromium.org

Web Inspector: optimize timeline's frame mode overview appearance for 30fps
https://bugs.webkit.org/show_bug.cgi?id=88556

Reviewed by Vsevolod Vlasov.

  • adjust frame overview scale to 30fps == full height by default;
  • provide a fall-back auto-scale mode when median frame is longer than 1/30s;
  • add horizontal lines for 30 and 60fps;
  • drive-by fix: always use same order of categories in frame bars.
  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineVerticalOverview.prototype.update):
(WebInspector.TimelineVerticalOverview.prototype._aggregateFrames):
(WebInspector.TimelineVerticalOverview.prototype._renderBars):
(WebInspector.TimelineVerticalOverview.prototype._drawFPSMarks):
(WebInspector.TimelineVerticalOverview.prototype._renderBar):

02:05 Changeset [119895] by commit-queue@webkit.org

Add UNDO_MANAGER flag
https://bugs.webkit.org/show_bug.cgi?id=87908

Patch by Sukolsak Sakshuwong <sukolsak@google.com> on 2012-06-09
Reviewed by Tony Chang.

.:

  • Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Add undoManager property to document behind the UNDO_MANAGER flag and
add placeholders for some methods of undoManager.

Test: editing/undomanager/document-has-undomanager.html

  • CMakeLists.txt:
  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore):
(WebCore::Document::undoManager):

  • dom/Document.h:

(WebCore):
(Document):

  • dom/Document.idl:
  • editing/UndoManager.cpp: Added.

(WebCore):
(WebCore::UndoManager::create):
(WebCore::UndoManager::UndoManager):
(WebCore::UndoManager::undo):
(WebCore::UndoManager::redo):
(WebCore::UndoManager::clearUndo):
(WebCore::UndoManager::clearRedo):

  • editing/UndoManager.h: Added.

(WebCore):
(UndoManager):

  • editing/UndoManager.idl: Added.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
  • qmake/mkspecs/features/features.pri:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:
Note: See TracTimeline for information about the timeline view.