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

Timeline



Jan 28, 2013:

11:57 PM Changeset in webkit [141068] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt] Build fix
https://bugs.webkit.org/show_bug.cgi?id=108142

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-01-28
Reviewed by Gyuyoung Kim.

Build fix. Though StorageManager was added to WK2 in r141024,
it is not added to Target.pri for qt port.

  • Target.pri:
11:48 PM Changeset in webkit [141067] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Texmap] Refactor code related to debug border and repaint count.
https://bugs.webkit.org/show_bug.cgi?id=105787

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-28
Reviewed by Noam Rosenthal.

It is a follow-up patch not to change layout test results.

The previous patch sets GraphicsLayer::m_usingTiledLayer to true when using a
backing store. When the variable is true, dumpLayer() adds (usingTiledLayer 1),
but most of ports don't set m_usingTiledLayer to true. So we don't use
m_usingTiledLayer to match the test results of other ports.

After this patch, Texture Mapper draws debug visuals for a tiled backing
with different color from safari.

No new tests. Debug feature, not covered in tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::updateDebugBorderAndRepaintCountIfNeeded):

11:47 PM Changeset in webkit [141066] by esprehn@chromium.org
  • 23 edits in trunk/Source/WebCore

Handle createShadowSubtree inside of ensureUserAgentShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=108116

Reviewed by Dimitri Glazkov.

Instead of making everyone create the UserAgentShadowRoot manually all
over, centralize it in ensureUserAgentShadowRoot() and add a notification
Element::didAddUserAgentShadowRoot that lets elements fill in the subtree.
This lets us get rid of lots of code duplication.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::ensureUserAgentShadowRoot):

  • dom/Element.h:

(WebCore::Element::didAddUserAgentShadowRoot):
(Element):

  • html/HTMLDetailsElement.cpp:

(WebCore::DetailsSummaryElement::create):
(WebCore::HTMLDetailsElement::create):
(WebCore::HTMLDetailsElement::didAddUserAgentShadowRoot):

  • html/HTMLDetailsElement.h:

(HTMLDetailsElement):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::create):
(WebCore::HTMLInputElement::didAddUserAgentShadowRoot):

  • html/HTMLInputElement.h:

(HTMLInputElement):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::willAddAuthorShadowRoot):
(WebCore::HTMLMediaElement::createMediaControls):

  • html/HTMLMediaElement.h:
  • html/HTMLMeterElement.cpp:

(WebCore::HTMLMeterElement::create):
(WebCore::HTMLMeterElement::didAddUserAgentShadowRoot):

  • html/HTMLMeterElement.h:

(HTMLMeterElement):

  • html/HTMLProgressElement.cpp:

(WebCore::HTMLProgressElement::create):
(WebCore::HTMLProgressElement::didAddUserAgentShadowRoot):

  • html/HTMLProgressElement.h:
  • html/HTMLSummaryElement.cpp:

(WebCore::HTMLSummaryElement::create):
(WebCore::HTMLSummaryElement::didAddUserAgentShadowRoot):

  • html/HTMLSummaryElement.h:

(HTMLSummaryElement):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::create):
(WebCore::HTMLTextAreaElement::didAddUserAgentShadowRoot):

  • html/HTMLTextAreaElement.h:
  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlPanelMuteButtonElement::create):
(WebCore::MediaControlVolumeSliderMuteButtonElement::create):
(WebCore::MediaControlPlayButtonElement::create):
(WebCore::MediaControlOverlayPlayButtonElement::create):
(WebCore::MediaControlSeekForwardButtonElement::create):
(WebCore::MediaControlSeekBackButtonElement::create):
(WebCore::MediaControlRewindButtonElement::create):
(WebCore::MediaControlReturnToRealtimeButtonElement::create):
(WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
(WebCore::MediaControlTimelineElement::create):
(WebCore::MediaControlPanelVolumeSliderElement::create):
(WebCore::MediaControlFullscreenVolumeSliderElement::create):
(WebCore::MediaControlFullscreenButtonElement::create):
(WebCore::MediaControlFullscreenVolumeMinButtonElement::create):
(WebCore::MediaControlFullscreenVolumeMaxButtonElement::create):

  • html/shadow/MediaControlsBlackBerry.cpp:

(WebCore::MediaControlFullscreenPlayButtonElement::create):
(WebCore::MediaControlFullscreenFullscreenButtonElement::create):
(WebCore::MediaControlFullscreenTimelineElement::create):
(WebCore::MediaControlAudioMuteButtonElement::create):

  • svg/SVGTRefElement.cpp:

(WebCore::SVGTRefElement::create):

  • svg/SVGTRefElement.h:

(SVGTRefElement):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::create):

  • svg/SVGUseElement.h:

(SVGUseElement):

11:44 PM Changeset in webkit [141065] by commit-queue@webkit.org
  • 13 edits in trunk/Source/WebKit2

Coordinated Graphics: Refactor code related to debug border and repaint count.
https://bugs.webkit.org/show_bug.cgi?id=107910

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-28
Reviewed by Noam Rosenthal.

There are two big changes:

  1. CoordinatedGraphicsLayer sends debugging visuals to UI Process.
  2. When updating a backing store, increment a repaint count.

In addition, we don't use QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
environment. EFL, GTK and QT will use WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
after http://webkit.org/b/107198.

  • Shared/CoordinatedGraphics/CoordinatedLayerInfo.h:

(WebKit::CoordinatedLayerInfo::CoordinatedLayerInfo):
(CoordinatedLayerInfo):

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:

(WebKit::CoordinatedBackingStore::removeAllTiles):
(WebKit::CoordinatedBackingStore::updateTile):
(WebKit::CoordinatedBackingStore::texture):
(WebKit::CoordinatedBackingStore::paintTilesToTextureMapper):
(WebKit::CoordinatedBackingStore::adjustedTransformForRect):
(WebKit::CoordinatedBackingStore::paintToTextureMapper):
(WebKit):
(WebKit::CoordinatedBackingStore::drawBorder):

Override TextureMapperPlatformLayer::drawBorder() to draw the border
for each tile.

(WebKit::CoordinatedBackingStore::drawRepaintCounter):
(WebKit::CoordinatedBackingStore::commitTileOperations):

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:

(WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile):
(CoordinatedBackingStoreTile):
(CoordinatedBackingStore):
(WebKit::CoordinatedBackingStore::rect):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::setLayerRepaintCount):
(WebKit):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(CoordinatedLayerTreeHostProxy):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::setLayerRepaintCount):
(WebKit):
(WebKit::LayerTreeRenderer::setLayerState):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(LayerTreeRenderer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setShowDebugBorder):
(WebCore):
(WebCore::CoordinatedGraphicsLayer::setShowRepaintCounter):
(WebCore::CoordinatedGraphicsLayer::syncLayerState):
(WebCore::CoordinatedGraphicsLayer::setDebugBorder):
(WebCore::CoordinatedGraphicsLayer::tiledBackingStorePaintEnd):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::setLayerRepaintCount):
(WebKit):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
11:40 PM Changeset in webkit [141064] by wangxianzhu@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

Re-enable WebFrameTest.DivScrollIntoEditableTest
https://bugs.webkit.org/show_bug.cgi?id=98558

Reviewed by Adam Barth.

  • tests/WebFrameTest.cpp: Fixed several issues (onload script, the maximum scale factor, etc.) of WebFrameTest.DivScrollIntoEditableTest and enable it.
  • tests/data/get_scale_for_zoom_into_editable_test.html: Moved the logic of onload script (which seems not to work) into WebFrameTest.cpp.
11:31 PM Changeset in webkit [141063] by Vineet
  • 15 edits
    2 deletes in trunk

HTMLOutputElement::htmlFor should be readonly
https://bugs.webkit.org/show_bug.cgi?id=101898

Reviewed by Kentaro Hara.

Source/WebCore:

The spec says htmlFor should be readonly, but WebKit implements it as no-readonly.
Spec: http://dev.w3.org/html5/spec-preview/the-output-element.html

No new tests. Modified existing test fast/dom/HTMLOutputElement/dom-settable-token-list.html
to work as expected.

  • GNUmakefile.list.am: Removed JSHTMLOutputElementCustom.cpp
  • Target.pri: Ditto
  • UseJSC.cmake: Ditto
  • UseV8.cmake: Removed V8HTMLOutputElementCustom.cpp
  • WebCore.gypi: Removed V8HTMLOutputElementCustom.cpp
  • WebCore.vcproj/WebCore.vcproj: Removed JSHTMLOutputElementCustom.cpp
  • WebCore.vcxproj/WebCore.vcxproj: Ditto
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
  • WebCore.xcodeproj/project.pbxproj: Ditto
  • bindings/js/JSBindingsAllInOne.cpp: Ditto
  • bindings/js/JSHTMLOutputElementCustom.cpp: Removed.
  • bindings/v8/custom/V8HTMLOutputElementCustom.cpp: Removed.
  • html/HTMLOutputElement.idl: Made htmlFor attribute readonly.

LayoutTests:

The spec says htmlFor should be readonly, but WebKit implements it as no-readonly.
Spec: http://dev.w3.org/html5/spec-preview/the-output-element.html
Modified tests according to new behavior.

  • fast/dom/HTMLOutputElement/dom-settable-token-list-expected.txt:
  • fast/dom/HTMLOutputElement/script-tests/dom-settable-token-list.js: Test for attribute htmlFor is readonly.
11:29 PM Changeset in webkit [141062] by commit-queue@webkit.org
  • 6 edits
    1 add in trunk/Source

Fix disambiguation popup for new-style page scale
https://bugs.webkit.org/show_bug.cgi?id=107391

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

This patch corrects various coordinate conversion for disambiguation
popup for the new-style page scale mode.

Source/WebCore:

New unit test: WebFrameTest.DisambiguationPopupPageScale

  • page/TouchDisambiguation.cpp:

(WebCore::findGoodTouchTargets):

  • page/TouchDisambiguation.h:

(WebCore):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):
(WebKit::WebViewImpl::handleInputEvent):

  • tests/WebFrameTest.cpp:
  • tests/data/disambiguation_popup_page_scale.html: Added.
11:14 PM Changeset in webkit [141061] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove support from ArgumentEncoder for deprecated encode functions
https://bugs.webkit.org/show_bug.cgi?id=108155

Reviewed by Dan Bernstein.

  • Platform/CoreIPC/ArgumentEncoder.h:

(CoreIPC::ArgumentEncoder::encode):

11:05 PM Changeset in webkit [141060] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Reverting change to chromium/TestExpectation in r141056.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
10:59 PM Changeset in webkit [141059] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Collapse testing for a list of PLATFORM() into OS() and USE() tests
https://bugs.webkit.org/show_bug.cgi?id=108018

Patch by Laszlo Gombos <Laszlo Gombos> on 2013-01-28
Reviewed by Eric Seidel.

No functional change as "OS(DARWIN) && USE(CF)" equals to the
following platforms: MAC, WX, QT and CHROMIUM. CHROMIUM
is not using JavaScriptCore.

  • runtime/DatePrototype.cpp:

(JSC):

10:55 PM Changeset in webkit [141058] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Unreviewed, rolling out r141049.
http://trac.webkit.org/changeset/141049
https://bugs.webkit.org/show_bug.cgi?id=108151

Caused some indexed tests to crash. (Requested by keishi on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-28

Source/WebCore:

  • Modules/indexeddb/IDBCallbacks.h:

(WebCore::IDBCallbacks::onUpgradeNeeded):
(WebCore::IDBCallbacks::onSuccess):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::openConnection):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::onUpgradeNeeded):
(WebCore::IDBOpenDBRequest::onSuccess):

  • Modules/indexeddb/IDBOpenDBRequest.h:

(IDBOpenDBRequest):

Source/WebKit/chromium:

  • public/WebIDBCallbacks.h:

(WebKit):

  • src/IDBCallbacksProxy.cpp:

(WebKit::IDBCallbacksProxy::onUpgradeNeeded):

  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

  • src/WebIDBCallbacksImpl.cpp:

(WebKit::WebIDBCallbacksImpl::onSuccess):
(WebKit::WebIDBCallbacksImpl::onUpgradeNeeded):

  • src/WebIDBCallbacksImpl.h:

(WebIDBCallbacksImpl):

  • tests/IDBAbortOnCorruptTest.cpp:

(WebCore::MockIDBCallbacks::onSuccess):

  • tests/IDBDatabaseBackendTest.cpp:
10:52 PM Changeset in webkit [141057] by abarth@webkit.org
  • 4 edits in trunk

Layout Test http/tests/workers/terminate-during-sync-operation.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=79013

Reviewed by David Levin.

Source/WebCore:

We need to use an isolated copy because we're going to use it on a
different thread.

  • Modules/webdatabase/AbstractDatabase.cpp:

(WebCore::AbstractDatabase::AbstractDatabase):

LayoutTests:

This test shouldn't be flaky anymore.

  • platform/chromium/TestExpectations:
10:50 PM Changeset in webkit [141056] by keishi@webkit.org
  • 5 edits
    6 copies
    11 adds in trunk/LayoutTests

[Chromium] Rebaselining after 141039.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
  • platform/chromium/compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt: Added.
  • platform/chromium/compositing/layer-creation/fixed-position-in-view-dynamic-expected.txt: Added.
  • platform/chromium/compositing/layer-creation/fixed-position-out-of-view-expected.txt: Added.
  • platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
  • platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
  • platform/chromium/compositing/overflow/content-gains-scrollbars-expected.txt:
  • platform/chromium/compositing/overflow/overflow-scrollbar-layers-expected.txt:
  • platform/chromium/compositing/overflow/resize-painting-expected.txt:
  • platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/content-gains-scrollbars-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/content-gains-scrollbars-expected.txt.
  • platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-scrollbar-layers-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/overflow-scrollbar-layers-expected.txt.
  • platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/resize-painting-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/resize-painting-expected.txt.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-in-view-dynamic-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/overflow/content-gains-scrollbars-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/content-gains-scrollbars-expected.txt.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/overflow/overflow-scrollbar-layers-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/overflow-scrollbar-layers-expected.txt.
  • platform/chromium/platform/chromium/virtual/softwarecompositing/overflow/resize-painting-expected.txt: Copied from LayoutTests/platform/chromium/compositing/overflow/resize-painting-expected.txt.
10:35 PM Changeset in webkit [141055] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Expose isRadioButton and isCheckbox API in chromium-webkit glue layer.
https://bugs.webkit.org/show_bug.cgi?id=108031

Patch by Raman Kumar <ramankk@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

In chromium, to know if an InputElement is radiobutton or a checkbox,
we are checking for formControlType (a string comparision), which is
very slow. Exposing these API to chromium will make them faster.

  • public/WebInputElement.h:

(WebInputElement):

  • src/WebInputElement.cpp:

(WebKit::WebInputElement::isRadioButton):
(WebKit):
(WebKit::WebInputElement::isCheckbox):

10:22 PM Changeset in webkit [141054] by shinyak@chromium.org
  • 3 edits
    2 adds in trunk

[Shadow] Gesture event is not fired in ShadowDOM
https://bugs.webkit.org/show_bug.cgi?id=107797

Reviewed by Dimitri Glazkov.

Source/WebCore:

Gesture event (e.g. touchstart) is not fired in ShadowDOM.

We have to run event retargetting algorithm to retarget touchTarget, however it is not implemented yet (Bug 107800).
Until it's implemented, we use the shadow ancestor node of touchTarget in Document treescope as touchTarget
for backward compatibility. If a touch event is fired in nested ShadowDOM, touchTarget will be always element in
document tree, so an event listener in ShadowDOM will get a wrong touchTarget. However we prioritized
the correctness of document tree.

Test: fast/dom/shadow/touch-event.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent): Allows us to take elements in ShadowDOM.

LayoutTests:

  • fast/dom/shadow/touch-event-expected.txt: Added.
  • fast/dom/shadow/touch-event.html: Added.
10:19 PM Changeset in webkit [141053] by aelias@chromium.org
  • 15 edits in trunk/Source

Make page scale shrink FrameView in applyPageScaleInCompositor mode
https://bugs.webkit.org/show_bug.cgi?id=107424

Reviewed by Levi Weintraub.

If applyPageScaleFactorInCompositor is enabled (Chromium-only setting),
instead of the entire document expanding as the user pinch zooms, the
viewport shrinks instead. This patch applies the pageScaleFactor to
visibleContentRect to get this behavior, and simplifies Chromium's
resize logic to stop hiding the true viewport size from WebCore.

I verified that the scaling makes sense for all the callers of
visibleContentRect. The exceptions are clip-layer size,
layout size in non-fixed-layout mode, and text autosizing, which need
the original unscaled size. Therefore I added a new method
unscaledVisibleContentSize() to ScrollView/FrameView.

This patch also modifies Page::setPageScaleFactor to perform no
invalidates or layout when applyPageScaleFactorInCompositor is true,
and also writes pageScaleFactor into HistoryItems instead of using
frameScaleFactor.

Since all behavior changes are tied to applyPageScaleFactorInCompositor,
this patch should be a no-op for non-Chromium ports.

Source/Platform:

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):
(WebKit::WebLayerTreeView::adjustEventPointForPinchZoom):

Source/WebCore:

New unit tests in WebFrameTest.cpp.

  • loader/HistoryController.cpp:

(WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
Use pageScaleFactor here because frameScaleFactor always returns 1
with our setting.

  • page/FrameView.cpp:

(WebCore::FrameView::visibleContentScaleFactor):
(WebCore):

  • page/FrameView.h:

(FrameView):

  • page/Page.cpp:

(WebCore::Page::setPageScaleFactor): Make setPageScaleFactor stop
invalidating/layouting as this is handled by our compositor.

  • platform/ScrollView.cpp:

(WebCore::ScrollView::unscaledVisibleContentSize): This new method
just returns the original visible rect without pageScaleFactor being
applied.
(WebCore):
(WebCore::ScrollView::visibleContentRect): This now is divided by
pageScaleFactor if our setting is active.
(WebCore::ScrollView::layoutSize):

  • platform/ScrollView.h:

(WebCore::ScrollView::visibleContentScaleFactor): Returns
pageScaleFactor if the visible rect is scaled, 1 normally.
(ScrollView):
(WebCore::ScrollView::layoutWidth):
(WebCore::ScrollView::layoutHeight):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::frameViewDidChangeSize):
(WebCore::RenderLayerCompositor::updateRootLayerPosition): Clip layer
should use unscaled size, because it's above the root scroll layer
on the layer tree (i.e. page scale isn't applied on it).

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processSubtree): Text autosizer should use
unscaled size, because it cares about physical screen size.

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::scaledSize): Returns the post page-scale size
similar to what visibleContentRect() now returns, except that it may
be at a different scale than the current one.
(WebKit::WebViewImpl::size): Back to returning density-independent
size without any tricks, not the "layoutSize()" fake viewport.
(WebKit::WebViewImpl::resize):
(WebKit::WebViewImpl::handleInputEvent): No need to apply
implTransform anymore as WebKit knows the true scroll offset; just
divide event coords by pageScaleFactor.
(WebKit::WebViewImpl::clampOffsetAtScale): Make this method support
applyPageScaleFactorInCompositor. This is used to pre-clamp scroll
offsets at a given viewport size.
(WebKit::WebViewImpl::setPageScaleFactorPreservingScrollOffset): Make
this method support applyPageScaleFactorInCompositor (don't scale
scroll offsets as they are now scale-independent).
(WebKit::WebViewImpl::setPageScaleFactor): Make this method always use
clampOffsetAtScale instead of bypassing it, since it's now supported.
Also notify the compositor to update its state.
(WebKit::WebViewImpl::contentsSize): Convenience method, removed
difference between scaled and unscaled.
(WebKit::WebViewImpl::layoutSize): This method returned the "fake"
size we used to give FrameView. Now no longer used for much.
(WebKit::WebViewImpl::computePageScaleFactorLimits):
(WebKit::WebViewImpl::didChangeContentsSize): Remove unnecessary
resize() now that we can give the true size to FrameView.
(WebKit::WebViewImpl::updateLayerTreeViewport): Use layoutSize()
directly now that FrameView no longer uses it.

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp:
10:05 PM Changeset in webkit [141052] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Disable default use of the Plug-in XPCService until we can
figure out how to deal with the 32-bit one.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::shouldUseXPC):
(WebKit::PluginProcessProxy::platformInitializeLaunchOptions):

9:58 PM Changeset in webkit [141051] by weinig@apple.com
  • 27 edits
    2 adds in trunk/Source/WebKit2

Plug-ins should initialize their sandbox at creation time
https://bugs.webkit.org/show_bug.cgi?id=108098

Reviewed by Anders Carlsson.

Add the ability to add string key/value pairs to process creation parameters
to allow the plugin process to get passed the plugin path which in turn allows
the plugin to initialize its sandbox at the correct time.

  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/NetworkServiceMain.Development.mm:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:

(NetworkServiceInitializer):

  • PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:

(WebKit::PluginProcessMainDelegate::getExtraData):
(PluginProcessMainDelegate):

  • PluginProcess/EntryPoint/mac/XPCService/PluginService.32/PluginService.32.Main.mm:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.64/PluginService.64.Main.mm:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/PluginService.Development.Main.mm:
  • PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:

(WebKit):
(PluginServiceInitializerDelegate):
(WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
(WebKit::PluginServiceInitializerDelegate::getExtraData):
(PluginServiceInitializer):

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::initializeProcess):
(WebKit::PluginProcess::initializePluginProcess):
(WebKit::PluginProcess::initializeProcessName):
(WebKit::PluginProcess::initializeSandbox):

  • PluginProcess/PluginProcess.h:
  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::PluginProcess::platformInitializePluginProcess):
(WebKit::PluginProcess::platformInitializeProcess):
(WebKit::PluginProcess::initializeProcessName):
(WebKit::PluginProcess::initializeSandbox):

  • Shared/ChildProcess.h:

(ChildProcessInitializationParameters):

  • Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.h:

(ChildProcessMainDelegate):
(WebKit::ChildProcessMain):

  • Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm:

(WebKit::ChildProcessMainDelegate::getExtraData):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h:

(WebKit::XPCServiceEventHandler):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.h:

(WebKit::XPCServiceEventHandler):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h: Added.

(XPCServiceInitializerDelegate):
(WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
(WebKit::XPCServiceInitializer):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm: Added.

(WebKit::XPCServiceInitializerDelegate::~XPCServiceInitializerDelegate):
(WebKit::XPCServiceInitializerDelegate::getConnectionIdentifier):
(WebKit::XPCServiceInitializerDelegate::getClientIdentifier):
(WebKit::XPCServiceInitializerDelegate::getClientProcessName):
(WebKit::XPCServiceInitializerDelegate::getExtraData):

  • Shared/Plugins/PluginProcessCreationParameters.cpp:

(WebKit::PluginProcessCreationParameters::encode):
(WebKit::PluginProcessCreationParameters::decode):

  • Shared/Plugins/PluginProcessCreationParameters.h:

(PluginProcessCreationParameters):

  • UIProcess/Launcher/ProcessLauncher.h:

(LaunchOptions):

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::connectToService):
(WebKit::connectToReExecService):
(WebKit::createService):
(WebKit::createProcess):
(WebKit::ProcessLauncher::launchProcess):

  • UIProcess/Plugins/PluginProcessProxy.cpp:

