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

Timeline



Jul 11, 2012:

11:18 PM Changeset in webkit [122421] by mrowe@apple.com
  • 2 edits in trunk/Source/WebCore

<http://webkit.org/b/91051> Fix the Qt Mac build after r122400.

Qt on Mac builds with a deployment target of OS X 10.5. However, it was not been setting
BUILDING_ON_LEOPARD / TARGETING_LEOPARD and thus was falling down code paths in DisplaySleepDisabler.cpp
that were specific to Snow Leopard and newer. After the removal of BUILDING_ON_LEOPARD
and TARGETING_LEOPARD it ended up falling down the correct Leopard-compatible code path,
which revealed that the code made assumptions about which headers had already been included.

  • platform/mac/DisplaySleepDisabler.cpp: Include CoreServices/CoreServices.h to pull in

a declaration of UpdateSystemActivity when targeting Leopard.

10:33 PM Changeset in webkit [122420] by commit-queue@webkit.org
  • 12 edits
    5 adds in trunk

Add dialog element feature toggle to InternalSettings
https://bugs.webkit.org/show_bug.cgi?id=90934

Patch by Matt Falkenhagen <falken@chromium.org> on 2012-07-11
Reviewed by Hajime Morita.

.:

  • Source/autotools/symbols.filter: Added newly exported symbol.

Source/WebCore:

This enables layout tests to be written for dialog although the feature is disabled by default.

Tests: fast/dom/HTMLDialogElement/dialog-disabled.html

fast/dom/HTMLDialogElement/dialog-enabled.html

  • WebCore.exp.in: Added newly exported symbol.
  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup): Backup dialog feature flag.
(WebCore::InternalSettings::Backup::restoreTo): Restore dialog feature flag.
(WebCore::InternalSettings::setDialogElementEnabled): Added.
(WebCore):

  • testing/InternalSettings.h: Added support for dialog.

(Backup):
(InternalSettings):

  • testing/InternalSettings.idl: Added support for dialog.

LayoutTests:

  • fast/dom/HTMLDialogElement/dialog-disabled-expected.txt: Added.
  • fast/dom/HTMLDialogElement/dialog-disabled.html: Added.
  • fast/dom/HTMLDialogElement/dialog-enabled-expected.txt: Added.
  • fast/dom/HTMLDialogElement/dialog-enabled.html: Added.
  • platform/efl/TestExpectations: Skipped because ENABLE_DIALOG_ELEMENT is off by default.
  • platform/gtk/TestExpectations: Ditto.
  • platform/mac/TestExpectations: Ditto.
  • platform/qt/TestExpectations: Ditto.
10:20 PM Changeset in webkit [122419] by hayato@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

  • platform/chromium/TestExpectations: Started TIMEOUT on Mac.
10:17 PM Changeset in webkit [122418] by tkent@chromium.org
  • 3 edits
    3 adds in trunk

Accessing width or height of a detached image input element causes crash
https://bugs.webkit.org/show_bug.cgi?id=90885

Reviewed by Kentaro Hara.

Source/WebCore:

Test: fast/forms/image/width-and-height-of-detached-input.html

  • html/ImageInputType.cpp:

(WebCore::ImageInputType::height): Add null check for m_imageLoader.
(WebCore::ImageInputType::width): ditto.

LayoutTests:

  • fast/forms/image/width-and-height-of-detached-input-expected.txt: Added.
  • fast/forms/image/width-and-height-of-detached-input.html: Added.
10:00 PM Changeset in webkit [122417] by mitz@apple.com
  • 1 edit in trunk/LayoutTests/platform/mac/fast/multicol/table-vertical-align-expected.txt

Actually commit the results for r122416.

9:58 PM Changeset in webkit [122416] by mitz@apple.com
  • 1 edit in trunk/LayoutTests/ChangeLog

Updated expected results for this test after r122408, which fixed it.

  • platform/mac/fast/multicol/table-vertical-align-expected.txt:
9:34 PM Changeset in webkit [122415] by hayato@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.
html5lib/runner.html started crashing after r122359.

  • platform/chromium/TestExpectations:
9:08 PM Changeset in webkit [122414] by tkent@chromium.org
  • 13 edits
    3 adds in trunk

Do not save state of stateless form controls
https://bugs.webkit.org/show_bug.cgi?id=90964

Reviewed by Hajime Morita.

Source/WebCore:

By Bug 89409, we started to store unmodified form control
state. However we don't need to make such state for the following
types.

  • password
  • submit
  • reset
  • button
  • keygen

Test: fast/forms/state-restore-skip-stateless.html

  • html/BaseButtonInputType.cpp:

(WebCore::BaseButtonInputType::shouldSaveAndRestoreFormControlState):
Added. Disable saving state for submit, reset, and button types.

  • html/BaseButtonInputType.h:

(BaseButtonInputType): Add shouldSaveAndRestoreFormControlState.

  • html/HTMLFormControlElementWithState.h:

(HTMLFormControlElementWithState): Make shouldSaveAndRestoreFormControlState virtual.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::shouldSaveAndRestoreFormControlState):
Added. Checks InputType::shouldSaveAndRestoreFormControlState first.

  • html/HTMLInputElement.h:

(HTMLInputElement): Override shouldSaveAndRestoreFormControlState.

  • html/HTMLKeygenElement.cpp:

(WebCore::HTMLKeygenElement::shouldSaveAndRestoreFormControlState)
Added. Disable saving state for <keygen>.:

  • html/HTMLKeygenElement.h: Override shouldSaveAndRestoreFormControlState.
  • html/InputType.cpp:

(WebCore::InputType::shouldSaveAndRestoreFormControlState):
Added. Enable saving state for all types by default.

  • html/InputType.h:

(InputType): Add shouldSaveAndRestoreFormControlState.

  • html/PasswordInputType.cpp:

(WebCore::PasswordInputType::shouldSaveAndRestoreFormControlState):
Added. Disabled saving state.
(WebCore::PasswordInputType::saveFormControlState):
Because shouldSaveAndRestoreFormControlState() returns false,
saveFormControlState should be never called.

  • html/PasswordInputType.h:

(PasswordInputType): Override shouldSaveAndRestoreFormControlState.

LayoutTests:

  • fast/forms/resources/state-restore-skip-stateless-dump.html: Added.
  • fast/forms/state-restore-skip-stateless-expected.txt: Added.
  • fast/forms/state-restore-skip-stateless.html: Added.
8:54 PM Changeset in webkit [122413] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebCore

Compilation error with GLES2 when using gl2ext.h from ANGLE.
https://bugs.webkit.org/show_bug.cgi?id=91030

Reviewed by Kenneth Russell.

gl2ext.h defines PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG and not
PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC. This is a bug in the original Khronos header,
but we should work around it until fixed headers are integrated.

  • platform/graphics/opengl/Extensions3DOpenGLES.h:

(Extensions3DOpenGLES):

Removed the "PROC" suffix to work around the header bug.

8:23 PM Changeset in webkit [122412] by mrowe@apple.com
  • 2 edits in trunk/Source/WebCore

Attempt to fix the Chromium Mac build after r122400.

  • platform/text/cf/HyphenationCF.cpp: Ensure that Chromium only compiles the body of this file if

building for a new enough version of OS X.

8:22 PM Changeset in webkit [122411] by commit-queue@webkit.org
  • 7 edits
    3 adds in trunk/Source/WebKit2

[WK2][EFL] Ewk_View should provide more resource loading notifications
https://bugs.webkit.org/show_bug.cgi?id=90601

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-11
Reviewed by Antonio Gomes.

Add new "resource,request,sent", "resource,request,response",
"resource,request,failed" and "resource,request,finished" to
Ewk_View in order to notify the clients of the main resource
load state changes.

Introduce new Ewk_Url_Response type that is used to provide
information to the clients regarding the resource load
responses that are received.

  • PlatformEfl.cmake:
  • UIProcess/API/efl/EWebKit2.h:
  • UIProcess/API/efl/ewk_url_response.cpp: Added.

(_Ewk_Url_Response):
(ewk_url_response_ref):
(ewk_url_response_unref):
(ewk_url_response_url_get):
(ewk_url_response_status_code_get):
(ewk_url_response_mime_type_get):
(ewk_url_response_new):

  • UIProcess/API/efl/ewk_url_response.h: Added.
  • UIProcess/API/efl/ewk_url_response_private.h: Added.
  • UIProcess/API/efl/ewk_view.cpp:

(_Ewk_View_Private_Data):
(ewk_view_resource_load_initiated):
(ewk_view_resource_load_response):
(ewk_view_resource_load_failed):
(ewk_view_resource_load_finished):
(ewk_view_resource_request_sent):
(ewk_view_load_provisional_started):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/ewk_view_private.h:
  • UIProcess/API/efl/ewk_view_resource_load_client.cpp:

(toEwkView):
(didInitiateLoadForResource):
(didSendRequestForResource):
(didReceiveResponseForResource):
(didFinishLoadForResource):
(didFailLoadForResource):
(ewk_view_resource_load_client_attach):

8:08 PM Changeset in webkit [122410] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

[Mac] Sort project.pbxproj

  • WebCore.xcodeproj/project.pbxproj: Apply Tools/Scripts/sort-Xcode-project-file
7:49 PM Changeset in webkit [122409] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Build fix + remove dead code
https://bugs.webkit.org/show_bug.cgi?id=91039

Patch by Adenilson Cavalcanti <cavalcantii@gmail.com> on 2012-07-11
Reviewed by Filip Pizlo.

An unused variable was breaking compilation (thanks to warnings being treated as errors).

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):

7:38 PM Changeset in webkit [122408] by mitz@apple.com
  • 3 edits
    2 adds in trunk

When a table row height grows because of pagination, not all cells’ heights are adjusted
https://bugs.webkit.org/show_bug.cgi?id=91043

Reviewed by Sam Weinig.

Source/WebCore:

The fix for in bug <http://webkit.org/b/83595> in <http://trac.webkit.org/r113738> made table
rows grow as necessary to fit cells that grow as a result of pagination. But it had two bad
side effects: earlier cells on the row would not grow by the same amount, and later cells on
the row would factor the existing growth into their intrinsic padding.

Test: fast/multicol/table-row-height-increase.html

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::layoutRows): Now when a cell becomes taller than the row height,
the additional height needed is recorded, and the cell is shrunk back to row height. Then
after finishing the row, all cells occurring on the row (including cells spanning it but not
starting on it) are grown by the same amount.

LayoutTests:

  • fast/multicol/table-row-height-increase-expected.html: Added.
  • fast/multicol/table-row-height-increase.html: Added.
7:28 PM Changeset in webkit [122407] by mrowe@apple.com
  • 4 edits in trunk/Source

Fix a logic error in the #if so that the correct code is compiled on Snow Leopard.

I introduced this in r122403 when I inverted the sense of the #if.

Source/WebKit/mac:

  • WebView/WebFullScreenController.mm:

Source/WebKit2:

  • UIProcess/mac/WKFullScreenWindowController.mm:
7:28 PM Changeset in webkit [122406] by ojan@chromium.org
  • 3 edits
    2 deletes in trunk/LayoutTests

Rebaseline after http://trac.webkit.org/changeset/122374.

  • platform/chromium-linux/css3/flexbox/repaint-rtl-column-expected.png: Removed.
  • platform/chromium-mac-snowleopard/css3/flexbox/repaint-rtl-column-expected.png: Removed.
  • platform/chromium-mac/css3/flexbox/repaint-rtl-column-expected.png:
  • platform/chromium-win/css3/flexbox/repaint-rtl-column-expected.png:
7:03 PM Changeset in webkit [122405] by hayato@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.
inspector/timeline/timeline-dom-content-loaded-event.html started to fail after r122312.

  • platform/chromium/TestExpectations:
7:01 PM Changeset in webkit [122404] by mrowe@apple.com
  • 18 edits in trunk

<http://webkit.org/b/91024> Build against the latest SDK when targeting older OS X versions.

Reviewed by Dan Bernstein.

The deployment target is already set to the version that we're targeting, and it's that setting
which determines which functionality from the SDK is available to us.

Source/JavaScriptCore:

  • Configurations/Base.xcconfig:

Source/ThirdParty/ANGLE:

  • Configurations/Base.xcconfig:

Source/WebCore:

  • Configurations/Base.xcconfig:

Source/WebKit/mac:

  • Configurations/Base.xcconfig:

Source/WebKit2:

  • Configurations/Base.xcconfig:

Source/WTF:

  • Configurations/Base.xcconfig:

Tools:

  • DumpRenderTree/mac/Configurations/Base.xcconfig:
  • TestWebKitAPI/Configurations/Base.xcconfig:
  • WebKitTestRunner/Configurations/Base.xcconfig:
7:01 PM Changeset in webkit [122403] by mrowe@apple.com
  • 4 edits in trunk/Source

<http://webkit.org/b/91022> WebFullScreenController and WKFullScreenWindowController shouldn't add unprefixed methods to AppKit classes

Reviewed by Dan Bernstein.

Source/WebKit/mac:

  • WebView/WebFullScreenController.mm:

(convertRectToScreen): Add a static helper method that calls through to -[NSWindow convertRectToScreen:] on OS versions where it exists
but otherwise provides a compatibility implementation of it.
(-[WebFullScreenController enterFullScreen:]): Call our new helper.

Source/WebKit2:

  • UIProcess/mac/WKFullScreenWindowController.mm:

(convertRectToScreen): Add a static helper method that calls through to -[NSWindow convertRectToScreen:] on OS versions where it exists
but otherwise provides a compatibility implementation of it.
(-[WKFullScreenWindowController enterFullScreen:]): Call our new helper.

7:00 PM Changeset in webkit [122402] by mrowe@apple.com
  • 5 edits in trunk

Replace definitions of BUILDING_ON / TARGETING macros with macros that will error when used.

Part of <http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros.

Reviewed by Anders Carlsson.

Source/WTF:

  • wtf/Platform.h:

Tools:

  • DumpRenderTree/TestNetscapePlugIn/PluginObject.h: Remove the macros completely from here since

they're completely unused in TestNetscapePlugIn.

  • DumpRenderTree/config.h:
7:00 PM Changeset in webkit [122401] by mrowe@apple.com
  • 7 edits in trunk/Source

Switch a few cases that care about the SDK over to checking MAC_OS_X_VERSION_MAX_ALLOWED so that things build.

Part of <http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros

Reviewed by Filip Pizlo.

Source/WebCore:

  • platform/graphics/cg/GraphicsContextCG.cpp: The SDK we're building against determines whether the constant is available.
  • platform/mac/EmptyProtocolDefinitions.h: The SDK we're building against determines whether the protocols are declared.
  • platform/mac/NSScrollerImpDetails.h: The SDK we're building against determines whether the constants and method are

available.

  • platform/mac/SharedTimerMac.mm: The SDK we're building against determines whether the function has already been declared.

Source/WTF:

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary): The SDK we're building against determines how many elements
the structure is declared as having.

7:00 PM Changeset in webkit [122400] by mrowe@apple.com
  • 158 edits in trunk

<http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros

This removal was handled by a script that translates the relevant macros in to the equivalent checks
using the system availability macros.

Reviewed by Filip Pizlo.

Source/WebCore:

  • WebCore.exp.in:
  • accessibility/AccessibilityList.h:
  • accessibility/AccessibilityTable.h:
  • accessibility/mac/AXObjectCacheMac.mm:
  • editing/mac/EditorMac.mm:
  • loader/MainResourceLoader.cpp:
  • loader/MainResourceLoader.h:
  • page/AlternativeTextClient.h:
  • page/ContextMenuController.cpp:
  • page/mac/SettingsMac.mm:
  • platform/LocalizedStrings.cpp:
  • platform/MemoryPressureHandler.cpp:
  • platform/audio/mac/AudioBusMac.mm:
  • platform/graphics/Gradient.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
  • platform/graphics/ca/GraphicsLayerCA.cpp:
  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm:
  • platform/graphics/ca/mac/TileCache.mm:
  • platform/graphics/cg/GraphicsContextCG.cpp:
  • platform/graphics/cg/ImageBufferCG.cpp:
  • platform/graphics/cg/ImageBufferDataCG.cpp:
  • platform/graphics/cg/ImageBufferDataCG.h:
  • platform/graphics/cg/ImageCG.cpp:
  • platform/graphics/cg/ImageSourceCG.cpp:
  • platform/graphics/cg/PathCG.cpp:
  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
  • platform/graphics/mac/ComplexTextController.cpp:
  • platform/graphics/mac/ComplexTextControllerCoreText.mm:
  • platform/graphics/mac/FontCacheMac.mm:
  • platform/graphics/mac/FontCustomPlatformData.cpp:
  • platform/graphics/mac/FontMac.mm:
  • platform/graphics/mac/GraphicsContextMac.mm:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  • platform/graphics/mac/SimpleFontDataMac.mm:
  • platform/graphics/mac/WebLayer.h:
  • platform/graphics/mac/WebLayer.mm:
  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  • platform/mac/CursorMac.mm:
  • platform/mac/DisplaySleepDisabler.cpp:
  • platform/mac/DisplaySleepDisabler.h:
  • platform/mac/EmptyProtocolDefinitions.h:
  • platform/mac/HTMLConverter.h:
  • platform/mac/HTMLConverter.mm:
  • platform/mac/MemoryPressureHandlerMac.mm:
  • platform/mac/NSScrollerImpDetails.h:
  • platform/mac/PlatformEventFactoryMac.mm:
  • platform/mac/PopupMenuMac.mm:
  • platform/mac/ScrollAnimatorMac.mm:
  • platform/mac/ScrollElasticityController.mm:
  • platform/mac/SharedTimerMac.mm:
  • platform/mac/SuddenTermination.mm:
  • platform/mac/WebCoreFullScreenWindow.mm:
  • platform/mac/WebCoreNSCellExtras.h:
  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • platform/mac/WebFontCache.mm:
  • platform/mac/WebVideoFullscreenController.mm:
  • platform/mac/WebVideoFullscreenHUDWindowController.mm:
  • platform/network/Credential.h:
  • platform/network/ResourceHandle.h:
  • platform/network/cf/DNSCFNet.cpp:
  • platform/network/cf/ProxyServerCFNet.cpp:
  • platform/network/cf/ResourceRequest.h:
  • platform/network/cf/ResourceRequestCFNet.cpp:
  • platform/network/cf/SocketStreamHandleCFNet.cpp:
  • platform/network/mac/AuthenticationMac.mm:
  • platform/network/mac/CookieStorageMac.mm:
  • platform/network/mac/ResourceHandleMac.mm:
  • platform/network/mac/ResourceRequestMac.mm:
  • platform/network/mac/WebCoreURLResponse.mm:
  • platform/text/TextChecking.h:
  • platform/text/cf/HyphenationCF.cpp:
  • platform/text/mac/HyphenationMac.mm:
  • rendering/RenderLayerBacking.cpp:
  • rendering/RenderLayerCompositor.cpp:
  • rendering/RenderThemeMac.mm:

Source/WebKit/chromium:

  • src/mac/WebInputEventFactory.mm:

Source/WebKit/mac:

  • DefaultDelegates/WebDefaultContextMenuDelegate.mm:
  • Misc/WebKitErrors.m:
  • Misc/WebNSControlExtras.m:
  • Misc/WebNSFileManagerExtras.mm:
  • Plugins/Hosted/WebHostedNetscapePluginView.mm:
  • Plugins/WebBaseNetscapePluginView.mm:
  • Plugins/WebNetscapePluginView.mm:
  • WebCoreSupport/WebChromeClient.mm:
  • WebCoreSupport/WebEditorClient.mm:
  • WebCoreSupport/WebFrameLoaderClient.mm:
  • WebCoreSupport/WebSystemInterface.mm:
  • WebView/WebClipView.mm:
  • WebView/WebDynamicScrollBarsView.mm:
  • WebView/WebFrameView.mm:
  • WebView/WebFullScreenController.mm:
  • WebView/WebHTMLView.mm:
  • WebView/WebHTMLViewInternal.h:
  • WebView/WebPDFDocumentExtras.mm:
  • WebView/WebPreferences.mm:
  • WebView/WebResourceInternal.h:
  • WebView/WebScriptDebugDelegate.h:
  • WebView/WebView.mm:
  • WebView/WebViewPrivate.h:

Source/WebKit2:

  • Shared/DictionaryPopupInfo.cpp:
  • Shared/DictionaryPopupInfo.h:
  • Shared/mac/PasteboardTypes.mm:
  • Shared/mac/WebEventFactory.mm:
  • UIProcess/API/mac/PDFViewController.mm:
  • UIProcess/API/mac/PageClientImpl.mm:
  • UIProcess/API/mac/WKView.mm:
  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h:
  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
  • UIProcess/Launcher/mac/EnvironmentVariables.cpp:
  • UIProcess/Launcher/mac/EnvironmentVariables.h:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:
  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/TextCheckerMac.mm:
  • UIProcess/mac/WKFullScreenWindowController.mm:
  • UIProcess/mac/WebContextMac.mm:
  • UIProcess/mac/WebPageProxyMac.mm:
  • WebKit2Prefix.h:
  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
  • WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:
  • WebProcess/WebCoreSupport/WebEditorClient.h:
  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/mac/WebPageMac.mm:
  • WebProcess/com.apple.WebProcess.sb.in:
  • WebProcess/mac/KeychainItemShimMethods.mm:
  • WebProcess/mac/SecItemShimMethods.mm:
  • WebProcess/mac/WebProcessMac.mm:
  • WebProcess/mac/WebProcessMainMac.mm:
  • WebProcess/mac/WebProcessShim.mm:

Source/WTF:

  • wtf/Assertions.cpp:
  • wtf/FastMalloc.cpp:
  • wtf/Platform.h:
  • wtf/ThreadingPthreads.cpp:
  • wtf/unicode/icu/CollatorICU.cpp:

Tools:

  • DumpRenderTree/cf/WebArchiveDumpSupport.cpp:
  • DumpRenderTree/mac/CheckedMalloc.cpp:
  • DumpRenderTree/mac/DumpRenderTree.mm:
  • DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
  • DumpRenderTree/mac/LayoutTestControllerMac.mm:
  • DumpRenderTree/mac/TextInputController.m:
  • TestWebKitAPI/mac/InjectedBundleControllerMac.mm:
  • WebKitTestRunner/InjectedBundle/mac/ActivateFonts.mm:
  • WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
6:29 PM Changeset in webkit [122399] by rjkroege@chromium.org
  • 8 edits
    5 adds in trunk

Suppress horizontal conversion of PlatformWheelEvents when hasPreciseScrollingDeltas is true
https://bugs.webkit.org/show_bug.cgi?id=89580

Source/WebCore:

WebKit GTK and Chromium Linux force vertical wheel events to
scroll horizontally when over horizontal scroll bars. This is
undesirable for touchpad scrolling with
hasPreciseScrollingDeltas() == true. Modified shouldTurnVerticalTicksIntoHorizontal
to not perform this conversion for PlatformWheelEvents with preciseScrollingDeltas.

Reviewed by Adam Barth.

Tests: fast/events/touch/gesture/touch-gesture-scroll-sideways.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::shouldTurnVerticalTicksIntoHorizontal):
(WebCore::EventHandler::handleWheelEvent):

  • page/EventHandler.h:

(EventHandler):

  • page/chromium/EventHandlerChromium.cpp:

(WebCore::EventHandler::shouldTurnVerticalTicksIntoHorizontal):

  • page/gtk/EventHandlerGtk.cpp:

(WebCore::EventHandler::shouldTurnVerticalTicksIntoHorizontal):

Tools:

WebKit GTK and Chromium Linux force vertical wheel events to
scroll horizontally when over horizontal scroll bars. This is
undesirable for touchpad scrolling with
hasPreciseScrollingDeltas() == true. Modified DumpRenderTree to
let a layout test specify this attribute so that the change's impact
on scrolling can be tested in a layout test.

Reviewed by Adam Barth.

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::handleMouseWheel):

LayoutTests:

WebKit GTK and Chromium Linux force vertical wheel events to
scroll horizontally when over horizontal scroll bars. This is
undesirable for touchpad scrolling with
hasPreciseScrollingDeltas() == true. Added a layout test showing
that change correctly suppresses this behaviour.

Reviewed by Adam Barth.

  • fast/events/touch/gesture/touch-gesture-scroll-sideways-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-scroll-sideways.html: Added.
  • platform/chromium-linux/fast/events/touch/gesture/touch-gesture-scroll-sideways-expected.txt: Added. Note: test has intentional platform difference.
6:24 PM Changeset in webkit [122398] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

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

  • DEPS:
6:22 PM Changeset in webkit [122397] by Simon Fraser
  • 2 edits in trunk/Tools

Fix the build by declaring -isPaginated before use.

  • MiniBrowser/mac/BrowserWindowController.m:
6:16 PM Changeset in webkit [122396] by hayato@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed gardening.
Build fix for r122373.

  • platform/chromium/support/WebCompositorSharedQuadState.cpp:

(WebKit::WebCompositorSharedQuadState::WebCompositorSharedQuadState):

5:54 PM Changeset in webkit [122395] by commit-queue@webkit.org
  • 6 edits in trunk

Unreviewed, rolling out r122358.
http://trac.webkit.org/changeset/122358
https://bugs.webkit.org/show_bug.cgi?id=91037

Build break on WebKit Win (Requested by hayato on #webkit).

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

Source/WebKit/chromium:

  • public/WebView.h:

(WebView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::dragTargetDragEnter):
(WebKit):
(WebKit::WebViewImpl::dragTargetDragOver):
(WebKit::WebViewImpl::dragTargetDrop):

  • src/WebViewImpl.h:

(WebViewImpl):

Tools:

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::doDragDrop):
(EventSender::doMouseUp):
(EventSender::doMouseMove):
(EventSender::beginDragWithFiles):

5:45 PM Changeset in webkit [122394] by dpranke@chromium.org
  • 4 edits in trunk/Tools

nrwt: add a MessagePool abstraction that the manager will call to replace the broker
https://bugs.webkit.org/show_bug.cgi?id=90511

Reviewed by Ojan Vafai.

This change introduces the new MessagePool abstraction that will
replace the classes in manager_worker_broker. It is a minimal
interface that tries to follow the conventions in
multiprocessing.Pool and concurrency.futures ... it provides a
context manager and a run() method that sends N messages to M
workers processes (starting workers as necessary) and waits for
them all to complete, handling cleanup as necessary. The caller
is responsible for providing a handle() method to handle
messages received from the workers.

This interface basically hides all of the multiprocessing logic from
the manager class.

The initial implementation of MessagePool is a simple shim
around the existing broker classes; a subsequent change will
replace all the other classes with a much simpler
implementation.

No additional tests are provided for now; existing tests should
provide adequate coverage, and I will add new unit tests for the
MessagePool class when I replace the existing implementation.

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

(TestRunInterruptedException.reduce):
(Manager.init):
(Manager._run_tests):
(Manager._run_tests.instead):
(Manager.handle):
(Manager._handle_started_test):
(Manager._handle_finished_test_list):
(Manager._handle_finished_test):

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

(get):
(_MessagePool):
(_MessagePool.init):
(_MessagePool.enter):
(_MessagePool.exit):
(_MessagePool.run):
(_MessagePool.wait):
(_MessagePool.is_done):
(_MessagePool._worker_is_done):
(_MessagePool._close):
(_MessagePool.handle_done):
(_MessagePool.handle_started_test):
(_MessagePool.handle_finished_test):
(_MessagePool.handle_finished_test_list):
(_MessagePool.handle_exception):
(_MessagePool._log_messages):
(_MessagePool._handle_worker_exception):
(_WorkerState):
(_WorkerState.for):
(_WorkerState.init):
(_WorkerState.repr):
(_get_broker):

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

(make_broker):

5:23 PM Changeset in webkit [122393] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

pagesPerView param is misnamed for WKPageSetPageLength()
https://bugs.webkit.org/show_bug.cgi?id=91033

Rubber-stamped by Dan Bernstein.

The name of the second parameter to WKPageSetPageLength(),
'pagesPerView', was confusing; it's a page size (normally width)
in pixels.

  • UIProcess/API/C/WKPagePrivate.h:
5:12 PM Changeset in webkit [122392] by fpizlo@apple.com
  • 21 edits in trunk

DFG should have fast virtual calls
https://bugs.webkit.org/show_bug.cgi?id=90924

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

Implements virtual call support in the style of the old JIT, with the
caveat that we still use the same slow path for both InternalFunction
calls and JSFunction calls. Also rationalized the way that our
CodeOrigin indices tie into exception checks (previously it was a
strange one-to-one mapping with fairly limited assertions; now it's a
one-to-many mapping for CodeOrigins to exception checks, respectively).
I also took the opportunity to clean up
CallLinkInfo::callReturnLocation, which previously was either a Call or
a NearCall. Now it's just a NearCall. As well, exceptions during slow
path call resolution are now handled by returning an exception throwing
thunk rather than returning null. And finally, I made a few things
public that were previously private-with-lots-of-friends, because I
truly despise the thought of listing each thunk generating function as
a friend of JSValue and friends.

  • bytecode/CallLinkInfo.cpp:

(JSC::CallLinkInfo::unlink):

  • bytecode/CallLinkInfo.h:

(CallLinkInfo):

  • bytecode/CodeOrigin.h:

(JSC::CodeOrigin::CodeOrigin):
(JSC::CodeOrigin::isSet):

  • dfg/DFGAssemblyHelpers.h:

(JSC::DFG::AssemblyHelpers::AssemblyHelpers):

  • dfg/DFGCCallHelpers.h:

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

  • dfg/DFGGPRInfo.h:

(GPRInfo):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::CallBeginToken::CallBeginToken):
(JSC::DFG::CallBeginToken::~CallBeginToken):
(CallBeginToken):
(JSC::DFG::CallBeginToken::set):
(JSC::DFG::CallBeginToken::registerWithExceptionCheck):
(JSC::DFG::CallBeginToken::codeOrigin):
(JSC::DFG::CallExceptionRecord::CallExceptionRecord):
(CallExceptionRecord):
(JSC::DFG::JITCompiler::currentCodeOriginIndex):
(JITCompiler):
(JSC::DFG::JITCompiler::beginCall):
(JSC::DFG::JITCompiler::notifyCall):
(JSC::DFG::JITCompiler::prepareForExceptionCheck):
(JSC::DFG::JITCompiler::addExceptionCheck):
(JSC::DFG::JITCompiler::addFastExceptionCheck):

  • dfg/DFGOperations.cpp:
  • dfg/DFGRepatch.cpp:

