Timeline



Dec 17, 2012:

11:58 PM Changeset in webkit [137992] by jochen@chromium.org
  • 5 edits in trunk/Tools

[chromium] Fix methods in TestRunner that directly modify the settings instead of going through WebPreferences
https://bugs.webkit.org/show_bug.cgi?id=105154

Reviewed by Tony Chang.

If the settings are modified directly, the embedder can't keep track of
them and might accidentially override the changed settings.

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

(WebPreferences):

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

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::setAsynchronousSpellCheckingEnabled):
(WebTestRunner):
(WebTestRunner::TestRunner::setMinimumTimerInterval):
(WebTestRunner::TestRunner::setTouchDragDropEnabled):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

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

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

11:34 PM Changeset in webkit [137991] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Editable text element can't be selected
https://bugs.webkit.org/show_bug.cgi?id=105240

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2012-12-17
Reviewed by Rob Buis.
Internally reviewed by Genevieve Mak and Mike Fenton.

Internal PR266755
When the target is Text, we should allow it to collect text nodes in
the shadow tree of text editable elements.

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::getNodesFromRect):

11:28 PM Changeset in webkit [137990] by shinyak@chromium.org
  • 2 edits in trunk/PerformanceTests

[Shadow] LargeDistributionWithLayout.html should be updated
https://bugs.webkit.org/show_bug.cgi?id=105242

Reviewed by Ryosuke Niwa.

Since this test was written when distribution took O(N2). However, now it's almost O(N), so this test finishes
in very short time. We should convert it unit to runs/s.

This test contains a some error to cause test failure, e.g. using obsolete API, so they also should be fixed.

  • ShadowDOM/LargeDistributionWithLayout.html:
11:20 PM Performance Tests edited by rniwa@webkit.org
Revised some (diff)
11:14 PM Changeset in webkit [137989] by caseq@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Web Inspector: paint inspector overlay on a transparency layer
https://bugs.webkit.org/show_bug.cgi?id=97659

Reviewed by Yury Semikhatsky.

Add a call to PlatformContextSkia::setDrawingToImageBuffer(true) to
fix wrong rendering of content on transparent background.

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::paintPageOverlay):

10:54 PM Changeset in webkit [137988] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Constant fold !{number} in the parser
https://bugs.webkit.org/show_bug.cgi?id=105232

Reviewed by Filip Pizlo.

Typically, we wait for hot execution and constant fold in the DFG.
However, !0 and !1 are common enough in minifiers that it can be good
to get them out of the way early, for faster/smaller parsing and startup.

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::createLogicalNot): !{literal} is super simple, especially
since there's no literal form of NaN or Inf.

10:37 PM Changeset in webkit [137987] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Exposing querySelector function on WebNode
https://bugs.webkit.org/show_bug.cgi?id=105193

Patch by Alex Hutter <ahutter@chromium.org> on 2012-12-17
Reviewed by Darin Fisher.

This change is necessitated by the new autofill flows in chromium.

  • public/WebNode.h:
  • src/WebNode.cpp:

(WebKit::WebNode::querySelector):
(WebKit):

10:10 PM Changeset in webkit [137986] by jchaffraix@webkit.org
  • 2 edits in trunk/Tools

Unreviewed unit test skipping.

Filed https://bugs.webkit.org/show_bug.cgi?id=105253 to re-enable them.

  • TestWebKitAPI/Tests/WTF/MathExtras.cpp:

(TestWebKitAPI):
(TestWebKitAPI::TEST):

9:53 PM Changeset in webkit [137985] by loislo@chromium.org
  • 6 edits
    5 adds in trunk/LayoutTests

Unreviewed rebaseline after r137593.

  • platform/chromium-linux-x86/editing/selection/move-by-character-6-expected.txt: Added.
  • platform/chromium-linux/editing/selection/move-by-character-6-expected.png:
  • platform/chromium-linux/editing/selection/move-by-character-6-expected.txt: Added.
  • platform/chromium-mac-lion/editing/selection/move-by-character-6-expected.png:
  • platform/chromium-mac-lion/editing/selection/move-by-character-6-expected.txt: Added.
  • platform/chromium-mac-snowleopard/editing/selection/move-by-character-6-expected.txt: Added.
  • platform/chromium-mac/editing/selection/move-by-character-6-expected.png:
  • platform/chromium-mac/editing/selection/move-by-character-6-expected.txt: Added.
  • platform/chromium-win/editing/selection/move-by-character-6-expected.png:
  • platform/chromium-win/editing/selection/move-by-character-6-expected.txt:
9:35 PM Changeset in webkit [137984] by macpherson@chromium.org
  • 2 edits in trunk/Source/WebCore

Add ASSERTions to ensure that CSSPropertys that are variables only ever refer to CSSValues that are variables.
https://bugs.webkit.org/show_bug.cgi?id=104876

Reviewed by Steve Block.

Add assertions to CSSProperty constructors to make that if it is initialized with CSSPropertyVariable that
the value type associated with it is also a variable. This is already asserted at read time, but ASSERTing
here will produce a more useful backtrace.

No new tests as functionality unchanged.

  • css/CSSProperty.h:

(WebCore::CSSProperty::CSSProperty):

9:30 PM Changeset in webkit [137983] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Make inspector scripts sourceURL absolute.
https://bugs.webkit.org/show_bug.cgi?id=105166

Reviewed by Yury Semikhatsky.

  • inspector/front-end/utilities.js:
9:23 PM Changeset in webkit [137982] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

REGRESSION(r137442): Crash because of an uninitialized member.
https://bugs.webkit.org/show_bug.cgi?id=105246

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

TextureMapperGL defines m_context although TextureMapper defines m_context.
r137442 removes the initialization code in TextureMapperGL, which is
what causes this regression. This patch removes the duplicated member
in TextureMapperGL.

No new tests. Covered by existing tests.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::TextureMapper):

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::TextureMapper::setGraphicsContext):
(WebCore::TextureMapper::graphicsContext):
(TextureMapper):

  • platform/graphics/texmap/TextureMapperGL.h:

(WebCore):

9:01 PM Changeset in webkit [137981] by pdr@google.com
  • 4 edits
    2 adds in trunk

Queue container size requests while images are loading.
https://bugs.webkit.org/show_bug.cgi?id=105097

Reviewed by Dean Jackson.

Source/WebCore:

We use CachedImage::setContainerSizeForRenderer(...) to notify images of requesting
container sizes. Unfortunately, if the image is not yet loaded we ignore this container
size information! This patch stores requesting container sizes made while the image is
not yet loaded.

This patch fixes a bug where SVG images would display incorrectly on the first load but
correctly thereafter. Additionally, this bug caused the SVGImageCache to not be used in many
real world scenarios.

This patch is loosely based on a patch by blambov in WK98403.

Test: http/tests/misc/svg-image-delayed-size-negotiation.html

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::didRemoveClient):
(WebCore::CachedImage::allClientsRemoved):
(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::clear):
(WebCore::CachedImage::createImage):

  • loader/cache/CachedImage.h:

A new map has been added to track renderer -> size information before an image has
loaded. Note that this affects all images (not just images that require container size
information) but we cannot know the image type before the image has loaded.

LayoutTests:

I reused the embedded.svg and svg-slow.pl test files from a similar test for svg-as-object
size negotiation. svg-slow.pl simply delays the loading of the embedded.svg file.
Triggering this bug reliably using the local filesystem is too brittle.

  • http/tests/misc/svg-image-delayed-size-negotiation-expected.html: Added.
  • http/tests/misc/svg-image-delayed-size-negotiation.html: Added.
8:35 PM Changeset in webkit [137980] by fpizlo@apple.com
  • 5 edits
    3 adds in trunk

DFG is too aggressive eliding overflow checks for additions involving large constants
https://bugs.webkit.org/show_bug.cgi?id=105239

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

If we elide overflow checks on an addition (or subtraction) involving a larger-than-232 immediate,
then make sure that the non-constant child of the addition knows that he's got to do an overflow
check, by flowing the UsedAsNumber property at him.

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::addSpeculationMode):
(Graph):
(JSC::DFG::Graph::addShouldSpeculateInteger):
(JSC::DFG::Graph::addImmediateShouldSpeculateInteger):

  • dfg/DFGPredictionPropagationPhase.cpp:

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

LayoutTests:

  • fast/js/dfg-int-overflow-large-constants-in-a-line-expected.txt: Added.
  • fast/js/dfg-int-overflow-large-constants-in-a-line.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-int-overflow-large-constants-in-a-line.js: Added.

(foo):

8:33 PM Changeset in webkit [137979] by shinyak@chromium.org
  • 6 edits in trunk

Web Inspector: need to visually distinguish UA shadow roots
https://bugs.webkit.org/show_bug.cgi?id=104877

Reviewed by Yury Semikhatsky.

Source/WebCore:

Now we have an option to show ShadowRoot in the Inspector. Since the Inspector has displayed UserAgent ShadowRoot and
Author ShadowRoot as the same #shadow-root, a user could not distinguish them.

We would like to show UserAgent ShadowRoot as #webkit-shadow-root.

Test: inspector/shadow-root.html

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode): Make nodeName of UserAgent ShadowRoot #webkit-shadow-root.
Since the correct nodeName of ShadowRoot is #document-fragment, we have to specify the nodeName of Author ShadowRoot
as #shadow-root here.

LayoutTests:

  • inspector/elements/shadow-dom-modify-chardata-expected.txt:
  • inspector/elements/shadow-root-expected.txt:
  • inspector/elements/shadow-root.html: Adds <input> test.
8:28 PM Changeset in webkit [137978] by tasak@google.com
  • 3 edits in trunk/LayoutTests

fast/dom/shadow/host-wrapper-reclaimed.html is failing on EFL bots
https://bugs.webkit.org/show_bug.cgi?id=103109

Reviewed by Kentaro Hara.

host-wrapper-reclaimed uses gc(), but the function gc is not defined
in all platforms, e.g. "ReferenceError: Can't find variable: gc".
So we should include js-test-pre.js, which defines gc.

  • fast/dom/shadow/host-wrapper-reclaimed-expected.txt:
  • fast/dom/shadow/host-wrapper-reclaimed.html:
8:19 PM Changeset in webkit [137977] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Prevent selection handles from being rendered after selection was canceled
https://bugs.webkit.org/show_bug.cgi?id=105203

Patch by Yongxin Dai <yodai@rim.com> on 2012-12-17
Reviewed by Rob Buis.

PR255438

Here is the explanation why handles occur without selection overlay.

  1. Still touch at current selection (Selection A) initiated by touch-hold
  2. Selection expanding (Selection B) is ongoing
  3. Finger moves. In UI thread:

1) SelectionHander::cancelSelection() gets called.

  1. Selection A is canceled immediately (clear selecting state and hide handles)
  2. Post a request to webkit thread to cancel Selection A.
  1. In webkit thread:

1) Selection B becomes active selection

  1. Show selection overlay for Selection B
  2. Dispatch Selection B to UI thread to show handles

2) Handle the request of canceling Selection A. The selection A was gone. Instead the active Selection B is canceled.
The visual change is Selection overlay for Selection B becomes invisible..

  1. In UI thread:

Selection B is rendered. The start handle and the end handle occur without selection overlay.

The fix is to notify client with a empty selection whenever the selection is canceled in webkit thread.

Reviewed Internally by Mike Fenton.

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::cancelSelection):

7:51 PM Changeset in webkit [137976] by msaboff@apple.com
  • 12 edits
    1 move
    1 delete in trunk/Source/JavaScriptCore

DFG: Refactor DFGCorrectableJumpPoint to reduce size of OSRExit data
https://bugs.webkit.org/show_bug.cgi?id=105237

Reviewed by Filip Pizlo.

Replaced DFGCorrectableJumpPoint with OSRExitCompilationInfo which is used and kept alive only while we are
compiling in the DFG. Moved the patchable branch offset directly into OSRExit.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • assembler/AbstractMacroAssembler.h:
  • dfg/DFGCorrectableJumpPoint.cpp: Removed.
  • dfg/DFGCorrectableJumpPoint.h: Removed.
  • dfg/DFGJITCompiler.cpp:

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

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::appendExitJump):
(JITCompiler):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::OSRExit::setPatchableCodeOffset):
(JSC::DFG::OSRExit::getPatchableCodeOffsetAsJump):
(JSC::DFG::OSRExit::codeLocationForRepatch):
(JSC::DFG::OSRExit::correctJump):

  • dfg/DFGOSRExit.h:

(OSRExit):

  • dfg/DFGOSRExitCompilationInfo.h: Added.

(OSRExitCompilationInfo):
(JSC::DFG::OSRExitCompilationInfo::OSRExitCompilationInfo):
(JSC::DFG::OSRExitCompilationInfo::failureJump):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGSpeculativeJIT.cpp:

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

7:51 PM Changeset in webkit [137975] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1312

Merge 137464
BUG=165602
Review URL: https://codereview.chromium.org/11616012

7:47 PM Changeset in webkit [137974] by cevans@google.com
  • 2 edits in branches/chromium/1312/Source/WebCore/dom

Merge 137739
BUG=165864
Review URL: https://codereview.chromium.org/11593024

7:44 PM Changeset in webkit [137973] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the Mac build.

  • NetworkProcess/mac/NetworkProcessMac.mm:
7:44 PM Changeset in webkit [137972] by cevans@google.com
  • 2 edits in branches/chromium/1312/LayoutTests/fast/dom

Merge 137736
BUG=165864
Review URL: https://codereview.chromium.org/11612012

7:41 PM Changeset in webkit [137971] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1312

Merge 137702
BUG=165864
Review URL: https://codereview.chromium.org/11573057

7:30 PM Changeset in webkit [137970] by danakj@chromium.org
  • 2 edits in trunk/Source/Platform

[chromium] Add the GL_CHROMIUM_lose_context to WebGraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=105238

Reviewed by James Robinson.

  • chromium/public/WebGraphicsContext3D.h:

(WebGraphicsContext3D):
(WebKit::WebGraphicsContext3D::loseContext):

6:39 PM Changeset in webkit [137969] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL] Add ecore_imf_evas to FindEcore.cmake
https://bugs.webkit.org/show_bug.cgi?id=105159

Patch by Halton Huo <halton.huo@intel.com> on 2012-12-17
Reviewed by Laszlo Gombos.

.:

ecore_imf_evas is a separate library, we should add for EFL port as well.

  • Source/cmake/FindEcore.cmake: Add finding FIND_EFL_LIBRARY for ecore_imf_evas

Source/WebKit2:

  • PlatformEfl.cmake: Add ECORE_IMF_EVAS_LIBRARIES to WebProcess_LIBRARIES
6:38 PM Changeset in webkit [137968] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Coordinated Graphics: Refactor TiledBackingStore code in CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=103959

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-17
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop() is used when class
methods cannot be called asynchronously by client. Updates of tiles are
committed as soon as all the events in event queue have been processed.
After this patch Frame sets m_commitTileUpdatesOnIdleEventLoop to true.

In addition, remove TiledBackingStoreClient::tiledBackingStoreUpdatesAllowed()
which was introduced for Coordinated Graphics.

Refactoring covered by existing tests.

  • page/Frame.cpp:

(WebCore::Frame::setTiledBackingStoreEnabled):

  • platform/graphics/TiledBackingStore.cpp:

(WebCore::TiledBackingStore::TiledBackingStore):
(WebCore::TiledBackingStore::setTrajectoryVector):

Separate setting a trajectory vector from coverWithTilesIfNeeded().

(WebCore::TiledBackingStore::coverWithTilesIfNeeded):
(WebCore::TiledBackingStore::updateTileBuffers):
(WebCore::TiledBackingStore::createTiles):
(WebCore::TiledBackingStore::isTileBufferUpdatesSuspended):
(WebCore::TiledBackingStore::startTileBufferUpdateTimer):
(WebCore::TiledBackingStore::tileBufferUpdateTimerFired):
(WebCore::TiledBackingStore::startBackingStoreUpdateTimer):
(WebCore::TiledBackingStore::backingStoreUpdateTimerFired):

  • platform/graphics/TiledBackingStore.h:

(TiledBackingStore):
(WebCore::TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop):

  • platform/graphics/TiledBackingStoreClient.h:

(WebCore::TiledBackingStoreClient::tiledBackingStoreHasPendingTileCreation):

If TiledBackingStore does not create all tiles, TiledBackingStore
notifies a client of needing to create tiles more, when
m_commitTileUpdatesOnIdleEventLoop is false.

Source/WebKit2:

Currently, CoordinatedGraphicsLayer has complex code related to TiledBackingStore.
It has two problem.

  1. CoordinatedGraphicsLayer hacks TiledBackingStore to prevent

TiledBackingStore from asynchronously sending UpdateTile message to UI
Process.

  1. CreateTile and RemoveTile message can be sent to UI Process at any time.

This patch makes CoordinatedGraphicsLayer use TiledBackingStore more explicitly.
It means only during flushing layer states, CoordinatedGraphicsLayer
calls methods of TiledBackingStore, which indirectly call createTile(),
updateTile() and removeTile().

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::CoordinatedGraphicsLayer::setContentsScale):
(WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
(WebCore::CoordinatedGraphicsLayer::tiledBackingStoreHasPendingTileCreation):
(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
(WebCore::CoordinatedGraphicsLayer::createTile):
(WebCore::CoordinatedGraphicsLayer::updateTile):
(WebCore::CoordinatedGraphicsLayer::removeTile):
(WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
(WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
(WebCore::CoordinatedGraphicsLayer::setNeedsVisibleRectAdjustment):
(WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
(WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
6:22 PM Changeset in webkit [137967] by beidson@apple.com
  • 8 edits in trunk/Source/WebKit2

Can't visit sites with untrusted certs with the NetworkProcess.
<rdar://problem/12885641> and https://bugs.webkit.org/show_bug.cgi?id=105235

Reviewed by Sam Weinig.

For Mac the missing functionality is being able to tell the network layer in the
NetworkProcess to temporarily accept a certificate chain for the given host.

This patch adds some SPI supporting the way this works on Mac.

Add a message and Mac implementation for "allowSpecificHTTPSCertificateForHost":

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:
  • NetworkProcess/mac/NetworkProcessMac.mm:

(WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):

Add SPI for the embedding app"

  • UIProcess/API/C/WKContext.cpp:

(WKContextAllowSpecificHTTPSCertificateForHost):

  • UIProcess/API/C/WKContextPrivate.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::allowSpecificHTTPSCertificateForHost):

  • UIProcess/WebContext.h:
5:56 PM Changeset in webkit [137966] by dino@apple.com
  • 8 edits
    2 adds in trunk

Track menu should be sorted
https://bugs.webkit.org/show_bug.cgi?id=105229

Reviewed by Eric Carlson.

Source/WebCore:

Make sure that the <li> elements in the track menu are correctly
sorted as they are built. This uses insertion sort, but it shouldn't
be horrible given that we don't expect a huge number of tracks.

Test: media/video-controls-captions-trackmenu-sorted.html

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay):
(WebCore::insertTextTrackMenuItemIntoSortedContainer): New function that calls insertBefore with
the correct parameters to ensure the <ul> is correctly sorted.
(WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu):

  • html/shadow/MediaControlElements.h:

(MediaControlClosedCaptionsTrackListElement): Rename menuItems to m_menuItems for consistency.

LayoutTests:

New test to make sure we sort the menu of available tracks.

  • media/video-controls-captions-trackmenu-sorted-expected.txt: Added.
  • media/video-controls-captions-trackmenu-sorted.html: Added.
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
5:48 PM Changeset in webkit [137965] by dino@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Add Silvia Pfeiffer to contributor list.

  • Scripts/webkitpy/common/config/committers.py:
5:43 PM Changeset in webkit [137964] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Regression causing DOM objects to have unstable NPObject* references with v8 bindings
https://bugs.webkit.org/show_bug.cgi?id=104921

Source/WebCore:

Patch by Matthew Dempsky <mdempsky@google.com> on 2012-12-17
Reviewed by Kentaro Hara.

Fix regression introduced by changeset 135804 resulting in
unstable NPObject* references for v8 objects. In the iter !=
v8NPObjectMap->end() code path, objectVector was left unassigned
if the for loop terminated without returning.

Also, V8Object::GetIdentityHash() is documented as not being guaranteed
as unique. As such, don't ASSERT() that two objects with the same hash
must therefor be the same object.

Tests: plugins/npruntime/embed-property-iframe-equality.html

  • bindings/v8/NPV8Object.cpp:

(WebCore::npCreateV8ScriptObject): Fix.

LayoutTests:

Patch by Mathew Dempsky <mdempsky@google.com> on 2012-12-17
Reviewed by Kentaro Hara.

Add variant of embed-property-equality test to verify that the
test still passes when the object being tested for equality
has already been remembered by a plugin from a different
JavaScript context.

  • plugins/npruntime/embed-property-iframe-equality.html: Added.
  • plugins/npruntime/embed-property-iframe-equality-expected.txt: Added.
5:35 PM Changeset in webkit [137963] by fpizlo@apple.com
  • 5 edits
    3 adds in trunk

DFG is too aggressive with eliding overflow checks in loops
https://bugs.webkit.org/show_bug.cgi?id=105226

Reviewed by Mark Hahnenberg and Oliver Hunt.

Source/JavaScriptCore:

If we see a variable's live range cross basic block boundaries, conservatively assume that it may
be part of a data-flow back-edge, and as a result, we may have entirely integer operations that
could lead to the creation of an integer that is out of range of 252 (the significand of a double
float). This does not seem to regress any of the benchmarks we care about, and it fixes the bug.

In future we may want to actually look at whether or not there was a data-flow back-edge instead
of being super conservative about it. But we have no evidence, yet, that this would help us on
real code.

  • dfg/DFGNodeFlags.h:

(DFG):

  • dfg/DFGPredictionPropagationPhase.cpp:

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

LayoutTests:

  • fast/js/dfg-int-overflow-in-loop-expected.txt: Added.
  • fast/js/dfg-int-overflow-in-loop.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-int-overflow-in-loop.js: Added.

(foo):

5:21 PM Changeset in webkit [137962] by Chris Fleizach
  • 10 edits
    2 adds in trunk

Seamless iframe should not announce a new browsing context
https://bugs.webkit.org/show_bug.cgi?id=86317

Reviewed by Eric Seidel.

Source/WebCore:

Introduce a new role for seamless frames so that the platforms can decide what to do
with this kind of object. For the mac, it's exposed as a group.

Test: platform/mac/accessibility/seamless-iframe.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore):

  • accessibility/AccessibilityNodeObject.h:

(AccessibilityNodeObject):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::isWebArea):
(WebCore::AccessibilityObject::isSeamlessWebArea):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::parentObjectIfExists):
(WebCore::AccessibilityRenderObject::parentObject):
(WebCore::AccessibilityRenderObject::boundingBoxRect):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(createAccessibilityRoleMap):

Source/WebKit/chromium:

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

LayoutTests:

  • platform/mac/accessibility/seamless-iframe-expected.txt: Added.
  • platform/mac/accessibility/seamless-iframe.html: Added.
5:03 PM Changeset in webkit [137961] by mhahnenberg@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Butterfly::growArrayRight shouldn't be called on null Butterfly objects
https://bugs.webkit.org/show_bug.cgi?id=105221

Reviewed by Filip Pizlo.

Currently we depend upon the fact that Butterfly::growArrayRight works with null Butterfly
objects purely by coincidence. We should add a new static function that null checks the old
Butterfly object and creates a new one if it's null, or calls growArrayRight if it isn't for
use in the couple of places in JSObject that expect such behavior to work.

  • runtime/Butterfly.h:

(Butterfly):

  • runtime/ButterflyInlines.h:

(JSC::Butterfly::createOrGrowArrayRight):
(JSC):

  • runtime/JSObject.cpp:

(JSC::JSObject::createInitialIndexedStorage):
(JSC::JSObject::createArrayStorage):

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

Percentage width replaced element incorrectly rendered when intrinsic size changed
https://bugs.webkit.org/show_bug.cgi?id=102784

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-17
Reviewed by Tony Chang.

Source/WebCore:

To make relayout when the image dimension is changed,
and if the logical width is percent type and the containing block fits to it.
In this case, the containing block's width need to be updated first,
because the 'newWidth' was calculated from the 'old containing block width'.

Test: fast/css/percent-width-img-src-change.html

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageDimensionsChanged):

LayoutTests:

Add test to check when the source of images with percentage width is changed.

  • fast/css/percent-width-img-src-change.html: Added.
  • fast/css/percent-width-img-src-change-expected.txt: Added.
4:44 PM Changeset in webkit [137959] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

DidHitRelevantRepaintedObjectsAreaThreshold should not use the viewRect since
that varies
https://bugs.webkit.org/show_bug.cgi?id=105116
-and corresponding-
<rdar://problem/12889449>

Reviewed by Geoff Garen.

DidHitRelevantRepaintedObjectsAreaThreshold should not use the viewRect since that
varies depending on window size. This can lead to a huge amount of variability in
the heuristic which is not desired. Instead, we should use a hard-coded rect.

  • page/Page.cpp:

(WebCore::relevantViewRect):
(WebCore):
(WebCore::Page::addRelevantRepaintedObject):
(WebCore::Page::addRelevantUnpaintedObject):

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

[CoordinatedGraphics] Assertion hit in WebKit::LayerTreeRenderer::setLayerState()
https://bugs.webkit.org/show_bug.cgi?id=104518

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

CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly() must perform
only during flushing pending layer changes in CoordinatedLayerTreeHost.
RenderLayerCompositor can call GraphicsLayer::flushCompositingState() regardless
of CoordinatedLayerTreeHost and it breaks our assumption. It means that
CoordinatedGraphicsLayer can send messages although m_waitingForUIProcess in
CoordinatedLayerTreeHost is true.

Assertion hits because of the same reason. If RenderLayerCompositor calls
flushCompositingState() before the first CoordinatedLayerTreeHost::flushPendingLayerChanges(),
SetCompositingLayerState message can be prior to SetRootCompositingLayer message.

We fix this by ensuring that we perform the layer flush only in the code
path originating from CoordinatedLayerTreeHost.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::flushCompositingState):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayerClient):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
4:26 PM Changeset in webkit [137957] by Simon Fraser
  • 9 edits
    2 adds in trunk

Fix repositioning of fixed elements on zooming
https://bugs.webkit.org/show_bug.cgi?id=105223

Reviewed by Beth Dakin.

Source/WebCore:

When zoomed, scrolling would move the layers of fixed-position
elements oddly. This happened because on the scrolling thread we
passed a scale of 1, rather than the actual page scale to
scrollOffsetForFixedPosition().

Fix by plumbing the page scale through the scrolling state node
to the scrolling node.

Test: platform/mac/tiled-drawing/fixed/four-bars-zoomed.html

  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setFrameScaleFactor):
(WebCore::ScrollingStateScrollingNode::dumpProperties):

  • page/scrolling/ScrollingStateScrollingNode.h:

(WebCore::ScrollingStateScrollingNode::frameScaleFactor):
(ScrollingStateScrollingNode):

  • page/scrolling/ScrollingTreeScrollingNode.cpp:

(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
(WebCore::ScrollingTreeScrollingNode::update):

  • page/scrolling/ScrollingTreeScrollingNode.h:

(WebCore::ScrollingTreeScrollingNode::frameScaleFactor):
(ScrollingTreeScrollingNode):

  • page/scrolling/mac/ScrollingCoordinatorMac.h:

(ScrollParameters):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorMac::setScrollParametersForNode):

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):

LayoutTests:

Testcase that zoomed with fixed-position elements.

  • platform/mac/tiled-drawing/fixed/four-bars-zoomed-expected.txt: Added.
  • platform/mac/tiled-drawing/fixed/four-bars-zoomed.html: Added.
4:05 PM Changeset in webkit [137956] by dpranke@chromium.org
  • 2 edits in trunk/Tools

build.webkit.org - add more google windows bots
https://bugs.webkit.org/show_bug.cgi?id=105225

Reviewed by Eric Seidel.

Adds two more windows bots (google-windows-3, a builder, and
google-windows-4, a tester) for the Chromium configs.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
4:01 PM Changeset in webkit [137955] by commit-queue@webkit.org
  • 18 edits
    2 adds in trunk

Implement matching cue by the class name with ::cue pseudo element
https://bugs.webkit.org/show_bug.cgi?id=104191

Patch by Dima Gorbik <dgorbik@apple.com> on 2012-12-17
Reviewed by Antti Koivisto.

Source/WebCore:

Implemented the ::cue() pseudo-element with an argument that may hold a simple selector list.
This enables matching cue objects by the class name.

Test: media/track/track-css-matching.html

  • css/CSSGrammar.y.in: support parsing the ::cue() with an argument.
  • css/CSSParser.cpp:

(WebCore::CSSParser::detectFunctionTypeToken): tokenize the 'cue'.
(WebCore::CSSParser::updateSpecifiersWithElementName): do not set the tag for the cue pseudo-element because
the ::cue may match elements with different tags.
(WebCore::CSSParser::updateSpecifiers): the behavior for the PseudoCue selector should be same as for
unknown pseudo elements - the pseudo-element should stay on top of the selector chain.

  • css/CSSSelector.cpp: added the type detection for the new selector.

(WebCore::CSSSelector::pseudoId):
(WebCore::nameToPseudoTypeMap):
(WebCore::CSSSelector::extractPseudoType):

  • css/CSSSelector.h:
  • css/RuleSet.cpp: add a new list to hold all the rulesets for the new pseudo element.

(WebCore::RuleSet::reportMemoryUsage):
(WebCore::RuleSet::addRule):
(WebCore::RuleSet::shrinkToFit):

  • css/RuleSet.h:

(RuleSet):
(WebCore::RuleSet::cuePseudoRules):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOneSelector):

  • css/SelectorChecker.h:

(WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRules):

  • dom/Element.cpp: an addition to the rare data to be able to find out if the node is a webvtt node.

(WebCore):
(WebCore::Element::isWebVTTNode):
(WebCore::Element::setIsWebVTTNode):
(WebCore::Element::cloneDataFromElement):

  • dom/Element.h:

(Element):

  • dom/ElementRareData.h:

(ElementRareData):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):
(NodeRareData):
(WebCore::NodeRareData::isWebVTTNode):
(WebCore::NodeRareData::setIsWebVTTNode):

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::markNodesAsWebVTTNodes): mark the cloned nodes as WebVTT nodes.
(WebCore):
(WebCore::TextTrackCue::getCueAsHTML):

  • html/track/TextTrackCue.h:

(TextTrackCue):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::constructTreeFromToken):

  • rendering/style/RenderStyleConstants.h:

LayoutTests:

Verify that ::cue pseudo-element accepts a simple-selector list that matches cue objects by the a class.

  • media/track/captions-webvtt/styling.vtt:
  • media/track/track-css-matching-expected.txt: Added.
  • media/track/track-css-matching.html: Added.