(WebKit::PluginProcessProxy::didFinishLaunching):

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
(WebKit::PluginProcessProxy::platformInitializePluginProcess):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm:
  • WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:

(WebContentServiceInitializer):

9:48 PM Changeset in webkit [141050] by ggaren@apple.com
  • 67 edits
    4 adds in trunk/Source

Static size inference for JavaScript objects
https://bugs.webkit.org/show_bug.cgi?id=108093

Reviewed by Phil Pizlo.

../JavaScriptCore:

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode): op_new_object and op_create_this now
have an extra inferredInlineCapacity argument. This is the statically
inferred inline capacity, just from analyzing source text. op_new_object
also gets a pointer to an allocation profile. (For op_create_this, the
profile is in the construtor function.)

(JSC::CodeBlock::CodeBlock): Link op_new_object.

(JSC::CodeBlock::stronglyVisitStrongReferences): Mark our profiles.

  • bytecode/CodeBlock.h:

(CodeBlock): Removed some dead code. Added object allocation profiles.

  • bytecode/Instruction.h:

(JSC): New union type, since an instruction operand may point to an
object allocation profile now.

  • bytecode/ObjectAllocationProfile.h: Added.

(JSC):
(ObjectAllocationProfile):
(JSC::ObjectAllocationProfile::offsetOfAllocator):
(JSC::ObjectAllocationProfile::offsetOfStructure):
(JSC::ObjectAllocationProfile::ObjectAllocationProfile):
(JSC::ObjectAllocationProfile::isNull):
(JSC::ObjectAllocationProfile::initialize):
(JSC::ObjectAllocationProfile::structure):
(JSC::ObjectAllocationProfile::inlineCapacity):
(JSC::ObjectAllocationProfile::clear):
(JSC::ObjectAllocationProfile::visitAggregate):
(JSC::ObjectAllocationProfile::possibleDefaultPropertyCount): New class
for tracking a prediction about object allocation: structure, inline
capacity, allocator to use.

  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName): Updated instruction sizes.

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):

  • bytecode/UnlinkedCodeBlock.h:

(JSC):
(JSC::UnlinkedCodeBlock::addObjectAllocationProfile):
(JSC::UnlinkedCodeBlock::numberOfObjectAllocationProfiles):
(UnlinkedCodeBlock): Unlinked support for allocation profiles.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::generate): Kill all remaining analyses at the
end of codegen, since this is our last opportunity.

(JSC::BytecodeGenerator::BytecodeGenerator): Added a static property
analyzer to bytecode generation. It tracks initializing assignments and
makes a guess about how many will happen.

(JSC::BytecodeGenerator::newObjectAllocationProfile):
(JSC):
(JSC::BytecodeGenerator::emitProfiledOpcode):
(JSC::BytecodeGenerator::emitMove):
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitResolveBase):
(JSC::BytecodeGenerator::emitResolveBaseForPut):
(JSC::BytecodeGenerator::emitResolveWithBaseForPut):
(JSC::BytecodeGenerator::emitResolveWithThis):
(JSC::BytecodeGenerator::emitGetById):
(JSC::BytecodeGenerator::emitPutById):
(JSC::BytecodeGenerator::emitDirectPutById):
(JSC::BytecodeGenerator::emitPutGetterSetter):
(JSC::BytecodeGenerator::emitGetArgumentByVal):
(JSC::BytecodeGenerator::emitGetByVal): Added hooks to the static property
analyzer, so it can observe allocations and stores.

(JSC::BytecodeGenerator::emitCreateThis): Factored this into a helper
function because it was a significant amount of logic, and I wanted to
add to it.

(JSC::BytecodeGenerator::emitNewObject):
(JSC::BytecodeGenerator::emitExpectedFunctionSnippet):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitCallVarargs):
(JSC::BytecodeGenerator::emitConstruct): Added a hook to profiled opcodes
to track their stores, in case a store kills a profiled allocation. Since
profiled opcodes are basically the only interesting stores we do, this
is a convenient place to notice any store that might kill an allocation.

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator): As above.

  • bytecompiler/StaticPropertyAnalysis.h: Added.

(JSC):
(StaticPropertyAnalysis):
(JSC::StaticPropertyAnalysis::create):
(JSC::StaticPropertyAnalysis::addPropertyIndex):
(JSC::StaticPropertyAnalysis::record):
(JSC::StaticPropertyAnalysis::propertyIndexCount):
(JSC::StaticPropertyAnalysis::StaticPropertyAnalysis): Simple helper
class for tracking allocations and stores.

  • bytecompiler/StaticPropertyAnalyzer.h: Added.

(StaticPropertyAnalyzer):
(JSC::StaticPropertyAnalyzer::StaticPropertyAnalyzer):
(JSC::StaticPropertyAnalyzer::createThis):
(JSC::StaticPropertyAnalyzer::newObject):
(JSC::StaticPropertyAnalyzer::putById):
(JSC::StaticPropertyAnalyzer::mov):
(JSC::StaticPropertyAnalyzer::kill): Helper class for observing allocations
and stores and making an inline capacity guess. The heuristics here are
intentionally minimal because we don't want this one class to try to
re-create something like a DFG or a runtime analysis. If we discover that
we need those kinds of analyses, we should just replace this class with
something else.

This class tracks multiple registers that alias the same object -- that
happens a lot, when moving locals into temporary registers -- but it
doesn't track control flow or multiple objects that alias the same register.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute): Updated for rename.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock): Updated for inline capacity and
allocation profile.

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasInlineCapacity):
(Node):
(JSC::DFG::Node::inlineCapacity):
(JSC::DFG::Node::hasFunction): Give the graph a good way to represent
inline capacity for an allocation.

  • dfg/DFGNodeType.h:

(DFG): Updated for rename.

  • dfg/DFGOperations.cpp: Updated for interface change.
  • dfg/DFGOperations.h: We pass the inline capacity to the slow case as

an argument. This is the simplest way, since it's stored as a bytecode operand.

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate): Updated for rename.

  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryCacheGetByID): Fixed a horrible off-by-one-half bug that only
appears when doing an inline cached load for property number 64 on a 32-bit
system. In JSVALUE32_64 land, "offsetRelativeToPatchedStorage" is the
offset of the 64bit JSValue -- but we'll actually issue two loads, one for
the payload at that offset, and one for the tag at that offset + 4. We need
to ensure that both loads have a compact representation, or we'll corrupt
the instruction stream.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::emitAllocateJSArray):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):
(JSC::DFG::SpeculativeJIT::emitAllocateBasicStorage):
(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::emitAllocateJSObject):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile): Lots of refactoring to support
passing an allocator to our allocation function, and/or passing a Structure
as a register instead of an immediate.

  • heap/MarkedAllocator.h:

(DFG):
(MarkedAllocator):
(JSC::MarkedAllocator::offsetOfFreeListHead): Added an accessor to simplify
JIT code generation of allocation from an arbitrary allocator.

  • jit/JIT.h:

(JSC):

  • jit/JITInlines.h:

(JSC):
(JSC::JIT::emitAllocateJSObject):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_new_object):
(JSC::JIT::emitSlow_op_new_object):
(JSC::JIT::emit_op_create_this):
(JSC::JIT::emitSlow_op_create_this):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_new_object):
(JSC::JIT::emitSlow_op_new_object):
(JSC::JIT::emit_op_create_this):
(JSC::JIT::emitSlow_op_create_this): Same refactoring as done for the DFG.

  • jit/JITStubs.cpp:

(JSC::tryCacheGetByID): Fixed the same bug mentioned above.

(JSC::DEFINE_STUB_FUNCTION): Updated for interface changes.

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions): Updated for interface changes.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm: Same refactoring as for the JITs.
  • profiler/ProfilerBytecode.cpp:
  • profiler/ProfilerBytecodes.cpp:
  • profiler/ProfilerCompilation.cpp:
  • profiler/ProfilerCompiledBytecode.cpp:
  • profiler/ProfilerDatabase.cpp:
  • profiler/ProfilerOSRExit.cpp:
  • profiler/ProfilerOrigin.cpp:
  • profiler/ProfilerProfiledBytecodes.cpp: Include ObjectConstructor.h

because that's where createEmptyObject() lives now.

  • runtime/Executable.h:

(JSC::JSFunction::JSFunction): Updated for rename.

  • runtime/JSCellInlines.h:

(JSC::allocateCell): Updated to match the allocator selection code in
the JIT, so it's clearer that both are correct.

  • runtime/JSFunction.cpp:

(JSC::JSFunction::JSFunction):
(JSC::JSFunction::createAllocationProfile):
(JSC::JSFunction::visitChildren):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::put):
(JSC::JSFunction::defineOwnProperty):
(JSC::JSFunction::getConstructData):

  • runtime/JSFunction.h:

(JSC::JSFunction::offsetOfScopeChain):
(JSC::JSFunction::offsetOfExecutable):
(JSC::JSFunction::offsetOfAllocationProfile):
(JSC::JSFunction::allocationProfile):
(JSFunction):
(JSC::JSFunction::tryGetAllocationProfile):
(JSC::JSFunction::addAllocationProfileWatchpoint): Changed inheritorID
data member to be an ObjectAllocationProfile, which includes a pointer
to the desired allocator. This simplifies JIT code, since we don't have
to compute the allocator on the fly. I verified by code inspection that
JSFunction is still only 64 bytes.

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):
(JSC::JSGlobalObject::visitChildren):

  • runtime/JSGlobalObject.h:

(JSGlobalObject):
(JSC::JSGlobalObject::dateStructure): No direct pointer to the empty
object structure anymore, because now clients need to specify how much
inline capacity they want.

  • runtime/JSONObject.cpp:
  • runtime/JSObject.h:

(JSC):
(JSFinalObject):
(JSC::JSFinalObject::defaultInlineCapacity):
(JSC::JSFinalObject::maxInlineCapacity):
(JSC::JSFinalObject::createStructure): A little refactoring to try to
clarify where some of these constants derive from.

(JSC::maxOffsetRelativeToPatchedStorage): Used for bug fix, above.

  • runtime/JSProxy.cpp:

(JSC::JSProxy::setTarget): Ugly, but effective.

  • runtime/LiteralParser.cpp:
  • runtime/ObjectConstructor.cpp:

(JSC::constructObject):
(JSC::constructWithObjectConstructor):
(JSC::callObjectConstructor):
(JSC::objectConstructorCreate): Updated for interface changes.

  • runtime/ObjectConstructor.h:

(JSC::constructEmptyObject): Clarified your options for how to allocate
an empty object, to emphasize what things can actually vary.

  • runtime/PropertyOffset.h: These constants have moved because they're

really higher level concepts to do with the layout of objects and the
collector. PropertyOffset is just an abstract number line, independent
of those things.

  • runtime/PrototypeMap.cpp:

(JSC::PrototypeMap::emptyObjectStructureForPrototype):
(JSC::PrototypeMap::clearEmptyObjectStructureForPrototype):

  • runtime/PrototypeMap.h:

(PrototypeMap): The map key is now a pair of prototype and inline capacity,
since Structure encodes inline capacity.

  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTableForPinning):

  • runtime/Structure.h:

(Structure):
(JSC::Structure::totalStorageSize):
(JSC::Structure::transitionCount):
(JSC::Structure::create): Fixed a nasty refactoring bug that only shows
up after enabling variable-sized inline capacities: we were passing our
type info where our inline capacity was expected. The compiler didn't
notice because both have type int :(.

../WebCore:

  • ForwardingHeaders/runtime/ObjectConstructor.h: Added.
  • bindings/js/JSInjectedScriptHostCustom.cpp:
  • bindings/js/JSSQLResultSetRowListCustom.cpp: Include ObjectConstructor.h because

that's where createEmptyObject() is located now.

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneDeserializer::deserialize): Updated for interface change.

9:40 PM Changeset in webkit [141049] by alecflett@chromium.org
  • 13 edits in trunk/Source

IndexedDB: Pass metadata in to IDBOpenDBRequest.onUpgradeNeeded/onSuccess
https://bugs.webkit.org/show_bug.cgi?id=103920

Reviewed by Dimitri Glazkov.

Source/WebCore:

Update IDBCallbacks::onSuccess and IDBCallbacks::onUpgradeNeeded to
pass through a metadata parameter. While there, remove the unused
IDBTransactionBackendInterface parameter to onUpgradeNeeded.

As this is another step in the IDB refactor, I've simplified future cleanup
work by making the WebKit API code still use the old API. This
will make it possible to outright remove code on the chromium side rather
than another three-step checkin.

No new tests, as this is more refactoring.

  • Modules/indexeddb/IDBCallbacks.h:

(WebCore::IDBCallbacks::onUpgradeNeeded): new method signature.
(WebCore::IDBCallbacks::onSuccess): new method signature.

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::openConnection):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::onUpgradeNeeded): use passed-in metadata.
(WebCore::IDBOpenDBRequest::onSuccess): use passed-in metadata.

  • Modules/indexeddb/IDBOpenDBRequest.h:

(IDBOpenDBRequest):

Source/WebKit/chromium:

Support the new IDBCallbacks::onSuccess and IDBCallbacks::onUpgradeNeeded
while maintaining chromium compatibility by shimming in the old API
in the WebKit side. Future code will clean this up so that it is just a
pass-through as it was before.

  • public/WebIDBCallbacks.h:

(WebKit):
(WebKit::WebIDBCallbacks::onSuccess): new method signature.
(WebKit::WebIDBCallbacks::onUpgradeNeeded): new method signature.

  • src/IDBCallbacksProxy.cpp:

(WebKit::IDBCallbacksProxy::onSuccess): call on new method signature proxies through old API.
(WebKit):
(WebKit::IDBCallbacksProxy::onUpgradeNeeded): call on new method signature proxies through old API.

  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

  • src/WebIDBCallbacksImpl.cpp:

(WebKit::WebIDBCallbacksImpl::onSuccess): call on old WebKit proxy signature calls new API.
(WebKit):
(WebKit::WebIDBCallbacksImpl::onUpgradeNeeded): call on old WebKit proxy signature calls new API.

  • src/WebIDBCallbacksImpl.h:

(WebIDBCallbacksImpl):

  • tests/IDBAbortOnCorruptTest.cpp: new method signature.

(WebCore::MockIDBCallbacks::onSuccess):

  • tests/IDBDatabaseBackendTest.cpp: new method signature.
9:23 PM Changeset in webkit [141048] by Lucas Forschler
  • 2 edits in tags/Safari-537.28.2/Source/WebKit2

Merged r141027. <rdar://problem/13098777>

9:17 PM Changeset in webkit [141047] by Lucas Forschler
  • 4 edits in tags/Safari-537.28.2/Source

Versioning.

9:14 PM Changeset in webkit [141046] by Lucas Forschler
  • 1 copy in tags/Safari-537.28.2

New Tag.

9:11 PM Changeset in webkit [141045] by commit-queue@webkit.org
  • 6 edits in trunk

Add window occlusion criteria to determine page visibility on Mac
https://bugs.webkit.org/show_bug.cgi?id=107494

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-01-28
Reviewed by Simon Fraser.

Source/WebKit2:

  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::isViewVisible): Add window occlusion check.

  • UIProcess/API/mac/WKView.mm:

(-[WKView dealloc]): Remove self from the all views vector.
(-[WKView addWindowObserversForWindow:]): Register observer for
NSWindowWillOrderOffScreenNotification.
(-[WKView removeWindowObservers]): Unregister observer for
NSWindowWillOrderOffScreenNotification.
(-[WKView viewWillMoveToWindow:]): Disable occlusion notifications.
(-[WKView viewDidMoveToWindow]): Enable occlusion notifications.
(-[WKView _windowWillOrderOffScreen:]): Disable occlusion notifications.
(-[WKView _windowDidOrderOnScreen:]): Enable occlusion notifications.
This notification ensures that occlusion notifications are registered
correctly even if the NSWindow object is assigned a window number after
the viewDidMoveToWindow notification has been received. This occurs
for instance during application launch.
(-[WKView _setIsWindowOccluded:]):
(-[WKView _enableWindowOcclusionNotifications]):
(-[WKView _disableWindowOcclusionNotifications]):
(windowBecameVisible):
(windowBecameOccluded):
(+[WKView _registerWindowOcclusionNotificationHandlers]):
(+[WKView _unregisterWindowOcclusionNotificationHandlers]):
(+[WKView _allViews]):
(-[WKView _isWindowOccluded]):
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): Add
self to the all views vector.

  • UIProcess/API/mac/WKViewInternal.h:

WebKitLibraries:

Add enum constants to specify window occlusion notification type to
notification registration/unregistration methods. Add typedef for
window ID data passed to the window occlusion notification handler.
Add method to enable occlusion notifications for a particular window.

  • WebKitSystemInterface.h: Add

WKOcclusionNotificationTypeWindowBecameVisible,
WKOcclusionNotificationTypeWindowBecameOccluded,
WKWindowID,
WKEnableWindowOcclusionNotifications().

8:47 PM Changeset in webkit [141044] by keishi@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[Chromium] Rebaselining integer-modulo after r141031.

Unreviewed. Gardening.

  • platform/chromium/fast/js/regress/integer-modulo-expected.txt: Added.
8:41 PM Changeset in webkit [141043] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Small animated zoom level adjustments are unnecessary
https://bugs.webkit.org/show_bug.cgi?id=108104

Patch by Andrew Lo <anlo@rim.com> on 2013-01-28
Reviewed by Rob Buis.
Internally reviewed by Mike Fenton.

Internal PR 285861.
If the difference between the target scale and current scale is
less than a given threshold, don't perform a zoom animation.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):

8:38 PM Changeset in webkit [141042] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

fix multi-touch-inside-iframes Layout test
https://bugs.webkit.org/show_bug.cgi?id=108113

Patch by Min Qin <qinmin@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

The ordering of OnLoad() of the 2 child iframes is racy.
Fixed by assigning title from the parent frame.

  • fast/events/touch/multi-touch-inside-iframes.html:
  • fast/events/touch/resources/multi-touch-inside-iframes2.html:
8:37 PM Changeset in webkit [141041] by nghanavatian@rim.com
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Reduce the region that is spellchecked on keystroke
https://bugs.webkit.org/show_bug.cgi?id=108115

Reviewed by Rob Buis.

PR288217
Instead of blindly checking text until endOfDocument, we should be honoring the boundaries of
the VisibleSelection that is passed into SpellingHandler. Though this results in the same behavior
on focus, this dramatically reduces the region that is rechecked when a key is hit.

Internally reviewed by Mike Fenton.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::requestCheckingOfString):

  • WebKitSupport/SpellingHandler.cpp:

(BlackBerry::WebKit::SpellingHandler::spellCheckTextBlock):
(BlackBerry::WebKit::SpellingHandler::parseBlockForSpellChecking):

  • WebKitSupport/SpellingHandler.h:

(SpellingHandler):

8:32 PM Changeset in webkit [141040] by commit-queue@webkit.org
  • 10 edits in trunk/Source

[TexMap] Enable debug borders and repaint counter via Settings.
https://bugs.webkit.org/show_bug.cgi?id=107198

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-28
Reviewed by Benjamin Poulain.

Source/WebKit/efl:

If WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS is set to 1, set
showDebugBorders and showRepaintCounter in Settings to true.

  • ewk/ewk_view.cpp:

(_ewk_view_priv_new):

Source/WebKit/gtk:

If WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS is set to 1, set
showDebugBorders and showRepaintCounter in Settings to true.

  • webkit/webkitwebview.cpp:

(webkit_web_view_update_settings):

Source/WebKit/qt:

If WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS is set to 1, set
showDebugBorders and showRepaintCounter in Settings to true.

  • Api/qwebsettings.cpp:

(QWebSettingsPrivate::apply):

Source/WebKit2:

Currently, if the environment variable WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
is set to 1, only CoordinatedBacking shows debug borders and repaint counter.

This patch makes the environment variable change Settings.

In addition, Qt uses WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS instead of
QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS from now.

After Bug 105787, all backing stores and platform layers in TextureMapper can
show debug borders and repaint counter.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::EwkView):

  • UIProcess/API/gtk/WebKitSettings.cpp:

(webKitSettingsSetProperty):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

8:16 PM Changeset in webkit [141039] by Simon Fraser
  • 13 edits
    1 copy
    1 add in trunk

position:fixed that doesn't render any content should not force compositing
https://bugs.webkit.org/show_bug.cgi?id=108112

Source/WebCore:

Reviewed by Beth Dakin.

It's not uncommon for pages to have position:fixed elements with no content.
When these are behind other elements, they can cause those other elements
to become composited, using lots of backing store memory.

Optimize for the case where the position:fixed element has no rendered
content and no children by not making it composited in that case.

Test: compositing/layer-creation/fixed-position-no-content.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::hasNonEmptyChildRenderers): Moved from RenderLayerBacking.cpp.
(WebCore::hasBoxDecorations): Ditto.
(WebCore::RenderLayer::hasBoxDecorationsOrBackground): Ditto.
(WebCore::RenderLayer::hasVisibleBoxDecorations): Check for visibility:visible, box decorations and
overflow controls.
(WebCore::RenderLayer::isVisuallyNonEmpty): Returns true if this layer has some visible
representation.

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

(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Need to call updateDescendantDependentFlags()
to ensure that the visibility flags are up to date.
(WebCore::RenderLayerBacking::updateDrawsContent): Call RenderLayer::hasBoxDecorationsOrBackground() now.
(WebCore::RenderLayerBacking::paintsBoxDecorations): Call RenderLayer::hasVisibleBoxDecorations() now.
(WebCore::RenderLayerBacking::paintsChildren): Call RenderLayer::hasNonEmptyChildRenderers().
(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer): Whitespace.
(WebCore::RenderLayerBacking::containsPaintedContent): Call RenderLayer::hasBoxDecorationsOrBackground().
(WebCore::RenderLayerBacking::isDirectlyCompositedImage): Ditto.

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForPosition): If the layer has no content to paint,
or visible descendant layers, then don't make it composited.

LayoutTests:

Reviewed by Beth Dakin.

Change tests to put a background color on position:fixed elements that need to be composited.
New test with an empty fixed position element.

  • compositing/layer-creation/fixed-position-change-out-of-view-in-view.html:
  • compositing/layer-creation/fixed-position-no-content-expected.txt: Added.
  • compositing/layer-creation/fixed-position-no-content.html: Copied from LayoutTests/compositing/layer-creation/fixed-position-out-of-view.html.
  • compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html:
  • compositing/layer-creation/fixed-position-out-of-view-scaled.html:
  • compositing/layer-creation/fixed-position-out-of-view.html:
  • platform/mac/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex.html:
  • platform/mac/tiled-drawing/fixed/fixed-position-out-of-view.html:
7:51 PM Changeset in webkit [141038] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Skipping mathml tests because MATHML was disasbled.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
7:47 PM Changeset in webkit [141037] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Move Mach port handling from WorkQueue to Connection
https://bugs.webkit.org/show_bug.cgi?id=108140

Reviewed by Sam Weinig.

Instead of having WorkQueue know about Mach port sources, just fold that
functionality directly into Connection. This lets us get rid of the generic source
handling from WorkQueue.

  • Platform/CoreIPC/Connection.h:

(Connection):

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::Connection::platformInvalidate):
(CoreIPC::createDataAvailableSource):
(CoreIPC):
(CoreIPC::Connection::open):
(CoreIPC::Connection::initializeDeadNameSource):

  • Platform/WorkQueue.h:

(WorkQueue::dispatchQueue):
(WorkQueue):

  • Platform/mac/WorkQueueMac.cpp:

(WorkQueue::platformInvalidate):

7:42 PM Changeset in webkit [141036] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Avoid doing work at 60fps for tiled layers when not necessary
https://bugs.webkit.org/show_bug.cgi?id=108135

Reviewed by Dean Jackson.

When there were any tiled layers on the page, we would run a CVDisplayLink
to cause GraphicsLayerCA to flush, in order to update tiled layer visible rects.
This is overkill; we should only do this if the tiled layer is affected by
an accelerated animation.

Fix by tracking whether an ancestor has a running animation when committing
GraphicsLayerCAs.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::flushCompositingState): Start with an empty CommitState.
(WebCore::GraphicsLayerCA::recursiveCommitChanges): Push CommitState for
each layer, which tracks whether an ancestor has a running transform animation.
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): updateLayerAnimations() renamed.
(WebCore::GraphicsLayerCA::updateAnimations): Renamed from updateLayerAnimations().
(WebCore::GraphicsLayerCA::isRunningTransformAnimation): Look in the map of running
animations for one affecting transform. This list is normally small (one item).

  • platform/graphics/ca/GraphicsLayerCA.h:

(WebCore::GraphicsLayerCA::CommitState::CommitState):

7:42 PM Changeset in webkit [141035] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

compositing/reflections/become-simple-composited-reflection.html pixel result shows bug
https://bugs.webkit.org/show_bug.cgi?id=107174

Reviewed by Dean Jackson.

When we have a content layer for solid color, we need to update reflection
clones when that color changes.

Tested by the pixel test for compositing/reflections/become-simple-composited-reflection.html.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateContentsColorLayer):

6:37 PM Changeset in webkit [141034] by abarth@webkit.org
  • 163 edits in trunk/Source

[v8] Security feature: JavaScript Bindings hardening
https://bugs.webkit.org/show_bug.cgi?id=106608

Source/WebCore:

The patch adds a check at wrapper creation time to enuse that the
object being wrapped is not already free, to the extent that we know
the information about the type of the object as provided in the IDL.

Patch by Tom Sepez <tsepez@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

Patch is correct if existing tests pass without new crashes.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementation):
(GenerateToV8Converters):
(GetNativeTypeForConversions):
(GetGnuVTableRefForInterface):
(GetGnuVTableNameForInterface):
(GetGnuMangledNameForInterface):
(GetGnuVTableOffsetForType):
(GetWinVTableRefForInterface):
(GetWinVTableNameForInterface):
(GetWinMangledNameForInterface):
(GetNamespaceForInterface):
(GetImplementationLacksVTableForInterface):
(GetV8SkipVTableValidationForInterface):
Update code generation to add object validity tests under the control
of the ENABLE_BINDING_INTEGRITY option.

  • Modules/filesystem/DirectoryReader.idl:
  • Modules/filesystem/DirectoryReaderSync.idl:
  • Modules/filesystem/EntryArray.idl:
  • Modules/filesystem/EntryArraySync.idl:
  • Modules/filesystem/Metadata.idl:
  • Modules/gamepad/Gamepad.idl:
  • Modules/gamepad/GamepadList.idl:
  • Modules/geolocation/Geoposition.idl:
  • Modules/geolocation/PositionError.idl:
  • Modules/indexeddb/IDBFactory.idl:
  • Modules/indexeddb/IDBIndex.idl:
  • Modules/indexeddb/IDBKeyRange.idl:
  • Modules/indexeddb/IDBObjectStore.idl:
  • Modules/mediastream/RTCStatsElement.idl:
  • Modules/mediastream/RTCStatsReport.idl:
  • Modules/quota/StorageInfo.idl:
  • Modules/speech/SpeechGrammar.idl:
  • Modules/speech/SpeechGrammarList.idl:
  • Modules/speech/SpeechRecognitionAlternative.idl:
  • Modules/speech/SpeechRecognitionResult.idl:
  • Modules/speech/SpeechRecognitionResultList.idl:
  • Modules/webaudio/AudioBuffer.idl:
  • Modules/webaudio/AudioDestinationNode.idl:
  • Modules/webaudio/AudioListener.idl:
  • Modules/webaudio/AudioSourceNode.idl:
  • Modules/webaudio/WaveTable.idl:
  • Modules/webdatabase/SQLError.idl:
  • Modules/webdatabase/SQLException.idl:
  • Modules/webdatabase/SQLResultSet.idl:
  • Modules/webdatabase/SQLResultSetRowList.idl:
  • Modules/webdatabase/SQLTransaction.idl:
  • Modules/webdatabase/SQLTransactionSync.idl:
  • bindings/scripts/IDLAttributes.txt:
  • css/CSSPrimitiveValue.idl:
  • css/CSSRule.idl:
  • css/CSSRuleList.idl:
  • css/CSSStyleDeclaration.idl:
  • css/CSSValue.idl:
  • css/CSSValueList.idl:
  • css/Counter.idl:
  • css/MediaList.idl:
  • css/MediaQueryList.idl:
  • css/RGBColor.idl:
  • css/Rect.idl:
  • css/StyleSheetList.idl:
  • css/WebKitCSSFilterValue.idl:
  • css/WebKitCSSMixFunctionValue.idl:
  • css/WebKitCSSTransformValue.idl:
  • dom/ClientRect.idl:
  • dom/ClientRectList.idl:
  • dom/Clipboard.idl:
  • dom/DOMCoreException.idl:
  • dom/DOMError.idl:
  • dom/DOMImplementation.idl:
  • dom/DOMNamedFlowCollection.idl:
  • dom/DOMStringList.idl:
  • dom/DOMStringMap.idl:
  • dom/DataTransferItem.idl:
  • dom/DataTransferItemList.idl:
  • dom/DocumentFragment.idl:
  • dom/Element.idl:
  • dom/Entity.idl:
  • dom/Event.idl:
  • dom/EventException.idl:
  • dom/MessageChannel.idl:
  • dom/MouseEvent.idl:
  • dom/MutationObserver.idl:
  • dom/MutationRecord.idl:
  • dom/NamedNodeMap.idl:
  • dom/NodeFilter.idl:
  • dom/NodeIterator.idl:
  • dom/NodeList.idl:
  • dom/Range.idl:
  • dom/RangeException.idl:
  • dom/Touch.idl:
  • dom/TouchList.idl:
  • dom/TreeWalker.idl:
  • fileapi/FileError.idl:
  • fileapi/FileException.idl:
  • fileapi/FileList.idl:
  • html/DOMFormData.idl:
  • html/DOMTokenList.idl:
  • html/DOMURL.idl:
  • html/HTMLAllCollection.idl:
  • html/HTMLCollection.idl:
  • html/HTMLDialogElement.idl:
  • html/HTMLDivElement.idl:
  • html/HTMLDocument.idl:
  • html/HTMLElement.idl:
  • html/HTMLImageElement.idl:
  • html/HTMLInputElement.idl:
  • html/HTMLSelectElement.idl:
  • html/HTMLSpanElement.idl:
  • html/HTMLUnknownElement.idl:
  • html/ImageData.idl:
  • html/MediaError.idl:
  • html/MediaKeyError.idl:
  • html/TimeRanges.idl:
  • html/ValidityState.idl:
  • html/canvas/ArrayBuffer.idl:
  • html/canvas/ArrayBufferView.idl:
  • html/canvas/CanvasGradient.idl:
  • html/canvas/CanvasPattern.idl:
  • html/canvas/Float32Array.idl:
  • html/canvas/Float64Array.idl:
  • html/canvas/Int16Array.idl:
  • html/canvas/Int32Array.idl:
  • html/canvas/Int8Array.idl:
  • html/canvas/Uint16Array.idl:
  • html/canvas/Uint32Array.idl:
  • html/canvas/Uint8Array.idl:
  • html/canvas/Uint8ClampedArray.idl:
  • html/canvas/WebGLActiveInfo.idl:
  • html/canvas/WebGLShaderPrecisionFormat.idl:
  • html/track/TextTrack.idl:
  • html/track/TextTrackCue.idl:
  • html/track/TextTrackCueList.idl:
  • inspector/InjectedScriptHost.idl:
  • inspector/InspectorFrontendHost.idl:
  • inspector/JavaScriptCallFrame.idl:
  • page/Coordinates.idl:
  • page/Crypto.idl:
  • page/MemoryInfo.idl:
  • page/PagePopupController.idl:
  • page/PerformanceEntryList.idl:
  • page/SpeechInputResult.idl:
  • page/SpeechInputResultList.idl:
  • page/WebKitPoint.idl:
  • svg/SVGAnimatedAngle.idl:
  • svg/SVGAnimatedBoolean.idl:
  • svg/SVGAnimatedEnumeration.idl:
  • svg/SVGAnimatedInteger.idl:
  • svg/SVGAnimatedLength.idl:
  • svg/SVGAnimatedLengthList.idl:
  • svg/SVGAnimatedNumber.idl:
  • svg/SVGAnimatedNumberList.idl:
  • svg/SVGAnimatedPreserveAspectRatio.idl:
  • svg/SVGAnimatedRect.idl:
  • svg/SVGAnimatedString.idl:
  • svg/SVGAnimatedTransformList.idl:
  • svg/SVGColor.idl:
  • svg/SVGException.idl:
  • svg/SVGPaint.idl:
  • svg/SVGPathSeg.idl:
  • svg/SVGRenderingIntent.idl:
  • svg/SVGUnitTypes.idl:
  • svg/SVGZoomAndPan.idl:
  • testing/MallocStatistics.idl:
  • testing/TypeConversions.idl:
  • workers/WorkerLocation.idl:
  • xml/DOMParser.idl:
  • xml/XMLHttpRequestException.idl:
  • xml/XMLSerializer.idl:
  • xml/XPathEvaluator.idl:
  • xml/XPathException.idl:
  • xml/XPathExpression.idl:
  • xml/XPathNSResolver.idl:
  • xml/XPathResult.idl:
  • xml/XSLTProcessor.idl:

Add exceptions to binding integrity checks to IDL.

Source/WebKit/chromium:

Patch by Tom Sepez <tsepez@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

  • features.gypi:

Added ENABLE_BINDING_INTEGRITY option.

6:28 PM Changeset in webkit [141033] by hclam@chromium.org
  • 3 edits in trunk/Source/WebCore

[chromium] Build fix.

Unreviewed build fix. Remove the use of SkMutex from DiscardablePixelRef.

  • platform/graphics/chromium/DiscardablePixelRef.cpp:

(WebCore::DiscardablePixelRefAllocator::allocPixelRef):
(WebCore::DiscardablePixelRef::DiscardablePixelRef):

  • platform/graphics/chromium/DiscardablePixelRef.h:

(DiscardablePixelRef):

6:03 PM Changeset in webkit [141032] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebKit2

Add StorageManager class to cmake ports

Unreviewed build fix. Though StorageManager was added to WK2 in r141024,
it is not added to cmake ports(EFL).

  • CMakeLists.txt:
  • PlatformEfl.cmake:
5:42 PM Changeset in webkit [141031] by msaboff@apple.com
  • 2 edits in trunk/LayoutTests

Make integer-modulo.js a try JS-Regress test
https://bugs.webkit.org/show_bug.cgi?id=108130

Reviewed by Filip Pizlo.

Eliminated the LayoutTest calls. Sum the values and throw an expection if it doesn't
match up.

  • fast/js/regress/script-tests/integer-modulo.js:
5:29 PM Changeset in webkit [141030] by benjamin@webkit.org
  • 4 edits in trunk/Source

String constructed from Literals should be non-empty
https://bugs.webkit.org/show_bug.cgi?id=108103

Reviewed by Eric Carlson.

Source/WebCore:

Strings from literal should not be constructed from empty strings. Use emptyString()
instead.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::canPlayType):

Source/WTF:

For efficiency, the construction from literal only works with valid non-empty strings.
One of the constructor was changed to fix an error from HTMLMediaElement.

This patch replaces the branch with an assertions.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::createFromLiteral):

5:22 PM Changeset in webkit [141029] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Add more assertions to the property storage use in arrays
https://bugs.webkit.org/show_bug.cgi?id=107728

Reviewed by Filip Pizlo.

Add a bunch of assertions to array and object butterfly
usage. This should make debugging somewhat easier.

I also converted a couple of assertions to release asserts
as they were so low cost it seemed a sensible thing to do.

  • runtime/JSArray.cpp:

(JSC::JSArray::sortVector):
(JSC::JSArray::compactForSorting):

  • runtime/JSObject.h:

(JSC::JSObject::getHolyIndexQuickly):

5:01 PM Changeset in webkit [141028] by haraken@chromium.org
  • 11 edits in trunk

Implement CompositionEvent constructor
https://bugs.webkit.org/show_bug.cgi?id=107919

Reviewed by Sam Weinig.

This patch implements a CompositionEvent constructor under
a DOM4_EVENTS_CONSTRUCTOR flag.

Spec: https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm

Source/WebCore:

Test: fast/events/constructors/composition-event-constructor.html

  • dom/CompositionEvent.cpp:

(WebCore::CompositionEventInit::CompositionEventInit):
(WebCore):
(WebCore::CompositionEvent::CompositionEvent):

  • dom/CompositionEvent.h:

(CompositionEventInit):
(WebCore):
(CompositionEvent):
(WebCore::CompositionEvent::create):
(WebCore::CompositionEvent::data):

  • dom/CompositionEvent.idl:

LayoutTests:

  • fast/dom/constructed-objects-prototypes-expected.txt:
  • fast/events/constructors/composition-event-constructor-expected.txt: Added.
  • fast/events/constructors/composition-event-constructor.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
  • fast/dom/constructed-objects-prototypes-expected.txt:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
5:01 PM Changeset in webkit [141027] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/13098777>
Add (allow mach-lookup (global-name "com.apple.tccd.system"))

Reviewed by Maciej Stachowiak.

  • WebProcess/com.apple.WebProcess.sb.in:
4:41 PM Changeset in webkit [141026] by beidson@apple.com
  • 7 edits in trunk/Source/WebKit2

WebKit2 should notify the client if the NetworkProcess crashes.
<rdar://problem/13090513> and https://bugs.webkit.org/show_bug.cgi?id=108126

Reviewed by Sam Weinig.

Add new client callback to the ContextClient:

  • UIProcess/API/C/WKContext.h:
  • UIProcess/WebContextClient.cpp:

(WebKit::WebContextClient::networkProcessDidCrash):

  • UIProcess/WebContextClient.h:

Call out to the client when the NetworkProcess crashes:

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::networkProcessCrashed):

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

(WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):

4:18 PM Changeset in webkit [141025] by psolanki@apple.com
  • 7 edits in trunk/Source

PLATFORM(IOS) should come before MAC_OS_X_VERSION_MIN_REQUIRED
https://bugs.webkit.org/show_bug.cgi?id=108101

Reviewed by Benjamin Poulain.

Since iOS does not define MAC_OS_X_VERSION_MIN_REQUIRED, any usage of
MAC_OS_X_VERSION_MIN_REQUIRED should be after a PLATFORM(IOS) check.

Source/WebCore:

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac:

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

4:08 PM Changeset in webkit [141024] by andersca@apple.com
  • 3 edits
    3 adds in trunk/Source/WebKit2

Add StorageManager class
https://bugs.webkit.org/show_bug.cgi?id=108127

Reviewed by Sam Weinig.

The StorageManager will be in charge of handling access to local and session storage
in the UI process.

  • UIProcess/Storage/StorageManager.cpp: Added.
  • UIProcess/Storage/StorageManager.h: Added.
  • WebKit2.xcodeproj/project.pbxproj:
4:02 PM Changeset in webkit [141023] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Pass ICU cppflags to libWebCoreSVG.la build
https://bugs.webkit.org/show_bug.cgi?id=108032

Patch by Kalev Lember <kalevlember@gmail.com> on 2013-01-28
Reviewed by Martin Robinson.

Fixes a linking error with new libicu 50 on Fedora rawhide.

  • GNUmakefile.am:
3:53 PM Changeset in webkit [141022] by commit-queue@webkit.org
  • 7 edits in trunk/Tools

Refactor ChangeLog and PrepareChangeLog to use FileSystem objects
https://bugs.webkit.org/show_bug.cgi?id=107903

Patch by Timothy Loh <timloh@chromium.com> on 2013-01-28
Reviewed by Eric Seidel.

To make ChangeLog and PrepareChangeLog easier to test, we can use
FileSystem objects instead of just passing around paths.

  • Scripts/webkitpy/common/checkout/changelog.py:

(ChangeLog.init):
(ChangeLog.parse_latest_entry_from_file):
(ChangeLog.parse_entries_from_file):
(ChangeLog.latest_entry):
(ChangeLog.update_with_unreviewed_message):
(ChangeLog.set_reviewer):
(ChangeLog.set_short_description_and_bug_url):
(ChangeLog.delete_entries):
(ChangeLog.prepend_text):

  • Scripts/webkitpy/common/checkout/changelog_unittest.py:

(ChangeLogTest):
(test_parse_log_entries_from_changelog):
(test_latest_entry_parse_single_entry):
(test_set_reviewer):
(test_set_short_description_and_bug_url):
(test_delete_entries):
(test_prepend_text):

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

(ReadableTextFileObject.init):

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

(PrepareChangeLog._ensure_bug_url):
(PrepareChangeLog._resolve_existing_entry):
(PrepareChangeLog.run):

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

(test_ensure_bug_url):

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

(_assert_message_for_revert_output):

3:48 PM Changeset in webkit [141021] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r141006.
http://trac.webkit.org/changeset/141006
https://bugs.webkit.org/show_bug.cgi?id=108123

Broke chromium build (Requested by arv on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-28

  • public/WebConsoleMessage.h:
  • src/AssertMatchingEnums.cpp:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::addMessageToConsole):

3:40 PM Changeset in webkit [141020] by wangxianzhu@chromium.org
  • 11 edits
    3 adds in trunk/Source

adding support for DiscardablePixelRef for caching lazily decoded images
https://bugs.webkit.org/show_bug.cgi?id=106842

Patch by Min Qin <qinmin@chromium.org> on 2013-01-28
Reviewed by Stephen White.

Source/WebCore:

This change allows using discardable memory in the deferred image decoding path.
Fully decoded images are unpinned and stored in ImageDecodingStore.
Partially decoded images are pinned and stored in ImageDecodingStore.
Discardable memory allocation could fail. Fall back to heap allocation in that case.
There is a separate size limit for heap entries and no limit on discardable entries.
New tests are added to ImageDecodingStoreTests

  • WebCore.gypi:
  • platform/graphics/chromium/DiscardablePixelRef.cpp: Added. Added implementation of the DiscardablePixelRef object that is backed by discardable memory. Memory allocated to the DiscardablePixelRef can be purged when it is unlocked.

(WebCore::DiscardablePixelRefAllocator::allocPixelRef):
(WebCore):
(WebCore::DiscardablePixelRef::DiscardablePixelRef):
(WebCore::DiscardablePixelRef::~DiscardablePixelRef):
(WebCore::DiscardablePixelRef::allocAndLockDiscardableMemory):
(WebCore::DiscardablePixelRef::onLockPixels):
(WebCore::DiscardablePixelRef::onUnlockPixels):
(WebCore::DiscardablePixelRef::isDiscardable):

  • platform/graphics/chromium/DiscardablePixelRef.h: Added. Added class definition of the DiscardablePixelRef.

(WebCore):
(DiscardablePixelRefAllocator):
(DiscardablePixelRef):

  • platform/graphics/chromium/ImageDecodingStore.cpp: Added new cache replacement strategy for DiscardablePixelRef.

(WebCore::ImageDecodingStore::lockCache):
(WebCore::ImageDecodingStore::overwriteAndLockCache):
(WebCore::ImageDecodingStore::prune):
(WebCore::ImageDecodingStore::insertCacheInternal):
(WebCore::ImageDecodingStore::removeFromCacheInternal):

  • platform/graphics/chromium/ImageDecodingStore.h: Added isDiscardable() calls to check if a cache entry is discardable.

(WebCore::ImageDecodingStore::CacheEntry::CacheEntry):
(WebCore::ImageDecodingStore::CacheEntry::overwriteCachedImage):
(WebCore::ImageDecodingStore::CacheEntry::isDiscardable):
(CacheEntry):

  • platform/graphics/chromium/ImageFrameGenerator.cpp: Added some code to pass DiscardableMemoryAllocator to the image decoder.

(WebCore::ImageFrameGenerator::tryToScale):
(WebCore::ImageFrameGenerator::decode):

  • platform/graphics/chromium/ImageFrameGenerator.h: Added a new member variable of type DiscardableMemoryAllocator.

(ImageFrameGenerator):

  • platform/image-decoders/ImageDecoder.h: Added methods to pass Allocator to ImageFrame.

(ImageFrame):
(WebCore::ImageFrame::setMemoryAllocator):
(WebCore::ImageFrame::allocator):
(ImageDecoder):
(WebCore::ImageDecoder::setMemoryAllocator):

  • platform/image-decoders/skia/ImageDecoderSkia.cpp: Added code to allocate pixel memory using the allocator passed from the caller.

(WebCore::ImageFrame::ImageFrame):
(WebCore::ImageFrame::operator=):
(WebCore::ImageFrame::setSize):

Source/WebKit/chromium:

Adding new tests for ImageDecodingStore

  • WebKit.gypi:
  • tests/ImageDecodingStoreTest.cpp:

(WebCore::ImageDecodingStoreTest::createCompleteImage):
(WebCore::ImageDecodingStoreTest::createIncompleteImage):
(WebCore::TEST_F):
(WebCore):

  • tests/MockDiscardablePixelRef.h: Added.

(WebCore):
(MockDiscardablePixelRef):
(WebCore::MockDiscardablePixelRef::MockDiscardablePixelRef):
(WebCore::MockDiscardablePixelRef::~MockDiscardablePixelRef):
(WebCore::MockDiscardablePixelRef::discard):
(WebCore::MockDiscardablePixelRef::onLockPixels):
(WebCore::MockDiscardablePixelRef::onUnlockPixels):

3:38 PM Changeset in webkit [141019] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source/WebKit/chromium