(JSC::DFG::dfgLinkFor):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheck):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):

  • dfg/DFGThunks.cpp:

(JSC::DFG::emitPointerValidation):
(DFG):
(JSC::DFG::throwExceptionFromCallSlowPathGenerator):
(JSC::DFG::slowPathFor):
(JSC::DFG::linkForThunkGenerator):
(JSC::DFG::linkCallThunkGenerator):
(JSC::DFG::linkConstructThunkGenerator):
(JSC::DFG::virtualForThunkGenerator):
(JSC::DFG::virtualCallThunkGenerator):
(JSC::DFG::virtualConstructThunkGenerator):

  • dfg/DFGThunks.h:

(DFG):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):
(JSC::JIT::linkFor):

  • runtime/Executable.h:

(ExecutableBase):
(JSC::ExecutableBase::offsetOfJITCodeFor):
(JSC::ExecutableBase::offsetOfNumParametersFor):

  • runtime/JSValue.h:

(JSValue):

LayoutTests:

Rubber stamped by Oliver Hunt.

This changes which piece of code appears on top of the stack at the point of a stack
overflow. As far as Oliver and I can tell, it doesn't matter, so I just rebased the
test.

  • fast/js/stack-trace-expected.txt:
5:10 PM Changeset in webkit [122391] by Simon Fraser
  • 4 edits in trunk/Tools

Add an option to enter paginated mode in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=91035

Reviewed by Dan Bernstein.

Add an item to the Debug menu for MiniBrowser that puts
the web view into paginated mode. For now, we only
do left-to-right pagination, with a fixed column width.

  • MiniBrowser/mac/BrowserWindowController.h:
  • MiniBrowser/mac/BrowserWindowController.m:

(-[BrowserWindowController validateMenuItem:]): Update the checked
state of the menu item.
(-[BrowserWindowController isPaginated]): Return YES if paginated.
(-[BrowserWindowController togglePaginationMode:]): Toggle in
and out of pagination mode.

  • MiniBrowser/mac/MainMenu.xib: Add the debug menu item.
5:09 PM Changeset in webkit [122390] by abarth@webkit.org
  • 2 edits in trunk/Tools

commit-queue instances on Compute Engine are missing git-svn
https://bugs.webkit.org/show_bug.cgi?id=91034

Reviewed by Eric Seidel.

git-svn is needed to actually commit to SVN from a git working copy.

  • EWSTools/cold-boot.sh:
5:05 PM Changeset in webkit [122389] by shinyak@chromium.org
  • 3 edits in trunk/Source/WebCore

SVGUseElement should not use Element::ensureShadowRoot().
https://bugs.webkit.org/show_bug.cgi?id=90938

Reviewed by Hajime Morita.

We would like to remove Element::ensureShadowRoot() because we would like to stabilize the lifecycle of Shadow DOM.
This patch rewrites SVGUseElement::create() not to use Element::ensureShadowRoot(). Since our convention to create
a shadow subtree is to create a method createShadowSubtree(), I obeyed it.

No new tests. Simple refactoring.

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::create):
(WebCore::SVGUseElement::createShadowSubtree):
(WebCore):

  • svg/SVGUseElement.h:

(SVGUseElement):

4:33 PM Changeset in webkit [122388] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Accidentally used the wrong license (3-clause instead of 2-clause) in some
files I just committed.

Rubber stamped by Oliver Hunt.

  • bytecode/Watchpoint.cpp:
  • bytecode/Watchpoint.h:
  • jit/JumpReplacementWatchpoint.cpp:
  • jit/JumpReplacementWatchpoint.h:
4:17 PM Changeset in webkit [122387] by dpranke@chromium.org
  • 9 edits in trunk/Tools

webkitpy: lint code in webkitpy.layout_tests.models
https://bugs.webkit.org/show_bug.cgi?id=90416

Reviewed by Ojan Vafai.

Cleaning up errors reported from lint-webkitpy.

Also, suppress the warnings about wildcard imports in pylintrc;
we have nothing particularly against them.

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

(TestConfigurationConverter.combinations):

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

(TestConfigurationTest.test_hash.query_unknown_key):
(TestConfigurationTest.test_eq):

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

(ParseError.init):
(TestExpectationLine.init):
(TestExpectationsModel.get_expectations_string):
(TestExpectationsModel):
(TestExpectationsModel.expectation_to_string):
(TestExpectationsModel.add_expectation_line):
(TestExpectationsModel._clear_expectations_for_test):
(TestExpectationsModel._remove_from_sets):
(TestExpectations.get_expectations_string):
(TestExpectations.expectation_to_string):
(TestExpectations._report_warnings):

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

(Base.init):
(parse_exp):
(SkippedTests.check):
(TestExpectationParserTests.test_parse_empty_string):

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

(FailureTimeout.init):
(FailureCrash.init):
(FailureImageHashMismatch.init):
(FailureReftestMismatch.init):
(FailureReftestMismatchDidNotOccur.init):
(FailureReftestNoImagesGenerated.init):

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

(TestFailuresTest.test_unknown_failure_type.UnknownFailure.message):
(TestFailuresTest.test_unknown_failure_type):
(TestFailuresTest):
(TestFailuresTest.test_message_is_virtual):

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

(TestResult.loads):
(TestResult.has_failure_matching_types):

  • Scripts/webkitpy/pylintrc:
4:15 PM Changeset in webkit [122386] by abarth@webkit.org
  • 1 edit
    3 deletes in trunk/LayoutTests

Unreviewed. Remove empty directories.

  • http/tests/websocket/tests/resources: Removed.
  • http/tests/websocket/tests/script-tests: Removed.
  • http/tests/websocket/tests/workers: Removed.
  • http/tests/websocket/tests/workers/resources: Removed.
4:12 PM Changeset in webkit [122385] by fpizlo@apple.com
  • 11 edits
    2 adds in trunk/Source/JavaScriptCore

Watchpoints and jump replacement should be decoupled
https://bugs.webkit.org/show_bug.cgi?id=91016

Reviewed by Oliver Hunt.

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

(JSC):
(Label):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::appendWatchpoint):
(JSC::CodeBlock::watchpoint):
(DFGData):

  • bytecode/Watchpoint.cpp:

(JSC):

  • bytecode/Watchpoint.h:

(JSC::Watchpoint::Watchpoint):
(Watchpoint):
(JSC::Watchpoint::fire):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::speculationWatchpoint):

  • jit/JumpReplacementWatchpoint.cpp: Added.

(JSC):
(JSC::JumpReplacementWatchpoint::correctLabels):
(JSC::JumpReplacementWatchpoint::fireInternal):

  • jit/JumpReplacementWatchpoint.h: Added.

(JSC):
(JumpReplacementWatchpoint):
(JSC::JumpReplacementWatchpoint::JumpReplacementWatchpoint):
(JSC::JumpReplacementWatchpoint::setDestination):

4:11 PM Changeset in webkit [122384] by dpranke@chromium.org
  • 5 edits in trunk/Tools

nrwt: clean up names in worker.py
https://bugs.webkit.org/show_bug.cgi?id=90510

Reviewed by Ojan Vafai.

This is the last patch in the series of refactoring worker.py;
all this does is change some names of methods, instance
variables, and method parameters to be clearer (it also changes
some code in manager.py and manager_worker.py to be consistent).

There are no functional changes in this patch and the existing
tests should cover everything.

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

(Manager.init):
(Manager.prepare_lists_and_print_output):
(Manager._run_tests.worker_factory):
(Manager._run_tests):
(Manager._show_results_html_file):
(Manager.handle_finished_test_list):
(_WorkerState.init):

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

(_Broker.post_message):
(_Broker._dispatch_message):
(AbstractWorker.init):
(AbstractWorker.run):
(AbstractWorker.yield_to_caller):
(AbstractWorker.post):
(_WorkerConnection.init):

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

(_TestWorker.init):
(_TestWorker.start):
(_TestWorker.handle):
(_TestWorker.stop):
(_TestsMixin):
(_TestsMixin.test_name):

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

(Worker.init):
(Worker.del):
(Worker.start):
(Worker.handle):
(Worker._run_test):
(Worker.stop):
(Worker._timeout):
(Worker._kill_driver):
(Worker._run_test_with_timeout):
(Worker._clean_up_after_test):
(Worker._run_test_in_another_thread.SingleTestThread.run):
(Worker._run_test_in_this_thread):
(Worker._run_single_test):

4:06 PM Changeset in webkit [122383] by commit-queue@webkit.org
  • 27 edits
    9 copies
    8 moves
    1 add
    1 delete in trunk/Source

[chromium] Move compositor quads to Platform/chromium/public
https://bugs.webkit.org/show_bug.cgi?id=90582

Patch by Alexandre Elias <aelias@google.com> on 2012-07-11
Reviewed by Adrienne Walker.

This moves CCSharedQuadState, CCDrawQuad, and all but two CC*DrawQuad
classes to the WebKit namespace, as a first step to pushing them
across the process boundary for the ubercompositor.

  • The intent is to serialize the class hierarchy using the same

mechanism as WebInputEvent. In order to do this, there are three
requirements: pure POD data, a method returning size, and a packing
pragma.

  • Private data members are fine with this kind of serializer, and a

default constructor is not needed. Because of that, we can maintain
the same encapsulation and convenient APIs (behind
WEBKIT_IMPLEMENTATION) as the original classes. To ease the
transition, the original WebCore headers still exist and typedef to
the new classes.

  • However, SharedQuadState will be serialized using the normal

IPC_STRUCT_TRAITS macro, so I made its members public. A custom
serializer (on quad lists) will maintain the pointers from quads to
SharedQuadStates.

  • I converted the Material casting mechanism to materialCast() methods

living in the derived classes. That way, the WebCompositorQuad header
doesn't need to know about all its derived classes.

  • Quad classes not yet transitioned can still be used in

non-ubercompositor mode. CCRenderPassDrawQuad and CCYUVVideoDrawQuad
are currently non-POD and I left them in their original files.

This approach is the best I've found so far, since it preserves all
WebCore-facing APIs and avoids unnecessary code duplication (new quad
types or members can be added by modifying only one place). There
also should not be an unreasonable amount of custom serializer code
required.

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebCompositorQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCDrawQuad.h.

(WebKit):
(WebCompositorQuad):
(WebKit::WebCompositorQuad::quadRect):
(WebKit::WebCompositorQuad::quadTransform):
(WebKit::WebCompositorQuad::layerTransform):
(WebKit::WebCompositorQuad::layerRect):
(WebKit::WebCompositorQuad::scissorRect):
(WebKit::WebCompositorQuad::opacity):
(WebKit::WebCompositorQuad::needsBlending):
(WebKit::WebCompositorQuad::isLayerAxisAlignedIntRect):
(WebKit::WebCompositorQuad::quadVisibleRect):
(WebKit::WebCompositorQuad::isDebugQuad):
(WebKit::WebCompositorQuad::material):
(WebKit::WebCompositorQuad::sharedQuadState):
(WebKit::WebCompositorQuad::setSharedQuadState):

  • chromium/public/WebCompositorSharedQuadState.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCSolidColorDrawQuad.h.

(WebKit):
(WebCompositorSharedQuadState):

  • chromium/public/WebCompositorSolidColorQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCSolidColorDrawQuad.h.

(WebKit):
(WebCompositorSolidColorQuad):
(WebKit::WebCompositorSolidColorQuad::color):

  • chromium/public/WebCompositorTextureQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCTextureDrawQuad.h.

(WebKit):
(WebCompositorTextureQuad):
(WebKit::WebCompositorTextureQuad::uvRect):
(WebKit::WebCompositorTextureQuad::textureId):
(WebKit::WebCompositorTextureQuad::premultipliedAlpha):
(WebKit::WebCompositorTextureQuad::flipped):

Source/WebCore:

No new tests. (No-op refactoring.)

  • WebCore.gypi:
  • platform/chromium/support/WebCompositorQuad.cpp: Added.

(WebKit):
(WebKit::WebCompositorQuad::WebCompositorQuad):
(WebKit::WebCompositorQuad::opaqueRect):
(WebKit::WebCompositorQuad::setQuadVisibleRect):
(WebKit::WebCompositorQuad::size):

  • platform/chromium/support/WebCompositorSharedQuadState.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCSharedQuadState.cpp.

(WebKit):
(WebKit::WebCompositorSharedQuadState::WebCompositorSharedQuadState):
(WebKit::WebCompositorSharedQuadState::create):
(WebKit::WebCompositorSharedQuadState::isLayerAxisAlignedIntRect):

  • platform/chromium/support/WebCompositorSolidColorQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp.

(WebKit):
(WebKit::WebCompositorSolidColorQuad::create):
(WebKit::WebCompositorSolidColorQuad::WebCompositorSolidColorQuad):
(WebKit::WebCompositorSolidColorQuad::materialCast):

  • platform/chromium/support/WebCompositorTextureQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCTextureDrawQuad.cpp.

(WebKit):
(WebKit::WebCompositorTextureQuad::create):
(WebKit::WebCompositorTextureQuad::WebCompositorTextureQuad):
(WebKit::WebCompositorTextureQuad::setNeedsBlending):
(WebKit::WebCompositorTextureQuad::materialCast):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawQuad):

  • platform/graphics/chromium/LayerRendererChromium.h:
  • platform/graphics/chromium/cc/CCCheckerboardDrawQuad.cpp:

(WebCore::CCCheckerboardDrawQuad::create):
(WebCore::CCCheckerboardDrawQuad::CCCheckerboardDrawQuad):
(WebCore::CCCheckerboardDrawQuad::materialCast):
(WebCore):

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

(CCCheckerboardDrawQuad):

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

(WebCore::CCDebugBorderDrawQuad::create):
(WebCore::CCDebugBorderDrawQuad::CCDebugBorderDrawQuad):
(WebCore::CCDebugBorderDrawQuad::materialCast):
(WebCore):

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

(CCDebugBorderDrawQuad):

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

(WebCore):

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

(WebCore::CCIOSurfaceDrawQuad::create):
(WebCore::CCIOSurfaceDrawQuad::CCIOSurfaceDrawQuad):
(WebCore::CCIOSurfaceDrawQuad::materialCast):
(WebCore):

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

(CCIOSurfaceDrawQuad):

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

(WebCore):

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

(WebCore):

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

(WebCore::CCRenderPassDrawQuad::create):
(WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad):
(WebCore::CCRenderPassDrawQuad::materialCast):
(WebCore):

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

(CCRenderPassDrawQuad):

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

(WebCore):

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

(WebCore):

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

(WebCore):

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

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

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

(CCStreamVideoDrawQuad):

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

(WebCore):

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

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

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

(CCTileDrawQuad):

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

(WebCore::CCYUVVideoDrawQuad::create):
(WebCore::CCYUVVideoDrawQuad::CCYUVVideoDrawQuad):
(WebCore::CCYUVVideoDrawQuad::materialCast):
(WebCore):

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

(CCYUVVideoDrawQuad):

Source/WebKit/chromium:

  • tests/CCLayerTestCommon.cpp:

(CCLayerTestCommon::verifyQuadsExactlyCoverRect):

  • tests/CCSolidColorLayerImplTest.cpp:

(CCLayerTestCommon::TEST):

4:01 PM Changeset in webkit [122382] by rjkroege@chromium.org
  • 2 edits in trunk/Source/WebCore

[chromium] [regression] Don't use ScrollByPrecisePixels on Chromium Mac.
https://bugs.webkit.org/show_bug.cgi?id=91020

Reviewed by Adam Barth.

A change in https://bugs.webkit.org/show_bug.cgi?id=87535 to
improve the operation of smooth scrolling incorrectly caused
Chromium Mac to use the wrong scroll granularity on
hasPreciseScrollingDeltas() == true wheelevent scrolls.
Exclude the change on the Chromium Mac platform.

  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::handleWheelEvent): Adjusted #ifdef to exclude Chromium
Mac from ScrollByPrecisePixels change.

3:54 PM Changeset in webkit [122381] by abarth@webkit.org
  • 2 edits in trunk/Tools

The commit-queue needs some extra git config to be able to commit
https://bugs.webkit.org/show_bug.cgi?id=91025

Reviewed by Eric Seidel.

In order for the commit-queue to actually commit, it needs to know the
location of the SVN server.

  • EWSTools/cold-boot.sh:
3:48 PM Changeset in webkit [122380] by jpu@apple.com
  • 2 edits in trunk/Source/WebCore

On Mac, autocorrection sometimes fails to take place in Safari.
https://bugs.webkit.org/show_bug.cgi?id=89982

Reviewed by Ryosuke Niwa.

We should check the value of shouldCheckForCorrection, not shouldShowCorrectionPanel, to determine if we should
early return in markAndReplaceFor(). Also, since we don't want autocorrection to happen when we only change selection,
not the content, so we shouldn't set TextCheckingTypeCorrection flag in markMisspellingsAndBadGrammar() as this function
is triggered only by selection change.

  • editing/Editor.cpp:

(WebCore::Editor::markAndReplaceFor):
(WebCore::Editor::markMisspellingsAndBadGrammar):

3:42 PM Changeset in webkit [122379] by scherkus@chromium.org
  • 3 edits in branches/chromium/1180/Source/WebCore

Merging r120939 and r121043 to 1180 branch (Chrome video controls visual update).

BUG=134726
TEST=none

3:41 PM Changeset in webkit [122378] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r122361.
http://trac.webkit.org/changeset/122361
https://bugs.webkit.org/show_bug.cgi?id=91027

Broke Windows build and fast/forms/state-restore-broken-
state.html (Requested by rniwa on #webkit).

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

  • testing/Internals.idl:
3:38 PM Changeset in webkit [122377] by abarth@webkit.org
  • 1 edit
    1 add in trunk/Tools

Teach EWSTools how to configure SVN auth credentials
https://bugs.webkit.org/show_bug.cgi?id=91021

Reviewed by Eric Seidel.

To move the commit-queue over to Google Compute Engine, we need a way
to configure the commit-queue's credentials during the machine build
process. There doesn't seem to be a nice command line way of
configuring SVN auth credentials. I tried doing a bogus commit and
supplying the credentials that way, but that's super hacky.

The approach in this patch is to write the config file directly. The
format of these configurations files is documented in the SVN book, so
this approach doesn't see too sketchy.

  • EWSTools/configure-svn-auth.sh: Added.
3:26 PM Changeset in webkit [122376] by Simon Fraser
  • 3 edits
    3 adds in trunk

Assertion ASSERTION FAILED: enclosingIntRect(rendererMappedResult) == enclosingIntRect(FloatQuad(result).boundingBox()) when compositing in paginated mode
https://bugs.webkit.org/show_bug.cgi?id=90919

Reviewed by Antti Koivisto.

Source/WebCore:

r121124 added a fast path for geometry mapping that goes via layers
when possible. However, this broke paginated pages, which put
the root (RenderView) layer into column mode, because it failed
to check for columns on the ancestor layer.

Rather than make a risky change to convertToLayerCoords(), add a local
function canMapViaLayer(), which is like RenderLayer::canUseConvertToLayerCoords(),
but doesn't check for compositing (compositing itself is not a reason
to avoid convertToLayerCoords). Call canMapViaLayer() with the ancestorLayer
to check whether the ancestor has columns, which fixes the bug.

Test: compositing/columns/geometry-map-paginated-assert.html

  • rendering/RenderGeometryMap.cpp:

(WebCore::canMapViaLayer):
(WebCore::RenderGeometryMap::pushMappingsToAncestor):

LayoutTests:

Test with a composited element in a document which is put into paginated mode.

  • compositing/columns/geometry-map-paginated-assert-expected.txt: Added.
  • compositing/columns/geometry-map-paginated-assert.html: Added.
3:12 PM Changeset in webkit [122375] by ojan@chromium.org
  • 3 edits in trunk/Tools

Dedupe suffixes passed to webkit-patch rebaseline
https://bugs.webkit.org/show_bug.cgi?id=91017

Reviewed by Dirk Pranke.

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

(Rebaseline._suffixes_to_update):

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

(test_rebaseline_multiple_builders_and_tests_command_line):

2:52 PM Changeset in webkit [122374] by ojan@chromium.org
  • 4 edits in trunk/LayoutTests

Simplify css3/flexbox/repaint-rtl-column.html
https://bugs.webkit.org/show_bug.cgi?id=91011

Reviewed by Tony Chang.

This test was doing something simple in a complicated way. Also, removing
the text should make it so that more ports can fallback to the same png.

  • css3/flexbox/repaint-rtl-column-expected.txt:
  • css3/flexbox/repaint-rtl-column.html:
  • platform/chromium-linux/css3/flexbox/repaint-rtl-column-expected.png:
2:38 PM Changeset in webkit [122373] by danakj@chromium.org
  • 36 edits in trunk/Source

[chromium] Rename layerRect to contentRect for rects that live in content space
https://bugs.webkit.org/show_bug.cgi?id=90843

Reviewed by Adrienne Walker.

Source/WebCore:

Dropped the layerTransform() from CCSharedQuadState, as nothing should be
using it to draw with. RenderPasses need a weird drawTransform right now
which was stored in layerTransform, so moved this to the RenderPass quad.

No new tests. No change in behaviour.

  • platform/graphics/chromium/CanvasLayerTextureUpdater.cpp:

(WebCore::CanvasLayerTextureUpdater::paintContents):

  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerChromium::update):
(WebCore::ContentLayerChromium::needMoreUpdates):

  • platform/graphics/chromium/ImageLayerChromium.cpp:

(WebCore::ImageLayerChromium::update):

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::visibleContentOpaqueRegion):

  • platform/graphics/chromium/LayerChromium.h:

(WebCore::LayerChromium::visibleContentRect):
(WebCore::LayerChromium::setVisibleContentRect):
(LayerChromium):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawRenderPassQuad):
(WebCore::LayerRendererChromium::drawTileQuad):
(WebCore::LayerRendererChromium::drawYUVVideoQuad):
(WebCore::LayerRendererChromium::drawStreamVideoQuad):
(WebCore::LayerRendererChromium::drawIOSurfaceQuad):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::updateBounds):
(WebCore::TiledLayerChromium::setNeedsDisplayRect):
(WebCore::TiledLayerChromium::invalidateContentRect):
(WebCore::TiledLayerChromium::updateTiles):
(WebCore::TiledLayerChromium::setTexturePriorities):
(WebCore::TiledLayerChromium::setTexturePrioritiesInRect):
(WebCore::TiledLayerChromium::visibleContentOpaqueRegion):
(WebCore::TiledLayerChromium::updateContentRect):
(WebCore::TiledLayerChromium::needsIdlePaint):
(WebCore::TiledLayerChromium::idlePaintRect):

  • platform/graphics/chromium/TiledLayerChromium.h:

(TiledLayerChromium):

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

(WebCore::CCDrawQuad::visibleContentRect):

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

(WebCore::CCLayerImpl::createSharedQuadState):
(WebCore::CCLayerImpl::appendDebugBorderQuad):
(WebCore::CCLayerImpl::visibleContentOpaqueRegion):

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

(WebCore::CCLayerImpl::visibleContentRect):
(WebCore::CCLayerImpl::setVisibleContentRect):
(CCLayerImpl):

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

(WebCore::CCLayerTilingData::contentRectToTileIndices):
(WebCore::CCLayerTilingData::opaqueRegionInContentRect):
(WebCore::CCLayerTilingData::setBounds):

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

(CCLayerTilingData):

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

(WebCore::calculateVisibleContentRect):
(WebCore::layerShouldBeSkipped):
(WebCore):
(WebCore::calculateVisibleAndScissorRectsInternal):

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

(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):

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

(WebCore::addOcclusionBehindLayer):

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

(WebCore::CCRenderPassDrawQuad::create):
(WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad):

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

(CCRenderPassDrawQuad):
(WebCore::CCRenderPassDrawQuad::drawTransform):

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

(WebCore::CCRenderSurface::createSharedQuadState):
(WebCore::CCRenderSurface::createReplicaSharedQuadState):
(WebCore::CCRenderSurface::appendQuads):

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

(WebCore::CCSharedQuadState::create):
(WebCore::CCSharedQuadState::CCSharedQuadState):
(WebCore::CCSharedQuadState::isLayerAxisAlignedIntRect):

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

(CCSharedQuadState):
(WebCore::CCSharedQuadState::visibleContentRect):

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

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

Source/WebKit/chromium:

  • tests/CCLayerImplTest.cpp:

(WebCore::TEST):

  • tests/CCLayerTreeHostCommonTest.cpp:
  • tests/CCLayerTreeHostImplTest.cpp:
  • tests/CCOcclusionTrackerTest.cpp:

(WebKitTests::CCOcclusionTrackerTestVisitTargetTwoTimes::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceRotatedOffAxis::runMyTest):
(WebKitTests::CCOcclusionTrackerTestLargePixelsOccludeInsideClipRect::runMyTest):

  • tests/CCQuadCullerTest.cpp:
  • tests/CCRenderSurfaceTest.cpp:
  • tests/CCSolidColorLayerImplTest.cpp:

(CCLayerTestCommon::TEST):

  • tests/CCTiledLayerImplTest.cpp:

(CCLayerTestCommon::createLayer):
(CCLayerTestCommon::TEST):
(CCLayerTestCommon::getQuads):
(CCLayerTestCommon::coverageVisibleRectIntersectsTiles):
(CCLayerTestCommon::coverageVisibleRectIntersectsBounds):

  • tests/CCTiledLayerTestCommon.cpp:

(WebKitTests::FakeLayerTextureUpdater::prepareToUpdate):
(WebKitTests::FakeTiledLayerChromium::update):

  • tests/CCTiledLayerTestCommon.h:

(FakeTiledLayerChromium):

  • tests/LayerChromiumTest.cpp:
  • tests/TiledLayerChromiumTest.cpp:
2:20 PM Changeset in webkit [122372] by Chris Fleizach
  • 5 edits in trunk

ARIA spinbutton role incorrectly mapped to ProgressIndicatorRole
https://bugs.webkit.org/show_bug.cgi?id=77298

Reviewed by Anders Carlsson.

Source/WebCore:

  • accessibility/AccessibilityObject.cpp:

(WebCore::createARIARoleMap):

LayoutTests:

  • platform/mac/accessibility/aria-spinbutton-expected.txt:
  • platform/mac/accessibility/aria-spinbutton.html:
2:14 PM Changeset in webkit [122371] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] UserViewportArguments are not properly respected.
https://bugs.webkit.org/show_bug.cgi?id=91005

Patch by Mike Lattanzio <mlattanzio@rim.com> on 2012-07-11
Reviewed by Rob Buis.

PR# 170088.
Move scale and zooming reset on Committed before applying
the user viewport to avoid overriding it immediately.

Internal review by Konrad Piascik, Jacky Jiang.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setLoadState):

2:11 PM Changeset in webkit [122370] by abarth@webkit.org
  • 1 delete in trunk/Tools/EWSTools/bogus

Sorry, that wasn't supposed to actually land.

2:10 PM Changeset in webkit [122369] by commit-queue@webkit.org
  • 1 add in trunk/Tools/EWSTools/bogus

OOPS! This commit should be rejected by the precommit hook.

2:03 PM Changeset in webkit [122368] by kseo@webkit.org
  • 2 edits in trunk/Source/WebCore

BitmapImage::frameIsCompleteAtIndex() must return false if ImageDecoder is not initialized.
https://bugs.webkit.org/show_bug.cgi?id=90757

Patch by Huang Dongsung <luxtella@company100.net> on 2012-07-11
Reviewed by Simon Fraser.

The current code fortunately has worked so far because only
BitmapImage::startAnimation calls frameIsCompleteAtIndex, and startAnimation
cannot call frameIsCompleteAtIndex if ImageDecoder is not yet initialized.
startAnimation returns at the first line becase shouldAnimate() always return
false in this case.

if (m_frameTimer
!shouldAnimate() frameCount() <= 1)

return;

This change is needed because parallel image decoders call
BitmapImage::frameIsCompleteAtIndex in other places too.

No new tests, manually tested whether the caller exists or not that
calls BitmapImage::frameIsCompleteAtIndex() before ImageDecoder is
initialized.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::frameIsCompleteAtIndex):

1:56 PM Changeset in webkit [122367] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening, adding an expectation for a test failing on the
64-bit Debug builder due to libxml2 2.8.0 being used and updating the
bug handle for another test.

  • platform/gtk/TestExpectations:
1:28 PM Changeset in webkit [122366] by kevino@webkit.org
  • 3 edits in trunk/Tools

[wx] Unreviewed build fix. Add new directories and a new LayoutTestController method.

1:23 PM Changeset in webkit [122365] by kevino@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[wx] Unreviewed build fix. Don't try to build udis86_itab.c since it's included by another file.

1:20 PM Changeset in webkit [122364] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk/Source/WebKit

[BlackBerry] Implement Date/Time picker
https://bugs.webkit.org/show_bug.cgi?id=90911

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

Source/WebKit:

Add files into make file.

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

Implement HTML Date/Time picker, also should delete popup when closing popup.

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::closePagePopup):

  • WebCoreSupport/DatePickerClient.cpp: Added.

(WebCore):
(WebCore::DatePickerClient::DatePickerClient):
(WebCore::DatePickerClient::~DatePickerClient):
(WebCore::DatePickerClient::generateHTML):
(WebCore::DatePickerClient::closePopup):
(WebCore::DatePickerClient::contentSize):
(WebCore::DatePickerClient::htmlSource):
(WebCore::DatePickerClient::setValueAndClosePopup):
(WebCore::DatePickerClient::didClosePopup):
(WebCore::DatePickerClient::writeDocument):

  • WebCoreSupport/DatePickerClient.h: Added.

(WebKit):
(WebCore):
(DatePickerClient):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::openDatePopup):

1:20 PM Changeset in webkit [122363] by kevino@webkit.org
  • 2 edits in trunk/Source/WebCore

