Timeline



Dec 15, 2012:

8:41 PM Changeset in webkit [137834] by vollick@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] More expectations updates for composited scrolling.

Unreviewed change. Updating expectations.

Added expectations for a remaining test that needs a new baseline.

  • platform/chromium/TestExpectations:
8:03 PM Changeset in webkit [137833] by vollick@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] More expectations updates for composited scrolling.

Unreviewed change. Updating expectations.

Some of the Failures noted in the last change were actually
ImageOnlyFailures, and some tests are now passing - these are
corrected in this patch.

  • platform/chromium/TestExpectations:
7:11 PM Changeset in webkit [137832] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Another build fix.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createDownloadProxy):

6:54 PM Changeset in webkit [137831] by aestes@apple.com
  • 11 edits in trunk/Source/WebKit2

[WebKit2] Have CustomProtocolManager and CustomProtocolManagerProxy store Connections for messaging
https://bugs.webkit.org/show_bug.cgi?id=105124

Reviewed by Anders Carlsson.

Remove CustomProtocolManagerProxy's assumption that all messages go to
a web process. Have it take a ChildProcessProxy instead and extract its
connection.

Similarly, remove CustomProtocolManager's assumption that all messages
go through a shared WebProcess. Initialize the shared CustomProtocolManager
with a Connection object instead.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess): Initialize the
shared CustomProtocolManager with the NetworkProcess's connection to
the UI process.

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:

(WebKit::CustomProtocolManager::connection): Assert m_connection is
non-0 and return it.

  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

(+[WKCustomProtocol canInitWithRequest:]): Remove an unnecessary
namespace.
(-[WKCustomProtocol initWithRequest:cachedResponse:client:]): Ditto.
(-[WKCustomProtocol startLoading]): Send a message on the
CustomProtocolManager's connection rather than assuming there is a
shared WebProcess in our address space.
(-[WKCustomProtocol stopLoading]): Ditto.
(WebKit::CustomProtocolManager::initialize): Initialize the shared
CustomProtocolManager with a Connection and register our custom
protocol handler with NSURLProtocol.

  • UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:

(WebKit):
(CustomProtocolManagerProxy): Take a ChildProcessProxy* rather than a
WebProcessProxy*.

  • UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:

(WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy): Ditto.
(WebKit::CustomProtocolManagerProxy::startLoading): Ditto.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::NetworkProcessProxy): Instantiate a
CustomProtocolManagerProxy for the network process.
(WebKit::NetworkProcessProxy::didReceiveMessage): Route messages of
class MessageClassCustomProtocolManagerProxy to the
CustomProtocolManagerProxy.

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveMessage): Assert that we aren't
using the network process since we've received a message from a
web process's CustomProtocolManager.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess): Break CustomProtocolManager
initialization out into a helper function.
(WebKit::WebProcess::initializeCustomProtocolManager): Initialize our
CustomProtocolManager.

  • WebProcess/WebProcess.h:
6:47 PM Changeset in webkit [137830] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Happy little Qt build fix.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::download):

6:41 PM Changeset in webkit [137829] by vollick@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Update test expectations now that we're opting into composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=105123

Unreviewed change. Updating expectations.

Added expectations for tests that need updated baselines now that
we're opting into composited scrolling.

  • platform/chromium/TestExpectations:
6:07 PM Changeset in webkit [137828] by vollick@chromium.org
  • 12 edits
    2 adds in trunk

Source/WebCore: [chromium] Automatically use composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=94743

Reviewed by Adrienne Walker.

We currently use the composited scrolling facilities provided by
wkb.ug/91117 if the overflow scroll block element is styled with
-webkit-overflow-scrolling: touch. Ideally, we could automatically
opt into composited scrolling if it is safe to do so. This can affect
antialiasing, so it is important that automatically opting in is only
enabled via a setting.

The way I determine if it is safe is by checking that z-ordering will
not be affected if the overflow scrollable element were promoted to a
stacking context (details below), and that clipping our scrolling
descendants will not affect rendering.

To check the first condition (that z-ordering will not be affected).
I ensure that the candidate element and all its descendants appear as a
contiguous block in the candidate's stacking context. That is, if no
other elements are 'between' any of the candidates descendants when we
sort in paint order, then we're safe. This is overly conservative,
however. We could, in future, only consider stacking problems between
elements that actually overlap.

To ensure that clipping will not cause a rendering change, I ensure
that the layer has no out of flow positioned descendant whose
containing block is not also a descendant of ours.

Test: compositing/overflow/automatically-opt-into-compositing-scrolling.html

(WebCore):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::acceleratedCompositingForOverflowScrollEnabled):
(WebCore):
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrder):
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrderRecursive):
(WebCore::RenderLayer::positionNewlyCreatedOverflowControls):
(WebCore::RenderLayer::canSafelyEstablishAStackingContext):

Returns true if the RenderLayer could become a stacking context without
affecting the stacking order.

(WebCore::RenderLayer::updateDescendantDependentFlags):

We now need to keep track of out of flow positioned descendants.

(WebCore::RenderLayer::addChild):
(WebCore::RenderLayer::removeChild):
(WebCore::RenderLayer::usesCompositedScrolling):

Returns true if the layer actually is using composited scrolling.
This function may return false, even when needsCompositedScrolling
returns true.

(WebCore::RenderLayer::needsCompositedScrolling):

This function returns true if we would like to use composited
scrolling and it is safe to turn it on.

(WebCore::RenderLayer::updateNeedsCompositedScrolling):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::dirtyZOrderLists):
(WebCore::RenderLayer::dirtyNormalFlowList):

Since these could affect opting into composited scrolling, we must
request that the RenderLayerCompositor reevaluate compositing.

(WebCore::RenderLayer::updateLayerListsIfNeeded):

We call updateCanSafelyEstablishStackingContext here, if necessary.

(WebCore::RenderLayer::shouldBeNormalFlowOnly):
(WebCore::RenderLayer::shouldBeSelfPaintingLayer):

usesCompositedScrolling -> needsCompositedScrolling

(WebCore::RenderLayer::setAncestorChainHasOutOfFlowPositionedDescendant):
(WebCore::RenderLayer::dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus):
(WebCore::RenderLayer::updateOutOfFlowPositioned):

Dirties and sets the out of flow positioned descendant state.

(WebCore::RenderLayer::styleChanged):

  • rendering/RenderLayer.h:

(RenderLayer):
(WebCore::RenderLayer::hasOutOfFlowPositionedDescendant):

  • rendering/RenderLayerBacking.cpp:

(WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::hasUnpositionedOverflowControlsLayers):
(WebCore):

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::requiresCompositingForOverflowScrolling):

  • rendering/RenderLayerCompositor.h:

(WebCore::RenderLayerCompositor::setShouldReevaluateCompositingAfterLayout):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::setEnableCompositingForOverflowScroll):

Allows enabling the setting in layout tests.

(WebCore):

  • testing/InternalSettings.h:

(InternalSettings):

  • testing/InternalSettings.idl:

LayoutTests: Automatically use composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=94743

Reviewed by Adrienne Walker.

Tests various configurations of elements to ensure that we only automatically opt into
composited scrolling when it is safe to do so.

  • compositing/overflow/automatically-opt-into-composited-scrolling-expected.txt: Added.
  • compositing/overflow/automatically-opt-into-composited-scrolling.html: Added.
  • platform/chromium/TestExpectations: The test platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style.html is failing due to wkb.ug/103156
6:01 PM Changeset in webkit [137827] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

Unreviewed. Fix make distcheck.

  • bindings/gobject/GNUmakefile.am: Do not dist generated DOM

bindings headers.

  • platform/ScrollAnimatorNone.cpp: Include PlatformGestureEvent.h

only if gesture events are enabled.

5:49 PM Changeset in webkit [137826] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix.

  • platform/network/FormData.cpp: (WebCore::encodeElement): (WebCore::decodeElement): (WebCore::FormData::encode): (WebCore::FormData::decode): Disambiguated encode/decode functions. I'm not quite sure why the compiler was confused, but distinct names should make the code more readable anyway.
5:31 PM Changeset in webkit [137825] by ap@apple.com
  • 8 edits in trunk/Source

<rdar://problem/12886312> Cannot upload patches to Bugzilla (<input type=file> doesn't work)
https://bugs.webkit.org/show_bug.cgi?id=105120

Reviewed by Sam Weinig.

Serialize HTTP body. ResourceRequest serialization cannot (and shouldn't) know about
body streams, as used with files.

  • Shared/Network/NetworkResourceLoadParameters.cpp: (WebKit::NetworkResourceLoadParameters::encode): (WebKit::NetworkResourceLoadParameters::decode):
  • Shared/WebCoreArgumentCoders.cpp: (CoreIPC::::encode):
5:26 PM Changeset in webkit [137824] by andersca@apple.com
  • 14 edits in trunk/Source/WebKit2

Handle downloads in the network process
https://bugs.webkit.org/show_bug.cgi?id=105117

Reviewed by Sam Weinig.

Start using the download manager in the network process.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::startDownload):
Call through to the download manager.

  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:

Add StartDownload message.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::downloadManager):
Add "singleton" download manager.

(WebKit::NetworkProcess::didCreateDownload):
(WebKit::NetworkProcess::didDestroyDownload):
(WebKit::NetworkProcess::downloadProxyConnection):
Implement DownloadManager::Client.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didReceiveMessage):
(WebKit::NetworkProcessProxy::didReceiveSyncMessage):
Call through to the message receiver map.

  • WebProcess/Downloads/Download.cpp:
  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::downloadProxyConnection):

  • WebProcess/Downloads/DownloadManager.h:

Rename connection to downloadProxyConnection.

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::startDownload):
When using the network process, send a message to it with the request that needs to be downloaded.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::downloadProxyConnection):
Return the connection to the UI process.

5:15 PM Changeset in webkit [137823] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

NSURLCache should be disabled in the WebProcess when using the NetworkProcess
<rdar://problem/12872266>
https://bugs.webkit.org/show_bug.cgi?id=105119

Reviewed by Alexey Proskuryakov.

Set the size of the NSURLCache to 0 (both disk and memory) in the WebProcess when using
the NetworkProcess.

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformSetCacheModel):
(WebKit::WebProcess::platformInitializeWebProcess):

4:42 PM Changeset in webkit [137822] by aestes@apple.com
  • 4 edits in trunk/Source/WebKit2

[WebKit2] Register the custom protocol handler in the network process if it exists
https://bugs.webkit.org/show_bug.cgi?id=105118

Reviewed by Anders Carlsson.

Register our custom protocol handler with NSURLProtocol when starting
up the network process; do not register the custom protocol handler in
web processes if a network process is being used.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess):

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

4:22 PM Changeset in webkit [137821] by weinig@apple.com
  • 12 edits in trunk/Source/WebKit2

The network process should use the correct NSURLCache location and set its size correctly for the CacheModel
<rdar://problem/12848505>
https://bugs.webkit.org/show_bug.cgi?id=105115

Reviewed by Anders Carlsson.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::initializeNetworkProcess):
(WebKit::NetworkProcess::setCacheModel):

  • NetworkProcess/NetworkProcess.h:

(NetworkProcess):

  • NetworkProcess/mac/NetworkProcessMac.mm:

(WebKit::NetworkProcess::platformInitialize):
(WebKit::memorySize):
(WebKit::volumeFreeSize):
(WebKit::NetworkProcess::platformSetCacheModel):
Copy code from the WebProcess to set up the NSURLCache correctly (location and size).
We should eventually move the calculation of this to the WebContext so it can be done
once.

  • Shared/Network/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):

  • Shared/Network/NetworkProcessCreationParameters.h:

(NetworkProcessCreationParameters):
Add the necessary creation parameters to set up the cache.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didFinishLaunching):

  • UIProcess/Network/NetworkProcessProxy.h:

(NetworkProcessProxy):

  • UIProcess/Network/mac/NetworkProcessProxyMac.mm:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::ensureNetworkProcess):
(WebKit::WebContext::setCacheModel):

  • UIProcess/WebContext.h:

(WebKit):
(WebContext):

  • UIProcess/mac/WebContextMac.mm:

(WebKit):
(WebKit::WebContext::platformInitializeNetworkProcess):
Move initializing the NetworkProcess to just after creating (matching the WebProcess),
rather than waiting for it finish loading before sending the creation parameters.
Additionally, this moves the setting up of the creation parameters to the WebContext,
as that is where all the interesting state resides (and also matches the WebProcess).

4:18 PM Changeset in webkit [137820] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

Clean up the previous build fix; access m_networkProcess directly.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::registerSchemeForCustomProtocol):
(WebKit::WebContext::unregisterSchemeForCustomProtocol):

4:13 PM Changeset in webkit [137819] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the build.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::registerSchemeForCustomProtocol):
(WebKit::WebContext::unregisterSchemeForCustomProtocol):

4:03 PM Changeset in webkit [137818] by aestes@apple.com
  • 11 edits in trunk/Source/WebKit2

[WebKit2] Register schemes with the network process if it is being used
https://bugs.webkit.org/show_bug.cgi?id=105113

Reviewed by Anders Carlsson.

If a WebContext is using the network process, it needs to be told about
scheme (un)registration rather than the context's web processes.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess): Tell the shared
CustomProtocolManager about schemes registered at process creation time.
(WebKit::NetworkProcess::registerSchemeForCustomProtocol): Tell the
shared CustomProtocolManager about a new scheme.
(WebKit::NetworkProcess::unregisterSchemeForCustomProtocol): Remove a
scheme from the shared CustomProtocolManager.

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in: Add registration and

unregistration messages for the NetworkProcess.

  • Shared/Network/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode): Encode
urlSchemesRegisteredForCustomProtocols.
(WebKit::NetworkProcessCreationParameters::decode): Decode
urlSchemesRegisteredForCustomProtocols.

  • Shared/Network/NetworkProcessCreationParameters.h: Define

urlSchemesRegisteredForCustomProtocols.

  • UIProcess/Network/mac/NetworkProcessProxyMac.mm:

(WebKit::NetworkProcessProxy::platformInitializeNetworkProcess): Populate
urlSchemesRegisteredForCustomProtocols with the current set of schemes.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::registerSchemeForCustomProtocol): Send a new
scheme to either the network process or to the context's web processes.
(WebKit::WebContext::unregisterSchemeForCustomProtocol): Ditto for
removing a scheme.

  • UIProcess/WebContext.h:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::platformInitializeWebProcess): Only populate
urlSchemesRegisteredForCustomProtocols if the network process isn't
being used.
(WebKit::WebContext::registerNotificationObservers):

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess):
urlSchemesRegisteredForCustomProtocols should only be non-empty if the
network process isn't being used. Assert this.

3:43 PM Changeset in webkit [137817] by nghanavatian@rim.com
  • 12 edits in trunk

[BlackBerry] Pass key modifiers with touch and mouse events
https://bugs.webkit.org/show_bug.cgi?id=105108

Reviewed by Rob Buis.

Source/WebCore:

Call Screen to retrieve current key modifiers.

Internally reviewed by Gen Mak.

  • platform/PlatformMouseEvent.h:

(PlatformMouseEvent):

  • platform/blackberry/PlatformKeyboardEventBlackBerry.cpp:

(WebCore::PlatformKeyboardEvent::getCurrentModifierState):

  • platform/blackberry/PlatformMouseEventBlackBerry.cpp:

(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/blackberry/PlatformTouchEventBlackBerry.cpp:

(WebCore::PlatformTouchEvent::PlatformTouchEvent):

Source/WebKit/blackberry:

Pass key modifiers to allow for added functionality, such as
shift+click to highlight.

Internally reviewed by Gen Mak.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::webContext):
(BlackBerry::WebKit::WebPagePrivate::updateCursor):
(BlackBerry::WebKit::WebPage::mouseEvent):
(BlackBerry::WebKit::WebPage::touchPointAsMouseEvent):

  • Api/WebPage.h:
  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::sendClickAtFatFingersPoint):
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
(BlackBerry::WebKit::TouchEventHandler::handleFatFingerPressed):

  • WebKitSupport/TouchEventHandler.h:

(TouchEventHandler):

Tools:

Update DRT to new api.

Internally reviewed by Gen Mak.

  • DumpRenderTree/blackberry/EventSender.cpp:

(mouseDownCallback):
(mouseUpCallback):
(mouseMoveToCallback):

3:40 PM Changeset in webkit [137816] by nghanavatian@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Clean up allocated memory from InputMethodSupport
https://bugs.webkit.org/show_bug.cgi?id=105110

Reviewed by Rob Buis.

PR265919
We are deep copying the spannable_string from IMF and freeing
here once we're done with it.

Internally reviewed by Jeff Rogers.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::spellCheckingRequestProcessed):

3:35 PM Changeset in webkit [137815] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Remove the unneeded NetworkProcessCrashed message
https://bugs.webkit.org/show_bug.cgi?id=105114

Reviewed by Sam Weinig.

Remove the NetworkProcessCrashed message; it's not needed since the connection member variable is already
nulled out in WebProcess::networkProcessConnectionClosed which is called when the Connection::Client::didClose member
function is called on the connection between the web process and network process.

Furthermore, this message was handled on the connection queue which runs on a different thread and the handler was not
thread-safe so this could in theory cause bad crashes.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didClose):

  • WebProcess/WebProcess.cpp:
  • WebProcess/WebProcess.h:

(WebProcess):

  • WebProcess/WebProcess.messages.in:
3:32 PM Changeset in webkit [137814] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[BlackBerry] Prevent CookieManager from blocking the WKT thread
https://bugs.webkit.org/show_bug.cgi?id=105111

PR 265603

Patch by Otto Derek Cheung <otcheung@rim.com> on 2012-12-15
Reviewed by Rob Buis.
Internally reviewed by Konrad Piascik.

The getBackingStoreCookies in WKT is blocking the thread because it has to wait for
the db to be opened before it can call on it.

The fix is to make CookieDatabaseBackingStore in the cookie_db thread dispatch
a getBackingStoreCookies call on WKT after invokeOpen is finished.

Tested loading the browser. Cookies are being loaded into memory on start up.

  • platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:

(WebCore::CookieDatabaseBackingStore::invokeOpen):

  • platform/blackberry/CookieManager.cpp:

(WebCore::cookieManager):

  • platform/blackberry/CookieManager.h:
3:11 PM Changeset in webkit [137813] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

Add a DownloadProxyMap object to the NetworkProcessProxy object
https://bugs.webkit.org/show_bug.cgi?id=105112

Reviewed by Sam Weinig.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::createDownloadProxy):
(WebKit::NetworkProcessProxy::didClose):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createDownloadProxy):

  • UIProcess/WebProcessProxy.cpp:
  • UIProcess/WebProcessProxy.h:
2:49 PM Changeset in webkit [137812] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Move the download proxy map from the web context to the web process proxy
https://bugs.webkit.org/show_bug.cgi?id=105109

Reviewed by Andreas Kling.

More progress towards making downloads work with the networking process. Since downloads are handled by the
web process when not using a networking process, it makes sense for the download proxy map to live in the
web process proxy object.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):
(WebKit::WebContext::shouldTerminate):
(WebKit::WebContext::disconnectProcess):
(WebKit::WebContext::download):
(WebKit::WebContext::createDownloadProxy):

  • UIProcess/WebContext.h:

(WebContext):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::disconnect):
(WebKit::WebProcessProxy::shouldTerminate):
(WebKit):
(WebKit::WebProcessProxy::createDownloadProxy):

  • UIProcess/WebProcessProxy.h:

(WebProcessProxy):

2:11 PM Changeset in webkit [137811] by Simon Fraser
  • 15 edits
    1 add in trunk

Fix repaint issues when resizing a window with centered content, for platforms with a tile cache
https://bugs.webkit.org/show_bug.cgi?id=105073

Reviewed by Dan Bernstein.

Add a manual test for window resize with a centered element.

  • ManualTests/resize-repaint.html: Added.

Source/WebCore:

There were several issues with the "do full repaint" code path in
FrameView::layout(). These caused repaint issues when resizing the web view,
especially for platforms that use a tile cache.

First, the m_doFullRepaint flag wold get clobbered on resize-layouts, because
the call to adjustViewSize() re-enters layout(), and resets the m_doFullRepaint member
variable to false, even if the outer call had previously set it to true. This would
cause us to lose track of whether we needed to do a full repaint. The patch fixes
this by restoring m_doFullRepaint to the value it had before the call to adjustViewSize().

The second problem was that full repaints would not propagate to compositing
layers. They only repainted the RenderView, and on platforms that use a tile cache,
this only repaints the top portion of that tile cache. This was fixed by sending
a NeedsFullRepaintInBacking flag down into RenderLayer::updateLayerPositions(),
and using that to do a full repaint on all compositing layers.

Sending this new flag down into updateAfterLayout() prompted some boolean/flags
cleanup with propagated into several files. This also allowed me to no longer
include RenderLayerBacking.h in RenderLayerCompositor.h, but that required
header cleanup in several files.

Automated testing is not possible because WebKitTestRunner resizes the window
asynchronously (bug 105101). Added manual test.

  • page/FrameView.cpp:

(WebCore::updateLayerPositionFlags):
(WebCore::FrameView::layout):

  • page/scrolling/ScrollingCoordinator.cpp:
  • page/scrolling/mac/ScrollingCoordinatorMac.mm:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::updateCompositingLayersAfterScroll):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateAfterLayout):
(WebCore::RenderLayerBacking::contentChanged):

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderObject.cpp:
  • rendering/RenderView.cpp:

Source/WebKit/chromium:

Include RenderLayerBacking.h, which is no longer included by RenderLayerCompositor.h.

  • tests/ScrollingCoordinatorChromiumTest.cpp:
2:04 PM Changeset in webkit [137810] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

DownloadProxy should keep a strong reference to its associated web context
https://bugs.webkit.org/show_bug.cgi?id=105107

Reviewed by Alexey Proskuryakov.

While this does create a ref-cycle, it's broken when the download completes, fails, is canceled or
if the process that's doing the download crashes.

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::processDidClose):
(WebKit::DownloadProxy::didStart):
(WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
(WebKit::DownloadProxy::didReceiveResponse):
(WebKit::DownloadProxy::didReceiveData):
(WebKit::DownloadProxy::shouldDecodeSourceDataOfMIMEType):
(WebKit::DownloadProxy::decideDestinationWithSuggestedFilename):
(WebKit::DownloadProxy::didCreateDestination):
(WebKit::DownloadProxy::didFinish):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):

  • UIProcess/Downloads/DownloadProxy.h:

(DownloadProxy):

1:53 PM Changeset in webkit [137809] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

Remove WebContext::downloadFinished
https://bugs.webkit.org/show_bug.cgi?id=105105

Reviewed by Sam Weinig.

Have DownloadProxyMap manage the message receiver map and remove WebContext::downloadFinished.

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didFinish):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):

  • UIProcess/Downloads/DownloadProxyMap.cpp:

(WebKit::DownloadProxyMap::DownloadProxyMap):
(WebKit::DownloadProxyMap::createDownloadProxy):
(WebKit::DownloadProxyMap::downloadFinished):

  • UIProcess/Downloads/DownloadProxyMap.h:

(DownloadProxyMap):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):
(WebKit::WebContext::createDownloadProxy):

  • UIProcess/WebContext.h:
1:31 PM Changeset in webkit [137808] by weinig@apple.com
  • 8 edits
    3 deletes in trunk/Source/WebKit2

Make the NetworkProcess be managed by the WebContext, rather than a singleton NetworkProcessMananger
https://bugs.webkit.org/show_bug.cgi?id=105104

Reviewed by Alexey Proskuryakov.

Move to having the WebContext own and manage the NetworkProcessProxy.

  • UIProcess/Network/NetworkProcessManager.cpp: Removed.
  • UIProcess/Network/NetworkProcessManager.h: Removed.
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::create):
(WebKit::NetworkProcessProxy::NetworkProcessProxy):
(WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):

  • UIProcess/Network/NetworkProcessProxy.h:

(WebKit):
(NetworkProcessProxy):

  • UIProcess/Network/mac/NetworkProcessManagerMac.mm: Removed.
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::ensureNetworkProcess):
(WebKit::WebContext::removeNetworkProcessProxy):
(WebKit::WebContext::getNetworkProcessConnection):
(WebKit::WebContext::willStartUsingPrivateBrowsing):
(WebKit::WebContext::willStopUsingPrivateBrowsing):
(WebKit::WebContext::createNewWebProcess):

  • UIProcess/WebContext.h:

(WebKit):
(WebContext):
(WebKit::WebContext::networkProcess):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::getNetworkProcessConnection):

  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::applicationBecameVisible):
(WebKit::WebContext::applicationBecameOccluded):

  • WebKit2.xcodeproj/project.pbxproj:
1:15 PM Changeset in webkit [137807] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

DownloadProxy objects should know which DownloadProxyMap they belong to
https://bugs.webkit.org/show_bug.cgi?id=105102

Reviewed by Andy Estes.

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::create):
(WebKit::DownloadProxy::DownloadProxy):

  • UIProcess/Downloads/DownloadProxy.h:

(WebKit):
(DownloadProxy):

  • UIProcess/Downloads/DownloadProxyMap.cpp:

(WebKit::DownloadProxyMap::createDownloadProxy):

1:08 PM Changeset in webkit [137806] by aestes@apple.com
  • 3 edits
    3 moves
    2 adds in trunk/Source/WebKit2

[WebKit2] Move CustomProtocolManager to Shared/
https://bugs.webkit.org/show_bug.cgi?id=105103

Reviewed by Sam Weinig.

CustomProtocolManager can be instantiated either in the NetworkProcess or the WebProcess, so it should live in Shared/.

  • DerivedSources.make: Update the path where CustomProtocolManager.messages.in can be found.
  • Shared/Network/CustomProtocols/CustomProtocolManager.h: Renamed from Source/WebKit2/WebProcess/Network/CustomProtocols/CustomProtocolManager.h.
  • Shared/Network/CustomProtocols/CustomProtocolManager.messages.in: Renamed from Source/WebKit2/WebProcess/Network/CustomProtocols/CustomProtocolManager.messages.in.
  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm: Renamed from Source/WebKit2/WebProcess/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm.
  • WebKit2.xcodeproj/project.pbxproj:
1:02 PM Changeset in webkit [137805] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the Qt build.

  • Target.pri:
12:35 PM Changeset in webkit [137804] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Get rid of DownloadProxyMap::downloads()
https://bugs.webkit.org/show_bug.cgi?id=105100

Reviewed by Sam Weinig.

Add the needed member functions to DownloadProxyMap and remove the downloads() member function.

  • UIProcess/Downloads/DownloadProxyMap.cpp:

(WebKit::DownloadProxyMap::downloadFinished):
(WebKit::DownloadProxyMap::processDidClose):
(WebKit):

  • UIProcess/Downloads/DownloadProxyMap.h:

(WebKit::DownloadProxyMap::isEmpty):
(DownloadProxyMap):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::shouldTerminate):
(WebKit::WebContext::disconnectProcess):
(WebKit::WebContext::downloadFinished):

12:26 PM Changeset in webkit [137803] by weinig@apple.com
  • 9 edits
    1 add in trunk/Source/WebKit2

Move calculation of caches sizes based on the cache model to CacheModel.h/cpp
https://bugs.webkit.org/show_bug.cgi?id=105098

Reviewed by Anders Carlsson.

Move calculation of caches sizes based on the cache model to CacheModel.h/cpp so
that it can be used by more than just the WebProcess.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Shared/CacheModel.cpp: Added.

(WebKit):
(WebKit::calculateCacheSizes):

  • Shared/CacheModel.h:
  • Target.pri:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebProcess.cpp:
  • WebProcess/WebProcess.h:

(WebProcess):

  • win/WebKit2.vcproj:
12:13 PM Changeset in webkit [137802] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

DownloadProxyMap shouldn't be a singleton after all
https://bugs.webkit.org/show_bug.cgi?id=105099

Reviewed by Sam Weinig.

Make the DownloadProxyMap be per context instead, and get rid of the m_downloads hash map from WebContext.

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didFinish):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):

  • UIProcess/Downloads/DownloadProxyMap.cpp:

(WebKit::DownloadProxyMap::~DownloadProxyMap):

  • UIProcess/Downloads/DownloadProxyMap.h:

(DownloadProxyMap):
(WebKit::DownloadProxyMap::downloads):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::shouldTerminate):
(WebKit::WebContext::disconnectProcess):
(WebKit::WebContext::createDownloadProxy):
(WebKit::WebContext::downloadFinished):

  • UIProcess/WebContext.h:

(WebContext):

11:40 AM Changeset in webkit [137801] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Fix build.

  • platform/graphics/ca/GraphicsLayerCA.h:

Remove an unused member variable.

11:37 AM Changeset in webkit [137800] by Simon Fraser
  • 11 edits in trunk

REGRESSION (r137006): TileCache flashes to linen, rather than the background color, when scrolling fast
https://bugs.webkit.org/show_bug.cgi?id=104746

Reviewed by Darin Adler.

Make RenderLayerBacking::updateBackgroundColor() responsible for setting the background
color of the main frame's root layer to the document background color (rather than doing
it in code related to overlay scrollbars, which was crazy). This is only done for platforms
that use a TiledBacking (currently, just Mac).

Also fix updateBackgroundColor() to not call m_graphicsLayer->setContentsToBackgroundColor()
and then call clearBackgroundColor() right away if the color was transparent.

  • page/FrameView.cpp:

(WebCore::FrameView::recalculateScrollbarOverlayStyle): Remove code that calls documentBackgroundColorDidChange().

  • rendering/RenderLayerBacking.cpp:

(WebCore::clipBox): Remove blank linke.
(WebCore::RenderLayerBacking::updateBackgroundColor):

  • rendering/RenderLayerCompositor.cpp:
  • rendering/RenderLayerCompositor.h:

(RenderLayerCompositor):

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

Stop the XvfbDriver before proceeding with its starting setup
https://bugs.webkit.org/show_bug.cgi?id=105006

Reviewed by Philippe Normand.

Just as with the base Driver implementation, stop the XvfbDriver
before proceeding with setting up lock files and a new Xvfb instance.
This forces any driver or Xvfb instances that are currently under
the driver's control to be closed/killed and cleaned up after.

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

(XvfbDriver._start):

11:11 AM Changeset in webkit [137798] by Simon Fraser
  • 100 edits in trunk

Disambiguate "background color" and "contents as solid color" on GraphicsLayer
https://bugs.webkit.org/show_bug.cgi?id=104842

Source/WebCore:

Patch by No'am Rosenthal <noam.rosenthal@nokia.com> on 2012-12-15
Reviewed by Simon Fraser.

Rename overloads in GraphicsLayerTextureMapper and GraphicsLayerChromium to account for the rename in GraphicsLayer.

Covered by existing tests.

  • platform/graphics/chromium/GraphicsLayerChromium.cpp:
  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::setContentsToSolidColor):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):
(WebCore::GraphicsLayerTextureMapper::solidColor):

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::paintSelf):
(WebCore::TextureMapperLayer::flushCompositingStateSelf):

  • platform/graphics/texmap/TextureMapperLayer.h:

(State):

Source/WebKit2:

Patch by No'am Rosenthal <noam.rosenthal@nokia.com> on 2012-12-15
Reviewed by Simon Fraser.

Rename overloads in coordinated graphics to account for the rename in GraphicsLayer.

  • Shared/CoordinatedGraphics/CoordinatedLayerInfo.h:

(CoordinatedLayerInfo):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::setLayerState):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setContentsToSolidColor):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayer):

LayoutTests:

Patch by No'am Rosenthal <Noam Rosenthal> on 2012-12-15
Reviewed by Simon Fraser.

Since we don't set the background color for a layer with a solid color, the test results have to be rebaselined.

  • compositing/backing/no-backing-for-clip-expected.txt:
  • compositing/backing/no-backing-for-clip-overlap-expected.txt:
  • compositing/backing/no-backing-for-perspective-expected.txt:
  • compositing/columns/composited-in-paginated-expected.txt:
  • compositing/geometry/ancestor-overflow-change-expected.txt:
  • compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
  • compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
  • compositing/geometry/clip-expected.txt:
  • compositing/geometry/clip-inside-expected.txt:
  • compositing/geometry/composited-in-columns-expected.txt:
  • compositing/geometry/flipped-writing-mode-expected.txt:
  • compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt:
  • compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt:
  • compositing/geometry/limit-layer-bounds-overflow-root-expected.txt:
  • compositing/geometry/limit-layer-bounds-positioned-expected.txt:
  • compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt:
  • compositing/geometry/limit-layer-bounds-transformed-expected.txt:
  • compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt:
  • compositing/geometry/preserve-3d-switching-expected.txt:
  • compositing/iframes/become-composited-nested-iframes-expected.txt:
  • compositing/iframes/become-overlapped-iframe-expected.txt:
  • compositing/iframes/composited-parent-iframe-expected.txt:
  • compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
  • compositing/iframes/connect-compositing-iframe-expected.txt:
  • compositing/iframes/connect-compositing-iframe2-expected.txt:
  • compositing/iframes/connect-compositing-iframe3-expected.txt:
  • compositing/iframes/enter-compositing-iframe-expected.txt:
  • compositing/iframes/iframe-resize-expected.txt:
  • compositing/iframes/invisible-nested-iframe-hide-expected.txt:
  • compositing/iframes/invisible-nested-iframe-show-expected.txt:
  • compositing/iframes/overlapped-iframe-expected.txt:
  • compositing/iframes/overlapped-iframe-iframe-expected.txt:
  • compositing/iframes/page-cache-layer-tree-expected.txt:
  • compositing/iframes/scrolling-iframe-expected.txt:
  • compositing/layer-creation/animation-overlap-with-children-expected.txt:
  • compositing/layer-creation/fixed-position-and-transform-expected.txt:
  • compositing/layer-creation/fixed-position-under-transform-expected.txt:
  • compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
  • compositing/layer-creation/overflow-scroll-overlap-expected.txt:
  • compositing/layer-creation/overlap-animation-expected.txt:
  • compositing/layer-creation/overlap-child-layer-expected.txt:
  • compositing/layer-creation/overlap-clipping-expected.txt:
  • compositing/layer-creation/overlap-transformed-and-clipped-expected.txt:
  • compositing/layer-creation/overlap-transformed-layer-expected.txt:
  • compositing/layer-creation/overlap-transforms-expected.txt:
  • compositing/layer-creation/scroll-partial-update-expected.txt:
  • compositing/layer-creation/spanOverlapsCanvas-expected.txt:
  • compositing/layer-creation/stacking-context-overlap-expected.txt:
  • compositing/layer-creation/stacking-context-overlap-nested-expected.txt:
  • compositing/layer-creation/translatez-overlap-expected.txt:
  • compositing/overflow-trumps-transform-style-expected.txt:
  • compositing/overflow/clip-descendents-expected.txt:
  • compositing/plugins/no-backing-store-expected.txt:
  • compositing/rtl/rtl-absolute-expected.txt:
  • compositing/rtl/rtl-absolute-overflow-expected.txt:
  • compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt:
  • compositing/rtl/rtl-fixed-expected.txt:
  • compositing/rtl/rtl-fixed-overflow-expected.txt:
  • compositing/rtl/rtl-relative-expected.txt:
  • compositing/tiled-layers-hidpi-expected.txt:
  • compositing/visible-rect/2d-transformed-expected.txt:
  • compositing/visible-rect/3d-transform-style-expected.txt:
  • compositing/visible-rect/3d-transformed-expected.txt:
  • compositing/visible-rect/animated-expected.txt:
  • compositing/visible-rect/animated-from-none-expected.txt:
  • compositing/visible-rect/clipped-by-viewport-expected.txt:
  • compositing/visible-rect/clipped-visible-rect-expected.txt:
  • compositing/visible-rect/iframe-and-layers-expected.txt:
  • compositing/visible-rect/nested-transform-expected.txt:
  • compositing/visible-rect/scrolled-expected.txt:
  • css3/filters/filtered-compositing-descendant-expected.txt:
  • platform/mac/compositing/geometry/fixed-position-composited-switch-expected.txt:
  • platform/mac/compositing/iframes/resizer-expected.txt:
  • platform/mac/compositing/repaint/invalidations-on-composited-layers-expected.txt:
  • platform/mac/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
  • platform/mac/compositing/tiling/huge-layer-add-remove-child-expected.txt:
  • platform/mac/compositing/tiling/huge-layer-with-layer-children-expected.txt:
  • platform/mac/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
10:49 AM Changeset in webkit [137797] by Christophe Dumez
  • 2 edits in trunk/Source/WebKit2

[GTK][WK2] Memory leak in ChunkedUpdateDrawingArea::paintIntoUpdateChunk()
https://bugs.webkit.org/show_bug.cgi?id=105095

Reviewed by Martin Robinson.

Adopt the pointer returned by cairo_create() in
ChunkedUpdateDrawingArea::paintIntoUpdateChunk() to avoid leaking
memory.

  • WebProcess/WebPage/gtk/ChunkedUpdateDrawingAreaGtk.cpp:

(WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):

6:49 AM WebInspector edited by abecsi@webkit.org
Remove spam. (diff)
3:24 AM WebInspector edited by mousewiki@yahoo.com
(diff)
1:02 AM Changeset in webkit [137796] by mark.lam@apple.com
  • 3 edits in trunk/Source/WebKit2

Added #if ENABLE(SQL_DATABASE) around WebPlatformStrategies::getDatabaseServer().
https://bugs.webkit.org/show_bug.cgi?id=104934..

Not reviewed.

Greening the Qt Linux Release Minimal bot.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

12:09 AM Changeset in webkit [137795] by mark.lam@apple.com
  • 33 edits
    4 copies in trunk/Source

Re-landing patch for "Introducing the DatabaseStrategy and database servers".
https://bugs.webkit.org/show_bug.cgi?id=104934.

Not reviewed.

Source/WebCore:

Merged from r137767. Previously reviewed by Sam Weinig.
Also added ZTVN7WebCore16DatabaseStrategyE to WebCore.exp.in.

No new tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/webdatabase/AbstractDatabaseServer.h: Copied from Source/WebCore/Modules/webdatabase/AbstractDatabaseServer.h.
  • Modules/webdatabase/DBBackendServer.h: Copied from Source/WebCore/Modules/webdatabase/DBBackendServer.h.
  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::DatabaseManager):

  • Modules/webdatabase/DatabaseManager.h:

(DatabaseManager):

  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/DatabaseStrategy.cpp: Copied from Source/WebCore/platform/DatabaseStrategy.cpp.
  • platform/DatabaseStrategy.h: Copied from Source/WebCore/platform/DatabaseStrategy.h.
  • platform/PlatformStrategies.h:

(WebCore::PlatformStrategies::databaseStrategy):
(PlatformStrategies):
(WebCore::PlatformStrategies::PlatformStrategies):

Source/WebKit/efl:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/PlatformStrategiesEfl.cpp:

(PlatformStrategiesEfl::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesEfl.h:

(PlatformStrategiesEfl):

Source/WebKit/gtk:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/PlatformStrategiesGtk.cpp:

(PlatformStrategiesGtk::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesGtk.h:

(PlatformStrategiesGtk):

Source/WebKit/mac:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

  • WebCoreSupport/WebPlatformStrategies.mm:

(WebPlatformStrategies::createDatabaseStrategy):

Source/WebKit/qt:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/PlatformStrategiesQt.cpp:

(PlatformStrategiesQt::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesQt.h:

(PlatformStrategiesQt):

Source/WebKit/win:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/WebPlatformStrategies.cpp:

(WebPlatformStrategies::createDatabaseStrategy):

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

Source/WebKit/wince:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/PlatformStrategiesWinCE.cpp:

(PlatformStrategiesWinCE::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesWinCE.h:

(PlatformStrategiesWinCE):

Source/WebKit2:

Merged from r137767. Previously reviewed by Sam Weinig.

  • CMakeLists.txt:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::createDatabaseStrategy):
(WebKit):
(WebKit::WebPlatformStrategies::getDatabaseServer):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

Dec 14, 2012:

10:15 PM Changeset in webkit [137794] by mark.lam@apple.com
  • 4 edits in trunk/Source/WebKit

The WebView should initialize the platform strategies before initializing other sub-systems.
https://bugs.webkit.org/show_bug.cgi?id=105083.

Reviewed by Alexey Proskuryakov.

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::initWithFrame):

6:28 PM Changeset in webkit [137793] by commit-queue@webkit.org
  • 7 edits in trunk/Source

Send a message from WebViewImpl to the compositor to inform about end of flings
https://bugs.webkit.org/show_bug.cgi?id=104947

Patch by Yusuf Ozuysal <yusufo@google.com> on 2012-12-14
Reviewed by James Robinson.

Whenever we have a fling animation finished on cancelled on main thread this sends
a message that will be relayed to the compositor input handler. Then the input handler
keeps track of main thread fling with a boolean and doesn't send flingCancels
unnecessarily

  • chromium/public/WebInputHandler.h:

(WebInputHandler):

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):
(WebKit::WebLayerTreeView::mainThreadHasStoppedFlinging):

5:21 PM Changeset in webkit [137792] by commit-queue@webkit.org
  • 6 edits in trunk/Source

WebViewImpl::resetScrollAndScaleState() causes the page to render incorrectly
https://bugs.webkit.org/show_bug.cgi?id=104767

Patch by Dan Alcantara <dfalcantara@chromium.org> on 2012-12-14
Reviewed by Darin Fisher.

Change WebViewImpl::resetScrollAndScaleState() so that it directly
alters values in the HistoryItem instead of indirectly changing the
values.

Adds a method in HistoryController to clear the scroll and scale state of
its current HistoryItem.

  • public/WebView.h:

(WebView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::resetScrollAndScaleState):

  • tests/WebViewTest.cpp:
4:52 PM Changeset in webkit [137791] by Beth Dakin
  • 3 edits
    2 deletes in trunk/LayoutTests

https://bugs.webkit.org/show_bug.cgi?id=105064
fast/css/nested-layers-with-hover.html fails on the Mac WK2 bots, and seems to be
a bad test

Reviewed by Tim Horton.

There were a number of problems with this test, and this patch attempts to fix
them all. The problems were:
-This test was failing on the WK2 bots.
-But it was comparing against expected results that expected to fail, so that's
bad!
-In the cross-platform directory there were expected results checked in that look
for a render tree dump, but those results haven't made sense for a while since
that test was converted to dumpAsText() months ago.

This patch updates the test so that it will actually work. To do that, we need to
make sure layout is up to date and also use window.setTimeout() to run the
function to assess our hover state rather than relying on onmousemove.

  • fast/css/nested-layers-with-hover-expected.txt:
  • fast/css/nested-layers-with-hover.html:
  • platform/mac/fast/css/nested-layers-with-hover-expected.png: Removed.
  • platform/mac/fast/css/nested-layers-with-hover-expected.txt: Removed.
4:48 PM Changeset in webkit [137790] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

DownloadProxy objects should be message receivers
https://bugs.webkit.org/show_bug.cgi?id=105068

Reviewed by Andreas Kling.

This simplifies the WebContext message dispatch code somewhat.

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didReceiveMessage):
(WebKit::DownloadProxy::didReceiveSyncMessage):

  • UIProcess/Downloads/DownloadProxy.h:

(DownloadProxy):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createDownloadProxy):
(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):

4:28 PM Changeset in webkit [137789] by commit-queue@webkit.org
  • 7 edits in trunk/Source

Unreviewed, rolling out r137765.
http://trac.webkit.org/changeset/137765
https://bugs.webkit.org/show_bug.cgi?id=105067

Breaks webkit_unit_tests and transferred flings (Requested by
jamesr_ on #webkit).

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

Source/Platform:

  • chromium/public/WebInputHandler.h:

(WebInputHandler):

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):

Source/WebKit/chromium:

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::WebCompositorInputHandlerImpl):
(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):
(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):

  • src/WebCompositorInputHandlerImpl.h:

(WebCompositorInputHandlerImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):
(WebKit::WebViewImpl::handleKeyEvent):
(WebKit::WebViewImpl::updateAnimations):
(WebKit::WebViewImpl::didCommitLoad):

3:57 PM Changeset in webkit [137788] by Lucas Forschler
  • 4 edits in branches/safari-536.28-branch/Source

Versioning.

3:55 PM Changeset in webkit [137787] by Lucas Forschler
  • 1 copy in tags/Safari-536.28.8

New Tag.

3:52 PM Changeset in webkit [137786] by commit-queue@webkit.org
  • 5 edits
    4 adds in trunk

Emphasis mark is printed after inline-block with justify
https://bugs.webkit.org/show_bug.cgi?id=104631

Patch by Yuki Sekiguchi <yuki.sekiguchi@access-company.com> on 2012-12-14
Reviewed by Dean Jackson.

Source/WebCore:

Do not print an emphasis mark after an inline-block when justified.

If an inline-block is expanded, it has a space appended to it.
This space should not have any emphasis marks drawn.

Test: fast/inline/justify-emphasis-inline-box.html

  • platform/graphics/SimpleFontData.h:

(WebCore::SimpleFontData::zeroWidthSpaceGlyph): Add getter method to get zero width space glyph.

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::advanceInternal): We use zero width space for the extra space not to draw emphasis marks.

LayoutTests:

Test that emphasis marks are not drawn incorrectly in justified text with inline boxes.

  • fast/inline/justify-emphasis-inline-box.html: Added.
  • platform/chromium-mac/fast/inline/justify-emphasis-inline-box-expected.png: Added.
  • platform/chromium-mac/fast/inline/justify-emphasis-inline-box-expected.txt: Added.
  • platform/mac/fast/inline/justify-emphasis-inline-box-expected.txt: Added.
3:47 PM Changeset in webkit [137785] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed bug fix after r137782.

Add new source file TextTrackRepresentation.cpp to CMakeLists.txt.

  • CMakeLists.txt:
3:40 PM Changeset in webkit [137784] by commit-queue@webkit.org
  • 33 edits
    4 deletes in trunk/Source

Unreviewed, rolling out r137767.
http://trac.webkit.org/changeset/137767
https://bugs.webkit.org/show_bug.cgi?id=105062

Broke Mac builds. (Requested by mlam on #webkit).

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

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/webdatabase/AbstractDatabaseServer.h: Removed.
  • Modules/webdatabase/DBBackendServer.h: Removed.
  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::DatabaseManager):

  • Modules/webdatabase/DatabaseManager.h:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/DatabaseStrategy.cpp: Removed.
  • platform/DatabaseStrategy.h: Removed.
  • platform/PlatformStrategies.h:

(WebCore):
(WebCore::PlatformStrategies::PlatformStrategies):
(PlatformStrategies):

Source/WebKit/efl:

  • WebCoreSupport/PlatformStrategiesEfl.cpp:
  • WebCoreSupport/PlatformStrategiesEfl.h:

(PlatformStrategiesEfl):

Source/WebKit/gtk:

  • WebCoreSupport/PlatformStrategiesGtk.cpp:
  • WebCoreSupport/PlatformStrategiesGtk.h:

(PlatformStrategiesGtk):

Source/WebKit/mac:

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

  • WebCoreSupport/WebPlatformStrategies.mm:

Source/WebKit/qt:

  • WebCoreSupport/PlatformStrategiesQt.cpp:
  • WebCoreSupport/PlatformStrategiesQt.h:

(PlatformStrategiesQt):

Source/WebKit/win:

  • WebCoreSupport/WebPlatformStrategies.cpp:
  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

Source/WebKit/wince:

  • WebCoreSupport/PlatformStrategiesWinCE.cpp:
  • WebCoreSupport/PlatformStrategiesWinCE.h:

(PlatformStrategiesWinCE):

Source/WebKit2:

  • CMakeLists.txt:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

3:33 PM Changeset in webkit [137783] by ap@apple.com
  • 5 edits in trunk/Source/WebKit2

<rdar://problem/12874760> NetworkProcess loads may get stuck when WebProcess quits
https://bugs.webkit.org/show_bug.cgi?id=105056

Reviewed by Anders Carlsson.

Make response maps per-connection.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::didClose): Cancel waiting for responses from WebProcess, they will never arrive.
  • NetworkProcess/NetworkConnectionToWebProcess.h: (WebKit::NetworkConnectionToWebProcess::willSendRequestResponseMap): (WebKit::NetworkConnectionToWebProcess::canAuthenticateAgainstProtectionSpaceResponseMap): Maps now live here.
  • NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::connectionToWebProcessDidClose): Added a FIXME.

(WebKit::NetworkResourceLoader::willSendRequest):
(WebKit::NetworkResourceLoader::willSendRequestHandled):
(WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpace):
(WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceHandled):
Handle the cases where we can't send a request, or can't expect a response any more.

  • Shared/BlockingResponseMap.h: (BlockingResponseMap): (BlockingResponseMap::BlockingResponseMap): (BlockingResponseMap::~BlockingResponseMap): (BlockingResponseMap::waitForResponse): (BlockingResponseMap::didReceiveResponse): (BlockingResponseMap::cancel): (BlockingBoolResponseMap): (BlockingBoolResponseMap::BlockingBoolResponseMap): (BlockingBoolResponseMap::~BlockingBoolResponseMap): (BlockingBoolResponseMap::waitForResponse): (BlockingBoolResponseMap::didReceiveResponse): (BlockingBoolResponseMap::cancel): Added an ability to cancel, and slightly beefed up overall.
3:23 PM Changeset in webkit [137782] by jer.noble@apple.com
  • 13 edits
    2 adds in trunk/Source/WebCore

Allow the text track contents to be displayed externally to WebCore.
https://bugs.webkit.org/show_bug.cgi?id=105052

Reviewed by Eric Carlson.

Support scenarios where the text track contents must be rendered outside of WebCore, such as to an external
display or window. Add an abstract base class which encapsulates the external representation to which the
text tracks will be rendered.

Add a new abstract base class and client to wrap the external rendering of a TextTrack.

  • platform/graphics/TextTrackRepresentation.h: Added.

(WebCore::TextTrackRepresentationClient::~TextTrackRepresentationClient):
(WebCore::TextTrackRepresentation::~TextTrackRepresentation):

Add an empty concrete implementation for those ports who do not yet support external display of subtitles.

  • platform/graphics/TextTrackRepresentation.cpp: Added.

(NullTextTrackRepresentation):
(WebCore::NullTextTrackRepresentation::~NullTextTrackRepresentation):
(WebCore::NullTextTrackRepresentation::update):
(WebCore::NullTextTrackRepresentation::platformLayer):
(WebCore::NullTextTrackRepresentation::setContentScale):
(WebCore::NullTextTrackRepresentation::bounds):
(WebCore::TextTrackRepresentation::create):

Add methods to MediaPlayerPrivateIOS to handle the TextTrackRepresentation.

  • platform/graphics/ios/MediaPlayerPrivateIOS.h:
  • platform/graphics/ios/MediaPlayerPrivateIOS.mm:

(WebCore::MediaPlayerPrivateIOS::deliverNotification): Remove the representation when exiting full screen.
(WebCore::MediaPlayerPrivateIOS::requiresTextTrackRepresentation): Return YES if in full screen mode.
(WebCore::MediaPlayerPrivateIOS::setTextTrackRepresentation): Pass the representation's layer to the player plug-in.

Expose those methods via HTMLMediaElement:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::requiresTextTrackRepresentation):
(WebCore::HTMLMediaElement::setTextTrackRepresentation):

  • html/HTMLMediaElement.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::requiresTextTrackRepresentation):
(WebCore::MediaPlayer::setTextTrackRepresentation):

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::textTrackRepresentationBoundsChanged):
(WebCore::MediaPlayerClient::paintTextTrackRepresentation):

  • platform/graphics/MediaPlayerPrivate.h:

(WebCore::MediaPlayerPrivateInterface::requiresTextTrackRepresentation):
(WebCore::MediaPlayerPrivateInterface::setTextTrackRepresentation):

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlTextTrackContainerElement::updateDisplay): Create the representation, if necessary.
(WebCore::MediaControlTextTrackContainerElement::updateSizes): Use the representation to determine the font size.
(WebCore::MediaControlTextTrackContainerElement::paintTextTrackRepresentation): Added. Paint the TextTrack into the provided graphics context.
(WebCore::MediaControlTextTrackContainerElement::textTrackRepresentationBoundsChanged): Added. Call updateSizes().

  • html/shadow/MediaControlElements.h:

Add the new files to the project.

  • WebCore.xcodeproj/project.pbxproj:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
3:18 PM Changeset in webkit [137781] by dpranke@chromium.org
  • 6 edits in trunk/Tools

webkitpy: make port_name a required parameter to the non-test ports
https://bugs.webkit.org/show_bug.cgi?id=105057

Reviewed by Eric Seidel.

This is just minor code cleanup along the path to making Port
constructors simpler and pushing more logic into the port factory.

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

(Port.init):

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

(PortTest.make_port):

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

(TestWebKitPort.init):

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

(TestPort):
(TestPort.determine_full_port_name):
(TestPort.init):

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

(XvfbDriverTest.make_driver):
(XvfbDriverTest.test_stop):

3:17 PM Changeset in webkit [137780] by dpranke@chromium.org
  • 4 edits in trunk/Tools

garden-o-matic doesn't know about reftests
https://bugs.webkit.org/show_bug.cgi?id=101976

Reviewed by Eric Seidel.

Attempt to make garden-o-matic properly aware of reftests again.

This is re-landing r137407 with a change to
rebaselineWithStatusUpdates() to actually pass the filtered
failureInofLost to checkout.rebaseline().

Unfortunately, the testing coverage for this whole module is almost
non-existent, and it's not obvious that there's a good way to
stub out checkout.rebaseline() to test that the right thing
happens. I verified the change manually.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
3:04 PM Changeset in webkit [137779] by aestes@apple.com
  • 3 edits in branches/safari-534.58-branch/Source/WebCore

Merge r118820.

2012-05-29 John Sullivan <sullivan@apple.com>

Update label for blacklisted plug-in
https://bugs.webkit.org/show_bug.cgi?id=87767
rdar://problem/11550048

Reviewed by Kevin Decker.

  • English.lproj/Localizable.strings:

Regenerated.

  • platform/LocalizedStrings.cpp:

(WebCore::insecurePluginVersionText):
Changed this string.

3:04 PM Changeset in webkit [137778] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Updating these results again since this failing test has started failing in a new
way. https://bugs.webkit.org/show_bug.cgi?id=58332 represents fixing the bug.

  • platform/mac-wk2/canvas/philip/tests/2d.text.draw.fontface.notinpage-expected.txt:
2:57 PM Changeset in webkit [137777] by Lucas Forschler
  • 2 edits in tags/Safari-537.21.1/Source/WebCore

Merged r137763. <rdar://problem/12879657>

2:55 PM Changeset in webkit [137776] by fsamuel@chromium.org
  • 7 edits in trunk/Source

Allow embedder to observe changes to frame names
https://bugs.webkit.org/show_bug.cgi?id=104404

Reviewed by Darin Fisher.

Source/WebCore:

  • loader/FrameLoaderClient.h:

(WebCore::FrameLoaderClient::didChangeName):
(FrameLoaderClient):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::setName):

Source/WebKit/chromium:

  • public/WebFrameClient.h:

(WebFrameClient):
(WebKit::WebFrameClient::didChangeName):

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::didChangeName):
(WebKit):

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

2:51 PM Changeset in webkit [137775] by Lucas Forschler
  • 4 edits in tags/Safari-537.21.1/Source

Versioning.

2:48 PM Changeset in webkit [137774] by Lucas Forschler
  • 1 copy in tags/Safari-537.21.1

New Tag.

2:31 PM Changeset in webkit [137773] by jsbell@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr<IDBDatabaseBackendInterface>)
https://bugs.webkit.org/show_bug.cgi?id=104615

Reviewed by Tony Chang.

Don't create (and leak) a new wrapper object for onSuccess if one was created for onUpgradeNeeded.

  • src/IDBCallbacksProxy.cpp:

(WebKit::IDBCallbacksProxy::IDBCallbacksProxy):
(WebKit::IDBCallbacksProxy::onSuccess):
(WebKit::IDBCallbacksProxy::onUpgradeNeeded):

  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

2:30 PM Changeset in webkit [137772] by simonjam@chromium.org
  • 4 edits
    2 adds in trunk

[Resource Timing] Properly report reused connections
https://bugs.webkit.org/show_bug.cgi?id=104986

Reviewed by Tony Gentilcore.

Source/WebCore:

Test: http/tests/w3c/webperf/submission/resource-timing/html/test_resource_connection_reuse.html

  • page/PerformanceResourceTiming.cpp:

(WebCore::PerformanceResourceTiming::PerformanceResourceTiming):
(WebCore::PerformanceResourceTiming::connectStart):
(WebCore::PerformanceResourceTiming::connectEnd):

  • page/PerformanceResourceTiming.h:

(PerformanceResourceTiming):

LayoutTests:

  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_connection_reuse-expected.txt: Added.
  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_connection_reuse.html: Added.
2:18 PM Changeset in webkit [137771] by roger_fong@apple.com
  • 4 edits in trunk/Source/WebCore

Enable video caption controls on Windows.
https://bugs.webkit.org/show_bug.cgi?id=105045.

Reviewed by Eric Carlson.

Now that video tracks have been enabled on Windows, enable controls as well.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
(WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):

  • html/shadow/MediaControlElements.h:
  • rendering/RenderThemeWin.h:
2:13 PM Changeset in webkit [137770] by rniwa@webkit.org
  • 3 edits in trunk/Tools

"Running 1 DumpRenderTree over X shards" is not a helpful output
https://bugs.webkit.org/show_bug.cgi?id=104858

Reviewed by Dirk Pranke.

The word "shard" is not typically used in test frameworks. This word is confusing for many WebKit
contributors who typically don't have much experience on distributed computations and databases.
So only print this message out in the debug mode.

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
  • Scripts/webkitpy/layout_tests/views/printing.py:

(Printer.print_workers_and_shards):

2:11 PM Changeset in webkit [137769] by adamk@chromium.org
  • 4 edits in trunk/LayoutTests

fast/dom/HTMLTemplateElement/inertContents.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=104023

Reviewed by Eric Seidel.

Made the test only check inertness using <script>, since
<img>s are currently flaky due to the preload scanner.

  • fast/dom/HTMLTemplateElement/inertContents-expected.txt:
  • fast/dom/HTMLTemplateElement/inertContents.html:
  • platform/chromium/TestExpectations:
2:07 PM Changeset in webkit [137768] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

DownloadProxyMap should keep track of outstanding DownloadProxy objects
https://bugs.webkit.org/show_bug.cgi?id=105053

Reviewed by Andreas Kling.

This is more work towards removing the m_downloads map from every WebContext object.

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didFinish):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):

  • UIProcess/Downloads/DownloadProxyMap.cpp:

(WebKit::DownloadProxyMap::createDownloadProxy):
(WebKit):
(WebKit::DownloadProxyMap::downloadFinished):

  • UIProcess/Downloads/DownloadProxyMap.h:

(DownloadProxyMap):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createDownloadProxy):

1:57 PM Changeset in webkit [137767] by mark.lam@apple.com
  • 33 edits
    4 adds in trunk/Source

Introducing the DatabaseStrategy and database servers.
https://bugs.webkit.org/show_bug.cgi?id=104934.

Reviewed by Sam Weinig.

The database server is currently a placeholder that does nothing.

Source/WebCore:

No new tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/webdatabase/AbstractDatabaseServer.h: Added.

(WebCore):
(AbstractDatabaseServer):
(WebCore::AbstractDatabaseServer::AbstractDatabaseServer):
(WebCore::AbstractDatabaseServer::~AbstractDatabaseServer):

  • Modules/webdatabase/DBBackendServer.h: Added.

(DBBackend):

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::DatabaseManager):

  • Modules/webdatabase/DatabaseManager.h:

(WebCore):
(DatabaseManager):

  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/DatabaseStrategy.cpp: Added.

(WebCore):
(WebCore::DatabaseStrategy::getDatabaseServer):

  • platform/DatabaseStrategy.h: Added.

(WebCore):
(DatabaseStrategy):
(WebCore::DatabaseStrategy::~DatabaseStrategy):

  • platform/PlatformStrategies.h:

(WebCore):
(WebCore::PlatformStrategies::databaseStrategy):
(PlatformStrategies):
(WebCore::PlatformStrategies::PlatformStrategies):

Source/WebKit/efl:

  • WebCoreSupport/PlatformStrategiesEfl.cpp:

(PlatformStrategiesEfl::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesEfl.h:

(PlatformStrategiesEfl):

Source/WebKit/gtk:

  • WebCoreSupport/PlatformStrategiesGtk.cpp:

(PlatformStrategiesGtk::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesGtk.h:

(PlatformStrategiesGtk):

Source/WebKit/mac:

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

  • WebCoreSupport/WebPlatformStrategies.mm:

(WebPlatformStrategies::createDatabaseStrategy):

Source/WebKit/qt:

  • WebCoreSupport/PlatformStrategiesQt.cpp:

(PlatformStrategiesQt::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesQt.h:

(PlatformStrategiesQt):

Source/WebKit/win:

  • WebCoreSupport/WebPlatformStrategies.cpp:

(WebPlatformStrategies::createDatabaseStrategy):

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

Source/WebKit/wince:

  • WebCoreSupport/PlatformStrategiesWinCE.cpp:

(PlatformStrategiesWinCE::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesWinCE.h:

(PlatformStrategiesWinCE):

Source/WebKit2:

  • CMakeLists.txt:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::createDatabaseStrategy):
(WebKit):
(WebKit::WebPlatformStrategies::getDatabaseServer):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

1:25 PM Changeset in webkit [137766] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Resource loads sometimes stall
https://bugs.webkit.org/show_bug.cgi?id=104976

Apply the same quick an dirty fix to BlockingBoolResponseMap.

  • Shared/BlockingResponseMap.h: (BlockingBoolResponseMap::didReceiveResponse):
1:17 PM Changeset in webkit [137765] by commit-queue@webkit.org
  • 7 edits in trunk/Source

Send a message from WebViewImpl to the compositor to inform about end of flings
https://bugs.webkit.org/show_bug.cgi?id=104947

Patch by Yusuf Ozuysal <yusufo@google.com> on 2012-12-14
Reviewed by James Robinson.

Whenever we have a fling animation finished on cancelled on main thread this sends
a message that will be relayed to the compositor input handler. Then the input handler
keeps track of main thread fling with a boolean and doesn't send flingCancels
unnecessarily

Source/Platform:

  • chromium/public/WebInputHandler.h:

(WebInputHandler):

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):
(WebKit::WebLayerTreeView::mainThreadHasStoppedFlinging):

Source/WebKit/chromium:

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::WebCompositorInputHandlerImpl):
(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):
(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):
(WebKit::WebCompositorInputHandlerImpl::mainThreadHasStoppedFlinging):
(WebKit):

  • src/WebCompositorInputHandlerImpl.h:

(WebCompositorInputHandlerImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):
(WebKit::WebViewImpl::handleKeyEvent):
(WebKit::WebViewImpl::updateAnimations):
(WebKit::WebViewImpl::didCommitLoad):

1:07 PM Changeset in webkit [137764] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

Source/WebCore: Text Autosizing: Consider inline-block and inline-table elements to be autosizing clusters.
https://bugs.webkit.org/show_bug.cgi?id=104702

Patch by Anton Vayvod <avayvod@chromium.org> on 2012-12-14
Reviewed by Julien Chaffraix.

A common pattern for creating adjacent columns in CSS is to set each of the columns to
display:inline-block, display:inline-table or alike WebKit-specific styles. Whenever columns
are used, Text Autosizing needs to assign each of the columns to different clusters (since
the user can zoom in such that a column fills the width of the screen, so text within a column
should have a smaller multiplier than it's wider enclosing cluster would have needed).

This patch causes display:inline-block, display:inline-table and alike styles to trigger new clusters.

Test: fast/text-autosizing/cluster-inline-block-or-table.html
Test: fast/text-autosizing/cluster-inline-grid-flex-box.html

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::isAutosizingContainer):
(WebCore::TextAutosizer::isAutosizingCluster):

Consider display:inline-block, inline-table and alike elements to be autosizing containers and clusters.

LayoutTests: Consider inline-block and inline-table elements to be autosizing clusters.
https://bugs.webkit.org/show_bug.cgi?id=104702

Patch by Anton Vayvod <avayvod@chromium.org> on 2012-12-14
Reviewed by Julien Chaffraix.

Added tests to verify that display:inline-block, display:inline-table and alike elements become clusters.

  • fast/text-autosizing/cluster-inline-block-or-table-expected.html: Added.
  • fast/text-autosizing/cluster-inline-block-or-table.html: Added.
  • fast/text-autosizing/cluster-inline-grid-flex-box-expected.html: Added.
  • fast/text-autosizing/cluster-inline-grid-flex-box.html: Added.
12:49 PM Changeset in webkit [137763] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION (r137607): Cannot download files, stuck in "Preparing to download"
https://bugs.webkit.org/show_bug.cgi?id=105044
<rdar://problem/12879657>

Reviewed by Alexey Proskuryakov.

Make ResourceHandle::cancel return early if the handle has been converted to a download.

  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::cancel):

12:27 PM Changeset in webkit [137762] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Marking these tests as failure for now.
https://bugs.webkit.org/show_bug.cgi?id=105049 tracks fixing the issue.

  • platform/mac/TestExpectations:
12:16 PM Changeset in webkit [137761] by commit-queue@webkit.org
  • 20 edits
    2 deletes in trunk

Unreviewed, rolling out r137570.
http://trac.webkit.org/changeset/137570
https://bugs.webkit.org/show_bug.cgi?id=105048

Stale nodes in the touchEventTarget HashCountedSet are
triggering crashes. Rolling out while I find the root cause.
(Requested by leviw on #webkit).

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

Source/WebCore:

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::didAddTouchEventHandler):
(WebCore::Document::didRemoveTouchEventHandler):

  • dom/Document.h:

(WebCore::Document::touchEventHandlerCount):
(Document):

  • dom/Node.cpp:

(WebCore::Node::didMoveToNewDocument):
(WebCore::tryAddEventListener):
(WebCore::tryRemoveEventListener):

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • html/HTMLInputElement.cpp:

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

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::addEventListener):
(WebCore::DOMWindow::removeEventListener):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent):

  • page/Frame.cpp:

(WebCore::Frame::setDocument):

  • page/scrolling/ScrollingCoordinator.cpp:
  • page/scrolling/ScrollingCoordinator.h:
  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.h:

(ScrollingCoordinatorChromium):

  • testing/Internals.cpp:

(WebCore::Internals::touchEventHandlerCount):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit/chromium:

  • features.gypi:
  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::requestTouchEventType):
(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl):

LayoutTests:

  • platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Removed.
  • platform/chromium/fast/events/touch/compositor-touch-hit-rects.html: Removed.
11:34 AM Changeset in webkit [137760] by cevans@google.com
  • 1 edit in branches/chromium/1312/Source/WebKit/chromium/features.gypi

Revert 136739
BUG=164454
Review URL: https://codereview.chromium.org/11572049

11:32 AM Changeset in webkit [137759] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1312

Merge 137632
BUG=163593
Review URL: https://codereview.chromium.org/11583006

11:26 AM Changeset in webkit [137758] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding crash expectations for two regressions after r137487 and r137607.

  • platform/gtk/TestExpectations:
11:24 AM Changeset in webkit [137757] by roger_fong@apple.com
  • 2 edits
    5 adds in trunk/LayoutTests

Unreviewed rebaselines on Win7 port after r137336.

  • media/video-controls-captions-trackmenu.html:
  • platform/win/fast/css-generated-content: Added.
  • platform/win/fast/css-generated-content/table-row-group-to-inline-expected.txt: Added.
  • platform/win/fast/css/empty-generated-content-expected.txt: Added.
  • platform/win/http/tests/misc: Added.
  • platform/win/http/tests/misc/acid3-expected.txt: Added.
10:47 AM Changeset in webkit [137756] by andersca@apple.com
  • 7 edits
    2 adds in trunk/Source/WebKit2

Add a DownloadsProxyMap class in preparation for moving the downloads map away from WebContext
https://bugs.webkit.org/show_bug.cgi?id=104980

Reviewed by Andreas Kling.

Currently the DownloadProxyMap doesn't really do anything; this initial change is to make sure that
adding the new files won't break any builds.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • UIProcess/Downloads/DownloadProxyMap.cpp: Added.

(WebKit):
(WebKit::DownloadProxyMap::shared):
(WebKit::DownloadProxyMap::DownloadProxyMap):
(WebKit::DownloadProxyMap::~DownloadProxyMap):
(WebKit::DownloadProxyMap::createDownloadProxy):

  • UIProcess/Downloads/DownloadProxyMap.h: Added.

(WebKit):
(DownloadProxyMap):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createDownloadProxy):

  • WebKit2.xcodeproj/project.pbxproj:
  • win/WebKit2.vcproj:
10:42 AM Changeset in webkit [137755] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix assertion failure when the network process is enabled
https://bugs.webkit.org/show_bug.cgi?id=105040
<rdar://problem/12883632>

Reviewed by Alexey Proskuryakov.

Make sure that we don't call into the download manager when running with a network process.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::shouldTerminate):

10:35 AM Changeset in webkit [137754] by Michelangelo De Simone
  • 33 edits in trunk

[CSS Shaders] Remove code for the other mesh box types (border-box | padding-box | content-box)
https://bugs.webkit.org/show_bug.cgi?id=103776

Reviewed by Dean Jackson.

Source/WebCore:

The MeshBoxType has been removed and the code has been refactored. The specs will be updated shortly
and therefore this feature - even though it was not fully implemented yet - shall not be used anymore.

In this patch we remove everything but the parsing code, which shall be addressed in a different patch
(see: https://bugs.webkit.org/show_bug.cgi?id=103778).

Specification to be updated: http://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#ltboxgt

Existing tests have been updated and new parsing legacy cases have been added.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::valueForFilter):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseCustomFilter):

  • css/CSSPrimitiveValueMappings.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::createCustomFilterOperation):

  • platform/graphics/filters/CustomFilterConstants.h:
  • platform/graphics/filters/CustomFilterOperation.cpp:

(WebCore::CustomFilterOperation::CustomFilterOperation):
(WebCore::CustomFilterOperation::blend):

  • platform/graphics/filters/CustomFilterOperation.h:

(WebCore::CustomFilterOperation::create):
(CustomFilterOperation):
(WebCore::CustomFilterOperation::operator==):

  • platform/graphics/filters/CustomFilterRenderer.cpp:

(WebCore::CustomFilterRenderer::create):
(WebCore::CustomFilterRenderer::CustomFilterRenderer):

  • platform/graphics/filters/CustomFilterRenderer.h:

(CustomFilterRenderer):

  • platform/graphics/filters/FECustomFilter.cpp:

(WebCore::FECustomFilter::FECustomFilter):
(WebCore::FECustomFilter::create):

  • platform/graphics/filters/FECustomFilter.h:

(FECustomFilter):

  • platform/graphics/filters/ValidatedCustomFilterOperation.cpp:

(WebCore::ValidatedCustomFilterOperation::ValidatedCustomFilterOperation):

  • platform/graphics/filters/ValidatedCustomFilterOperation.h:

(WebCore::ValidatedCustomFilterOperation::create):
(WebCore::ValidatedCustomFilterOperation::operator==):
(ValidatedCustomFilterOperation):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::createCustomFilterEffect):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::computeFilterOperations):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawUsingCustomFilter):

Source/WebKit2:

The MeshBoxType has been removed and the code has been refactored. The specs will be updated shortly
and therefore this feature - even though it was not fully implemented yet - shall not be used anymore.

In this patch we remove everything but the parsing code, which shall be addressed in a different patch
(see: https://bugs.webkit.org/show_bug.cgi?id=103778).

Specification to be updated: http://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#ltboxgt

Existing tests have been updated and new parsing legacy cases have been added.

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(CoreIPC::::encode):
(CoreIPC::::decode):

  • Shared/CoordinatedGraphics/WebCustomFilterOperation.h:

(WebCore::WebCustomFilterOperation::create):
(WebCore::WebCustomFilterOperation::WebCustomFilterOperation):

LayoutTests:

MeshBoxBoxType has been removed from the spec and from the code.
Parsing code has been retained for legacy reason and will be updated in a different patch
(see: https://bugs.webkit.org/show_bug.cgi?id=103778).

Current tests have been updated and new legacy test cases have been added to custom-filter-property-parsing.

  • css3/filters/custom/custom-filter-animation-expected.txt:
  • css3/filters/custom/custom-filter-animation.html:
  • css3/filters/custom/custom-filter-array-blending-expected.txt:
  • css3/filters/custom/custom-filter-array-blending.html:
  • css3/filters/custom/custom-filter-property-computed-style-expected.txt:
  • css3/filters/custom/custom-filter-property-parsing-expected.txt:
  • css3/filters/custom/custom-filter-transforms-animation-expected.txt:
  • css3/filters/custom/custom-filter-transforms-animation.html:
  • css3/filters/script-tests/custom-filter-property-computed-style.js:
  • css3/filters/script-tests/custom-filter-property-parsing.js:
9:53 AM Changeset in webkit [137753] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Allow plugins to be disabled by shared library filename
https://bugs.webkit.org/show_bug.cgi?id=101274

Patch by Parth Patel <parpatel@rim.com> on 2012-12-14
Reviewed by Yong Li.

Fixing build error.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::setExtraPluginDirectory):

9:53 AM Changeset in webkit [137752] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/12880750> RGRESSION: Crash when emptying cookie jar
https://bugs.webkit.org/show_bug.cgi?id=105038

Reviewed by Jessie Berlin.

Handle null context, which is used for cookie management functions.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: (WebKit::WebPlatformStrategies::cookiesForDOM): (WebKit::WebPlatformStrategies::setCookiesFromDOM): (WebKit::WebPlatformStrategies::cookiesEnabled): (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue): (WebKit::WebPlatformStrategies::getRawCookies): (WebKit::WebPlatformStrategies::deleteCookie): (WebKit::WebPlatformStrategies::getHostnamesWithCookies): (WebKit::WebPlatformStrategies::deleteCookiesForHostname): (WebKit::WebPlatformStrategies::deleteAllCookies):
9:21 AM Changeset in webkit [137751] by yurys@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: optional parameters of protocol commands should go after required ones
https://bugs.webkit.org/show_bug.cgi?id=105019

Reviewed by Pavel Feldman.

  • inspector/Inspector.json: Moved required x and y parameters declaration before

optional ones.

  • inspector/InspectorInputAgent.cpp:

(WebCore::InspectorInputAgent::dispatchMouseEvent):

  • inspector/InspectorInputAgent.h:

(InspectorInputAgent):

9:19 AM Changeset in webkit [137750] by jberlin@webkit.org
  • 3 edits in trunk/Source/WebCore

Mac build fix after r137724.

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerKeyAdded):
Comment out the names of the unused parameters so they don't trigger unused parameter
warnings.
(WebCore::MediaPlayerClient::mediaPlayerKeyError):
Ditto.
(WebCore::MediaPlayerClient::mediaPlayerKeyMessage):
Ditto.
(WebCore::MediaPlayerClient::mediaPlayerKeyNeeded):
Ditto.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::generateKeyRequest):
Pass an empty URL for the new defaultURL parameter in the keyMessage call.

9:00 AM Changeset in webkit [137749] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
8:57 AM Changeset in webkit [137748] by commit-queue@webkit.org
  • 10 edits in trunk/Source

[GTK] When in private mode WebKitGTK+ should not save HTTP authentication credentials to the persistent storage
https://bugs.webkit.org/show_bug.cgi?id=104910

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-14
Reviewed by Martin Robinson.

Source/WebCore:

Add new parameter to GtkAuthenticationDialog to select whether we
allow persistent storage of credential information or not. In the
latter case, the "Remember password" check button is not shown and
the credentials are always stored in the session.

  • platform/gtk/GtkAuthenticationDialog.cpp:

(WebCore::GtkAuthenticationDialog::GtkAuthenticationDialog):
(WebCore::GtkAuthenticationDialog::createContentsInContainer):
(WebCore::GtkAuthenticationDialog::buttonClickedCallback):

  • platform/gtk/GtkAuthenticationDialog.h:

(GtkAuthenticationDialog):

Source/WebKit/gtk:

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
When creating the GtkAuthenticationDialog, set the credential
storage mode using the private browsing setting from the current
page.

  • webkit/webkitsoupauthdialog.cpp:

(sessionAuthenticate):
Create the GtkAuthenticationDialog with no persistent storage
allowed, as we are not handling the credential persistence here.

Source/WebKit2:

  • UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp:

(WebKit::WebKit2GtkAuthenticationDialog::WebKit2GtkAuthenticationDialog):

  • UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h:

(WebKit2GtkAuthenticationDialog):
GtkAuthenticationDialog has a new credential storage mode
parameter, so add it here too.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewHandleAuthenticationChallenge):
When creating the GtkAuthenticationDialog, set the credential
storage mode using the private browsing setting from the current
page.

8:18 AM Changeset in webkit [137747] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
8:12 AM Changeset in webkit [137746] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[EFL][WK2] Fix EFL build after r137718
https://bugs.webkit.org/show_bug.cgi?id=105018

Unreviewed build fix.

The problem was that UNUSED_PARAM(size) was left in the code
for non-existent variable 'size'.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-12-14

  • UIProcess/efl/PageClientDefaultImpl.cpp:

(WebKit::PageClientDefaultImpl::updateViewportSize):

  • UIProcess/efl/PageClientLegacyImpl.cpp:

(WebKit::PageClientLegacyImpl::updateViewportSize):

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

[Chromium gardening] Set expectations for platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-drag-thumb-with-large-content-expected.html

Unreviewed gardening change.

Need to mirror the expectations for the virtual tests against those for the
original.

  • platform/chromium/TestExpectations:
7:35 AM Changeset in webkit [137744] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r129633 and r129757.
http://trac.webkit.org/changeset/129633
http://trac.webkit.org/changeset/129757
https://bugs.webkit.org/show_bug.cgi?id=97659

Causes performance regression whn inspector overlay is
displayed

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::paint):

7:33 AM Changeset in webkit [137743] by zhajiang@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry][Fullscreen] Exiting fullscreen does not set the correct scroll position
https://bugs.webkit.org/show_bug.cgi?id=104958

Patch by Jacky Jiang <zhajiang@rim.com>.
Reviewed by Antonio Gomes.
Internally reviewed by Arvid Nilsson and Max Feil.

PR: 231174
When leaving fullscreen, WebPage scale and scroll position can't return
to the original scale and scroll position.
We can't restore them in WebPagePrivate::exitFullScreenForElement()
as they can still be changed thereafter during the async
setViewportSize(). And also the async setViewportSize() from the app
side isn't guaranteed as some apps don't need to resize the viewport if
their windows are already fullscreen.
The restoration is basically only needed if viewport size is changed.
At the point of entering fullscreen, we can safely assume that there
would be a viewport size change thereafter if the current visible size
and screen size are not equal. Based on this assumption, we can save
the scale and position before entering fullscreen and restore them in
setViewportSize() thereafter.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):

  • Api/WebPage_p.h:

(WebPagePrivate):

6:34 AM BuildingQtOnWindows edited by jocelyn.turcotte@digia.com
Remove the unsupported MSVC project file generation instructions. (diff)
6:10 AM Changeset in webkit [137742] by yurys@chromium.org
  • 6 edits in trunk/Source

Web Inspector: add data grid for exploring native heap graph
https://bugs.webkit.org/show_bug.cgi?id=105012

Reviewed by Pavel Feldman.

Source/WebCore:

Added a view for displaying native heap graph nodes.

  • inspector/HeapGraphSerializer.cpp:

(WebCore::HeapGraphSerializer::reportEdge):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeMemorySnapshotView):
(WebInspector.NativeMemorySnapshotView.prototype._onSelectedViewChanged):
(WebInspector.NativeMemorySnapshotView.prototype.get statusBarItems):
(WebInspector.NativeHeapGraphNode):
(WebInspector.NativeHeapGraphNode.prototype.id):
(WebInspector.NativeHeapGraphNode.prototype.type):
(WebInspector.NativeHeapGraphNode.prototype.size):
(WebInspector.NativeHeapGraphNode.prototype.className):
(WebInspector.NativeHeapGraphNode.prototype.name):
(WebInspector.NativeHeapGraphNode.prototype.hasReferencedNodes):
(WebInspector.NativeHeapGraphNode.prototype.referencedNodes):
(WebInspector.NativeHeapGraphNode.prototype._firstEdgePoistion):
(WebInspector.NativeHeapGraphNode.prototype._afterLastEdgePosition):
(WebInspector.NativeHeapGraphNode.prototype._getStringField):
(WebInspector.NativeHeapGraph):
(WebInspector.NativeHeapGraph.prototype.rootNodes):
(WebInspector.NativeHeapGraph.prototype._calculateNodeEdgeIndexes):
(WebInspector.NativeHeapGraphDataGrid):
(WebInspector.NativeHeapGraphDataGridRoot):
(WebInspector.NativeHeapGraphDataGridRoot.prototype._populate):
(WebInspector.NativeHeapGraphDataGridNode):
(WebInspector.NativeHeapGraphDataGridNode.prototype._populate):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked.didReceiveMemorySnapshot):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked):

Source/WTF:

Do not report edges with null target.

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::addObjectImpl):

5:54 AM Changeset in webkit [137741] by loislo@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Native Memory Instrumentation: do not validate InlineFlowBox objects against tcmalloc data.
https://bugs.webkit.org/show_bug.cgi?id=105001

Reviewed by Yury Semikhatsky.

This is a follow-up change for r137589.

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::reportMemoryUsage):
(WebCore):

  • rendering/InlineFlowBox.h:

(InlineFlowBox):

5:49 AM Changeset in webkit [137740] by fmalita@chromium.org
  • 7 edits in trunk/LayoutTests

[Chromium] Unreviewed rebaseline after Skia roll @6773.

  • platform/chromium-linux/fast/borders/borderRadiusDotted02-expected.png:
  • platform/chromium-linux/fast/borders/borderRadiusDotted03-expected.png:
  • platform/chromium-linux/fast/borders/borderRadiusDotted04-expected.png:
  • platform/chromium-mac/fast/borders/borderRadiusDotted02-expected.png:
  • platform/chromium-mac/fast/borders/borderRadiusDotted03-expected.png:
  • platform/chromium-mac/fast/borders/borderRadiusDotted04-expected.png:
4:04 AM Changeset in webkit [137739] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

ChildNodesLazySnapshot::nextNode() can crash in Debug builds
https://bugs.webkit.org/show_bug.cgi?id=104982

Reviewed by Ryosuke Niwa.

The original fix in r137702 was not enough. r137702 fixed a crash
in Release builds but didn't fix a crash in Debug builds.
We have to also change a return type of ChildNodesLazySnapshot::nextNode()
from a raw pointer to a RefPtr.

Test: fast/dom/insertedIntoDocument-no-crash.html
(Confirm that this test does not crash in Debug builds.)

  • dom/ContainerNode.h:

(WebCore::ChildNodesLazySnapshot::nextNode):

  • dom/ContainerNodeAlgorithms.cpp:

(WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument):
(WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromDocument):

3:58 AM Changeset in webkit [137738] by commit-queue@webkit.org
  • 4 edits
    4 adds in trunk

Text Autosizing: Don't autosize unwrappable blocks
https://bugs.webkit.org/show_bug.cgi?id=104925

Patch by John Mellor <johnme@chromium.org> on 2012-12-14
Reviewed by Julien Chaffraix.

Source/WebCore:

If we autosize an unwrappable block (white-space:nowrap/pre), it'll
expand sideways. This doesn't actually improve its legibility, and it
can often severely break web page layouts. This patch prevents us from
autosizing unwrappable blocks. A follow-up patch will address the more
complex issue of unwrappable inline elements.

Tests: fast/text-autosizing/unwrappable-blocks.html

fast/text-autosizing/unwrappable-inlines.html

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processContainer):

Use containerShouldbeAutosized instead of contentHeightIsConstrained.

(WebCore::contentHeightIsConstrained):

Unchanged, just moved lower down the file.

(WebCore::TextAutosizer::containerShouldbeAutosized):

Checks that the block is wrappable, and also that contentHeightIsConstrained is false.

(WebCore::TextAutosizer::measureDescendantTextWidth):

Use containerShouldbeAutosized instead of contentHeightIsConstrained.

  • rendering/TextAutosizer.h:

Declared containerShouldbeAutosized.

LayoutTests:

Added tests verifying that this prevents unwrappable blocks from being
autosized, and that this has no effect on unwrappable inlines.

  • fast/text-autosizing/unwrappable-blocks-expected.html: Added.
  • fast/text-autosizing/unwrappable-blocks.html: Added.
  • fast/text-autosizing/unwrappable-inlines-expected.html: Added.
  • fast/text-autosizing/unwrappable-inlines.html: Added.
3:16 AM Changeset in webkit [137737] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Duplicate scripts appear in workspace when script was referenced by url with a fragment part.
https://bugs.webkit.org/show_bug.cgi?id=105004

Reviewed by Alexander Pavlov.

  • inspector/front-end/NetworkUISourceCodeProvider.js:

(WebInspector.NetworkUISourceCodeProvider.prototype._parsedScriptSource):

2:56 AM Changeset in webkit [137736] by haraken@chromium.org
  • 3 edits in trunk/LayoutTests

Remove an exception message from insertedIntoDocument-no-crash-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=104982

Reviewed by Ryosuke Niwa.

To make the test result identical in all platforms, this patch
removes an exception message from insertedIntoDocument-no-crash-expected.txt.

  • fast/dom/insertedIntoDocument-no-crash-expected.txt:
  • fast/dom/insertedIntoDocument-no-crash.html:
2:54 AM Changeset in webkit [137735] by haraken@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed. Rebaselined images.

  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
2:51 AM Changeset in webkit [137734] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Marked fast/css/variables/case-insensitive.html as [ Pass Crash ]

  • platform/chromium/TestExpectations:
1:32 AM Changeset in webkit [137733] by commit-queue@webkit.org
  • 8 edits in trunk

Hours field of date/time input UI should respect step attribute
https://bugs.webkit.org/show_bug.cgi?id=104993

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-12-14
Reviewed by Kent Tamura.

Source/WebCore:

This patch makes step-up/-down UI of the hours field respect step attribute when possible.

Test: fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditBuilder::visitField): Pass step parameters to the hour field constructor.

  • html/shadow/DateTimeFieldElements.cpp:

(WebCore::DateTimeHourFieldElement::DateTimeHourFieldElement): Add Parameters argument.
(WebCore::DateTimeHourFieldElement::create): Ditto.

  • html/shadow/DateTimeFieldElements.h:

(DateTimeHourFieldElement): Ditto.

LayoutTests:

  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html:

Added test cases for hour field.

1:30 AM Changeset in webkit [137732] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Windows compilation fix after r137728.

  • inspector/InspectorAllInOne.cpp:
1:23 AM Changeset in webkit [137731] by shinyak@chromium.org
  • 6 edits
    2 adds in trunk

[Shadow DOM] ShadowRoot.getElementById() should work outside document.
https://bugs.webkit.org/show_bug.cgi?id=87815

Reviewed by Hajime Morita.

Source/WebCore:

ShadowRoot.getElementById() didn't work if ShadowRoot is outside document. We need to update id when an element
is in ShadowTree event if it is not in document.

For performance reason, we introduce IsInShadowTree flag, which enables us to check isInTreeScope() fast.
This is maintained in Element::insertedInto and removedFrom. Here, we're anxious about performance regression,
however our benchmark result shows this doesn't regress the performance.

I've measured Dromaeo/dom-modify.html and Parser/html5-full-render.html 2 times.

Dromaeo/dom-modify.html

35.21, 35.27 [runs/s] ---> 35.76, 35.56 [runs/s]

Parser/html5-full-render.html

4328.51, 4254.94 [ms] ---> 4277.14, 4222.43 [ms]

Test: fast/dom/shadow/getelementbyid-in-orphan.html

  • dom/Element.cpp:

(WebCore::Element::insertedInto):

  • dom/Element.h:

(WebCore::Element::updateId):

  • dom/Node.cpp:

(WebCore::Node::insertedInto): If the parent node is in shadow tree, this node should be also in the same shadow tree.
Since this node is inserted, parentOrHostNode() will not be null.
(WebCore::Node::removedFrom): When node is removed from ShadowTree, its treeScope() should not be ShadowRoot.

  • dom/Node.h:

(Node):
(WebCore::Node::isInShadowTree):
(WebCore::Node::isInTreeScope):

LayoutTests:

  • fast/dom/shadow/getelementbyid-in-orphan-expected.txt: Added.
  • fast/dom/shadow/getelementbyid-in-orphan.html: Added.
1:08 AM Changeset in webkit [137730] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

LayerTreeAgent should only be enabled upon restore if it was previously in the enabled state
https://bugs.webkit.org/show_bug.cgi?id=104887

Patch by Antoine Quint <Antoine Quint> on 2012-12-14
Reviewed by Pavel Feldman.

Check that we were previously in the enabled state before re-enabling the agent upon restore,
as suggested by Pavel Feldman in follow-up discussion to https://bugs.webkit.org/show_bug.cgi?id=103513.

  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::restore):

12:54 AM Changeset in webkit [137729] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: CPU Profile: Search in "heavy" mode is very slow.
https://bugs.webkit.org/show_bug.cgi?id=103682

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-14
Reviewed by Pavel Feldman.

In "heavy" mode the searchable tree is much larger than original tree.
That is why search can cause watchdog timer fired.

Simple optimization makes search much faster.

  • inspector/front-end/CPUProfileView.js:

(WebInspector.CPUProfileView.prototype.searchCanceled):
Fix cleanup.
(WebInspector.CPUProfileView.prototype.matchesQuery):
Precompute regexp.
(WebInspector.CPUProfileView.prototype.performSearch):
Use precomputed regexp instead of generating one on each iteration.

12:44 AM Changeset in webkit [137728] by yurys@chromium.org
  • 12 edits
    1 copy
    1 add in trunk/Source/WebCore

Web Inspector: collect native heap graph and report it to the front-end
https://bugs.webkit.org/show_bug.cgi?id=104888

Reviewed by Pavel Feldman.

Added an option to serialize native heap graph in a format similar to that
of JS heap profiler and send it in reply to getProcessMemoryDistribution
command. This is a first attempt and we likely change the report mechanism to
use a stream instread of sending whole graph at once.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/HeapGraphSerializer.cpp: Added.

(WebCore):
(HeapGraphNode):
(WebCore::HeapGraphNode::HeapGraphNode):
(HeapGraphEdge):
(WebCore::HeapGraphEdge::HeapGraphEdge):
(WebCore::HeapGraphSerializer::HeapGraphSerializer):
(WebCore::HeapGraphSerializer::~HeapGraphSerializer):
(WebCore::HeapGraphSerializer::serialize):
(WebCore::HeapGraphSerializer::reportNode):
(WebCore::HeapGraphSerializer::reportEdge):
(WebCore::HeapGraphSerializer::reportLeaf):
(WebCore::HeapGraphSerializer::reportBaseAddress):
(WebCore::HeapGraphSerializer::adjutEdgeTargets):
(WebCore::HeapGraphSerializer::addString):

  • inspector/HeapGraphSerializer.h: Copied from Source/WebCore/inspector/InspectorMemoryAgent.h.

(WebCore):
(HeapGraphSerializer):

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

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/InspectorMemoryAgent.h:

(InspectorMemoryAgent):

  • inspector/MemoryInstrumentationImpl.cpp:

(WebCore::MemoryInstrumentationClientImpl::reportNode):
(WebCore):
(WebCore::MemoryInstrumentationClientImpl::reportEdge):
(WebCore::MemoryInstrumentationClientImpl::reportLeaf):
(WebCore::MemoryInstrumentationClientImpl::reportBaseAddress):

  • inspector/MemoryInstrumentationImpl.h:

(WebCore):
(WebCore::MemoryInstrumentationClientImpl::MemoryInstrumentationClientImpl):
(MemoryInstrumentationClientImpl):

12:33 AM Changeset in webkit [137727] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

http/tests/inspector/resource-main-cookies.php is broken on Mac after r137585
https://bugs.webkit.org/show_bug.cgi?id=104977

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-14
Reviewed by Vsevolod Vlasov.

Adopted Webkit Bug 104893 changes.

  • http/tests/inspector/resource-main-cookies.php: Adopted changes.
12:32 AM Changeset in webkit [137726] by yosin@chromium.org
  • 11 edits
    2 adds in trunk/Source/WebCore

Handling autoscroll in EventHandler should be re-factor
https://bugs.webkit.org/show_bug.cgi?id=104764

Reviewed by Hajime Morita.

This patch introduces new class AutoscrollController for moving autoscroll
and panscroll from EventHandler class for ease of maintenance of
EventHandler and ease of adding autoscroll related features, e.g. autoscroll
during drag-and-drop, autoscoll by gesture.

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

  • CMakeLists.txt: Changed to add page/AutoscrollController.cpp
  • GNUmakefile.list.am: Changed to add page/AutoscrollController.{cpp,h}
  • Target.pri: Changed to add page/AutoscrollController.cpp
  • WebCore.gypi: Changed to add page/AutoscrollController.{cpp,h}
  • WebCore.vcproj/WebCore.vcproj: Changed to add page/AutoscrollController.{cpp,h}
  • WebCore.xcodeproj/project.pbxproj: Changed to add page/AutoscrollController.{cpp,h}
  • page/AutoscrollController.cpp: Added.

(WebCore::getMainFrame): Helper function.
(WebCore::AutoscrollController::AutoscrollController): Moved from EventHandler.
(WebCore::AutoscrollController::autoscrollRenderer): Moved from EventHandler.
(WebCore::AutoscrollController::autoscrollInProgress): Moved from EventHandler.
(WebCore::AutoscrollController::startAutoscrollForSelection): Replacement of EventHandler::handleAutoscroll().
(WebCore::AutoscrollController::stopAutoscrollTimer): Moveed from EventHandler.
(WebCore::AutoscrollController::updateAutoscrollRenderer): ditto
(WebCore::AutoscrollController::didPanScrollStart): Added for updating pan scrolling status of main frame.
(WebCore::AutoscrollController::didPanScrollStop): ditto
(WebCore::AutoscrollController::handleMouseReleaseEvent): Extracted from EventHandler.
(WebCore::AutoscrollController::panScrollInProgress): Replacement of EventHandler::m_panScrollInProgress.
(WebCore::AutoscrollController::startPanScrolling): Moved from EventHandler::startPanScrolling()
(WebCore::AutoscrollController::autoscrollTimerFired): Moved from EventHandler::autoscrollTimerFired().
(WebCore::AutoscrollController::startAutoscrollTimer): Moved from EventHandler::startAutoscrollTimer().
(WebCore::AutoscrollController::updatePanScrollState): Moved from EventHandler::updatePanScrollState().

  • page/AutoscrollController.h: Added.

(AutoscrollController):

  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler): Changed autoscroll and panscroll related member variable initializations to m_autoscrollController initialization.
(WebCore::EventHandler::handleMouseDraggedEvent): Changed to call AutoscrollController::startAutoscrollForSelection().
(WebCore::EventHandler::handleMouseReleaseEvent): Changed to remove m_autoscrollInProgress reference.
(WebCore::EventHandler::didPanScrollStart): Added for updating pan scrolling status of main frame.
(WebCore::EventHandler::didPanScrollStop): ditto
(WebCore::EventHandler::startPanScrolling): Changed to call AutoscrollController::startPanScrolling().
(WebCore::EventHandler::autoscrollRenderer): Changed to use AutoscrollController.
(WebCore::EventHandler::updateAutoscrollRenderer): ditto
(WebCore::EventHandler::autoscrollInProgress): ditto
(WebCore::EventHandler::panScrollInProgress): Added to replace m_panScrollInProgress.
(WebCore::EventHandler::stopAutoscrollTimer): Changed to use AutoscrollController.
(WebCore::EventHandler::selectCursor): Changed to use panScrollInProgress().
(WebCore::EventHandler::handleMousePressEvent): Chagned to call AutoscrollController::handleMousePressEvent().
(WebCore::EventHandler::keyEvent): Changed to use panScrollInProgress().

  • page/EventHandler.h:

(WebCore::EventHandler::autoscrollController): Added for using main frame's panScrollInProgress().
(WebCore::EventHandler::mouseDownWasInSubframe): Added for AutoscrollController.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::canAutoscroll): Moved from EventHandler.cpp.
(WebCore::RenderBox::findAutoscrollable): Moved from EventHandler.cpp.

  • rendering/RenderBox.h:

(RenderBox): Added new functions canAutoscroll() and findAutoscrollable().

12:27 AM Changeset in webkit [137725] by yosin@chromium.org
  • 2 edits
    6 copies in trunk/LayoutTests

Copy platform/win/fast/events/panScroll-* to platform/chromium-win/fast/events
https://bugs.webkit.org/show_bug.cgi?id=104991

This patch copies pan scrolling related test from Win port to Chromium-Win port
for catching pan scrolling breakage on Chromium-Win port.

  • platform/chromium/TestExpectations: Disables panScroll tests other than Windows.
  • platform/chromium-win/fast/events/panScroll-click-hyperlink-expected.txt: Copied from platform/mac/fast/events.
  • platform/chromium-win/fast/events/panScroll-click-hyperlink.html: ditto
  • platform/chromium-win/fast/events/panScroll-event-fired-expected.txt: ditto
  • platform/chromium-win/fast/events/panScroll-event-fired.html: ditto
  • platform/chromium-win/fast/events/panScroll-nested-divs-expected.txt: ditto.
  • platform/chromium-win/fast/events/panScroll-nested-divs.html: ditto
12:25 AM Changeset in webkit [137724] by commit-queue@webkit.org
  • 9 edits in trunk/Source

EME v0.1: Report defaultURL in KeyMessage.
https://bugs.webkit.org/show_bug.cgi?id=104284

Patch by David Dorwin <ddorwin@chromium.org> on 2012-12-14
Reviewed by Darin Fisher.

Passes defaultURL down from the media engine to HTMLMediaElement.
Only Valid URLs will be passed.

No test because Clear Key does not provide a defaultURL (in v0.1).

Source/WebCore:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerKeyMessage):

  • html/HTMLMediaElement.h:

(HTMLMediaElement):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::keyMessage):

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerKeyAdded):
(WebCore::MediaPlayerClient::mediaPlayerKeyError):
(WebCore::MediaPlayerClient::mediaPlayerKeyMessage):
(WebCore::MediaPlayerClient::mediaPlayerKeyNeeded):
(MediaPlayer):

Source/WebKit/chromium:

  • public/WebMediaPlayerClient.h:
  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::keyMessage):
(WebKit):
(WebKit::WebMediaPlayerClient::keyMessage):

  • src/WebMediaPlayerClientImpl.h:

(WebMediaPlayerClientImpl):

12:19 AM Changeset in webkit [137723] by yosin@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, rolling out r137720.
http://trac.webkit.org/changeset/137720
https://bugs.webkit.org/show_bug.cgi?id=104991

Wrong Commit

  • platform/chromium/TestExpectations:
12:14 AM Changeset in webkit [137722] by yosin@chromium.org
  • 1 edit
    6 deletes in trunk/LayoutTests

Unreviewed, rolling out r137719.
http://trac.webkit.org/changeset/137719
https://bugs.webkit.org/show_bug.cgi?id=104991

Wrong commit

  • platform/chromium-win/fast/events/panScroll-click-hyperlink-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-click-hyperlink.html: Removed.
  • platform/chromium-win/fast/events/panScroll-event-fired-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-event-fired.html: Removed.
  • platform/chromium-win/fast/events/panScroll-nested-divs-expected.txt: Removed.
  • platform/chromium-win/fast/events/panScroll-nested-divs.html: Removed.
12:13 AM Changeset in webkit [137721] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[GTK] accessibility/ellipsis-text.html is failing
https://bugs.webkit.org/show_bug.cgi?id=98365

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-12-14
Reviewed by Martin Robinson.

The test was failing due to differences in the accessible hierarchies
with respect to which object contains the accessible text. The solution
is to conditionalize the test.

  • accessibility/ellipsis-text.html: Modified to handle differences in

the accessible hierarchy

  • platform/gtk/TestExpectations: Unskipped the failing test
12:12 AM Changeset in webkit [137720] by yosin@chromium.org
  • 2 edits in trunk/LayoutTests

Suspend

12:12 AM Changeset in webkit [137719] by yosin@chromium.org
  • 1 edit
    6 copies in trunk/LayoutTests

Suspend 2012-12-14T14:48

12:01 AM Changeset in webkit [137718] by kenneth@webkit.org
  • 10 edits in trunk/Source/WebKit2

[EFL][WK2] Do not pass size to updateViewportSize
https://bugs.webkit.org/show_bug.cgi?id=104994

Reviewed by Gyuyoung Kim.

There is no need to pass size to updateViewportSize as we
have direct access to it. This makes the code differ less
from Qt.

  • UIProcess/API/efl/ewk_view.cpp:

(_ewk_view_smart_calculate):

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::pageDidRequestScroll):

  • UIProcess/efl/PageClientBase.h:

(PageClientBase):

  • UIProcess/efl/PageClientDefaultImpl.cpp:

(WebKit::PageClientDefaultImpl::updateViewportSize):

  • UIProcess/efl/PageClientDefaultImpl.h:

(PageClientDefaultImpl):

  • UIProcess/efl/PageClientLegacyImpl.cpp:

(WebKit::PageClientLegacyImpl::updateViewportSize):

  • UIProcess/efl/PageClientLegacyImpl.h:

(PageClientLegacyImpl):

  • UIProcess/efl/PageViewportControllerClientEfl.cpp:

(WebKit::PageViewportControllerClientEfl::updateViewportSize):

  • UIProcess/efl/PageViewportControllerClientEfl.h:

(PageViewportControllerClientEfl):

Dec 13, 2012:

11:45 PM Changeset in webkit [137717] by morrita@google.com
  • 5 edits in trunk/Source/WebCore

ContentDistributor and ShadowRootContentDistributionData should use RefPtr to hold elements.
https://bugs.webkit.org/show_bug.cgi?id=104918

Reviewed by Kentaro Hara.

This change turns some raw pointers to RefPtrs.

No new tests. Hard to write reliable fast tests since the error
reproduction needs GC to run in certain timing. Although original
report has a repdocution, it takes a few seconds before crash and
isn't suited for a layout test.

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::insertionPointList):

  • dom/ShadowRoot.h:

(ShadowRoot):

  • html/shadow/ContentDistributor.cpp:

(WebCore::ShadowRootContentDistributionData::ensureInsertionPointList):
(WebCore::ContentDistributor::findInsertionPointFor):
(WebCore::ContentDistributor::distribute):
(WebCore::ContentDistributor::invalidate):

  • html/shadow/ContentDistributor.h:

(ShadowRootContentDistributionData):
(ContentDistributor):

11:30 PM Changeset in webkit [137716] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix build warning
https://bugs.webkit.org/show_bug.cgi?id=104978

Patch by Sanghyup Lee <sh53.lee@samsung.com> on 2012-12-13
Reviewed by Kentaro Hara.

Initialize parameter 'downloadID' to fix 'unused parameter' build warning.

  • WebProcess/Downloads/Download.cpp:

(WebKit::Download::Download):

10:50 PM Changeset in webkit [137715] by morrita@google.com
  • 24 edits
    2 adds in trunk/Source/WebCore

NodeRenderingContext is slow due to ComposedShadowTreeWalker
https://bugs.webkit.org/show_bug.cgi?id=104332

Reviewed by Dimitri Glazkov.

NodeRenderingContext has some slowness due to the complexity of
ComposedShadowTreeWalker that NRC relies on. This change
creates some fast paths to address such slowness.

NodeRenderingTraversal module:

This change introduces NodeRenderingTraversal namespace, a sister
of NodeTraversal. NRT consists of a set of tree traversal
functions that is responsible for traversal in NRC. Before this
change, NRC directly used CSTW. This NRT module hides and narrows
the usage of CSTW.

  • Traversals provided by NRT have fast paths. In many case, such traversals don't need to use CSTW and just goes to neighboring nodes in a plain DOM way.
  • It also handles NRC specific traversal concerns like pseudo elements. CSTW::pseudoAwareNextSibling() and CSTW::pseudoAwarePreviousSibling() are merged into this module.
  • CSTW::ParentTraversalDetails is moved and renamed to NRT::ParentDetails with small modification. This is a pure refactoring: As the name implies, This class is used only by NRC and used during a traversal there.

NodeRenderingTraversal is an isolation layer between generic DOM and CSTW. This hides CSTW
behind the wall and will help further reduction of its usage.

Node::NeedsShadowTreeWalkerFlag flag:

NRT fast path is enabled by newly introduced NeedsShadowTreeWalker
node flag. Each DOM node is now markd as NeedsShadowTreeWalker if
it requires non-trivial traversal in NRT which uses CSTW. This
means that each node can go fast path unless it is marked with this flag.

A node is marked as it NeedsShadowTreeWalker if:

  • The node is a shadow boundary like InsertionPoint or ShadowRoot,
  • The node has pseudo elements like generated content or
  • The node is a pseudo element.

This criteria is defined in Node::needsShadowTreeWalkerSlow(). The node actually needs
the walker if the node or its parent is marked with this flag.

The original idea of this change was demonstrated by Antti Koivisto on bug 103208 and bug 104507.
This chagne has 2-3% speedup on Dromaeo/dom-modify/innerHTML on Apple Mac.

No new tests. Covered by existing tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/ComposedShadowTreeWalker.cpp:
  • dom/ComposedShadowTreeWalker.h:

(ComposedShadowTreeWalker): Move some part to NodeRenderingTraversal

  • dom/ContainerNode.h:

(WebCore::Node::needsShadowTreeWalker): Added. This is located here since it refers ContainerNode definition.
(WebCore):

  • dom/DOMAllInOne.cpp:
  • dom/Element.cpp:

(WebCore::Element::updatePseudoElement): Refactored.
(WebCore::Element::hasPseudoElements): Ditto.
(WebCore::Element::pseudoElement): Ditto.
(WebCore::Element::setPseudoElement): Refactored and added a flag update logic.
(WebCore):

  • dom/Element.h:

(Element):
(WebCore::Element::beforePseudoElement): Refactored.
(WebCore::Element::afterPseudoElement): Refactored.

  • dom/ElementRareData.h:

(WebCore::ElementRareData::hasPseudoElements): Factored out.

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::addShadowRoot): Added a flag update logic.

  • dom/Node.cpp:

(WebCore::Node::needsShadowTreeWalkerSlow): Added.

  • dom/Node.h:

(WebCore::Node::isInsertionPointNode): Added.
(Node):
(WebCore::Node::isInsertionPoint): Changed to use NeedsShadowTreeWalkerFlag.
(WebCore::Node::setNeedsShadowTreeWalker):
(WebCore::Node::resetNeedsShadowTreeWalker):

  • dom/NodeRenderingContext.cpp: Adopted NodeRenderingTraversal.

(WebCore::NodeRenderingContext::NodeRenderingContext):
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):
(WebCore::NodeRenderingContext::parentRenderer):
(WebCore::NodeRenderingContext::shouldCreateRenderer):

  • dom/NodeRenderingContext.h: Ditto.

(NodeRenderingContext):
(WebCore::NodeRenderingContext::parentNodeForRenderingAndStyle):

  • dom/NodeRenderingTraversal.cpp: Added.

(WebCore):
(NodeRenderingTraversal):
(WebCore::NodeRenderingTraversal::ParentDetails::didTraverseInsertionPoint): Moved from ComposedShadowTreeWalker
(WebCore::NodeRenderingTraversal::ParentDetails::didTraverseShadowRoot): Ditto.
(WebCore::NodeRenderingTraversal::parentSlow): Ditto.
(WebCore::NodeRenderingTraversal::nextSiblingSlow): Ditto. The original was pseudoAwareNextSibling.
(WebCore::NodeRenderingTraversal::previousSiblingSlow): Ditto. The original was pseudoAwarePreviousSibling.

  • dom/NodeRenderingTraversal.h: Added.

(WebCore):
(NodeRenderingTraversal):
(ParentDetails): Moved from ComposedShadowTreeWalker.
(WebCore::NodeRenderingTraversal::ParentDetails::ParentDetails):
(WebCore::NodeRenderingTraversal::ParentDetails::insertionPoint):
(WebCore::NodeRenderingTraversal::ParentDetails::resetStyleInheritance):
(WebCore::NodeRenderingTraversal::ParentDetails::outOfComposition):
(WebCore::NodeRenderingTraversal::ParentDetails::childWasOutOfComposition):
(WebCore::NodeRenderingTraversal::ParentDetails::operator==):
(WebCore::NodeRenderingTraversal::parent):
(WebCore::NodeRenderingTraversal::nextSibling):
(WebCore::NodeRenderingTraversal::previousSibling):

  • dom/PseudoElement.cpp:

(WebCore::PseudoElement::PseudoElement): Added an assertion.

  • dom/Text.cpp:
  • html/HTMLOptGroupElement.cpp: Added a #include which revealed by a chagne on NodeRenderingContext.h
  • html/HTMLOptionElement.cpp: Ditto.
  • html/HTMLProgressElement.cpp: Dito.
  • html/shadow/InsertionPoint.h: Added an override of isInsertionPointNode().
10:41 PM Changeset in webkit [137714] by eric@webkit.org
  • 5 edits in trunk/Tools

Add --profiler=PROFILER option to run-perf-tests to allow specifying which profiler to use on platforms with many
https://bugs.webkit.org/show_bug.cgi?id=104891

Reviewed by Ryosuke Niwa.

I also implemented a very simple "Sample" Profiler using
Mac OS X's /usr/bin/sample command line tool.

The real reason for this abstraction is to make it easy
to support both perf and pprof on linux which seem to
be about equally popular among those I ask in the Chrome team.

  • Scripts/webkitpy/common/system/profiler.py:

(ProfilerFactory.create_profiler):
(ProfilerFactory):
(ProfilerFactory.available_profilers_by_name):
(ProfilerFactory.default_profiler_name):
(Sample):
(Sample.init):
(Sample.attach_to_pid):
(Sample.profile_after_exit):
(IProfiler.attach_to_pid):

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

(Driver.init):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

9:43 PM Changeset in webkit [137713] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

Refactoring: Fix indentation of ChromeClient.h
https://bugs.webkit.org/show_bug.cgi?id=104989

Reviewed by Kentaro Hara.

The contents of an outermost namespace block should not be indented.
http://www.webkit.org/coding/coding-style.html#indentation-namespace

No behavior change.

  • page/ChromeClient.h:
8:56 PM Changeset in webkit [137712] by commit-queue@webkit.org
  • 9 edits in trunk

Seconds/Minutes field of date/time input UI should respect step attribute
https://bugs.webkit.org/show_bug.cgi?id=104985

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-12-13
Reviewed by Kent Tamura.

Source/WebCore:

This patch makes step-up/-down UI of the seconds and minutes fields respect
step attribute when possible.

Test: fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html

  • html/shadow/DateTimeEditElement.cpp:

(DateTimeEditBuilder):
(WebCore::DateTimeEditBuilder::visitField): Compute step parameters for seconds and minutes fields, and pass it to the field element constructors.
(WebCore::DateTimeEditBuilder::createNumericFieldParameters): Added.

  • html/shadow/DateTimeFieldElements.cpp:

(WebCore::DateTimeMillisecondFieldElement::DateTimeMillisecondFieldElement): Use Parameters instead of step and stepBase.
(WebCore::DateTimeMillisecondFieldElement::create): Ditto.
(WebCore::DateTimeMinuteFieldElement::DateTimeMinuteFieldElement): Add Parameters argument.
(WebCore::DateTimeMinuteFieldElement::create): Ditto.
(WebCore::DateTimeSecondFieldElement::DateTimeSecondFieldElement): Ditto.
(WebCore::DateTimeSecondFieldElement::create): Ditto.

  • html/shadow/DateTimeFieldElements.h:

(DateTimeMillisecondFieldElement): Use Parameters instead of step and stepBase.
(DateTimeMinuteFieldElement): Add Parameters argument.
(DateTimeSecondFieldElement): Ditto.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::DateTimeNumericFieldElement): Use Parameters instead of step and stepBase.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement):
(WebCore::DateTimeNumericFieldElement::Parameters::Parameters):
(Parameters): Added.

LayoutTests:

  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html:

Added test cases for seconds and minutes fields.
Update an expectation for milliseconds: value=07:13:00.500, step=0 should round to 07:13:00.000
(setInputAttributes): Set value attribute first to avoid the focused field becomes read-only and unfocused.

8:52 PM Changeset in webkit [137711] by eric@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, fixing typo in python unittest.

I changed the default profiler on linux from pprof to perf in
bug 104971. I failed to update the unittest results at that time.

  • Scripts/webkitpy/common/system/profiler_unittest.py:

(ProfilerFactoryTest.test_basic):

8:48 PM Changeset in webkit [137710] by vollick@chromium.org
  • 9 edits in trunk

[chromium] Add a virtual test suite for enabling opt-in to composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=104911

Reviewed by Dirk Pranke.

Tools:

Adds two virtual tests suites to run the tests in
compositing/overflow/ and scrollbars/ with the flag
--enable-accelerated-overflow-scroll, which I've also plumbed through
in the usual way.

  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(main):

  • DumpRenderTree/chromium/TestRunner/public/WebPreferences.h:

(WebPreferences):

  • DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:

(WebTestRunner::WebPreferences::reset):
(WebTestRunner::WebPreferences::applyTo):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):
(TestShell::resetWebSettings):

  • DumpRenderTree/chromium/TestShell.h:

(TestShell::setAcceleratedCompositingForOverflowScrollEnabled):
(TestShell):

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

(ChromiumPort.virtual_test_suites):

LayoutTests:

Updated the test expectations for the virtual test suite to match the
usual chromium test expectations.

  • platform/chromium/TestExpectations:
8:41 PM Changeset in webkit [137709] by fpizlo@apple.com
  • 13 edits in trunk/Source

Attempt to rationalize and simplify WTF::binarySearch
https://bugs.webkit.org/show_bug.cgi?id=104890

Reviewed by Maciej Stachowiak.

Source/JavaScriptCore:

Switch to using the new binarySearch() API. No change in behavior.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::bytecodeOffset):
(JSC::CodeBlock::codeOriginForReturn):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::getStubInfo):
(JSC::CodeBlock::getByValInfo):
(JSC::CodeBlock::getCallLinkInfo):
(JSC::CodeBlock::dfgOSREntryDataForBytecodeIndex):
(JSC::CodeBlock::valueProfileForBytecodeOffset):
(JSC::CodeBlock::rareCaseProfileForBytecodeOffset):
(JSC::CodeBlock::specialFastCaseProfileForBytecodeOffset):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::blockIndexForBytecodeOffset):

  • dfg/DFGMinifiedGraph.h:

(JSC::DFG::MinifiedGraph::at):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • profiler/ProfilerBytecodeSequence.cpp:

(JSC::Profiler::BytecodeSequence::indexForBytecodeIndex):

Source/WebCore:

Switch to using the new binarySearch() API. No change in behavior, so no new tests.

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::findInstanceTime):

Source/WTF:

Binary search now has three modes:

The default: assert that the key was found, but return an adjacent element if it
wasn't found, if asserts are turned off.

tryBinarySearch: return 0 if the key wasn't found.

approximateBinarySearch: if the key is not found, return an adjacent element (either
the left or right; no guarantee which).

This also reduces the number of variants of binarySearch. The functor variant is now
gone because binarySearch now always uses a functor for the key extractor. The
generic variant is now gone because binarySearch always expects an array type that
can do operator[].

  • wtf/StdLibExtras.h:

(WTF::binarySearchImpl):
(WTF::binarySearch):
(WTF::tryBinarySearch):
(WTF::approximateBinarySearch):

8:40 PM Changeset in webkit [137708] by tasak@google.com
  • 9 edits
    4 adds in trunk

[Shadow DOM]: scoped styles are not applied in the cascade order.
https://bugs.webkit.org/show_bug.cgi?id=103239

Reviewed by Dimitri Glazkov.

Source/WebCore:

If the scoping elements of two declarations have an ancestor/
descendant relationship, the declaration whose scoping element is
the descendant should win.
c.f. http://dev.w3.org/csswg/css3-cascade/#cascade

Test: fast/css/style-scoped/style-scoped-nested.html

fast/css/style-scoped/style-scoped-with-important-rule.html

  • css/RuleSet.cpp:

(WebCore::RuleSet::addRule):
Removed specificity for @host @-rules. Now @host @-rules use the
cascading order instead.

  • css/RuleSet.h:

Removed increaseSpecificity. The method is used by only @host @-rules.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::matchScopedAuthorRules):
(WebCore::StyleResolver::matchHostRules):
(WebCore::StyleResolver::matchAuthorRules):
Modified to invoke sortAndTransferMatchedRules per scoping element.
The order of "matchXXXRules" must be the same as the cascading order.
So matchHostRules was invoked after collecting all scoped author rules.

  • css/StyleScopeResolver.cpp:

(WebCore::StyleScopeResolver::addHostRule):
Removed RuleIsHostRule. We don't need the flag.

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::registerWithScopingNode):
Needs to pass the last test case of style-scoped-nested.html.
When appending some style element to a shadow root, we should recalc
styles of all elements in the shadow dom tree. And if the style
element has @host @-rules, we have to update the host's style.

LayoutTests:

  • fast/css/style-scoped/style-scoped-nested-expected.txt: Added.
  • fast/css/style-scoped/style-scoped-nested.html: Added.
  • fast/css/style-scoped/style-scoped-with-important-rule-expected.txt: Added.
  • fast/css/style-scoped/style-scoped-with-important-rule.html: Added.
  • fast/regions/style-scoped-in-flow-override-region-styling-expected.html:
  • fast/regions/style-scoped-in-flow-override-region-styling.html:

Changed the test's expectation.
Since @region's scoping element is :root but scoped styles' scoping
element is a descendant element of :root, scoped styles should win.

8:38 PM Changeset in webkit [137707] by fpizlo@apple.com
  • 3 edits in trunk/Source/WebCore

MediaPlayerPrivateAVFoundation::m_inbandTrackConfigurationPending is unused except when HAVE(AVFOUNDATION_TEXT_TRACK_SUPPORT)
https://bugs.webkit.org/show_bug.cgi?id=104987

Rubber stamped by Michael Saboff.

No change in behavior so no new tests.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:

(MediaPlayerPrivateAVFoundation):

8:30 PM Changeset in webkit [137706] by eric@webkit.org
  • 3 edits in trunk/Tools

Use 'perf' to profile on linux instead of google-pprof by default
https://bugs.webkit.org/show_bug.cgi?id=104971

Reviewed by Dirk Pranke.

This makes Chromium Linux match Chromium Android and use the perf
tool by default. Once https://bugs.webkit.org/show_bug.cgi?id=104891
lands it will be possible to use pprof again on Linux.

This is slightly more advanced than the AndroidPerf profiler as
instead of using a timeout on "perf record" I instead watch
for the termination of the target process and then control-C
the 'perf record' process. This required me to add two new
methods to Executive, one to have a limited-time wait() and
the second to be able to send a control-C. I chose to add
these to Executive to make them easier to mock/fix-for-win32
at a later time if needed.

  • Scripts/webkitpy/common/system/executive.py:

(Executive.wait_limited):
(Executive.interrupt):

  • Scripts/webkitpy/common/system/profiler.py:

(ProfilerFactory.create_profiler):
(Perf):
(Perf.init):
(Perf._perf_path):
(Perf.attach_to_pid):
(Perf._first_ten_lines_of_profile):
(Perf.profile_after_exit):

8:19 PM Changeset in webkit [137705] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Don't assert that flags <= 0x3ff in JSTypeInfo
https://bugs.webkit.org/show_bug.cgi?id=104988

Reviewed by Sam Weinig.

This assertion doesn't accomplish anything other than crashes.

  • runtime/JSTypeInfo.h:

(JSC::TypeInfo::TypeInfo):

8:04 PM Changeset in webkit [137704] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed. Rebaselined run-bindings-tests results.

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

(JSTestCustomNamedGetter):

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

(JSTestEventTarget):

7:47 PM Changeset in webkit [137703] by yosin@chromium.org
  • 11 edits
    2 deletes in trunk/Source/WebCore

Unreviewed, rolling out r137691.
http://trac.webkit.org/changeset/137691
https://bugs.webkit.org/show_bug.cgi?id=104764

panscroll test on AppleWin failed

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • page/AutoscrollController.cpp: Removed.
  • page/AutoscrollController.h: Removed.
  • page/EventHandler.cpp:

(WebCore):
(WebCore::EventHandler::EventHandler):
(WebCore::canAutoscroll):
(WebCore::EventHandler::handleMouseDraggedEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::EventHandler::handleAutoscroll):
(WebCore::EventHandler::autoscrollTimerFired):
(WebCore::EventHandler::startPanScrolling):
(WebCore::EventHandler::updatePanScrollState):
(WebCore::EventHandler::autoscrollRenderer):
(WebCore::EventHandler::updateAutoscrollRenderer):
(WebCore::EventHandler::setAutoscrollRenderer):
(WebCore::EventHandler::startAutoscrollTimer):
(WebCore::EventHandler::stopAutoscrollTimer):
(WebCore::EventHandler::selectCursor):
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::keyEvent):

  • page/EventHandler.h:

(EventHandler):
(WebCore::EventHandler::autoscrollInProgress):

  • rendering/RenderBox.cpp:
  • rendering/RenderBox.h:

(RenderBox):

7:42 PM Changeset in webkit [137702] by haraken@chromium.org
  • 3 edits
    2 adds in trunk

ChildNodesLazySnapshot::nextNode() can crash
https://bugs.webkit.org/show_bug.cgi?id=104982

Reviewed by Hajime Morita.

ChildNodesLazySnapshot::nextNode() can crash for
fast/dom/insertedIntoDocument-no-crash.html.
The root cause is that ChildNodesLazySnapshot::m_currentNode
was not a RefPtr. This patch changes it to a RefPtr.

Test: fast/dom/insertedIntoDocument-no-crash.html

Source/WebCore:

  • dom/ContainerNode.h:

(WebCore::ChildNodesLazySnapshot::nextNode):
(WebCore::ChildNodesLazySnapshot::takeSnapshot):
(ChildNodesLazySnapshot):

LayoutTests:

  • fast/dom/insertedIntoDocument-no-crash-expected.txt: Added.
  • fast/dom/insertedIntoDocument-no-crash.html: Added.
7:28 PM Changeset in webkit [137701] by pdr@google.com
  • 3 edits
    2 adds in trunk

Clear m_timeContainer on SVGSMILElement removal.
https://bugs.webkit.org/show_bug.cgi?id=104972

Reviewed by Abhishek Arya.

Source/WebCore:

This patch fixes a regression introduced by r137509 where we did not clear
m_timeContainer in SVGSMILElement::removedFrom.

Test: svg/custom/removed-from-animation-crash.html

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::removedFrom):

LayoutTests:

  • svg/custom/removed-from-animation-crash-expected.txt: Added.
  • svg/custom/removed-from-animation-crash.html: Added.
7:24 PM Changeset in webkit [137700] by fpizlo@apple.com
  • 8 edits
    6 adds in trunk

Named lookups on HTML documents produce inconsistent results in JavaScriptCore bindings
https://bugs.webkit.org/show_bug.cgi?id=104623

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Add the notion of objects that HasImpureGetOwnPropertySlot, and use that to inhibit prototype chain caching
in some cases. This appears to be perf-neutral on benchmarks that we track.

  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDProtoList):

  • jit/JITStubs.cpp:

(JSC::JITThunks::tryCacheGetByID):
(JSC::DEFINE_STUB_FUNCTION):

  • runtime/JSTypeInfo.h:

(JSC):
(JSC::TypeInfo::hasImpureGetOwnPropertySlot):

  • runtime/Operations.h:

(JSC::normalizePrototypeChainForChainAccess):

Source/WebCore:

All DOM objects that have named getters or directly override getOwnPropertySlot are now marked as
HasImpureGetOwnPropertySlot.

Tests: fast/js/prototype-chain-caching-with-impure-get-own-property-slot-traps

fast/js/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):

LayoutTests:

  • fast/js/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-expected.txt: Added.
  • fast/js/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps.html: Added.
  • fast/js/prototype-chain-caching-with-impure-get-own-property-slot-traps-expected.txt: Added.
  • fast/js/prototype-chain-caching-with-impure-get-own-property-slot-traps.html: Added.
  • fast/js/script-tests/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps.js: Added.

(f):

  • fast/js/script-tests/prototype-chain-caching-with-impure-get-own-property-slot-traps.js: Added.

(f):

7:16 PM Changeset in webkit [137699] by fpizlo@apple.com
  • 13 edits in trunk/Source/JavaScriptCore

Unreviewed, roll out http://trac.webkit.org/changeset/137683.
It broke gmail.

  • dfg/DFGAbstractState.cpp:

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

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::putStructureStoreElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGNodeType.h:

(DFG):

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

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

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • runtime/Operations.cpp:

(JSC::jsTypeStringForValue):
(JSC):

  • runtime/Operations.h:

(JSC):

7:13 PM Changeset in webkit [137698] by noel.gordon@gmail.com
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed gardening.
https://bugs.webkit.org/show_bug.cgi?id=50282

Skip imagemap tests to avoid incorrect rebaselines such as r136489. The imagemap tests
won't work on chromium until Skia is taught to draw focus rings along arbitrary paths.

  • platform/chromium/TestExpectations:
6:58 PM Changeset in webkit [137697] by wangxianzhu@chromium.org
  • 3 edits
    7 adds in trunk

Out-of-view check of fixed position element in frame is incorrect when page is scaled
https://bugs.webkit.org/show_bug.cgi?id=104943

Reviewed by Simon Fraser.

Source/WebCore:

Use frameScaleFactor instead of pageScaleFactor to scale the layer bounds.

Tests: compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-scroll.html

compositing/layer-creation/fixed-position-out-of-view-scaled-iframe.html

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

LayoutTests:

Test cases.

  • compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-expected.txt: Added.
  • compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-scroll-expected.txt: Added.
  • compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-scroll.html: Added.
  • compositing/layer-creation/fixed-position-out-of-view-scaled-iframe.html: Added.
  • compositing/layer-creation/resources/fixed-position-out-of-view-frame-scroll.html: Added.
  • compositing/layer-creation/resources/fixed-position-out-of-view-frame.html: Added.
6:24 PM Changeset in webkit [137696] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1312

Merge 136554
BUG=158533
Review URL: https://codereview.chromium.org/11569024

6:17 PM WebKit Team edited by jonathan.dong.webkit@gmail.com
remove "Torch Mobile" as I leave the company (diff)
6:13 PM Changeset in webkit [137695] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Source/WebCore: Positioned replaced elements should resolve vertical margins against their containing
block's logical width
https://bugs.webkit.org/show_bug.cgi?id=103579

Patch by Bear Travis <betravis@adobe.com> on 2012-12-13
Reviewed by Emil A Eklund.

According to the CSS box model & writing modes specifications, percentage margin
& padding values, including top & bottom, should be resolved based on the
containing block's logical width (logical with respect to the containing block's
writing mode).
http://www.w3.org/TR/CSS2/box.html#margin-properties
http://dev.w3.org/csswg/css3-writing-modes/#dimension-mapping

Previously, a positioned replaced element resolved margin before/after relative to
its inline direction (containerLogicalHeight), and margin start/end relative to
its block direction (containerLogicalWidth). This patch measures the container's
logical width in its own inline direction (containerRelativeLogicalWidth) to
resolve all margin percentage values.

Test: fast/writing-mode/percentage-margins-absolute-replaced.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePositionedLogicalWidthReplaced): Calculate the logical
width of the container, and use it to calculate margins.
(WebCore::RenderBox::computePositionedLogicalHeightReplaced): Ditto.

LayoutTests: Positioned replaced elements should resolve vertical margins against their
containing block's logical width
https://bugs.webkit.org/show_bug.cgi?id=103579

Patch by Bear Travis <betravis@adobe.com> on 2012-12-13
Reviewed by Emil A Eklund.

Test that different writing mode combinations between a parent and child correctly
compute percentage margins for an absolutely positioned replaced child.

  • fast/writing-mode/percentage-margins-absolute-replaced-expected.txt: Added.
  • fast/writing-mode/percentage-margins-absolute-replaced.html: Added.
6:12 PM Changeset in webkit [137694] by cevans@google.com
  • 2 edits
    2 copies in branches/chromium/1312

Merge 136541
BUG=163994
Review URL: https://codereview.chromium.org/11564028

6:02 PM Changeset in webkit [137693] by jparent@chromium.org
  • 10 edits in trunk/Tools

Dashboard cleanup: remove usage of global g_builders.
https://bugs.webkit.org/show_bug.cgi?id=104941

Reviewed by Dirk Pranke.

The dashboards use a lot of global state, which makes hacking on them
complicated. This change removes the use of one such global: g_builders.
In most cases, we can just use currentBuilderGroup().builders instead,
which is now currentBuilders().
Surprisingly, the most changes were required to the unit tests, since
they were even bigger offenders of bad hygiene, relying on global state
set by other tests, randomly clobbering global variables in ways the
real code doesn't, etc.

  • TestResultServer/static-dashboards/builders.js:

(BuilderGroup.prototype.setup):

  • TestResultServer/static-dashboards/dashboard_base.js:

(.switch.return):
(htmlForTestTypeSwitcher):

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(generatePage):
(getAllTestsTrie):
(processTestRunsForAllBuilders):
(showPopupForBuild):
(generatePageForExpectationsUpdate):
(loadExpectationsLayoutTests):

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

(resetGlobals):
(stubResultsByBuilder):
(test):

  • TestResultServer/static-dashboards/loader.js:

(.):

  • TestResultServer/static-dashboards/loader_unittests.js:
5:58 PM Changeset in webkit [137692] by eric@webkit.org
  • 4 edits in trunk/Tools

Callers should not have to stringify args before calling Executive run_command/popen
https://bugs.webkit.org/show_bug.cgi?id=104975

Reviewed by Dirk Pranke.

One could argue that we should match the python call syntax here,
but I think it's a more friendly API if we automagically handle
stringification of args in run_command, etc.
This removes map(unicode, args) from several callsites.

When I first tried to land this change, I didn't realize that
Executive._command_for_printing depended on this behavior
having been applied to args in run_command. The fix is to
call _stringify_args in both run_command and popen.
This is slightly redundant, but given how short args have to be
(due to shell limits), I don't think the double-encode check
matters in practice.

This is slightly complicated by the fact that apache_http_server.py
is the one caller in our codebase which uses shell=True.
shell=True is a well-documented trail-of-tears:
http://stackoverflow.com/questions/3172470/actual-meaning-of-shell-true-in-subprocess
but to support this legacy (windows-only) code (which I can't easily test)
I've added an if-hack to avoid stringifying the the popen(shell=True) case.

  • Scripts/webkitpy/common/system/executive.py:

(Executive.run_command):
(Executive._stringify_args):
(Executive.popen):

  • Scripts/webkitpy/common/system/executive_unittest.py:

(ExecutiveTest.test_auto_stringify_args):

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

(attach_to_pid):

5:45 PM Changeset in webkit [137691] by yosin@chromium.org
  • 11 edits
    2 adds in trunk/Source/WebCore

Handling autoscroll in EventHandler should be re-factor
https://bugs.webkit.org/show_bug.cgi?id=104764

Reviewed by Hajime Morita.

This patch introduces new class AutoscrollController for moving autoscroll
and panscroll from EventHandler class for ease of maintenance of
EventHandler and ease of adding autoscroll related features, e.g. autoscroll
during drag-and-drop, autoscoll by gesture.

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

  • CMakeLists.txt: Changed to add page/AutoscrollController.cpp
  • GNUmakefile.list.am: Changed to add page/AutoscrollController.{cpp,h}
  • Target.pri: Changed to add page/AutoscrollController.cpp
  • WebCore.gypi: Changed to add page/AutoscrollController.{cpp,h}
  • WebCore.vcproj/WebCore.vcproj: Changed to add page/AutoscrollController.{cpp,h}
  • WebCore.xcodeproj/project.pbxproj: Changed to add page/AutoscrollController.{cpp,h}
  • page/AutoscrollController.cpp: Added.

(WebCore::getMainFrame): Helper function.
(WebCore::AutoscrollController::AutoscrollController): Moved from EventHandler.
(WebCore::AutoscrollController::autoscrollRenderer): Moved from EventHandler.
(WebCore::AutoscrollController::autoscrollInProgress): Moved from EventHandler.
(WebCore::AutoscrollController::startAutoscrollForSelection): Replacement of EventHandler::handleAutoscroll().
(WebCore::AutoscrollController::stopAutoscrollTimer): Moveed from EventHandler.
(WebCore::AutoscrollController::updateAutoscrollRenderer): ditto
(WebCore::AutoscrollController::didPanScrollStart): Added for updating pan scrolling status of main frame.
(WebCore::AutoscrollController::didPanScrollStop): ditto
(WebCore::AutoscrollController::handleMouseReleaseEvent): Extracted from EventHandler.
(WebCore::AutoscrollController::panScrollInProgress): Replacement of EventHandler::m_panScrollInProgress.
(WebCore::AutoscrollController::startPanScrolling): Moved from EventHandler::startPanScrolling()
(WebCore::AutoscrollController::autoscrollTimerFired): Moved from EventHandler::autoscrollTimerFired().
(WebCore::AutoscrollController::startAutoscrollTimer): Moved from EventHandler::startAutoscrollTimer().
(WebCore::AutoscrollController::updatePanScrollState): Moved from EventHandler::updatePanScrollState().

  • page/AutoscrollController.h: Added.

(AutoscrollController):

  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler): Changed autoscroll and panscroll related member variable initializations to m_autoscrollController initialization.
(WebCore::EventHandler::handleMouseDraggedEvent): Changed to call AutoscrollController::startAutoscrollForSelection().
(WebCore::EventHandler::handleMouseReleaseEvent): Changed to remove m_autoscrollInProgress reference.
(WebCore::EventHandler::didPanScrollStart): Added for updating pan scrolling status of main frame.
(WebCore::EventHandler::didPanScrollStop): ditto
(WebCore::EventHandler::startPanScrolling): Changed to call AutoscrollController::startPanScrolling().
(WebCore::EventHandler::autoscrollRenderer): Changed to use AutoscrollController.
(WebCore::EventHandler::updateAutoscrollRenderer): ditto
(WebCore::EventHandler::autoscrollInProgress): ditto
(WebCore::EventHandler::panScrollInProgress): Added to replace m_panScrollInProgress.
(WebCore::EventHandler::stopAutoscrollTimer): Changed to use AutoscrollController.
(WebCore::EventHandler::selectCursor): Changed to use panScrollInProgress().
(WebCore::EventHandler::handleMousePressEvent): Chagned to call AutoscrollController::handleMousePressEvent().
(WebCore::EventHandler::keyEvent): Changed to use panScrollInProgress().

  • page/EventHandler.h:

(WebCore::EventHandler::autoscrollController): Added for using main frame's panScrollInProgress().
(WebCore::EventHandler::mouseDownWasInSubframe): Added for AutoscrollController.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::canAutoscroll): Moved from EventHandler.cpp.
(WebCore::RenderBox::findAutoscrollable): Moved from EventHandler.cpp.

  • rendering/RenderBox.h:

(RenderBox): Added new functions canAutoscroll() and findAutoscrollable().

5:44 PM Changeset in webkit [137690] by Beth Dakin
  • 4 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=102599
ASSERT loading Acid3 test in run-safari --debug (r135050)

Reviewed by Simon Fraser.

New flag IncludeCompositedDescendants will always calculate the layer bounds for
descendants, even when the are composited.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateLayerBounds):

  • rendering/RenderLayer.h:

calculateCompositedBounds() should not include this new flag, so instead of
calling that, call calculateLayerBounds() directly with the
IncludeCompositedDescendants flag. This will get us the information we need
upfront and avoid the toggling later on.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

5:29 PM Changeset in webkit [137689] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Resource loads sometimes stall
https://bugs.webkit.org/show_bug.cgi?id=104976

Reviewed by Anders Carlsson.

Quick and dirty partial fix.

  • Shared/BlockingResponseMap.h: (BlockingResponseMap::didReceiveResponse): Wake up all threads, so that non-sequential responses don't break us. This is still horribly inefficient,but should improve behavior quite a bit.
5:15 PM Changeset in webkit [137688] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Fix unused parameter compile warnings
https://bugs.webkit.org/show_bug.cgi?id=104907

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-13
Reviewed by Kentaro Hara.

Use UNUSED_PARAM macro to fix build warning -Wunused-parameter
when ENABLE_INSPECTOR is disabled.

Source/WebKit/efl:

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::evaluateInWebInspector):

Source/WebKit2:

  • UIProcess/API/C/WKInspector.cpp:

(WKInspectorGetPage):
(WKInspectorIsVisible):
(WKInspectorIsFront):
(WKInspectorShow):
(WKInspectorClose):
(WKInspectorShowConsole):
(WKInspectorShowResources):
(WKInspectorShowMainResourceForFrame):
(WKInspectorIsAttached):
(WKInspectorAttach):
(WKInspectorDetach):
(WKInspectorIsDebuggingJavaScript):
(WKInspectorToggleJavaScriptDebugging):
(WKInspectorIsProfilingJavaScript):
(WKInspectorToggleJavaScriptProfiling):
(WKInspectorIsProfilingPage):
(WKInspectorTogglePageProfiling):

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetInspector):

5:10 PM Changeset in webkit [137687] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[QT][GTK][EFL] Add guard for WebInspectorServer
https://bugs.webkit.org/show_bug.cgi?id=104889

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-13
Reviewed by Kenneth Rohde Christiansen.

Add ENABLE(INSPECTOR_SERVER) guard around platform-specific implementation for WebInspectorServer.

  • UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp:
  • UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
  • UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
5:09 PM Changeset in webkit [137686] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source

Don't consider container nodes of other disambiguated nodes
https://bugs.webkit.org/show_bug.cgi?id=104619

Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-12-13
Reviewed by Eric Seidel.

Source/WebCore:

It is not uncommon to have a clickable <div> that contains other clickable objects.
This heuristic avoids excessive disambiguation in that case.

New unit test: WebFrameTest.DisambiguationPopupNoContainer

  • page/TouchDisambiguation.cpp:

(WebCore::findGoodTouchTargets):

Source/WebKit/chromium:

Added a test to track the new disambiguation popup heuristics.

  • tests/WebFrameTest.cpp:
  • tests/data/disambiguation_popup_no_container.html: Added.
4:42 PM Changeset in webkit [137685] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Coordinated Graphics: Reorder messages to CoordinatedLayerTreeHostProxy
https://bugs.webkit.org/show_bug.cgi?id=103843

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-13
Reviewed by Noam Rosenthal.

Clarify LayerTreeRenderer::setRootLayerID() can be called only once during its
lifecycle. LayerTreeRenderer, CoordinatedLayerTreeHost and CoordinatedLayerTreeHostProxy
have the same lifecycle to WebPage and the root layer is reused even if loading
new page, so it is impossible to call LayerTreeRenderer::setRootLayerID() more
than twice.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::setRootLayerID):

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

Layout Test fast/events/mouse-cursor-image-set.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=104945

Patch by Rick Byers <rbyers@chromium.org> on 2012-12-13
Reviewed by Beth Dakin.

Fix typo that prevented one of the images from being reliably pre-loaded.
A deeper fix to avoid these class of issues is tracked by
https://bugs.webkit.org/show_bug.cgi?id=104952

  • fast/events/mouse-cursor-image-set.html:
4:32 PM Changeset in webkit [137683] by oliver@apple.com
  • 13 edits in trunk/Source/JavaScriptCore

Support op_typeof in the DFG
https://bugs.webkit.org/show_bug.cgi?id=98898

Reviewed by Filip Pizlo.

Adds a TypeOf node to the DFG to support op_typeof.

  • dfg/DFGAbstractState.cpp:

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

We try to determine the result early here, and substitute in a constant.
Otherwise we leave the node intact, and set the result type to SpecString.

  • dfg/DFGByteCodeParser.cpp:

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

Parse op_typeof

  • dfg/DFGCSEPhase.cpp:

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

TypeOf nodes can be subjected to pure CSE

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

We can handle typeof.

  • dfg/DFGNodeType.h:

(DFG):

Define the node.

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h: Add operationTypeOf to support the non-trivial cases.
  • dfg/DFGPredictionPropagationPhase.cpp:

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

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

Actual codegen

  • runtime/Operations.cpp:

(JSC::jsTypeStringForValue):
(JSC):

  • runtime/Operations.h:

(JSC):

Some refactoring to allow us to get the type string for an
object without needing a callframe.

4:30 PM Changeset in webkit [137682] by enne@google.com
  • 14 edits
    5 deletes in trunk

Unreviewed, rolling out r137645, r137646, and r137667.
http://trac.webkit.org/changeset/137645
http://trac.webkit.org/changeset/137646
http://trac.webkit.org/changeset/137667
https://bugs.webkit.org/show_bug.cgi?id=104911

Breaks some overflow layout tests

Source/WebCore:

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateDescendantDependentFlags):
(WebCore::RenderLayer::addChild):
(WebCore::RenderLayer::removeChild):
(WebCore::RenderLayer::usesCompositedScrolling):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::dirtyZOrderLists):
(WebCore::RenderLayer::dirtyNormalFlowList):
(WebCore::RenderLayer::updateLayerListsIfNeeded):
(WebCore::RenderLayer::shouldBeNormalFlowOnly):
(WebCore::RenderLayer::shouldBeSelfPaintingLayer):
(WebCore::RenderLayer::styleChanged):

  • rendering/RenderLayer.h:

(RenderLayer):

  • rendering/RenderLayerBacking.cpp:

(WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::requiresCompositingForOverflowScrolling):

  • rendering/RenderLayerCompositor.h:

(RenderLayerCompositor):

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

(InternalSettings):

  • testing/InternalSettings.idl:

Tools:

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

(ChromiumPort.virtual_test_suites):

LayoutTests:

  • compositing/overflow/automatically-opt-into-composited-scrolling-expected.txt: Removed.
  • compositing/overflow/automatically-opt-into-composited-scrolling.html: Removed.
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Removed.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Removed.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Removed.
  • platform/chromium/TestExpectations:
4:22 PM Changeset in webkit [137681] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Expose a WebLayerTreeView getter on WebWidget to make it easier for the embedder to interface with the compositor
https://bugs.webkit.org/show_bug.cgi?id=104968

Patch by James Robinson <jamesr@chromium.org> on 2012-12-13
Reviewed by Adrienne Walker.

This is an intermediate step on the way to https://code.google.com/p/chromium/issues/detail?id=156175.

  • public/WebWidget.h:

(WebKit):
(WebWidget):
(WebKit::WebWidget::layerTreeView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::webLayerTreeView):
(WebKit):

  • src/WebViewImpl.h:

(WebViewImpl):

4:20 PM Changeset in webkit [137680] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Event dispatch: Avoid heap allocations in ensureEventAncestors() typical case.
<http://webkit.org/b/104938>

Reviewed by Anders Carlsson.

Give the EventTarget and EventContext vectors an inline capacity of 32 (no science here, just a
non-zero number.) As these vectors are created on the stack already, this is merely using a bit
more stack space to avoid malloc()ing all the gosh-darn time.

Looks like ~6% improvement on Dromaeo/jslib-event-prototype.

  • dom/EventDispatcher.cpp:

(WebCore::EventRelatedTargetAdjuster::adjust):
(WebCore::EventRelatedTargetAdjuster::findRelatedTarget):
(WebCore::EventDispatcher::ensureEventAncestors):

  • dom/EventDispatcher.h:

(EventRelatedTargetAdjuster):
(EventDispatcher):

4:20 PM Changeset in webkit [137679] by Lucas Forschler
  • 4 edits in branches/safari-536.28-branch/Source

Versioning.

4:17 PM Changeset in webkit [137678] by Lucas Forschler
  • 1 copy in tags/Safari-536.28.7

New Tag.

4:13 PM Changeset in webkit [137677] by simonjam@chromium.org
  • 3 edits
    2 adds in trunk

[Resource Timing] Don't report resources with data: urls
https://bugs.webkit.org/show_bug.cgi?id=104868

Reviewed by Tony Gentilcore.

Source/WebCore:

Test: http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url.html

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::loadDone):

LayoutTests:

  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url-expected.txt: Added.
  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url.html: Added.
4:06 PM Changeset in webkit [137676] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Tim Horton.

This test needs updates results after http://trac.webkit.org/changeset/137393

  • platform/mac/svg/css/shadow-changes-expected.txt:
4:00 PM Changeset in webkit [137675] by cevans@google.com
  • 2 edits
    3 copies in branches/chromium/1312

Merge 136845
BUG=162494

3:52 PM Changeset in webkit [137674] by vollick@chromium.org
  • 2 edits in trunk/Source/WebCore

Add a missing nullity check in RenderObject::containingBlock
https://bugs.webkit.org/show_bug.cgi?id=104961

Reviewed by Adrienne Walker.

Adds a missing nullity check in an assert.

No new tests, no change in functionality.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

3:49 PM Changeset in webkit [137673] by dpranke@chromium.org
  • 5 edits in trunk/Tools

Unreviewed, rolling out r137661.
http://trac.webkit.org/changeset/137661
https://bugs.webkit.org/show_bug.cgi?id=104891

broke unit tests, run-webkit-tests

  • Scripts/webkitpy/common/system/executive.py:

(Executive._run_command_with_teed_output):
(Executive.run_command):
(Executive.popen):

  • Scripts/webkitpy/common/system/profiler.py:

(ProfilerFactory.create_profiler):
(GooglePProf.profile_after_exit):
(IProfiler.attach_to_pid):

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

(Driver.init):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

3:42 PM Changeset in webkit [137672] by dpranke@chromium.org
  • 5 edits
    1 add in trunk/Tools

nrwt: move rundetails, summarize_results into test_run_results
https://bugs.webkit.org/show_bug.cgi?id=104963

Reviewed by Eric Seidel.

More cleanup; this the plain-old-data functions out of manager.py
and into test_run_results next to the other aggregate data structures.

Also this cleans up a bunch of test code and reduces duplication.

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

(Manager.run):

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

(ManagerTest.test_look_for_new_crash_logs):

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

(TestRunResults.init):
(TestRunResults.add):
(RunDetails):
(RunDetails.init):
(_interpret_test_failures):
(summarize_results):

  • Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py: Added.

(get_result):
(run_results):
(summarized_results):
(InterpretTestFailuresTest):
(InterpretTestFailuresTest.setUp):
(InterpretTestFailuresTest.test_interpret_test_failures):
(SummarizedResultsTest):
(SummarizedResultsTest.setUp):
(SummarizedResultsTest.test_no_svn_revision):
(SummarizedResultsTest.test_svn_revision):
(SummarizedResultsTest.test_summarized_results_wontfix):

  • Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:

(BuildBotPrinterTests.get_printer):
(BuildBotPrinterTests.test_print_unexpected_results):
(BuildBotPrinterTests.test_print_results):

3:41 PM Changeset in webkit [137671] by yoli@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Possible JS re-entrancy caused by UI event handler
https://bugs.webkit.org/show_bug.cgi?id=84862

Reviewed by Rob Buis.

Fix an obvious bug in previous patch.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::deferredTasksTimerFired):

3:37 PM Changeset in webkit [137670] by cevans@google.com
  • 1 edit in branches/chromium/1312/Source/WebCore/editing/ApplyStyleCommand.cpp

Merge 136619
BUG=163110
Review URL: https://codereview.chromium.org/11577012

3:34 PM Changeset in webkit [137669] by commit-queue@webkit.org
  • 7 edits in trunk

Switch the gradient drawing code to use bearing angles
https://bugs.webkit.org/show_bug.cgi?id=104616

Patch by Tab Atkins <tabatkins@google.com> on 2012-12-13
Reviewed by Dean Jackson.

Source/WebCore:

Switch the gradient math from polar-coordinate angles to bearing angles.
To make this possible without behavior changes,
switch the m_deprecatedType boolean to an m_gradientType enum,
and fix all usages accordingly.

No new tests, as this is a refactoring and should have no behavior changes. Existing tests suffice.

  • css/CSSGradientValue.cpp:

(WebCore::endPointsFromAngle):
This is the only mechanical change. The rest are just fixing the plumbing around the boolean->enum change.

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::sortStopsIfNeeded):
(WebCore::CSSGradientValue::addStops):
(WebCore::CSSLinearGradientValue::customCssText):
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::customCssText):

  • css/CSSGradientValue.h:

(WebCore::CSSGradientValue::gradientType):
(WebCore::CSSGradientValue::CSSGradientValue):
(WebCore::CSSLinearGradientValue::create):
(WebCore::CSSLinearGradientValue::CSSLinearGradientValue):
(WebCore::CSSRadialGradientValue::create):
(WebCore::CSSRadialGradientValue::CSSRadialGradientValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseDeprecatedGradient):
(WebCore::CSSParser::parseDeprecatedLinearGradient):
(WebCore::CSSParser::parseDeprecatedRadialGradient):

LayoutTests:

This change alters a few pixels on the linux baseline.
It may or may not trigger similar failures on Windows and Mac - we'll see.

  • platform/chromium-linux/fast/gradients/css3-linear-angle-gradients-expected.png:
  • platform/chromium/TestExpectations:
3:33 PM Changeset in webkit [137668] by cevans@google.com
  • 2 edits
    2 copies in branches/chromium/1312

Merge 136560
BUG=158199
Review URL: https://codereview.chromium.org/11565023

3:31 PM Changeset in webkit [137667] by adamk@chromium.org
  • 2 edits
    9 adds in trunk/LayoutTests

Mark one test as failing and rebaseline another after r137646

Unreviewed chromium gardening.

  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
  • platform/chromium/TestExpectations:
3:30 PM Changeset in webkit [137666] by eric@webkit.org
  • 2 edits in trunk/Tools

Make --profile output easier to understand for pprof on linux
https://bugs.webkit.org/show_bug.cgi?id=104957

Reviewed by Dirk Pranke.

pprof is kinda mysterious, so we print some information
on how to use it, and how to learn how to read the sample dump.
This is similar to what we've done for perf output for Chromium Android.

  • Scripts/webkitpy/common/system/profiler.py:

(GooglePProf._pprof_path):
(GooglePProf.profile_after_exit):

3:28 PM Changeset in webkit [137665] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1312

Merge 136558
BUG=158060
Review URL: https://codereview.chromium.org/11573024

3:27 PM Changeset in webkit [137664] by dpranke@chromium.org
  • 4 edits in trunk/Tools

Revert r137407 - it didn't actually work right.
https://bugs.webkit.org/show_bug.cgi?id=101976

Unreviewed, build fix.

Turns out that rebaselining was completely broken with this change :(
We're passing in a list of test names rather than the list of
failureInfo objects.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
3:21 PM Changeset in webkit [137663] by piman@chromium.org
  • 4 edits in trunk

[chromium] Small fixes for WebPluginContainer::setWebLayer
https://bugs.webkit.org/show_bug.cgi?id=104953

Reviewed by James Robinson.

Source/WebKit/chromium:

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl): Allow
WebPlugin to clean up dangling pointers.

Tools:

  • DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp: Clean up

dangling pointers, force correct invalidation of the layer.

3:19 PM Changeset in webkit [137662] by adamk@chromium.org
  • 10 edits
    54 moves
    1 add in trunk/LayoutTests

Move MutationObserver tests to fast/dom/MutationObserver
https://bugs.webkit.org/show_bug.cgi?id=104948

Reviewed by Ryosuke Niwa.

This seems like a more sensible location, and in line with other DOM features.

  • fast/dom/MutationObserver/: Renamed from LayoutTests/fast/mutation/.
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk-wk2/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
  • platform/wk2/TestExpectations:
3:17 PM Changeset in webkit [137661] by eric@webkit.org
  • 5 edits in trunk/Tools

Add --profiler=PROFILER option to run-perf-tests to allow specifying which profiler to use on platforms with many
https://bugs.webkit.org/show_bug.cgi?id=104891

Reviewed by Dirk Pranke.

I also implemented a very simple "Sample" Profiler using
Mac OS X's /usr/bin/sample command line tool.

I also moved the map(unicode, args) call into Executive.popen
so that all callers don't have to do it themselves.

The real reason for this abstraction is to make it easy
to support both perf and pprof on linux which seem to
be about equally popular among those I ask in the Chrome team.

  • Scripts/webkitpy/common/system/executive.py:

(Executive.popen):

  • Scripts/webkitpy/common/system/profiler.py:

(ProfilerFactory.create_profiler):
(ProfilerFactory):
(ProfilerFactory.available_profilers_by_name):
(ProfilerFactory.default_profiler_name):
(Sample):
(Sample.init):
(Sample.attach_to_pid):
(Sample.profile_after_exit):
(IProfiler.attach_to_pid):

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

(Driver.init):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

3:11 PM Changeset in webkit [137660] by fmalita@chromium.org
  • 5 edits in trunk/LayoutTests

[Chromium] Unreviewed rebaselining after Skia roll @6773.

  • platform/chromium-win/fast/borders/borderRadiusDotted02-expected.png:
  • platform/chromium-win/fast/borders/borderRadiusDotted03-expected.png:
  • platform/chromium-win/fast/borders/borderRadiusDotted04-expected.png:
  • platform/chromium-win/ietestcenter/css3/bordersbackgrounds/border-radius-style-001-expected.png:
3:06 PM Changeset in webkit [137659] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Another attempt at getting these expectations right for the bots.

  • platform/mac/TestExpectations:
2:58 PM Changeset in webkit [137658] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Skipping this test for now since it has been failing a lot recently.
https://bugs.webkit.org/show_bug.cgi?id=104962 tracks fixing to bug.

  • platform/mac/TestExpectations:
2:46 PM Changeset in webkit [137657] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/12838354> DOM cookie access functions should respect private browsing
https://bugs.webkit.org/show_bug.cgi?id=104691

Reviewed by Anders Carlsson.

Remove obsolete FIXMEs, and fix one function that I overlooked.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::cookiesForDOM): (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM): (WebKit::NetworkConnectionToWebProcess::cookiesEnabled): (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue): (WebKit::NetworkConnectionToWebProcess::getRawCookies): (WebKit::NetworkConnectionToWebProcess::deleteCookie): (WebKit::NetworkConnectionToWebProcess::getHostnamesWithCookies): (WebKit::NetworkConnectionToWebProcess::deleteCookiesForHostname): (WebKit::NetworkConnectionToWebProcess::deleteAllCookies):
2:40 PM Changeset in webkit [137656] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Skipping this test for now since it has been failing since it was added.
https://bugs.webkit.org/show_bug.cgi?id=104954 tracks fixing to bug.

  • platform/mac/TestExpectations:
2:27 PM Changeset in webkit [137655] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

DownloadManager shouldn't call the web process directly
https://bugs.webkit.org/show_bug.cgi?id=104946

Reviewed by Antti Koivisto.

Introduce the needed DownloadManager::Client member functions and have Download call them instead of calling the web process directly.

  • WebProcess/Downloads/Download.cpp:

(WebKit::Download::Download):
(WebKit::Download::~Download):
(WebKit::Download::connection):

  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::DownloadManager):
(WebKit::DownloadManager::didCreateDownload):
(WebKit::DownloadManager::didDestroyDownload):
(WebKit::DownloadManager::connection):

  • WebProcess/Downloads/DownloadManager.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didCreateDownload):
(WebKit::WebProcess::didDestroyDownload):

  • WebProcess/WebProcess.h:
2:25 PM Changeset in webkit [137654] by roger_fong@apple.com
  • 5 edits
    3 adds in trunk/LayoutTests

Unreviewed gardening. Apple Windows port.

  • platform/win/TestExpectations:
  • platform/win/accessibility/deleting-iframe-destroys-axcache-expected.txt:
  • platform/win/fast/css/image-resolution/image-resolution-expected.txt:
  • platform/win/fast/text/decorations-with-text-combine-expected.txt: Added.
  • platform/win/fast/text/orientation-sideways-expected.txt:
  • platform/win/plugins/npp-set-window-called-during-destruction-expected.txt: Added.
  • platform/win/svg/css/shadow-changes-expected.txt: Added.
2:16 PM Changeset in webkit [137653] by piman@chromium.org
  • 5 edits in trunk

[chromium] Add WebPluginContainer::setWebLayer to supersede setBackingTextureId/setBackingIOSurfaceId
https://bugs.webkit.org/show_bug.cgi?id=104875

Reviewed by James Robinson.

  • public/WebPluginContainer.h:

(WebKit):
(WebPluginContainer):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::setWebLayer):
(WebKit):
(WebKit::WebPluginContainerImpl::setBackingTextureId):
(WebKit::WebPluginContainerImpl::setBackingIOSurfaceId):
(WebKit::WebPluginContainerImpl::commitBackingTexture):
(WebKit::WebPluginContainerImpl::setOpaque):
(WebKit::WebPluginContainerImpl::platformLayer):
(WebKit::WebPluginContainerImpl::WebPluginContainerImpl):
(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl):

  • src/WebPluginContainerImpl.h:

(WebPluginContainerImpl):

2:07 PM Changeset in webkit [137652] by Beth Dakin
  • 2 edits in trunk/LayoutTests

This test has been failing on the Mac bots for a while.
https://bugs.webkit.org/show_bug.cgi?id=104949

  • platform/mac/TestExpectations:
2:06 PM Changeset in webkit [137651] by Lucas Forschler
  • 4 edits in branches/safari-536.28-branch/Source

Versioning.

1:53 PM Changeset in webkit [137650] by dpranke@chromium.org
  • 9 edits in trunk/Tools

support -wk2 port names properly in webkitpy.layout_tests.port
https://bugs.webkit.org/show_bug.cgi?id=104761

Reviewed by Eric Seidel.

Our support for WK2 port names was inconsistent at best; this patch
modifies the code so that <port_name>-wk2 is supported for all ports that
have WK2 implementations and is equivalent to specifying <port_name>
and -2/--webkit-test-runner. In addition, this modifies
builders.all_port_names() to include the wk2 variants.

  • Scripts/webkitpy/common/checkout/baselineoptimizer.py:
  • Scripts/webkitpy/layout_tests/port/apple.py:

(ApplePort.determine_full_port_name):

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

(Port.determine_full_port_name):
(Port.init):

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

(DriverTest.make_port):

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

(MacPort.default_baseline_search_path):

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

(WinPort.default_baseline_search_path):

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

(TestRebaselineExpectations.test_rebaseline_expectations):

1:50 PM Changeset in webkit [137649] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Fixing a copy-paste error.

  • platform/mac/TestExpectations:
1:49 PM Changeset in webkit [137648] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Marking these tests as failing since they are failing on the bots.
https://bugs.webkit.org/show_bug.cgi?id=104942 tracks fixing the actual bug.

  • platform/mac/TestExpectations:
1:48 PM Changeset in webkit [137647] by ap@apple.com
  • 18 edits in trunk/Source

<rdar://problem/12838354> Per-Tab WebProcess: DOM cookie access functions should respect private browsing
https://bugs.webkit.org/show_bug.cgi?id=104691

Reviewed by Sam Weinig.

Pass private browsing state from local context to remote one.

1:37 PM Changeset in webkit [137646] by vollick@chromium.org
  • 11 edits
    2 adds in trunk

Source/WebCore: [chromium] Automatically use composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=94743

Reviewed by Adrienne Walker.

We currently use the composited scrolling facilities provided by
wkb.ug/91117 if the overflow scroll block element is styled with
-webkit-overflow-scrolling: touch. Ideally, we could automatically
opt into composited scrolling if it is safe to do so. This can affect
antialiasing, so it is important that automatically opting in is only
enabled via a setting.

The way I determine if it is safe is by checking that z-ordering will
not be affected if the overflow scrollable element were promoted to a
stacking context (details below), and that clipping our scrolling
descendants will not affect rendering.

To check the first condition (that z-ordering will not be affected).
I ensure that the candidate element and all its descendants appear as a
continuous block in the candidate's stacking context. That is, if no
other elements are 'between' any of the candidates descendants when we
sort in paint order, then we're safe. This is overly conservative,
however. We could, in future, only consider stacking problems between
elements that actually overlap.

To ensure that clipping will not cause a rendering change, I ensure
that the layer has no out of flow positioned descendant whose
containing block is not also a descendant of ours.

Test: compositing/overflow/automatically-opt-into-compositing-scrolling.html

(WebCore):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::acceleratedCompositingForOverflowScrollEnabled):
(WebCore):
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrder):
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrderRecursive):
(WebCore::RenderLayer::positionOverflowControlsAfterPromotionToCompositedScrolling):
(WebCore::RenderLayer::canSafelyEstablishAStackingContext):

Returns true if the RenderLayer could become a stacking context without
affecting the stacking order.

(WebCore::RenderLayer::updateDescendantDependentFlags):

We now need to keep track of out of flow positioned descendants.

(WebCore::RenderLayer::addChild):
(WebCore::RenderLayer::removeChild):
(WebCore::RenderLayer::usesCompositedScrolling):

Has been updated to return true if it can safely establish a stacking
context, and the setting is turned on.

(WebCore::RenderLayer::needsCompositedScrolling):

This function returns true if we would like to use composited
scrolling.

(WebCore::RenderLayer::updateNeedsCompositedScrolling):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::dirtyZOrderLists):
(WebCore::RenderLayer::dirtyNormalFlowList):

Since these could affect opting into composited scrolling, we must
request that the RenderLayerCompositor reevaluate compositing.

(WebCore::RenderLayer::updateLayerListsIfNeeded):

We call updateCanSafelyEstablishStackingContext here, if necessary.

(WebCore::RenderLayer::shouldBeNormalFlowOnly):
(WebCore::RenderLayer::shouldBeSelfPaintingLayer):

usesCompositedScrolling -> needsCompositedScrolling

(WebCore::RenderLayer::setAncestorChainHasOutOfFlowPositionedDescendant):
(WebCore::RenderLayer::dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus):
(WebCore::RenderLayer::updateOutOfFlowPositioned):

Dirties and sets the out of flow positioned descendant state.

(WebCore::RenderLayer::styleChanged):

  • rendering/RenderLayer.h:

(RenderLayer):
(WebCore::RenderLayer::hasOutOfFlowPositionedDescendant):

  • rendering/RenderLayerBacking.cpp:

(WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::hasUnpositionedOverflowControlsLayers):
(WebCore):

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements):

We now ensure that newly created overflow scroll controls get
positioned.

(WebCore::RenderLayerCompositor::requiresCompositingForOverflowScrolling):

  • rendering/RenderLayerCompositor.h:

(WebCore::RenderLayerCompositor::setShouldReevaluateCompositingAfterLayout):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::setEnableCompositingForOverflowScroll):

Allows enabling the setting in layout tests.

(WebCore):

  • testing/InternalSettings.h:

(InternalSettings):

  • testing/InternalSettings.idl:

LayoutTests: Automatically use composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=94743

Reviewed by Adrienne Walker.

Tests various configurations of elements to ensure that we only automatically opt into
composited scrolling when it is safe to do so.

  • compositing/overflow/automatically-opt-into-composited-scrolling-expected.txt: Added.
  • compositing/overflow/automatically-opt-into-composited-scrolling.html: Added.
1:25 PM Changeset in webkit [137645] by vollick@chromium.org
  • 4 edits in trunk

[chromium] Add a virtual test suite for enabling opt-in to composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=104911

Reviewed by Adrienne Walker.

Tools:

Adds two virtual tests suites to run the tests in
compositing/overflow/ and scrollbars/ with the flag
--enable-accelerated-compositing-for-overflow-scroll

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

(ChromiumPort.virtual_test_suites):

LayoutTests:

Updated the test expectations for the virtual test suite to match the
usual chromium test expectations.

  • platform/chromium/TestExpectations:
1:18 PM Changeset in webkit [137644] by Lucas Forschler
  • 5 edits in tags/Safari-537.21/Source/WebCore

Merged r137573. <rdar://problem/12872298>

1:18 PM Changeset in webkit [137643] by dpranke@chromium.org
  • 2 edits in trunk/Tools

delete extraneous self.fail in mastercfg_unittest.py
https://bugs.webkit.org/show_bug.cgi?id=104940

Reviewed by Eric Seidel.

This was accidentally introduced in r137404.

  • BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
12:56 PM Changeset in webkit [137642] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r137406): NodeTraversal changes causing large renderer crash
https://bugs.webkit.org/show_bug.cgi?id=104937

Reviewed by Antti Koivisto.

Add a null pointer check to exit early since ElementTraversal::next assumes a non-null pointer.

No new tests since I don't think this function is ever exposed to any ES5 bindings.

  • editing/FrameSelection.cpp:

(WebCore::scanForForm):

12:54 PM Changeset in webkit [137641] by Lucas Forschler
  • 14 edits in tags/Safari-537.21

Merged r137607. <rdar://problem/12815054>

12:53 PM Changeset in webkit [137640] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

Get rid of DownloadManager::shared
https://bugs.webkit.org/show_bug.cgi?id=104939

Reviewed by Andreas Kling.

Move the DownloadManager singleton to WebProcess and stub out a DownloadManager::Client class.

  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::DownloadManager):

  • WebProcess/Downloads/DownloadManager.h:

(Client):
(WebKit::DownloadManager::Client::~Client):
(DownloadManager):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::startDownload):
(WebKit::WebFrame::convertHandleToDownload):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::downloadManager):
(WebKit):
(WebKit::WebProcess::shouldTerminate):
(WebKit::WebProcess::downloadRequest):
(WebKit::WebProcess::cancelDownload):
(WebKit::WebProcess::startTransfer):

  • WebProcess/WebProcess.h:

(WebProcess):

12:50 PM Changeset in webkit [137639] by Lucas Forschler
  • 4 edits in tags/Safari-537.21/Source/WebCore

Merged r137604. <rdar://problem/12815054>

12:46 PM Changeset in webkit [137638] by Beth Dakin
  • 2 edits in trunk/LayoutTests

This test started failing after http://trac.webkit.org/changeset/137592 which
rolled out a patch that touched these results. I am going to re-set the results
for now so that the test will pass, and make a note in the bug.

  • platform/mac/accessibility/internal-link-anchors2-expected.txt:
12:44 PM Changeset in webkit [137637] by aestes@apple.com
  • 3 edits in trunk/Source/WebKit2

[WebKit2] Only register NSNotificationCenter observers once per WebContext
https://bugs.webkit.org/show_bug.cgi?id=104879

Reviewed by Alexey Proskuryakov.

WebContext was mistakenly registering NSNotificationCenter observers
every time a new web process was created. In a multi-WebProcess world,
this caused duplicate observers to be needlessly registered. Fix this
by registering observers at WebContext creation time (and fix a related
bug where two of the observers were never unregistered).

  • UIProcess/WebContext.h:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::platformInitialize): Register observers when initializing the context.
(WebKit::WebContext::platformInitializeWebProcess): Don't register observers here.
(WebKit::WebContext::platformInvalidateContext): Unregister observers when invalidating the context.
(WebKit::WebContext::registerNotificationObservers):
(WebKit::WebContext::unregisterNotificationObservers):

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

Download objects should keep track of their associated DownloadManager object
https://bugs.webkit.org/show_bug.cgi?id=104936

Reviewed by Andreas Kling.

This is the first step towards eliminating DownloadManager::shared.

  • WebProcess/Downloads/Download.cpp:

(WebKit::Download::create):
(WebKit::Download::Download):
(WebKit::Download::didFinish):
(WebKit::Download::didFail):
(WebKit::Download::didCancel):

  • WebProcess/Downloads/Download.h:
  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::startDownload):
(WebKit::DownloadManager::convertHandleToDownload):

12:10 PM Changeset in webkit [137635] by dgrogan@chromium.org
  • 10 edits in trunk

IndexedDB: Improve error messages
https://bugs.webkit.org/show_bug.cgi?id=104624

Reviewed by Tony Chang.

Source/WebCore:

Add detail to error messages so that they are more helpful and can be
traced back to a specific line of code.

Updated test: transaction-error.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::CreateObjectStoreOperation::perform):
(WebCore::IDBDatabaseBackendImpl::DeleteObjectStoreOperation::perform):
(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::openConnection):
(WebCore::IDBDatabaseBackendImpl::openConnectionWithVersion):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase):
(WebCore::IDBDatabaseBackendImpl::close):

  • Modules/indexeddb/IDBFactoryBackendImpl.cpp:

(WebCore::IDBFactoryBackendImpl::getDatabaseNames):
(WebCore::IDBFactoryBackendImpl::deleteDatabase):
(WebCore::IDBFactoryBackendImpl::open):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::setIndexKeys):
(WebCore::IDBObjectStoreBackendImpl::createIndex):
(WebCore::IDBObjectStoreBackendImpl::CreateIndexOperation::perform):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::commit):

LayoutTests:

Updated error message and establish that non-ascii characters in index
names don't make it back to the browser properly.

  • storage/indexeddb/resources/shared.js:

(unexpectedAbortCallback):

  • storage/indexeddb/resources/transaction-error.js:

(testErrorFromCommit.trans.oncomplete.request.onupgradeneeded.trans.onabort):
(testErrorFromCommit.trans.oncomplete.request.onupgradeneeded):
(testErrorFromCommit.trans.oncomplete):
(testErrorFromCommit):

  • storage/indexeddb/transaction-error-expected.txt:
  • storage/indexeddb/transaction-error.html:
12:07 PM Changeset in webkit [137634] by dpranke@chromium.org
  • 3 edits in trunk/Tools

Fix a mis-named variable after r137621.
https://bugs.webkit.org/show_bug.cgi?id=104871

Unreviewed, build fix.

  • Scripts/webkitpy/layout_tests/views/buildbot_results.py:

(BuildBotPrinter.print_results):

  • Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:
11:51 AM Changeset in webkit [137633] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Safeguard against possible NULL-dereference
https://bugs.webkit.org/show_bug.cgi?id=104931

Patch by Claudio Saavedra <Claudio Saavedra> on 2012-12-13
Reviewed by Chris Fleizach.

This was spotted by Coverity. See bug 104114.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetIndexInParent): If parent is NULL
bail out early.

11:48 AM Changeset in webkit [137632] by Dave Barton
  • 3 edits
    2 adds in trunk

Heap-use-after-free in WebCore::RenderBlock::finishDelayUpdateScrollInfo
https://bugs.webkit.org/show_bug.cgi?id=103750

Reviewed by Tony Chang.

Source/WebCore:

MathML sometimes creates and destroys renderers for descendants during layout (or even to calculate
preferred logical widths), e.g. for operator stretching. RenderBlock::finishDelayUpdateScrollInfo
must therefore leave gDelayedUpdateScrollInfoSet intact as it iterates over it, so
RenderBlock::willBeDestroyed can call gDelayedUpdateScrollInfoSet->remove(this) effectively if needed.
This also prevents duplicate entries from being added to gDelayedUpdateScrollInfoSet.

Test: mathml/mo-stretch-crash.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::startDelayUpdateScrollInfo):

  • Allow gDelayedUpdateScrollInfoSet to be non-null when gDelayUpdateScrollInfo is 0 during RenderBlock::finishDelayUpdateScrollInfo.

(WebCore::RenderBlock::finishDelayUpdateScrollInfo):

  • Remove blocks from gDelayedUpdateScrollInfoSet one at a time, waiting for each block until it is about to be updated.

LayoutTests:

  • mathml/mo-stretch-crash-expected.txt: Added.
  • mathml/mo-stretch-crash.html: Added.
11:46 AM Changeset in webkit [137631] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

ResourceLoader::didReceiveAuthenticationChallenge uses a wrong client
https://bugs.webkit.org/show_bug.cgi?id=104935
<rdar://problem/12870361>

Reviewed by Anders Carlsson.

  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::didReceiveAuthenticationChallenge): The handle is null when NetworkProcess is used. In any case, it should be correct to use the client carried within AuthenticationChallenge.
11:32 AM Changeset in webkit [137630] by senorblanco@chromium.org
  • 3 edits
    1 add in trunk

.: Added manual test for canvas setFont speed.
https://bugs.webkit.org/show_bug.cgi?id=104923

Reviewed by James Robinson.

  • ManualTests/canvas-font-speed.html: Added.

Source/WebCore: CanvasRenderingContext2D::setFont() is slow.
https://bugs.webkit.org/show_bug.cgi?id=104923

Reviewed by James Robinson.

This spends most of its time in the CSS parser. As a first step,
early-out if the new value is the same as unparsed string for the current font.
See also http://code.google.com/p/chromium/issues/detail?id=164016.

Covered by existing tests in canvas/ and fast/canvas, and ManualTests/canvas-font-speed.html.

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::setFont):

11:26 AM Changeset in webkit [137629] by Lucas Forschler
  • 6 edits in branches/safari-536.28-branch/Source/WebKit2

Rollout r133937. <rdar://problem/12516369>

11:23 AM Changeset in webkit [137628] by Lucas Forschler
  • 9 edits in branches/safari-536.28-branch

Rollout r133942 and r133943. <rdar://problem/12516369>

11:23 AM Changeset in webkit [137627] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Allow plugins to be disabled by shared library filename
https://bugs.webkit.org/show_bug.cgi?id=101274

Patch by Parth Patel <parpatel@rim.com>, Max Feil <mfeil@rim.com> on 2012-12-13
Reviewed by Antonio Gomes.

Source/WebCore:

This fix makes PluginDatabase changes general so that other ports
can use this mechanism if they wish.

Layout test not included with this patch because there
is currently no framework within LayoutTests to allow calls
from an external application via platform API code (such as the
WebView API).

  • plugins/PluginDatabase.cpp:

(WebCore::PluginDatabase::fileExistsAndIsNotDisabled):
(WebCore):
(WebCore::PluginDatabase::getDeletedPlugins):
(WebCore::PluginDatabase::removeDisabledPluginFile):
(WebCore::PluginDatabase::addDisabledPluginFile):
(WebCore::PluginDatabase::getPluginPathsInDirectories):

  • plugins/PluginDatabase.h:

(PluginDatabase):

Source/WebKit/blackberry:

Mechanism allows plugins to be disabled by specifying their shared library filenames.
Once disabled, a plugin's shared library should never be loaded.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::setExtraPluginDirectory):
(WebKit):
(BlackBerry::WebKit::WebPage::updateDisabledPluginFiles):

  • Api/WebPage.h:
11:16 AM Changeset in webkit [137626] by Lucas Forschler
  • 32 edits
    2 deletes in branches/safari-536.28-branch

Rollout r133946. <rdar://problem/12516369>

11:13 AM Changeset in webkit [137625] by Lucas Forschler
  • 2 edits in branches/safari-536.28-branch/Source/WebKit2

Rollout r133947. <rdar://problem/12516350>

11:11 AM Changeset in webkit [137624] by Lucas Forschler
  • 10 edits
    3 deletes in branches/safari-536.28-branch

Rollout r133949. <rdar://problem/12516352>

11:11 AM Changeset in webkit [137623] by rniwa@webkit.org
  • 2 edits in trunk/PerformanceTests

[chromium perf] DOM/DOMWalk.html failures
https://bugs.webkit.org/show_bug.cgi?id=104866

Reviewed by Eric Seidel.

Use PerfTestRunner.now which in turn uses window.performance.now() when it's available.

  • DOM/resources/dom-perf.js:

(Interval.start):
(Interval.stop):
(BenchmarkSuite.prototype.RunSingle):

11:07 AM Changeset in webkit [137622] by Lucas Forschler
  • 6 edits
    2 deletes in branches/safari-536.28-branch

Rollout r133969. <rdar://problem/12665292>

11:05 AM Changeset in webkit [137621] by dpranke@chromium.org
  • 11 edits
    1 move in trunk/Tools

webkitpy: rename ResultSummary
https://bugs.webkit.org/show_bug.cgi?id=104871

Reviewed by Eric Seidel.

This patch changes the names of ResultSummary and related modules,
classes, and variables as a part of the larger clean up in bug 103824.

This change is basically a bunch of search and replaces:

  • result_summary.py -> test_run_results.py
  • class ResultSummary -> class TestRunResults
  • "result_summary" or "rs" as a generic variable name -> "run_results", when it doesn't matter (or we don't know) if this refers to the initial pass over the tests or the retry pass.
  • "result_summary" as a variable containing the results of the initial, complete test run -> "initial_results"
  • "retry_summary" as a variable containing the results of retried results -> "retry_results"
  • ResultSummary.results (the property) -> TestRunResults.results_by_name
  • ResultSummary.failures (the property) -> TestRunResults.failures_by_name
  • RunDetails.result_summary -> RunDetails.initial_results
  • RunDetails.retry_summary -> RunDetails.retry_results
  • Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:

(LayoutTestRunner.init):
(LayoutTestRunner.run_tests):
(LayoutTestRunner._mark_interrupted_tests_as_skipped):
(LayoutTestRunner._interrupt_if_at_failure_limits):
(LayoutTestRunner._interrupt_if_at_failure_limits.interrupt_if_at_failure_limit):
(LayoutTestRunner._update_summary_with_result):
(LayoutTestRunner._handle_finished_test):

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

(FakePrinter.print_expected):
(LayoutTestRunnerTests.test_interrupt_if_at_failure_limits):
(LayoutTestRunnerTests.test_update_summary_with_result):

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

(RunDetails.init):
(summarize_results):
(Manager.run):
(Manager._look_for_new_crash_logs):
(Manager._tests_to_retry):
(Manager._upload_json_files):
(Manager._stats_trie):

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

(ManagerTest.test_look_for_new_crash_logs):
(SummarizeResultsTest):
(SummarizeResultsTest.get_run_results):
(SummarizeResultsTest.summarized_results):

  • Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:

(JSONLayoutResultsGenerator.init):
(JSONLayoutResultsGenerator._get_modifier_char):
(JSONLayoutResultsGenerator._insert_failure_summaries):
(JSONLayoutResultsGenerator._get_failure_summary_entry):

  • Scripts/webkitpy/layout_tests/models/test_run_results.py: Renamed from Tools/Scripts/webkitpy/layout_tests/models/result_summary.py.

(TestRunResults):
(TestRunResults.init):
(TestRunResults.add):

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(get_test_results):
(MainTest.test_basic):

  • Scripts/webkitpy/layout_tests/views/buildbot_results.py:

(BuildBotPrinter.print_results):
(BuildBotPrinter.print_run_results):
(BuildBotPrinter._print_run_results_entry):

  • Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:

(BuildBotPrinterTests.get_run_results):
(BuildBotPrinterTests.test_print_unexpected_results.get_unexpected_results):
(BuildBotPrinterTests):

  • Scripts/webkitpy/layout_tests/views/printing.py:

(Printer.print_expected):
(Printer._print_expected_results_of_type):
(Printer.print_results):
(Printer._print_timing_statistics):
(Printer._print_worker_statistics):
(Printer._print_aggregate_test_statistics):
(Printer._print_individual_test_times):
(Printer._print_directory_timings):

  • Scripts/webkitpy/layout_tests/views/printing_unittest.py:
11:04 AM Changeset in webkit [137620] by Lucas Forschler
  • 2 edits in branches/safari-536.28-branch/Source/WebKit2

Rollout r134109. <rdar://problem/12516330>

11:02 AM Changeset in webkit [137619] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[GTK] accessibiltiy/aria-hidden.html is failing
https://bugs.webkit.org/show_bug.cgi?id=98352

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-12-13
Reviewed by Martin Robinson.

The test is failing due to platform differences in the implementation of
AccessibilityUIElement::allAttributes(). This test does not require this
method as it is only looking at the AXTitle attribute.

  • accessibility/aria-hidden-expected.txt: Included the actual reason for

passing/failing in the results output.

  • accessibility/aria-hidden.html: Included the actual reason for passing/

failing in the results output.

  • platform/gtk/TestExpectations: Unskipped the failing test.
11:02 AM Changeset in webkit [137618] by Lucas Forschler
  • 8 edits
    3 deletes in branches/safari-536.28-branch

Rollout r134834. <rdar://problem/12516304>

10:55 AM Changeset in webkit [137617] by Lucas Forschler
  • 10 edits
    2 deletes in branches/safari-536.28-branch

Rollout r134991. <rdar://problem/12516313>

10:52 AM Changeset in webkit [137616] by jamesr@google.com
  • 4 edits in trunk/Source

Check whether a touchDown lands on a registered touch event handler from the compositor
https://bugs.webkit.org/show_bug.cgi?id=104863

Patch by Yusuf Ozuysal <yusufo@google.com> on 2012-12-13
Reviewed by James Robinson.

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):

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

Document will never be released when an Image is created inside unload event listener
https://bugs.webkit.org/show_bug.cgi?id=104830

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2012-12-13
Reviewed by Darin Adler.

When setting src attribute to an Image object inside unload event listener, ImageLoader will
mark it as load failure (by setting m_hasPendingErrorEvent to true) and the following call
to updatedHasPendingEvent will ref the element but won't be deref-ed since the Document is
being dismissed. This was introduced in r131670. To match pre r131670 behavior, we shouldn't
trigger error event for image loading when the page is being dismissed.

No new tests, there is no visual change. Manually tested to verify documents are released by
using heap in Mac OS X.

  • loader/ImageLoader.cpp:

(WebCore::pageIsBeingDismissed): add a helper function to test whether the page is being dismissed.
(WebCore::ImageLoader::updateFromElement): don't trigger error event if the page is being dismissed.

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

[GTK] Add missing breaks in switch-case statements
https://bugs.webkit.org/show_bug.cgi?id=104929

Patch by Claudio Saavedra <Claudio Saavedra> on 2012-12-13
Reviewed by Martin Robinson.

  • platform/gtk/ClipboardGtk.cpp:

(WebCore::ClipboardGtk::clearData): Add missing breaks.

10:44 AM Changeset in webkit [137613] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

Remove unused initiatingPage parameter from download objects
https://bugs.webkit.org/show_bug.cgi?id=104933

Reviewed by Alexey Proskuryakov.

  • WebProcess/Downloads/Download.h:

(Download):

  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::startDownload):
(WebKit::DownloadManager::convertHandleToDownload):

  • WebProcess/Downloads/DownloadManager.h:

(DownloadManager):

  • WebProcess/Downloads/cfnet/DownloadCFNet.cpp:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/Downloads/curl/DownloadCurl.cpp:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/Downloads/mac/DownloadMac.mm:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/Downloads/qt/DownloadQt.cpp:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/Downloads/soup/DownloadSoup.cpp:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::startDownload):
(WebKit::WebFrame::convertHandleToDownload):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::downloadRequest):

10:39 AM Changeset in webkit [137612] by thiago.santos@intel.com
  • 4 edits in trunk/Tools

[EFL] The WebKit2 bots are building and executing WebKit1 tests
https://bugs.webkit.org/show_bug.cgi?id=104690

Reviewed by Csaba Osztrogonác.

Pass --no-webkit1 option to the EFL WK2 bots when building. This
will disable WK1 API and thus, the WK1 API tests.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(CompileWebKit2Only):
(BuildAndTestFactory):
(BuildAndTestFactory.init):
(BuildAndTestWebKit2OnlyFactory):
Now bots using BuildAndTestWebKit2OnlyFactory (for instance only EFL) will
get --no-webkit1 as a parameter on the build-webkit script.

  • Scripts/build-webkit:

Added support for -no-webkit1 for the Qt and EFL port.

10:34 AM Changeset in webkit [137611] by eric@webkit.org
  • 2 edits in trunk/Tools

build-webkit --chromium-android forces Make even when update-webkit used --ninja
https://bugs.webkit.org/show_bug.cgi?id=104839

Reviewed by Tony Chang.

This was recommended by Peter as part of:
https://bugs.webkit.org/show_bug.cgi?id=104434#c4
Fixing this makes build-webkit --chromium-android work for the common (ninja) case.

  • Scripts/webkitdirs.pm:

(buildChromium):

10:32 AM Changeset in webkit [137610] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/12870065> Frequent NetworkProcess crashes due to null connection when closing tabs
https://bugs.webkit.org/show_bug.cgi?id=104922

Reviewed by Anders Carlsson.

Don't zero out connection pointers when a connection closes. There doesn't appear
to be any reason to do this.

Tested by hitting breakpoints in all relevant objects destructors to confirm that
this doesn't introduce leaks.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess): (WebKit::NetworkConnectionToWebProcess::didClose):
  • NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::connectionToWebProcessDidClose):
10:32 AM Changeset in webkit [137609] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Update chromium expectatins for fonts/monospace.html

  • platform/chromium/TestExpectations:
10:30 AM Changeset in webkit [137608] by kerz@chromium.org
  • 17 edits
    2 deletes in branches/chromium/1359

and now revert the manual merge for another build

10:27 AM Changeset in webkit [137607] by Nate Chapin
  • 14 edits in trunk

Route main resource loads through the memory cache.
https://bugs.webkit.org/show_bug.cgi?id=49246

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Note that this patch doesn't actually enable caching of main resources. That will be done in a later patch.
The MainResourceLoader actually has an underlying SubresourceLoader (with the cache layer between them).
In several places, the MainResourceLoader's SubresourceLoader is treated as special.

No new tests, as this is primarily a refactor. A couple of expected results changed slightly.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::setRequest):
(WebCore::DocumentLoader::subresource):
(WebCore::DocumentLoader::addSubresourceLoader): Because the SubresourceLoader underlying the main resource

needs special handling in certain cases, track it separately from the real SubresourceLoaders.

(WebCore::DocumentLoader::removeSubresourceLoader):
(WebCore::DocumentLoader::startLoadingMainResource):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::receivedError):
(WebCore::MainResourceLoader::cancel):
(WebCore::MainResourceLoader::clearResource):
(WebCore):
(WebCore::MainResourceLoader::frameLoader):
(WebCore::MainResourceLoader::request):
(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::resourceData):
(WebCore::MainResourceLoader::redirectReceived):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::continueAfterContentPolicy):
(WebCore::MainResourceLoader::responseReceived):
(WebCore::MainResourceLoader::dataReceived):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::notifyFinished):
(WebCore::MainResourceLoader::reportMemoryUsage):
(WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
(WebCore::MainResourceLoader::load):
(WebCore::MainResourceLoader::setDefersLoading):
(WebCore::MainResourceLoader::defersLoading):
(WebCore::MainResourceLoader::setShouldBufferData):
(WebCore::MainResourceLoader::loader):
(WebCore::MainResourceLoader::identifier):

  • loader/MainResourceLoader.h:

(MainResourceLoader):
(WebCore::MainResourceLoader::documentLoader):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::willSendRequest):

  • loader/ResourceLoader.h:

(WebCore::ResourceLoader::defersLoading):
(WebCore::ResourceLoader::cancelled):

  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):

  • loader/mac/DocumentLoaderMac.cpp:

(WebCore::DocumentLoader::schedule):
(WebCore::DocumentLoader::unschedule):

LayoutTests:

  • http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: The error code for loads cancelled

by an embedder's willSendRequest() will show as standard load cancellations rather than as a content policy
failure. This was an odd quirk of how MainResourceLoader::willSendRequest() was implemented (namely, doing a
content policy check on ResourceRequests with empty urls).

  • platform/chromium-linux/fast/replaced/border-radius-clip-content-edge-expected.png:
  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: The error code for loads cancelled

by an embedder's willSendRequest() will show as standard load cancellations rather than as a content policy
failure. This was an odd quirk of how MainResourceLoader::willSendRequest() was implemented (namely, doing a
content policy check on ResourceRequests with empty urls).

10:16 AM Changeset in webkit [137606] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Duplicate code in GraphicsContext3D::validateAttributes() and GraphicsContext3D::validateDepthStencil()
https://bugs.webkit.org/show_bug.cgi?id=97275

Reviewed by Dean Jackson.

Remove duplicate code in validateAttributes(). validateAttributes() calls
validateDepthStencil() which has the exact same code.

No new tests because no change in functionality.

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:

(WebCore::GraphicsContext3D::validateAttributes):

9:41 AM Changeset in webkit [137605] by abecsi@webkit.org
  • 1 edit
    1 delete in trunk/Source/WebKit2

[EFL] Update the way we set the cookies policy
https://bugs.webkit.org/show_bug.cgi?id=104915

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-12-13
Reviewed by Kenneth Rohde Christiansen.

We are mistakenly assigning the cookie policy to the persistent storage
type which is not correct. This was caused by r137432 and is making
the unit tests fail.

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformInitializeWebProcess):

9:37 AM Changeset in webkit [137604] by Nate Chapin
  • 4 edits in trunk/Source/WebCore

CachedResources should hang on to stripped fragment identifiers
https://bugs.webkit.org/show_bug.cgi?id=104721

Reviewed by Maciej Stachowiak.

No new tests, this will be unused until bug
https://bugs.webkit.org/show_bug.cgi?id=49246 re-lands. Then, it will
allow http/tests/inspector/resource-parameters.html to continue passing.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::CachedResource):
(WebCore::CachedResource::load):

  • loader/cache/CachedResource.h:

(CachedResource):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource): We override the request's url with the

local variable "url" here. The only difference between url and request.url() is that url
has had any fragment identifier removed. Do this work later (in the CachedResource constructor)
so that the CachedResource can save the fragment for later.

9:18 AM Changeset in webkit [137603] by kerz@chromium.org
  • 17 edits
    2 copies in branches/chromium/1359

hand merge patch for Chromium build

9:13 AM Changeset in webkit [137602] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Remove deprecated API usage
https://bugs.webkit.org/show_bug.cgi?id=104894

Patch by Claudio Saavedra <Claudio Saavedra> on 2012-12-13
Reviewed by Martin Robinson.

Remove deprecated GTK+ API usage.

  • platform/gtk/RenderThemeGtk3.cpp:

(WebCore::spinButtonArrowSize): Do not use deprecated
gtk_style_context_get_font().

9:13 AM Changeset in webkit [137601] by kerz@chromium.org
  • 1 copy in branches/chromium/1359

Quick branch to pick up new fix.

9:10 AM Changeset in webkit [137600] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Remove temporary workaround from GraphicsSurfaceGLX constructor.
https://bugs.webkit.org/show_bug.cgi?id=104904

QXcbNativeInterface::nativeResourceForContext() is now
available in Qt5. Therefore the temporary workaround
in GraphicsSurfaceGLX can be removed.

Reviewed by Kenneth Rohde Christiansen.

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):

9:08 AM Changeset in webkit [137599] by jparent@chromium.org
  • 2 edits in trunk/Tools

Loader_unittests should reset state between runs.
https://bugs.webkit.org/show_bug.cgi?id=104862

Reviewed by Dirk Pranke.

The loader_unittests were not resetting state between runs, leaving
a lot of data behind in global objects that the dashboard and tests
rely on. A handful were resetting just a few objects. Use the common
resetGlobals() method instead.

  • TestResultServer/static-dashboards/loader_unittests.js:
8:26 AM Changeset in webkit [137598] by thiago.santos@intel.com
  • 2 edits in trunk/Source/WebKit2

[EFL] Update the way we set the cookies policy
https://bugs.webkit.org/show_bug.cgi?id=104915

Reviewed by Kenneth Rohde Christiansen.

We are mistakenly assigning the cookie policy to the persistent storage
type which is not correct. This was caused by r137432 and is making
the unit tests fail.

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformInitializeWebProcess):

8:08 AM Changeset in webkit [137597] by abecsi@webkit.org
  • 11 edits in trunk

[Qt][WK2] Fix painting on Mac with retina display
https://bugs.webkit.org/show_bug.cgi?id=104574

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Since HiDPI support has been added and enabled in Qt we ended up
painting incorrectly scaled content on high-resolution screens.
Because the intrinsic device pixel ratio is always taken into
account by Qt when painting to high-resolution screens we should
automatically obtain the scale ratio from the window in which the
item is rendered instead of setting it in QML.

Qt does not make it possible to override the device pixel ratio
of the native window, therefore our experimental QML API for setting
a custom value is of no use any more and should be removed.

This patch fixes the scaling issue on Mac retina display by querying
the underlying window for the device scale factor and applying it to
the backing store and the scene-graph rendering of the content node.
Additionally removes the experimental API and related API tests.

  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPage::updatePaintNode):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewLegacyPrivate::updateViewportSize):
(QQuickWebViewFlickablePrivate::onComponentComplete):

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

(tst_QQuickWebView::newWebView):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHostProxy::deviceScaleFactor):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(CoordinatedLayerTreeHostProxy):

  • UIProcess/qt/QtWebPageSGNode.cpp:

(WebKit::ContentsSGNode::ContentsSGNode):
(WebKit::ContentsSGNode::render):
(WebKit::ContentsSGNode::clipRect):
(ContentsSGNode):
(WebKit::QtWebPageSGNode::QtWebPageSGNode):
(WebKit::QtWebPageSGNode::devicePixelRatio):
(WebKit):
(WebKit::QtWebPageSGNode::setRenderer):

  • UIProcess/qt/QtWebPageSGNode.h:

(QtWebPageSGNode):

Tools:

Remove setting the devicePixelRatio experimental property
since the value is now automatically picked up from Qt.

  • MiniBrowser/qt/qml/BrowserWindow.qml:
7:43 AM Changeset in webkit [137596] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk

[GTK] Expose ARIA roles for tab, tabpanel and tablist
https://bugs.webkit.org/show_bug.cgi?id=84043

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-12-13
Reviewed by Martin Robinson.

Source/WebCore:

Mapped the ARIA roles to their corresponding ATK roles.

No new tests; instead unskipped the associated test.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(atkRole): Mapped the ARIA roles to their corresponding ATK roles

LayoutTests:

Mapped the ARIA roles to the corresponding ATK roles and unskipped the
associated test. Also created the missing platform-specific expected
results.

  • accessibility/aria-tab-roles-expected.txt: Added.
  • platform/gtk/TestExpectations: Unskipped the associated test.
7:34 AM Changeset in webkit [137595] by thiago.santos@intel.com
  • 2 edits in trunk/Source/WebKit2

[EFL] API tests failing because Vibration API is using unsigned as duration since r137410
https://bugs.webkit.org/show_bug.cgi?id=104914

Reviewed by Kenneth Rohde Christiansen.

Update the tests to reflect the data type coming from WebCore.

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(VibrationCbData):
(onVibrate):

7:24 AM Changeset in webkit [137594] by vivek.vg@samsung.com
  • 2 edits in trunk/Source/WebCore

Web Inspector: "Add Attribute" context menu on closing tag should apply on the opening tag on Elements Panel
https://bugs.webkit.org/show_bug.cgi?id=104902

Reviewed by Alexander Pavlov.

The context menu action on the closing tag scrolls to the opening tag for adding the attribute.

No new tests as this is a UI change.

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
(WebInspector.ElementsTreeElement.prototype._addNewAttribute):

7:09 AM Changeset in webkit [137593] by kenneth@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Device pixel ratio lost upon relaunch of the web process
https://bugs.webkit.org/show_bug.cgi?id=104913

Reviewed by Simon Hausmann.

Use setIntrinsicDeviceScaleFactor instead of setCustomDeviceScaleFactor
when setting the device pixel ratio to make the setting permanent and
make sure it is set as part of the web process creation parameters.

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_device_pixel_ratio_set):

7:09 AM Changeset in webkit [137592] by commit-queue@webkit.org
  • 13 edits
    2 deletes in trunk

Unreviewed, rolling out r137512.
http://trac.webkit.org/changeset/137512
https://bugs.webkit.org/show_bug.cgi?id=104912

The entire GTK+ layout test step has been failing for hours
(Requested by mrobinson on #webkit).

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

Source/WebCore:

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::textUnderElement):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::textUnderElement):

LayoutTests:

  • accessibility/button-title-uses-inner-img-alt-expected.txt: Removed.
  • accessibility/button-title-uses-inner-img-alt.html: Removed.
  • accessibility/focusable-div-expected.txt:
  • accessibility/focusable-div.html:
  • platform/chromium/TestExpectations:
  • platform/chromium/accessibility/image-link-expected.txt:
  • platform/mac/accessibility/image-link-expected.txt:
  • platform/mac/accessibility/internal-link-anchors2-expected.txt:
  • platform/mac/accessibility/static-text-role-uses-text-under-element-expected.txt:
  • platform/mac/accessibility/static-text-role-uses-text-under-element.html:
  • platform/mac/accessibility/table-with-aria-role-expected.txt:
7:06 AM Changeset in webkit [137591] by commit-queue@webkit.org
  • 5 edits
    1 add in trunk/Source/WebCore

OpenCL version of FEColorMatrix.
https://bugs.webkit.org/show_bug.cgi?id=103398

Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2012-12-13
Reviewed by Zoltan Herczeg.

~3x speed-up (depending on hardware configuration)

  • Target.pri: Added a new file to the build system.
  • platform/graphics/filters/FEColorMatrix.cpp: calculateSaturateComponents and calculateHueRotateComponents methodes are moved to the header, since they are used by OpenCL as well

(WebCore::effectType):

  • platform/graphics/filters/FEColorMatrix.h:

(FEColorMatrix):
(WebCore::FEColorMatrix::calculateSaturateComponents):
(WebCore):
(WebCore::FEColorMatrix::calculateHueRotateComponents):

  • platform/graphics/gpu/opencl/FilterContextOpenCL.h: Required fields for the ColorMatrix kernels were added

(WebCore::FilterContextOpenCL::FilterContextOpenCL):
(FilterContextOpenCL):

  • platform/graphics/gpu/opencl/OpenCLFEColorMatrix.cpp: the core implementation goes here

(WebCore):
(WebCore::FilterContextOpenCL::compileFEColorMatrix):
(WebCore::FilterContextOpenCL::applyFEColorMatrix):
(WebCore::FEColorMatrix::platformApplyOpenCL):

7:04 AM Changeset in webkit [137590] by Simon Hausmann
  • 6 edits in trunk

[Qt] Doc: Fixing Qt WebKit reference documentation.

Patch by Jerome Pasion <jerome.pasion@digia.com> on 2012-12-13
Reviewed by Simon Hausmann.

Fixes:
-added \module for C++ classes and \qmlmodule for QML types
-added links to the Qt WebKit Examples pages
-fixed the qhp settings for Qt Creator

Task-number: QTBUG-28583
Task-number: QTBUG-28418
Task-number: QTBUG-27646

.:

  • Source/qtwebkit.qdocconf:

Source/WebKit/qt:

  • docs/qtwebkit.qdoc:

Source/WebKit2:

  • UIProcess/API/qt/qquickwebview.cpp:
6:23 AM Changeset in webkit [137589] by loislo@chromium.org
  • 12 edits in trunk/Source

Web Inspector: Native Memory Instrumentation: do not validate pointers to objects in RenderArena agains tcmalloc data.
https://bugs.webkit.org/show_bug.cgi?id=104903

Reviewed by Yury Semikhatsky.

This is a simplest approach to do that with zero performance overhead.

Source/WebCore:

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::reportMemoryUsage):

  • rendering/InlineBox.cpp:

(WebCore::InlineBox::reportMemoryUsage):
(WebCore):

  • rendering/InlineBox.h:

(InlineBox):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::reportMemoryUsage):
(WebCore):

  • rendering/InlineTextBox.h:

(InlineTextBox):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::reportMemoryUsage):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::reportMemoryUsage):

Source/WTF:

  • wtf/MemoryInstrumentation.cpp:

(WTF::MemoryClassInfo::setCustomAllocation):
(WTF):

  • wtf/MemoryInstrumentation.h:

(MemoryClassInfo):

  • wtf/MemoryObjectInfo.h:

(WTF::MemoryObjectInfo::MemoryObjectInfo):
(WTF::MemoryObjectInfo::customAllocation):
(WTF::MemoryObjectInfo::setCustomAllocations):
(MemoryObjectInfo):

6:21 AM Changeset in webkit [137588] by commit-queue@webkit.org
  • 8 edits in trunk

[EFL][GTK] Don't call deprecated g_type_init when glib => 2.35
https://bugs.webkit.org/show_bug.cgi?id=103209

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-12-13
Reviewed by Kenneth Rohde Christiansen.

g_type_init() is deprecated from 2.35.0 onwards. Don't call it
in that case to avoid warnings and/or build failure.

Source/WebKit/efl:

  • ewk/ewk_main.cpp:

(_ewk_init_body):

Source/WebKit2:

Also, remove a call to g_type_init() from WebProcessMainGtk():
It is not needed if gtk_init() is called.

  • UIProcess/API/efl/ewk_main.cpp:

(ewk_init):

  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainEfl):

  • WebProcess/gtk/WebProcessMainGtk.cpp:

(WebKit::WebProcessMainGtk):

Tools:

  • DumpRenderTree/gtk/ImageDiff.cpp:

(main):

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

[GTK] Don't leak GStaticRecMutex
https://bugs.webkit.org/show_bug.cgi?id=104901

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-13
Reviewed by Martin Robinson.

The mutex in WebKitWebAudioSourceGStreamer is allocated using
g_new(), but that memory is not freed when the object is
destroyed.

This patch replaces that pointer with the structure itself, which
is faster and doesn't need to be explicitly freed.

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(_WebKitWebAudioSourcePrivate):
(webkit_web_audio_src_init):
(webKitWebAudioSrcFinalize):

5:20 AM Changeset in webkit [137586] by haraken@chromium.org
  • 1 edit
    9 adds in trunk/LayoutTests

Unreviewed. Rebaselined compositor-touch-hit-rects.html.

  • platform/chromium-linux/platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
  • platform/chromium-mac/platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
  • platform/chromium-win/platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
5:05 AM Changeset in webkit [137585] by commit-queue@webkit.org
  • 8 edits in trunk

Web Inspector: Network: Sorting cookies by size is broken.
https://bugs.webkit.org/show_bug.cgi?id=104893

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-13
Reviewed by Alexander Pavlov.

Source/WebCore:

Problem: cookie "size" is not a field now; its value is accessible
through getter method.

Solution: make cookie fields uniformly accessible (add getters for name,
type and value).

  • inspector/front-end/CookieItemsView.js: Adopt changes.
  • inspector/front-end/CookieParser.js:

(WebInspector.Cookie): Refine JsDoc.
(WebInspector.Cookie.prototype.name): Added getter.
(WebInspector.Cookie.prototype.value): Ditto.
(WebInspector.Cookie.prototype.type): Ditto.
(WebInspector.Cookies.buildCookiesFromString): Adopt changes.
(WebInspector.Cookies.buildCookieProtocolObject): Ditto.

  • inspector/front-end/CookiesTable.js:

(WebInspector.CookiesTable): Remove unused parameter.
(WebInspector.CookiesTable.prototype._sortCookies):
Use getters instead of field names.
(WebInspector.CookiesTable.prototype._createGridNode): Adopt changes.

  • inspector/front-end/HAREntry.js: Ditto.
  • inspector/front-end/RequestCookiesView.js: Ditto.

LayoutTests:

Adopt new cookie field accessors.

  • inspector/cookie-parser.html: Adopt new cookie field accessors.
4:50 AM Changeset in webkit [137584] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r137569.
http://trac.webkit.org/changeset/137569
https://bugs.webkit.org/show_bug.cgi?id=104876

A bunch of CSS tests hit ASSERTs

  • css/CSSProperty.h:

(WebCore::CSSProperty::CSSProperty):

4:02 AM Changeset in webkit [137583] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[Tools] Add exception for gtk_style_context_get()
https://bugs.webkit.org/show_bug.cgi?id=104896

Patch by Claudio Saavedra <Claudio Saavedra> on 2012-12-13
Reviewed by Martin Robinson.

Add new exception for gtk_style_context_get().

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

(check_for_null): Add exception for gtk_style_context_get().

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

(WebKitStyleTest.test_null_false_zero): Add a unit
test for the new exception.

3:28 AM Changeset in webkit [137582] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebKit/efl

Regression(r137568): Broke layout test on EFL WK1
https://bugs.webkit.org/show_bug.cgi?id=104895

Reviewed by Kenneth Rohde Christiansen.

Fix layout test crash after r137568 because ewk_view.cpp has kept unused networkInfoClient member variable
using OwnPtr. The r137568 lets NetworkInfoClientEfl destroy by WebCore::NetworkInfoController.

  • ewk/ewk_view.cpp:

(_Ewk_View_Private_Data):
(_ewk_view_priv_new):

3:10 AM Changeset in webkit [137581] by commit-queue@webkit.org
  • 5 edits in trunk

REGRESSION (r137432): The /webkit2/WebKitCookieManager/accept-policy unit test is failing
https://bugs.webkit.org/show_bug.cgi?id=104790

Patch by Joaquim Rocha <jrocha@igalia.com> on 2012-12-13
Reviewed by Carlos Garcia Campos.

Source/WebKit2:

The cookies accept policy and the cookies persistent storage type
were not being correctly assigned.

  • UIProcess/WebContext.cpp: Set the default value of the cookie

accept policy.
(WebKit::WebContext::WebContext):

  • UIProcess/gtk/WebContextGtk.cpp: Fix setting the cookies persistent

storage type (it was mistakenly assigning the policy instead) and
set the accept policy which was missing.
(WebKit::WebContext::platformInitializeWebProcess):

Tools:

Unskip the GTK accept policy test.

  • Scripts/run-gtk-tests:

(TestRunner):

3:00 AM Changeset in webkit [137580] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Remove redundant pipe write to prevent pipe buffer full.
https://bugs.webkit.org/show_bug.cgi?id=101135

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-12-13
Reviewed by Gyuyoung Kim.

To prevent a source of a deadlock, remove the redundant pipe write
in wakeUp() function.

EFL uses ecore_pipe_write() to wake up main run loop, and the function
uses POSIX pipe write with O_NONBLOCK disabled.
With O_NONBLOCK disabled, when written data is more than PIPE_BUF,
pipe write will be blocked until it can be written.

Currently, every wakeUp() function calls ecore_pipe_write() to invoke
wakeUpEvent() callback. And this can make pipe buffer full status
which is the one reason of the lockup problem described in Bug 99494.

  • platform/RunLoop.h:

(RunLoop):

  • platform/efl/RunLoopEfl.cpp:

(WebCore::RunLoop::RunLoop):
(WebCore::RunLoop::wakeUpEvent):
(WebCore::RunLoop::wakeUp):

2:56 AM Changeset in webkit [137579] by Simon Hausmann
  • 2 edits in trunk

[Qt] Fix missing doc dependency to examples

Patch by Jerome Pasion <Jerome.Pasion@digia.com> on 2012-12-13
Reviewed by Simon Hausmann.

  • Source/qtwebkit.qdocconf:
2:27 AM Changeset in webkit [137578] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Fix deleteAllCookies() invalid SQL statement
https://bugs.webkit.org/show_bug.cgi?id=101580

Patch by Antti Harju <antti.harju@ixonos.com> on 2012-12-13
Reviewed by Jocelyn Turcotte.

  • platform/network/qt/CookieJarQt.cpp:

(WebCore::SharedCookieJarQt::deleteAllCookies):

2:18 AM WebKitGTK/WebKit2Roadmap edited by Claudio Saavedra
(diff)
2:09 AM Changeset in webkit [137577] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Safari spends a lot of time in WebCore::findSimpleWordBoundary while selecting text on large scrabutility.com page
https://bugs.webkit.org/show_bug.cgi?id=104884

Reviewed by Hajime Morita.

We don't need to do anything in AlternativeTextController if selection is already outside of the editable region.

No new tests are added since this is only a performance improvement, and doesn't change any asymptotic behavior.

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::respondToChangedSelection):

1:42 AM Changeset in webkit [137576] by g.czajkowski@samsung.com
  • 2 edits in trunk/LayoutTests

[Mac][WK2] Unreviewed, spelling-unified-emulation.html fails after 137571

Replace the "zzz" word with "buzz" for mac-wk2.

  • platform/mac-wk2/editing/spelling/spelling-unified-emulation-expected.txt:

Change-Id: I6434a60e9dc1aab9abda218977255f8649468aa2

1:29 AM Changeset in webkit [137575] by jonlee@apple.com
  • 2 edits in trunk/Source/WebKit2

plugin snapshotting accepts bad snapshot after 5 seconds
https://bugs.webkit.org/show_bug.cgi?id=104886
<rdar://problem/12838753>

Reviewed by Maciej Stachowiak.

  • WebProcess/Plugins/PluginView.cpp: Increase to 60 tries, equating to a little over 60 seconds total.
1:26 AM Changeset in webkit [137574] by xingnan.wang@intel.com
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers list.

  • Scripts/webkitpy/common/config/committers.py:
1:19 AM EFLWebKit edited by luxtella@company100.net
(diff)
12:42 AM Changeset in webkit [137573] by jonlee@apple.com
  • 5 edits in trunk/Source/WebCore

Crash in PlugInOriginHash with empty MIME type (104882)
https://bugs.webkit.org/show_bug.cgi?id=104882
<rdar://problem/12872298>

Reviewed by Filip Pizlo.

The crash occurs because the strings might be null. Add a check for it, but also try to infer a MIME type
in case the markup does not include a type attribute, but we can find it from the extension in the URL.

  • platform/KURL.cpp: Add a new function mimeTypeFromURL() which tries to return the implied MIME type

based on the URL provided. If nothing was found, return a null string.
(WebCore::mimeTypeFromURL): Factored out from FrameLoader::defaultObjectContentType().

  • platform/KURL.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::defaultObjectContentType): Refactor to use mimeTypeFromURL().

  • plugins/PlugInOriginHash.cpp:

(WebCore::addCaseFoldedCharacters): Add a check for an empty string.
(WebCore::PlugInOriginHash::hash): If the service type is empty, try to infer the MIME type.

12:29 AM Changeset in webkit [137572] by Christophe Dumez
  • 2 edits in trunk/Source/WebCore

Regression(r137486): Broke EFL build
https://bugs.webkit.org/show_bug.cgi?id=104883

Unreviewed EFL build fix.

Fix EFL build break after r137486 due to missing WebCore::
namespace.

No new tests, no behavior change for layout tests.

  • platform/NotImplemented.h:

Dec 12, 2012:

11:57 PM Changeset in webkit [137571] by g.czajkowski@samsung.com
  • 4 edits in trunk/LayoutTests

[EFL][GTK] spelling-unified-emulation.html fails - word "zzz" cannot be found by enchant
https://bugs.webkit.org/show_bug.cgi?id=104787

Reviewed by Hajime Morita.

Replace the "zzz" word with "buzz".
The problematic sound of snoring can not be found by enchant (spellchecker backend
for EFL and GTK+ WebKit ports) as this word doesn't exist in English dictionary.

  • editing/spelling/spelling-unified-emulation-expected.txt:
  • editing/spelling/spelling-unified-emulation.html:
  • platform/efl-wk2/TestExpectations:
11:21 PM Changeset in webkit [137570] by leviw@chromium.org
  • 20 edits
    2 adds in trunk

Add support for tracking hit test rectangles to enable fast event rejection in the compositor
https://bugs.webkit.org/show_bug.cgi?id=103914

Reviewed by Simon Fraser.

Source/WebCore:

Adding support for tracking hit test target regions for the purpose of performing initial hit testing
in the compositor to avoid blocking scrolling on the main thread while waiting to hit test events that
aren't occuring in regions with handlers. This is initially being done to avoid having to go to the main
thread when scrolling by flicking on touch devices when the flick occurs outside a tracked touch event
region. This patch includes the implementation to turn this on in Chromium.

To accomplish this goal, Document will now keep a counted hash set of nodes with touch event handlers
instead of only an unsigned integer of the total count. ScrollingCoordinator then updates the compositor
when new touch event handlers are registered or removed, or after layout much like how
nonFastScrollableRegions are currently tracked.

This implementation will not properly update the hit test rects when the renderers are inside a sub-
tree that scrolls.

Test: platform/chromium/fast/events/touch/compositor-touch-hit-rects.html

  • dom/Document.cpp:

(WebCore::Document::Document): Added a HashCountedSet of touch target nodes. Note: DOMWindow targets
are stored as the Document they point to.
(WebCore::Document::didAddTouchEventHandler): Changed to keep track of the handler instead of a count, and
to update the ScrollingCoordinator with the change.
(WebCore::Document::didRemoveTouchEventHandler): Ditto.

  • dom/Document.h:

(WebCore::Document::hasTouchEventHandlers): It's no longer O(1) to get the count of touch handlers, so
expose whether there are any or not.
(WebCore::Document::touchEventTargets):

  • dom/Node.cpp:

(WebCore::Node::didMoveToNewDocument):
(WebCore::tryAddEventListener):
(WebCore::tryRemoveEventListener):

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • html/HTMLInputElement.cpp:

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

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::addEventListener): Add the Document to the touch target set instead of DOMWindow.
(WebCore::DOMWindow::removeEventListener):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent):

  • page/Frame.cpp:

(WebCore::Frame::setDocument):

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::computeAbsoluteTouchEventTargetRects): Walk the renderers for event handler
nodes and generate the absolute hit testing rects.

  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollingCoordinator::setTouchEventTargetRectsChanged): Hook to pass along the hit test rects to
the scrolling tree/compositor.
(ScrollingCoordinator):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRectsChanged):
(WebCore::ScrollingCoordinatorChromium::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRects):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.h:

(ScrollingCoordinatorChromium):

  • testing/Internals.cpp:

(WebCore::Internals::touchEventHandlerCount): Changed to do the work to calculate the actual count since
it's no longer stored as an int in Document.
(WebCore::Internals::touchEventTargetClientRects):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit/chromium:

Enabling touch event target region tracking.

  • features.gypi:
  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::requestTouchEventType):
(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl):

LayoutTests:

  • platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
  • platform/chromium/fast/events/touch/compositor-touch-hit-rects.html: Added.
10:15 PM Changeset in webkit [137569] by macpherson@chromium.org
  • 2 edits in trunk/Source/WebCore

Add ASSERTions to ensure that CSSPropertys that are variables only ever refer to CSSValues that are variables.
https://bugs.webkit.org/show_bug.cgi?id=104876

Reviewed by Steve Block.

Add assertions to CSSProperty constructors to make that if it is initialized with CSSPropertyVariable that
the value type associated with it is also a variable. This is already asserted at read time, but ASSERTing
here will produce a more useful backtrace.

No new tests as functionality unchanged.

  • css/CSSProperty.h:

(WebCore::CSSProperty::CSSProperty):

9:51 PM Changeset in webkit [137568] by gyuyoung.kim@samsung.com
  • 15 edits in trunk/Source

NetworkInfoController needs to support destructor
https://bugs.webkit.org/show_bug.cgi?id=104642

Reviewed by Kentaro Hara.

Though NetworkInfoController can be referenced by each port in order to update network status change,
there is no virtual interface to destroy it. Beside each port client also needs to be destroyed when
controller is destroyed.

Source/WebCore:

  • Modules/networkinfo/NetworkInfoClient.h:

(NetworkInfoClient):

  • Modules/networkinfo/NetworkInfoConnection.h:

(WebCore::NetworkInfoConnection::networkInfoControllerDestroyed):

  • Modules/networkinfo/NetworkInfoController.cpp:

(WebCore::NetworkInfoController::~NetworkInfoController):

Source/WebKit/blackberry:

  • WebCoreSupport/NetworkInfoClientBlackBerry.cpp:

(WebCore::NetworkInfoClientBlackBerry::networkInfoControllerDestroyed):
(WebCore):

  • WebCoreSupport/NetworkInfoClientBlackBerry.h:

(NetworkInfoClientBlackBerry):

Source/WebKit/efl:

  • WebCoreSupport/NetworkInfoClientEfl.cpp:

(WebCore::NetworkInfoClientEfl::networkInfoControllerDestroyed):
(WebCore):

  • WebCoreSupport/NetworkInfoClientEfl.h:

(NetworkInfoClientEfl):

Source/WebKit2:

  • UIProcess/efl/NetworkInfoProvider.cpp:

(NetworkInfoProvider::networkInfoControllerDestroyed):

  • UIProcess/efl/NetworkInfoProvider.h:

(NetworkInfoProvider):

  • WebProcess/WebCoreSupport/WebNetworkInfoClient.cpp:

(WebKit::WebNetworkInfoClient::networkInfoControllerDestroyed):
(WebKit):

  • WebProcess/WebCoreSupport/WebNetworkInfoClient.h:

(WebNetworkInfoClient):

9:48 PM Changeset in webkit [137567] by Lucas Forschler
  • 4 edits in tags/Safari-537.21/Source

Versioning

9:45 PM Changeset in webkit [137566] by Lucas Forschler
  • 1 copy in tags/Safari-537.21

New Tag.

9:44 PM Changeset in webkit [137565] by tkent@chromium.org
  • 8 edits in trunk

Validity of a radio button is not updated correctly when it is detached from an invalid radio group
https://bugs.webkit.org/show_bug.cgi?id=104873

Reviewed by Kentaro Hara.

Source/WebCore:

When a radio button is detached from an invalid radio group,
A) we should update button's validity, and
B) it should be valid.

A is handled by the following code in RadioButtonGroup::remove.

if (!wasValid) {

A radio button not in a group is always valid. We need to make it
valid only if the group was invalid.
button->setNeedsValidityCheck();

B was incomplete.

bool RadioInputType::valueMissing(const String&) const
{

return element()->isInRequiredRadioButtonGroup() && !element()->checkedRadioButtonForGroup();

isInRequiredRadioButtonGroup checked required state of a group with the
name attribute value even if the radio button was already detached from
the group. isInRequiredRadioButtonGroup should check membership of the
radio button precisely.

Tests: Update fast/forms/radio/radio-live-validation-style.html

  • dom/CheckedRadioButtons.cpp:

(RadioButtonGroup): Declare contains.
(WebCore::RadioButtonGroup::contains): Added.
(WebCore::CheckedRadioButtons::isInRequiredGroup): Renamed from
isRequiredGroup. This function takes HTMLInputElement* argument.

  • dom/CheckedRadioButtons.h:

(CheckedRadioButtons): Rename isRequiredGroup to isInRequiredGroup.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::isInRequiredRadioButtonGroup):
Make this non-const becaues RadioButtonGroup::m_members needs non-const
pointers. Use CheckedRadioButtons::isInRequiredGroup.

  • html/HTMLInputElement.h:

(HTMLInputElement): Make isInRequiredRadioButtonGroup non-const.

LayoutTests:

  • fast/forms/radio/radio-live-validation-style-expected.txt:
  • fast/forms/radio/radio-live-validation-style.html: Add a test case.
9:31 PM Changeset in webkit [137564] by shinyak@chromium.org
  • 2 edits in trunk/Source/WebCore

ContainerNodeAlgorithm::notifyInsertedIntoDocument is not used
https://bugs.webkit.org/show_bug.cgi?id=104874

Reviewed by Hajime Morita.

ContainerNodeAlgorithm::notifyInsertedIntoDocument() is not used by anyone. We can remove it safely.

No new tests, no change in behavior.

  • dom/ContainerNodeAlgorithms.h:
8:10 PM Changeset in webkit [137563] by tkent@chromium.org
  • 1 edit in branches/chromium/1312/Source/WebCore/html/shadow/DateTimeEditElement.cpp

Another build fix.

WebCore:

  • html/shadow/DateTimeEditElement.cpp: Include TextRun.h
7:58 PM Changeset in webkit [137562] by tkent@chromium.org
  • 2 edits in branches/chromium/1312/Source/WebCore/html/shadow

Try to fix chromium/1312 build.

WebCore:

  • html/shadow/DateTimeSymbolicFieldElement.cpp: Include TextRun.h
  • html/shadow/DateTimeNumericFieldElement.cpp: Ditto.
7:02 PM Changeset in webkit [137561] by commit-queue@webkit.org
  • 9 edits in trunk

Milliseconds field of date/time input UI should respect step attribute
https://bugs.webkit.org/show_bug.cgi?id=104628

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-12-12
Reviewed by Kent Tamura.

Source/WebCore:

This patch makes step-up/-down UI of the milliseconds fields respect step attribute
in a special case when the step is divisible by 1000 milliseconds.

Test: fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditBuilder::visitField):
If step of the element (in milliseconds) is divisible by 1000, use it as the step of the milliseconds field. Otherwise, the millisecond field has step 1.

  • html/shadow/DateTimeFieldElements.cpp:

(WebCore::DateTimeMillisecondFieldElement::DateTimeMillisecondFieldElement): Add step and stepBase arguments.
(WebCore::DateTimeMillisecondFieldElement::create): Ditto.

  • html/shadow/DateTimeFieldElements.h:

(DateTimeMillisecondFieldElement): Ditto.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::DateTimeNumericFieldElement): Ditto.
(WebCore::DateTimeNumericFieldElement::stepDown): Changed to compute next allowed value using roundDown().
(WebCore::DateTimeNumericFieldElement::stepUp): Changed to compute next allowed value using roundUp().
(WebCore::DateTimeNumericFieldElement::roundDown): Added.
(WebCore::DateTimeNumericFieldElement::roundUp): Added.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement): Add m_step and m_stepBase fields.

LayoutTests:

  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html:

Changed to use eventSender.keyDown() instead of making keydown event because we need delete-key handling.
Added new helper function test() and changed stepUp/stepDown to use it.
Added test cases for milliseconds field with various step values and step baees.

6:49 PM Changeset in webkit [137560] by jchaffraix@webkit.org
  • 3 edits
    2 adds in trunk

[CSS Grid Layout] Include paddings and borders into the grid element's logical height / width
https://bugs.webkit.org/show_bug.cgi?id=104818

Reviewed by Tony Chang.

Source/WebCore:

This change makes RenderGrid add the borders and paddings in the right direction during layout
so that the grid element's size accounts them like any other renderer.

Test: fast/css-grid-layout/grid-element-padding-margin.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computePreferredLogicalWidths):
(WebCore::RenderGrid::layoutGridItems):

LayoutTests:

  • fast/css-grid-layout/grid-element-padding-margin-expected.txt: Added.
  • fast/css-grid-layout/grid-element-padding-margin.html: Added.
6:44 PM Changeset in webkit [137559] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

Rename currentMousePosition() to lastKnownMousePosition() and mark it as OVERRIDE.

  • WebProcess/Plugins/PDF/PDFPlugin.h:
6:43 PM Changeset in webkit [137558] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Fix typo in NRWT.

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

(Port.is_reference_html_file):

6:33 PM Changeset in webkit [137557] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Include Apple Windows in GraphicsLayer::supportsBackgroundColorContent().
https://bugs.webkit.org/show_bug.cgi?id=104852.

Reviewed by Simon Fraser.

  • platform/graphics/GraphicsLayer.h:

(WebCore::GraphicsLayer::supportsBackgroundColorContent):

6:26 PM Changeset in webkit [137556] by aestes@apple.com
  • 3 edits in trunk/Source/WebKit/chromium

Fix the Chromium build after r137539.

  • src/ScrollbarGroup.cpp:

(WebKit::ScrollbarGroup::lastKnownMousePosition): Renamed from currentMousePosition().

  • src/ScrollbarGroup.h: Ditto.
6:17 PM Changeset in webkit [137555] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unused parameters on TextureMapperImageBuffer.cpp
https://bugs.webkit.org/show_bug.cgi?id=104857

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-12
Reviewed by Kentaro Hara.

The updateContents has unused parameter 'textureMapper',
remove the parameter name to fix 'unused parameter' build warning.

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::BitmapTextureImageBuffer::updateContents):

6:13 PM Changeset in webkit [137554] 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-12-12

  • DEPS:
6:12 PM Changeset in webkit [137553] by roger_fong@apple.com
  • 3 edits in trunk/Tools

Fix detection of ref test files in old and new run webkit tests.
https://bugs.webkit.org/show_bug.cgi?id=104850.

Reviewed by Timothy Horton.

  • Scripts/old-run-webkit-tests:

(isUsedInReftest):
Add notref and ref prefix and suffix cases to isUsedinReftest.

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

(Port):
(Port.is_reference_html_file):
Typo in NRWT.

6:11 PM Changeset in webkit [137552] by shinyak@chromium.org
  • 3 edits
    2 adds in trunk

[Shadow] HTMLContentElement::getDistributedNodes() doesn't work correctly if not in document tree.
https://bugs.webkit.org/show_bug.cgi?id=104345

Reviewed by Hajime Morita.

Source/WebCore:

Since document->updateLayout() does affect nodes in Document, distribution will not occur in
InsertionPoints out of Document. We have to find the element in document tree scope, and start distribution from it.

Test: fast/dom/shadow/get-distributed-nodes-orphan.html

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::getDistributedNodes):

LayoutTests:

  • fast/dom/shadow/get-distributed-nodes-orphan-expected.txt: Added.
  • fast/dom/shadow/get-distributed-nodes-orphan.html: Added.
6:09 PM Changeset in webkit [137551] by eae@chromium.org
  • 7 edits in trunk/LayoutTests

Unreviewed chromium rebaseline for fast/repaint/delete-into-nested-block.html

  • platform/chromium-linux/fast/repaint/delete-into-nested-block-expected.png:
  • platform/chromium-mac-lion/fast/repaint/delete-into-nested-block-expected.png:
  • platform/chromium-mac-snowleopard/fast/repaint/delete-into-nested-block-expected.png:
  • platform/chromium-mac/fast/repaint/delete-into-nested-block-expected.png:
  • platform/chromium-win/fast/repaint/delete-into-nested-block-expected.png:
  • platform/chromium/TestExpectations:
5:58 PM Changeset in webkit [137550] by dpranke@chromium.org
  • 4 edits in trunk/Tools

rework ChromiumAndroidDriver.start() et. al to avoid funky layering
https://bugs.webkit.org/show_bug.cgi?id=104856

Reviewed by Eric Seidel.

r137523 / bug 10357 introduced some back-and-forth hopping during
driver.start() in the chromium android port. This patch cleans it
up a bit.

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

(ChromiumAndroidDriver.init):
(ChromiumAndroidDriver._start_once):

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

(Driver.start):
(Driver._start):

5:53 PM Changeset in webkit [137549] by Lucas Forschler
  • 1 delete in tags/Safari-537.21

Remove Tag.

5:45 PM Changeset in webkit [137548] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

5:33 PM Changeset in webkit [137547] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

[WIN] Implement WebCore::fileSystemRepresentation() for !USE(CF)
https://bugs.webkit.org/show_bug.cgi?id=104456

Reviewed by Brent Fulgham.

Convert the UTF-16 path to the system default Windows ANSI code page (usually Windows Latin1).

  • platform/win/FileSystemWin.cpp:

(WebCore::fileSystemRepresentation):

5:33 PM Changeset in webkit [137546] by tkent@chromium.org
  • 4 edits in branches/chromium/1312/Source/WebCore/html/shadow

Merge 137275

INPUT_MULTIPLE_FIELDS_UI: Disable focus navigation by right/left keys in RTL locales
https://bugs.webkit.org/show_bug.cgi?id=104644

Reviewed by Hajime Morita.

Source/WebCore:

Pressing the left key should focus on the field at the left of the
current focused field, and pressing the right key should focus on the
field at the right of the current focused field. This works well in LTR
locales.
In RTL locale, the current code doesn't work. We disable this behavior
for RTL locales for now. This issue will be handled in Bug 104650.

No new tests. Update some *-multiple-fields tests for new behavior.

  • html/shadow/DateTimeFieldElement.cpp:

(WebCore::DateTimeFieldElement::defaultKeyboardEventHandler):
If this sub-field is in an RTL locale, we don't change focus.
(WebCore::DateTimeFieldElement::localeForOwner):
Moved from DateTimeNumericFieldElement.

  • html/shadow/DateTimeFieldElement.h:

(DateTimeFieldElement): Remove isRTL, add localeForOwner.

  • html/shadow/DateTimeNumericFieldElement.cpp: Remove localeForOwner.
  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement): Ditto.

LayoutTests:

  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
  • fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events.html:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html:

TBR=tkent@chromium.org
BUG=crbug.com/163108
Review URL: https://codereview.chromium.org/11548051

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

[Texmap] Remove lowp/highp indicators as they're not needed with ANGLE.
https://bugs.webkit.org/show_bug.cgi?id=104707

Patch by No'am Rosenthal <Noam Rosenthal> on 2012-12-12
Reviewed by Kenneth Rohde Christiansen.

lowp/highp indicator were needed for GLES2, but ANGLE does not require them.

Covered by existing tests.

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore::getShaderSpec):

5:31 PM Changeset in webkit [137544] by tkent@chromium.org
  • 7 edits in branches/chromium/1312

Merge 137152

Visual order of empty value placeholder in INPUT_MULTIPLE_FIELDS_UI is wrong in RTL
https://bugs.webkit.org/show_bug.cgi?id=104438

Reviewed by Hajime Morita.

Source/WebCore:

No new tests. This updates datetimelocal-appearance-l10n.html for he-il
and ar-eg locales.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::DateTimeNumericFieldElement):
We should not append Right-to-left-mark to each of placeholder
strings. It makes numeric field separators such as ':' and '/' RTL, and
makes a wrong visual order. We use unicode-bidi:bidi-override and
direction:ltr instead. It means we force LTR only to this element

  • html/shadow/DateTimeNumericFieldElement.h:

Makes m_placeholder const again.

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditBuilder::visitLiteral):
Explicitly set right-to-left-mark before S, WS, ON types according to
Unicod Bidirectional Algorithm Table 4 [1]. This is needed because we
don't have context like "This literal follows European/Arabic numbers"
in a case of showing placeholders.
[1] http://www.unicode.org/reports/tr9/#Bidirectional_Character_Types

LayoutTests:

  • platform/chromium-mac/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png:
  • platform/chromium/TestExpectations:

Update bug numbers and add time-multiple-fields-localization.html.

  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:

Adjust test scenario for the new behavior.

  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
  • fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events.html:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html:

TBR=tkent@chromium.org
BUG=crbug.com/163108
Review URL: https://codereview.chromium.org/11548050

5:30 PM Changeset in webkit [137543] by Lucas Forschler
  • 1 copy in tags/Safari-537.21

New Tag.

5:28 PM Changeset in webkit [137542] by creis@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Expose quickRedirectComing via WebDataSource
https://bugs.webkit.org/show_bug.cgi?id=104586

Reviewed by Nate Chapin.

Exposes whether the current navigation is a client redirect, and
thus should replace the current history item.

  • public/WebDataSource.h:

(WebDataSource): Adds isClientRedirect.

  • src/WebDataSourceImpl.cpp:

(WebKit::WebDataSourceImpl::isClientRedirect):
(WebKit):

  • src/WebDataSourceImpl.h:

(WebDataSourceImpl):

5:27 PM Changeset in webkit [137541] by tkent@chromium.org
  • 13 edits in branches/chromium/1312

Merge 136808

INPUT_MULTIPLE_FIELDS_UI doesn't show digits well in RTL locales
https://bugs.webkit.org/show_bug.cgi?id=103869

Reviewed by Hajime Morita.

Source/WebCore:

We need to use display:inline elements to wrap sub-fields and static
text in DateTimeEditElement children to apply the Unicode Bidi
Algorithm.

Because we can't use display:inline-block for them, we can't specify
min-width CSS property for them. We stop using customStyleForRenderer of
sub-fields to specify each of their widths, and use
customStyleForRenderer of DateTimeEditElement to specify the total
required width. A sub-field width shrink and grow so that the width fits
to the field value, and a DateTimeEditElement doesn't.

No new tests. Coverred by existing tests, especially
fast/forms/datetime/datetime-appearance-l10n.html shows "23:59"
correctly.

  • css/html.css:

(input::-webkit-datetime-edit-year-field):

  • Make this display:inline to apply the Unicode Bidi Algorithm.
  • Use padding instead of margin because of ease of width computation. Also, the focus apparance gets better by padding.
  • Don't allow to specify font property here because of ease of width computation.
  • Remove text-align:center. It doesn't work for display:inline.

(input::-webkit-datetime-edit-text):

  • Make this display:inline to apply the Unicode Bidi Algorithm.
  • Don't allow to specify font property here because of ease of width computation.
  • html/shadow/DateTimeEditElement.h:

(DateTimeEditElement): Declare customStyleForRenderer.

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditElement::DateTimeEditElement):
Enable customStyleForRenderer.
(WebCore::DateTimeEditElement::customStyleForRenderer):
Compute required width with a font for this element and child maximum
widths, and set it to min-width style.
The resultant width value can be inaccurate if a page author specifies
padding, border, margin, etc. to ::-webkit-datetime-edit-*-field or
::-webkit-datetime-edit-text. In such case, the page author should specify
wider width to <input>.

  • dom/Element.h:

(Element): Add isDateTimeFieldElement to do static_cast<DateTimeFieldElement> safely.

  • dom/Element.cpp:

(WebCore::Element::isDateTimeFieldElement): Added.

  • html/shadow/DateTimeFieldElement.h:

(DateTimeFieldElement): Declare isDateTimeFieldElement and maximumWidth.

  • html/shadow/DateTimeFieldElement.cpp:

(WebCore::DateTimeFieldElement::isDateTimeFieldElement):
Added. Returns true.
(WebCore::DateTimeFieldElement::maximumWidth):
Added. Returns padding width.

  • html/shadow/DateTimeSymbolicFieldElement.h:

(DateTimeSymbolicFieldElement):
Remove customStyleForRenderer, and declare maximumWidth.

  • html/shadow/DateTimeSymbolicFieldElement.cpp:

(WebCore::DateTimeSymbolicFieldElement::DateTimeSymbolicFieldElement):
Disable customStyleForRenderer.
(WebCore::DateTimeSymbolicFieldElement::maximumWidth):
Added. Returns the expected maximum width with the specified font.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement):
Remove customStyleForRenderer, declare maximumWidth, and make m_placeholder
non-const because it is updated in the constructor.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::DateTimeNumericFieldElement):
Disable customStyleForRenderer.
If a numeric value for this field is LTR and the whole direction is RTL,
wrap the placeholder string with left-to-right-mark and
right-to-left-mark so that it is handled as LTR. Without this,
sub-fields order would be changed when the content of a field is changed
from a placeholder to a numeric value.
(WebCore::DateTimeNumericFieldElement::maximumWidth):
Added. Returns the expected maximum width with the specified font.

LayoutTests:

  • Year fields and month fields are shrunk because we stop specifying min-width.
  • Focus rectangle for sub-fields get larger.
  • fast/forms/date-multiple-fields/date-multiple-fields-mouse-events.html:

Need to update mouse click positions because we have some position/width
changes in sub-fields.

  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-mouse-events.html:

Ditto.

  • fast/forms/month-multiple-fields/month-multiple-fields-mouse-events.html:

Ditto.

  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/datetime/datetime-l10n-expected.png:
  • platform/chromium-mac/fast/forms/month/month-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/time/time-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/week/week-appearance-basic-expected.png:
  • platform/chromium/TestExpectations:

TBR=tkent@chromium.org
BUG=crbug.com/163108
Review URL: https://codereview.chromium.org/11557024

5:18 PM Changeset in webkit [137540] by Simon Fraser
  • 3 edits in trunk/LayoutTests

Rebaseline some tiled scrolling results that were affected by r137387.

  • platform/mac/tiled-drawing/tiled-drawing-zoom-expected.txt:
  • platform/mac/tiled-drawing/use-tiled-drawing-expected.txt:
5:07 PM FeatureFlags edited by tkent@chromium.org
Remove ANIMATION_API (diff)
5:04 PM Changeset in webkit [137539] by aestes@apple.com
  • 11 edits in trunk/Source/WebCore

Don't dispatch fake mousemove events when we don't know where the cursor is
https://bugs.webkit.org/show_bug.cgi?id=104861

Reviewed by Sam Weinig.

When EventHandler is instantiated or cleared, it sets the current mouse
position to (0, 0), even though this is probably not where the mouse
cursor really is (and we won't know until the mouse moves into the WebView).
If a fake mousemove event fires and the page has an element at (0, 0)
that responds to mousemove, we might end up changing the cursor or
displaying a tooltip at the current mouse position, even if it is
outside the WebView.

Fake mousemove events are dispatched in order to update a cursor that
is already over the WebView. Don't dispatch the event if we don't know
this to be true.

  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler): Instantiate m_mousePositionIsUnknown to true.
(WebCore::EventHandler::clear): Reset m_mousePositionIsUnknown to true.
(WebCore::EventHandler::dispatchFakeMouseMoveEventSoon): Return early if the mouse position is unknown.
(WebCore::EventHandler::setLastKnownMousePosition): Set the mouse position from the PlatformMouseEvent and set m_mousePositionIsUnknown to false.
(WebCore::EventHandler::handleMousePressEvent): Call setLastKnownMousePosition() instead of setting the position directly.
(WebCore::EventHandler::handleMouseDoubleClickEvent): Ditto.
(WebCore::EventHandler::handleMouseMoveEvent): Ditto.
(WebCore::EventHandler::handleMouseReleaseEvent): Ditto.
(WebCore::EventHandler::updateSelectionForMouseDrag): Rename currentMouse(Global)Position to lastKnownMouse(Global)Position.
(WebCore::EventHandler::handleAutoscroll): Ditto.
(WebCore::EventHandler::updatePanScrollState): Ditto.
(WebCore::EventHandler::lastKnownMousePosition): Ditto.
(WebCore::EventHandler::dispatchFakeMouseMoveEventSoonInQuad): Ditto.
(WebCore::EventHandler::fakeMouseMoveEventTimerFired): Ditto.
(WebCore::EventHandler::hoverTimerFired): Ditto.

  • page/FrameView.cpp:

(WebCore::FrameView::lastKnownMousePosition): Ditto.

  • platform/ScrollableArea.h:

(WebCore::ScrollableArea::lastKnownMousePosition): Ditto.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterControllerDelegate mouseLocationInContentAreaForScrollerImpPair:]): Ditto.
(-[WebScrollbarPainterDelegate mouseLocationInScrollerForScrollerImp:]): Ditto.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::panScrollFromPoint): Ditto.
(WebCore::RenderLayer::autoscroll): Ditto.
(WebCore::RenderLayer::lastKnownMousePosition): Ditto.

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::panScroll): Ditto.
(WebCore::RenderListBox::autoscroll): Ditto.
(WebCore::RenderListBox::lastKnownMousePosition): Ditto.

5:04 PM Changeset in webkit [137538] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip some captions tests on Windows. Failing on both Mac and Windows.

  • platform/win/TestExpectations:
4:45 PM Changeset in webkit [137537] by Martin Robinson
  • 2 edits in trunk

Remove some spurious ChangeLog entries that webkit-patch included in my last commit

4:40 PM Changeset in webkit [137536] by Martin Robinson
  • 4 edits in trunk

Source/WebCore: Try to fix the GTK+ debug bulid

Logging.h is no longer included in headers, so we need to include it manually in
files that require logging macros.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Include Logging.h.

Source/WebKit/gtk: [Coverity] [GTK] Remove some redundant null checks in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=104570

Reviewed by Daniel Bates.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::elementDoesAutoCompleteForElementWithId): Remove a redundant null check.

Tools: [Coverity] [GTK] Remove some redundant null checks in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=104570

Reviewed by Daniel Bates.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(descriptionSuitableForTestResult): Remove a redundant null check.

4:32 PM Changeset in webkit [137535] by commit-queue@webkit.org
  • 13 edits in trunk/Source/WebCore

Unreviewed, rolling out r137524.
http://trac.webkit.org/changeset/137524
https://bugs.webkit.org/show_bug.cgi?id=104859

Causes m_deletionHasBegun assertion failures in
MutationObserver tests (Requested by aklein on #webkit).

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

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::~Document):
(WebCore::Document::suggestedMIMEType):

  • dom/Document.h:

(WebCore::Node::isDocumentNode):
(WebCore):
(WebCore::Node::treeScope):
(WebCore::Node::Node):

  • dom/Element.cpp:

(WebCore::Element::createRareData):

  • dom/ElementRareData.h:

(ElementRareData):
(WebCore::ElementRareData::ElementRareData):

  • dom/Node.cpp:

(WebCore::Node::~Node):
(WebCore::Node::setDocument):
(WebCore):
(WebCore::Node::setTreeScope):
(WebCore::Node::createRareData):
(WebCore::Node::attach):
(WebCore::Node::reportMemoryUsage):

  • dom/Node.h:

(WebCore):
(WebCore::NodeRareDataBase::treeScope):
(WebCore::NodeRareDataBase::setTreeScope):
(NodeRareDataBase):
(WebCore::NodeRareDataBase::NodeRareDataBase):
(Node):
(WebCore::Node::inDocument):
(WebCore::Node::documentInternal):

  • dom/NodeRareData.cpp:

(SameSizeAsNodeRareData):
(WebCore::NodeRareData::reportMemoryUsage):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::ShadowRoot):

  • dom/TreeScope.cpp:

(SameSizeAsTreeScope):
(WebCore::TreeScope::TreeScope):
(WebCore::TreeScope::setParentTreeScope):

  • dom/TreeScope.h:

(WebCore):
(TreeScope):

  • dom/TreeScopeAdopter.cpp:

(WebCore::TreeScopeAdopter::moveTreeToNewScope):
(WebCore::TreeScopeAdopter::moveNodeToNewDocument):

4:29 PM Changeset in webkit [137534] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Fix build warning when ENABLE_INSPECTOR is disabled
https://bugs.webkit.org/show_bug.cgi?id=104757

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-12
Reviewed by Kentaro Hara.

Use UNUSED_PARAM macro to fix build warning -Wunused-parameter.

No new tests, no behavior change.

  • inspector/InspectorCanvasInstrumentation.h:

(WebCore::InspectorInstrumentation::wrapCanvas2DRenderingContextForInstrumentation):
(WebCore::InspectorInstrumentation::wrapWebGLRenderingContextForInstrumentation):

  • inspector/InspectorConsoleInstrumentation.h:

(WebCore::InspectorInstrumentation::addMessageToConsole):
(WebCore::InspectorInstrumentation::consoleCount):
(WebCore::InspectorInstrumentation::startConsoleTiming):
(WebCore::InspectorInstrumentation::stopConsoleTiming):
(WebCore::InspectorInstrumentation::consoleTimeStamp):
(WebCore::InspectorInstrumentation::addStartProfilingMessageToConsole):
(WebCore::InspectorInstrumentation::addProfile):
(WebCore::InspectorInstrumentation::profilerEnabled):
(WebCore::InspectorInstrumentation::getCurrentUserInitiatedProfileName):

  • inspector/InspectorCounters.h:

(WebCore::InspectorCounters::incrementCounter):
(WebCore::InspectorCounters::decrementCounter):

  • inspector/InspectorDatabaseInstrumentation.h:

(WebCore::InspectorInstrumentation::didOpenDatabase):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::didClearWindowObjectInWorld):
(WebCore::InspectorInstrumentation::isDebuggerPaused):
(WebCore::InspectorInstrumentation::willInsertDOMNode):
(WebCore::InspectorInstrumentation::didInsertDOMNode):
(WebCore::InspectorInstrumentation::willRemoveDOMNode):
(WebCore::InspectorInstrumentation::willModifyDOMAttr):
(WebCore::InspectorInstrumentation::didModifyDOMAttr):
(WebCore::InspectorInstrumentation::didRemoveDOMAttr):
(WebCore::InspectorInstrumentation::didInvalidateStyleAttr):
(WebCore::InspectorInstrumentation::frameWindowDiscarded):
(WebCore::InspectorInstrumentation::mediaQueryResultChanged):
(WebCore::InspectorInstrumentation::didPushShadowRoot):
(WebCore::InspectorInstrumentation::willPopShadowRoot):
(WebCore::InspectorInstrumentation::didCreateNamedFlow):
(WebCore::InspectorInstrumentation::willRemoveNamedFlow):
(WebCore::InspectorInstrumentation::didUpdateRegionLayout):
(WebCore::InspectorInstrumentation::mouseDidMoveOverElement):
(WebCore::InspectorInstrumentation::handleTouchEvent):
(WebCore::InspectorInstrumentation::handleMousePress):
(WebCore::InspectorInstrumentation::forcePseudoState):
(WebCore::InspectorInstrumentation::characterDataModified):
(WebCore::InspectorInstrumentation::willSendXMLHttpRequest):
(WebCore::InspectorInstrumentation::didScheduleResourceRequest):
(WebCore::InspectorInstrumentation::didInstallTimer):
(WebCore::InspectorInstrumentation::didRemoveTimer):
(WebCore::InspectorInstrumentation::willCallFunction):
(WebCore::InspectorInstrumentation::didCallFunction):
(WebCore::InspectorInstrumentation::willDispatchXHRReadyStateChangeEvent):
(WebCore::InspectorInstrumentation::didDispatchXHRReadyStateChangeEvent):
(WebCore::InspectorInstrumentation::willDispatchEvent):
(WebCore::InspectorInstrumentation::didDispatchEvent):
(WebCore::InspectorInstrumentation::willHandleEvent):
(WebCore::InspectorInstrumentation::didHandleEvent):
(WebCore::InspectorInstrumentation::willDispatchEventOnWindow):
(WebCore::InspectorInstrumentation::didDispatchEventOnWindow):
(WebCore::InspectorInstrumentation::willEvaluateScript):
(WebCore::InspectorInstrumentation::didEvaluateScript):
(WebCore::InspectorInstrumentation::didCreateIsolatedContext):
(WebCore::InspectorInstrumentation::willFireTimer):
(WebCore::InspectorInstrumentation::didFireTimer):
(WebCore::InspectorInstrumentation::didBeginFrame):
(WebCore::InspectorInstrumentation::didCancelFrame):
(WebCore::InspectorInstrumentation::didInvalidateLayout):
(WebCore::InspectorInstrumentation::willLayout):
(WebCore::InspectorInstrumentation::didLayout):
(WebCore::InspectorInstrumentation::didScroll):
(WebCore::InspectorInstrumentation::willDispatchXHRLoadEvent):
(WebCore::InspectorInstrumentation::didDispatchXHRLoadEvent):
(WebCore::InspectorInstrumentation::willPaint):
(WebCore::InspectorInstrumentation::didPaint):
(WebCore::InspectorInstrumentation::willScrollLayer):
(WebCore::InspectorInstrumentation::didScrollLayer):
(WebCore::InspectorInstrumentation::willComposite):
(WebCore::InspectorInstrumentation::didComposite):
(WebCore::InspectorInstrumentation::willRecalculateStyle):
(WebCore::InspectorInstrumentation::didRecalculateStyle):
(WebCore::InspectorInstrumentation::didScheduleStyleRecalculation):
(WebCore::InspectorInstrumentation::willMatchRule):
(WebCore::InspectorInstrumentation::didMatchRule):
(WebCore::InspectorInstrumentation::willProcessRule):
(WebCore::InspectorInstrumentation::didProcessRule):
(WebCore::InspectorInstrumentation::applyUserAgentOverride):
(WebCore::InspectorInstrumentation::applyScreenWidthOverride):
(WebCore::InspectorInstrumentation::applyScreenHeightOverride):
(WebCore::InspectorInstrumentation::shouldApplyScreenWidthOverride):
(WebCore::InspectorInstrumentation::applyEmulatedMedia):
(WebCore::InspectorInstrumentation::shouldApplyScreenHeightOverride):
(WebCore::InspectorInstrumentation::willSendRequest):
(WebCore::InspectorInstrumentation::continueAfterPingLoader):
(WebCore::InspectorInstrumentation::markResourceAsCached):
(WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCache):
(WebCore::InspectorInstrumentation::willReceiveResourceData):
(WebCore::InspectorInstrumentation::didReceiveResourceData):
(WebCore::InspectorInstrumentation::willReceiveResourceResponse):
(WebCore::InspectorInstrumentation::didReceiveResourceResponse):
(WebCore::InspectorInstrumentation::continueAfterXFrameOptionsDenied):
(WebCore::InspectorInstrumentation::continueWithPolicyDownload):
(WebCore::InspectorInstrumentation::continueWithPolicyIgnore):
(WebCore::InspectorInstrumentation::didReceiveData):
(WebCore::InspectorInstrumentation::didFinishLoading):
(WebCore::InspectorInstrumentation::didFailLoading):
(WebCore::InspectorInstrumentation::documentThreadableLoaderStartedLoadingForClient):
(WebCore::InspectorInstrumentation::willLoadXHR):
(WebCore::InspectorInstrumentation::didFailXHRLoading):
(WebCore::InspectorInstrumentation::didFinishXHRLoading):
(WebCore::InspectorInstrumentation::didReceiveXHRResponse):
(WebCore::InspectorInstrumentation::willLoadXHRSynchronously):
(WebCore::InspectorInstrumentation::didLoadXHRSynchronously):
(WebCore::InspectorInstrumentation::scriptImported):
(WebCore::InspectorInstrumentation::scriptExecutionBlockedByCSP):
(WebCore::InspectorInstrumentation::didReceiveScriptResponse):
(WebCore::InspectorInstrumentation::domContentLoadedEventFired):
(WebCore::InspectorInstrumentation::loadEventFired):
(WebCore::InspectorInstrumentation::frameDetachedFromParent):
(WebCore::InspectorInstrumentation::didCommitLoad):
(WebCore::InspectorInstrumentation::loaderDetachedFromFrame):
(WebCore::InspectorInstrumentation::willDestroyCachedResource):
(WebCore::InspectorInstrumentation::willWriteHTML):
(WebCore::InspectorInstrumentation::didWriteHTML):
(WebCore::InspectorInstrumentation::didUseDOMStorage):
(WebCore::InspectorInstrumentation::didDispatchDOMStorageEvent):
(WebCore::InspectorInstrumentation::shouldPauseDedicatedWorkerOnStart):
(WebCore::InspectorInstrumentation::didStartWorkerContext):
(WebCore::InspectorInstrumentation::workerContextTerminated):
(WebCore::InspectorInstrumentation::didCreateWebSocket):
(WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequest):
(WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponse):
(WebCore::InspectorInstrumentation::didCloseWebSocket):
(WebCore::InspectorInstrumentation::didReceiveWebSocketFrame):
(WebCore::InspectorInstrumentation::didReceiveWebSocketFrameError):
(WebCore::InspectorInstrumentation::didSendWebSocketFrame):
(WebCore::InspectorInstrumentation::networkStateChanged):
(WebCore::InspectorInstrumentation::updateApplicationCacheStatus):
(WebCore::InspectorInstrumentation::didRequestAnimationFrame):
(WebCore::InspectorInstrumentation::didCancelAnimationFrame):
(WebCore::InspectorInstrumentation::willFireAnimationFrame):
(WebCore::InspectorInstrumentation::didFireAnimationFrame):
(WebCore::InspectorInstrumentation::overrideGeolocationPosition):
(WebCore::InspectorInstrumentation::overrideDeviceOrientation):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::didFinishLoading):
(WebCore::ApplicationCacheGroup::didFail):

4:22 PM Changeset in webkit [137533] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Reinstate CIFilter code for Lion
https://bugs.webkit.org/show_bug.cgi?id=104847

Reviewed by Simon Fraser.

This basically reverts r137500 for Lion, because some
CAFilter types are not available there.

Covered by existing tests, with the warning that Lion
baselines will need updating.

  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayer::setFilters): Put an ugly #if in to
detect OS X 10.7, and rename caFilter variable to
filter.

4:13 PM Changeset in webkit [137532] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Ensure InRegionScrollableArea is valid before using.
https://bugs.webkit.org/show_bug.cgi?id=104832

Patch by Mike Lattanzio <mlattanzio@rim.com> on 2012-12-12
Reviewed by Antonio Gomes.

Make sure the InRegionScrollableArea we are about to scroll is
still valid by ensuring its present in our cache of scrollable areas.
Internal PR: 258475
Internal Review: Gen Mak

We cache a RefPtr for each scrollable area at the time we discover them,
but this cache can get cleared anytime and then the references will be
released. If a request comes in to scroll a region which no longer
exists we have to ignore it.

  • Api/InRegionScroller.cpp:

(BlackBerry::WebKit::InRegionScrollerPrivate::setScrollPositionCompositingThread):
(BlackBerry::WebKit::InRegionScrollerPrivate::setScrollPositionWebKitThread):
(BlackBerry::WebKit::InRegionScrollerPrivate::isValidScrollableLayerWebKitThread):
(WebKit):
(BlackBerry::WebKit::InRegionScrollerPrivate::isValidScrollableNode):

  • Api/InRegionScroller_p.h:

(WebCore):
(InRegionScrollerPrivate):

  • WebKitSupport/InRegionScrollableArea.cpp:

(BlackBerry::WebKit::InRegionScrollableArea::cachedScrollableLayer):
(WebKit):
(BlackBerry::WebKit::InRegionScrollableArea::cachedScrollableNode):

  • WebKitSupport/InRegionScrollableArea.h:

(InRegionScrollableArea):

4:05 PM Changeset in webkit [137531] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk/Source

[EFL] Refactor duplicate code into EflInspectorUtilities
https://bugs.webkit.org/show_bug.cgi?id=104329

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Move duplicate work into EflInspectorUtilities.

No new tests, refactoring.

  • PlatformEfl.cmake:
  • platform/efl/EflInspectorUtilities.cpp: Added.

(WebCore):
(WebCore::inspectorResourcePath):

  • platform/efl/EflInspectorUtilities.h: Added.

(WebCore):

Source/WebKit/efl:

Remove duplicated work to get the resource path for inspector.
And use WebCore::inspectorResourcePath().

  • WebCoreSupport/InspectorClientEfl.cpp:

(WebCore::InspectorClientEfl::inspectorFilesPath):

Source/WebKit2:

Remove duplicated work to get the resource path for inspector.
And use WebCore::inspectorResourcePath().

  • UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp:

(WebKit::WebInspectorServer::platformResourceForPath):

  • UIProcess/efl/WebInspectorProxyEfl.cpp:

(WebKit::WebInspectorProxy::inspectorBaseURL):

3:56 PM Changeset in webkit [137530] by mark.lam@apple.com
  • 3 edits in trunk/Source/WebCore

Fixing a chromium build breakage due to r137520.
https://bugs.webkit.org/show_bug.cgi?id=104741.

Not reviewed.

Added #ifdef !PLATFORM(CHROMIUM) for one function chromium doesn't use.

No new tests.

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::initialize):

  • Modules/webdatabase/DatabaseTracker.h:

(DatabaseTracker):

3:53 PM Changeset in webkit [137529] by eae@chromium.org
  • 4 edits
    2 adds in trunk

REGRESSION (Subpixel layout): Gray vertical lines appear when moving insertion point to right on Mac
https://bugs.webkit.org/show_bug.cgi?id=102402

Reviewed by Simon Fraser.

Source/WebCore:

Round paintOffset in CaretBase::paintCaret to ensure that caret is painted at an integer pixel boundary.

Test: fast/sub-pixel/input-caret-on-subpixel-bound.html

  • editing/FrameSelection.cpp:

(WebCore::CaretBase::paintCaret): Round paintOffset to ensure it is on a pixel boundary.

LayoutTests:

Add test for caret painting in input field with a subpixel position and padding.

  • fast/sub-pixel/input-caret-on-subpixel-bound-expected.html: Added.
  • fast/sub-pixel/input-caret-on-subpixel-bound.html: Added.
3:43 PM Changeset in webkit [137528] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

REGRESSION(137336): Generated run-ins are not placed correctly
https://bugs.webkit.org/show_bug.cgi?id=104840

Patch by Elliott Sprehn <Elliott Sprehn> on 2012-12-12
Reviewed by Abhishek Arya.

Source/WebCore:

Now that :before and :after are not anonymous we no longer need special
handling for run-ins. Currently placeRunInIfNeeded will only place
a generated content run-in if a special flag is passed, but I removed
the call with the flag as it wasn't needed in r137336. This patch just
removes all special handling for generated content run-ins.

Test: fast/css-generated-content/generated-runin.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
(WebCore::RenderBlock::placeRunInIfNeeded):
(WebCore::RenderBlock::createReplacementRunIn):

Lots of simplfication since there's no more anonymous run-ins.

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderObject.h:

LayoutTests:

Add a test for dynamically adding a generated content run-in.

  • fast/css-generated-content/generated-runin-expected.html: Added.
  • fast/css-generated-content/generated-runin.html: Added.
3:40 PM Changeset in webkit [137527] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Unskipping some track tests after r137507.

  • platform/win/TestExpectations:
3:33 PM Changeset in webkit [137526] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Don't unconditionally repaint compositing layers when their size changes
https://bugs.webkit.org/show_bug.cgi?id=104461

Reviewed by James Robinson.

In r137215 I attempted to avoid excessive repainting when compositing layers
change size. This caused stretched layers when layer size changed as a result
of bounds constraining in updateCompositedBounds(), so was conditionalized
based on whether constraining happend, in r137248.

However, the TileCache layer was affected by constraining, erroneously:
shouldClipCompositedBounds() returned true of the tile cache layer. This
is pointless, because we only constrain to the document bounds (or enclosing
overflow), and the tile cache is already the size of the document bounds.

So, disable size constraining for the tile cache layer, and fix
a confusing comment in updateCompositedBounds() that refers to the
view's bounds, rather than the document's bounds.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::shouldClipCompositedBounds):
(WebCore::RenderLayerBacking::updateCompositedBounds):

3:20 PM Changeset in webkit [137525] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed test expectations update: tweak flakiness of resource timing tests.

  • platform/chromium/TestExpectations:
3:20 PM Changeset in webkit [137524] by commit-queue@webkit.org
  • 13 edits in trunk/Source/WebCore

[Refactoring] Replace Node's Document pointer with a TreeScope pointer
https://bugs.webkit.org/show_bug.cgi?id=59816

Patch by Elliott Sprehn <Elliott Sprehn> on 2012-12-12
Reviewed by Ryosuke Niwa.

Instead of giving every node in a shadow a rare data, which can be quite
large, we replace the Document pointer in Node with a TreeScope pointer
and we give TreeScope a pointer to it's document scope.

This introduces no branches in document() because in the common
case document() becomes equivalent to m_treeScope->m_documentScope where
the documentScope is actually m_treeScope so this shouldn't introduce a
perf regression.

Note also that TreeScope can never be null after r136328, and the document
pointer is only null for DocumentType nodes so we can use a special
no-document TreeScope for this case that always returns null from
documentScope().

No new tests, no change in behavior.

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::~Document):
(WebCore::Document::suggestedMIMEType):

  • dom/Document.h:

(WebCore::Node::isDocumentNode):
(WebCore::Node::Node):

  • dom/Element.cpp:

(WebCore::Element::createRareData):

  • dom/ElementRareData.h:

(ElementRareData):
(WebCore::ElementRareData::ElementRareData):

  • dom/Node.cpp:

(WebCore::Node::~Node):
(WebCore::Node::createRareData):
(WebCore::Node::attach):
(WebCore::Node::reportMemoryUsage):

  • dom/Node.h:

(WebCore):
(WebCore::NodeRareDataBase::NodeRareDataBase):
(NodeRareDataBase):
(WebCore::Node::treeScope):
(WebCore::Node::inDocument):
(WebCore::Node::documentInternal):
(WebCore::Node::setTreeScope):
(Node):

  • dom/NodeRareData.cpp:

(WebCore::NodeRareData::reportMemoryUsage):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::ShadowRoot):

  • dom/TreeScope.cpp:

(SameSizeAsTreeScope):
(WebCore::TreeScope::TreeScope):
(WebCore::TreeScope::setParentTreeScope):

  • dom/TreeScope.h:

(WebCore):
(TreeScope):
(WebCore::TreeScope::documentScope):
(WebCore::TreeScope::noDocumentInstance):

Returns a special tree scope that has no document for use with
DocumentType nodes.

(WebCore::TreeScope::setDocumentScope):

  • dom/TreeScopeAdopter.cpp:

(WebCore::TreeScopeAdopter::moveTreeToNewScope):
(WebCore::TreeScopeAdopter::moveTreeToNewDocument):
(WebCore::TreeScopeAdopter::moveNodeToNewDocument):

3:14 PM Changeset in webkit [137523] by eric@webkit.org
  • 5 edits in trunk/Tools

Add support for run-perf-tests --chromium-android --profile
https://bugs.webkit.org/show_bug.cgi?id=103587

Reviewed by Dirk Pranke.

This makes it possible to profile PerformanceTests on an Android device
using run-perf-tests --chromium-android --profile.
CPU profiling on Android is sadly non-trivial, but this goes a long
ways towards making it more accessible to non-Android developers.

Although this script requires your device to be flashed with a
userdebug build (an annoyingly non-trivial endeavor for external contributors)
it endeavors to detect and explain the common errors encountered
while trying to setup a device for perf-based profiling.

  • Scripts/webkitpy/common/system/profiler.py:

(GooglePProf.profile_after_exit): Discovered that pprof will just hang if passed a missing file.

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

(AndroidPerf):
(AndroidPerf.init):
(AndroidPerf.check_configuration):
(AndroidPerf.print_setup_instructions):
(_file_exists_on_device):
(_run_adb_command):
(attach_to_pid):
(_perf_version_string):
(_find_perfhost_binary):
(_perfhost_path):
(_first_ten_lines_of_profile):
(profile_after_exit):
(ChromiumAndroidDriver.init):
(ChromiumAndroidDriver.init.methods):
(ChromiumAndroidDriver._find_or_create_symfs):
(ChromiumAndroidDriver._start_once):
(ChromiumAndroidDriver):
(ChromiumAndroidDriver._run_post_start_tasks):
(ChromiumAndroidDriver._pid_from_android_ps_output):
(ChromiumAndroidDriver._pid_on_target):

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

(ChromiumAndroidDriverTest.test_pid_from_android_ps_output):
(AndroidPerfTest):
(AndroidPerfTest.test_perf_output_regexp):

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

(Driver._setup_environ_for_driver):
(Driver):
(Driver._start):
(Driver._run_post_start_tasks):
(Driver._pid_on_target):

3:13 PM Changeset in webkit [137522] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed test expectations update: tweak flakiness of various tests.

  • platform/chromium/TestExpectations:
3:04 PM Changeset in webkit [137521] by dmazzoni@google.com
  • 2 edits in trunk/LayoutTests

Rebaselining platform/mac/accessibility/internal-link-anchors2-expected.txt after r137512
https://bugs.webkit.org/show_bug.cgi?id=101650

This was just a merge error, the correct expectation wasn't checked in.

Unreviewed

  • platform/mac/accessibility/internal-link-anchors2-expected.txt:
3:04 PM Changeset in webkit [137520] by mark.lam@apple.com
  • 63 edits
    3 moves
    2 adds in trunk/Source

Encapsulate externally used webdatabase APIs in DatabaseManager.
https://bugs.webkit.org/show_bug.cgi?id=104741.

Reviewed by Sam Weinig.

Use DatabaseManager instead of accessing DatabaseTracker, AbstractDatabase,
and DatabaseContext directly. This is to prepare for upcoming webkit2
refactoring.

Source/WebCore:

No new tests.

  • CMakeLists.txt:
  • Modules/webdatabase/DatabaseManager.cpp: Added.

(WebCore::DatabaseManager::manager):
(WebCore::DatabaseManager::DatabaseManager):
(WebCore::DatabaseManager::initialize):
(WebCore::DatabaseManager::setClient):
(WebCore::DatabaseManager::isAvailable):
(WebCore::DatabaseManager::setIsAvailable):
(WebCore::DatabaseManager::hasOpenDatabases):
(WebCore::DatabaseManager::stopDatabases):
(WebCore::DatabaseManager::fullPathForDatabase):
(WebCore::DatabaseManager::databaseDirectoryPath):
(WebCore::DatabaseManager::setDatabaseDirectoryPath):
(WebCore::DatabaseManager::hasEntryForOrigin):
(WebCore::DatabaseManager::origins):
(WebCore::DatabaseManager::databaseNamesForOrigin):
(WebCore::DatabaseManager::detailsForNameAndOrigin):
(WebCore::DatabaseManager::usageForOrigin):
(WebCore::DatabaseManager::quotaForOrigin):
(WebCore::DatabaseManager::setQuota):
(WebCore::DatabaseManager::deleteAllDatabases):
(WebCore::DatabaseManager::deleteOrigin):
(WebCore::DatabaseManager::deleteDatabase):
(WebCore::DatabaseManager::closeDatabasesImmediately):
(WebCore::DatabaseManager::interruptAllDatabasesForContext):

  • Modules/webdatabase/DatabaseManager.h: Added.

(DatabaseManager):
(WebCore::DatabaseManager::~DatabaseManager):

  • Modules/webdatabase/DatabaseManagerClient.h: Copied from Source/WebCore/Modules/webdatabase/DatabaseTrackerClient.h.

(WebCore::DatabaseManagerClient::~DatabaseManagerClient):

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::setClient):

  • Modules/webdatabase/DatabaseTracker.h:

(DatabaseTracker):

  • Modules/webdatabase/DatabaseTrackerClient.h: Removed.
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.order:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore::RuntimeEnabledFeatures::openDatabaseEnabled):
(WebCore::RuntimeEnabledFeatures::openDatabaseSyncEnabled):

  • history/PageCache.cpp:

(WebCore::logCanCacheFrameDecision):
(WebCore::PageCache::canCachePageContainingThisFrame):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopLoading):

  • page/DOMWindow.cpp:
  • workers/WorkerThread.cpp:

(WebCore::WorkerThreadShutdownStartTask::performTask):
(WebCore::WorkerThread::stop):

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::didChangeSettings):

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::exceededDatabaseQuota):

Source/WebKit/chromium:

  • src/ChromeClientImpl.cpp:
  • src/WebDatabase.cpp:

(WebKit::WebDatabase::closeDatabaseImmediately):

  • src/WebRuntimeFeatures.cpp:

(WebKit::WebRuntimeFeatures::enableDatabase):
(WebKit::WebRuntimeFeatures::isDatabaseEnabled):

Source/WebKit/efl:

  • WebCoreSupport/ChromeClientEfl.cpp:

(WebCore::ChromeClientEfl::exceededDatabaseQuota):

  • ewk/ewk_security_origin.cpp:

(ewk_security_origin_web_database_usage_get):
(ewk_security_origin_web_database_quota_get):
(ewk_security_origin_web_database_quota_set):
(ewk_security_origin_web_database_get_all):

  • ewk/ewk_settings.cpp:

(ewk_settings_web_database_path_set):

  • ewk/ewk_web_database.cpp:

(ewk_web_database_display_name_get):
(ewk_web_database_expected_size_get):
(ewk_web_database_filename_get):
(ewk_web_database_size_get):
(ewk_web_database_remove):
(ewk_web_database_remove_all):

Source/WebKit/gtk:

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::exceededDatabaseQuota):

  • webkit/webkitfavicondatabase.cpp:
  • webkit/webkiticondatabase.cpp:
  • webkit/webkitsecurityorigin.cpp:

(webkit_security_origin_get_web_database_usage):
(webkit_security_origin_get_web_database_quota):
(webkit_security_origin_set_web_database_quota):
(webkit_security_origin_get_all_web_databases):

  • webkit/webkitwebdatabase.cpp:

(webkit_web_database_get_display_name):
(webkit_web_database_get_expected_size):
(webkit_web_database_get_size):
(webkit_web_database_get_filename):
(webkit_web_database_remove):
(webkit_remove_all_web_databases):
(webkit_get_web_database_directory_path):
(webkit_set_web_database_directory_path):

  • webkit/webkitwebview.cpp:

(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

Source/WebKit/mac:

  • Storage/WebDatabaseManager.mm:

(-[WebDatabaseManager origins]):
(-[WebDatabaseManager databasesWithOrigin:]):
(-[WebDatabaseManager detailsForDatabase:withOrigin:]):
(-[WebDatabaseManager deleteAllDatabases]):
(-[WebDatabaseManager deleteOrigin:]):
(-[WebDatabaseManager deleteDatabase:withOrigin:]):
(WebKitInitializeDatabasesIfNecessary):

  • Storage/WebDatabaseManagerClient.h: Copied from Source/WebKit/mac/Storage/WebDatabaseTrackerClient.h.

(WebDatabaseManagerClient):

  • Storage/WebDatabaseManagerClient.mm: Copied from Source/WebKit/mac/Storage/WebDatabaseTrackerClient.mm.

(WebDatabaseManagerClient::sharedWebDatabaseManagerClient):
(WebDatabaseManagerClient::WebDatabaseManagerClient):
(WebDatabaseManagerClient::~WebDatabaseManagerClient):
(DidModifyOriginData::dispatchToMainThread):
(DidModifyOriginData::DidModifyOriginData):
(DidModifyOriginData):
(WebDatabaseManagerClient::dispatchDidModifyOrigin):
(WebDatabaseManagerClient::dispatchDidModifyDatabase):

  • Storage/WebDatabaseQuotaManager.mm:

(-[WebDatabaseQuotaManager usage]):
(-[WebDatabaseQuotaManager quota]):
(-[WebDatabaseQuotaManager setQuota:]):

  • Storage/WebDatabaseTrackerClient.h: Removed.
  • Storage/WebDatabaseTrackerClient.mm: Removed.
  • WebCoreSupport/WebSecurityOrigin.mm:

(-[WebSecurityOrigin usage]):
(-[WebSecurityOrigin quota]):
(-[WebSecurityOrigin setQuota:]):

  • WebKit.order:
  • WebView/WebFrame.mm:

(-[WebFrame _cacheabilityDictionary]):

  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit/qt:

  • Api/qwebdatabase.cpp:

(QWebDatabase::displayName):
(QWebDatabase::expectedSize):
(QWebDatabase::size):
(QWebDatabase::fileName):
(QWebDatabase::removeDatabase):
(QWebDatabase::removeAllDatabases):

  • Api/qwebsecurityorigin.cpp:

(QWebSecurityOrigin::databaseUsage):
(QWebSecurityOrigin::databaseQuota):
(QWebSecurityOrigin::setDatabaseQuota):
(QWebSecurityOrigin::allOrigins):
(QWebSecurityOrigin::databases):

  • Api/qwebsettings.cpp:

(QWebSettingsPrivate::apply):
(QWebSettings::setOfflineStoragePath):
(QWebSettings::offlineStoragePath):

  • WebCoreSupport/ChromeClientQt.cpp:

Source/WebKit/win:

  • WebDatabaseManager.cpp:

(WebDatabaseManager::sharedWebDatabaseManager):
(WebDatabaseManager::origins):
(WebDatabaseManager::databasesWithOrigin):
(WebDatabaseManager::detailsForDatabase):
(WebDatabaseManager::deleteAllDatabases):
(WebDatabaseManager::deleteOrigin):
(WebDatabaseManager::deleteDatabase):
(WebDatabaseManager::setQuota):
(WebKitInitializeWebDatabasesIfNecessary):

  • WebDatabaseManager.h:

(WebDatabaseManager):

  • WebSecurityOrigin.cpp:

(WebSecurityOrigin::usage):
(WebSecurityOrigin::quota):
(WebSecurityOrigin::setQuota):

  • WebView.cpp:

(WebView::notifyPreferencesChanged):

Source/WebKit/wx:

  • WebKitSupport/ChromeClientWx.cpp:

(WebCore::ChromeClientWx::exceededDatabaseQuota):

  • WebView.cpp:

(WebKit::WebView::SetDatabaseDirectory):
(WebKit::WebView::GetDatabaseDirectory):
(WebKit::WebView::SetDatabasesEnabled):
(WebKit::WebView::AreDatabasesEnabled):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::exceededDatabaseQuota):

  • WebProcess/WebCoreSupport/WebDatabaseManager.cpp:

(WebKit::WebDatabaseManager::initialize):
(WebKit::WebDatabaseManager::WebDatabaseManager):
(WebKit::WebDatabaseManager::getDatabasesByOrigin):
(WebKit::WebDatabaseManager::getDatabaseOrigins):
(WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin):
(WebKit::WebDatabaseManager::deleteDatabasesForOrigin):
(WebKit::WebDatabaseManager::deleteAllDatabases):
(WebKit::WebDatabaseManager::setQuotaForOrigin):

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:

(WebDatabaseManager):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

3:01 PM Changeset in webkit [137519] by tony@chromium.org
  • 3 edits in trunk/Source/WebCore

[chromium] don't write additional idl files to a gyp temp file
https://bugs.webkit.org/show_bug.cgi?id=104831

Reviewed by Kentaro Hara.

The <|( command doesn't work for files like <(PRODUCT_DIR) or <(SHARED_INTERMEDIATE_DIR).
For additional_idl_files, pass it as a parameter instead of a file listing the filenames.
There are currently only 3 files in this variable. This shouldn't overflow the command
line since the limit on Windows is 8k and with this change, we're still only around 4.5k.
Also, the longest part of the command line is the list of defines. If needed, we could put
that in a file instead.

No new tests, this is a refactoring of the build files.

  • WebCore.gyp/WebCore.gyp: Don't use <|( for additional_idl_files.
  • bindings/scripts/generate-bindings.pl: Change --additionalIdlFilesList to

--additionalIdlFiles, which is a shell argument containing the filenames.

2:56 PM Changeset in webkit [137518] by mihnea@adobe.com
  • 4 edits in trunk/LayoutTests

[Qt][GTK] new fast/exclusions/shape-inside/shape-inside-rounded-rectangle-fit-002.html fails since introduced in r136857
https://bugs.webkit.org/show_bug.cgi?id=104351

Reviewed by Alejandro G. Castro.

For the platforms gtk/qt that do not have subpixel-layout enabled, adjust the top of the shape-inside box in the expected file.
This is similar to the approach taken for https://bugs.webkit.org/show_bug.cgi?id=100996.

  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-fit-002-expected.html:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
2:40 PM Changeset in webkit [137517] by dpranke@chromium.org
  • 2 edits in trunk/Tools

nrwt: remove deprecated ORWT compatibility command line flags
https://bugs.webkit.org/show_bug.cgi?id=104301

Reviewed by Eric Seidel.

The command line flags for --noshow-results, --[no-]launch-safari,
and --use-remote-links-to-tests were for compatibility with
old-run-webkit-tests, but the compatibility is not needed any more
since NRWT is basically default and the scripts that passed the
old flags have been updated.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(_set_up_derived_options):
(parse_args):

2:35 PM Changeset in webkit [137516] by crogers@google.com
  • 68 edits
    3 adds in trunk

Implement OfflineAudioContext constructor
https://bugs.webkit.org/show_bug.cgi?id=104188

Reviewed by Kentaro Hara.

Source/WebCore:

The Web Audio layout tests have relied on an undocumented way (in the specification) to render
audio faster than realtime using an OfflineAudioContext. We want to expose a proper OfflineAudioContext
object and constructor instead of piggybacking off of the normal AudioContext.

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::isSampleRateRangeGood):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • Modules/webaudio/DOMWindowWebAudio.idl:
  • Modules/webaudio/OfflineAudioContext.cpp: Added.

(WebCore):
(WebCore::OfflineAudioContext::create):
(WebCore::OfflineAudioContext::OfflineAudioContext):
(WebCore::OfflineAudioContext::~OfflineAudioContext):

  • Modules/webaudio/OfflineAudioContext.h: Added.

(WebCore):
(OfflineAudioContext):

  • Modules/webaudio/OfflineAudioContext.idl: Added.
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/generic/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::webkitOfflineAudioContextEnabled):

  • bindings/js/JSAudioContextCustom.cpp:

(WebCore::JSAudioContextConstructor::constructJSAudioContext):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallbackCustom):

LayoutTests:

Switch Web Audio layout tests to use OfflineAudioContext constructor.

  • inspector-protocol/nmi-webaudio.html:
  • inspector-protocol/resources/audio-context.html:
  • webaudio/audiobuffersource-loop-comprehensive.html:
  • webaudio/audiobuffersource-loop-points.html:
  • webaudio/audiobuffersource-multi-channels.html:
  • webaudio/audiobuffersource-playbackState.html:
  • webaudio/audiobuffersource-playbackrate.html:
  • webaudio/audiobuffersource-start.html:
  • webaudio/audiobuffersource.html:
  • webaudio/audiochannelmerger-stereo.html:
  • webaudio/audiochannelsplitter.html:
  • webaudio/audionode-connect-order.html:
  • webaudio/audionode-expected.txt:
  • webaudio/audioparam-connect-audioratesignal.html:
  • webaudio/audioparam-summingjunction.html:
  • webaudio/automatic-pull-node.html:
  • webaudio/biquad-allpass.html:
  • webaudio/biquad-bandpass.html:
  • webaudio/biquad-highpass.html:
  • webaudio/biquad-highshelf.html:
  • webaudio/biquad-lowpass.html:
  • webaudio/biquad-lowshelf.html:
  • webaudio/biquad-notch.html:
  • webaudio/biquad-peaking.html:
  • webaudio/convolution-mono-mono.html:
  • webaudio/delaynode-max-default-delay.html:
  • webaudio/delaynode-max-nondefault-delay.html:
  • webaudio/delaynode-maxdelay.html:
  • webaudio/delaynode-maxdelaylimit.html:
  • webaudio/delaynode-scheduling.html:
  • webaudio/delaynode.html:
  • webaudio/distance-exponential.html:
  • webaudio/distance-inverse.html:
  • webaudio/distance-linear.html:
  • webaudio/gain.html:
  • webaudio/javascriptaudionode-zero-input-channels.html:
  • webaudio/javascriptaudionode.html:
  • webaudio/mediaelementaudiosourcenode-gc.html:
  • webaudio/mixing.html:
  • webaudio/note-grain-on-play.html:
  • webaudio/note-grain-on-timing.html:
  • webaudio/oscillator-basic.html:
  • webaudio/panner-equalpower-stereo.html:
  • webaudio/panner-equalpower.html:
  • webaudio/realtimeanalyser-fft-sizing.html:
  • webaudio/resources/audio-codec-test.js:

(runDecodingTest):

  • webaudio/resources/audioparam-testing.js:

(createAudioGraphAndTest):

  • webaudio/resources/javascriptaudionode-testing.js:

(runJSNodeTest):

  • webaudio/sample-accurate-scheduling.html:
  • webaudio/stereo2mono-down-mixing.html:
  • webaudio/up-mixing-mono-51.html:
  • webaudio/up-mixing-mono-stereo.html:
  • webaudio/up-mixing-stereo-51.html:
  • webaudio/waveshaper.html:
2:31 PM Changeset in webkit [137515] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/12862512> Crashes in NetworkResourceLoadScheduler::receivedRedirect
https://bugs.webkit.org/show_bug.cgi?id=104844

Reviewed by Sam Weinig.

  • NetworkProcess/NetworkResourceLoadScheduler.cpp: (WebKit::NetworkResourceLoadScheduler::receivedRedirect): The load may be already canceled.
  • WebProcess/Network/WebResourceLoader.cpp: (WebKit::WebResourceLoader::didReceiveResponse): Expanded logging a little.
2:18 PM Changeset in webkit [137514] by commit-queue@webkit.org
  • 9 edits
    3 adds in trunk

.: [BlackBerry] Update Media Controls for BlackBerry Platform
https://bugs.webkit.org/show_bug.cgi?id=104443
https://przilla.ott.qnx.com/bugzilla/show_bug.cgi?id=204748

Update Media Controls for BlackBerry platform to allow audio, embedded video and fullscreen video controls to be positioned and styled differently.

Patch by John Griggs <jgriggs@rim.com> on 2012-12-12
Reviewed by Rob Buis.

  • Source/cmake/OptionsBlackBerry.cmake:

Source/WebCore: [BlackBerry] Update Media Controls for BlackBerry Platform
https://bugs.webkit.org/show_bug.cgi?id=104443
https://przilla.ott.qnx.com/bugzilla/show_bug.cgi?id=204748

Patch by John Griggs <jgriggs@rim.com> on 2012-12-12
Reviewed by Rob Buis.

Update Media Controls for BlackBerry platform to allow audio, embedded video and fullscreen video controls to be positioned and styled differently.

BlackBerry-specific update to Media Controls - No new tests required.

  • PlatformBlackBerry.cmake:
  • css/mediaControlsBlackBerry.css:

(audio):
(audio::-webkit-media-controls-embedded-panel, video::-webkit-media-controls-embedded-panel):
(audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
(video::-webkit-media-controls-button-group-container, audio::-webkit-media-controls-button-group-container):
(video::-webkit-media-controls-fullscreen-time-display-container, audio::-webkit-media-controls-fullscreen-time-display-container):
(video::-webkit-media-controls-time-display-container, audio::-webkit-media-controls-time-display-container):
(video::-webkit-media-controls-fullscreen-play-button, audio::-webkit-media-controls-fullscreen-play-button):
(video::-webkit-media-controls-play-button, audio::-webkit-media-controls-play-button):
(audio::-webkit-media-controls-fullscreen-timeline-container, video::-webkit-media-controls-fullscreen-timeline-container):
(video::-webkit-media-controls-timeline-container, audio::-webkit-media-controls-timeline-container):
(audio::-webkit-media-controls-fullscreen-current-time-display, video::-webkit-media-controls-fullscreen-current-time-display):
(audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
(video::-webkit-media-controls-fullscreen-time-remaining-display, audio::-webkit-media-controls-fullscreen-time-remaining-display):
(video::-webkit-media-controls-time-remaining-display, audio::-webkit-media-controls-time-remaining-display):
(audio::-webkit-media-controls-fullscreen-timeline, video::-webkit-media-controls-fullscreen-timeline):
(video::-webkit-media-controls-fullscreen-fullscreen-button, audio::-webkit-media-controls-fullscreen-fullscreen-button):
(video::-webkit-media-controls-fullscreen-button):
(audio::-webkit-media-controls-fullscreen-button):
(audio::-webkit-media-controls-audio-mute-button):
(video::-webkit-media-controls-audio-mute-button):
(audio::-webkit-media-controls-volume-slider-container):
(video::-webkit-media-controls-volume-slider-container):
(audio::-webkit-media-controls-volume-slider):
(video::-webkit-media-controls-volume-slider):
(video::-webkit-media-controls-fullscreen-button-divider, audio::-webkit-media-controls-fullscreen-button-divider):
(video::-webkit-media-controls-fullscreen-button-container, video::-webkit-media-controls-play-button-container, audio::-webkit-media-controls-fullscreen-button-container, audio::-webkit-media-controls-play-button-container):

  • css/mediaControlsBlackBerryFullscreen.css: Added.

(body:-webkit-full-page-media):
(video:-webkit-full-screen::-webkit-media-controls-embedded-panel):
(video:-webkit-full-screen::-webkit-media-controls-panel):
(video:-webkit-full-screen::-webkit-media-controls-button-group-container):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-time-display-container):
(video:-webkit-full-screen::-webkit-media-controls-time-display-container):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-play-button):
(video:-webkit-full-screen::-webkit-media-controls-play-button):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-timeline-container):
(video:-webkit-full-screen::-webkit-media-controls-timeline-container):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-current-time-display):
(video:-webkit-full-screen::-webkit-media-controls-current-time-display):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-time-remaining-display):
(video:-webkit-full-screen::-webkit-media-controls-time-remaining-display):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-timeline):
(video:-webkit-full-screen::-webkit-media-controls-timeline):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-fullscreen-button):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-button):
(video:-webkit-full-screen::-webkit-media-controls-audio-mute-button):
(video:-webkit-full-screen::-webkit-media-controls-volume-slider-container):
(video:-webkit-full-screen::-webkit-media-controls-volume-slider):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-button-divider):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-button-container, video:-webkit-full-screen::-webkit-media-controls-play-button-container):
(video:-webkit-full-screen::-webkit-media-controls-fullscreen-button-container):
(video:-webkit-full-screen::-webkit-media-controls-play-button-container):
(video:-webkit-full-screen::-webkit-media-controls-placeholder):

  • html/shadow/MediaControlsBlackBerry.cpp: Added.

(WebCore):
(WebCore::MediaControlButtonGroupContainerElement::MediaControlButtonGroupContainerElement):
(WebCore::MediaControlButtonGroupContainerElement::create):
(WebCore::MediaControlButtonGroupContainerElement::shadowPseudoId):
(WebCore::MediaControlTimeDisplayContainerElement::MediaControlTimeDisplayContainerElement):
(WebCore::MediaControlTimeDisplayContainerElement::create):
(WebCore::MediaControlTimeDisplayContainerElement::shadowPseudoId):
(WebCore::MediaControlEmbeddedPanelElement::MediaControlEmbeddedPanelElement):
(WebCore::MediaControlEmbeddedPanelElement::create):
(WebCore::MediaControlEmbeddedPanelElement::shadowPseudoId):
(WebCore::MediaControlEmbeddedPanelElement::startDrag):
(WebCore::MediaControlEmbeddedPanelElement::continueDrag):
(WebCore::MediaControlEmbeddedPanelElement::endDrag):
(WebCore::MediaControlEmbeddedPanelElement::startTimer):
(WebCore::MediaControlEmbeddedPanelElement::stopTimer):
(WebCore::MediaControlEmbeddedPanelElement::transitionTimerFired):
(WebCore::MediaControlEmbeddedPanelElement::setPosition):
(WebCore::MediaControlEmbeddedPanelElement::resetPosition):
(WebCore::MediaControlEmbeddedPanelElement::makeOpaque):
(WebCore::MediaControlEmbeddedPanelElement::makeTransparent):
(WebCore::MediaControlEmbeddedPanelElement::defaultEventHandler):
(WebCore::MediaControlEmbeddedPanelElement::setCanBeDragged):
(WebCore::MediaControlEmbeddedPanelElement::setIsDisplayed):
(WebCore::MediaControlFullscreenTimeDisplayContainerElement::MediaControlFullscreenTimeDisplayContainerElement):
(WebCore::MediaControlFullscreenTimeDisplayContainerElement::create):
(WebCore::MediaControlFullscreenTimeDisplayContainerElement::shadowPseudoId):
(WebCore::MediaControlFullscreenButtonContainerElement::MediaControlFullscreenButtonContainerElement):
(WebCore::MediaControlFullscreenButtonContainerElement::create):
(WebCore::MediaControlFullscreenButtonContainerElement::shadowPseudoId):
(WebCore::MediaControlFullscreenButtonDividerElement::MediaControlFullscreenButtonDividerElement):
(WebCore::MediaControlFullscreenButtonDividerElement::create):
(WebCore::MediaControlFullscreenButtonDividerElement::shadowPseudoId):
(WebCore::MediaControlPlayButtonContainerElement::MediaControlPlayButtonContainerElement):
(WebCore::MediaControlPlayButtonContainerElement::create):
(WebCore::MediaControlPlayButtonContainerElement::shadowPseudoId):
(WebCore::MediaControlPlaceholderElement::MediaControlPlaceholderElement):
(WebCore::MediaControlPlaceholderElement::create):
(WebCore::MediaControlPlaceholderElement::shadowPseudoId):
(WebCore::MediaControlFullscreenPlayButtonElement::MediaControlFullscreenPlayButtonElement):
(WebCore::MediaControlFullscreenPlayButtonElement::create):
(WebCore::MediaControlFullscreenPlayButtonElement::defaultEventHandler):
(WebCore::MediaControlFullscreenPlayButtonElement::updateDisplayType):
(WebCore::MediaControlFullscreenPlayButtonElement::shadowPseudoId):
(WebCore::MediaControlFullscreenFullscreenButtonElement::MediaControlFullscreenFullscreenButtonElement):
(WebCore::MediaControlFullscreenFullscreenButtonElement::create):
(WebCore::MediaControlFullscreenFullscreenButtonElement::defaultEventHandler):
(WebCore::MediaControlFullscreenFullscreenButtonElement::shadowPseudoId):
(WebCore::MediaControlFullscreenFullscreenButtonElement::setIsFullscreen):
(WebCore::MediaControlFullscreenTimelineContainerElement::MediaControlFullscreenTimelineContainerElement):
(WebCore::MediaControlFullscreenTimelineContainerElement::create):
(WebCore::MediaControlFullscreenTimelineContainerElement::shadowPseudoId):
(WebCore::MediaControlFullscreenTimelineElement::MediaControlFullscreenTimelineElement):
(WebCore::MediaControlFullscreenTimelineElement::create):
(WebCore::MediaControlFullscreenTimelineElement::defaultEventHandler):
(WebCore::MediaControlFullscreenTimelineElement::willRespondToMouseClickEvents):
(WebCore::MediaControlFullscreenTimelineElement::setPosition):
(WebCore::MediaControlFullscreenTimelineElement::setDuration):
(WebCore::MediaControlFullscreenTimelineElement::shadowPseudoId):
(WebCore::MediaControlFullscreenTimeRemainingDisplayElement::create):
(WebCore::MediaControlFullscreenTimeRemainingDisplayElement::MediaControlFullscreenTimeRemainingDisplayElement):
(WebCore::MediaControlFullscreenTimeRemainingDisplayElement::shadowPseudoId):
(WebCore::MediaControlFullscreenCurrentTimeDisplayElement::create):
(WebCore::MediaControlFullscreenCurrentTimeDisplayElement::MediaControlFullscreenCurrentTimeDisplayElement):
(WebCore::MediaControlFullscreenCurrentTimeDisplayElement::shadowPseudoId):
(WebCore::MediaControlAudioMuteButtonElement::MediaControlAudioMuteButtonElement):
(WebCore::MediaControlAudioMuteButtonElement::create):
(WebCore::MediaControlAudioMuteButtonElement::defaultEventHandler):
(WebCore::MediaControlAudioMuteButtonElement::shadowPseudoId):
(WebCore::MediaControlsBlackBerry::MediaControlsBlackBerry):
(WebCore::MediaControls::create):
(WebCore::MediaControlsBlackBerry::createControls):
(WebCore::MediaControlsBlackBerry::setMediaController):
(WebCore::MediaControlsBlackBerry::show):
(WebCore::MediaControlsBlackBerry::hide):
(WebCore::MediaControlsBlackBerry::makeOpaque):
(WebCore::MediaControlsBlackBerry::makeTransparent):
(WebCore::MediaControlsBlackBerry::reset):
(WebCore::MediaControlsBlackBerry::bufferingProgressed):
(WebCore::MediaControlsBlackBerry::playbackStarted):
(WebCore::MediaControlsBlackBerry::playbackProgressed):
(WebCore::MediaControlsBlackBerry::playbackStopped):
(WebCore::MediaControlsBlackBerry::updateCurrentTimeDisplay):
(WebCore::MediaControlsBlackBerry::reportedError):
(WebCore::MediaControlsBlackBerry::changedMute):
(WebCore::MediaControlsBlackBerry::enteredFullscreen):
(WebCore::MediaControlsBlackBerry::exitedFullscreen):
(WebCore::MediaControlsBlackBerry::showVolumeSlider):
(WebCore::MediaControlsBlackBerry::toggleVolumeSlider):
(WebCore::MediaControlsBlackBerry::shouldHideControls):

  • html/shadow/MediaControlsBlackBerry.h: Added.

(WebCore):
(MediaControlButtonGroupContainerElement):
(MediaControlTimeDisplayContainerElement):
(MediaControlEmbeddedPanelElement):
(MediaControlFullscreenTimeDisplayContainerElement):
(MediaControlFullscreenButtonContainerElement):
(MediaControlFullscreenButtonDividerElement):
(MediaControlPlayButtonContainerElement):
(MediaControlPlaceholderElement):
(MediaControlFullscreenPlayButtonElement):
(MediaControlFullscreenFullscreenButtonElement):
(MediaControlFullscreenTimelineContainerElement):
(MediaControlFullscreenTimelineElement):
(MediaControlFullscreenTimeRemainingDisplayElement):
(MediaControlFullscreenCurrentTimeDisplayElement):
(MediaControlAudioMuteButtonElement):
(MediaControlsBlackBerry):

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore):
(WebCore::RenderThemeBlackBerry::extraFullScreenStyleSheet):
(WebCore::RenderThemeBlackBerry::adjustSliderThumbSize):
(WebCore::RenderThemeBlackBerry::paintSliderTrackRect):
(WebCore::RenderThemeBlackBerry::adjustMediaControlStyle):
(WebCore::RenderThemeBlackBerry::adjustSliderTrackStyle):
(WebCore::RenderThemeBlackBerry::paintMediaRewindButton):
(WebCore::RenderThemeBlackBerry::paintMediaMuteButton):
(WebCore::RenderThemeBlackBerry::paintMediaFullscreenButton):
(WebCore::RenderThemeBlackBerry::paintMediaSliderTrack):
(WebCore::RenderThemeBlackBerry::paintMediaSliderThumb):
(WebCore::RenderThemeBlackBerry::paintMediaVolumeSliderTrack):
(WebCore::RenderThemeBlackBerry::paintMediaVolumeSliderThumb):

  • platform/blackberry/RenderThemeBlackBerry.h:

(WebCore::RenderThemeBlackBerry::usesVerticalVolumeSlider):
(RenderThemeBlackBerry):

Tools: [BlackBerry] Update Media Controls
https://bugs.webkit.org/show_bug.cgi?id=104443
https://przilla.ott.qnx.com/bugzilla/show_bug.cgi?id=204748

Update Media Controls for BlackBerry platform to allow audio, embedded video and fullscreen video controls to be positioned and styled differently.

Patch by John Griggs <jgriggs@rim.com> on 2012-12-12
Reviewed by Rob Buis.

BlackBerry-specific update to Media Controls - No new tests required.

  • Scripts/webkitperl/FeatureList.pm:
1:51 PM Changeset in webkit [137513] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix word matching algorithm to account for adjacent divs with no whitespace between them.
https://bugs.webkit.org/show_bug.cgi?id=104837

Reviewed by Rob Buis.

PR 258038.

Fix selection at the end of content editable text block.

The next character may be in the next block bypassing the distance
comparison logic we have, remove the check for next character being
whitespace

Reviewed Internally by Nima Ghanavatian.

  • WebKitSupport/DOMSupport.cpp:

(BlackBerry::WebKit::DOMSupport::visibleSelectionForClosestActualWordStart):

1:50 PM Changeset in webkit [137512] by dmazzoni@google.com
  • 13 edits
    2 adds in trunk

AX: textUnderElement should consider alt text, but skip links and controls
https://bugs.webkit.org/show_bug.cgi?id=101650

Reviewed by Chris Fleizach.

Source/WebCore:

Getting inner text from an element now ignores focusable descendants and
containers, but uses alternative text.

The computation of textUnderElement is now recursive. This caused a crash
if it was called by accessibilityIsIgnored during object destruction,
so I simplified accessibilityIsIgnored to not actually call textUnderElement,
without affecting test results, which should actually be a decent speedup.

Test: accessibility/button-title-uses-inner-img-alt.html
Test: accessibility/focusable-div.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore):
(WebCore::shouldUseAccessiblityObjectInnerText):
(WebCore::AccessibilityNodeObject::textUnderElement):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::textUnderElement):

LayoutTests:

Adds new tests to show that getting inner text from an element now ignores
focusable descendants and containers, but uses alternative text.

Updates and rebaselines several tests to reflect the new logic.

  • accessibility/button-title-uses-inner-img-alt-expected.txt: Added.
  • accessibility/button-title-uses-inner-img-alt.html: Added.
  • accessibility/focusable-div-expected.txt: Extended with more test cases.
  • accessibility/focusable-div.html: Extended with more test cases.
  • platform/chromium/TestExpectations: Un-skip test that now passes.
  • platform/chromium/accessibility/image-link-expected.txt: Rebaseline
  • platform/mac/accessibility/image-link-expected.txt: Rebaseline
  • platform/mac/accessibility/internal-link-anchors2-expected.txt: Rebaseline
  • platform/mac/accessibility/static-text-role-uses-text-under-element-expected.txt: Rebaseline
  • platform/mac/accessibility/static-text-role-uses-text-under-element.html: Fix
  • platform/mac/accessibility/table-with-aria-role-expected.txt: Rebaseline
1:36 PM Changeset in webkit [137511] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r137490.
http://trac.webkit.org/changeset/137490
https://bugs.webkit.org/show_bug.cgi?id=104838

Breaks Chromium build due to references to
WebSharedWorkerRepository (Requested by aklein on #webkit).

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

  • public/platform/WebKitPlatformSupport.h:

(WebKit):
(WebKitPlatformSupport):
(WebKit::WebKitPlatformSupport::sharedWorkerRepository):

  • src/SharedWorkerRepository.cpp:

(WebKit::sharedWorkerRepository):
(WebCore::SharedWorkerRepository::isAvailable):

1:33 PM Changeset in webkit [137510] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: follow up to r136974: handle visibility shortcut in keydown event of ElementsTreeOutline.element
https://bugs.webkit.org/show_bug.cgi?id=104694

Patch by Eberhard Graether <egraether@google.com> on 2012-12-12
Reviewed by Pavel Feldman.

Typing H in the StylesSidebarPane caused toggling of the selected elements visibility. This change only handles
the H keydown when the ElementsPanel is focused.

No new tests.

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeOutline):
(WebInspector.ElementsTreeOutline.prototype._onkeydown):
(WebInspector.ElementsTreeOutline.prototype.handleShortcut):

  • inspector/front-end/KeyboardShortcut.js:

(WebInspector.KeyboardShortcut.hasNoModifiers):

1:31 PM Changeset in webkit [137509] by pdr@google.com
  • 7 edits
    2 adds in trunk

Fix target element handling in SVGSMILElement.
https://bugs.webkit.org/show_bug.cgi?id=104495

Reviewed by Abhishek Arya.

Source/WebCore:

This patch fixes two bugs that led to stale target elements in SVGSMILElement.

r122449 changed the <use> code to call removeAllElementReferencesForTarget to rebuild
dependent <use> trees. This contained a bug where element references would be incorrectly
removed. removeAllElementReferencesForTarget calls svgAttributeChanged(href) on all
references, which can then re-add the references back. The bug is that
removeAllElementReferencesForTarget removes a newly-added reference as the last step.

r136906 changed targetElement() to no longer be lazily resolved so any changes to an
animation's href attribute needed to be tracked. r136906 refactored the code but did not
fix a bug where animation elements not in the document would not react to
svgAttributeChanged(href).

The combination of these two bugs allowed stale targetElement references to exist. A
target element could be removed from the document without dependent animation elements
receiving a notification (bug 1) and not reacting to notifications they received (bug 2).

This patch updates SVGUseElement::buildInstanceTree to only rebuild (not remove) the
elements referencing the target by adding rebuildAllElementReferencesForTarget. This patch
also updates SVGSMILElement to correctly react to svgAttributeChanged() notifications
for href changes even when not in the document.

Test: svg/animations/target-condition-crash.html

  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::rebuildAllElementReferencesForTarget):
(WebCore::SVGDocumentExtensions::removeAllElementReferencesForTarget):

Refactored so that we can notify element references to update without removing
references.

  • svg/SVGDocumentExtensions.h:

(SVGDocumentExtensions):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::~SVGElement):
(WebCore::SVGElement::removedFrom):

Similar to SVGUseElement::buildShadowAndInstanceTree, this callsite was updated to
only rebuild references instead of removing them.

(WebCore::SVGElement::attributeChanged):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::buildShadowAndInstanceTree):

The comment indicates we just want to rebuild (not remove). This callsite has been
updated to use the new rebuildAllElementReferencesForTarget function.

(WebCore::SVGUseElement::buildInstanceTree):

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::buildPendingResource):
(WebCore::SVGSMILElement::removedFrom):

Previously, if an SVGSMILElement was not in the document, only clearResourceReferences
would be called when the target changed. This has been refactored to reset the
targetElement if the element needs to build resources but is not in the document.

I looked at moving this into clearResourceReferences (since the target element might
be considered a reference) but we run into issues calling pure virtual functions in
the destructor. The current implementation seemed the cleanest.

SVGSMILElement::removedFrom was cleaned up to match the rest of the code. The comment
in removedFrom appears to be stale since disconnectConditions does not kill the element.

(WebCore::SVGSMILElement::svgAttributeChanged):

Removed the bad !inDocument() checks that broke href change notifications.

(WebCore::SVGSMILElement::setTargetElement):

LayoutTests:

  • svg/animations/target-condition-crash-expected.txt: Added.
  • svg/animations/target-condition-crash.html: Added.
1:29 PM Changeset in webkit [137508] by hclam@chromium.org
  • 7 edits
    3 adds in trunk/Source

[chromium] Minimize memcpy for encoded image data in ImageFrameGenerator
https://bugs.webkit.org/show_bug.cgi?id=103797

Reviewed by Stephen White.

Source/WebCore:

Added a new class ThreadSafeDataTransport to help transporting data in
SharedBuffer from one thread to another. This class is designed to minimize
thread contention and memory copy.

It is implemented using a data queue. New data segments are copied into
this queue. The queue is then consolidated with existing data when user
requests access to the final SharedBuffer.

Memory is copied into and out of the queue but this approach avoid
copying the entire SharedBuffer.

ImageFrameGenerator is now using this class for data transport between
threads.

Unit tests in ThreadSafeDataTransportTest. Also existing ImageFrameGeneratorTest passes.

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

(WebCore::ImageFrameGenerator::ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setData):
(WebCore::ImageFrameGenerator::tryToResumeDecodeAndScale):
Added logic to skip decoding if there's no new data.
(WebCore::ImageFrameGenerator::decode):

  • platform/graphics/chromium/ImageFrameGenerator.h:

(ImageFrameGenerator):

  • platform/graphics/chromium/ThreadSafeDataTransport.cpp: Added.

(WebCore):
(WebCore::ThreadSafeDataTransport::ThreadSafeDataTransport):
(WebCore::ThreadSafeDataTransport::~ThreadSafeDataTransport):
(WebCore::ThreadSafeDataTransport::setData):
(WebCore::ThreadSafeDataTransport::data):
(WebCore::ThreadSafeDataTransport::hasNewData):

  • platform/graphics/chromium/ThreadSafeDataTransport.h: Added.

(WebCore):
(ThreadSafeDataTransport):

Source/WebKit/chromium:

Added unit tests for ThreadSafeDataTransport.

Added unit tests for ImageFrameGenerator to test behavior with and without
new data.

New tests:
ThreadSafeDataTransportTest.hasNewData
ThreadSafeDataTransportTest.setData
ImageFrameGeneratorTest.cacheMissWithIncompleteDecodeNoNewData

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

(WebCore):
(WebCore::TEST):

1:26 PM Changeset in webkit [137507] by roger_fong@apple.com
  • 10 edits in trunk

Enable VIDEO_TRACK on Windows.
https://bugs.webkit.org/show_bug.cgi?id=104706.

Reviewed by Timothy Horton.

Enable VIDEO_TRACK on Windows and update project property files.

  • DerivedSources.cpp:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcproj/WebCoreCommon.vsprops:
  • WebCore.vcproj/copyForwardingHeaders.cmd:
  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore):

  • html/HTMLElementsAllInOne.cpp:
  • rendering/RenderingAllInOne.cpp:
  • win/tools/vsprops/FeatureDefines.vsprops:
1:16 PM Changeset in webkit [137506] by junov@google.com
  • 2 edits in trunk/Tools

Adding myself to SkiaGraphics watchlist

Unreviewed

  • Scripts/webkitpy/common/config/watchlist:
1:11 PM Changeset in webkit [137505] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

OSR exit compiler should emit code for resetting the execution counter that matches the logic of ExecutionCounter.cpp
https://bugs.webkit.org/show_bug.cgi?id=104791

Reviewed by Oliver Hunt.

The OSR exit compiler wants to make it so that every OSR exit does the equivalent
of:

codeBlock->m_jitExecuteCounter.setNewThreshold(

codeBlock->counterValueForOptimizeAfterLongWarmUp());


This logically involves:

  • Resetting the counter to zero.
  • Setting m_activeThreshold to counterValueForOptimizeAfterLongWarmUp().
  • Figuring out the scaled threshold, subtracting the count so far (which is zero, so this part is a no-op), and clipping (ExecuteCounter::clippedThreshold()).
  • Setting m_counter to the negated clipped threshold.
  • Setting m_totalCount to the previous count so far (which is zero) plus the clipped threshold.


Because of the reset, which sets the count-so-far to zero, this amounts to:

  • Setting m_activeThreshold to counterValueForOptimizeAfterLongWarmUp().
  • Figuring out the clipped scaled threshold.
  • Setting m_counter to the negated clipped scaled threshold.
  • Setting m_totalCount to the (positive) clipped scaled threshold.


The code was previously not doing this, but now is. This is performance neutral.
The only change in behavior over what the code was previously doing (setting the
m_counter to the negated scaled threshold, without clipping, and then setting
the m_totalCount to the clipped scaled threshold) is that this will respond more
gracefully under memory pressure and will ensure that we get more value profile
LUBing before triggering recompilation. More LUBing is almost always a good
thing.

  • dfg/DFGOSRExitCompiler.cpp:

(JSC::DFG::OSRExitCompiler::handleExitCounts):

1:07 PM Changeset in webkit [137504] by junov@google.com
  • 5 edits in trunk/LayoutTests

Rebaselining fast/backgrounds/gradient-background-leakage-2-expected.html after r137473
https://bugs.webkit.org/show_bug.cgi?id=103409

Unreviewed

  • platform/chromium-linux/fast/backgrounds/gradient-background-leakage-2-expected.png:
  • platform/chromium-mac/fast/backgrounds/gradient-background-leakage-2-expected.png:
  • platform/chromium-win/fast/backgrounds/gradient-background-leakage-2-expected.png:
  • platform/chromium/TestExpectations:
12:55 PM Changeset in webkit [137503] by junov@google.com
  • 23 edits in trunk/LayoutTests

calendar-picker tests have image diffs on cr-mac after r137473
https://bugs.webkit.org/show_bug.cgi?id=104825

Unreviewed

  • platform/chromium-mac-lion/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ru-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-step-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-step-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-step-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ru-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-step-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-step-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-step-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ru-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-step-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-step-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-step-expected.png:
  • platform/chromium/TestExpectations:
12:42 PM Changeset in webkit [137502] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebCore

REGRESSION: r137481 caused a build failure with GTK
https://bugs.webkit.org/show_bug.cgi?id=104826

Unreviewed build fix.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::prepareBackingStore):

Brought back #if PLATFORM(QT) to surround the dynamic_cast call.

12:36 PM Changeset in webkit [137501] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Mark fast/css/nested-rounded-corners.html as flaky on Chromium/MountainLion

Unreviewed.

  • platform/chromium/TestExpectations:
12:19 PM Changeset in webkit [137500] by dino@apple.com
  • 15 edits in trunk

Use CAFilter rather than CIFilter
https://bugs.webkit.org/show_bug.cgi?id=104759

Reviewed by Tim Horton.

Source/WebCore:

In order to get better performance in the simple CSS filter
cases, use CAFilter rather than CIFilter. This involved
defining some platform-specific values inside
PlatformCALayerMac to expose CAFilter.

The great side-effect is that this brings our hardware
output much closer to our software filters. For example,
on a random location in the hue-rotate test.

Software: rgb(255, 148, 16)
Hardware before: rgb(255, 204, 50)
Hardware after: rgb(255, 165, 33)

Still some improvement needed, but better.

Covered by existing tests.

  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(CAColorMatrix): New structure to hold 5x4 matrix representing a color operation.
(PlatformCALayer::setFilters): Use CAFilter objects rather than CIFilter.

LayoutTests:

Update the expected results. They are now much closer to the software case (on Mac).

  • css3/filters/composited-reflected-expected.png:
  • css3/filters/effect-blur-hw-expected.png:
  • css3/filters/effect-brightness-hw-expected.png:
  • css3/filters/effect-combined-hw-expected.png:
  • css3/filters/effect-contrast-hw-expected.png:
  • css3/filters/effect-drop-shadow-hw-expected.png:
  • css3/filters/effect-grayscale-hw-expected.png:
  • css3/filters/effect-hue-rotate-hw-expected.png:
  • css3/filters/effect-invert-hw-expected.png:
  • css3/filters/effect-opacity-hw-expected.png:
  • css3/filters/effect-saturate-hw-expected.png:
  • css3/filters/effect-sepia-hw-expected.png:
12:14 PM Changeset in webkit [137499] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Mark the template inert contents test as flaky on cr-win as well.

Unreviewed.

  • platform/chromium/TestExpectations:
12:10 PM Changeset in webkit [137498] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebCore

[Texmap] Consolidate redundant code for ARB_RECT texture
https://bugs.webkit.org/show_bug.cgi?id=104705

Patch by No'am Rosenthal <Noam Rosenthal> on 2012-12-12
Reviewed by Kenneth Rohde Christiansen.

Instead of having a whole different function for RECT textures,
keep the existing functions and pass a flag that tells
TextureMapperGL to use the non-normalized coordinates and the
RECT shaders.

No new tests, refactor only. Tested to not break WebGL on
Qt-Mac.

  • platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawQuad):

Compensate for rect textures in drawQuad.

(WebCore::TextureMapperGL::drawBorder):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::drawSolidColor):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram):

Pass flags to TextureMapperGL::drawQuad instead of a bool.

  • platform/graphics/texmap/TextureMapperGL.h:

(TextureMapperGL):

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore::getShaderSpec):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

(TextureMapperShaderProgram):

Compensate for the texture-size in the vertex
shader instead of in the fragment shader.

12:06 PM Changeset in webkit [137497] by commit-queue@webkit.org
  • 11 edits in trunk

Unreviewed, rolling out r137491.
http://trac.webkit.org/changeset/137491
https://bugs.webkit.org/show_bug.cgi?id=104828

broke the builtd (Requested by rfong on #webkit).

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

Source/WebCore:

  • DerivedSources.cpp:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcproj/WebCoreCommon.vsprops:
  • WebCore.vcproj/copyForwardingHeaders.cmd:
  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore):

  • html/HTMLElementsAllInOne.cpp:
  • platform/NotImplemented.cpp:

(WebCore):
(WebCore::notImplementedLoggingChannel):

  • rendering/RenderingAllInOne.cpp:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops:
11:45 AM Changeset in webkit [137496] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: remove protocol-externs.js temp file after compile-front-end.py
https://bugs.webkit.org/show_bug.cgi?id=98799

Patch by John J. Barton <johnjbarton@chromium.org> on 2012-12-12
Reviewed by Vsevolod Vlasov.

Add os.system rm for protocol-externs.js to the end of the compile script

  • inspector/compile-front-end.py:
11:44 AM Changeset in webkit [137495] by abecsi@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Fix the build on Mac

Unreviewed build fix.

Add missing virtual destructor with empty
definition to fix missing vtable error
in test util's LoadStartedCatcher.

  • UIProcess/API/qt/tests/util.h:

(LoadStartedCatcher::~LoadStartedCatcher):

11:43 AM Changeset in webkit [137494] by robert@webkit.org
  • 3 edits
    4 adds in trunk

White space between inline blocks should be affected by word-spacing property
https://bugs.webkit.org/show_bug.cgi?id=69072

Reviewed by Levi Weintraub.

Source/WebCore:

Allow word-spacing to get added to the spaces between inline blocks in placeBoxesInInlineDirection by setting
needsWordSpacing to true each time an inline block is encountered. This ensures that the next space encountered
in a text run will be treated as a space between two words and will get word-spacing added to it if it is present
in the style.

Tests: fast/css/word-spacing-between-blocks.html

fast/css/word-spacing-between-inlines.html

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::placeBoxRangeInInlineDirection):

LayoutTests:

  • fast/css/word-spacing-between-blocks-expected.html: Added.
  • fast/css/word-spacing-between-blocks.html: Added.
  • fast/css/word-spacing-between-inlines-expected.html: Added.
  • fast/css/word-spacing-between-inlines.html: Added.
11:39 AM Changeset in webkit [137493] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Mark calendar-picker-appearance tests as ImageOnlyFailures on cr-mac after r137473

Unreviewed gardening.

  • platform/chromium/TestExpectations:
11:38 AM Changeset in webkit [137492] by wangxianzhu@chromium.org
  • 3 edits
    1 add in trunk

Pre-painting should not paint out-of-view fixed position elements
https://bugs.webkit.org/show_bug.cgi?id=104724

Reviewed by James Robinson.

.:

New manual test.

  • ManualTests/compositing/fixed-position-out-of-view-scroll-prepaint.html: Added.

Source/WebCore:

Test: ManualTests/compositing/fixed-position-out-of-view-scroll-prepaint.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintLayer): Don't paint out-of-view fixed position elements.

11:36 AM Changeset in webkit [137491] by roger_fong@apple.com
  • 11 edits in trunk

Enable VIDEO_TRACK on Windows.
https://bugs.webkit.org/show_bug.cgi?id=104706.

Reviewed by Timothy Horton.

Enable VIDEO_TRACK on Windows and update project property files.

  • DerivedSources.cpp:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcproj/WebCoreCommon.vsprops:
  • WebCore.vcproj/copyForwardingHeaders.cmd:
  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore):

  • html/HTMLElementsAllInOne.cpp:
  • rendering/RenderingAllInOne.cpp:
  • win/tools/vsprops/FeatureDefines.vsprops:
11:32 AM Changeset in webkit [137490] by pilgrim@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Remove all references to sharedWorkerRepository()
https://bugs.webkit.org/show_bug.cgi?id=104704

Reviewed by James Robinson.

Now that Chromium calls setSharedWorkerRepository upon
initializing WebKit (
https://chromiumcodereview.appspot.com/10990121/ ) and no longer
tries to override sharedWorkerRepository, it is safe to remove
all references to this function.

  • public/platform/WebKitPlatformSupport.h:

(WebKit):
(WebKit::WebKitPlatformSupport::idbFactory):

  • src/SharedWorkerRepository.cpp:

(WebKit::sharedWorkerRepository):
(WebCore::SharedWorkerRepository::isAvailable):

11:27 AM Changeset in webkit [137489] by Lucas Forschler
  • 8 edits
    2 copies in branches/safari-536.28-branch

Merged r137393. <rdar://problem/12866734>

11:23 AM Changeset in webkit [137488] by simonjam@chromium.org
  • 3 edits
    2 adds in trunk

[Resource Timing] Failed resources shouldn't be recorded in the buffer
https://bugs.webkit.org/show_bug.cgi?id=104762

Reviewed by Tony Gentilcore.

Source/WebCore:

Test: http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_failures.html

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::loadDone):

LayoutTests:

  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_failures-expected.txt: Added.
  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_failures.html: Added.
11:20 AM Changeset in webkit [137487] by Martin Robinson
  • 13 edits
    2 deletes in trunk

[GTK] Add authentication support to DRT and fix exposed issues in the libsoup backend
https://bugs.webkit.org/show_bug.cgi?id=104285

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Fix issues in the libsoup networking backend that were causing test
failures.

No new tests. This patch unskips authentication tests.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::isAuthenticationFailureStatusCode): Added this helper to catch authentication status codes
and use it everywhere.
(WebCore::applyAuthenticationToRequest): Use an early return instead of an if-statement
and instead of always using manually specified credentials, apply those found in the session
storage as well. Instead of applying the credentials to firstRequest always, accept the request
as a parameter, so this method can be properly used with redirects.
(WebCore::restartedCallback): Instead of creating the KURL directly from soup_uri_to_string
use soupURIToKURL, which preserves the password from the SoupURI. soup_uri_to_string doesn't
include the password. When calling applyAuthenticationToRequest update the new request. Before
applyAuthenticationToRequest always updated the firstRequest. Do not call willSendRequest for
instances when this method is called for authentication handling. willSendRequest should only
be called for server-side redirects.
(WebCore::createSoupRequestAndMessageForHandle): Use soup_requester_request_uri instead of
soup_requester_request. Request::soupURI properly creates a SoupURI with non-null empty strings
when either the username and password are empty. A null username or password does not trigger
the URI-embedded credential override in SoupAuthenticationManager within libsoup. This is important
because sometimes either the username or password might empty for a request, but the other
part of the credential should still override the per-session credential storage.
(WebCore::ResourceHandle::start): We don't need to clear the username and password from the
internal data structure any longer. These need to be cleared in the CFNetwork backend because
it prevents the same failed per-request credentials from being used over and over again. In our
case we don't use these members during didReceiveAuthenticationChallenge, so this isn't an issue.
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Don't look at the per-request
m_user/m_pass pair here any longer. We use these when initially creating a request, so we don't
want to re-use them if they fail.

  • platform/network/soup/ResourceRequest.h:

(ResourceRequest): Rename urlStringForSoup to soupURI.

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::soupURI): Instead of returning a string for the soup-bound URL
return a SoupURI that properly embeds empty usernames and passwords.

Source/WebKit/gtk:

Add support to DumpRenderTree for running authentication tests. Since the DRT
expects an authentication callback, we add one to DRTSupport to avoid #ifdefs
in platform-independent code for GTK+.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::setAuthenticationCallback): Added.

  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk): Add a method to set the authentication callback.

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): When
in DRT mode we need to call the authentication callback instead of popping
up the dialog or ignoring the request.

Tools:

Add support to DumpRenderTree for running authentication tests. Since the DRT
expects an authentication callback, we add one to DRTSupport to avoid #ifdefs
in platform-independent code for GTK+.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues): Reset the authentication password and username.
(authenticationCallback): Added.
(createWebView): Attach the authentiation callback during startup.

  • DumpRenderTree/gtk/TestRunnerGtk.cpp:

(soupURIToKURL): soup_uri_to_string does not preserve passwords embedded
in the URL so we add a somewhat messy method of re-adding them when they exist.
It would be nice to use soupURIToKURL here, but it seems we cannot use KURL without
pulling in lots of WebCore code so we use string search and replace.
(TestRunner::queueLoad): Use the new helper.

LayoutTests:

Unskip authentication tests now that authentication support is in
the harness and issues in the libsoup backend are fixed. Also remove
two expected results for tests that now have the same output as
other platforms.

  • platform/gtk/TestExpectations:
  • platform/gtk/http/tests/misc/401-alternative-content-expected.txt: Removed.
  • platform/gtk/http/tests/xmlhttprequest/failed-auth-expected.txt: Removed.
11:07 AM Changeset in webkit [137486] by ap@apple.com
  • 38 edits
    2 adds in trunk/Source

Make LOG() work in WebProcess and NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=104718

Reviewed by Tim Horton.

Source/WebCore:

Split initialization function into a new InitializeLogging.h file, because it's
needed in WebKit, but cannot be included along with WebKit version of this file.
We'd have a confilct between LOG_CHANNEL_PREFIX definitions if we tried.

  • WebCore.xcodeproj/project.pbxproj: Make Logging.h a project header, and

InitializeLogging.h a private one.

  • GNUmakefile.list.am:
  • Target.pri:
  • platform/InitializeLogging.h: Added.
  • platform/Logging.h:
  • platform/blackberry/LoggingBlackBerry.cpp:
  • platform/efl/LoggingEfl.cpp:
  • platform/gtk/LoggingGtk.cpp:
  • platform/mac/LoggingMac.mm:
  • platform/qt/LoggingQt.cpp:
  • platform/win/LoggingWin.cpp:
  • platform/wx/LoggingWx.cpp:

Include InitializeLogging.h where this function is implemented.

  • platform/NotImplemented.h:
  • platform/NotImplemented.cpp: Added.

Changed to not include WebCore's Logging.h in the header, because NotImplemented.h
is used in WebKits, which have incompatibe logging headers.

Source/WebKit/blackberry:

  • Api/BlackBerryGlobal.cpp: Include InitializeLogging.h

Source/WebKit/efl:

  • ewk/ewk_main.cpp: Include InitializeLogging.h

Source/WebKit/gtk:

  • webkit/webkitglobals.cpp: Include InitializeLogging.h

Source/WebKit/mac:

  • WebView/WebView.mm: Use WebCore/InitializeLogging.h to avoid conflicts between

WebCore and WebKit versions of this file.

Source/WebKit/qt:

  • WebCoreSupport/InitWebCoreQt.cpp: Include InitializeLogging.h

Source/WebKit/win:

  • WebView.cpp: Updated for a new include file to use in WebKits.

Source/WebKit/wx:

  • WebView.cpp: Include InitializeLogging.h

Source/WebKit2:

  • NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess):

Initialize WebCore and WebKit2 logging.

  • Platform/Logging.cpp: (WebKit::initializeLogChannelsIfNecessary):

Added Network and NetworkScheduling. Re-ordered to match declaration order,
alphabetical clearly doesn't help here.

  • WebProcess/WebProcess.cpp: (WebKit::WebProcess::WebProcess): Initialize WebKit2

logging in addition to WebCore.

  • UIProcess/WebContext.cpp: (WebKit::WebContext::WebContext): Initialize WebKit2

logging in addition to WebCore.

11:05 AM Changeset in webkit [137485] by dpranke@chromium.org
  • 3 edits in trunk/Tools

garden-o-matic should prefer efl/ over efl-wk1/ and efl-wk2/ when rebaselining
https://bugs.webkit.org/show_bug.cgi?id=102389

Reviewed by Tony Chang.

The code wasn't aware of both the efl-wk1 and efl-wk2 variants,
because all_port_names() by itself doesn't tell you about the
variants. Work around this for now, and filed bug 104761 to
address the underlying problem.

  • Scripts/webkitpy/common/checkout/baselineoptimizer.py:
  • Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:

(BaselineOptimizerTest.test_efl):

11:02 AM Changeset in webkit [137484] by Chris Fleizach
  • 23 edits in trunk

AX: aria-busy should be exposed everywhere, not just on live regions
https://bugs.webkit.org/show_bug.cgi?id=104814

Reviewed by Anders Carlsson.

Source/WebCore:

The aria-busy attribute should be exposed on all elements.
This isn't entirely clear in the ARIA spec, but that will be fixed with
ARIA1.1 (ISSUE-538).

Existing tests that dump attributes cover this new behavior.

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):

LayoutTests:

Update tests that dump all attributes to include aria busy attribute.

  • accessibility/transformed-element-expected.txt:
  • platform/mac/accessibility/aria-liveregions-attributes-expected.txt:
  • platform/mac/accessibility/bounds-for-range-expected.txt:
  • platform/mac/accessibility/document-attributes-expected.txt:
  • platform/mac/accessibility/document-links-expected.txt:
  • platform/mac/accessibility/image-link-expected.txt:
  • platform/mac/accessibility/image-map2-expected.txt:
  • platform/mac/accessibility/internal-link-anchors-expected.txt:
  • platform/mac/accessibility/internal-link-anchors2-expected.txt:
  • platform/mac/accessibility/lists-expected.txt:
  • platform/mac/accessibility/plugin-expected.txt:
  • platform/mac/accessibility/radio-button-group-members-expected.txt:
  • platform/mac/accessibility/table-attributes-expected.txt:
  • platform/mac/accessibility/table-cell-spans-expected.txt:
  • platform/mac/accessibility/table-cells-expected.txt:
  • platform/mac/accessibility/table-detection-expected.txt:
  • platform/mac/accessibility/table-one-cell-expected.txt:
  • platform/mac/accessibility/table-sections-expected.txt:
  • platform/mac/accessibility/table-with-aria-role-expected.txt:
  • platform/mac/accessibility/table-with-rules-expected.txt:
10:44 AM Changeset in webkit [137483] by joone.hur@intel.com
  • 3 edits in trunk/Source/WebKit/gtk

[GTK][AC] The non-composited content is not painted
https://bugs.webkit.org/show_bug.cgi?id=104819

Reviewed by Gustavo Noronha Silva.

When Accelerated Compositing is enabled, only GraphicsLayers are painted.
This patch allows to paint the non-composited content on the viewport with
GraphicsLayers. Most of the codes are the same as AcceleratedCompositingContextGL.cpp

  • WebCoreSupport/AcceleratedCompositingContext.h: Add m_nonCompositedContentLayer.
  • WebCoreSupport/AcceleratedCompositingContextClutter.cpp:

(WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext):
(WebKit::AcceleratedCompositingContext::initialize):
(WebKit):
(WebKit::AcceleratedCompositingContext::~AcceleratedCompositingContext):
(WebKit::AcceleratedCompositingContext::renderLayersToWindow):
(WebKit::AcceleratedCompositingContext::setRootCompositingLayer):
(WebKit::AcceleratedCompositingContext::setNonCompositedContentsNeedDisplay):
(WebKit::AcceleratedCompositingContext::resizeRootLayer):
(WebKit::AcceleratedCompositingContext::scrollNonCompositedContents): Make the non-composited
content scroll.
(WebKit::AcceleratedCompositingContext::layerFlushTimerFiredCallback):
(WebKit::AcceleratedCompositingContext::flushPendingLayerChanges):
(WebKit::AcceleratedCompositingContext::flushAndRenderLayers):
(WebKit::AcceleratedCompositingContext::notifyAnimationStarted):
(WebKit::AcceleratedCompositingContext::paintContents): Paint the non-composited content.

10:34 AM Changeset in webkit [137482] by gavinp@chromium.org
  • 4 edits in trunk/Source

[chromium] Add destructor to WebPrerender
https://bugs.webkit.org/show_bug.cgi?id=104820

Reviewed by James Robinson.

When making WebPrerender default constructible and assignable, the destructor should have been moved out of WEBKIT_IMPLEMENTATION.

Source/Platform:

  • chromium/public/WebPrerender.h:

(WebKit::WebPrerender::~WebPrerender):
(WebPrerender):

Source/WebCore:

Existing WebKit unit tests should test this, as do chromium browser tests.

  • platform/chromium/support/WebPrerender.cpp:

(WebKit::WebPrerender::toPrerender):
(WebKit::WebPrerender::reset):

10:32 AM Changeset in webkit [137481] by allan.jensen@digia.com
  • 9 edits in trunk/Source/WebCore

[Qt] Animation fails on large layers
https://bugs.webkit.org/show_bug.cgi?id=104538

Reviewed by Noam Rosenthal.

The backing tiles had no upper limit defined for the non-GL backend, which could cause them
to allocate pixmaps widier or higher than what the underlying graphics systems can handle.

On top of that GraphicsLayerTextureMapper::prepareBackingStore() would allocate an intermediate
pixmap the size of the dirty rect, which would at least on the first paint be the size of the
entire layer, again causing allocation of pixmaps with dimensions outside of platform bounds.

This patch introduces a limit to the size of image buffer tiles, and adds an alternative path
for painting where the GraphicsLayer paints directly to the tile instead of over an intermediate
pixmap. This alternative path can also be useful later to minimize the amount of pixel copying
happening in full repaints.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::prepareBackingStore):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::BitmapTexture::updateContents):

  • platform/graphics/texmap/TextureMapper.h:

(BitmapTexture):
(TextureMapper):

  • platform/graphics/texmap/TextureMapperBackingStore.cpp:

(WebCore::TextureMapperTile::updateContents):
(WebCore::TextureMapperTiledBackingStore::updateContents):

  • platform/graphics/texmap/TextureMapperBackingStore.h:

(TextureMapperTile):
(TextureMapperTiledBackingStore):

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::BitmapTextureImageBuffer::updateContents):
(WebCore::TextureMapperImageBuffer::maxTextureSize):

  • platform/graphics/texmap/TextureMapperImageBuffer.h:

(BitmapTextureImageBuffer):

10:30 AM Changeset in webkit [137480] by acolwell@chromium.org
  • 8 edits in trunk

Remove MediaSource 'ended' to 'open' transition when seeking.
https://bugs.webkit.org/show_bug.cgi?id=104583

Reviewed by Eric Carlson.

Source/WebCore:

Remove the 'ended' to 'open' transition on a seek.

No new tests. The following tests were updated to reflect the new behavior.

http/tests/media/media-source/video-media-source-seek.html
http/tests/media/media-source/video-media-source-state-changes.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::seek):

LayoutTests:

Updated seeking tests to no longer expect the the 'ended' to 'open'
transition on a seek.

  • http/tests/media/media-source/video-media-source-seek-expected.txt:
  • http/tests/media/media-source/video-media-source-seek.html:
  • http/tests/media/media-source/video-media-source-state-changes-expected.txt:
  • http/tests/media/media-source/video-media-source-state-changes.html:
  • platform/chromium/TestExpectations:
10:19 AM Changeset in webkit [137479] by mihnea@adobe.com
  • 10 edits in trunk/LayoutTests

[CSS Regions] Two regions reftests are failing the image match
https://bugs.webkit.org/show_bug.cgi?id=74219

Reviewed by Julien Chaffraix.

Modify the 2 tests that were failing on other platforms (chromium, qt, gtk, efl). The tests were failing because different platforms were having different default font-family, font-size
values. I have explicitly set the font-size, font-family and the line-height for the text that will be paginated in regions. Also changed the text color to yellow,
so that we are able to see how the text lines are displayed in each region.

  • fast/regions/positioned-objects-block-static-spanning-regions-expected.html:
  • fast/regions/positioned-objects-block-static-spanning-regions-rtl-expected.html:
  • fast/regions/positioned-objects-block-static-spanning-regions-rtl.html:
  • fast/regions/positioned-objects-block-static-spanning-regions.html:
  • platform/chromium/TestExpectations:
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
9:55 AM Changeset in webkit [137478] by jchaffraix@webkit.org
  • 10 edits in trunk

[CSS Grid Layout] Implement CSS parsing and handling for min-content and max-content
https://bugs.webkit.org/show_bug.cgi?id=104747

Reviewed by Alexis Menard.

Source/WebCore:

This change adds -webkit-min-content and -webkit-max-content to our <track-breadth> parsing.
The rendering is not plugged in and will probably depend on bug 103311.

Tests: fast/css-grid-layout/grid-columns-rows-get-set-multiple.html:

fast/css-grid-layout/grid-columns-rows-get-set.html:

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseGridBreadth):

  • css/StyleResolver.cpp:

(WebCore::createGridTrackBreadth):
Straight-forward extension of the new code. We were already serializing back properly
so no need to touch CSSComputedStyleDeclaration.

LayoutTests:

Extended the 2 tests to cover -webkit-min-content and -webkit-max-content.

  • fast/css-grid-layout/grid-columns-rows-get-set-expected.txt:
  • fast/css-grid-layout/grid-columns-rows-get-set-multiple-expected.txt:
  • fast/css-grid-layout/grid-columns-rows-get-set-multiple.html:
  • fast/css-grid-layout/grid-columns-rows-get-set.html:
  • fast/css-grid-layout/resources/grid-columns-rows-get-set-multiple.js:
  • fast/css-grid-layout/resources/grid-columns-rows-get-set.js:
9:53 AM Changeset in webkit [137477] by rniwa@webkit.org
  • 17 edits
    4 adds in trunk

Copying text with ruby inserts new lines around rt elements
https://bugs.webkit.org/show_bug.cgi?id=104765

Reviewed by Dan Bernstein.

Source/WebCore:

Don't emit new lines before and after rt.

Test: editing/pasteboard/copy-paste-ruby-text.html

  • editing/TextIterator.cpp:

(WebCore::shouldEmitNewlinesBeforeAndAfterNode):

LayoutTests:

Added a regression test and rebaseline a test as expected.

  • editing/pasteboard/copy-paste-ruby-text-expected.txt: Added.
  • editing/pasteboard/copy-paste-ruby-text-with-block-expected.txt: Added.
  • editing/pasteboard/copy-paste-ruby-text-with-block.html: Added.
  • editing/pasteboard/copy-paste-ruby-text.html: Added.
  • editing/selection/paragraph-with-ruby-expected.txt: new lines around "annotation" has been removed

as expected.

  • fast/block/line-layout/selection-highlight-crash-expected.txt:
  • fast/ruby/after-doesnt-crash-expected.txt:
  • fast/ruby/before-doesnt-crash-expected.txt:
  • fast/ruby/parse-rp-expected.txt:
  • fast/ruby/ruby-line-height-expected.txt:
  • fast/ruby/ruby-text-indent-expected.txt:
  • fast/ruby/rubyDOM-insert-rt-block-1-expected.txt:
  • fast/ruby/rubyDOM-insert-rt-block-2-expected.txt:
  • fast/ruby/rubyDOM-insert-rt-block-3-expected.txt:
  • fast/ruby/rubyDOM-remove-rt-block-1-expected.txt:
  • fast/ruby/rubyDOM-remove-rt-block-2-expected.txt:
  • fast/ruby/rubyDOM-remove-rt-block-3-expected.txt:
  • fast/ruby/text-emphasis-expected.txt:
9:35 AM Changeset in webkit [137476] by adamk@chromium.org
  • 3 edits in trunk/LayoutTests

Rebaseline after change to Chromium compositor

Unreviewed gardening.

  • platform/chromium-linux/compositing/reflections/reflection-in-composited-expected.png:
  • platform/chromium/TestExpectations:
9:31 AM Changeset in webkit [137475] by commit-queue@webkit.org
  • 10 edits in trunk

[EFL] Possibility to turn off accessibility feature for WebKit-EFL.
https://bugs.webkit.org/show_bug.cgi?id=103036

Patch by Krzysztof Czech <k.czech@samsung.com> on 2012-12-12
Reviewed by Laszlo Gombos.

Guard dependencies for accessibility (ATK), so that they can be turned off.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/WebKitFeatures.cmake:

Source/WebCore:

No new tests as there is no new functionality.

  • PlatformEfl.cmake:
  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::AccessibilityObject):

  • accessibility/AccessibilityObject.h:

(AccessibilityObject):

Tools:

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:

(AccessibilityUIElement):

  • WebKitTestRunner/PlatformEfl.cmake:
9:23 AM Changeset in webkit [137474] by Simon Fraser
  • 2 edits in trunk/Tools

Add some entries in the watchlist, and register me for them.

  • Scripts/webkitpy/common/config/watchlist:
9:11 AM Changeset in webkit [137473] by junov@google.com
  • 5 edits in trunk

Use render box background over border draw strategy in cases with background-image
https://bugs.webkit.org/show_bug.cgi?id=103409

Reviewed by Simon Fraser.

Source/WebCore:

The BackgroundOverBorderBleedAvoidance mode was not being used in
cases where the background is an opaque image. It was also not
being used in cases with multiple layers. The multiple layer
case is now safe with respect to color bleeding if the top layer
is opaque, thank to the recent addition of layer occlusion culling
in r135629.

No new tests. Testing already covered by the following tests:
fast/backgrounds/background-opaque-images-over-color.html
fast/backgrounds/gradient-background-leakage-2.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::determineBackgroundBleedAvoidance):
(WebCore::RenderBox::backgroundHasOpaqueTopLayer):

  • rendering/RenderBox.h:

(RenderBox):

LayoutTests:

Added image failure expectation for
fast/backgrounds/gradient-background-leakage-2.html which needs
new baselines.

  • platform/chromium/TestExpectations:
8:52 AM Changeset in webkit [137472] by loislo@chromium.org
  • 10 edits in trunk/Source/WebCore

Web Inspector: instrument static parts of RenderBlock and RenderBox
https://bugs.webkit.org/show_bug.cgi?id=104660

Reviewed by Yury Semikhatsky.

Plain vanilla instrumentation.

  • dom/WebCoreMemoryInstrumentation.cpp:

(WebCore):
(WebCore::WebCoreMemoryInstrumentation::reportMemoryUsage):

  • dom/WebCoreMemoryInstrumentation.h:

(WebCoreMemoryTypes):
(WebCoreMemoryInstrumentation):
(WebCore):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::reportStaticMembersMemoryUsage):
(WebCore):

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::reportStaticMembersMemoryUsage):
(WebCore):

  • rendering/RenderBox.h:

(RenderBox):

8:49 AM Changeset in webkit [137471] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK gardening. Flag some flaky media tests after r137271.

  • platform/gtk/TestExpectations:
8:43 AM Changeset in webkit [137470] by kov@webkit.org
  • 3 edits in trunk/LayoutTests

Fix slow test so it passes consistently now that we have multipart support
in soup.

Reviewed by Martin Robinson.

The multipart-wait-before-boundary test waits for 30 seconds before
sending the boundary. That is a bit long in itself, but it is exactly
the timeout used for slow tests in some platforms. This change reduces
the wait to 20 seconds, which should be enough for the test, and marks
the test as slow for GTK+.

  • http/tests/multipart/resources/multipart-wait-before-boundary.php: wait

for 20 seconds instead of 30, before sending the boundary.

  • platform/gtk/TestExpectations: mark test above as slow.
8:39 AM QtWebKitGardening edited by Csaba Osztrogonác
(diff)
8:11 AM Changeset in webkit [137469] by Simon Pena
  • 22 edits in trunk/Source/WebKit2

[GTK] Add sections documentation to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=104484

Reviewed by Martin Robinson.

Many of the sections in the WebKit2 GTK+ API documentation were
missing. This commit adds new documentation, in some cases
adapting it from WebKitGtk+ and in others writing it from the
scratch.

It also removes the WebKitWebViewBase class from the documentation
index, since it is not really relevant.

  • UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
  • UIProcess/API/gtk/WebKitContextMenu.cpp:
  • UIProcess/API/gtk/WebKitContextMenuItem.cpp:
  • UIProcess/API/gtk/WebKitCookieManager.cpp:
  • UIProcess/API/gtk/WebKitDownload.cpp:
  • UIProcess/API/gtk/WebKitError.cpp:
  • UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
  • UIProcess/API/gtk/WebKitFindController.cpp:
  • UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
  • UIProcess/API/gtk/WebKitPlugin.cpp:
  • UIProcess/API/gtk/WebKitPrintOperation.cpp:
  • UIProcess/API/gtk/WebKitSecurityManager.cpp:
  • UIProcess/API/gtk/WebKitURIRequest.cpp:
  • UIProcess/API/gtk/WebKitURIResponse.cpp:
  • UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
  • UIProcess/API/gtk/WebKitVersion.cpp:
  • UIProcess/API/gtk/WebKitWebContext.cpp:
  • UIProcess/API/gtk/WebKitWebInspector.cpp:
  • UIProcess/API/gtk/WebKitWebResource.cpp:

(webkit_web_resource_class_init):

  • UIProcess/API/gtk/WebKitWebView.cpp:
  • UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
8:06 AM Changeset in webkit [137468] by loislo@chromium.org
  • 10 edits in trunk

Web Inspector: Native Memory Instrumentation: remove fake root MemoryObjectInfo.
https://bugs.webkit.org/show_bug.cgi?id=104796

Reviewed by Yury Semikhatsky.

It was not a good idea to introduce a fake root MemoryObjectInfo.
It makes a problem when we visit an object without its own MemoryObjectType.

Example: RenderBox has a global pointer to a hash map.
HashMap doesn't have its own object type because it is a generic container.
It will inherit object type from the fake root memory object info.
The same could happen for another container in another class with other MemoryObjectType.

This fact forces me to create custom process method for root objects
because they need to have their own MemoryObjectInfo with customisable memory object type.

Source/JavaScriptCore:

Drive by fix: InstrumentedPointer* was replaced with Wrapper* because actually it is using
for instrumented and not instrumented object classes.

Source/WebCore:

Drive by fix: InstrumentedPointer* was replaced with Wrapper* because actually it is using
for instrumented and not instrumented object classes.

  • inspector/MemoryInstrumentationImpl.cpp:

(WebCore::MemoryInstrumentationImpl::processDeferredObjects):
(WebCore::MemoryInstrumentationImpl::deferObject):
(WebCore::MemoryInstrumentationImpl::reportMemoryUsage):

  • inspector/MemoryInstrumentationImpl.h:

(MemoryInstrumentationImpl):

Source/WTF:

Drive by fix: InstrumentedPointer* was replaced with Wrapper* because actually it is using
for instrumented and not instrumented object classes.

  • wtf/MemoryInstrumentation.cpp:

(WTF::MemoryInstrumentation::MemoryInstrumentation):
(WTF::MemoryInstrumentation::WrapperBase::WrapperBase):
(WTF::MemoryInstrumentation::WrapperBase::process):
(WTF::MemoryInstrumentation::WrapperBase::processRootObjectRef):
(WTF):

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::addRootObject):
(MemoryInstrumentation):
(WrapperBase):
(WTF::MemoryInstrumentation::WrapperBase::~WrapperBase):
(Wrapper):
(OwningTraits):
(WTF::MemoryInstrumentation::OwningTraits::addRootObject):
(WTF::MemoryInstrumentation::addObjectImpl):
(WTF::::Wrapper):
(WTF::::callReportMemoryUsage):

Tools:

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:

Drive by fix: InstrumentedPointer* was replaced with Wrapper* because actually it is using
for instrumented and not instrumented object classes.

7:55 AM Changeset in webkit [137467] by commit-queue@webkit.org
  • 7 edits in trunk/Source

[EFL [WebGL] [Wk2] Resizing the canvas breaks WebGL.
https://bugs.webkit.org/show_bug.cgi?id=104535.

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-12
Reviewed by Kenneth Rohde Christiansen.

GraphicsContext3DEfl does not re-create the surface on canvas resize, this
conflicted with the logic in coordinated graphics Layer.
CoordinatedGraphicsLayer checks for GraphicsSurfaceToken to decide if the surface
in UI-Process should be recreated or not. With this
patch we also check for size of the platform Layer.

Source/WebCore:

  • platform/graphics/efl/GraphicsContext3DEfl.cpp:

(WebCore::GraphicsContext3D::createGraphicsSurfaces):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(GraphicsContext3DPrivate::didResizeCanvas):
(GraphicsContext3DPrivate::platformLayerSize):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

Source/WebKit2:

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayer):

7:54 AM Changeset in webkit [137466] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Web Inspector: Crash in InspectorDOMAgent::pushNodePathToFrontend when inspecting document with CSS generated content
https://bugs.webkit.org/show_bug.cgi?id=104780

Patch by Antoine Quint <Antoine Quint> on 2012-12-12
Reviewed by Pavel Feldman.

Source/WebCore:

The pushNodePathForRenderLayerToFrontend() method added to InspectorDOMAgent naively assumed
that all RenderLayers have a Node associated to them. However, in the case of CSS generated
content, that will not be the case and we would call into pushNodePathToFrontend() with a 0
parameter that would hit the first ASSERT in this method. We're now checking that we indeed
have an associated node for the provided RenderLayer and return 0 in case we don't, without
calling into pushNodePathToFrontend().

Test: inspector-protocol/layer-tree-generated-content.html

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::pushNodePathForRenderLayerToFrontend):

LayoutTests:

Adding a new test for the LayerTreeAgent to check that it does not crash when inspecting
a page with CSS generated content, and correctly returns nodeId === 0 in the situation
where there is no Node associated with a given RenderLayer.

  • inspector-protocol/layer-tree-generated-content-expected.txt: Added.
  • inspector-protocol/layer-tree-generated-content.html: Added.
7:52 AM Changeset in webkit [137465] by dominik.rottsches@intel.com
  • 8 edits
    1 add in trunk/LayoutTests

[EFL] Unreviewed gardening.

Rebaselining tests with anonymous empty blocks aftter r137336.
Floating elements rebaselined after r137331.
Newly intrduced reftest is failing, introduced in r137368.
Unskipping a few new passed that had something to do with AC.

  • platform/efl/TestExpectations:
  • platform/efl/css1/formatting_model/floating_elements-expected.png: Added.
  • platform/efl/css1/formatting_model/floating_elements-expected.txt:
  • platform/efl/fast/css-generated-content/table-row-group-to-inline-expected.png:
  • platform/efl/fast/css-generated-content/table-row-group-to-inline-expected.txt:
  • platform/efl/fast/css/empty-generated-content-expected.png:
  • platform/efl/fast/css/empty-generated-content-expected.txt:
  • platform/efl/http/tests/misc/acid3-expected.txt:
7:01 AM Changeset in webkit [137464] by apavlov@chromium.org
  • 3 edits
    2 adds in trunk

Web Inspector: [Crash] Clear cached stylesheet rules in InspectorStyleSheet::deleteRule()
https://bugs.webkit.org/show_bug.cgi?id=104806

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Cached rules (m_flatRules) should get cleared whenever a rule is deleted.

Test: inspector/styles/undo-add-rule-crash.html

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::deleteRule):

LayoutTests:

  • inspector/styles/undo-add-rule-crash-expected.txt: Added.
  • inspector/styles/undo-add-rule-crash.html: Added.
7:00 AM Changeset in webkit [137463] by senorblanco@chromium.org
  • 19 edits
    17 deletes in trunk

Unreviewed, rolling out r136975.
http://trac.webkit.org/changeset/136975
https://bugs.webkit.org/show_bug.cgi?id=90405

Correctness issues.

Source/WebCore:

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

(Element):

  • dom/ElementRareData.h:

(ElementRareData):
(WebCore::ElementRareData::ElementRareData):

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::BitmapTextureImageBuffer::applyFilters):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::createCustomFilterEffect):
(WebCore::FilterEffectRenderer::buildReferenceFilter):
(WebCore::FilterEffectRenderer::build):

  • rendering/FilterEffectRenderer.h:

(FilterEffectRenderer):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateOrRemoveFilterEffectRenderer):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::willBeDestroyed):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::registerResource):

  • rendering/svg/SVGResources.cpp:

(WebCore::SVGResources::buildCachedResources):

  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::addResourcesFromRenderObject):
(WebCore::SVGResourcesCache::clientStyleChanged):
(WebCore::SVGResourcesCache::resourceDestroyed):

  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::addPendingResource):
(WebCore::SVGDocumentExtensions::isElementPendingResources):
(WebCore::SVGDocumentExtensions::isElementPendingResource):
(WebCore::SVGDocumentExtensions::removeElementFromPendingResources):
(WebCore::SVGDocumentExtensions::removeElementFromPendingResourcesForRemoval):

  • svg/SVGDocumentExtensions.h:

(WebCore):
(SVGDocumentExtensions):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::hasPendingResources):
(WebCore):
(WebCore::SVGElement::setHasPendingResources):
(WebCore::SVGElement::clearHasPendingResourcesIfPossible):

  • svg/SVGElement.h:

(SVGElement):
(WebCore::SVGElement::buildPendingResource):

  • svg/SVGElementRareData.h:

(WebCore::SVGElementRareData::SVGElementRareData):
(WebCore::SVGElementRareData::hasPendingResources):
(WebCore::SVGElementRareData::setHasPendingResources):
(SVGElementRareData):

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::buildPendingResourcesIfNeeded):

LayoutTests:

  • css3/filters/effect-reference-after-expected.txt: Removed.
  • css3/filters/effect-reference-after.html: Removed.
  • css3/filters/effect-reference-delete-crash-expected.txt: Removed.
  • css3/filters/effect-reference-delete-crash.html: Removed.
  • css3/filters/effect-reference-delete-expected.txt: Removed.
  • css3/filters/effect-reference-delete.html: Removed.
  • css3/filters/effect-reference-rename-expected.txt: Removed.
  • css3/filters/effect-reference-rename.html: Removed.
  • css3/filters/effect-reference-reset-style-delete-crash-expected.txt: Removed.
  • css3/filters/effect-reference-reset-style-delete-crash.html: Removed.
  • css3/filters/script-tests/effect-reference-delete-crash.js: Removed.
  • css3/filters/script-tests/effect-reference-reset-style-delete-crash.js: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-after-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-delete-expected.png: Removed.
  • platform/chromium-linux/css3/filters/effect-reference-rename-expected.png: Removed.
  • svg/filters/filter-cycle-expected.html: Removed.
  • svg/filters/filter-cycle.html: Removed.
6:58 AM Changeset in webkit [137462] by senorblanco@chromium.org
  • 1 edit
    3 moves
    3 deletes in trunk/LayoutTests

Unreviewed, rolling out r137000.
http://trac.webkit.org/changeset/137000

Precursor to rolling out r136975.

  • platform/chromium-linux/css3/filters/effect-reference-after-expected.png: Renamed from LayoutTests/platform/chromium-win/css3/filters/effect-reference-after-expected.png.
  • platform/chromium-linux/css3/filters/effect-reference-delete-expected.png: Renamed from LayoutTests/platform/chromium-win/css3/filters/effect-reference-delete-expected.png.
  • platform/chromium-linux/css3/filters/effect-reference-rename-expected.png: Renamed from LayoutTests/platform/chromium-win/css3/filters/effect-reference-rename-expected.png.
  • platform/chromium-mac/css3/filters/effect-reference-after-expected.png: Removed.
  • platform/chromium-mac/css3/filters/effect-reference-delete-expected.png: Removed.
  • platform/chromium-mac/css3/filters/effect-reference-rename-expected.png: Removed.
6:56 AM Changeset in webkit [137461] by Csaba Osztrogonác
  • 5 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, remove duplicated expectations and fix broken expectations.

  • platform/qt-4.8/TestExpectations:
  • platform/qt-5.0-wk2/TestExpectations:
  • platform/qt-mac/TestExpectations:
  • platform/qt/TestExpectations:
6:54 AM Changeset in webkit [137460] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r137022.
http://trac.webkit.org/changeset/137022

Precursor to rollout of 136975.

  • rendering/svg/SVGResources.cpp:

(WebCore::SVGResources::buildCachedResources):

6:53 AM Changeset in webkit [137459] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r137027.
http://trac.webkit.org/changeset/137027

Precursor to rollout of 136975.

  • dom/ElementRareData.h:

(ElementRareData):

6:30 AM WebKitGTK/WebKit2Roadmap edited by mario@webkit.org
(diff)
6:29 AM WebKitGTK/WebKit2Roadmap edited by mario@webkit.org
(diff)
5:39 AM Changeset in webkit [137458] by yurys@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Marked inspector-protocol/take-heap-snapshot.html as CRASH only in Debug mode, it passes in Release.

  • platform/chromium/TestExpectations:
5:32 AM Changeset in webkit [137457] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Web Inspector: add memory used by memory allocator itself to NMI
https://bugs.webkit.org/show_bug.cgi?id=93372

Make native memory instrumentation report memory retained
for the memory allocator internal purposes.

Patch by Alexei Filippov <alph@chromium.org> on 2012-12-12
Reviewed by Yury Semikhatsky.

Source/Platform:

  • chromium/public/Platform.h:

(Platform):
(WebKit::Platform::memoryAllocatorWasteInBytes):

Source/WebCore:

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.MemoryBlockViewProperties._initialize):

  • platform/chromium/MemoryUsageSupportChromium.cpp:

(WebCore::MemoryUsageSupport::memoryUsageByComponents):

5:31 AM Changeset in webkit [137456] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Marked inspector-protocol/take-heap-snapshot.html as CRASH.

  • platform/chromium/TestExpectations:
5:24 AM Changeset in webkit [137455] by Csaba Osztrogonác
  • 5 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

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

  • platform/qt/TestExpectations: Skip test because ENABLE(MOUSE_CURSOR_SCALE) is disabled on Qt.
  • platform/qt/fast/css-generated-content/table-row-group-to-inline-expected.txt: rebaselining after r137336.
  • platform/qt/fast/css/empty-generated-content-expected.txt: rebaselining after r137336.
  • platform/qt/http/tests/misc/acid3-expected.txt: rebaselining after r137336.
5:21 AM Changeset in webkit [137454] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unskip compositing tests
https://bugs.webkit.org/show_bug.cgi?id=104129

Unreviewed gardening, skip only failing tests.

  • platform/qt-5.0-wk1/TestExpectations:
5:01 AM Changeset in webkit [137453] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Unreviewed, rolling out r137438.
http://trac.webkit.org/changeset/137438
https://bugs.webkit.org/show_bug.cgi?id=104798

assertion reached when removing tile (Requested by tmpsantos
on #webkit).

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

Source/WebCore:

  • page/Frame.cpp:

(WebCore::Frame::setTiledBackingStoreEnabled):

  • platform/graphics/TiledBackingStore.cpp:

(WebCore::TiledBackingStore::TiledBackingStore):
(WebCore::TiledBackingStore::setTileCreationDelay):
(WebCore::TiledBackingStore::coverWithTilesIfNeeded):
(WebCore::TiledBackingStore::updateTileBuffers):
(WebCore::TiledBackingStore::createTiles):
(WebCore::TiledBackingStore::isTileBufferUpdatesSuspended):
(WebCore::TiledBackingStore::startTileBufferUpdateTimer):
(WebCore::TiledBackingStore::tileBufferUpdateTimerFired):
(WebCore::TiledBackingStore::startBackingStoreUpdateTimer):
(WebCore::TiledBackingStore::backingStoreUpdateTimerFired):

  • platform/graphics/TiledBackingStore.h:

(TiledBackingStore):
(WebCore::TiledBackingStore::tileCreationDelay):

  • platform/graphics/TiledBackingStoreClient.h:

(WebCore::TiledBackingStoreClient::tiledBackingStoreUpdatesAllowed):

Source/WebKit2:

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
(WebCore::CoordinatedGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::CoordinatedGraphicsLayer::setContentsScale):
(WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
(WebCore::CoordinatedGraphicsLayer::tiledBackingStoreUpdatesAllowed):
(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
(WebCore::CoordinatedGraphicsLayer::createTile):
(WebCore::CoordinatedGraphicsLayer::updateTile):
(WebCore::CoordinatedGraphicsLayer::removeTile):
(WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
(WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
(WebCore::CoordinatedGraphicsLayer::adjustVisibleRect):
(WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
(WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHost::layerTreeTileUpdatesAllowed):
(WebKit):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

(CoordinatedLayerTreeHost):

4:56 AM Changeset in webkit [137452] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

[Qt] Unreviewed typo fix after r137446.

  • WebCore.pri:
4:25 AM Changeset in webkit [137451] by zandobersek@gmail.com
  • 6 edits in trunk

[GTK] Remove the last of unnecessary configuration options in configure.ac
https://bugs.webkit.org/show_bug.cgi?id=104793

Reviewed by Martin Robinson.

.:

Remove the last of the configuration options that don't introduce any dependencies and/or
are enabled by default in the GNUmakefile.features.am.in file.

  • configure.ac:

Source/WebCore:

Remove the feature define overriding that's based on the automake variables which are
not set anymore due to the corresponding configuration options being removed.

No new tests - no new functionality.

  • GNUmakefile.am:

Tools:

Removing the filters and indexed database features from the list of features
being configurable through the configure script. This is not the case anymore
as the corresponding configuration options are being removed.

  • Scripts/webkitdirs.pm:

(buildAutotoolsProject):

4:01 AM Changeset in webkit [137450] by mario@webkit.org
  • 9 edits in trunk

[GTK][WK2] New API to detect display/execution of insecure content
https://bugs.webkit.org/show_bug.cgi?id=104578

Reviewed by Martin Robinson.

Source/WebKit2:

Added new API and documentation for detecting insecure content.

Implemented needed functions from C API's WKPageLoaderClient

  • UIProcess/API/gtk/WebKitLoaderClient.cpp:

(didDisplayInsecureContentForFrame): Implemented.
(didRunInsecureContentForFrame): Ditto.
(attachLoaderClientToView): Added newly implemented functions.

Added new 'insecure-content-detected' signal to API.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_class_init): Installed new signal.
(webkitWebViewInsecureContentDetected): Helper function aded to
private API to emit the new signal from the page loader client.

  • UIProcess/API/gtk/WebKitWebView.h:

(_WebKitWebViewClass): Added new signal.

  • UIProcess/API/gtk/WebKitWebViewPrivate.h: Added prototype of the

new helper function webkitWebViewInsecureContentDetected().

Added new unit tests.

  • UIProcess/API/gtk/tests/TestSSL.cpp:

(testSSL): Updated to the new variable name for the https server.
(testInsecureContent): New unit test.
(httpsServerCallback): Renamed from serverCallback() and updated
to return HTML content linking to external resources in an
insecure (plain http) server, to be used by the new test.
(httpServerCallback): New callback for a new http server, that
will serve a script and an image when requested.
(beforeAll): Run the new http server, besides the https one.
(afterAll): Delete both the http and the https server.

Updated documentation with new API.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added references

to the new WebKitInsecureContentEvent enum type.

Tools:

Add coding style exception for 'readability/enum_casing' in GTK.

The GTK+ API use upper case, underscore separated, words in
certain types of enums (e.g. signals, properties).

  • Scripts/webkitpy/style/checker.py: Added exception, both for

WebKitGTK+ and WebKit2GTK+.

3:39 AM Changeset in webkit [137449] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Fix QNX Qt build by enabling JIT.
https://bugs.webkit.org/show_bug.cgi?id=102794

Patch by Sergio Martins <sergio.martins@kdab.com> on 2012-12-12
Reviewed by Simon Hausmann.

JIT is working, so enable it. Otherwise LLINT gets enabled, and
that doesn't compile.

YARR_JIT is crashing at this time though, so disable it.

  • wtf/Platform.h:
3:36 AM Changeset in webkit [137448] by jochen@chromium.org
  • 2 edits in trunk/Tools

[chromium] Fix build on chromium-win

Unreviewed build-fix.

MSVS indeed doesn't have snprintf, adding wtf/StringExtras.h include
to work around that.

  • DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:
3:34 AM Changeset in webkit [137447] by joone.hur@intel.com
  • 3 edits in trunk/Source/WebKit/gtk

[GTK][AC] GraphicsLayers are not shown on the viewport
https://bugs.webkit.org/show_bug.cgi?id=104670

Reviewed by Gustavo Noronha Silva.

GraphicsLayers are not shown on the viewport because the container(GtkClutterEmbed)
is not resized and shown, so this patch allows it to fit to the viewport.

  • WebCoreSupport/AcceleratedCompositingContext.h:
  • WebCoreSupport/AcceleratedCompositingContextClutter.cpp:

(WebKit::AcceleratedCompositingContext::renderLayersToWindow):
(WebKit::AcceleratedCompositingContext::setRootCompositingLayer):
(WebKit::AcceleratedCompositingContext::resizeRootLayer):
(WebKit::AcceleratedCompositingContext::layerFlushTimerFiredCallback):
(WebKit::AcceleratedCompositingContext::scheduleLayerFlush):

3:21 AM Changeset in webkit [137446] by Simon Hausmann
  • 4 edits in trunk

[Qt] Fix build on Mac

Reviewed by Csaba Osztrogonác.

On Mac OS X we have sqlite as a system library available.

Source/WebCore:

  • WebCore.pri:

Tools:

  • qmake/mkspecs/features/features.prf:
3:12 AM Changeset in webkit [137445] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Unreviewed GTK gardening.

Skipping another unit test that regressed in r137432.

  • Scripts/run-gtk-tests:

(TestRunner):

2:46 AM Changeset in webkit [137444] by Simon Hausmann
  • 5 edits in trunk

[Qt] Fix linkage against SQLite
https://bugs.webkit.org/show_bug.cgi?id=104781

Reviewed by Csaba Osztrogonác.

Detect SQLite either through pkg-config, from the SQLITE3SRCDIR
environment variable or from qtbase via a qt5.git build. Bail out early
with an error message if neither option applies.

This removes the usage of $$QT.core.sources and the dependency on Qt's
system-sqlite configure setting. We should always favour a system
library over a copy in Qt.

Source/WebCore:

  • Target.pri:
  • WebCore.pri:

Tools:

  • qmake/mkspecs/features/features.prf:
2:46 AM Changeset in webkit [137443] by zandobersek@gmail.com
  • 4 edits in trunk/LayoutTests

Unreviewed gardening.

Adding failure expectations for tests that regressed in r137365 on GTK, Qt and EFL.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
2:44 AM Changeset in webkit [137442] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebCore

[TexMap] Uninitialized m_context pointer in TextureMapper
https://bugs.webkit.org/show_bug.cgi?id=104785

Reviewed by Kenneth Rohde Christiansen.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::TextureMapper):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::TextureMapperGL):

2:42 AM Changeset in webkit [137441] by tommyw@google.com
  • 26 edits
    1 copy
    1 move
    6 adds
    3 deletes in trunk

MediaStream API: Change the data channel descriptor pattern to a handler pattern
https://bugs.webkit.org/show_bug.cgi?id=104543

Reviewed by Kent Tamura.

Source/Platform:

In short the code is refactured to use the Handler/Client pattern (see RTCPeerConnectionHandler)
instead of the Descriptor pattern.
This will fix lifetime/memory/code structure issues in the chromium port.

  • Platform.gypi:
  • chromium/public/WebRTCDataChannel.h: Removed.
  • chromium/public/WebRTCDataChannelHandler.h: Added.

(WebKit):
(WebRTCDataChannelHandler):
(WebKit::WebRTCDataChannelHandler::~WebRTCDataChannelHandler):

  • chromium/public/WebRTCDataChannelHandlerClient.h: Added.

(WebKit):
(WebRTCDataChannelHandlerClient):
(WebKit::WebRTCDataChannelHandlerClient::~WebRTCDataChannelHandlerClient):

  • chromium/public/WebRTCPeerConnectionHandler.h:

(WebKit):
(WebKit::WebRTCPeerConnectionHandler::createDataChannel):

  • chromium/public/WebRTCPeerConnectionHandlerClient.h:

(WebKit):
(WebKit::WebRTCPeerConnectionHandlerClient::didAddRemoteDataChannel):

Source/WebCore:

In short the code is refactured to use the Handler/Client pattern (see RTCPeerConnectionHandler)
instead of the Descriptor pattern.
This will fix lifetime/memory/code structure issues in the chromium port.

Existing tests cover this patch.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/mediastream/RTCDataChannel.cpp:

(WebCore::RTCDataChannel::create):
(WebCore::RTCDataChannel::RTCDataChannel):
(WebCore::RTCDataChannel::~RTCDataChannel):
(WebCore::RTCDataChannel::label):
(WebCore::RTCDataChannel::reliable):
(WebCore::RTCDataChannel::readyState):
(WebCore::RTCDataChannel::bufferedAmount):
(WebCore::RTCDataChannel::send):
(WebCore::RTCDataChannel::close):
(WebCore::RTCDataChannel::didChangeReadyState):
(WebCore::RTCDataChannel::didReceiveStringData):
(WebCore::RTCDataChannel::didReceiveRawData):
(WebCore::RTCDataChannel::didDetectError):
(WebCore::RTCDataChannel::stop):

  • Modules/mediastream/RTCDataChannel.h:

(WebCore):
(RTCDataChannel):

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::didAddRemoteDataChannel):

  • Modules/mediastream/RTCPeerConnection.h:

(RTCPeerConnection):

  • WebCore.gypi:
  • platform/chromium/support/WebRTCDataChannel.cpp: Removed.
  • platform/mediastream/RTCDataChannelDescriptor.h: Removed.
  • platform/mediastream/RTCDataChannelHandler.h: Copied from Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp.

(WebCore):
(RTCDataChannelHandler):
(WebCore::RTCDataChannelHandler::~RTCDataChannelHandler):

  • platform/mediastream/RTCDataChannelHandlerClient.h: Renamed from Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp.

(WebCore):
(RTCDataChannelHandlerClient):
(WebCore::RTCDataChannelHandlerClient::~RTCDataChannelHandlerClient):

  • platform/mediastream/RTCPeerConnectionHandler.cpp:

(WebCore):
(WebCore::RTCPeerConnectionHandler::create):

  • platform/mediastream/RTCPeerConnectionHandler.h:

(WebCore):
(RTCPeerConnectionHandler):

  • platform/mediastream/RTCPeerConnectionHandlerClient.h:

(WebCore):
(RTCPeerConnectionHandlerClient):

  • platform/mediastream/chromium/RTCDataChannelHandlerChromium.cpp: Added.

(WebCore):
(WebCore::RTCDataChannelHandlerChromium::create):
(WebCore::RTCDataChannelHandlerChromium::RTCDataChannelHandlerChromium):
(WebCore::RTCDataChannelHandlerChromium::~RTCDataChannelHandlerChromium):
(WebCore::RTCDataChannelHandlerChromium::setClient):
(WebCore::RTCDataChannelHandlerChromium::label):
(WebCore::RTCDataChannelHandlerChromium::isReliable):
(WebCore::RTCDataChannelHandlerChromium::bufferedAmount):
(WebCore::RTCDataChannelHandlerChromium::sendStringData):
(WebCore::RTCDataChannelHandlerChromium::sendRawData):
(WebCore::RTCDataChannelHandlerChromium::close):
(WebCore::RTCDataChannelHandlerChromium::didChangeReadyState):
(WebCore::RTCDataChannelHandlerChromium::didReceiveStringData):
(WebCore::RTCDataChannelHandlerChromium::didReceiveRawData):
(WebCore::RTCDataChannelHandlerChromium::didDetectError):

  • platform/mediastream/chromium/RTCDataChannelHandlerChromium.h: Added.

(WebCore):
(RTCDataChannelHandlerChromium):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:

(WebCore::RTCPeerConnectionHandlerChromium::createDataChannel):
(WebCore::RTCPeerConnectionHandlerChromium::didAddRemoteDataChannel):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:

(WebCore):
(RTCPeerConnectionHandlerChromium):

Source/WebKit/chromium:

  • src/AssertMatchingEnums.cpp:

Tools:

Adding mocks to be able to test this refactoring.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/MockWebRTCDataChannelHandler.cpp: Added.

(DataChannelReadyStateTask):
(DataChannelReadyStateTask::DataChannelReadyStateTask):
(MockWebRTCDataChannelHandler::MockWebRTCDataChannelHandler):
(MockWebRTCDataChannelHandler::setClient):
(MockWebRTCDataChannelHandler::bufferedAmount):
(MockWebRTCDataChannelHandler::sendStringData):
(MockWebRTCDataChannelHandler::sendRawData):
(MockWebRTCDataChannelHandler::close):

  • DumpRenderTree/chromium/MockWebRTCDataChannelHandler.h: Added.

(MockWebRTCDataChannelHandler):
(MockWebRTCDataChannelHandler::taskList):

  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:

(RTCPeerConnectionReadyStateTask::RTCPeerConnectionReadyStateTask):
(RemoteDataChannelTask::RemoteDataChannelTask):
(MockWebRTCPeerConnectionHandler::createDataChannel):
(MockWebRTCPeerConnectionHandler::stop):

  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:

(MockWebRTCPeerConnectionHandler):

LayoutTests:

Expanding data channels tests.

  • fast/mediastream/RTCPeerConnection-datachannel-expected.txt:
  • fast/mediastream/RTCPeerConnection-datachannel.html:
2:39 AM Changeset in webkit [137440] by zandobersek@gmail.com
  • 7 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Rebaselining after r137331. r137336, r137393 and other, unknown revisions.
Marking two failures as timing out instead of producing textual diff.

  • platform/gtk/TestExpectations:
  • platform/gtk/css1/formatting_model/floating_elements-expected.txt:
  • platform/gtk/fast/css-generated-content/table-row-group-to-inline-expected.txt:
  • platform/gtk/fast/css/empty-generated-content-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
  • platform/gtk/svg/css/shadow-changes-expected.txt:
2:37 AM Changeset in webkit [137439] by jochen@chromium.org
  • 2 edits in trunk/Tools

[chromium] WebTestPlugin must not depend on WTF::String
https://bugs.webkit.org/show_bug.cgi?id=104783

Reviewed by Kent Tamura.

In a component build, we can't access the WTF that is part of the
WebKit component. Accessing WTF instead will pull in a separate copy
into the TestRunner library. Instead of WTF::String::number use
snprintf() to print numbers.

  • DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:
2:23 AM Changeset in webkit [137438] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Coordinated Graphics: Refactor TiledBackingStore code in CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=103959

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop() is used when class
methods cannot be called asynchronously by client. Updates of tiles are
committed as soon as all the events in event queue have been processed.
After this patch Frame sets m_commitTileUpdatesOnIdleEventLoop to true.

In addition, remove TiledBackingStoreClient::tiledBackingStoreUpdatesAllowed()
which was introduced for Coordinated Graphics.

Refactoring covered by existing tests.

  • page/Frame.cpp:

(WebCore::Frame::setTiledBackingStoreEnabled):

  • platform/graphics/TiledBackingStore.cpp:

(WebCore::TiledBackingStore::TiledBackingStore):
(WebCore::TiledBackingStore::setTrajectoryVector):

Separate setting a trajectory vector from coverWithTilesIfNeeded().

(WebCore::TiledBackingStore::coverWithTilesIfNeeded):
(WebCore::TiledBackingStore::updateTileBuffers):
(WebCore::TiledBackingStore::createTiles):
(WebCore::TiledBackingStore::isTileBufferUpdatesSuspended):
(WebCore::TiledBackingStore::startTileBufferUpdateTimer):
(WebCore::TiledBackingStore::tileBufferUpdateTimerFired):
(WebCore::TiledBackingStore::startBackingStoreUpdateTimer):
(WebCore::TiledBackingStore::backingStoreUpdateTimerFired):

  • platform/graphics/TiledBackingStore.h:

(TiledBackingStore):
(WebCore::TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop):

  • platform/graphics/TiledBackingStoreClient.h:

(WebCore::TiledBackingStoreClient::tiledBackingStoreHasPendingTileCreation):

If TiledBackingStore does not create all tiles, TiledBackingStore
notifies a client of needing to create tiles more, when
m_commitTileUpdatesOnIdleEventLoop is false.

Source/WebKit2:

Currently, CoordinatedGraphicsLayer has complex code related to TiledBackingStore.
It has two problem.

  1. CoordinatedGraphicsLayer hacks TiledBackingStore to prevent

TiledBackingStore from asynchronously sending UpdateTile message to UI
Process.

  1. CreateTile and RemoveTile message can be sent to UI Process at any time.

This patch makes CoordinatedGraphicsLayer use TiledBackingStore more explicitly.
It means only during flushing layer states, CoordinatedGraphicsLayer
calls methods of TiledBackingStore, which indirectly call createTile(),
updateTile() and removeTile().

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
(WebCore::CoordinatedGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::CoordinatedGraphicsLayer::setContentsScale):
(WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
(WebCore::CoordinatedGraphicsLayer::tiledBackingStoreHasPendingTileCreation):
(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
(WebCore::CoordinatedGraphicsLayer::createTile):
(WebCore::CoordinatedGraphicsLayer::updateTile):
(WebCore::CoordinatedGraphicsLayer::removeTile):
(WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
(WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
(WebCore::CoordinatedGraphicsLayer::setNeedsVisibleRectAdjustment):
(WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
(WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

(CoordinatedLayerTreeHost):

2:20 AM Changeset in webkit [137437] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Tools

[Qt] Do not automatically enable force_static_libs_as_shared when using debug_and_release
https://bugs.webkit.org/show_bug.cgi?id=104562

Reviewed by Tor Arne Vestbø.

force_static_libs_as_shared creates issues on Mac if QtWebKit is built as a framework.
QtWebProcess, for example, will link to the framework's release library and will rely
on DYLD_IMAGE_SUFFIX to switch to the debug build. Since QtWebProcess will also links
directly to the debug build of WebCore, and that QtWebKit release will link in the
release build of WebCore, both the debug and release version will be loaded.

To fix this properly we should make sure that applications always link to the release
build of dependent libraries by bypassing resolveFinalLibraryName.
Disable it for now as force_static_libs_as_shared is mainly for development while
debug_and_release is mainly for production builds.

  • qmake/mkspecs/features/default_post.prf:
2:12 AM Changeset in webkit [137436] by jocelyn.turcotte@digia.com
  • 4 edits in trunk

[Qt] Fix the inspector not showing up on Windows
https://bugs.webkit.org/show_bug.cgi?id=104677

Reviewed by Simon Hausmann.

.:

Resources aren't transfered properly from a static WebCore to the final DLL
with MSVC since the linker only pick from the static lib symbols that
are referenced in the final binary.

Move the resource files directly to Qt5WebKit.dll to make sure that they are
available.

  • Source/api.pri:

Source/WebCore:

  • Target.pri:
1:53 AM Changeset in webkit [137435] by loislo@chromium.org
  • 7 edits in trunk/Source/WTF

Web Inspector: Native Memory Instrumentation: simplify Sequences processing code.
https://bugs.webkit.org/show_bug.cgi?id=104777

Reviewed by Yury Semikhatsky.

Redesign reportMemoryUsage for the sequences.
With the old schema we couldn't instrument HashMap<key, WebCore::LayoutUnit>
because LayoutUnit has overloaded conversion operators for double, int, etc.
I wrote an empty SequenceMemoryInstrumentationTraits for LayoutUnit class
but it doesn't help because the root of problem was hidden in the free template function reportSequenceMemoryUsage.
I could overload reportSequenceMemoryUsage too but in this case I need to fully specify all the types
for the iterators like HashMap<.....>::const_iterator. Too many letters.
I found a better solution. Free reportSequenceMemoryUsage can be converted into default implementation of static
reportMemoryUsage traits method. In this case the types of iterators will be inferred automaticaly. The old default
implementation becomes a custom implementation for the user defined types.

  • wtf/MemoryInstrumentationHashCountedSet.h:

(WTF::reportMemoryUsage):

  • wtf/MemoryInstrumentationHashMap.h:

(WTF::reportMemoryUsage):

  • wtf/MemoryInstrumentationHashSet.h:

(WTF::reportMemoryUsage):

  • wtf/MemoryInstrumentationListHashSet.h:

(WTF::reportMemoryUsage):

  • wtf/MemoryInstrumentationSequence.h:

(WTF):
(WTF::SequenceMemoryInstrumentationTraits::reportMemoryUsage):
(SequenceMemoryInstrumentationTraits):

  • wtf/MemoryInstrumentationVector.h:

(WTF::reportMemoryUsage):

1:46 AM Changeset in webkit [137434] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Unreviewed GTK gardening of the unit tests.

Skip two unit tests that regressed during the hackfest.

  • Scripts/run-gtk-tests:

(TestRunner):

1:22 AM Changeset in webkit [137433] by yurys@chromium.org
  • 8 edits
    3 adds in trunk

Web Inspector: Heap snapshot crashes on any page in MacOS Canary
https://bugs.webkit.org/show_bug.cgi?id=103076

Reviewed by Adam Barth.

Source/WebCore:

Provide global object name resolver to the heap profiler. The callback allows
to safely retrieve document URL to be used as a label for corresponding global
object in the heap snapshot.

Test: inspector-protocol/take-heap-snapshot.html

  • bindings/v8/ScriptProfiler.cpp:

(WebCore):
(WebCore::ScriptProfiler::takeHeapSnapshot):

LayoutTests:

Test that heap profiler doesn't crash on pages that keep references to functions
from iframe that has already navigated to a different page.

  • inspector-protocol/resources/page-with-function.html: Added.
  • inspector-protocol/take-heap-snapshot-expected.txt: Added.
  • inspector-protocol/take-heap-snapshot.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
1:19 AM Changeset in webkit [137432] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebKit2

[GTK] Cookies' storage path and policy are not set when the WebProcess is killed and relaunched
https://bugs.webkit.org/show_bug.cgi?id=104370

Patch by Joaquim Rocha <jrocha@igalia.com> on 2012-12-12
Reviewed by Carlos Garcia Campos.

This issue happens on ports that use Soup and causes problems like not finding the stored cookies
nor their policy when the WebProcess is relaunched. As an example of a problem caused by this,
a previously logged in user will not be logged in again when the process is relaunched and the
policy used is always the same one.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode): Encode cookies' persistent storage path,
storage type and acceptance policy.
(WebKit::WebProcessCreationParameters::decode): Decode cookies' persistent storage path,
storage type and acceptance policy.

  • Shared/WebProcessCreationParameters.h: Create 3 variables to hold the values mentioned above.

(WebProcessCreationParameters):

  • UIProcess/WebCookieManagerProxy.cpp:

(WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
(WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): Call WebCookieManagerProxySoup::setCookieAcceptPolicy.

  • UIProcess/WebCookieManagerProxy.h: Declare new Soup's methods setCookieAcceptPolicy, cookieAcceptPolicy and

cookiePersistentStorage as well as the variables m_cookieAcceptPolicy and m_cookiePersistentStorage.
(WebCookieManagerProxy):

  • UIProcess/efl/WebContextEfl.cpp: Assign the parameters' cookiePersistentStoragePath and

cookiePersistentStorageType with the respective values.
(WebKit::WebContext::platformInitializeWebProcess):

  • UIProcess/gtk/WebContextGtk.cpp: Assign the parameters' cookiePersistentStoragePath and

cookiePersistentStorageType with the respective values.
(WebKit::WebContext::platformInitializeWebProcess):

  • UIProcess/soup/WebCookieManagerProxySoup.cpp:

(WebKit::WebCookieManagerProxy::setCookiePersistentStorage): Assign the m_cookiePersistentStorage pair
with the method's parameters.
(WebKit):
(WebKit::WebCookieManagerProxy::getCookiePersistentStorage): Implement this getter.

  • WebProcess/Cookies/WebCookieManager.h: Declare setCookiePersistentStorage.

(WebCookieManager):

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformInitializeWebProcess): Set the cookies' persistent storage and policy
using the WebCookieManager's methods.

1:15 AM Changeset in webkit [137431] by Csaba Osztrogonác
  • 6 edits in trunk/Source/WebCore

Unreviewed, rolling out r137428.
http://trac.webkit.org/changeset/137428
https://bugs.webkit.org/show_bug.cgi?id=104776

It broke the build everywhere (Requested by Ossy on #webkit).

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

  • platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawQuad):
(WebCore::TextureMapperGL::drawBorder):
(WebCore::TextureMapperGL::drawTexture):
(WebCore):
(WebCore::TextureMapperGL::drawTextureRectangleARB):
(WebCore::TextureMapperGL::drawSolidColor):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram):

  • platform/graphics/texmap/TextureMapperGL.h:

(TextureMapperGL):

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore::getShaderSpec):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

(TextureMapperShaderProgram):

12:17 AM Changeset in webkit [137430] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web inspector prints a warning about "Debug" not being localized
https://bugs.webkit.org/show_bug.cgi?id=104679

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-12-12
Reviewed by Vsevolod Vlasov.

Add a missing localization entry for the "Debug" string which is used in the web
inspector front-end. This prevents warnings about a missing localized version
of the word "Debug" and allows it to be properly localized.

  • English.lproj/localizedStrings.js: Add "Debug"
12:13 AM Changeset in webkit [137429] by shinyak@chromium.org
  • 7 edits
    2 adds in trunk

[Shadow DOM] Implement HTMLShadowElement::olderShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=104218

Reviewed by Hajime Morita.

Source/WebCore:

Implements HTMLShadowElement::olderShadowRoot, which returns the ShadowRoot the HTMLShadowElement is assigned to.
When such ShadowRoot does not exist, 0 is returned.

Test: fast/dom/shadow/olderShadowRoot-in-shadowelement.html

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::ensureDistributionFromDocument): Ensures distribution of this ElementShadow and
all of the parent TreeScope distribution. This function will be shared for Bug 104345.
(WebCore):

  • dom/ElementShadow.h:

(ElementShadow):

  • html/shadow/HTMLShadowElement.cpp:

(WebCore::HTMLShadowElement::olderShadowRoot):
(WebCore):

  • html/shadow/HTMLShadowElement.h:
  • html/shadow/HTMLShadowElement.idl:

LayoutTests:

  • fast/dom/shadow/olderShadowRoot-in-shadowelement-expected.txt: Added.
  • fast/dom/shadow/olderShadowRoot-in-shadowelement.html: Added.
12:10 AM Changeset in webkit [137428] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[Texmap] Consolidate redundant code for ARB_RECT texture
https://bugs.webkit.org/show_bug.cgi?id=104705

Patch by No'am Rosenthal <Noam Rosenthal> on 2012-12-12
Reviewed by Kenneth Rohde Christiansen.

Instead of having a whole different function for RECT textures,
keep the existing functions and pass a flag that tells
TextureMapperGL to use the non-normalized coordinates and the
RECT shaders.

No new tests, refactor only. Tested to not break WebGL on
Qt-Mac.

  • platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawQuad):

Compensate for rect textures in drawQuad.

(WebCore::TextureMapperGL::drawBorder):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::drawSolidColor):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram):

Pass flags to TextureMapperGL::drawQuad instead of a bool.

  • platform/graphics/texmap/TextureMapperGL.h:

(TextureMapperGL):

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore::getShaderSpec):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

(TextureMapperShaderProgram):

Compensate for the texture-size in the vertex
shader instead of in the fragment shader.

12:02 AM Changeset in webkit [137427] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Mark a Linux compositing test as failing after a change to the Chromium compositor.

Unreviewed gardening.

  • platform/chromium/TestExpectations:
12:00 AM Changeset in webkit [137426] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Implement add64 for ARM traditional assembler after r136601
https://bugs.webkit.org/show_bug.cgi?id=104103

Patch by Gabor Ballabas <gaborb@inf.u-szeged.hu> on 2012-12-11
Reviewed by Zoltan Herczeg.

Implement add64 function for ARM traditional macroassembler.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::add64):
(MacroAssemblerARM):

Dec 11, 2012:

11:54 PM Changeset in webkit [137425] by hayato@chromium.org
  • 7 edits in trunk

REGRESSION(r137408): breaks chromium's browser tests which use WebKitShadowRoot (Requested by hayato on #webkit).
https://bugs.webkit.org/show_bug.cgi?id=104770

Unreviewed, build fix.

Source/WebCore:

  • dom/ShadowRoot.idl:
  • page/DOMWindow.idl:

LayoutTests:

  • fast/js/global-constructors-expected.txt:
  • platform/efl/fast/js/global-constructors-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
11:49 PM Changeset in webkit [137424] by commit-queue@webkit.org
  • 15 edits in trunk

Unreviewed, rolling out r137333, r137344, r137364, and
r137377.
http://trac.webkit.org/changeset/137333
http://trac.webkit.org/changeset/137344
http://trac.webkit.org/changeset/137364
http://trac.webkit.org/changeset/137377
https://bugs.webkit.org/show_bug.cgi?id=104771

Caused a raft of browser_test failures in Chromium (Requested
by aklein on #webkit).

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

Source/WebCore:

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::setRequest):
(WebCore::DocumentLoader::subresource):
(WebCore::DocumentLoader::addSubresourceLoader):
(WebCore::DocumentLoader::removeSubresourceLoader):
(WebCore::DocumentLoader::startLoadingMainResource):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::~MainResourceLoader):
(WebCore::MainResourceLoader::receivedError):
(WebCore::MainResourceLoader::willCancel):
(WebCore::MainResourceLoader::didCancel):
(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::addData):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::continueAfterContentPolicy):
(WebCore::MainResourceLoader::didReceiveResponse):
(WebCore::MainResourceLoader::didReceiveData):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::didFail):
(WebCore::MainResourceLoader::reportMemoryUsage):
(WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
(WebCore::MainResourceLoader::loadNow):
(WebCore):
(WebCore::MainResourceLoader::load):
(WebCore::MainResourceLoader::setDefersLoading):

  • loader/MainResourceLoader.h:

(MainResourceLoader):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::willSendRequest):

  • loader/ResourceLoader.h:

(ResourceLoader):
(WebCore::ResourceLoader::defersLoading):

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::willSendRequest):

  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::willSendRequest):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::loadDone):

  • loader/mac/DocumentLoaderMac.cpp:

(WebCore::DocumentLoader::schedule):
(WebCore::DocumentLoader::unschedule):

LayoutTests:

  • http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
  • platform/chromium-linux/fast/replaced/border-radius-clip-content-edge-expected.png:
  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
11:41 PM Changeset in webkit [137423] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Duplicated WebPageGroup initialization
https://bugs.webkit.org/show_bug.cgi?id=103229

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

WebPageGroup does not need to be created in creating EwkView when the pageGroupRef is 0
because the default WebPageGroup(m_defaultPageGroup) is created in WebContext constructor.

As a side effect on the duplicated initialization, pageGroupID increases even when the EwkView
is created with default context.

  • UIProcess/API/efl/ewk_view.cpp:

(createEwkView):

11:36 PM Changeset in webkit [137422] by haraken@chromium.org
  • 68 edits
    3 deletes in trunk

Unreviewed, rolling out r137398.
http://trac.webkit.org/changeset/137398
https://bugs.webkit.org/show_bug.cgi?id=104188

A bunch of webaudio tests hit ASSERTs

Source/WebCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::createOfflineContext):
(WebCore):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • Modules/webaudio/DOMWindowWebAudio.idl:
  • Modules/webaudio/OfflineAudioContext.cpp: Removed.
  • Modules/webaudio/OfflineAudioContext.h: Removed.
  • Modules/webaudio/OfflineAudioContext.idl: Removed.
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/generic/RuntimeEnabledFeatures.h:
  • bindings/js/JSAudioContextCustom.cpp:

(WebCore::JSAudioContextConstructor::constructJSAudioContext):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallbackCustom):

LayoutTests:

  • inspector-protocol/nmi-webaudio.html:
  • inspector-protocol/resources/audio-context.html:
  • webaudio/audiobuffersource-loop-comprehensive.html:
  • webaudio/audiobuffersource-loop-points.html:
  • webaudio/audiobuffersource-multi-channels.html:
  • webaudio/audiobuffersource-playbackState.html:
  • webaudio/audiobuffersource-playbackrate.html:
  • webaudio/audiobuffersource-start.html:
  • webaudio/audiobuffersource.html:
  • webaudio/audiochannelmerger-stereo.html:
  • webaudio/audiochannelsplitter.html:
  • webaudio/audionode-connect-order.html:
  • webaudio/audionode-expected.txt:
  • webaudio/audioparam-connect-audioratesignal.html:
  • webaudio/audioparam-summingjunction.html:
  • webaudio/automatic-pull-node.html:
  • webaudio/biquad-allpass.html:
  • webaudio/biquad-bandpass.html:
  • webaudio/biquad-highpass.html:
  • webaudio/biquad-highshelf.html:
  • webaudio/biquad-lowpass.html:
  • webaudio/biquad-lowshelf.html:
  • webaudio/biquad-notch.html:
  • webaudio/biquad-peaking.html:
  • webaudio/convolution-mono-mono.html:
  • webaudio/delaynode-max-default-delay.html:
  • webaudio/delaynode-max-nondefault-delay.html:
  • webaudio/delaynode-maxdelay.html:
  • webaudio/delaynode-maxdelaylimit.html:
  • webaudio/delaynode-scheduling.html:
  • webaudio/delaynode.html:
  • webaudio/distance-exponential.html:
  • webaudio/distance-inverse.html:
  • webaudio/distance-linear.html:
  • webaudio/gain.html:
  • webaudio/javascriptaudionode-zero-input-channels.html:
  • webaudio/javascriptaudionode.html:
  • webaudio/mediaelementaudiosourcenode-gc.html:
  • webaudio/mixing.html:
  • webaudio/note-grain-on-play.html:
  • webaudio/note-grain-on-timing.html:
  • webaudio/oscillator-basic.html:
  • webaudio/panner-equalpower-stereo.html:
  • webaudio/panner-equalpower.html:
  • webaudio/realtimeanalyser-fft-sizing.html:
  • webaudio/resources/audio-codec-test.js:

(runDecodingTest):

  • webaudio/resources/audioparam-testing.js:

(createAudioGraphAndTest):

  • webaudio/resources/javascriptaudionode-testing.js:

(runJSNodeTest):

  • webaudio/sample-accurate-scheduling.html:
  • webaudio/stereo2mono-down-mixing.html:
  • webaudio/up-mixing-mono-51.html:
  • webaudio/up-mixing-mono-stereo.html:
  • webaudio/up-mixing-stereo-51.html:
  • webaudio/waveshaper.html:
11:22 PM Changeset in webkit [137421] by shinyak@chromium.org
  • 7 edits in trunk

[Shadow DOM] registering InsertionPoints to ShadowRoot should work out of a document.
https://bugs.webkit.org/show_bug.cgi?id=104346

Reviewed by Hajime Morita.

Source/WebCore:

We need to register InsertionPoints even if ShadowRoot is out of Document, since distribution should work
out of Document, too.

Instead of checking isInDocument(), we have to make sure InsertionPoint and an element which InsertionPoint
inserted into have the same treescope.

Tests: fast/dom/shadow/has-content-elements.html

fast/dom/shadow/has-shadow-insertion-point.html

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::insertedInto):
(WebCore::InsertionPoint::removedFrom):

LayoutTests:

Added tests for out-of-Document version and calling insertedInto/removedFrom several times.

  • fast/dom/shadow/has-content-elements-expected.txt:
  • fast/dom/shadow/has-content-elements.html:
  • fast/dom/shadow/has-shadow-insertion-point-expected.txt:
  • fast/dom/shadow/has-shadow-insertion-point.html:
11:01 PM Changeset in webkit [137420] by weinig@apple.com
  • 6 edits in trunk/Source/WebKit2

Add API to set the maximum number of processes allowed in a WKContext
https://bugs.webkit.org/show_bug.cgi?id=104769

Reviewed by Dan Bernstein.

Switch from using NSUserDefaults to a WKContext API to set the maximum number of processes
for a context.

  • UIProcess/API/C/WKContext.cpp:

(WKContextSetMaximumNumberOfProcesses):
(WKContextGetMaximumNumberOfProcesses):

  • UIProcess/API/C/WKContext.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::setMaximumNumberOfProcesses):
(WebKit):

  • UIProcess/WebContext.h:

(WebContext):
(WebKit::WebContext::maximumNumberOfProcesses):

  • UIProcess/mac/WebContextMac.mm:

(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitialize):

10:37 PM Changeset in webkit [137419] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Add Koji Ishii to the list of contributors.

  • Scripts/webkitpy/common/config/committers.py:
10:24 PM Changeset in webkit [137418] by tasak@google.com
  • 7 edits
    2 adds in trunk

Text nodes in shadow roots don't inherit style properly
https://bugs.webkit.org/show_bug.cgi?id=101116

Reviewed by Hajime Morita.

Source/WebCore:

Use NodeRenderingContext to resolve styles of text nodes.
If text nodes are direct children of shadow roots, the text nodes
should be inherited styles from their shadow hosts.
But if reset-style-inheritance flag is true, the text nodes should
not be inherited. And if text nodes are distributed nodes,
we have to check whether their insertion point's
reset-style-inheritance.
c.f. shadow dom spec is:
http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#styles

Test: fast/dom/shadow/text-node-in-shadow.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::styleForElement):
Modified to use defaultStyleForElement if the given element has
no parent style.
(WebCore::StyleResolver::initForStyleResolve):
Removed shouldResetStyleInheritance, because now NodeRenderingContext
resetStyleInheritance() takes care of reset-style-inheritance of
both shadow roots and insertion points.
(WebCore::StyleResolver::defaultStyleForElement):
Added to create a default style for elements.
(WebCore):
(WebCore::StyleResolver::styleForText):
Use NodeRenderingContext to find the parent node for style from the
given text node. If no parent node is found or reset-style-inheritance
is true, returns a default style (i.e. empty render style).
Otherwise, just returns the found node's style.

  • css/StyleResolver.h:

(StyleResolver):

  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::ComposedShadowTreeWalker::ParentTraversalDetails::didTraverseInsertionPoint):
Modify to consider insertion point's resetStyleInheritance.

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::createRendererForTextIfNeeded):
Since NodeRenderingContext has already found a parent node for
rendering and style and a parentRenderer is just the found node's
renderer, we have to only check reset-style-inheritance.
If reset, use default style. Otherwise, the parentRenderer's style.

  • dom/Text.cpp:

(WebCore::Text::recalcTextStyle):
Use styleForText instead of parentRenderer's styles if the given text
node is a direct child of a shadow root or a direct child of a shadow
host.

LayoutTests:

  • fast/dom/shadow/text-node-in-shadow-expected.html: Added.
  • fast/dom/shadow/text-node-in-shadow.html: Added.
10:20 PM Changeset in webkit [137417] by tasak@google.com
  • 5 edits in trunk/Source/WebCore

Hide HOST_RULE behind SHADOW_DOM flag.
https://bugs.webkit.org/show_bug.cgi?id=102321

Reviewed by Dimitri Glazkov.

@host @-rules are only available when the rules are declared in styles
in shadow dom trees. So if SHADOW_DOM is disabled, we don't need
@host @-rules.

No new tests. Just hide HOST_RULE behind SHADOW_DOM flag.

  • css/StyleResolver.h:

Hide "class ShadowRuleHost".

  • css/StyleRule.cpp:

(WebCore::StyleRuleBase::reportMemoryUsage):
(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy):
(WebCore::StyleRuleBase::createCSSOMWrapper):

  • css/StyleRule.h:

(StyleRuleBase):
Hide "Host" type and isHostRule.
(StyleRuleHost):
Hide "class StyleRuleHost".

  • css/StyleSheetContents.cpp:

(WebCore::childRulesHaveFailedOrCanceledSubresources):

10:04 PM Changeset in webkit [137416] by dmazzoni@google.com
  • 3 edits in trunk/Source/WebCore

AX: accessibilityIsIgnored should avoid computing textUnderElement
https://bugs.webkit.org/show_bug.cgi?id=104688

Reviewed by Chris Fleizach.

Simplify the logic in accessibilityIsIgnored without affecting
the results of any tests. In particular, avoid expensive calls to
textUnderElement.

Covered by existing tests.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::isGenericFocusableElement):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):

9:58 PM Changeset in webkit [137415] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Reachable event listeners on image elements can be collected in a minor DOM GC
https://bugs.webkit.org/show_bug.cgi?id=104734

Reviewed by Kenneth Russell.

A major DOM GC treats image elements specially. In
V8GCController::opaqueRootForGC(), a major DOM GC puts image elements
that have pending activities into the same object group of their document.
This guarantees that image elements that have pending activities
are not garbage collected in the major DOM GC.

This patch adds the same special handling to a minor DOM GC to guarantee
the same thing in the minor DOM GC too.

In long-term, we might want to remove the special handling by making
image elements active DOM nodes.

Test: Manually confirmed that all characters in
http://alteredqualia.com/three/examples/webgl_animation_skinning_tf2.html
are rendered correctly.

  • bindings/v8/V8GCController.cpp:

(WebCore::V8GCController::opaqueRootForGC):
(WebCore::gcTree):

9:52 PM Changeset in webkit [137414] by dmazzoni@google.com
  • 27 edits
    1 delete in trunk

AX: Make isActionSupported cross-platform.
https://bugs.webkit.org/show_bug.cgi?id=104681

Reviewed by Chris Fleizach.

Source/WebCore:

Add UserGestureIndicator to increment() and decrement()
so that all accessibility actions are treated as
user actions, not scripted actions.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):

Source/WebKit/chromium:

Add support for press, increment, and decrement actions,
including tests to see whether they're supported on a given
object. This allows Chromium to pass three tests that were
previously skipped.

  • public/WebAccessibilityObject.h:

(WebAccessibilityObject):

  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::canDecrement):
(WebKit):
(WebKit::WebAccessibilityObject::canIncrement):
(WebKit::WebAccessibilityObject::canPress):
(WebKit::WebAccessibilityObject::increment):
(WebKit::WebAccessibilityObject::decrement):
(WebKit::WebAccessibilityObject::press):

Tools:

Replace isActionSupported, which takes a platform-specific
argument, with three cross-platform methods.

  • DumpRenderTree/AccessibilityUIElement.cpp:

(isPressActionSupportedCallback):
(isIncrementActionSupportedCallback):
(isDecrementActionSupportedCallback):
(AccessibilityUIElement::getJSClass):

  • DumpRenderTree/AccessibilityUIElement.h:

(AccessibilityUIElement):

  • DumpRenderTree/blackberry/AccessibilityUIElementBlackBerry.cpp:

(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):

  • DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:

(WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
(WebTestRunner::AccessibilityUIElement::isPressActionSupportedCallback):
(WebTestRunner):
(WebTestRunner::AccessibilityUIElement::isIncrementActionSupportedCallback):
(WebTestRunner::AccessibilityUIElement::isDecrementActionSupportedCallback):
(WebTestRunner::AccessibilityUIElement::incrementCallback):
(WebTestRunner::AccessibilityUIElement::decrementCallback):
(WebTestRunner::AccessibilityUIElement::pressCallback):

  • DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.h:

(AccessibilityUIElement):

  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR::AccessibilityUIElement::isIncrementActionSupported):
(WTR::AccessibilityUIElement::isDecrementActionSupported):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:

(AccessibilityUIElement):

  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR):
(WTR::AccessibilityUIElement::isIncrementActionSupported):
(WTR::AccessibilityUIElement::isDecrementActionSupported):

LayoutTests:

Refactor tests that called isActionSupported to call new
cross-platform variants, and unskip three test for Chromium
as a result.

  • accessibility/aria-link-supports-press.html:
  • accessibility/button-press-action.html:
  • accessibility/onclick-handlers.html:
  • platform/chromium/TestExpectations:
  • platform/chromium/accessibility/aria-popup-expected.txt: Removed.
  • platform/mac/accessibility/aria-popup-expected.txt:
  • platform/mac/accessibility/aria-popup.html:
  • platform/mac/accessibility/slider-supports-actions.html:
9:35 PM Changeset in webkit [137413] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove conversion to/from float and float division from ImageFrame::setRGBA
https://bugs.webkit.org/show_bug.cgi?id=103693

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-12-11
Reviewed by Brent Fulgham.

Replace floating point operations used for alpha premultiply with fixed point arithmetic
which is basically integer operations. Allows to shave extra couple percent from decoding
images with transparency.

Covered by existing tests.

  • platform/image-decoders/ImageDecoder.h:

(ImageFrame):
(WebCore::ImageFrame::fixPointUnsignedMultiply):
(WebCore::ImageFrame::setRGBA):

9:34 PM Changeset in webkit [137412] by dpranke@chromium.org
  • 2 edits in trunk/Tools

nrwt: remove result_summary.total_tests_by_expectation
https://bugs.webkit.org/show_bug.cgi?id=104756

Reviewed by Eric Seidel.

This field wasn't being used by anything.

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

(ResultSummary.init):

9:28 PM Changeset in webkit [137411] 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-12-11

  • DEPS:
9:25 PM Changeset in webkit [137410] by kihong.kwon@samsung.com
  • 27 edits in trunk/Source

Vibration API: IDL type doesn't match implementation type
https://bugs.webkit.org/show_bug.cgi?id=103899

Reviewed by Kentaro Hara.

Source/WebCore:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.

  • Change a parameter type of vibrate function from unsigned long to unsigned.

No new tests, it is covered by exist test.

  • Modules/vibration/NavigatorVibration.cpp:

(WebCore::NavigatorVibration::vibrate):

  • Modules/vibration/NavigatorVibration.h:

(NavigatorVibration):

  • Modules/vibration/Vibration.cpp:

(WebCore::Vibration::vibrate):

  • Modules/vibration/Vibration.h:

(Vibration):

  • Modules/vibration/VibrationClient.h:

(VibrationClient):

  • bindings/js/JSDOMBinding.h:
  • bindings/scripts/CodeGeneratorJS.pm:

Remove workaround codes for the Vibration API which is mapped from unsigned long to unsigned long.
It should be mapped from unsigned long to unsigned by WebIDL spec.
(GetNativeVectorInnerType):

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

(WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):

Source/WebKit/blackberry:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.

  • Change a parameter type of vibrate function from unsigned long to unsigned.
  • WebCoreSupport/VibrationClientBlackBerry.cpp:

(WebCore::VibrationClientBlackBerry::vibrate):

  • WebCoreSupport/VibrationClientBlackBerry.h:

(VibrationClientBlackBerry):

Source/WebKit/efl:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.

  • Change a parameter type of vibrate function from unsigned long to unsigned.
  • WebCoreSupport/VibrationClientEfl.cpp:

(WebCore::VibrationClientEfl::vibrate):

  • WebCoreSupport/VibrationClientEfl.h:

(VibrationClientEfl):

Source/WebKit2:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.

  • Change a parameter type of vibrate function from uint64_t to uint_32_t.
  • UIProcess/API/C/WKVibration.h:
  • UIProcess/API/efl/EwkViewCallbacks.h:
  • UIProcess/WebVibrationProvider.cpp:

(WebKit::WebVibrationProvider::vibrate):

  • UIProcess/WebVibrationProvider.h:

(WebVibrationProvider):

  • UIProcess/WebVibrationProxy.cpp:

(WebKit::WebVibrationProxy::vibrate):

  • UIProcess/WebVibrationProxy.h:

(WebVibrationProxy):

  • UIProcess/WebVibrationProxy.messages.in:
  • UIProcess/efl/VibrationClientEfl.cpp:

(VibrationClientEfl::vibrateCallback):

  • UIProcess/efl/VibrationClientEfl.h:

(VibrationClientEfl):

  • WebProcess/WebCoreSupport/WebVibrationClient.cpp:

(WebKit::WebVibrationClient::vibrate):

  • WebProcess/WebCoreSupport/WebVibrationClient.h:

(WebVibrationClient):

9:14 PM Changeset in webkit [137409] by wangxianzhu@chromium.org
  • 5 edits
    2 adds in trunk

ScrollingCoordinator::hasVisibleSlowRepaintFixedObject() should exclude out-of-view fixed position elements
https://bugs.webkit.org/show_bug.cgi?id=102543

Source/WebCore:

Let RenderLayerCompositor manage the reasons that fixed position elements are not composited.
Check the reason in ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects(), don't let fixed position layer not composited with explicit reasons cause slow scrolling.

Reviewed by James Robinson.

Test: compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects): Exclude fixed position elements that are not composited for explicit reasons.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements): Manages m_fixedPositionLayerNotCompositedReasonMap.
(WebCore::RenderLayerCompositor::needsToBeComposited):
(WebCore::RenderLayerCompositor::requiresCompositingLayer):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

  • rendering/RenderLayerCompositor.h:

(WebCore::RenderLayerCompositor::fixedPositionLayerNotCompositedReason): Now outputs fixedPositionLayerNotCompositedreason.
(RenderLayerCompositor):

LayoutTests:

Reviewed by James Robinson.

  • compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html: Ensure slow-scrolling is not triggered.
  • compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html: Added.
8:52 PM Changeset in webkit [137408] by hayato@chromium.org
  • 215 edits in trunk

[Shadow DOM] Kill ShadowRoot constructor
https://bugs.webkit.org/show_bug.cgi?id=102913

Reviewed by Dimitri Glazkov.

Source/WebCore:

Remove ShadowRoot constructor in favor of Element.webkitCreateShadowRoot().

No new tests. Update existing tests.

  • dom/ShadowRoot.idl:
  • page/DOMWindow.idl:
  • testing/Internals.cpp:

(WebCore::Internals::createShadowRoot):
(WebCore):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

LayoutTests:

  • editing/pasteboard/copy-paste-float.html:
  • editing/shadow/adjusting-editing-boundary-with-table-in-shadow.html:
  • editing/shadow/bold-twice-in-shadow.html:
  • editing/shadow/breaking-editing-boundaries-2.html:
  • editing/shadow/breaking-editing-boundaries.html:
  • editing/shadow/breaking-editing-boundary-with-table.html:
  • editing/shadow/compare-positions-in-nested-shadow.html:
  • editing/shadow/contenteditable-propagation-at-shadow-boundary.html:
  • editing/shadow/delete-characters-in-distributed-node-crash.html:
  • editing/shadow/delete-list-in-shadow.html:
  • editing/shadow/doubleclick-on-meter-in-shadow-crash.html:
  • editing/shadow/execcommand-indent-in-shadow.html:
  • editing/shadow/insertorderedlist-crash.html:
  • editing/shadow/pressing-enter-on-list.html:
  • editing/shadow/rightclick-on-meter-in-shadow-crash.html:
  • editing/shadow/select-contenteditable-shadowhost.html:
  • editing/shadow/selection-of-orphan-shadowroot.html:
  • editing/shadow/selection-of-shadowroot.html:
  • editing/shadow/shadow-selection-not-exported.html:
  • fast/css/style-scoped/style-scoped-apply-author-styles-expected.txt:
  • fast/css/style-scoped/style-scoped-apply-author-styles.html:
  • fast/css/style-scoped/style-scoped-change-scoped-in-shadow-expected.txt:
  • fast/css/style-scoped/style-scoped-change-scoped-in-shadow.html:
  • fast/css/style-scoped/style-scoped-in-shadow-expected.txt:
  • fast/css/style-scoped/style-scoped-in-shadow.html:
  • fast/dom/shadow/adopt-node-with-shadow-root.html:
  • fast/dom/shadow/athost-atrules.html:
  • fast/dom/shadow/base-in-shadow-tree.html:
  • fast/dom/shadow/caret-range-from-point-in-nested-shadow.html:
  • fast/dom/shadow/content-after-style.html:
  • fast/dom/shadow/content-element-in-media-element.html:
  • fast/dom/shadow/content-element-in-meter-element.html:
  • fast/dom/shadow/content-element-in-progress-element.html:
  • fast/dom/shadow/content-element-in-select-element.html:
  • fast/dom/shadow/content-element-outside-shadow-style.html:
  • fast/dom/shadow/content-reprojection-complex.html:
  • fast/dom/shadow/content-reprojection-dynamic.html:
  • fast/dom/shadow/content-reprojection-fallback-crash.html:
  • fast/dom/shadow/content-reprojection-fallback-reprojection.html:
  • fast/dom/shadow/content-reprojection-fallback.html:
  • fast/dom/shadow/content-reprojection-order.html:
  • fast/dom/shadow/content-reprojection-shadow.html:
  • fast/dom/shadow/cppevent-in-shadow.html:
  • fast/dom/shadow/cppevent-input-in-shadow.html:
  • fast/dom/shadow/distribution-attribute-modified.html:
  • fast/dom/shadow/distribution-className-modified.html:
  • fast/dom/shadow/distribution-id-modified.html:
  • fast/dom/shadow/drag-to-meter-in-shadow-crash.html:
  • fast/dom/shadow/drop-event-for-input-in-shadow.html:
  • fast/dom/shadow/drop-event-in-shadow.html:
  • fast/dom/shadow/element-from-point-in-nested-shadow.html:
  • fast/dom/shadow/form-in-shadow.html:
  • fast/dom/shadow/get-element-by-id-in-shadow-mutation.html:
  • fast/dom/shadow/has-content-elements.html:
  • fast/dom/shadow/has-elementshadow.html:
  • fast/dom/shadow/has-shadow-insertion-point.html:
  • fast/dom/shadow/host-wrapper-reclaimed.html:
  • fast/dom/shadow/iframe-shadow.html:
  • fast/dom/shadow/input-with-validation-without-shadow.html:
  • fast/dom/shadow/input-with-validation.html:
  • fast/dom/shadow/insertion-point-list-menu-crash.html:
  • fast/dom/shadow/insertion-point-resetStyleInheritance.html:
  • fast/dom/shadow/insertion-point-shadow-crash.html:
  • fast/dom/shadow/insertion-point-video-crash.html:
  • fast/dom/shadow/invalidate-distribution.html:
  • fast/dom/shadow/link-in-shadow-tree.html:
  • fast/dom/shadow/multiple-shadowroot-adopt.html:
  • fast/dom/shadow/multiple-shadowroot-rendering.html:
  • fast/dom/shadow/multiple-shadowroot.html:
  • fast/dom/shadow/parent-tree-scope-in-shadow.html:
  • fast/dom/shadow/pseudo-attribute-dynamic.html:
  • fast/dom/shadow/pseudo-attribute-rendering.html:
  • fast/dom/shadow/pseudoclass-update-checked-input.html:
  • fast/dom/shadow/pseudoclass-update-checked-option.html:
  • fast/dom/shadow/pseudoclass-update-disabled-button.html:
  • fast/dom/shadow/pseudoclass-update-disabled-fieldset.html:
  • fast/dom/shadow/pseudoclass-update-disabled-input.html:
  • fast/dom/shadow/pseudoclass-update-disabled-optgroup.html:
  • fast/dom/shadow/pseudoclass-update-disabled-option.html:
  • fast/dom/shadow/pseudoclass-update-disabled-select.html:
  • fast/dom/shadow/pseudoclass-update-disabled-textarea.html:
  • fast/dom/shadow/pseudoclass-update-enabled-anchor.html:
  • fast/dom/shadow/pseudoclass-update-enabled-area.html:
  • fast/dom/shadow/pseudoclass-update-enabled-button.html:
  • fast/dom/shadow/pseudoclass-update-enabled-fieldset.html:
  • fast/dom/shadow/pseudoclass-update-enabled-input.html:
  • fast/dom/shadow/pseudoclass-update-enabled-optgroup.html:
  • fast/dom/shadow/pseudoclass-update-enabled-option.html:
  • fast/dom/shadow/pseudoclass-update-enabled-select.html:
  • fast/dom/shadow/pseudoclass-update-enabled-textarea.html:
  • fast/dom/shadow/pseudoclass-update-indeterminate-input.html:
  • fast/dom/shadow/pseudoclass-update-indeterminate-progress.html:
  • fast/dom/shadow/pseudoclass-update-link-anchor.html:
  • fast/dom/shadow/pseudoclass-update-link-area.html:
  • fast/dom/shadow/pseudoclass-update-target.html:
  • fast/dom/shadow/pseudoclass-update-visited-anchor.html:
  • fast/dom/shadow/pseudoclass-update-visited-area.html:
  • fast/dom/shadow/remove-styles-in-shadow-crash.html:
  • fast/dom/shadow/reprojection-attribute-modified.html:
  • fast/dom/shadow/reprojection-className-modified.html:
  • fast/dom/shadow/reprojection-id-modified.html:
  • fast/dom/shadow/resize-in-shadow-dom.html:
  • fast/dom/shadow/resources/polyfill.js:

(.Element.prototype.webkitCreateShadowRoot):

  • fast/dom/shadow/resources/shadow-dom.js:

(createDOM):

  • fast/dom/shadow/select-image-with-shadow.html:
  • fast/dom/shadow/selection-shouldnt-expose-shadow-dom.html:
  • fast/dom/shadow/selections-in-shadow.html:
  • fast/dom/shadow/shadow-and-list-elements.html:
  • fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt:
  • fast/dom/shadow/shadow-aware-create-shadow-root.html:
  • fast/dom/shadow/shadow-content-crash.html:
  • fast/dom/shadow/shadow-disable-expected.txt:
  • fast/dom/shadow/shadow-disable.html:
  • fast/dom/shadow/shadow-div-reflow.html:
  • fast/dom/shadow/shadow-dynamic-style-change-via-mutation-and-selector.html:
  • fast/dom/shadow/shadow-element-rendering-multiple.html:
  • fast/dom/shadow/shadow-element-rendering-single.html:
  • fast/dom/shadow/shadow-nested-pseudo-id.html:
  • fast/dom/shadow/shadow-on-image.html:
  • fast/dom/shadow/shadow-pseudo-id.html:
  • fast/dom/shadow/shadow-removechild-and-blur-event.html:
  • fast/dom/shadow/shadow-reprojection-click.html:
  • fast/dom/shadow/shadow-reprojection-dynamic.html:
  • fast/dom/shadow/shadow-reprojection-fallback.html:
  • fast/dom/shadow/shadow-reprojection.html:
  • fast/dom/shadow/shadow-reprojection2.html:
  • fast/dom/shadow/shadow-root-append.html:
  • fast/dom/shadow/shadow-root-applyAuthorStyles.html:
  • fast/dom/shadow/shadow-root-attached.html:
  • fast/dom/shadow/shadow-root-innerHTML.html:
  • fast/dom/shadow/shadow-root-js-api-expected.txt:
  • fast/dom/shadow/shadow-root-js-api.html:
  • fast/dom/shadow/shadow-root-new-expected.txt:
  • fast/dom/shadow/shadow-root-new.html:
  • fast/dom/shadow/shadow-root-resetStyleInheritance.html:
  • fast/dom/shadow/shadow-select-attribute-featureset.html:
  • fast/dom/shadow/shadow-ul-li.html:
  • fast/dom/shadow/shadowdom-dynamic-styling.html:
  • fast/dom/shadow/shadowdom-for-button-complex-shadow.html:
  • fast/dom/shadow/shadowdom-for-button-only-shadow.html:
  • fast/dom/shadow/shadowdom-for-button-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-button.html:
  • fast/dom/shadow/shadowdom-for-fieldset-complex-shadow.html:
  • fast/dom/shadow/shadowdom-for-fieldset-only-shadow.html:
  • fast/dom/shadow/shadowdom-for-fieldset-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-form-associated-element-useragent.html:
  • fast/dom/shadow/shadowdom-for-image-alt-update.html:
  • fast/dom/shadow/shadowdom-for-image-alt.html:
  • fast/dom/shadow/shadowdom-for-image-content.html:
  • fast/dom/shadow/shadowdom-for-image-dynamic.html:
  • fast/dom/shadow/shadowdom-for-image-event-click.html:
  • fast/dom/shadow/shadowdom-for-image-event.html:
  • fast/dom/shadow/shadowdom-for-image-in-shadowdom.html:
  • fast/dom/shadow/shadowdom-for-image-map.html:
  • fast/dom/shadow/shadowdom-for-image-style.html:
  • fast/dom/shadow/shadowdom-for-image-with-multiple-shadow.html:
  • fast/dom/shadow/shadowdom-for-image-with-pseudo-id.html:
  • fast/dom/shadow/shadowdom-for-image-with-width-and-height.html:
  • fast/dom/shadow/shadowdom-for-image.html:
  • fast/dom/shadow/shadowdom-for-keygen-complex-shadow.html:
  • fast/dom/shadow/shadowdom-for-keygen-only-shadow.html:
  • fast/dom/shadow/shadowdom-for-keygen-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-media.html:
  • fast/dom/shadow/shadowdom-for-meter-dynamic.html:
  • fast/dom/shadow/shadowdom-for-meter-multiple.html:
  • fast/dom/shadow/shadowdom-for-meter-with-style.html:
  • fast/dom/shadow/shadowdom-for-meter-without-appearance.html:
  • fast/dom/shadow/shadowdom-for-meter-without-shadow-element.html:
  • fast/dom/shadow/shadowdom-for-meter.html:
  • fast/dom/shadow/shadowdom-for-object-complex-shadow.html:
  • fast/dom/shadow/shadowdom-for-object-only-shadow.html:
  • fast/dom/shadow/shadowdom-for-object-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-output-complex-shadow.html:
  • fast/dom/shadow/shadowdom-for-output-only-shadow.html:
  • fast/dom/shadow/shadowdom-for-output-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-progress-dynamic.html:
  • fast/dom/shadow/shadowdom-for-progress-multiple.html:
  • fast/dom/shadow/shadowdom-for-progress-with-style.html:
  • fast/dom/shadow/shadowdom-for-progress-without-appearance.html:
  • fast/dom/shadow/shadowdom-for-progress-without-shadow-element.html:
  • fast/dom/shadow/shadowdom-for-progress.html:
  • fast/dom/shadow/shadowdom-for-select-complex-shadow.html:
  • fast/dom/shadow/shadowdom-for-select-only-shadow.html:
  • fast/dom/shadow/shadowdom-for-select-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-textarea-complex-shadow.html:
  • fast/dom/shadow/shadowdom-for-textarea-only-shadow.html:
  • fast/dom/shadow/shadowdom-for-textarea-with-attribute.html:
  • fast/dom/shadow/shadowdom-for-textarea-with-placeholder.html:
  • fast/dom/shadow/shadowdom-for-textarea-with-style.html:
  • fast/dom/shadow/shadowdom-for-textarea-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-textarea.html:
  • fast/dom/shadow/shadowroot-clonenode.html:
  • fast/dom/shadow/shadowroot-of-insertionpoint.html:
  • fast/dom/shadow/shadowroot-type.html:
  • fast/dom/shadow/style-of-distributed-node.html:
  • fast/dom/shadow/style-scoped-not-enabled.html:
  • fast/dom/shadow/styling-pseudo-attribute.html:
  • fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata.html:
  • fast/dom/shadow/transition-on-shadow-host-with-distributed-node.html:
  • fast/dom/shadow/user-modify-inheritance.html:
  • fast/dom/shadow/wheel-event-in-shadow-dom.html:
  • fast/dom/shadow/wheel-event-on-input-in-shadow-dom.html:
  • fast/frames/detached-shadow-frame.html:
  • fast/js/global-constructors-expected.txt:
  • inspector/elements/shadow-root.html:
  • inspector/elements/update-shadowdom.html:
  • platform/efl/fast/js/global-constructors-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
7:38 PM Changeset in webkit [137407] by dpranke@chromium.org
  • 4 edits in trunk/Tools

garden-o-matic doesn't know about reftests
https://bugs.webkit.org/show_bug.cgi?id=101976

Reviewed by Ojan Vafai.

This is a first attempt at fixing this, sort of a "stop-the-bleeding"
fix. We will now look at the list of tests we're asked to rebaseline,
and log which ones are reftests into the status area, and rebaseline
the rest.

Longer-term, we should display feedback in the results area based on
which tests we're looking at. If the test list contains no reftests,
we should behave as today; if the list is all reftest, we should
probably disable the button, and if the list is a mix, we should
probably display an alert next to the button or something. It would
also be nice to annotate which tests were reftests, maybe with a
"(reftest)" next to the test name or something.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
7:12 PM Changeset in webkit [137406] by Antti Koivisto
  • 32 edits in trunk/Source/WebCore

Add Element-specific traversal functions
https://bugs.webkit.org/show_bug.cgi?id=104685

Reviewed by Ryosuke Niwa.

In many cases where we use NodeTraversal we really only want Elements. By having
Element specific iteration functions we can tighten the code and make it faster too.

This patch adds ElementTraversal namespace, similar to NodeTraversal. It also switches
bunch of NodeTraversal call sites that obviously only care about elements to using
the new interface.

This should be a speedup too as we avoid number of branches by not having to look
for children of non-ContainerNodes and by allowing use of ContainerNode specific
accessors.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::addImageMapChildren):

  • css/SelectorChecker.cpp:

(WebCore::linkAttribute):
(WebCore::SelectorChecker::allVisitedStateChanged):
(WebCore::SelectorChecker::visitedStateChanged):

  • css/StyleInvalidationAnalysis.cpp:

(WebCore::elementMatchesSelectorScopes):
(WebCore::StyleInvalidationAnalysis::invalidateStyle):

  • dom/ContainerNodeAlgorithms.h:

(WebCore::ChildFrameDisconnector::collectDescendant):

  • dom/Document.cpp:

(WebCore::Document::buildAccessKeyMap):
(WebCore::Document::updateBaseURL):
(WebCore::Document::processBaseElement):

  • dom/DocumentOrderedMap.cpp:

(WebCore::DocumentOrderedMap::get):

  • dom/Element.cpp:

(WebCore::Element::firstElementChild):

  • dom/Element.h:

(WebCore):

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::collectSelectFeatureSetFrom):

  • dom/NodeTraversal.h:

(ElementTraversal):
(WebCore):
(WebCore::ElementTraversal::traverseNextElementTemplate):
(WebCore::ElementTraversal::next):
(WebCore::ElementTraversal::firstWithin):
(WebCore::ElementTraversal::traverseNextElementSkippingChildrenTemplate):
(WebCore::ElementTraversal::nextSkippingChildren):
(NodeTraversal):

  • dom/TreeScope.cpp:

(WebCore::TreeScope::labelElementForId):
(WebCore::TreeScope::findAnchor):

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::handleGeneralDelete):

  • editing/FrameSelection.cpp:

(WebCore::scanForForm):

  • editing/markup.cpp:

(WebCore::completeURLs):

  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::invalidateDisabledStateUnder):
(WebCore::HTMLFieldSetElement::childrenChanged):
(WebCore::HTMLFieldSetElement::legend):
(WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::formElementIndex):

  • html/HTMLLabelElement.cpp:

(WebCore::HTMLLabelElement::control):

  • html/HTMLLegendElement.cpp:

(WebCore::HTMLLegendElement::associatedControl):

  • html/HTMLMapElement.cpp:

(WebCore::HTMLMapElement::mapMouseEvent):

  • html/HTMLNameCollection.cpp:

(WebCore::HTMLNameCollection::virtualItemAfter):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::containsJavaApplet):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::recalcListItems):

  • html/shadow/ContentDistributor.cpp:

(WebCore::ShadowRootContentDistributionData::ensureInsertionPointList):

  • page/FocusController.cpp:

(WebCore::FocusController::findFocusCandidateInContainer):

  • rendering/RenderCounter.cpp:

(WebCore::nextInPreOrder):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::title):

  • svg/SVGUseElement.cpp:

(WebCore::removeDisallowedElementsFromSubtree):

  • svg/animation/SMILTimeContainer.cpp:

(WebCore::SMILTimeContainer::updateDocumentOrderIndexes):

6:51 PM Changeset in webkit [137405] by tkent@chromium.org
  • 7 edits
    14 adds
    1 delete in trunk/LayoutTests

[Chromium] Rebaseline for recent forms changes.
https://bugs.webkit.org/show_bug.cgi?id=103834
https://bugs.webkit.org/show_bug.cgi?id=104438
https://bugs.webkit.org/show_bug.cgi?id=104567

  • platform/chromium-linux/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
  • platform/chromium-linux/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
  • platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-localization-expected.txt:
  • platform/chromium-mac-lion/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
  • platform/chromium-mac-lion/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
  • platform/chromium-win-xp/fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • platform/chromium-win-xp/fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • platform/chromium-win-xp/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
  • platform/chromium-win-xp/fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt: Removed.
  • platform/chromium-win/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
  • platform/chromium-win/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
  • platform/chromium-win/fast/forms/time-multiple-fields/time-multiple-fields-localization-expected.txt:
  • platform/chromium/TestExpectations:
6:22 PM Changeset in webkit [137404] by dpranke@chromium.org
  • 3 edits in trunk/Tools

REGRESSION(r133380): new tests without expected file reported as failing tests on the bots
https://bugs.webkit.org/show_bug.cgi?id=101469

Reviewed by Ryosuke Niwa.

Fix parsing of NRWT's output to identify missing results separately
from other regressions.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunWebKitTests._parseNewRunWebKitTestsOutput):

  • BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:

(MasterCfgTest.test_nrwt_leaks_parsing):
(test_nrwt_missing_results):

6:21 PM Changeset in webkit [137403] by dpranke@chromium.org
  • 2 edits in trunk/Tools

buildbot: change run-webkit-tests --no-launch-safari to --no-show-results
https://bugs.webkit.org/show_bug.cgi?id=104299

Reviewed by Ryosuke Niwa.

Since --no-show-results is the more generically-named flag that NRWT uses.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunWebKitTests):

6:20 PM Changeset in webkit [137402] by dpranke@chromium.org
  • 2 edits in trunk/Tools

remove --use-remote-links-to-tests from buildbot configs (except apple win)
https://bugs.webkit.org/show_bug.cgi?id=104291

Reviewed by Csaba Osztrogonác.

This flag is ignored by NRWT and was just implemented for compatibility.
ORWT still uses it, though.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunWebKitTests):
(RunWebKitTests.start):

6:19 PM Changeset in webkit [137401] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. Fix build with DFG_ENABLE(DEBUG_PROPAGATION_VERBOSE).

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::tallyFrequentExitSites):

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

[soup] Unused parameter in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=104728

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-11
Reviewed by Kentaro Hara.

The soupLogPrinter has unused parameter 'logger',
remove the parameter name to fix 'unused parameter' build warning.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::soupLogPrinter):

5:53 PM Changeset in webkit [137399] by wangxianzhu@chromium.org
  • 3 edits
    4 adds in trunk

Fixed position out-of-view check is incorrect when page is scaled
https://bugs.webkit.org/show_bug.cgi?id=104303

Source/WebCore:

Reviewed by Kenneth Rohde Christiansen.

Test: compositing/layer-creation/fixed-position-out-of-view-scaled.html

compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForPosition): Scale the content rect of the fixed position layer before checking out-of-view.

LayoutTests:

Test if fixed position elements are correctly composited or not composited when page is scaled up and down.

Reviewed by Kenneth Rohde Christiansen.

  • compositing/layer-creation/fixed-position-out-of-view-scaled.html: Added.
  • compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
  • compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html: Added.
  • compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
5:42 PM Changeset in webkit [137398] by crogers@google.com
  • 68 edits
    3 adds in trunk

Implement OfflineAudioContext constructor
https://bugs.webkit.org/show_bug.cgi?id=104188

Reviewed by Kentaro Hara.

Source/WebCore:

The Web Audio layout tests have relied on an undocumented way (in the specification) to render
audio faster than realtime using an OfflineAudioContext. We want to expose a proper OfflineAudioContext
object and constructor instead of piggybacking off of the normal AudioContext.

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::isSampleRateRangeGood):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • Modules/webaudio/DOMWindowWebAudio.idl:
  • Modules/webaudio/OfflineAudioContext.cpp: Added.

(WebCore):
(WebCore::OfflineAudioContext::create):
(WebCore::OfflineAudioContext::OfflineAudioContext):
(WebCore::OfflineAudioContext::~OfflineAudioContext):

  • Modules/webaudio/OfflineAudioContext.h: Added.

(WebCore):
(OfflineAudioContext):

  • Modules/webaudio/OfflineAudioContext.idl: Added.
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/generic/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::webkitOfflineAudioContextEnabled):

  • bindings/js/JSAudioContextCustom.cpp:

(WebCore::JSAudioContextConstructor::constructJSAudioContext):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallbackCustom):

LayoutTests:

Switch Web Audio layout tests to use OfflineAudioContext constructor.

  • inspector-protocol/nmi-webaudio.html:
  • inspector-protocol/resources/audio-context.html:
  • webaudio/audiobuffersource-loop-comprehensive.html:
  • webaudio/audiobuffersource-loop-points.html:
  • webaudio/audiobuffersource-multi-channels.html:
  • webaudio/audiobuffersource-playbackState.html:
  • webaudio/audiobuffersource-playbackrate.html:
  • webaudio/audiobuffersource-start.html:
  • webaudio/audiobuffersource.html:
  • webaudio/audiochannelmerger-stereo.html:
  • webaudio/audiochannelsplitter.html:
  • webaudio/audionode-connect-order.html:
  • webaudio/audionode-expected.txt:
  • webaudio/audioparam-connect-audioratesignal.html:
  • webaudio/audioparam-summingjunction.html:
  • webaudio/automatic-pull-node.html:
  • webaudio/biquad-allpass.html:
  • webaudio/biquad-bandpass.html:
  • webaudio/biquad-highpass.html:
  • webaudio/biquad-highshelf.html:
  • webaudio/biquad-lowpass.html:
  • webaudio/biquad-lowshelf.html:
  • webaudio/biquad-notch.html:
  • webaudio/biquad-peaking.html:
  • webaudio/convolution-mono-mono.html:
  • webaudio/delaynode-max-default-delay.html:
  • webaudio/delaynode-max-nondefault-delay.html:
  • webaudio/delaynode-maxdelay.html:
  • webaudio/delaynode-maxdelaylimit.html:
  • webaudio/delaynode-scheduling.html:
  • webaudio/delaynode.html:
  • webaudio/distance-exponential.html:
  • webaudio/distance-inverse.html:
  • webaudio/distance-linear.html:
  • webaudio/gain.html:
  • webaudio/javascriptaudionode-zero-input-channels.html:
  • webaudio/javascriptaudionode.html:
  • webaudio/mediaelementaudiosourcenode-gc.html:
  • webaudio/mixing.html:
  • webaudio/note-grain-on-play.html:
  • webaudio/note-grain-on-timing.html:
  • webaudio/oscillator-basic.html:
  • webaudio/panner-equalpower-stereo.html:
  • webaudio/panner-equalpower.html:
  • webaudio/realtimeanalyser-fft-sizing.html:
  • webaudio/resources/audio-codec-test.js:

(runDecodingTest):

  • webaudio/resources/audioparam-testing.js:

(createAudioGraphAndTest):

  • webaudio/resources/javascriptaudionode-testing.js:

(runJSNodeTest):

  • webaudio/sample-accurate-scheduling.html:
  • webaudio/stereo2mono-down-mixing.html:
  • webaudio/up-mixing-mono-51.html:
  • webaudio/up-mixing-mono-stereo.html:
  • webaudio/up-mixing-stereo-51.html:
  • webaudio/waveshaper.html:
5:35 PM Changeset in webkit [137397] by commit-queue@webkit.org
  • 14 edits in trunk/Source/WebCore

WebGL: Avoid unnecessary memory copy or conversion in texImage2D and texSubImage2D for HTMLVideoElement
https://bugs.webkit.org/show_bug.cgi?id=102161

Patch by Jun Jiang <jun.a.jiang@intel.com> on 2012-12-11
Reviewed by Kenneth Russell.

There are several memory copy or conversions in the texImage2D and texSubImage2D for HTMLVideoElement which may be avoided. This patch removes the redundant BackingStore copy if the corresponding Graphics port supports the DontCopyBackingStore behavior. Moreover, it optimizes the AlphaOp if the Image source is from HTMLVideoElement to avoid unnecessary Unmultiply or Premultiply operation in unpack/pack.

Already covered by current tests.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::texImage2DImpl):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::videoFrameToImage): add a parameter to choose BackingStore copy behavior.
(WebCore::WebGLRenderingContext::texSubImage2DImpl):
(WebCore::WebGLRenderingContext::texSubImage2D):

  • html/canvas/WebGLRenderingContext.h:

(WebGLRenderingContext):

  • platform/graphics/GraphicsContext3D.cpp:

(WebCore::GraphicsContext3D::ImageExtractor::ImageExtractor):

  • platform/graphics/GraphicsContext3D.h:

(ImageExtractor):
(WebCore::GraphicsContext3D::ImageExtractor::imageSourceUnpackAlignment):
(WebCore::GraphicsContext3D::ImageExtractor::imageHtmlDomSource):

  • platform/graphics/ImageBuffer.h:

(ImageBuffer):

  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:

(WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.

  • platform/graphics/cairo/ImageBufferCairo.cpp:

(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):

  • platform/graphics/qt/ImageBufferQt.cpp:

(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):

  • platform/graphics/skia/GraphicsContext3DSkia.cpp:

(WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.

  • platform/graphics/skia/ImageBufferSkia.cpp:

(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):

  • platform/graphics/wince/ImageBufferWinCE.cpp:

(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):

  • platform/graphics/wx/ImageBufferWx.cpp:

(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):

5:30 PM Changeset in webkit [137396] by nghanavatian@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Redraw spell check dialog after rotation.
https://bugs.webkit.org/show_bug.cgi?id=104737

Reviewed by Rob Buis.

After rotating the device, all dialogs are dismissed. We should
restore the spell check dialog as it is still valid after
rotation and the user will expect it there.

Internally reviewed by Mike Fenton and Gen Mak.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::applyPendingOrientationIfNeeded):

5:23 PM Changeset in webkit [137395] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Missing implementation of GraphicsContext3DPrivate::platformLayerSize()
https://bugs.webkit.org/show_bug.cgi?id=104726

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

Add common implementation of GraphicsContext3DPrivate::platformLayerSize() similar
to Qt version. There is nothing platform specific in Qt version.

Covered by existing tests.

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(GraphicsContext3DPrivate::platformLayerSize):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

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

[Texmap] Slightly improve readability of the antialias shader
https://bugs.webkit.org/show_bug.cgi?id=104708

Patch by No'am Rosenthal <Noam Rosenthal> on 2012-12-11
Reviewed by Martin Robinson.

Modify the antialiasing shader to include separate function that perform
discrete operations, rather than one big function that repeats the same
operations.

No new tests, readability fix.

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore::getShaderSpec):

5:15 PM Changeset in webkit [137393] by timothy_horton@apple.com
  • 8 edits
    2 adds in trunk

-webkit-svg-shadow radius changes don't cause children's boundaries to be recomputed
https://bugs.webkit.org/show_bug.cgi?id=104722
<rdar://problem/12821080>

Reviewed by Simon Fraser.

Changes to -webkit-svg-shadow currently cause a relayout of the directly affected renderer
and its parents, but not its children. However, children have the shadow radius
baked into their cached boundaries, so these need to be invalidated.

Test: svg/repaint/repaint-webkit-svg-shadow-container.html

  • rendering/RenderObject.h: Expose needsBoundariesUpdate().
  • rendering/svg/RenderSVGContainer.h: Expose needsBoundariesUpdate().
  • rendering/svg/RenderSVGImage.h: Expose needsBoundariesUpdate().
  • rendering/svg/RenderSVGRoot.h: Expose needsBoundariesUpdate().
  • rendering/svg/RenderSVGShape.h: Expose needsBoundariesUpdate().
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::layoutChildren): If the renderer has a shadow and
is in need of a boundaries update, mark children as needing boundaries updates too.

Add a text repaint test that ensures that a child (a path, in this case)
recomputes its bounds after its parent's shadow is expanded.

  • svg/repaint/repaint-webkit-svg-shadow-container-expected.txt: Added.
  • svg/repaint/repaint-webkit-svg-shadow-container.html: Added.
5:10 PM WebInspector edited by ralpht+bugs@gmail.com
revert spam (diff)
5:08 PM Changeset in webkit [137392] by nghanavatian@rim.com
  • 7 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Shift the spell check dialog to align with text after transformation
https://bugs.webkit.org/show_bug.cgi?id=104716

Reviewed by Rob Buis.

PR245033
As the page is transformed, we should redraw the dialog box to align
with the new text position. We send a message to move the dialog
box from different spots to account for scrolling. This includes
keyboard transitions from hidden to displayed and centering of
focus around a new touch point. We do not reposition on manual user
scrolling of the page, as this simply dismisses the dialog.

Internally reviewed by Mike Fenton and Gen Mak.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setViewportSize):

  • Api/WebPageClient.h:
  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::scroll):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::InputHandler):
(BlackBerry::WebKit::InputHandler::shouldRequestSpellCheckingOptionsForPoint):
(BlackBerry::WebKit::InputHandler::requestSpellingCheckingOptions):
(BlackBerry::WebKit::InputHandler::redrawSpellCheckDialogIfRequired):
(WebKit):

  • WebKitSupport/InputHandler.h:

(InputHandler):
(BlackBerry::WebKit::InputHandler::clearDidSpellCheckState):
(BlackBerry::WebKit::InputHandler::didSpellCheckWord):

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

5:07 PM Changeset in webkit [137391] by andersca@apple.com
  • 4 edits in trunk

ASSERT running platform/mac/plugins/convert-point.html on the WK2 bots
https://bugs.webkit.org/show_bug.cgi?id=104735

Reviewed by Jon Honeycutt.

Tools:

Do the testing from within NPP_New instead of NPN_SetWindow. Plug-ins aren't supposed to do any real work inside NPP_SetWindow,
and doing so will more easily trigger the assertion failure. Ideally we should get rid of the initial sync painting pass, but this
gets the test passing again!

  • DumpRenderTree/TestNetscapePlugIn/Tests/mac/ConvertPoint.cpp:

(ConvertPoint::NPP_New):

LayoutTests:

Unskip test.

  • platform/mac-wk2/TestExpectations:
5:03 PM Changeset in webkit [137390] by rniwa@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Add instructions on how to build WebKit on Xcode 4 to build.html
https://bugs.webkit.org/show_bug.cgi?id=104739

Reviewed by Daniel Bates.

Set the build directories to WebKitBuild.

  • building/build.html:
5:00 PM Changeset in webkit [137389] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/12857870> [WK2 NetworkProcess] Cannot load HTTPS sites
https://bugs.webkit.org/show_bug.cgi?id=104732

Reviewed by Anders Carlsson.

  • Shared/BlockingResponseMap.h: (BlockingBoolResponseMap::waitForResponse):

Fixed to make sense.

4:56 PM Changeset in webkit [137388] by wangxianzhu@chromium.org
  • 16 edits in trunk

Add window.internals.mainThreadScrollReasonsAsText for testing slow scrolling
https://bugs.webkit.org/show_bug.cgi?id=104714

Reviewed by Eric Seidel.

.:

Export symbol Page::mainThreadScrollingReasonsAsText().

  • Source/autotools/symbols.filter:

Source/WebCore:

No new tests. Adds test api for bug 102543 and other bugs.

  • WebCore.exp.in:
  • page/Page.cpp:

(WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText): Extracted from ScrollingStateScrollingNode::dumpProperties for layout tests.
(WebCore):

  • page/Page.h:

(Page):

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText):
(WebCore):

  • page/scrolling/ScrollingCoordinator.h:

(ScrollingCoordinator):

  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::dumpProperties): Moved code for mainThreadScrollingReasons to ScrollingCoordinator.cpp.

  • testing/Internals.cpp:

(WebCore::Internals::mainThreadScrollingReasons):
(WebCore):

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit2:

Export symbol Page::mainThreadScrollingReasonsAsText().

  • win/WebKit2.def.in:

LayoutTests:

  • platform/mac/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt: Updated according to the change of mainThreadScrollingReasons about the trailing comma.
4:47 PM Changeset in webkit [137387] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Enhance the TileCache to cache more tiles
https://bugs.webkit.org/show_bug.cgi?id=104612

Reviewed by Tim Horton.

Add smarts to the TileCache so that it keeps some tiles around
for longer and can prepopulate tiles in to-be-scrolled-to regions.

The new tile management is as follows:

  • As before, we expand the visible rect to create a "tile coverage rect"

which is twice the width, and three times the height of the visible rect.

  • At the edges, this coverage rect is constrained by them, rather than being

truncated as before (leading to larger initial tile coverage).

  • When tiles leave the coverage rect, we keep them around but track

them in cohorts (where a cohort is a set of tiles that left the coverage rect
at the same time).

  • If a repaint comes in for a "secondary" tile, we don't paint it, but mark

the tile as being stale. It will get repainted (in full) if it moves back inside
the coverage rect.

  • Cohorts are kept around for 2 seconds after they were created. A repeating

1-second timer clears tiles in old cohorts.

  • Secondary tiles are pruned if the visible rect changes, or if zooming happens.
  • TiledBacking exposes a way to prepopulate a rect with tiles; this is called

when scrolling (e.g. via Home/End keys). Tiles created this way (if outside
the coverage rect) go into a cohort.

  • page/FrameView.cpp:

(WebCore::FrameView::requestScrollPositionUpdate): Tell the TiledBacking
to prepopulate some tiles.

  • platform/graphics/TiledBacking.h:

(TiledBacking): Add prepopulateRect().

  • platform/graphics/ca/mac/TileCache.h:

(TileInfo): The TileMap contains TileInfos, which contain a pointer
to the layer, their cohort, and a 'stale content' flag.
(WebCore::TileCache::TileInfo::TileInfo):
(TileCache):
(TileCohortInfo):
(WebCore::TileCache::TileCohortInfo::TileCohortInfo):

  • platform/graphics/ca/mac/TileCache.mm:

(WebCore::TileCache::TileCache):
(WebCore::TileCache::~TileCache):
(WebCore::TileCache::setNeedsDisplay):
(WebCore::TileCache::setNeedsDisplayInRect):
(WebCore::TileCache::setTileNeedsDisplayInRect):
(WebCore::TileCache::setScale):
(WebCore::TileCache::setAcceleratesDrawing):
(WebCore::TileCache::setTilesOpaque):
(WebCore::TileCache::prepopulateRect):
(WebCore::TileCache::setTileDebugBorderWidth):
(WebCore::TileCache::setTileDebugBorderColor):
(WebCore::TileCache::computeTileCoverageRect):
(WebCore::TileCache::tileSizeForCoverageRect):
(WebCore::TileCache::tileRevalidationTimerFired):
(WebCore::TileCache::blankPixelCount):
(WebCore::queueTileForRemoval):
(WebCore::TileCache::removeAllTiles):
(WebCore::TileCache::removeAllSecondaryTiles):
(WebCore::TileCache::removeTilesInCohort):
(WebCore::TileCache::revalidateTiles):
(WebCore::TileCache::nextTileCohort):
(WebCore::TileCache::startedNewCohort):
(WebCore::TileCache::newestTileCohort):
(WebCore::TileCache::oldestTileCohort):
(WebCore::TileCache::scheduleCohortRemoval):
(WebCore::TileCache::cohortRemovalTimerFired):
(WebCore::TileCache::ensureTilesForRect):
(WebCore::TileCache::tileGridExtent):
(WebCore::TileCache::tileCoverageRect):
(WebCore::TileCache::tileLayerAtIndex):
(WebCore::TileCache::drawTileMapContents):

4:47 PM Changeset in webkit [137386] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Remove redundant AffineTransform in RenderSVGShape::fillAndStrokeShape()
https://bugs.webkit.org/show_bug.cgi?id=104736

Reviewed by Dean Jackson.

RenderSVGShape::fillAndStrokeShape() allocated a AffineTransform on
the stack which was shadowed by another one in narrower scope. It
can be removed.

  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::fillAndStrokeShape):

4:40 PM Changeset in webkit [137385] by Beth Dakin
  • 2 edits in trunk/LayoutTests

https://bugs.webkit.org/show_bug.cgi?id=104735
ASSERT running platform/mac/plugins/convert-point.html on the WK2 bots

Skipping this test for now until we fix the plug-ing bug.

  • platform/mac-wk2/TestExpectations:
4:39 PM Changeset in webkit [137384] by commit-queue@webkit.org
  • 9 edits in trunk/Source

[EFL] Remove unused headers
https://bugs.webkit.org/show_bug.cgi?id=104661

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-11
Reviewed by Ryosuke Niwa.

Header inclusion cleanup.
Remove "NotImplemented.h".

Source/WebCore:

No new tests, no behavior change.

  • platform/efl/CursorEfl.cpp:
  • platform/efl/FileSystemEfl.cpp:
  • platform/efl/ScrollViewEfl.cpp:
  • platform/efl/ScrollbarThemeEfl.cpp:
  • platform/efl/SoundEfl.cpp:

Source/WebKit/efl:

  • WebCoreSupport/PopupMenuEfl.cpp:
  • ewk/ewk_intent.cpp:
4:36 PM Changeset in webkit [137383] by jparent@chromium.org
  • 3 edits in trunk/Tools

Dashboard unit tests should not make xhrs.
https://bugs.webkit.org/show_bug.cgi?id=104598

Reviewed by Dirk Pranke.

The unit test were requesting 25 files that they did not use.
Stub out loader.request to avoid making the xhrs.
Result: order of magnitude speed improvement in test run time (from ~1600ms to 160ms on my machine).

  • TestResultServer/static-dashboards/run-embedded-unittests.html:
  • TestResultServer/static-dashboards/run-unittests.html:
4:32 PM Changeset in webkit [137382] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Tweak expectations to be image-only.

  • platform/chromium/TestExpectations:
4:29 PM Changeset in webkit [137381] by alecflett@chromium.org
  • 11 edits in trunk/Source

IndexedDB: Stub out data operations on IDBDatabaseBackendInterface
https://bugs.webkit.org/show_bug.cgi?id=104592

Reviewed by Dimitri Glazkov.

Source/WebCore:

In preparation for removing objectStore/index backend
interfaces, stub out the basic data operations around
get, put, cursors, etc. on IDBDatabaseBackendInterface.

No new tests, this is just preparation for refactoring.

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::get):
(WebCore):
(WebCore::IDBDatabaseBackendImpl::put):
(WebCore::IDBDatabaseBackendImpl::setIndexKeys):
(WebCore::IDBDatabaseBackendImpl::setIndexesReady):
(WebCore::IDBDatabaseBackendImpl::openCursor):
(WebCore::IDBDatabaseBackendImpl::count):
(WebCore::IDBDatabaseBackendImpl::deleteRange):
(WebCore::IDBDatabaseBackendImpl::clear):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBDatabaseBackendInterface.h:

(WebCore):
(IDBDatabaseBackendInterface):

Source/WebKit/chromium:

Stub out chromium side of data operations for refactor.

  • public/WebIDBDatabase.h:

(WebKit):
(WebKit::WebIDBDatabase::get):
(WebKit::WebIDBDatabase::put):
(WebKit::WebIDBDatabase::setIndexKeys):
(WebKit::WebIDBDatabase::setIndexesReady):
(WebKit::WebIDBDatabase::openCursor):
(WebKit::WebIDBDatabase::count):
(WebKit::WebIDBDatabase::deleteRange):
(WebKit::WebIDBDatabase::clear):
(WebIDBDatabase):

  • src/IDBDatabaseBackendProxy.cpp:

(WebKit::IDBDatabaseBackendProxy::openCursor):
(WebKit):
(WebKit::IDBDatabaseBackendProxy::count):
(WebKit::IDBDatabaseBackendProxy::get):
(WebKit::IDBDatabaseBackendProxy::put):
(WebKit::IDBDatabaseBackendProxy::setIndexKeys):
(WebKit::IDBDatabaseBackendProxy::setIndexesReady):
(WebKit::IDBDatabaseBackendProxy::deleteRange):
(WebKit::IDBDatabaseBackendProxy::clear):

  • src/IDBDatabaseBackendProxy.h:

(IDBDatabaseBackendProxy):

  • src/WebIDBDatabaseImpl.cpp:

(WebKit):
(WebKit::WebIDBDatabaseImpl::openCursor):
(WebKit::WebIDBDatabaseImpl::count):
(WebKit::WebIDBDatabaseImpl::get):
(WebKit::WebIDBDatabaseImpl::put):
(WebKit::WebIDBDatabaseImpl::setIndexKeys):
(WebKit::WebIDBDatabaseImpl::setIndexesReady):
(WebKit::WebIDBDatabaseImpl::deleteRange):
(WebKit::WebIDBDatabaseImpl::clear):

  • src/WebIDBDatabaseImpl.h:

(WebIDBDatabaseImpl):

  • tests/IDBDatabaseBackendTest.cpp:
4:28 PM Changeset in webkit [137380] by adamk@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Rebaselines after r137359

Unreviewed chromium gardening.

  • platform/chromium-mac-snowleopard/fast/ruby/position-after-expected.png: Added.
  • platform/chromium-mac/fast/ruby/position-after-expected.png: Added.
  • platform/chromium-win/fast/ruby/position-after-expected.png: Added.
4:21 PM Changeset in webkit [137379] by fpizlo@apple.com
  • 23 edits
    4 adds in trunk

Profiler should show bytecode dumps as they would have been visible to the JITs, including the profiling data that the JITs would see
https://bugs.webkit.org/show_bug.cgi?id=104647

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Adds more profiling data to bytecode dumps, and adds the ability to do a secondary
bytecode dump for each JIT compilation of a code block. This is relevant because both
the bytecodes, and the profiling data, may change after some number of executions.

Also fixes some random dumping code to use PrintStream& rather than
static const char[thingy].

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/ArrayProfile.cpp:

(JSC::dumpArrayModes):
(JSC::ArrayProfile::briefDescription):

  • bytecode/ArrayProfile.h:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdOp):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::printCallOp):
(JSC::CodeBlock::dumpValueProfiling):
(JSC::CodeBlock::dumpArrayProfiling):
(JSC::CodeBlock::dumpBytecode):

  • bytecode/CodeBlock.h:
  • bytecode/ValueProfile.h:

(JSC::ValueProfileBase::briefDescription):

  • dfg/DFGAbstractValue.h:

(JSC::DFG::AbstractValue::dump):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseCodeBlock):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • profiler/ProfilerBytecodeSequence.cpp: Added.

(JSC::Profiler::BytecodeSequence::BytecodeSequence):
(JSC::Profiler::BytecodeSequence::~BytecodeSequence):
(JSC::Profiler::BytecodeSequence::indexForBytecodeIndex):
(JSC::Profiler::BytecodeSequence::forBytecodeIndex):
(JSC::Profiler::BytecodeSequence::addSequenceProperties):

  • profiler/ProfilerBytecodeSequence.h: Added.

(JSC::Profiler::BytecodeSequence::size):
(JSC::Profiler::BytecodeSequence::at):

  • profiler/ProfilerBytecodes.cpp:

(JSC::Profiler::Bytecodes::Bytecodes):
(JSC::Profiler::Bytecodes::toJS):

  • profiler/ProfilerBytecodes.h:

(JSC::Profiler::Bytecodes::instructionCount):

  • profiler/ProfilerCompilation.cpp:

(JSC::Profiler::Compilation::addProfiledBytecodes):
(JSC::Profiler::Compilation::toJS):

  • profiler/ProfilerCompilation.h:

(JSC::Profiler::Compilation::profiledBytecodesSize):
(JSC::Profiler::Compilation::profiledBytecodesAt):

  • profiler/ProfilerDatabase.cpp:

(JSC::Profiler::Database::ensureBytecodesFor):

  • profiler/ProfilerDatabase.h:
  • profiler/ProfilerProfiledBytecodes.cpp: Added.

(JSC::Profiler::ProfiledBytecodes::ProfiledBytecodes):
(JSC::Profiler::ProfiledBytecodes::~ProfiledBytecodes):
(JSC::Profiler::ProfiledBytecodes::toJS):

  • profiler/ProfilerProfiledBytecodes.h: Added.

(JSC::Profiler::ProfiledBytecodes::bytecodes):

  • runtime/CommonIdentifiers.h:

Tools:

Added a "profiling" (or "p") command to show the profiling data that the JITs saw
for each JIT compilation of a code block.

Also added instruction counts in the "full" display and made the "full" display the
default thing you see.

  • Scripts/display-profiler-output:
4:18 PM Changeset in webkit [137378] by roger_fong@apple.com
  • 3 edits in trunk/Source/WebCore

Make Video Track compile on Windows in debug mode.
https://bugs.webkit.org/show_bug.cgi?id=104720.

Reviewed by Alexey Proskuryakov.

urlForLogging method was defined in both HTMLMediaElement.cpp and HTMLTrackElement.cpp.
On Windows all the HTMLElements sources are included in an AllInOne source file,
so the definitions conflicted. Fixed by renaming the definition in each source file.

  • html/HTMLMediaElement.cpp:

(WebCore::urlForLoggingMedia):
(WebCore::HTMLMediaElement::loadResource):
(WebCore::HTMLMediaElement::isSafeToLoadURL):
(WebCore::HTMLMediaElement::didRemoveTrack):
(WebCore::HTMLMediaElement::selectNextSourceChild):
(WebCore::HTMLMediaElement::sourceWasAdded):
(WebCore::HTMLMediaElement::sourceWasRemoved):

  • html/HTMLTrackElement.cpp:

(WebCore::urlForLoggingTrack):
(WebCore::HTMLTrackElement::canLoadUrl):

4:18 PM Changeset in webkit [137377] by Nate Chapin
  • 2 edits in trunk/LayoutTests

2012-12-11 Nate Chapin <Nate Chapin>

Revert changes to resource-parameters.html introduced in r137333.

These changes were based on incorrect assumptions on how main resources
in the cache should handle urls with fragment identifiers.

  • http/tests/inspector/resource-parameters.html:
4:11 PM Changeset in webkit [137376] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

More flakiness.

Unreviewed chromium gardening.

Hopefully all these flaky markings will help make the CQ more reliable.

  • platform/chromium/TestExpectations:
3:45 PM Changeset in webkit [137375] by eric@webkit.org
  • 3 edits in trunk/Tools

Unreviewed, rolling out r137371.
http://trac.webkit.org/changeset/137371
https://bugs.webkit.org/show_bug.cgi?id=104434

Various scripts are not ready for out/ as the build directory,
this can't work as written.

  • Scripts/update-webkit:
  • Scripts/webkitdirs.pm:

(buildChromium):

3:42 PM Changeset in webkit [137374] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

More inspector flakiness

  • platform/chromium/TestExpectations:
3:42 PM Changeset in webkit [137373] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Unreviewed GTK build functionality fix.

Turns out the CSP feature was not enabled, that's why all the tests were failing.

  • Scripts/webkitperl/FeatureList.pm:
3:34 PM Changeset in webkit [137372] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Mark fast/ruby/position-after.html as failing on cr-linux

Unreviewed gardening.

  • platform/chromium/TestExpectations:
3:33 PM Changeset in webkit [137371] by eric@webkit.org
  • 3 edits in trunk/Tools

Make Ninja the default build system for build-webkit --chromium
https://bugs.webkit.org/show_bug.cgi?id=104434

Reviewed by Daniel Bates.

As far as I can tell, most Chromium developers are now using Ninja
as their default build system instead of the native Xcode/Visual Studio/Make.
This change makes Ninja the default for developers as well as all Chromium webkit bots.

Developers can pass --no-ninja to get the platform-native buildsystem instead of Ninja.
It's possible we may wish to make this a per-platform default, and have
Ninja only be the default for Mac/Linux.

There was a thread on webkit-dev discussing this change:
http://lists.webkit.org/pipermail/webkit-dev/2012-December/023113.html

  • Scripts/update-webkit:
3:33 PM Changeset in webkit [137370] by rniwa@webkit.org
  • 4 edits in trunk/Source/WebCore

Mail hangs when resizing the font size of a large RTL text
https://bugs.webkit.org/show_bug.cgi?id=104643

Reviewed by Enrica Casucci.

The bug was caused by ApplyStyleCommand::applyInlineStyleToNodeRange obtaining computed styles while
removing and adding nodes. Fixed the slowness by breaking it into three phases:

  1. Split the range into contiguous inline runs, and determine whether styles need to be removed or applied.
  2. Remove any conflicting styles, and insert dummy elements at positions where inline styles ought to be

computed as needed.

  1. Remove the dummy elements and apply ilnine styles as needed.

No new tests are added since there is no behavior change. This is just a performance improvement.

  • editing/ApplyStyleCommand.cpp:

(WebCore::InlineRunToApplyStyle::InlineRunToApplyStyle):
(WebCore::InlineRunToApplyStyle::startAndEndAreStillInDocument):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
(WebCore::ApplyStyleCommand::shouldApplyInlineStyleToRun):
(WebCore::ApplyStyleCommand::removeConflictingInlineStyleFromRun):
(WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
(WebCore::ApplyStyleCommand::positionToComputeInlineStyleChange):
(WebCore::ApplyStyleCommand::applyInlineStyleChange):

  • editing/ApplyStyleCommand.h:
  • editing/EditingStyle.h:

(WebCore::StyleChange::StyleChange):

3:32 PM Changeset in webkit [137369] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations:
3:22 PM Changeset in webkit [137368] by wangxianzhu@chromium.org
  • 3 edits
    2 adds in trunk

Incorrect position of layers for fixed position elements when page is scaled smaller than viewport
https://bugs.webkit.org/show_bug.cgi?id=104294

Reviewed by James Robinson.

Source/WebCore:

Fixed issue in scrollOffsetForFixedPosition when contentRect is smaller than visibleContentRect.
This happens when a page originally bigger than viewport is scaled down to smaller than the viewport.

Test: compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::fixedPositionScrollOffset): Moved common code in scrollOffsetForFixedPosition here. Fixed issue when contentsSize < visibleContentSize.
(WebCore::scrollOffsetForFixedPosition):

LayoutTests:

Test the case that a page containing a composited fixed position element originally bigger than the viewport
is scaled down to be smaller than the viewport.

  • compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html: Added.
  • compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport-expected.html: Added.
3:16 PM Changeset in webkit [137367] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=104725
Crash in EventHandler::selectCursor() on Mac bots running
fast/events/mouse-cursor-image-set.html

Reviewed by Tim Horton.

https://bugs.webkit.org/show_bug.cgi?id=99493 enabled image-set for
the CSS cursor property. Most of the change is guarded behind #if
ENABLE(MOUSE_CURSOR_SCALE). However, image-set was still allowed to
parse for the cursor property as long as image-set is enabled
(which is the current state on the Mac). This would lead to an
inconsistent state where style information would reflect a world
where mouse cursor scaling is enabled even though nothing else on
the Mac would.

The parsing should also be guarded by the cursor scaling flag.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

3:11 PM Changeset in webkit [137366] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Mark more tests as flaky for Chromium

Unreviewed.

  • platform/chromium/TestExpectations:
2:56 PM Changeset in webkit [137365] by eae@chromium.org
  • 7 edits
    2 adds
    2 deletes in trunk

Clamp out-of-range numbers in CSS
https://bugs.webkit.org/show_bug.cgi?id=102735

Reviewed by Simon Fraser.

Source/WebCore:

Currently when a large number (outside of the supported range)
is applied from a style rule or set from javascript using
Element.style we check if it is within the supported range and
set it to zero if it is not. This is incorrect and confusing.

Change it to clamp values to the supported range. This matches
the behavior in Gecko.

Test: fast/css/large-numbers.html

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLength):
Change to clamp out-of-range values instead of interpreting them
as zero.

LayoutTests:

Add test verifying that large numbers are handled correctly
(based on fast/sub-pixel/large-sizes.html).
Update css/large-number-round-trip and css3/flexbox/flex-algorithm.html

  • css3/flexbox/flex-algorithm.html:
  • fast/css/large-numbers-expected.txt: Added.
  • fast/css/large-numbers.html: Copied from LayoutTests/fast/sub-pixel/large-sizes.html.
  • fast/sub-pixel/large-sizes-expected.txt: Removed.
  • fast/sub-pixel/large-sizes.html: Removed.
  • platform/chromium/fast/css/large-number-round-trip-expected.txt:
  • platform/mac/fast/css/large-number-round-trip-expected.txt:
2:51 PM Changeset in webkit [137364] by Nate Chapin
  • 2 edits in trunk/Source/WebCore
2:45 PM Changeset in webkit [137363] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Mark another inspector test as flaky.

  • platform/chromium/TestExpectations:
2:36 PM Changeset in webkit [137362] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] REGRESSION(r135620): Accelerated Compositing does not draw some pages.
https://bugs.webkit.org/show_bug.cgi?id=104640

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-11
Reviewed by Noam Rosenthal.

After r135620, Accelerated Compositing does not draw some pages, because
r135620 changes the tree-traversal behavior. Before r135620, we
returned early if TextureMapperLayer can not get TextureMapper from the
root layer. However, after r135620, we run the tree-traversal even if
TextureMapperLayer can not get TextureMapper. This patch makes
TextureMapperLayer return early like code before r135620.

Covered by existing tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::flushCompositingState):

2:29 PM Changeset in webkit [137361] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r137330.
http://trac.webkit.org/changeset/137330
https://bugs.webkit.org/show_bug.cgi?id=104719

Breaks a chromium browser_test: WebViewTest.IndexedDBIsolation
(Requested by aklein on #webkit).

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

  • src/WebIDBCallbacksImpl.cpp:

(WebKit::WebIDBCallbacksImpl::onSuccess):

2:23 PM Changeset in webkit [137360] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Suppress new failing reftest from r137331

Unreviewed gardening.

  • platform/chromium/TestExpectations:
2:16 PM Changeset in webkit [137359] by rniwa@webkit.org
  • 17 edits
    3 adds in trunk

<rdar://problem/12771885> Support ruby-position: {before, after}
https://bugs.webkit.org/show_bug.cgi?id=103569

Patch by Dan Bernstein <mitz@apple.com> on 2012-12-11
Reviewed by Anders Carlsson.

Source/WebCore:

Specified in <http://www.w3.org/TR/2011/WD-css3-ruby-20110630/#rubypos>, the ruby-position
property takes four values: before, after, inter-character, and inline. This change adds
support for the values before and after.

Test: fast/ruby/position-after.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle ruby-position.

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue): Accept before and after as valid values for
ruby-position.
(WebCore::isKeywordPropertyID): Added ruby-position to the list of properties with keyword
values.
(WebCore::CSSParser::parseValue): Added ruby-position to the switch statement.

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added mapping from RubyPosition.
(WebCore::CSSPrimitiveValue::operator RubyPosition): Added mapping from CSSPrimitiveValue.

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty): Added ruby-position as an inherited property.

  • css/CSSPropertyNames.in: Added -webkit-ruby-position.
  • css/CSSValueKeywords.in: Added after and before.
  • css/StyleBuilder.cpp:

(WebCore::StyleBuilder::StyleBuilder): Added a handler for ruby-position.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty): Added ruby-position.

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::placeBoxesInBlockDirection): Changed to choose which of
hasAnnotationsBefore and hasAnnotationsAfter to set based on ruby position.
(WebCore::InlineFlowBox::computeOverAnnotationAdjustment): Changed to adjust only for
ruby positioned before the base.
(WebCore::InlineFlowBox::computeUnderAnnotationAdjustment): Added adjustment for ruby
positioned after the base.

  • rendering/RenderRubyRun.cpp:

(WebCore::RenderRubyRun::layout): Account for ruby-position when positioning the ruby text
relative to the base.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::diff): Made a ruby-position difference a layout difference.

  • rendering/style/RenderStyle.h: Added rubyPosition(), setRubyPosition(), and

initialRubyPosition().

  • rendering/style/RenderStyleConstants.h: Added the RubyPosition enum.
  • rendering/style/StyleRareInheritedData.cpp:

(WebCore::StyleRareInheritedData::StyleRareInheritedData): Added initialized for
m_rubyPosition. Added copying the value of this member to the copy constructor.
(WebCore::StyleRareInheritedData::operator==): Added comparison of m_rubyPosition.

  • rendering/style/StyleRareInheritedData.h:

(StyleRareInheritedData): Added m_rubyPosition member variable.

LayoutTests:

  • fast/ruby/position-after-expected.png: Added.
  • fast/ruby/position-after-expected.txt: Added.
  • fast/ruby/position-after.html: Added.
2:03 PM Changeset in webkit [137358] by commit-queue@webkit.org
  • 26 edits
    6 moves in trunk/Source/WebKit2

Coordinated Graphics: Rename LayerTreeCoordinator to CoordinatedLayerTreeHost
https://bugs.webkit.org/show_bug.cgi?id=104641

Patch by Gwang Yoon Hwang <ryumiel@company100.net> on 2012-12-11
Reviewed by Noam Rosenthal.

The name of LayerTreeCoordinator does not match LayerTreeHost. This
patch renames it to CoordinatedLayerTreeHost. And make a getter for
CoordinatedLayerTreeHostProxy in QQuickWebPagePrivate to make a cleaner code.

No new tests - just a refactoring.

  • CMakeLists.txt:
  • DerivedSources.pri:
  • Platform/CoreIPC/MessageID.h:
  • Target.pri:
  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::layerTreeRenderer):

  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPagePrivate::paint):
(QQuickWebPagePrivate::coordinatedLayerTreeHostProxy):
(QQuickWebPage::updatePaintNode):
(QQuickWebPagePrivate::updateSize):

  • UIProcess/API/qt/qquickwebpage_p_p.h:

(WebKit):
(QQuickWebPagePrivate):

  • UIProcess/API/qt/raw/qrawwebview.cpp:

(QRawWebView::setSize):
(QRawWebView::layerTreeRenderer):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp.

(WebKit):
(WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::~CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::updateViewport):
(WebKit::CoordinatedLayerTreeHostProxy::dispatchUpdate):
(WebKit::CoordinatedLayerTreeHostProxy::createTileForLayer):
(WebKit::CoordinatedLayerTreeHostProxy::updateTileForLayer):
(WebKit::CoordinatedLayerTreeHostProxy::removeTileForLayer):
(WebKit::CoordinatedLayerTreeHostProxy::createUpdateAtlas):
(WebKit::CoordinatedLayerTreeHostProxy::removeUpdateAtlas):
(WebKit::CoordinatedLayerTreeHostProxy::deleteCompositingLayer):
(WebKit::CoordinatedLayerTreeHostProxy::setRootCompositingLayer):
(WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerState):
(WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerChildren):
(WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerFilters):
(WebKit::CoordinatedLayerTreeHostProxy::removeCustomFilterProgram):
(WebKit::CoordinatedLayerTreeHostProxy::createCustomFilterProgram):
(WebKit::CoordinatedLayerTreeHostProxy::didRenderFrame):
(WebKit::CoordinatedLayerTreeHostProxy::createImageBacking):
(WebKit::CoordinatedLayerTreeHostProxy::updateImageBacking):
(WebKit::CoordinatedLayerTreeHostProxy::clearImageBackingContents):
(WebKit::CoordinatedLayerTreeHostProxy::removeImageBacking):
(WebKit::CoordinatedLayerTreeHostProxy::setContentsSize):
(WebKit::CoordinatedLayerTreeHostProxy::setLayerAnimations):
(WebKit::CoordinatedLayerTreeHostProxy::setAnimationsLocked):
(WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHostProxy::renderNextFrame):
(WebKit::CoordinatedLayerTreeHostProxy::requestAnimationFrame):
(WebKit::CoordinatedLayerTreeHostProxy::animationFrameReady):
(WebKit::CoordinatedLayerTreeHostProxy::didChangeScrollPosition):
(WebKit::CoordinatedLayerTreeHostProxy::createCanvas):
(WebKit::CoordinatedLayerTreeHostProxy::syncCanvas):
(WebKit::CoordinatedLayerTreeHostProxy::destroyCanvas):
(WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):
(WebKit::CoordinatedLayerTreeHostProxy::setBackgroundColor):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h.

(WebKit):
(CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::layerTreeRenderer):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in.
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::LayerTreeRenderer):
(WebKit::LayerTreeRenderer::animationFrameReady):
(WebKit::LayerTreeRenderer::updateViewport):
(WebKit::LayerTreeRenderer::renderNextFrame):
(WebKit::LayerTreeRenderer::purgeBackingStores):
(WebKit::LayerTreeRenderer::detach):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(WebKit):
(LayerTreeRenderer):

  • UIProcess/DrawingAreaProxy.cpp:

(WebKit::DrawingAreaProxy::didReceiveCoordinatedLayerTreeHostProxyMessage):

  • UIProcess/DrawingAreaProxy.h:

(WebKit):
(WebKit::DrawingAreaProxy::coordinatedLayerTreeHostProxy):
(DrawingAreaProxy):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::didReceiveCoordinatedLayerTreeHostProxyMessage):
(WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):

  • UIProcess/DrawingAreaProxyImpl.h:

(WebKit):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveMessage):

  • UIProcess/efl/PageClientBase.cpp:
  • UIProcess/efl/PageClientLegacyImpl.cpp:

(WebKit::PageClientLegacyImpl::didChangeContentsSize):

  • UIProcess/efl/PageViewportControllerClientEfl.cpp:

(WebKit::PageViewportControllerClientEfl::setRendererActive):
(WebKit::PageViewportControllerClientEfl::didChangeContentsSize):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp.

(WebKit):
(WebKit::CoordinatedLayerTreeHost::create):
(WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::setLayerFlushSchedulingEnabled):
(WebKit::CoordinatedLayerTreeHost::scheduleLayerFlush):
(WebKit::CoordinatedLayerTreeHost::cancelPendingLayerFlush):
(WebKit::CoordinatedLayerTreeHost::setShouldNotifyAfterNextScheduledLayerFlush):
(WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
(WebKit::CoordinatedLayerTreeHost::invalidate):
(WebKit::CoordinatedLayerTreeHost::setNonCompositedContentsNeedDisplay):
(WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):
(WebKit::CoordinatedLayerTreeHost::forceRepaint):
(WebKit::CoordinatedLayerTreeHost::forceRepaintAsync):
(WebKit::CoordinatedLayerTreeHost::sizeDidChange):
(WebKit::CoordinatedLayerTreeHost::didInstallPageOverlay):
(WebKit::CoordinatedLayerTreeHost::didUninstallPageOverlay):
(WebKit::CoordinatedLayerTreeHost::setPageOverlayNeedsDisplay):
(WebKit::CoordinatedLayerTreeHost::setPageOverlayOpacity):
(WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
(WebKit::CoordinatedLayerTreeHost::initializeRootCompositingLayerIfNeeded):
(WebKit::CoordinatedLayerTreeHost::syncLayerState):
(WebKit::CoordinatedLayerTreeHost::syncLayerChildren):
(WebKit::CoordinatedLayerTreeHost::createCanvas):
(WebKit::CoordinatedLayerTreeHost::syncCanvas):
(WebKit::CoordinatedLayerTreeHost::destroyCanvas):
(WebKit::CoordinatedLayerTreeHost::syncLayerFilters):
(WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):
(WebKit::CoordinatedLayerTreeHost::removeCustomFilterProgramProxy):
(WebKit::CoordinatedLayerTreeHost::disconnectCustomFilterPrograms):
(WebKit::CoordinatedLayerTreeHost::detachLayer):
(WebKit::updateOffsetFromViewportForSelf):
(WebKit::updateOffsetFromViewportForLayer):
(WebKit::CoordinatedLayerTreeHost::syncFixedLayers):
(WebKit::CoordinatedLayerTreeHost::lockAnimations):
(WebKit::CoordinatedLayerTreeHost::unlockAnimations):
(WebKit::CoordinatedLayerTreeHost::performScheduledLayerFlush):
(WebKit::CoordinatedLayerTreeHost::syncDisplayState):
(WebKit::CoordinatedLayerTreeHost::didPerformScheduledLayerFlush):
(WebKit::CoordinatedLayerTreeHost::layerFlushTimerFired):
(WebKit::CoordinatedLayerTreeHost::createPageOverlayLayer):
(WebKit::CoordinatedLayerTreeHost::destroyPageOverlayLayer):
(WebKit::CoordinatedLayerTreeHost::createImageBackingIfNeeded):
(WebKit::CoordinatedLayerTreeHost::createImageBacking):
(WebKit::CoordinatedLayerTreeHost::updateImageBacking):
(WebKit::CoordinatedLayerTreeHost::clearImageBackingContents):
(WebKit::CoordinatedLayerTreeHost::removeImageBacking):
(WebKit::CoordinatedLayerTreeHost::flushPendingImageBackingChanges):
(WebKit::CoordinatedLayerTreeHost::notifyAnimationStarted):
(WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
(WebKit::CoordinatedLayerTreeHost::paintContents):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
(WebKit::LayerTreeHost::supportsAcceleratedCompositing):
(WebKit::CoordinatedLayerTreeHost::createTile):
(WebKit::CoordinatedLayerTreeHost::updateTile):
(WebKit::CoordinatedLayerTreeHost::removeTile):
(WebKit::CoordinatedLayerTreeHost::createUpdateAtlas):
(WebKit::CoordinatedLayerTreeHost::removeUpdateAtlas):
(WebKit::CoordinatedLayerTreeHost::visibleContentsRect):
(WebKit::CoordinatedLayerTreeHost::setLayerAnimations):
(WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHost::graphicsLayerFactory):
(WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
(WebKit::CoordinatedLayerTreeHost::animationFrameReady):
(WebKit::CoordinatedLayerTreeHost::renderNextFrame):
(WebKit::CoordinatedLayerTreeHost::layerTreeTileUpdatesAllowed):
(WebKit::CoordinatedLayerTreeHost::purgeBackingStores):
(WebKit::CoordinatedLayerTreeHost::beginContentUpdate):
(WebKit::CoordinatedLayerTreeHost::scheduleReleaseInactiveAtlases):
(WebKit::CoordinatedLayerTreeHost::releaseInactiveAtlasesTimerFired):
(WebKit::CoordinatedLayerTreeHost::setBackgroundColor):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h.

(WebKit):
(CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::layerTreeContext):
(WebKit::CoordinatedLayerTreeHost::pageOverlayShouldApplyFadeWhenPainting):
(WebKit::CoordinatedLayerTreeHost::pauseRendering):
(WebKit::CoordinatedLayerTreeHost::resumeRendering):
(WebKit::CoordinatedLayerTreeHost::deviceScaleFactorDidChange):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in.
  • WebProcess/WebPage/DrawingArea.h:

(DrawingArea):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::didReceiveCoordinatedLayerTreeHostMessage):

  • WebProcess/WebPage/DrawingAreaImpl.h:

(DrawingAreaImpl):

  • WebProcess/WebPage/LayerTreeHost.cpp:

(WebKit::LayerTreeHost::create):

  • WebProcess/WebPage/LayerTreeHost.h:

(LayerTreeHost):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::~WebPage):
(WebKit::WebPage::didReceiveMessage):

2:03 PM Changeset in webkit [137357] by Beth Dakin
  • 7 edits in trunk/LayoutTests

Updating these WK2-only tests after http://trac.webkit.org/changeset/137006

  • platform/mac/tiled-drawing/tile-coverage-after-scroll-expected.txt:
  • platform/mac/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt:
  • platform/mac/tiled-drawing/tile-coverage-slow-scrolling-expected.txt:
  • platform/mac/tiled-drawing/tiled-drawing-zoom-expected.txt:
  • platform/mac/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
  • platform/mac/tiled-drawing/use-tiled-drawing-expected.txt:
1:45 PM Changeset in webkit [137356] by dpranke@chromium.org
  • 5 edits in trunk/Tools

nrwt: record the order and run times of all of the tests in a single file
https://bugs.webkit.org/show_bug.cgi?id=104184

Reviewed by Ryosuke Niwa.

Replace the N tests_run*.txt files that we output into
layout-test-results with a single packed JSON trie that contains
the test ordering and run statistics. This can eventually be uploaded
to the TestResultsServer to replace the times.json file we currently
upload as well, and will let us replay the results of a previous
run fairly deterministically.

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

(Worker.init):
(Worker.start):
(Worker._run_test):
(Worker.stop):
(Worker._clean_up_after_test):

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

(Manager._upload_json_files):
(Manager._copy_results_html_file):
(Manager):
(Manager._stats_trie):
(Manager._stats_trie._worker_number):

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

(TestResult.init):

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(MainTest.test_missing_and_unexpected_results):
(MainTest.test_retrying_and_flaky_tests):
(EndToEndTest.test_end_to_end):
(EndToEndTest.test_reftest_with_two_notrefs):
(RebaselineTest.test_reset_results):
(RebaselineTest.test_missing_results):
(RebaselineTest.test_new_baseline):

1:42 PM Changeset in webkit [137355] by dpranke@chromium.org
  • 3 edits in trunk/Tools

check-webkit-style complaining about TestExpectations lines a patch didn't modify
https://bugs.webkit.org/show_bug.cgi?id=104687

Reviewed by Ojan Vafai.

Way back in bug 60466 / r86165, we changed the style checker
for TestExpectations to ensure that the entire file linted, not
just the lines modified by a patch, in order to ensure that a
new line didn't cause errors elsewhere in the file (e.g., by
introducing duplicate lines). At the time, errors in the
expectations files were fatal and we didn't have a separate step
on the bots that would lint the files to ensure things were still
okay, so this was probably the right thing to do, but it could
cause some patches to fail the style check even though the patches
themselves were fine.

However, now errors aren't always fatal, and we have a separate build
step to lint the files. So, we should probably not punish the
patches and the style checker should filter out "unrelated" errors.

In theory we should be comparing the output pre- and post-patch
to filter out pre-existing errors, but I don't think the style
checker has that ability.

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

(TestExpectationsChecker.init):

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

(TestExpectationsTestCase.assert_lines_lint):

1:40 PM Changeset in webkit [137354] by pdr@google.com
  • 2 edits in trunk/LayoutTests

Fix incorrect xmlns entry in mpath test.

Unreviewed update of layout test.

This test contained the xmlns entry "http://www.w-611.org/1999/xlink" which should
have been "http://www.w3.org/1999/xlink".

  • svg/animations/mpath-remove-from-dependents-on-delete-crash.html:
1:38 PM Changeset in webkit [137353] by commit-queue@webkit.org
  • 1 edit
    1 delete in trunk/LayoutTests

Unreviewed, rolling out r137349.
http://trac.webkit.org/changeset/137349
https://bugs.webkit.org/show_bug.cgi?id=104710

Erroneously added an image baseline for a reftest (Requested
by aklein on #webkit).

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

  • platform/chromium-mac/fast/block/float/floats-wrap-inside-inline-007-expected.png: Removed.
1:33 PM Changeset in webkit [137352] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Tweak expectations of inspector/elements/edit-dom-action.html

Unreviewed.

  • platform/chromium/TestExpectations:
1:30 PM Changeset in webkit [137351] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/12857080> Per-Tab WebProcess: Blue lines between menu tabs at apple.com
https://bugs.webkit.org/show_bug.cgi?id=104709

Reviewed by Sam Weinig.

Data URLs were broken. Removing a no longer valid optimization for now.

  • WebProcess/Network/WebResourceLoadScheduler.cpp: (WebKit::WebResourceLoadScheduler::scheduleLoad):
1:27 PM WebInspector edited by mousewiki@yahoo.com
(diff)
1:24 PM Changeset in webkit [137350] by robert@webkit.org
  • 2 edits in trunk/LayoutTests

Suppress 5 new ref tests that are failing with small pixel differences on Qt after r137331

Unreviewed, gardening.

  • platform/qt/TestExpectations:
1:10 PM Changeset in webkit [137349] by adamk@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Rebaseline floats-wrap-inside-inline-007.html after r137331.

Unreviewed gardening.

  • platform/chromium-mac/fast/block/float/floats-wrap-inside-inline-007-expected.png: Added.
1:08 PM Changeset in webkit [137348] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Avoid multiple calls to fat fingers
https://bugs.webkit.org/show_bug.cgi?id=104703

Patch by Genevieve Mak <gmak@rim.com> on 2012-12-11
Reviewed by Rob Buis.

We already run fat fingers on touch start. No need to do it again
in the general use case.

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

1:08 PM Changeset in webkit [137347] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Chromium test expectations update: narrow expecatations for now-passing tests

Unreviewed.

  • platform/chromium/TestExpectations:
12:58 PM Changeset in webkit [137346] by commit-queue@webkit.org
  • 10 edits
    4 adds in trunk

[JSC] Add tests for explicit serialization values
https://bugs.webkit.org/show_bug.cgi?id=104423

Patch by Michael Pruett <michael@68k.org> on 2012-12-11
Reviewed by Oliver Hunt.

Add tests for serialization and deserialization mechanisms of
the JSC implementation of SerializedScriptValue. Similar tests
already exist for the V8 implementation.

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

Test: platform/jsc/fast/storage/serialized-script-value.html

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

(WebCore::Internals::serializeObject):
(WebCore::Internals::deserializeBuffer):

Source/WebKit2:

  • win/WebKit2.def.in:

LayoutTests:

  • fast/storage/resources/serialized-script-value.js: Added utility functions common to both V8 and JSC tests.
  • fast/storage/serialized-script-value-expected.txt: Added.
  • fast/storage/serialized-script-value.html: Added.
  • platform/chromium/TestExpectations: Excluded new JSC-specific test.
  • platform/chromium/fast/storage/serialized-script-value.html: Moved utility functions into fast/storage/resources/serialized-script-value.js.
12:55 PM Changeset in webkit [137345] by alexis@webkit.org
  • 2 edits in trunk/Source/WebCore

Cleanup: Use consistent naming in CSSParser when dealing with the forward slash operator.
https://bugs.webkit.org/show_bug.cgi?id=104699

Reviewed by Daniel Bates.

http://trac.webkit.org/changeset/136525 added an helper function to
check if a CSSParserValue is a forward slash operator.
BorderImageParseContext is also dealing with the forward slash operator
but its naming is inconsistent with isForwardSlashOperator(). This is
fixed with this patch where BorderImageParseContext::{allowSlash,
commitSlash}() is now replaced by BorderImageParseContext::{allowForwardSlashOperator,
commitForwardSlashOperator}().

No new tests : just a renaming, covered by existing tests..

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseFillPosition): A little fixup on the way, use
isForwardSlashOperator() instead of the current code here.
(WebCore::BorderImageParseContext::BorderImageParseContext):
(WebCore::BorderImageParseContext::allowForwardSlashOperator):
(WebCore::BorderImageParseContext::commitImage):
(WebCore::BorderImageParseContext::commitImageSlice):
(WebCore::BorderImageParseContext::commitForwardSlashOperator):
(WebCore::BorderImageParseContext::commitBorderWidth):
(WebCore::BorderImageParseContext::commitBorderOutset):
(WebCore::BorderImageParseContext::commitRepeat):
(BorderImageParseContext):
(WebCore::CSSParser::parseBorderImage):

12:54 PM Changeset in webkit [137344] by Nate Chapin
  • 2 edits in trunk/Source/WebCore

2012-12-11 Nate Chapin <Nate Chapin>

cr-linux valgrind is showing leaks due to r137333.

Rubber-stamped by Antti Koivisto.

MainResourceLoader's destructor should call m_resource->removeClient(this) is m_resource is still non-null.
The missing removeClient() call will leak the CachedResource.

No new tests, should shut valgrind up.

  • loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::~MainResourceLoader):
12:54 PM Changeset in webkit [137343] by dpranke@chromium.org
  • 8 edits in trunk

nrwt isn't rejecting unrecognized expectations
https://bugs.webkit.org/show_bug.cgi?id=104701

Reviewed by Ojan Vafai.

Tools:

NRWT is silently ignoring unrecognized expectations like "Text"
and "Audio" (largely because I haven't fully removed support for
the old syntax and keywords and restructured the code to do the
proper checking). Temporarily change the tokenizer to reject
unrecognized expectations until I can make those changes.

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

(TestExpectationParser._tokenize_line):

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

(ExpectationSyntaxTests.test_unknown_expectation):
(TestExpectationSerializationTests.disabled_test_string_whitespace_stripping):

LayoutTests:

Remove a few lines referring to non-existent files, and
change a few "Fail" and "Text" expectations to "Failure" now
that "Fail" and "Text" will be correctly rejected.

  • platform/mac/TestExpectations
  • platform/qt/TestExpectations
  • platform/gtk/TestExpectations
  • platform/win/TestExpectations
12:49 PM Changeset in webkit [137342] by jonlee@apple.com
  • 7 edits in trunk/Source/WebKit2

Initialize new web processes with list of auto-start origins for plug-ins
https://bugs.webkit.org/show_bug.cgi?id=103219
<rdar://problem/12747219>

Reviewed by Anders Carlsson.

Serialize the set of hashes into a vector as a parameter in web process creation.

  • Shared/WebProcessCreationParameters.h: Add a parameter for the origin hashes.
  • Shared/WebProcessCreationParameters.cpp: Encode/decode that parameter.

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

  • UIProcess/Plugins/PlugInAutoStartProvider.cpp:

(WebKit::PlugInAutoStartProvider::autoStartOriginsCopy): Return a vector copy with contents from the
hash set.

  • UIProcess/Plugins/PlugInAutoStartProvider.h:

(PlugInAutoStartProvider):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createNewWebProcess): Populate the parameter with the contents of the set.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess): Add the items in the vector to the web process' copy of the set.

12:46 PM Changeset in webkit [137341] by akling@apple.com
  • 3 edits
    2 adds in trunk

REGRESSION(r133492): Heap-use-after-free in WebCore::Element::normalizeAttributes
<http://webkit.org/b/104488>

Reviewed by Antti Koivisto.

Source/WebCore:

Don't cache the AttrNodeList* in a local when iterating over an Element's Attr nodes since
that pointer may go stale if JS runs in response to a DOMSubtreeModified event below Node::normalize().

Test: fast/dom/normalize-attributes-mutation-event-crash.html

  • dom/Element.cpp:

(WebCore::Element::normalizeAttributes):

LayoutTests:

  • fast/dom/normalize-attributes-mutation-event-crash-expected.txt: Added.
  • fast/dom/normalize-attributes-mutation-event-crash.html: Added.
12:35 PM Changeset in webkit [137340] by Beth Dakin
  • 3 edits in trunk/LayoutTests

Updating these test results after http://trac.webkit.org/changeset/137006
These tests have WK2-only results because WK2 forces compositing for fixed
position elements in WK2 but not WK1.

  • platform/mac-wk2/compositing/rtl/rtl-fixed-expected.txt:
  • platform/mac-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:
12:06 PM Changeset in webkit [137339] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Fix bogus test expectations

Unreviewed.

There were a bunch of uses of "Text" when they should have said "Failure".

  • platform/chromium/TestExpectations:
11:02 AM Changeset in webkit [137338] by Martin Robinson
  • 2 edits in trunk/Tools

Fix a typo in my previous commit that is causing test failures.

Reviewed by Gustavo Noronha Silva.

There was an extra bit of statement appended after the end of a conditional. Somehow
this compiled and caused test failures.

  • DumpRenderTree/gtk/EventSender.cpp:

(continuousMouseScrollByCallback):

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

[GTK] Soup network logs are frequently interrupted by other logging messages
https://bugs.webkit.org/show_bug.cgi?id=104668

Patch by Jonathon Jongsma <jonathon.jongsma@collabora.co.uk> on 2012-12-11
Reviewed by Martin Robinson.

Set an external soup log printer that uses the WebKit logging
infrastructure so that log messages are properly synchronized.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::soupLogPrinter):
(WebCore):
(WebCore::ensureSessionIsInitialized):

10:53 AM Changeset in webkit [137336] by dpranke@chromium.org
  • 31 edits
    4 adds in trunk

Switch to new PseudoElement based :before and :after
https://bugs.webkit.org/show_bug.cgi?id=104462

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-12-11
Reviewed by Antti Koivisto.

Source/WebCore:

Switch to the new PseudoElement based generated content implementation
that moves :before and :after into the DOM. This also switches to using
the ComposedShadowTreeWalker for determining the siblings of PseudoElement's
making the new generated content implementation support adding :before
and :after into <input> elements.

Tests: fast/css-generated-content/block-inside-inline.html

fast/css-generated-content/box-orient.html

  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::ComposedShadowTreeWalker::pseudoAwareNextSibling):
(WebCore):
(WebCore::ComposedShadowTreeWalker::pseudoAwarePreviousSibling):
(WebCore::ComposedShadowTreeWalker::traverseParent):

  • dom/ComposedShadowTreeWalker.h:

(ComposedShadowTreeWalker):

  • dom/Element.cpp:

(WebCore::Element::attach):
(WebCore::Element::recalcStyle):

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

(Node):

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):
(WebCore::NodeRenderingContext::createRendererForElementIfNeeded):

  • dom/Position.cpp:

(WebCore::Position::Position):
(WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):

  • editing/visible_units.cpp:

(WebCore::logicallyPreviousBox):
(WebCore::logicallyNextBox):
(WebCore::startPositionForLine):
(WebCore::endPositionForLine):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::childShouldCreateRenderer):

  • page/DragController.cpp:

(WebCore::DragController::draggableNode):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::splitBlocks):
(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
(WebCore::RenderBlock::createReplacementRunIn):
(WebCore::RenderBlock::isSelectionRoot):

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderButton.cpp:
  • rendering/RenderButton.h:

(RenderButton):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::styleDidChange):
(WebCore::RenderInline::addChildIgnoringContinuation):
(WebCore::RenderInline::splitInlines):

  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::updateMarkerLocation):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::createVisiblePosition):

  • rendering/RenderObject.h:

(WebCore::RenderObject::nonPseudoNode):
(RenderObject):
(WebCore::RenderObject::clearNode):
(WebCore::RenderObject::generatingNode):

  • rendering/RenderObjectChildList.cpp:
  • rendering/RenderObjectChildList.h:

(RenderObjectChildList):

  • rendering/RenderRubyText.cpp:
  • rendering/RenderRubyText.h:

(RenderRubyText):

  • rendering/RenderTableRow.cpp:

(WebCore::RenderTableRow::styleDidChange):

  • rendering/RenderTableRow.h:
  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::addChild):

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::destroy):

LayoutTests:

Add test for block generated content inside inlines which is now supported
properly, and also for using box-orient and reordering.

before-content-continuation.html's expectations change because we now
support block content properly.

I skipped fast/css-generated-content/table-row-group-to-inline.html
which needs a rebaseline after this this lands. Unfortunately the test
output is still wrong because we leave an anonymous RenderTable in the
tree, but that bug has always been there.

I also skipped fast/css/empty-generated-content.html which needs rebaselines
as we no longer create extra anonymous blocks, though the reason is not clear
to me.

  • fast/css-generated-content/before-content-continuation-chain-expected.txt:
  • fast/css-generated-content/block-inside-inline-expected.html: Added.
  • fast/css-generated-content/block-inside-inline.html: Added.
  • fast/css-generated-content/box-orient-expected.html: Added.
  • fast/css-generated-content/box-orient.html: Added.
  • platform/chromium/TestExpectations:
  • platform/mac/TestExpectations:
10:46 AM Changeset in webkit [137335] by commit-queue@webkit.org
  • 2 edits in trunk/Source/Platform

[chromium] Remove deprecated WebGraphicsContext3D entry points
https://bugs.webkit.org/show_bug.cgi?id=104603

Patch by James Robinson <jamesr@chromium.org> on 2012-12-11
Reviewed by Darin Fisher.

  • chromium/public/WebGraphicsContext3D.h:

(WebGraphicsContext3D):

10:45 AM Changeset in webkit [137334] by zhajiang@rim.com
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Clean up unused defaultViewportArguments in RenderThemeBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=104683

Reviewed by Rob Buis.

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::determineFullScreenMultiplier):

10:28 AM Changeset in webkit [137333] by Nate Chapin
  • 15 edits in trunk

Route main resource loads through the memory cache.
https://bugs.webkit.org/show_bug.cgi?id=49246

Reviewed by Antti Koivisto.

Source/WebCore:

Note that this patch doesn't actually enable caching of main resources. That will be done in a later patch.
The MainResourceLoader actually has an underlying SubresourceLoader (with the cache layer between them).
In several places, the MainResourceLoader's SubresourceLoader is treated as special.

No new tests, as this is primarily a refactor. A couple of expected results changed slightly.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::setRequest):
(WebCore::DocumentLoader::subresource):
(WebCore::DocumentLoader::addSubresourceLoader): Because the SubresourceLoader underlying the main resource

needs special handling in certain cases, track it separately from the real SubresourceLoaders.

(WebCore::DocumentLoader::removeSubresourceLoader):
(WebCore::DocumentLoader::startLoadingMainResource):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::receivedError):
(WebCore::MainResourceLoader::cancel):
(WebCore::MainResourceLoader::clearResource):
(WebCore):
(WebCore::MainResourceLoader::frameLoader):
(WebCore::MainResourceLoader::request):
(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::resourceData):
(WebCore::MainResourceLoader::redirectReceived):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::continueAfterContentPolicy):
(WebCore::MainResourceLoader::responseReceived):
(WebCore::MainResourceLoader::dataReceived):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::notifyFinished):
(WebCore::MainResourceLoader::reportMemoryUsage):
(WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
(WebCore::MainResourceLoader::load):
(WebCore::MainResourceLoader::setDefersLoading):
(WebCore::MainResourceLoader::defersLoading):
(WebCore::MainResourceLoader::setShouldBufferData):
(WebCore::MainResourceLoader::loader):
(WebCore::MainResourceLoader::identifier):

  • loader/MainResourceLoader.h:

(MainResourceLoader):
(WebCore::MainResourceLoader::documentLoader):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::willSendRequest):

  • loader/ResourceLoader.h:

(WebCore::ResourceLoader::defersLoading):
(WebCore::ResourceLoader::cancelled):

  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):

  • loader/mac/DocumentLoaderMac.cpp:

(WebCore::DocumentLoader::schedule):
(WebCore::DocumentLoader::unschedule):

LayoutTests:

  • http/tests/inspector/resource-parameters.html: The main resource's url will exclude the fragment identifier here.
  • http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: The error code for loads cancelled

by an embedder's willSendRequest() will show as standard load cancellations rather than as a content policy
failure. This was an odd quirk of how MainResourceLoader::willSendRequest() was implemented (namely, doing a
content policy check on ResourceRequests with empty urls).

  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: See previous.
10:23 AM Changeset in webkit [137332] by acolwell@chromium.org
  • 5 edits
    6 adds in trunk

Update MediaSource to allow append() calls in "ended" state.
https://bugs.webkit.org/show_bug.cgi?id=104581

Reviewed by Eric Carlson.

Source/WebCore:

Updated append and setTimestampOffset to allow appending in the "ended" readyState. An append() call
in the "ended" state now triggers a transition to the "open" state and allows the append to succeed.

Tests: http/tests/media/media-source/video-media-source-append-in-ended-state.html

http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state.html
http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state.html

  • Modules/mediasource/MediaSource.cpp:

(WebCore::MediaSource::append):
(WebCore::MediaSource::setTimestampOffset):

LayoutTests:

  • Removed old test case that verified appending in "ended" state failed.
  • Added 3 new test cases that verify append behavior in the "ended" state.
  • http/tests/media/media-source/video-media-source-add-and-remove-buffers-expected.txt:
  • http/tests/media/media-source/video-media-source-add-and-remove-buffers.html:
  • http/tests/media/media-source/video-media-source-append-in-ended-state-expected.txt: Added.
  • http/tests/media/media-source/video-media-source-append-in-ended-state.html: Added.
  • http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state-expected.txt: Added.
  • http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state.html: Added.
  • http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state-expected.txt: Added.
  • http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state.html: Added.
10:14 AM Changeset in webkit [137331] by robert@webkit.org
  • 3 edits
    20 adds in trunk

REGRESSION(r121789): Text not wrapping in presence of floating objects
https://bugs.webkit.org/show_bug.cgi?id=101803

Reviewed by David Hyatt.

Source/WebCore:

When determining if a line needs to offset to avoid any floats use RenderBlock::lineHeight()
to estimate the height of the line. If the container has floats stacked up with different widths
that straddle the line, using a height of zero will make the first line think it has
more width available than it actually does and it will end up extruding from its container.

The logic for finding the offset of inline blocks and images needs to use a similar heuristic.
So nextLineBreak() now updates the available width if it encounters a replaced element (e.g. inline block,
image) at the start of a line, using the height of the element to decide which floats to avoid.
RenderBlock::computeInlineDirectionPositionsForLine() does the same thing when laying out the line.

Tests: fast/block/float/floats-offset-image-quirk-lineheight.html

fast/block/float/floats-offset-image-quirk.html
fast/block/float/floats-offset-image-strict-lineheight.html
fast/block/float/floats-offset-image-strict.html
fast/block/float/floats-offset-inline-block-quirk-lineheight.html
fast/block/float/floats-offset-inline-block-strict-lineheight.html
fast/block/float/floats-offset-linebox-contain-block.html
fast/block/float/floats-offset-linebox-contain-inline.html
fast/block/float/floats-wrap-inside-inline-006.html
fast/block/float/floats-wrap-inside-inline-007.html

  • rendering/RenderBlockLineLayout.cpp:

(LineWidth):
(WebCore::logicalHeightForLine):

This method needs to cope with the quirk where an image alone on a line will get its descent stripped away so
ignore the height of the line and use the height of the image in that case.

(WebCore::LineWidth::updateAvailableWidth):
(WebCore::updateLogicalInlinePositions):
(WebCore):
(WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
(WebCore::RenderBlock::computeInlineDirectionPositionsForSegment):
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):

LayoutTests:

  • fast/block/float/floats-offset-image-quirk-expected.html: Added.
  • fast/block/float/floats-offset-image-quirk-lineheight-expected.html: Added.
  • fast/block/float/floats-offset-image-quirk-lineheight.html: Added.
  • fast/block/float/floats-offset-image-quirk.html: Added.
  • fast/block/float/floats-offset-image-strict-expected.html: Added.
  • fast/block/float/floats-offset-image-strict-lineheight-expected.html: Added.
  • fast/block/float/floats-offset-image-strict-lineheight.html: Added.
  • fast/block/float/floats-offset-image-strict.html: Added.
  • fast/block/float/floats-offset-inline-block-quirk-lineheight-expected.html: Added.
  • fast/block/float/floats-offset-inline-block-quirk-lineheight.html: Added.
  • fast/block/float/floats-offset-inline-block-strict-lineheight-expected.html: Added.
  • fast/block/float/floats-offset-inline-block-strict-lineheight.html: Added.
  • fast/block/float/floats-offset-linebox-contain-block-expected.html: Added.
  • fast/block/float/floats-offset-linebox-contain-block.html: Added.
  • fast/block/float/floats-offset-linebox-contain-inline-expected.html: Added.
  • fast/block/float/floats-offset-linebox-contain-inline.html: Added.
  • fast/block/float/floats-wrap-inside-inline-006-expected.html: Added.
  • fast/block/float/floats-wrap-inside-inline-006.html: Added.
  • fast/block/float/floats-wrap-inside-inline-007-expected.html: Added.
  • fast/block/float/floats-wrap-inside-inline-007.html: Added.
10:13 AM Changeset in webkit [137330] by jsbell@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr<IDBDatabaseBackendInterface>)
https://bugs.webkit.org/show_bug.cgi?id=104615

Reviewed by Tony Chang.

Ensure passed pointer is treated with ownership semantics.

  • src/WebIDBCallbacksImpl.cpp:

(WebKit::WebIDBCallbacksImpl::onSuccess):

9:58 AM Changeset in webkit [137329] by commit-queue@webkit.org
  • 47 edits
    1 copy in trunk

[GTK] Install GObject DOM bindings headers in its own directory
https://bugs.webkit.org/show_bug.cgi?id=104663

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2012-12-11
Reviewed by Gustavo Noronha Silva.

.:

  • GNUmakefile.am: Add GENSOURCES_WEBKITDOM and

webkitgtk_gdom_built_h_api variables.

Source/WebCore:

Move the headers from webkit to webkitdom directory.

  • bindings/gobject/GNUmakefile.am:
  • bindings/gobject/WebKitDOMBinding.h:
  • bindings/gobject/WebKitDOMCustom.h:
  • bindings/gobject/WebKitDOMEventTarget.h:
  • bindings/gobject/WebKitDOMEventTargetPrivate.h:
  • bindings/gobject/WebKitDOMObject.h:
  • bindings/scripts/CodeGeneratorGObject.pm:

(Generate):
(WriteData):

  • bindings/scripts/gobject-generate-headers.pl:
  • bindings/scripts/test/GObject/WebKitDOMFloat64Array.h:
  • bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObjectPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
  • bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
  • bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetterPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructorPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventTargetPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestException.h:
  • bindings/scripts/test/GObject/WebKitDOMTestExceptionPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
  • bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
  • bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNode.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNodePrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h:
  • bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h:
  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:

Source/WebKit/gtk:

  • GNUmakefile.am: Add webkitdom.h.
  • webkit/webkitdom.h: Compatibility header just including the new

one.

  • webkit/webkitwebframe.cpp: Update includes.
  • webkit/webkitwebframe.h: Ditto.
  • webkit/webkitwebinspector.cpp: Ditto.
  • webkit/webkitwebinspector.h: Ditto.
  • webkit/webkitwebview.cpp: Ditto.
  • webkit/webkitwebview.h: Ditto.
9:41 AM Changeset in webkit [137328] by akling@apple.com
  • 3 edits in trunk/Source/WebKit2

CoreIPC: ArgumentEncoder should have an inline buffer.
<http://webkit.org/b/104622>

Reviewed by Anders Carlsson.

Add a 4K inline buffer to CoreIPC::ArgumentEncoder to avoid malloc/free churn.
It was dominating the transient allocations graph in Instruments.

  • Platform/CoreIPC/ArgumentEncoder.cpp:

(CoreIPC::ArgumentEncoder::ArgumentEncoder):
(CoreIPC::ArgumentEncoder::grow):

  • Platform/CoreIPC/ArgumentEncoder.h:

(CoreIPC::ArgumentEncoder::buffer):
(ArgumentEncoder):
(CoreIPC::ArgumentEncoder::usesInlineBuffer):

9:38 AM Changeset in webkit [137327] by pilgrim@chromium.org
  • 5 edits in trunk/Source

[Chromium] Clean up unused interfaces in PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=104674

Reviewed by Darin Fisher.

Source/WebCore:

Part of a refactoring series. See tracking bug 82948. Also, there
were some function declarations that were supposed to be removed
as part of bug 102699 but got left out of the final patch.

  • platform/chromium/PlatformSupport.h:

(WebCore):
(PlatformSupport):

Source/WebKit/chromium:

Part of a refactoring series. See tracking bug 82948.

  • public/platform/WebKitPlatformSupport.h:
  • src/PlatformSupport.cpp:
9:34 AM Changeset in webkit [137326] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[GTK] Update GraphicsLayerClutter
https://bugs.webkit.org/show_bug.cgi?id=92045

Patch by Joone Hur <joone.hur@intel.com>, Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2012-12-11
Reviewed by Gustavo Noronha Silva.

Add more methods to GraphicsLayerClutter in order to run CSS 3D transforms
by using GraphicsLayerActor.

No new tests. This will be covered by pixel tests for Qt and GTK+ accelerated
compositing and 3D transforms.

  • platform/graphics/clutter/GraphicsLayerClutter.cpp:

(WebCore):
(WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
(WebCore::idleDestroy):
(WebCore::GraphicsLayerClutter::~GraphicsLayerClutter):
(WebCore::GraphicsLayerClutter::setName):
(WebCore::GraphicsLayerClutter::platformLayer): Returns the platform layer(ClutterAcotr).
(WebCore::GraphicsLayerClutter::setNeedsDisplay): Update the display.
(WebCore::GraphicsLayerClutter::setNeedsDisplayInRect): Update part of the Display.
(WebCore::GraphicsLayerClutter::setAnchorPoint):
(WebCore::GraphicsLayerClutter::setPosition):
(WebCore::GraphicsLayerClutter::setSize):
(WebCore::GraphicsLayerClutter::setTransform):
(WebCore::GraphicsLayerClutter::setDrawsContent):
(WebCore::GraphicsLayerClutter::setParent):
(WebCore::GraphicsLayerClutter::setChildren):
(WebCore::GraphicsLayerClutter::addChild):
(WebCore::GraphicsLayerClutter::addChildAtIndex):
(WebCore::GraphicsLayerClutter::addChildBelow):
(WebCore::GraphicsLayerClutter::addChildAbove):
(WebCore::GraphicsLayerClutter::replaceChild):
(WebCore::GraphicsLayerClutter::removeFromParent):
(WebCore::GraphicsLayerClutter::platformClutterLayerPaintContents):
(WebCore::GraphicsLayerClutter::platformClutterLayerAnimationStarted):
(WebCore::GraphicsLayerClutter::repaintLayerDirtyRects):
(WebCore::GraphicsLayerClutter::computePositionRelativeToBase):
(WebCore::GraphicsLayerClutter::flushCompositingState): Synchronize the corresponding Actors with the current
compositing states of this GraphicsLayer and its child layers.
(WebCore::GraphicsLayerClutter::recursiveCommitChanges):
(WebCore::GraphicsLayerClutter::flushCompositingStateForThisLayerOnly): Commit batched changes non-recursively.
(WebCore::GraphicsLayerClutter::commitLayerChangesAfterSublayers): Reset layer changes after we recurse on children.
(WebCore::GraphicsLayerClutter::noteSublayersChanged):
(WebCore::GraphicsLayerClutter::noteLayerPropertyChanged):
(WebCore::GraphicsLayerClutter::commitLayerChangesBeforeSublayers): Commit layer changes before we recurse on children.
(WebCore::GraphicsLayerClutter::updateGeometry): Updated the position and size of the Actor.
(WebCore::GraphicsLayerClutter::updateSublayerList): Updated the list of child Actors.
(WebCore::GraphicsLayerClutter::updateLayerNames):
(WebCore::GraphicsLayerClutter::updateTransform):
(WebCore::GraphicsLayerClutter::updateLayerDrawsContent):
(WebCore::GraphicsLayerClutter::layerForSuperlayer):

  • platform/graphics/clutter/GraphicsLayerClutter.h:

(WebCore):
(WebCore::GraphicsLayerClutter::primaryLayer):
(GraphicsLayerClutter):

9:16 AM Changeset in webkit [137325] by Martin Robinson
  • 2 edits in trunk/Tools

[GTK] Spurious stderr output from the event sender
https://bugs.webkit.org/show_bug.cgi?id=104678

Reviewed by Gustavo Noronha Silva.

Eliminate some spurious stderr output from the EventSender by using an early return
instead of an assertion that prints a warning to the console.

  • DumpRenderTree/gtk/EventSender.cpp:

(continuousMouseScrollByCallback): We don't support continuous scroll events that
move by page, but we should just fail silently instead of printing an error.

9:15 AM Changeset in webkit [137324] by jberlin@webkit.org
  • 2 edits in trunk/Source/WebCore

Revert incorrect build fix.

  • WebCore.exp.in:
9:04 AM Changeset in webkit [137323] by adamk@chromium.org
  • 3 edits
    1 delete in trunk/LayoutTests

Attempt to rebaseline move-by-line-001, which has become less flaky.

Unreviewed gardening.

  • platform/chromium-mac-lion/editing/selection/move-by-line-001-expected.png:
  • platform/chromium-mac-snowleopard/editing/selection/move-by-line-001-expected.png: Removed.
  • platform/chromium/TestExpectations:
8:45 AM Changeset in webkit [137322] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk/LayoutTests

[EFL] Update http/tests/multipart results now that we have soup multipart support
https://bugs.webkit.org/show_bug.cgi?id=104671

Unreviewed gardening: r137150 added soup multipart support and updated
soup. This makes a few tests green. Also, multipart-wait-before-boundary.html
is a duplicate result with wk2 TestExpectations.

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-12-11

  • platform/efl/TestExpectations:
  • platform/efl/http/tests/multipart/invalid-image-data-standalone-expected.png: Added.
  • platform/efl/http/tests/multipart/invalid-image-data-standalone-expected.txt: Added.
  • platform/efl-wk1/TestExpectations:
8:43 AM Changeset in webkit [137321] by jberlin@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix the Mac build after r137261

  • WebCore.exp.in:
8:27 AM Changeset in webkit [137320] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Fixing tests after removing default media stream sport
https://bugs.webkit.org/show_bug.cgi?id=104658

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2012-12-11
Reviewed by Philippe Normand.

Updated test expections for fast/js/global-constructors.

  • platform/gtk/fast/js/global-constructors-expected.txt: Updated

expectations.

8:20 AM Changeset in webkit [137319] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

[GTK] Add GraphicsLayerActor
https://bugs.webkit.org/show_bug.cgi?id=91940

Source/WebCore:

Patch by Joone Hur <joone.hur@intel.com>, Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2012-12-11
Reviewed by Gustavo Noronha Silva.

GraphicsLayerActor, which is a new ClutterActor, represents a node in the GPU-renderable layer tree
when accelerated compositing is enabled with Clutter as acceleration backend.
This patch allows to support basic features of CSS 3D Transforms.

No new tests. This will be covered by pixel tests for Qt and GTK+ accelerated
compositing and 3D transforms.

  • GNUmakefile.list.am:
  • platform/graphics/clutter/GraphicsLayerActor.cpp: Added.

(_GraphicsLayerActorPrivate):
(graphics_layer_actor_class_init): GObject configuration of a new Clutter Actor.
(graphics_layer_actor_init): Initialization of the private data of this actor.
(graphicsLayerActorSetProperty): GObject property setter.
(graphicsLayerActorGetProperty): GObject property getter.
(graphicsLayerActorDispose): Called to drop all references to other objects.
(graphicsLayerActorAllocate): Called to set the coordinates of an actor.
(graphicsLayerActorApplyTransform): Applying the transformation to an actor before painting it.
(graphicsLayerActorPaint): Called to paint the actor.
(graphicsLayerActorDraw): Called each time a ClutterCairoTexture has been invalidated.
(graphicsLayerActorAdded): Called each time an actor has been added to container.
(graphicsLayerActorRemoved): Called each time an actor is removed from container.
(graphicsLayerActorNew): Create a specific layer type of GraphicsLayerActor object.
(graphicsLayerActorNewWithClient): Create a specific layer type of GraphicsLayerActor object with
its PlatformClutterClientLayer.
(graphicsLayerActorSetClient): Added setter to set the PlatformClutterClientLayer.
(graphicsLayerActorGetClient): Added getter to get the PlatformClutterClientLayer.
(graphicsLayerActorRemoveAll): Remove all child actors.
(graphicsLayerUpdateTexture): Create a ClutterCairoTexture.
(graphicsLayerActorGetSurface): Added setter to set a cairo_surface_t.
(graphicsLayerActorSetSurface): Added getter to get the cairo_surface_t.
(graphicsLayerActorInvalidateRectangle):
(graphicsLayerActorSetTransform): Set a CoglMatrix to apply matrix transform.
(graphicsLayerActorSetAnchorPoint):
(graphicsLayerActorGetAnchorPoint):
(graphicsLayerActorSetScrollPosition):
(graphicsLayerActorGetnChildren):
(graphicsLayerActorReplaceSublayer):
(graphicsLayerActorInsertSublayer):
(graphicsLayerActorSetSublayers):
(graphicsLayerActorGetLayerType):
(graphicsLayerActorSetLayerType):
(graphicsLayerActorSetTranslateX):
(graphicsLayerActorGetTranslateX):
(graphicsLayerActorSetTranslateY):
(graphicsLayerActorGetTranslateY):
(graphicsLayerActorSetDrawsContent): Added setter to paint content inside a layer.
(graphicsLayerActorGetDrawsContent): Added getter to get the value of the drawsContent.

  • platform/graphics/clutter/GraphicsLayerActor.h: Added.

(_GraphicsLayerActor):
(_GraphicsLayerActorClass):

  • platform/graphics/clutter/GraphicsLayerClutter.h:

(WebCore):

Tools:

Patch by Joone Hur <joone.hur@intel.com> on 2012-12-11
Reviewed by Gustavo Noronha Silva.

Add GraphicsLayerActor to the list of classes that contain GObjects
in the style checker script so that it does not complain about GObject
coding style.

  • Scripts/webkitpy/style/checker.py:
8:10 AM Changeset in webkit [137318] by mkwst@chromium.org
  • 97 edits
    1 add in trunk/Source

Web Inspector: ConsoleTypes should not expose MessageType - it should be private to inspector.
https://bugs.webkit.org/show_bug.cgi?id=66371

Reviewed by Pavel Feldman.

Source/WebCore:

We can simplify console message generation a bit, as nothing outside the
Console object itself will generate messages of any type other than
LogMessageType. This patch refactors the externally-facing API endpoints
on ScriptExecutionContext and Console to drop the MessageType parameter,
moves the MessageType enum into a new InspectorConsoleTypes.h header,
and updates all the call sites (and ChromeClients) to drop the parameter
from their interfaces.

As a temporary bandage for ports using this interface, this patch
includes aliases for the new methods that retain the old interface.
I'll remove them in a future patch.

Here, we only refactor an internal interface. No tests should break.

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

We added a new file! OMG!

  • Modules/webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::looping):
(WebCore::AudioBufferSourceNode::setLooping):

  • Modules/webdatabase/AbstractDatabase.cpp:

(WebCore::AbstractDatabase::logErrorMessage):

  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::connect):
(WebCore::WebSocket::send):
(WebCore::WebSocket::close):
(WebCore::WebSocket::setBinaryType):

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::fail):
(WebCore::WebSocketChannel::didFailSocketStream):

  • bindings/js/JSCustomXPathNSResolver.cpp:

(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):

  • bindings/v8/custom/V8CustomXPathNSResolver.cpp:

(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):

  • css/MediaList.cpp:

(WebCore::addResolutionWarningMessageToConsole):

  • dom/Document.cpp:

(WebCore::Document::logExceptionToConsole):
(WebCore::Document::processHttpEquiv):
(WebCore::Document::addMessage):

  • dom/Document.h:

(Document):

  • dom/ScriptElement.cpp:

(WebCore::ScriptElement::notifyFinished):

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::AddConsoleMessageTask::performTask):
(WebCore::ScriptExecutionContext::addConsoleMessage):

  • dom/ScriptExecutionContext.h:

(ScriptExecutionContext):
(WebCore::ScriptExecutionContext::AddConsoleMessageTask::create):
(WebCore::ScriptExecutionContext::AddConsoleMessageTask::AddConsoleMessageTask):

  • dom/ViewportArguments.cpp:

(WebCore::reportViewportWarning):

  • fileapi/WebKitBlobBuilder.cpp:

(WebCore::BlobBuilder::append):

  • html/HTMLFormControlElement.cpp:

(WebCore::shouldAutofocus):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::validateInteractively):

  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::parseAttribute):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::canLoadUrl):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::getImageData):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::printWarningToConsole):

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::init):
(WebCore::XSSAuditor::filterToken):

  • inspector/ConsoleAPITypes.h: Added.

(WebCore):

  • inspector/ConsoleMessage.h:
  • inspector/InspectorConsoleAgent.h:
  • inspector/InspectorDebuggerAgent.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore):

  • inspector/InspectorInstrumentation.h:
  • inspector/InspectorProfilerAgent.cpp:
  • loader/EmptyClients.h:

(WebCore::EmptyChromeClient::addMessageToConsole):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::reportLocalLoadFailed):
(WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::notifyFinished):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::didReceiveResponse):

  • loader/MixedContentChecker.cpp:

(WebCore::MixedContentChecker::logWarning):

  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::corsPolicyPreventedLoad):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::abort):
(WebCore::ApplicationCacheGroup::didReceiveResponse):
(WebCore::ApplicationCacheGroup::didFinishLoading):
(WebCore::ApplicationCacheGroup::didFail):
(WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
(WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::printAccessDeniedMessage):

  • page/ChromeClient.h:

(ChromeClient):

Drop LogMessageType from everywhere.

  • page/Console.cpp:

(WebCore::Console::addMessage):
(WebCore::internalAddMessage):
(WebCore::Console::error):
(WebCore::Console::log):
(WebCore::Console::warn):
(WebCore::Console::dir):
(WebCore::Console::dirxml):
(WebCore::Console::clear):
(WebCore::Console::trace):
(WebCore::Console::assertCondition):

  • page/Console.h:

(Console):

Create a new internalAddMessage that's used for the various
Console message types. Everything else routes through
::addMessage.

  • page/ConsoleTypes.h:

Drop MessageTypes from this file, add it to ConsoleAPIType.h

  • page/ContentSecurityPolicy.cpp:

(WebCore::ContentSecurityPolicy::logToConsole):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::dispatchMessageEventWithOriginCheck):
(WebCore::DOMWindow::printErrorMessage):

  • page/EventSource.cpp:

(WebCore::EventSource::didReceiveResponse):

  • svg/SVGDocumentExtensions.cpp:

(WebCore::reportMessage):

  • workers/DefaultSharedWorkerRepository.cpp:

(SharedWorkerProxy):
(WebCore::postConsoleMessageTask):
(WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):

  • workers/SharedWorkerContext.cpp:

(WebCore::SharedWorkerContext::logExceptionToConsole):

  • workers/WorkerContext.cpp:

(WebCore::WorkerContext::addMessage):
(WebCore::WorkerContext::addMessageToWorkerConsole):

  • workers/WorkerContext.h:

(WorkerContext):

  • workers/WorkerMessagingProxy.cpp:

(WebCore::postConsoleMessageTask):
(WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):

  • workers/WorkerMessagingProxy.h:

(WorkerMessagingProxy):

  • workers/WorkerReportingProxy.h:

(WorkerReportingProxy):

  • xml/XMLHttpRequest.cpp:

(WebCore::logConsoleError):
(WebCore::XMLHttpRequest::send):

  • xml/XSLTProcessorLibxslt.cpp:

(WebCore::XSLTProcessor::parseErrorFunc):

  • xml/XSLTProcessorQt.cpp:

(WebCore::XSLTMessageHandler::handleMessage):

Drop LogMessageType from everywhere.

Source/WebKit/blackberry:

Drops WebCore::MessageType from the addMessageToConsole method.

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::addMessageToConsole):

  • WebCoreSupport/ChromeClientBlackBerry.h:

(ChromeClientBlackBerry):

Source/WebKit/chromium:

Drops WebCore::MessageType from the addMessageToConsole method, and all
the ancilliary places it touches.

Aliases postConsoleMessageToWorkerObject with the old interface in
order to maintain back-compat. Will remove it in a future patch once
Chromium is updated.

  • public/WebSharedWorkerClient.h:

(WebSharedWorkerClient):
(WebKit::WebSharedWorkerClient::postConsoleMessageToWorkerObject):

  • src/ChromeClientImpl.cpp:
  • src/ChromeClientImpl.h:

(ChromeClientImpl):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::addMessageToConsole):

  • src/WebPagePopupImpl.cpp:
  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::postConsoleMessageToWorkerObject):
(WebKit::WebSharedWorkerImpl::postConsoleMessageTask):

  • src/WebSharedWorkerImpl.h:

(WebSharedWorkerImpl):

  • src/WebWorkerClientImpl.cpp:

(WebKit::WebWorkerClientImpl::postConsoleMessageToWorkerObject):

  • src/WebWorkerClientImpl.h:

(WebWorkerClientImpl):

Source/WebKit/efl:

Drops WebCore::MessageType from the addMessageToConsole method.

  • WebCoreSupport/ChromeClientEfl.cpp:

(WebCore::ChromeClientEfl::addMessageToConsole):

  • WebCoreSupport/ChromeClientEfl.h:

(ChromeClientEfl):

Source/WebKit/gtk:

Drops WebCore::MessageType from the addMessageToConsole method.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::addMessageToConsole):

  • WebCoreSupport/ChromeClientGtk.h:

(ChromeClient):

Source/WebKit/mac:

Drops WebCore::MessageType from the addMessageToConsole method.

  • WebCoreSupport/WebChromeClient.h:

(WebChromeClient):

  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::addMessageToConsole):

Source/WebKit/qt:

Drops WebCore::MessageType from the addMessageToConsole method.

  • WebCoreSupport/ChromeClientQt.cpp:

(WebCore::ChromeClientQt::addMessageToConsole):

  • WebCoreSupport/ChromeClientQt.h:

(ChromeClientQt):

Source/WebKit/win:

Drops WebCore::MessageType from the addMessageToConsole method.

  • WebCoreSupport/WebChromeClient.cpp:

(WebChromeClient::addMessageToConsole):

  • WebCoreSupport/WebChromeClient.h:

(WebChromeClient):

Source/WebKit/wince:

Drops WebCore::MessageType from the addMessageToConsole method.

  • WebCoreSupport/ChromeClientWinCE.cpp:

(WebKit::ChromeClientWinCE::addMessageToConsole):

  • WebCoreSupport/ChromeClientWinCE.h:

(ChromeClientWinCE):

Source/WebKit2:

Drops WebCore::MessageLevel from the addMessageToConsole method.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::addMessageToConsole):

  • WebProcess/WebCoreSupport/WebChromeClient.h:

(WebChromeClient):

8:06 AM Changeset in webkit [137317] by Simon Hausmann
  • 2 edits in trunk/Source/WebCore

[Qt] Unreviewed, rolling out r137313 and r137316 because they broke the system-sqlite build.

  • WebCore.pri:
7:57 AM Changeset in webkit [137316] by Simon Hausmann
  • 2 edits in trunk/Source/WebCore

Unreviewed Qt build fix: Don't error out if SQLITE3SRCDIR isn't set but
we have a system sqlite to use.

  • WebCore.pri:
7:50 AM Changeset in webkit [137315] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Call createLocalStorageNamespace through Platform.h
https://bugs.webkit.org/show_bug.cgi?id=104675

Reviewed by Kentaro Hara.

Some #include cleanup missing from bug 85766. Part of a
refactoring series; see tracking bug 82948.

  • src/StorageNamespaceProxy.cpp:

(WebCore::StorageNamespace::localStorageNamespace):

7:46 AM Changeset in webkit [137314] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] remove hack which avoids unused .obj directories all over the place

Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com> on 2012-12-11
Reviewed by Simon Hausmann.

The feature is subject to upstreaming in Qt itself in
https://codereview.qt-project.org/#change,42011

  • qmake/mkspecs/features/default_post.prf:
7:33 AM Changeset in webkit [137313] by Simon Hausmann
  • 2 edits in trunk/Source/WebCore

[Qt] make qtbase source requirement explicit

Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com> on 2012-12-11
Reviewed by Simon Hausmann.

getting rid of QT.<module>.sources references, as they don't go well
with real modularization.

  • WebCore.pri:
7:30 AM Changeset in webkit [137312] by Simon Hausmann
  • 4 edits in trunk

[Qt] move SQLITE3SRCDIR assignment to only use site

Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com> on 2012-12-11
Reviewed by Simon Hausmann.

Target.pri includes WebCore.pri the almost first thing, so that is
covered as well.

Source/WebCore:

  • WebCore.pri:

Tools:

  • qmake/mkspecs/features/default_pre.prf:
7:26 AM Changeset in webkit [137311] by Simon Hausmann
  • 4 edits in trunk

[Qt] delete dead include paths

Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com> on 2012-12-11
Reviewed by Simon Hausmann.

followup to https://bugs.webkit.org/show_bug.cgi?id=93446

Source/JavaScriptCore:

Tools:

  • DumpRenderTree/qt/DumpRenderTree.pro:
7:21 AM Changeset in webkit [137310] by Martin Robinson
  • 8 edits in trunk

[GTK] Implement some missing FrameLoaderClient message in DRT
https://bugs.webkit.org/show_bug.cgi?id=104444

Reviewed by Gustavo Noronha Silva.

Source/WebKit/gtk:

When in DumpRenderTree mode allow the DRT to install a FrameLoaderEvent callback
for events that we do not expose in the API. This will allow us to share more
results with WebKit2.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::setFrameLoadEventCallback): Added.

  • WebCoreSupport/DumpRenderTreeSupportGtk.h:
  • WebCoreSupport/FrameLoaderClientGtk.cpp: Use the new callback to deliver

events to DRT.

Tools:

Install a FrameLoadEvent callback that prints the necessary output for some
missing FrameLoader events.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(frameLoadEventCallback): Added.
(createWebView): Install the FrameLoader event callback.

LayoutTests:

Unskip a test which is now passing.

  • platform/gtk/TestExpectations: Unskip a newly passing test.
7:18 AM Changeset in webkit [137309] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Timeline: rename "Parse" to "Parse HTML".
https://bugs.webkit.org/show_bug.cgi?id=104639

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-11
Reviewed by Yury Semikhatsky.

"Parse" sounds ambiguous, it could mean JSON.parse() or Date.parse().
"Parse HTML" is a much more clear record description.

  • inspector/front-end/TimelinePresentationModel.js: Fix text.
7:17 AM BuildingGtk edited by Philippe Normand
(diff)
7:16 AM Changeset in webkit [137308] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
7:14 AM Changeset in webkit [137307] by Simon Hausmann
  • 5 edits in trunk

[Qt] change setup of QMAKE_MOC

Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com> on 2012-12-11
Reviewed by Simon Hausmann.

don't load(moc) explicitly - turns out that this breaks
debug_and_release builds (the feature does not like being loaded before
default_post has been loaded).
so instead just do a minimal call to find the moc executable.

as it's in fact only two files which need it, so de-centralize this call
for the sake of saving some cpu cycles spent in qmake.

Source/WebCore:

  • DerivedSources.pri:

Tools:

  • WebKitTestRunner/InjectedBundle/DerivedSources.pri:
  • qmake/mkspecs/features/default_pre.prf:
6:38 AM Changeset in webkit [137306] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Tools

[Qt] Fix the linking of debug builds on Mac with force_static_libs_as_shared
https://bugs.webkit.org/show_bug.cgi?id=104559

Reviewed by Tor Arne Vestbø.

"contains(libraries, $$TARGET): return(true)" fails for intermediate libraries since
at this point TARGET may contain the "_debug" suffix.

Fix it by moving the TARGET adjustment later in the file.

  • qmake/mkspecs/features/default_post.prf:
6:21 AM Changeset in webkit [137305] by thiago.santos@intel.com
  • 2 edits in trunk/Source/WebKit2

[EFL] Increase the timeout of the API unit tests
https://bugs.webkit.org/show_bug.cgi?id=104666

Reviewed by Kenneth Rohde Christiansen.

Palliative fix until we find out why the tests are taking so long.

  • PlatformEfl.cmake:
6:11 AM Changeset in webkit [137304] by kenneth@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt][EFL][WK2] Resizing the window doesn't always result in right content position
https://bugs.webkit.org/show_bug.cgi?id=104416

Reviewed by Simon Hausmann.

Make sure the client is notified about position and scale changed done by us.
Rename the m_*IsLocked to m_pending*Change as that makes the code more obvious.

Patch verified with both Qt and EFL.

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::PageViewportController):
(WebKit::PageViewportController::didRenderFrame): Notify client and pixel align.
(WebKit::PageViewportController::didChangeContentsVisibility):
(WebKit::PageViewportController::didChangeViewportAttributes):
(WebKit::PageViewportController::applyScaleAfterRenderingContents):
(WebKit::PageViewportController::applyPositionAfterRenderingContents):

  • UIProcess/PageViewportController.h:

(PageViewportController):

6:06 AM Changeset in webkit [137303] by apavlov@chromium.org
  • 8 edits in trunk

REGRESSION(r136948): inspector/styles/import-pseudoclass-crash.html hits an assertion
https://bugs.webkit.org/show_bug.cgi?id=104473

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Avoid building full CSSOM wrappers up front during rule matching.
Instead, move this code down to the point where these wrappers are actually needed.

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::willMatchRule):
(WebCore::InspectorCSSAgent::willProcessRule):

  • inspector/InspectorCSSAgent.h:

(WebCore):
(InspectorCSSAgent):

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willMatchRuleImpl):
(WebCore::InspectorInstrumentation::willProcessRuleImpl):

LayoutTests:

  • platform/chromium/TestExpectations:
  • platform/efl-wk2/TestExpectations:
  • platform/qt/TestExpectations:
6:03 AM Changeset in webkit [137302] by Simon Hausmann
  • 3 edits
    3 adds in trunk

WebKit tests for the Qt API should include tests of CMake config files
https://bugs.webkit.org/show_bug.cgi?id=104003

Patch by Stephen Kelly <stephen.kelly@kdab.com> on 2012-12-11
Reviewed by Simon Hausmann.

The Qt WebKit CI system is not going to run this test, but it can
be run locally and to test packages.

.:

  • Source/tests.pri:

Source/WebKit/qt:

  • tests/cmake/CMakeLists.txt: Added.
  • tests/cmake/cmake.pro: Added.
5:59 AM Changeset in webkit [137301] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[GStreamer] Avoid linking to GStreamer video libraries if only using ENABLE_AUDIO
https://bugs.webkit.org/show_bug.cgi?id=104590

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-12-11
Reviewed by Philippe Normand.

Make getVideoSizeAndFormatFromCaps() only available when ENABLE_VIDEO is set.

No new tests, no change in behavior.

  • platform/graphics/gstreamer/GStreamerVersioning.cpp:
  • platform/graphics/gstreamer/GStreamerVersioning.h:
5:53 AM Changeset in webkit [137300] by Martin Robinson
  • 4 edits in trunk

[Coverity] [GTK] Remove some redundant null checks in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=104570

Reviewed by Daniel Bates.

Source/WebKit/gtk:

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::elementDoesAutoCompleteForElementWithId): Remove a redundant null check.

Tools:

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(descriptionSuitableForTestResult): Remove a redundant null check.

5:39 AM Changeset in webkit [137299] by Martin Robinson
  • 2 edits in trunk/LayoutTests

Unskip some tests that are now passing with the switch to the Harfbuzz backend.

  • platform/gtk/TestExpectations: Unskip some recently passing tests.
5:37 AM Changeset in webkit [137298] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt][Mac] Fix transparency for WebGL content.
https://bugs.webkit.org/show_bug.cgi?id=104659

When drawing a texture to the TextureMapper the flag SupportsBlending
must be passed in order to allow for transparent webgl content.
We are doing this for GLX already, but the flag was still missing
in GraphicsSurfaceMac.

Reviewed by Kenneth Rohde Christiansen.

  • platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

5:32 AM Changeset in webkit [137297] by allan.jensen@digia.com
  • 2 edits in trunk/LayoutTests

[Qt] Support third-party cookie policy for Qt clients
https://bugs.webkit.org/show_bug.cgi?id=45455

Unreviewed fixup.

window.location is not set for http tests in platform, so use a reset function
that doesn't rely on it.

  • platform/qt/http/tests/cookies/strict-third-party-cookie-blocking.html:
5:12 AM Changeset in webkit [137296] by commit-queue@webkit.org
  • 4 edits in trunk/Tools

Remove unused GErrors
https://bugs.webkit.org/show_bug.cgi?id=104657

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-11
Reviewed by Martin Robinson.

Replace unused GErrors with null pointers.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(initializeFonts):

  • DumpRenderTree/gtk/EditingCallbacks.cpp:

(dumpRange):

  • WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:

(WTR::inititializeFontConfigSetting):

5:00 AM Changeset in webkit [137295] by apavlov@chromium.org
  • 6 edits in trunk

Web Inspector: Duplicate emulated touch events in iframe
https://bugs.webkit.org/show_bug.cgi?id=104653

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Synthetic touch events should be dispatched only on the frame containing its target, not on its ancestor frames,
up to the top frame.

  • page/EventHandler.cpp:

(WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):

Do not dispatch a synthetic touch event on the current frame if its target is in a subframe.

LayoutTests:

The test incorrectly expected two synthetic touchend events from an iframe,
while only one touchstart and one touchend should be dispatched.

  • fast/events/touch/emulated-touch-iframe-expected.txt:
  • fast/events/touch/emulated-touch-iframe.html:
  • fast/events/touch/resources/emulated-touch-iframe2.html:
4:54 AM Changeset in webkit [137294] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[EFL][WebGL] Regression(r137211) WebGL is broken with NVIDIA Drivers.
https://bugs.webkit.org/show_bug.cgi?id=104652.

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

Reverting some of the changes from r137211, as it causes regressions
on NVIDIA drivers.

  • platform/graphics/efl/GraphicsContext3DEfl.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(GraphicsContext3DPrivate::copyToGraphicsSurface):

  • platform/graphics/opengl/GLPlatformSurface.cpp:

(WebCore::GLPlatformSurface::updateContents):

  • platform/graphics/opengl/GLPlatformSurface.h:

(GLPlatformSurface):

4:53 AM Changeset in webkit [137293] by Christophe Dumez
  • 12 edits in trunk/Source/WebKit2

[CoordinatedGraphics] Use unsigned integers for UpdateAtlas IDs
https://bugs.webkit.org/show_bug.cgi?id=104654

Reviewed by Kenneth Rohde Christiansen.

UpdateAtlas currently uses *signed* integer type for its identifier.
Due to the way we generate those IDs, it is safer to use *unsigned*
integers. This is because the generated ID will overflow at some
point and the C and C++ language standards say that overflow of a
signed value is undefined behaviour.

This patch switches to unsigned integer type for UpdateAtlas IDs
since unsigned integers are guaranteed to wrap around on overflow.

  • Shared/SurfaceUpdateInfo.h:

(SurfaceUpdateInfo):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:

(WebKit::LayerTreeCoordinatorProxy::createUpdateAtlas):
(WebKit::LayerTreeCoordinatorProxy::removeUpdateAtlas):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:

(LayerTreeCoordinatorProxy):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:

(CoordinatedTileClient):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::createUpdateAtlas):
(WebKit::LayerTreeCoordinator::removeUpdateAtlas):
(WebKit::LayerTreeCoordinator::beginContentUpdate):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:

(LayerTreeCoordinator):

  • WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:

(WebKit::UpdateAtlas::UpdateAtlas):
(WebKit::UpdateAtlas::~UpdateAtlas):
(WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):

  • WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:

(UpdateAtlasClient):
(UpdateAtlas):

4:45 AM Changeset in webkit [137292] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: follow up to r136974: do not process shortcuts while editing
https://bugs.webkit.org/show_bug.cgi?id=104440

Reviewed by Alexander Pavlov.

Currently, typing H while editing node results in corresponding shortcut processing.

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeOutline):
(WebInspector.ElementsTreeOutline.prototype.handleShortcut):
(WebInspector.ElementsTreeElement.prototype.onenter):
(WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
(WebInspector.ElementsTreeElement.prototype.dispose):
(WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
(WebInspector.ElementsTreeElement.prototype._editingCancelled):

4:27 AM Changeset in webkit [137291] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

[Inspector] Add command for dispatching mouse events.
https://bugs.webkit.org/show_bug.cgi?id=104074

Patch by Ken Kania <kkania@chromium.org> on 2012-12-11
Reviewed by Yury Semikhatsky.

Platform mouse event coordinates are relative to the containing window,
but the inspector command assumes they follow standard web coordinates,
where the origin is at the top left of the page and y increases as you
go down. We convert the coordinates to the window before constructing
the event. This also fixes the fact that some platforms have flipped
coordinate systems.
Also, update dispatchKeyEvent test to follow simpler dispatchMouseEvent
test.

Source/WebCore:

Test: inspector-protocol/input/dispatchMouseEvent.html

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

(WebCore::InspectorInputAgent::dispatchMouseEvent):
(WebCore):

  • inspector/InspectorInputAgent.h:

(InspectorInputAgent):

LayoutTests:

  • inspector-protocol/input/dispatchKeyEvent.html:
  • inspector-protocol/input/dispatchMouseEvent-expected.txt: Added.
  • inspector-protocol/input/dispatchMouseEvent.html: Added.
4:24 AM Changeset in webkit [137290] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, skip new failing tests.

  • platform/qt/TestExpectations:
4:19 AM Changeset in webkit [137289] by noel.gordon@gmail.com
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed gardening

fast/repaint/body-background-image.html
fast/text/font-initial.html

  • platform/chromium/TestExpectations: These tests are passing on WIN.
4:15 AM Changeset in webkit [137288] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Not reviewed: follow up to r137283: reduce inspector toolbar spacing 1px.

  • inspector/front-end/inspector.css:

(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):

4:15 AM Changeset in webkit [137287] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Implement add64 for SH4 assembler to fix build after r136601
https://bugs.webkit.org/show_bug.cgi?id=104377

Patch by Julien BRIANCEAU <jbrianceau@nds.com> on 2012-12-11
Reviewed by Zoltan Herczeg.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::add64):
(MacroAssemblerSH4):

4:10 AM Changeset in webkit [137286] by Martin Robinson
  • 5 edits in trunk

[GTK] Bump the jhbuild libsoup version to fix an authentication issue
https://bugs.webkit.org/show_bug.cgi?id=104448

Reviewed by Gustavo Noronha Silva.

Tools:

Bump the libsoup version to one from the git repository. This requires updating
GLib as well which in turn requires adjusting the CFLAGS we pass when compiling
the scanobj step of the gtkdoc generation.

  • gtk/generate-gtkdoc:
  • gtk/jhbuild.modules:

LayoutTests:

  • platform/gtk/TestExpectations: Unskip some tests which are now passing.
4:05 AM Changeset in webkit [137285] by thiago.santos@intel.com
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening.

Added more shadow tests to the list of flaky tests.

  • platform/efl-wk2/TestExpectations:
4:03 AM WebKitGTK/WebKit2Roadmap edited by mario@webkit.org
(diff)
4:01 AM Changeset in webkit [137284] by tkent@chromium.org
  • 13 edits in trunk/Source/WebCore

Refactoring: Rename Element::shouldMatchReadOnlySelector and shouldMatchReadWriteSelector
https://bugs.webkit.org/show_bug.cgi?id=104651

Reviewed by Kentaro Hara.

':read-only' and ':read-write' are pseudo classes. They are not
selectors in the context of these functions. This patch rename them so
that they contain 'pseudo class,' and make them match to an existing
function, matchesFocusPseudoClass.

No new tests. This shouldn't make behavior changes.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOneSelector):

  • dom/Element.cpp:

(WebCore::Element::recalcStyle):
(WebCore::Element::matchesReadOnlyPseudoClass):
(WebCore::Element::matchesReadWritePseudoClass):

  • dom/Element.h:

(Element):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::matchesReadOnlyPseudoClass):
(WebCore::HTMLInputElement::matchesReadWritePseudoClass):

  • html/HTMLInputElement.h:

(HTMLInputElement):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::matchesReadOnlyPseudoClass):
(WebCore::HTMLTextAreaElement::matchesReadWritePseudoClass):

  • html/HTMLTextAreaElement.h:

(HTMLTextAreaElement):

  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::matchesReadOnlyPseudoClass):
(WebCore::SliderThumbElement::matchesReadWritePseudoClass):

  • html/shadow/SliderThumbElement.h:

(SliderThumbElement):

  • html/shadow/SpinButtonElement.cpp:

(WebCore::SpinButtonElement::matchesReadOnlyPseudoClass):
(WebCore::SpinButtonElement::matchesReadWritePseudoClass):

  • html/shadow/SpinButtonElement.h:

(SpinButtonElement):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::isReadOnlyControl):

4:00 AM Changeset in webkit [137283] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: add more horizontal spacing for toolbar items in docked to bottom mode
https://bugs.webkit.org/show_bug.cgi?id=104655

Reviewed by Alexander Pavlov.

Drive-by increase height to 26px.

  • inspector/front-end/inspector.css:

(#toolbar):
(body:not(.show-toolbar-icons) .toolbar-item):
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):
(body.show-toolbar-icons.dock-to-bottom .toolbar-item.toggleable):
(#toolbar-dropdown-arrow):
(#main):

3:45 AM Changeset in webkit [137282] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Unreviewed functionality fix for the GTK port.

Enable the MicroData feature support for the GTK port in the FeatureList module.
This feature listing now again affects which features are enabled and which disabled
on the development builds of the GTK port.

  • Scripts/webkitperl/FeatureList.pm:
3:36 AM Changeset in webkit [137281] by keishi@webkit.org
  • 5 edits in trunk/Source/WebCore

Use histogram enumeration in Calendar Picker so we can get stats on UI usage
https://bugs.webkit.org/show_bug.cgi?id=104646

Reviewed by Kent Tamura.

Use histogram support to get stats on the calendar picker so we can improve the UI.

No new tests.

  • Resources/pagepopups/calendarPicker.js:

(CalendarPicker):
(CalendarPicker.prototype.recordAction): Records action to histogram.
(CalendarPicker.prototype.handleToday): Record action.
(CalendarPicker.prototype.handleClear): Ditto.
(YearMonthController.prototype._showPopup): Ditto.
(YearMonthController.prototype._handleYearMonthChange): Ditto.
(YearMonthController.prototype._handleButtonClick): Ditto.
(DaysTable.prototype._handleDayClick): Ditto.

  • page/PagePopupController.cpp:

(WebCore::PagePopupController::histogramEnumeration):
(WebCore):

  • page/PagePopupController.h:

(PagePopupController):

  • page/PagePopupController.idl: Added histogramEnumeration.
3:30 AM Changeset in webkit [137280] by allan.jensen@digia.com
  • 3 edits in trunk/LayoutTests

[Qt] Support third-party cookie policy for Qt clients
https://bugs.webkit.org/show_bug.cgi?id=45455

Reviewed by Csaba Osztrogonác.

Fix regressed test. The test is now run from it own dir, not the platform independent dir.

  • platform/qt/TestExpectations:
  • platform/qt/http/tests/cookies/strict-third-party-cookie-blocking.html:
3:10 AM Changeset in webkit [137279] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[EFL][WK2] MiniBrowser is not built
https://bugs.webkit.org/show_bug.cgi?id=104629

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-12-11
Reviewed by Gyuyoung Kim.

As we are finding an elementary package in Tools/MiniBrowser/efl/CMakeList.txt since r137203,
we need to check if the package is found in the same place not in the Tools/CMakeList.txt.

  • CMakeLists.txt:
  • MiniBrowser/efl/CMakeLists.txt:
3:08 AM Changeset in webkit [137278] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Create a ewk view object with new context for API tests
https://bugs.webkit.org/show_bug.cgi?id=103692

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-12-11
Reviewed by Gyuyoung Kim.

Bug 103229 fixes the issue which PageGroupID increased even though
the EwkView was created with default context. If the Bug 103229 is
resolved, the EwkViews with same context will have same setting preferences.

Currently, WebKit2/EFL API test is creating the ewk view object
with the default context so the setting values set previously may
influence the following tests. So this patch created a ewk view object
with a new context instead of default one.

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:

(EWK2UnitTest::EWK2UnitTestBase::SetUp):

2:36 AM Changeset in webkit [137277] by morrita@google.com
  • 12 edits
    2 adds in trunk/Source/WebCore

IsActiveFlag, IsHoverFlag, InActiveChainFlag can be unified.
https://bugs.webkit.org/show_bug.cgi?id=103697

Reviewed by Ryosuke Niwa.

To save two more NodeFlags bits, this patch inroduces
UserActionElementSet to get IsLinkFlag, IsHoverFlag,
InActiveChainFlag together. These three old flags are replaced by
UserActionElementSet::ElementFlags and UserActionElementSet
collection which tracks elements which are flagged with one of
a ElementFlags.

When marking an element as active for example, WebKit sets
UserActionElementSet::IsActiveFlag to the element and store it
into corresponding element set of the document. This set maintains
marked elements and corresponding flags for each elements.

UserActionElementSet can be seen as a yet another rare data for
these flags. However, the following characteristics of these flags
make adding a new data structure on Document an attractive
alternative:

  • UserActionElementSet is maintained for each Document instead of a global collecton. This fits element lifetime better.
  • The number of elements which have these flags is generally small, and a group of elements for each flag is largely overlapped due to its nature. This property keeps the set small, and lets flag retrieval efficient. On majority of the elements, all these flags are false thus the check is done by just checking IsInUserActionFlag.

As a bonus, isFocused flag, which was on NodeRareData, is also moved to this model.

No new tests, covered by existing test.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DOMAllInOne.cpp:
  • dom/Document.cpp:

(WebCore::Document::removedLastRef):
(WebCore::Document::updateHoverActiveState):

  • dom/Document.h:

(WebCore::Document::userActionElements): Added.
(Document):

  • dom/Node.cpp:

(WebCore::Node::detach):

  • dom/Node.h:

(WebCore):
(WebCore::Node::isUserActionElement): Added.
(WebCore::Node::setUserActionElement): Added.
(Node):
(WebCore::Node::active): Switched to UserActionElementSet.
(WebCore::Node::inActiveChain): Switched to UserActionElementSet.
(WebCore::Node::hovered): Switched to UserActionElementSet.
(WebCore::Node::focused): Switched to UserActionElementSet.
(WebCore::Node::setFocus): Switched to UserActionElementSet.
(WebCore::Node::setActive): Switched to UserActionElementSet.
(WebCore::Node::setHovered): Switched to UserActionElementSet.

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):
(NodeRareData):

  • dom/UserActionElementSet.cpp: Added.

(WebCore):
(WebCore::UserActionElementSet::instanceFor):
(WebCore::UserActionElementSet::UserActionElementSet):
(WebCore::UserActionElementSet::~UserActionElementSet):
(WebCore::UserActionElementSet::didDetach):
(WebCore::UserActionElementSet::documentDidRemoveLastRef):
(WebCore::UserActionElementSet::hasFlags):
(WebCore::UserActionElementSet::setFlags):
(WebCore::UserActionElementSet::clearFlags):

  • dom/UserActionElementSet.h: Added.

(WebCore):
(UserActionElementSet):
(WebCore::UserActionElementSet::create):
(WebCore::UserActionElementSet::isFocused):
(WebCore::UserActionElementSet::setFocused):
(WebCore::UserActionElementSet::isActive):
(WebCore::UserActionElementSet::setActive):
(WebCore::UserActionElementSet::isInActiveChain):
(WebCore::UserActionElementSet::setInActiveChain):
(WebCore::UserActionElementSet::isHovered):
(WebCore::UserActionElementSet::setHovered):
(WebCore::UserActionElementSet::setFlags):

2:31 AM Changeset in webkit [137276] by caseq@chromium.org
  • 3 edits in trunk/LayoutTests

Unreviewed, rolling out r137266.
http://trac.webkit.org/changeset/137266
https://bugs.webkit.org/show_bug.cgi?id=104071

New test fails on WebKit Win7 and chromium mac

  • inspector/profiler/cpu-profiler-profiling-without-inspector-expected.txt:
  • inspector/profiler/cpu-profiler-profiling-without-inspector.html:
2:20 AM Changeset in webkit [137275] by tkent@chromium.org
  • 14 edits in trunk

INPUT_MULTIPLE_FIELDS_UI: Disable focus navigation by right/left keys in RTL locales
https://bugs.webkit.org/show_bug.cgi?id=104644

Reviewed by Hajime Morita.

Source/WebCore:

Pressing the left key should focus on the field at the left of the
current focused field, and pressing the right key should focus on the
field at the right of the current focused field. This works well in LTR
locales.
In RTL locale, the current code doesn't work. We disable this behavior
for RTL locales for now. This issue will be handled in Bug 104650.

No new tests. Update some *-multiple-fields tests for new behavior.

  • html/shadow/DateTimeFieldElement.cpp:

(WebCore::DateTimeFieldElement::defaultKeyboardEventHandler):
If this sub-field is in an RTL locale, we don't change focus.
(WebCore::DateTimeFieldElement::localeForOwner):
Moved from DateTimeNumericFieldElement.

  • html/shadow/DateTimeFieldElement.h:

(DateTimeFieldElement): Remove isRTL, add localeForOwner.

  • html/shadow/DateTimeNumericFieldElement.cpp: Remove localeForOwner.
  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement): Ditto.

LayoutTests:

  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
  • fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events.html:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html:
2:17 AM WebKitGTKFonts edited by Martin Robinson
(diff)
2:06 AM Changeset in webkit [137274] by podivilov@chromium.org
  • 2 edits in trunk/LayoutTests

2012-12-11 Pavel Podivilov <podivilov@google.com>

[Chromium] Unreviewed, remove "platform/blackberry [ WontFix ]" from test expectations
to make lint happy.

  • platform/chromium/TestExpectations:
2:02 AM Changeset in webkit [137273] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Unskip a few test, adding expectations that (should) reflect the actual failure of each test.
Also remove the expectations for the Animation API test. Support for that feature, along with
the test, was removed just recently.

  • platform/gtk/TestExpectations:
1:59 AM Changeset in webkit [137272] by podivilov@chromium.org
  • 2 edits in trunk/Source/WebCore

2012-12-11 Pavel Podivilov <podivilov@google.com>

Remove pango files deleted at r137263 form WebCore.gypi.

Unreviewed, gardening.

  • WebCore.gypi:
1:42 AM Changeset in webkit [137271] by Philippe Normand
  • 4 edits in trunk

[GTK][jhbuild] Switch to GStreamer 1.0 build
https://bugs.webkit.org/show_bug.cgi?id=91727

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2012-12-11
Reviewed by Philippe Normand.

Switch build-webkit --gtk to GStreamer 1.0 support and build the
necessary GStreamer git modules from JHBuild.

.:

  • configure.ac: Removed GStreamer unstable API flag, made

GStreamer 1.0 default instead of 0.10 and made required version
1.0.3. In case no GStreamer version is specified, it falls back to
0.10. In case no video or web-audio are requested, GStreamer
and Farstream checks are not performed.

Tools:

  • gtk/jhbuild.modules: Added GStreamer 1.0.3 build support.
1:37 AM Changeset in webkit [137270] by zandobersek@gmail.com
  • 10 edits
    2 adds
    1 delete in trunk

[GTK] Feature enabling/disabling should be possible through build-webkit
https://bugs.webkit.org/show_bug.cgi?id=99271

Reviewed by Gustavo Noronha Silva.

.:

The autogen.sh script now calls the Tools/gtk/override-feature-defines script
before calling autoreconf. This ensures that Source/WebCore/GNUmakefile.features.am
is present and properly modified if the build-webkit script intends to override
any feature.

The Source/WebCore/GNUmakefile.features.am file is added to the ignored files list
so it doesn't pop out as a new, untracked file.

  • .gitignore:
  • autogen.sh:

Source/WebCore:

Move the contents of GNUmakefile.features.am into GNUmakefile.features.am.in.
The former is then copied from the latter but then appropriately modified if
the build-webkit script overrides any of the default feature defines.

No new tests - no new testable functionality.

  • GNUmakefile.features.am.in: Renamed from Source/WebCore/GNUmakefile.features.am.

Tools:

Refactor the code in webkitdirs.pm that builds an autotools project to generate
autogen.sh arguments, make arguments and installation prefix from the passed-in
parameters rather than generating all of that in build-webkit. The autogen.sh
arguments now contain only enable/disable flags for options that are actually
configurable in configure.ac, the flag value actually reflecting whether the feature
is enabled or disabled in the feature list.

Other features are overridable through modifying the GNUmakefile.features.am file.
All these features are now stored in the build directory and upon change trigger
a rerun of the autogen.sh script, pretty much like the autogen.sh arguments do.

The override-feature-defines script is called by autogen.sh, before GNUmakefile.in is
generated when calling autoreconf. Its task is to copy the GNUmakefile.features.am.in
into GNUmakefile.features.am and modify it if there's a text file in the build directory
that contains all the feature defines the build-webkit script has written. If the build
is not done through build-webkit (and there's no file in build directory listing all the
feature defines) the script does not advance further from copying.

This approach is taken to overcome the rigidness of the automake system as it's impossible
to effectively generate and use GNUmakefile.features.am or even GNUmakefile.features file
after the autoreconf command execution in autogen.sh.

  • Scripts/build-jsc:

(buildMyProject):

  • Scripts/build-webkit:
  • Scripts/webkitdirs.pm:

(runAutogenForAutotoolsProjectIfNecessary):
(mustReRunAutogen):
(buildAutotoolsProject):
(buildGtkProject):

  • Scripts/webkitperl/FeatureList.pm: Update the features that are currently enabled in

Source/WebCore/GNUmakefile.features.am.in but aren't in the feature list.

  • Scripts/webkitpy/style/checker.py: Source/WebCore/GNUmakefile.features.am.in is recognized

as a text file and tabulation errors are reported. Skip the file to suppress them.

  • gtk/override-feature-defines: Added.

(copy_feature_defines_makefile):
(adjust_feature_defines_makefile):
(adjust_feature_defines_makefile.override_feature_define):
(override_feature_defines):

1:29 AM Changeset in webkit [137269] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening

Adding failure expectations for tests that regressed in r137198 and in r137159-r137161 range.
Removing failure expectations for the SVG viewspec tests that now pass.

  • platform/gtk/TestExpectations:
1:29 AM Changeset in webkit [137268] by commit-queue@webkit.org
  • 3 edits
    1 move in trunk/Source/WebCore

[QT][EFL][WK2] Move the GraphicsSurfaceGLX.cpp to common place
https://bugs.webkit.org/show_bug.cgi?id=104433

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

QT and EFL are commonly using the GraphicsSurfaceGLX.cpp and
it looks better to move this file to /glx directory.

  • PlatformEfl.cmake:
  • Target.pri:
  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp: Renamed from Source/WebCore/platform/graphics/surfaces/qt/GraphicsSurfaceGLX.cpp.

(WebCore):
(OffScreenRootWindow):
(WebCore::OffScreenRootWindow::OffScreenRootWindow):
(WebCore::OffScreenRootWindow::getXWindow):
(WebCore::OffScreenRootWindow::display):
(WebCore::OffScreenRootWindow::~OffScreenRootWindow):
(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
(GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::~GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::createSurface):
(WebCore::GraphicsSurfacePrivate::createPixmap):
(WebCore::GraphicsSurfacePrivate::textureIsYInverted):
(WebCore::GraphicsSurfacePrivate::makeCurrent):
(WebCore::GraphicsSurfacePrivate::doneCurrent):
(WebCore::GraphicsSurfacePrivate::swapBuffers):
(WebCore::GraphicsSurfacePrivate::copyFromTexture):
(WebCore::GraphicsSurfacePrivate::display):
(WebCore::GraphicsSurfacePrivate::glxPixmap):
(WebCore::GraphicsSurfacePrivate::size):
(WebCore::resolveGLMethods):
(WebCore::GraphicsSurface::platformExport):
(WebCore::GraphicsSurface::platformGetTextureID):
(WebCore::GraphicsSurface::platformCopyToGLTexture):
(WebCore::GraphicsSurface::platformCopyFromTexture):
(WebCore::GraphicsSurface::platformPaintToTextureMapper):
(WebCore::GraphicsSurface::platformFrontBuffer):
(WebCore::GraphicsSurface::platformSwapBuffers):
(WebCore::GraphicsSurface::platformSize):
(WebCore::GraphicsSurface::platformCreate):
(WebCore::GraphicsSurface::platformImport):
(WebCore::GraphicsSurface::platformLock):
(WebCore::GraphicsSurface::platformUnlock):
(WebCore::GraphicsSurface::platformDestroy):
(WebCore::GraphicsSurface::platformBeginPaint):
(WebCore::GraphicsSurface::createReadOnlyImage):

1:17 AM Changeset in webkit [137267] by mkwst@chromium.org
  • 6 edits
    2 adds in trunk

Web Inspector: Evaluate private browsing mode's effect on console messages.
https://bugs.webkit.org/show_bug.cgi?id=104383

Reviewed by Pavel Feldman.

Source/WebCore:

Two sets of console messages are currently gated on private browsing
mode being inactive. This patch centralizes the private browsing checks
in order to apply them equally to all console messages, and changes the
granularity at which they act.

The current checks block the console messages entirely. This patch
blocks only notifications to ChromeClient and ensures that messages
won't be passed to printf where they might end up in system logs.
Notifications to InspectorInstrumentation seem safe; so far as I can
tell, there's no compelling reason to prevent console-based debugging
in private browsing mode. This patch excludes those calls from the
private browsing check.

Test: inspector/console/clients-ignored-in-privatebrowsing.html

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::printAccessDeniedMessage):

Drop the private browsing check.

  • page/Console.cpp:

(WebCore::Console::addMessage):

Add private browsing checks to the two ::addMessage variants that
do real work. Ensure that calls to printf and notifications to
ChromeClients are gated on these checks, but always allow
notifications to InspectorInstrumentation.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::printErrorMessage):

Drop the private browsing check.

LayoutTests:

  • inspector/console/clients-ignored-in-privatebrowsing-expected.txt: Added.
  • inspector/console/clients-ignored-in-privatebrowsing.html: Added.
  • platform/chromium/TestExpectations:

Skip this test on Chromium, as that port doesn't use PrivateBrowsing

1:15 AM Changeset in webkit [137266] by caseq@chromium.org
  • 3 edits in trunk/LayoutTests

Web Inspector: better coverage for inspector/profiler/cpu-profiler-profiling-without-inspector.html
https://bugs.webkit.org/show_bug.cgi?id=104071

Reviewed by Pavel Feldman.

Extended test by spinning several function for a total of 400ms to provide coverage for sampling profiler.

  • inspector/profiler/cpu-profiler-profiling-without-inspector-expected.txt:
  • inspector/profiler/cpu-profiler-profiling-without-inspector.html:
1:11 AM Changeset in webkit [137265] by danw@gnome.org
  • 5 edits in trunk/Source

[Soup] Fix spelling of "initiating" in API.

Reviewed by Martin Robinson.

Source/WebCore:

No new tests (just internal renaming).

  • platform/network/ResourceHandle.h:

(ResourceHandle):

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore):
(WebCore::setSoupRequestInitiatingPageIDFromNetworkingContext):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::getSoupRequestInitiatingPageID):

Source/WebKit2:

  • WebProcess/soup/WebSoupRequestManager.cpp:

(WebKit::WebSoupRequestManager::send):

1:09 AM Changeset in webkit [137264] by mihnea@adobe.com
  • 3 edits in trunk/LayoutTests

[CSSRegions] Clean-up style for 2 regions expected results files
https://bugs.webkit.org/show_bug.cgi?id=104572

Reviewed by Tony Chang.

Remove Win line endings, remove unnecessary spaces and close all html tags.

  • fast/regions/positioned-objects-block-static-spanning-regions-expected.html:
  • fast/regions/positioned-objects-block-static-spanning-regions-rtl-expected.html:
1:05 AM Changeset in webkit [137263] by Martin Robinson
  • 6 edits
    9 deletes in trunk

[GTK] Remove the Pango backend
https://bugs.webkit.org/show_bug.cgi?id=104569

Reviewed by Daniel Bates.

.:

Always look for Freetype and Harfbuzz. We still depend on Pango for a few
things, so we cannot yet eliminate our dependency on Pango.

  • configure.ac: Always look for FreeType/Harfbuzz.

Source/WebCore:

Remove the Pango backend entirely. The EFL build has no support for it and it's
not really maintained enough for the GTK+ port, now that HarfbuzzNG shapes complex
text when Freetype is the active text rendering backend.

No new tests. This does not change behavior.

  • GNUmakefile.am: Remove Pango backend options and move Freetype options to the common list.
  • GNUmakefile.list.am: Ditto.
  • platform/graphics/FontPlatformData.h:
  • platform/graphics/pango/FontCachePango.cpp: Removed.
  • platform/graphics/pango/FontCustomPlatformDataPango.cpp: Removed.
  • platform/graphics/pango/FontPango.cpp: Removed.
  • platform/graphics/pango/FontPlatformData.h: Removed.
  • platform/graphics/pango/FontPlatformDataPango.cpp: Removed.
  • platform/graphics/pango/GlyphPageTreeNodePango.cpp: Removed.
  • platform/graphics/pango/PangoUtilities.cpp: Removed.
  • platform/graphics/pango/PangoUtilities.h: Removed.
  • platform/graphics/pango/SimpleFontDataPango.cpp: Removed.
12:58 AM Changeset in webkit [137262] by aandrey@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [WebGL] prevent GC from collecting WebGLObject instances currently bound to the context state
https://bugs.webkit.org/show_bug.cgi?id=104119

Reviewed by Pavel Feldman.

This is to prevent GC from collecting resources bound to a context (WebGL or 2D).
Otherwise, for example in WebGL, subsequent calls to gl.getParameter() may return a recently created
instance that is no longer bound to a Resource object (thus, no history to replay it later).

  • inspector/InjectedScriptCanvasModuleSource.js:

(.):

12:32 AM Changeset in webkit [137261] by yurys@chromium.org
  • 8 edits in trunk

Memory instrumentation: make sure each edge is reported only once
https://bugs.webkit.org/show_bug.cgi?id=104630

Reviewed by Pavel Feldman.

Source/JavaScriptCore:

Changed exported symbols for MemoryInstrumentation.

Source/WTF:

Make sure that outgoing edges are reported only once if we come to the same
object twice: first by an address of a base class and then by a real address
of the object.

  • wtf/MemoryInstrumentation.cpp:

(WTF::MemoryInstrumentation::MemoryInstrumentation):
(WTF::MemoryInstrumentation::reportLinkToBuffer):
(WTF::MemoryInstrumentation::InstrumentedPointerBase::InstrumentedPointerBase):
(WTF::MemoryInstrumentation::InstrumentedPointerBase::process):
(WTF::MemoryClassInfo::init):
(WTF::MemoryClassInfo::addRawBuffer):
(WTF::MemoryClassInfo::addPrivateBuffer):

  • wtf/MemoryInstrumentation.h:

(InstrumentedPointerBase):
(MemoryInstrumentation):
(InstrumentedPointer):
(WTF::MemoryClassInfo::MemoryClassInfo):
(WTF::MemoryClassInfo::addMember):
(MemoryClassInfo):
(WTF::::InstrumentedPointer):
(WTF::::callReportMemoryUsage):

  • wtf/MemoryObjectInfo.h:

(WTF::MemoryObjectInfo::MemoryObjectInfo):
(WTF::MemoryObjectInfo::firstVisit):
(WTF::MemoryObjectInfo::className):
(WTF::MemoryObjectInfo::name):
(WTF::MemoryObjectInfo::setAlreadyVisited):
(MemoryObjectInfo):

Tools:

Test that outgoing edges are reported only once if we come to the same
object twice: first by an address of a base class and then by a real address
of the object.

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
12:05 AM Changeset in webkit [137260] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after r137243.

  • bindings/gobject/GNUmakefile.am:
Note: See TracTimeline for information about the timeline view.