[Chromium, Mobile] Do not show disambiguation pop up in mobile sites
https://bugs.webkit.org/show_bug.cgi?id=107607

Patch by Dan Alcantara <dfalcantara@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

Add a check before showing the disambiguation popup to prevent it from appearing
on mobile sites. Makes a similar test to the current disambiguation popup test
that expects the popup to never appear.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):
(WebKit):
(WebKit::WebViewImpl::isLikelyMobileSite):

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp:
  • tests/data/disambiguation_popup_mobile_site.html: Added.
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):
(WebKit):
(WebKit::WebViewImpl::shouldDisableDesktopWorkarounds):

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp:
  • tests/data/disambiguation_popup_mobile_site.html: Added.
3:32 PM Changeset in webkit [141018] by schenney@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Fix the build.

Unreviewed build fix.

  • src/AssertMatchingEnums.cpp: Move the include to the right place and remove the bad directory prefix.
3:20 PM Changeset in webkit [141017] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

More work on UI side local storage
https://bugs.webkit.org/show_bug.cgi?id=108119

Reviewed by Beth Dakin.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Storage/StorageNamespaceProxy.cpp:

(WebKit::StorageNamespaceProxy::createSessionStorageNamespace):
Rename create to createSessionStorageNamespace and make it take a WebPage.

(WebKit::StorageNamespaceProxy::StorageNamespaceProxy):
Add WebPage parameter.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::sessionStorageNamespace):
Add an #ifdef for enabling UI side storage.

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::page):
Call new WebPage::fromCorePage helper.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::fromCorePage):
Add new function for getting a WebPage from a WebCore::Page.

3:15 PM Changeset in webkit [141016] by Raymond Toy
  • 2 edits in trunk/Tools

Add myself to committers.py
https://bugs.webkit.org/show_bug.cgi?id=107992

Reviewed by kbr@google.com.

  • Scripts/webkitpy/common/config/committers.py:
3:07 PM Changeset in webkit [141015] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Unreviewed, rolling out r140869.
http://trac.webkit.org/changeset/140869
https://bugs.webkit.org/show_bug.cgi?id=108120

"Crashes on http://en.wikipedia.org/wiki/Wikipedia" (Requested
by tonyg-cr on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-28

Source/WebCore:

  • page/FrameView.cpp:

(WebCore::FrameView::visibleContentsResized):

  • platform/ScrollView.cpp:

(WebCore::ScrollView::setFixedLayoutSize):
(WebCore::ScrollView::setUseFixedLayout):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::resize):
(WebKit::WebViewImpl::computePageScaleFactorLimits):

  • tests/WebFrameTest.cpp:
3:05 PM Changeset in webkit [141014] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening, removing Crash expectations from storage/indexeddb tests.
https://bugs.webkit.org/show_bug.cgi?id=108048

Unreviewed.

  • platform/chromium/TestExpectations:
2:47 PM Changeset in webkit [141013] by commit-queue@webkit.org
  • 60 edits
    3 adds
    6 deletes in trunk

Unreviewed, rolling out r140934, r140935, and r140937.
http://trac.webkit.org/changeset/140934
http://trac.webkit.org/changeset/140935
http://trac.webkit.org/changeset/140937
https://bugs.webkit.org/show_bug.cgi?id=108117

Re-land some speculative rollouts - see wkbug.com/108048 for
context (Requested by jsbell on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-28

Source/WebCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.list.am:
  • Modules/indexeddb/IDBCallbacks.h:

(IDBCallbacks):

  • Modules/indexeddb/IDBCursorBackendImpl.cpp:

(WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):

  • Modules/indexeddb/IDBCursorBackendImpl.h:

(WebCore::IDBCursorBackendImpl::create):
(IDBCursorBackendImpl):

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::onVersionChange):

  • Modules/indexeddb/IDBDatabase.h:
  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::setIndexesReady):
(WebCore::OpenCursorOperation::perform):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase):

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::openInternal):
(WebCore::IDBFactory::deleteDatabase):

  • Modules/indexeddb/IDBFactory.h:

(WebCore):
(IDBFactory):

  • Modules/indexeddb/IDBFactory.idl:
  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::createIndex):
(WebCore::IDBObjectStore::openCursor):

  • Modules/indexeddb/IDBObjectStore.h:

(WebCore::IDBObjectStore::openCursor):
(IDBObjectStore):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::create):
(WebCore::IDBOpenDBRequest::IDBOpenDBRequest):
(WebCore::IDBOpenDBRequest::onBlocked):
(WebCore::IDBOpenDBRequest::onUpgradeNeeded):
(WebCore::IDBOpenDBRequest::dispatchEvent):

  • Modules/indexeddb/IDBOpenDBRequest.h:

(IDBOpenDBRequest):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::create):
(WebCore::IDBRequest::IDBRequest):

  • Modules/indexeddb/IDBRequest.h:

(IDBRequest):
(WebCore::IDBRequest::taskType):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::scheduleTask):

  • Modules/indexeddb/IDBTransactionBackendImpl.h:

(WebCore::IDBTransactionBackendImpl::scheduleTask):
(IDBTransactionBackendImpl):

  • Modules/indexeddb/IDBTransactionBackendInterface.h:
  • Modules/indexeddb/IDBUpgradeNeededEvent.cpp: Removed.
  • Modules/indexeddb/IDBUpgradeNeededEvent.h: Removed.
  • Modules/indexeddb/IDBUpgradeNeededEvent.idl: Removed.
  • Modules/indexeddb/IDBVersionChangeEvent.cpp:

(WebCore::IDBVersionChangeEvent::create):
(WebCore::IDBVersionChangeEvent::IDBVersionChangeEvent):

  • Modules/indexeddb/IDBVersionChangeEvent.h:

(IDBVersionChangeEvent):
(WebCore::IDBVersionChangeEvent::oldVersion):
(WebCore::IDBVersionChangeEvent::newVersion):

  • Modules/indexeddb/IDBVersionChangeEvent.idl:
  • Modules/indexeddb/IDBVersionChangeRequest.cpp: Removed.
  • Modules/indexeddb/IDBVersionChangeRequest.h: Removed.
  • Modules/indexeddb/IDBVersionChangeRequest.idl: Removed.
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/EventNames.in:
  • dom/EventTarget.h:

(WebCore):

  • dom/EventTargetFactory.in:

Source/WebKit/chromium:

  • public/WebIDBCallbacks.h:

(WebIDBCallbacks):

  • src/AssertMatchingEnums.cpp:
  • src/IDBCallbacksProxy.cpp:
  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

  • src/WebIDBCallbacksImpl.cpp:
  • src/WebIDBCallbacksImpl.h:

(WebIDBCallbacksImpl):

  • tests/IDBAbortOnCorruptTest.cpp:
  • tests/IDBDatabaseBackendTest.cpp:

LayoutTests:

  • storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-expected.txt:
  • storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt:
  • storage/indexeddb/deletedatabase-blocked-expected.txt:
  • storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt:
  • storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers-expected.txt:
  • storage/indexeddb/deletedatabase-delayed-by-versionchange-expected.txt:
  • storage/indexeddb/deletedatabase-not-blocked-expected.txt:
  • storage/indexeddb/events-expected.txt: Added.
  • storage/indexeddb/events.html: Added.
  • storage/indexeddb/intversion-gated-on-delete-expected.txt:
  • storage/indexeddb/intversion-long-queue-expected.txt:
  • storage/indexeddb/intversion-upgrades-expected.txt:
  • storage/indexeddb/removed-expected.txt:
  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js:

(versionChangeCallback):

  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js:

(versionChangeCallback):

  • storage/indexeddb/resources/deletedatabase-blocked.js:

(test.request.onsuccess.openOnSuccess.h.onversionchange):

  • storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js:

(prepareDatabase.h.onversionchange):

  • storage/indexeddb/resources/deletedatabase-delayed-by-versionchange.js:

(h1OpenSuccess.h1.onversionchange.h1OnVersionChange.h1.onversionchange):
(h1OpenSuccess.h1.onversionchange):
(h1OpenSuccess.request.onsuccess.h2OpenSuccess.h2.onversionchange):

  • storage/indexeddb/resources/deletedatabase-not-blocked.js:

(test.request.onsuccess.openOnSuccess.h.onversionchange):

  • storage/indexeddb/resources/events.js: Added.

(test):

  • storage/indexeddb/resources/intversion-gated-on-delete.js:

(firstSuccessCallback):
(connection1VersionChangeCallback):

  • storage/indexeddb/resources/intversion-long-queue.js:

(connection1VersionChangeCallback):
(deleteDatabaseBlockedCallback):
(deleteDatabaseSuccessCallback):
(connection2VersionChangeEvent):

  • storage/indexeddb/resources/removed.js:

(test):

2:42 PM Changeset in webkit [141012] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebCore

Unreviewed Mac build fix. Add an export for a function that may be
accessed outside of WebCore (RenderLayer::needsCompositedScrolling).

  • WebCore.exp.in:
2:38 PM Changeset in webkit [141011] by Joseph Pecoraro
  • 9 edits
    2 adds in trunk

[Mac] Update PageVisibilityState when WebView is hidden / visible
https://bugs.webkit.org/show_bug.cgi?id=107509

Source/WebKit/mac:

Reviewed by NOBODY (OOPS!).

  • WebView/WebView.mm:
  • WebView/WebViewPrivate.h:

(-[WebView _commonInitializationWithFrameName:groupName:]):
Set the initial visibility of the page.

(-[WebView addWindowObserversForWindow:]):
(-[WebView removeWindowObservers]):
(-[WebView _isViewVisible]):
(-[WebView _updateVisibilityState]):
(-[WebView viewDidMoveToWindow]):
(-[WebView _windowVisibilityChanged:]):
Update visibility state in the same ways WK2 does. This involves
listening for some new NSWindow delegates.

Tools:

Add a test that PageVisibility of WK1 WebViews and WK2 WKViews
automatically changes between hidden and visible as the view is added
and removed from window, or when it is in a window that changes
visibility, for instance by minimizing / deminimizing.

Reviewed by NOBODY (OOPS!).

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.html: Added.
  • TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm: Added.

(-[PageVisibilityStateDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]):
(runJavaScriptAlert):
(PageVisibilityStateWithWindowChanges):
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::initializeView):
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::deinitializeView):
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
(TestWebKitAPI::TEST_F):
Test visibility state of a page in a WebView/WKView with different window states.

  • TestWebKitAPI/mac/WebKitAgnosticTest.h:
  • TestWebKitAPI/mac/WebKitAgnosticTest.mm:

(TestWebKitAPI::WebKitAgnosticTest::deinitializeView):
(TestWebKitAPI::WebKitAgnosticTest::runWebKit1Test):
(TestWebKitAPI::WebKitAgnosticTest::runWebKit2Test):
Add a WK1 and WK2 deinitializeView to balance initializeView.

2:38 PM Changeset in webkit [141010] by Joseph Pecoraro
  • 28 edits
    2 adds in trunk

Improve PageVisibility API with enums
https://bugs.webkit.org/show_bug.cgi?id=107364

Reviewed by Sam Weinig.

Source/WebKit/mac:

  • WebView/WebView.mm:
  • WebView/WebViewPrivate.h:

(corePageVisibilityState):
(-[WebView _setVisibilityState:isInitialState:]):
Switch the private API form int to a WebPageVisibilityState enum.

Source/WebKit2:

  • Shared/API/c/WKPageVisibilityTypes.h: Added.
  • Shared/API/c/WKSharedAPICast.h:

(WebKit::toPageVisibilityState):
Create an enum for page visibility APIs and a conversion function
for the WK2 values to WebCore values.

  • Target.pri:
  • GNUmakefile.list.am:
  • WebKit2.xcodeproj/project.pbxproj:

Add WKPageVisibilityTypes.h to the build as a private export.

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

(WKPageSetVisibilityState):

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

(WebKit::WebPageProxy::setVisibilityState):
UIProcess API to set visibility state. WebPageProxy already
had m_visibilityState, so update that when setter is used.

  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.h:

Remove the old SPI for WebKitTestRunner. Tests now use the C API.

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

(WebKit::WebPage::setVisibilityState):

  • WebProcess/WebPage/WebPage.messages.in:

Update the existing WebPage API to use uint32_t, which matches
other enum message types.

Tools:

  • DumpRenderTree/mac/TestRunnerMac.mm:

(TestRunner::resetPageVisibility):
(TestRunner::setPageVisibility):
Update the WK1 test code to use the new WK1 enums.

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::setVisibilityState):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::setPageVisibility):
(WTR::TestRunner::resetPageVisibility):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::setVisibilityState):

  • WebKitTestRunner/TestController.h:

(TestController):

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
Update the WK2 test code to use the new WK2 API and enums.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/PageVisibilityState.cpp: Added.

(TestWebKitAPI):
(TestWebKitAPI::setPageVisibilityStateWithEvalContinuation):
(TestWebKitAPI::assertSerializedScriptValueIsStringValue):
(TestWebKitAPI::didRunStep1StateChangeVisibleToHidden):
(TestWebKitAPI::didRunStep2StateChangeHiddenToPrerender):
(TestWebKitAPI::didRunStep3StateChangePrerenderToPreview):
(TestWebKitAPI::didRunStep4InStatePreview):
(TestWebKitAPI::TEST):
Test the new WK2 API with all enum types.

2:28 PM Changeset in webkit [141009] by jchaffraix@webkit.org
  • 2 edits in trunk/Source/WebCore

Crash inside RenderBlock::layoutRunsAndFloatsInRange in the widow code
https://bugs.webkit.org/show_bug.cgi?id=108084

Reviewed by Dean Jackson.

This is a blind fix based on the code and Chromium's stack-traces.

Unfortunately no new test as I couldn't get a local reproduction.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
Added a missing NULL-check: the previous 'while' finish if |lineBox|
is NULL and we don't want to crash in this case.

2:24 PM BuildingGtk edited by rouslan+webkit@chromium.org
Added "librsvg2-dev" base dependency, which is required to build … (diff)
2:22 PM Changeset in webkit [141008] by Christophe Dumez
  • 8 edits in trunk/Source/WebKit2

[EFL][WK2] Use C API inside ewk_download_job
https://bugs.webkit.org/show_bug.cgi?id=107810

Reviewed by Anders Carlsson.

Use C API inside ewk_download_job instead of accessing internal C++
classes directly, to avoid violating API layering.

  • UIProcess/API/C/WKDownload.cpp:

(WKDownloadGetID): Add C API to get the download ID as we need it to
support our public API and it seems like a useful addition.

  • UIProcess/API/C/WKDownload.h:
  • UIProcess/API/efl/ewk_download_job.cpp:

(EwkDownloadJob::EwkDownloadJob):
(EwkDownloadJob::id):
(EwkDownloadJob::request):
(EwkDownloadJob::cancel):

  • UIProcess/API/efl/ewk_download_job_private.h:

(EwkDownloadJob::create):
(EwkDownloadJob):

  • UIProcess/efl/DownloadManagerEfl.cpp:

(WebKit::DownloadManagerEfl::decideDestinationWithSuggestedFilename):
(WebKit::DownloadManagerEfl::didReceiveResponse):
(WebKit::DownloadManagerEfl::didCreateDestination):
(WebKit::DownloadManagerEfl::didReceiveData):
(WebKit::DownloadManagerEfl::didFail):
(WebKit::DownloadManagerEfl::didCancel):
(WebKit::DownloadManagerEfl::didFinish):
(WebKit::DownloadManagerEfl::registerDownloadJob): Rename
registerDownload() to registerDownloadJob() for consistency with
unregisterDownloadJob().
(WebKit::DownloadManagerEfl::ewkDownloadJob): Rename downloadJob() to
ewkDownloadJob() for clarity since it returns a EwkDownload object.
Also take a WKDownloadRef in argument instead of an identifier since
all the callers have a WKDownloadRef and it makes their code simpler.
Finally, make the getter non-const since it returns a non-const pointer.
(WebKit::DownloadManagerEfl::unregisterDownloadJob): Take a
WKDownloadRef in argument instead of an identifier since all the
callers have a WKDownloadRef and it makes their code simpler.

  • UIProcess/efl/DownloadManagerEfl.h:

(DownloadManagerEfl):

  • UIProcess/efl/PageClientBase.cpp:

(WebKit::PageClientBase::handleDownloadRequest):

2:06 PM Changeset in webkit [141007] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

"clang: warning: not using the clang compiler for C++ inputs" due to hard-coding of /usr/bin/clang in WebCore.gyp
https://bugs.webkit.org/show_bug.cgi?id=108089

Reviewed by Ojan Vafai.

Use gcc since older versions of clang (with Xcode 3.2) warn that they are going to use gcc anyway.
These warnings are showing up on the main Chromium waterfall too:
http://build.chromium.org/p/chromium/builders/Mac/builds/19113/steps/compile/logs/stdio

No new tests, this is a build change.

  • WebCore.gyp/WebCore.gyp:
1:47 PM Changeset in webkit [141006] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] WebConsoleMessage is missing LevelDebug (chromium bug 172416)
https://bugs.webkit.org/show_bug.cgi?id=108004
http://code.google.com/p/chromium/issues/detail?id=172416

console.debug triggers a NOTREACHED() assertation in Chromium. This
is because WebCore::MessageLevel contains 5 levels, including debug,
where WebConsoleMessage::Level is missing a "debug" level. Add a
WebConsoleMessage::LevelDebug so that it can get passed up to the
renderer even if it doesn't make use of that now.

Requires another patch to chromium itself to fix chromium bug 172416
but this is a prerequisite.

Also add an enum compile time check to AssertMatchingEnums.cpp,

Patch by Kevin Day <kevinday@gmail.com> on 2013-01-28
Reviewed by Jochen Eisinger.

  • public/WebConsoleMessage.h:
  • src/AssertMatchingEnums.cpp:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::addMessageToConsole):

1:45 PM Changeset in webkit [141005] by esprehn@chromium.org
  • 8 edits in trunk/Source/WebCore

Move hasAuthorShadowRoot to Element
https://bugs.webkit.org/show_bug.cgi?id=108071

Reviewed by Dimitri Glazkov.

Move hasAuthorShadowRoot to Element and get rid of unneccesary booleans
in HTMLProgressElement and HTMLMeterElement. Also get rid of
ShadowRoot::isAccessible since it obfuscates what's actually happening
inside of Element::shadowRoot().

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::shadowRoot):
(WebCore::Element::hasAuthorShadowRoot):

  • dom/Element.h:

(Element):

  • dom/ShadowRoot.h:
  • html/HTMLMeterElement.cpp:

(WebCore::HTMLMeterElement::HTMLMeterElement):

  • html/HTMLMeterElement.h:

(HTMLMeterElement):

  • html/HTMLProgressElement.cpp:

(WebCore::HTMLProgressElement::HTMLProgressElement):

  • html/HTMLProgressElement.h:

(HTMLProgressElement):

1:42 PM Changeset in webkit [141004] by timothy_horton@apple.com
  • 9 edits in trunk/Source/WebKit2

PDFPlugin: getMainResourceDataOfFrame should return PDFPlugin's data so that Save... works
https://bugs.webkit.org/show_bug.cgi?id=108060
<rdar://problem/13075454>

Reviewed by Sam Weinig.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h: Implement getResourceData.
  • WebProcess/Plugins/PDF/SimplePDFPlugin.h:
  • WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Implement getResourceData, returning the accumulated

data if it exists and has finished loading.
(WebKit::SimplePDFPlugin::getResourceData):

  • WebProcess/Plugins/Plugin.h: Add getResourceData, which hands out a raw pointer/size pair

to the plugin's "main resource" data.

  • WebProcess/Plugins/PluginProxy.h: Implement getResourceData.
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::getResourceData): Forward getResourceData through to the plugin.

  • WebProcess/Plugins/PluginView.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::getMainResourceDataOfFrame): If the requested frame is backed by a PluginDocument,
attempt to ask the PluginView for its resource data.

1:37 PM BuildingGtk edited by rouslan+webkit@chromium.org
Removed duplicate deps that I just added :-\ (diff)
1:36 PM BuildingGtk edited by rouslan+webkit@chromium.org
Added base dependencies gtk-doc-tools and gnome-common that are … (diff)
1:36 PM Changeset in webkit [141003] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

[wk2] WKView's intrinsicContentSize should only report a flexible width if the content width is less than the minimum width
https://bugs.webkit.org/show_bug.cgi?id=108056

Reviewed by Simon Fraser.

We're currently reporting a flexible width if the intrinsic
content size is less than *or equal* to the minimum layout
width. This is wrong and causes ping-ponging between flexible
and inflexible width in cases where autolayout fits our
view to exactly the intrinsic content size. It should be strictly
less than instead.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _setIntrinsicContentSize:]):

1:36 PM Changeset in webkit [141002] by esprehn@chromium.org
  • 5 edits in trunk/Source/WebCore

Move ensureUserAgentShadowRoot to Element
https://bugs.webkit.org/show_bug.cgi?id=108070

Reviewed by Dimitri Glazkov.

Move ensureUserAgentShadowRoot to Element where the other
methods related to shadow roots are and get rid of the
unnecessarily specific cast to HTMLElement.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::ensureUserAgentShadowRoot): Moved from FormAssociatedElement.

  • dom/Element.h:

(Element):

  • html/FormAssociatedElement.cpp:
  • html/FormAssociatedElement.h:

(FormAssociatedElement):

1:24 PM Changeset in webkit [141001] by cevans@google.com
  • 1 edit in branches/chromium/1364/Source/WebKit/chromium/features.gypi

Merge 141000
BUG=163593
Review URL: https://codereview.chromium.org/12095019

1:20 PM Changeset in webkit [141000] by cevans@google.com
  • 1 edit in trunk/Source/WebKit/chromium/features.gypi

Revert 130950
BUG=163593

1:18 PM Changeset in webkit [140999] by vollick@chromium.org
  • 5 edits
    3 adds in trunk

Promote composited-scrolling layers to stacking containers.
https://bugs.webkit.org/show_bug.cgi?id=106142

Reviewed by Simon Fraser.

With this patch, RenderLayers that use composited scrolling are
treated as stacking contexts. Since isStackingContainer now depends on
the value of m_needsCompositedScrolling, special care needed to be
taken to ensure that the value of isStackingContainer is not used when
updating m_needsCompositedScrolling. In particular, the code for
rebuilding the layer lists needed to be generalized so that we could
build the layer lists using the value of isStackingContext rather than
isStackingContainer when building the layer lists used to determine if
the descendants are contiguous in stacking order. Also, updating
m_needsCompositedScrolling can now affect stacking container status
and can therefore dirty layer lists.

Source/WebCore:

Test: compositing/overflow/composited-scrolling-creates-a-stacking-container.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrder):

Modified to use layer lists built based on isStackingContext rather
than isStackingContainer.

(WebCore::RenderLayer::updateNeedsCompositedScrolling):

This function can now affect stacking container status and layer
lists.

(WebCore::RenderLayer::rebuildZOrderLists):

Refactored to generalize layer list building.

(WebCore::RenderLayer::collectLayers):