[wx] Unreviewed build fix. Update code to use the new constant name.

1:18 PM Changeset in webkit [122362] by kevino@webkit.org
  • 2 edits in trunk/Source/WebCore

[wx] Unreviewed build fix. Ignore array and sequence types for attributes as well
as functions since the CPP bindings do not yet support them.

1:16 PM Changeset in webkit [122361] by kevino@webkit.org
  • 2 edits in trunk/Source/WebCore

[wx] Unreviewed build fix. Use DOMStringList instead of DOMString[] for in / out type.

1:14 PM Changeset in webkit [122360] by danakj@chromium.org
  • 7 edits in trunk/Source

[chromium] Minimum size used for occlusion tracking should be a setting on CCLayerTreeHost
https://bugs.webkit.org/show_bug.cgi?id=90993

Reviewed by Adrienne Walker.

Source/WebCore:

Move the default minimum size used for occlusion tracking from the
CCOcclusionTracker class into CCLayerTreeSettings. This value is then
used on both threads as the lower limit for any occlusion to be
remembered.

This allows us to use (0, 0) as the minimum size for tests, allowing all
occlusion to be tracked.

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

(WebCore::CCLayerTreeHost::paintLayerContents):

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

(WebCore::CCLayerTreeSettings::CCLayerTreeSettings):
(CCLayerTreeSettings):

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

(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):

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

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:
1:02 PM Changeset in webkit [122359] by abarth@webkit.org
  • 4 edits in trunk

[Chromium] Enable LEGACY_VIEWPORT_ADAPTION
https://bugs.webkit.org/show_bug.cgi?id=90991

Reviewed by Tony Chang.

Source/WebKit/chromium:

Chromium wishes to support LEGACY_VIEWPORT_ADAPTION. I actually thought
this was enabled before, but the enable bit got lost in the shuffle.

  • features.gypi:

LayoutTests:

These tests pass now that we've enabled this feature.

  • platform/chromium/TestExpectations:
12:59 PM Changeset in webkit [122358] by tony@chromium.org
  • 6 edits in trunk

[chromium] Remove drag and drop API methods that are no longer used
https://bugs.webkit.org/show_bug.cgi?id=90996

Reviewed by Adam Barth.

Source/WebKit/chromium:

In r117327, we added a parameter for modifier keys to these methods.
Chromium has since switched to using the methods that require the
extra parameter so we can remove these methods.

  • public/WebView.h:

(WebView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::dragTargetDragEnter):
(WebKit::WebViewImpl::dragTargetDragOver):

  • src/WebViewImpl.h:

(WebViewImpl):

Tools:

Migrate DRT to use the methods that take modifier keys.

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::doDragDrop):
(EventSender::doMouseUp):
(EventSender::doMouseMove):
(EventSender::beginDragWithFiles):

12:48 PM Changeset in webkit [122357] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Add MIPS convertibleLoadPtr and other functions
https://bugs.webkit.org/show_bug.cgi?id=90714

Patch by Chao-ying Fu <fu@mips.com> on 2012-07-11
Reviewed by Oliver Hunt.

  • assembler/MIPSAssembler.h:

(JSC::MIPSAssembler::labelIgnoringWatchpoints):
(MIPSAssembler):
(JSC::MIPSAssembler::replaceWithLoad):
(JSC::MIPSAssembler::replaceWithAddressComputation):

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::convertibleLoadPtr):
(MacroAssemblerMIPS):

12:41 PM Changeset in webkit [122356] by andersca@apple.com
  • 10 edits in trunk/Source

Add -Wtautological-compare and -Wsign-compare warning flags
https://bugs.webkit.org/show_bug.cgi?id=90994

Reviewed by Mark Rowe.

Source/JavaScriptCore:

  • Configurations/Base.xcconfig:

Source/WebCore:

  • Configurations/Base.xcconfig:

Source/WebKit/mac:

  • Configurations/Base.xcconfig:

Source/WebKit2:

  • Configurations/Base.xcconfig:

Source/WTF:

  • Configurations/Base.xcconfig:
12:29 PM Changeset in webkit [122355] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Test actual rendering results in API tests
https://bugs.webkit.org/show_bug.cgi?id=80609

Reviewed by Alexis Menard.

Added a very basic test to tst_QQuickWebView to make sure rendering actually occurs.

  • UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:

(tst_QQuickWebView):
(tst_QQuickWebView::basicRenderingSanity):

12:29 PM Changeset in webkit [122354] by dino@apple.com
  • 8 edits
    2 adds in trunk

TileCache layers have wrong border debug color
https://bugs.webkit.org/show_bug.cgi?id=90922

Reviewed by Simon Fraser.

Source/WebCore:

Commit r122152 updated the layer hierarchy when a tile
cache is being used by the view. As part of that, GraphicsLayerClient::shouldUseTileCache()
was changed to return false in some situations (the idea was that it
should only be called from the createGraphicsLayer method). However
there were two other call points: one that sets the debug colors on
borders, the other was a call that keeps the document background in sync.

Add a new method usingTileCache() that returns the current state. Also fix
a FIXME where the debug code always called into the client rather than
caching the value on the GraphicsLayer.

Test: compositing/document-background-color.html

  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::GraphicsLayer):
(WebCore::GraphicsLayer::updateDebugIndicators): check the local variable when
setting the debug colors.

  • platform/graphics/GraphicsLayer.h:

(GraphicsLayer): new bool member variable m_usingTileCache.

  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::usingTileCache): new virtual method to query if
this client is actually using the tile cache.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::GraphicsLayerCA): set the member variable m_usingTileCache
if the GraphicsLayerClient says we are.

  • rendering/RenderLayerBacking.h:

(WebCore::RenderLayerBacking::usingTileCache):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::documentBackgroundColorDidChange): call usingTileCache()
rather than shouldUseTileCache(), because the latter's value might not always reflect
the existence of a cache.

LayoutTests:

Make sure that the document background color is updated
when using a Tile Cache.

  • compositing/document-background-color-expected.html: Added.
  • compositing/document-background-color.html: Added.
11:53 AM Changeset in webkit [122353] by rniwa@webkit.org
  • 8 edits in trunk/Source/WebCore

Clang build fix after r122345.
Also let XCode do its own thing.

  • WebCore.xcodeproj/project.pbxproj:
  • html/HTMLCollection.cpp:

(WebCore::HTMLCollectionWithArrayStorage::item):

  • html/HTMLCollection.h:

(HTMLCollectionWithArrayStorage):

  • html/HTMLFormCollection.cpp:

(WebCore::HTMLFormCollection::itemInArrayAfter):

  • html/HTMLFormCollection.h:

(HTMLFormCollection):

  • html/HTMLPropertiesCollection.cpp:

(WebCore::HTMLPropertiesCollection::itemInArrayAfter):

  • html/HTMLPropertiesCollection.h:

(HTMLPropertiesCollection):

11:49 AM Changeset in webkit [122352] by mrowe@apple.com
  • 10 edits
    1 add in trunk

Add a Mountain Lion version of libWebKitSystemInterface.a.

Source/WebKit/mac:

Reviewed by John Sullivan.

  • Configurations/DebugRelease.xcconfig: Look for the library under its expected name.

Source/WebKit2:

Reviewed by John Sullivan.

  • Configurations/DebugRelease.xcconfig: Look for the library under its expected name.

Tools:

Reviewed by John Sullivan.

  • Scripts/copy-webkitlibraries-to-product-directory: Include libWebKitSystemInterfaceMountainLion.a in the list of libraries to copy.

WebKitLibraries:

Update the WebKitSystemInterface header and binaries.

Reviewed by John Sullivan.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a: Added.
  • libWebKitSystemInterfaceSnowLeopard.a:
11:45 AM Changeset in webkit [122351] by pdr@google.com
  • 1 edit
    1 add in trunk/PerformanceTests

Add a performance test for hit testing in SVG
https://bugs.webkit.org/show_bug.cgi?id=90811

Reviewed by Ryosuke Niwa.

The shape rendering code is changing a lot and I'd like a performance test to
make sure we don't regress, and to track our improvements.

Performance results in my Linux desktop:

RESULT SVG: SvgHitTesting= 105.0 ms
median= 103.5 ms, stdev= 4.60434577329 ms, min= 101.0 ms, max= 116.0 ms

RESULT SVG: SvgHitTesting= 97.8 ms
median= 96.5 ms, stdev= 2.67581763205 ms, min= 95.0 ms, max= 102.0 ms

RESULT SVG: SvgHitTesting= 104.3 ms
median= 104.0 ms, stdev= 1.41774468788 ms, min= 102.0 ms, max= 107.0 ms

RESULT SVG: SvgHitTesting= 103.6 ms
median= 103.5 ms, stdev= 1.2 ms, min= 102.0 ms, max= 106.0 ms

  • SVG/SvgHitTesting.html: Added.
11:45 AM Changeset in webkit [122350] by mrowe@apple.com
  • 2 edits in trunk/Tools

<http://webkit.org/b/90835> Teach bisect-builds to work with a Safari.app that has entitlements.

Reviewed by Dan Bernstein.

  • Scripts/bisect-builds: Use safariPathFromSafariBundle to determine which binary within the application

should be invoked.

11:42 AM Changeset in webkit [122349] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

[Gtk] fast/events/keydown-function-keys.html is failing
https://bugs.webkit.org/show_bug.cgi?id=90891

Reviewed by Martin Robinson.

Work around the context menu being shown on F10 key being pressed by
unbiding the key when running tests in DumpRenderTree. The problem
appears when using a recent version of the xkeyboard-config package.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(setDefaultsToConsistentStateValuesForTesting):

11:30 AM Changeset in webkit [122348] by shawnsingh@chromium.org
  • 1 edit
    2 adds in trunk/Source/WebKit/chromium

Unreviewed build fix, forgot to add URLTestHelpers.* when landing r122344

  • tests/URLTestHelpers.cpp: Added.

(URLTestHelpers):
(WebKit::URLTestHelpers::registerMockedURLFromBaseURL):
(WebKit::URLTestHelpers::registerMockedURLLoad):

  • tests/URLTestHelpers.h: Added.

(WebKit):
(URLTestHelpers):
(WebKit::URLTestHelpers::toKURL):

11:15 AM Changeset in webkit [122347] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Simplify the copying of JSC ARMv7's LinkRecord
https://bugs.webkit.org/show_bug.cgi?id=90930

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-07-11
Reviewed by Filip Pizlo.

The class LinkRecord is used by value everywhere in ARMv7Assembler. The compiler uses
memmove() to move the objects.

The problem is memmove() is overkill for this object, moving the value can be done with
3 load-store. This patch adds an operator= to the class doing more efficient copying.
This reduces the link time by 19%.

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::LinkRecord::LinkRecord):
(JSC::ARMv7Assembler::LinkRecord::operator=):
(JSC::ARMv7Assembler::LinkRecord::from):
(JSC::ARMv7Assembler::LinkRecord::setFrom):
(JSC::ARMv7Assembler::LinkRecord::to):
(JSC::ARMv7Assembler::LinkRecord::type):
(JSC::ARMv7Assembler::LinkRecord::linkType):
(JSC::ARMv7Assembler::LinkRecord::setLinkType):
(JSC::ARMv7Assembler::LinkRecord::condition):

11:14 AM Changeset in webkit [122346] by commit-queue@webkit.org
  • 4 edits in trunk

[Gtk] allow building with css-filters
https://bugs.webkit.org/show_bug.cgi?id=90908

.:

Add support for css-filters in Source/WebCore/GNUmakefile.am
configure.ac

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-07-11
Reviewed by Eric Seidel.

  • configure.ac:

Source/WebCore:

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-07-11
Reviewed by Eric Seidel.

Add support for css-filters in Source/WebCore/GNUmakefile.am
configure.ac

No functional change, so no new tests.

  • GNUmakefile.am:
11:13 AM Changeset in webkit [122345] by rniwa@webkit.org
  • 7 edits in trunk/Source/WebCore

HTMLFormCollection::item and HTMLPropertiesCollection::item should share code
https://bugs.webkit.org/show_bug.cgi?id=90932

Reviewed by Anders Carlsson.

Merged HTMLFormCollection::item and HTMLPropertiesCollection::item as HTMLCollectionWithArrayStorage::item,
which can be merged into HTMLCollection::item in a follow up patch.

Also moved the call to invalidateCacheIfNeeded into HTMLCollection::updateNameCache() as done in
HTMLPropertiesCollection.

In addition, moved the early bail out for when the base element doesn't have itemscope attribute from individual
functions to updateRefElements so that HTMLCollectionWithArrayStorage::item doesn't need to have this check.

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollectionWithArrayStorage::item): Added. It's based on HTMLPropertiesCollection::item but it only
has the single loop (as supposed to nested loops) as HTMLFormCollection doesn't have multiple items per element
in the array unlike HTMLPropertiesCollection. In addition, offsetInArray (was i in HTMLPropertiesCollection::item) is
incremented in each itemAfter due to this semantic difference in each itemAfter.
(WebCore::HTMLCollection::updateNameCache):
(WebCore::HTMLCollection::hasNamedItem):
(WebCore::HTMLCollection::namedItems):

  • html/HTMLCollection.h:

(HTMLCollectionWithArrayStorage):
(WebCore::HTMLCollectionWithArrayStorage::HTMLCollectionWithArrayStorage):

  • html/HTMLFormCollection.cpp:

(WebCore::HTMLFormCollection::HTMLFormCollection):
(WebCore::HTMLFormCollection::calcLength): Merged numberOfFormControlElements since it was only called here.
(WebCore::HTMLFormCollection::itemAfter): Added. HTMLFormCollection has exactly one item per element in the array
so we increment the offset in each iteration. Note that when we're continuing a search, we need to increment
the offset in order to avoid returning the same item.
(WebCore::HTMLFormCollection::updateNameCache):

  • html/HTMLFormCollection.h:

(HTMLFormCollection):

  • html/HTMLPropertiesCollection.cpp:

(WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):
(WebCore::HTMLPropertiesCollection::updateRefElements): Set m_hasItemRefElements true upfront since we never fail to
update ref elements. Bail out as soon as we cleared the m_itemRefElements when the base element doesn't have itemscope
content attribute.
(WebCore::HTMLPropertiesCollection::itemAfter): Added. We reset previousItem to null because the existing itemAfter
requires previousItem be null when we're moving to a new entry in m_itemRefElements.
(WebCore::HTMLPropertiesCollection::calcLength):
(WebCore::HTMLPropertiesCollection::cacheFirstItem):
(WebCore::HTMLPropertiesCollection::updateNameCache): Merged findProperties since this was the only caller.
(WebCore::HTMLPropertiesCollection::names):
(WebCore::HTMLPropertiesCollection::namedItem):
(WebCore::HTMLPropertiesCollection::hasNamedItem):

  • html/HTMLPropertiesCollection.h:

(HTMLPropertiesCollection): Made updateRefElements public as it's called in HTMLCollectionWithArrayStorage::item.

11:10 AM Changeset in webkit [122344] by shawnsingh@chromium.org
  • 16 edits in trunk/Source/WebKit/chromium

[chromium] Use WEBKIT_IMPLEMENTATION == 1 for webkit_unit_tests
https://bugs.webkit.org/show_bug.cgi?id=90094

Reviewed by Adrienne Walker.

This patch adds the WEBKIT_IMPLEMENTATION = 1 define to
WebKitUnitTests.gyp. To get it to compile correctly, some string
and URL code was refactored and fixed, in particular GURL usage is
replaced with KURL usage.

  • WebKit.gyp:

added WEBKIT_IMPLEMENTATION == 1 for unit test code when in shared library
added URLTestHelpers to exclusion in shared library build, because it depends on webkit_support

  • WebKit.gypi:

added URLTestHelpers.h and .cpp to the build process

  • WebKitUnitTests.gyp:

added WEBKIT_IMPLEMENTATION == 1 for unit test code when not in shared library.
note that in shared library build, RunAllTests.cpp does not have WEBKIT_IMPLEMENTATION == 1.

  • public/WebDOMMessageEvent.h:

(WebKit::WebDOMMessageEvent::WebDOMMessageEvent):

  • tests/AssociatedURLLoaderTest.cpp:
  • tests/EventListenerTest.cpp:
  • tests/FrameTestHelpers.cpp:

(WebKit::FrameTestHelpers::loadFrame):

  • tests/FrameTestHelpers.h:
  • tests/ListenerLeakTest.cpp:

(WebKit::ListenerLeakTest::RunTest):

  • tests/PopupMenuTest.cpp:
  • tests/RunAllTests.cpp:
  • tests/URLTestHelpers.cpp: Added.

(URLTestHelpers):
(WebKit::URLTestHelpers::registerMockedURLFromBaseURL):
(WebKit::URLTestHelpers::registerMockedURLLoad):

  • tests/URLTestHelpers.h: Copied from Source/WebKit/chromium/public/WebDOMMessageEvent.h.

(WebKit):
(URLTestHelpers):
(WebKit::URLTestHelpers::toKURL):

  • tests/WebFrameTest.cpp:
  • tests/WebPageNewSerializerTest.cpp:
  • tests/WebPageSerializerTest.cpp:
  • tests/WebViewTest.cpp:
11:00 AM Changeset in webkit [122343] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

RenderView layer is marked as fixed position container in the scrolling tree if page scale != 1
https://bugs.webkit.org/show_bug.cgi?id=89216

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-07-11
Reviewed by Simon Fraser.

Render layers with CSS transforms should become containers for any fixed
positioned descendants. However, because this check is done with
RenderLayer::hasTransform(), we also end up marking the RenderLayer for the
RenderView as fixed position container if a non-identity page scale factor is
used. This is because page scale is applied as a transform for that layer.

This breaks fixed position layers, because they become fixed relative to the
RenderView layer instead of outer scroll clip layer.

The fix is to avoid marking any root layers as fixed position containers.

No new test because the scrolling tree isn't currently testable.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

10:50 AM Changeset in webkit [122342] by jchaffraix@webkit.org
  • 3 edits in trunk/Source/WebCore

REGRESSION (r116203): overflow sections don't have scrollbars
https://bugs.webkit.org/show_bug.cgi?id=90052

Reviewed by Simon Fraser.

This issue stems from RenderLayers with overlay scrollbars not being considered
self-painting.

After r120395 (follow-up of r116203), we ignore subtrees that have no self-painting layer for
painting. Normal scrollbars are painted by their renderer so they were properly painted. However
overlay scrollbars need to be painted by their RenderLayer as a separate phase (see bug 57057) so
they were not painted anymore. The fix is simple: make RenderLayer with overlay scrollbars
self-painting as they should have been in the first place.

Unfortunately no tests as I don't think we have a good way of testing overlay
scrollbars. Tested manually though on the super simple test case from the bug.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::shouldBeSelfPaintingLayer):
Overlay scrollbars make the layer self-painting.

(WebCore::RenderLayer::updateScrollbarsAfterLayout):
Added a call to updateSelfPaintingLayer.

(WebCore::RenderLayer::styleChanged):
Moved the call to updateSelfPaintingLayer after recomputing the scrollbars to ensure proper behavior.
Added a comment underlining the reason.

(WebCore::RenderLayer::updateSelfPaintingLayer):
Renamed as it is now called during layout too.

  • rendering/RenderLayer.h:

(RenderLayer): Updated after updateSelfPaintingLayer rename.

10:50 AM Changeset in webkit [122341] by wingo@igalia.com
  • 2 edits in trunk/Source/JavaScriptCore

jsc: Parse options before creating global data
https://bugs.webkit.org/show_bug.cgi?id=90975

Reviewed by Filip Pizlo.

This patch moves the options parsing in "jsc" before the creation
of the JSGlobalData, so that --useJIT=no has a chance to take
effect.

  • jsc.cpp:

(CommandLine::parseArguments): Refactor to be a class, and take
argc and argv as constructor arguments.
(jscmain): Move arg parsing before JSGlobalData creation.

10:50 AM Changeset in webkit [122340] by noam.rosenthal@nokia.com
  • 6 edits in trunk

[Qt] QRawWebView should notify when rendering is done, so that pixel results can be grabbed at the appropriate moment.
https://bugs.webkit.org/show_bug.cgi?id=90641

Reviewed by Jocelyn Turcotte.

Source/WebKit2:

Implement LayerTreeCoordinator::forceRepaint with logic equivalent to the one in
LayerTreeHostCA. If we flush the layers synchronously when forceRepaint is called,when
WKPageForceRepaint returns we are guaranteed to have an up-to-date image, as the visible
tiles are also synchronously updated.

  • UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:

(WebView::WebView):
(WebView::viewNeedsDisplay):
(WebView::frameLoaded):
(WebView):
(WebView::onRepaintDone):
(WebView::finishForceRepaint):
(WebView::finishFirstLayoutForFrame):
(tst_qrawwebview::doNoBackground1):
(tst_qrawwebview::doNoBackground2):
(tst_qrawwebview::doNoBackground3):
(tst_qrawwebview::run):

The test for QRawWebView has been updated to use the WebKit2 ForcePaint API prior to
generating the pixel results. This has exposed a timing bug in the test - setting the
transparentBackground property of a page has to be done before it's created. This has
been fixed in the test.

  • WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::forceRepaint):
(WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
(WebKit):

Tools:

  • MiniBrowser/qt/raw/View.h: Comment used old class name (WKView).

(View):

10:09 AM Changeset in webkit [122339] by allan.jensen@nokia.com
  • 3 edits
    2 adds in trunk

NodesFromRect doesn't work on SVG root elements.
https://bugs.webkit.org/show_bug.cgi?id=89990

Reviewed by Antonio Gomes.

Source/WebCore:

Adds support for rect-based hit-testing on the SVG root element.
This means that while rect-based hit-testing is still not supported
within SVG elements, that at least it works on SVG root elements as
it would on any other replaced element.

Test: fast/dom/nodesFromRect-svg.html

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::nodeAtPoint):

LayoutTests:

Test nodesFromRect on SVG root elements.

  • fast/dom/nodesFromRect-svg-expected.txt: Added.
  • fast/dom/nodesFromRect-svg.html: Added.
9:56 AM Changeset in webkit [122338] by commit-queue@webkit.org
  • 2 edits in trunk/Websites/bugs.webkit.org

Deleting content at the top of prettypatch emails destroys HTML formatting
https://bugs.webkit.org/show_bug.cgi?id=90700
<rdar://problem/7488232>

Patch by Alice Cheng <alice_cheng@apple.com> on 2012-07-11
Reviewed by David Kilzer.

  • PrettyPatch/PrettyPatch.rb:
9:50 AM Changeset in webkit [122337] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Android] sending an extra to the DRT apk so that DRT can be run in a seperate thread
https://bugs.webkit.org/show_bug.cgi?id=90831

Patch by Min Qin <qinmin@chromium.org> on 2012-07-11
Reviewed by Adam Barth.

On android, DRT needs to run in a background thread to avoid ANR.
However, the java tests are running on UI thread by default.
We need to send an intent extra to the apk so that it can run on a sub thread.

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

(ChromiumAndroidDriver._start_once):

9:46 AM Changeset in webkit [122336] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk2/Skipped: Skip a new crashing test.
  • platform/qt/Skipped: Typo fix.
8:14 AM Changeset in webkit [122335] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] REGRESSION(r107171): Fix --timeout option of Qt's DRT
https://bugs.webkit.org/show_bug.cgi?id=90966

Reviewed by Ryosuke Niwa.

  • DumpRenderTree/qt/main.cpp:

(main): Don't remove the argument, because takeOptionValue() did it before.

8:08 AM Changeset in webkit [122334] by Csaba Osztrogonác
  • 3 edits in trunk/Source/WebCore

[Qt] REGRESSION(r122250): It broke USE(3D_GRAPHICS)=1 and ENABLE(WEBGL)=0 builds
https://bugs.webkit.org/show_bug.cgi?id=90943

Patch by Joshua Netterfield <jnetterfield@rim.com> on 2012-07-11
Reviewed by Csaba Osztrogonác.

Uses proper guarding in Extensions3DOpenGLCommon and Extensions3DOpenGLES as per https://bugs.webkit.org/show_bug.cgi?id=90506.

No new tests, becasue there is no new functionality.

  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: Use proper guarding.
  • platform/graphics/opengl/Extensions3DOpenGLES.cpp: Use proper guarding.
8:05 AM Changeset in webkit [122333] by commit-queue@webkit.org
  • 4 edits in trunk

[Qt] Middle clicking a scrollbar causes text to be pasted.
https://bugs.webkit.org/show_bug.cgi?id=78444

Source/WebKit/qt:

Check if the event was already accepted before handling the clipboard.

Patch by Steffen Imhof <steffen.imhof@basyskom.com> on 2012-07-11
Reviewed by Simon Hausmann.

  • Api/qwebpage.cpp:

(QWebPagePrivate::mouseReleaseEvent):

LayoutTests:

Updated the scrollbars/scrollbar-middleclick-nopaste.html test to use an
<input> field as target for onpaste events. Using <body> did not work
(at least for Qt), because the onpaste events are not fired, even if
manually middle-clicking into the body. My guess would be that they are
not sent, because the body is non-editable. The changed test should
reflect the common use-case triggering the problem better.

Patch by Steffen Imhof <steffen.imhof@basyskom.com> on 2012-07-11
Reviewed by Simon Hausmann.

  • scrollbars/scrollbar-middleclick-nopaste.html:
7:50 AM Changeset in webkit [122332] by pfeldman@chromium.org
  • 10 edits
    10 deletes in trunk/Source

Web Inspector: migrate from background images to CSS for statusbar rendering.
https://bugs.webkit.org/show_bug.cgi?id=90902

Reviewed by Vsevolod Vlasov.

Source/WebCore:

This change removes statusbar* images and uses gradients and borders to re-create original inspector look.

  • WebCore.gypi:
  • inspector/front-end/Images/statusbarBackground.png: Removed.
  • inspector/front-end/Images/statusbarBottomBackground.png: Removed.
  • inspector/front-end/Images/statusbarButtons.png: Removed.
  • inspector/front-end/Images/statusbarMenuButton.png: Removed.
  • inspector/front-end/Images/statusbarMenuButtonSelected.png: Removed.
  • inspector/front-end/StatusBarButton.js:
  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.css:

(body.drawer-visible #main-status-bar):
(body.drawer-visible #main-status-bar::after):
(.status-bar-background):
(.status-bar > div):
(.glyph):
(button.status-bar-item):
(.status-bar button.status-bar-item:active):
(select.status-bar-item):
(select.status-bar-item, select.status-bar-item:hover):
(body.detached .alternate-status-bar-buttons-bar):
(.alternate-status-bar-buttons-bar):
(.alternate-status-bar-buttons-bar .status-bar-item):
(.alternate-status-bar-buttons-bar .status-bar-item.emulate-active):
(#drawer):
(body.drawer-visible #drawer-contents):
(#drawer-status-bar):

  • inspector/front-end/inspector.html:
  • inspector/front-end/scriptsPanel.css:

(button.status-bar-item.scripts-navigator-show-hide-button):
(button.status-bar-item.scripts-navigator-show-hide-button:active):
(button.status-bar-item.scripts-debugger-show-hide-button):
(button.status-bar-item.scripts-debugger-show-hide-button:active):

Source/WebKit/chromium:

  • WebKit.gypi:
  • src/js/Images/statusbarBackgroundChromium.png: Removed.
  • src/js/Images/statusbarBottomBackgroundChromium.png: Removed.
  • src/js/Images/statusbarButtonsChromium.png: Removed.
  • src/js/Images/statusbarMenuButtonChromium.png: Removed.
  • src/js/Images/statusbarMenuButtonSelectedChromium.png: Removed.
  • src/js/devTools.css:

(.status-bar-background):

7:35 AM Changeset in webkit [122331] by wjmaclean@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening. fast/forms/textarea/textarea-state-restore.html is flaky (timeouts frquently).
https://bugs.webkit.org/show_bug.cgi?id=90980

Marking this test as possible TIMOUT in test expectations.

  • platform/chromium/TestExpectations:
7:06 AM Changeset in webkit [122330] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip a failing test after r122327.
https://bugs.webkit.org/show_bug.cgi?id=90979.

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-07-11

  • platform/qt/Skipped:
6:48 AM Changeset in webkit [122329] by wjmaclean@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Mark inspector/extensions/extensions-events.html as TIMEOUT on non-debug builds.
https://bugs.webkit.org/show_bug.cgi?id=86439

This test has started timing out on non-debug builds as well, adding comment to existing bug.

  • platform/chromium/TestExpectations:
6:44 AM Changeset in webkit [122328] by jason.liu@torchmobile.com.cn
  • 2 edits in trunk/Source/WebCore

[BlackBerry] crash in CookieDatabaseBackingStore.
https://bugs.webkit.org/show_bug.cgi?id=90270

Reviewed by George Staikos.

There is one case for this crash.

  1. A browser crashes and locks cookies' database for a while.
  2. Open a new browser when the old one doesn't finish crashing.
  3. The new one writes the cookies' database and receives a SQLITE_BUSY error in CookieDatabaseBackingStore's invokeOpen. So this database isn't opened.
  4. invokeGetCookiesWithLimit returns 0.
  5. Crash happens when using a null pointer.

Add function setBusyTimeout(1000) and a guard for cookies' pointer.
setBusyTimeout will call sqlite3_busy_timeout.

When the SQLite database is accessed for reading it is locked for writing
until the reading access is finished. Another process cannot access the database
while it is locked. The timeout time sets a limit while this process tries to access
the locked database. If the database is unlocked within the timeout time it can be
accessed, otherwise an access fails.

No new tests. This crash is hard to reproduce, and it happens only on our platform.

  • platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:

(WebCore::CookieDatabaseBackingStore::getCookiesFromDatabase):

5:30 AM Changeset in webkit [122327] by vsevik@chromium.org
  • 18 edits in trunk

Web Inspector: Move revisions support to UISourceCode.
https://bugs.webkit.org/show_bug.cgi?id=90888

Reviewed by Pavel Feldman.

Source/WebCore:

Moved revisions support to UISourceCode.
Revision management code is moved unchanged where possible and should be refactored later.

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSStyleModelResourceBinding.prototype._innerStyleSheetChanged): revision is now added to uiSourceCode, not resource.

  • inspector/front-end/ExtensionServer.js:

(WebInspector.ExtensionServer.prototype._notifyUISourceCodeContentCommitted):
Extension server is now listening for Workspace.UISourceCodeContentCommitted event instead of ResourceTreeModel.ResourceContentCommitted.

  • inspector/front-end/Resource.js:
  • inspector/front-end/ResourceTreeModel.js: ResourceTreeModel.ResourceContentCommitted renamed to Workspace.UISourceCodeContentCommitted.
  • inspector/front-end/ResourceView.js:

(WebInspector.ResourceSourceFrame): ResourceSourceFrame is not update when revisions are added anymore as resource conenten is considered immutable now

  • inspector/front-end/RevisionHistoryView.js:

(WebInspector.RevisionHistoryView.populateRevisions):
(WebInspector.RevisionHistoryView):
(WebInspector.RevisionHistoryView.showHistory):
(WebInspector.RevisionHistoryView.prototype._createUISourceCodeItem):
(WebInspector.RevisionHistoryView.prototype._revisionAdded.get if):
(WebInspector.RevisionHistoryView.prototype._revisionAdded):
(WebInspector.RevisionHistoryView.prototype._revealUISourceCode.get if):
(WebInspector.RevisionHistoryView.prototype._revealUISourceCode):
(WebInspector.RevisionHistoryView.prototype._reset):

  • inspector/front-end/ScriptSnippetModel.js: Snippets are not loaded before ResourceTreeModel.mainFrame is available anymore.

(WebInspector.ScriptSnippetModel):
(WebInspector.ScriptSnippetModel.prototype._setScriptSnippetContent):

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode):
(WebInspector.UISourceCode.prototype.requestOriginalContent):
(WebInspector.UISourceCode.prototype._setContent):
(WebInspector.UISourceCode.prototype.addRevision):
(WebInspector.UISourceCode.prototype._restoreRevisionHistory):
(WebInspector.UISourceCode.prototype._clearRevisionHistory):
(WebInspector.UISourceCode.prototype.revertToOriginal):
(WebInspector.UISourceCode.prototype.revertAndClearHistory):
(WebInspector.UISourceCode.prototype.revertAndClearHistory.clearHistory):
(WebInspector.UISourceCode.prototype.commitWorkingCopy):
(WebInspector.UISourceCode.prototype.canonicalMimeType):
(WebInspector.Revision):
(WebInspector.Revision._revisionHistoryRegistry):
(WebInspector.Revision._ensureStaleRevisionsFileteredOut.persist):
(WebInspector.Revision._ensureStaleRevisionsFileteredOut):
(WebInspector.Revision.prototype.get uiSourceCode):
(WebInspector.Revision.prototype.get timestamp):
(WebInspector.Revision.prototype.get content):
(WebInspector.Revision.prototype.revertToThis):
(WebInspector.Revision.prototype.contentURL):
(WebInspector.Revision.prototype.contentType):
(WebInspector.Revision.prototype.requestContent):
(WebInspector.Revision.prototype.searchInContent):
(WebInspector.Revision.prototype._persist):

  • inspector/front-end/UserAgentSupport.js: Drive-by closure compilation fix.
  • inspector/front-end/Workspace.js:
  • inspector/front-end/inspector.js: ScriptSnippetModel is now created after ResourceTreeModel.

LayoutTests:

  • http/tests/inspector/network/network-request-revision-content-expected.txt:
  • http/tests/inspector/network/network-request-revision-content.html:
  • inspector/debugger/script-snippet-model.html:
  • inspector/styles/styles-add-new-rule.html:
  • inspector/styles/styles-history.html:
4:26 AM Changeset in webkit [122326] by morrita@google.com
  • 13 edits in trunk/Source

WebCoreSupport needs objects each of which follows major WebCore objects
https://bugs.webkit.org/show_bug.cgi?id=88499

Reviewed by Alexey Proskuryakov.

Source/WebCore:

This change

  • Makes Internals rough lifetime to follow Document. Note that Internals can survive longer than Document in same case. Internals::m_document is cleared when the document destruction is notified.
  • Makes InternalSettings rough lifetime to follow the Page. This is done by making InternalSettings a supplement of the page. Now InternalSettings object is created per Page instead of per Frame.

Per-test setting clearance is done by newly introduced InternalSettings::Backup,
which recovers the modified settings and refreshes it for each time a test starts.

  • WebCore.exp.in:
  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup):
(WebCore):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::from):
(WebCore::InternalSettings::~InternalSettings):
(WebCore::InternalSettings::InternalSettings):
(WebCore::InternalSettings::reset):
(WebCore::InternalSettings::settings):
(WebCore::InternalSettings::setFixedElementsLayoutRelativeToFrame):
(WebCore::InternalSettings::setFixedPositionCreatesStackingContext):
(WebCore::InternalSettings::allowRoundingHacks):
(WebCore::InternalSettings::userPreferredLanguages):
(WebCore::InternalSettings::setUserPreferredLanguages):
(WebCore::InternalSettings::setShouldDisplayTrackKind):
(WebCore::InternalSettings::shouldDisplayTrackKind):
(WebCore::InternalSettings::setPagination):

  • testing/InternalSettings.h:

(Backup):
(InternalSettings):
(WebCore::InternalSettings::page):

  • testing/InternalSettings.idl:
  • testing/Internals.cpp:

(WebCore::Internals::Internals):
(WebCore):
(WebCore::Internals::contextDocument):
(WebCore::Internals::frame):
(WebCore::Internals::settings):
(WebCore::Internals::setPagination): Replaced as an alias.
(WebCore::Internals::userPreferredLanguages): Replaced as an alias.
(WebCore::Internals::setUserPreferredLanguages): Replaced as an alias.
(WebCore::Internals::setShouldDisplayTrackKind): Replaced as an alias.
(WebCore::Internals::shouldDisplayTrackKind): Replaced as an alias.
(WebCore::Internals::emitInspectorDidBeginFrame):
(WebCore::Internals::emitInspectorDidCancelFrame):
(WebCore::Internals::allowRoundingHacks): Replaced as an alias.

  • testing/Internals.h:

(WebCore):
(Internals):

  • testing/js/WebCoreTestSupport.cpp:

(WebCoreTestSupport::injectInternalsObject):
(WebCoreTestSupport::resetInternalsObject):

  • testing/v8/WebCoreTestSupport.cpp:

(WebCoreTestSupport::injectInternalsObject):
(WebCoreTestSupport::resetInternalsObject):

Source/WebKit2:

Added exporting symbols.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
3:40 AM Changeset in webkit [122325] by abecsi@webkit.org
  • 3 edits in trunk/Source/WebKit2

Unreviewed, rolling out r122318.
http://trac.webkit.org/changeset/122318
https://bugs.webkit.org/show_bug.cgi?id=90961

It made 11 fast/events/touch fail (Requested by bbandix on
#webkit).

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

  • UIProcess/API/qt/qquickwebview.cpp:
  • UIProcess/API/qt/qquickwebview_p.h:
3:35 AM Changeset in webkit [122324] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

Mark fast/js/dfg-poison-fuzz.html as slow, because its runtime is 48 secs on 32 bit in debug mode.

  • platform/qt/TestExpectations:
3:08 AM Changeset in webkit [122323] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][ARM] Unreviewed gardening, mark slow tests.

  • platform/qt-arm/TestExpectations:
2:54 AM Changeset in webkit [122322] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][Wk2] WebErrorsEfl.cpp needs to return non-empty errors
https://bugs.webkit.org/show_bug.cgi?id=90688

Patch by Keunsoon Lee <keunsoon.lee@samsung.com> on 2012-07-11
Reviewed by Hajime Morita.

Return meaningful error for each case.

  • WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:

(WebKit::cancelledError): create ResourceError for "request canceled".
(WebKit::blockedError): create ResourceError for "request blocked".
(WebKit::cannotShowURLError): create ResourceError for "cannot show url".
(WebKit::interruptedForPolicyChangeError): create ResourceError for "Frame load interrupted by policy change".
(WebKit::cannotShowMIMETypeError): create ResourceError for "Cannot show mimetype".
(WebKit::fileDoesNotExistError): create ResourceError for "File does not exist".
(WebKit::pluginWillHandleLoadError): create ResourceError for "Plugin will handle load".

2:49 AM Changeset in webkit [122321] by abecsi@webkit.org
  • 4 edits
    2 adds in trunk/Source/WebKit2

[Qt][WK2] Fix wheel scrolling for simple pages
https://bugs.webkit.org/show_bug.cgi?id=90793

Reviewed by Kenneth Rohde Christiansen.

Call WebPage::setFixedLayoutSize in setResizesToContentsUsingLayoutSize
instead of setting the view size manually and scheduling a relayout.
Since setFixedLayoutSize forces a relayout it also updates the scrollbars
after the visible rect is available.
This fixes scrolling with wheel events for a QML WebView loading a simple
local page which previously ended up in a state where scrolling was disabled
because the scrollbar update happened before the correct visible rect size was
available.

Add a QML test and infrastructure to QWebKitTest to cover this case.

  • UIProcess/API/qt/qwebkittest.cpp:

(QWebKitTest::wheelEvent):

  • UIProcess/API/qt/qwebkittest_p.h:
  • UIProcess/API/qt/tests/qmltests/WebView/tst_wheelEventHandling.qml: Added.
  • UIProcess/API/qt/tests/qmltests/common/test4.html: Added.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::setResizesToContentsUsingLayoutSize):

2:44 AM Changeset in webkit [122320] by yosin@chromium.org
  • 2 edits in trunk/Source/WebCore

[Mac] Expose time format related functions
https://bugs.webkit.org/show_bug.cgi?id=90956

Reviewed by Kent Tamura.

This patch introduces localizedTimeFormatText, localizedShortTimeFormatText
and timeAMPMLabels for Mac within feature flag ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

See also:

ICU version: https://bugs.webkit.org/show_bug.cgi?id=89965
Win version: https://bugs.webkit.org/show_bug.cgi?id=90236

No new tests. This patch doesn't change behavior.

  • platform/text/mac/LocalizedDateMac.cpp:

(WebCore::localizedTimeFormatText): Added.
(WebCore::localizedShortTimeFormatText): Added.
(WebCore::timeAMPMLabels): Added.

2:43 AM Changeset in webkit [122319] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][ARM] Unreviewed gardening, skip more crashing tests.

  • platform/qt-arm/TestExpectations:
2:40 AM Changeset in webkit [122318] by abecsi@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt][WK2] ASSERT: "!m_viewportItem->isMoving()" in QtViewportHandler::flickMoveEnded()
https://bugs.webkit.org/show_bug.cgi?id=90875

Reviewed by Kenneth Rohde Christiansen.

Since MultiPointTouchArea and PinchArea use the childMouseEventFilter
method to filter touch events too, and because Flickable filters child
mouse events the canvas calls this function before propagating the touch
event to the WebView. Since Flickable does not accept touch events the
canvas tries to propagate a synthesized mouse event through the base
class childMouseEventFilter function which is accepted by Flickable and
interferes with the input events we send to Flicakble hence messes up
the internal state of the WebView.
This patch reimplements the virtual childMouseEventFilter method so that all
the mouse and touch events can be processed by WebKit before they arrive to
Flickable.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebView::childMouseEventFilter):

  • UIProcess/API/qt/qquickwebview_p.h:
2:28 AM Changeset in webkit [122317] by allan.jensen@nokia.com
  • 2 edits in trunk/Tools

First commit, moving myself to commiter.

Unreviewed

  • Scripts/webkitpy/common/config/committers.py:
2:27 AM Changeset in webkit [122316] by allan.jensen@nokia.com
  • 1 edit in trunk/Source/WebCore/ChangeLog

[Chromium] Adding HarfBuzz-ng for Linux
https://bugs.webkit.org/show_bug.cgi?id=90362

Reviewed by Tony Chang.

Source/WebCore:

This patch adds harfbuzz-ng support for Chromium Linux port as a part of
transition from old harfbuzz. HarfBuzzFaceSkia.cpp implements harfbuzz-ng
callbacks by using Skia APIs. For now, the feature is enabled only when
WTF_USE_HARFBUZZ_NG is defined.

No new tests. No change in behavior now.

  • WebCore.gyp/WebCore.gyp: Added use_harfbuzz_ng variable and related files.
  • WebCore.gypi: Added HarfBuzzFaceSkia.cpp
  • platform/graphics/harfbuzz/FontHarfBuzz.cpp: Added USE(HARFBUZZ_NG).

(WebCore::Font::drawComplexText):
(WebCore::Font::floatWidthForComplexText):
(WebCore::Font::offsetForPositionForComplexText):
(WebCore::Font::selectionRectForComplexText):

  • platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Ditto.

(WebCore):
(WebCore::FontPlatformData::harfbuzzFace):

  • platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Ditto.

(FontPlatformData):

  • platform/graphics/harfbuzz/ng/HarfBuzzFaceSkia.cpp: Added.

(WebCore):
(WebCore::SkiaScalarToHarfbuzzPosition):
(WebCore::SkiaGetGlyphWidthAndExtents):
(WebCore::harfbuzzGetGlyph):
(WebCore::harfbuzzGetGlyphHorizontalAdvance):
(WebCore::harfbuzzGetGlyphHorizontalOrigin):
(WebCore::harfbuzzGetGlyphExtents):
(WebCore::harfbuzzSkiaGetFontFuncs):
(WebCore::harfbuzzSkiaGetTable):
(WebCore::destroyPaint):
(WebCore::HarfBuzzFace::createFace):
(WebCore::HarfBuzzFace::createFont):
(WebCore::HarfBuzzShaper::createGlyphBufferAdvance):

  • platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added USE(HARFBUZZ_NG).

(WebCore::substituteWithVerticalGlyphs):

Source/WebKit/chromium:

  • features.gypi: Added use_harfbuzz_ng variable. If the value is set, USE(HARFBUZZ_NG) is defined.
2:25 AM Changeset in webkit [122315] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r122290.

Patch by Balazs Ankes <bank@inf.u-szeged.hu> on 2012-07-11

  • platform/qt/Skipped: Skip fast/forms/input-in-table-cell-no-value.html because ENABLE(INPUT_TYPE_DATE) is disabled
2:06 AM Changeset in webkit [122314] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Move tests that require ENABLE_INPUT_TYPE_* to TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=90948

Unreviewed EFL gardening. Move tests that require
ENABLE_INPUT_TYPE_* to be enabled from Skipped list to
TestExpectations.

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-11

  • platform/efl/Skipped:
  • platform/efl/TestExpectations:
2:04 AM Changeset in webkit [122313] by kinuko@chromium.org
  • 6 edits
    2 moves
    6 adds
    6 deletes in trunk

Web Inspector: Clean up FileSystem related code
https://bugs.webkit.org/show_bug.cgi?id=90592

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

Clean up FileSystem related code in Inspector as follows:

  • Clean up layout tests and add test case for error case,
  • Fix error handling on request,
  • s/GetFileSystemRootTask/FileSystemRootRequest/g
  • s/ReadDirectoryTask/DirectoryContentRequest/g
  • s/ReadFileTask/FileContentRequest/g

Source/WebCore:

Tests: http/tests/inspector/filesystem/request-directory-content.html

http/tests/inspector/filesystem/request-file-content.html
http/tests/inspector/filesystem/request-filesystem-root.html
http/tests/inspector/filesystem/request-metadata.html

  • inspector/InspectorFileSystemAgent.cpp:

(WebCore):
(WebCore::InspectorFileSystemAgent::requestFileSystemRoot): Add early error handling.
(WebCore::InspectorFileSystemAgent::requestDirectoryContent): Add early error handling.
(WebCore::InspectorFileSystemAgent::requestMetadata): Add early error handling.
(WebCore::InspectorFileSystemAgent::requestFileContent): Add early error handling.

  • inspector/InspectorFileSystemAgent.h: Remove unused forward declaration and unused header.

(WebCore):
(InspectorFileSystemAgent):

  • inspector/front-end/FileSystemModel.js:

(WebInspector.FileSystemRequestManager.prototype.requestFileSystemRoot.requestAccepted):
(WebInspector.FileSystemRequestManager.prototype.requestFileSystemRoot): Add early error handling.
(WebInspector.FileSystemRequestManager.prototype.requestDirectoryContent.requestAccepted):
(WebInspector.FileSystemRequestManager.prototype.requestDirectoryContent): Add early error handling.
(WebInspector.FileSystemRequestManager.prototype.requestMetadata.requestAccepted):
(WebInspector.FileSystemRequestManager.prototype.requestMetadata): Add early error handling.
(WebInspector.FileSystemRequestManager.prototype.requestFileContent.requestAccepted):
(WebInspector.FileSystemRequestManager.prototype.requestFileContent): Add early error handling.

LayoutTests:

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

(initialize_FileSystemTest.InspectorTest.dumpFileSystemRootRequestResult):
(initialize_FileSystemTest.InspectorTest.dumpDirectoryContentRequestResult):
(initialize_FileSystemTest.InspectorTest.dumpMetadataRequestResult):
(initialize_FileSystemTest.InspectorTest.dumpFileContentRequestResult):
(initialize_FileSystemTest):

  • http/tests/inspector/filesystem/request-directory-content-expected.txt: Renamed from LayoutTests/http/tests/inspector/filesystem/read-directory-expected.txt.
  • http/tests/inspector/filesystem/request-directory-content.html: Renamed from LayoutTests/http/tests/inspector/filesystem/read-directory.html. Changed test steps to unnamed function array. Add failcase test.
  • http/tests/inspector/filesystem/request-file-content-expected.txt: Renamed from LayoutTests/http/tests/inspector/filesystem/read-file-expected.txt.
  • http/tests/inspector/filesystem/request-file-content.html: Renamed from LayoutTests/http/tests/inspector/filesystem/read-file.html. Changed test steps to unnamed function array. Add failcase test.
  • http/tests/inspector/filesystem/request-filesystem-root-expected.txt: Renamed from LayoutTests/http/tests/inspector/filesystem/get-filesystem-expected.txt.
  • http/tests/inspector/filesystem/request-filesystem-root.html: Renamed from LayoutTests/http/tests/inspector/filesystem/get-filesystem-root.html. Changed test steps to unnamed function array. Add failcase test.
  • http/tests/inspector/filesystem/request-metadata-expected.txt: Renamed from LayoutTests/http/tests/inspector/filesystem/get-metadata-expected.txt.
  • http/tests/inspector/filesystem/request-metadata.html: Renamed from LayoutTests/http/tests/inspector/filesystem/get-metadata.html. Changed test steps to unnamed function array. Add failcase test.
1:56 AM Changeset in webkit [122312] by caseq@chromium.org
  • 11 edits
    2 adds in trunk

Web Inspector: Forward message loop instrumentation data to frontend.
https://bugs.webkit.org/show_bug.cgi?id=89584

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-07-09
Reviewed by Yury Semikhatsky.

Transmit collected message loop tasks to inspector frontend.
Now "Program" should be a top-level event on browsers that
support message loop instrumentation.
Frontend was changed so that user will not see any changes.

Source/WebCore:

  • inspector/InspectorTimelineAgent.cpp:

(TimelineRecordType):
Added new event type - "Program"
(WebCore::InspectorTimelineAgent::willProcessTask):
Begin "Program" event.
(WebCore::InspectorTimelineAgent::didProcessTask):
Finish "Program" event.
(WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
Do not add counters to "Program" events.
(WebCore):
(WebCore::InspectorTimelineAgent::innerSetHeapSizeStatistic):
Renamed from "setHeapSizeStatistic"

  • inspector/InspectorTimelineAgent.h:

(InspectorTimelineAgent):

  • inspector/front-end/MemoryStatistics.js:

(WebInspector.MemoryStatistics.prototype._onRecordAdded):
Unwraps "Program" events.
(WebInspector.MemoryStatistics.prototype._innerRecordAdded):
Renamed from "_onRecordAdded"

  • inspector/front-end/TimelineFrameController.js:

(WebInspector.TimelineFrameController.prototype._addRecord):
Unwraps "Program" events.
(WebInspector.TimelineFrameController.prototype._innerAddRecord):
Renamed from "_addRecord"

  • inspector/front-end/TimelineModel.js:
  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineCategoryStrips.prototype.update.appendRecord):
Filter out "Program" category.
(WebInspector.TimelineCategoryStrips.prototype.update):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._createStatusbarButtons):
Filter out "Program" category.
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
Unwraps "Program" events.

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.categories):
Added "Program" category.
(WebInspector.TimelinePresentationModel.recordStyle):
Ditto.
(WebInspector.TimelinePresentationModel.prototype.addRecord):
Unwraps "Program" events.
(WebInspector.TimelinePresentationModel.prototype._addRecord):
Renamed from "addRecord"

LayoutTests:

  • inspector/timeline/timeline-enum-stability-expected.txt:
1:34 AM Changeset in webkit [122311] by Csaba Osztrogonác
  • 4 edits
    3 adds in trunk/Tools

webkit-patch land should automatically add svn:mime-type for .png files
https://bugs.webkit.org/show_bug.cgi?id=75825

Patch by Balazs Ankes <bank@inf.u-szeged.hu> on 2012-07-11
Reviewed by Dirk Pranke.

Refactor the png.py to avoid code duplication.

  • Scripts/webkitpy/common/checksvnconfigfile.py: Added.

(check):
(config_file_path):
(errorstr_autoprop):
(errorstr_png):

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

(PNGChecker.check):

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

(Land):

  • Scripts/webkitpy/tool/steps/init.py:
  • Scripts/webkitpy/tool/steps/addsvnmimetypeforpng.py: Added.

(AddSvnMimetypeForPng):
(AddSvnMimetypeForPng.init):
(AddSvnMimetypeForPng.run):
(AddSvnMimetypeForPng._check_pngs):

  • Scripts/webkitpy/tool/steps/addsvnmimetypeforpng_unittest.py: Added.

(MockSCMDetector):
(MockSCMDetector.init):
(MockSCMDetector.display_name):
(AddSvnMimetypeForPngTest):
(AddSvnMimetypeForPngTest.test_run):

12:46 AM Changeset in webkit [122310] by bashi@chromium.org
  • 9 edits
    1 add in trunk/Source

[Chromium] Adding HarfBuzz-ng for Linux
https://bugs.webkit.org/show_bug.cgi?id=90362

Reviewed by Tony Chang.

Source/WebCore:

This patch adds harfbuzz-ng support for Chromium Linux port as a part of
transition from old harfbuzz. HarfBuzzFaceSkia.cpp implements harfbuzz-ng
callbacks by using Skia APIs. For now, the feature is enabled only when
WTF_USE_HARFBUZZ_NG is defined.

No new tests. No change in behavior now.

  • WebCore.gyp/WebCore.gyp: Added use_harfbuzz_ng variable and related files.
  • WebCore.gypi: Added HarfBuzzFaceSkia.cpp
  • platform/graphics/harfbuzz/FontHarfBuzz.cpp: Added USE(HARFBUZZ_NG).

(WebCore::Font::drawComplexText):
(WebCore::Font::floatWidthForComplexText):
(WebCore::Font::offsetForPositionForComplexText):
(WebCore::Font::selectionRectForComplexText):

  • platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Ditto.

(WebCore):
(WebCore::FontPlatformData::harfbuzzFace):

  • platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Ditto.

(FontPlatformData):

  • platform/graphics/harfbuzz/ng/HarfBuzzFaceSkia.cpp: Added.

(WebCore):
(WebCore::SkiaScalarToHarfbuzzPosition):
(WebCore::SkiaGetGlyphWidthAndExtents):
(WebCore::harfbuzzGetGlyph):
(WebCore::harfbuzzGetGlyphHorizontalAdvance):
(WebCore::harfbuzzGetGlyphHorizontalOrigin):
(WebCore::harfbuzzGetGlyphExtents):
(WebCore::harfbuzzSkiaGetFontFuncs):
(WebCore::harfbuzzSkiaGetTable):
(WebCore::destroyPaint):
(WebCore::HarfBuzzFace::createFace):
(WebCore::HarfBuzzFace::createFont):
(WebCore::HarfBuzzShaper::createGlyphBufferAdvance):

  • platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added USE(HARFBUZZ_NG).

(WebCore::substituteWithVerticalGlyphs):

Source/WebKit/chromium:

  • features.gypi: Added use_harfbuzz_ng variable. If the value is set, USE(HARFBUZZ_NG) is defined.
12:42 AM Changeset in webkit [122309] by hayato@chromium.org
  • 2 edits in trunk/Tools

Unreviewed gardening.
One more fix for r122292.

  • TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
12:42 AM Changeset in webkit [122308] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening, adding an image expectation for the
fast/forms/input-in-table-cell-no-value.html reftest, failing
after it was introduced in r122290 due to <input type='date'>
being used. The ENABLE_INPUT_TYPE_DATE feature is not enabled
on the Gtk port.

  • platform/gtk/TestExpectations:
12:27 AM Changeset in webkit [122307] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r122301.
http://trac.webkit.org/changeset/122301
https://bugs.webkit.org/show_bug.cgi?id=90947

Android builder started to fail (Requested by hayato on
#webkit).

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

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
12:22 AM Changeset in webkit [122306] by kbr@google.com
  • 4 edits
    1 delete in trunk

compositing/webgl/webgl-nonpremultiplied-blend.html is flaky on Lion
https://bugs.webkit.org/show_bug.cgi?id=82412

Reviewed by Adrienne Walker.

Source/WebCore:

When compositing premultipliedAlpha=false WebGL canvases, use a separate
blend function for the alpha channel to avoid writing alpha < 1. This
makes the behavior more consistent with all other compositing results
and avoids situations where the alpha channel is preserved on some
platforms and discarded on others.

Covered by existing tests.

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawTextureQuad):

Use separate alpha blend function when compositing premultipliedAlpha=false WebGL canvases.

LayoutTests:

Removed Chromium Mac-specific pixel results and failure expectations.

  • platform/chromium-mac/compositing/webgl/webgl-nonpremultiplied-blend-expected.png: Removed.
  • platform/chromium/TestExpectations:

Removed expectations of failure.

12:06 AM Changeset in webkit [122305] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

gc() doesn't exist in svg/animations/dynamic-modify-attributename-crash2.svg
https://bugs.webkit.org/show_bug.cgi?id=90945

Reviewed by Abhishek Arya.

  • svg/animations/dynamic-modify-attributename-crash2.svg: Include fast/js/resources/js-test-pre.js to have gc().
12:02 AM Changeset in webkit [122304] by hayato@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed gardening.

Android builder started to fail after r122292.
My best guess is that '--ant-compile' does not take an argument.

  • WebKitUnitTests.gyp:

Jul 10, 2012:

11:52 PM Changeset in webkit [122303] by yosin@chromium.org
  • 6 edits in trunk/Source

[Chromium-Windows] Implement functions for localized time format information
https://bugs.webkit.org/show_bug.cgi?id=90236

Reviewed by Kent Tamura.

Source/WebCore:

This patch introduces following localized time format related
functions:

  • localizedTimeFormatText
  • localizeShortTimeFormatText()
  • timeAMPMLabels

for Windows in feature flag: ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

See also:

ICU version: https://bugs.webkit.org/show_bug.cgi?id=89965
Mac version: https://bugs.webkit.org/show_bug.cgi?id=90237

Tests: WebKit/chromium/tests/LocalWinTest.cpp

  • platform/text/LocaleWin.cpp:

(WebCore::mapCharacterToDateTimeFieldType): Added.
(WebCore::convertWindowsTimeFormatToLDML): Added.
(WebCore::LocaleWin::timeFormatText): Added.
(WebCore::LocaleWin::shortTimeFormatText): Added.
(WebCore::LocaleWin::timeAMPMLabels): Added.

  • platform/text/LocaleWin.h:

(LocaleWin): Added time format related functions and variables.

  • platform/text/LocalizedDateWin.cpp:

(WebCore::localizedTimeFormatText): Added.
(WebCore::localizedShortTimeFormatText): Added.
(WebCore::timeAMPMLabels): Added.

Source/WebKit/chromium:

This patch introduces test cases for date and time format related
functions in LocaleWin.

  • tests/LocaleWinTest.cpp:

(LocaleWinTest):
(LocaleWinTest::dateComponents): Added.
(LocaleWinTest::msForDate): Moved inside class LocaleWinTest.
(LocaleWinTest::formatDate): Added.
(LocaleWinTest::parseDate): Added.
(LocaleWinTest::dateFormatText): Added.
(LocaleWinTest::firstDayOfWeek): Added.
(LocaleWinTest::monthLabel): Added.
(LocaleWinTest::weekDayShortLabel): Added.
(LocaleWinTest::timeFormatText): Added.
(LocaleWinTest::shortTimeFormatText): Added.
(LocaleWinTest::timeAMPMLabel): Added.
(TEST_F):

11:23 PM Changeset in webkit [122302] by commit-queue@webkit.org
  • 3 edits
    8 adds in trunk

Style not updated for element with display:none becoming first/last-child
https://bugs.webkit.org/show_bug.cgi?id=90356

Patch by Douglas Stockwell <dstockwell@chromium.org> on 2012-07-10
Reviewed by Kent Tamura.

Source/WebCore:

Always trigger style recalc when an element without a renderer becomes the first/last-child.

Tests: fast/css/first-child-display-change.html

fast/css/last-child-display-change.html

  • dom/Element.cpp:

(WebCore::checkForSiblingStyleChanges):

LayoutTests:

  • fast/css/first-child-display-change-expected.txt: Added.
  • fast/css/first-child-display-change-inverse-expected.txt: Added.
  • fast/css/first-child-display-change-inverse.html: Added.
  • fast/css/first-child-display-change.html: Added.
  • fast/css/last-child-display-change-expected.txt: Added.
  • fast/css/last-child-display-change-inverse-expected.txt: Added.
  • fast/css/last-child-display-change-inverse.html: Added.
  • fast/css/last-child-display-change.html: Added.
11:19 PM Changeset in webkit [122301] by abarth@webkit.org
  • 2 edits in trunk/Tools

[Chromium] Merge final nits to DumpRenderTree.gyp for Android
https://bugs.webkit.org/show_bug.cgi?id=90920

Reviewed by Tony Chang.