3:59 PM Changeset in webkit [137954] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebCore

IndexedDB: Don't use strings to represent serialized values
https://bugs.webkit.org/show_bug.cgi?id=104354

Patch by Michael Pruett <michael@68k.org> on 2012-12-17
Reviewed by Kentaro Hara.

Use Vector<uint8_t> rather than String to represent serialized values
in IndexedDB. This change is necessary to implement IndexedDB for JSC.

Tests: storage/indexeddb/*

  • Modules/indexeddb/IDBBackingStore.cpp:

(WebCore::IDBBackingStore::getRecord):
(WebCore::IDBBackingStore::putRecord):
(WebCore::ObjectStoreKeyCursorImpl::value):
(WebCore::ObjectStoreKeyCursorImpl::ObjectStoreKeyCursorImpl):
(WebCore::ObjectStoreCursorImpl::value):
(ObjectStoreCursorImpl):
(WebCore::ObjectStoreCursorImpl::loadCurrentRow):
(WebCore::IndexKeyCursorImpl::value):
(WebCore::IndexCursorImpl::value):
(WebCore::IndexCursorImpl::IndexCursorImpl):
(IndexCursorImpl):
(WebCore::IndexCursorImpl::loadCurrentRow):

  • Modules/indexeddb/IDBBackingStore.h:

(IDBBackingStore):
(Cursor):

  • Modules/indexeddb/IDBCursorBackendImpl.cpp:

(WebCore::IDBCursorBackendImpl::CursorPrefetchIterationOperation::perform):

  • Modules/indexeddb/IDBCursorBackendImpl.h:

(WebCore::IDBCursorBackendImpl::value):

  • Modules/indexeddb/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::IndexReferencedValueRetrievalOperation::perform):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::ObjectStoreRetrievalOperation::perform):
(WebCore::IDBObjectStoreBackendImpl::ObjectStoreStorageOperation::perform):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::SerializedScriptValue):
(WebCore):

  • bindings/js/SerializedScriptValue.h:
  • bindings/v8/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::createFromWireBytes):
(WebCore):
(WebCore::SerializedScriptValue::toWireBytes):

  • bindings/v8/SerializedScriptValue.h:

(SerializedScriptValue):

3:54 PM Changeset in webkit [137953] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Layout Test editing/selection/move-by-character-crash-test-textarea.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=104951

Reviewed by Eric Seidel.

The problem was that editing/selection/move-by-character-6.html was running editing commands
in a timer without making the test runner wait. Fixed the bug by calling waitUntilDone and
notifyDone at appropriate places in editing.js.

We don't need to rebaseline other tests since this is the only test that uses commandDelay.

  • editing/editing.js:

(setSelectionCommand):
(transposeCharactersCommand):
(moveSelectionLeftByCharacterCommand):
(moveSelectionRightByCharacterCommand):
(extendSelectionLeftByCharacterCommand):
(extendSelectionRightByCharacterCommand):
(moveSelectionForwardByCharacterCommand):
(extendSelectionForwardByCharacterCommand):
(moveSelectionForwardByWordCommand):
(extendSelectionForwardByWordCommand):
(moveSelectionForwardBySentenceCommand):
(extendSelectionForwardBySentenceCommand):
(moveSelectionForwardByLineCommand):
(extendSelectionForwardByLineCommand):
(moveSelectionForwardByLineBoundaryCommand):
(extendSelectionForwardByLineBoundaryCommand):
(moveSelectionBackwardByCharacterCommand):
(extendSelectionBackwardByCharacterCommand):
(moveSelectionBackwardByWordCommand):
(extendSelectionBackwardByWordCommand):
(moveSelectionBackwardBySentenceCommand):
(extendSelectionBackwardBySentenceCommand):
(moveSelectionBackwardByLineCommand):
(extendSelectionBackwardByLineCommand):
(extendSelectionBackwardByLineBoundaryCommand):
(moveSelectionBackwardByLineBoundaryCommand):
(boldCommand):
(underlineCommand):
(fontNameCommand):
(fontSizeCommand):
(fontSizeDeltaCommand):
(italicCommand):
(justifyCenterCommand):
(justifyLeftCommand):
(justifyRightCommand):
(insertHTMLCommand):
(insertImageCommand):
(insertLineBreakCommand):
(insertParagraphCommand):
(insertNewlineInQuotedContentCommand):
(typeCharacterCommand):
(selectAllCommand):
(strikethroughCommand):
(undoCommand):
(redoCommand):
(changeRootSize):
(cutCommand):
(copyCommand):
(pasteCommand):
(createLinkCommand):
(unlinkCommand):
(pasteAndMatchStyleCommand):
(deleteCommand):
(forwardDeleteCommand):
(backColorCommand):
(foreColorCommand):
(executeCommand):

  • platform/mac/editing/selection/move-by-character-6-expected.txt: Rebaselined.
3:28 PM Changeset in webkit [137952] by eric@webkit.org
  • 2 edits in trunk/Tools

Cleanup --profiler=perf code a little and allow up to 1000 report files (instead of 100)
https://bugs.webkit.org/show_bug.cgi?id=105217

Reviewed by Dirk Pranke.

Previously --profile would fail strangely if find_unused_filename returned None
(which would happen as soon as we had 100 report files).
Now we'll search through 1000 filenames before giving up (and assert if we failed to find one).
I also made some minor cleanups to the output of perf, and tried to make the
commands more self-documenting by using long-names for args.

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

(SingleFileOutputProfiler.init):
(Perf.attach_to_pid):
(Perf.profile_after_exit):

3:10 PM Changeset in webkit [137951] by fpizlo@apple.com
  • 4 edits
    3 adds in trunk

javascript integer overflow
https://bugs.webkit.org/show_bug.cgi?id=104967

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Fix PutScopedVar backward flow.

  • dfg/DFGPredictionPropagationPhase.cpp:

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

LayoutTests:

  • fast/js/dfg-put-scoped-var-backward-flow-expected.txt: Added.
  • fast/js/dfg-put-scoped-var-backward-flow.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-put-scoped-var-backward-flow.js: Added.

(sum):

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

Change SET_VAR, SET_BORDERVALUE_COLOR macro to require semicolon(;) at the end of the line
https://bugs.webkit.org/show_bug.cgi?id=104774

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2012-12-17
Reviewed by Eric Seidel.

Remove the last ; in SET_VAR, SET_BORDERVALUE_COLOR macro definition.
Add the omitted ; in RenderStyle.h | .cpp

No new tests, just style change.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::setColor):
(WebCore::RenderStyle::setVisitedLinkColor):
(WebCore::RenderStyle::setHorizontalBorderSpacing):
(WebCore::RenderStyle::setVerticalBorderSpacing):

  • rendering/style/RenderStyle.h:
2:43 PM Changeset in webkit [137949] by yoli@rim.com
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Deadlock caused by PluginViewPrivate::destroyBuffers()
https://bugs.webkit.org/show_bug.cgi?id=105215

Reviewed by Rob Buis.
Also internally reviewed by George Staikos.

PR# 266443
It should release mutexes before sending sync message.

  • plugins/blackberry/PluginViewPrivateBlackBerry.cpp:

(WebCore::PluginViewPrivate::destroyBuffers):

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

Chromium rebaseline fast/gradients/css3-linear-angle-gradients.html
https://bugs.webkit.org/show_bug.cgi?id=105211

Patch by Tab Atkins <jackalmage@gmail.com> on 2012-12-17
Reviewed by Dean Jackson.

  • platform/chromium-mac-lion/fast/gradients/css3-linear-angle-gradients-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/gradients/css3-linear-angle-gradients-expected.png: Removed.
  • platform/chromium-mac/fast/gradients/css3-linear-angle-gradients-expected.png:
  • platform/chromium-win/fast/gradients/css3-linear-angle-gradients-expected.png:
2:36 PM Changeset in webkit [137947] by commit-queue@webkit.org
  • 4 edits in trunk

Unreviewed, rolling out r137198.
http://trac.webkit.org/changeset/137198
https://bugs.webkit.org/show_bug.cgi?id=105212

This patch is causing API behavior compatibility problems
(Requested by zdobersek on #webkit).

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

Source/WebCore:

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::updateFromSoupMessage):

Tools:

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(willSendRequestCallback):

2:24 PM Changeset in webkit [137946] by dmazzoni@google.com
  • 14 edits
    2 adds in trunk

AX: textUnderElement should consider alt text, but skip links and controls
https://bugs.webkit.org/show_bug.cgi?id=101650

Reviewed by Chris Fleizach.

Source/WebCore:

Getting inner text from an element now ignores focusable descendants
and containers, but uses alternative text. The computation of
textUnderElement is now recursive and doesn't depend on text
iterators, which might not do the right thing for accessibility
anyways.

For GTK, the old behavior is retained so that support for
the object replacement character is still there. Filed a new
bug (105214) for GTK folks to look at this.

Test: accessibility/button-title-uses-inner-img-alt.html
Test: accessibility/focusable-div.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore):
(WebCore::shouldUseAccessiblityObjectInnerText):
(WebCore::AccessibilityNodeObject::textUnderElement):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::textUnderElement):

LayoutTests:

Adds new tests to show that getting inner text from an element
now ignores focusable descendants and containers, but uses alternative
text.

Updates and rebaselines several tests to reflect the new logic.
Skips these tests on GTK until support for the object replacement
character can be added.

  • accessibility/button-title-uses-inner-img-alt-expected.txt: Added.
  • accessibility/button-title-uses-inner-img-alt.html: Added.
  • accessibility/focusable-div-expected.txt: Extended with more test cases.
  • accessibility/focusable-div.html: Extended with more test cases.
  • platform/chromium/TestExpectations: Un-skip test that now passes.
  • platform/chromium/accessibility/image-link-expected.txt: Rebaseline
  • platform/mac/accessibility/image-link-expected.txt: Rebaseline
  • platform/mac/accessibility/internal-link-anchors2-expected.txt: Rebaseline
  • platform/mac/accessibility/static-text-role-uses-text-under-element-expected.txt: Rebaseline
  • platform/mac/accessibility/static-text-role-uses-text-under-element.html: Fix
  • platform/mac/accessibility/table-with-aria-role-expected.txt: Rebaseline
  • platform/gtk/TestExpectations: Skip these tests until this feature is implemented for GTK.
2:17 PM Changeset in webkit [137945] by leviw@chromium.org
  • 6 edits in trunk/LayoutTests

Convert sub-pixel iframe-copy-on-scroll tests to use Mock scrollbars
https://bugs.webkit.org/show_bug.cgi?id=105210

Reviewed by Emil A Eklund.

Converting the iframe tests in sub-pixel/ to use mock scrollbars. These tests needed to
be rebaselined following r137847 anyways. Best to make this change before that.

  • fast/sub-pixel/sub-pixel-iframe-copy-on-scroll.html:
  • fast/sub-pixel/transformed-iframe-copy-on-scroll.html:
  • platform/chromium-linux/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png:
  • platform/chromium-linux/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png:
  • platform/chromium/TestExpectations:
2:02 PM Changeset in webkit [137944] by esprehn@chromium.org
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers list.

  • Scripts/webkitpy/common/config/committers.py:
1:55 PM Changeset in webkit [137943] by dpranke@chromium.org
  • 3 edits in trunk/Tools

nrwt: shuffle code around for cleanup in run_webkit_tests.py
https://bugs.webkit.org/show_bug.cgi?id=105078

Reviewed by Ojan Vafai.

This patch reorders functions so that run_webkit_tests can be
understood in a top-down matter better, and to make things slightly
more sensible when I merge manager.py into it.

Also, this adds tests for the actual main() routine, which had several
bugs get through testing a week or two ago.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(main):
(parse_args):
(_set_up_derived_options):
(run):

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(RunTest):
(RunTest.test_no_http_tests):
(PortTest.disabled_test_mac_lion):
(MainTest):
(MainTest.test_exception_handling):
(MainTest.test_exception_handling.interrupting_run):
(MainTest.test_exception_handling.successful_run):
(MainTest.test_exception_handling.successful_run.FakeRunDetails):
(MainTest.test_exception_handling.exception_raising_run):

1:50 PM Changeset in webkit [137942] by dpranke@chromium.org
  • 3 edits
    3 adds in trunk/Tools

webkitpy: move --lint-test-files code into its own module
https://bugs.webkit.org/show_bug.cgi?id=105077

Reviewed by Eric Seidel.

It really didn't need to be in run_webkit_tests.py anymore.
This patch adds a new lint-test-expectations scripts to Tools/Scripts;
rwt --lint-test-files is still supported for backwards compatibility
for now.

  • Scripts/lint-test-expectations: Added.
  • Scripts/webkitpy/layout_tests/lint_test_expectations.py: Added.

(lint):
(main):

  • Scripts/webkitpy/layout_tests/lint_test_expectations_unittest.py: Added.

(FakePort):
(FakePort.init):
(FakePort.test_configuration):
(FakePort.expectations_dict):
(FakePort.skipped_layout_tests):
(FakePort.all_test_configurations):
(FakePort.configuration_specifier_macros):
(FakePort.get_option):
(FakeFactory):
(FakeFactory.init):
(FakeFactory.get):
(FakeFactory.all_port_names):
(LintTest):
(LintTest.test_all_configurations):
(LintTest.test_lint_test_files):
(LintTest.test_lint_test_fileserrors):
(MainTest):
(MainTest.test_success):
(MainTest.test_success.interrupting_lint):
(MainTest.test_success.successful_lint):
(MainTest.test_success.exception_raising_lint):

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(main):

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(StreamTestingMixin.assertNotEmpty):

1:48 PM Changeset in webkit [137941] by Lucas Forschler
  • 2 edits in tags/Safari-537.22/Source/WebKit2

Merged r137933. <rdar://problem/12895354>

1:48 PM Changeset in webkit [137940] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

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

Prevent CookieManager from blocking the WKT Thread.

PR 265603

Patch by Otto Derek Cheung <otcheung@rim.com> on 2012-12-17
Reviewed by Rob Buis.

Adding some guards to CookieManager so it will return immedately
if getCookie functions are called when the database isn't loaded yet.

setCookie functions will be redispatched until the database is ready.

  • platform/blackberry/CookieManager.cpp:

(WebCore::CookieManager::CookieManager):
(WebCore::CookieManager::setCookies):
(WebCore::CookieManager::getCookie):
(WebCore::CookieManager::generateHtmlFragmentForCookies):
(WebCore::CookieManager::getRawCookies):
(WebCore::CookieManager::removeAllCookies):
(WebCore::CookieManager::getBackingStoreCookies):
(WebCore::CookieManager::setPrivateMode):
(WebCore::CookieManager::removeCookieWithName):

  • platform/blackberry/CookieManager.h:
1:42 PM Changeset in webkit [137939] by leviw@chromium.org
  • 20 edits
    4 adds in trunk

Add support for tracking hit test rectangles to enable fast event rejection in the compositor
https://bugs.webkit.org/show_bug.cgi?id=103914

Reviewed by James Robinson.

Source/WebCore:

Adding support for tracking hit test target regions for the purpose of performing initial hit testing
in the compositor to avoid blocking scrolling on the main thread while waiting to hit test events that
aren't occuring in regions with handlers. This is initially being done to avoid having to go to the main
thread when scrolling by flicking on touch devices when the flick occurs outside a tracked touch event
region. This patch includes the implementation to turn this on in Chromium.

To accomplish this goal, Document will now keep a counted hash set of nodes with touch event handlers
instead of only an unsigned integer of the total count. ScrollingCoordinator then updates the compositor
when new touch event handlers are registered or removed, or after layout much like how
nonFastScrollableRegions are currently tracked.

This implementation will not properly update the hit test rects when the renderers are inside a sub-
tree that scrolls.

This change was initially rolled out due to stale Node pointers in Document's touchEventTargets. This
patch adds a callback to remove the Node from that structure to Node's destructor. This is covered
by the touch-target-removed-crash.html test case which is also added.

Test: platform/chromium/fast/events/touch/compositor-touch-hit-rects.html

platform/chromium/fast/events/touch/touch-target-removed-crash.html

  • dom/Document.cpp:

(WebCore::Document::Document): Added a HashCountedSet of touch target nodes. Note: DOMWindow targets
are stored as the Document they point to.
(WebCore::Document::didAddTouchEventHandler): Changed to keep track of the handler instead of a count, and
to update the ScrollingCoordinator with the change.
(WebCore::Document::didRemoveTouchEventHandler): Ditto.

  • dom/Document.h:

(WebCore::Document::hasTouchEventHandlers): It's no longer O(1) to get the count of touch handlers, so
expose whether there are any or not.
(WebCore::Document::touchEventTargets):

  • dom/Node.cpp:

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

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • html/HTMLInputElement.cpp:

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

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::addEventListener): Add the Document to the touch target set instead of DOMWindow.
(WebCore::DOMWindow::removeEventListener):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent):

  • page/Frame.cpp:

(WebCore::Frame::setDocument):

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::computeAbsoluteTouchEventTargetRects): Walk the renderers for event handler
nodes and generate the absolute hit testing rects.

  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollingCoordinator::setTouchEventTargetRectsChanged): Hook to pass along the hit test rects to
the scrolling tree/compositor.
(ScrollingCoordinator):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRectsChanged):
(WebCore::ScrollingCoordinatorChromium::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRects):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.h:

(ScrollingCoordinatorChromium):

  • testing/Internals.cpp:

(WebCore::Internals::touchEventHandlerCount): Changed to do the work to calculate the actual count since
it's no longer stored as an int in Document.
(WebCore::Internals::touchEventTargetClientRects):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit/chromium:

Enabling touch event target region tracking.

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

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

LayoutTests:

  • platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
  • platform/chromium/fast/events/touch/compositor-touch-hit-rects.html: Added.
  • platform/chromium/fast/events/touch/touch-target-removed-crash-expected.txt: Added.
  • platform/chromium/fast/events/touch/touch-target-removed-crash.html: Added.
1:40 PM Changeset in webkit [137938] by adamk@chromium.org
  • 2 edits in trunk/Tools

build-webkit: rename --template-tag to --template-element to match ENABLE #define name
https://bugs.webkit.org/show_bug.cgi?id=105072

Reviewed by Laszlo Gombos.

  • Scripts/webkitperl/FeatureList.pm:
1:38 PM Changeset in webkit [137937] by fpizlo@apple.com
  • 16 edits in trunk/Source/JavaScriptCore

Rationalize array profiling for out-of-bounds and hole cases
https://bugs.webkit.org/show_bug.cgi?id=105139

Reviewed by Geoffrey Garen.

This makes ArrayProfile track whether or not we had out-of-bounds, which allows
for more precise decision-making in the DFG.

Also cleaned up ExitKinds for out-of-bounds and hole cases to make it easier to
look at them in the profiler.

Slight speed-up (5-8%) on SunSpider/crypto-md5.

  • bytecode/ArrayProfile.cpp:

(JSC::ArrayProfile::computeUpdatedPrediction):
(JSC::ArrayProfile::briefDescription):

  • bytecode/ArrayProfile.h:

(JSC::ArrayProfile::ArrayProfile):
(JSC::ArrayProfile::addressOfOutOfBounds):
(JSC::ArrayProfile::expectedStructure):
(JSC::ArrayProfile::structureIsPolymorphic):
(JSC::ArrayProfile::outOfBounds):
(JSC::ArrayProfile::polymorphicStructure):

  • bytecode/CodeBlock.cpp:

(JSC::dumpChain):

  • bytecode/ExitKind.cpp:

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

  • bytecode/ExitKind.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileDoublePutByVal):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • jit/JIT.h:
  • jit/JITInlines.h:

(JSC::JIT::emitArrayProfileOutOfBoundsSpecialCase):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emitSlow_op_put_by_val):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emitSlow_op_put_by_val):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
1:37 PM Changeset in webkit [137936] by jchaffraix@webkit.org
  • 2 edits in trunk/Tools

Add some unit testing for WTF::clampTo* functions
https://bugs.webkit.org/show_bug.cgi?id=105060

Reviewed by Emil A Eklund.

The new tests are targeted at clamping to int / unsigned and float as those are
the one explicitely exposed through more dedicated functions (like clampToInteger,
clampToPositiveInteger and clampToFloat).

  • TestWebKitAPI/Tests/WTF/MathExtras.cpp:
1:34 PM Changeset in webkit [137935] by yoli@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Null pointer access in compositorDrawsRootLayer
https://bugs.webkit.org/show_bug.cgi?id=105204

Reviewed by Rob Buis.

PR# 267188.
Add a null check for m_mainFrame in the function.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::compositorDrawsRootLayer):

1:28 PM Changeset in webkit [137934] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Dragging a .jpg to Finder saves it as .jpeg
https://bugs.webkit.org/show_bug.cgi?id=105140
https://code.google.com/p/chromium/issues/detail?id=35811

Patch by Avi Drissman <avi@chromium.org> on 2012-12-17
Reviewed by Tony Chang.

If the filename's extension is already valid for the MIME type, we don't
need to rewrite it to the preferred extension.

No layout tests because it involves dragging items to the desktop.

  • platform/chromium/ClipboardChromium.cpp:

(WebCore::writeImageToDataObject):

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

<rdar://problem/12895354> NetworkProcess should not exit after downloading
https://bugs.webkit.org/show_bug.cgi?id=105209

Reviewed by Anders Carlsson.

  • NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::shouldTerminate): This process should never voluntarily terminate, because it keeps session auth and cookies.
12:53 PM WebKit Team edited by Elliott Sprehn
(diff)
12:37 PM Changeset in webkit [137932] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Use application size rather than screen size where appropriate.
https://bugs.webkit.org/show_bug.cgi?id=105201

Patch by Andrew Lo <anlo@rim.com> on 2012-12-17
Reviewed by Rob Buis.
Internally reviewed by Jeff Rogers.

Switch from screenSize to applicationSize where appropriate.
Internal PR266400

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::transformedViewportSize):
(BlackBerry::WebKit::WebPagePrivate::setDefaultLayoutSize):

  • WebKitSupport/SurfacePool.cpp:

(BlackBerry::WebKit::SurfacePool::initialize):

12:30 PM Changeset in webkit [137931] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Improve DOMSupport visibleSelectionForClosestActualWordStart for content editable.
https://bugs.webkit.org/show_bug.cgi?id=105198

Reviewed by Rob Buis.

PR 258038.

Improve closest word matching by giving preference to the left when
distances are equal.

Also enforce container matching to avoid selecting the paragraph
marker if a CE div is followed immediately by a CE paragraph.

Minor refactor - don't calculate the distance if the selection
isn't on a word.

Reviewed Internally by Gen Mak and Nima Ghanavatian.

  • WebKitSupport/DOMSupport.cpp:

(BlackBerry::WebKit::DOMSupport::visibleSelectionForClosestActualWordStart):

12:07 PM Changeset in webkit [137930] by commit-queue@webkit.org
  • 11 edits
    11 adds in trunk

[CSS Exclusions] shape-outside on floats for rectangle shapes height/width
https://bugs.webkit.org/show_bug.cgi?id=100398

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2012-12-17
Reviewed by Julien Chaffraix.

Source/WebCore:

Implement shape outside for floats changing only the height and width
as a simple starting point.

This implementation changes floats to use the bounding box of the
shape outside instead of the margin box for layout. The content box of
the float is unchanged. This patch does not support positioning the
shape outside box, so the x and y parameters are currently ignored in
the specified shape. This will be fixed in a patch for bug 100399.

Tests: fast/exclusions/shape-outside-floats/shape-outside-floats-margin-is-ignored.html

fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple.html
fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-percentage.html
fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle.html

  • CMakeLists.txt: Add ExclusionShapeOutsideInfo.{cpp,h}.
  • GNUmakefile.list.am: Add ExclusionShapeOutsideInfo.{cpp,h}.
  • Target.pri: Add ExclusionShapeOutsideInfo.{cpp,h}.
  • WebCore.gypi: Add ExclusionShapeOutsideInfo.{cpp,h}.
  • WebCore.vcproj/WebCore.vcproj: Add ExclusionShapeOutsideInfo.{cpp,h}.
  • WebCore.xcodeproj/project.pbxproj: Add ExclusionShapeOutsideInfo.{cpp,h}.
  • rendering/ExclusionShapeOutsideInfo.cpp: Added. Associates the

ExclusionShape object for shape outside with a RenderBox. Analagous to
ExclusionShapeInsideInfo.

(WebCore::exclusionShapeOutsideInfoMap):
(WebCore::ExclusionShapeOutsideInfo::ExclusionShapeOutsideInfo):
(WebCore::ExclusionShapeOutsideInfo::~ExclusionShapeOutsideInfo):
(WebCore::ExclusionShapeOutsideInfo::ensureInfoForRenderBox):
(WebCore::ExclusionShapeOutsideInfo::infoForRenderBox):
(WebCore::ExclusionShapeOutsideInfo::isInfoEnabledForRenderBox):
(WebCore::ExclusionShapeOutsideInfo::removeInfoForRenderBox):
(WebCore::ExclusionShapeOutsideInfo::computedShape):

  • rendering/ExclusionShapeOutsideInfo.h: Added. Associates the

ExclusionShape object for shape outside with a RenderBox. Analagous to
ExclusionShapeInsideInfo.

(ExclusionShapeOutsideInfo):
(WebCore::ExclusionShapeOutsideInfo::create):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalLeft):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalRight):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalTop):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalBottom):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalWidth):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalHeight):
(WebCore::ExclusionShapeOutsideInfo::setShapeSize):
(WebCore::ExclusionShapeOutsideInfo::dirtyShapeSize):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertFloatingObject): Use the shape outside's bounding box to set the width that is

used for inline layout for the float and it's siblings.

(WebCore::RenderBlock::positionNewFloats): Use the shape outside's bounding box to set the height that

is used for inline layout for the float and it's siblings. Ignore margins when positioning if the float
has shape outside, per the exclusions spec.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed): Clean up associated ExclusionShape.
(WebCore::RenderBox::styleDidChange): Handle style change for shape outside.
(WebCore::RenderBox::updateExclusionShapeOutsideInfoAfterStyleChange): Handle style change for shape outside.

  • rendering/RenderBox.h:

(WebCore::RenderBox::exclusionShapeOutsideInfo): Get the ExclusionShapeOutsideInfo associated with this

RenderBox.

LayoutTests:

Tests for the basic shape outside functionality to show how the shape affects inline text and other floats.
Also test using percentages to specify the shape and that margins are properly ignored (per the spec), when a
shape is applied to a float.

  • fast/exclusions/shape-outside-floats/shape-outside-floats-margin-is-ignored-expected.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-margin-is-ignored.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-expected.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple-expected.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-percentage-expected.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-percentage.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle.html: Added.
11:59 AM Changeset in webkit [137929] by jpetsovits@rim.com
  • 9 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Clean up log output in WebKit/blackberry.
https://bugs.webkit.org/show_bug.cgi?id=104823

Reviewed by George Staikos.

Behavior-preserving change, fixing many issues with logging:

  • Call logAlways() instead of BBLOG() in already defined-out debug blocks.
  • Call logAlways() instead of BBLOG() for serious errors, too.
  • Fix build for the DEBUG_OVERFLOW_DETECTION block in ChromeClientBlackBerry.
  • Fix build for double declarations of "elapsed" variables in RenderQueue.
  • Fix compiler warnings due to format string / parameter mismatches.
  • Remove unnecessary trailing newlines in logged strings.
  • Consistently use Platform:: as prefix except inside WebCore-namespaced code.
  • Use indentation that actually passes WebKit style checks.
  • Change point/size/rect output to use Platform toString() formats for consistency.
  • Api/BackingStore.cpp:

(BlackBerry::WebKit::bestDivisor):
(BlackBerry::WebKit::BackingStorePrivate::suspendBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::suspendScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::resumeBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::resumeScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::slowScroll):
(BlackBerry::WebKit::BackingStorePrivate::scroll):
(BlackBerry::WebKit::BackingStorePrivate::renderJob):
(BlackBerry::WebKit::BackingStorePrivate::setBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesAfterBackingStoreRectChange):
(BlackBerry::WebKit::BackingStorePrivate::scrollBackingStore):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesForScrollOrNotRenderedRegion):
(BlackBerry::WebKit::BackingStorePrivate::renderContents):
(BlackBerry::WebKit::BackingStorePrivate::blitToWindow):
(BlackBerry::WebKit::BackingStorePrivate::fillWindow):
(BlackBerry::WebKit::BackingStorePrivate::invalidateWindow):
(BlackBerry::WebKit::BackingStorePrivate::clearWindow):

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setLoadState):
(BlackBerry::WebKit::WebPagePrivate::zoomAboutPoint):
(BlackBerry::WebKit::WebPagePrivate::contentsSizeChanged):
(BlackBerry::WebKit::WebPagePrivate::zoomToInitialScaleOnLoad):
(BlackBerry::WebKit::WebPage::touchEvent):
(BlackBerry::WebKit::WebPagePrivate::scheduleRootLayerCommit):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayer):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayerIfNeeded):
(BlackBerry::WebKit::WebPagePrivate::rootLayerCommitTimerFired):

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::overflowExceedsContentsSize):

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::checkFingerIntersection):
(BlackBerry::WebKit::FatFingers::findIntersectingRegions):
(BlackBerry::WebKit::FatFingers::checkForText):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::convertStringToWchar):
(BlackBerry::WebKit::convertStringToWcharVector):
(BlackBerry::WebKit::convertSpannableStringToString):
(BlackBerry::WebKit::InputHandler::learnText):
(BlackBerry::WebKit::InputHandler::requestCheckingOfString):
(BlackBerry::WebKit::InputHandler::spellCheckingRequestCancelled):
(BlackBerry::WebKit::InputHandler::spellCheckingRequestProcessed):
(BlackBerry::WebKit::InputHandler::shouldRequestSpellCheckingOptionsForPoint):
(BlackBerry::WebKit::InputHandler::requestSpellingCheckingOptions):
(BlackBerry::WebKit::InputHandler::setElementUnfocused):
(BlackBerry::WebKit::InputHandler::setInputModeEnabled):
(BlackBerry::WebKit::InputHandler::setElementFocused):
(BlackBerry::WebKit::InputHandler::spellCheckBlock):
(BlackBerry::WebKit::InputHandler::nodeTextChanged):
(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):
(BlackBerry::WebKit::InputHandler::frameUnloaded):
(BlackBerry::WebKit::InputHandler::selectionChanged):
(BlackBerry::WebKit::InputHandler::setSelection):
(BlackBerry::WebKit::InputHandler::handleKeyboardInput):
(BlackBerry::WebKit::InputHandler::deleteTextRelativeToCursor):
(BlackBerry::WebKit::InputHandler::deleteText):
(BlackBerry::WebKit::InputHandler::spannableTextInRange):
(BlackBerry::WebKit::InputHandler::setComposingRegion):
(BlackBerry::WebKit::InputHandler::finishComposition):
(BlackBerry::WebKit::InputHandler::setText):
(BlackBerry::WebKit::InputHandler::setTextAttributes):
(BlackBerry::WebKit::InputHandler::setRelativeCursorPosition):
(BlackBerry::WebKit::InputHandler::setSpannableTextAndRelativeCursor):
(BlackBerry::WebKit::InputHandler::setComposingText):
(BlackBerry::WebKit::InputHandler::commitText):

  • WebKitSupport/RenderQueue.cpp:

(BlackBerry::WebKit::RenderQueue::addToRegularQueue):
(BlackBerry::WebKit::RenderQueue::addToScrollZoomQueue):
(BlackBerry::WebKit::RenderQueue::render):
(BlackBerry::WebKit::RenderQueue::renderAllCurrentRegularRenderJobs):
(BlackBerry::WebKit::RenderQueue::startRegularRenderJobBatchIfNeeded):
(BlackBerry::WebKit::RenderQueue::renderVisibleZoomJob):
(BlackBerry::WebKit::RenderQueue::renderVisibleScrollJob):
(BlackBerry::WebKit::RenderQueue::renderRegularRenderJob):
(BlackBerry::WebKit::RenderQueue::renderNonVisibleScrollJob):

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::cancelSelection):
(BlackBerry::WebKit::SelectionHandler::shouldUpdateSelectionOrCaretForPoint):
(BlackBerry::WebKit::SelectionHandler::setCaretPosition):
(BlackBerry::WebKit::SelectionHandler::updateOrHandleInputSelection):
(BlackBerry::WebKit::SelectionHandler::setSelection):
(BlackBerry::WebKit::SelectionHandler::selectObject):
(BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):
(BlackBerry::WebKit::SelectionHandler::caretPositionChanged):

  • WebKitSupport/SurfacePool.cpp:

(BlackBerry::WebKit::SurfacePool::initialize):

11:44 AM Changeset in webkit [137928] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

Web Inspector: Search by selection
https://bugs.webkit.org/show_bug.cgi?id=104970

Patch by John J. Barton <johnjbarton@chromium.org> on 2012-12-17
Reviewed by Vsevolod Vlasov.

Source/WebCore:

Upon activation of the search control, conditionally set input.value to window.getSelection().
For both single file (SearchController) and multifile (AdvancedSearchController).

Test: inspector/editor/text-editor-selection-to-search.html

  • inspector/front-end/AdvancedSearchController.js:

(WebInspector.AdvancedSearchController.prototype.show):
(WebInspector.SearchView.prototype.syncToSelection):

  • inspector/front-end/SearchController.js:

(WebInspector.SearchController.prototype.showSearchField):

LayoutTests:

New inspector test for editor setting the search query

  • inspector/editor/text-editor-selection-to-search-expected.txt: Added.
  • inspector/editor/text-editor-selection-to-search.html: Added.
11:38 AM Performance Tests edited by eric@webkit.org
(diff)
11:35 AM Changeset in webkit [137927] by eric@webkit.org
  • 3 edits in trunk/Tools

rpt --profile --chromium-android throws exception
https://bugs.webkit.org/show_bug.cgi?id=105061

Reviewed by Daniel Bates.

Somehow popen(args) got turned into popen(*args) at some point,
which caused my new stringify code to fail when args was passed by name.
Fixed and tested.

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

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

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

(ExecutiveTest.test_popen_args):

11:32 AM Changeset in webkit [137926] by pilgrim@chromium.org
  • 4 edits in trunk/Tools

Use Platform::current() instead of webKitPlatformSupport() in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=105054

Reviewed by Jochen Eisinger.

Part of a refactoring series; see tracking bug 82948.

  • DumpRenderTree/chromium/NotificationPresenter.cpp:

(NotificationPresenter::show):

  • DumpRenderTree/chromium/Task.cpp:

(postTask):

  • DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:
11:31 AM Performance Tests edited by eric@webkit.org
(diff)
11:30 AM Performance Tests edited by eric@webkit.org
(diff)
11:21 AM Changeset in webkit [137925] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[GStreamer] Use gst_element_link_pads_full() with CHECK_NOTHING for speed and sanity
https://bugs.webkit.org/show_bug.cgi?id=105181

Patch by Eduardo Lima Mitev <elima@igalia.com> on 2012-12-17
Reviewed by Philippe Normand.

Replace some calls to gst_pad_link() on request pads, by
gst_element_link_pads_full() with CHECK_NOTHING flag, removing
unnecessary pad compatibility checks and simplifying code.

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webKitWebAudioSrcConstructed): Links audioconvert source with a
requested interleave sink using gst_element_link_pads_full().

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Links a

requested source pad from videoTee with the queue sink.

11:12 AM Changeset in webkit [137924] by eae@chromium.org
  • 8 edits
    4 adds in trunk

Clamp values in LayoutUnit::operator/ when SATURATED_LAYOUT_ARITHMETIC is enabled
https://bugs.webkit.org/show_bug.cgi?id=104955

Reviewed by Julien Chaffraix.

Source/WebCore:

LayoutUnit::operator/ currently does not clamp values and
instead overflows when given a value greater than INT_MAX or
less than INT_MIN.

Test: TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp

  • platform/LayoutUnit.h:

(WebCore::operator/):
Clamp value if SATURATED_LAYOUT_ARITHMETIC is enabled.

Tools:

Add tests for LayoutUnit.

  • TestWebKitAPI/CMakeLists.txt:
  • TestWebKitAPI/ForwardingHeaders: Added.
  • TestWebKitAPI/ForwardingHeaders/WebCore: Added.
  • TestWebKitAPI/ForwardingHeaders/WebCore/LayoutUnit.h: Added.
  • TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
  • TestWebKitAPI/TestWebKitAPI.gypi:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp: Added.

(TestWebKitAPI):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/win/TestWebKitAPI.vcproj:
10:59 AM Changeset in webkit [137923] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Don't allow edge TileCache tiles to be larger than necessary
https://bugs.webkit.org/show_bug.cgi?id=105195

Reviewed by Anders Carlsson.

The TileCache would allow edge tiles to be larger than the required size, with the assumption
that the extra space would never be visible. However, for content tiled layers, it can be,
and it doesn't get correctly cleared. So always keep the edge tiles at the specified size.

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

(WebCore::TileCache::revalidateTiles):

10:46 AM Changeset in webkit [137922] by jochen@chromium.org
  • 5 edits in trunk/Tools

[chromium] removed unused preferences from testRunner.overridePreference
https://bugs.webkit.org/show_bug.cgi?id=105169

Reviewed by Tony Chang.

Most notably this removes the code related to font family maps which is
now handled via window.internals.settings

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

(WebPreferences):

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

(WebTestRunner::TestRunner::overridePreference):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

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

(WebTestRunner::WebPreferences::applyTo):

10:44 AM Changeset in webkit [137921] by commit-queue@webkit.org
  • 7 edits in trunk

Source/WebKit/chromium: [chromium] Move ownership of WebLayerTreeView to WebWidgetClient
https://bugs.webkit.org/show_bug.cgi?id=105071

Patch by James Robinson <jamesr@chromium.org> on 2012-12-17
Reviewed by Adrienne Walker.

This moves ownership of a given WebWidget's WebLayerTreeView from WebViewImpl out to the embedder by way of
WebWidgetClient. To deal with the two-sided nature of the patch, if construction by the new path fails
WebViewImpl constructs a WebLayerTreeView by the old path, which means it keeps ownership.

  • public/WebWidgetClient.h:

(WebWidgetClient):
(WebKit::WebWidgetClient::initializeLayerTreeView):
(WebKit::WebWidgetClient::layerTreeView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::webLayerTreeView):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

  • src/WebViewImpl.h:

Tools: [chromium] Move creation of WebLayerTreeView to WebWidgetClient
https://bugs.webkit.org/show_bug.cgi?id=105071

Patch by James Robinson <jamesr@chromium.org> on 2012-12-17
Reviewed by Adrienne Walker.

Update WebViewHost for the new WebWidgetClient interface.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::initializeLayerTreeView):
(WebViewHost::layerTreeView):
(WebViewHost::~WebViewHost):

  • DumpRenderTree/chromium/WebViewHost.h:

(WebViewHost):

10:27 AM Changeset in webkit [137920] by commit-queue@webkit.org
  • 5 edits in trunk

[CSS Exclusions] Floats should respect shape-inside on exclusions
https://bugs.webkit.org/show_bug.cgi?id=89261

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2012-12-17
Reviewed by David Hyatt.

Source/WebCore:

Position floats properly with respect to an exclusion shape. Note that
this will not attempt to position floats in a polygon that has
multiple segments. In the multiple segment case, the floats will be
positioned as if the exclusion did not exist.

Updated an existing test case to test for this.
Test: fast/exclusions/shape-inside/shape-inside-floats-simple.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeLogicalLocationForFloat): Adjust the
right and left offsets to take into account the right and left offset
contributed by the exclusion shape.

LayoutTests:

Update test to properly test floats with shape-inside.

  • fast/exclusions/shape-inside/shape-inside-floats-simple-expected.html:
  • fast/exclusions/shape-inside/shape-inside-floats-simple.html:
10:25 AM Changeset in webkit [137919] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Implement add64 for MIPS assembler after r136601
https://bugs.webkit.org/show_bug.cgi?id=104106

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2012-12-17
Reviewed by Zoltan Herczeg.

Added add64 function to MacroAssebler of MIPS.

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::add32):
(JSC::MacroAssemblerMIPS::add64):
(MacroAssemblerMIPS):

10:22 AM Changeset in webkit [137918] by Lucas Forschler
  • 1 copy in tags/Safari-537.22

New Tag.

9:51 AM Changeset in webkit [137917] by thiago.santos@intel.com
  • 2 edits in trunk/Source/WebKit2

[EFL] Unit tests process hanging on WK2 Release bots
https://bugs.webkit.org/show_bug.cgi?id=105021

Reviewed by Kenneth Rohde Christiansen.

Follow-up of r137605, which made it more difficult to reproduce
the race condition but doesn't entirely solve the problem. Now
we are handling only points in the middle of the fork()/exec().

  • UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:

(WebKit::ProcessLauncher::launchProcess):

9:35 AM Changeset in webkit [137916] by kenneth@webkit.org
  • 8 edits in trunk

[EFL][WK2] window_create doesn't receive the url
https://bugs.webkit.org/show_bug.cgi?id=105184

Reviewed by Alexis Menard.

Source/WebKit2:

Pass the url to the window_create method.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::createNewPage):

  • UIProcess/API/efl/EwkViewImpl.h:

(EwkViewImpl):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/tests/test_ewk2_window_features.cpp:

(createDefaultWindow):
(createWindow):

  • UIProcess/efl/PageUIClientEfl.cpp:

(WebKit::PageUIClientEfl::createNewPage):

Tools:

  • MiniBrowser/efl/main.c: Use the url supplied to window_create

(on_window_create):

9:35 AM WebInspector edited by zandobersek@gmail.com
Removing spam. (diff)
9:19 AM Changeset in webkit [137915] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

GraphicsLayer's repaint count should update even when debugging option to show it is off
https://bugs.webkit.org/show_bug.cgi?id=105178

Patch by Antoine Quint <Antoine Quint> on 2012-12-17
Reviewed by Simon Fraser.

Update the repain count even if the debug option to show them is turned off.
This allows the count to be accurate in between toggles of the debug option
and to allow the InspectorLayerTreeAgent to get accurate results any time
the layer tree is requested (see webkit.org/b/105024).

  • platform/graphics/mac/WebLayer.mm:

(drawLayerContents):

9:10 AM Changeset in webkit [137914] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[CSS Exclusions] Add helper functions for converting floats to LayoutUnits
https://bugs.webkit.org/show_bug.cgi?id=103450

Patch by Hans Muller <hmuller@adobe.com> on 2012-12-17
Reviewed by Dirk Schulze.

When a float logicalTop value is converted to a LayoutUnit it's necessary to
use LayoutUnit::fromFloatCeil() to ensure that we're snapping to a value that's
inside the ExclusionShape. Similarly, to convert a logicalBottom value from
float to LayoutUnit we use LayoutUnit::fromFloatFloor(). Added a pair of private
ExlcusionShapeInsideInfo methods that do the conversions and refactored existing
code to use them.

This is just a cleanup. No new tests are needed, the existing tests cover
these changes.

  • rendering/ExclusionShapeInsideInfo.cpp:

(WebCore::ExclusionShapeInsideInfo::adjustLogicalLineTop): Use the new floatLogicalTopToLayoutUnit() method.

  • rendering/ExclusionShapeInsideInfo.h:

(WebCore::ExclusionShapeInsideInfo::shapeLogicalTop): Use the new floatLogicalTopToLayoutUnit() method.
(WebCore::ExclusionShapeInsideInfo::shapeLogicalBottom): Use the new floatLogicalBottomToLayoutUnit() method.
(ExclusionShapeInsideInfo):
(WebCore::ExclusionShapeInsideInfo::floatLogicalTopToLayoutUnit): Convert a float to a LayoutUnit with LayoutUnit::fromFloatCeil().
(WebCore::ExclusionShapeInsideInfo::floatLogicalBottomToLayoutUnit): Convert a float to a LayoutUnit with LayoutUnit::fromFloatFloor().

8:57 AM Changeset in webkit [137913] by commit-queue@webkit.org
  • 6 edits in trunk

Web Inspector: Provide the paint count of layers through the LayerTreeAgent
https://bugs.webkit.org/show_bug.cgi?id=105024

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

Source/WebCore:

We add a new optional .paintCount property to the Layer object, passing through the
relevant information from GraphicsLayer.

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

(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):

LayoutTests:

Add the paintCount property to the expected output of the LayerTreeAgent test.

  • inspector-protocol/layer-tree-expected.txt:
  • inspector-protocol/layer-tree.html:
8:54 AM WebInspector edited by mousewiki@yahoo.com
(diff)
8:35 AM Changeset in webkit [137912] by pfeldman@chromium.org
  • 5 edits in trunk/Source

Web Inspector: [chromium] make toolbar render with Mountain Lion-friendly colors
https://bugs.webkit.org/show_bug.cgi?id=105177

Reviewed by Vsevolod Vlasov.

Source/WebCore:

  • inspector/front-end/UIUtils.js:

(WebInspector.platformFlavor):

  • inspector/front-end/inspector.css:

(#toolbar):
(body.dock-to-bottom #toolbar):
(.toolbar-item):

Source/WebKit/chromium:

  • src/js/devTools.css:

(body.dock-to-bottom #toolbar):
(body.undocked.platform-mac-leopard #toolbar):
(body.undocked.platform-mac-leopard.inactive #toolbar):
(body.undocked.platform-mac-snowleopard #toolbar):
(body.undocked.platform-mac-snowleopard.inactive #toolbar):
(body.undocked.platform-mac-mountain-lion #toolbar):
(body.undocked.platform-mac-mountain-lion.inactive #toolbar):

8:31 AM Changeset in webkit [137911] by loislo@chromium.org
  • 4 edits in trunk

Web Inspector: Native Memory Instrumentation: MemoryInstrumentation doesn't detect reportMemoryUsage method defined in a base class.
https://bugs.webkit.org/show_bug.cgi?id=105026

Reviewed by Yury Semikhatsky.

Old SFINAE test was replaced with new one based on this article:
http://stackoverflow.com/questions/1966362/sfinae-to-check-for-inherited-member-functions

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(MemoryInstrumentation):
(yes):
(IsInstrumented):
(no):
(WTF::MemoryInstrumentation::IsInstrumented::BaseMixin::reportMemoryUsage):
(WTF::MemoryInstrumentation::selectInstrumentationMethod):
(InstrumentationSelector):
(WTF):
(WTF::::reportObjectMemoryUsage):

Tools:

New test which covers this problem was added.

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
8:22 AM Changeset in webkit [137910] by Csaba Osztrogonác
  • 3 edits
    3 adds in trunk/LayoutTests

[Qt][WK2] Unreviewed gardening.

  • platform/qt-5.0-wk2/TestExpectations: Skip a new failing test.
  • platform/qt-5.0-wk2/compositing/iframes/page-cache-layer-tree-expected.txt: Added because of minor pixel differences.
  • platform/qt-5.0-wk2/fast/images/crossfade-client-not-removed-crash-expected.txt: Added WK2 specific result.
  • platform/qt-5.0-wk2/fast/text/zero-font-size-expected.txt: Added after r137902.
  • platform/qt-5.0-wk2/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Updated.
8:20 AM Changeset in webkit [137909] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Attribute: Remove unused constructor and isNull().
<http://webkit.org/b/105179>

Reviewed by Antti Koivisto.

Removed the Attribute constructor that takes a localName rather than a full QualifiedName as that was never used.
Also removed Attribute::isNull(), since that was only called in one place where isNull() will never be true.

  • dom/Attribute.h:
  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::collectStyleForPresentationAttribute):

7:45 AM Changeset in webkit [137908] by commit-queue@webkit.org
  • 14 edits in trunk

[Blackberry] Static code analysis warning fixes
https://bugs.webkit.org/show_bug.cgi?id=105129

Patch by Anthony Scian <ascian@rim.com> on 2012-12-17
Reviewed by Rob Buis.

Source/WebCore:

  • alloca can return NULL, recoded to just use a temp var
  • plugins/blackberry/PluginViewBlackBerry.cpp:

(WebCore::PluginView::updateBuffer):

Source/WebKit/blackberry:

  • disable copy/op= in BackingStore
  • cache and check intermediate values in parentLayer
  • disable copy/op= in InRegionScroller
  • disable copy/op= in WebPageGroupLoadDeferrer
  • disable copy/op= in WebSettings
  • disable copy/op= in WebViewportArguments
  • disable copy/op= in BackingStoreClient
  • disable copy/op= in TileBuffer
  • if stopNode is not NULL, loop could iterate past NULL; added NULL check to loop to make the code more robust
  • Api/BackingStore.h:
  • Api/InRegionScroller.cpp:

(BlackBerry::WebKit::InRegionScrollerPrivate::calculateInRegionScrollableAreasForPoint):
(BlackBerry::WebKit::parentLayer):

  • Api/InRegionScroller.h:
  • Api/WebPageGroupLoadDeferrer.h:
  • Api/WebSettings.h:
  • Api/WebViewportArguments.h:
  • WebKitSupport/BackingStoreClient.h:

(BackingStoreClient):

  • WebKitSupport/BackingStoreTile.h:

(TileBuffer):

  • WebKitSupport/DOMSupport.cpp:

(BlackBerry::WebKit::DOMSupport::visibleTextQuads):

Tools:

Added null checks for fopen calls, no recovery attempted; access fault prevention only.

  • DumpRenderTree/blackberry/DumpRenderTree.cpp:

(BlackBerry::WebKit::createFile):
(BlackBerry::WebKit::DumpRenderTree::runTest):

7:01 AM Changeset in webkit [137907] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] compositing/overflow/automatically-opt-into-composited-scrolling.html makes other tests fail
https://bugs.webkit.org/show_bug.cgi?id=105173

Unreviewed gardening, skip the culprit tests to paint the bots green.

  • platform/qt-5.0-wk2/TestExpectations:
6:59 AM Changeset in webkit [137906] by mikhail.pozdnyakov@intel.com
  • 4 edits in trunk

[WK2] TiledBackingStore: css3/device-adapt/viewport-width-not-affecting-next-page.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=105131

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

The problem was lead by truncation of the scaled result for 'contentFixedSize'.
Fixed now with using FloatSize::scale() instead of IntSize::scale().

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::sendViewportAttributesChanged):

LayoutTests:

Unskipped css3/device-adapt/viewport-width-not-affecting-next-page.html for WK2 EFL.

  • platform/efl-wk2/TestExpectations:
6:53 AM Changeset in webkit [137905] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Make popover content accessible for clicks.
https://bugs.webkit.org/show_bug.cgi?id=105167

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

Currently it is very hard to move mouse pointer inside of popover area.
The only maneuver is to precisely jerk the mouse in direction of popover.

This path makes anchor and popover "active" areas overlap, so it becomes
possible to smoothly move mouse to popover interior.

  • inspector/front-end/Popover.js:

(WebInspector.Popover.prototype._innerShow): Make popover "outer" border
an be "active" area.

  • inspector/front-end/popover.css: Allow popover "outer" border receive

mouse events.

6:40 AM Changeset in webkit [137904] by peter@chromium.org
  • 2 edits in trunk/Tools

Add Anton Vayvod and Tim Volodine as contributors in committers.py
https://bugs.webkit.org/show_bug.cgi?id=105025

Unreviewed. Adds two contributors to committers.py.
They are initially contributing to the Text Autosizing feature (master bug: 84186).

Patch by John Mellor <johnme@chromium.org> on 2012-12-17

  • Scripts/webkitpy/common/config/committers.py:
6:14 AM Changeset in webkit [137903] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Persist Audit selections across sessions
https://bugs.webkit.org/show_bug.cgi?id=103944

Reviewed by Alexander Pavlov.

Make selected audit categories a persistent setting, to simplify life for those
repeatedly running same set of categories.

  • inspector/front-end/AuditLauncherView.js:

(WebInspector.AuditLauncherView):
(WebInspector.AuditLauncherView.prototype.addCategory.get var):
(WebInspector.AuditLauncherView.prototype.addCategory):
(WebInspector.AuditLauncherView.prototype._selectAllClicked):
(WebInspector.AuditLauncherView.prototype._categoryClicked):
(WebInspector.AuditLauncherView.prototype._createCategoryElement):

6:04 AM Changeset in webkit [137902] by commit-queue@webkit.org
  • 3 edits
    5 adds in trunk/LayoutTests

[WK2] Enable tests that use boolean overridePreference
https://bugs.webkit.org/show_bug.cgi?id=105008

Unreviewed gardening. Enable tests that call overridePreference()
with a boolean value, mostly webgl ones. Add a few fail results for
EFL.

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-12-17

  • platform/efl/TestExpectations:
  • platform/wk2/TestExpectations:
6:01 AM Changeset in webkit [137901] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

[Texmap] Drawing of ARB textures broken after r137498.
https://bugs.webkit.org/show_bug.cgi?id=105165

Disable antialiasing for ARB textures after unifying
code paths. We are currently missing a fragment shader
to do antialiasing with ARB textures.

Reviewed by Kenneth Rohde Christiansen.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawTexture):

5:55 AM WebKit Team edited by mikhail.pozdnyakov@intel.com
adding myself to committers list (diff)
5:54 AM Changeset in webkit [137900] by kenneth@webkit.org
  • 1 edit
    1 add in trunk

Add manual test to verify that geometry methods (moveTo, etc) work
https://bugs.webkit.org/show_bug.cgi?id=105160

Reviewed by Alexis Menard.

  • ManualTests/window-geometry.html: Added.
5:50 AM Changeset in webkit [137899] by mikhail.pozdnyakov@intel.com
  • 2 edits in trunk/Tools

Unreviewed, add myself to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
4:33 AM Changeset in webkit [137898] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Popup flickers when cursor moves between elements with same anchor.
https://bugs.webkit.org/show_bug.cgi?id=104992

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

Popup disappears and then appears again when mouse pointer traverses
between sub-elements of anchor element.

  • inspector/front-end/Popover.js: Split method "_mouseOut".

(WebInspector.PopoverHelper.prototype._popoverMouseOut):
Handler for Popover.
(WebInspector.PopoverHelper.prototype._mouseOut):
Handler for PopoverHelper.

4:13 AM Changeset in webkit [137897] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK1]REGRESSION(r137811): compositing/tiling/crash-huge-layer.html makes the following test crash on 32 bit
https://bugs.webkit.org/show_bug.cgi?id=105158

Unreviewed gardening, skip the culprit test to paint the bots green.

  • platform/qt-5.0-wk1/TestExpectations:
4:09 AM Changeset in webkit [137896] by caseq@chromium.org
  • 7 edits in trunk/Source

[Chromium] Remove support for TRACE_EVENT_IF_LONGER_THANx macros
https://bugs.webkit.org/show_bug.cgi?id=104784

Reviewed by Pavel Feldman.

Source/Platform:

  • remove threshold and id of related begin event from arguments of addTraceEvent()
  • do not return the index of added event from addTraceEvent()
  • chromium/public/Platform.h:

(Platform):
(WebKit::Platform::addTraceEvent):

Source/WebCore:

  • removed TRACE_EVENT_IF_LONGER_THANx macros;
  • changed addTraceEvent() to return void, as we no longer need the index of added event.
  • platform/EventTracer.h:

(EventTracer):

  • platform/chromium/EventTracerChromium.cpp:

(WebCore::EventTracer::addTraceEvent):

  • platform/chromium/TraceEvent.h:

(TraceEvent):
(WebCore::TraceEvent::addTraceEvent):
(WebCore::TraceEvent::TraceEndOnScopeClose::addEventIfEnabled):
(Data):

3:49 AM Changeset in webkit [137895] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix Math.pow implementation with MinGW-w64
https://bugs.webkit.org/show_bug.cgi?id=105087

Patch by Jonathan Liu <net147@gmail.com> on 2012-12-17
Reviewed by Simon Hausmann.

The MinGW-w64 runtime has different behaviour for pow()
compared to other C runtimes. This results in the following
test262 tests failing with the latest MinGW-w64 runtime:

  • S15.8.2.13_A14
  • S15.8.2.13_A16
  • S15.8.2.13_A20
  • S15.8.2.13_A22

Handle the special cases that are different with MinGW-w64.

  • runtime/MathObject.cpp:

(JSC::mathPow):

3:48 AM Changeset in webkit [137894] by Simon Hausmann
  • 8 edits in trunk

[Qt] remove some unnecessary CONFIG additions

Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com> on 2012-12-17
Reviewed by Simon Hausmann.

qt is already added by spec_pre.prf, warn_on and depend_includepath by
default_pre.prf.

Source/WebKit/qt:

  • declarative/experimental/experimental.pri:
  • declarative/public.pri:

Source/WebKit2:

  • UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
  • UIProcess/API/qt/tests/qmltests/WebView.pro:

Tools:

  • qmake/mkspecs/features/default_post.prf:
3:35 AM Changeset in webkit [137893] by loislo@chromium.org
  • 4 edits in trunk

Unreviewed, rolling out r137892.
http://trac.webkit.org/changeset/137892
https://bugs.webkit.org/show_bug.cgi?id=105026

it broke compilation on windows

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::selectInstrumentationMethod):
(MemoryInstrumentation):
(WTF::MemoryInstrumentation::reportObjectMemoryUsage):
(WTF::reportMemoryUsage):

Tools:

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
3:29 AM Changeset in webkit [137892] by loislo@chromium.org
  • 4 edits in trunk

Web Inspector: Native Memory Instrumentation: MemoryInstrumentation doesn't detect reportMemoryUsage method defined in a base class.
https://bugs.webkit.org/show_bug.cgi?id=105026

Reviewed by Yury Semikhatsky.

Old SFINAE test was replaced with new one based on this article:
http://stackoverflow.com/questions/1966362/sfinae-to-check-for-inherited-member-functions

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(MemoryInstrumentation):
(yes):
(IsInstrumented):
(no):
(WTF::MemoryInstrumentation::IsInstrumented::BaseMixin::reportMemoryUsage):
(WTF::MemoryInstrumentation::selectInstrumentationMethod):
(InstrumentationSelector):
(WTF):
(WTF::::reportObjectMemoryUsage):

Tools:

New test which covers this problem was added.

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
3:13 AM Changeset in webkit [137891] by Simon Hausmann
  • 5 edits in trunk

[Qt] rely on automatic output directory setup

Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com> on 2012-12-17
Reviewed by Simon Hausmann.

Now being a proper qt module (by virtue of having load(qt_build_config)
in .qmake.conf), webkit gets the path setup goodies for free.

This also fixes Makefile.api.Debug/Release trying to generate qrc_WebKit.cpp
at the same time, instead of the debug and release version ending up in different
directories as they should.

Source/WebKit2:

  • UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
  • UIProcess/API/qt/tests/qmltests/WebView.pro:

Tools:

  • qmake/mkspecs/features/default_pre.prf:
2:49 AM Changeset in webkit [137890] by thiago.santos@intel.com
  • 3 edits in trunk/Source/WebKit2

[EFL] Unit tests process hanging on WK2 Release bots
https://bugs.webkit.org/show_bug.cgi?id=105021

Reviewed by Kenneth Rohde Christiansen.

Do not allocate memory in the middle of a fork()/exec().
EFL uses global FastMalloc new operator and when we fork(), the
process is in a very delicate state. We were being lucky most of the
time, but sometimes FastMalloc enters in a busy wait and hangs
because it's data structures cannot be trusted after the fork().

This explains why sometimes we see UIProcess hanging on the bots:
they are in fact UIProcess trying to exec() into a WebProcess but
hanged just after the fork(). CMake test runner kills the original
UIProcess due to timeout and the buggy one stays forever.

  • PlatformEfl.cmake:

Set the timeout back to the original value.

  • UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:

(WebKit::ProcessLauncher::launchProcess):
I'm keeping the original behavior, including the call to
system() when wrapping the WebProcess on Debug mode. This
should be changed to exec() in another patch.

2:37 AM Changeset in webkit [137889] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

Fix the Qt Windows build after r137803
https://bugs.webkit.org/show_bug.cgi?id=105152

Reviewed by Kentaro Hara.

  • Shared/CacheModel.h:
2:25 AM Changeset in webkit [137888] by charles.wei@torchmobile.com.cn
  • 2 edits in trunk/Tools

[BlackBerry] Need to re-enable video track
https://bugs.webkit.org/show_bug.cgi?id=105155

Reviewed by George Staikos.

Just enable Video Track for BlackBerry.

  • Scripts/webkitperl/FeatureList.pm:
2:08 AM Changeset in webkit [137887] by János Badics
  • 2 edits in trunk/Tools

Unreviewed. Added myself to committers.py

  • Scripts/webkitpy/common/config/committers.py:
1:38 AM Changeset in webkit [137886] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix linking of libraries with -Wl,-whole-archive
https://bugs.webkit.org/show_bug.cgi?id=104436

Patch by Jonathan Liu <net147@gmail.com> on 2012-12-17
Reviewed by Simon Hausmann.

If there is more than one library in LIBS linked with
-Wl,-whole-archive -l... -Wl,-no-whole-archive, qmake tries to
merge the duplicate flags in LIBS which causes linking to fail.

Add no_smart_library_merge to CONFIG to prevent the duplicate
flags from being removed when using -Wl,-whole-archive.

  • qmake/mkspecs/features/functions.prf:
12:57 AM Changeset in webkit [137885] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r136794.
http://trac.webkit.org/changeset/136794
https://bugs.webkit.org/show_bug.cgi?id=104203

The GC change can leak memory

  • bindings/v8/V8GCController.cpp:

(WebCore):
(WebCore::addImplicitReferencesForNodeWithEventListeners):

12:56 AM Changeset in webkit [137884] by rgabor@webkit.org
  • 3 edits in trunk/Source/WebCore

Reduce the code size of ARM SIMD in GraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=105086

Reviewed by Zoltan Herczeg.

Reduce the code size of ARM SIMD in GraphicsContext3D and change the ARM
namespace to SIMD.

  • platform/graphics/GraphicsContext3D.cpp:

(WebCore):

  • platform/graphics/cpu/arm/GraphicsContext3DNEON.h:

(WebCore::SIMD::unpackOneRowOfRGBA4444ToRGBA8):
(WebCore::SIMD::packOneRowOfRGBA8ToUnsignedShort4444):
(WebCore::SIMD::unpackOneRowOfRGBA5551ToRGBA8):
(WebCore::SIMD::packOneRowOfRGBA8ToUnsignedShort5551):
(WebCore::SIMD::unpackOneRowOfRGB565ToRGBA8):
(WebCore::SIMD::packOneRowOfRGBA8ToUnsignedShort565):

12:53 AM Changeset in webkit [137883] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: frame bars on timeline do not react on hover and double click
https://bugs.webkit.org/show_bug.cgi?id=105153

Reviewed by Alexander Pavlov.

Remove z-index: -100 from #timeline-grid-header, as it prevents mouse events from
reaching frame strip. Use pointer-events: none on frame dividers instead.

  • inspector/front-end/timelinePanel.css:

(.timeline .resources-event-divider.timeline-frame-divider):
(#timeline-grid-header):

Dec 16, 2012:

11:55 PM Changeset in webkit [137882] by Csaba Osztrogonác
  • 36 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Update expected files after r137798.

  • platform/qt-5.0-wk2/compositing/columns/composited-in-paginated-expected.txt:
  • platform/qt-5.0-wk2/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/become-composited-nested-iframes-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/become-overlapped-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/composited-parent-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe2-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe3-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/enter-compositing-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/iframe-resize-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/invisible-nested-iframe-show-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/overlapped-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/overlapped-nested-iframes-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/resizer-expected.txt:
  • platform/qt-5.0-wk2/compositing/iframes/scrolling-iframe-expected.txt:
  • platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-and-transform-expected.txt:
  • platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-under-transform-expected.txt:
  • platform/qt-5.0-wk2/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-absolute-overflow-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt:
  • platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiled-layers-hidpi-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiling/huge-layer-add-remove-child-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiling/huge-layer-with-layer-children-expected.txt:
  • platform/qt-5.0-wk2/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
  • platform/qt/compositing/backing/no-backing-for-clip-expected.txt:
  • platform/qt/compositing/backing/no-backing-for-clip-overlap-expected.txt:
  • platform/qt/compositing/backing/no-backing-for-perspective-expected.txt:
  • platform/qt/compositing/geometry/preserve-3d-switching-expected.txt:
11:44 PM Changeset in webkit [137881] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Improve performance of a conversion from WebKit strings to V8 strings
https://bugs.webkit.org/show_bug.cgi?id=105150

Reviewed by Eric Seidel.

V8 provides v8::Weak(isolate) and v8::Local::New(isolate, ...),
which are much faster than v8::Weak() and v8::Local::New().
By using the faster APIs, we can improve performance of a conversion
from a WebKit string to a V8 string. This improves performance of
div.id, div.className, ...and a lot of DOM attributes that return
strings.

[Dromaeo/dom-attr]
120 runs/sec, 120 runs/sec, 118 runs/sec => 125 runs/sec, 123 run/sec, 125 runs/sec (+4.1%)

[Dromaeo/dom-traverse]
94 runs/sec, 94 runs/sec, 96 runs/sec => 107 runs/sec, 105 runs/sec, 107 runs/sec (+12.3%)

[Bindings/id-getter]
356 runs/sec, 356 runs/sec, 341 runs/sec => 423 runs/sec, 424 runs/sec, 424 runs/sec (+20.7%)

No tests. No change in behavior.

  • bindings/v8/V8ValueCache.h:

(WebCore::StringCache::v8ExternalString):

11:37 PM Changeset in webkit [137880] by anilsson@rim.com
  • 10 edits in trunk

[BlackBerry] Adapt to new BlackBerry::Platform::TouchPoint API
https://bugs.webkit.org/show_bug.cgi?id=105143
RIM PR 171941

Reviewed by Rob Buis.
Internally reviewed by George Staikos.

Source/WebCore:

TouchPoint instances now provide document coordinates for the viewport
and content position of the touch event. The pixel coordinates stored
in the TouchPoint should no longer be needed in WebKit.

Also adapt to new method names and encapsulation of TouchPoint data
members.

No change in behavior, no new tests.

  • platform/blackberry/PlatformTouchPointBlackBerry.cpp:

(WebCore::PlatformTouchPoint::PlatformTouchPoint):

Source/WebKit/blackberry:

TouchPoint instances now provide document coordinates for the viewport
and content position of the touch event. The pixel coordinates stored
in the TouchPoint should no longer be needed in WebKit. One exception
is when passing events to a full screen plugin.

Also adapt to new method names and encapsulation of TouchPoint data
members.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::touchEvent):
(BlackBerry::WebKit::WebPage::touchPointAsMouseEvent):
(BlackBerry::WebKit::WebPagePrivate::dispatchTouchEventToFullScreenPlugin):
(BlackBerry::WebKit::WebPagePrivate::dispatchTouchPointAsMouseEventToFullScreenPlugin):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::shouldRequestSpellCheckingOptionsForPoint):

  • WebKitSupport/InputHandler.h:

(InputHandler):

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::doFatFingers):
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

  • WebKitSupport/TouchEventHandler.h:

(TouchEventHandler):

Tools:

Adapt to new method names and encapsulation of TouchPoint data members.

  • DumpRenderTree/blackberry/EventSender.cpp:

(addTouchPointCallback):
(updateTouchPointCallback):
(touchEndCallback):
(releaseTouchPointCallback):
(sendTouchEvent):

11:20 PM Changeset in webkit [137879] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark new compositing/overflow/automatically-opt-into-composited-scrolling.html
test introduced in r137828 as failing on EFL WK2.

  • platform/efl-wk2/TestExpectations:
11:16 PM Changeset in webkit [137878] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Bytecode dumping should show rare case profiles
https://bugs.webkit.org/show_bug.cgi?id=105133

Reviewed by Geoffrey Garen.

Refactored the dumper to call dumpBytecodeCommandAndNewLine in just one place,
rather than in all of the places. Changed the rare case profile getters to use
tryBinarySearch rather than binarySearch, so that they can be used speculatively
even if you don't know that the bytecode has rare case profiles. This actually
increases our assertion level, since it means that in release builds we will get
null and crash rather than getting some random adjacent profile. And then this
adds some printing of the rare case profiles.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printUnaryOp):
(JSC::CodeBlock::printBinaryOp):
(JSC::CodeBlock::printConditionalJump):
(JSC::CodeBlock::printCallOp):
(JSC::CodeBlock::printPutByIdOp):
(JSC::CodeBlock::beginDumpProfiling):
(JSC):
(JSC::CodeBlock::dumpValueProfiling):
(JSC::CodeBlock::dumpArrayProfiling):
(JSC::CodeBlock::dumpRareCaseProfile):
(JSC::CodeBlock::dumpBytecode):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::rareCaseProfileForBytecodeOffset):
(JSC::CodeBlock::specialFastCaseProfileForBytecodeOffset):

11:13 PM Changeset in webkit [137877] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Fix JS compiler warning.
https://bugs.webkit.org/show_bug.cgi?id=105032

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

Problem: event handler parameter has actial parameter
type KeyboardEvent, but ".addEventListener" refuses listeners with such
signature.

Solution: explicitly upcast argument type.

  • inspector/front-end/ElementsTreeOutline.js: Update JsDocs.
11:07 PM Changeset in webkit [137876] by timothy_horton@apple.com
  • 13 edits in trunk/Source

PDFPlugin: The "Open in Preview" HUD button should work
https://bugs.webkit.org/show_bug.cgi?id=102448
<rdar://problem/12695729>

Reviewed by Alexey Proskuryakov.

Implement the "Open in Preview" button for PDFPlugin, by moving the implementation from PDFViewController
onto WebPageProxyMac, and reusing it in PDFViewController and PDFPlugin.

  • UIProcess/API/mac/PDFViewController.h:

(PDFViewController): Remove unnecessary members in favor of a UUID that identifies our PDF on disk.

  • UIProcess/API/mac/PDFViewController.mm:

(WebKit::PDFViewController::openPDFInFinder): Move PDFViewController's implementation of openPDFInFinder
and related functions to WebPageProxyMac. This will allow it to be shared with PDFPlugin.

  • UIProcess/WebPageProxy.h:

(WebPageProxy): Add savePDFToFileInTemporaryFolderAndOpenWithNativeApplication,
savePDFToFileInTemporaryFolderAndOpenWithNativeApplicationRaw, and openPDFFromTemporaryFolderWithNativeApplication.
Add m_temporaryPDFFiles, which is used to keep track of the filenames of PDFs that we've saved to disk.

  • UIProcess/WebPageProxy.messages.in:

Add SavePDFToFileInTemporaryFolderAndOpenWithNativeApplication and OpenPDFFromTemporaryFolderWithNativeApplication.

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::temporaryPDFDirectoryPath): Copied from PDFViewController. Construct the path to a
WebKitPDFs temporary directory into which PDFs to be opened with a native application are downloaded.
(WebKit::pathToPDFOnDisk): Copied from PDFViewController. Combine temporaryPDFDirectoryPath
with the suggested filename for the given PDF, creating a new filename if the file already exists.
(WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplicationRaw):
(WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplication):
Save the given PDF data to a temporary file, given the suggested filename. This inserts the
filename used into m_temporaryPDFFiles, where it can later be retrieved by UUID when asked
to open the PDF again in a native application. Then, open it with NSWorkspace.
(WebKit::WebPageProxy::openPDFFromTemporaryFolderWithNativeApplication):
Open the previously saved PDF file with NSWorkspace, referenced by UUID.
We identify the file by UUID instead of name so that only the UIProcess needs
to keep track of the actual filename, and so that the WebProcess
cannot hand an arbitrary filename back to the UIProcess to open.

  • WebProcess/Plugins/PDF/PDFPlugin.h:

(PDFPlugin): Add openWithNativeApplication and storage for the UUID that identifies our PDF on disk.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(-[WKPDFLayerControllerDelegate openWithPreview]): Forward openWithPreview to PDFPlugin's openWithNativeApplication.
(WebKit::PDFPlugin::saveToPDF):
Hand raw data to WebPage and have it send the message to WebPageProxy instead of using IPC types in PDFPlugin.
(WebKit::PDFPlugin::openWithNativeApplication):
Ask WebPage to save the current PDF to a temporary directory and open it with a native application.
If we've already downloaded the PDF (and have a non-null m_temporaryPDFUUID),
we can just open the existing file.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::savePDFToFileInDownloadsFolder): Hand the PDF data to WebPageProxy to save.
(WebKit::WebPage::savePDFToTemporaryFolderAndOpenWithNativeApplication): Hand the PDF data to WebPageProxy to save and open.

  • WebProcess/WebPage/WebPage.h:

(WebPage): Add savePDFToFileInDownloadsFolder and savePDFToTemporaryFolderAndOpenWithNativeApplication.

Expose createCanonicalUUIDString and UUID.h.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
11:06 PM Changeset in webkit [137875] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark editing/execCommand/indent-paragraphs.html as expected to
crash on EFL port until Bug 105042 is fixed.

  • platform/efl/TestExpectations:
11:01 PM Changeset in webkit [137874] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] Remote Web Inspector requires the inspector
https://bugs.webkit.org/show_bug.cgi?id=105088

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-16
Reviewed by Sam Weinig.

Inspector server should not be started without inspector.

  • config.h:
10:57 PM Changeset in webkit [137873] by commit-queue@webkit.org
  • 6 edits in trunk/Source

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

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

Use UNUSED_PARAM macro to fix build warning -Wunused-parameter.

Source/WebCore:

No new tests, no behavior change.

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::supportsProfiling):
(WebCore::JSDOMWindowBase::supportsRichSourceInfo):

Source/WebKit/efl:

  • ewk/ewk_view.cpp:

(ewk_view_inspector_show):
(ewk_view_inspector_close):
(ewk_view_inspector_view_get):
(ewk_view_inspector_view_set):

Source/WebKit2:

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_inspector_show):
(ewk_view_inspector_close):

10:47 PM Changeset in webkit [137872] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Header files of ewk_context_menu should be installed
https://bugs.webkit.org/show_bug.cgi?id=105069

Reviewed by Gyuyoung Kim.

  • PlatformEfl.cmake:

Modified to install ewk_context_menu.h and ewk_context_menu_item.h which
are included in EWebKit2.h

9:40 PM Changeset in webkit [137871] by ap@apple.com
  • 5 edits in trunk/Source

<rdar://problem/12886898> Bundle uploads don't work
https://bugs.webkit.org/show_bug.cgi?id=105149

Reviewed by Sam Weinig.

Source/WebCore:

  • WebCore.exp.in: Exported FormData::removeGeneratedFilesIfNeeded().
  • platform/network/FormData.cpp:

(WebCore::encodeElement):
(WebCore::decodeElement):
Encode generated file name for archive, too. I'm not entirely sure how this affects other uses
of FormData serialization, but it seems logical that if we encode m_hasGeneratedFiles, we
should also encode their names.

Source/WebKit2:

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::didReceiveResponse):
(WebKit::NetworkResourceLoader::didFail):
Clean up generated files when they are no longer needed. This has to be done before FormData
destruction. This duplicates same work done in WebProcess, but duplicaiton is safe, and may
be helpful if one of the sides prematurely exits.

8:56 PM Changeset in webkit [137870] by hayato@chromium.org
  • 7 edits in trunk

[Shadow DOM] Kill ShadowRoot constructor
https://bugs.webkit.org/show_bug.cgi?id=102913

Reviewed by Dimitri Glazkov.

Source/WebCore:

Re-landing r137408 which breaks browser tests on chromium. I've
updated the browser tests on chromium so that they do not use
WebKitShadowRoot constructor.

No new tests. Updating existing layout tests.

  • dom/ShadowRoot.idl:
  • page/DOMWindow.idl:

LayoutTests:

  • fast/js/global-constructors-expected.txt:
  • platform/efl/fast/js/global-constructors-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
7:17 PM Changeset in webkit [137869] by mjs@apple.com
  • 1 edit
    1 add in trunk/Tools

Add a script to compute the mean and 95% confidence interval (using two-sided t-test) of a sample set
https://bugs.webkit.org/show_bug.cgi?id=105148

Reviewed by Filip Pizlo.

Usage examples:

$ sampstat --help
Usage: sampstat [options] [FILES]

Compute the mean and 95% confidence interval of a sample set.
Standard input or files must contain two or more decimal numbers, one per line.


Options:

-h, --help show this help message and exit
-u UNIT, --unit=UNIT assume values are in units of UNIT
-v, --verbose print all values (with units)


$ sampstat -u MB memresults.txt
2356.90 MB +/- 101.34 MB (4.3%)

$ sampstat -v -u MB memresults.txt

2318.21 MB
2399.56 MB
2352.93 MB


Mean: 2356.90 MB +/- 101.34 MB (4.3%)

  • Scripts/sampstat: Added.

(sum): Helper function to compute the sum of a list.
(arithmeticMean): Compute the meam of a list.
(standardDeviation): Compute the sample standard deviation (unbiased estimator).
(standardError): Compute the sample standard error.
(tDist): Compute t(.025, n-1), the t-value for atwo-sided 95% confidence interval.
(twoSidedConfidenceInterval): Compute the two-sided confidence interval range about the mean.

6:43 PM Changeset in webkit [137868] by jonlee@apple.com
  • 10 edits in trunk/Source

Allow built-in PDF plugin and plugin documents to auto-start
https://bugs.webkit.org/show_bug.cgi?id=105000
<rdar://problem/12633351>

Reviewed by Sam Weinig.

Source/WebCore:

Plug-ins in plug-in documents that are in the main frame should always auto-start.

Add a virtual function that returns whether the PluginViewBase should auto-start its plug-in.
Add a callback that gives the HTML plug-in element an opportunity to set the display state
based on the widget.

  • plugins/PluginViewBase.h:

(WebCore::PluginViewBase::shouldAlwaysAutoStart): Added. By default returns false.

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Renamed from
subframeLoaderWillLoadPlugIn() for consistency. This call will also be made a little later
in the subframe loader. Adds a check to see if the plug-in is inside a plug-in document
of the main frame. If so, auto-start.
(WebCore::HTMLPlugInImageElement::subframeLoaderDidCreatePlugIn): Given the widget created,
check to see if it should always auto-start. If so, set the display state to Playing. Otherwise
leave the display state alone.

  • html/HTMLPlugInImageElement.h:
  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::requestPlugin): Move the will-load-plug-in call into loadPlugin().
(WebCore::SubframeLoader::loadPlugin): Immediately prior to the plug-in's creation, make the
will-create call. If a plug-in was made, make the did-create call. The did-create call should
be made before setWidget() since that might initialize the plug-in, which could take the display
state into account if being initialized synchronously.

Source/WebKit2:

Overrides PluginViewBase::shouldAlwaysAutoStart().

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::shouldAlwaysAutoStart): If there's no plug-in, return the default,
otherwise return the plug-in's behavior.

  • WebProcess/Plugins/PluginView.h:
  • WebProcess/Plugins/Plugin.h:

(WebKit::Plugin::shouldAlwaysAutoStart): Added. By default, return false.

  • WebProcess/Plugins/PDF/SimplePDFPlugin.h: Built-in PDF plug-ins should auto-start.
6:29 PM Changeset in webkit [137867] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[TexMap] Perform the layer-tree traversal in GraphicsLayerTextureMapper.
https://bugs.webkit.org/show_bug.cgi?id=103366

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

Currently, Texture Mapper performs the layer-tree traversal in
TextureMapperLayer, while Coordinated Graphics performs the traversal in
CoordinatedGraphicsLayer. This patch makes Texture Mapper perform the
traversal in GraphicsLayerTextureMapper.

Also removed the SyncOptions enum, which is redundant since no client
calls it with ComputationsOnly.

This is in preparation for refactoring TextureMapper to work in an actor
model (http://webkit.org/b/103854).

No new tests. Covered by existing tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly):
(WebCore::GraphicsLayerTextureMapper::flushCompositingState):
(WebCore::GraphicsLayerTextureMapper::didFlushCompositingState):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::flushCompositingStateForThisLayerOnly):

  • platform/graphics/texmap/TextureMapperLayer.h:

(TextureMapperLayer):

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

Coordinated Graphics: Small refactor of CoordinatedLayerTreeHost and CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=104880

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

This patch changes two points.

  1. Remove layerByIDMap() in CoordinatedGraphicsLayer because it is unused.
  2. Remove code swapping m_registeredLayers in CoordinatedLayerTreeHost because

setCoordinator(0) does not call detachLayer().

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):

6:18 PM Changeset in webkit [137865] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove the random crash thread
https://bugs.webkit.org/show_bug.cgi?id=105147

Reviewed by Sam Weinig.

Remove old crashy code.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initialize):

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

Implement authentication for downloads
https://bugs.webkit.org/show_bug.cgi?id=105146
<rdar://problem/12239483>

Reviewed by Sam Weinig.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::initialize):
(WebKit::NetworkProcess::didReceiveMessage):
(WebKit::NetworkProcess::didReceiveSyncMessage):
(WebKit::NetworkProcess::downloadsAuthenticationManager):

  • NetworkProcess/NetworkProcess.h:
  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didReceiveAuthenticationChallenge):

  • WebProcess/Downloads/Download.cpp:

(WebKit::Download::didReceiveAuthenticationChallenge):

  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::downloadsAuthenticationManager):

  • WebProcess/Downloads/DownloadManager.h:
  • WebProcess/Downloads/mac/DownloadMac.mm:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::downloadsAuthenticationManager):
(WebKit::WebProcess::didReceiveSyncMessage):

  • WebProcess/WebProcess.h:
6:10 PM Changeset in webkit [137863] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Coordinated Graphics: Small refactor of CoordinatedLayerTreeHost and CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=104880

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

Delete backing stores explicitly in ~CoordinatedLayerTreeHost().

Clarify the lifecycle of backing stores in CoordinatedGraphicsLayer.
Currently, CoordinatedGraphicsLayer::removeTile() checks if m_coordinator
exists, because ~CoordinatedLayerTreeHost() sets m_coordinator in
CoordinatedGraphicsLayer to 0. This patch purges backing stores before setting
m_coordinator to 0. This change makes code more readable.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
(WebCore::CoordinatedGraphicsLayer::createTile):
(WebCore::CoordinatedGraphicsLayer::updateTile):
(WebCore::CoordinatedGraphicsLayer::removeTile):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):

5:51 PM Changeset in webkit [137862] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

Authentication manager cleanup
https://bugs.webkit.org/show_bug.cgi?id=105144

Reviewed by Sam Weinig.

Some cleanup to make it possible to reuse the authentication manager from the network process.

  • UIProcess/Authentication/AuthenticationChallengeProxy.cpp:

(WebKit::AuthenticationChallengeProxy::AuthenticationChallengeProxy):
(WebKit::AuthenticationChallengeProxy::~AuthenticationChallengeProxy):
(WebKit::AuthenticationChallengeProxy::useCredential):
(WebKit::AuthenticationChallengeProxy::cancel):

  • UIProcess/Authentication/AuthenticationChallengeProxy.h:

(WebKit::AuthenticationChallengeProxy::create):
(AuthenticationChallengeProxy):

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didReceiveAuthenticationChallenge):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveAuthenticationChallenge):

  • WebProcess/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::AuthenticationManager):
(WebKit::AuthenticationManager::setConnection):
(WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
(WebKit::AuthenticationManager::useCredentialForChallenge):

  • WebProcess/Authentication/AuthenticationManager.h:
  • WebProcess/Downloads/Download.cpp:

(WebKit::Download::didReceiveAuthenticationChallenge):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initialize):

  • WebProcess/WebProcess.h:

(WebKit::WebProcess::authenticationManager):
(WebProcess):

5:26 PM Changeset in webkit [137861] by haraken@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/scrollbar-orientation.html.

  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-orientation-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-orientation-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-orientation-expected.png: Added.
5:24 PM Changeset in webkit [137860] by haraken@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/scrollbar-buttons.html.

  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-buttons-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-buttons-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-buttons-expected.png: Added.
5:20 PM Changeset in webkit [137859] by haraken@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/disabled-scrollbar.html.

  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/disabled-scrollbar-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/disabled-scrollbar-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/disabled-scrollbar-expected.png: Added.
5:19 PM Changeset in webkit [137858] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Rudimentary support for main resource downloads
https://bugs.webkit.org/show_bug.cgi?id=105141

Reviewed by Sam Weinig.

For now, instead of converting a main resource load into a download, just cancel it and start
a new separate download.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::downloadRequest):
Call through to the download manager.

(WebKit::NetworkProcess::cancelDownload):
Call through to the download manager.

  • NetworkProcess/NetworkProcess.messages.in:

Add new messages.

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::cancel):
Send the cancel message to the network process when needed.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::download):
Handle the network process case.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::receivedPolicyDecision):
(WebKit::WebPageProxy::decidePolicyForResponse):
Keep track of the current request when calling decidePolicyForResponse.

5:18 PM Changeset in webkit [137857] by haraken@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/basic-scrollbar.html.

  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/basic-scrollbar-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/basic-scrollbar-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/basic-scrollbar-expected.png: Added.
5:15 PM Changeset in webkit [137856] by haraken@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/updating-scrolling-content.html.

  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content-expected.txt: Added.
5:13 PM Changeset in webkit [137855] by haraken@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch.html.

  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch-expected.txt: Added.
5:11 PM Changeset in webkit [137854] by haraken@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/scrolling-without-painting.html.

  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting-expected.txt: Added.
5:09 PM Changeset in webkit [137853] by haraken@chromium.org
  • 1 edit
    6 adds in trunk/LayoutTests

Unreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/remove-overflow-crash2.html.

  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/overflow/remove-overflow-crash2-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/overflow/remove-overflow-crash2-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/remove-overflow-crash2-expected.png: Added.
5:06 PM Changeset in webkit [137852] by haraken@chromium.org
  • 2 edits
    1 move in trunk/LayoutTests

Unreviewed. Rebaselined webkitConvertPoint.html.

  • platform/chromium-mac/fast/dom/Window/webkitConvertPoint-expected.txt:
  • platform/chromium/fast/dom/Window/webkitConvertPoint-expected.txt: Renamed from LayoutTests/platform/chromium-win/fast/dom/Window/webkitConvertPoint-expected.txt.
5:03 PM Changeset in webkit [137851] by haraken@chromium.org
  • 1 edit
    4 adds in trunk/LayoutTests

Unreviewed. Rebaselined pixels of transformed-iframe-copy-on-scroll.html.

  • platform/chromium-mac-lion/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
  • platform/chromium-mac/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
  • platform/chromium-mac/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.txt: Added.
4:59 PM Changeset in webkit [137850] by haraken@chromium.org
  • 2 edits
    1 copy in trunk/LayoutTests

Unreviewed. Rebaselined images for fast/inline/justify-emphasis-inline-box.html.

  • platform/chromium-mac-lion/fast/inline/justify-emphasis-inline-box-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/inline/justify-emphasis-inline-box-expected.png.
  • platform/chromium-mac/fast/inline/justify-emphasis-inline-box-expected.png:
4:57 PM Changeset in webkit [137849] by haraken@chromium.org
  • 1 edit
    5 deletes in trunk/LayoutTests

Unreviewed. Rebaselined fast/css/nested-layers-with-hover.html.

  • platform/chromium-win/fast/css/nested-layers-with-hover-expected.txt: Removed.
  • platform/chromium/fast/css/nested-layers-with-hover-expected.txt: Removed.
  • platform/efl/fast/css/nested-layers-with-hover-expected.txt: Removed.
  • platform/gtk/fast/css/nested-layers-with-hover-expected.txt: Removed.
  • platform/qt/fast/css/nested-layers-with-hover-expected.txt: Removed.
2:38 PM Changeset in webkit [137848] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

[WebKit2] CustomProtocolManager should intercept messages of class MessageClassCustomProtocolManager sent to the network process
https://bugs.webkit.org/show_bug.cgi?id=105137

Reviewed by Anders Carlsson.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::didReceiveMessage):

1:50 PM Changeset in webkit [137847] by leviw@chromium.org
  • 66 edits
    3 adds in trunk

Push pixel snapping logic into TransformState
https://bugs.webkit.org/show_bug.cgi?id=101779

Reviewed by Simon Fraser.

Source/WebCore:

The old SnapOffsetForTransforms behavior fell apart when there was content nested in
multiple levels of containers with sub-pixel offsets. The point of this flag was to
mirror the pixel snapping that occurs in paint, where offsets are accumulated bottom-
up through the render tree and snapped at the end. This change eliminates this flag
and pushes pixel snapping logic down into TransformState.

TransformState now tracks a LayoutSize accumulated offset when there's no transform
or we're just translating. We then snap and apply this offset before accumulating
values into a transform, and when returning planar coordinates to callers.

Test: fast/sub-pixel/transformed-iframe-copy-on-scroll.html added,

fast/sub-pixel/sub-pixel-iframe-copy-on-scroll.html modified to also catch this bug.

  • platform/graphics/transforms/TransformState.cpp:

(WebCore::TransformState::operator=): Pass accumulated offset.
(WebCore::TransformState::translateTransform): Extracted this functionality for
re-use when applying the accumulated offset, or accumulating from a call to move.
(WebCore::TransformState::translateMappedCoordinates): Same as above when we're not
acculating into a transform.
(WebCore::TransformState::move): Changed to accumulate into m_accumulatedOffset when
not accumulating into a transform.
(WebCore::TransformState::applyAccumulatedOffset):
(WebCore::TransformState::applyTransform): Applies the accumulated offset before the
transform.
(WebCore::TransformState::flatten): Ditto for flattening.
(WebCore::TransformState::mappedPoint): Translates by the accumulated offset before
returning.
(WebCore::TransformState::mappedQuad): Ditto.

  • platform/graphics/transforms/TransformState.h:

(TransformState): Added m_accumulatedOffset.

  • rendering/RenderGeometryMap.cpp:

(WebCore::RenderGeometryMap::mapToContainer): When not using a transform, we still need
to snap our offset before applying to our float result. Also, flatten when we have a
non-uniform step.

  • rendering/RenderGeometryMap.h:

(RenderGeometryMap): Remove use of SnapOffsetForTransforms.

Everything below simply drops the use of SnapOffsetForTransforms:

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::getUpperLeftCorner):

  • dom/MouseRelatedEvent.cpp:

(WebCore::MouseRelatedEvent::computeRelativePosition):

  • editing/FrameSelection.cpp:

(WebCore::CaretBase::absoluteBoundsForLocalRect):

  • editing/RenderedPosition.cpp:

(WebCore::RenderedPosition::absoluteRect):

  • editing/VisiblePosition.cpp:

(WebCore::VisiblePosition::absoluteCaretBounds):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):

  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::setPositionFromPoint):

  • html/shadow/SpinButtonElement.cpp:

(WebCore::SpinButtonElement::defaultEventHandler):

  • page/FrameView.cpp:

(WebCore::FrameView::convertFromRenderer):
(WebCore::FrameView::convertToRenderer):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paintDocumentMarker):
(WebCore::InlineTextBox::paintTextMatchMarker):
(WebCore::InlineTextBox::computeRectForReplacementMarker):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::mapLocalToContainer):
(WebCore::RenderBox::pushMappingToContainer):

  • rendering/RenderBox.h:

(RenderBox):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::computeStickyPositionConstraints):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):

  • rendering/RenderFrameSet.cpp:

(WebCore::RenderFrameSet::userResize):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::mapLocalToContainer):
(WebCore::RenderInline::pushMappingToContainer):

  • rendering/RenderInline.h:

(RenderInline):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::absoluteToContents):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::childrenClipRect):
(WebCore::RenderLayer::selfClipRect):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::contentsVisible):

  • rendering/RenderMediaControls.cpp:

(WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::showPopup):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::absoluteFocusRingQuads):

  • rendering/RenderObject.h:
  • rendering/RenderText.cpp:

(WebCore::RenderText::absoluteRectsForRange):
(WebCore::RenderText::absoluteQuads):
(WebCore::RenderText::absoluteQuadsForRange):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::volumeSliderOffsetFromMuteButton):

  • rendering/RenderView.cpp:

(WebCore::RenderView::selectionBounds):

  • rendering/RenderView.h:

(RenderView):

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::updateWidgetGeometry):

  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::mapLocalToContainer):

  • rendering/svg/RenderSVGForeignObject.h:

(RenderSVGForeignObject):

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::mapLocalToContainer):

  • rendering/svg/RenderSVGInline.h:

(RenderSVGInline):

  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::RenderSVGModelObject::mapLocalToContainer):

  • rendering/svg/RenderSVGModelObject.h:

(RenderSVGModelObject):

  • rendering/svg/RenderSVGRoot.h:

(RenderSVGRoot):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::mapLocalToContainer):

  • rendering/svg/RenderSVGText.h:

(RenderSVGText):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::mapLocalToContainer):

  • rendering/svg/SVGRenderSupport.h:

(SVGRenderSupport):

Source/WebKit/chromium:

Eliminating use of SnapOffsetForTransforms as it's no longer needed.

  • src/FindInPageCoordinates.cpp:

(WebKit::toNormalizedRect):

  • src/LinkHighlight.cpp:

(WebKit::convertTargetSpaceQuadToCompositedLayer):

  • src/WebInputEventConversion.cpp:

(WebKit::convertAbsoluteLocationForRenderObject):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::windowToLocalPoint):

Source/WebKit/mac:

  • WebView/WebFullScreenController.mm:

(screenRectOfContents): Removed SnapOffsetForTransforms as it's no longer needed.

Source/WebKit2:

Eliminating use of SnapOffsetForTransforms as it's no longer needed.

  • WebProcess/FullScreen/WebFullScreenManager.cpp:

(WebKit::screenRectOfContents):

LayoutTests:

  • fast/dom/Window/webkitConvertPoint.html: Updating values to match corrected pixel snapping.
  • fast/multicol/break-properties.html: Fixing sub-pixel layout feature checking.
  • fast/multicol/vertical-lr/break-properties.html: Ditto.
  • fast/multicol/vertical-rl/break-properties.html: Ditto.
  • fast/sub-pixel/sub-pixel-iframe-copy-on-scroll.html: Updating to catch the bug where the old

pixel snapping logic did the wrong thing when nested.

  • fast/sub-pixel/transformed-iframe-copy-on-scroll.html: Added.
  • platform/chromium-linux/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png:
  • platform/chromium-linux/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
  • platform/chromium-linux/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.txt: Added.
  • platform/chromium-win/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.txt:
  • platform/chromium/TestExpectations:
12:57 PM Changeset in webkit [137846] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Rename WebFrame::convertHandleToDownload to convertMainResourceLoadToDownload
https://bugs.webkit.org/show_bug.cgi?id=105134

Reviewed by Sam Weinig.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::convertMainResourceLoadToDownload):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::convertMainResourceLoadToDownload):

  • WebProcess/WebPage/WebFrame.h:

(WebFrame):

12:30 PM Changeset in webkit [137845] by andersca@apple.com
  • 37 edits in trunk/Source

Rename FrameLoaderClient::download to convertMainResourceLoadToDownload
https://bugs.webkit.org/show_bug.cgi?id=105122

Reviewed by Andreas Kling.

Source/WebCore:

Rename FrameLoaderClient::download to convertMainResourceLoadToDownload and change it to take a MainResourceLoader instead
of a ResourceHandle, since resource handles may not exist when loading isn't done in the web process.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/EmptyClients.h:
  • loader/FrameLoaderClient.h:

(WebCore):
(FrameLoaderClient):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::continueAfterContentPolicy):

Source/WebKit/blackberry:

Update for WebCore changes.

  • Api/WebPage.h:
  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::convertMainResourceLoadToDownload):

  • WebCoreSupport/FrameLoaderClientBlackBerry.h:

(FrameLoaderClientBlackBerry):

Source/WebKit/chromium:

Update for WebCore changes.

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::convertMainResourceLoadToDownload):

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

Source/WebKit/efl:

Update for WebCore changes.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::convertMainResourceLoadToDownload):

  • WebCoreSupport/FrameLoaderClientEfl.h:

(FrameLoaderClientEfl):

Source/WebKit/gtk:

Update for WebCore changes.

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::FrameLoaderClient::convertMainResourceLoadToDownload):

  • WebCoreSupport/FrameLoaderClientGtk.h:

(FrameLoaderClient):

Source/WebKit/mac:

Update for WebCore changes.

  • WebCoreSupport/WebFrameLoaderClient.h:

(WebFrameLoaderClient):

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::convertMainResourceLoadToDownload):

Source/WebKit/qt:

Update for WebCore changes.

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::convertMainResourceLoadToDownload):

  • WebCoreSupport/FrameLoaderClientQt.h:

(FrameLoaderClientQt):

Source/WebKit/win:

Update for WebCore changes.

  • WebFrame.cpp:

(WebFrame::convertMainResourceLoadToDownload):

  • WebFrame.h:

Source/WebKit/wince:

Update for WebCore changes.

  • WebCoreSupport/FrameLoaderClientWinCE.cpp:

(WebKit::FrameLoaderClientWinCE::convertMainResourceLoadToDownload):

  • WebCoreSupport/FrameLoaderClientWinCE.h:

(FrameLoaderClientWinCE):

Source/WebKit/wx:

Update for WebCore changes.

  • WebKitSupport/FrameLoaderClientWx.cpp:

(WebCore::FrameLoaderClientWx::convertMainResourceLoadToDownload):

  • WebKitSupport/FrameLoaderClientWx.h:

(FrameLoaderClientWx):

Source/WebKit2:

Update for WebCore changes.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::convertMainResourceLoadToDownload):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

(WebFrameLoaderClient):

11:26 AM Changeset in webkit [137844] by eric.carlson@apple.com
  • 8 edits in trunk

Remove in-band text tracks when media element's src changes
https://bugs.webkit.org/show_bug.cgi?id=105081

Reviewed by Sam Weinig.

Source/WebCore:

No new tests, media/track/track-in-band.html was updated to test this change.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerDidRemoveTrack): Move some code into removeTrack.
(WebCore::HTMLMediaElement::removeTrack): New, remove a track and all of its cues.
(WebCore::HTMLMediaElement::removeAllInbandTracks): New, remove all in-band tracks.
(WebCore::HTMLMediaElement::clearMediaPlayer): Call removeAllInbandTracks.

  • html/HTMLMediaElement.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::~MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Call clearTextTracks.
(WebCore::MediaPlayerPrivateAVFoundationObjC::clearTextTracks): Remove all tracks from client.

LayoutTests:

Extend test to verify that all in-band tracks are removed from the media element
when its src changes.

  • media/track/track-in-band-expected.txt:
  • media/track/track-in-band.html:
10:36 AM Changeset in webkit [137843] by zhajiang@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] GUIMark3 page is rendered at a large scale during history navigation back
https://bugs.webkit.org/show_bug.cgi?id=105130

Patch by Jacky Jiang <zhajiang@rim.com>.
Reviewed by George Staikos.

PR: 265999
During history navigation, UI thread can blit the contents at a bad
view state before WebKit thread restores the view state.
Suspend screen updates before goBackOrForward() and resume thereafter
so that screen can be updated after the correct view state is updated.
No need to render or blit here, as goBackOrForward() can dispatch a
message to WebKit thread to do that in WebPagePrivate::restoreHistoryViewState().

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::goBackOrForward):

10:20 AM Changeset in webkit [137842] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark new editing/pasteboard/copy-paste-ruby-text.html test introduced
in r137477 as expected to fail for EFL port due to missing PasteBoard
implementation.

  • platform/efl/TestExpectations:
10:14 AM Changeset in webkit [137841] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix assertions when doing a full repaint of compositing layers
https://bugs.webkit.org/show_bug.cgi?id=105128

Reviewed by Dan Bernstein.

In r137811 I added code to repaint all compositing layers when FrameView::layout()
is doing a full repaint. However, this code needs to avoid calling setContentsNeedDisplay()
on layers that don't actually draw their own content: those that draw into an ancestor,
and those that draw into a window.

Fixes assertions in existing tests.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateAfterLayout):

10:10 AM Changeset in webkit [137840] by Christophe Dumez
  • 1 edit
    2 adds in trunk/LayoutTests

Unreviewed EFL gardening.

Generate EFL expectation for new fast/inline/justify-emphasis-inline-box.html
test introduced in r137786.

  • platform/efl/fast/inline/justify-emphasis-inline-box-expected.png: Added.
  • platform/efl/fast/inline/justify-emphasis-inline-box-expected.txt: Added.
9:59 AM Changeset in webkit [137839] by commit-queue@webkit.org
  • 4 edits in trunk

[GTK][AC] Build failure with an option --with-acceleration-backend=clutter
https://bugs.webkit.org/show_bug.cgi?id=105027

Patch by ChangSeok Oh <ChangSeok Oh> on 2012-12-16
Reviewed by Gustavo Noronha Silva.

.:

I turned off opengl related variables, enable_glx, enable_egl and enable_gles2
when selecting clutter as the acceleration-backend. Because they seem useless for the AC by clutter.

  • configure.ac:

Source/WebCore:

GLContext.* and RedirectedXCompositeWindow.* are meaningful only if opengl is
a backend for the AC. So I wrap them in USE_OPENGL.

No new tests. This patch fixes a build fauilure, not adding new features.

  • GNUmakefile.list.am:
7:41 AM Changeset in webkit [137838] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[GStreamer] create playbin in ::load(), not in player constructor
https://bugs.webkit.org/show_bug.cgi?id=103898

Patch by Víctor Manuel Jáquez Leal <vjaquez@igalia.com> on 2012-12-16
Reviewed by Philippe Normand.

This patch moves the instantiation of the playbin pipeline into the
WebCore::MediaPlayerPrivateGStreamer::load() method, so the pipeline
layout can reflect other predefined settings such as audio pitch
preservation in variable playback rate scenarios

No new tests. Covered by existing tests.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::load):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

(MediaPlayerPrivateGStreamer):

6:53 AM Changeset in webkit [137837] by Christophe Dumez
  • 10 edits in trunk/LayoutTests

Unreviewed rebaseline.

Rebaseline several compositing tests after r137798.

  • compositing/iframes/overlapped-nested-iframes-expected.txt:
  • compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
  • compositing/rtl/rtl-iframe-absolute-expected.txt:
  • compositing/rtl/rtl-iframe-fixed-expected.txt:
  • compositing/rtl/rtl-iframe-relative-expected.txt:
  • compositing/tiling/crash-reparent-tiled-layer-expected.txt:
  • compositing/tiling/huge-layer-add-remove-child-expected.txt:
  • compositing/tiling/huge-layer-with-layer-children-expected.txt:
  • compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
3:00 AM Changeset in webkit [137836] by mihnea@adobe.com
  • 3 edits
    8 adds in trunk

[CSSRegions] Pseudo-elements should not be directly collected into a named flow
https://bugs.webkit.org/show_bug.cgi?id=105046

Reviewed by Abhishek Arya.

Source/WebCore:

Prevent pseudo-elements to be collected into a named-flow by bailing out early in the collecting stage.
Following the CSSRegions spec, http://dev.w3.org/csswg/css3-regions/#flow-into, the pseudo-elements
like ::before/::after/::first-letter/::first-line are not allowed to become content nodes, being directly
collected into a flow thread.

Tests: fast/regions/pseudo-after-content-node.html

fast/regions/pseudo-before-content-node.html
fast/regions/pseudo-first-letter-content-node.html
fast/regions/pseudo-first-line-content-node.html

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):

LayoutTests:

Prevent pseudo-elements to be collected into a named-flow by bailing out early in the collecting stage.

Following the CSSRegions spec, http://dev.w3.org/csswg/css3-regions/#flow-into, the pseudo-elements
like ::before/::after/::first-letter/::first-line are not allowed to become content nodes, being directly
collected into a flow thread.

  • fast/regions/pseudo-after-content-node-expected.txt: Added.
  • fast/regions/pseudo-after-content-node.html: Added.
  • fast/regions/pseudo-before-content-node-expected.txt: Added.
  • fast/regions/pseudo-before-content-node.html: Added.
  • fast/regions/pseudo-first-letter-content-node-expected.txt: Added.
  • fast/regions/pseudo-first-letter-content-node.html: Added.
  • fast/regions/pseudo-first-line-content-node-expected.txt: Added.
  • fast/regions/pseudo-first-line-content-node.html: Added.
2:01 AM Changeset in webkit [137835] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Source/WebCore: [CSS Regions] broken feature detection: body.webkitRegionOverset and body.webkitGetRegionFlowRanges shouldn't succeed when disabled at runtime
https://bugs.webkit.org/show_bug.cgi?id=99707

Patch by Mihai Maerean <Mihai Maerean> on 2012-12-16
Reviewed by Hajime Morita.

The bug is that the CSS Regions feature leaks information at run-time. There are JS properties that exist even
if the feature is disabled at run-time (document.webkitGetNamedFlows, document.body.webkitRegionOverset,
document.body.webkitGetRegionFlowRanges and window.WebKitCSSRegionRule).

The fix is to add V8EnabledAtRuntime=cssRegions in the IDL files to the properties that leak information and to
the interfaces that are the type of those properties.

Test: fast/regions/region-leak-js-information-when-disabled-at-runtime.html

  • css/WebKitCSSRegionRule.idl:

added V8EnabledAtRuntime=cssRegions for the WebKitCSSRegionRule interface.

  • dom/DOMNamedFlowCollection.idl:

added V8EnabledAtRuntime=cssRegions for the DOMNamedFlowCollection interface.

  • dom/Document.idl:

added V8EnabledAtRuntime=cssRegions for the webkitGetNamedFlows method.

  • dom/Element.idl:

added V8EnabledAtRuntime=cssRegions for the webkitRegionOverset attribute.
added V8EnabledAtRuntime=cssRegions for the webkitGetRegionFlowRanges method.

  • page/DOMWindow.idl:

added V8EnabledAtRuntime=cssRegions for the WebKitCSSRegionRule attribute.

LayoutTests: [CSS Regions] broken feature detection: body.webkitRegionOverset and body.webkitGetRegionFlowRanges shouldn't succeed when disabled at runtime.
https://bugs.webkit.org/show_bug.cgi?id=99707

Patch by Mihai Maerean <Mihai Maerean> on 2012-12-16
Reviewed by Hajime Morita.

The bug is that the CSS Regions feature leaks information at run-time. There are JS properties that exist even
if the feature is disabled at run-time (document.webkitGetNamedFlows, document.body.webkitRegionOverset,
document.body.webkitGetRegionFlowRanges and window.WebKitCSSRegionRule).
The best LayoutTest would test that the properties exist when the feature is enabled and that the properties
just aren't there when the feature is disabled.
But, since during running Layout Tests the feature is enabled by default and switching the
RuntimeEnabledFeatures requires the process to be restarted and that is currently not possible, we can only test
that the properties exist and have the proper type.

  • fast/regions/region-leak-js-information-when-disabled-at-runtime-expected.txt: Added.
  • fast/regions/region-leak-js-information-when-disabled-at-runtime.html: Added.

Dec 15, 2012:

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

[chromium] More expectations updates for composited scrolling.

Unreviewed change. Updating expectations.

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

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

[chromium] More expectations updates for composited scrolling.

Unreviewed change. Updating expectations.

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

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

Another build fix.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createDownloadProxy):

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

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

Reviewed by Anders Carlsson.

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

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

  • NetworkProcess/NetworkProcess.cpp:

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

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:

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

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

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

  • UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:

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

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

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

  • UIProcess/Network/NetworkProcessProxy.cpp:

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

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

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

  • WebProcess/WebProcess.cpp:

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

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

Happy little Qt build fix.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::download):

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

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

Unreviewed change. Updating expectations.

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

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

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

Reviewed by Adrienne Walker.

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

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

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

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

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

(WebCore):

  • rendering/RenderLayer.cpp:

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

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

(WebCore::RenderLayer::updateDescendantDependentFlags):

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

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

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

(WebCore::RenderLayer::needsCompositedScrolling):

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

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

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

(WebCore::RenderLayer::updateLayerListsIfNeeded):

We call updateCanSafelyEstablishStackingContext here, if necessary.

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

usesCompositedScrolling -> needsCompositedScrolling

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

Dirties and sets the out of flow positioned descendant state.

(WebCore::RenderLayer::styleChanged):

  • rendering/RenderLayer.h:

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

  • rendering/RenderLayerBacking.cpp:

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

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

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

  • rendering/RenderLayerCompositor.h:

(WebCore::RenderLayerCompositor::setShouldReevaluateCompositingAfterLayout):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::setEnableCompositingForOverflowScroll):

Allows enabling the setting in layout tests.

(WebCore):

  • testing/InternalSettings.h:

(InternalSettings):

  • testing/InternalSettings.idl:

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

Reviewed by Adrienne Walker.

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

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

Unreviewed. Fix make distcheck.

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

bindings headers.

  • platform/ScrollAnimatorNone.cpp: Include PlatformGestureEvent.h

only if gesture events are enabled.

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

Build fix.

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

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

Reviewed by Sam Weinig.

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

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

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

Reviewed by Sam Weinig.

Start using the download manager in the network process.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

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

  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:

Add StartDownload message.

  • NetworkProcess/NetworkProcess.cpp:

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

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

  • UIProcess/Network/NetworkProcessProxy.cpp:

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

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

(WebKit::DownloadManager::downloadProxyConnection):

  • WebProcess/Downloads/DownloadManager.h:

Rename connection to downloadProxyConnection.

  • WebProcess/WebPage/WebFrame.cpp:

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

  • WebProcess/WebProcess.cpp:

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

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

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

Reviewed by Alexey Proskuryakov.

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

  • WebProcess/mac/WebProcessMac.mm:

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

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

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

Reviewed by Anders Carlsson.

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

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess):

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

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

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

Reviewed by Anders Carlsson.

  • NetworkProcess/NetworkProcess.cpp:

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

  • NetworkProcess/NetworkProcess.h:

(NetworkProcess):

  • NetworkProcess/mac/NetworkProcessMac.mm:

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

  • Shared/Network/NetworkProcessCreationParameters.cpp:

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

  • Shared/Network/NetworkProcessCreationParameters.h:

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

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didFinishLaunching):

  • UIProcess/Network/NetworkProcessProxy.h:

(NetworkProcessProxy):

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

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

  • UIProcess/WebContext.h:

(WebKit):
(WebContext):

  • UIProcess/mac/WebContextMac.mm:

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

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

Clean up the previous build fix; access m_networkProcess directly.

  • UIProcess/WebContext.cpp:

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

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

Fix the build.

  • UIProcess/WebContext.cpp:

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

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

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

Reviewed by Anders Carlsson.

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

  • NetworkProcess/NetworkProcess.cpp:

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

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

unregistration messages for the NetworkProcess.

  • Shared/Network/NetworkProcessCreationParameters.cpp:

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

  • Shared/Network/NetworkProcessCreationParameters.h: Define

urlSchemesRegisteredForCustomProtocols.

  • UIProcess/Network/mac/NetworkProcessProxyMac.mm:

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

  • UIProcess/WebContext.cpp:

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

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

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

  • WebProcess/mac/WebProcessMac.mm:

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

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

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

Reviewed by Rob Buis.

Source/WebCore:

Call Screen to retrieve current key modifiers.

Internally reviewed by Gen Mak.

  • platform/PlatformMouseEvent.h:

(PlatformMouseEvent):

  • platform/blackberry/PlatformKeyboardEventBlackBerry.cpp:

(WebCore::PlatformKeyboardEvent::getCurrentModifierState):

  • platform/blackberry/PlatformMouseEventBlackBerry.cpp:

(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/blackberry/PlatformTouchEventBlackBerry.cpp:

(WebCore::PlatformTouchEvent::PlatformTouchEvent):

Source/WebKit/blackberry:

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

Internally reviewed by Gen Mak.

  • Api/WebPage.cpp:

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

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

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

  • WebKitSupport/TouchEventHandler.h:

(TouchEventHandler):

Tools:

Update DRT to new api.

Internally reviewed by Gen Mak.

  • DumpRenderTree/blackberry/EventSender.cpp:

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

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

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

Reviewed by Rob Buis.

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

Internally reviewed by Jeff Rogers.

  • WebKitSupport/InputHandler.cpp:

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

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

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

Reviewed by Sam Weinig.

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

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

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didClose):

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

(WebProcess):

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

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

PR 265603

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

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

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

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

  • platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:

(WebCore::CookieDatabaseBackingStore::invokeOpen):

  • platform/blackberry/CookieManager.cpp:

(WebCore::cookieManager):

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

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

Reviewed by Sam Weinig.

  • UIProcess/Network/NetworkProcessProxy.cpp:

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

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

(WebKit::WebContext::createDownloadProxy):

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

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

Reviewed by Andreas Kling.

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

  • UIProcess/WebContext.cpp:

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

  • UIProcess/WebContext.h:

(WebContext):

  • UIProcess/WebProcessProxy.cpp:

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

  • UIProcess/WebProcessProxy.h:

(WebProcessProxy):

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

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

Reviewed by Dan Bernstein.

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

  • ManualTests/resize-repaint.html: Added.

Source/WebCore:

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

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

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

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

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

  • page/FrameView.cpp:

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

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

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

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

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

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

(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):

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

Source/WebKit/chromium:

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

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

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

Reviewed by Alexey Proskuryakov.

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

  • UIProcess/Downloads/DownloadProxy.cpp:

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

  • UIProcess/Downloads/DownloadProxy.h:

(DownloadProxy):

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

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

Reviewed by Sam Weinig.

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

  • UIProcess/Downloads/DownloadProxy.cpp:

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

  • UIProcess/Downloads/DownloadProxyMap.cpp:

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

  • UIProcess/Downloads/DownloadProxyMap.h:

(DownloadProxyMap):

  • UIProcess/WebContext.cpp:

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

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

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

Reviewed by Alexey Proskuryakov.

Move to having the WebContext own and manage the NetworkProcessProxy.

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

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

  • UIProcess/Network/NetworkProcessProxy.h:

(WebKit):
(NetworkProcessProxy):

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

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

  • UIProcess/WebContext.h:

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

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::getNetworkProcessConnection):

  • UIProcess/mac/WebContextMac.mm:

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

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

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

Reviewed by Andy Estes.

  • UIProcess/Downloads/DownloadProxy.cpp:

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

  • UIProcess/Downloads/DownloadProxy.h:

(WebKit):
(DownloadProxy):

  • UIProcess/Downloads/DownloadProxyMap.cpp:

(WebKit::DownloadProxyMap::createDownloadProxy):

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

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

Reviewed by Sam Weinig.

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

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

Try to fix the Qt build.

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

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

Reviewed by Sam Weinig.

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

  • UIProcess/Downloads/DownloadProxyMap.cpp:

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

  • UIProcess/Downloads/DownloadProxyMap.h:

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

  • UIProcess/WebContext.cpp:

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

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

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

Reviewed by Anders Carlsson.

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

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

(WebKit):
(WebKit::calculateCacheSizes):

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

(WebProcess):

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

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

Reviewed by Sam Weinig.

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

  • UIProcess/Downloads/DownloadProxy.cpp:

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

  • UIProcess/Downloads/DownloadProxyMap.cpp:

(WebKit::DownloadProxyMap::~DownloadProxyMap):

  • UIProcess/Downloads/DownloadProxyMap.h:

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

  • UIProcess/WebContext.cpp:

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

  • UIProcess/WebContext.h:

(WebContext):

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

Fix build.

  • platform/graphics/ca/GraphicsLayerCA.h:

Remove an unused member variable.

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

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

Reviewed by Darin Adler.

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

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

  • page/FrameView.cpp:

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

  • rendering/RenderLayerBacking.cpp:

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

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

(RenderLayerCompositor):

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

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

Reviewed by Philippe Normand.

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

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

(XvfbDriver._start):

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

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

Source/WebCore:

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

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

Covered by existing tests.

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

(WebCore::GraphicsLayerTextureMapper::setContentsToSolidColor):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

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

  • platform/graphics/texmap/TextureMapperLayer.cpp:

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

  • platform/graphics/texmap/TextureMapperLayer.h:

(State):

Source/WebKit2:

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

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

  • Shared/CoordinatedGraphics/CoordinatedLayerInfo.h:

(CoordinatedLayerInfo):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::setLayerState):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setContentsToSolidColor):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayer):

LayoutTests:

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

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

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

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

Reviewed by Martin Robinson.

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

  • WebProcess/WebPage/gtk/ChunkedUpdateDrawingAreaGtk.cpp:

(WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):

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

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

Not reviewed.

Greening the Qt Linux Release Minimal bot.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

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

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

Not reviewed.

Source/WebCore:

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

No new tests.

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

(WebCore::DatabaseManager::DatabaseManager):

  • Modules/webdatabase/DatabaseManager.h:

(DatabaseManager):

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

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

Source/WebKit/efl:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/PlatformStrategiesEfl.cpp:

(PlatformStrategiesEfl::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesEfl.h:

(PlatformStrategiesEfl):

Source/WebKit/gtk:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/PlatformStrategiesGtk.cpp:

(PlatformStrategiesGtk::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesGtk.h:

(PlatformStrategiesGtk):

Source/WebKit/mac:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

  • WebCoreSupport/WebPlatformStrategies.mm:

(WebPlatformStrategies::createDatabaseStrategy):

Source/WebKit/qt:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/PlatformStrategiesQt.cpp:

(PlatformStrategiesQt::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesQt.h:

(PlatformStrategiesQt):

Source/WebKit/win:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/WebPlatformStrategies.cpp:

(WebPlatformStrategies::createDatabaseStrategy):

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

Source/WebKit/wince:

Merged from r137767. Previously reviewed by Sam Weinig.

  • WebCoreSupport/PlatformStrategiesWinCE.cpp:

(PlatformStrategiesWinCE::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesWinCE.h:

(PlatformStrategiesWinCE):

Source/WebKit2:

Merged from r137767. Previously reviewed by Sam Weinig.

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

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

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

Dec 14, 2012:

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

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

Reviewed by Alexey Proskuryakov.

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::initWithFrame):

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

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

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

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

  • chromium/public/WebInputHandler.h:

(WebInputHandler):

  • chromium/public/WebLayerTreeView.h:

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

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

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

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

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

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

  • public/WebView.h:

(WebView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::resetScrollAndScaleState):

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

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

Reviewed by Tim Horton.

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

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

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

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

Reviewed by Andreas Kling.

This simplifies the WebContext message dispatch code somewhat.

  • UIProcess/Downloads/DownloadProxy.cpp:

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

  • UIProcess/Downloads/DownloadProxy.h:

(DownloadProxy):

  • UIProcess/WebContext.cpp:

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

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

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

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

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

Source/Platform:

  • chromium/public/WebInputHandler.h:

(WebInputHandler):

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):

Source/WebKit/chromium:

  • src/WebCompositorInputHandlerImpl.cpp:

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

  • src/WebCompositorInputHandlerImpl.h:

(WebCompositorInputHandlerImpl):

  • src/WebViewImpl.cpp:

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

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

Versioning.

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

New Tag.

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

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

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

Source/WebCore:

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

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

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

  • platform/graphics/SimpleFontData.h:

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

  • platform/graphics/WidthIterator.cpp:

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

LayoutTests:

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

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

Unreviewed bug fix after r137782.

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

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

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

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

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

Source/WebCore:

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

(WebCore::DatabaseManager::DatabaseManager):

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

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

Source/WebKit/efl:

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

(PlatformStrategiesEfl):

Source/WebKit/gtk:

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

(PlatformStrategiesGtk):

Source/WebKit/mac:

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

  • WebCoreSupport/WebPlatformStrategies.mm:

Source/WebKit/qt:

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

(PlatformStrategiesQt):

Source/WebKit/win:

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

(WebPlatformStrategies):

Source/WebKit/wince:

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

(PlatformStrategiesWinCE):

Source/WebKit2:

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

(WebPlatformStrategies):

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

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

Reviewed by Anders Carlsson.

Make response maps per-connection.

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

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

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

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

Reviewed by Eric Carlson.

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

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

  • platform/graphics/TextTrackRepresentation.h: Added.

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

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

  • platform/graphics/TextTrackRepresentation.cpp: Added.

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

Add methods to MediaPlayerPrivateIOS to handle the TextTrackRepresentation.

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

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

Expose those methods via HTMLMediaElement:

  • html/HTMLMediaElement.cpp:

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

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

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

  • platform/graphics/MediaPlayer.h:

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

  • platform/graphics/MediaPlayerPrivate.h:

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

  • html/shadow/MediaControlElements.cpp:

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

  • html/shadow/MediaControlElements.h:

Add the new files to the project.

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

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

Reviewed by Eric Seidel.

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

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

(Port.init):

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

(PortTest.make_port):

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

(TestWebKitPort.init):

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

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

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

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

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

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

Reviewed by Eric Seidel.

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

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

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

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

(.):

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

(.):

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

Merge r118820.

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

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

Reviewed by Kevin Decker.

  • English.lproj/Localizable.strings:

Regenerated.

  • platform/LocalizedStrings.cpp:

(WebCore::insecurePluginVersionText):
Changed this string.

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

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

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

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

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

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

Reviewed by Darin Fisher.

Source/WebCore:

  • loader/FrameLoaderClient.h:

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

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::setName):

Source/WebKit/chromium:

  • public/WebFrameClient.h:

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

  • src/FrameLoaderClientImpl.cpp:

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

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

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

Versioning.

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

New Tag.

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

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

Reviewed by Tony Chang.

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

  • src/IDBCallbacksProxy.cpp:

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

  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

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

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

Reviewed by Tony Gentilcore.

Source/WebCore:

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

  • page/PerformanceResourceTiming.cpp:

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

  • page/PerformanceResourceTiming.h:

(PerformanceResourceTiming):

LayoutTests:

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

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

Reviewed by Eric Carlson.

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

  • html/shadow/MediaControlElements.cpp:

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

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

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

Reviewed by Dirk Pranke.

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

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

(Printer.print_workers_and_shards):

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

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

Reviewed by Eric Seidel.

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

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

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

Reviewed by Andreas Kling.

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

  • UIProcess/Downloads/DownloadProxy.cpp:

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

  • UIProcess/Downloads/DownloadProxyMap.cpp:

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

  • UIProcess/Downloads/DownloadProxyMap.h:

(DownloadProxyMap):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createDownloadProxy):

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

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

Reviewed by Sam Weinig.

The database server is currently a placeholder that does nothing.

Source/WebCore:

No new tests.

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

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

  • Modules/webdatabase/DBBackendServer.h: Added.

(DBBackend):

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::DatabaseManager):

  • Modules/webdatabase/DatabaseManager.h:

(WebCore):
(DatabaseManager):

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

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

  • platform/DatabaseStrategy.h: Added.

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

  • platform/PlatformStrategies.h:

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

Source/WebKit/efl:

  • WebCoreSupport/PlatformStrategiesEfl.cpp:

(PlatformStrategiesEfl::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesEfl.h:

(PlatformStrategiesEfl):

Source/WebKit/gtk:

  • WebCoreSupport/PlatformStrategiesGtk.cpp:

(PlatformStrategiesGtk::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesGtk.h:

(PlatformStrategiesGtk):

Source/WebKit/mac:

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

  • WebCoreSupport/WebPlatformStrategies.mm:

(WebPlatformStrategies::createDatabaseStrategy):

Source/WebKit/qt:

  • WebCoreSupport/PlatformStrategiesQt.cpp:

(PlatformStrategiesQt::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesQt.h:

(PlatformStrategiesQt):

Source/WebKit/win:

  • WebCoreSupport/WebPlatformStrategies.cpp:

(WebPlatformStrategies::createDatabaseStrategy):

  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

Source/WebKit/wince:

  • WebCoreSupport/PlatformStrategiesWinCE.cpp:

(PlatformStrategiesWinCE::createDatabaseStrategy):

  • WebCoreSupport/PlatformStrategiesWinCE.h:

(PlatformStrategiesWinCE):

Source/WebKit2:

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

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

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):

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

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

Apply the same quick an dirty fix to BlockingBoolResponseMap.

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

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

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

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

Source/Platform:

  • chromium/public/WebInputHandler.h:

(WebInputHandler):

  • chromium/public/WebLayerTreeView.h:

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

Source/WebKit/chromium:

  • src/WebCompositorInputHandlerImpl.cpp:

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

  • src/WebCompositorInputHandlerImpl.h:

(WebCompositorInputHandlerImpl):

  • src/WebViewImpl.cpp:

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

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

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

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

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

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

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

  • rendering/TextAutosizer.cpp:

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

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

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

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

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

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

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

Reviewed by Alexey Proskuryakov.

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

  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::cancel):

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

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

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

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

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

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

Source/WebCore:

  • dom/Document.cpp:

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

  • dom/Document.h:

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

  • dom/Node.cpp:

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

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • html/HTMLInputElement.cpp:

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

  • page/DOMWindow.cpp:

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

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent):

  • page/Frame.cpp:

(WebCore::Frame::setDocument):

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

(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.h:

(ScrollingCoordinatorChromium):

  • testing/Internals.cpp:

(WebCore::Internals::touchEventHandlerCount):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit/chromium:

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

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

LayoutTests:

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

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

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

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

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

Unreviewed GTK gardening.

Adding crash expectations for two regressions after r137487 and r137607.

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

Unreviewed rebaselines on Win7 port after r137336.

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

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

Reviewed by Andreas Kling.

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

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

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

  • UIProcess/Downloads/DownloadProxyMap.h: Added.

(WebKit):
(DownloadProxyMap):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createDownloadProxy):

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

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

Reviewed by Alexey Proskuryakov.

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

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::shouldTerminate):

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

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

Reviewed by Dean Jackson.

Source/WebCore:

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

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

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

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

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::valueForFilter):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseCustomFilter):

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

(WebCore::StyleResolver::createCustomFilterOperation):

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

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

  • platform/graphics/filters/CustomFilterOperation.h:

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

  • platform/graphics/filters/CustomFilterRenderer.cpp:

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

  • platform/graphics/filters/CustomFilterRenderer.h:

(CustomFilterRenderer):

  • platform/graphics/filters/FECustomFilter.cpp:

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

  • platform/graphics/filters/FECustomFilter.h:

(FECustomFilter):

  • platform/graphics/filters/ValidatedCustomFilterOperation.cpp:

(WebCore::ValidatedCustomFilterOperation::ValidatedCustomFilterOperation):

  • platform/graphics/filters/ValidatedCustomFilterOperation.h:

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

  • rendering/FilterEffectRenderer.cpp:

(WebCore::createCustomFilterEffect):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::computeFilterOperations):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawUsingCustomFilter):

Source/WebKit2:

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

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

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

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

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

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

  • Shared/CoordinatedGraphics/WebCustomFilterOperation.h:

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

LayoutTests:

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

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

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

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

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

Fixing build error.

  • Api/WebPage.cpp:

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

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

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

Reviewed by Jessie Berlin.

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

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

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

Reviewed by Pavel Feldman.

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

optional ones.

  • inspector/InspectorInputAgent.cpp:

(WebCore::InspectorInputAgent::dispatchMouseEvent):

  • inspector/InspectorInputAgent.h:

(InspectorInputAgent):

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

Mac build fix after r137724.

  • platform/graphics/MediaPlayer.h:

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

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

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

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

Unreviewed. Rolled DEPS.

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

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

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

Source/WebCore:

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

  • platform/gtk/GtkAuthenticationDialog.cpp:

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

  • platform/gtk/GtkAuthenticationDialog.h:

(GtkAuthenticationDialog):

Source/WebKit/gtk:

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

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

  • webkit/webkitsoupauthdialog.cpp:

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

Source/WebKit2:

  • UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp:

(WebKit::WebKit2GtkAuthenticationDialog::WebKit2GtkAuthenticationDialog):

  • UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h:

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

  • UIProcess/API/gtk/WebKitWebView.cpp:

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

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

Unreviewed. Rolled DEPS.

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

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

Unreviewed build fix.

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

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

  • UIProcess/efl/PageClientDefaultImpl.cpp:

(WebKit::PageClientDefaultImpl::updateViewportSize):

  • UIProcess/efl/PageClientLegacyImpl.cpp:

(WebKit::PageClientLegacyImpl::updateViewportSize):

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

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

Unreviewed gardening change.

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

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

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

Causes performance regression whn inspector overlay is
displayed

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::paint):

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

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

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

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

  • Api/WebPage.cpp:

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

  • Api/WebPage_p.h:

(WebPagePrivate):

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

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

Reviewed by Pavel Feldman.

Source/WebCore:

Added a view for displaying native heap graph nodes.

  • inspector/HeapGraphSerializer.cpp:

(WebCore::HeapGraphSerializer::reportEdge):

  • inspector/front-end/NativeMemorySnapshotView.js:

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

Source/WTF:

Do not report edges with null target.

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::addObjectImpl):

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

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

Reviewed by Yury Semikhatsky.

This is a follow-up change for r137589.

  • rendering/InlineFlowBox.cpp:

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

  • rendering/InlineFlowBox.h:

(InlineFlowBox):

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

[Chromium] Unreviewed rebaseline after Skia roll @6773.

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

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

Reviewed by Ryosuke Niwa.

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

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

  • dom/ContainerNode.h:

(WebCore::ChildNodesLazySnapshot::nextNode):

  • dom/ContainerNodeAlgorithms.cpp:

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

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

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

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

Source/WebCore:

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

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

fast/text-autosizing/unwrappable-inlines.html

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processContainer):

Use containerShouldbeAutosized instead of contentHeightIsConstrained.

(WebCore::contentHeightIsConstrained):

Unchanged, just moved lower down the file.

(WebCore::TextAutosizer::containerShouldbeAutosized):

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

(WebCore::TextAutosizer::measureDescendantTextWidth):

Use containerShouldbeAutosized instead of contentHeightIsConstrained.

  • rendering/TextAutosizer.h:

Declared containerShouldbeAutosized.

LayoutTests:

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

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

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

Reviewed by Alexander Pavlov.

  • inspector/front-end/NetworkUISourceCodeProvider.js:

(WebInspector.NetworkUISourceCodeProvider.prototype._parsedScriptSource):

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

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

Reviewed by Ryosuke Niwa.

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

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

Unreviewed. Rebaselined images.

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

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

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

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

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

Source/WebCore:

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

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

  • html/shadow/DateTimeEditElement.cpp:

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

  • html/shadow/DateTimeFieldElements.cpp:

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

  • html/shadow/DateTimeFieldElements.h:

(DateTimeHourFieldElement): Ditto.

LayoutTests:

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

Added test cases for hour field.

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

Unreviewed. Windows compilation fix after r137728.

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

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

Reviewed by Hajime Morita.

Source/WebCore:

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

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

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

Dromaeo/dom-modify.html

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

Parser/html5-full-render.html

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

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

  • dom/Element.cpp:

(WebCore::Element::insertedInto):

  • dom/Element.h:

(WebCore::Element::updateId):

  • dom/Node.cpp:

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

  • dom/Node.h:

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

LayoutTests:

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

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

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

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

  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::restore):

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

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

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

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

Simple optimization makes search much faster.

  • inspector/front-end/CPUProfileView.js:

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

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

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

Reviewed by Pavel Feldman.

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

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

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

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

(WebCore):
(HeapGraphSerializer):

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

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/InspectorMemoryAgent.h:

(InspectorMemoryAgent):

  • inspector/MemoryInstrumentationImpl.cpp:

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

  • inspector/MemoryInstrumentationImpl.h:

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

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

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

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

Adopted Webkit Bug 104893 changes.

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

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

Reviewed by Hajime Morita.

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

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

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

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

  • page/AutoscrollController.h: Added.

(AutoscrollController):

  • page/EventHandler.cpp:

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

  • page/EventHandler.h:

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

  • rendering/RenderBox.cpp:

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

  • rendering/RenderBox.h:

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

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

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

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

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

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

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

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

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

Source/WebCore:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerKeyMessage):

  • html/HTMLMediaElement.h:

(HTMLMediaElement):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::keyMessage):

  • platform/graphics/MediaPlayer.h:

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

Source/WebKit/chromium:

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

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

  • src/WebMediaPlayerClientImpl.h:

(WebMediaPlayerClientImpl):

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

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

Wrong Commit

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

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

Wrong commit

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

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

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

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

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

the accessible hierarchy

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

Suspend

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

Suspend 2012-12-14T14:48

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

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

Reviewed by Gyuyoung Kim.

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

  • UIProcess/API/efl/ewk_view.cpp:

(_ewk_view_smart_calculate):

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::pageDidRequestScroll):

  • UIProcess/efl/PageClientBase.h:

(PageClientBase):

  • UIProcess/efl/PageClientDefaultImpl.cpp:

(WebKit::PageClientDefaultImpl::updateViewportSize):

  • UIProcess/efl/PageClientDefaultImpl.h:

(PageClientDefaultImpl):

  • UIProcess/efl/PageClientLegacyImpl.cpp:

(WebKit::PageClientLegacyImpl::updateViewportSize):

  • UIProcess/efl/PageClientLegacyImpl.h:

(PageClientLegacyImpl):

  • UIProcess/efl/PageViewportControllerClientEfl.cpp:

(WebKit::PageViewportControllerClientEfl::updateViewportSize):

  • UIProcess/efl/PageViewportControllerClientEfl.h:

(PageViewportControllerClientEfl):

Dec 13, 2012:

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

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

Reviewed by Kentaro Hara.

This change turns some raw pointers to RefPtrs.

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

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::insertionPointList):

  • dom/ShadowRoot.h:

(ShadowRoot):

  • html/shadow/ContentDistributor.cpp:

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

  • html/shadow/ContentDistributor.h:

(ShadowRootContentDistributionData):
(ContentDistributor):

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

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

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

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

  • WebProcess/Downloads/Download.cpp:

(WebKit::Download::Download):

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

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

Reviewed by Dimitri Glazkov.

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

NodeRenderingTraversal module:

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

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

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

Node::NeedsShadowTreeWalkerFlag flag:

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

A node is marked as it NeedsShadowTreeWalker if:

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

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

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

No new tests. Covered by existing tests.

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

(ComposedShadowTreeWalker): Move some part to NodeRenderingTraversal

  • dom/ContainerNode.h:

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

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

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

  • dom/Element.h:

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

  • dom/ElementRareData.h:

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

  • dom/ElementShadow.cpp:

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

  • dom/Node.cpp:

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

  • dom/Node.h:

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

  • dom/NodeRenderingContext.cpp: Adopted NodeRenderingTraversal.

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

  • dom/NodeRenderingContext.h: Ditto.

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

  • dom/NodeRenderingTraversal.cpp: Added.

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

  • dom/NodeRenderingTraversal.h: Added.

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

  • dom/PseudoElement.cpp:

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

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

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

Reviewed by Ryosuke Niwa.

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

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

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

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

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

(Driver.init):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

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

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

Reviewed by Kentaro Hara.

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

No behavior change.

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

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

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

Source/WebCore:

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

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

  • html/shadow/DateTimeEditElement.cpp:

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

  • html/shadow/DateTimeFieldElements.cpp:

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

  • html/shadow/DateTimeFieldElements.h:

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

  • html/shadow/DateTimeNumericFieldElement.cpp:

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

  • html/shadow/DateTimeNumericFieldElement.h:

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

LayoutTests:

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

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

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

Unreviewed, fixing typo in python unittest.

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

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

(ProfilerFactoryTest.test_basic):

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

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

Reviewed by Dirk Pranke.

Tools:

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

  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(main):

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

(WebPreferences):

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

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

  • DumpRenderTree/chromium/TestShell.cpp:

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

  • DumpRenderTree/chromium/TestShell.h:

(TestShell::setAcceleratedCompositingForOverflowScrollEnabled):
(TestShell):

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

(ChromiumPort.virtual_test_suites):

LayoutTests:

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

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

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

Reviewed by Maciej Stachowiak.

Source/JavaScriptCore:

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

  • bytecode/CodeBlock.cpp:

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

  • bytecode/CodeBlock.h:

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

  • dfg/DFGGraph.h:

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

  • dfg/DFGMinifiedGraph.h:

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

  • dfg/DFGOSRExitCompiler32_64.cpp:

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

  • dfg/DFGOSRExitCompiler64.cpp:

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

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • profiler/ProfilerBytecodeSequence.cpp:

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

Source/WebCore:

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

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::findInstanceTime):

Source/WTF:

Binary search now has three modes:

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

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

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

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

  • wtf/StdLibExtras.h:

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

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

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

Reviewed by Dimitri Glazkov.

Source/WebCore:

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

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

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

  • css/RuleSet.cpp:

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

  • css/RuleSet.h:

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

  • css/StyleResolver.cpp:

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

  • css/StyleScopeResolver.cpp:

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

  • html/HTMLStyleElement.cpp:

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

LayoutTests:

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

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

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

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

Rubber stamped by Michael Saboff.

No change in behavior so no new tests.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:

(MediaPlayerPrivateAVFoundation):

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

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

Reviewed by Dirk Pranke.

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

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

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

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

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

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

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

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

Reviewed by Sam Weinig.

This assertion doesn't accomplish anything other than crashes.

  • runtime/JSTypeInfo.h:

(JSC::TypeInfo::TypeInfo):

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

Unreviewed. Rebaselined run-bindings-tests results.

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

(JSTestCustomNamedGetter):

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

(JSTestEventTarget):

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

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

panscroll test on AppleWin failed

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

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

  • page/EventHandler.h:

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

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

(RenderBox):

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

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

Reviewed by Hajime Morita.

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

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

Source/WebCore:

  • dom/ContainerNode.h:

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

LayoutTests:

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

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

Reviewed by Abhishek Arya.

Source/WebCore:

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

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

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::removedFrom):

LayoutTests:

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

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

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

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

  • dfg/DFGRepatch.cpp:

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

  • jit/JITStubs.cpp:

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

  • runtime/JSTypeInfo.h:

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

  • runtime/Operations.h:

(JSC::normalizePrototypeChainForChainAccess):

Source/WebCore:

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

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

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

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):

LayoutTests:

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

(f):

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

(f):

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

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

  • dfg/DFGAbstractState.cpp:

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

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCSEPhase.cpp:

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

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGNodeType.h:

(DFG):

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

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

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • runtime/Operations.cpp:

(JSC::jsTypeStringForValue):
(JSC):

  • runtime/Operations.h:

(JSC):

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

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

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

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

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

Reviewed by Simon Fraser.

Source/WebCore:

Use frameScaleFactor instead of pageScaleFactor to scale the layer bounds.

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

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

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

LayoutTests:

Test cases.

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

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

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

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

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

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

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

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

  • rendering/RenderBox.cpp:

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

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

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

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

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

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

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

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

Reviewed by Dirk Pranke.

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

  • TestResultServer/static-dashboards/builders.js:

(BuilderGroup.prototype.setup):

  • TestResultServer/static-dashboards/dashboard_base.js:

(.switch.return):
(htmlForTestTypeSwitcher):

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

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

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

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

  • TestResultServer/static-dashboards/loader.js:

(.):

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

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

Reviewed by Dirk Pranke.

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

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

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

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

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

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

(ExecutiveTest.test_auto_stringify_args):

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

(attach_to_pid):

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

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

Reviewed by Hajime Morita.

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

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

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

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

  • page/AutoscrollController.h: Added.

(AutoscrollController):

  • page/EventHandler.cpp:

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

  • page/EventHandler.h:

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

  • rendering/RenderBox.cpp:

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

  • rendering/RenderBox.h:

(RenderBox): Added new functions canAutoscroll() and findAutoscrollable().

5:44 PM Changeset in webkit [137690] by Beth Dakin
  • 4 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=102599
ASSERT loading Acid3 test in run-safari --debug (r135050)

Reviewed by Simon Fraser.

New flag IncludeCompositedDescendants will always calculate the layer bounds for
descendants, even when the are composited.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateLayerBounds):

  • rendering/RenderLayer.h:

calculateCompositedBounds() should not include this new flag, so instead of
calling that, call calculateLayerBounds() directly with the
IncludeCompositedDescendants flag. This will get us the information we need
upfront and avoid the toggling later on.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

5:29 PM Changeset in webkit [137689] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Resource loads sometimes stall
https://bugs.webkit.org/show_bug.cgi?id=104976

Reviewed by Anders Carlsson.

Quick and dirty partial fix.

  • Shared/BlockingResponseMap.h: (BlockingResponseMap::didReceiveResponse): Wake up all threads, so that non-sequential responses don't break us. This is still horribly inefficient,but should improve behavior quite a bit.
5:15 PM Changeset in webkit [137688] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Fix unused parameter compile warnings
https://bugs.webkit.org/show_bug.cgi?id=104907

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-13
Reviewed by Kentaro Hara.

Use UNUSED_PARAM macro to fix build warning -Wunused-parameter
when ENABLE_INSPECTOR is disabled.

Source/WebKit/efl:

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::evaluateInWebInspector):

Source/WebKit2:

  • UIProcess/API/C/WKInspector.cpp:

(WKInspectorGetPage):
(WKInspectorIsVisible):
(WKInspectorIsFront):
(WKInspectorShow):
(WKInspectorClose):
(WKInspectorShowConsole):
(WKInspectorShowResources):
(WKInspectorShowMainResourceForFrame):
(WKInspectorIsAttached):
(WKInspectorAttach):
(WKInspectorDetach):
(WKInspectorIsDebuggingJavaScript):
(WKInspectorToggleJavaScriptDebugging):
(WKInspectorIsProfilingJavaScript):
(WKInspectorToggleJavaScriptProfiling):
(WKInspectorIsProfilingPage):
(WKInspectorTogglePageProfiling):

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetInspector):

5:10 PM Changeset in webkit [137687] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[QT][GTK][EFL] Add guard for WebInspectorServer
https://bugs.webkit.org/show_bug.cgi?id=104889

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-13
Reviewed by Kenneth Rohde Christiansen.

Add ENABLE(INSPECTOR_SERVER) guard around platform-specific implementation for WebInspectorServer.

  • UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp:
  • UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
  • UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
5:09 PM Changeset in webkit [137686] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source

Don't consider container nodes of other disambiguated nodes
https://bugs.webkit.org/show_bug.cgi?id=104619

Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-12-13
Reviewed by Eric Seidel.

Source/WebCore:

It is not uncommon to have a clickable <div> that contains other clickable objects.
This heuristic avoids excessive disambiguation in that case.

New unit test: WebFrameTest.DisambiguationPopupNoContainer

  • page/TouchDisambiguation.cpp:

(WebCore::findGoodTouchTargets):

Source/WebKit/chromium:

Added a test to track the new disambiguation popup heuristics.

  • tests/WebFrameTest.cpp:
  • tests/data/disambiguation_popup_no_container.html: Added.
4:42 PM Changeset in webkit [137685] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Coordinated Graphics: Reorder messages to CoordinatedLayerTreeHostProxy
https://bugs.webkit.org/show_bug.cgi?id=103843

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-13
Reviewed by Noam Rosenthal.

Clarify LayerTreeRenderer::setRootLayerID() can be called only once during its
lifecycle. LayerTreeRenderer, CoordinatedLayerTreeHost and CoordinatedLayerTreeHostProxy
have the same lifecycle to WebPage and the root layer is reused even if loading
new page, so it is impossible to call LayerTreeRenderer::setRootLayerID() more
than twice.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::setRootLayerID):

4:42 PM Changeset in webkit [137684] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Layout Test fast/events/mouse-cursor-image-set.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=104945

Patch by Rick Byers <rbyers@chromium.org> on 2012-12-13
Reviewed by Beth Dakin.

Fix typo that prevented one of the images from being reliably pre-loaded.
A deeper fix to avoid these class of issues is tracked by
https://bugs.webkit.org/show_bug.cgi?id=104952

  • fast/events/mouse-cursor-image-set.html:
4:32 PM Changeset in webkit [137683] by oliver@apple.com
  • 13 edits in trunk/Source/JavaScriptCore

Support op_typeof in the DFG
https://bugs.webkit.org/show_bug.cgi?id=98898

Reviewed by Filip Pizlo.

Adds a TypeOf node to the DFG to support op_typeof.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

We try to determine the result early here, and substitute in a constant.
Otherwise we leave the node intact, and set the result type to SpecString.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

Parse op_typeof

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::performNodeCSE):

TypeOf nodes can be subjected to pure CSE

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

We can handle typeof.

  • dfg/DFGNodeType.h:

(DFG):

Define the node.

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h: Add operationTypeOf to support the non-trivial cases.
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

Actual codegen

  • runtime/Operations.cpp:

(JSC::jsTypeStringForValue):
(JSC):

  • runtime/Operations.h:

(JSC):

Some refactoring to allow us to get the type string for an
object without needing a callframe.

4:30 PM Changeset in webkit [137682] by enne@google.com
  • 14 edits
    5 deletes in trunk

Unreviewed, rolling out r137645, r137646, and r137667.
http://trac.webkit.org/changeset/137645
http://trac.webkit.org/changeset/137646
http://trac.webkit.org/changeset/137667
https://bugs.webkit.org/show_bug.cgi?id=104911

Breaks some overflow layout tests

Source/WebCore:

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateDescendantDependentFlags):
(WebCore::RenderLayer::addChild):
(WebCore::RenderLayer::removeChild):
(WebCore::RenderLayer::usesCompositedScrolling):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::dirtyZOrderLists):
(WebCore::RenderLayer::dirtyNormalFlowList):
(WebCore::RenderLayer::updateLayerListsIfNeeded):
(WebCore::RenderLayer::shouldBeNormalFlowOnly):
(WebCore::RenderLayer::shouldBeSelfPaintingLayer):
(WebCore::RenderLayer::styleChanged):

  • rendering/RenderLayer.h:

(RenderLayer):

  • rendering/RenderLayerBacking.cpp:

(WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::requiresCompositingForOverflowScrolling):

  • rendering/RenderLayerCompositor.h:

(RenderLayerCompositor):

  • testing/InternalSettings.cpp:
  • testing/InternalSettings.h:

(InternalSettings):

  • testing/InternalSettings.idl:

Tools:

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumPort.virtual_test_suites):

LayoutTests:

  • compositing/overflow/automatically-opt-into-composited-scrolling-expected.txt: Removed.
  • compositing/overflow/automatically-opt-into-composited-scrolling.html: Removed.
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Removed.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Removed.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Removed.
  • platform/chromium/TestExpectations:
4:22 PM Changeset in webkit [137681] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Expose a WebLayerTreeView getter on WebWidget to make it easier for the embedder to interface with the compositor
https://bugs.webkit.org/show_bug.cgi?id=104968

Patch by James Robinson <jamesr@chromium.org> on 2012-12-13
Reviewed by Adrienne Walker.

This is an intermediate step on the way to https://code.google.com/p/chromium/issues/detail?id=156175.

  • public/WebWidget.h:

(WebKit):
(WebWidget):
(WebKit::WebWidget::layerTreeView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::webLayerTreeView):
(WebKit):

  • src/WebViewImpl.h:

(WebViewImpl):

4:20 PM Changeset in webkit [137680] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Event dispatch: Avoid heap allocations in ensureEventAncestors() typical case.
<http://webkit.org/b/104938>

Reviewed by Anders Carlsson.

Give the EventTarget and EventContext vectors an inline capacity of 32 (no science here, just a
non-zero number.) As these vectors are created on the stack already, this is merely using a bit
more stack space to avoid malloc()ing all the gosh-darn time.

Looks like ~6% improvement on Dromaeo/jslib-event-prototype.

  • dom/EventDispatcher.cpp:

(WebCore::EventRelatedTargetAdjuster::adjust):
(WebCore::EventRelatedTargetAdjuster::findRelatedTarget):
(WebCore::EventDispatcher::ensureEventAncestors):

  • dom/EventDispatcher.h:

(EventRelatedTargetAdjuster):
(EventDispatcher):

4:20 PM Changeset in webkit [137679] by Lucas Forschler
  • 4 edits in branches/safari-536.28-branch/Source

Versioning.

4:17 PM Changeset in webkit [137678] by Lucas Forschler
  • 1 copy in tags/Safari-536.28.7

New Tag.

4:13 PM Changeset in webkit [137677] by simonjam@chromium.org
  • 3 edits
    2 adds in trunk

[Resource Timing] Don't report resources with data: urls
https://bugs.webkit.org/show_bug.cgi?id=104868

Reviewed by Tony Gentilcore.

Source/WebCore:

Test: http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url.html

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::loadDone):

LayoutTests:

  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url-expected.txt: Added.
  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url.html: Added.
4:06 PM Changeset in webkit [137676] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Tim Horton.

This test needs updates results after http://trac.webkit.org/changeset/137393

  • platform/mac/svg/css/shadow-changes-expected.txt:
4:00 PM Changeset in webkit [137675] by cevans@google.com
  • 2 edits
    3 copies in branches/chromium/1312

Merge 136845
BUG=162494

3:52 PM Changeset in webkit [137674] by vollick@chromium.org
  • 2 edits in trunk/Source/WebCore

Add a missing nullity check in RenderObject::containingBlock
https://bugs.webkit.org/show_bug.cgi?id=104961

Reviewed by Adrienne Walker.

Adds a missing nullity check in an assert.

No new tests, no change in functionality.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

3:49 PM Changeset in webkit [137673] by dpranke@chromium.org
  • 5 edits in trunk/Tools

Unreviewed, rolling out r137661.
http://trac.webkit.org/changeset/137661
https://bugs.webkit.org/show_bug.cgi?id=104891

broke unit tests, run-webkit-tests

  • Scripts/webkitpy/common/system/executive.py:

(Executive._run_command_with_teed_output):
(Executive.run_command):
(Executive.popen):

  • Scripts/webkitpy/common/system/profiler.py:

(ProfilerFactory.create_profiler):
(GooglePProf.profile_after_exit):
(IProfiler.attach_to_pid):

  • Scripts/webkitpy/layout_tests/port/driver.py:

(Driver.init):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

3:42 PM Changeset in webkit [137672] by dpranke@chromium.org
  • 5 edits
    1 add in trunk/Tools

nrwt: move rundetails, summarize_results into test_run_results
https://bugs.webkit.org/show_bug.cgi?id=104963

Reviewed by Eric Seidel.

More cleanup; this the plain-old-data functions out of manager.py
and into test_run_results next to the other aggregate data structures.

Also this cleans up a bunch of test code and reduces duplication.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager.run):

  • Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:

(ManagerTest.test_look_for_new_crash_logs):

  • Scripts/webkitpy/layout_tests/models/test_run_results.py:

(TestRunResults.init):
(TestRunResults.add):
(RunDetails):
(RunDetails.init):
(_interpret_test_failures):
(summarize_results):

  • Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py: Added.

(get_result):
(run_results):
(summarized_results):
(InterpretTestFailuresTest):
(InterpretTestFailuresTest.setUp):
(InterpretTestFailuresTest.test_interpret_test_failures):
(SummarizedResultsTest):
(SummarizedResultsTest.setUp):
(SummarizedResultsTest.test_no_svn_revision):
(SummarizedResultsTest.test_svn_revision):
(SummarizedResultsTest.test_summarized_results_wontfix):

  • Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:

(BuildBotPrinterTests.get_printer):
(BuildBotPrinterTests.test_print_unexpected_results):
(BuildBotPrinterTests.test_print_results):

3:41 PM Changeset in webkit [137671] by yoli@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Possible JS re-entrancy caused by UI event handler
https://bugs.webkit.org/show_bug.cgi?id=84862

Reviewed by Rob Buis.

Fix an obvious bug in previous patch.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::deferredTasksTimerFired):

3:37 PM Changeset in webkit [137670] by cevans@google.com
  • 1 edit in branches/chromium/1312/Source/WebCore/editing/ApplyStyleCommand.cpp

Merge 136619
BUG=163110
Review URL: https://codereview.chromium.org/11577012

3:34 PM Changeset in webkit [137669] by commit-queue@webkit.org
  • 7 edits in trunk

Switch the gradient drawing code to use bearing angles
https://bugs.webkit.org/show_bug.cgi?id=104616

Patch by Tab Atkins <tabatkins@google.com> on 2012-12-13
Reviewed by Dean Jackson.

Source/WebCore:

Switch the gradient math from polar-coordinate angles to bearing angles.
To make this possible without behavior changes,
switch the m_deprecatedType boolean to an m_gradientType enum,
and fix all usages accordingly.

No new tests, as this is a refactoring and should have no behavior changes. Existing tests suffice.

  • css/CSSGradientValue.cpp:

(WebCore::endPointsFromAngle):
This is the only mechanical change. The rest are just fixing the plumbing around the boolean->enum change.

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::sortStopsIfNeeded):
(WebCore::CSSGradientValue::addStops):
(WebCore::CSSLinearGradientValue::customCssText):
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::customCssText):

  • css/CSSGradientValue.h:

(WebCore::CSSGradientValue::gradientType):
(WebCore::CSSGradientValue::CSSGradientValue):
(WebCore::CSSLinearGradientValue::create):
(WebCore::CSSLinearGradientValue::CSSLinearGradientValue):
(WebCore::CSSRadialGradientValue::create):
(WebCore::CSSRadialGradientValue::CSSRadialGradientValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseDeprecatedGradient):
(WebCore::CSSParser::parseDeprecatedLinearGradient):
(WebCore::CSSParser::parseDeprecatedRadialGradient):

LayoutTests:

This change alters a few pixels on the linux baseline.
It may or may not trigger similar failures on Windows and Mac - we'll see.

  • platform/chromium-linux/fast/gradients/css3-linear-angle-gradients-expected.png:
  • platform/chromium/TestExpectations:
3:33 PM Changeset in webkit [137668] by cevans@google.com
  • 2 edits
    2 copies in branches/chromium/1312

Merge 136560
BUG=158199
Review URL: https://codereview.chromium.org/11565023

3:31 PM Changeset in webkit [137667] by adamk@chromium.org
  • 2 edits
    9 adds in trunk/LayoutTests

Mark one test as failing and rebaseline another after r137646

Unreviewed chromium gardening.

  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style-expected.png: Added.
  • platform/chromium/TestExpectations:
3:30 PM Changeset in webkit [137666] by eric@webkit.org
  • 2 edits in trunk/Tools

Make --profile output easier to understand for pprof on linux
https://bugs.webkit.org/show_bug.cgi?id=104957

Reviewed by Dirk Pranke.

pprof is kinda mysterious, so we print some information
on how to use it, and how to learn how to read the sample dump.
This is similar to what we've done for perf output for Chromium Android.

  • Scripts/webkitpy/common/system/profiler.py:

(GooglePProf._pprof_path):
(GooglePProf.profile_after_exit):

3:28 PM Changeset in webkit [137665] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1312

Merge 136558
BUG=158060
Review URL: https://codereview.chromium.org/11573024

3:27 PM Changeset in webkit [137664] by dpranke@chromium.org
  • 4 edits in trunk/Tools

Revert r137407 - it didn't actually work right.
https://bugs.webkit.org/show_bug.cgi?id=101976

Unreviewed, build fix.

Turns out that rebaselining was completely broken with this change :(
We're passing in a list of test names rather than the list of
failureInfo objects.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
3:21 PM Changeset in webkit [137663] by piman@chromium.org
  • 4 edits in trunk

[chromium] Small fixes for WebPluginContainer::setWebLayer
https://bugs.webkit.org/show_bug.cgi?id=104953

Reviewed by James Robinson.

Source/WebKit/chromium:

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl): Allow
WebPlugin to clean up dangling pointers.

Tools:

  • DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp: Clean up

dangling pointers, force correct invalidation of the layer.

3:19 PM Changeset in webkit [137662] by adamk@chromium.org
  • 10 edits
    54 moves
    1 add in trunk/LayoutTests

Move MutationObserver tests to fast/dom/MutationObserver
https://bugs.webkit.org/show_bug.cgi?id=104948

Reviewed by Ryosuke Niwa.

This seems like a more sensible location, and in line with other DOM features.

  • fast/dom/MutationObserver/: Renamed from LayoutTests/fast/mutation/.
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk-wk2/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
  • platform/wk2/TestExpectations:
3:17 PM Changeset in webkit [137661] by eric@webkit.org
  • 5 edits in trunk/Tools

Add --profiler=PROFILER option to run-perf-tests to allow specifying which profiler to use on platforms with many
https://bugs.webkit.org/show_bug.cgi?id=104891

Reviewed by Dirk Pranke.

I also implemented a very simple "Sample" Profiler using
Mac OS X's /usr/bin/sample command line tool.

I also moved the map(unicode, args) call into Executive.popen
so that all callers don't have to do it themselves.

The real reason for this abstraction is to make it easy
to support both perf and pprof on linux which seem to
be about equally popular among those I ask in the Chrome team.

  • Scripts/webkitpy/common/system/executive.py:

(Executive.popen):

  • Scripts/webkitpy/common/system/profiler.py:

(ProfilerFactory.create_profiler):
(ProfilerFactory):
(ProfilerFactory.available_profilers_by_name):
(ProfilerFactory.default_profiler_name):
(Sample):
(Sample.init):
(Sample.attach_to_pid):
(Sample.profile_after_exit):
(IProfiler.attach_to_pid):

  • Scripts/webkitpy/layout_tests/port/driver.py:

(Driver.init):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

3:11 PM Changeset in webkit [137660] by fmalita@chromium.org
  • 5 edits in trunk/LayoutTests

[Chromium] Unreviewed rebaselining after Skia roll @6773.

  • platform/chromium-win/fast/borders/borderRadiusDotted02-expected.png:
  • platform/chromium-win/fast/borders/borderRadiusDotted03-expected.png:
  • platform/chromium-win/fast/borders/borderRadiusDotted04-expected.png:
  • platform/chromium-win/ietestcenter/css3/bordersbackgrounds/border-radius-style-001-expected.png:
3:06 PM Changeset in webkit [137659] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Another attempt at getting these expectations right for the bots.

  • platform/mac/TestExpectations:
2:58 PM Changeset in webkit [137658] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Skipping this test for now since it has been failing a lot recently.
https://bugs.webkit.org/show_bug.cgi?id=104962 tracks fixing to bug.

  • platform/mac/TestExpectations:
2:46 PM Changeset in webkit [137657] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/12838354> DOM cookie access functions should respect private browsing
https://bugs.webkit.org/show_bug.cgi?id=104691

Reviewed by Anders Carlsson.

Remove obsolete FIXMEs, and fix one function that I overlooked.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::cookiesForDOM): (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM): (WebKit::NetworkConnectionToWebProcess::cookiesEnabled): (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue): (WebKit::NetworkConnectionToWebProcess::getRawCookies): (WebKit::NetworkConnectionToWebProcess::deleteCookie): (WebKit::NetworkConnectionToWebProcess::getHostnamesWithCookies): (WebKit::NetworkConnectionToWebProcess::deleteCookiesForHostname): (WebKit::NetworkConnectionToWebProcess::deleteAllCookies):
2:40 PM Changeset in webkit [137656] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Skipping this test for now since it has been failing since it was added.
https://bugs.webkit.org/show_bug.cgi?id=104954 tracks fixing to bug.

  • platform/mac/TestExpectations:
2:27 PM Changeset in webkit [137655] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

DownloadManager shouldn't call the web process directly
https://bugs.webkit.org/show_bug.cgi?id=104946

Reviewed by Antti Koivisto.

Introduce the needed DownloadManager::Client member functions and have Download call them instead of calling the web process directly.

  • WebProcess/Downloads/Download.cpp:

(WebKit::Download::Download):
(WebKit::Download::~Download):
(WebKit::Download::connection):

  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::DownloadManager):
(WebKit::DownloadManager::didCreateDownload):
(WebKit::DownloadManager::didDestroyDownload):
(WebKit::DownloadManager::connection):

  • WebProcess/Downloads/DownloadManager.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didCreateDownload):
(WebKit::WebProcess::didDestroyDownload):

  • WebProcess/WebProcess.h:
2:25 PM Changeset in webkit [137654] by roger_fong@apple.com
  • 5 edits
    3 adds in trunk/LayoutTests

Unreviewed gardening. Apple Windows port.

  • platform/win/TestExpectations:
  • platform/win/accessibility/deleting-iframe-destroys-axcache-expected.txt:
  • platform/win/fast/css/image-resolution/image-resolution-expected.txt:
  • platform/win/fast/text/decorations-with-text-combine-expected.txt: Added.
  • platform/win/fast/text/orientation-sideways-expected.txt:
  • platform/win/plugins/npp-set-window-called-during-destruction-expected.txt: Added.
  • platform/win/svg/css/shadow-changes-expected.txt: Added.
2:16 PM Changeset in webkit [137653] by piman@chromium.org
  • 5 edits in trunk

[chromium] Add WebPluginContainer::setWebLayer to supersede setBackingTextureId/setBackingIOSurfaceId
https://bugs.webkit.org/show_bug.cgi?id=104875

Reviewed by James Robinson.

  • public/WebPluginContainer.h:

(WebKit):
(WebPluginContainer):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::setWebLayer):
(WebKit):
(WebKit::WebPluginContainerImpl::setBackingTextureId):
(WebKit::WebPluginContainerImpl::setBackingIOSurfaceId):
(WebKit::WebPluginContainerImpl::commitBackingTexture):
(WebKit::WebPluginContainerImpl::setOpaque):
(WebKit::WebPluginContainerImpl::platformLayer):
(WebKit::WebPluginContainerImpl::WebPluginContainerImpl):
(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl):

  • src/WebPluginContainerImpl.h:

(WebPluginContainerImpl):

2:07 PM Changeset in webkit [137652] by Beth Dakin
  • 2 edits in trunk/LayoutTests

This test has been failing on the Mac bots for a while.
https://bugs.webkit.org/show_bug.cgi?id=104949

  • platform/mac/TestExpectations:
2:06 PM Changeset in webkit [137651] by Lucas Forschler
  • 4 edits in branches/safari-536.28-branch/Source

Versioning.

1:53 PM Changeset in webkit [137650] by dpranke@chromium.org
  • 9 edits in trunk/Tools

support -wk2 port names properly in webkitpy.layout_tests.port
https://bugs.webkit.org/show_bug.cgi?id=104761

Reviewed by Eric Seidel.

Our support for WK2 port names was inconsistent at best; this patch
modifies the code so that <port_name>-wk2 is supported for all ports that
have WK2 implementations and is equivalent to specifying <port_name>
and -2/--webkit-test-runner. In addition, this modifies
builders.all_port_names() to include the wk2 variants.

  • Scripts/webkitpy/common/checkout/baselineoptimizer.py:
  • Scripts/webkitpy/layout_tests/port/apple.py:

(ApplePort.determine_full_port_name):

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.determine_full_port_name):
(Port.init):

  • Scripts/webkitpy/layout_tests/port/builders.py:
  • Scripts/webkitpy/layout_tests/port/driver_unittest.py:

(DriverTest.make_port):

  • Scripts/webkitpy/layout_tests/port/mac.py:

(MacPort.default_baseline_search_path):

  • Scripts/webkitpy/layout_tests/port/win.py:

(WinPort.default_baseline_search_path):

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

(TestRebaselineExpectations.test_rebaseline_expectations):

1:50 PM Changeset in webkit [137649] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Fixing a copy-paste error.

  • platform/mac/TestExpectations:
1:49 PM Changeset in webkit [137648] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Marking these tests as failing since they are failing on the bots.
https://bugs.webkit.org/show_bug.cgi?id=104942 tracks fixing the actual bug.

  • platform/mac/TestExpectations:
1:48 PM Changeset in webkit [137647] by ap@apple.com
  • 18 edits in trunk/Source

<rdar://problem/12838354> Per-Tab WebProcess: DOM cookie access functions should respect private browsing
https://bugs.webkit.org/show_bug.cgi?id=104691

Reviewed by Sam Weinig.

Pass private browsing state from local context to remote one.

1:37 PM Changeset in webkit [137646] by vollick@chromium.org
  • 11 edits
    2 adds in trunk

Source/WebCore: [chromium] Automatically use composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=94743

Reviewed by Adrienne Walker.

We currently use the composited scrolling facilities provided by
wkb.ug/91117 if the overflow scroll block element is styled with
-webkit-overflow-scrolling: touch. Ideally, we could automatically
opt into composited scrolling if it is safe to do so. This can affect
antialiasing, so it is important that automatically opting in is only
enabled via a setting.

The way I determine if it is safe is by checking that z-ordering will
not be affected if the overflow scrollable element were promoted to a
stacking context (details below), and that clipping our scrolling
descendants will not affect rendering.

To check the first condition (that z-ordering will not be affected).
I ensure that the candidate element and all its descendants appear as a
continuous block in the candidate's stacking context. That is, if no
other elements are 'between' any of the candidates descendants when we
sort in paint order, then we're safe. This is overly conservative,
however. We could, in future, only consider stacking problems between
elements that actually overlap.

To ensure that clipping will not cause a rendering change, I ensure
that the layer has no out of flow positioned descendant whose
containing block is not also a descendant of ours.

Test: compositing/overflow/automatically-opt-into-compositing-scrolling.html

(WebCore):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::acceleratedCompositingForOverflowScrollEnabled):
(WebCore):
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrder):
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrderRecursive):
(WebCore::RenderLayer::positionOverflowControlsAfterPromotionToCompositedScrolling):
(WebCore::RenderLayer::canSafelyEstablishAStackingContext):

Returns true if the RenderLayer could become a stacking context without
affecting the stacking order.

(WebCore::RenderLayer::updateDescendantDependentFlags):

We now need to keep track of out of flow positioned descendants.

(WebCore::RenderLayer::addChild):
(WebCore::RenderLayer::removeChild):
(WebCore::RenderLayer::usesCompositedScrolling):

Has been updated to return true if it can safely establish a stacking
context, and the setting is turned on.

(WebCore::RenderLayer::needsCompositedScrolling):

This function returns true if we would like to use composited
scrolling.

(WebCore::RenderLayer::updateNeedsCompositedScrolling):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::dirtyZOrderLists):
(WebCore::RenderLayer::dirtyNormalFlowList):

Since these could affect opting into composited scrolling, we must
request that the RenderLayerCompositor reevaluate compositing.

(WebCore::RenderLayer::updateLayerListsIfNeeded):

We call updateCanSafelyEstablishStackingContext here, if necessary.

(WebCore::RenderLayer::shouldBeNormalFlowOnly):
(WebCore::RenderLayer::shouldBeSelfPaintingLayer):

usesCompositedScrolling -> needsCompositedScrolling

(WebCore::RenderLayer::setAncestorChainHasOutOfFlowPositionedDescendant):
(WebCore::RenderLayer::dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus):
(WebCore::RenderLayer::updateOutOfFlowPositioned):

Dirties and sets the out of flow positioned descendant state.

(WebCore::RenderLayer::styleChanged):

  • rendering/RenderLayer.h:

(RenderLayer):
(WebCore::RenderLayer::hasOutOfFlowPositionedDescendant):

  • rendering/RenderLayerBacking.cpp:

(WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::hasUnpositionedOverflowControlsLayers):
(WebCore):

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements):

We now ensure that newly created overflow scroll controls get
positioned.

(WebCore::RenderLayerCompositor::requiresCompositingForOverflowScrolling):

  • rendering/RenderLayerCompositor.h:

(WebCore::RenderLayerCompositor::setShouldReevaluateCompositingAfterLayout):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::setEnableCompositingForOverflowScroll):

Allows enabling the setting in layout tests.

(WebCore):

  • testing/InternalSettings.h:

(InternalSettings):

  • testing/InternalSettings.idl:

LayoutTests: Automatically use composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=94743

Reviewed by Adrienne Walker.

Tests various configurations of elements to ensure that we only automatically opt into
composited scrolling when it is safe to do so.

  • compositing/overflow/automatically-opt-into-composited-scrolling-expected.txt: Added.
  • compositing/overflow/automatically-opt-into-composited-scrolling.html: Added.
1:25 PM Changeset in webkit [137645] by vollick@chromium.org
  • 4 edits in trunk

[chromium] Add a virtual test suite for enabling opt-in to composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=104911

Reviewed by Adrienne Walker.

Tools:

Adds two virtual tests suites to run the tests in
compositing/overflow/ and scrollbars/ with the flag
--enable-accelerated-compositing-for-overflow-scroll

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumPort.virtual_test_suites):

LayoutTests:

Updated the test expectations for the virtual test suite to match the
usual chromium test expectations.

  • platform/chromium/TestExpectations:
1:18 PM Changeset in webkit [137644] by Lucas Forschler
  • 5 edits in tags/Safari-537.21/Source/WebCore

Merged r137573. <rdar://problem/12872298>

1:18 PM Changeset in webkit [137643] by dpranke@chromium.org
  • 2 edits in trunk/Tools

delete extraneous self.fail in mastercfg_unittest.py
https://bugs.webkit.org/show_bug.cgi?id=104940

Reviewed by Eric Seidel.

This was accidentally introduced in r137404.

  • BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
12:56 PM Changeset in webkit [137642] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r137406): NodeTraversal changes causing large renderer crash
https://bugs.webkit.org/show_bug.cgi?id=104937

Reviewed by Antti Koivisto.

Add a null pointer check to exit early since ElementTraversal::next assumes a non-null pointer.

No new tests since I don't think this function is ever exposed to any ES5 bindings.

  • editing/FrameSelection.cpp:

(WebCore::scanForForm):

12:54 PM Changeset in webkit [137641] by Lucas Forschler
  • 14 edits in tags/Safari-537.21

Merged r137607. <rdar://problem/12815054>

12:53 PM Changeset in webkit [137640] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

Get rid of DownloadManager::shared
https://bugs.webkit.org/show_bug.cgi?id=104939

Reviewed by Andreas Kling.

Move the DownloadManager singleton to WebProcess and stub out a DownloadManager::Client class.

  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::DownloadManager):

  • WebProcess/Downloads/DownloadManager.h:

(Client):
(WebKit::DownloadManager::Client::~Client):
(DownloadManager):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::startDownload):
(WebKit::WebFrame::convertHandleToDownload):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::downloadManager):
(WebKit):
(WebKit::WebProcess::shouldTerminate):
(WebKit::WebProcess::downloadRequest):
(WebKit::WebProcess::cancelDownload):
(WebKit::WebProcess::startTransfer):

  • WebProcess/WebProcess.h:

(WebProcess):

12:50 PM Changeset in webkit [137639] by Lucas Forschler
  • 4 edits in tags/Safari-537.21/Source/WebCore

Merged r137604. <rdar://problem/12815054>

12:46 PM Changeset in webkit [137638] by Beth Dakin
  • 2 edits in trunk/LayoutTests

This test started failing after http://trac.webkit.org/changeset/137592 which
rolled out a patch that touched these results. I am going to re-set the results
for now so that the test will pass, and make a note in the bug.

  • platform/mac/accessibility/internal-link-anchors2-expected.txt:
12:44 PM Changeset in webkit [137637] by aestes@apple.com
  • 3 edits in trunk/Source/WebKit2

[WebKit2] Only register NSNotificationCenter observers once per WebContext
https://bugs.webkit.org/show_bug.cgi?id=104879

Reviewed by Alexey Proskuryakov.

WebContext was mistakenly registering NSNotificationCenter observers
every time a new web process was created. In a multi-WebProcess world,
this caused duplicate observers to be needlessly registered. Fix this
by registering observers at WebContext creation time (and fix a related
bug where two of the observers were never unregistered).

  • UIProcess/WebContext.h:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::platformInitialize): Register observers when initializing the context.
(WebKit::WebContext::platformInitializeWebProcess): Don't register observers here.
(WebKit::WebContext::platformInvalidateContext): Unregister observers when invalidating the context.
(WebKit::WebContext::registerNotificationObservers):
(WebKit::WebContext::unregisterNotificationObservers):

12:11 PM Changeset in webkit [137636] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Download objects should keep track of their associated DownloadManager object
https://bugs.webkit.org/show_bug.cgi?id=104936

Reviewed by Andreas Kling.

This is the first step towards eliminating DownloadManager::shared.

  • WebProcess/Downloads/Download.cpp:

(WebKit::Download::create):
(WebKit::Download::Download):
(WebKit::Download::didFinish):
(WebKit::Download::didFail):
(WebKit::Download::didCancel):

  • WebProcess/Downloads/Download.h:
  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::startDownload):
(WebKit::DownloadManager::convertHandleToDownload):

12:10 PM Changeset in webkit [137635] by dgrogan@chromium.org
  • 10 edits in trunk

IndexedDB: Improve error messages
https://bugs.webkit.org/show_bug.cgi?id=104624

Reviewed by Tony Chang.

Source/WebCore:

Add detail to error messages so that they are more helpful and can be
traced back to a specific line of code.

Updated test: transaction-error.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::CreateObjectStoreOperation::perform):
(WebCore::IDBDatabaseBackendImpl::DeleteObjectStoreOperation::perform):
(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::openConnection):
(WebCore::IDBDatabaseBackendImpl::openConnectionWithVersion):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase):
(WebCore::IDBDatabaseBackendImpl::close):

  • Modules/indexeddb/IDBFactoryBackendImpl.cpp:

(WebCore::IDBFactoryBackendImpl::getDatabaseNames):
(WebCore::IDBFactoryBackendImpl::deleteDatabase):
(WebCore::IDBFactoryBackendImpl::open):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::setIndexKeys):
(WebCore::IDBObjectStoreBackendImpl::createIndex):
(WebCore::IDBObjectStoreBackendImpl::CreateIndexOperation::perform):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::commit):

LayoutTests:

Updated error message and establish that non-ascii characters in index
names don't make it back to the browser properly.

  • storage/indexeddb/resources/shared.js:

(unexpectedAbortCallback):

  • storage/indexeddb/resources/transaction-error.js:

(testErrorFromCommit.trans.oncomplete.request.onupgradeneeded.trans.onabort):
(testErrorFromCommit.trans.oncomplete.request.onupgradeneeded):
(testErrorFromCommit.trans.oncomplete):
(testErrorFromCommit):

  • storage/indexeddb/transaction-error-expected.txt:
  • storage/indexeddb/transaction-error.html:
12:07 PM Changeset in webkit [137634] by dpranke@chromium.org
  • 3 edits in trunk/Tools

Fix a mis-named variable after r137621.
https://bugs.webkit.org/show_bug.cgi?id=104871

Unreviewed, build fix.

  • Scripts/webkitpy/layout_tests/views/buildbot_results.py:

(BuildBotPrinter.print_results):

  • Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:
11:51 AM Changeset in webkit [137633] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Safeguard against possible NULL-dereference
https://bugs.webkit.org/show_bug.cgi?id=104931

Patch by Claudio Saavedra <Claudio Saavedra> on 2012-12-13
Reviewed by Chris Fleizach.

This was spotted by Coverity. See bug 104114.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetIndexInParent): If parent is NULL
bail out early.

11:48 AM Changeset in webkit [137632] by Dave Barton
  • 3 edits
    2 adds in trunk

Heap-use-after-free in WebCore::RenderBlock::finishDelayUpdateScrollInfo
https://bugs.webkit.org/show_bug.cgi?id=103750

Reviewed by Tony Chang.

Source/WebCore:

MathML sometimes creates and destroys renderers for descendants during layout (or even to calculate
preferred logical widths), e.g. for operator stretching. RenderBlock::finishDelayUpdateScrollInfo
must therefore leave gDelayedUpdateScrollInfoSet intact as it iterates over it, so
RenderBlock::willBeDestroyed can call gDelayedUpdateScrollInfoSet->remove(this) effectively if needed.
This also prevents duplicate entries from being added to gDelayedUpdateScrollInfoSet.

Test: mathml/mo-stretch-crash.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::startDelayUpdateScrollInfo):

  • Allow gDelayedUpdateScrollInfoSet to be non-null when gDelayUpdateScrollInfo is 0 during RenderBlock::finishDelayUpdateScrollInfo.

(WebCore::RenderBlock::finishDelayUpdateScrollInfo):

  • Remove blocks from gDelayedUpdateScrollInfoSet one at a time, waiting for each block until it is about to be updated.

LayoutTests:

  • mathml/mo-stretch-crash-expected.txt: Added.
  • mathml/mo-stretch-crash.html: Added.
11:46 AM Changeset in webkit [137631] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

ResourceLoader::didReceiveAuthenticationChallenge uses a wrong client
https://bugs.webkit.org/show_bug.cgi?id=104935
<rdar://problem/12870361>

Reviewed by Anders Carlsson.

  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::didReceiveAuthenticationChallenge): The handle is null when NetworkProcess is used. In any case, it should be correct to use the client carried within AuthenticationChallenge.
11:32 AM Changeset in webkit [137630] by senorblanco@chromium.org
  • 3 edits
    1 add in trunk

.: Added manual test for canvas setFont speed.
https://bugs.webkit.org/show_bug.cgi?id=104923

Reviewed by James Robinson.

  • ManualTests/canvas-font-speed.html: Added.

Source/WebCore: CanvasRenderingContext2D::setFont() is slow.
https://bugs.webkit.org/show_bug.cgi?id=104923

Reviewed by James Robinson.

This spends most of its time in the CSS parser. As a first step,
early-out if the new value is the same as unparsed string for the current font.
See also http://code.google.com/p/chromium/issues/detail?id=164016.

Covered by existing tests in canvas/ and fast/canvas, and ManualTests/canvas-font-speed.html.

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::setFont):

11:26 AM Changeset in webkit [137629] by Lucas Forschler
  • 6 edits in branches/safari-536.28-branch/Source/WebKit2

Rollout r133937. <rdar://problem/12516369>

11:23 AM Changeset in webkit [137628] by Lucas Forschler
  • 9 edits in branches/safari-536.28-branch

Rollout r133942 and r133943. <rdar://problem/12516369>

11:23 AM Changeset in webkit [137627] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Allow plugins to be disabled by shared library filename
https://bugs.webkit.org/show_bug.cgi?id=101274

Patch by Parth Patel <parpatel@rim.com>, Max Feil <mfeil@rim.com> on 2012-12-13
Reviewed by Antonio Gomes.

Source/WebCore:

This fix makes PluginDatabase changes general so that other ports
can use this mechanism if they wish.

Layout test not included with this patch because there
is currently no framework within LayoutTests to allow calls
from an external application via platform API code (such as the
WebView API).

  • plugins/PluginDatabase.cpp:

(WebCore::PluginDatabase::fileExistsAndIsNotDisabled):
(WebCore):
(WebCore::PluginDatabase::getDeletedPlugins):
(WebCore::PluginDatabase::removeDisabledPluginFile):
(WebCore::PluginDatabase::addDisabledPluginFile):
(WebCore::PluginDatabase::getPluginPathsInDirectories):

  • plugins/PluginDatabase.h:

(PluginDatabase):

Source/WebKit/blackberry:

Mechanism allows plugins to be disabled by specifying their shared library filenames.
Once disabled, a plugin's shared library should never be loaded.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::setExtraPluginDirectory):
(WebKit):
(BlackBerry::WebKit::WebPage::updateDisabledPluginFiles):

  • Api/WebPage.h:
11:16 AM Changeset in webkit [137626] by Lucas Forschler
  • 32 edits
    2 deletes in branches/safari-536.28-branch

Rollout r133946. <rdar://problem/12516369>

11:13 AM Changeset in webkit [137625] by Lucas Forschler
  • 2 edits in branches/safari-536.28-branch/Source/WebKit2

Rollout r133947. <rdar://problem/12516350>

11:11 AM Changeset in webkit [137624] by Lucas Forschler
  • 10 edits
    3 deletes in branches/safari-536.28-branch

Rollout r133949. <rdar://problem/12516352>

11:11 AM Changeset in webkit [137623] by rniwa@webkit.org
  • 2 edits in trunk/PerformanceTests

[chromium perf] DOM/DOMWalk.html failures
https://bugs.webkit.org/show_bug.cgi?id=104866

Reviewed by Eric Seidel.

Use PerfTestRunner.now which in turn uses window.performance.now() when it's available.

  • DOM/resources/dom-perf.js:

(Interval.start):
(Interval.stop):
(BenchmarkSuite.prototype.RunSingle):

11:07 AM Changeset in webkit [137622] by Lucas Forschler
  • 6 edits
    2 deletes in branches/safari-536.28-branch

Rollout r133969. <rdar://problem/12665292>

11:05 AM Changeset in webkit [137621] by dpranke@chromium.org
  • 11 edits
    1 move in trunk/Tools

webkitpy: rename ResultSummary
https://bugs.webkit.org/show_bug.cgi?id=104871

Reviewed by Eric Seidel.

This patch changes the names of ResultSummary and related modules,
classes, and variables as a part of the larger clean up in bug 103824.

This change is basically a bunch of search and replaces:

  • result_summary.py -> test_run_results.py
  • class ResultSummary -> class TestRunResults
  • "result_summary" or "rs" as a generic variable name -> "run_results", when it doesn't matter (or we don't know) if this refers to the initial pass over the tests or the retry pass.
  • "result_summary" as a variable containing the results of the initial, complete test run -> "initial_results"
  • "retry_summary" as a variable containing the results of retried results -> "retry_results"
  • ResultSummary.results (the property) -> TestRunResults.results_by_name
  • ResultSummary.failures (the property) -> TestRunResults.failures_by_name
  • RunDetails.result_summary -> RunDetails.initial_results
  • RunDetails.retry_summary -> RunDetails.retry_results
  • Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:

(LayoutTestRunner.init):
(LayoutTestRunner.run_tests):
(LayoutTestRunner._mark_interrupted_tests_as_skipped):
(LayoutTestRunner._interrupt_if_at_failure_limits):
(LayoutTestRunner._interrupt_if_at_failure_limits.interrupt_if_at_failure_limit):
(LayoutTestRunner._update_summary_with_result):
(LayoutTestRunner._handle_finished_test):

  • Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:

(FakePrinter.print_expected):
(LayoutTestRunnerTests.test_interrupt_if_at_failure_limits):
(LayoutTestRunnerTests.test_update_summary_with_result):

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(RunDetails.init):
(summarize_results):
(Manager.run):
(Manager._look_for_new_crash_logs):
(Manager._tests_to_retry):
(Manager._upload_json_files):
(Manager._stats_trie):

  • Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:

(ManagerTest.test_look_for_new_crash_logs):
(SummarizeResultsTest):
(SummarizeResultsTest.get_run_results):
(SummarizeResultsTest.summarized_results):

  • Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:

(JSONLayoutResultsGenerator.init):
(JSONLayoutResultsGenerator._get_modifier_char):
(JSONLayoutResultsGenerator._insert_failure_summaries):
(JSONLayoutResultsGenerator._get_failure_summary_entry):

  • Scripts/webkitpy/layout_tests/models/test_run_results.py: Renamed from Tools/Scripts/webkitpy/layout_tests/models/result_summary.py.

(TestRunResults):
(TestRunResults.init):
(TestRunResults.add):

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(get_test_results):
(MainTest.test_basic):

  • Scripts/webkitpy/layout_tests/views/buildbot_results.py:

(BuildBotPrinter.print_results):
(BuildBotPrinter.print_run_results):
(BuildBotPrinter._print_run_results_entry):

  • Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:

(BuildBotPrinterTests.get_run_results):
(BuildBotPrinterTests.test_print_unexpected_results.get_unexpected_results):
(BuildBotPrinterTests):

  • Scripts/webkitpy/layout_tests/views/printing.py:

(Printer.print_expected):
(Printer._print_expected_results_of_type):
(Printer.print_results):
(Printer._print_timing_statistics):
(Printer._print_worker_statistics):
(Printer._print_aggregate_test_statistics):
(Printer._print_individual_test_times):
(Printer._print_directory_timings):

  • Scripts/webkitpy/layout_tests/views/printing_unittest.py:
11:04 AM Changeset in webkit [137620] by Lucas Forschler
  • 2 edits in branches/safari-536.28-branch/Source/WebKit2

Rollout r134109. <rdar://problem/12516330>

11:02 AM Changeset in webkit [137619] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[GTK] accessibiltiy/aria-hidden.html is failing
https://bugs.webkit.org/show_bug.cgi?id=98352

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-12-13
Reviewed by Martin Robinson.

The test is failing due to platform differences in the implementation of
AccessibilityUIElement::allAttributes(). This test does not require this
method as it is only looking at the AXTitle attribute.

  • accessibility/aria-hidden-expected.txt: Included the actual reason for

passing/failing in the results output.

  • accessibility/aria-hidden.html: Included the actual reason for passing/

failing in the results output.

  • platform/gtk/TestExpectations: Unskipped the failing test.
11:02 AM Changeset in webkit [137618] by Lucas Forschler
  • 8 edits
    3 deletes in branches/safari-536.28-branch

Rollout r134834. <rdar://problem/12516304>

10:55 AM Changeset in webkit [137617] by Lucas Forschler
  • 10 edits
    2 deletes in branches/safari-536.28-branch

Rollout r134991. <rdar://problem/12516313>

10:52 AM Changeset in webkit [137616] by jamesr@google.com
  • 4 edits in trunk/Source

Check whether a touchDown lands on a registered touch event handler from the compositor
https://bugs.webkit.org/show_bug.cgi?id=104863

Patch by Yusuf Ozuysal <yusufo@google.com> on 2012-12-13
Reviewed by James Robinson.

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):

10:48 AM Changeset in webkit [137615] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Document will never be released when an Image is created inside unload event listener
https://bugs.webkit.org/show_bug.cgi?id=104830

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2012-12-13
Reviewed by Darin Adler.

When setting src attribute to an Image object inside unload event listener, ImageLoader will
mark it as load failure (by setting m_hasPendingErrorEvent to true) and the following call
to updatedHasPendingEvent will ref the element but won't be deref-ed since the Document is
being dismissed. This was introduced in r131670. To match pre r131670 behavior, we shouldn't
trigger error event for image loading when the page is being dismissed.

No new tests, there is no visual change. Manually tested to verify documents are released by
using heap in Mac OS X.

  • loader/ImageLoader.cpp:

(WebCore::pageIsBeingDismissed): add a helper function to test whether the page is being dismissed.
(WebCore::ImageLoader::updateFromElement): don't trigger error event if the page is being dismissed.

10:47 AM Changeset in webkit [137614] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Add missing breaks in switch-case statements
https://bugs.webkit.org/show_bug.cgi?id=104929

Patch by Claudio Saavedra <Claudio Saavedra> on 2012-12-13
Reviewed by Martin Robinson.

  • platform/gtk/ClipboardGtk.cpp:

(WebCore::ClipboardGtk::clearData): Add missing breaks.

10:44 AM Changeset in webkit [137613] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

Remove unused initiatingPage parameter from download objects
https://bugs.webkit.org/show_bug.cgi?id=104933

Reviewed by Alexey Proskuryakov.

  • WebProcess/Downloads/Download.h:

(Download):

  • WebProcess/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::startDownload):
(WebKit::DownloadManager::convertHandleToDownload):

  • WebProcess/Downloads/DownloadManager.h:

(DownloadManager):

  • WebProcess/Downloads/cfnet/DownloadCFNet.cpp:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/Downloads/curl/DownloadCurl.cpp:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/Downloads/mac/DownloadMac.mm:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/Downloads/qt/DownloadQt.cpp:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/Downloads/soup/DownloadSoup.cpp:

(WebKit::Download::start):
(WebKit::Download::startWithHandle):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::startDownload):
(WebKit::WebFrame::convertHandleToDownload):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::downloadRequest):

10:39 AM Changeset in webkit [137612] by thiago.santos@intel.com
  • 4 edits in trunk/Tools

[EFL] The WebKit2 bots are building and executing WebKit1 tests
https://bugs.webkit.org/show_bug.cgi?id=104690

Reviewed by Csaba Osztrogonác.

Pass --no-webkit1 option to the EFL WK2 bots when building. This
will disable WK1 API and thus, the WK1 API tests.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(CompileWebKit2Only):
(BuildAndTestFactory):
(BuildAndTestFactory.init):
(BuildAndTestWebKit2OnlyFactory):
Now bots using BuildAndTestWebKit2OnlyFactory (for instance only EFL) will
get --no-webkit1 as a parameter on the build-webkit script.

  • Scripts/build-webkit:

Added support for -no-webkit1 for the Qt and EFL port.

10:34 AM Changeset in webkit [137611] by eric@webkit.org
  • 2 edits in trunk/Tools

build-webkit --chromium-android forces Make even when update-webkit used --ninja
https://bugs.webkit.org/show_bug.cgi?id=104839

Reviewed by Tony Chang.

This was recommended by Peter as part of:
https://bugs.webkit.org/show_bug.cgi?id=104434#c4
Fixing this makes build-webkit --chromium-android work for the common (ninja) case.

  • Scripts/webkitdirs.pm:

(buildChromium):

10:32 AM Changeset in webkit [137610] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/12870065> Frequent NetworkProcess crashes due to null connection when closing tabs
https://bugs.webkit.org/show_bug.cgi?id=104922

Reviewed by Anders Carlsson.

Don't zero out connection pointers when a connection closes. There doesn't appear
to be any reason to do this.

Tested by hitting breakpoints in all relevant objects destructors to confirm that
this doesn't introduce leaks.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess): (WebKit::NetworkConnectionToWebProcess::didClose):
  • NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::connectionToWebProcessDidClose):
10:32 AM Changeset in webkit [137609] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Update chromium expectatins for fonts/monospace.html

  • platform/chromium/TestExpectations:
10:30 AM Changeset in webkit [137608] by kerz@chromium.org
  • 17 edits
    2 deletes in branches/chromium/1359

and now revert the manual merge for another build

10:27 AM Changeset in webkit [137607] by Nate Chapin
  • 14 edits in trunk

Route main resource loads through the memory cache.
https://bugs.webkit.org/show_bug.cgi?id=49246

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Note that this patch doesn't actually enable caching of main resources. That will be done in a later patch.
The MainResourceLoader actually has an underlying SubresourceLoader (with the cache layer between them).
In several places, the MainResourceLoader's SubresourceLoader is treated as special.

No new tests, as this is primarily a refactor. A couple of expected results changed slightly.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::setRequest):
(WebCore::DocumentLoader::subresource):
(WebCore::DocumentLoader::addSubresourceLoader): Because the SubresourceLoader underlying the main resource

needs special handling in certain cases, track it separately from the real SubresourceLoaders.

(WebCore::DocumentLoader::removeSubresourceLoader):
(WebCore::DocumentLoader::startLoadingMainResource):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::receivedError):
(WebCore::MainResourceLoader::cancel):
(WebCore::MainResourceLoader::clearResource):
(WebCore):
(WebCore::MainResourceLoader::frameLoader):
(WebCore::MainResourceLoader::request):
(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::resourceData):
(WebCore::MainResourceLoader::redirectReceived):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::continueAfterContentPolicy):
(WebCore::MainResourceLoader::responseReceived):
(WebCore::MainResourceLoader::dataReceived):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::notifyFinished):
(WebCore::MainResourceLoader::reportMemoryUsage):
(WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
(WebCore::MainResourceLoader::load):
(WebCore::MainResourceLoader::setDefersLoading):
(WebCore::MainResourceLoader::defersLoading):
(WebCore::MainResourceLoader::setShouldBufferData):
(WebCore::MainResourceLoader::loader):
(WebCore::MainResourceLoader::identifier):

  • loader/MainResourceLoader.h:

(MainResourceLoader):
(WebCore::MainResourceLoader::documentLoader):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::willSendRequest):

  • loader/ResourceLoader.h:

(WebCore::ResourceLoader::defersLoading):
(WebCore::ResourceLoader::cancelled):

  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):

  • loader/mac/DocumentLoaderMac.cpp:

(WebCore::DocumentLoader::schedule):
(WebCore::DocumentLoader::unschedule):

LayoutTests:

  • http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: The error code for loads cancelled

by an embedder's willSendRequest() will show as standard load cancellations rather than as a content policy
failure. This was an odd quirk of how MainResourceLoader::willSendRequest() was implemented (namely, doing a
content policy check on ResourceRequests with empty urls).

  • platform/chromium-linux/fast/replaced/border-radius-clip-content-edge-expected.png:
  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: The error code for loads cancelled

by an embedder's willSendRequest() will show as standard load cancellations rather than as a content policy
failure. This was an odd quirk of how MainResourceLoader::willSendRequest() was implemented (namely, doing a
content policy check on ResourceRequests with empty urls).

10:16 AM Changeset in webkit [137606] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Duplicate code in GraphicsContext3D::validateAttributes() and GraphicsContext3D::validateDepthStencil()
https://bugs.webkit.org/show_bug.cgi?id=97275

Reviewed by Dean Jackson.

Remove duplicate code in validateAttributes(). validateAttributes() calls
validateDepthStencil() which has the exact same code.

No new tests because no change in functionality.

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:

(WebCore::GraphicsContext3D::validateAttributes):

9:41 AM Changeset in webkit [137605] by abecsi@webkit.org
  • 1 edit
    1 delete in trunk/Source/WebKit2

[EFL] Update the way we set the cookies policy
https://bugs.webkit.org/show_bug.cgi?id=104915

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-12-13
Reviewed by Kenneth Rohde Christiansen.

We are mistakenly assigning the cookie policy to the persistent storage
type which is not correct. This was caused by r137432 and is making
the unit tests fail.

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformInitializeWebProcess):

9:37 AM Changeset in webkit [137604] by Nate Chapin
  • 4 edits in trunk/Source/WebCore

CachedResources should hang on to stripped fragment identifiers
https://bugs.webkit.org/show_bug.cgi?id=104721

Reviewed by Maciej Stachowiak.

No new tests, this will be unused until bug
https://bugs.webkit.org/show_bug.cgi?id=49246 re-lands. Then, it will
allow http/tests/inspector/resource-parameters.html to continue passing.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::CachedResource):
(WebCore::CachedResource::load):

  • loader/cache/CachedResource.h:

(CachedResource):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource): We override the request's url with the

local variable "url" here. The only difference between url and request.url() is that url
has had any fragment identifier removed. Do this work later (in the CachedResource constructor)
so that the CachedResource can save the fragment for later.

9:18 AM Changeset in webkit [137603] by kerz@chromium.org
  • 17 edits
    2 copies in branches/chromium/1359

hand merge patch for Chromium build

9:13 AM Changeset in webkit [137602] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Remove deprecated API usage
https://bugs.webkit.org/show_bug.cgi?id=104894

Patch by Claudio Saavedra <Claudio Saavedra> on 2012-12-13
Reviewed by Martin Robinson.

Remove deprecated GTK+ API usage.

  • platform/gtk/RenderThemeGtk3.cpp:

(WebCore::spinButtonArrowSize): Do not use deprecated
gtk_style_context_get_font().

9:13 AM Changeset in webkit [137601] by kerz@chromium.org
  • 1 copy in branches/chromium/1359

Quick branch to pick up new fix.

9:10 AM Changeset in webkit [137600] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Remove temporary workaround from GraphicsSurfaceGLX constructor.
https://bugs.webkit.org/show_bug.cgi?id=104904

QXcbNativeInterface::nativeResourceForContext() is now
available in Qt5. Therefore the temporary workaround
in GraphicsSurfaceGLX can be removed.

Reviewed by Kenneth Rohde Christiansen.

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):

9:08 AM Changeset in webkit [137599] by jparent@chromium.org
  • 2 edits in trunk/Tools

Loader_unittests should reset state between runs.
https://bugs.webkit.org/show_bug.cgi?id=104862

Reviewed by Dirk Pranke.

The loader_unittests were not resetting state between runs, leaving
a lot of data behind in global objects that the dashboard and tests
rely on. A handful were resetting just a few objects. Use the common
resetGlobals() method instead.

  • TestResultServer/static-dashboards/loader_unittests.js:
8:26 AM Changeset in webkit [137598] by thiago.santos@intel.com
  • 2 edits in trunk/Source/WebKit2

[EFL] Update the way we set the cookies policy
https://bugs.webkit.org/show_bug.cgi?id=104915

Reviewed by Kenneth Rohde Christiansen.

We are mistakenly assigning the cookie policy to the persistent storage
type which is not correct. This was caused by r137432 and is making
the unit tests fail.

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformInitializeWebProcess):

8:08 AM Changeset in webkit [137597] by abecsi@webkit.org
  • 11 edits in trunk

[Qt][WK2] Fix painting on Mac with retina display
https://bugs.webkit.org/show_bug.cgi?id=104574

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Since HiDPI support has been added and enabled in Qt we ended up
painting incorrectly scaled content on high-resolution screens.
Because the intrinsic device pixel ratio is always taken into
account by Qt when painting to high-resolution screens we should
automatically obtain the scale ratio from the window in which the
item is rendered instead of setting it in QML.

Qt does not make it possible to override the device pixel ratio
of the native window, therefore our experimental QML API for setting
a custom value is of no use any more and should be removed.

This patch fixes the scaling issue on Mac retina display by querying
the underlying window for the device scale factor and applying it to
the backing store and the scene-graph rendering of the content node.
Additionally removes the experimental API and related API tests.

  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPage::updatePaintNode):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewLegacyPrivate::updateViewportSize):
(QQuickWebViewFlickablePrivate::onComponentComplete):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:

(tst_QQuickWebView::newWebView):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHostProxy::deviceScaleFactor):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(CoordinatedLayerTreeHostProxy):

  • UIProcess/qt/QtWebPageSGNode.cpp:

(WebKit::ContentsSGNode::ContentsSGNode):
(WebKit::ContentsSGNode::render):
(WebKit::ContentsSGNode::clipRect):
(ContentsSGNode):
(WebKit::QtWebPageSGNode::QtWebPageSGNode):
(WebKit::QtWebPageSGNode::devicePixelRatio):
(WebKit):
(WebKit::QtWebPageSGNode::setRenderer):

  • UIProcess/qt/QtWebPageSGNode.h:

(QtWebPageSGNode):

Tools:

Remove setting the devicePixelRatio experimental property
since the value is now automatically picked up from Qt.

  • MiniBrowser/qt/qml/BrowserWindow.qml:
7:43 AM Changeset in webkit [137596] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk

[GTK] Expose ARIA roles for tab, tabpanel and tablist
https://bugs.webkit.org/show_bug.cgi?id=84043

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-12-13
Reviewed by Martin Robinson.

Source/WebCore:

Mapped the ARIA roles to their corresponding ATK roles.

No new tests; instead unskipped the associated test.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(atkRole): Mapped the ARIA roles to their corresponding ATK roles

LayoutTests:

Mapped the ARIA roles to the corresponding ATK roles and unskipped the
associated test. Also created the missing platform-specific expected
results.

  • accessibility/aria-tab-roles-expected.txt: Added.
  • platform/gtk/TestExpectations: Unskipped the associated test.
7:34 AM Changeset in webkit [137595] by thiago.santos@intel.com
  • 2 edits in trunk/Source/WebKit2

[EFL] API tests failing because Vibration API is using unsigned as duration since r137410
https://bugs.webkit.org/show_bug.cgi?id=104914

Reviewed by Kenneth Rohde Christiansen.

Update the tests to reflect the data type coming from WebCore.

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(VibrationCbData):
(onVibrate):

7:24 AM Changeset in webkit [137594] by vivek.vg@samsung.com
  • 2 edits in trunk/Source/WebCore

Web Inspector: "Add Attribute" context menu on closing tag should apply on the opening tag on Elements Panel
https://bugs.webkit.org/show_bug.cgi?id=104902

Reviewed by Alexander Pavlov.

The context menu action on the closing tag scrolls to the opening tag for adding the attribute.

No new tests as this is a UI change.

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
(WebInspector.ElementsTreeElement.prototype._addNewAttribute):

7:09 AM Changeset in webkit [137593] by kenneth@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Device pixel ratio lost upon relaunch of the web process
https://bugs.webkit.org/show_bug.cgi?id=104913

Reviewed by Simon Hausmann.

Use setIntrinsicDeviceScaleFactor instead of setCustomDeviceScaleFactor
when setting the device pixel ratio to make the setting permanent and
make sure it is set as part of the web process creation parameters.

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_device_pixel_ratio_set):

7:09 AM Changeset in webkit [137592] by commit-queue@webkit.org
  • 13 edits
    2 deletes in trunk

Unreviewed, rolling out r137512.
http://trac.webkit.org/changeset/137512
https://bugs.webkit.org/show_bug.cgi?id=104912

The entire GTK+ layout test step has been failing for hours
(Requested by mrobinson on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-13

Source/WebCore:

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::textUnderElement):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::textUnderElement):

LayoutTests:

  • accessibility/button-title-uses-inner-img-alt-expected.txt: Removed.
  • accessibility/button-title-uses-inner-img-alt.html: Removed.
  • accessibility/focusable-div-expected.txt:
  • accessibility/focusable-div.html:
  • platform/chromium/TestExpectations:
  • platform/chromium/accessibility/image-link-expected.txt:
  • platform/mac/accessibility/image-link-expected.txt:
  • platform/mac/accessibility/internal-link-anchors2-expected.txt:
  • platform/mac/accessibility/static-text-role-uses-text-under-element-expected.txt:
  • platform/mac/accessibility/static-text-role-uses-text-under-element.html:
  • platform/mac/accessibility/table-with-aria-role-expected.txt:
7:06 AM Changeset in webkit [137591] by commit-queue@webkit.org
  • 5 edits
    1 add in trunk/Source/WebCore

OpenCL version of FEColorMatrix.
https://bugs.webkit.org/show_bug.cgi?id=103398

Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2012-12-13
Reviewed by Zoltan Herczeg.

~3x speed-up (depending on hardware configuration)

  • Target.pri: Added a new file to the build system.
  • platform/graphics/filters/FEColorMatrix.cpp: calculateSaturateComponents and calculateHueRotateComponents methodes are moved to the header, since they are used by OpenCL as well

(WebCore::effectType):

  • platform/graphics/filters/FEColorMatrix.h:

(FEColorMatrix):
(WebCore::FEColorMatrix::calculateSaturateComponents):
(WebCore):
(WebCore::FEColorMatrix::calculateHueRotateComponents):

  • platform/graphics/gpu/opencl/FilterContextOpenCL.h: Required fields for the ColorMatrix kernels were added

(WebCore::FilterContextOpenCL::FilterContextOpenCL):
(FilterContextOpenCL):

  • platform/graphics/gpu/opencl/OpenCLFEColorMatrix.cpp: the core implementation goes here

(WebCore):
(WebCore::FilterContextOpenCL::compileFEColorMatrix):
(WebCore::FilterContextOpenCL::applyFEColorMatrix):
(WebCore::FEColorMatrix::platformApplyOpenCL):

7:04 AM Changeset in webkit [137590] by Simon Hausmann
  • 6 edits in trunk

[Qt] Doc: Fixing Qt WebKit reference documentation.

Patch by Jerome Pasion <jerome.pasion@digia.com> on 2012-12-13
Reviewed by Simon Hausmann.

Fixes:
-added \module for C++ classes and \qmlmodule for QML types
-added links to the Qt WebKit Examples pages
-fixed the qhp settings for Qt Creator

Task-number: QTBUG-28583
Task-number: QTBUG-28418
Task-number: QTBUG-27646

.:

  • Source/qtwebkit.qdocconf:

Source/WebKit/qt:

  • docs/qtwebkit.qdoc:

Source/WebKit2:

  • UIProcess/API/qt/qquickwebview.cpp:
6:23 AM Changeset in webkit [137589] by loislo@chromium.org
  • 12 edits in trunk/Source

Web Inspector: Native Memory Instrumentation: do not validate pointers to objects in RenderArena agains tcmalloc data.
https://bugs.webkit.org/show_bug.cgi?id=104903

Reviewed by Yury Semikhatsky.

This is a simplest approach to do that with zero performance overhead.

Source/WebCore:

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::reportMemoryUsage):

  • rendering/InlineBox.cpp:

(WebCore::InlineBox::reportMemoryUsage):
(WebCore):

  • rendering/InlineBox.h:

(InlineBox):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::reportMemoryUsage):
(WebCore):

  • rendering/InlineTextBox.h:

(InlineTextBox):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::reportMemoryUsage):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::reportMemoryUsage):

Source/WTF:

  • wtf/MemoryInstrumentation.cpp:

(WTF::MemoryClassInfo::setCustomAllocation):
(WTF):

  • wtf/MemoryInstrumentation.h:

(MemoryClassInfo):

  • wtf/MemoryObjectInfo.h:

(WTF::MemoryObjectInfo::MemoryObjectInfo):
(WTF::MemoryObjectInfo::customAllocation):
(WTF::MemoryObjectInfo::setCustomAllocations):
(MemoryObjectInfo):

6:21 AM Changeset in webkit [137588] by commit-queue@webkit.org
  • 8 edits in trunk

[EFL][GTK] Don't call deprecated g_type_init when glib => 2.35
https://bugs.webkit.org/show_bug.cgi?id=103209

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-12-13
Reviewed by Kenneth Rohde Christiansen.

g_type_init() is deprecated from 2.35.0 onwards. Don't call it
in that case to avoid warnings and/or build failure.

Source/WebKit/efl:

  • ewk/ewk_main.cpp:

(_ewk_init_body):

Source/WebKit2:

Also, remove a call to g_type_init() from WebProcessMainGtk():
It is not needed if gtk_init() is called.

  • UIProcess/API/efl/ewk_main.cpp:

(ewk_init):

  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainEfl):

  • WebProcess/gtk/WebProcessMainGtk.cpp:

(WebKit::WebProcessMainGtk):

Tools:

  • DumpRenderTree/gtk/ImageDiff.cpp:

(main):

6:02 AM Changeset in webkit [137587] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Don't leak GStaticRecMutex
https://bugs.webkit.org/show_bug.cgi?id=104901

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-13
Reviewed by Martin Robinson.

The mutex in WebKitWebAudioSourceGStreamer is allocated using
g_new(), but that memory is not freed when the object is
destroyed.

This patch replaces that pointer with the structure itself, which
is faster and doesn't need to be explicitly freed.

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(_WebKitWebAudioSourcePrivate):
(webkit_web_audio_src_init):
(webKitWebAudioSrcFinalize):

5:20 AM Changeset in webkit [137586] by haraken@chromium.org
  • 1 edit
    9 adds in trunk/LayoutTests

Unreviewed. Rebaselined compositor-touch-hit-rects.html.

  • platform/chromium-linux/platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
  • platform/chromium-mac/platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
  • platform/chromium-win/platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
5:05 AM Changeset in webkit [137585] by commit-queue@webkit.org
  • 8 edits in trunk

Web Inspector: Network: Sorting cookies by size is broken.
https://bugs.webkit.org/show_bug.cgi?id=104893

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-13
Reviewed by Alexander Pavlov.

Source/WebCore:

Problem: cookie "size" is not a field now; its value is accessible
through getter method.

Solution: make cookie fields uniformly accessible (add getters for name,
type and value).

  • inspector/front-end/CookieItemsView.js: Adopt changes.
  • inspector/front-end/CookieParser.js:

(WebInspector.Cookie): Refine JsDoc.
(WebInspector.Cookie.prototype.name): Added getter.
(WebInspector.Cookie.prototype.value): Ditto.
(WebInspector.Cookie.prototype.type): Ditto.
(WebInspector.Cookies.buildCookiesFromString): Adopt changes.
(WebInspector.Cookies.buildCookieProtocolObject): Ditto.

  • inspector/front-end/CookiesTable.js:

(WebInspector.CookiesTable): Remove unused parameter.
(WebInspector.CookiesTable.prototype._sortCookies):
Use getters instead of field names.
(WebInspector.CookiesTable.prototype._createGridNode): Adopt changes.

  • inspector/front-end/HAREntry.js: Ditto.
  • inspector/front-end/RequestCookiesView.js: Ditto.

LayoutTests:

Adopt new cookie field accessors.

  • inspector/cookie-parser.html: Adopt new cookie field accessors.
4:50 AM Changeset in webkit [137584] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r137569.
http://trac.webkit.org/changeset/137569
https://bugs.webkit.org/show_bug.cgi?id=104876

A bunch of CSS tests hit ASSERTs

  • css/CSSProperty.h:

(WebCore::CSSProperty::CSSProperty):

4:02 AM Changeset in webkit [137583] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[Tools] Add exception for gtk_style_context_get()
https://bugs.webkit.org/show_bug.cgi?id=104896

Patch by Claudio Saavedra <Claudio Saavedra> on 2012-12-13
Reviewed by Martin Robinson.

Add new exception for gtk_style_context_get().

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_for_null): Add exception for gtk_style_context_get().

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(WebKitStyleTest.test_null_false_zero): Add a unit
test for the new exception.

3:28 AM Changeset in webkit [137582] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebKit/efl

Regression(r137568): Broke layout test on EFL WK1
https://bugs.webkit.org/show_bug.cgi?id=104895

Reviewed by Kenneth Rohde Christiansen.

Fix layout test crash after r137568 because ewk_view.cpp has kept unused networkInfoClient member variable
using OwnPtr. The r137568 lets NetworkInfoClientEfl destroy by WebCore::NetworkInfoController.

  • ewk/ewk_view.cpp:

(_Ewk_View_Private_Data):
(_ewk_view_priv_new):

3:10 AM Changeset in webkit [137581] by commit-queue@webkit.org
  • 5 edits in trunk

REGRESSION (r137432): The /webkit2/WebKitCookieManager/accept-policy unit test is failing
https://bugs.webkit.org/show_bug.cgi?id=104790

Patch by Joaquim Rocha <jrocha@igalia.com> on 2012-12-13
Reviewed by Carlos Garcia Campos.

Source/WebKit2:

The cookies accept policy and the cookies persistent storage type
were not being correctly assigned.

  • UIProcess/WebContext.cpp: Set the default value of the cookie

accept policy.
(WebKit::WebContext::WebContext):

  • UIProcess/gtk/WebContextGtk.cpp: Fix setting the cookies persistent

storage type (it was mistakenly assigning the policy instead) and
set the accept policy which was missing.
(WebKit::WebContext::platformInitializeWebProcess):

Tools:

Unskip the GTK accept policy test.

  • Scripts/run-gtk-tests:

(TestRunner):

3:00 AM Changeset in webkit [137580] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Remove redundant pipe write to prevent pipe buffer full.
https://bugs.webkit.org/show_bug.cgi?id=101135

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-12-13
Reviewed by Gyuyoung Kim.

To prevent a source of a deadlock, remove the redundant pipe write
in wakeUp() function.

EFL uses ecore_pipe_write() to wake up main run loop, and the function
uses POSIX pipe write with O_NONBLOCK disabled.
With O_NONBLOCK disabled, when written data is more than PIPE_BUF,
pipe write will be blocked until it can be written.

Currently, every wakeUp() function calls ecore_pipe_write() to invoke
wakeUpEvent() callback. And this can make pipe buffer full status
which is the one reason of the lockup problem described in Bug 99494.

  • platform/RunLoop.h:

(RunLoop):

  • platform/efl/RunLoopEfl.cpp:

(WebCore::RunLoop::RunLoop):
(WebCore::RunLoop::wakeUpEvent):
(WebCore::RunLoop::wakeUp):

2:56 AM Changeset in webkit [137579] by Simon Hausmann
  • 2 edits in trunk

[Qt] Fix missing doc dependency to examples

Patch by Jerome Pasion <Jerome.Pasion@digia.com> on 2012-12-13
Reviewed by Simon Hausmann.

  • Source/qtwebkit.qdocconf:
2:27 AM Changeset in webkit [137578] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Fix deleteAllCookies() invalid SQL statement
https://bugs.webkit.org/show_bug.cgi?id=101580

Patch by Antti Harju <antti.harju@ixonos.com> on 2012-12-13
Reviewed by Jocelyn Turcotte.

  • platform/network/qt/CookieJarQt.cpp:

(WebCore::SharedCookieJarQt::deleteAllCookies):

2:18 AM WebKitGTK/WebKit2Roadmap edited by Claudio Saavedra
(diff)
2:09 AM Changeset in webkit [137577] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Safari spends a lot of time in WebCore::findSimpleWordBoundary while selecting text on large scrabutility.com page
https://bugs.webkit.org/show_bug.cgi?id=104884

Reviewed by Hajime Morita.

We don't need to do anything in AlternativeTextController if selection is already outside of the editable region.

No new tests are added since this is only a performance improvement, and doesn't change any asymptotic behavior.

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::respondToChangedSelection):

1:42 AM Changeset in webkit [137576] by g.czajkowski@samsung.com
  • 2 edits in trunk/LayoutTests

[Mac][WK2] Unreviewed, spelling-unified-emulation.html fails after 137571

Replace the "zzz" word with "buzz" for mac-wk2.

  • platform/mac-wk2/editing/spelling/spelling-unified-emulation-expected.txt:

Change-Id: I6434a60e9dc1aab9abda218977255f8649468aa2

1:29 AM Changeset in webkit [137575] by jonlee@apple.com
  • 2 edits in trunk/Source/WebKit2

plugin snapshotting accepts bad snapshot after 5 seconds
https://bugs.webkit.org/show_bug.cgi?id=104886
<rdar://problem/12838753>

Reviewed by Maciej Stachowiak.

  • WebProcess/Plugins/PluginView.cpp: Increase to 60 tries, equating to a little over 60 seconds total.
1:26 AM Changeset in webkit [137574] by xingnan.wang@intel.com
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers list.

  • Scripts/webkitpy/common/config/committers.py:
1:19 AM EFLWebKit edited by luxtella@company100.net
(diff)
12:42 AM Changeset in webkit [137573] by jonlee@apple.com
  • 5 edits in trunk/Source/WebCore

Crash in PlugInOriginHash with empty MIME type (104882)
https://bugs.webkit.org/show_bug.cgi?id=104882
<rdar://problem/12872298>

Reviewed by Filip Pizlo.

The crash occurs because the strings might be null. Add a check for it, but also try to infer a MIME type
in case the markup does not include a type attribute, but we can find it from the extension in the URL.

  • platform/KURL.cpp: Add a new function mimeTypeFromURL() which tries to return the implied MIME type

based on the URL provided. If nothing was found, return a null string.
(WebCore::mimeTypeFromURL): Factored out from FrameLoader::defaultObjectContentType().

  • platform/KURL.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::defaultObjectContentType): Refactor to use mimeTypeFromURL().

  • plugins/PlugInOriginHash.cpp:

(WebCore::addCaseFoldedCharacters): Add a check for an empty string.
(WebCore::PlugInOriginHash::hash): If the service type is empty, try to infer the MIME type.

12:29 AM Changeset in webkit [137572] by Christophe Dumez
  • 2 edits in trunk/Source/WebCore

Regression(r137486): Broke EFL build
https://bugs.webkit.org/show_bug.cgi?id=104883

Unreviewed EFL build fix.

Fix EFL build break after r137486 due to missing WebCore::
namespace.

No new tests, no behavior change for layout tests.

  • platform/NotImplemented.h:
Note: See TracTimeline for information about the timeline view.