This function can now stop at either stacking containers or
contexts.

(WebCore::RenderLayer::updateLayerListsIfNeeded):

Layer lists may need to be built a 2nd time if we opt into
composited scrolling.

  • rendering/RenderLayer.h:

(RenderLayer):
(WebCore::RenderLayer::isStackingContainer):

Returns true if we use composited scrolling.

LayoutTests:

  • compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Added.
  • compositing/overflow/composited-scrolling-creates-a-stacking-container.html: Added.
  • platform/chromium/TestExpectations:
  • platform/mac/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Added.
1:15 PM Changeset in webkit [140998] by cevans@google.com
  • 1 edit in trunk/Source/WebKit/chromium/features.gypi

Revert 140996

Revert 130950
BUG=163593

TBR=cevans@google.com

1:14 PM Changeset in webkit [140997] by mvujovic@adobe.com
  • 26 edits
    2 copies
    9 adds in trunk

[CSS Shaders] Parse @-webkit-filter
https://bugs.webkit.org/show_bug.cgi?id=106837

Reviewed by Dean Jackson.

Source/WebCore:

The new CSS Custom Filters syntax includes an @filter rule:
@filter IDENT { <custom-filter-description> }

IDENT is the filter name. For example:
@filter my-filter { ... }

<custom-filter-description> is a set of CSS properties, which are still under discussion in
the CSSWG.

This patch adds parsing and JS bindings for the prefixed at-rule. It does not add parsing
for any of the at-rule's internal properties.

Spec: https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#the-atfilter-rule

Tests: css3/filters/custom/custom-filter-parsing-at-rule-invalid.html

css3/filters/custom/custom-filter-parsing-at-rule-valid.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCSSRuleCustom.cpp:

(WebCore::toJS):

  • bindings/objc/DOMCSS.mm:

(kitClass):

  • bindings/v8/custom/V8CSSRuleCustom.cpp:

(WebCore::wrap):

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

(WebCore::CSSParser::createFilterRule):
(WebCore::CSSParser::detectAtToken):

  • css/CSSParser.h:
  • css/CSSPropertySourceData.h:
  • css/CSSRule.h:
  • css/CSSRule.idl:

Only contains a CSSStyleDeclaration "style" property, like the other at-rules that are
supposed to contain properties (e.g. CSSStyleRule, CSSFontFaceRule, CSSPageRule).
Eventually, when it's specified, we should expose the filter name as well.
Other at-rules IDL Spec: http://www.w3.org/TR/DOM-Level-2-Style/idl-definitions.html

  • css/StyleRule.cpp:

(WebCore::StyleRuleBase::reportMemoryUsage):
(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy):
(WebCore::StyleRuleBase::createCSSOMWrapper):
(WebCore::StyleRuleFilter::StyleRuleFilter):
(WebCore::StyleRuleFilter::~StyleRuleFilter):
(WebCore::StyleRuleFilter::mutableProperties):
(WebCore::StyleRuleFilter::setProperties):
(WebCore::StyleRuleFilter::reportDescendantMemoryUsage):

  • css/StyleRule.h:

(StyleRuleBase):
(WebCore::StyleRuleBase::isFilterRule):
(StyleRuleFilter):
(WebCore::StyleRuleFilter::create):
(WebCore::StyleRuleFilter::filterName):
(WebCore::StyleRuleFilter::properties):
(WebCore::StyleRuleFilter::copy):

  • css/StyleSheetContents.cpp:

(WebCore::childRulesHaveFailedOrCanceledSubresources):

  • css/WebKitCSSFilterRule.cpp: Added.

WebKitCSSFilterRule is implemented similar to CSSFontFaceRule.

(WebCore::WebKitCSSFilterRule::WebKitCSSFilterRule):
(WebCore::WebKitCSSFilterRule::~WebKitCSSFilterRule):
(WebCore::WebKitCSSFilterRule::style):
(WebCore::WebKitCSSFilterRule::cssText):

The CSS text implementation for WebKitCSSFilterRule is almost the same as
CSSFontFaceRule. WebKitCSSFilterRule additionally needs to output the filter name in its
syntax (e.g. @-webkit-filter my-filter { }).

(WebCore::WebKitCSSFilterRule::reattach):
(WebCore::WebKitCSSFilterRule::reportMemoryUsage):

  • css/WebKitCSSFilterRule.h: Added.

(WebKitCSSFilterRule):
(WebCore::WebKitCSSFilterRule::create):

  • css/WebKitCSSFilterRule.idl: Added.

LayoutTests:

Add positive and negative tests for parsing the @-webkit-filter rule.

Factored out common helper functions between the existing CSS Custom Filters parsing tests
and the new tests into custom-filter-parsing-common.js.

  • css3/filters/custom/custom-filter-parsing-at-rule-invalid-expected.txt: Added.
  • css3/filters/custom/custom-filter-parsing-at-rule-invalid.html: Added.
  • css3/filters/custom/custom-filter-parsing-at-rule-valid-expected.txt: Added.
  • css3/filters/custom/custom-filter-parsing-at-rule-valid.html: Added.
  • css3/filters/custom/custom-filter-property-parsing-invalid.html:
  • css3/filters/custom/custom-filter-property-parsing.html:
  • css3/filters/script-tests/custom-filter-parsing-at-rule-invalid.js: Added.

(testInvalidFilterAtRule):

  • css3/filters/script-tests/custom-filter-parsing-at-rule-valid.js: Added.

(testFilterAtRule):

Tests @-webkit-filter rule parsing and its ability to hold CSS properties.

(testNestedRules):

Tests nesting between at-rules, involving @-webkit-filter rules.

(checkRule):

Factor out common rule checking functionality into its own helper function, so it can be
reused.

  • css3/filters/script-tests/custom-filter-parsing-common.js: Added.

(jsWrapperClass):

Moved.

(shouldBeType):

Moved.

  • css3/filters/script-tests/custom-filter-property-parsing-invalid.js:
  • css3/filters/script-tests/custom-filter-property-parsing.js:
  • platform/chromium/css3/filters/custom/custom-filter-parsing-at-rule-valid-expected.txt:

V8 represents WebKitCSSFilterRule a little differently.

1:13 PM Changeset in webkit [140996] by cevans@google.com
  • 1 edit in trunk/Source/WebKit/chromium/features.gypi

Revert 130950
BUG=163593

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

Add StorageStrategy member functions to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=108105

Reviewed by Tim Horton.

Source/WebCore:

StorageStrategy::sessionStorageNamespace should be virtual, not static...

  • WebCore.exp.in:
  • storage/StorageStrategy.h:

(StorageStrategy):

Source/WebKit2:

Add default implementations that just chain up to the base class for now.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::localStorageNamespace):
(WebKit::WebPlatformStrategies::sessionStorageNamespace):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

1:08 PM Changeset in webkit [140994] by wangxianzhu@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Correct auto-zoom when using compositor scaling
https://bugs.webkit.org/show_bug.cgi?id=107592

Reviewed by Adam Barth.

  1. The scale of auto-zoom should exclude deviceScaleFactor because the compositor will handle the scaling;
  2. Scroll location needs to be calculated differently when pageScaleFactor is handled by the compositor.
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::computeScaleAndScrollForHitRect):

  • tests/WebFrameTest.cpp: Updated tests DivAutoZoomParamsTest, DivAutoZoomMultipleDivsTest, DivAutoZoomScaleBoundsTest and DivAutoZoomScaleFontScaleFactorTest, to make two versions of them (WebKitScaling and CompositorScaling).
12:44 PM BuildingGtk edited by rouslan+webkit@chromium.org
Added "inttool" base dependency, which is required to build … (diff)
12:43 PM Changeset in webkit [140993] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

getComputedStyle returns "left" instead of "none" for "float" on abspos elements
https://bugs.webkit.org/show_bug.cgi?id=105836

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-01-28
Reviewed by Tony Chang.

If 'position' has the value absolute, page or fixed, and the value of float is
left or right, the box is absolutely positioned and the computed value of float is none.
http://www.w3.org/TR/css3-positioning/#dis-pos-flo
This matches behavior of Firefox 18, Opera 12 and IE9.

Source/WebCore:

Test: fast/css/position-absolute-float.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

LayoutTests:

  • fast/css/position-absolute-float-expected.txt: Added.
  • fast/css/position-absolute-float.html: Added.
12:36 PM Changeset in webkit [140992] by tonyg@chromium.org
  • 2 edits in trunk/Source/WebCore

Don't use threaded HTML parser for data: URLs
https://bugs.webkit.org/show_bug.cgi?id=108096

Reviewed by Eric Seidel.

data: URLs are currently loaded synchronously. Using the main thread parser for them preserves this behavior.
This fixes fast/dom/HTMLDocument/document-open-return-value.html and probably others.

No new tests because covered by existing tests.

  • html/parser/HTMLParserOptions.cpp:

(WebCore::HTMLParserOptions::HTMLParserOptions):

12:26 PM Changeset in webkit [140991] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding a failure expectation for a User Timing test added in r140882.

  • platform/gtk/TestExpectations:
12:19 PM Changeset in webkit [140990] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL] Quit debug build without -DSHARED_CORE=ON
https://bugs.webkit.org/show_bug.cgi?id=104773

Patch by Halton Huo <halton.huo@intel.com> on 2013-01-28
Reviewed by Laszlo Gombos.

Debug build without -DSHARED_CORE=ON will fail because libwebcore_efl.a
is too big (>4G) to archive. The solution is simply to abort cmake in
this condition and notify developer.

  • CMakeLists.txt:
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsCommon.cmake:
12:13 PM Changeset in webkit [140989] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium
Collapse OS(UNIX)
OS(ANDROID) to OS(UNIX)

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

Patch by Laszlo Gombos <Laszlo Gombos> on 2013-01-28
Reviewed by Adam Barth.

OS(UNIX) is defined when OS(ANDROID) is defined.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleMouseDown):

11:56 AM Changeset in webkit [140988] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WTF

BUILD FIX: Platform.h:1212:22: error: 'MAC_OS_X_VERSION_MIN_REQUIRED' is not defined, evaluates to 0 [-Werror,-Wundef]

This fixes the following build error introduced in r140366 for
Bug 107098:

Platform.h:1212:22: error: 'MAC_OS_X_VERSION_MIN_REQUIRED' is not defined, evaluates to 0 [-Werror,-Wundef]
#if PLATFORM(MAC) &&
MAC_OS_X_VERSION_MIN_REQUIRED >= 1080 && !PLATFORM(IOS)


1 error generated.

  • wtf/Platform.h: Check !PLATFORM(IOS) first so that iOS builds

do not try to evaluate MAC_OS_X_VERSION_MIN_REQUIRED.

11:38 AM Changeset in webkit [140987] by rniwa@webkit.org
  • 1 edit
    3 adds
    6 deletes in trunk/LayoutTests

Mac rebaselines after r140192.

  • fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: Added.
  • fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: Added.
  • fast/regions/overflow-size-change-with-stacking-context-expected.txt: Added.
  • platform/chromium-mac/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
  • platform/chromium-mac/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: Removed.
  • platform/chromium-mac/fast/regions/overflow-size-change-with-stacking-context-expected.txt: Removed.
  • platform/mac/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
  • platform/mac/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: Removed.
  • platform/mac/fast/regions/overflow-size-change-with-stacking-context-expected.txt: Removed.
11:35 AM Changeset in webkit [140986] by tonyg@chromium.org
  • 2 edits in trunk/Source/WebCore

Don't use the threaded HTML parser for javascript: URLs
https://bugs.webkit.org/show_bug.cgi?id=107975

Reviewed by Adam Barth.

Several layout tests depend on javascript: URL iframes loading synchronously including fast/loader/javascript-url-encoding.html.
This patch avoids using the threaded parser for those URLs so they will continue to be synchronous.

No new tests because covered by existing tests.

  • html/parser/HTMLParserOptions.cpp:

(WebCore::HTMLParserOptions::HTMLParserOptions):

11:28 AM Changeset in webkit [140985] by weinig@apple.com
  • 6 edits in trunk/Source/WebCore

SVGPathStringSource should not up-convert 8-bit strings to UTF-16
https://bugs.webkit.org/show_bug.cgi?id=108050

Reviewed by Anders Carlsson.

Should save around ~400k on Membuster3.

  • svg/SVGParserUtilities.cpp:

(WebCore::parseNumber):
(WebCore::genericParseArcFlag):
(WebCore::parseArcFlag):

  • svg/SVGParserUtilities.h:

Add LChar variants of parseNumber and parseArcFlag.

  • svg/SVGPathSource.h:

(WebCore):
Move forward declaration of FloatPoint here, where it belongs.

  • svg/SVGPathStringSource.cpp:

(WebCore::parseFloatPoint):
(WebCore::parseFloatPoint2):
(WebCore::parseFloatPoint3):
Add helpers for parsing float points.

(WebCore::SVGPathStringSource::SVGPathStringSource):
(WebCore::SVGPathStringSource::hasMoreData):
(WebCore::SVGPathStringSource::moveToNextToken):
(WebCore::parseSVGSegmentTypeHelper):
(WebCore::SVGPathStringSource::parseSVGSegmentType):
(WebCore::nextCommandHelper):
(WebCore::SVGPathStringSource::nextCommand):
(WebCore::SVGPathStringSource::parseMoveToSegment):
(WebCore::SVGPathStringSource::parseLineToSegment):
(WebCore::SVGPathStringSource::parseLineToHorizontalSegment):
(WebCore::SVGPathStringSource::parseLineToVerticalSegment):
(WebCore::SVGPathStringSource::parseCurveToCubicSegment):
(WebCore::SVGPathStringSource::parseCurveToCubicSmoothSegment):
(WebCore::SVGPathStringSource::parseCurveToQuadraticSegment):
(WebCore::SVGPathStringSource::parseCurveToQuadraticSmoothSegment):
(WebCore::parseArcToSegmentHelper):
(WebCore::SVGPathStringSource::parseArcToSegment):

  • svg/SVGPathStringSource.h:

(SVGPathStringSource):
Make 8-bit aware.

11:24 AM Changeset in webkit [140984] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Repaint issues in background tabs after r138858
https://bugs.webkit.org/show_bug.cgi?id=108092
<rdar://problem/13076430>

Reviewed by Tim Horton.

In r138858, we unparented all tiles in the tile caches of background tabs.
That broke repaints in background tabs; when bringing that tab back to the
foreground, we would call -setNeedsDisplayInRect:, and then reparent the tiles
on a zero-delay timer. Those repaints would then be flipped (possibly because
CA can't look up the layer tree to check for flipped geometry).

Fix by revalidating tiles (which reparents the tiles) at the time we're told
we're moving into the window, which happens before repaints are flushed.

  • platform/graphics/ca/mac/TileCache.mm:

(WebCore::TileCache::setIsInWindow):

11:23 AM Changeset in webkit [140983] by abarth@webkit.org
  • 22 edits in trunk

Remove webkitNotifications.createHTMLNotification
https://bugs.webkit.org/show_bug.cgi?id=107598

Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

As discussed in http://lists.webkit.org/pipermail/webkit-dev/2012-February/019354.html,
we've been slowly deprecating HTML notificiations for about a year.
FeatureObserver says that HTML notifications are used by 0.0008% of web
pages, which means we should be able to remove them without causing too
much trouble.

  • Configurations/FeatureDefines.xcconfig:
  • Modules/notifications/Notification.cpp:

(WebCore):
(WebCore::Notification::Notification):

  • Modules/notifications/Notification.h:

(Notification):

  • Modules/notifications/NotificationCenter.h:

(NotificationCenter):

  • Modules/notifications/NotificationCenter.idl:

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataEnableFeatures.in:

Source/WebKit/chromium:

We can remove these stubs once we've removed the Chromium-side code
that depends on them.

  • src/WebNotification.cpp:

(WebKit::WebNotification::isHTML):
(WebKit::WebNotification::url):
(WebKit::WebNotification::iconURL):
(WebKit::WebNotification::title):
(WebKit::WebNotification::body):

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/Platform.h:
11:21 AM Changeset in webkit [140982] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix non-fat builds by excluding PluginService.32 as a target dependency for WebKit2.

  • WebKit2.xcodeproj/project.pbxproj:
11:19 AM Changeset in webkit [140981] by oliver@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION(r139145): A couple of fast/workers tests fail
https://bugs.webkit.org/show_bug.cgi?id=106415

These tests are stable now.

  • platform/mac/TestExpectations:
11:15 AM Changeset in webkit [140980] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] SpellingHandler parses and creates spellcheck requests regardless of the system spell check status
https://bugs.webkit.org/show_bug.cgi?id=108085

Patch by Otto Derek Cheung <otcheung@rim.com> on 2013-01-28
Reviewed by Rob Buis.

Fix a merge error that duplicated a function declaration in InputHandler.h.

  • WebKitSupport/InputHandler.h:
11:09 AM Changeset in webkit [140979] by jochen@chromium.org
  • 2 edits in trunk/Tools

[chromium] remove temporary define used for updating TestRunner API

Unreviewed. Clean-up change.

  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:
10:36 AM Changeset in webkit [140978] by commit-queue@webkit.org
  • 15 edits
    2 adds in trunk/Source/WebCore

[CSS Exclusions] Refactor ExclusionShapeInsideInfo to more general ExclusionShapeInfo
https://bugs.webkit.org/show_bug.cgi?id=100766

Patch by Bear Travis <betravis@adobe.com> on 2013-01-28
Reviewed by Dirk Schulze.

Refactoring, covered by existing tests.

Factoring out code common to ExclusionShapeInsideInfo and ExclusionShapeOutsideInfo
into common classes in ExclusionShapeInfo.h. Since the ExclusionShapeInsideInfo and
ExclusionShapeOutsideInfo share almost all of their code, save the RenderObject type
they work with and the specific shapeInside/Outside methods they call on RenderStyle
and ExclusionShape, the code has been templated. The code responsible for maintaining
global maps has also been factored out into a MappedInfo class.

  • CMakeLists.txt: Adding ExclusionShapeInfo files.
  • GNUmakefile.list.am: Ditto.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • rendering/ExclusionShapeInfo.cpp: Added.

(WebCore::::computedShape): Determine the shape based on the current logical
dimensions. Call this method rather than accessing m_shape directly.

  • rendering/ExclusionShapeInfo.h: Added.

(MappedInfo): Helper class that maintains a global info map.
(WebCore::MappedInfo::ensureInfo): Look up the info for a key and add it if not present.
(WebCore::MappedInfo::removeInfo): Remove the info associated with a key.
(WebCore::MappedInfo::info): Look up the info associated with a key.
(WebCore::MappedInfo::infoMap): The map used to store key/info pairs.
(ExclusionShapeInfo): A common parent class for ExclusionShapeInside/OutsideInfos.
The methods were factored out of the code common to ExclusionShapeInside/OutsideInfo.
(WebCore::ExclusionShapeInfo::~ExclusionShapeInfo): Destructor.
(WebCore::ExclusionShapeInfo::setShapeSize): Sets the shape's logical size.
(WebCore::ExclusionShapeInfo::shapeLogicalTop/Bottom/Left/Right/Width/Height):
Returns the shape's logical dimensions.
(WebCore::ExclusionShapeInfo::dirtyShapeSize): Mark the shape for recomputation.
(WebCore::ExclusionShapeInfo::owner): The renderer to which this info belongs.
(WebCore::ExclusionShapeInfo::ExclusionShapeInfo): Constructor.
(WebCore::ExclusionShapeInfo::floatLogicalTopToLayoutUnit/floatLogicalBottomToLayoutUnit):
Helper methods that round float units from ExclusionShapes to LayoutUnits for layout.

  • rendering/ExclusionShapeInsideInfo.cpp:

(WebCore::ExclusionShapeInsideInfo::computeSegmentsForLine): Modified to use
computedShape() rather than m_shape.
(WebCore::ExclusionShapeInsideInfo::adjustLogicalLineTop): Ditto.

  • rendering/ExclusionShapeInsideInfo.h:

(WebCore::ExclusionShapeInsideInfo::createInfo): Renamed to match MappedInfo.
(WebCore::ExclusionShapeInsideInfo::isEnabledFor): Renamed to match shorter naming.
(WebCore::ExclusionShapeInsideInfo::lineOverlapsShapeBounds): Modified to use
computedShape().

  • rendering/ExclusionShapeOutsideInfo.cpp:

(WebCore::ExclusionShapeOutsideInfo::isEnabledFor): Renamed to match shorter naming.

  • rendering/ExclusionShapeOutsideInfo.h:

(WebCore::ExclusionShapeOutsideInfo::createInfo): Renamed to match MappedInfo.
(WebCore::ExclusionShapeOutsideInfo::ExclusionShapeOutsideInfo): Constructor.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::willBeDestroyed): Use shortened MappedInfo names for looking
up infos.
(WebCore::RenderBlock::exclusionShapeInsideInfo): Ditto.
(WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange): Ditto.
(WebCore::RenderBlock::computeExclusionShapeSize): Ditto.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed): Ditto.
(WebCore::RenderBox::updateExclusionShapeOutsideInfoAfterStyleChange): Ditto.

  • rendering/RenderBox.h:

(WebCore):
(WebCore::RenderBox::exclusionShapeOutsideInfo): Ditto.

10:33 AM Changeset in webkit [140977] by kadam@inf.u-szeged.hu
  • 6 edits
    5 copies
    73 moves
    14 adds in trunk/LayoutTests

[Qt] Unreviewed gardening.