This patch contains the last few small changes to DumpRenderTree.gyp
from the chromium-android branch. After this change, this file will be
fully merged.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
11:18 PM Changeset in webkit [122300] by hayato@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Remove 'true' from testRunner.dumpAsText(true).
NRWT complained that an '-expected.png' file was MISSING.

  • animations/animation-shorthand-name-order.html:
11:10 PM Changeset in webkit [122299] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk/Source/WebKit2

[WK2][EFL] Add Battery Status Provider
https://bugs.webkit.org/show_bug.cgi?id=90543

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-10
Reviewed by Kenneth Rohde Christiansen.

Define a battery status provider for WebKit2 EFL which
relies on WebCore::BatteryProviderEfl.

  • CMakeLists.txt: Add WebCore/Modules/battery to include

paths.

  • PlatformEfl.cmake: Add BatteryProvider class to CMake.
  • UIProcess/API/efl/BatteryProvider.cpp: Added.

(toBatteryProvider):
(startUpdatingCallback):
(stopUpdatingCallback):
(BatteryProvider::~BatteryProvider):
(BatteryProvider::create):
(BatteryProvider::BatteryProvider):
(BatteryProvider::startUpdating):
(BatteryProvider::stopUpdating):
(BatteryProvider::didChangeBatteryStatus):

  • UIProcess/API/efl/BatteryProvider.h: Added.

(BatteryProvider):

  • UIProcess/API/efl/ewk_context.cpp:

(_Ewk_Context): Add BatteryProvider to Ewk_Context.
(createDefaultEwkContext):
(ewk_context_default_get):

10:43 PM Changeset in webkit [122298] by shinyak@chromium.org
  • 14 edits in trunk/Source/WebCore

ShadowRoot should know its type in debug build.
https://bugs.webkit.org/show_bug.cgi?id=90933

Reviewed by Hajime Morita.

For assertion, ShadowRoot should know its type is UserAgentShadowRoot or AuthorShadowRoot.

This patch also renames ShadowRootCreationPurpose to ShadowRootType, since it is suitable
name for ShadowRoot to have.

No new tests, since it is used only for assertion.

  • dom/Element.cpp:

(WebCore::Element::ensureShadowRoot):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::create):

  • dom/ShadowRoot.h:

(ShadowRoot):
(WebCore::ShadowRoot::type):

  • html/HTMLDetailsElement.cpp:

(WebCore::HTMLDetailsElement::createShadowSubtree):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::createShadowSubtree):

  • html/HTMLKeygenElement.cpp:

(WebCore::HTMLKeygenElement::HTMLKeygenElement):

  • html/HTMLMeterElement.cpp:

(WebCore::HTMLMeterElement::createShadowSubtree):

  • html/HTMLProgressElement.cpp:

(WebCore::HTMLProgressElement::createShadowSubtree):

  • html/HTMLSummaryElement.cpp:

(WebCore::HTMLSummaryElement::createShadowSubtree):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::createShadowSubtree):

  • html/InputType.cpp:

(WebCore::InputType::destroyShadowSubtree): Asserts that ShadowRoot type is UserAgentShadowRoot.

  • html/shadow/TextFieldDecorationElement.cpp:

(WebCore::getDecorationRootAndDecoratedRoot):

  • svg/SVGTRefElement.cpp:

(WebCore::SVGTRefElement::createShadowSubtree):

10:40 PM Changeset in webkit [122297] by hayato@chromium.org
  • 1 edit
    1 move in trunk/LayoutTests

Unreviewed gardening.

  • fast/css/deprecated-flexbox-auto-min-size-expected.txt: Renamed from LayoutTests/platform/chromium/fast/css/deprecated-flexbox-auto-min-size-expected.txt.
10:14 PM Changeset in webkit [122296] by hayato@chromium.org
  • 1 edit
    1 move in trunk/LayoutTests

12012-07-10 Hayato Ito <hayato@chromium.org>

Unreviewed gardening.

  • platform/chromium/fast/css/deprecated-flexbox-auto-min-size-expected.txt: Renamed from LayoutTests/platform/chromium-linux/fast/css/deprecated-flexbox-auto-min-size-expected.txt.
9:45 PM Changeset in webkit [122295] by staikos@webkit.org
  • 2 edits in trunk/Source/WebCore

Add missing binding type String for IndexedDB.
https://bugs.webkit.org/show_bug.cgi?id=90351

Reviewed by Nikolas Zimmermann.

No new tests because it's already covered by IDB tests.

  • bindings/js/JSIDBAnyCustom.cpp:

(WebCore::toJS):

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

[chromium] Make full texture updates explicit
https://bugs.webkit.org/show_bug.cgi?id=90507

Patch by Brian Anderson <brianderson@chromium.org> on 2012-07-10
Reviewed by Adrienne Walker.

Covered by existing tests.

  • platform/graphics/chromium/ScrollbarLayerChromium.cpp:

(WebCore::ScrollbarLayerChromium::updatePart):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::updateTiles):

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

(WebCore::CCTextureUpdater::appendFullUpdate):
(WebCore::CCTextureUpdater::hasMoreUpdates):
(WebCore::CCTextureUpdater::update):
(WebCore::CCTextureUpdater::clear):

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

(CCTextureUpdater):

9:34 PM Changeset in webkit [122293] by shinyak@chromium.org
  • 3 edits
    2 adds in trunk

Crash in nextLinePosition() due to accessing a removed root line box.
https://bugs.webkit.org/show_bug.cgi?id=90484

Reviewed by Abhishek Arya.

Source/WebCore:

When <object> element is reattached, the 'content' style is compared to the old style.
If it is not the same, a flag to recalc style is enabled. Because of this, the recalc style flag
is not cleared in updateLayoutIgnorePendingStyleSheets() in nextLinePosition(), and it causes
the second layout in isEditablePosition(p). Then 'RootInlineBox root' is invalidated, but
it's used after that.

When the content of the same <object> elements are compared, they should be the same.
However, operator== for ContentData is not implemented correctly (it compares a pointer instead of
content). So operator== does not hold for the content of the same <object> elements.

Test: editing/execCommand/crash-extend-selection-forward.html

  • rendering/style/ContentData.cpp:

(WebCore::operator==): Compares the instance of data instead of pointer.

LayoutTests:

This testcase should not be triggered in ASAN.

  • editing/execCommand/crash-extend-selection-forward-expected.txt: Added.
  • editing/execCommand/crash-extend-selection-forward.html: Added.
9:32 PM Changeset in webkit [122292] by abarth@webkit.org
  • 4 edits in trunk

[Chromium-Android] Add apk test targets for webkit_unit_tests and TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=90918

Reviewed by Tony Chang.

The rules are similar to what we have added for DumpRenderTree apk.
All references to gtest_target_type can be removed once we enable APK
tests on the all bots.

Source/WebKit/chromium:

  • WebKitUnitTests.gyp:

Tools:

  • TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
9:24 PM Changeset in webkit [122291] by jsbell@chromium.org
  • 4 edits in trunk/Source/WebCore

IndexedDB: Ensure transaction abort events are deterministic in multiprocess ports
https://bugs.webkit.org/show_bug.cgi?id=90412

Reviewed by Tony Chang.

In multi-process ports (e.g. Chromium), transaction aborts triggered on the front-end could
be initiated while a "success" event was in-flight from the back end. This would lead to
apparently flaky behavior when requests would sometimes report success and sometimes report
an error. Address this by having front-end triggered aborts do the abort steps immediately,
then send the async abort request to the back end.

No new tests - behavior in single process ports (and DRT) covered by existing
tests. Will enable currently disabled Chromium tests to be enabled (crbug.com/83226).

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::IDBRequest): Initialize a new m_requestAborted flag, used to prevent
dispatching if an in-flight request comes in after the abort.
(WebCore::IDBRequest::abort): Set flag to prevent double dispatching.
(WebCore::IDBRequest::onError): Handle aborted-then-received-event case.
(WebCore::IDBRequest::onSuccess): Ditto.
(WebCore::IDBRequest::onSuccessWithContinuation): Ditto.
(WebCore::IDBRequest::dispatchEvent): On uncaught error, trigger abort on transaction front-end.

  • Modules/indexeddb/IDBRequest.h:

(IDBRequest):

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::abort): Do abort steps locally first, then notify back-end.
(WebCore::IDBTransaction::onAbort): If abort wasn't triggered locally, clean up is still necessary.

8:11 PM Changeset in webkit [122290] by jchaffraix@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION(r112113): absolutely positioned INPUT boxes with a table cell containing block have a 0px height
https://bugs.webkit.org/show_bug.cgi?id=89209

Reviewed by Ojan Vafai.

Source/WebCore:

Test: fast/forms/input-in-table-cell-no-value.html

The issue comes from the layout code not properly resetting the overriden heigth between layouts.

The test case relies on a table cell as it requires a 2 pass layout. Between the 2 passes, different
code paths would be taken, leading to previous values being used to over-constrain the inner content.

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::layout):
Ensure consistent layout by resetting any overriden conditional height.

LayoutTests:

The 2 tests are very close and differ by the use of min-height. This forces some content to be visible in the expected result
but not in the original test case.

  • fast/forms/input-in-table-cell-no-value-expected.html: Added.
  • fast/forms/input-in-table-cell-no-value.html: Added.
7:26 PM Changeset in webkit [122289] by kbr@google.com
  • 2 edits in trunk/Tools

Add --no-build option to perf test runner
https://bugs.webkit.org/show_bug.cgi?id=90916

Reviewed by Ryosuke Niwa.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

Support --no-build option to perf tests, as in layout tests.

7:21 PM Changeset in webkit [122288] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebKit2

[Qt] Enable antialiasing for TextureMapper
https://bugs.webkit.org/show_bug.cgi?id=90915

Reviewed by Martin Robinson.

Enable the new antialiasing functionality for WebLayerTreeRendering.
This will make one-tile layers antialiased when using UI_SIDE_COMPOSITING.

  • UIProcess/WebLayerTreeRenderer.cpp:

(WebKit::WebLayerTreeRenderer::ensureRootLayer):

7:06 PM Changeset in webkit [122287] by abarth@webkit.org
  • 1 edit
    2 adds in trunk/Tools

EWSTools should be able to build a chromium-ews bot from scratch
https://bugs.webkit.org/show_bug.cgi?id=90912

Reviewed by Eric Seidel.

I've been using this script to kick off the build process for the
chromium-ews bots on Google Compute Engine.

  • EWSTools/GoogleComputeEngine: Added.
  • EWSTools/GoogleComputeEngine/build-chromium-ews.sh: Added.
6:47 PM Changeset in webkit [122286] by commit-queue@webkit.org
  • 17 edits
    8 adds in trunk

Input elements with type=range do not have default touch handlers.
https://bugs.webkit.org/show_bug.cgi?id=88807

Patch by Kevin Ellis <kevers@chromium.org> on 2012-07-10
Reviewed by Antonio Gomes.

Source/WebCore:

This patch adds support for touch event handling on input elements
and dragging a slider with touch start and move events. Previously,
manipulating a slider on a touch screen required generation of
synthetic mouse events.

Tests: fast/events/touch/touch-slider-no-js-touch-listener.html

fast/events/touch/touch-slider.html

  • dom/Event.cpp:

(WebCore::Event::isTouchEvent):
(WebCore):

  • dom/Event.h:

(Event):

  • dom/Touch.cpp:

(WebCore::Touch::Touch):

  • dom/Touch.h:

(WebCore::Touch::absoluteLocation):
(Touch):

  • dom/TouchEvent.cpp:

(WebCore::TouchEvent::isTouchEvent):
(WebCore):

  • dom/TouchEvent.h:

(TouchEvent):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::HTMLInputElement):
(WebCore::HTMLInputElement::~HTMLInputElement):
(WebCore::HTMLInputElement::updateType):
(WebCore::HTMLInputElement::defaultEventHandler):

  • html/HTMLInputElement.h:

(HTMLInputElement):

  • html/InputType.cpp:

(WebCore):
(WebCore::InputType::handleTouchEvent):
(WebCore::InputType::hasTouchEventHandler):

  • html/InputType.h:

(WebCore):
(ClickHandlingState):
(InputType):

  • html/RangeInputType.cpp:

(WebCore):
(WebCore::RangeInputType::handleTouchEvent):
(WebCore::RangeInputType::hasTouchEventHandler):

  • html/RangeInputType.h:

(RangeInputType):

  • html/shadow/SliderThumbElement.h:

(SliderThumbElement):

Source/WebKit/chromium:

Adds flag to enable native handling of touch events for input elements
with type=range.

  • features.gypi:

LayoutTests:

Add automated test for manipulating an input slider via touch
events.

  • fast/events/touch/script-tests/touch-slider-no-js-touch-listener.js: Added.

(checkPosition):

  • fast/events/touch/script-tests/touch-slider.js: Added.

(onTouchStart):
(onTouchEnd):
(onKeyDown):
(checkPosition):

  • fast/events/touch/touch-slider-expected.txt: Added.
  • fast/events/touch/touch-slider-no-js-touch-listener-expected.txt: Added.
  • fast/events/touch/touch-slider-no-js-touch-listener.html: Added.
  • fast/events/touch/touch-slider.html: Added.
  • platform/chromium/fast/events/touch/touch-slider-expected.txt: Added.
  • platform/chromium/fast/events/touch/touch-slider-no-js-touch-listener-expected.txt: Added.
6:26 PM Changeset in webkit [122285] by morrita@google.com
  • 7 edits
    2 copies in branches/chromium/1180

Merge 122082 - Heap-use-after-free in WebCore::RenderObject::destroyAndCleanupAnonymousWrappers
https://bugs.webkit.org/show_bug.cgi?id=90480

Reviewed by Kent Tamura.

Source/WebCore:

If <select> has any insertion point, the attachment phase
unpextedly creates a renderer for distributed node and added to
the renderer of the <select>, which breaks an assumption and
results the crash.

This change tighten the childShouldCreateRenderer() to forbid
child renderers even from distributed nodes.

There is an exception as always: ValidationMessage can create a
ShadowRoot to <select>, which generates usually-forbidden child
renderers. This change introduces HTMLFormControlElement::validationMessageContains()
to let these renderers in.

Test: fast/dom/shadow/insertion-point-list-menu-crash.html

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::validationMessageContains):
(WebCore):

  • html/HTMLFormControlElement.h:

(HTMLFormControlElement):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::childShouldCreateRenderer):

  • html/ValidationMessage.cpp:

(WebCore::ValidationMessage::contains):
(WebCore):

  • html/ValidationMessage.h:

(WebCore):
(ValidationMessage):

LayoutTests:

  • fast/dom/shadow/insertion-point-list-menu-crash-expected.txt: Added.
  • fast/dom/shadow/insertion-point-list-menu-crash.html: Added.

TBR=morrita@google.com
Review URL: https://chromiumcodereview.appspot.com/10694124

6:13 PM Changeset in webkit [122284] by adamk@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] REGRESSION(r121909): m_currentInputEvent never set
https://bugs.webkit.org/show_bug.cgi?id=90914

Reviewed by Abhishek Arya.

The always-null m_currentInputEvent causes a regression when
middle-clicking on a link that calls window.open('...', '_blank');
that new tab should open in the background, but instead opens in the
foreground (see code in ChromeClientImpl::getNavigationPolicy()).

Fix usage of TemporaryChange to specify a local variable name so that
m_currentInputEvent is actually set for the duration of handleInputEvent.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleInputEvent): Name the TemporaryChange instance.

6:07 PM Changeset in webkit [122283] by morrita@google.com
  • 1 edit in branches/chromium/1180/Source/WebKit/chromium/src/ContextFeaturesClientImpl.cpp

BUG=134398
Review URL: https://chromiumcodereview.appspot.com/10700153/

5:41 PM Changeset in webkit [122282] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Re-factoring recalcColumn in AutoTableLayout.cpp for readability
https://bugs.webkit.org/show_bug.cgi?id=89636

Patch by Pravin D <pravind.2k4@gmail.com> on 2012-07-10
Reviewed by Julien Chaffraix.

No test case required. Code re-factoring.

  • rendering/AutoTableLayout.cpp:

Added a const integer place holder for 32760.

(WebCore::AutoTableLayout::recalcColumn):

Changes :
1) Moved the continue statement above the bool cellHasContent for an early return.
2) Replaced the constant 32760 by a placeholder.
3) Initialization of columnLayout max and min logical widths is made common for both cells having col span == 1 and span > 1.
4) Removed redundant check for cell logical width type.

5:18 PM Changeset in webkit [122281] by kbr@google.com
  • 4 edits in trunk/LayoutTests

Line directive test in fast/canvas/webgl/glsl-conformance.html is incorrect
https://bugs.webkit.org/show_bug.cgi?id=90897

Reviewed by Adrienne Walker.

Removed an invalid test and adjusted the test expectations.

  • fast/canvas/webgl/glsl-conformance-expected.txt:
  • fast/canvas/webgl/glsl-conformance.html:
  • platform/chromium/TestExpectations:
5:13 PM FeatureFlags edited by tkent@chromium.org
Remove a comment about Hixie76 protocol for WEB_SOCkETS (diff)
4:53 PM Changeset in webkit [122280] by abarth@webkit.org
  • 29 edits in trunk/Source

WebCore::Settings for Hixie76 WebSocket protocol doesn't do anything and should be removed
https://bugs.webkit.org/show_bug.cgi?id=90910

Reviewed by Eric Seidel.

Source/WebCore:

We've already removed the code that implements Hixie76 WebSockets. This
patch just removes the WebCore::Setting that used to control which
WebSocket protocol version we'd use.

I've left the WebKit-layer APIs in place, but they now don't do
anything. I'll remove all the Chromium callers shortly.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(Settings):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

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

Source/WebKit/chromium:

  • public/WebSettings.h:

(WebKit::WebSettings::setHixie76WebSocketProtocolEnabled):

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

(WebSettingsImpl):

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::initializeLoader):

Source/WebKit/gtk:

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

  • webkit/webkitwebview.cpp:

(webkit_web_view_update_settings):

Source/WebKit/mac:

  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
(-[WebPreferences setHixie76WebSocketProtocolEnabled:]):
(-[WebPreferences isHixie76WebSocketProtocolEnabled]):

  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit/qt:

  • Api/qwebpage.cpp:

(QWebPagePrivate::QWebPagePrivate):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:
  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Source/WebKit/win:

  • WebPreferences.cpp:

(WebPreferences::initializeDefaultSettings):
(WebPreferences::setHixie76WebSocketProtocolEnabled):
(WebPreferences::hixie76WebSocketProtocolEnabled):

  • WebView.cpp:

(WebView::notifyPreferencesChanged):

Source/WebKit2:

  • Shared/WebPreferencesStore.h:

(WebKit):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetHixie76WebSocketProtocolEnabled):
(WKPreferencesGetHixie76WebSocketProtocolEnabled):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

4:39 PM Changeset in webkit [122279] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Add alecflett to the list of committers
https://bugs.webkit.org/show_bug.cgi?id=90903

Patch by Alec Flett <alecflett@chromium.org> on 2012-07-10
Reviewed by Ojan Vafai.

  • Scripts/webkitpy/common/config/committers.py:
4:36 PM Changeset in webkit [122278] by pdr@google.com
  • 4 edits
    2 adds in trunk

Crash due to SVG animation element not removed from target (before reset)
https://bugs.webkit.org/show_bug.cgi?id=90750

Reviewed by Abhishek Arya.

Source/WebCore:

Previously we were not removing an animation element from
SVGDocumentExtensions::m_animatedElements which led to a crash.
This change properly removes animation elements in resetTargetElement
which both fixes this bug and will prevent others from hitting it in
the future.

Test: svg/animations/dynamic-modify-attributename-crash2.svg

  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::removeAllAnimationElementsFromTarget):

removeAllAnimationElementsFromTarget now adds all the animation elements
to a vector and iterates over it because the changes to resetTargetElement
would have caused us to modify the underlying hashset as we iterated. Note that
before we deleted animationElementsForTarget in removeAllAnimationElementsFromTarget
but that logic is now handled in removeAnimationElementFromTarget which is called
during resetTargetElement.

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::removedFrom):

Because of the changes in resetTargetElement, removedFrom was able to be
refactored. This patch changes removedFrom to call resetTargetElement rather
than have duplicated logic. There is a very small change in logic here:
animationAttributeChanged() is now called in removedFrom().

(WebCore::SVGSMILElement::resetTargetElement):

resetTargetElement now fully resets the target, including removing it from
m_animatedElements. This will prevent future instances of this bug.

LayoutTests:

  • svg/animations/dynamic-modify-attributename-crash2-expected.txt: Added.
  • svg/animations/dynamic-modify-attributename-crash2.svg: Added.
4:22 PM Changeset in webkit [122277] by dino@apple.com
  • 2 adds in trunk/LayoutTests/animations

Add the test files that I forgot to commit (AGAIN!) in r122271

  • animations/animation-shorthand-name-order-expected.txt: Added.
  • animations/animation-shorthand-name-order.html: Added.
4:10 PM Changeset in webkit [122276] by abarth@webkit.org
  • 2 edits in trunk/Websites/bugs.webkit.org

bugs.webkit.org has mixed content
https://bugs.webkit.org/show_bug.cgi?id=90907

Reviewed by Eric Seidel.

Now that we detect http XMLHttpRequests as mixed content, I've noticed
that we're loading committers.py over http instead of https. For
better security, we should use https.

  • committers-autocomplete.js:
4:06 PM Changeset in webkit [122275] by commit-queue@webkit.org
  • 8 edits in trunk/Source

[Qt] Repaint counter for accelerated compositing
https://bugs.webkit.org/show_bug.cgi?id=90116

Patch by Helder Correia <Helder Correia> on 2012-07-10
Reviewed by Noam Rosenthal.

No new tests, just introducing a debug feature.

For this feature to be enabled, the environment variable
QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS must be set to 1. Once enabled,
both repaint counters and tile borders will be painted.

Important notes:

  • Only WebKit2 is targetted for now.
  • There is no integration with Preferences. That aproach was

taken initially but revealed complex and overkill for such a
debugging-only functionality. Thus, to disable it simply restart with
the environment variable unset or set to some other value.

A Qt-specific drawRepaintCounter() function was added to
TextureMapperGL. A QImage is used as scratch buffer to paint borders and
counters. It is then uploaded to a BitmapTexture acquired from the pool
and finally draw by TextureMapper. The actual compositing happens inside
LayerBackingStore::paintToTextureMapper(). Each LayerBackingStoreTile
now has a repaint counter which gets incremented in
LayerBackingStore::updateTile().

Source/WebCore:

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

(WebCore):
(WebCore::TextureMapperGL::drawRepaintCounter):

  • platform/graphics/texmap/TextureMapperGL.h:
  • platform/graphics/texmap/TextureMapperImageBuffer.h:

Source/WebKit2:

  • UIProcess/texmap/LayerBackingStore.cpp:

(WebKit::LayerBackingStore::updateTile):
(WebKit):
(WebKit::shouldShowTileDebugVisuals):
(WebKit::LayerBackingStore::paintToTextureMapper):

  • UIProcess/texmap/LayerBackingStore.h:

(WebKit::LayerBackingStoreTile::LayerBackingStoreTile):
(LayerBackingStoreTile):
(WebKit::LayerBackingStoreTile::incrementRepaintCount):
(WebKit::LayerBackingStoreTile::repaintCount):

3:53 PM Changeset in webkit [122274] by gyuyoung.kim@samsung.com
  • 3 edits in trunk

[CMAKE] Add missing feature macros
https://bugs.webkit.org/show_bug.cgi?id=90890

Reviewed by Eric Seidel.

ENABLE_CSS_EXCLUSIONS, ENABLE_CSS_REGIONS, ENABLE_TEXT_AUTOSIZING macros
haven't defined in cmake feature list.

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:
3:49 PM Changeset in webkit [122273] by wangxianzhu@chromium.org
  • 2 edits in trunk/Tools

try

3:48 PM Changeset in webkit [122272] by danakj@chromium.org
  • 10 edits in trunk/Source

[chromium] Replace use of ManagedTexture with CCScopedTexture for impl thread and remove implTextureManager from LayerRendererChromium
https://bugs.webkit.org/show_bug.cgi?id=90841

Reviewed by Adrienne Walker.

Source/WebCore:

Remove the TextureManager from LayerRendererChromium, which was the last
instance of the class in the compositor. Instead of using ManagedTexture
objects for RenderPass textures, use instances of CCScopedTexture, which
manage the lifetime of the allocated texture ids. TextureManager will be
removed entirely once all callers of memoryUseBytes() have been removed.

No new tests. No change in behaviour.

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::releaseRenderPassTextures):
(WebCore):
(WebCore::LayerRendererChromium::renderPassTextureSize):
(WebCore::LayerRendererChromium::renderPassTextureFormat):
(WebCore::LayerRendererChromium::decideRenderPassAllocationsForFrame):
(WebCore::LayerRendererChromium::haveCachedResourcesForRenderPassId):
(WebCore::LayerRendererChromium::drawQuad):
(WebCore::applyFilters):
(WebCore::LayerRendererChromium::drawBackgroundFilters):
(WebCore::LayerRendererChromium::drawRenderPassQuad):
(WebCore::LayerRendererChromium::drawHeadsUpDisplay):
(WebCore::LayerRendererChromium::getFramebufferTexture):
(WebCore::LayerRendererChromium::isCurrentRenderPass):
(WebCore::LayerRendererChromium::useRenderPass):
(WebCore::LayerRendererChromium::useScopedTexture):
(WebCore::LayerRendererChromium::bindFramebufferToTexture):
(WebCore::LayerRendererChromium::initializeSharedObjects):

  • platform/graphics/chromium/LayerRendererChromium.h:

(WebCore):
(LayerRendererChromium):

  • platform/graphics/chromium/TrackingTextureAllocator.cpp:

(WebCore::TrackingTextureAllocator::TrackingTextureAllocator):
(WebCore::TrackingTextureAllocator::createTexture):

  • platform/graphics/chromium/TrackingTextureAllocator.h:

(WebCore::TrackingTextureAllocator::create):
(TrackingTextureAllocator):

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

(WebCore::CCHeadsUpDisplay::draw):

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

(WebCore):
(CCHeadsUpDisplay):

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

(WebCore):
(CCRenderer):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:
3:45 PM Changeset in webkit [122271] by dino@apple.com
  • 3 edits in trunk

REGRESSION (r109610): Order of values in shorthand animation makes a difference
https://bugs.webkit.org/show_bug.cgi?id=84533
<rdar://problem/11831924>
<rdar://problem/11815787>

Reviewed by Simon Fraser.

Source/WebCore:

A previous revision (r109610) updated the parsing of the animation shorthand
to make sure that animation-name wouldn't clobber other styles. The side effect
of this was that we'd no longer find animation-name if it wasn't first in the
list. This commit reverts the change and fixes it in a different way, by always
parsing animation-name as the last property in the shorthand. This means that
keywords for timing functions, fill modes and iteration will match before
animation name. In other words, if you want an animation called "forwards"
you should use the longhand property, because the shorthand will first match
that against animation-fill-mode.

Test: animations/animation-shorthand-name-order.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseAnimationShorthand): make a new array of longhand
properties to check for, with name as the last entry rather than the first.
Use this array to test the properties in the shorthand.

LayoutTests:

A new test that exercises many different variants of the animation shorthand
property, putting the animation name in different spots in the list of values.

  • animations/animation-shorthand-name-order-expected.txt: Added.
  • animations/animation-shorthand-name-order.html: Added.
3:14 PM Changeset in webkit [122270] by commit-queue@webkit.org
  • 9 edits
    9 adds in trunk/Source/WebKit2

[WK2] Add Vibration API support for WebKit2
https://bugs.webkit.org/show_bug.cgi?id=90058

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-07-10
Reviewed by Anders Carlsson.

Add support for Vibration API to WebKit2.

  • CMakeLists.txt:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Platform/CoreIPC/MessageID.h:
  • Shared/API/c/WKBase.h:
  • Shared/APIObject.h:
  • Target.pri:
  • UIProcess/API/C/WKAPICast.h:

(WebKit):

  • UIProcess/API/C/WKVibration.cpp: Added.

(WKVibrationGetTypeID):
(WKVibrationSetProvider):

  • UIProcess/API/C/WKVibration.h: Added.
  • UIProcess/WebVibrationProvider.cpp: Added.

(WebKit):
(WebKit::WebVibrationProvider::vibrate):
(WebKit::WebVibrationProvider::cancelVibration):

  • UIProcess/WebVibrationProvider.h: Added.

(WebKit):
(WebVibrationProvider):

  • UIProcess/WebVibrationProxy.cpp: Added.

(WebKit):
(WebKit::WebVibrationProxy::create):
(WebKit::WebVibrationProxy::WebVibrationProxy):
(WebKit::WebVibrationProxy::~WebVibrationProxy):
(WebKit::WebVibrationProxy::invalidate):
(WebKit::WebVibrationProxy::initializeProvider):
(WebKit::WebVibrationProxy::didReceiveMessage):
(WebKit::WebVibrationProxy::vibrate):
(WebKit::WebVibrationProxy::cancelVibration):

  • UIProcess/WebVibrationProxy.h: Added.

(CoreIPC):
(WebKit):
(WebVibrationProxy):
(WebKit::WebVibrationProxy::clearContext):
(WebKit::WebVibrationProxy::type):

  • UIProcess/WebVibrationProxy.messages.in: Added.
  • WebProcess/WebCoreSupport/WebVibrationClient.cpp: Added.

(WebKit):
(WebKit::WebVibrationClient::vibrate):
(WebKit::WebVibrationClient::cancelVibration):
(WebKit::WebVibrationClient::vibrationDestroyed):

  • WebProcess/WebCoreSupport/WebVibrationClient.h: Added.

(WebKit):
(WebVibrationClient):
(WebKit::WebVibrationClient::WebVibrationClient):
(WebKit::WebVibrationClient::~WebVibrationClient):

3:11 PM Changeset in webkit [122269] by kseo@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix a potential bug of BitmapImage::frameCount().
https://bugs.webkit.org/show_bug.cgi?id=90756

Patch by Huang Dongsung <luxtella@company100.net> on 2012-07-10
Reviewed by Simon Fraser.