Correcting rebaseline done in r140959.

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2013-01-28

  • platform/qt-5.0-wk1/compositing/absolute-inside-out-of-view-fixed-expected.txt: Renamed from LayoutTests/platform/qt/compositing/absolute-inside-out-of-view-fixed-expected.txt.
  • platform/qt-5.0-wk1/compositing/backing/no-backing-for-clip-overlap-expected.txt: Copied from LayoutTests/platform/qt/compositing/backing/no-backing-for-clip-overlap-expected.txt.
  • platform/qt-5.0-wk1/compositing/bounds-in-flipped-writing-mode-expected.txt: Renamed from LayoutTests/platform/qt/compositing/bounds-in-flipped-writing-mode-expected.txt.
  • platform/qt-5.0-wk1/compositing/clip-child-by-non-stacking-ancestor-expected.txt: Renamed from LayoutTests/platform/qt/compositing/clip-child-by-non-stacking-ancestor-expected.txt.
  • platform/qt-5.0-wk1/compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt: Renamed from LayoutTests/platform/qt/compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt.
  • platform/qt-5.0-wk1/compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt: Renamed from LayoutTests/platform/qt/compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt.
  • platform/qt-5.0-wk1/compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt: Renamed from LayoutTests/platform/qt/compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt.
  • platform/qt-5.0-wk1/compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt: Renamed from LayoutTests/platform/qt/compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-clipped-composited-child-expected.png: Renamed from LayoutTests/platform/qt/compositing/geometry/bounds-clipped-composited-child-expected.png.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-clipped-composited-child-expected.txt: Renamed from LayoutTests/platform/qt/compositing/geometry/bounds-clipped-composited-child-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-dynamic-expected.png: Renamed from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-expected.png.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt: Renamed from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png: Copied from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt: Renamed from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/bounds-ignores-hidden-expected.txt: Renamed from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/clip-expected.txt: Renamed from LayoutTests/platform/qt/compositing/geometry/clip-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/clip-inside-expected.txt: Renamed from LayoutTests/platform/qt/compositing/geometry/clip-inside-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/composited-in-columns-expected.png: Renamed from LayoutTests/platform/qt/compositing/geometry/composited-in-columns-expected.png.
  • platform/qt-5.0-wk1/compositing/geometry/composited-in-columns-expected.txt: Renamed from LayoutTests/platform/qt/compositing/geometry/composited-in-columns-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/flipped-writing-mode-expected.png: Renamed from LayoutTests/platform/qt/compositing/geometry/flipped-writing-mode-expected.png.
  • platform/qt-5.0-wk1/compositing/geometry/flipped-writing-mode-expected.txt: Renamed from LayoutTests/platform/qt/compositing/geometry/flipped-writing-mode-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/foreground-layer-expected.png: Renamed from LayoutTests/platform/qt/compositing/geometry/foreground-layer-expected.png.
  • platform/qt-5.0-wk1/compositing/geometry/foreground-layer-expected.txt: Renamed from LayoutTests/platform/qt/compositing/geometry/foreground-layer-expected.txt.
  • platform/qt-5.0-wk1/compositing/geometry/preserve-3d-switching-expected.txt: Copied from LayoutTests/platform/qt/compositing/geometry/preserve-3d-switching-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/become-composited-nested-iframes-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/become-composited-nested-iframes-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/become-overlapped-iframe-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/become-overlapped-iframe-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/composited-parent-iframe-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/composited-parent-iframe-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/connect-compositing-iframe-delayed-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/connect-compositing-iframe-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/connect-compositing-iframe-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/connect-compositing-iframe2-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/connect-compositing-iframe2-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/connect-compositing-iframe3-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/connect-compositing-iframe3-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/enter-compositing-iframe-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/enter-compositing-iframe-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/iframe-resize-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/iframe-resize-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/overlapped-iframe-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/overlapped-iframe-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/overlapped-iframe-iframe-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/overlapped-iframe-iframe-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/overlapped-nested-iframes-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/overlapped-nested-iframes-expected.txt.
  • platform/qt-5.0-wk1/compositing/iframes/scrolling-iframe-expected.txt: Renamed from LayoutTests/platform/qt/compositing/iframes/scrolling-iframe-expected.txt.
  • platform/qt-5.0-wk1/compositing/images/clip-on-directly-composited-image-expected.txt: Renamed from LayoutTests/platform/qt/compositing/images/clip-on-directly-composited-image-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/animation-overlap-with-children-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/animation-overlap-with-children-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/fixed-position-out-of-view-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/fixed-position-out-of-view-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/fixed-position-under-transform-expected.png: Renamed from LayoutTests/platform/qt/compositing/layer-creation/fixed-position-under-transform-expected.png.
  • platform/qt-5.0-wk1/compositing/layer-creation/fixed-position-under-transform-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/fixed-position-under-transform-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/overflow-scroll-overlap-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-animation-clipping-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/overlap-animation-clipping-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-animation-container-expected.txt: Copied from LayoutTests/platform/qt/compositing/layer-creation/overlap-animation-container-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-child-layer-expected.png: Renamed from LayoutTests/platform/qt/compositing/layer-creation/overlap-child-layer-expected.png.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-child-layer-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/overlap-child-layer-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-transformed-layer-expected.png: Renamed from LayoutTests/platform/qt/compositing/layer-creation/overlap-transformed-layer-expected.png.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-transformed-layer-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/overlap-transformed-layer-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/rotate3d-overlap-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/rotate3d-overlap-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/stacking-context-overlap-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/stacking-context-overlap-expected.txt.
  • platform/qt-5.0-wk1/compositing/layer-creation/stacking-context-overlap-nested-expected.txt: Renamed from LayoutTests/platform/qt/compositing/layer-creation/stacking-context-overlap-nested-expected.txt.
  • platform/qt-5.0-wk1/compositing/masks/mask-layer-size-expected.txt: Renamed from LayoutTests/platform/qt/compositing/masks/mask-layer-size-expected.txt.
  • platform/qt-5.0-wk1/compositing/repaint/resize-repaint-expected.txt: Renamed from LayoutTests/platform/qt/compositing/repaint/resize-repaint-expected.txt.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-absolute-expected.png: Renamed from LayoutTests/platform/qt/compositing/rtl/rtl-iframe-absolute-expected.png.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-absolute-expected.txt: Renamed from LayoutTests/platform/qt/compositing/rtl/rtl-iframe-absolute-expected.txt.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-fixed-expected.png: Renamed from LayoutTests/platform/qt/compositing/rtl/rtl-iframe-fixed-expected.png.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-fixed-expected.txt: Renamed from LayoutTests/platform/qt/compositing/rtl/rtl-iframe-fixed-expected.txt.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-relative-expected.png: Renamed from LayoutTests/platform/qt/compositing/rtl/rtl-iframe-relative-expected.png.
  • platform/qt-5.0-wk1/compositing/rtl/rtl-iframe-relative-expected.txt: Renamed from LayoutTests/platform/qt/compositing/rtl/rtl-iframe-relative-expected.txt.
  • platform/qt-5.0-wk1/compositing/tiling/backface-preserve-3d-tiled-expected.png: Renamed from LayoutTests/platform/qt/compositing/tiling/backface-preserve-3d-tiled-expected.png.
  • platform/qt-5.0-wk1/compositing/tiling/backface-preserve-3d-tiled-expected.txt: Renamed from LayoutTests/platform/qt/compositing/tiling/backface-preserve-3d-tiled-expected.txt.
  • platform/qt-5.0-wk1/compositing/tiling/huge-layer-img-expected.png: Renamed from LayoutTests/platform/qt/compositing/tiling/huge-layer-img-expected.png.
  • platform/qt-5.0-wk1/compositing/tiling/huge-layer-img-expected.txt: Renamed from LayoutTests/platform/qt/compositing/tiling/huge-layer-img-expected.txt.
  • platform/qt-5.0-wk1/compositing/tiling/rotated-tiled-clamped-expected.png: Renamed from LayoutTests/platform/qt/compositing/tiling/rotated-tiled-clamped-expected.png.
  • platform/qt-5.0-wk1/compositing/tiling/rotated-tiled-clamped-expected.txt: Renamed from LayoutTests/platform/qt/compositing/tiling/rotated-tiled-clamped-expected.txt.
  • platform/qt-5.0-wk1/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.png: Renamed from LayoutTests/platform/qt/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.png.
  • platform/qt-5.0-wk1/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt: Renamed from LayoutTests/platform/qt/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt.
  • platform/qt-5.0-wk1/compositing/tiling/tiled-layer-resize-expected.txt: Renamed from LayoutTests/platform/qt/compositing/tiling/tiled-layer-resize-expected.txt.
  • platform/qt-5.0-wk1/compositing/visibility/layer-visible-content-expected.png: Renamed from LayoutTests/platform/qt/compositing/visibility/layer-visible-content-expected.png.
  • platform/qt-5.0-wk1/compositing/visibility/layer-visible-content-expected.txt: Renamed from LayoutTests/platform/qt/compositing/visibility/layer-visible-content-expected.txt.
  • platform/qt-5.0-wk1/compositing/visibility/visibility-image-layers-dynamic-expected.txt: Renamed from LayoutTests/platform/qt/compositing/visibility/visibility-image-layers-dynamic-expected.txt.
  • platform/qt-5.0-wk1/css3/filters/composited-during-transition-layertree-expected.txt: Copied from LayoutTests/platform/qt/css3/filters/composited-during-transition-layertree-expected.txt.
  • platform/qt-5.0-wk1/css3/filters/filtered-compositing-descendant-expected.png: Renamed from LayoutTests/platform/qt/css3/filters/filtered-compositing-descendant-expected.png.
  • platform/qt-5.0-wk1/css3/filters/filtered-compositing-descendant-expected.txt: Renamed from LayoutTests/platform/qt/css3/filters/filtered-compositing-descendant-expected.txt.
  • platform/qt/compositing/backing/no-backing-for-clip-overlap-expected.txt:
  • platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png:
  • platform/qt/compositing/geometry/preserve-3d-switching-expected.txt:
  • platform/qt/compositing/layer-creation/overlap-animation-container-expected.txt:
  • platform/qt/css3/filters/composited-during-transition-layertree-expected.txt:
10:27 AM Changeset in webkit [140976] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Cleanup ARM version of debugName() in DFGFPRInfo.h
https://bugs.webkit.org/show_bug.cgi?id=108090

Reviewed by David Kilzer.

Fixed debugName() so it will compile by adding static_cast<int> and missing commas.

  • dfg/DFGFPRInfo.h:

(JSC::DFG::FPRInfo::debugName):

9:45 AM Changeset in webkit [140975] by schenney@chromium.org
  • 9 edits
    2 adds in trunk

SVGViewSpec fails when corresponding element has been removed
https://bugs.webkit.org/show_bug.cgi?id=106957

Reviewed by Dirk Schulze.

Source/WebCore:

When JS holds an SVGViewSpec object while deleting the object that
defines the spec (an SVGSVGElement, or one of a few others) the
pointer to the target is cleared in the SVGViewSpec but the methods
that serve JS queries do not check and try to access the now null
target. This patch fixes the prooblem, returning null when the
corresponding object has been deleted.

Also removing SVGViewSpec::setPreserveAspectRatioString, which is no
longer used by any callers.

Test: svg/dom/SVGViewSpec-invalid-ref-crash.html

  • svg/SVGViewSpec.cpp:

(WebCore):
(WebCore::SVGViewSpec::viewTarget): Check for null target and return null.
(WebCore::SVGViewSpec::transform): Check for null target and return null..
(WebCore::SVGViewSpec::viewBoxAnimated): Check for null target and return null.
(WebCore::SVGViewSpec::preserveAspectRatioAnimated): Check for null target and return null.
(WebCore::SVGViewSpec::lookupOrCreateViewBoxWrapper): ASSERT non-null target.
(WebCore::SVGViewSpec::lookupOrCreatePreserveAspectRatioWrapper): ASSERT non-null target.
(WebCore::SVGViewSpec::lookupOrCreateTransformWrapper): ASSERT non-null target.

  • svg/SVGViewSpec.h:

(SVGViewSpec): Move some methods out of the header and into the implementation file.

  • svg/SVGViewSpec.cpp:

(WebCore):
(WebCore::SVGViewSpec::transform):
(WebCore::SVGViewSpec::viewBoxAnimated):
(WebCore::SVGViewSpec::preserveAspectRatioAnimated):
(WebCore::SVGViewSpec::lookupOrCreateViewBoxWrapper):
(WebCore::SVGViewSpec::lookupOrCreatePreserveAspectRatioWrapper):
(WebCore::SVGViewSpec::lookupOrCreateTransformWrapper):

  • svg/SVGViewSpec.h:

(SVGViewSpec):

LayoutTests:

Test for the situation in which the target of an SVGViewSpec is
removed while the view spec lives on in JS. The test is expected to
fail on all JSC based platforms because the element that must be
deleted to trigger the results is not deleted upon GC.

  • svg/dom/SVGViewSpec-invalid-ref-crash-expected.txt: Added.
  • svg/dom/SVGViewSpec-invalid-ref-crash.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • svg/dom/SVGViewSpec-invalid-ref-crash-expected.txt: Added.
  • svg/dom/SVGViewSpec-invalid-ref-crash.html: Added.
9:05 AM Changeset in webkit [140974] by commit-queue@webkit.org
  • 27 edits
    1 delete in trunk

HTML5 promotes DL from specific 'definition list' to superset 'description list'; accessibility strings and accessors should be updated to match.
https://bugs.webkit.org/show_bug.cgi?id=107650

Source/WebCore:

Patch by James Craig <james@cookiecrook.com> on 2013-01-28
Reviewed by Chris Fleizach.

Updating accessibility strings and accessors for DL/DT/DD; new one for [role="definition"] (previously it reused the role/desc for DD).

Test: platform/mac/accessibility/definition-list-term.html:
Test: accessibility/lists.html

  • English.lproj/Localizable.strings:
  • accessibility/AccessibilityList.cpp:

(WebCore::AccessibilityList::isDescriptionList):

  • accessibility/AccessibilityList.h:

(AccessibilityList):

  • accessibility/AccessibilityObject.cpp:

(WebCore::createARIARoleMap):

  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(createAccessibilityRoleMap):
(-[WebAccessibilityObjectWrapper subrole]):
(-[WebAccessibilityObjectWrapper roleDescription]):

  • platform/LocalizedStrings.cpp:

(WebCore::AXDefinitionText):
(WebCore::AXDescriptionListTermText):
(WebCore):
(WebCore::AXDescriptionListDetailText):

  • platform/LocalizedStrings.h:

(WebCore):

  • platform/blackberry/LocalizedStringsBlackBerry.cpp:

(WebCore::AXDefinitionText):
(WebCore::AXDescriptionListDetailText):
(WebCore):
(WebCore::AXDescriptionListTermText):

  • platform/efl/LocalizedStringsEfl.cpp:

(WebCore::AXDefinitionText):
(WebCore):
(WebCore::AXDescriptionListTermText):
(WebCore::AXDescriptionListDetailText):

  • platform/gtk/LocalizedStringsGtk.cpp:

(WebCore::AXDefinitionText):
(WebCore):
(WebCore::AXDescriptionListTermText):
(WebCore::AXDescriptionListDetailText):

  • platform/qt/LocalizedStringsQt.cpp:

(WebCore::AXDefinitionText):
(WebCore::AXDescriptionListTermText):
(WebCore):
(WebCore::AXDescriptionListDetailText):

Source/WebKit/chromium:

Patch by James Craig <james@cookiecrook.com> on 2013-01-28
Reviewed by Chris Fleizach.

Updating accessibility strings and accessors for DL/DT/DD; new one for [role="definition"] (previously it reused the role/desc for DD).

  • public/WebAccessibilityRole.h:
  • src/AssertMatchingEnums.cpp:
  • src/LocalizedStrings.cpp:

(WebCore::AXDefinitionText):
(WebCore):
(WebCore::AXDescriptionListTermText):
(WebCore::AXDescriptionListDetailText):

Tools:

Patch by James Craig <james@cookiecrook.com> on 2013-01-28
Reviewed by Chris Fleizach.

Updating accessibility strings and accessors for DL/DT/DD.

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

(createDescriptionList):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ViewController.js:
  • DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:

LayoutTests:

Patch by James Craig <james@cookiecrook.com> on 2013-01-28
Reviewed by Chris Fleizach.

Updating accessibility strings and accessors for DL/DT/DD; new one for [role="definition"] (previously it reused the role/desc for DD).
Removed gtk expectation as the expectation has changed: platform/gtk/accessibility/lists-expected.txt

  • accessibility/lists.html:
  • platform/gtk/accessibility/lists-expected.txt: Removed.
  • platform/mac/accessibility/definition-list-term-expected.txt:
  • platform/mac/accessibility/definition-list-term.html:
  • platform/mac/accessibility/lists-expected.txt:
8:59 AM Changeset in webkit [140973] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] SpellingHandler parses and creates spellcheck requests regardless of the system spell check status
https://bugs.webkit.org/show_bug.cgi?id=108085
PR 286165

Patch by Otto Derek Cheung <otcheung@rim.com> on 2013-01-28
Reviewed by Rob Buis.
Internally reviewed by Nima Ghanavatian.

Adding a check for the system spell check status in InputHandler::shouldSpellCheckElement so
we won't bother sending a spellcheck request if system spell check is turned off.

However, on a fresh browser start up and on the first setElementFocus, the spellcheck value isn't defined yet.
The first spell check request is therefore necessary to connect to imf to determine whether spell check is turned on.
If spell check is turned off, we will turn spellinghandler off.

Tested the patch using a test site that contains editable text in text-areas and content-editable divs. Also tested on
an extreme test case where we try to edit a content-editable div with 30000 characters. Confirmed spell-check requests are
being canceled if system spell check is off.

In theory, this patch should also fix PR 284229 . However, because of issues with getting the system spell check values from IMF,
additional work needs to be done for that PR.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::setSpellCheckingEnabled):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::InputHandler):
(BlackBerry::WebKit::InputHandler::shouldSpellCheckElement):
(WebKit):
(BlackBerry::WebKit::InputHandler::stopPendingSpellCheckRequests):

  • WebKitSupport/InputHandler.h:

(InputHandler):
(BlackBerry::WebKit::InputHandler::setSystemSpellCheckStatus):

8:58 AM Changeset in webkit [140972] by kadam@inf.u-szeged.hu
  • 11 edits
    10 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Added platform specific expectations after r140728.

  • platform/qt/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.txt: Added.
  • platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt: Added.
  • platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt: Added.
  • platform/qt/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Added.
  • platform/qt/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Added.
  • platform/qt/svg/custom/glyph-setting-d-attribute-expected.png:
  • platform/qt/svg/custom/glyph-setting-d-attribute-expected.txt: Added.
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.txt: Added.
  • platform/qt/svg/hixie/viewbox/002-expected.png:
  • platform/qt/svg/hixie/viewbox/002-expected.txt: Added.
  • platform/qt/svg/hixie/viewbox/003-expected.png:
  • platform/qt/svg/hixie/viewbox/003-expected.txt: Added.
  • platform/qt/svg/text/text-viewbox-rescale-expected.png:
  • platform/qt/svg/text/text-viewbox-rescale-expected.txt: Added.
8:54 AM Changeset in webkit [140971] by mkwst@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Unreviewed build fix, missing include in AssertMatchingEnums.cpp
https://bugs.webkit.org/show_bug.cgi?id=108086

Disabling SVG exposed a missing include in AssertMatchingEnums. This
patch adds it in.

  • src/AssertMatchingEnums.cpp:

Include 'ResourceLoadPriority.h'.

8:44 AM Changeset in webkit [140970] by commit-queue@webkit.org
  • 4 edits in trunk

Tools: [GTK][WTR] Update layoutTestController.pathToLocalResource
https://bugs.webkit.org/show_bug.cgi?id=107538

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-01-28
Reviewed by Martin Robinson.

  • WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:

(WTR::TestRunner::pathToLocalResource): Update implementation based on
DRT code.

LayoutTests: [GTK] [WTR] layoutTestController.pathToLocalResource needs to be updated
https://bugs.webkit.org/show_bug.cgi?id=107538

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-01-28
Reviewed by Martin Robinson.

  • platform/gtk-wk2/TestExpectations: Remove tests that pass now:

http/tests/security/local-user-CSS-from-remote.html,
fast/loader/local-CSS-from-local.html,
fast/loader/local-JavaScript-from-local.html,
fast/loader/local-image-from-local.html and
fast/dom/frame-loading-via-document-write.html.

8:28 AM Changeset in webkit [140969] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk/Tools

[GTK][WTR] Move getTopLevelPath() to utilities file
https://bugs.webkit.org/show_bug.cgi?id=107541

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-01-28
Reviewed by Martin Robinson.

  • WebKitTestRunner/GNUmakefile.am: Add new files.
  • WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:

(WTR::getOutputDir): Uses the moved method from InjectedBundleUtilities.

  • WebKitTestRunner/InjectedBundle/gtk/InjectedBundleUtilities.cpp: Added.

(WTR):
(WTR::topLevelPath): Implementation moved from ActivateFontsGtk.

  • WebKitTestRunner/InjectedBundle/gtk/InjectedBundleUtilities.h: Added.

(WTR): Add new method header and documentation.

8:14 AM Changeset in webkit [140968] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: Inherit SidebarPane from View.
https://bugs.webkit.org/show_bug.cgi?id=108075

Patch by Vladislav Kaznacheev <kaznacheev@chromium.org> on 2013-01-28
Reviewed by Pavel Feldman.

Inherited WebInspector.SidebarPane from WebInspector.View to streamlines the code and
simplify further enhancements to sidebar panes. Got rid of obsolete onattach calls.

No new tests.

  • inspector/front-end/AuditResultView.js:

(WebInspector.AuditResultView):

  • inspector/front-end/ElementsPanel.js:

(WebInspector.ElementsPanel):
(WebInspector.ElementsPanel.prototype.wasShown):
(WebInspector.ElementsPanel.prototype.willHide):

  • inspector/front-end/ExtensionServer.js:

(WebInspector.ExtensionServer.prototype._onCreateSidebarPane):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel):
(WebInspector.ScriptsPanel.prototype.wasShown):

  • inspector/front-end/SidebarPane.js:

(WebInspector.SidebarPane):

  • inspector/front-end/WatchExpressionsSidebarPane.js:

(WebInspector.WatchExpressionsSidebarPane.prototype._refreshExpressionsIfNeeded):

7:34 AM Changeset in webkit [140967] by commit-queue@webkit.org
  • 14 edits
    2 adds in trunk

[Freetype] Synthetic bold not applied to fallback fonts properly
https://bugs.webkit.org/show_bug.cgi?id=107733

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-01-28
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

No new tests. This is covered by existing pixel tests.

  • platform/graphics/freetype/FontPlatformDataFreeType.cpp:

(WebCore::FontPlatformData::FontPlatformData): When we detect a situation in which
we are a bold font, but the Fontconfig pattern does not describe the font as
bold, we should activate synthetic bolding.

LayoutTests:

  • platform/gtk/fast/css/font-face-multiple-faces-expected.png:
  • platform/gtk/fast/css/font-face-synthetic-bold-italic-expected.png: Added.
  • platform/gtk/fast/dom/34176-expected.png: Added.
  • platform/gtk/fast/encoding/denormalised-voiced-japanese-chars-expected.png:
  • platform/gtk/fast/text/bidi-embedding-pop-and-push-same-expected.png:
  • platform/gtk/fast/text/cg-fallback-bolding-expected.png:
  • platform/gtk/fast/text/fallback-traits-fixup-expected.png:
  • platform/gtk/fast/text/international/bidi-LDB-2-CSS-expected.png:
  • platform/gtk/fast/text/international/bidi-LDB-2-HTML-expected.png:
  • platform/gtk/fast/text/international/bidi-LDB-2-formatting-characters-expected.png:
  • platform/gtk/fast/text/international/bold-bengali-expected.png:
  • platform/gtk/fast/text/international/khmer-selection-expected.png:
  • platform/gtk/fast/writing-mode/Kusa-Makura-background-canvas-expected.png:
4:47 AM Changeset in webkit [140966] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Regression] Search all sources should not search across service projects.
https://bugs.webkit.org/show_bug.cgi?id=108068

Reviewed by Pavel Feldman.

  • inspector/front-end/ScriptsSearchScope.js:

(WebInspector.ScriptsSearchScope):
(WebInspector.ScriptsSearchScope.prototype._sortedUISourceCodes):