If an ImageDecoder is not yet initialized, m_source.frameCount() returns 0. This
does not mean that the frame count is actually 0. So we must set
m_haveFrameCount to true only when m_frameCount is not 0.

The current code is okay because BitmapImage::frameCount() is never called
before the decoder is initialized. However, this no longer holds true once we
introduce parallel image decoders.

No new tests, no behavior change.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::frameCount):

3:08 PM Changeset in webkit [122268] by ojan@chromium.org
  • 2 edits in trunk/Source/WebCore

Build fix. Removing unused variable from http://trac.webkit.org/changeset/122264.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeContentLogicalHeightUsing):

3:03 PM Changeset in webkit [122267] by rniwa@webkit.org
  • 5 edits in trunk/Source/WebCore

HTMLPropertiesCollection should share more code with HTMLCollection
https://bugs.webkit.org/show_bug.cgi?id=90842

Reviewed by Anders Carlsson.

Got rid of HTMLPropertiesCollection::m_cache, and added m_itemRefElements, m_propertyNames, m_propertyCache,
m_hasPropertyNameCache, and m_hasItemRefElements to HTMLPropertiesCollection itself. These are caches specific
to HTMLPropertiesCollection. Note that hasNameCache has been renamed to m_hasPropertyNameCache and itemRefElementPosition
has been replaced by cachedElementsArrayOffset() in HTMLCollectionCacheBase (also used in HTMLFormCollection).

Also deleted all methods on m_cache except updatePropertyCache since caches can be accessed directly from
HTMLPropertiesCollection.

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::invalidateCacheIfNeeded):
(WebCore::HTMLCollection::invalidateCache):

  • html/HTMLCollection.h:

(HTMLCollection):

  • html/HTMLPropertiesCollection.cpp:

(WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):
(WebCore):
(WebCore::HTMLPropertiesCollection::updateRefElements):
(WebCore::HTMLPropertiesCollection::itemAfter):
(WebCore::HTMLPropertiesCollection::calcLength):
(WebCore::HTMLPropertiesCollection::cacheFirstItem):
(WebCore::HTMLPropertiesCollection::item):
(WebCore::HTMLPropertiesCollection::findProperties):
(WebCore::HTMLPropertiesCollection::updateNameCache):
(WebCore::HTMLPropertiesCollection::names):
(WebCore::HTMLPropertiesCollection::namedItem):
(WebCore::HTMLPropertiesCollection::hasNamedItem):

  • html/HTMLPropertiesCollection.h:

(HTMLPropertiesCollection):
(WebCore::HTMLPropertiesCollection::clearCache):
(WebCore::HTMLPropertiesCollection::updatePropertyCache):

3:01 PM Changeset in webkit [122266] by cevans@google.com
  • 1 edit in branches/chromium/1180/Source/WebCore/dom/NodeRareData.h

Merge 120983 - Clang build fix.

  • dom/NodeRareData.h:

TBR=rniwa@webkit.org
Review URL: https://chromiumcodereview.appspot.com/10701129

2:58 PM Changeset in webkit [122265] by rafaelw@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Removing duplicated line from TestExpectations.

  • platform/chromium/TestExpectations:
2:45 PM Changeset in webkit [122264] by ojan@chromium.org
  • 14 edits
    4 adds in trunk

Add support for min-height:auto and min-width:auto
https://bugs.webkit.org/show_bug.cgi?id=88437

Reviewed by Tony Chang.

Source/WebCore:

Right now auto does the same thing as min-height/min-width:0.
For flex-items it should be the same as min-content (followup patch).
http://dev.w3.org/csswg/css3-flexbox/#min-size-auto

Tests: fast/css/auto-min-size.html

fast/css/deprecated-flexbox-auto-min-size.html

  • WebCore.order:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
Return 0px for the computed value of auto.

  • css/CSSParser.cpp:

(WebCore::CSSParser::validWidth):
(WebCore):
(WebCore::CSSParser::validHeight):
(WebCore::CSSParser::parseValue):

  • css/CSSParser.h:

(CSSParser):
Restructure width/height parsing to reduce code duplication and make it easier
to add auto as a valid min value.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::adjustSizeConstraints):
This code was unnecessarily checking intrinsicOrAuto since auto was previously
not an allowed value for minWidth/minHeight.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):
(WebCore::RenderBox::sizesLogicalWidthToFitContent):
(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::computeLogicalHeightUsing):
(WebCore::RenderBox::computeContentLogicalHeightUsing):
(WebCore::RenderBox::computeReplacedLogicalWidth):
(WebCore::RenderBox::computeReplacedLogicalWidthRespectingMinMaxWidth):
(WebCore::RenderBox::computeReplacedLogicalWidthUsing):
(WebCore::RenderBox::computeReplacedLogicalHeight):
(WebCore::RenderBox::computeReplacedLogicalHeightRespectingMinMaxHeight):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::computePositionedLogicalWidth):
(WebCore::RenderBox::computePositionedLogicalWidthUsing):
(WebCore::RenderBox::computePositionedLogicalHeight):
(WebCore::RenderBox::computePositionedLogicalHeightUsing):
Need to pass a SizeType to all these methods so that we know if the Length
we're working with is a min length since auto has a different meaning now
for min lengths.

  • rendering/RenderBox.h:

(RenderBox):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::allowedChildFlex):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
(WebCore::RenderFlexibleBox::computeAvailableFreeSpace):
(WebCore::RenderFlexibleBox::lineBreakLength):
(WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):

  • rendering/RenderReplaced.cpp:

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

  • rendering/RenderScrollbarPart.cpp:

(WebCore::calcScrollbarThicknessUsing):
(WebCore::RenderScrollbarPart::computeScrollbarWidth):
(WebCore::RenderScrollbarPart::computeScrollbarHeight):

  • rendering/style/RenderStyle.h:

Default minHeight/minWidth to auto instead of 0px.

LayoutTests:

  • fast/css/auto-min-size-expected.txt: Added.
  • fast/css/auto-min-size.html: Added.
  • fast/css/deprecated-flexbox-auto-min-size.html: Added.
  • platform/chromium-linux/fast/css/deprecated-flexbox-auto-min-size-expected.txt: Added.
2:21 PM Changeset in webkit [122263] by cevans@google.com
  • 1 edit in branches/chromium/1180/Source/WebCore/dom/NodeRareData.h

Merge 121105
BUG=134088
Review URL: https://chromiumcodereview.appspot.com/10704139

2:21 PM Changeset in webkit [122262] by jsbell@chromium.org
  • 3 edits in trunk/LayoutTests

[Chromium] IndexedDB: Need test of Typed Arrays
https://bugs.webkit.org/show_bug.cgi?id=81979

Reviewed by Tony Chang.

Verify storage of Typed Arrays (Uint8Array and friends). Checks that
these types are stored and read back with types and data intact. Also
add an index to the object store, so that key paths are evaluated
against each type on every write operation.

  • storage/indexeddb/structured-clone-expected.txt:
  • storage/indexeddb/structured-clone.html:
2:13 PM Changeset in webkit [122261] by wangxianzhu@chromium.org
  • 2 edits in trunk/Tools

[Chromium-Android] Fix typos in chromium_android.py in r151492
https://bugs.webkit.org/show_bug.cgi?id=90904

Reviewed by Ojan Vafai.

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

(ChromiumAndroidPort.setup_test_run):

1:57 PM Changeset in webkit [122260] by danakj@chromium.org
  • 2 edits in branches/chromium/1180/Source/WebCore/platform/graphics/chromium/cc

Merge 121450 - [chromium] Should schedule a commit when dropping contents textures
https://bugs.webkit.org/show_bug.cgi?id=90031

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

Source/WebCore:

If we're dropping contents textures on the impl thread, we need to schedule a commit to pick up new contents at
the next commit opportunity. Also adds some traces to make debugging issues like this easier.

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

(WebCore::CCLayerTreeHostImpl::commitComplete):
(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::releaseContentsTextures):

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

(WebCore::CCScheduler::processScheduledActions):

Source/WebKit/chromium:

Adds a somewhat vacuous test unit test for committing when releasing textures.

  • tests/CCLayerTreeHostImplTest.cpp:

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

1:54 PM Changeset in webkit [122259] by danakj@chromium.org
  • 29 edits in branches/chromium/1180/Source

Merge 121076 - [chromium] LayerRendererChromium is not getting visibility messages in single threaded compositing mode.
https://bugs.webkit.org/show_bug.cgi?id=89045

Reviewed by Adrienne Walker.

Based on patch by Michal Mocny <mmocny@google.com>.

Source/WebCore:

Invariants:

1.) We never commit (paint, animate, any of it) when not visible on the main thread -except- for
compositeAndReadback, regardless of threaded vs non-threaded mode
2.) CCLayerTreeHost::m_contentsTextureManager's memory budget is only set by updateLayers() when we are going to
make a frame and is always set to a non-zero value
3.) Zero-sized allocations from the GPU process are always serviced immediately on the impl thread. Non-zero
allocations are met in the next frame, whenever we would produce that frame according to our usual frame
scheduling logic.
4.) The impl thread always knows the set of currently-allocated managed texture IDs and can delete them all
whenever it likes without needing the main thread to be responsive.

Details:

[See original commit...]

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererGpuMemoryAllocationChangedCallbackAdapter::onGpuMemoryAllocationChangedOnImpl):
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::initialize):
(WebCore::LayerRendererChromium::setVisible):
(WebCore::LayerRendererChromium::setGpuMemoryAllocation):
(WebCore):
(WebCore::LayerRendererChromium::swapBuffers):
(WebCore::LayerRendererChromium::getFramebufferPixels):

  • platform/graphics/chromium/LayerRendererChromium.h:

(WebCore):
(LayerRendererChromium):

  • platform/graphics/chromium/TextureManager.cpp:

(WebCore::TextureManager::evictAndRemoveAllDeletedTextures):
(WebCore):

  • platform/graphics/chromium/TextureManager.h:

(TextureAllocator):
(TextureManager):

  • platform/graphics/chromium/TrackingTextureAllocator.cpp:

(WebCore::TrackingTextureAllocator::createTexture):
(WebCore::TrackingTextureAllocator::deleteTexture):
(WebCore):
(WebCore::TrackingTextureAllocator::deleteAllTextures):

  • platform/graphics/chromium/TrackingTextureAllocator.h:

(TrackingTextureAllocator):

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

(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::initializeLayerRenderer):
(WebCore::CCLayerTreeHost::finishCommitOnImplThread):
(WebCore::CCLayerTreeHost::setVisible):
(WebCore::CCLayerTreeHost::evictAllContentTextures):
(WebCore::CCLayerTreeHost::updateLayers):

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

(CCLayerTreeHost):

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

(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::commitComplete):
(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::context):
(WebCore::CCLayerTreeHostImpl::releaseContentsTextures):
(WebCore):
(WebCore::CCLayerTreeHostImpl::setMemoryAllocationLimitBytes):

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

(CCLayerTreeHostImplClient):
(WebCore::CCLayerTreeHostImpl::contentsTexturesWerePurgedSinceLastCommit):
(WebCore::CCLayerTreeHostImpl::memoryAllocationLimitBytes):
(CCLayerTreeHostImpl):

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

(CCProxy):

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

(CCRendererClient):

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

(WebCore::CCScheduler::beginFrameComplete):
(WebCore::CCScheduler::beginFrameAborted):
(WebCore):
(WebCore::CCScheduler::didSwapBuffersComplete):
(WebCore::CCScheduler::didLoseContext):
(WebCore::CCScheduler::didRecreateContext):
(WebCore::CCScheduler::vsyncTick):

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

(CCScheduler):

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

(WebCore::CCSchedulerStateMachine::beginFrameAborted):
(WebCore):

  • platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::setVisible):
(WebCore):
(WebCore::CCSingleThreadProxy::stop):
(WebCore::CCSingleThreadProxy::commitAndComposite):

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

(CCSingleThreadProxy):

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

(WebCore::CCThreadProxy::CCThreadProxy):
(WebCore::CCThreadProxy::compositeAndReadback):
(WebCore::CCThreadProxy::setVisible):
(WebCore):
(WebCore::CCThreadProxy::setVisibleOnImplThread):
(WebCore::CCThreadProxy::scheduledActionBeginFrame):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::beginFrameAbortedOnImplThread):
(WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):
(WebCore::CCThreadProxy::layerTreeHostClosedOnImplThread):

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

(CCThreadProxy):
(BeginFrameAndCommitState):

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

(WebCore::CCVideoLayerImpl::~CCVideoLayerImpl):
(WebCore::CCVideoLayerImpl::willDraw):
(WebCore::CCVideoLayerImpl::willDrawInternal):
(WebCore::CCVideoLayerImpl::FramePlane::allocateData):
(WebCore::CCVideoLayerImpl::FramePlane::freeData):
(WebCore::CCVideoLayerImpl::allocatePlaneData):
(WebCore::CCVideoLayerImpl::freePlaneData):
(WebCore::CCVideoLayerImpl::freeUnusedPlaneData):
(WebCore::CCVideoLayerImpl::didLoseContext):

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

(FramePlane):

Source/WebKit/chromium:

Update various test fixtures and tests to cover scheduling, visibility, and resource allocation changes.

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

(CCLayerTreeHostTestAbortFrameWhenInvisible):
(WTF::CCLayerTreeHostTestAbortFrameWhenInvisible::CCLayerTreeHostTestAbortFrameWhenInvisible):
(WTF::CCLayerTreeHostTestAbortFrameWhenInvisible::beginTest):
(WTF::CCLayerTreeHostTestAbortFrameWhenInvisible::afterTest):
(WTF):
(WTF::TEST_F):
(WTF::CCLayerTreeHostTestLayerOcclusion::beginTest):
(WTF::CCLayerTreeHostTestLayerOcclusionWithFilters::beginTest):
(WTF::CCLayerTreeHostTestManySurfaces::beginTest):

  • tests/CCSchedulerStateMachineTest.cpp:

(WebCore::TEST):

  • tests/CCTiledLayerTestCommon.h:
  • tests/FakeWebGraphicsContext3D.h:

(WebKit::FakeWebGraphicsContext3D::FakeWebGraphicsContext3D):
(FakeWebGraphicsContext3D):
(WebKit::FakeWebGraphicsContext3D::createTexture):

  • tests/LayerRendererChromiumTest.cpp:

(TEST_F):

  • tests/TiledLayerChromiumTest.cpp:

TBR=jamesr@google.com
Review URL: https://chromiumcodereview.appspot.com/10690121

1:54 PM Changeset in webkit [122258] by ojan@chromium.org
  • 3 edits in trunk/Tools

webkit-patch rebaseline doesn't work for audio/pixel tests
https://bugs.webkit.org/show_bug.cgi?id=90905

Reviewed by Adam Barth.

We just need to pass the correct suffix list to rebaseline-test-internal
and optimize-baselines. By default, pass all suffixes.

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

(Rebaseline):
(Rebaseline.init):
(Rebaseline._suffixes_to_update):
(Rebaseline.execute):

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

(test_rebaseline_multiple_builders_and_tests_command_line):

1:47 PM Changeset in webkit [122257] by danakj@chromium.org
  • 6 edits in branches/chromium/1180/Source

Merge 120858 - [chromium] Separate LayerRenderer initialization from updateLayers
https://bugs.webkit.org/show_bug.cgi?id=89525

Reviewed by Adrienne Walker.

Source/WebCore:

This adds an explicit call to initialize the layer renderer of a given CCLayerTreeHost instead of having it be
implicit in updateLayers(). This way the proxies can control the initialization sequence more closely and do
useful work between the two calls.

Refactor, no change in behavior. Covered by existing tests.

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

(WebCore::CCLayerTreeHost::compositeAndReadback):
(WebCore::CCLayerTreeHost::initializeLayerRendererIfNeeded):
(WebCore):
(WebCore::CCLayerTreeHost::updateLayers):

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

(CCLayerTreeHost):

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

(WebCore::CCSingleThreadProxy::commitAndComposite):

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

(WebCore::CCThreadProxy::compositeAndReadback):
(WebCore::CCThreadProxy::beginFrame):

Source/WebKit/chromium:

Update tests to call initializeLayerRendererIfNeeded() before calling updateLayers() to reflect what the proxies
do.

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTestLayerOcclusion::beginTest):
(WTF::CCLayerTreeHostTestLayerOcclusionWithFilters::beginTest):
(WTF::CCLayerTreeHostTestManySurfaces::beginTest):

  • tests/TiledLayerChromiumTest.cpp:

TBR=jamesr@google.com
Review URL: https://chromiumcodereview.appspot.com/10702135

1:39 PM Changeset in webkit [122256] by abarth@webkit.org
  • 119 edits in trunk

Remove LayoutTestController and WebKitTestRunner support for Hixie76 WebSockets
https://bugs.webkit.org/show_bug.cgi?id=90853

Reviewed by Eric Seidel.

Tools:

WebKit no longer implements the Hixie76 version of the WebSocket
protocol. We don't need to support it in our test framework.

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::overridePreference):

  • DumpRenderTree/chromium/WebPreferences.cpp:

(WebPreferences::reset):
(WebPreferences::applyTo):

  • DumpRenderTree/chromium/WebPreferences.h:

(WebPreferences):

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues):

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:

(LayoutTestController::overridePreference):

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetDefaultsToConsistentValues):

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::WebPage::resetSettings):

  • DumpRenderTree/qt/LayoutTestControllerQt.cpp:

(LayoutTestController::overridePreference):

  • DumpRenderTree/win/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues):

LayoutTests:

There's no need to explicitly disable the Hixie76 protocol because it
no longer exists in WebKit.

  • http/tests/websocket/tests/hybi/alert-in-event-handler.html:
  • http/tests/websocket/tests/hybi/bad-handshake-crash.html:
  • http/tests/websocket/tests/hybi/bad-sub-protocol-control-chars.html:
  • http/tests/websocket/tests/hybi/bad-sub-protocol-empty.html:
  • http/tests/websocket/tests/hybi/bad-sub-protocol-non-ascii.html:
  • http/tests/websocket/tests/hybi/binary-type.html:
  • http/tests/websocket/tests/hybi/broken-utf8.html:
  • http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy.html:
  • http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
  • http/tests/websocket/tests/hybi/client-close.html:
  • http/tests/websocket/tests/hybi/close-before-open.html:
  • http/tests/websocket/tests/hybi/close-code-and-reason.html:
  • http/tests/websocket/tests/hybi/close-event.html:
  • http/tests/websocket/tests/hybi/close-on-navigate-new-location.html:
  • http/tests/websocket/tests/hybi/close-on-unload-and-force-gc.html:
  • http/tests/websocket/tests/hybi/close-on-unload-reference-in-parent.html:
  • http/tests/websocket/tests/hybi/close-on-unload.html:
  • http/tests/websocket/tests/hybi/close-unref-websocket.html:
  • http/tests/websocket/tests/hybi/close.html:
  • http/tests/websocket/tests/hybi/compressed-control-frame.html:
  • http/tests/websocket/tests/hybi/cross-origin.html:
  • http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html:
  • http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html:
  • http/tests/websocket/tests/hybi/deflate-frame-parameter.html:
  • http/tests/websocket/tests/hybi/echo-with-no-extension.html:
  • http/tests/websocket/tests/hybi/extensions.html:
  • http/tests/websocket/tests/hybi/fragmented-binary-frames.html:
  • http/tests/websocket/tests/hybi/fragmented-control-frame.html:
  • http/tests/websocket/tests/hybi/fragmented-frames.html:
  • http/tests/websocket/tests/hybi/frame-lengths.html:
  • http/tests/websocket/tests/hybi/handshake-challenge-randomness.html:
  • http/tests/websocket/tests/hybi/handshake-error.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-maxlength.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-mismatch-protocol-header.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-more-accept-header.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-more-protocol-header.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-no-cr.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null.html:
  • http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header.html:
  • http/tests/websocket/tests/hybi/httponly-cookie.pl:
  • http/tests/websocket/tests/hybi/interleaved-fragments.html:
  • http/tests/websocket/tests/hybi/invalid-continuation.html:
  • http/tests/websocket/tests/hybi/invalid-encode-length.html:
  • http/tests/websocket/tests/hybi/invalid-masked-frames-from-server.html:
  • http/tests/websocket/tests/hybi/invalid-subprotocol-characters.html:
  • http/tests/websocket/tests/hybi/invalid-subprotocols.html:
  • http/tests/websocket/tests/hybi/long-control-frame.html:
  • http/tests/websocket/tests/hybi/long-invalid-header.html:
  • http/tests/websocket/tests/hybi/multiple-connections.html:
  • http/tests/websocket/tests/hybi/multiple-subprotocols.html:
  • http/tests/websocket/tests/hybi/no-subprotocol.html:
  • http/tests/websocket/tests/hybi/null-character.html:
  • http/tests/websocket/tests/hybi/pong.html:
  • http/tests/websocket/tests/hybi/receive-arraybuffer.html:
  • http/tests/websocket/tests/hybi/receive-blob.html:
  • http/tests/websocket/tests/hybi/reload-crash.html:
  • http/tests/websocket/tests/hybi/reserved-bits.html:
  • http/tests/websocket/tests/hybi/reserved-opcodes.html:
  • http/tests/websocket/tests/hybi/send-after-close-on-unload.html:
  • http/tests/websocket/tests/hybi/send-arraybuffer.html:
  • http/tests/websocket/tests/hybi/send-blob.html:
  • http/tests/websocket/tests/hybi/send-empty.html:
  • http/tests/websocket/tests/hybi/send-file-blob-fail.html:
  • http/tests/websocket/tests/hybi/send-file-blob.html:
  • http/tests/websocket/tests/hybi/send-object-tostring-check.html:
  • http/tests/websocket/tests/hybi/send-throw.html:
  • http/tests/websocket/tests/hybi/send.html:
  • http/tests/websocket/tests/hybi/server-close.html:
  • http/tests/websocket/tests/hybi/set-protocol.html:
  • http/tests/websocket/tests/hybi/simple-stress.html:
  • http/tests/websocket/tests/hybi/simple.html:
  • http/tests/websocket/tests/hybi/sub-protocol.html:
  • http/tests/websocket/tests/hybi/too-long-payload.html:
  • http/tests/websocket/tests/hybi/unicode.html:
  • http/tests/websocket/tests/hybi/unmasked-frames.html:
  • http/tests/websocket/tests/hybi/unpaired-surrogates-in-close-reason.html:
  • http/tests/websocket/tests/hybi/unpaired-surrogates-in-message.html:
  • http/tests/websocket/tests/hybi/url-attribute.html:
  • http/tests/websocket/tests/hybi/url-no-trailing-slash.html:
  • http/tests/websocket/tests/hybi/url-parsing.html:
  • http/tests/websocket/tests/hybi/url-with-credential.html:
  • http/tests/websocket/tests/hybi/url-with-empty-query.html:
  • http/tests/websocket/tests/hybi/url-with-query.html:
  • http/tests/websocket/tests/hybi/websocket-event-target.html:
  • http/tests/websocket/tests/hybi/websocket-pending-activity.html:
  • http/tests/websocket/tests/hybi/workers/close-code-and-reason.html:
  • http/tests/websocket/tests/hybi/workers/close-in-onmessage-crash.html:
  • http/tests/websocket/tests/hybi/workers/close-in-shared-worker.html:
  • http/tests/websocket/tests/hybi/workers/close-in-worker.html:
  • http/tests/websocket/tests/hybi/workers/close.html:
  • http/tests/websocket/tests/hybi/workers/multiple-subprotocols.html:
  • http/tests/websocket/tests/hybi/workers/no-onmessage-in-sync-op.html:
  • http/tests/websocket/tests/hybi/workers/no-subprotocol.html:
  • http/tests/websocket/tests/hybi/workers/receive-arraybuffer.html:
  • http/tests/websocket/tests/hybi/workers/receive-blob.html:
  • http/tests/websocket/tests/hybi/workers/send-arraybuffer.html:
  • http/tests/websocket/tests/hybi/workers/send-blob.html:
  • http/tests/websocket/tests/hybi/workers/shared-worker-simple.html:
  • http/tests/websocket/tests/hybi/workers/worker-handshake-challenge-randomness.html:
  • http/tests/websocket/tests/hybi/workers/worker-reload.html:
  • http/tests/websocket/tests/hybi/workers/worker-simple.html:
  • http/tests/websocket/tests/hybi/zero-length-text.html:
1:30 PM Changeset in webkit [122255] by wangxianzhu@chromium.org
  • 5 edits in trunk/Source

[Chromium-Android] Use default font rendering styles in FontPlatformData::querySystemForRenderStyle()
https://bugs.webkit.org/show_bug.cgi?id=90826

Reviewed by Adam Barth.

Source/WebCore:

No new tests. The change to this file is refactoring only.

  • platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:

(WebCore::FontPlatformData::querySystemForRenderStyle): Moved the "NoPreference" initialization into PlatformSupport::PlatformSupport::getRenderStyleForStrike().

Source/WebKit/chromium:

  • WebKit.gyp:
  • src/PlatformSupport.cpp:

(WebCore::PlatformSupport::getRenderStyleForStrike): Call style.setDefault() on Android or when the font is not specified.

1:23 PM Changeset in webkit [122254] by rafaelw@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Adding the majority of the remaining indexeddb/mozilla tests which are all flaky and crashing.

  • platform/chromium/TestExpectations:
1:21 PM Changeset in webkit [122253] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

AudioFIFO not correctly wrapping the write index on push
https://bugs.webkit.org/show_bug.cgi?id=90901

Patch by Raymond Toy <Raymond Toy> on 2012-07-10
Reviewed by Chris Rogers.

No new tests

  • platform/audio/AudioFIFO.cpp:

(WebCore::AudioFIFO::push): Wrap the write index, not read index!

1:14 PM Changeset in webkit [122252] by danakj@chromium.org
  • 7 edits in trunk/Source

[chromium] Avoid allocating render pass textures that have no content
https://bugs.webkit.org/show_bug.cgi?id=90702

Reviewed by Adrienne Walker.

Source/WebCore:

When OOM conditions are hit, textures are not allocated for some layers
which can prevent any quads from being present for a render surface.
This is used as a signal to prevent the RenderPass from allocating a
texture.

Replace the CCLayerTreeHostImpl::removePassesWithCachedTextures() method
with a general removeRenderPasses() which takes a culling control object
and will remove passes based on the inputs from the control object.

This new method is used for the old purpose of removing passes with cached
textures, as well as to remove passes that do not have any quad inputs.

Test: CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawRenderPassQuad):

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

(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
(WebCore):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::shouldRemoveRenderPass):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::shouldRemoveRenderPass):
(WebCore::CCLayerTreeHostImpl::removeRenderPasses):

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

(WebCore):
(CullRenderPassesWithCachedTextures):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::renderPassListBegin):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::renderPassListEnd):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::renderPassListNext):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::CullRenderPassesWithCachedTextures):
(CCLayerTreeHostImpl):
(CullRenderPassesWithNoQuads):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::renderPassListBegin):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::renderPassListEnd):
(WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::renderPassListNext):

Source/WebKit/chromium:

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

(WTF::ContentLayerChromiumWithUpdateTracking::ContentLayerChromiumWithUpdateTracking):
(CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::beginTest):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::didCommit):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit::afterTest):
(WTF):

12:56 PM Changeset in webkit [122251] by wangxianzhu@chromium.org
  • 2 edits in trunk/Tools

[Chromium-Android] Use setup_test_runner() instead of start_helper() to setup test environment
https://bugs.webkit.org/show_bug.cgi?id=90894

Reviewed by Adam Barth.

start_helper() is actually start_pixel_test_helper() since r115601 (bug 81729).
Should use setup_test_runner() to setup test environment for chromium-android.

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

(ChromiumAndroidPort.setup_test_run): Renamed from start_helper(). Added cache cleanup code.
(ChromiumAndroidPort.clean_up_test_run): Renamed from stop_helper().
(ChromiumAndroidPort._path_to_helper): Returns None as we don't have a helper now.
(ChromiumAndroidPort):
(ChromiumAndroidPort._path_to_forwarder): Original _path_to_helper().
(ChromiumAndroidPort._push_executable):
(ChromiumAndroidDriver.init):
(ChromiumAndroidDriver.cmd_line):

12:52 PM Changeset in webkit [122250] by commit-queue@webkit.org
  • 21 edits in trunk/Source/WebCore

Make GC3D and E3D more maintainable for GLES platforms
https://bugs.webkit.org/show_bug.cgi?id=90567

Patch by Joshua Netterfield <jnetterfield@rim.com> on 2012-07-10
Reviewed by Rob Buis.

This patch cleans up code for WebGL on OpenGLES platforms which use
GraphicsContext3DOpenGL* and Extensions3DOpenGL*. Although
GraphicsContext3DOpenGL was already split into GraphicsContext3DOpenGL,
GraphicsContext3DOpenGLCommon, and GraphicsContext3DOpenGLES, this patch
is an attempt to refactor this code in a way that will help BlackBerry and
other teams support WebGL on mobile platforms with as little use of
"#IF USE(OPENGL_ES_2)" in common code as possible. Also included is the
separation of Extensions3DOpenGL into Extensions3DOpenGLCommon,
Extensions3DOpenGL, and Extensions3DOpenGLES as well as the introduction
of OpenGLESShims.

This patch is created in large part by Jonathan Feldstein.

No new tests: no new behaviour.

  • PlatformBlackBerry.cmake: Recognize BlackBerry as OPENGL ES, add new files to build
  • Target.pri: Add new Extensions3DOpenGL* to WebGL builds
  • platform/graphics/GraphicsContext3D.h: Add validateDepthStencil, make systemAllowsMultisamplingOnATICards a a member function.

(WebCore):

  • platform/graphics/OpenGLESShims.h: Added.
  • platform/graphics/opengl/Extensions3DOpenGL.cpp: Move code to Extensions3DOpenGLCommon where possible

(WebCore::Extensions3DOpenGL::Extensions3DOpenGL): Reflect that it is now inherits Extensions3DCommon
(WebCore::Extensions3DOpenGL::supportsExtension): Contains OpenGL specific code from supports
(WebCore):
(WebCore::Extensions3DOpenGL::getExtensions): Returns a list of extensions

  • platform/graphics/opengl/Extensions3DOpenGL.h: Remove functions now in Extensions3DOpenGLCommon