4:45 AM Changeset in webkit [140965] by pfeldman@chromium.org
  • 8 edits in trunk

Web Inspector: SourceURL and SourceMappingURL together in evalled code
https://bugs.webkit.org/show_bug.cgi?id=107939

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Resolve map's sources URLs wrt script URL in case sourceMap is defined as data:.

  • inspector/front-end/CompilerScriptMapping.js:

(WebInspector.CompilerScriptMapping.prototype.loadSourceMapForScript):

  • inspector/front-end/ParsedURL.js:

(WebInspector.ParsedURL.completeURL):

  • inspector/front-end/SourceMap.js:

(WebInspector.SourceMap.prototype._parseMap):

LayoutTests:

  • http/tests/inspector/compiler-script-mapping-expected.txt:
  • http/tests/inspector/compiler-script-mapping.html:
4:22 AM Changeset in webkit [140964] by reni@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][Win][WK2] Build fix after r140957.

Rubber-stamped by Csaba Osztrogonác.

<sys/wait.h> is only needed and available on linux therefore it's moved into an ifdef block.

  • WebProcess/qt/WebProcessMainQt.cpp:
4:01 AM Changeset in webkit [140963] by aandrey@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: [Canvas] refactoring in CanvasAgent to reduce code dups
https://bugs.webkit.org/show_bug.cgi?id=108064

Reviewed by Pavel Feldman.

Introduce private methods injectedScriptCanvasModule() in InspectorCanvasAgent to reduce much of code duplication.
Drive-by: in InspectorPageAgent.assertFrame convert "String" argument to "const String&".

  • inspector/InspectorCanvasAgent.cpp:

(WebCore::InspectorCanvasAgent::dropTraceLog):
(WebCore::InspectorCanvasAgent::captureFrame):
(WebCore::InspectorCanvasAgent::startCapturing):
(WebCore::InspectorCanvasAgent::stopCapturing):
(WebCore::InspectorCanvasAgent::getTraceLog):
(WebCore::InspectorCanvasAgent::replayTraceLog):
(WebCore::InspectorCanvasAgent::getResourceInfo):
(WebCore::InspectorCanvasAgent::getResourceState):
(WebCore::InspectorCanvasAgent::wrapCanvas2DRenderingContextForInstrumentation):
(WebCore::InspectorCanvasAgent::wrapWebGLRenderingContextForInstrumentation):
(WebCore::InspectorCanvasAgent::injectedScriptCanvasModule):
(WebCore):
(WebCore::InspectorCanvasAgent::findFramesWithUninstrumentedCanvases):

  • inspector/InspectorCanvasAgent.h:

(InspectorCanvasAgent):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::assertFrame):
(WebCore::InspectorPageAgent::assertDocumentLoader):

  • inspector/InspectorPageAgent.h:

(InspectorPageAgent):

2:31 AM Changeset in webkit [140962] by kenneth@webkit.org
  • 5 edits in trunk/Source/WebKit2

[EFL][WK2] Use C API inside ewk_url_response
https://bugs.webkit.org/show_bug.cgi?id=107826

Reviewed by Andreas Kling.

  • Shared/API/c/WKURLResponse.cpp:

(WKURLResponseGetExpectedContentsLength):

  • Shared/API/c/WKURLResponse.h:

Add new WK2 C API to get the expected contents length.

  • UIProcess/API/efl/ewk_url_response.cpp:

(EwkUrlResponse::EwkUrlResponse):
(EwkUrlResponse::httpStatusCode):
(EwkUrlResponse::contentLength):

  • UIProcess/API/efl/ewk_url_response_private.h:

(EwkUrlResponse::create):
(EwkUrlResponse):

Change the methods to not call WebCore methods.

2:27 AM Changeset in webkit [140961] by kenneth@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2][EFL] Remove unneeded private methods
https://bugs.webkit.org/show_bug.cgi?id=107693

Reviewed by Andreas Kling.

Care has been taken to verify that the wrappers can
never be null when called.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::displayTimerFired):
(EwkViewImpl::createGLSurface):

  • UIProcess/API/efl/EwkViewImpl.h:

(EwkViewImpl):

2:25 AM Changeset in webkit [140960] by kihong.kwon@samsung.com
  • 3 edits in trunk/Source/WebCore

Replace the type of Proximity's supplementName for char*
https://bugs.webkit.org/show_bug.cgi?id=108049

Reviewed by Benjamin Poulain.

There are some changes for supplementName by Bug 107535.
It makes build break when PROXIMITY_EVENT feature is enabled.
Therefore ProximityController need to change the type of supplementName for char* also.

No new tests. Functionality is not changed.

  • Modules/proximity/DeviceProximityController.cpp:

(WebCore::DeviceProximityController::supplementName):

  • Modules/proximity/DeviceProximityController.h:

(DeviceProximityController):

2:25 AM Changeset in webkit [140959] by kadam@inf.u-szeged.hu
  • 6 edits
    7 copies
    70 adds in trunk/LayoutTests

[Qt] Unreviewed rebaseline after r140821.

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2013-01-28

  • platform/qt/compositing/absolute-inside-out-of-view-fixed-expected.txt: Added.
  • platform/qt/compositing/backing/no-backing-for-clip-overlap-expected.txt:
  • platform/qt/compositing/bounds-in-flipped-writing-mode-expected.txt: Added.
  • platform/qt/compositing/clip-child-by-non-stacking-ancestor-expected.txt: Added.
  • platform/qt/compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt: Added.
  • platform/qt/compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt: Added.
  • platform/qt/compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt: Added.
  • platform/qt/compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt: Added.
  • platform/qt/compositing/geometry/bounds-clipped-composited-child-expected.png: Added.
  • platform/qt/compositing/geometry/bounds-clipped-composited-child-expected.txt: Added.
  • platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-expected.png: Copied from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png.
  • platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt: Added.
  • platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png:
  • platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt: Added.
  • platform/qt/compositing/geometry/bounds-ignores-hidden-expected.txt: Added.
  • platform/qt/compositing/geometry/clip-expected.txt: Added.
  • platform/qt/compositing/geometry/clip-inside-expected.txt: Added.
  • platform/qt/compositing/geometry/composited-in-columns-expected.png: Added.
  • platform/qt/compositing/geometry/composited-in-columns-expected.txt: Added.
  • platform/qt/compositing/geometry/flipped-writing-mode-expected.png: Copied from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png.
  • platform/qt/compositing/geometry/flipped-writing-mode-expected.txt: Added.
  • platform/qt/compositing/geometry/foreground-layer-expected.png: Added.
  • platform/qt/compositing/geometry/foreground-layer-expected.txt: Added.
  • platform/qt/compositing/geometry/preserve-3d-switching-expected.txt:
  • platform/qt/compositing/iframes/become-composited-nested-iframes-expected.txt: Added.
  • platform/qt/compositing/iframes/become-overlapped-iframe-expected.txt: Added.
  • platform/qt/compositing/iframes/composited-parent-iframe-expected.txt: Added.
  • platform/qt/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
  • platform/qt/compositing/iframes/connect-compositing-iframe-expected.txt: Added.
  • platform/qt/compositing/iframes/connect-compositing-iframe2-expected.txt: Added.
  • platform/qt/compositing/iframes/connect-compositing-iframe3-expected.txt: Added.
  • platform/qt/compositing/iframes/enter-compositing-iframe-expected.txt: Added.
  • platform/qt/compositing/iframes/iframe-resize-expected.txt: Added.
  • platform/qt/compositing/iframes/overlapped-iframe-expected.txt: Added.
  • platform/qt/compositing/iframes/overlapped-iframe-iframe-expected.txt: Added.
  • platform/qt/compositing/iframes/overlapped-nested-iframes-expected.txt: Added.
  • platform/qt/compositing/iframes/scrolling-iframe-expected.txt: Added.
  • platform/qt/compositing/images/clip-on-directly-composited-image-expected.txt: Added.
  • platform/qt/compositing/layer-creation/animation-overlap-with-children-expected.txt: Added.
  • platform/qt/compositing/layer-creation/fixed-position-out-of-view-expected.txt: Added.
  • platform/qt/compositing/layer-creation/fixed-position-out-of-view-scaled-iframe-expected.txt: Added.
  • platform/qt/compositing/layer-creation/fixed-position-under-transform-expected.png: Added.
  • platform/qt/compositing/layer-creation/fixed-position-under-transform-expected.txt: Added.
  • platform/qt/compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt: Added.
  • platform/qt/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Added.
  • platform/qt/compositing/layer-creation/overlap-animation-clipping-expected.txt: Added.
  • platform/qt/compositing/layer-creation/overlap-animation-container-expected.txt:
  • platform/qt/compositing/layer-creation/overlap-child-layer-expected.png: Copied from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png.
  • platform/qt/compositing/layer-creation/overlap-child-layer-expected.txt: Added.
  • platform/qt/compositing/layer-creation/overlap-transformed-layer-expected.png: Copied from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png.
  • platform/qt/compositing/layer-creation/overlap-transformed-layer-expected.txt: Added.
  • platform/qt/compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt: Added.
  • platform/qt/compositing/layer-creation/rotate3d-overlap-expected.txt: Added.
  • platform/qt/compositing/layer-creation/stacking-context-overlap-expected.txt: Added.
  • platform/qt/compositing/layer-creation/stacking-context-overlap-nested-expected.txt: Added.
  • platform/qt/compositing/masks/mask-layer-size-expected.txt: Added.
  • platform/qt/compositing/repaint/resize-repaint-expected.txt: Added.
  • platform/qt/compositing/rtl/rtl-iframe-absolute-expected.png: Added.
  • platform/qt/compositing/rtl/rtl-iframe-absolute-expected.txt: Added.
  • platform/qt/compositing/rtl/rtl-iframe-fixed-expected.png: Added.
  • platform/qt/compositing/rtl/rtl-iframe-fixed-expected.txt: Added.
  • platform/qt/compositing/rtl/rtl-iframe-relative-expected.png: Copied from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png.
  • platform/qt/compositing/rtl/rtl-iframe-relative-expected.txt: Added.
  • platform/qt/compositing/tiling/backface-preserve-3d-tiled-expected.png: Added.
  • platform/qt/compositing/tiling/backface-preserve-3d-tiled-expected.txt: Added.
  • platform/qt/compositing/tiling/huge-layer-img-expected.png: Added.
  • platform/qt/compositing/tiling/huge-layer-img-expected.txt: Added.
  • platform/qt/compositing/tiling/rotated-tiled-clamped-expected.png: Added.
  • platform/qt/compositing/tiling/rotated-tiled-clamped-expected.txt: Added.
  • platform/qt/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.png: Added.
  • platform/qt/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt: Added.
  • platform/qt/compositing/tiling/tiled-layer-resize-expected.txt: Added.
  • platform/qt/compositing/visibility/layer-visible-content-expected.png: Copied from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png.
  • platform/qt/compositing/visibility/layer-visible-content-expected.txt: Added.
  • platform/qt/compositing/visibility/visibility-image-layers-dynamic-expected.txt: Added.
  • platform/qt/css3/filters/composited-during-transition-layertree-expected.txt:
  • platform/qt/css3/filters/filtered-compositing-descendant-expected.png: Copied from LayoutTests/platform/qt/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.png.
  • platform/qt/css3/filters/filtered-compositing-descendant-expected.txt: Added.
2:00 AM Changeset in webkit [140958] by rakuco@webkit.org
  • 2 edits in trunk/Tools

[EFL] Include Ecore_Getopt.h in MiniBrowser.
https://bugs.webkit.org/show_bug.cgi?id=108067

Reviewed by Kenneth Rohde Christiansen.

Be explicit and include Ecore_Getopt.h since we use it for parsing
command line options. It is safer than relying on other headers
including it for us.

  • MiniBrowser/efl/main.c:
1:54 AM Changeset in webkit [140957] by reni@webkit.org
  • 9 edits
    1 copy
    3 adds in trunk

[WK2] Putting QtWebProcess into a chrooted sandbox
https://bugs.webkit.org/show_bug.cgi?id=90005

.:

Reviewed by Anders Carlsson and Zoltan Herczeg.

Make it possible to build WebKit2 with SandboxProcess.

  • Source/QtWebKit.pro:

Source/WebKit2:

Reviewed by Anders Carlsson and Zoltan Herczeg.

This new feature makes possible to run WebProcess inside a chroot. In this case UIProcess calls the
internal SandboxProcess binary what makes up an environment for WebProcess inside the sandbox and runs the WebProcess.
SandboxProcess first creates two needed device files (random and urandom), mounts filesystems (proc and shared memory),
then links run-time dependencies of WebProcess. After this, SandboxProcess moves to a new pid namespace (cloning with
CLONE_NEWPID flag). Then after an other cloning (with CLONE_FS flag) we share our filesystem with our children. This is
needed because we want to call chroot() function from here and jail our child (WebProcess) too. This will be performed
when WebProcess sends a request for it via an socketpair. If sandboxing is done, SandboxProcess exits.
Since chroot() system call needs sudoer rights SandboxProcess binary should have set its suid flag. However we can reduce
its capabilites. First we restrict the capabilities of the process and the number of its possible resources. Furthermore
we fallback to the nobody or the real user.

  • Configurations/FeatureDefines.xcconfig:
  • SandboxProcess.pro: Added.
  • Shared/linux/SandboxProcess/SandboxEnvironmentLinux.cpp: Added.

(launchChangeRootHelper):
(setEnvironmentVariablesForChangeRootHelper):
(prepareAndStartChangeRootHelper):
(setCapabilities):
(dropPrivileges):
(fileExists):
(directoryPermissions):
(createDirectory):
(createDirectoryPath):
(createDeviceFiles):
(mountFileSystems):
(linkFile):
(linkDirectory):
(collectRunTimeDependencies):
(setupXauthorityForNobodyUser):
(initSandbox):
(restrictCapabilities):
(moveToNewPidNamespace):
(run):
(main):

  • Shared/linux/SandboxProcess/SandboxEnvironmentLinux.h: Added.
  • Shared/linux/SandboxProcess/StringOperations.cpp: Added.

(stringCopy):
(stringConcat):
(stringAppend):

  • Shared/linux/SandboxProcess/StringOperations.h: Added.
  • UIProcess/Launcher/qt/ProcessLauncherQt.cpp:

(WebKit::ProcessLauncher::launchProcess):

  • WebKit2.pri:
  • WebProcess.pro:
  • WebProcess/qt/WebProcessMainQt.cpp:

(WebKit):
(WebKit::chrootMe):
(WebKit::WebProcessMainQt):

Tools:

Reviewed by Anders Carlsson and Zoltan Herczeg.

Add feature flag for suid sandbox in linux.

  • Scripts/webkitperl/FeatureList.pm:
1:49 AM Changeset in webkit [140956] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Marking bug2479-5.html as crashing.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
1:39 AM Changeset in webkit [140955] by keishi@webkit.org
  • 3 edits in trunk/Source/WebCore

[REGRESSION] Calendar Picker focus ring is gone
https://bugs.webkit.org/show_bug.cgi?id=108055

Reviewed by Kent Tamura.

The focus ring wasn't visible because -webkit-focus-ring-color value
only works for outline property in strict mode. Using fixed color
instead.

No new tests. Can't reproduce in layout test because mock popup writes a
script tag in front of the doctype.

  • Resources/pagepopups/chromium/calendarPickerChromium.css:

(.days-area-container:focus):

  • Resources/pagepopups/chromium/pickerCommonChromium.css:

(:enabled:focus:-webkit-any(button, input[type='button'])):

1:39 AM Changeset in webkit [140954] by mkwst@chromium.org
  • 3 edits in trunk/LayoutTests

Change test expectation to ensure that seamless iframes do not inherit editability.
https://bugs.webkit.org/show_bug.cgi?id=108063

Reviewed by Eric Seidel.

Seamlessly rendered documents should not inherit editability from their
parent IFrame. Currently, the test expectations don't match this
behavior. This patch trivially adjusts the expectation to ensure that
editability is _not_ inherited.

  • fast/frames/seamless/seamless-inherited-document-style-expected.txt:
  • fast/frames/seamless/seamless-inherited-document-style.html:
1:21 AM Changeset in webkit [140953] by yurys@chromium.org
  • 8 edits in trunk

Web Inspector: remove unused isElement and similar methods from HeapProfiler
https://bugs.webkit.org/show_bug.cgi?id=107940

Reviewed by Vsevolod Vlasov.

Source/WebCore:

  • Removed some unused methods.
  • Moved JS specific edge filters to JSHeapSnapshot.
  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshot.prototype.createEdgesProvider):
(WebInspector.HeapSnapshot.prototype.createEdgesProviderForTest):
(WebInspector.HeapSnapshot.prototype.retainingEdgesFilter):
(WebInspector.HeapSnapshot.prototype.containmentEdgesFilter):
(WebInspector.HeapSnapshot.prototype.createRetainingEdgesProvider):
(WebInspector.HeapSnapshot.prototype.classNodesFilter):
(WebInspector.HeapSnapshot.prototype.createNodesProviderForClass):

  • inspector/front-end/HeapSnapshotGridNodes.js:

(WebInspector.HeapSnapshotGenericObjectNode):

  • inspector/front-end/HeapSnapshotProxy.js:

(WebInspector.HeapSnapshotProxy.prototype.createEdgesProvider):
(WebInspector.HeapSnapshotProxy.prototype.createRetainingEdgesProvider):

  • inspector/front-end/JSHeapSnapshot.js:

(WebInspector.JSHeapSnapshot.prototype.classNodesFilter):
(WebInspector.JSHeapSnapshot.prototype._markDetachedDOMTreeNodes):

  • inspector/front-end/NativeHeapSnapshot.js:

LayoutTests:

  • inspector/profiler/heap-snapshot.html:
1:02 AM Changeset in webkit [140952] by Christophe Dumez
  • 3 edits
    3 adds in trunk/Source/WebKit2

[EFL][WK2] Rely more on C API in ewk_favicon_database
https://bugs.webkit.org/show_bug.cgi?id=108035

Reviewed by Benjamin Poulain.

Rely less on internal C++ API in ewk_favicon_database and use C API
instead of avoid breaking API layering.

  • PlatformEfl.cmake:
  • UIProcess/API/C/cairo/WKIconDatabaseCairo.cpp: Added.

(WKIconDatabaseTryGetCairoSurfaceForURL): Add C API for getting the
favicon for a given page URL as a cairo_surface_t*.

  • UIProcess/API/C/cairo/WKIconDatabaseCairo.h: Added.
  • UIProcess/API/efl/ewk_favicon_database.cpp:

(EwkFaviconDatabase::didChangeIconForPageURL):
(EwkFaviconDatabase::getIconSurfaceSynchronously):
(EwkFaviconDatabase::iconDataReadyForPageURL):

12:53 AM Changeset in webkit [140951] by commit-queue@webkit.org
  • 5 edits
    1 add in trunk/Source/WebKit/chromium

Add an API for retrieving native memory information without going through the remote inspecting protocol
https://bugs.webkit.org/show_bug.cgi?id=107651

Patch by Marja Hölttä <marja@chromium.org> on 2013-01-28
Reviewed by Adam Barth.

  • WebKit.gyp:
  • public/WebDevToolsAgent.h:

(WebKit):
(WebDevToolsAgent):

  • public/WebMemoryUsageInfo.h: Added.

(WebKit):
(WebKit::WebMemoryUsageInfo::WebMemoryUsageInfo):
(WebMemoryUsageInfo):

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::processMemoryDistribution):
(WebKit):

  • src/WebDevToolsAgentImpl.h:

(WebKit):
(WebDevToolsAgentImpl):

12:24 AM Changeset in webkit [140950] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Unreviewed, rolling out r140554.
http://trac.webkit.org/changeset/140554
https://bugs.webkit.org/show_bug.cgi?id=108057

Caused tables/table-section-overflow-clip-crash.html and
bug2479-5.html to crash. (Requested by keishi on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-28

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::minPreferredLogicalWidth):
(WebCore::RenderBox::maxPreferredLogicalWidth):

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::computePreferredLogicalWidths):

  • rendering/mathml/RenderMathMLRoot.cpp:

(WebCore::RenderMathMLRoot::computePreferredLogicalWidths):

  • rendering/mathml/RenderMathMLRow.cpp:

(WebCore::RenderMathMLRow::computePreferredLogicalWidths):

12:05 AM Changeset in webkit [140949] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: each node in a detached DOM tree is shown in its own "detached DOM tree" entry in heap profiler
https://bugs.webkit.org/show_bug.cgi?id=107819

Reviewed by Adam Barth.

Provide single RetainedDOMInfo for each group of DOM Node wrappers reported to GC.
Otherwise we have unequal RetainedDOMInfo groups for each wrapped node.

  • bindings/v8/V8GCController.cpp:

(WebCore::ImplicitConnection::ImplicitConnection):
(WebCore::ImplicitConnection::retainedObjectInfo):
(ImplicitConnection):
(WebCore::WrapperGrouper::addObjectToGroup):
(WrapperGrouper):
(WebCore::WrapperGrouper::addNodeToGroup):
(WebCore::WrapperGrouper::apply):
(WebCore::V8GCController::opaqueRootForGC):

  • bindings/v8/V8GCController.h:

(V8GCController):

Jan 27, 2013:

11:24 PM Changeset in webkit [140948] by mihnea@adobe.com
  • 8 edits in trunk/Source/WebCore

[CSSRegions] RenderFlowThread should keep a count of auto height regions
https://bugs.webkit.org/show_bug.cgi?id=105185

Reviewed by Julien Chaffraix.

Keep the count of auto height regions on the flow thread instead of flow thread controller.
This way, we can streamline the operations associated with the two-pass layout only to those
flow threads that have auto height regions associated.
The flow thread controller will keep a count of flow thread with auto height regions instead.
This is a performance refactoring without an expected change in behavior, therefore no new tests were added.

  • rendering/FlowThreadController.cpp: Keep a count of flow threads with auto logical height regions.

(WebCore::FlowThreadController::FlowThreadController):
(WebCore::FlowThreadController::layoutRenderNamedFlowThreads): Check the count of auto height regions for all the flow threads.
(WebCore::FlowThreadController::isAutoLogicalHeightRegionsCountConsistent):
Make sure that we call these methods only when we have auto logical height regions.
(WebCore::FlowThreadController::resetRegionsOverrideLogicalContentHeight):
(WebCore::FlowThreadController::markAutoLogicalHeightRegionsForLayout):

  • rendering/FlowThreadController.h:

(WebCore::FlowThreadController::hasFlowThreadsWithAutoLogicalHeightRegions):
(WebCore::FlowThreadController::incrementFlowThreadsWithAutoLogicalHeightRegions):
(WebCore::FlowThreadController::decrementFlowThreadsWithAutoLogicalHeightRegions):

  • rendering/RenderFlowThread.cpp: Keep a count of auto logical height regions.