(WebCore):
(Extensions3DOpenGL):

  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: Added.

(WebCore):
(WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
(WebCore::Extensions3DOpenGLCommon::~Extensions3DOpenGLCommon):
(WebCore::Extensions3DOpenGLCommon::supports):
(WebCore::Extensions3DOpenGLCommon::ensureEnabled):
(WebCore::Extensions3DOpenGLCommon::isEnabled):
(WebCore::Extensions3DOpenGLCommon::getGraphicsResetStatusARB):
(WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE): Existed before, but did nothing. Now does what is says it does.
(WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions): Moved from Extensions3DOpenGL::supports

  • platform/graphics/opengl/Extensions3DOpenGLCommon.h: Copied from Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h.

(WebCore):
(Extensions3DOpenGLCommon):

  • platform/graphics/opengl/Extensions3DOpenGLES.cpp: Added.

(WebCore):
(WebCore::Extensions3DOpenGLES::Extensions3DOpenGLES):
(WebCore::Extensions3DOpenGLES::~Extensions3DOpenGLES):
(WebCore::Extensions3DOpenGLES::framebufferTexture2DMultisampleIMG):
(WebCore::Extensions3DOpenGLES::renderbufferStorageMultisampleIMG):
(WebCore::Extensions3DOpenGLES::createVertexArrayOES):
(WebCore::Extensions3DOpenGLES::deleteVertexArrayOES):
(WebCore::Extensions3DOpenGLES::isVertexArrayOES):
(WebCore::Extensions3DOpenGLES::bindVertexArrayOES):
(WebCore::Extensions3DOpenGLES::supportsExtension): Contains OpenGLES specific code from supports
(WebCore::Extensions3DOpenGLES::getExtensions):

  • platform/graphics/opengl/Extensions3DOpenGLES.h: Copied from Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h.

(WebCore):
(Extensions3DOpenGLES):

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:

(WebCore::GraphicsContext3D::validateAttributes):
(WebCore):
(WebCore::GraphicsContext3D::renderbufferStorage):
(WebCore::GraphicsContext3D::texImage2D):
(WebCore::GraphicsContext3D::systemAllowsMultisamplingOnATICards): Now a member function.
(WebCore::GraphicsContext3D::getExtensions):

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::validateDepthStencil):
(WebCore::GraphicsContext3D::clear):
(WebCore::GraphicsContext3D::isTexture):
(WebCore):
(WebCore::GraphicsContext3D::lineWidth):
(WebCore::GraphicsContext3D::linkProgram):
(WebCore::GraphicsContext3D::pixelStorei):
(WebCore::GraphicsContext3D::polygonOffset):
(WebCore::GraphicsContext3D::readPixels):
(WebCore::GraphicsContext3D::deleteBuffer):

  • platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:

(WebCore::GraphicsContext3D::releaseShaderCompiler):
(WebCore::GraphicsContext3D::readPixelsAndConvertToBGRAIfNecessary):
(WebCore::GraphicsContext3D::validateAttributes):
(WebCore):
(WebCore::GraphicsContext3D::getExtensions):
(WebCore::GraphicsContext3D::systemAllowsMultisamplingOnATICards): Now a member function.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore):
(WebCore::GraphicsContext3D::releaseShaderCompiler):

12:37 PM Changeset in webkit [122249] by cevans@google.com
  • 1 edit in branches/chromium/1180/Source/WebCore/dom/NodeRareData.h

Merge 121103
BUG=134088
Review URL: https://chromiumcodereview.appspot.com/10703124

12:36 PM Changeset in webkit [122248] by cevans@google.com
  • 11 edits
    2 copies in branches/chromium/1180

Merge 121003
BUG=134088
Review URL: https://chromiumcodereview.appspot.com/10696159

12:21 PM Changeset in webkit [122247] by rafaelw@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Added resource-request-content-while-loading.html to flaky wkbug 83890.

  • platform/chromium/TestExpectations:
12:17 PM Changeset in webkit [122246] by cevans@google.com
  • 19 edits in branches/chromium/1180/Source/WebCore

Merge 120979
BUG=134088
Review URL: https://chromiumcodereview.appspot.com/10695128

12:15 PM Changeset in webkit [122245] by cevans@google.com
  • 5 edits in branches/chromium/1180/Source/WebCore/dom

Merge 120868
BUG=134088
Review URL: https://chromiumcodereview.appspot.com/10689138

12:14 PM Changeset in webkit [122244] by hyatt@apple.com
  • 7 edits in trunk

Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=90646
<rdar://problem/11648478> 3-pass pagination slows down pagination

Improve the logical top estimate function for margin collapsing to be more accurate. In particular
make the basic case of <body><p> or <body><h1> no longer be wrong. This estimate being incorrect
is not a big deal most of the time, but when paginating it is a very big deal, since you have to
relayout everything whenever your vertical placement is wrong.

Improving the estimation exposed a bug in an existing layout test. I had to clean up the buggy
code written for negative margin-related float detection and fix an invalid layout test to
actually be correct.

Reviewed by Simon Fraser.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::collapseMargins):
(WebCore::RenderBlock::marginBeforeEstimateForChild):
(WebCore):
(WebCore::RenderBlock::estimateLogicalTopPosition):
(WebCore::RenderBlock::marginValuesForChild):

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):

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

Fix invalid layout test exposed by my changes to logical top estimation.

Reviewed by Simon Fraser.

  • fast/block/float/previous-sibling-float-002-expected.html:
  • fast/block/float/previous-sibling-float-002.html:
12:10 PM Changeset in webkit [122243] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Count inspector memory used to traverse DOM in native memory snapshots.
https://bugs.webkit.org/show_bug.cgi?id=90456

Inspector may take significant amount of memory when traversing DOM structure.
Take it into account and report under inspector memory.

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-07-10
Reviewed by Pavel Feldman.

  • dom/MemoryInstrumentation.h:

(MemoryInstrumentation):
(WebCore::MemoryInstrumentation::calculateContainerSize):
(WebCore::MemoryInstrumentation::reportHashMap):
(WebCore::MemoryInstrumentation::reportHashSet):
(WebCore::MemoryInstrumentation::reportVector):

  • inspector/InspectorMemoryAgent.cpp:

(MemoryBlockName):
(WebCore):
(WebCore::domTreeInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

12:09 PM Changeset in webkit [122242] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1180

Merge 120617
BUG=133288
Review URL: https://chromiumcodereview.appspot.com/10690118

12:02 PM Changeset in webkit [122241] by cevans@google.com
  • 10 edits
    8 deletes in branches/chromium/1180

Merge 120639
BUG=132396
Review URL: https://chromiumcodereview.appspot.com/10696154

11:48 AM Changeset in webkit [122240] by rafaelw@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. tables/mozilla_expected_failures/other/empty_cells.html marked as flaky.

  • platform/chromium/TestExpectations:
11:39 AM Changeset in webkit [122239] by kareng@chromium.org
  • 7 edits
    3 copies in branches/chromium/1180

Merge 121722 - Position replaced elements on pixel bounds
https://bugs.webkit.org/show_bug.cgi?id=90354

Reviewed by Eric Seidel.

To avoid sizing and repaint issues we should layout replaced elements on
pixel bounds. We already ensure that replaced elements are sized in full
pixels and that they are painted on pixel bounds. By also ensuring that
they are placed on pixel bounds we avoid pixel having the size be
expanded by pixel snapping and repainting/invalidation rect issues when
scrolling.

Test: fast/repaint/repaint-during-scroll-with-zoom.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePositionedLogicalWidthReplaced):
(WebCore::RenderBox::computePositionedLogicalHeightReplaced):

TBR=eae@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10696152

11:35 AM Changeset in webkit [122238] by kareng@chromium.org
  • 17 edits
    2 copies in branches/chromium/1180

Merge 121599 - Allow non-borders to be adjusted to less than 1 when zoomed out
https://bugs.webkit.org/show_bug.cgi?id=90104

Reviewed by Eric Seidel.

Source/WebCore:

Change CSSPrimitiveValue::computeLengthDouble to allow values to be
adjusted to less than 1.0 when zoomed out. This avoids an off by one
error for floats with margins when zoomed out that can cause floats to
wrap and break pages.

The logic that prevents the value from being adjusted to less than 1 was
added to ensure that borders are still painted even when zoomed out.
By moving the logic to ApplyPropertyComputeLength::applyValue, which is
used for borders and outlines, that functionality is preserved.

Test: fast/sub-pixel/float-with-margin-in-container.html

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLengthDouble):

  • css/StyleBuilder.cpp:

(WebCore::ApplyPropertyComputeLength::applyValue):

LayoutTests:

Add test ensuring that floats with margins do not wrap in fixed sized
containers and update existing results as needed.

  • fast/css/zoom-background-repeat-x.html:
  • fast/sub-pixel/float-with-margin-in-container-expected.txt: Added.
  • fast/sub-pixel/float-with-margin-in-container.html: Added.
  • platform/chromium-linux/fast/reflections/reflection-with-zoom-expected.png:
  • platform/chromium-linux/fast/transforms/bounding-rect-zoom-expected.png:
  • platform/chromium-linux/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-linux/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
  • platform/chromium-mac/fast/transforms/bounding-rect-zoom-expected.txt:
  • platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
  • platform/chromium-win/fast/transforms/bounding-rect-zoom-expected.txt:
  • platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
  • platform/mac/fast/transforms/bounding-rect-zoom-expected.txt:
  • platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
  • platform/mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
  • platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:

TBR=eae@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10698133

11:27 AM Changeset in webkit [122237] by rafaelw@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. platform/chromium/inspector/styles/device-metrics-fit-window.html is timing out in debug and now marked as slow.

  • platform/chromium/TestExpectations:
11:15 AM Changeset in webkit [122236] by rafaelw@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. fast/js/dfg-cross-global-object-inline-array-literal.html is racey (and thus flaky).

10:33 AM Changeset in webkit [122235] by rafaelw@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Adding another flaky test to bug 90469 (storage tests).

  • platform/chromium/TestExpectations:
10:33 AM Changeset in webkit [122234] by ojan@chromium.org
  • 13 edits in trunk/Tools

Improve webkit-patch rebaseline to work for more cases
https://bugs.webkit.org/show_bug.cgi?id=90504

Reviewed by Adam Barth.

-Makes it work for the build.chromium.org bots.
-Lets you rebaseline all builders instead of just one.
-Lets you pass in the builders or tests to rebaseline.

  • Scripts/webkitpy/common/host.py:

(Host.buildbot_for_builder_name):

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

(Builder.init):
(Builder.latest_layout_test_results):
Provide a way to get to the LayoutTestResults of the latest build.
Most of the time we only need to get the latest one and the Chromium bots
only expose the full_results.json file for the latest build.

(Builder):
(Builder._fetch_file_from_results):
(Builder.fetch_layout_test_results):
Move these functions into Builder so that Builder and Build can both
fetch layout test results.

(Build.results_zip_url):
(Build.layout_test_results):

  • Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:

(BuilderTest.test_latest_layout_test_results):
(BuildTest.test_layout_test_results):

  • Scripts/webkitpy/common/system/user.py:

(User.prompt_with_multiple_lists):
Prompt with multiple sublists, but still have a global numbering.
This lets the build.chromium.org bots be clearly separated from the
build.webkit.org bots, which helps understand the builder names.

(User):
(User._wait_on_list_response):
(User.prompt_with_list):

  • Scripts/webkitpy/common/system/user_unittest.py:

(UserTest.test_prompt_with_multiple_lists):
(UserTest.test_prompt_with_multiple_lists.run_prompt_test):
(UserTest.test_prompt_with_multiple_lists.run_prompt_test.mock_raw_input):

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

(Port.is_chromium):
Provide a way to tell if a port is a Chromium port that doesn't involve string
manipulation on the port name or builder name.

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

(builder_path_from_name):
(all_builder_names):
Memoizing here is incorrect because the test override _exact_matches,
so these can return different values. In either case, I'm pretty sure these
are not remotely hot codepaths. I manually inspected all call sites and they're
all in high-level calls (e.g. execute calls for webkit-patch commands) and not
called in a loop.

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

(ChromiumPort.is_chromium):

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

(RebaselineTest._results_url):
(AbstractParallelRebaselineCommand.init):
(Rebaseline.init):
(Rebaseline):
(Rebaseline._builders_to_pull_from):
(Rebaseline._tests_to_update):
(Rebaseline.execute):

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

(test_rebaseline.mock_builders_to_pull_from):
(test_rebaseline):
(test_rebaseline_command_line_flags):
(test_rebaseline_multiple_builders):
(test_rebaseline_multiple_builders.mock_builders_to_pull_from):
(test_rebaseline_multiple_builders.mock_tests_to_update):
(test_rebaseline_multiple_builders_and_tests_command_line):

  • Scripts/webkitpy/tool/mocktool.py:

(MockTool.irc):
(MockTool):
(MockTool.buildbot_for_builder_name):

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

[GTK] Fix memory leaks by adopting allocation of GdkPixbuf
https://bugs.webkit.org/show_bug.cgi?id=90790

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-07-10
Reviewed by Carlos Garcia Campos.

Source/WebCore:

Fixed a memory leak in paintGdkPixbuf by adopting an allocation
of GdkPixbuf.

No new tests. No change in behavior.

  • platform/gtk/RenderThemeGtk.cpp:

(WebCore::paintGdkPixbuf):

Source/WebKit/gtk:

Fixed a memory leak in WebKitFaviconDatabase by adopting an
allocation of GdkPixbuf.

  • webkit/webkitfavicondatabase.cpp:

(getIconPixbufSynchronously):

10:03 AM Changeset in webkit [122232] by kpiascik@rim.com
  • 12 edits
    4 adds in trunk

Web Inspector: Geolocation override
https://bugs.webkit.org/show_bug.cgi?id=89365

Reviewed by Yong Li.

Source/WebCore:

Added a way to override the geoloation of a client using Web
Inspector.

New tests added.

  • LayoutTests/inspector/geolocation-success.html:
  • LayoutTests/inspector/getlocation-error.html:
  • Modules/geolocation/GeolocationController.cpp:

(WebCore::GeolocationController::GeolocationController): Now store and
save the Page in m_page.
(WebCore::GeolocationController::positionChanged): Check if position
is overriden in Web Inspector.

  • Modules/geolocation/GeolocationController.h:

(GeolocationController): Add member variable m_page for Page*.

  • inspector/Inspector.json: Add new methods for setting and clearing

the GeoloationPosition and GeolocationError objects in InspectorPageAgent.

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::checkGeolocationPositionOrErrorImpl):
Add methods to check whether GeolocationPosition or GeolocationError
are set in InspectorPageAgent.

  • inspector/InspectorInstrumentation.h:

(WebCore):
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::checkGeolocationPositionOrError):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::InspectorPageAgent): Initialize new
member variables of GeolocationPosition and GeolocationError.
(WebCore::InspectorPageAgent::setGeolocationData): Set Position and
Error data and call appropriate GeolocaitonController methods.
(WebCore):
(WebCore::InspectorPageAgent::clearGeolocationData):
(WebCore::InspectorPageAgent::sendGeolocationError):

  • inspector/InspectorPageAgent.h:

(WebCore::InspectorPageAgent::geolocationPosition): Getter for
GeolocationPosition.
(InspectorPageAgent):

  • inspector/front-end/Settings.js: Added new settings for

GeolocationPosition and GeolocationError

  • inspector/front-end/SettingsScreen.js: Added new control for

Geolocaiton.
(WebInspector.UserAgentSettingsTab):
(WebInspector.UserAgentSettingsTab.prototype._createDeviceMetricsElement):
(WebInspector.UserAgentSettingsTab.prototype._onGeolocationOverrideCheckboxClicked):
(WebInspector.UserAgentSettingsTab.prototype._applyGeolocationUserInput):
(WebInspector.UserAgentSettingsTab.prototype._setGeolocationPosition.set if):
(WebInspector.UserAgentSettingsTab.prototype._setGeolocationPosition):
(WebInspector.UserAgentSettingsTab.prototype._createGeolocationOverrideElement.createInput):
(WebInspector.UserAgentSettingsTab.prototype._createGeolocationOverrideElement):

  • inspector/front-end/UserAgentSupport.js: New GeolocationPosition

Object added along with setting helper methods. Added new setting
changed handlers for Position and Error.
(WebInspector.UserAgentSupport.GeolocationPosition):
(WebInspector.UserAgentSupport.GeolocationPosition.prototype.toSetting):
(WebInspector.UserAgentSupport.GeolocationPosition.parseSetting):
(WebInspector.UserAgentSupport.GeolocationPosition.parseUserInput):
(WebInspector.UserAgentSupport.prototype.get _onGeolocationErrorChanged):

LayoutTests:

Added new tests for Web Inspector overriding geolocation.

  • inspector/geolocation-error-expected.txt: Added.
  • inspector/geolocation-error.html: Added.
  • inspector/geolocation-success-expected.txt: Added.
  • inspector/geolocation-success.html: Added.
9:56 AM Changeset in webkit [122231] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

DelayNode test should cover relate attribute
https://bugs.webkit.org/show_bug.cgi?id=90876

Patch by Li Yin <li.yin@intel.com> on 2012-07-10
Reviewed by Chris Rogers.

Let the test cover attributes of DelayNode.

  • webaudio/delaynode-expected.txt:
  • webaudio/delaynode.html:
9:37 AM Changeset in webkit [122230] by leandrogracia@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed Chromium build fix for mac-release.

Fixing clang build after https://bugs.webkit.org/show_bug.cgi?id=90807

  • public/WebSurroundingText.h:

(WebKit):

9:23 AM Changeset in webkit [122229] by vsevik@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Refactor resource revisions before moving to UISourceCode.
https://bugs.webkit.org/show_bug.cgi?id=90855

Reviewed by Pavel Feldman.

Revisions are now persisted based on mainFrame.loaderId, not resource.loaderId which makes filtering out stale persisted revisions easier.
Restoring revisions from local storage is separated from filtering out stale persisted revisions.
Resource._clearRevisionHistory and Resource._restoreRevisions are not static anymore.
Renamed localStorage field for persisting revisions: "resource-history" -> "revision-history"

  • inspector/front-end/Resource.js:

(WebInspector.Resource):
(WebInspector.Resource.prototype.addRevision):
(WebInspector.Resource.prototype._restoreRevisionHistory):
(WebInspector.Resource.prototype._clearRevisionHistory):
(WebInspector.Resource.prototype.revertAndClearHistory.clearHistory):
(WebInspector.Resource.prototype.revertAndClearHistory):
(WebInspector.Revision):
(WebInspector.Revision._revisionHistoryRegistry):
(WebInspector.Revision._ensureStaleRevisionsFileteredOut.persist):
(WebInspector.Revision._ensureStaleRevisionsFileteredOut):
(WebInspector.Revision.prototype._persist):

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeModel.prototype._processCachedResources):
(WebInspector.ResourceTreeModel.prototype._addFramesRecursively):

  • inspector/front-end/RevisionHistoryView.js:
  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode.prototype._revisionAdded):

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

Editing: Reproducible crasher when pasting a 0x0 image into Mail
https://bugs.webkit.org/show_bug.cgi?id=90640
<rdar://problem/11141920>

Patch by Alice Cheng <alice_cheng@apple.com> on 2012-07-10
Reviewed by Brady Eidson.

Source/WebCore:

0x0 images don't get a resource representation in the WebArchive, so we need a null check

Test: TestWebKitAPI/Tests/mac/0.png

TestWebKitAPI/Tests/mac/WebViewCanPasteZeroPng.mm

  • platform/mac/PasteboardMac.mm:

(WebCore::documentFragmentWithImageResource):

Tools:

Test cases for the patch. 0x0 images don't get a resource representation in the WebArchive, so we need a null check.

  • TestWebKitAPI/Tests/mac/0.png: Added.
  • TestWebKitAPI/Tests/mac/WebViewCanPasteZeroPng.mm: Added.

(TestWebKitAPI):
(TestWebKitAPI::TEST):

9:11 AM Changeset in webkit [122227] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Make the Tab character 4 spaces width
https://bugs.webkit.org/show_bug.cgi?id=90172

Patch by Nikita Vasilyev <me@elv1s.ru> on 2012-07-10
Reviewed by Pavel Feldman.

Do it to match most code editors' behavior.

  • inspector/front-end/inspectorCommon.css:

(body):

9:09 AM Changeset in webkit [122226] by eric@webkit.org
  • 7 edits in trunk

REGRESSION (r122168): Layout Test http/tests/misc/script-defer.html is failing
https://bugs.webkit.org/show_bug.cgi?id=90845

Reviewed by Alexey Proskuryakov.

Source/WebCore:

I was a bit overzealous in removing bool returns. This one still makes sense.
This just reverts the wrong part of my previous change.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd):

  • html/parser/HTMLScriptRunner.cpp:

(WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing):

  • html/parser/HTMLScriptRunner.h:

(HTMLScriptRunner):

LayoutTests:

The test should no longer flake.

  • platform/chromium/TestExpectations:
  • platform/qt/Skipped:
9:01 AM Changeset in webkit [122225] by leandrogracia@chromium.org
  • 9 edits in trunk

WebSurroundingText layout tests should use the same code path as the rest of the feature.
https://bugs.webkit.org/show_bug.cgi?id=90807

Reviewed by Adam Barth.

Source/WebKit/chromium:

Replace the offset-based initialize method used only by LayoutTestController
with a point-based version to follow the same code path.

  • public/WebSurroundingText.h:

(WebKit):
(WebSurroundingText):

  • src/WebSurroundingText.cpp:

(WebKit::WebSurroundingText::initialize):

Tools:

Make the textSurroundingNode method take a pair of point coordinates
instead of a node offset.

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::textSurroundingNode):

  • DumpRenderTree/chromium/LayoutTestController.h:

(LayoutTestController):

LayoutTests:

Make the textSurroundingNode method take a pair of point coordinates
instead of a node offset.

  • platform/chromium/editing/surrounding-text/surrounding-text-expected.txt:
  • platform/chromium/editing/surrounding-text/surrounding-text.html:
8:51 AM Changeset in webkit [122224] by commit-queue@webkit.org
  • 4 edits
    4 adds in trunk

Input type=range issue with events not being raised when value set in js
https://bugs.webkit.org/show_bug.cgi?id=84674

Source/WebCore:

Fix dispatching of change and click events for the input slider.
Prior to the fix, change events were not fired if the new value
matched the value at last change notification based on expected
behavior for text fields. Clicks were not fired if the thumb
element was repositioned under the cursor on mouse down.

Patch by Kevin Ellis <kevers@chromium.org> on 2012-07-10
Reviewed by Kent Tamura.

Tests: fast/events/click-range-slider.html

fast/events/onchange-range-slider.html

  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::setPositionFromPoint):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMouseReleaseEvent):

LayoutTests:

Ensure that click and change events are properly triggered for range
sliders. Prior to the fix, change events were not fired if the new
value matched the value at last change notification based on expected
behavior for text fields. Clicks were not fired if the thumb element
was positioned under the cursor on mouse down.

Patch by Kevin Ellis <kevers@chromium.org> on 2012-07-10
Reviewed by Kent Tamura.

  • fast/events/click-range-slider-expected.txt: Added.
  • fast/events/click-range-slider.html: Added.
  • fast/events/onchange-range-slider-expected.txt: Added.
  • fast/events/onchange-range-slider.html: Added.
8:30 AM Changeset in webkit [122223] by Carlos Garcia Campos
  • 4 edits in trunk/Source/WebKit2

[GTK] Add API to clear the cache to WebKit2 GTK+
https://bugs.webkit.org/show_bug.cgi?id=90856

Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(webkit_web_context_clear_cache): Call
WKResourceCacheManagerClearCacheForAllOrigins() to clear all
resources currently cached.

  • UIProcess/API/gtk/WebKitWebContext.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
7:25 AM Changeset in webkit [122222] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening, adding a text expectation for the
fast/js/global-constructors.html test. The test is failing because
of the in-progress removal of vendor prefix from DOM MutationObservers.

  • platform/gtk/TestExpectations:
7:10 AM Changeset in webkit [122221] by Csaba Osztrogonác
  • 2 edits
    4 moves
    7 deletes in trunk/LayoutTests

[Qt] Unreviewed gardening, remove unnecessary expectations.

  • platform/qt-mac/fast/block/float/float-not-removed-from-next-sibling-expected.txt: Removed.
  • platform/qt-mac/fast/block/float/float-not-removed-from-next-sibling2-expected.txt: Removed.
  • platform/qt-mac/fast/block/float/float-not-removed-from-next-sibling3-expected.txt: Removed.
  • platform/qt-mac/fast/block/float/float-not-removed-from-next-sibling4-expected.txt: Removed.
  • platform/qt-mac/plugins/mouse-click-plugin-clears-selection-expected.txt: Removed.
  • platform/qt-mac/transforms/svg-vs-css-expected.txt: Removed.
  • platform/qt-win/Skipped:
  • platform/qt-win/fast/events/panScroll-click-hyperlink-expected.txt: Removed.
  • platform/qt/fast/css/first-line-text-decoration-expected.png: Renamed from LayoutTests/platform/qt-linux/fast/css/first-line-text-decoration-expected.png.
  • platform/qt/fast/css/first-line-text-decoration-expected.txt: Renamed from LayoutTests/platform/qt-linux/fast/css/first-line-text-decoration-expected.txt.
  • platform/qt/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Renamed from LayoutTests/platform/qt-linux/fast/css/first-line-text-decoration-inherited-from-parent-expected.png.
  • platform/qt/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt: Renamed from LayoutTests/platform/qt-linux/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt.
6:50 AM WebKitGTK/WebKit2Roadmap edited by Carlos Garcia Campos
(diff)
6:31 AM Changeset in webkit [122220] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r122207.
http://trac.webkit.org/changeset/122207
https://bugs.webkit.org/show_bug.cgi?id=90874

Broke the cr-windows bot (Requested by beverloo on #webkit).

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

  • DEPS:
6:22 AM Changeset in webkit [122219] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] REGRESSION(r122175): It broke the Windows build
https://bugs.webkit.org/show_bug.cgi?id=90850

Reviewed by Noam Rosenthal.

  • qmake/mkspecs/features/features.prf: Disable USE(3D_GRAPHICS) on Windows temporarily until proper fix.
6:21 AM Changeset in webkit [122218] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][ARM] Unreviewed gardening, skip failing/crashing tests to try to make the bot green.

  • platform/qt-arm/TestExpectations:
6:05 AM Changeset in webkit [122217] by Csaba Osztrogonác
  • 3 edits
    8 adds in trunk

[Qt][NRWT] Enable cascaded TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=89108

Patch by János Badics <János Badics> on 2012-07-10
Reviewed by Dirk Pranke.

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

(QtPort.expectations_files):

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

(QtPortTest._assert_expectations_files):
(QtPortTest.test_expectations_files):

6:05 AM WebKitEFLLayoutTest edited by ryuan.choi@samsung.com
Add information about how to run WebKitTestRunner for WebKit2/Efl. (diff)
5:23 AM Changeset in webkit [122216] by caseq@chromium.org
  • 7 edits in trunk/LayoutTests

Web Inspector: [Extensions API] simplify panel size check in extensions-panel.html
https://bugs.webkit.org/show_bug.cgi?id=90799

Reviewed by Vsevolod Vlasov.

  • use window argument in Panel.onShown() to check panel window size;
  • http/tests/inspector/resources/extension-panel.html:
  • inspector/extensions/extensions-panel-expected.txt:
  • inspector/extensions/extensions-panel.html:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/wincairo/Skipped:
5:10 AM Changeset in webkit [122215] by kseo@webkit.org
  • 6 edits in trunk/Source/WebCore

Don't destroy the decoded data of an image if WebKit is about to render the image.
https://bugs.webkit.org/show_bug.cgi?id=90721

Patch by Huang Dongsung <luxtella@company100.net> on 2012-07-10
Reviewed by Antti Koivisto.

When the cache capacity of the MemoryCache is exceeded, the decoded data of all
the CachedImages are destroyed. Even the images inside the viewport are
destroyed. However, if the images need to be rendered again due to scoll events
or animation, they must be decoded again. As an extreme case, if there is an
animation with an image when MemoryCache is almost full, the image must be
decoded every frame. This slows down animation and needlessly consumes CPU
cycles.

Therefore, it is better to not destory the decoded data of an image if the image
is inside the viewport because there is high chance that the image needs to be
rendered again soon. This patch reduces the unnecessary repetition of image decoding
on low memory, and also relieves the memory fragmentation because it avoids reallocation
of image frames.

In addition, there is another positive side effect. Currently,
CachedImageClient::willRenderImage() is used only to determine if GIF animation needs
to be paused or not in CachedImage::shouldPauseAnimation(). This patch makes
GIF animation outside the viewort be paused.

This is also a prerequisite for parallel image decoders. Because parallel image
decoders decode an image asynchronously, clients cannot render the image at the time
when the request is made. Clients can draw the image later after receiving image
decoding complete notification. However, there is a problem because MemoryCache can
destroy the decoded data before clients actually render the image. So parallel image decoders
must prevent the decoded data from being destroyed if the image will be rendered
soon.

This patch may consume a little more memory, but furtunately the peak memory usage
is almost the same.

No new tests - no new testable functionality.

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::likelyToBeUsedSoon):
(WebCore):
(WebCore::CachedImage::shouldPauseAnimation):

  • loader/cache/CachedImage.h:

(CachedImage):

  • loader/cache/CachedResource.h:

(CachedResource):
(WebCore::CachedResource::likelyToBeUsedSoon):

  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::pruneLiveResourcesToSize):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::willRenderImage):

5:06 AM Changeset in webkit [122214] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip a flakey test after r122168.
https://bugs.webkit.org/show_bug.cgi?id=90845.

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-07-10

  • platform/qt/Skipped:
5:02 AM Changeset in webkit [122213] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[EFL] WebKit DRT and WTR fail to build due to undefined reference to WTF::MD5::*
https://bugs.webkit.org/show_bug.cgi?id=90868

Unreviewed EFL build fix.

Correct CMake configuration to have EFL's DRT and WebKitTestRunner link
WTF library. This is needed to resolve undefined reference to WTF::MD5::*.

Patch by Christophe Dumez <Christophe Dumez> on 2012-07-10

  • DumpRenderTree/efl/CMakeLists.txt:
  • WebKitTestRunner/PlatformEfl.cmake:
4:19 AM Changeset in webkit [122212] by tkent@chromium.org
  • 4 edits in trunk

RTL calendar picker for <input type=date> is too narrow and clipped
https://bugs.webkit.org/show_bug.cgi?id=90864

Reviewed by Kentaro Hara.

.:

  • ManualTests/forms/calendar-picker.html:
  • Add isRTL:true for the arabic setting
  • Reset the iframe size when the setting is changed.

Source/WebCore:

Tests: ManualTests/forms/calendar-picker.html

  • Resources/calendarPicker.js:

(fixWindowSize):
Checks the left edge of elemenets in RTL.
(layout): Add dir=ltr for the manual test, which re-uses the document.

3:49 AM Changeset in webkit [122211] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WTF

Re-enable declspec(dl{import,export}) for MinGW when using EXPORT_MACROS
https://bugs.webkit.org/show_bug.cgi?id=90612

Patch by Jocelyn Turcotte <jocelyn.turcotte@nokia.com> on 2012-07-10
Reviewed by Csaba Osztrogonác.

MinGW was switched to use auto import/export of symbols on r44184.
From my understanding of the documentation, MinGW will not auto-export symbols
unless there are no explicit declspec(dlexport) in the DLL already.

The issues that originally made us rely on the auto-import feature of MinGW
should now be resolved with the EXPORT_MACROS work. This patch re-enables them.

It also removes the GCC check for internal symbols hiding as the visibility should
already be hidden by default for both MSVC and GCC on Windows anyway.

  • wtf/ExportMacros.h:
3:20 AM Changeset in webkit [122210] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

Unreviewed gardening after r122204.

  • fast/viewport/viewport-legacy-xhtmlmp-expected.txt:
3:19 AM Changeset in webkit [122209] by hayato@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening
Rebaseline.

  • platform/chromium-linux/http/tests/media/video-buffered-range-contains-currentTime-expected.png:
2:36 AM Changeset in webkit [122208] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r122166): It made 170 tests crash on 32 bit platforms
https://bugs.webkit.org/show_bug.cgi?id=90852

Patch by Filip Pizlo <fpizlo@apple.com> on 2012-07-10
Reviewed by Zoltan Herczeg.

If we can't use the range filter, we should still make sure that the
address is remotely sane, otherwise the hashtables will assert.

  • jit/JITStubRoutine.h:

(JSC::JITStubRoutine::passesFilter):

2:32 AM Changeset in webkit [122207] by jochen@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
2:18 AM Changeset in webkit [122206] by fpizlo@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

DFG recompilation heuristics should be based on count, not rate
https://bugs.webkit.org/show_bug.cgi?id=90146

Reviewed by Oliver Hunt.

Rolling r121511 back in after fixing the DFG's interpretation of op_div
profiling, with Gavin's rubber stamp.

This removes a bunch of code that was previously trying to prevent spurious
reoptimizations if a large enough majority of executions of a code block did
not result in OSR exit. It turns out that this code was purely harmful. This
patch removes all of that logic and replaces it with a dead-simple
heuristic: if you exit more than N times (where N is an exponential function
of the number of times the code block has already been recompiled) then we
will recompile.

This appears to be a broad ~1% win on many benchmarks large and small.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::couldTakeSpecialFastCase):
(CodeBlock):
(JSC::CodeBlock::osrExitCounter):
(JSC::CodeBlock::countOSRExit):
(JSC::CodeBlock::addressOfOSRExitCounter):
(JSC::CodeBlock::offsetOfOSRExitCounter):
(JSC::CodeBlock::adjustedExitCountThreshold):
(JSC::CodeBlock::exitCountThresholdForReoptimization):
(JSC::CodeBlock::exitCountThresholdForReoptimizationFromLoop):
(JSC::CodeBlock::shouldReoptimizeNow):
(JSC::CodeBlock::shouldReoptimizeFromLoopNow):

  • bytecode/ExecutionCounter.cpp:

(JSC::ExecutionCounter::setThreshold):

  • bytecode/ExecutionCounter.h:

(ExecutionCounter):
(JSC::ExecutionCounter::clippedThreshold):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::makeDivSafe):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileBody):

  • dfg/DFGOSRExit.cpp:

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

  • dfg/DFGOSRExitCompiler.cpp:

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

  • dfg/DFGOperations.cpp:
  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • runtime/Options.h:

(JSC):

1:46 AM Changeset in webkit [122205] by Csaba Osztrogonác
  • 17 edits
    4 deletes in trunk

Unreviewed, rolling out r122178.
http://trac.webkit.org/changeset/122178
https://bugs.webkit.org/show_bug.cgi?id=90857

browser tests, PrerenderBrowserTest.PrerenderFavicon and other
tests, started to fail (Requested by hayato on #webkit).

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

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

  • WebCore.exp.in:
  • dom/Document.cpp:

(WebCore::Document::iconURLs):
(WebCore::Document::addIconURL):
(WebCore::Document::setUseSecureKeyboardEntryWhenActive):

  • dom/Document.h:

(Document):

  • html/HTMLLinkElement.cpp:
  • html/HTMLLinkElement.h:

(HTMLLinkElement):

  • testing/Internals.cpp:
  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit2:

  • win/WebKit2.def:

LayoutTests:

  • fast/dom/icon-url-change-expected.txt: Removed.
  • fast/dom/icon-url-change.html: Removed.
  • fast/dom/icon-url-list-expected.txt: Removed.
  • fast/dom/icon-url-list.html: Removed.
  • fast/dom/icon-url-property-expected.txt:
  • fast/dom/icon-url-property.html:
  • platform/chromium/TestExpectations:
12:55 AM Changeset in webkit [122204] by abarth@webkit.org
  • 321 edits
    6 moves
    12 deletes in trunk

LayoutTestController.dumpConfigurationForViewport should move to Internals
https://bugs.webkit.org/show_bug.cgi?id=45652

Reviewed by Eric Seidel.

Source/WebCore:

This patch replaces LayoutTestController.dumpConfigurationForViewport
with Internals.configurationForViewport. The old
dumpConfigurationForViewport function just ended up calling WebCore
functions anyway, so there's no benefit in implementing the API in the
LayoutTestController.

As a result, these tests can now run on every port.

  • testing/Internals.cpp:

(WebCore::Internals::configurationForViewport):
(WebCore):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit/blackberry:

  • WebKitSupport/DumpRenderTreeSupport.cpp:
  • WebKitSupport/DumpRenderTreeSupport.h:

(DumpRenderTreeSupport):

Source/WebKit/efl:

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
  • WebCoreSupport/DumpRenderTreeSupportEfl.h:

Source/WebKit/gtk:

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

Tools:

Remove dumpConfigurationForViewport from LayoutTestController. This API
has been replaced by an API on Internals that does the same thing in a
port-agnostic way.

  • DumpRenderTree/LayoutTestController.cpp:

(LayoutTestController::staticFunctions):

  • DumpRenderTree/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
  • 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:

LayoutTests:

Update these tests to use the Internals API rather than the
LayoutTestController API. This changed the output format of the tests
slightly because the LayoutTestController API printed directly to
stdout whereas the new API just returns a string that we pipe to stdout
using alert.

This patch also cleans up some platform-specific results for these
tests that had drifted out of sync a bit. The patch also correctly
marks the legacy tests as failing on GTK instead of checking in bogus
expected results for them.

This patch unskips these tests on Chromium. Once this patch lands, I'll
go through an unskip them on the other ports as well.

  • fast/viewport/viewport-1-expected.txt:
  • fast/viewport/viewport-1.html:
  • fast/viewport/viewport-10-expected.txt:
  • fast/viewport/viewport-10.html:
  • fast/viewport/viewport-100-expected.txt:
  • fast/viewport/viewport-100.html:
  • fast/viewport/viewport-101-expected.txt:
  • fast/viewport/viewport-101.html:
  • fast/viewport/viewport-102-expected.txt:
  • fast/viewport/viewport-102.html:
  • fast/viewport/viewport-103-expected.txt:
  • fast/viewport/viewport-103.html:
  • fast/viewport/viewport-104-expected.txt:
  • fast/viewport/viewport-104.html:
  • fast/viewport/viewport-105-expected.txt:
  • fast/viewport/viewport-105.html:
  • fast/viewport/viewport-106-expected.txt:
  • fast/viewport/viewport-106.html:
  • fast/viewport/viewport-107-expected.txt:
  • fast/viewport/viewport-107.html:
  • fast/viewport/viewport-108-expected.txt:
  • fast/viewport/viewport-108.html:
  • fast/viewport/viewport-109-expected.txt:
  • fast/viewport/viewport-109.html:
  • fast/viewport/viewport-11-expected.txt:
  • fast/viewport/viewport-11.html:
  • fast/viewport/viewport-110-expected.txt:
  • fast/viewport/viewport-110.html:
  • fast/viewport/viewport-111-expected.txt:
  • fast/viewport/viewport-111.html:
  • fast/viewport/viewport-112-expected.txt:
  • fast/viewport/viewport-112.html:
  • fast/viewport/viewport-113-expected.txt:
  • fast/viewport/viewport-113.html:
  • fast/viewport/viewport-114-expected.txt:
  • fast/viewport/viewport-114.html:
  • fast/viewport/viewport-115-expected.txt:
  • fast/viewport/viewport-115.html:
  • fast/viewport/viewport-116-expected.txt:
  • fast/viewport/viewport-116.html:
  • fast/viewport/viewport-117-expected.txt:
  • fast/viewport/viewport-117.html:
  • fast/viewport/viewport-118-expected.txt:
  • fast/viewport/viewport-118.html:
  • fast/viewport/viewport-119-expected.txt:
  • fast/viewport/viewport-119.html:
  • fast/viewport/viewport-12-expected.txt:
  • fast/viewport/viewport-12.html:
  • fast/viewport/viewport-120-expected.txt:
  • fast/viewport/viewport-120.html:
  • fast/viewport/viewport-121-expected.txt:
  • fast/viewport/viewport-121.html:
  • fast/viewport/viewport-122-expected.txt:
  • fast/viewport/viewport-122.html:
  • fast/viewport/viewport-123-expected.txt:
  • fast/viewport/viewport-123.html:
  • fast/viewport/viewport-124-expected.txt:
  • fast/viewport/viewport-124.html:
  • fast/viewport/viewport-125-expected.txt:
  • fast/viewport/viewport-125.html:
  • fast/viewport/viewport-126-expected.txt: Renamed from LayoutTests/platform/gtk/fast/viewport/viewport-126-expected.txt.
  • fast/viewport/viewport-126.html:
  • fast/viewport/viewport-127-expected.txt: Renamed from LayoutTests/platform/gtk/fast/viewport/viewport-127-expected.txt.
  • fast/viewport/viewport-127.html:
  • fast/viewport/viewport-128-expected.txt:
  • fast/viewport/viewport-128.html:
  • fast/viewport/viewport-129-expected.txt:
  • fast/viewport/viewport-129.html:
  • fast/viewport/viewport-13-expected.txt:
  • fast/viewport/viewport-13.html:
  • fast/viewport/viewport-130-expected.txt:
  • fast/viewport/viewport-130.html:
  • fast/viewport/viewport-131-expected.txt:
  • fast/viewport/viewport-131.html:
  • fast/viewport/viewport-132-expected.txt:
  • fast/viewport/viewport-132.html:
  • fast/viewport/viewport-14-expected.txt:
  • fast/viewport/viewport-14.html:
  • fast/viewport/viewport-15-expected.txt:
  • fast/viewport/viewport-15.html:
  • fast/viewport/viewport-16-expected.txt:
  • fast/viewport/viewport-16.html:
  • fast/viewport/viewport-17-expected.txt:
  • fast/viewport/viewport-17.html:
  • fast/viewport/viewport-18-expected.txt:
  • fast/viewport/viewport-18.html:
  • fast/viewport/viewport-19-expected.txt:
  • fast/viewport/viewport-19.html:
  • fast/viewport/viewport-2-expected.txt:
  • fast/viewport/viewport-2.html:
  • fast/viewport/viewport-20-expected.txt:
  • fast/viewport/viewport-20.html:
  • fast/viewport/viewport-21-expected.txt:
  • fast/viewport/viewport-21.html:
  • fast/viewport/viewport-22-expected.txt:
  • fast/viewport/viewport-22.html:
  • fast/viewport/viewport-23-expected.txt:
  • fast/viewport/viewport-23.html:
  • fast/viewport/viewport-24-expected.txt:
  • fast/viewport/viewport-24.html:
  • fast/viewport/viewport-25-expected.txt:
  • fast/viewport/viewport-25.html:
  • fast/viewport/viewport-26-expected.txt:
  • fast/viewport/viewport-26.html:
  • fast/viewport/viewport-27-expected.txt:
  • fast/viewport/viewport-27.html:
  • fast/viewport/viewport-28-expected.txt:
  • fast/viewport/viewport-28.html:
  • fast/viewport/viewport-29-expected.txt:
  • fast/viewport/viewport-29.html:
  • fast/viewport/viewport-3-expected.txt:
  • fast/viewport/viewport-3.html:
  • fast/viewport/viewport-30-expected.txt:
  • fast/viewport/viewport-30.html:
  • fast/viewport/viewport-31-expected.txt:
  • fast/viewport/viewport-31.html:
  • fast/viewport/viewport-32-expected.txt:
  • fast/viewport/viewport-32.html:
  • fast/viewport/viewport-33-expected.txt:
  • fast/viewport/viewport-33.html:
  • fast/viewport/viewport-34-expected.txt:
  • fast/viewport/viewport-34.html:
  • fast/viewport/viewport-35-expected.txt:
  • fast/viewport/viewport-35.html:
  • fast/viewport/viewport-36-expected.txt:
  • fast/viewport/viewport-36.html:
  • fast/viewport/viewport-37-expected.txt:
  • fast/viewport/viewport-37.html:
  • fast/viewport/viewport-38-expected.txt:
  • fast/viewport/viewport-38.html:
  • fast/viewport/viewport-39-expected.txt:
  • fast/viewport/viewport-39.html:
  • fast/viewport/viewport-4-expected.txt:
  • fast/viewport/viewport-4.html:
  • fast/viewport/viewport-40-expected.txt:
  • fast/viewport/viewport-40.html:
  • fast/viewport/viewport-41-expected.txt:
  • fast/viewport/viewport-41.html:
  • fast/viewport/viewport-42-expected.txt:
  • fast/viewport/viewport-42.html:
  • fast/viewport/viewport-43-expected.txt:
  • fast/viewport/viewport-43.html:
  • fast/viewport/viewport-44-expected.txt:
  • fast/viewport/viewport-44.html:
  • fast/viewport/viewport-45-expected.txt:
  • fast/viewport/viewport-45.html:
  • fast/viewport/viewport-46-expected.txt:
  • fast/viewport/viewport-46.html:
  • fast/viewport/viewport-47-expected.txt:
  • fast/viewport/viewport-47.html:
  • fast/viewport/viewport-48-expected.txt:
  • fast/viewport/viewport-48.html:
  • fast/viewport/viewport-49-expected.txt:
  • fast/viewport/viewport-49.html:
  • fast/viewport/viewport-5-expected.txt:
  • fast/viewport/viewport-5.html:
  • fast/viewport/viewport-50-expected.txt:
  • fast/viewport/viewport-50.html:
  • fast/viewport/viewport-51-expected.txt:
  • fast/viewport/viewport-51.html:
  • fast/viewport/viewport-52-expected.txt:
  • fast/viewport/viewport-52.html:
  • fast/viewport/viewport-53-expected.txt:
  • fast/viewport/viewport-53.html:
  • fast/viewport/viewport-54-expected.txt:
  • fast/viewport/viewport-54.html:
  • fast/viewport/viewport-55-expected.txt:
  • fast/viewport/viewport-55.html:
  • fast/viewport/viewport-56-expected.txt:
  • fast/viewport/viewport-56.html:
  • fast/viewport/viewport-57-expected.txt:
  • fast/viewport/viewport-57.html:
  • fast/viewport/viewport-58-expected.txt:
  • fast/viewport/viewport-58.html:
  • fast/viewport/viewport-59-expected.txt:
  • fast/viewport/viewport-59.html:
  • fast/viewport/viewport-6-expected.txt:
  • fast/viewport/viewport-6.html:
  • fast/viewport/viewport-60-expected.txt:
  • fast/viewport/viewport-60.html:
  • fast/viewport/viewport-61-expected.txt:
  • fast/viewport/viewport-61.html:
  • fast/viewport/viewport-62-expected.txt:
  • fast/viewport/viewport-62.html:
  • fast/viewport/viewport-63-expected.txt:
  • fast/viewport/viewport-63.html:
  • fast/viewport/viewport-64-expected.txt:
  • fast/viewport/viewport-64.html:
  • fast/viewport/viewport-65-expected.txt: Renamed from LayoutTests/platform/gtk/fast/viewport/viewport-65-expected.txt.
  • fast/viewport/viewport-65.html:
  • fast/viewport/viewport-66-expected.txt:
  • fast/viewport/viewport-66.html:
  • fast/viewport/viewport-67-expected.txt:
  • fast/viewport/viewport-67.html:
  • fast/viewport/viewport-68-expected.txt:
  • fast/viewport/viewport-68.html:
  • fast/viewport/viewport-69-expected.txt:
  • fast/viewport/viewport-69.html:
  • fast/viewport/viewport-7-expected.txt:
  • fast/viewport/viewport-7.html:
  • fast/viewport/viewport-70-expected.txt:
  • fast/viewport/viewport-70.html:
  • fast/viewport/viewport-71-expected.txt:
  • fast/viewport/viewport-71.html:
  • fast/viewport/viewport-72-expected.txt:
  • fast/viewport/viewport-72.html:
  • fast/viewport/viewport-73-expected.txt:
  • fast/viewport/viewport-73.html:
  • fast/viewport/viewport-74-expected.txt:
  • fast/viewport/viewport-74.html:
  • fast/viewport/viewport-75-expected.txt:
  • fast/viewport/viewport-75.html:
  • fast/viewport/viewport-76-expected.txt:
  • fast/viewport/viewport-76.html:
  • fast/viewport/viewport-77-expected.txt:
  • fast/viewport/viewport-77.html:
  • fast/viewport/viewport-78-expected.txt:
  • fast/viewport/viewport-78.html:
  • fast/viewport/viewport-79-expected.txt:
  • fast/viewport/viewport-79.html:
  • fast/viewport/viewport-8-expected.txt:
  • fast/viewport/viewport-8.html:
  • fast/viewport/viewport-80-expected.txt:
  • fast/viewport/viewport-80.html:
  • fast/viewport/viewport-81-expected.txt:
  • fast/viewport/viewport-81.html:
  • fast/viewport/viewport-82-expected.txt: Renamed from LayoutTests/platform/gtk/fast/viewport/viewport-82-expected.txt.
  • fast/viewport/viewport-82.html:
  • fast/viewport/viewport-83-expected.txt:
  • fast/viewport/viewport-83.html:
  • fast/viewport/viewport-84-expected.txt: Renamed from LayoutTests/platform/efl/fast/viewport/viewport-87-expected.txt.
  • fast/viewport/viewport-84.html:
  • fast/viewport/viewport-85-expected.txt:
  • fast/viewport/viewport-85.html:
  • fast/viewport/viewport-86-expected.txt:
  • fast/viewport/viewport-86.html:
  • fast/viewport/viewport-87-expected.txt: Renamed from LayoutTests/platform/gtk/fast/viewport/viewport-87-expected.txt.
  • fast/viewport/viewport-87.html:
  • fast/viewport/viewport-88-expected.txt:
  • fast/viewport/viewport-88.html:
  • fast/viewport/viewport-9-expected.txt:
  • fast/viewport/viewport-9.html:
  • fast/viewport/viewport-90-expected.txt:
  • fast/viewport/viewport-90.html:
  • fast/viewport/viewport-91-expected.txt:
  • fast/viewport/viewport-91.html:
  • fast/viewport/viewport-legacy-handheldfriendly-expected.txt:
  • fast/viewport/viewport-legacy-handheldfriendly.html:
  • fast/viewport/viewport-legacy-mobileoptimized-2-expected.txt:
  • fast/viewport/viewport-legacy-mobileoptimized-2.html:
  • fast/viewport/viewport-legacy-mobileoptimized-3-expected.txt:
  • fast/viewport/viewport-legacy-mobileoptimized-3.html:
  • fast/viewport/viewport-legacy-mobileoptimized-expected.txt:
  • fast/viewport/viewport-legacy-mobileoptimized.html:
  • fast/viewport/viewport-legacy-ordering-1-expected.txt:
  • fast/viewport/viewport-legacy-ordering-1.html:
  • fast/viewport/viewport-legacy-ordering-2-expected.txt:
  • fast/viewport/viewport-legacy-ordering-2.html:
  • fast/viewport/viewport-legacy-ordering-3-expected.txt:
  • fast/viewport/viewport-legacy-ordering-3.html:
  • fast/viewport/viewport-legacy-ordering-4-expected.txt:
  • fast/viewport/viewport-legacy-ordering-4.html:
  • fast/viewport/viewport-legacy-ordering-5-expected.txt:
  • fast/viewport/viewport-legacy-ordering-5.html:
  • fast/viewport/viewport-legacy-ordering-6-expected.txt:
  • fast/viewport/viewport-legacy-ordering-6.html:
  • fast/viewport/viewport-legacy-ordering-7-expected.txt:
  • fast/viewport/viewport-legacy-ordering-7.html:
  • fast/viewport/viewport-legacy-ordering-8-expected.txt:
  • fast/viewport/viewport-legacy-ordering-8.html:
  • fast/viewport/viewport-legacy-ordering-9-expected.txt:
  • fast/viewport/viewport-legacy-ordering-9.html:
  • fast/viewport/viewport-legacy-xhtmlmp-misplaced-doctype-expected.txt:
  • fast/viewport/viewport-legacy-xhtmlmp-misplaced-doctype.html:
  • fast/viewport/viewport-legacy-xhtmlmp-ordering-expected.txt:
  • fast/viewport/viewport-legacy-xhtmlmp-ordering.html:
  • fast/viewport/viewport-legacy-xhtmlmp.html:
  • fast/viewport/viewport-warnings-1-expected.txt:
  • fast/viewport/viewport-warnings-1.html:
  • fast/viewport/viewport-warnings-2-expected.txt:
  • fast/viewport/viewport-warnings-2.html:
  • fast/viewport/viewport-warnings-3-expected.txt:
  • fast/viewport/viewport-warnings-3.html:
  • fast/viewport/viewport-warnings-4-expected.txt:
  • fast/viewport/viewport-warnings-4.html:
  • fast/viewport/viewport-warnings-5-expected.txt:
  • fast/viewport/viewport-warnings-5.html:
  • fast/viewport/viewport-warnings-6-expected.txt:
  • fast/viewport/viewport-warnings-6.html:
  • platform/chromium/TestExpectations:
  • platform/efl/fast/viewport/viewport-126-expected.txt: Removed.
  • platform/efl/fast/viewport/viewport-127-expected.txt: Removed.
  • platform/efl/fast/viewport/viewport-65-expected.txt: Removed.
  • platform/efl/fast/viewport/viewport-82-expected.txt: Removed.
  • platform/efl/fast/viewport/viewport-84-expected.txt: Removed.
  • platform/gtk/TestExpectations:
  • platform/gtk/fast/viewport/viewport-84-expected.txt: Removed.
  • platform/gtk/fast/viewport/viewport-legacy-handheldfriendly-expected.txt: Removed.
  • platform/gtk/fast/viewport/viewport-legacy-mobileoptimized-2-expected.txt: Removed.
  • platform/gtk/fast/viewport/viewport-legacy-mobileoptimized-3-expected.txt: Removed.
  • platform/gtk/fast/viewport/viewport-legacy-mobileoptimized-expected.txt: Removed.
  • platform/gtk/fast/viewport/viewport-legacy-ordering-5-expected.txt: Removed.
  • platform/gtk/fast/viewport/viewport-legacy-ordering-6-expected.txt: Removed.
12:49 AM Changeset in webkit [122203] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Skipped a new failing test, because of a missing feature
(testRunner.setStorageDatabaseIdleInterval()).

Patch by Szilard Ledan <Szilárd LEDÁN> on 2012-07-10
Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
12:43 AM Changeset in webkit [122202] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix GTK+ build after r122175.

  • platform/graphics/texmap/TextureMapperLayer.cpp: Include

CString.h when using cairo.

12:38 AM Changeset in webkit [122201] by yosin@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium-Mac] Form related layout tests cause timeout
https://bugs.webkit.org/show_bug.cgi?id=90851

Reviewed by Kent Tamura.

This patch changed to pass a valid argument to LocaleMac
constructor.

No new tests. No more timeout in tests listed in the bug.

  • platform/text/mac/LocaleMac.mm:

(WebCore::LocaleMac::currentLocale): Changed to pass local identifier string
instead of NSLocale object.

12:31 AM Changeset in webkit [122200] by pfeldman@chromium.org
  • 1 edit in branches/chromium/1180/Source/WebCore/inspector/front-end/NetworkPanel.js

Merge 121859 - Web Inspector: fix search on the network panel.
https://bugs.webkit.org/show_bug.cgi?id=90557

Reviewed by Vsevolod Vlasov.

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkLogView.prototype._highlightNthMatchedRequest):

TBR=pfeldman@chromium.org
BUG=136019
Review URL: https://chromiumcodereview.appspot.com/10689130

12:31 AM Changeset in webkit [122199] by abarth@webkit.org
  • 15 edits
    1 delete in trunk

WebSocket: Remove hixie76 protocol implementation
https://bugs.webkit.org/show_bug.cgi?id=88620

Patch by Yuta Kitamura <yutak@chromium.org> on 2012-07-10
Reviewed by Adam Barth.

Source/WebCore:

This change removes code that implements the old hixie-76 WebSocket protocol which
isn't used anymore.

No new tests are added, because the code using the current protocol should not be
affected. Tests for hixie-76 protocol are skipped (these tests will be removed
eventually).

  • Modules/websockets/ThreadableWebSocketChannel.h:
  • Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:

(WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
(WebCore::ThreadableWebSocketChannelClientWrapper::didCreateWebSocketChannel):

  • Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:

(ThreadableWebSocketChannelClientWrapper):

  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::WebSocket):
(WebCore::WebSocket::connect):
(WebCore::WebSocket::send):
(WebCore::WebSocket::protocol):
(WebCore::WebSocket::extensions):
(WebCore::WebSocket::binaryType):
(WebCore::WebSocket::setBinaryType):
(WebCore::WebSocket::didReceiveMessageError):
(WebCore::WebSocket::didClose):
(WebCore::WebSocket::getFramingOverhead):

  • Modules/websockets/WebSocket.h:
  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::WebSocketChannel):
(WebCore::WebSocketChannel::connect):
(WebCore::WebSocketChannel::send):
(WebCore::WebSocketChannel::fail):
(WebCore::WebSocketChannel::didCloseSocketStream):
(WebCore::WebSocketChannel::processBuffer):
(WebCore::WebSocketChannel::startClosingHandshake):
(WebCore::WebSocketChannel::enqueueTextFrame):
(WebCore::WebSocketChannel::enqueueRawFrame):
(WebCore::WebSocketChannel::enqueueBlobFrame):
(WebCore::WebSocketChannel::processOutgoingFrameQueue):
(WebCore::WebSocketChannel::abortOutgoingFrameQueue):

  • Modules/websockets/WebSocketChannel.h:

(WebSocketChannel):

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::WebSocketHandshake::WebSocketHandshake):
(WebCore::WebSocketHandshake::clientHandshakeMessage):
(WebCore::WebSocketHandshake::clientHandshakeRequest):
(WebCore::WebSocketHandshake::readServerHandshake):
(WebCore::WebSocketHandshake::checkResponseHeaders):

  • Modules/websockets/WebSocketHandshake.h:
  • Modules/websockets/WorkerThreadableWebSocketChannel.cpp:

(WebCore::WorkerThreadableWebSocketChannel::WorkerContextDidInitializeTask::create):
(WebCore::WorkerThreadableWebSocketChannel::WorkerContextDidInitializeTask::WorkerContextDidInitializeTask):
(WorkerThreadableWebSocketChannel::WorkerContextDidInitializeTask):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):

  • Modules/websockets/WorkerThreadableWebSocketChannel.h:

(WorkerThreadableWebSocketChannel):
(Peer):
(Bridge):

LayoutTests:

Skip tests under hixie76 directory in all ports, because hixie-76 protocol support is
being dropped. These tests will be removed later.

  • platform/chromium/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/Skipped:
  • platform/wk2/Skipped:
12:08 AM Changeset in webkit [122198] by barraclough@apple.com
  • 2 edits in trunk/Source/WebCore

Threadsafety issues in WebScriptObject
https://bugs.webkit.org/show_bug.cgi?id=90849

Reviewed by Filip Pizlo.

WebScriptObject maintains a NSMap of wrapper objects. A race condition exists
between a wrapper being retrieved from the map, and being released - if the
final release on an object is called between a call to getJSWrapper and the
subsequent retain, we may end up with a stale object reference.

We can make this safe by hoisting the removal from the map from delloc up into
release (if the retainCount is 1), and locking release against retrieval from
the map. Since release may be called from another thread, and NSMap is not
threadsafe, we'd better lock around all access to the map (this fix already
necessitates get & remove to be locked, so this just adds 'add', too).

  • bindings/objc/WebScriptObject.mm:

(WebCore::createJSWrapper):

  • lock around getJSWrapper, retain.

(-[WebScriptObject _setImp:originRootObject:rootObject:]):

  • lock around addJSWrapper.

(-[WebScriptObject release]):

  • Added; removeJSWrapper for last release, lock & synchronized vs. getJSWrapper.

(-[WebScriptObject dealloc]):

  • removeJSWrapper call hoisted into release.
Note: See TracTimeline for information about the timeline view.