(WebCore::RenderFlowThread::RenderFlowThread):
(WebCore::RenderFlowThread::isAutoLogicalHeightRegionsCountConsistent):
(WebCore::RenderFlowThread::resetRegionsOverrideLogicalContentHeight): Iterate the region chain only if the region chain has auto height regions.
(WebCore::RenderFlowThread::initializeRegionsOverrideLogicalContentHeight): Ditto.
(WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout): Ditto.
(WebCore::RenderFlowThread::incrementAutoLogicalHeightRegions):
(WebCore::RenderFlowThread::decrementAutoLogicalHeightRegions):

  • rendering/RenderFlowThread.h:
  • rendering/RenderRegion.cpp: Add increment/decrementAutoLogicalHeightCount to increase/decrease

the counter inside the flow thread and use them throughout the code as needed.
(WebCore::RenderRegion::incrementAutoLogicalHeightCount):
(WebCore::RenderRegion::decrementAutoLogicalHeightCount):
(WebCore::RenderRegion::updateRegionHasAutoLogicalHeightFlag):
(WebCore::RenderRegion::attachRegion):
(WebCore::RenderRegion::detachRegion):

  • rendering/RenderRegion.h:
  • rendering/RenderView.cpp:

(WebCore::RenderView::checkTwoPassLayoutForAutoHeightRegions): Use the count of flow threads with auto height regions
instead of the count of auto height regions when deciding whether we should attempt the 2 pass layout for auto height regions.

10:46 PM Changeset in webkit [140947] by akling@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

JSC: FunctionParameters are memory hungry.
<http://webkit.org/b/108033>
<rdar://problem/13094803>

Reviewed by Sam Weinig.

Instead of inheriting from Vector<Identifier>, make FunctionParameters a simple fixed-size array
with a custom-allocating create() function. Removes one step of indirection and cuts memory usage
roughly in half.

2.73 MB progression on Membuster3.

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedFunctionExecutable::paramString):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • parser/Nodes.cpp:

(JSC::FunctionParameters::create):
(JSC::FunctionParameters::FunctionParameters):
(JSC::FunctionParameters::~FunctionParameters):

  • parser/Nodes.h:

(FunctionParameters):
(JSC::FunctionParameters::size):
(JSC::FunctionParameters::at):
(JSC::FunctionParameters::identifiers):

10:38 PM Changeset in webkit [140946] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Marking two fast/forms tests as slow on debug mac.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
10:34 PM Changeset in webkit [140945] by akling@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

JSC: SourceProviderCache is memory hungry.
<http://webkit.org/b/108029>
<rdar://problem/13094806>

Reviewed by Sam Weinig.

Use fixed-size arrays for SourceProviderCacheItem's lists of captured variables.
Since the lists never change after the object is created, there's no need to keep them in Vectors
and we can instead create the whole cache item in a single allocation.

13.37 MB progression on Membuster3.

  • parser/Parser.cpp:

(JSC::::parseFunctionInfo):

  • parser/Parser.h:

(JSC::Scope::copyCapturedVariablesToVector):
(JSC::Scope::fillParametersForSourceProviderCache):
(JSC::Scope::restoreFromSourceProviderCache):

  • parser/SourceProviderCacheItem.h:

(SourceProviderCacheItemCreationParameters):
(SourceProviderCacheItem):
(JSC::SourceProviderCacheItem::approximateByteSize):
(JSC::SourceProviderCacheItem::usedVariables):
(JSC::SourceProviderCacheItem::writtenVariables):
(JSC::SourceProviderCacheItem::~SourceProviderCacheItem):
(JSC::SourceProviderCacheItem::create):
(JSC::SourceProviderCacheItem::SourceProviderCacheItem):

10:15 PM Changeset in webkit [140944] by shinyak@chromium.org
  • 3 edits
    2 adds in trunk

[Shadow DOM] Selecting a node to another node in ShadowDOM fires 'click' event unexpectedly
https://bugs.webkit.org/show_bug.cgi?id=107233

Reviewed by Dimitri Glazkov.

Source/WebCore:

When selecting from a node to another node in ShadowDOM, 'click' event is unexpectedly fired.

The root cause of the bug is using shadow ancestor nodes for checking the node mouse is pressed on
and the node mouse is released on is the same. This was introduced to fire a click event for a slider
in <input> or etc.

However, we don't need to check shadow ancestor if we're in Author ShadowDOM.

Test: fast/dom/shadow/selecting-anchor.html

  • page/EventHandler.cpp:

(WebCore::mouseIsReleasedOnPressedElement):
(WebCore):
(WebCore::EventHandler::handleMouseReleaseEvent):

LayoutTests:

  • fast/dom/shadow/select-in-shadowdom-expected.txt: Added.
  • fast/dom/shadow/select-in-shadowdom.html: Added.
9:24 PM Changeset in webkit [140943] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Marking storage/indexeddb tests as crashing.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
9:15 PM Changeset in webkit [140942] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

[ANDROID] Fix a typo
https://bugs.webkit.org/show_bug.cgi?id=108046

Patch by Laszlo Gombos <Laszlo Gombos> on 2013-01-27
Reviewed by Adam Barth.

HAVE_NMAP -> HAVE_MMAP.

  • wtf/Platform.h:
9:10 PM Changeset in webkit [140941] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Marking media/track tests as crashing.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
9:02 PM Changeset in webkit [140940] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix location of sandbox profiles in built products
https://bugs.webkit.org/show_bug.cgi?id=108026

Reviewed by Sam Weinig.

  • WebKit2.xcodeproj/project.pbxproj: Sandbox profiles go into WebKit2 framework resources.
8:22 PM Changeset in webkit [140939] by commit-queue@webkit.org
  • 8 edits in trunk

REGRESSION (r140912): Broke specifying non-trivial ARCHS value to make / build-webkit
https://bugs.webkit.org/show_bug.cgi?id=108028

Patch by David Farler <dfarler@apple.com> on 2013-01-27
Reviewed by Dan Bernstein.

.:

  • Makefile: Reverted.
  • Makefile.shared: Reverted.
  • Source/Makefile: Reverted.

Tools:

  • DumpRenderTree/Makefile: Reverted.
  • Makefile: Reverted.
  • Scripts/webkitdirs.pm: Reverted.
8:06 PM Changeset in webkit [140938] by haraken@chromium.org
  • 7 edits in trunk/Source/WebCore

An [ActiveDOMObject] IDL attribute should be inherited
https://bugs.webkit.org/show_bug.cgi?id=107877

Reviewed by Adam Barth.

Now we support IDL attribute inheritance. We can remove
[ActiveDOMObject] from subclasses.

No tests. No change in behavior.

  • Modules/indexeddb/IDBOpenDBRequest.idl:
  • Modules/webaudio/OfflineAudioContext.idl:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateNamedConstructorCallback):
(GenerateImplementation):

  • workers/SharedWorker.idl:
  • workers/Worker.idl:
7:08 PM Changeset in webkit [140937] by commit-queue@webkit.org
  • 28 edits
    3 copies in trunk

Unreviewed, rolling out r140602.
http://trac.webkit.org/changeset/140602
https://bugs.webkit.org/show_bug.cgi?id=108045

Caused 8 indexed tests to crash. (Requested by keishi on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-27

Source/WebCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.list.am:
  • Modules/indexeddb/IDBCallbacks.h:

(WebCore::IDBCallbacks::onBlocked):

  • Modules/indexeddb/IDBDatabase.cpp:
  • Modules/indexeddb/IDBDatabase.h:

(WebCore):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::deleteDatabase):

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::openInternal):
(WebCore::IDBFactory::deleteDatabase):

  • Modules/indexeddb/IDBFactory.h:

(WebCore):
(IDBFactory):

  • Modules/indexeddb/IDBFactory.idl:
  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::create):
(WebCore::IDBOpenDBRequest::IDBOpenDBRequest):
(WebCore::IDBOpenDBRequest::dispatchEvent):

  • Modules/indexeddb/IDBOpenDBRequest.h:

(IDBOpenDBRequest):

  • Modules/indexeddb/IDBVersionChangeRequest.cpp: Copied from Source/WebKit/chromium/src/WebIDBCallbacksImpl.h.

(WebCore):
(WebCore::IDBVersionChangeRequest::create):
(WebCore::IDBVersionChangeRequest::IDBVersionChangeRequest):
(WebCore::IDBVersionChangeRequest::~IDBVersionChangeRequest):
(WebCore::IDBVersionChangeRequest::interfaceName):
(WebCore::IDBVersionChangeRequest::onBlocked):

  • Modules/indexeddb/IDBVersionChangeRequest.h: Copied from Source/WebCore/Modules/indexeddb/IDBFactory.idl.

(WebCore):
(IDBVersionChangeRequest):

  • Modules/indexeddb/IDBVersionChangeRequest.idl: Copied from Source/WebCore/Modules/indexeddb/IDBFactory.idl.
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/EventTarget.h:

(WebCore):

  • dom/EventTargetFactory.in:

Source/WebKit/chromium:

  • public/WebIDBCallbacks.h:
  • src/IDBCallbacksProxy.cpp:

(WebKit::IDBCallbacksProxy::onBlocked):
(WebKit):

  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

  • src/WebIDBCallbacksImpl.cpp:

(WebKit::WebIDBCallbacksImpl::onBlocked):
(WebKit):

  • src/WebIDBCallbacksImpl.h:

(WebIDBCallbacksImpl):

  • tests/IDBAbortOnCorruptTest.cpp:

(WebCore::MockIDBCallbacks::onBlocked):

  • tests/IDBDatabaseBackendTest.cpp:

LayoutTests:

  • storage/indexeddb/intversion-long-queue-expected.txt:
  • storage/indexeddb/intversion-upgrades-expected.txt:
6:47 PM Changeset in webkit [140936] by shinyak@chromium.org
  • 3 edits
    2 adds in trunk

Disabled input/textarea doesn't trigger selection change
https://bugs.webkit.org/show_bug.cgi?id=85244

Reviewed by Ryosuke Niwa.

Source/WebCore:

Only rootEditableNode is there in <input> or <textarea>, 'select' event is fired.
Since readonly or disabled input/textarea element does not have editable element,
'select' event was not fired.

We don't need the check.

Test: fast/forms/input-readonly-select.html

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::notifyRendererOfSelectionChange):

LayoutTests:

  • fast/forms/input-readonly-select-expected.txt: Added.
  • fast/forms/input-readonly-select.html: Added.
6:32 PM Changeset in webkit [140935] by keishi@webkit.org
  • 14 edits in trunk/Source

Unreviewed, rolling out r140850.
http://trac.webkit.org/changeset/140850
https://bugs.webkit.org/show_bug.cgi?id=107960

r14602 caused 8 indexed tests to crash.

Source/WebCore:

  • Modules/indexeddb/IDBCursorBackendImpl.cpp:

(WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):

  • Modules/indexeddb/IDBCursorBackendImpl.h:

(WebCore::IDBCursorBackendImpl::create):
(IDBCursorBackendImpl):

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::setIndexesReady):
(WebCore::OpenCursorOperation::perform):

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::createIndex):
(WebCore::IDBObjectStore::openCursor):

  • Modules/indexeddb/IDBObjectStore.h:

(WebCore::IDBObjectStore::openCursor):
(IDBObjectStore):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::IDBOpenDBRequest):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::create):
(WebCore::IDBRequest::IDBRequest):

  • Modules/indexeddb/IDBRequest.h:

(IDBRequest):
(WebCore::IDBRequest::taskType):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::scheduleTask):

  • Modules/indexeddb/IDBTransactionBackendImpl.h:

(WebCore::IDBTransactionBackendImpl::scheduleTask):
(IDBTransactionBackendImpl):

  • Modules/indexeddb/IDBTransactionBackendInterface.h:

(IDBTransactionBackendInterface):

Source/WebKit/chromium:

  • src/AssertMatchingEnums.cpp:
6:20 PM Changeset in webkit [140934] by commit-queue@webkit.org
  • 31 edits
    3 copies
    3 deletes in trunk

Unreviewed, rolling out r140741.
http://trac.webkit.org/changeset/140741
https://bugs.webkit.org/show_bug.cgi?id=108044

Caused 8 indexed tests to fail on Mac and Win. (Requested by
keishi on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-27

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::onVersionChange):

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::deleteDatabase):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::onBlocked):
(WebCore::IDBOpenDBRequest::onUpgradeNeeded):

  • Modules/indexeddb/IDBUpgradeNeededEvent.cpp: Copied from Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.cpp.

(WebCore):
(WebCore::IDBUpgradeNeededEvent::create):
(WebCore::IDBUpgradeNeededEvent::IDBUpgradeNeededEvent):
(WebCore::IDBUpgradeNeededEvent::~IDBUpgradeNeededEvent):
(WebCore::IDBUpgradeNeededEvent::oldVersion):
(WebCore::IDBUpgradeNeededEvent::newVersion):
(WebCore::IDBUpgradeNeededEvent::interfaceName):

  • Modules/indexeddb/IDBUpgradeNeededEvent.h: Copied from Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.h.

(WebCore):
(IDBUpgradeNeededEvent):

  • Modules/indexeddb/IDBUpgradeNeededEvent.idl: Copied from Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.idl.
  • Modules/indexeddb/IDBVersionChangeEvent.cpp:

(WebCore::IDBVersionChangeEvent::create):
(WebCore::IDBVersionChangeEvent::IDBVersionChangeEvent):
(WebCore::IDBVersionChangeEvent::version):
(WebCore):

  • Modules/indexeddb/IDBVersionChangeEvent.h:

(WebCore):
(IDBVersionChangeEvent):

  • Modules/indexeddb/IDBVersionChangeEvent.idl:
  • WebCore.gypi:
  • dom/EventNames.in:

LayoutTests:

  • storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-expected.txt:
  • storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt:
  • storage/indexeddb/deletedatabase-blocked-expected.txt:
  • storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt:
  • storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers-expected.txt:
  • storage/indexeddb/deletedatabase-delayed-by-versionchange-expected.txt:
  • storage/indexeddb/deletedatabase-not-blocked-expected.txt:
  • storage/indexeddb/events-expected.txt: Removed.
  • storage/indexeddb/events.html: Removed.
  • storage/indexeddb/intversion-gated-on-delete-expected.txt:
  • storage/indexeddb/intversion-long-queue-expected.txt:
  • storage/indexeddb/removed-expected.txt:
  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js:

(versionChangeCallback):

  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js:

(versionChangeCallback):

  • storage/indexeddb/resources/deletedatabase-blocked.js:

(test.request.onsuccess.openOnSuccess.h.onversionchange):

  • storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js:

(prepareDatabase.h.onversionchange):

  • storage/indexeddb/resources/deletedatabase-delayed-by-versionchange.js:

(h1OpenSuccess.h1.onversionchange):
(h1OpenSuccess.request.onsuccess.h2OpenSuccess.h2.onversionchange):

  • storage/indexeddb/resources/deletedatabase-not-blocked.js:

(test.request.onsuccess.openOnSuccess.h.onversionchange):

  • storage/indexeddb/resources/events.js: Removed.
  • storage/indexeddb/resources/intversion-gated-on-delete.js:

(firstSuccessCallback):
(connection1VersionChangeCallback):

  • storage/indexeddb/resources/intversion-long-queue.js:

(connection1VersionChangeCallback):
(deleteDatabaseBlockedCallback):
(deleteDatabaseSuccessCallback):
(connection2VersionChangeEvent):

  • storage/indexeddb/resources/removed.js:

(test):

6:08 PM Changeset in webkit [140933] by keishi@webkit.org
  • 9 edits
    2 moves in trunk/LayoutTests

[Chromium] Rebaselining overflow-size-change* tests.

Unreviewed. Gardening.

  • platform/chromium-mac-lion/fast/regions/overflow-size-change-in-variable-width-regions-expected.png:
  • platform/chromium-mac-lion/fast/regions/overflow-size-change-with-stacking-context-expected.png:
  • platform/chromium-mac-snowleopard/fast/regions/overflow-size-change-in-variable-width-regions-expected.png:
  • platform/chromium-mac-snowleopard/fast/regions/overflow-size-change-with-stacking-context-expected.png:
  • platform/chromium-mac/fast/regions/overflow-size-change-in-variable-width-regions-expected.png:
  • platform/chromium-mac/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: Renamed from LayoutTests/platform/chromium/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt.
  • platform/chromium-mac/fast/regions/overflow-size-change-with-stacking-context-expected.png:
  • platform/chromium-mac/fast/regions/overflow-size-change-with-stacking-context-expected.txt: Renamed from LayoutTests/platform/chromium/fast/regions/overflow-size-change-with-stacking-context-expected.txt.
  • platform/chromium-win/fast/regions/overflow-size-change-in-variable-width-regions-expected.png:
  • platform/chromium-win/fast/regions/overflow-size-change-with-stacking-context-expected.png:
6:00 PM Changeset in webkit [140932] by keishi@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Attempt to fix expectation entry.

Unreviewed. Gardening.

  • platform/chromium/TestExpectations:
5:55 PM Changeset in webkit [140931] by falken@chromium.org
  • 3 edits
    4 adds in trunk

Elements must be reattached when inserted/removed from top layer
https://bugs.webkit.org/show_bug.cgi?id=105489

Relanding r139402 as the apparent perf regression has been explained as not real (bug 106726).

Reviewed by Julien Chaffraix.

Source/WebCore:

Ensure a reattach occurs when an element is inserted/removed from top layer, so its renderer can be inserted correctly:
as a child of RenderView in top layer sibling order if it's in the top layer, and in the usual place otherwise.

We previously relied on style recalc to catch when an element is inserted/removed from the top layer, because it
only happens on dialog.show/close which toggle display: none. But that is incorrect because, for example, close()
followed immediately by show() results in no style change.

Tests: fast/dom/HTMLDialogElement/removed-element-is-removed-from-top-layer.html

fast/dom/HTMLDialogElement/top-layer-stacking-correct-order-remove-readd.html

  • dom/Element.cpp:

(WebCore::Element::removedFrom): Call Document::removeFromTopLayer to let the element be removed from the top layer vector.
removeFromTopLayer calls Element::setIsInTopLayer(false) itself if needed.
(WebCore::Element::setIsInTopLayer): Ensure a reattach occurs if the element is already attached.

LayoutTests:

  • fast/dom/HTMLDialogElement/removed-element-is-removed-from-top-layer-expected.html: Added.
  • fast/dom/HTMLDialogElement/removed-element-is-removed-from-top-layer.html: Added.

This tests that a top layer element removed from the document does not reappear in the top layer if readded.
This test actually would pass before this patch, but just by good fortune (see bug).

  • fast/dom/HTMLDialogElement/top-layer-stacking-correct-order-remove-readd-expected.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-stacking-correct-order-remove-readd.html: Added.

This tests that top layer ordering is correct after removing and readding an element to the top layer.

4:26 PM Changeset in webkit [140930] by commit-queue@webkit.org
  • 15 edits in trunk

Fixing atomicIncrement implementation for Windows by dropping support before XP SP2.
https://bugs.webkit.org/show_bug.cgi?id=106740

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2013-01-27
Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

  • config.h:

Source/WebCore:

  • WebCorePrefix.h:
  • config.h:

Source/WebKit/win:

  • WebKitPrefix.h:

Source/WebKit2:

  • config.h:

Source/WTF:

Adding int64_t type atomicIncrement and atomicDecrement implementations for Windows
into Atomics.h required by WebKit2 after r139514. Separating WinCE implementation
that does not support WebKit2 and has no support for 64 bit interlocked methods.

Increasing WINVER and _WIN32_WINNT to XP SP2, because the 64 bit type interlocked methods
are not supported on previous versions on 32 bit target.

  • config.h:
  • wtf/Atomics.h:

(WTF):
(WTF::atomicIncrement):
(WTF::atomicDecrement):

Tools:

  • DumpRenderTree/config.h:
  • WinLauncher/stdafx.h:
1:53 PM Changeset in webkit [140929] by weinig@apple.com
  • 4 edits
    8 copies
    6 adds in trunk/Source/WebKit2

Add support for launching WebKit2 plugins using XPC
https://bugs.webkit.org/show_bug.cgi?id=108040

Reviewed by Dan Bernstein.

  • Configurations/PluginService.32.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
  • Configurations/PluginService.64.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
  • Configurations/PluginService.Development.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.

Add configurations.

  • PluginProcess/EntryPoint/mac/XPCService: Added.
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.32: Added.
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.32/Info.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.32/PluginService.32.Main.mm: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm.
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.64: Added.
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.64/Info.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.64/PluginService.64.Main.mm: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm.
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.Development: Added.
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist: Added.
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/PluginService.Development.Main.mm: Added.

(main):

  • PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm.

(initializePluginService):
Add entry points.

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::serviceName):
Add plugin process service names and move into correct #ifdef.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::shouldUseXPC):
(WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
Opt into xpc using the same rules as the WebProcess.

  • WebKit2.xcodeproj/project.pbxproj:

Add files.

1:04 PM Changeset in webkit [140928] by jochen@chromium.org
  • 4 edits
    2 adds in trunk

[chromium] add missing plumbing for Notification.requestPermission
https://bugs.webkit.org/show_bug.cgi?id=108012

Reviewed by Adam Barth.

Source/WebKit/chromium:

  • src/NotificationPresenterImpl.cpp:

(WebKit):
(WebKit::VoidCallbackClient::VoidCallbackClient):
(NotificationPermissionCallbackClient):
(WebKit::NotificationPermissionCallbackClient::NotificationPermissionCallbackClient):
(WebKit::NotificationPermissionCallbackClient::permissionRequestComplete):
(WebKit::NotificationPermissionCallbackClient::~NotificationPermissionCallbackClient):
(WebKit::NotificationPresenterImpl::requestPermission):

  • src/NotificationPresenterImpl.h:

(NotificationPresenterImpl):

LayoutTests:

  • fast/notifications/notifications-constructor-request-permission-expected.txt: Added.
  • fast/notifications/notifications-constructor-request-permission.html: Added.
6:12 AM EFLWebKit edited by dchris@gmail.com
(diff)
6:08 AM EFLWebKit edited by dchris@gmail.com
(diff)
5:53 AM EFLWebKit edited by dchris@gmail.com
(diff)
5:30 AM EFLWebKit edited by dchris@gmail.com
Add g++ to dependencies (diff)
2:58 AM Changeset in webkit [140927] by jochen@chromium.org
  • 3 edits
    4 adds in trunk

Check notification permissions in the show() method
https://bugs.webkit.org/show_bug.cgi?id=108009

Reviewed by Adam Barth.

Source/WebCore:

Tests: fast/notifications/notifications-constructor-with-permission.html

fast/notifications/notifications-constructor-without-permission.html

  • Modules/notifications/Notification.cpp:

(WebCore::Notification::show):
(WebCore::Notification::taskTimerFired):

LayoutTests:

  • fast/notifications/notifications-constructor-with-permission-expected.txt: Added.
  • fast/notifications/notifications-constructor-with-permission.html: Added.
  • fast/notifications/notifications-constructor-without-permission-expected.txt: Added.
  • fast/notifications/notifications-constructor-without-permission.html: Added.
Note: See TracTimeline for information about the timeline view.