Timeline



Dec 22, 2012:

8:44 PM EFLWebKitTests edited by Joone Hur
(diff)
6:36 PM Changeset in webkit [138415] by weinig@apple.com
  • 9 edits in trunk/Source/WebKit2

Give the ChildProcess a MessageReceiverMap
https://bugs.webkit.org/show_bug.cgi?id=105681

Reviewed by Dan Bernstein.

Moving the MessageReceiverMap to the ChildProcess will help shared code
between the WebProcess and NetworkProcess.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):
Pass 'this' instead of the MessageReceiverMap, now that ChildProcess
can be used to access the MessageReceiverMap.

  • NetworkProcess/NetworkProcess.h:

(NetworkProcess):
Remove the now extraneous MessageReceiverMap.

  • Shared/ChildProcess.cpp:

(WebKit::ChildProcess::ChildProcess):
(WebKit):
(WebKit::ChildProcess::~ChildProcess):
(WebKit::ChildProcess::addMessageReceiver):
(WebKit::ChildProcess::removeMessageReceiver):

  • Shared/ChildProcess.h:

(ChildProcess):
Add a MessageReceiverMap and helper functions from WebProcess.

  • WebProcess/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::AuthenticationManager):

  • WebProcess/Authentication/AuthenticationManager.h:

(AuthenticationManager):
Fix the FIXME, passing the ChildProcess rather than the MessageReceiverMap.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):

  • WebProcess/WebProcess.h:

(WebProcess):
Remove the MessageReceiverMap and helper functions.

6:19 PM Changeset in webkit [138414] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Windows build fix.

  • WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp:
6:15 PM Changeset in webkit [138413] by ap@apple.com
  • 90 edits
    3 adds
    2 deletes in trunk/Source

Add a separate class for networking related storage
https://bugs.webkit.org/show_bug.cgi?id=105676

Reviewed by Sam Weinig.

NetworkingContext combines a reference to storage (cookies and more) and data that's
only meaningful when loading. This makes it very ugly to use for cookie manipulation
when there is no load (e.g. for document.cookie).

Adding NetworkStorageSession, which encorportes network-related sesion data, such
as cookies and session HTTP credentials.

For some ports, refactoring is not finished, NetworkStorageSession being a wrapper
for NetworkingContext.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj: Updated for new files and functions.
  • platform/network/PlatformCookieJar.h:
  • loader/CookieJar.cpp:
  • platform/CookiesStrategy.h:
  • platform/network/cf/CookieJarCFNet.cpp:
  • platform/network/chromium/CookieJarChromium.cpp:
  • platform/network/curl/CookieJarCurl.cpp:
  • platform/network/mac/CookieJarMac.mm:
  • platform/network/qt/CookieJarQt.cpp:
  • platform/network/soup/CookieJarSoup.cpp:
  • platform/network/win/CookieJarWin.cpp: PlatformCookieJar and strategy cookie functions now take a NetworkStorageSession instead of NetworkingContext. Note that they take a const reference to support creating a temporary session wrapper for ports that just wrap a NetworkingContext.
  • loader/ResourceLoader.cpp:
  • loader/cache/CachedResource.h:
  • platform/network/BlobResourceHandle.cpp:
  • platform/network/ResourceHandle.cpp:
  • platform/network/ResourceHandle.h:
  • platform/network/ResourceHandleInternal.h:
  • platform/network/chromium/ResourceHandle.cpp:
  • platform/network/curl/ResourceHandleCurl.cpp:
  • platform/network/mac/ResourceHandleMac.mm:
  • platform/network/qt/QNetworkReplyHandler.cpp:
  • platform/network/soup/DNSSoup.cpp:
  • platform/network/soup/ResourceHandleSoup.cpp:
  • platform/network/win/ResourceHandleWin.cpp: ResourceHandle no longer includes unneeded NetworkingContext.h and AuthenticationClient.h. This avoids near-world rebuilds on any NetworkingContext change.
  • platform/network/NetworkStorageSession.h: Added.
  • platform/network/NetworkStorageSessionStub.cpp: Added.
  • platform/network/cf/NetworkStorageSessionCFNet.cpp: Added. Good new stuff. Stub version just wraps NetworkingContext for platforms that still need to finish the refactoring.
  • platform/network/NetworkingContext.h: The context now has a NetworkStorageSession, and doesn't expose CFNet level objects directly.
  • platform/network/cf/CookieStorageCFNet.cpp:
  • platform/network/cf/CookieStorageCFNet.h: Removed. We no longer have separate free functions to track storage, it's part of NetworkStorageSession now.
  • platform/network/cf/ResourceHandleCFNet.cpp: Updated to use NetworkStorageSession.
  • platform/network/mac/CookieStorageMac.mm: Dont include CookieStorageCFNet.h, it was not needed.
3:14 PM Changeset in webkit [138412] by thakis@chromium.org
  • 2 edits in trunk/Source/WebCore

InlineTextBox: Remove potentially confusing "} if" pattern.
https://bugs.webkit.org/show_bug.cgi?id=105499

Reviewed by Ojan Vafai.

It's not clear to me on first look if this is intentional or missing
an "else" (and this pattern was used in just one other place in
webkit, which I've removed). It turns out no else is missing here,
this is checked by fast/text/justified-selection.html

  • rendering/InlineTextBox.cpp:

(WebCore::paintTextWithShadows):

2:35 PM FeatureFlags edited by Laszlo Gombos
Remove COMMANDLINE_TYPEDARRAYS from the list - see r114575 (diff)
2:28 PM FeatureFlags edited by Laszlo Gombos
Remove JIT_USE_SOFT_MODULO from the list - see r111481 (diff)
1:53 PM FeatureFlags edited by Laszlo Gombos
Remove CLASSIC_INTERPRETER and COMPUTED_GOTO_CLASSIC_INTERPRETER from … (diff)
1:07 PM FeatureFlags edited by Laszlo Gombos
Remove ARM_NEON_INTRINSICS from the list as it is not an ENABLE flag - … (diff)
12:54 PM FeatureFlags edited by Laszlo Gombos
Remove RUN_TIME_HEURISTICS from the list - see r131089 (diff)
12:38 PM FeatureFlags edited by Laszlo Gombos
Remove SKIA_GPU_CANVAS from the list - see r97570 (diff)
12:28 PM FeatureFlags edited by Laszlo Gombos
Remove MAC_JAVA_BRIDGE from the list - see r129964 (diff)
12:20 PM FeatureFlags edited by Laszlo Gombos
Remove CSS3_FLEXBOX from the list - see r100198 (diff)
12:15 PM FeatureFlags edited by Laszlo Gombos
Fix typo - DRAGGBALE -> DRAGGABLE (diff)
12:11 PM FeatureFlags edited by Laszlo Gombos
Remove DATABASE from the list - see r95271 (diff)
12:00 AM Changeset in webkit [138411] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Rebaselining the global constructors test after r138393.
Adjusting and merging expectations as required.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/js/global-constructors-expected.txt:

Dec 21, 2012:

11:34 PM Changeset in webkit [138410] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: Update CodeMirror to stable
https://bugs.webkit.org/show_bug.cgi?id=105653

Patch by Jan Keromnes <janx@linux.com> on 2012-12-21
Reviewed by Pavel Feldman.

Fixes several minor issues, including throw scroll on mac.

  • inspector/front-end/cm/codemirror.css:

(.cm-negative):
(.cm-positive):
(.CodeMirror-gutter):
(.cm-searching):

  • inspector/front-end/cm/codemirror.js:

(window.CodeMirror):
(window.CodeMirror.):

  • inspector/front-end/cm/css.js:

(.):

  • inspector/front-end/cm/htmlmixed.js:

(.):

  • inspector/front-end/cm/javascript.js:

(.):

  • inspector/front-end/cm/xml.js:
10:16 PM Changeset in webkit [138409] by loislo@chromium.org
  • 2 edits in trunk/Source/WTF

Unreviewed. Another try to fix Apple Win Release build.

  • wtf/FastMalloc.cpp:

(WTF::ClassIndex):

10:06 PM Changeset in webkit [138408] by loislo@chromium.org
  • 2 edits in trunk/Source/WTF

Unreviewed compilation fix for Apple Win Release after r138398.

  • wtf/FastMalloc.cpp:

(WTF::ClassIndex):

9:40 PM Changeset in webkit [138407] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Remove Crash expectation from media/track tests after r138381.

  • platform/chromium/TestExpectations:
6:12 PM Changeset in webkit [138406] by thakis@chromium.org
  • 2 edits in trunk/Tools

chromium: webkit-build-directory doesn't handle ninja output dirs
https://bugs.webkit.org/show_bug.cgi?id=105671

Reviewed by Daniel Bates.

Teach webkit-build-directory to detect the ninja build directory.

  • Scripts/webkitdirs.pm:

(determineBaseProductDir):
(determineIsChromiumNinja):

5:06 PM Changeset in webkit [138405] by rniwa@webkit.org
  • 7 edits in trunk

[Mountain Lion] platform/mac/editing/spelling/removing-underline-after-accepting-autocorrection-using-punctuation.html failing
https://bugs.webkit.org/show_bug.cgi?id=95477

Reviewed by Sam Weinig.

Tools:

Co-authored by Jia Pu.

Specify a fixed autocorrection dictionary in resetDefaultsToConsistentValues() so that
we can have consistent autocorrection behavior when running tests.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetDefaultsToConsistentValues):

  • WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:

(WTR::InjectedBundle::platformInitialize):

LayoutTests:

Use "notationl" -> "notational" auto correction in autocorrection-blockquote-crash.html to get reliable results.
Also add a failing expectation to removing-underline-after-accepting-autocorrection-using-punctuation.html for WebKit2.
This failure is tracked by the bug 105616.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/editing/spelling/autocorrection-blockquote-crash-expected.txt:
  • platform/mac/editing/spelling/autocorrection-blockquote-crash.html:
4:24 PM Changeset in webkit [138404] by esprehn@chromium.org
  • 12 edits in trunk

Replace documentFragmentIsShadowRoot with isTreeScope
https://bugs.webkit.org/show_bug.cgi?id=105345

Reviewed by Dimitri Glazkov.

.:

Expose isTreeScope symbol.

  • Source/autotools/symbols.filter:

Source/WebCore:

We can replace documentFragmentIsShadowRoot with isTreeScope() which is
trival to detect by checking treeScope()->rootNode() == this. To do this
we must stop adopting ShadowRoots into the document when they're removed,
which was always wrong anyway as it meant that the TreeScope of a ShadowRoot
was no longer itself after it had been removed. It also meant that the
children of a ShadowRoot that was removed were no longer in it's tree scope
despite being descendants of it.

Making this simplification allows further simplication like
Node::containingShadowRoot can be made O(1) instead of O(k) where k is
the depth of the node.

No new tests, just refactoring.

  • WebCore.exp.in:
  • dom/DocumentFragment.h:

(DocumentFragment):

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::removeAllShadowRoots):

  • dom/Node.cpp:

(WebCore::Node::setTreeScope):
(WebCore::Node::isTreeScope):
(WebCore):

  • dom/Node.h:

(Node):
(WebCore::Node::isShadowRoot):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::~ShadowRoot):

  • dom/ShadowRoot.h:

(ShadowRoot):

Source/WebKit2:

Expose isTreeScope symbol.

  • win/WebKit2.def.in:
4:22 PM Changeset in webkit [138403] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Unreviewed, rolling out r138331.
http://trac.webkit.org/changeset/138331
https://bugs.webkit.org/show_bug.cgi?id=105668

Broke Windows clean builds; can't figure out how to fix it
(Requested by rniwa on #webkit).

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

Source/WebKit/win:

  • WebKit.vcproj/WebKit.sln:
  • WebKit.vcproj/WebKit.vcproj:
  • WebKit.vcproj/WebKitLibCommon.vsprops:
  • WebKit.vcproj/WebKitLibDebug.vsprops:
  • WebKit.vcproj/WebKitLibDebugAll.vsprops:
  • WebKit.vcproj/WebKitLibProduction.vsprops:
  • WebKit.vcproj/WebKitLibRelease.vsprops:

Source/WebKit2:

  • win/WebKit2.def.in:
3:48 PM Changeset in webkit [138402] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] IndexedDB: storage/indexeddb/intversion-close-between-events.html flaky in content_shell
https://bugs.webkit.org/show_bug.cgi?id=105665

Test uses a setTimeout() which may fire at different times relative to the completion of the
IDBOpenDBRequest in multiprocess ports. Make the test resilient against different outcomes.

Reviewed by Tony Chang.

  • storage/indexeddb/resources/intversion-close-between-events.js:

(deleteSuccess):
(openSuccessOrError):
(checkFinished):

3:27 PM Changeset in webkit [138401] by wangxianzhu@chromium.org
  • 4 edits in trunk/Source

[Chromium-Android] Use harfbuzz-ng instead of harfbuzz-old on Android
https://bugs.webkit.org/show_bug.cgi?id=104410

Source/WebCore:

Using harfbuzz-ng we can avoid many bugs of the obsolete harfbuzz-old.

Reviewed by Eric Seidel.

No new tests. No change of functionality. Existing tests should pass.

  • WebCore.gyp/WebCore.gyp: Use harfbuzz-ng on Android.

Source/WebKit/chromium:

Reviewed by Eric Seidel.

  • features.gypi: Enable harfbuzz-ng on Android.
3:26 PM Changeset in webkit [138400] by jsbell@chromium.org
  • 7 edits
    3 adds in trunk

IndexedDB: Combine openConnection and openConnectionWithVersion
https://bugs.webkit.org/show_bug.cgi?id=105658

Reviewed by Tony Chang.

Source/WebCore:

Combine the logic from these two methods. Mostly a refactor, but in the "pending calls"
case the behavior is slightly altered since the version and no-version queues were
previously separate, so the order changes. The new order matches the spec and FF/IE
behavior, and a test is added to verify this.

Chromium's webkit_unit_tests rely on a quirk to bypass the upgrade mechanism; the usage
is slightly altered and made more explicit, and requires a small amount of test-only code.

Test: storage/indexeddb/open-ordering.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::PendingOpenCall::create):
(WebCore::IDBDatabaseBackendImpl::PendingOpenCall::PendingOpenCall):
(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::transactionFinishedAndAbortFired):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::openConnection):
(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackendImpl::close):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBFactoryBackendImpl.cpp:

(WebCore::IDBFactoryBackendImpl::open):

Source/WebKit/chromium:

  • tests/IDBDatabaseBackendTest.cpp:

LayoutTests:

  • storage/indexeddb/open-ordering-expected.txt: Added.
  • storage/indexeddb/open-ordering.html: Added.
  • storage/indexeddb/resources/open-ordering.js: Added.

(runTest):
(onDeleteSuccess):
(onRequest1Success):
(onRequest2Success):
(onRequest3Success):
(checkOrder):

2:34 PM Changeset in webkit [138399] by fpizlo@apple.com
  • 7 edits
    3 adds in trunk/Source/JavaScriptCore

DFG Arrayify slow path should be out-of-line
https://bugs.webkit.org/show_bug.cgi?id=105400

Reviewed by Gavin Barraclough.

The interesting bit of this change is allowing out-of-line slow path generators
to emit speculation checks. This is accomplished by having a version of
speculationCheck() that returns a jump placeholder instead of taking a jump (or
jump list) as an argument. You can then fill in that jump placeholder at a
later time, so long as you do it before OSR exit linking. Slow path generators
run before linking, so that just naturally ends up working.

This isn't really a big win, but we know that out-of-lining slow paths is
generally a good thing to do, so it's fair to assume that this is a move in the
right direction.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • dfg/DFGArrayifySlowPathGenerator.h: Added.

(DFG):
(ArrayifySlowPathGenerator):
(JSC::DFG::ArrayifySlowPathGenerator::ArrayifySlowPathGenerator):
(JSC::DFG::ArrayifySlowPathGenerator::generateInternal):

  • dfg/DFGOSRExitJumpPlaceholder.cpp: Added.

(DFG):
(JSC::DFG::OSRExitJumpPlaceholder::fill):

  • dfg/DFGOSRExitJumpPlaceholder.h: Added.

(DFG):
(OSRExitJumpPlaceholder):
(JSC::DFG::OSRExitJumpPlaceholder::OSRExitJumpPlaceholder):
(JSC::DFG::OSRExitJumpPlaceholder::operator!):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::speculationCheck):
(DFG):
(JSC::DFG::SpeculativeJIT::arrayify):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

2:22 PM Changeset in webkit [138398] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Further harden FastMalloc
https://bugs.webkit.org/show_bug.cgi?id=105656

Reviewed by Gavin Barraclough.

This increases the degree to which we harden the FastMalloc
linked lists. We now also mask the previous and next pointers
in the doubly linked list implementation. I've also made
the masking itself somewhat more complex without a measurable
cost. We still use ASLR to provide some general entropy, but
we blind the pointers against each nodes 'this' pointer.

  • wtf/FastMalloc.cpp:

(WTF::ClassIndex):
(WTF::SLL_Next):
(WTF::SLL_SetNext):
(WTF::Span::next):
(WTF::Span::prev):
(WTF::Span::setNext):
(WTF::Span::setPrev):
(Span):

As Span now has to do masking on the next and previous pointers,
I've updated the code to use accessors instead.

(WTF::DLL_Init):
(WTF::DLL_Remove):
(WTF::DLL_IsEmpty):
(WTF::DLL_Length):
(WTF::DLL_Prepend):
(WTF::TCMalloc_Central_FreeList::enumerateFreeObjects):
(WTF::TCMalloc_PageHeap::scavenge):
(WTF::TCMalloc_PageHeap::New):
(WTF::TCMalloc_PageHeap::AllocLarge):
(WTF::TCMalloc_PageHeap::ReturnedBytes):
(WTF::TCMalloc_PageHeap::Check):
(WTF::TCMalloc_PageHeap::CheckList):
(WTF::TCMalloc_PageHeap::ReleaseFreeList):
(WTF::TCMalloc_Central_FreeList::FetchFromSpans):

2:17 PM Changeset in webkit [138397] by beidson@apple.com
  • 3 edits in trunk/Source/WebKit2

ASSERT in WebResourceLoadScheduler::scheduleLoad with a crashed NetworkProcess.
<rdar://problem/12924845> and https://bugs.webkit.org/show_bug.cgi?id=105646

Reviewed by Alexey Proskuryakov.

If we fail to schedule a loader with the NetworkProcess it is probably because the NetworkProcess crashed.

Since these loaders will never succeed in loading we should schedule them to fail on a timer.

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::WebResourceLoadScheduler):
(WebKit::WebResourceLoadScheduler::scheduleLoad):
(WebKit::WebResourceLoadScheduler::addUnschedulableLoad):
(WebKit::WebResourceLoadScheduler::unscheduledLoadTimerFired):
(WebKit::WebResourceLoadScheduler::remove):

  • WebProcess/Network/WebResourceLoadScheduler.h:
1:00 PM Changeset in webkit [138396] by acolwell@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Removing CRASH expectations for media layout tests
broken by http://crbug.com/162917.
https://bugs.webkit.org/show_bug.cgi?id=103093

  • platform/chromium/TestExpectations:
12:58 PM Changeset in webkit [138395] by kenneth@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed potential fix EFL/Qt test breakage on WK2

Only disable scrollbars when in fixed layout mode.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):

11:48 AM Changeset in webkit [138394] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Update localizable strings as a followup to http://trac.webkit.org/changeset/138387
https://bugs.webkit.org/show_bug.cgi?id=105592

Rubberstamped by Alexey Proskuryakov.

  • English.lproj/Localizable.strings: Added a new error string.
11:38 AM Changeset in webkit [138393] by kbr@google.com
  • 6 edits in trunk

Expose ArrayBufferView constructor on DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=105605

Reviewed by Sam Weinig.

Source/WebCore:

Update IDL to track recent spec change exposing ArrayBufferView
constructor on DOMWindow for instanceof checks. There are no
constructors exposed in the Web IDL, however, so calling it via
operator new throws TypeError.

Test (updated): fast/canvas/webgl/array-unit-tests.html

  • html/canvas/ArrayBufferView.idl:

Removed OmitConstructor attribute.

  • page/DOMWindow.idl:

Exposed ArrayBufferView constructor function attribute.

LayoutTests:

Updated test from Khronos repository.

  • fast/canvas/webgl/array-unit-tests-expected.txt:
  • fast/canvas/webgl/array-unit-tests.html:
11:27 AM Changeset in webkit [138392] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, unskip now passing tests.

  • platform/qt-5.0-wk2/TestExpectations:
11:14 AM Changeset in webkit [138391] by beidson@apple.com
  • 7 edits in trunk/Source

Remove ResourceLoadScheduler::addMainResourceLoad and all related code
<rdar://problem/12925275> and https://bugs.webkit.org/show_bug.cgi?id=105644

Reviewed by Alexey Proskuryakov.

Now that main resources loads are scheduled (bug 49246) we don't need this stuff anymore.

Source/WebCore:

No new tests (No change in behavior).

  • WebCore.exp.in:
  • loader/ResourceLoadScheduler.cpp:
  • loader/ResourceLoadScheduler.h:

Source/WebKit2:

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::remove):
(WebKit::WebResourceLoadScheduler::networkProcessCrashed):

  • WebProcess/Network/WebResourceLoadScheduler.h:
11:13 AM Changeset in webkit [138390] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WebGL][EFL][Qt] Transparent canvas composited non-transparent
https://bugs.webkit.org/show_bug.cgi?id=105325

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2012-12-21
Reviewed by Kenneth Rohde Christiansen.

glXPixmap is always created without alpha channel because 1st GLXFBConfig
in a list doesn't support transparency.
Use the same code that is used to find GLXFBConfig with alpha for window
creation in GraphicsSurfacePrivate::createPixmap(). Code is moved to
findFBConfigWithAlpha() method.

Covered by fast/canvas/webgl/webgl-composite-modes-repaint.html

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::createPixmap):
(WebCore::GraphicsSurfacePrivate::findFBConfigWithAlpha):
(GraphicsSurfacePrivate):

10:57 AM Changeset in webkit [138389] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fullscreen video fixed position container horizontal position is wrong
https://bugs.webkit.org/show_bug.cgi?id=105488

Patch by Max Feil <mfeil@rim.com> on 2012-12-21
Reviewed by George Staikos.

The fix for https://bugs.webkit.org/show_bug.cgi?id=105333 has
broken fullscreen video, which was compensating by doing its
own positioning in x. My patch fixes things by making vertical
and horizontal handling symmetrical.
NOTE: This function was not upstreamed before, so you can't
actually see my diff. See the bug.

  • Api/WebPage.cpp:

(WebKit):
(BlackBerry::WebKit::WebPagePrivate::adjustFullScreenElementDimensionsIfNeeded):

10:53 AM Changeset in webkit [138388] by weinig@apple.com
  • 8 edits in trunk/Source/WebKit2

Add WebKit2 SPI to get the current selection as a WebArchive
https://bugs.webkit.org/show_bug.cgi?id=105613

Reviewed by Anders Carlsson.

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetSelectionAsWebArchiveData):

  • UIProcess/API/C/WKPage.h:

Add SPI.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::getSelectionAsWebArchiveData):
(WebKit):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit):
(WebKit::frameWithSelection):
(WebKit::WebPage::getSelectionAsWebArchiveData):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

  • WebProcess/WebPage/WebPage.messages.in:

Pipe getter to the WebProcess and back.

10:46 AM Changeset in webkit [138387] by beidson@apple.com
  • 9 edits in trunk/Source/WebKit2

Perform cleanup in WebProcess if the NetworkProcess crashes.
<rdar://problem/12903117> and https://bugs.webkit.org/show_bug.cgi?id=105592

Reviewed by Alexey Proskuryakov.

If the NetworkProcess crashes, a whole bunch of WebResourceLoaders (and WebCore::ResourceLoaders)
might be orphaned in the WebProcess.

These loaders need to fail once it is apparent they will never finish loading.

  • Shared/API/c/WKError.h: Add a new error representing an "WebKit Internal Error."
  • WebProcess/WebCoreSupport/WebErrors.h:
  • WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:

(WebKit::internalError):

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::networkProcessCrashed): Call didFail all outstanding ResourceLoaders

and tell all WebResourceLoaders the NetworkProcess crashed.

  • WebProcess/Network/WebResourceLoadScheduler.h:
  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::networkProcessCrashed): Call didFail with the new InternalError

  • WebProcess/Network/WebResourceLoader.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::networkProcessConnectionClosed): Tell the scheduled the NetworkProcess crashed.

9:42 AM Changeset in webkit [138386] by Dimitri Glazkov
  • 74 edits in trunk

Unreviewed, rolling out r138376.
http://trac.webkit.org/changeset/138376
https://bugs.webkit.org/show_bug.cgi?id=104995

Broke a bunch of tests on mac.

Source/WebCore:

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::nodeName):
(WebCore):

  • dom/ShadowRoot.h:

(ShadowRoot):

LayoutTests:

  • editing/deleting/delete-ligature-001-expected.txt:
  • editing/pasteboard/copy-in-password-field-expected.txt:
  • editing/selection/select-all-textarea-expected.txt:
  • fast/dom/shadow/layout-tests-can-access-shadow-expected.txt:
  • fast/dom/shadow/layout-tests-can-access-shadow.html:
  • fast/dom/shadow/resources/shadow-dom.js:

(isShadowRoot):

  • fast/events/5056619-expected.txt:
  • fast/forms/focus-selection-input-expected.txt:
  • inspector/elements/shadow-dom-modify-chardata-expected.txt:
  • inspector/elements/shadow-root-expected.txt:
  • inspector/elements/update-shadowdom-expected.txt:
  • platform/chromium-linux/editing/selection/select-from-textfield-outwards-expected.txt:
  • platform/chromium-linux/fast/forms/input-text-double-click-expected.txt:
  • platform/chromium-linux/fast/forms/textfield-outline-expected.txt:
  • platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt:
  • platform/chromium-win/editing/deleting/delete-all-text-in-text-field-assertion-expected.txt:
  • platform/chromium-win/editing/input/caret-at-the-edge-of-input-expected.txt:
  • platform/chromium-win/editing/input/reveal-caret-of-multiline-input-expected.txt:
  • platform/chromium-win/editing/inserting/4960120-1-expected.txt:
  • platform/chromium-win/editing/pasteboard/drop-text-without-selection-expected.txt:
  • platform/chromium-win/editing/pasteboard/pasting-tabs-expected.txt:
  • platform/chromium-win/editing/selection/4895428-3-expected.txt:
  • platform/chromium-win/editing/selection/4975120-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-1-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-4-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-5-expected.txt:
  • platform/chromium-win/fast/events/autoscroll-expected.txt:
  • platform/chromium-win/fast/events/context-no-deselect-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-focus-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-readonly-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-selection-expected.txt:
  • platform/chromium-win/fast/forms/input-double-click-selection-gap-bug-expected.txt:
  • platform/chromium-win/fast/forms/input-placeholder-visibility-1-expected.txt:
  • platform/chromium-win/fast/forms/input-placeholder-visibility-3-expected.txt:
  • platform/chromium-win/fast/forms/input-readonly-autoscroll-expected.txt:
  • platform/chromium-win/fast/forms/input-text-click-inside-expected.txt:
  • platform/chromium-win/fast/forms/input-text-drag-down-expected.txt:
  • platform/chromium-win/fast/forms/input-text-option-delete-expected.txt:
  • platform/chromium-win/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/chromium-win/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/chromium-win/fast/forms/number/number-appearance-rtl-expected.txt:
  • platform/chromium-win/fast/forms/plaintext-mode-2-expected.txt:
  • platform/chromium-win/fast/forms/search-rtl-expected.txt:
  • platform/chromium-win/fast/forms/tabbing-input-iframe-expected.txt:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-1-expected.txt:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-2-expected.txt:
  • platform/chromium-win/fast/forms/textarea-scrollbar-expected.txt:
  • platform/chromium-win/fast/forms/textarea-scrolled-type-expected.txt:
  • platform/chromium-win/fast/forms/textfield-focus-ring-expected.txt:
  • platform/chromium-win/fast/forms/textfield-overflow-expected.txt:
  • platform/chromium-win/fast/frames/take-focus-from-iframe-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.txt:
  • platform/chromium-win/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
  • platform/chromium-win/fast/transforms/transformed-focused-text-input-expected.txt:
  • resources/dump-as-markup.js:

(Markup._get):

9:12 AM Changeset in webkit [138385] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Removing a list of failure expectations that were added as a precaution
in r138250 in case of regressions (which in the end didn't occur).

  • platform/gtk/TestExpectations:
9:05 AM Changeset in webkit [138384] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding a few missing expectations for tests that require their baselines
to be checked before they are added.
Adding and modifying expectations where necessary to accommodate recent
changes in test behavior.

  • platform/gtk/TestExpectations:
8:47 AM Changeset in webkit [138383] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r138237.
http://trac.webkit.org/changeset/138237
https://bugs.webkit.org/show_bug.cgi?id=105637

Regresses web inspector's editor performance. (Requested by
pfeldman on #webkit).

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

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine):
(WebInspector.TextEditorChunkedPanel.prototype._repaintAll):
(WebInspector.TextEditorMainChunk.prototype.expand):

8:45 AM Changeset in webkit [138382] by zandobersek@gmail.com
  • 4 edits
    2 adds in trunk

[GTK] Add WebKit1-specific TestExpectations file
https://bugs.webkit.org/show_bug.cgi?id=97562

Reviewed by Dirk Pranke.

Tools:

Implement the expectations_files method inside the GtkPort class that
returns the list of the TestExpectations files the current test configuration
requires. The method is implemented in a similar way as on the EFL port.
A unit test is also added.

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

(GtkPort._search_paths):
(GtkPort):
(GtkPort.expectations_files):

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

(GtkPortTest.test_expectations_files):

LayoutTests:

Add properly formatted but currently empty TestExpectations file
for GTK WebKit1-specific test expectations.

  • platform/gtk-wk1/TestExpectations: Added.
8:36 AM Changeset in webkit [138381] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Various tests in media/track are intermittently crashing.
https://bugs.webkit.org/show_bug.cgi?id=105606

Reviewed by Eric Seidel.

The root of problem is the fact that we update tracks even if we are in process of deleting the document.
Media element can stop doing that if the document informed the element via ::stop that it is going away.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::endIgnoringTrackDisplayUpdateRequests):

8:19 AM Changeset in webkit [138380] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

[Chromium/Mac] Don't send an onclick event from a ctrl-click
https://bugs.webkit.org/show_bug.cgi?id=105554

Patch by Alexei Svitkine <asvitkine@chromium.org> on 2012-12-21
Reviewed by Dimitri Glazkov.

Don't send the onclick event on a control click event (which
triggers the context menu on the Mac). This matches the
behaviour of the Apple Mac port, although the Apple port
does this by checking whether the context menu is visible
in WebPage::mouseEvent().

This is a fix for http://crbug.com/146143

Source/WebCore:

Test: fast/events/controlclick-no-onclick.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMouseReleaseEvent):

LayoutTests:

  • fast/events/controlclick-no-onclick-expected.txt: Added.
  • fast/events/controlclick-no-onclick.html: Added.
8:01 AM Changeset in webkit [138379] by shinyak@chromium.org
  • 6 edits
    2 adds in trunk

Implement ShadowRoot::elementFromPoint
https://bugs.webkit.org/show_bug.cgi?id=104579

Reviewed by Dimitri Glazkov.

Source/WebCore:

Move elementFromPoint and nodeFromPoint to TreeScope from Document so that ShadowRoot can call it.
In the elementFromPoint(), the element taken by nodeFromPoint is not in the same tree scope, its ancestor is returned.

Since nodeFromPoint does not return the shadow ancestor of the result node, I don't make it TreeScope method.

Test: fast/dom/shadow/elementfrompoint.html

  • dom/Document.cpp:

(WebCore::Document::elementFromPoint): Code is shared with TreeScope.
(WebCore::Document::caretRangeFromPoint):

  • dom/ShadowRoot.idl:
  • dom/TreeScope.cpp:

(WebCore::nodeFromPoint): Moved from Document.cpp
(WebCore):
(WebCore::TreeScope::elementFromPoint):

  • dom/TreeScope.h:

(WebCore):
(TreeScope):

LayoutTests:

  • fast/dom/shadow/elementfrompoint-expected.txt: Added.
  • fast/dom/shadow/elementfrompoint.html: Added.
7:55 AM Changeset in webkit [138378] by kenneth@webkit.org
  • 4 edits in trunk/Source

[EFL][WK2] Never create WebCore scrollbars for EFL/WK2
https://bugs.webkit.org/show_bug.cgi?id=105632

Reviewed by Antonio Gomes.

Source/WebCore:

For delegates scroll we must not use the scroll animator,
or similar as those depends on creating WebCore scrollbars.

Handle the wheel event manually for delegates scrolling.

  • page/FrameView.cpp:

(WebCore::FrameView::wheelEvent):

Source/WebKit2:

Then creating the frame ask to not create scrollbars and
lock it so they won't be created at any later time.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):

7:55 AM Changeset in webkit [138377] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Add Crash test expectation to the media/track/ tests which have explicit expectations.
It needs to be removed after fixing https://bugs.webkit.org/show_bug.cgi?id=105606

  • platform/chromium/TestExpectations:
7:44 AM Changeset in webkit [138376] by shinyak@chromium.org
  • 74 edits in trunk

[Shadow DOM]: ShadowRoot wrong nodeName attribute
https://bugs.webkit.org/show_bug.cgi?id=104995

Reviewed by Dimitri Glazkov.

Source/WebCore:

According to the Shadow DOM spec, ShadowRoot.nodeName should return '#document-fragment' instead of '#shadow-root'.
We remove ShadowRoot::nodeName.

No new tests, covered by existing tests.

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

(ShadowRoot):

LayoutTests:

Uses 'instanceof' to check the instance is ShadowRoot or not.
Update dump-as-markup.js to see 'instanceof' instead of nodeType.
Also, a lot of rebaselines have been conducted.

  • editing/deleting/delete-ligature-001-expected.txt:
  • editing/pasteboard/copy-in-password-field-expected.txt:
  • editing/selection/select-all-textarea-expected.txt:
  • fast/dom/shadow/layout-tests-can-access-shadow-expected.txt:
  • fast/dom/shadow/layout-tests-can-access-shadow.html:
  • fast/dom/shadow/resources/shadow-dom.js:

(isShadowRoot):

  • fast/events/5056619-expected.txt:
  • fast/forms/focus-selection-input-expected.txt:
  • inspector/elements/shadow-dom-modify-chardata-expected.txt:
  • inspector/elements/shadow-root-expected.txt:
  • inspector/elements/update-shadowdom-expected.txt:
  • platform/chromium-linux/editing/selection/select-from-textfield-outwards-expected.txt:
  • platform/chromium-linux/fast/forms/input-text-double-click-expected.txt:
  • platform/chromium-linux/fast/forms/textfield-outline-expected.txt:
  • platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt:
  • platform/chromium-win/editing/deleting/delete-all-text-in-text-field-assertion-expected.txt:
  • platform/chromium-win/editing/input/caret-at-the-edge-of-input-expected.txt:
  • platform/chromium-win/editing/input/reveal-caret-of-multiline-input-expected.txt:
  • platform/chromium-win/editing/inserting/4960120-1-expected.txt:
  • platform/chromium-win/editing/pasteboard/drop-text-without-selection-expected.txt:
  • platform/chromium-win/editing/pasteboard/pasting-tabs-expected.txt:
  • platform/chromium-win/editing/selection/4895428-3-expected.txt:
  • platform/chromium-win/editing/selection/4975120-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-1-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-4-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-5-expected.txt:
  • platform/chromium-win/fast/events/autoscroll-expected.txt:
  • platform/chromium-win/fast/events/context-no-deselect-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-focus-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-readonly-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-selection-expected.txt:
  • platform/chromium-win/fast/forms/input-double-click-selection-gap-bug-expected.txt:
  • platform/chromium-win/fast/forms/input-placeholder-visibility-1-expected.txt:
  • platform/chromium-win/fast/forms/input-placeholder-visibility-3-expected.txt:
  • platform/chromium-win/fast/forms/input-readonly-autoscroll-expected.txt:
  • platform/chromium-win/fast/forms/input-text-click-inside-expected.txt:
  • platform/chromium-win/fast/forms/input-text-drag-down-expected.txt:
  • platform/chromium-win/fast/forms/input-text-option-delete-expected.txt:
  • platform/chromium-win/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/chromium-win/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/chromium-win/fast/forms/number/number-appearance-rtl-expected.txt:
  • platform/chromium-win/fast/forms/plaintext-mode-2-expected.txt:
  • platform/chromium-win/fast/forms/search-rtl-expected.txt:
  • platform/chromium-win/fast/forms/tabbing-input-iframe-expected.txt:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-1-expected.txt:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-2-expected.txt:
  • platform/chromium-win/fast/forms/textarea-scrollbar-expected.txt:
  • platform/chromium-win/fast/forms/textarea-scrolled-type-expected.txt:
  • platform/chromium-win/fast/forms/textfield-focus-ring-expected.txt:
  • platform/chromium-win/fast/forms/textfield-overflow-expected.txt:
  • platform/chromium-win/fast/frames/take-focus-from-iframe-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.txt:
  • platform/chromium-win/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
  • platform/chromium-win/fast/transforms/transformed-focused-text-input-expected.txt:
  • resources/dump-as-markup.js:

(Markup._get):

7:36 AM Changeset in webkit [138375] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed rebaseline.

  • platform/chromium-win-xp/fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
7:30 AM Changeset in webkit [138374] by mihaip@chromium.org
  • 3 edits
    2 adds in trunk

Slow performance with <select> with many options and size >= 2
https://bugs.webkit.org/show_bug.cgi?id=105483

Source/WebCore:

Reviewed by Eric Seidel.

Avoids creating renderers for children of list <select>s that are not
<option> or <optgroup>. This is both more correct (no other browser
displays them) and provides a performance benefit (direct text children
of <select> would have O(N2) behavior; this usually happened due to
whitespace between <option>...</option> tags).

Test: fast/forms/menulist-no-renderer-for-unexpected-children.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::childShouldCreateRenderer):

LayoutTests:

Reviewed by Eric Seidel.

Test that checks that text and non-<option> and <optgroup> element
children of <select> do not get a renderer.

  • fast/forms/menulist-no-renderer-for-unexpected-children-expected.txt: Added.
  • fast/forms/menulist-no-renderer-for-unexpected-children.html: Added.
7:28 AM Changeset in webkit [138373] by sudarsana.nagineni@linux.intel.com
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Rebaseline fast/js/global-constructors.html after r138248.

  • platform/efl/fast/js/global-constructors-expected.txt:
7:19 AM Changeset in webkit [138372] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed rebaseline.

  • platform/chromium-win-xp/fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
7:08 AM Changeset in webkit [138371] by sudarsana.nagineni@linux.intel.com
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark svg/custom/feDisplacementMap-01.svg as missing.

  • platform/efl/TestExpectations:
6:51 AM Changeset in webkit [138370] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[EFL] Add guard around ContextMenuItemTagInspectElement
https://bugs.webkit.org/show_bug.cgi?id=105267

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-21
Reviewed by Ryosuke Niwa.

Need INSPECTOR guard for using ContextMenuItemTagInspectElement.

Source/WebKit/efl:

  • WebCoreSupport/AssertMatchingEnums.cpp:

Source/WebKit2:

  • UIProcess/API/efl/ewk_context_menu_item.cpp:
6:50 AM FeatureFlags edited by alexis@webkit.org
Add CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED (diff)
6:25 AM Changeset in webkit [138369] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Enable feature option for the CSS sticky position
https://bugs.webkit.org/show_bug.cgi?id=105630

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-12-21
Reviewed by Kenneth Rohde Christiansen.

Enable CSS sticky position feature by default for the
EFL port. This feature option was added in r138252.

No new tests. Existing layout tests pass.

  • Scripts/webkitperl/FeatureList.pm:
5:47 AM Changeset in webkit [138368] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[WK2] REGRESSION(r138232): It made 4 tests timeout
https://bugs.webkit.org/show_bug.cgi?id=105623

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-12-21
Reviewed by Kenneth Rohde Christiansen.

r138232 changed functionality so that empty text output
no longer leads to a dump() call, which leads to a timeout.
Instead do a text dump if there is text output or if there
is no audio output.

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::dumpResults):

5:40 AM Changeset in webkit [138367] by mikhail.pozdnyakov@intel.com
  • 3 edits
    3 adds in trunk

[WK2] TiledBackingStore: Scroll position is not reset when new page is loaded
https://bugs.webkit.org/show_bug.cgi?id=105627

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Reset scroll position to (0,0) when new page is loaded.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::sendViewportAttributesChanged):

LayoutTests:

Added a layout test checking scroll position for newly loaded pages.

  • fast/dom/resources/check-scroll-position-onload.html: Added.
  • fast/dom/scroll-position-for-new-loads-expected.txt: Added.
  • fast/dom/scroll-position-for-new-loads.html: Added.
5:30 AM Changeset in webkit [138366] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Rebaseline after r138365.

  • platform/chromium-mac-snowleopard/fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
4:42 AM Changeset in webkit [138365] by keishi@webkit.org
  • 13 edits in trunk

Fix typing zero into multiple field input
https://bugs.webkit.org/show_bug.cgi?id=105501

Reviewed by Kent Tamura.

Source/WebCore:

We have a couple of problems when handling zero in a multiple fields
element.

  1. Typing '02' into a month field will set '12'.
  2. Typing '0' into 12 hour hour field will set '12' and move to the focus to the next field.

This change adds a type ahead buffer so we can handle these cases
properly. If the value in the type ahead buffer is valid we set it so a
change event will fire.

Added tests to *-multiple-fields-keyboard-events.html.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::didBlur): Clear the type ahead
buffer. handleKeyboardEvent() won't set the type ahead value if it is
not in range, so we set the value here.
(WebCore::DateTimeNumericFieldElement::handleKeyboardEvent):
(WebCore::DateTimeNumericFieldElement::setEmptyValue): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::setValueAsInteger):
(WebCore::DateTimeNumericFieldElement::stepDown): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::stepUp): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::typeAheadValue): Returns integer
value for the type ahead characters.
(WebCore):
(WebCore::DateTimeNumericFieldElement::visibleValue): If we have type
ahead characters, show that.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement):

LayoutTests:

  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
  • fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events.html:
2:46 AM Changeset in webkit [138364] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GStreamer] Buffering ranges are reported incorrectly with GStreamer 1.0
https://bugs.webkit.org/show_bug.cgi?id=105319

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2012-12-21
Reviewed by Philippe Normand.

We add the gPercentMax constant to select between 100 and
GST_FORMAT_PERCENT_MAX depending if we are compiling against
GStreamer 0.10 or 1.0 and we use that in the corresponding method.

Current tests should suffice.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::buffered): Added the use of
gPercentMax constant instead of 100 to have the different code
paths for GStreamer 0.10 and 1.0.

2:46 AM Changeset in webkit [138363] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/efl

[EFL][WK1] Obsolete a case in test_ewk_frame api test to not make bot sick
https://bugs.webkit.org/show_bug.cgi?id=105142

Patch by Kangil Han <kangil.han@samsung.com> on 2012-12-21
Reviewed by Gyuyoung Kim.

BUG 49246 has changed load behavior on malformed url input.
That is why test_ewk_frame api test is timed out.
To not make bot sick, this patch comments out that test case at a moment.

  • tests/test_ewk_frame.cpp:

(TEST_F):

2:34 AM Changeset in webkit [138362] by János Badics
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Gardening after r138232. Skipped 4 tests timing out.
https://bugs.webkit.org/show_bug.cgi?id=105623

Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0-wk2/TestExpectations:
2:31 AM Changeset in webkit [138361] by timothy_horton@apple.com
  • 11 edits in trunk/Source

PDFPlugin: Cannot drop files/URLs on PDFPlugin
https://bugs.webkit.org/show_bug.cgi?id=105516
<rdar://problem/12729443>

Reviewed by Alexey Proskuryakov.

Add shouldAllowNavigationFromDrags to Plugin/PluginView/etc., which WebCore will
consult when dragging over a PluginDocument to decide whether or not a drag may result in navigation.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::shouldAllowNavigationFromDrags): Added, always returning false to keep existing behavior.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:

(NetscapePlugin): Added.

  • WebProcess/Plugins/PDF/SimplePDFPlugin.h:

(WebKit::SimplePDFPlugin::shouldAllowNavigationFromDrags): Added, always returning true. (Simple)PDFPlugin should
navigate when dropped onto, just like an image or HTML document would.

  • WebProcess/Plugins/Plugin.h:

(Plugin): Add shouldAllowNavigationFromDrags.

  • WebProcess/Plugins/PluginProxy.h: Add shouldAllowNavigationFromDrags.
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::shouldAllowNavigationFromDrags): Forward shouldAllowNavigationFromDrags to the plugin.

  • WebProcess/Plugins/PluginView.h: Add shouldAllowNavigationFromDrags.
  • page/DragController.cpp:

(WebCore::DragController::operationForLoad): If we drag over a PluginDocument, check if its PluginView
claims to support navigation resulting from a drag (only PDFPlugin will for now). If it does, allow the drag.

  • plugins/PluginViewBase.h:

(WebCore::PluginViewBase::shouldAllowNavigationFromDrags): Add shouldAllowNavigationFromDrags.

2:22 AM WK2-EFLTextCheckerApiTutorial created by g.czajkowski@samsung.com
2:19 AM Changeset in webkit [138360] by János Badics
  • 2 edits in trunk/LayoutTests

[Qt] Gardening after r138316. Skipped a new failing reftest
with minor pixel differences.

Reviewed by Csaba Osztrogonác.

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

Unreviewed, rolling out r138357.
http://trac.webkit.org/changeset/138357
https://bugs.webkit.org/show_bug.cgi?id=105622

wrong fix for the problem (the original author actually
already did this, and it's not helping) (Requested by thorton
on #webkit).

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

  • win/WebKit2.def.in:
2:05 AM Changeset in webkit [138358] by loislo@chromium.org
  • 10 edits in trunk

Unreviewed, rolling out r138338.
http://trac.webkit.org/changeset/138338
https://bugs.webkit.org/show_bug.cgi?id=105621

speculative rollout because fast/dom/shadow/content-element-
distributed-nodes.html is crashing on linux debug. (Requested
by loislo on #webkit).

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

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

  • WebCore.exp.in:
  • dom/DocumentFragment.h:
  • dom/Node.cpp:

(WebCore::Node::documentFragmentIsShadowRoot):
(WebCore):

  • dom/Node.h:

(Node):
(WebCore::Node::isShadowRoot):

  • dom/ShadowRoot.h:

Source/WebKit2:

  • win/WebKit2.def.in:
2:04 AM Changeset in webkit [138357] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed Windows build fix after http://trac.webkit.org/changeset/138338

  • win/WebKit2.def.in:
1:54 AM Changeset in webkit [138356] by timothy_horton@apple.com
  • 7 edits in trunk/Source/WebKit2

Reducing print preview scale significantly causes a crash
https://bugs.webkit.org/show_bug.cgi?id=105519
<rdar://problem/12807090>

Reviewed by Alexey Proskuryakov.

The bitmap image used for print previews was being created respecting the print preview scale.
This doesn't make any sense, as the scale does not affect the size of the image required to
represent the previewed page. Instead, we should not scale the size, creating the buffer at a
size that is constant regardless of scale, and do the scaling when drawing *into* the buffer instead.

In some cases, this could cause an out-of-memory crash.

  • UIProcess/API/mac/WKPrintingView.mm:

(-[WKPrintingView _drawPreview:]): Rename rect to scaledPrintingRect for clarity. Compute print
preview bitmap image size from the original non-scaled drawing size and the device scale factor.
Hand the image size to drawRectToImage. Draw the image without scaling, as it's always created
at the correct size. Don't compute the scale factor from the size of the image, we can know it from WebPageProxy.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::drawRectToImage): Add a parameter to drawRectForImage, imageSize.

  • UIProcess/WebPageProxy.h:

(WebPageProxy): Add a parameter to drawRectForImage, imageSize.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::drawRectToImage): Use imageSize to size our buffer, and scale up to make the printing rect
fit in the bitmap's bounds.

  • WebProcess/WebPage/WebPage.h:

(WebPage): Add a parameter to drawRectForImage, imageSize.

  • WebProcess/WebPage/WebPage.messages.in: Add a parameter to drawRectForImage, imageSize.
1:45 AM EFLWebKit edited by g.czajkowski@samsung.com
(diff)
1:33 AM Changeset in webkit [138355] by zeno.albisser@digia.com
  • 2 edits in trunk/Tools

[Qt][Mac] run-launcher cannot find Qt5WebKitWidgets.
https://bugs.webkit.org/show_bug.cgi?id=105309

On Windows the library name is Qt5WebKitWidgets as well.
So r138136 should not have adjusted the library name for Windows.

Reviewed by Simon Hausmann.

  • Scripts/webkitdirs.pm:

(builtDylibPathForName):

1:15 AM Changeset in webkit [138354] by adam.bergkvist@ericsson.com
  • 13 edits in trunk

MediaStream API: Update the MediaStream constructor
https://bugs.webkit.org/show_bug.cgi?id=98416

Reviewed by Adam Barth.

Updated the MediaStream constructor to support the more general argument
list from the latest Media Capture and Streams specification:
http://dev.w3.org/2011/webrtc/editor/getusermedia.html

Source/WebCore:

Added more test cases to existing tests.

  • Modules/mediastream/MediaStream.cpp:

(WebCore::containsSource):
(WebCore):
(WebCore::processTrack):
(WebCore::createFromSourceVectors):
(WebCore::MediaStream::create):

  • Modules/mediastream/MediaStream.h:
  • Modules/mediastream/MediaStream.idl:

LayoutTests:

  • fast/js/constructor-length.html:
  • fast/mediastream/MediaStreamConstructor-expected.txt:
  • fast/mediastream/MediaStreamConstructor.html:
  • platform/blackberry/fast/js/constructor-length-expected.txt:
  • platform/chromium/fast/js/constructor-length-expected.txt:
  • platform/gtk/fast/js/constructor-length-expected.txt:
  • platform/mac/fast/js/constructor-length-expected.txt:
  • platform/qt/fast/js/constructor-length-expected.txt:
1:07 AM Changeset in webkit [138353] by zeno.albisser@digia.com
  • 4 edits
    2 adds in trunk

[Qt] Add new TestExpectations for qt-5.0-mac-wk2.
https://bugs.webkit.org/show_bug.cgi?id=105424

This change will allow us to run a very specific
subset of the available LayoutTests on a mac buildbot.
The new baseline search path for mac will look as follows:
qt-5.0-mac-wk2 -> qt-5.0-wk2 -> qt-5.0 -> qt-mac -> qt

Reviewed by Dirk Pranke.

Tools:

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

(QtPort._search_paths):

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

(QtPortTest):

LayoutTests:

  • platform/qt-5.0-mac-wk2/TestExpectations: Added.

Dec 20, 2012:

11:40 PM Changeset in webkit [138352] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

More fix after r138348.

  • platform/network/cf/SocketStreamHandleCFNet.cpp:

(WebCore::SocketStreamHandle::createStreams):

11:25 PM Changeset in webkit [138351] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Disable Nagle algorithm on WebSocket implementation for CF.
https://bugs.webkit.org/show_bug.cgi?id=102079

Build fix. Disable the new code on Lion, _kCFStreamSocketSetNoDelay apparently
cannot be used on this OS version.

  • platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
11:11 PM Changeset in webkit [138350] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, rolling out r138347.
http://trac.webkit.org/changeset/138347

media/track tests still failing

  • platform/chromium/TestExpectations:
10:44 PM Changeset in webkit [138349] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Fix build warnings related with gstreamer
https://bugs.webkit.org/show_bug.cgi?id=105614

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-20
Reviewed by Kentaro Hara.

The below functions have unused parameters.
Remove the parameter names to fix 'unused parameter' build warnings.

  • platform/audio/gstreamer/AudioDestinationGStreamer.cpp:

(WebCore::onGStreamerWavparsePadAddedCallback):

  • platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:

(WebCore::messageCallback):
(WebCore::onGStreamerDeinterleavePadAddedCallback):
(WebCore::onGStreamerDeinterleaveReadyCallback):
(WebCore::onGStreamerDecodebinPadAddedCallback):

10:07 PM Changeset in webkit [138348] by toyoshim@chromium.org
  • 2 edits in trunk/Source/WebCore

Disable Nagle algorithm on WebSocket implementation for CF.
https://bugs.webkit.org/show_bug.cgi?id=102079

Reviewed by Alexey Proskuryakov.

Set TCP_NODELAY on CFWriteStream for SocketStreamHandle to improve
communication latency. Combination of Nagle and delayed-ACK could
affect performance in some environment, e.g., over Wifi network.

  • platform/network/cf/SocketStreamHandleCFNet.cpp:

(WebCore::SocketStreamHandle::createStreams):

9:37 PM Changeset in webkit [138347] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Rollout Crash Pass expectation changes for media/track after rolling out r138320.

  • platform/chromium/TestExpectations:
9:08 PM Changeset in webkit [138346] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[WebGL][EFL][Qt][GTK] Jelly fishes leave trails on webgl canvas.
https://bugs.webkit.org/show_bug.cgi?id=105326

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

Clear a drawing buffer after compositing if preserveDrawingBuffer is
false.
http://www.khronos.org/registry/webgl/specs/latest/#2.2

No new tests. Covered by existing webgl-preserve-drawing-buffer-repaint test.

  • platform/graphics/cairo/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(GraphicsContext3DPrivate::copyToGraphicsSurface):

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
(WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface):

8:32 PM Changeset in webkit [138345] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Revert the wrong expectation update done in r138344 and fix a syntax error in TestExpectations for Mac.

  • platform/mac/TestExpectations:
  • platform/mac/editing/spelling/removing-underline-after-accepting-autocorrection-using-punctuation-expected.txt:
8:17 PM Changeset in webkit [138344] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mac test expectation once more.

It turned out that the bug 73865 had been fixed for JSC. So filed the bug 105606 instead.
At this point, I have to add [ Crash Pass ] expectation to the entire media/track for
the lack of alternatives.

i.e. now these media/track tests crashes are tracked by the bug 105606.

  • platform/mac/TestExpectations:
7:08 PM Changeset in webkit [138343] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[CoordGfx] Make single-argument AreaAllocator constructors explicit
https://bugs.webkit.org/show_bug.cgi?id=105598

Patch by Helder Correia <Helder Correia> on 2012-12-20
Reviewed by Noam Rosenthal.

Follow the coding style for AreaAllocator and GeneralAreaAllocator.

  • WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.h:

(AreaAllocator):
(GeneralAreaAllocator):

7:00 PM Changeset in webkit [138342] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Even more Mac test expectation for bug 73865.

  • platform/mac/TestExpectations:
6:58 PM Changeset in webkit [138341] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add more Mac test expectations for bugs 73865 and 105603.

  • platform/mac/TestExpectations:
6:49 PM Changeset in webkit [138340] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a Mac test expectation per bug 105601.

  • platform/mac/TestExpectations:
6:47 PM Changeset in webkit [138339] by fpizlo@apple.com
  • 2 edits in trunk/Source/WebCore

Create a variable name for a RAII scope so it doesn't die immediately.

Reviewed by Sam Weinig.

No new tests.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTrackAddCues):
(WebCore::HTMLMediaElement::textTrackRemoveCues):
(WebCore::HTMLMediaElement::removeTrack):
(WebCore::HTMLMediaElement::removeAllInbandTracks):

6:42 PM Changeset in webkit [138338] by esprehn@chromium.org
  • 10 edits in trunk

Replace documentFragmentIsShadowRoot with isTreeScope
https://bugs.webkit.org/show_bug.cgi?id=105345

Reviewed by Dimitri Glazkov.

.:

Expose isTreeScope symbol.

  • Source/autotools/symbols.filter:

Source/WebCore:

We can replace documentFragmentIsShadowRoot with isTreeScope() which is
trival to detect by checking treeScope()->rootNode() == this;

No new tests, just refactoring.

  • WebCore.exp.in:
  • dom/DocumentFragment.h:

(DocumentFragment):

  • dom/Node.cpp:

(WebCore::Node::isTreeScope):

  • dom/Node.h:

(Node):
(WebCore::Node::isShadowRoot):

  • dom/ShadowRoot.h:

(ShadowRoot):

Source/WebKit2:

Expose isTreeScope symbol.

  • win/WebKit2.def.in:
6:41 PM Changeset in webkit [138337] by Lucas Forschler
  • 2 edits in tags/Safari-537.23/Source/WebKit2

Merged r138336.

6:35 PM Changeset in webkit [138336] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Set timer coalescing policy for WebKit2 processes on Mac until process visible assertion handles it automatically
https://bugs.webkit.org/show_bug.cgi?id=105594

Patch by Kiran Muppala <cmuppala@apple.com> on 2012-12-20
Reviewed by Mark Rowe.

  • Shared/mac/ChildProcessMac.mm:

(WebKit::initializeTimerCoalescingPolicy): Set task_latency and task_throughput QOS tiers as appropriate
for visible applications.
(WebKit::ChildProcess::platformInitialize): Add call to initializeTimerCoalescingPolicy.

6:18 PM Changeset in webkit [138335] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add another Mac test expectations for the bug 73865.

  • platform/mac/TestExpectations:
6:09 PM Changeset in webkit [138334] by commit-queue@webkit.org
  • 9 edits
    6 adds in trunk

Add canvas blending modes using Core Graphics
https://bugs.webkit.org/show_bug.cgi?id=100070

Patch by Rik Cabanier <cabanier@adobe.com> on 2012-12-20
Reviewed by Dirk Schulze.

Source/WebCore:

globalCompositeOperation is extended so it takes blend modes as well as compositing operators.
This patch adds an implementation for the Core Graphics port.

Tests: fast/canvas/canvas-blend-image.html

fast/canvas/canvas-blend-solid.html

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation): Passed blendMode to underlying layer.
(WebCore::CanvasRenderingContext2D::drawImage): Passed blendMode to underlying drawImage call.
(WebCore::CanvasRenderingContext2D::drawImageFromRect): Passed blendMode to platofrm layer.

  • html/canvas/CanvasRenderingContext2D.h:

(CanvasRenderingContext2D): Eextended drawImage with new blendmode parameter.

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::setPlatformCompositeOperation): Passed blendmode to Core Graphics API.

LayoutTests:

Added test files for the new blending modes in Canvas

  • fast/canvas/canvas-blend-image-expected.txt: Added.
  • fast/canvas/canvas-blend-image.html: Added.
  • fast/canvas/canvas-blend-solid-expected.txt: Added.
  • fast/canvas/canvas-blend-solid.html: Added.
  • fast/canvas/script-tests/canvas-blend-image.js: Added.

(myGetImageData):
(checkBlendModeResult):
(prepareTestScenario):

  • fast/canvas/script-tests/canvas-blend-solid.js: Added.

(myGetImageData):
(checkBlendModeResult):
(prepareTestScenario):

  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
6:03 PM Changeset in webkit [138333] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed, mark a new test as failing on Chromium Mac.

  • platform/chromium/TestExpectations:
5:52 PM Changeset in webkit [138332] by commit-queue@webkit.org
  • 10 edits
    2 adds in trunk

Percentage min/max width replaced element may incorrectly rendered
https://bugs.webkit.org/show_bug.cgi?id=105264

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

Source/WebCore:

To make do not include percentage min width in preferred logical width calculation,
because we cannot resolve it for preferred width.

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

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
(WebCore::RenderBox::computeReplacedLogicalWidthRespectingMinMaxWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
If shouldComputePreferred is ComputePreferred,
don't use minLogicalWidth or maxLogicalWidth if they are percent type.

  • rendering/RenderBox.h:

(RenderBox):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
(WebCore::RenderReplaced::computeMaxPreferredLogicalWidth):
Modify from set includeMaxWidth=false to set shouldComputePreferred=ComputePreferred.

  • rendering/RenderReplaced.h:

(RenderReplaced):

  • rendering/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.

  • rendering/RenderSVGRoot.h:

(RenderSVGRoot):

  • rendering/RenderVideo.cpp:

(WebCore::RenderVideo::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.

  • rendering/RenderVideo.h:

(RenderVideo):

LayoutTests:

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

  • fast/css/percent-min-width-img-src-change-expected.txt: Added.
  • fast/css/percent-min-width-img-src-change.html: Added.
5:43 PM Changeset in webkit [138331] by andersca@apple.com
  • 10 edits in trunk/Source

Stop building WebKit2 for Windows
https://bugs.webkit.org/show_bug.cgi?id=105585

Reviewed by Brian Weinstein.

Source/WebKit/win:

Stop building WebKit2 on Windows, and change WebKit.vcproj to build WebKit.dll again.

  • WebKit.vcproj/WebKit.sln:
  • WebKit.vcproj/WebKit.vcproj:
  • WebKit.vcproj/WebKitApple.vsprops: Added.
  • WebKit.vcproj/WebKitDirectX.vsprops: Added.
  • WebKit.vcproj/WebKitLibCommon.vsprops:
  • WebKit.vcproj/WebKitLibDebug.vsprops:
  • WebKit.vcproj/WebKitLibDebugAll.vsprops:
  • WebKit.vcproj/WebKitLibProduction.vsprops:
  • WebKit.vcproj/WebKitLibRelease.vsprops:

Source/WebKit2:

Remove an unneeded export.

  • win/WebKit2.def.in:
5:39 PM Changeset in webkit [138330] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add Mac test expectations for the bug 73865.

  • platform/mac/TestExpectations:
5:26 PM Changeset in webkit [138329] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Finally found the problem. Using the wrong JSContextGroup.

5:18 PM Changeset in webkit [138328] by ap@apple.com
  • 3 edits in trunk/Source/WebCore

REGRESSION (r138191): Tests crash in ResourceRequest::setStorageSession
https://bugs.webkit.org/show_bug.cgi?id=105563

Reviewed by Brady Eidson.

Partially fixes crashing http/tests/appcache/main-resource-redirect.html
(but there is an unrelated regression affecting this test).

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::willSendRequest):
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::willSendRequest): The client can make the object get destoryed, protect it to avoid accessing deleted memory.
5:01 PM Changeset in webkit [138327] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] [WebGL] [Wk2] Contents are not rendered properly.
https://bugs.webkit.org/show_bug.cgi?id=104664

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2012-12-20
Reviewed by Noam Rosenthal.

WebGL pages that render more than one frame are broken. Only 1st
frame comes to the UI side. All webgl repaint tests fail because
of this.
Specification of EXT_texture_from_pixmap extension here
http://www.opengl.org/registry/specs/EXT/texture_from_pixmap.txt
says, that:
"The contents of the texture after the drawable has been bound are defined
as the result of all rendering that has completed before the call to
glXBindTexImageEXT."
It means that in order to get updates for every frame glXBindTexImageEXT has
to be called on every frame update.

Covered by existing fast/canavs/webgl/*repaint tests.

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::isReceiver):
(WebCore::GraphicsSurface::platformSwapBuffers):

  • platform/graphics/texmap/TextureMapperBackingStore.cpp:

(WebCore::TextureMapperSurfaceBackingStore::swapBuffersIfNeeded):

4:59 PM Changeset in webkit [138326] by ryuan.choi@samsung.com
  • 36 edits
    1 add in trunk

[EFL] Build break with latest EFL libraries.
https://bugs.webkit.org/show_bug.cgi?id=104827

Reviewed by Laszlo Gombos.

.:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • Source/cmake/FindEo.cmake: Added.
  • Source/cmake/OptionsEfl.cmake:

Modified to check Eo when version of EFL libraries is 1.8.

Source/WebCore:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • PlatformEfl.cmake: Includes eo EFL library.
  • platform/Widget.h: Modified declaration of Evas and Evas_Object.

In addition, removed unnecessary declaration.

  • platform/efl/EflScreenUtilities.h: Modified declaration of Evas.
  • platform/efl/RenderThemeEfl.h: Removed unnecessary declaration.
  • platform/graphics/Icon.h: Ditto.
  • platform/graphics/Image.h: Modified declaration of Evas and Evas_Object.

Source/WebKit:

  • PlatformEfl.cmake: Includes eo EFL library.

Source/WebKit/efl:

  • WebCoreSupport/ChromeClientEfl.h: Removed unnecessary declaration.
  • WebCoreSupport/DumpRenderTreeSupportEfl.h: Ditto.
  • WebCoreSupport/EditorClientEfl.h: Ditto.
  • WebCoreSupport/FrameNetworkingContextEfl.h: Ditto.
  • WebCoreSupport/PageClientEfl.h: Ditto.

Source/WebKit2:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • PlatformEfl.cmake: Includes eo EFL library.
  • UIProcess/API/C/efl/WKAPICastEfl.h: Modified declaration of Evas_Object.
  • UIProcess/API/C/efl/WKView.h: Modified declaration of Evas.
  • UIProcess/efl/WebPopupMenuProxyEfl.h: Removed unnecessary declaration.

Source/WTF:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • wtf/OwnPtrCommon.h: Modified declaration of Evas_Object and Ecore_Timer.
  • wtf/PlatformEfl.cmake: Includes eo EFL library.
  • wtf/efl/RefPtrEfl.h: Modified declaration of Evas_Object.

Tools:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • DumpRenderTree/efl/CMakeLists.txt: Includes eo EFL library.
  • EWebLauncher/CMakeLists.txt: Ditto.
  • MiniBrowser/efl/CMakeLists.txt: Ditto.
  • ImageDiff/PlatformEfl.cmake: Ditto.
  • TestWebKitAPI/PlatformEfl.cmake: Ditto.
  • TestWebKitAPI/PlatformWebView.h: Modified declaration of Evas_Object.
  • WebKitTestRunner/InjectedBundle/TestRunner.h: Modified declaration of Ecore_Timer.
  • WebKitTestRunner/PlatformEfl.cmake: Includes eo EFL library.
  • WebKitTestRunner/PlatformWebView.h: Modified declaration of Evas_Object.
4:58 PM Changeset in webkit [138325] by dmazzoni@google.com
  • 2 edits in trunk/LayoutTests

accessibility/svg-remote-element.html is flaky (times out)
https://bugs.webkit.org/show_bug.cgi?id=105587

Reviewed by Chris Fleizach.

Avoid race condition where the test would never run if the
SVG image was already loaded before the load event listener
gets added.

  • accessibility/svg-remote-element.html:
4:51 PM Changeset in webkit [138324] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[CoordGfx] Remove CoordinatedLayerUpdateInfo class forwarding
https://bugs.webkit.org/show_bug.cgi?id=105588

Patch by Helder Correia <Helder Correia> on 2012-12-20
Reviewed by Noam Rosenthal.

There is no such class.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(WebKit):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(WebKit):

4:46 PM Changeset in webkit [138323] by eae@chromium.org
  • 4 edits in trunk/LayoutTests

Unreviewed, remove css3/flexbox/flex-algorithm.html from efl, gtk and qt TestExpectations file.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
4:44 PM Changeset in webkit [138322] by dino@apple.com
  • 4 edits in trunk/LayoutTests

REGRESSION: media/video-controls-captions-trackmenu.html intermittently fails
https://bugs.webkit.org/show_bug.cgi?id=105584

Unreviewed expected results update. Remove the failure expectation.

  • media/video-controls-captions-trackmenu-expected.txt:
  • media/video-controls-captions-trackmenu.html:
  • platform/mac/TestExpectations:
4:29 PM Changeset in webkit [138321] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Try to convince bots to be happy with testapi.

4:23 PM Changeset in webkit [138320] by commit-queue@webkit.org
  • 18 edits
    2 deletes in trunk

Unreviewed, rolling out r138270.
http://trac.webkit.org/changeset/138270
https://bugs.webkit.org/show_bug.cgi?id=105589

Many media tests are failing/crashing intermittently, often
pointing at WebCore::HTMLTrackElement::didCompleteLoad as
culprit (Requested by dino_ on #webkit).

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

Source/WebCore:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTrackModeChanged):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::HTMLTrackElement):
(WebCore::HTMLTrackElement::insertedInto):
(WebCore::HTMLTrackElement::parseAttribute):
(WebCore::HTMLTrackElement::scheduleLoad):
(WebCore::HTMLTrackElement::textTrackModeChanged):

  • html/HTMLTrackElement.h:
  • html/track/TextTrack.cpp:
  • html/track/TextTrack.h:

LayoutTests:

  • fast/events/constructors/track-event-constructor.html:
  • http/tests/security/text-track-crossorigin.html:
  • media/track/track-add-track-expected.txt:
  • media/track/track-add-track.html:
  • media/track/track-element-load-event-expected.txt: Removed.
  • media/track/track-element-load-event.html: Removed.
  • media/track/track-load-from-src-readyState.html:
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
4:21 PM Changeset in webkit [138319] by psolanki@apple.com
  • 6 edits in trunk/Source

Rename HAVE(NETWORK_CFDATA_ARRAY_CALLBACK) to USE(NETWORK_CFDATA_ARRAY_CALLBACK)
https://bugs.webkit.org/show_bug.cgi?id=105578

Reviewed by Alexey Proskuryakov.

Source/WebCore:

  • loader/ResourceBuffer.cpp: Remove duplicate append() call that was under the wrong ifdef.
  • loader/ResourceBuffer.h:

Source/WebKit2:

  • NetworkProcess/NetworkResourceLoader.cpp:
  • NetworkProcess/NetworkResourceLoader.h:
4:20 PM Changeset in webkit [138318] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a crash test expectation on Mac. ap is looking into the problem as we speak.

  • platform/mac/TestExpectations:
4:15 PM Changeset in webkit [138317] by esprehn@chromium.org
  • 4 edits
    2 adds in trunk

RenderBlock hit testing should ignore PseudoElements
https://bugs.webkit.org/show_bug.cgi?id=105545

Reviewed by Eric Seidel.

Source/WebCore:

Use nonPseudoNode() in hit testing code in RenderBlock and RenderBox so
that when clicking on the box generated by a pseudo element we never
generate a Position for the PseudoElement, but instead for the
generating node.

Test: fast/css-generated-content/block-and-box-hit-testing.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::positionForBox):
(WebCore::isEditingBoundary):
(WebCore::positionForPointRespectingEditingBoundaries):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::positionForPoint):

LayoutTests:

Add test for hit testing on pseudo element generated blocks and boxes.

  • fast/css-generated-content/block-and-box-hit-testing-expected.txt: Added.
  • fast/css-generated-content/block-and-box-hit-testing.html: Added.
4:13 PM Changeset in webkit [138316] by schenney@chromium.org
  • 5 edits
    2 adds in trunk

SVG: <altglpyh> for a surrogate pair character in a ligature fails
https://bugs.webkit.org/show_bug.cgi?id=102969

Reviewed by Dirk Schulze.

Source/WebCore:

There are two issues with SVG <altglyph> tags applied to surrogate
fonts, particularly when mixed with non-standard forms (arabic,
vertical, etc.).

First, there is an assertion that is invalid when an alt glyph is
substituted for the surrogate, because the text chunk that is consumed
by an alt glyph is the entire run, whereas we assert that a
surrogate's chunk is length 2 regardless. That assertion has been
removed.

Second, when an arabic character or some other characters requiring a
special form appears before the surrogate pair character inside the alt
glyph tag, we reject the alt glyph because it is not compatible with the form.
However, when we process the next character - the surrogate pair - we
do accept the alt glyph. This breaks all the indexes because we have
already consumed part of the run that is now considered the alt glyph.
Chaos ensues. This patch forces us to always accept alt glyph
characters (assuming we have some glyph to draw). This better matches
the intent of the spec - if someone specifies an alt glyph they are
explicitly stating which glyph they want used. We should not argue
with the content author.

Tests: svg/text/alt-glyph-for-surrogate-pair-expected.svg

svg/text/alt-glyph-for-surrogate-pair.svg

  • rendering/svg/SVGTextLayoutEngine.cpp:

(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath): Fix some poor code.

  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::advanceSimpleText): Remove an assert that is not always valid.

  • svg/SVGFontData.cpp:

(WebCore::SVGFontData::applySVGGlyphSelection): Always return an altGlyph when found. Do not check it compatibility.

LayoutTests:

Test and reference result for altGlyph elements applied to a surrogate pair
following an arabic form. Note that these tests are html, but for the test to fail
without the patch they must be parsed as svg (xml).

  • svg/text/alt-glyph-for-surrogate-pair-expected.svg: Added.
  • svg/text/alt-glyph-for-surrogate-pair.svg: Added.
4:09 PM Changeset in webkit [138315] by adamk@chromium.org
  • 4 edits in trunk

Properly process <template> end tags when in TemplateContentsMode
https://bugs.webkit.org/show_bug.cgi?id=105556

Reviewed by Eric Seidel.

Source/WebCore:

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processEndTag): Take care of the FIXME and just call
processTemplateEndTag() instead of incorrectly special-casing the end tag behavior in some cases.

LayoutTests:

  • html5lib/resources/template.dat:
4:04 PM Changeset in webkit [138314] by dpranke@chromium.org
  • 3 edits in trunk/Tools

TestExpectation fallback is broken
https://bugs.webkit.org/show_bug.cgi?id=105583

Reviewed by Ryosuke Niwa.

When I added support for the -wk2 in port names, it looks
like I broke the way we computed the list of TestExpectations
files so that the implementation-version directory was left out :(.
Fixed and cleaned up the tests.

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

(Port.expectations_files):

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

(TestWebKitPort.init):
(PortTestCase.test_skipped_directories_for_symbols):
(test_skipped_directories_for_features):
(test_skipped_directories_for_features_no_matching_tests_in_test_list):
(test_skipped_tests_for_unsupported_features_empty_test_list):
(test_skipped_layout_tests):
(test_expectations_files):

3:57 PM Changeset in webkit [138313] by commit-queue@webkit.org
  • 13 edits in trunk

.: [EFL][WebGL][Wk2] Replace HAVE(GLX) checks with USE(GLX).
https://bugs.webkit.org/show_bug.cgi?id=105431

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-20
Reviewed by Kenneth Rohde Christiansen.

This patch changes the check HAVE(GLX) to USE(GLX).
This would enable us to choose our preferred GL backend during build time.

  • Source/cmake/OptionsEfl.cmake:

Source/WebCore: [EFL][WebGL][Wk2] Replace HAVE(GLX) checks with USE(GLX)
https://bugs.webkit.org/show_bug.cgi?id=105431

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-20
Reviewed by Kenneth Rohde Christiansen.

This patch changes the check HAVE(GLX) to USE(GLX).
This would enable us to choose our preferred GL backend during build time.
This patch also adds an additional api to query the shared buffer handle.
Buffer handle is not same as gl surface and would depend on how the content is
backed up.

  • platform/graphics/opengl/GLDefs.h:

(WebCore):

  • platform/graphics/opengl/GLPlatformContext.cpp:

(WebCore::GLPlatformContext::createContext):
(WebCore::GLPlatformContext::createOffScreenContext):
(WebCore::GLPlatformContext::createCurrentContextWrapper):

  • platform/graphics/opengl/GLPlatformSurface.cpp:

(WebCore::GLPlatformSurface::createOffscreenSurface):
(WebCore::GLPlatformSurface::createTransportSurface):
(WebCore::GLPlatformSurface::GLPlatformSurface):
(WebCore::GLPlatformSurface::handle):
(WebCore):
(WebCore::GLPlatformSurface::drawable):

  • platform/graphics/opengl/GLPlatformSurface.h:

(GLPlatformSurface):

  • platform/graphics/surfaces/glx/GLXContext.cpp:
  • platform/graphics/surfaces/glx/GLXContext.h:
  • platform/graphics/surfaces/glx/GLXSurface.cpp:

(WebCore::GLXTransportSurface::GLXTransportSurface):
(WebCore::GLXTransportSurface::destroy):
(WebCore::GLXPBuffer::initialize):
(WebCore::GLXPBuffer::freeResources):

  • platform/graphics/surfaces/glx/GLXSurface.h:
  • platform/graphics/surfaces/glx/GLXWindowResources.h:
  • platform/graphics/surfaces/glx/X11WindowResources.cpp:

(WebCore::X11OffScreenWindow::X11OffScreenWindow):
(WebCore::X11OffScreenWindow::setGeometry):
(WebCore::X11OffScreenWindow::createOffscreenWindow):
(WebCore::X11OffScreenWindow::destroyWindow):

  • platform/graphics/surfaces/glx/X11WindowResources.h:

(WebCore):
(DummySharedResources):
(WebCore::DummySharedResources::create):
(WebCore::DummySharedResources::nativeDisplay):
(WebCore::DummySharedResources::pBufferContextConfig):
(WebCore::DummySharedResources::surfaceContextConfig):
(WebCore::DummySharedResources::DummySharedResources):
(WebCore::DummySharedResources::~DummySharedResources):

3:54 PM Changeset in webkit [138312] by eae@chromium.org
  • 4 edits in trunk

[flexbox] Fix handling of very large flex grow/shrink values
https://bugs.webkit.org/show_bug.cgi?id=105579

Reviewed by Tony Chang.

Source/WebCore:

Add isfinite to childSize calculation in RenderFlexibleBox::
resolveFlexibleLengths to avoid overflow.

Covered by css3/flexbox/flex-algorithm.html.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::resolveFlexibleLengths):
Check if value is finite before adding to childSize.

LayoutTests:

Update expectations for element with very large flex grow value.

  • css3/flexbox/flex-algorithm.html:
3:51 PM Changeset in webkit [138311] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r138265.
http://trac.webkit.org/changeset/138265
https://bugs.webkit.org/show_bug.cgi?id=105586

Accidentally committed extra code that is not reviewed and
shouldn't go with this commit. (Requested by ostap on
#webkit).

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

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::createPixmap):
(GraphicsSurfacePrivate):
(WebCore::GraphicsSurface::platformSwapBuffers):

  • platform/graphics/texmap/TextureMapperBackingStore.cpp:

(WebCore::TextureMapperSurfaceBackingStore::swapBuffersIfNeeded):

3:37 PM Changeset in webkit [138310] by Simon Fraser
  • 1 edit
    3 deletes in trunk/LayoutTests

Remove an incorrect WK2 result, and two there were identical to the WK1 results.

  • platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt: Removed.
  • platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt: Removed.
  • platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Removed.
3:37 PM Changeset in webkit [138309] by Simon Fraser
  • 2 edits in trunk/LayoutTests

Skip tests in WK2 that rely on eventSender.beginDragWithFiles.

  • platform/mac-wk2/TestExpectations:
3:20 PM Changeset in webkit [138308] by msaboff@apple.com
  • 10 edits
    1 add in trunk/Source/JavaScriptCore

JIT: Change uninitialized pointer value -1 to constant
https://bugs.webkit.org/show_bug.cgi?id=105576

Rubber stamped by Gavin Barraclough.

Changed the use of -1 as a pointer value in the JITs to be the constant unusedPointer defined in the
new file jit/UnusedPointer.h. Made it's value 0xd1e7beef, which is a bad pointer on most architectures
because it is odd, and to distinguish it from other common values.

  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGRepatch.cpp:

(JSC::DFG::dfgResetGetByID):
(JSC::DFG::dfgResetPutByID):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):

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

(JSC::JIT::resetPatchGetById):
(JSC::JIT::resetPatchPutById):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::resetPatchGetById):
(JSC::JIT::resetPatchPutById):

  • jit/JITWriteBarrier.h:

(JSC::JITWriteBarrierBase::clearToUnusedPointer):
(JSC::JITWriteBarrierBase::get):

  • jit/UnusedPointer.h: Added.
3:20 PM Changeset in webkit [138307] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a Mac test expectation per bug 105584.

  • platform/mac/TestExpectations:
3:10 PM Changeset in webkit [138306] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

LocalTerminationDisabler is not needed in WebCookieManager.cpp
https://bugs.webkit.org/show_bug.cgi?id=105581

Reviewed by Anders Carlsson.

All WebCookieManager functions are synchronous, and all LocalTerminationDisabler does
is enable/disable a timer that cannot fire inside the function anyway.

  • WebProcess/Cookies/WebCookieManager.cpp: (WebKit::WebCookieManager::getHostnamesWithCookies): (WebKit::WebCookieManager::deleteCookiesForHostname): (WebKit::WebCookieManager::deleteAllCookies): (WebKit::WebCookieManager::startObservingCookieChanges): (WebKit::WebCookieManager::setHTTPCookieAcceptPolicy): (WebKit::WebCookieManager::getHTTPCookieAcceptPolicy):
3:06 PM Changeset in webkit [138305] by andersca@apple.com
  • 3 edits in trunk/Tools

Don't include WebKit2 headers when building TestWebKitAPI on windows
https://bugs.webkit.org/show_bug.cgi?id=105582

Reviewed by Tim Horton.

  • TestWebKitAPI/config.h:
  • TestWebKitAPI/win/main.cpp:
2:50 PM Changeset in webkit [138304] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a Mac test expectation per bug 105580.

  • platform/mac/TestExpectations:
2:38 PM Changeset in webkit [138303] by rniwa@webkit.org
  • 4 edits in trunk

REGRESSION(r133820?): SimplifyMarkupTest API test asserts
https://bugs.webkit.org/show_bug.cgi?id=105370

Reviewed by Simon Fraser.

Source/WebCore:

The bug was caused by SimplifyMarkupCommand::doApply calling removeNodePreservingChildren on nodes
that have already been removed. We normally check this condition in pruneSubsequentAncestorsToRemove
but we weren't checking it when there were no ancestor to remove because we early exited in that case.

Fixed the bug by doing the early exit for when the node's parent had already been removed first.

Test: TestWebKitAPI/Tests/mac/SimplifyMarkup.mm

  • editing/SimplifyMarkupCommand.cpp:

(WebCore::SimplifyMarkupCommand::doApply):
(WebCore::SimplifyMarkupCommand::pruneSubsequentAncestorsToRemove): Also removed an unused variable
nodeAfterHighestAncestorToRemove.

Tools:

Re-enable the test.

  • TestWebKitAPI/Tests/mac/SimplifyMarkup.mm:

(TestWebKitAPI::TEST):

2:35 PM Changeset in webkit [138302] by noel.gordon@gmail.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Disable color profile support for WebImageSkia users
https://bugs.webkit.org/show_bug.cgi?id=105493

Reviewed by Eric Seidel.

Disable color profiles to prevent null pointer dereference under some
conditions. Tested by unittests at src.chromium.org.

  • src/WebImageSkia.cpp:

(WebKit::WebImage::fromData):
(WebKit::WebImage::framesFromData):

2:20 PM Changeset in webkit [138301] by beidson@apple.com
  • 7 edits in trunk/Source/WebKit2

[GTK] Remove the --enable-unstable-features configuration option
https://bugs.webkit.org/show_bug.cgi?id=105327

Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-12-20
Reviewed by Martin Robinson.

Remove the unnecessary feature_defines_unstable variable.
Remove the unstable-features configuration option.

  • configure.ac:
  • GNUmakefile.am:
2:17 PM Changeset in webkit [138300] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG shouldn't emit CheckStructure on array accesses if exit profiling tells it not to
https://bugs.webkit.org/show_bug.cgi?id=105577

Reviewed by Mark Hahnenberg.

I don't know why this wasn't there from the beginning.

  • dfg/DFGByteCodeParser.cpp:

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

2:13 PM Changeset in webkit [138299] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Font description not synchronized correctly on orientation affecting property changes
https://bugs.webkit.org/show_bug.cgi?id=105533

Reviewed by Enrica Casucci.

In StyleResolver checkForOrientationChange() function checks if the new computed orientation differs from the parent
orientation and updates the style's font description only if it does. This is not correct as equal values do not guarantee
the new font description is actually up to date. We can leave the function with the computed orientation and the font
description still out of sync.

Fix by bailing out fast only if the font description is already in sync.

No layout test yet, verified with a test app.

  • css/StyleResolver.cpp:

(WebCore::checkForOrientationChange):
(WebCore::StyleResolver::updateFont):

2:12 PM Changeset in webkit [138298] by commit-queue@webkit.org
  • 12 edits
    2 adds in trunk

window.crypto.getRandomValues should return the input ArrayBufferView
https://bugs.webkit.org/show_bug.cgi?id=104845

Source/WebCore:

The W3C Web Crypto API FPWD, as well as the WHATWG February 2012 draft,
define crypto.getRandomValues() as returning the input ArrayBufferView,
to allow function call chaining. Update the implementation to match
the current spec, rather than the old spec of void/undefined.

Patch by Ryan Sleevi <rsleevi@chromium.org> on 2012-12-20
Reviewed by Kentaro Hara.

Test: security/crypto-random-values-types.html

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

(WebCore):
(WebCore::JSCrypto::getRandomValues):
Added custom getRandomValues implementation so that the input wrapped
ArrayBufferView can be returned directly to the caller. This is to
preserve the underlying type and indexing accessor for the TypedArray
subclass.

  • bindings/v8/custom/V8CryptoCustom.cpp: Added.

(WebCore):
(WebCore::V8Crypto::getRandomValuesCallback):
Added custom getRandomValues implementation so that the input wrapped
ArrayBufferView can be returned directly to the caller. This is to
preserve the underlying type and indexing accessor for the TypedArray
subclass.

  • page/Crypto.idl:

LayoutTests:

Patch by Ryan Sleevi <rsleevi@chromium.org> on 2012-12-20
Reviewed by Kentaro Hara.

  • fast/js/resources/js-test-pre.js:

(shouldBeType):
Added helper to assert that an expression returns an object of the
correct type.

  • security/crypto-random-values-types-expected.txt:
  • security/crypto-random-values-types.html:

Test all possible TypedArray integer types and ensure that both the
correct TypedArray type is returned and that it is equal to the input
type; that is, that the input type is modified in place, rather then
copied.

1:59 PM Changeset in webkit [138297] by arv@chromium.org
  • 2 edits in trunk/Source/WebCore

CodeGen: Make [Reflect] use getIdAttribute and getNameAttribute
https://bugs.webkit.org/show_bug.cgi?id=105549

Reviewed by Andreas Kling.

Let the codegen use getIdAttribute and getNameAttribute when we know the attribute
is HTMLNames::idAttr or HTMLNames::nameAttr respectively. The more specialized functions
do not search for the attribute if it knows that the element does not have that attribute
speeding up the case where id or name are not present.

This improves Dromaeo/dom-attr by 5% and Bindings/undefined-id-getter by 2%

No new tests. No change in behavior

  • bindings/scripts/CodeGenerator.pm:
1:40 PM Changeset in webkit [138296] by arv@chromium.org
  • 5 edits in trunk/Source/WebCore

fastAttributeLookupAllowed: classAttr is only animatable by SVG styled elements
https://bugs.webkit.org/show_bug.cgi?id=105565

Reviewed by Eric Seidel.

When it comes to determining if we can use fastGetAttribute we should not penalize
all classAttr access just because some SVG styled elements does funky things with
className.

This makes classAttr considered animatable only for styled SVG elements.

No new tests. No change in behavior.

  • bindings/scripts/CodeGenerator.pm:
  • dom/Element.cpp:
  • svg/SVGElement.cpp:
  • svg/SVGElement.h:
1:38 PM Changeset in webkit [138295] by tony@chromium.org
  • 2 edits
    12 adds in trunk/LayoutTests

[chromium] Unreviewed gardening.

Rebaseline tests mentioned in 105121 and remove tests that are passing on Win bots according to the flakiness dashboard.

  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/nested-scrolling-expected.png: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/overflow/nested-scrolling-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/overflow/nested-scrolling-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/nested-scrolling-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
  • platform/chromium/TestExpectations:
  • platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-toggle-expected.txt: Added.
1:37 PM Changeset in webkit [138294] by thakis@chromium.org
  • 4 edits in trunk/Tools

chromium nrwt: Pick the newest binary found in DEFAULT_BUILD_DIRECTORIES, not the first
https://bugs.webkit.org/show_bug.cgi?id=105498

Reviewed by Dirk Pranke.

Use the newest binary available rather than an than always picking one
build directory over another based on iteration order.

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

(ChromiumPort._static_build_path):
Check for timestamps.

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

(ChromiumMacPortTest.test_build_path_timestamps):
Test that out / xcodebuild selection happens based on timestamps

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

(ChromiumWinPortTest.test_build_path_timestamps):
Test that out / build selection happens based on timestamps

1:35 PM Changeset in webkit [138293] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Harden pointers in FastMalloc's singly linked list implementation
https://bugs.webkit.org/show_bug.cgi?id=105571

Reviewed by Gavin Barraclough.

Add simple xor based hardening of the next pointer in the
fast malloc singly linked list implementation. We rely on
ASLR to introduce the address randomness we want for the mask.
Happily this produces a very low cost random value to use.

  • wtf/FastMalloc.cpp:

(WTF):
(WTF::SLL_Next):
(WTF::SLL_SetNext):

1:22 PM Changeset in webkit [138292] by tony@chromium.org
  • 4 edits in trunk/LayoutTests

[chromium] Unreviewed gardening.

Mark an inspector test as flakey and update form date tests after r138255.

  • platform/chromium-win-xp/fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • platform/chromium-win-xp/fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • platform/chromium/TestExpectations:
1:22 PM Changeset in webkit [138291] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[TexMap] Remove ParentChange in TextureMapperLayer.
https://bugs.webkit.org/show_bug.cgi?id=105494

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

ParentChange is useless, because ChildrenChange is enough. In addition,
GraphicsLayer uses setParent() method internally. This patch copies
GraphicsLayer::setChildren() into TextureMapperLayer::setChildren().

No new tests. Covered by existing tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore):
(WebCore::GraphicsLayerTextureMapper::setChildren):

Match the similar style of replaceChild().

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::flushCompositingStateForThisLayerOnly):
(WebCore::TextureMapperLayer::setChildren):

Copied from GraphicsLayer::setChildren().

(WebCore):
(WebCore::TextureMapperLayer::addChild):

Copied from GraphicsLayer::addChild().

(WebCore::TextureMapperLayer::removeFromParent):

Copied from GraphicsLayer::removeFromParent().

(WebCore::TextureMapperLayer::removeAllChildren):

Copied from GraphicsLayer::removeAllChildren().

  • platform/graphics/texmap/TextureMapperLayer.h:

(TextureMapperLayer):

1:20 PM Changeset in webkit [138290] by alecflett@chromium.org
  • 10 edits in trunk/Source/WebCore

IndexedDB: Cursor and IndexWriter cleanup for refactor
https://bugs.webkit.org/show_bug.cgi?id=105449

Reviewed by Tony Chang.

This is a cleanup of some code to make the refactor that is coming
in https://bugs.webkit.org/show_bug.cgi?id=102741 cleaner. Some
CursorType assertions have been removed because the code will be
used in more generic circumstances in a future patch.

The previously-private IndexWriter has been pulled into
IDBObjectStoreBackendImpl and made to just use IDB*Metadata
so it can be reused later.

No new tests as this does not change the logic of executing code.

  • Modules/indexeddb/IDBCursorBackendImpl.cpp:

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

  • Modules/indexeddb/IDBCursorBackendImpl.h:

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

  • Modules/indexeddb/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::OpenIndexCursorOperation::create):
(WebCore::IDBIndexBackendImpl::OpenIndexCursorOperation::OpenIndexCursorOperation):
(IDBIndexBackendImpl::OpenIndexCursorOperation):
(WebCore::IDBIndexBackendImpl::OpenIndexCursorOperation::perform):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::IndexWriter::verifyIndexKeys):
(WebCore::IDBObjectStoreBackendImpl::IndexWriter::writeIndexKeys):
(WebCore::IDBObjectStoreBackendImpl::IndexWriter::addingKeyAllowed):
(WebCore::IDBObjectStoreBackendImpl::makeIndexWriters):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.h:

(IndexWriter):
(WebCore::IDBObjectStoreBackendImpl::IndexWriter::IndexWriter):
(IDBObjectStoreBackendImpl):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::setCursorDetails):
(WebCore::IDBRequest::setResultCursor):
(WebCore::IDBRequest::onSuccess):

  • Modules/indexeddb/IDBRequest.h:

(IDBRequest):

1:15 PM Changeset in webkit [138289] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Restore WebM EME canPlayType() expectations.
https://bugs.webkit.org/show_bug.cgi?id=105070

Unreviewed TestExpectations revert of r137225.

Patch by David Dorwin <ddorwin@chromium.org> on 2012-12-20

  • platform/chromium/TestExpectations:
1:04 PM Changeset in webkit [138288] by ap@apple.com
  • 5 edits in trunk/Source/WebCore

REGRESSION (r138191): Tests fail in ResourceRequest::setStorageSession
https://bugs.webkit.org/show_bug.cgi?id=105563

Reviewed by Sam Weinig.

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::willSendRequest):
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::willSendRequest): Don't try to appky a session if client canceled the request by setting it ot a null one.
  • platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::setStorageSession):
  • platform/network/mac/ResourceRequestMac.mm: (WebCore::ResourceRequest::setStorageSession): Update platform request, so that the session does not get lost once it's updated later.
12:36 PM Changeset in webkit [138287] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a Mac test expectation per bug 104848.

  • platform/mac/TestExpectations:
12:29 PM Changeset in webkit [138286] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mac test expectation per bugs 105566 and 105567.

  • platform/mac/TestExpectations:
12:26 PM Changeset in webkit [138285] by Nate Chapin
  • 17 edits in trunk/Source

Rename shouldBufferData to dataBufferingPolicy
https://bugs.webkit.org/show_bug.cgi?id=105450

Reviewed by Alexey Proskuryakov.

No new tests, simple rename.

Source/WebCore:

  • html/MediaDocument.cpp:

(WebCore::MediaDocumentParser::createDocumentStructure):

  • html/PluginDocument.cpp:

(WebCore::PluginDocumentParser::appendBytes):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didReceiveData):

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::loadRequest):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::setDataBufferingPolicy):

  • loader/MainResourceLoader.h:

(MainResourceLoader):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::setDataBufferingPolicy):
(WebCore::ResourceLoader::addData):
(WebCore::ResourceLoader::willStopBufferingData):

  • loader/ResourceLoader.h:

(ResourceLoader):

  • loader/ResourceLoaderOptions.h:

(WebCore::ResourceLoaderOptions::ResourceLoaderOptions):
(ResourceLoaderOptions):

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::data):
(WebCore::CachedRawResource::setDataBufferingPolicy):
(WebCore::CachedRawResource::canReuse):

  • loader/cache/CachedRawResource.h:

(CachedRawResource):

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::dataBufferingPolicy):

  • loader/mac/ResourceLoaderMac.mm:

(WebCore::ResourceLoader::didReceiveDataArray):

  • page/EventSource.cpp:

(WebCore::EventSource::connect):

Source/WebKit/chromium:

  • src/AssociatedURLLoader.cpp:

(WebKit::AssociatedURLLoader::loadAsynchronously):

12:20 PM Changeset in webkit [138284] by dino@apple.com
  • 3 edits in trunk/Source/WebCore

Track menu in wrong location when fullscreen
https://bugs.webkit.org/show_bug.cgi?id=105234

Reviewed by Eric Carlson.

Add a rule to position the captions menu in the correct location
when the <video> is fullscreen. Also a drive-by removal of unnecessary
CSS selectors, and changing an encoded PNG into an SVG.

  • css/fullscreenQuickTime.css:

(video:-webkit-full-screen::-webkit-media-controls-closed-captions-container): Add a rule to position
the menu when in fullscreen.

  • css/mediaControlsQuickTime.css: Remove the unnecessary <audio> selectors.

(video::-webkit-media-controls-toggle-closed-captions-button):
(video::-webkit-media-controls-closed-captions-container):
(video::-webkit-media-controls-closed-captions-track-list):

12:11 PM Changeset in webkit [138283] by dino@apple.com
  • 5 edits in trunk/LayoutTests

Cleanup some captions menu tests
https://bugs.webkit.org/show_bug.cgi?id=105500

Reviewed by Eric Carlson.

Use the helper library where possible. Dynamically add
video.src so that we always get the 'canplaythrough' event.

  • media/video-controls-captions-trackmenu-expected.txt:
  • media/video-controls-captions-trackmenu-localized.html:
  • media/video-controls-captions-trackmenu-sorted.html:
  • media/video-controls-captions-trackmenu.html:
12:10 PM Changeset in webkit [138282] by dino@apple.com
  • 4 edits
    3 adds in trunk

Follow WebVTT line breaking rules
https://bugs.webkit.org/show_bug.cgi?id=105496

Reviewed by Eric Carlson.

Source/WebCore:

WebVTT requires that captions never overflow their containers. In other
words, that it is ok to break within words rather than hide content.
Implement this by using CSS's word-break property.

Test: media/track/track-word-breaking.html

  • css/mediaControls.css:

(video::-webkit-media-text-track-container): Add word-break.

  • css/mediaControlsQuickTime.css: Drive-by cleanup to make sure selection doesn't happen.

(audio::-webkit-media-controls-closed-captions-container, video::-webkit-media-controls-closed-captions-container):
(audio::-webkit-media-controls-closed-captions-track-list, video::-webkit-media-controls-closed-captions-track-list):

LayoutTests:

Test that captions do emergency line breaking. Since we can't
rely on text dimensions, the test simply compares a caption that
will be on one line to a caption with a single huge word, that must
break at least twice. If the bounding rectangle of the second caption
is bigger than the first, we know we broke.

  • media/track/captions-webvtt/long-word.vtt: Added.
  • media/track/track-word-breaking-expected.txt: Added.
  • media/track/track-word-breaking.html: Added.
12:07 PM Changeset in webkit [138281] by simonjam@chromium.org
  • 4 edits
    2 adds in trunk

[Resource Timing] 304 responses should show up in the timing buffer
https://bugs.webkit.org/show_bug.cgi?id=105490

Reviewed by Tony Gentilcore.

Source/WebCore:

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

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::loadDone):

LayoutTests:

  • http/tests/w3c/webperf/resources/generate_resource.php:
  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached-expected.txt: Added.
  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached.html: Added.
11:44 AM Changeset in webkit [138280] by rniwa@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Add a sample change log entry to contributing.html
https://bugs.webkit.org/show_bug.cgi?id=105506

Reviewed by Alexey Proskuryakov.

Added a sample change log to the page directly people skimming through the page will still
see it. Also mention that prepare-ChangeLogs is automatically ran by webkit-patch upload.

  • coding/contributing.html:
11:36 AM Changeset in webkit [138279] by andersca@apple.com
  • 1 edit
    1 add in trunk/Source/WebKit/win

Copy WebKit2.rc to back to WebKit/win/WebKit.vcproj.

Rubber-stamped by Tim Horton.

  • WebKit.vcproj/WebKit.rc: Added.
11:30 AM Changeset in webkit [138278] by Simon Fraser
  • 5 edits in trunk

Lots of sticky tests failing in WK2
https://bugs.webkit.org/show_bug.cgi?id=105464

Source/WebCore:

Reviewed by Brady Eidson.

Fixing this bug altered the timing of InternalSettings::Backup()
and restoreTo(), such that 'canStartMedia' on Page would get saved as false,
and then restored as false, which breaks all media tests.

'canStartMedia' is set to false initially by the WebPage constructor, and is also
set to false when the WKView leaves the window, so treating it like other Settings
that can be saved and restored is unreliable, as seen here. It's easier and simpler
to just always reset it to 'true' between tests.

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::InternalSettings):
(WebCore::InternalSettings::reset):

  • testing/InternalSettings.h:

(Backup):

Tools:

Reviewed by Beth Dakin.

WebKitTestRunner had a race between snapshotting in the UI process,
and resettting after the test in the web process. InjectedBundle::done()
was a bad place to call page()->resetAfterTest(), because of this race;
it could reset the scroll position before the UI snapshot had been obtained.

Fix by moving the call to page()->resetAfterTest() into didReceiveMessage(),
for the "Reset" message which will come in before the next test.

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::didReceiveMessage):
(WTR::InjectedBundle::done):

11:16 AM Changeset in webkit [138277] by arv@chromium.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r138263): Don't use fastGetAttribute for HTMLNames::classAttr because it breaks on SVGElement
https://bugs.webkit.org/show_bug.cgi?id=105555

Reviewed by Tony Chang.

The code generated generated code that uses fastGetAttribute for the className WebIDL attribute getter.
However, this attribute is animatable in SVG so we cannot use the fast function for it.

No new tests. The assert is no longer hit.

  • bindings/scripts/CodeGenerator.pm:
11:14 AM Changeset in webkit [138276] by fpizlo@apple.com
  • 12 edits in trunk

DFG speculation checks that take JumpList should consolidate OSRExits
https://bugs.webkit.org/show_bug.cgi?id=105401

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Change OSRExitCompilationInfo to always contain a JumpList, and change JumpList
to be more compact. This way, a speculationCheck that takes a JumpList only has
to emit one OSRExit structure, and one OSRExit landing pad.

The downside is that we get less precise information about *where* we exited
from. So, this also includes changes to the profiler to be more relaxed about
what an ExitSite is.

  • assembler/AbstractMacroAssembler.h:

(JumpList):

  • dfg/DFGJITCompiler.cpp:

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

  • dfg/DFGJITCompiler.h:

(DFG):
(JSC::DFG::JITCompiler::appendExitInfo):
(JITCompiler):

  • dfg/DFGOSRExitCompilationInfo.h:

(OSRExitCompilationInfo):

  • dfg/DFGSpeculativeJIT.cpp:

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

  • profiler/ProfilerCompilation.cpp:

(JSC::Profiler::Compilation::addOSRExitSite):

  • profiler/ProfilerCompilation.h:

(Compilation):

  • profiler/ProfilerOSRExitSite.cpp:

(JSC::Profiler::OSRExitSite::toJS):

  • profiler/ProfilerOSRExitSite.h:

(JSC::Profiler::OSRExitSite::OSRExitSite):
(JSC::Profiler::OSRExitSite::codeAddress):
(OSRExitSite):

Tools:

Update the profiler to understand that an OSR exit may have multiple
candidate exit sites.

  • Scripts/display-profiler-output:
11:00 AM Changeset in webkit [138275] by andersca@apple.com
  • 1 edit
    26 adds in trunk/Source/WebKit/win

Copy files from WebKit2/win (back) to WebKit/win/WebKit.vcproj.

Rubber-stamped by Tim Horton.

  • WebKit.vcproj/deleteButton.png: Added.
  • WebKit.vcproj/deleteButtonPressed.png: Added.
  • WebKit.vcproj/fsVideoAudioVolumeHigh.png: Added.
  • WebKit.vcproj/fsVideoAudioVolumeLow.png: Added.
  • WebKit.vcproj/fsVideoExitFullscreen.png: Added.
  • WebKit.vcproj/fsVideoPause.png: Added.
  • WebKit.vcproj/fsVideoPlay.png: Added.
  • WebKit.vcproj/missingImage.png: Added.
  • WebKit.vcproj/nullplugin.png: Added.
  • WebKit.vcproj/panEastCursor.png: Added.
  • WebKit.vcproj/panIcon.png: Added.
  • WebKit.vcproj/panNorthCursor.png: Added.
  • WebKit.vcproj/panNorthEastCursor.png: Added.
  • WebKit.vcproj/panNorthWestCursor.png: Added.
  • WebKit.vcproj/panSouthCursor.png: Added.
  • WebKit.vcproj/panSouthEastCursor.png: Added.
  • WebKit.vcproj/panSouthWestCursor.png: Added.
  • WebKit.vcproj/panWestCursor.png: Added.
  • WebKit.vcproj/searchCancel.png: Added.
  • WebKit.vcproj/searchCancelPressed.png: Added.
  • WebKit.vcproj/searchMagnifier.png: Added.
  • WebKit.vcproj/searchMagnifierResults.png: Added.
  • WebKit.vcproj/textAreaResizeCorner.png: Added.
  • WebKit.vcproj/verticalTextCursor.png: Added.
  • WebKit.vcproj/zoomInCursor.png: Added.
  • WebKit.vcproj/zoomOutCursor.png: Added.
10:48 AM Changeset in webkit [138274] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Block level pseudo elements bleed background color to <html>
https://bugs.webkit.org/show_bug.cgi?id=104855

Patch by Elliott Sprehn <Elliott Sprehn> on 2012-12-20
Reviewed by Julien Chaffraix.

Before r137336 placing a pseudo element :before or :after that was display
block on the <html> element would also set the background color of the
root of the document.

This was because RenderObject::isRoot checked if document()->documentElement() == m_node,
which was true for html:before or html:after with the old implementation
of generated content. Instead it should have compared against node() which
would have compensated for the anonymous generated content.

This is fixed by the new generated content implementation that was turned
on in r137336 because m_node is now the PseudoElement, not the generatingNode.

  • fast/css-generated-content/html-pseudo-background-color-expected.html: Added.
  • fast/css-generated-content/html-pseudo-background-color.html: Added.
10:42 AM Changeset in webkit [138273] by Carlos Garcia Campos
  • 25 edits in trunk/Source

[GTK] Add API to set a TLS errors policy to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=104482

Reviewed by Martin Robinson.

Source/WebCore:

  • platform/network/soup/ResourceError.h:

(WebCore::ResourceError::setTLSErrors): Set the TLS error flags.
(WebCore::ResourceError::setCertificate): Set the certificate.

  • platform/network/soup/ResourceErrorSoup.cpp:

(WebCore::ResourceError::tlsError): Set the given TLS errors and
certificate to the ResourceError.
(WebCore::ResourceError::platformCopy): Copy also the TLS errors
and the certificate.
(WebCore::ResourceError::platformCompare): Compare also the TLS
errors.

Source/WebKit2:

Add an emum for TLS errors policy with values IGNORE and FAIL and
API to WebKitWebContext to set/get the policy.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode): Encode ignoreTLSErrors.
(WebKit::WebProcessCreationParameters::decode): Decode ignoreTLSErrors.

  • Shared/WebProcessCreationParameters.h:

(WebProcessCreationParameters): Add ignoreTLSErrors when building
with soup network backend.

  • Shared/soup/PlatformCertificateInfo.cpp:

(WebKit::PlatformCertificateInfo::PlatformCertificateInfo): Add a
constructor that receives a ResourceError.

  • Shared/soup/PlatformCertificateInfo.h:
  • Shared/soup/WebCoreArgumentCodersSoup.cpp:

(CoreIPC::::encodePlatformData): Encode the
PlatformCertificateInfo as part for the ResourceError.
(CoreIPC::::decodePlatformData): Decode the
PlatformCertificateInfo and set certificate and TLS errors in the
ResourceError.

  • UIProcess/API/gtk/WebKitLoaderClient.cpp:

(didFailProvisionalLoadWithErrorForFrame): Call
webkitWebViewLoadFailedWithTLSErrors() if the load failed due to
TLS errors.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(_WebKitWebContextPrivate): Add tlsErrorsPolicy member.
(createDefaultWebContext): Initiales tlsErrorsPolicy.
(webkit_web_context_set_tls_errors_policy): Set the TLS errors
policy notify WebContext to ignore TLS errors or not.
(webkit_web_context_get_tls_errors_policy): Return the current TLS
errors policy.

  • UIProcess/API/gtk/WebKitWebContext.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewLoadFailedWithTLSErrors): Finish the load with an
error if the TLS errors policy is FAIL.

  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
  • UIProcess/API/gtk/tests/TestSSL.cpp:

(testTLSErrorsPolicy):
(beforeAll):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext): Initialize m_ignoreTLSErrors.

  • UIProcess/WebContext.h:

(WebContext): Add m_ignoreTLSErrors member.
(WebKit::WebContext::ignoreTLSErrors): Return m_ignoreTLSErrors.

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformInitializeWebProcess): Set
ignoreTLSErrors parameter.
(WebKit::WebContext::setIgnoreTLSErrors): Send SetIgnoreTLSErrors
message to the web process.

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::platformInitializeWebProcess): Set
ignoreTLSErrors parameter.
(WebKit::WebContext::setIgnoreTLSErrors): Send SetIgnoreTLSErrors
message to the web process.
(WebKit):

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainEfl): Remove the call to
ResourceHandle::setIgnoreSSLErrors().

  • WebProcess/gtk/WebProcessMainGtk.cpp:

(WebKit::WebProcessMainGtk): Remove the call to
ResourceHandle::setIgnoreSSLErrors().

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformInitializeWebProcess):
(WebKit::WebProcess::setIgnoreTLSErrors): Call
ResourceHandle::setIgnoreSSLErrors().
(WebKit):

10:35 AM Changeset in webkit [138272] by dmazzoni@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Adjust Mac TestExpectations.
https://bugs.webkit.org/show_bug.cgi?id=105372

Removes accessibility/svg-bounds.html from
platform/mac/TestExpectations.

The problem was caused by bug 97359: committed r138061,
reverted r138121, re-landed r138260 without the bug.

  • platform/mac/TestExpectations: remove accessibility/svg-bounds.html
10:34 AM Changeset in webkit [138271] by Lucas Forschler
  • 6 edits in tags/Safari-537.23

Merged r138226. <rdar://problem/12893550>

10:28 AM Changeset in webkit [138270] by commit-queue@webkit.org
  • 18 edits
    2 adds in trunk

onload callback for <track> element attached to <video> does not fire
https://bugs.webkit.org/show_bug.cgi?id=103258

Patch by Antoine Quint <Antoine Quint> on 2012-12-20
Reviewed by Eric Carlson.

Source/WebCore:

We now correctly implement the track processing model per the latest spec at
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#start-the-track-processing-model.

For a <track> to load, three conditions must be met:

  1. it must have a non-empty src
  2. it must have a mode other than "disabled" (the default)
  3. it must have a parent media element

We used to only check if we were able to load upon setting the track's src,
whereas a change of any of those conditions should have done this, which this
patch now correctly implements.

We also correctly implement the load model asynchronously after step 4, per
the spec, hence the split of the code previously entirely contained in
HTMLTrackElement::scheduleLoad() in another method fired on a timer.

Test: media/track/track-element-load-event.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTrackModeChanged):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::HTMLTrackElement):
(WebCore::HTMLTrackElement::insertedInto):
(WebCore::HTMLTrackElement::parseAttribute):
(WebCore::HTMLTrackElement::scheduleLoad):
(WebCore):
(WebCore::HTMLTrackElement::loadTimerFired):
(WebCore::HTMLTrackElement::textTrackModeChanged):

  • html/HTMLTrackElement.h:
  • html/track/TextTrack.cpp:

(WebCore::TextTrack::removeAllCues):
(WebCore):

  • html/track/TextTrack.h:

(TextTrack):

LayoutTests:

As a result of fixing this bug, a few new failures were uncovered and TestExpectations
needed to be updated to take this into account. Additionally, some existing tests were
incorrect or outdated and were fixed as well. Finally, a new test was added to thoroughly
test the various conditions required for a <track> element to successfully load.

  • fast/events/constructors/track-event-constructor.html: Update the test to correctly set

a non-disabled mode on the text track such that it may load per the rules enforced with this patch.

  • http/tests/security/text-track-crossorigin.html: Update the test to correctly set a non-disabled

mode on the text track such that it may load per the rules enforced with this patch.

  • media/track/track-add-track-expected.txt: Update the output to match changes made to test.
  • media/track/track-add-track.html: Update the test to correctly set a non-disabled mode on

the text track such that it may load per the rules enforced with this patch. Also, ensure
the .readyState of the text track is correctly assumed to be NONE vs. LOADING as it would
have to wait until the next run loop to be changed to anything but NONE.

  • media/track/track-element-load-event-expected.txt: Added.
  • media/track/track-element-load-event.html: Added.
  • media/track/track-load-from-src-readyState.html: Update the test to correctly set a

non-disabled mode on the text track such that it may load per the rules enforced with
this patch.

  • platform/chromium/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/efl/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/gtk/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/mac/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/qt/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/win/TestExpectations: Skip tests that now fail instead of timing out.
10:22 AM Changeset in webkit [138269] by kerz@chromium.org
  • 4 edits in branches/chromium/1364

Revert 138207

Revert 138190

Merge 138181

Correct missing touch event handler de-registration for nested Documents and DOMWindows
https://bugs.webkit.org/show_bug.cgi?id=105384

Reviewed by James Robinson.

Source/WebCore:

Correcting case by which a nested DOMWindow wouldn't clean up its event handler references
on its Document when removeAllEventListeners was called. Also, correctly propagating this
from a nested Document to its owner Document.

Updating fast/events/touch/touch-handler-count.html to catch this bug.

  • dom/Document.cpp:

(WebCore::Document::didRemoveEventTargetNode):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::removeAllEventListeners):

LayoutTests:

  • fast/events/touch/touch-handler-count-expected.txt:
  • fast/events/touch/touch-handler-count.html: Adding case of nested DOMWindows with event handlers.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11635026

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11647025

TBR=kerz@chromium.org
Review URL: https://codereview.chromium.org/11638044

10:21 AM Changeset in webkit [138268] by jsbell@chromium.org
  • 10 edits
    3 copies
    3 moves in trunk

IndexedDB: Layout test showing delete database getting two blocked events
https://bugs.webkit.org/show_bug.cgi?id=92674

Reviewed by Tony Chang.

Source/WebCore:

Match the steps specified behavior for deleteDatabase() in the spec: versionchange/blocked
events fire if necessary, then waits until a condition is satisfied before continuing with
the steps to delete the database. The bug was caused by retrying the full call again. Events
are also now sent out immediately when a "versionchange" transaction is running, rather
than entering a limbo state - again, the new behavior matches the spec more accurately.

Tests: storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html

storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html
storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange.html
storage/indexeddb/intversion-gated-on-delete.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase): First half of the steps.
(WebCore):
(WebCore::IDBDatabaseBackendImpl::isDeleteDatabaseBlocked): Pull out condition test.
(WebCore::IDBDatabaseBackendImpl::deleteDatabaseFinal): Second half of the of steps.

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

LayoutTests:

Update/add tests to match the expected behavior where blocked/versionchange events fire
even when a "versionchange" transaction is running.

  • storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-expected.txt: Copied from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded-expected.txt.
  • storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html: Copied from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded.html.
  • storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt: Renamed from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded-expected.txt.
  • storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html: Renamed from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded.html.
  • storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt:
  • storage/indexeddb/deletedatabase-delayed-by-versionchange-expected.txt:
  • storage/indexeddb/intversion-gated-on-delete-expected.txt:
  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js: Copied from LayoutTests/storage/indexeddb/resources/intversion-delete-in-upgradeneeded.js.
  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js: Renamed from LayoutTests/storage/indexeddb/resources/intversion-delete-in-upgradeneeded.js.
  • storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js:
  • storage/indexeddb/resources/factory-deletedatabase.js:
  • storage/indexeddb/resources/intversion-gated-on-delete.js:
10:21 AM Changeset in webkit [138267] by kerz@chromium.org
  • 3 edits
    2 copies in branches/chromium/1364

Revert 138208

Revert 138189

Merge 138095

Input elements with default touch handlers don't update handler counts when changing documents
https://bugs.webkit.org/show_bug.cgi?id=105334

Reviewed by James Robinson.

Source/WebCore:

When an Input element with default touch event handlers changes documents, it failed to
update the touch event handler sets in both the old and new document. This patch fixes this
case.

Test: fast/events/touch/touch-input-element-change-documents.html

  • dom/Document.h:

(WebCore::Document::didRemoveTouchEventTargetNode) This function makes sense when touch
handling is enabled, regardless of whether we're tracking the rects.

  • dom/Document.cpp:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::~HTMLInputElement): Switch from didRemoveTouchEventHandler to
didRemoveTouchEventTargetNode, since we don't care about counts in the destructor.
(WebCore::HTMLInputElement::updateType): Fixing incorrect indentation.
(WebCore::HTMLInputElement::didMoveToNewDocument): Adding the node to the new document and
removing it from the old.

LayoutTests:

  • fast/events/touch/touch-input-element-change-documents-expected.txt: Added.
  • fast/events/touch/touch-input-element-change-documents.html: Added.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11649024

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11571072

TBR=kerz@chromium.org
Review URL: https://codereview.chromium.org/11642045

10:19 AM Changeset in webkit [138266] by kerz@chromium.org
  • 20 edits
    4 copies in branches/chromium/1364

Revert 138209

Revert 138188

Merge 137939

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.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11635024

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11644037

TBR=kerz@chromium.org
Review URL: https://codereview.chromium.org/11644048

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

[EFL] [WebGL] [Wk2] Contents are not rendered properly.
https://bugs.webkit.org/show_bug.cgi?id=104664

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2012-12-20
Reviewed by Noam Rosenthal.

WebGL pages that render more than one frame are broken. Only 1st
frame comes to the UI side. All webgl repaint tests fail because
of this.
Specification of EXT_texture_from_pixmap extension here
http://www.opengl.org/registry/specs/EXT/texture_from_pixmap.txt
says, that:
"The contents of the texture after the drawable has been bound are defined
as the result of all rendering that has completed before the call to
glXBindTexImageEXT."
It means that in order to get updates for every frame glXBindTexImageEXT has
to be called on every frame update.

Covered by existing fast/canavs/webgl/*repaint tests.

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::isReceiver):
(WebCore::GraphicsSurface::platformSwapBuffers):

  • platform/graphics/texmap/TextureMapperBackingStore.cpp:

(WebCore::TextureMapperSurfaceBackingStore::swapBuffersIfNeeded):

9:58 AM Changeset in webkit [138264] by eric@webkit.org
  • 7 edits in trunk/Tools

EWSes do not need to dump build/test logs when things pass
https://bugs.webkit.org/show_bug.cgi?id=105402

Reviewed by Dirk Pranke.

When we were first writing the commit-queue and EWS system
and running them locally, we thought it was important to see the
build/test output as it happened. Now these queues have been running
for years, and we don't use this feature anymore. So this patch
makes us stop tee-ing the output directly to stdout, and instead
only print any output from commands when they fail.

I also added some logging when we execute each command
since we are no longer printing the command output itself.
This should make it much easier to see errors with the EWS
system itself, now that all the passing-build output is removed.

This required updating a zillion unittests, since we have a bunch of
"integration" style testing of the queue-bots. Many of the unittests for the bots were
already approximating this behavior by using a "logging" Executive.
I disabled logging in those cases to avoid redundant logging in those tests.

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

(Executive.command_for_printing):
(Executive.run_command):

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

(MockExecutive.command_for_printing):
(MockExecutive.run_command):

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

(ExecutiveTest.test_auto_stringify_args):

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

(EarlyWarningSytemTest._default_expected_logs):
(_test_ews):
(_test_ewses):

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

(AbstractQueue.run_webkit_patch):

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

(AbstractQueueTest._assert_run_webkit_patch):
(CommitQueueTest.test_commit_queue):
(test_rollout):
(test_rollout_lands):
(test_manual_reject_during_processing):
(StyleQueueTest.test_style_queue_with_style_exception):
(test_style_queue_with_watch_list_exception):

9:41 AM Changeset in webkit [138263] by arv@chromium.org
  • 8 edits in trunk/Source/WebCore

CodeGen: Make [Reflect] use fastGetAttribute and fastHasAttribute
https://bugs.webkit.org/show_bug.cgi?id=105540

Reviewed by Andreas Kling.

Currently the codegen generates code that use getAttribute and hasAttribute. We can use
fastGetAttribute and fastHasAttribute when we use a non SVG animated attribute and not
HTML::styleAttr.

This improves Bindings/id-getter by 16% and Dromaeo/dom-attr by 21%.

No new tests. No change in behavior.

  • bindings/scripts/CodeGenerator.pm:
  • bindings/scripts/CodeGeneratorV8.pm:
  • bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:
  • bindings/scripts/test/V8/V8TestObj.cpp:
9:34 AM Changeset in webkit [138262] by tony@chromium.org
  • 3 edits in trunk/LayoutTests

[chromium] Unreviewed gardening.

Update pixel results for fast/sub-pixel/transformed-iframe-copy-on-scroll.html
on mac. The test uses mock scrollbars but the old results have real scrollbars.

  • platform/chromium-mac-lion/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png:
  • platform/chromium-mac/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png:
9:33 AM Changeset in webkit [138261] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry]Change fullscreen back button size
https://bugs.webkit.org/show_bug.cgi?id=105541

Patch by Tiancheng Jiang <tijiang@rim.com> on 2012-12-20
Reviewed by Rob Buis.

Internally Reviewed by John Griggs.
Resize fullscreen mode back button size to meet browser back button size.

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore):
(WebCore::RenderThemeBlackBerry::paintMediaFullscreenButton):

9:29 AM Changeset in webkit [138260] by dmazzoni@google.com
  • 13 edits
    1 move
    2 deletes in trunk

AX: support clickPoint in DRT for chromium
https://bugs.webkit.org/show_bug.cgi?id=97359

Reviewed by Chris Fleizach.

Source/WebCore:

When computing the accessible bounding box of an
SVG root, be sure to call a method that uses transforms,
otherwise an assertion fails.

Newly unskipped tests: accessibility/svg-bounds.html and
accessibility/svg-remote-element.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::boundingBoxRect):

Source/WebKit/chromium:

Exposes the clickPoint accessibility method in WebAccessibilityObject.

  • public/WebAccessibilityObject.h:

(WebAccessibilityObject):

  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::clickPoint):
(WebKit):

Tools:

Implement clickPointX, clickPointY, and elementAtPoint for Chromium, so that
several more tests can pass.

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

(WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
(WebTestRunner::AccessibilityUIElement::clickPointXGetterCallback):
(WebTestRunner):
(WebTestRunner::AccessibilityUIElement::clickPointYGetterCallback):
(WebTestRunner::AccessibilityUIElement::elementAtPointCallback):

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

(AccessibilityUIElement):

LayoutTests:

Enable four more tests now that clickPointX, clickPointY,
and elementAtPoint are implemented for Chromium.

Minor fixes to two tests to make them more robust
across platfoms and when run in parallel.

  • accessibility/svg-bounds.html: Updated
  • accessibility/svg-bounds-expected.txt: Added (made cross-platform
  • accessibility/svg-remote-element.html: Updated
  • accessibility/svg-remote-element-expected.txt: Added (made cross-platform)
  • platform/mac/accessibility/svg-bounds-expected.txt: Deleted
  • platform/mac/accessibility/svg-remote-element-expected.txt: Deleted
  • platform/chromium/TestExpectations: Updated
9:26 AM Changeset in webkit [138259] by mitz@apple.com
  • 2 edits in trunk/Tools

prepare-ChangeLog adds "Additional information of the change such as approach, rationale" where it doesn't make sense
https://bugs.webkit.org/show_bug.cgi?id=99268

Reviewed by Alexey Proskuryakov.

  • Scripts/prepare-ChangeLog:

(generateNewChangeLogs): Removed the "Additional information of the change" line.

8:45 AM Changeset in webkit [138258] by Carlos Garcia Campos
  • 4 edits in trunk

[Qt]REGRESSION(r138222): It made fast/forms/number/number-spinbutton-click-in-iframe.html crash
https://bugs.webkit.org/show_bug.cgi?id=105529

Reviewed by Nate Chapin.

Source/WebCore:

Make sure assignIdentifierToInitialRequest() and
dispatchWillSendRequest() are called before all other
notification callbacks for the substitute data.

Fixes a crash in fast/forms/number/number-spinbutton-click-in-iframe.html.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::load): Call
handleSubstituteDataLoadSoon() after assigning the substitute data
identifier.

LayoutTests:

  • platform/qt/TestExpectations: Unskip

fast/forms/number/number-spinbutton-click-in-iframe.html.

8:22 AM Changeset in webkit [138257] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

2 fast/filesystem test cases ask for more space than the size they request when creating the file system
https://bugs.webkit.org/show_bug.cgi?id=105307

Patch by Lianghui Chen <liachen@rim.com> on 2012-12-20
Reviewed by Yong Li.

The purpose of this patch is to make these 2 test cases conform to the
size limit, so for platform that wants to enforce the size limit they
will not fail due to quota limit.

  • fast/filesystem/resources/file-writer-abort-continue.js:
  • fast/filesystem/resources/op-get-metadata.js:
8:12 AM Changeset in webkit [138256] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Skip unit test /webkit/atk/getTextInParagraphAndBodyModerate

  • Scripts/run-gtk-tests:

(TestRunner):

8:00 AM Changeset in webkit [138255] by commit-queue@webkit.org
  • 7 edits in trunk/LayoutTests

Fix tests depend on current year
https://bugs.webkit.org/show_bug.cgi?id=105525

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

Current year was embedded in several expectation files unintentionally.

  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events.html:
7:50 AM Changeset in webkit [138254] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

INPUT_MULTIPLE_FIELDS_UI: Add minimum/maximum value to DateTimeEditElement::LayoutParameters
https://bugs.webkit.org/show_bug.cgi?id=105510

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

Add two DateComponents fields, minimum and maximum, to DateTimeEditElement::LayoutParameters, replacing minimumYear and maximumYear.
They will be used to limit selectable values of month, day, etc.

No new tests. No behavior change.

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp: Removed fullYear().
  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType): Ditto.

  • html/DateInputType.cpp:

(WebCore::DateInputType::setupLayoutParameters): Populates minimum/maximum.

  • html/DateTimeInputType.cpp:

(WebCore::DateTimeInputType::setupLayoutParameters): Ditto.

  • html/DateTimeLocalInputType.cpp:

(WebCore::DateTimeLocalInputType::setupLayoutParameters): Ditto.

  • html/MonthInputType.cpp:

(WebCore::MonthInputType::setupLayoutParameters): Ditto.

  • html/WeekInputType.cpp:

(WebCore::WeekInputType::setupLayoutParameters): Ditto.

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditBuilder::visitField): Replace the usage of minimumYear/maximumYear with minimum/maximum DateComponents.

  • html/shadow/DateTimeEditElement.h:

(LayoutParameters): Removed minimumYear, maximumYear, and undefinedYear(), and added minimum and maximum fields.
(WebCore::DateTimeEditElement::LayoutParameters::LayoutParameters):

7:28 AM Changeset in webkit [138253] by thiago.santos@intel.com
  • 2 edits
    2 moves
    1 add in trunk/Tools

[Qt] Move ImageDiff to the Tools directory root
https://bugs.webkit.org/show_bug.cgi?id=105420

Reviewed by Tor Arne Vestbø.

Moved ImageDiff from outside DumpRenderTree because it is also a
dependency when running pixel tests for WebKit2.

  • ImageDiff/ImageDiff.pro: Renamed from Tools/DumpRenderTree/qt/ImageDiff.pro.
  • ImageDiff/qt/ImageDiff.cpp: Renamed from Tools/DumpRenderTree/qt/ImageDiff.cpp.
  • Tools.pro:
7:26 AM Changeset in webkit [138252] by zandobersek@gmail.com
  • 9 edits in trunk

[GTK] Remove the --enable-unstable-features configuration option
https://bugs.webkit.org/show_bug.cgi?id=105327

Reviewed by Martin Robinson.

.:

Remove the unnecessary feature_defines_unstable variable.
Remove the unstable-features configuration option.

  • configure.ac:
  • GNUmakefile.am:

Source/WebCore:

Remove the ENABLE_UNSTABLE_FEATURES guards in various GNUmakefiles now that
the configuration option is removed.

No new tests - no new testable functionality.

  • GNUmakefile.am: Remove the ENABLE_UNSTABLE_FEATURES guards in GNUmakefile.am

where they were used to override certain feature define values in case of a release build.

  • GNUmakefile.features.am.in: Adjust the default value for the feature defines that were

previously overriden in release builds. This feature define list will eventually represent
feature status in release builds with overriding being done through build-webkit.

  • bindings/gobject/GNUmakefile.am: Move the DOM bindings targets that were previously guarded

by the ENABLE_UNSTABLE_FEATURES guards to the common listing of the video-dependent DOM bindings.

Tools:

Add a missing feature option for the CSS sticky position feature.

  • Scripts/webkitperl/FeatureList.pm:
7:14 AM Changeset in webkit [138251] by dominik.rottsches@intel.com
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening.

Marking inspector-protocol/nmi-webaudio* tests as failing,
they don't work yet after r138248.

  • platform/efl/TestExpectations:
6:54 AM Changeset in webkit [138250] by fmalita@chromium.org
  • 52 edits in trunk

Incorrect color space conversion for FEImage
https://bugs.webkit.org/show_bug.cgi?id=105437

Reviewed by Dirk Schulze.

Source/WebCore:

When no color-interpolation-filters property is specified, SVG filters are assumed to
operate in LinearRGB color space (http://www.w3.org/TR/SVG/filters.html#FilterPrimitivesOverviewIntro).
Currently, FilterEffect relies on filters generating results in the same color space they
are requested to use (LinearRGB by default) - but this is not true for FEImage as its
result is always a DeviceRGB image buffer. Hence, in FEImage's case, the filter chain
performs an invalid LinearRGB->DeviceRGB conversion at the end (for an image buffer already
encoded in DeviceRGB).

This patch introduces a mechanism for filters to override the requested result color space
and updates FEImage to always mark its result as DeviceRGB. If a dependent filter requires
input in a different color space, FilterEffect::apply() already handles the conversion.

No new tests - existing tests cover this extensively, after rebaseline.

  • platform/graphics/filters/FilterEffect.cpp:

(WebCore::FilterEffect::transformResultColorSpace):
Minor cleanup: asImageBuffer() already handles this logic.

  • platform/graphics/filters/FilterEffect.h:

(WebCore::FilterEffect::setResultColorSpace):
(FilterEffect):
New method for overriding the result color space.

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::apply):

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::postApplyResource):
Do not perform an explicit conversion in these places, as the result color space may be
different from the requested color space. Let FilterEffect::transformResultColorSpace()
figure it out.

  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::platformApplySoftware):
FEImage results are always ColorSpaceDeviceRGB.

LayoutTests:

Rebaselined Chromium(Linux) results, updated Chromium/EFL/Gtk/Qt expectations.

  • platform/chromium-linux/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-image-01-b-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
  • platform/chromium-linux/svg/filters/feImage-filterUnits-objectBoundingBox-primitiveUnits-objectBoundingBox-expected.png:
  • platform/chromium-linux/svg/filters/feImage-filterUnits-objectBoundingBox-primitiveUnits-userSpaceOnUse-expected.png:
  • platform/chromium-linux/svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-objectBoundingBox-expected.png:
  • platform/chromium-linux/svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-userSpaceOnUse-expected.png:
  • platform/chromium-linux/svg/filters/feImage-late-indirect-update-expected.png:
  • platform/chromium-win/svg/custom/feDisplacementMap-01-expected.png:
  • platform/chromium-win/svg/filters/feImage-animated-transform-on-target-rect-expected.png:
  • platform/chromium-win/svg/filters/feImage-multiple-targets-id-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-position-expected.png:
  • platform/chromium-win/svg/filters/feImage-preserveAspectratio-expected.png:
  • platform/chromium-win/svg/filters/feImage-reference-invalidation-expected.png:
  • platform/chromium-win/svg/filters/feImage-subregions-expected.png:
  • platform/chromium-win/svg/filters/feImage-subregions-preseveAspectRatio-none-expected.png:
  • platform/chromium-win/svg/filters/feImage-subregions-preseveAspectRatio-none-with-viewBox-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-add-to-document-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-attribute-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-attribute-change-with-use-indirection-2-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-attribute-change-with-use-indirection-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-changes-id-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-id-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-inline-style-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-property-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-reappend-to-document-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-remove-from-document-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-style-change-expected.png:
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
6:47 AM Changeset in webkit [138249] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Skip unit test WebKit2.ForceRepaint that times out

  • Scripts/run-gtk-tests:

(TestRunner):

6:09 AM Changeset in webkit [138248] by dominik.rottsches@intel.com
  • 10 edits in trunk

[EFL] MiniBrowser does not play Infinite Gangnam Style
https://bugs.webkit.org/show_bug.cgi?id=103531

Reviewed by Kenneth Rohde Christiansen.

.:

WebAudio now switched to ON for EFL.

  • Source/cmake/OptionsEfl.cmake:

Source/WebCore:

Specifying additional define to avoid deprecation warning.

No new tests, compile time change which doesn't affect behavior.

  • PlatformEfl.cmake:

Source/WebKit2:

WebAudio preference now defaults to switched on.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::EwkViewImpl):

Tools:

For EFL we would like this feature to be built by default.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Marked remaining webaudio failures.

  • platform/efl/TestExpectations:
5:48 AM Changeset in webkit [138247] by Simon Hausmann
  • 2 edits in trunk/Source/WebCore

[Qt] JS bridge does not transmit QVariants anymore in Qt5
https://bugs.webkit.org/show_bug.cgi?id=104540

Patch by Simon Hausmann <simon.hausmann@digia.com>, Jedrzej Nowacki <jedrzej.nowacki@digia.com> on 2012-12-19
Reviewed by Kenneth Rohde Christiansen.

A data corruption exists in the QObject bridge when calling slots that
take a QVariant.

The calling convention for slots is that the void* parameter array must
contain pointers to the actually required destination argument type. If
a function takes an int for example, the corresponding entry in the
void* parameter array must be a pointer to an int that the moc
generated code then can "safely" cast to an int* and dereference.
Similarly if the function takes a QVariant it must be a pointer to a
QVariant.

We implement this calling convention by constructing QVariants of the
requested parameter types and passing the value of data() into the
void* parameter array. This works fine for all types except if the
requested type is a QVariant. In that case data() will _not_ return a
pointer that can later be safely casted to a QVariant pointer and
dereferenced. Instead we must use the address of our variant to ensure
a working cast.

Our auto tests cover this case, but they worked by accident because the
provided pointer when casted to a QVariant happens to have the correct
type id that doesn't produce the warning seen in the test case of the
provided example and the unit test just copies the QVariant and thus
pointer.

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::QtMethodMatchType::typeId): Replace string based meta
type id determination of QVariant with a quicker table lookup.
(JSC::Bindings::findMethodIndex): Remember the chosen (requested) types
and pass the pointer to the QVariant instead of its data() pointer if
requested.
(JSC::Bindings::QtRuntimeMethod::call): Fixed determination of whether
we need to convert a return value or not solely based on the return
type _specified_ in the meta method instead of the variant value
returned. The latter is not sufficient because a slot can return an
invalid variant, which is not the same as returning void. This was
triggered by an unit test that accidentally passed due to this memory
corruption in the first place.

5:45 AM Changeset in webkit [138246] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] EWS bots should call qmake always
https://bugs.webkit.org/show_bug.cgi?id=90049

Reviewed by Simon Hausmann.

  • Scripts/webkitdirs.pm:

(buildQMakeProjects):

5:01 AM Changeset in webkit [138245] by yurys@chromium.org
  • 8 edits
    1 add in trunk/Source/WebCore

Web Inspector: extract native heap graph representation into a separate file
https://bugs.webkit.org/show_bug.cgi?id=105524

Reviewed by Alexander Pavlov.

Moved native heap graph parser into NativeHeapGraph.js, renamed NativeHeapGraphNode to NativeHeapGraph.Node
and NativeHeapGraphEdge to NativeHeapGraph.Edge
Removed unused pie chart view.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution): fixed optional parameter handling

  • WebCore.gypi:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/compile-front-end.py:
  • inspector/front-end/NativeHeapGraph.js: Added.

(WebInspector.NativeHeapGraph):
(WebInspector.NativeHeapGraph.prototype.rootNodes):
(WebInspector.NativeHeapGraph.prototype._calculateNodeEdgeIndexes):
(WebInspector.NativeHeapGraph.prototype._addDummyNode):
(WebInspector.NativeHeapGraph.Edge):
(WebInspector.NativeHeapGraph.Edge.prototype.type):
(WebInspector.NativeHeapGraph.Edge.prototype.name):
(WebInspector.NativeHeapGraph.Edge.prototype.target):
(WebInspector.NativeHeapGraph.Edge.prototype._getStringField):
(WebInspector.NativeHeapGraph.Edge.prototype.toString):
(WebInspector.NativeHeapGraph.Node):
(WebInspector.NativeHeapGraph.Node.prototype.id):
(WebInspector.NativeHeapGraph.Node.prototype.type):
(WebInspector.NativeHeapGraph.Node.prototype.size):
(WebInspector.NativeHeapGraph.Node.prototype.className):
(WebInspector.NativeHeapGraph.Node.prototype.name):
(WebInspector.NativeHeapGraph.Node.prototype.hasReferencedNodes):
(WebInspector.NativeHeapGraph.Node.prototype.referencedNodes):
(WebInspector.NativeHeapGraph.Node.prototype.outgoingEdges):
(WebInspector.NativeHeapGraph.Node.prototype.targetOfEdge):
(WebInspector.NativeHeapGraph.Node.prototype.targetsOfAllEdges):
(WebInspector.NativeHeapGraph.Node.prototype._firstEdgePoistion):
(WebInspector.NativeHeapGraph.Node.prototype._afterLastEdgePosition):
(WebInspector.NativeHeapGraph.Node.prototype._getStringField):
(WebInspector.NativeHeapGraph.Node.prototype.toString):

  • inspector/front-end/NativeMemorySnapshotView.js:
  • inspector/front-end/ProfilesPanel.js:
  • inspector/front-end/WebKit.qrc:
4:43 AM Changeset in webkit [138244] by caseq@chromium.org
  • 9 edits in trunk/Source/WebCore

Web Inspector: Timeline: enhance short-records filter.
https://bugs.webkit.org/show_bug.cgi?id=101749

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-12-20
Reviewed by Pavel Feldman.

Currently filter could be "on" (accepting records longer than 15ms) or
"off" (accepting all records). Adding some options between 0ms and 15ms
will make this feature much more useful.

Additional changes:

  • removed hardcoded size constant WebInspector.StatusBarComboBox.width
  • English.lproj/localizedStrings.js: Added new / removed orphan strings.
  • inspector/front-end/ProfilesPanel.js: Changed offset calculation.
  • inspector/front-end/TimelineOverviewPane.js: Enhanced filter.
  • inspector/front-end/TimelinePanel.js: Replaced button with combobox.

(WebInspector.TimelineIsLongFilter): Enhanced filter.

  • inspector/front-end/TimelinePresentationModel.js:

Removed Record "isLong" method.

  • inspector/front-end/timelinePanel.css: Removed orphan styles.
4:12 AM Changeset in webkit [138243] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, skip a crashing test to paint the bots green.

  • platform/qt/TestExpectations:
3:48 AM Changeset in webkit [138242] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [CPU Profile] Idle time is always 0
https://bugs.webkit.org/show_bug.cgi?id=105509

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

Fix: pass correct profile object to method.

  • inspector/front-end/CPUProfileView.js:

(WebInspector.CPUProfileView.profileCallback):
(WebInspector.CPUProfileView.prototype._injectIdleTimeNode):

3:05 AM Changeset in webkit [138241] by zandobersek@gmail.com
  • 2 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening.

Adding a platform-specific baseline for a Shadow DOM test as required after r138165.
Adding failure expectations for two failures introduced separately in r138112 and r138184.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/dom/shadow/shadow-root-js-api-expected.txt: Added.
3:00 AM Changeset in webkit [138240] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Adjust TestExpectations for media/track tests.

  • platform/chromium/TestExpectations:
2:39 AM Changeset in webkit [138239] by jochen@chromium.org
  • 2 edits in trunk/Tools

[chromium] fix stray printf in TestRunner's WebTestProxy
https://bugs.webkit.org/show_bug.cgi?id=105515

Reviewed by Ryosuke Niwa.

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

(WebTestRunner::WebTestProxyBase::shouldInsertNode):

2:20 AM Changeset in webkit [138238] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mac test expectations as suggested by Antoine Quint.

  • platform/mac/TestExpectations:
2:06 AM Changeset in webkit [138237] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: fix |_repaintAll| behaviour of a DefaultTextEditor
https://bugs.webkit.org/show_bug.cgi?id=105429

Patch by Andrey Lushnikov <lushnikov@chromium.com> on 2012-12-20
Reviewed by Pavel Feldman.

Override |_repainAll| method in TextEditorMainPanel and manually
repaint visible chunks.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine): Call |_repaintAll| method because |expand()| does not do any repaints anymore.
(WebInspector.TextEditorChunkedPanel.prototype._repaintAll): Return |false| in case of fast return, and |true| otherwise.
(WebInspector.TextEditorMainPanel.prototype._repaintAll): Added.
(WebInspector.TextEditorMainChunk.prototype.expand): Remove painting operations.

1:39 AM Changeset in webkit [138236] by pfeldman@chromium.org
  • 11 edits in trunk/Source

Web Inspector: introduce Page.captureScreenshot
https://bugs.webkit.org/show_bug.cgi?id=105315

Reviewed by Yury Semikhatsky.

Source/WebCore:

It will be primarily used by the automation clients, but maybe we find a good place
for it in the front-end as well.

  • inspector/Inspector.json:
  • inspector/InspectorClient.h:

(WebCore::InspectorClient::captureScreenshot):
(InspectorClient):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::captureScreenshot):
(WebCore):

  • inspector/InspectorPageAgent.h:

Source/WebKit/chromium:

Introduces a way for browser to handle protocol commands:
embedder will ask WebKit whether it should override the command
result and will get a hint value. Based on that hint, browser
will prepare the data and ask WebKit again to patch this data in.

  • public/WebDevToolsAgent.h:

(WebDevToolsAgent):

  • src/InspectorClientImpl.cpp:

(WebKit::InspectorClientImpl::captureScreenshot):
(WebKit):

  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebDevToolsAgentImpl.cpp:

(BrowserDataHintStringValues):
(WebKit):
(WebKit::WebDevToolsAgentImpl::WebDevToolsAgentImpl):
(WebKit::WebDevToolsAgentImpl::captureScreenshot):
(WebKit::browserHintToString):
(WebKit::browserHintFromString):
(WebKit::WebDevToolsAgentImpl::sendMessageToFrontend):
(WebKit::WebDevToolsAgent::shouldPatchWithBrowserData):
(WebKit::WebDevToolsAgent::patchWithBrowserData):

  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

1:18 AM Changeset in webkit [138235] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

Make order iterator member stack allocated in RenderFlexibleBox
https://bugs.webkit.org/show_bug.cgi?id=104366

Reviewed by Tony Chang.

It avoids a heap allocation during layout.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::OrderIterator::OrderIterator):
(WebCore::RenderFlexibleBox::OrderIterator::setOrderValues):
(WebCore::RenderFlexibleBox::OrderIterator::first):
(WebCore::RenderFlexibleBox::OrderIterator::next):
(WebCore::RenderFlexibleBox::OrderIterator::reset):
(WebCore::RenderFlexibleBox::RenderFlexibleBox):
(WebCore::RenderFlexibleBox::firstLineBoxBaseline):
(WebCore::RenderFlexibleBox::layoutBlock):
(WebCore::RenderFlexibleBox::appendChildFrameRects):
(WebCore::RenderFlexibleBox::repaintChildrenDuringLayoutIfMoved):
(WebCore::RenderFlexibleBox::paintChildren):
(WebCore::RenderFlexibleBox::layoutFlexItems):
(WebCore::RenderFlexibleBox::computeNextFlexLine):
(WebCore::RenderFlexibleBox::alignFlexLines):
(WebCore::RenderFlexibleBox::alignChildren):
(WebCore::RenderFlexibleBox::flipForRightToLeftColumn):
(WebCore::RenderFlexibleBox::flipForWrapReverse):

  • rendering/RenderFlexibleBox.h:

(OrderIterator):
(WebCore::RenderFlexibleBox::OrderIterator::currentChild):
(RenderFlexibleBox):

1:12 AM Changeset in webkit [138234] by commit-queue@webkit.org
  • 9 edits in trunk/Source

Remove GraphicsLayer::setGraphicsLayerFactory().
https://bugs.webkit.org/show_bug.cgi?id=105503

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

We don't need GraphicsLayer::setGraphicsLayerFactory() anymore. After r130302,
we have used a graphics layer factory explicitly.

Source/WebCore:

No new tests. Refactoring only.

  • platform/graphics/GraphicsLayer.cpp:
  • platform/graphics/GraphicsLayer.h:

(GraphicsLayer):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayer::create):

Source/WebKit2:

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainEfl):

  • WebProcess/qt/WebProcessMainQt.cpp:

(WebKit::WebProcessMainQt):

1:07 AM Changeset in webkit [138233] by loislo@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r138215.
http://trac.webkit.org/changeset/138215
https://bugs.webkit.org/show_bug.cgi?id=105505

it broke downstream compilation with clang (Requested by
loislo on #webkit).

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

  • public/platform/WebKitPlatformSupport.h:

(WebKit):
(WebKitPlatformSupport):
(WebKit::WebKitPlatformSupport::sharedWorkerRepository):

  • src/SharedWorkerRepository.cpp:

(WebKit::sharedWorkerRepository):
(WebCore::SharedWorkerRepository::isAvailable):

1:00 AM Changeset in webkit [138232] by dominik.rottsches@intel.com
  • 19 edits in trunk

[WK2] WebAudio WKTR support
https://bugs.webkit.org/show_bug.cgi?id=95084

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Mac build fixes for adding WebAudio WKTR support.

No new tests, enables audio testing using WebKitTestRunner.

  • WebCore.exp.in: toUint8Array symbol exported.
  • WebCore.xcodeproj/project.pbxproj: JSUint8Array.h and JSArrayBufferView.h headers made available as private headers.

Source/WebKit2:

Implementing audio data dump support for WebKitTestRunner,
by adding the API to the IDL, enabling IPC for transferring
the audio data as bytebuffer and dumping it according
to run-webkit-tests script's expectations.

I am adding a testrunner specific bundle method to extract data
from a Uint8Array into a bytebuffer. This API is used by
WebKitTestRunner's TestRunner to extract the data into a local
variable, then sending it over IPC.

  • DerivedSources.pri: Fixing Qt build by adding JSUint8Array.h header to list of forwarding headers.
  • Target.pri: Adding missing WKData.* files. Qt build fix.
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleCreateWKDataFromUint8Array): Added.

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Adding WKBundleCreateWKDataFromUint8Array.
  • WebProcess/InjectedBundle/InjectedBundle.cpp: Convert Uint8Array to WebData.

(WebKit::InjectedBundle::createWebDataFromUint8Array):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(WebKit):
(InjectedBundle):

Tools:

Implementing audio data dump support for WebKitTestRunner,
by adding the API to the IDL, enabling IPC for transferring
the audio data as bytebuffer and dumping it according
to run-webkit-tests script's expectations.
This enables audio testing on WebKit2 ports.
Based on initial wip-patch from Philippe Normand - thanks.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: Adding setAudioData API.
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp: Assign audio buffer data to a local WKDataRef after extracting it from WK2 using WKBundleDataFromUint8Array bundle API.

(WTR::TestRunner::setAudioData):
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h: Add a whatToDump state for dumping Audio.

(TestRunner):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp: Add audio to the message that's transferred to the WKTR process.

(WTR::InjectedBundle::done):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.h: Allow setting and audio result handle to be transferred.

(WTR::InjectedBundle::setAudioResult):
(InjectedBundle):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::dump): Dummy handling the Audio case in the switch, build fix for Mac.

  • WebKitTestRunner/TestInvocation.cpp: Audio dump support, dump audio if we haven't received a text dump from the web process.

(WTR::TestInvocation::dumpResults):
(WTR):
(WTR::TestInvocation::dumpAudio):
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle): Storing received audio data before dumping.

  • WebKitTestRunner/TestInvocation.h:

(TestInvocation):

12:54 AM Changeset in webkit [138231] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[GTK] Count failed and timed out tests separately
https://bugs.webkit.org/show_bug.cgi?id=105448

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-20
Reviewed by Carlos Garcia Campos.

Display the number of tests that fail, time out and are skipped
separately in the buildbot page.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunGtkAPITests.commandComplete):
(RunGtkAPITests.evaluateCommand):
(RunGtkAPITests.getText2):

  • Scripts/run-gtk-tests:

(TestRunner.run_tests):

12:49 AM Changeset in webkit [138230] by loislo@chromium.org
  • 2 edits in trunk/Source/WebKit/mac

Unreviewed build fix for chromium mac after r138206.

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

12:41 AM Changeset in webkit [138229] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

Build fix for WinCE after r137534.

  • inspector/InspectorInstrumentation.h:

(WebCore):

Dec 19, 2012:

10:41 PM Changeset in webkit [138228] by yurys@chromium.org
  • 4 edits
    3 adds in trunk

Web Inspector: deny access from injected script to nodes from document with another origin
https://bugs.webkit.org/show_bug.cgi?id=105423

Reviewed by Pavel Feldman.

Source/WebCore:

Check that calling context can access the document inspected node belong to
before returning JS wrapper for the node.

Test: http/tests/inspector-protocol/access-inspected-object.html

  • bindings/js/JSInjectedScriptHostCustom.cpp:

(WebCore::JSInjectedScriptHost::inspectedObject):

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::InjectedScriptHost::nodeAsScriptValue):

LayoutTests:

Test that $0 is ineaccible in the main frame if it is a node from an iframe that
is not accassible beacause of cross origin access checks.

  • http/tests/inspector-protocol/access-inspected-object-expected.txt: Added.
  • http/tests/inspector-protocol/access-inspected-object.html: Added.
  • http/tests/inspector-protocol/resources/test-page.html: Added.
10:08 PM Changeset in webkit [138227] by thakis@chromium.org
  • 2 edits in trunk/Source/WebCore

Remove slighly confusing "} if" pattern
https://bugs.webkit.org/show_bug.cgi?id=105492

Reviewed by Andreas Kling.

ADVANCE_TO ends in a goto statement, so this doesn't change behavior.

  • html/parser/HTMLTokenizer.cpp:

(WebCore::HTMLTokenizer::nextToken):

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

Adopt new assertion SPI for process suppression on Mac
https://bugs.webkit.org/show_bug.cgi?id=105378

Patch by Kiran Muppala <cmuppala@apple.com> on 2012-12-19
Reviewed by Mark Rowe.

Source/WebKit2:

Process suppression for WebKit2 child processes is currently enabled or disabled using AutomaticTermination.
This should be replaced with a new assertion SPI specific to process suppression.

  • Shared/ChildProcess.cpp:

(WebKit::ChildProcess::ChildProcess): Remove unused member variable m_applicationIsOccluded.

  • Shared/ChildProcess.h:

(WebKit::ChildProcess::applicationIsOccluded): Infer occlusion state from m_processVisibleAssertion.

  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::setApplicationIsOccluded): Use applicationIsOccluded() accessor to check if the
occlusion state has changed and take or release a process visible assertion accordingly.
(WebKit::ChildProcess::platformInitialize): Remove call to initializeTimerCoalescingPolicy(), since taking
a process visible assertion also sets the timer coalescing policy appropriately. Set the occlusion
state to false on initialization.

WebKitLibraries:

Add WKNSProcessInfoProcessAssertionWithTypes().

  • WebKitSystemInterface.h:
9:52 PM Changeset in webkit [138225] by pilgrim@chromium.org
  • 5 edits
    1 move
    2 deletes in trunk/Source

[Chromium] Remove idbFactory from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=105460

Reviewed by Darin Fisher.

Part of a larger refactoring series; see tracking bug 82948.

Source/WebCore:

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • platform/chromium/PlatformSupport.h: Removed.
  • storage/chromium: Removed.
  • storage/chromium/IDBFactoryBackendInterface.cpp: Removed.

Source/WebKit/chromium:

  • WebKit.gyp:
  • src/IDBFactoryBackendInterface.cpp: Added.

(WebCore):
(WebCore::IDBFactoryBackendInterface::create):

  • src/PlatformSupport.cpp: Removed.
9:50 PM Changeset in webkit [138224] by eric.carlson@apple.com
  • 5 edits in trunk

Crash in TextTrack::trackIndexRelativeToRenderedTracks()
https://bugs.webkit.org/show_bug.cgi?id=105371

Reviewed by Simon Fraser.

Source/WebCore:

Add an RAII object to manage text track update blocking, use it to always process the
current cues to ensure that cues from a track that is deleted are removed from the
shadow DOM before the next layout.

No new tests, this fixes a crash in media/video-controls-captions-trackmenu.html.

  • html/HTMLMediaElement.cpp:

(WebCore::TrackDisplayUpdateScope::TrackDisplayUpdateScope): New, call beginIgnoringTrackDisplayUpdateRequests.
(WebCore::TrackDisplayUpdateScope::~TrackDisplayUpdateScope): New, call endIgnoringTrackDisplayUpdateRequests.
(WebCore::HTMLMediaElement::beginIgnoringTrackDisplayUpdateRequests):
(WebCore::HTMLMediaElement::endIgnoringTrackDisplayUpdateRequests): Call updateActiveTextTrackCues

when the ignore count reaches zero.

(WebCore::HTMLMediaElement::textTrackAddCues): Use TrackDisplayUpdateScope instead of calling

beginIgnoringTrackDisplayUpdateRequests and endIgnoringTrackDisplayUpdateRequests directly.

(WebCore::HTMLMediaElement::textTrackRemoveCues): Ditto.
(WebCore::HTMLMediaElement::removeTrack): Ditto.
(WebCore::HTMLMediaElement::removeAllInbandTracks): Ditto.
(WebCore::HTMLMediaElement::didRemoveTrack): Ditto. Call removeTrack.

  • html/HTMLMediaElement.h: Declare TrackDisplayUpdateScope as a friend of HTMLMediaElement so it

can call protected methods.

LayoutTests:

  • platform/mac/TestExpectations: Unskip video-controls-captions-trackmenu.html.
9:50 PM Changeset in webkit [138223] by piman@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Remove old setBackingTextureId/setBackingIOSurfaceId API on WebPluginContainer
https://bugs.webkit.org/show_bug.cgi?id=105472

Reviewed by James Robinson.

This is not called anymore by chromium (as of r173545), using
setWebPlugin instead.

  • public/WebPluginContainer.h:
  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::WebPluginContainerImpl):

  • src/WebPluginContainerImpl.h:

(WebPluginContainerImpl):

9:44 PM Changeset in webkit [138222] by Nate Chapin
  • 3 edits in trunk/Source/WebCore

REGRESSION(r137607): resource load client callbacks are not called for the main resource when loading HTML string
https://bugs.webkit.org/show_bug.cgi?id=105330

Reviewed by Brady Eidson.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::responseReceived):
(WebCore::MainResourceLoader::dataReceived):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::load):
(WebCore::MainResourceLoader::identifier):

  • loader/MainResourceLoader.h:

(MainResourceLoader):

9:44 PM Changeset in webkit [138221] by pilgrim@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] add setIDBFactory method for embedders to call
https://bugs.webkit.org/show_bug.cgi?id=105465

Reviewed by Darin Fisher.

This is step 1 of getting rid of WebKitPlatform::idbFactory. This
adds a setter for embedders to call upon initialization, which (if
set) will be used instead of calling the idbFactory()
method. Eventually the idbFactory() method will go away, and this
setter will be the only way to initialize the Indexed Database API.

  • public/WebIDBFactory.h:

(WebKit):

  • src/IDBFactoryBackendProxy.cpp:

(WebKit):
(WebKit::setIDBFactory):
(WebKit::IDBFactoryBackendProxy::IDBFactoryBackendProxy):

9:39 PM Changeset in webkit [138220] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Check Document now should work with continuous check off
https://bugs.webkit.org/show_bug.cgi?id=105228

Patch by Rachel Blum <groby@chromium.org> on 2012-12-19
Reviewed by Anders Carlsson.

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::checkSpellingOfString):

9:30 PM Changeset in webkit [138219] by eric.carlson@apple.com
  • 3 edits in trunk/LayoutTests

Update video-controls-captions-trackmenu.html
https://bugs.webkit.org/show_bug.cgi?id=105455

Reviewed by Dean Jackson.

  • media/video-controls-captions-trackmenu-expected.txt: Update results.
  • media/video-controls-captions-trackmenu.html: Update test to account for sorted menu.
9:28 PM Changeset in webkit [138218] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] RSS reader mangles UTF-8
https://bugs.webkit.org/show_bug.cgi?id=105440

RIM PR 235099

Patch by Cosmin Truta <ctruta@rim.com> on 2012-12-19
Reviewed by Yong Li.
Reviewed internally by Liam Quinn.

The HTML string built from RSS parse data is encoded in UTF-8,
and it should not be converted to UTF-8 repeatedly.

  • platform/network/blackberry/rss/RSSFilterStream.cpp:

(WebCore::RSSFilterStream::convertContentToHtml):

  • platform/network/blackberry/rss/RSSGenerator.cpp:

(WebCore::RSSGenerator::generateHtml):

9:27 PM Changeset in webkit [138217] by commit-queue@webkit.org
  • 1 edit
    1 add in trunk

[EFL] Allow the build system to find OpenGL ES
https://bugs.webkit.org/show_bug.cgi?id=104760

Patch by Yael Aharon <yael.aharon@intel.com> on 2012-12-19
Reviewed by Laszlo Gombos.

Add a way to find if GLESv2 is supported by the build system.
Support for GLESv2 will be added separately.

  • Source/cmake/FindGLES.cmake: Added.
9:25 PM Changeset in webkit [138216] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Spellchecker should provide suggestions for non-caret selection, too
https://bugs.webkit.org/show_bug.cgi?id=104841

Patch by Rachel Blum <groby@chromium.org> on 2012-12-19
Reviewed by Anders Carlsson.

Allow spelling suggestions for a word if the word is already selected. No suggestion
if subset of a word or more than a word is selected.

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):

9:23 PM Changeset in webkit [138215] by pilgrim@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Remove all references to sharedWorkerRepository()
https://bugs.webkit.org/show_bug.cgi?id=104704

Reviewed by Darin Fisher.

Now that Chromium calls setSharedWorkerRepository upon
initializing WebKit (
https://codereview.chromium.org/10990121/ and
https://codereview.chromium.org/11576028/ ) and no longer
tries to override sharedWorkerRepository, it is safe to remove
all references to this function.

  • public/platform/WebKitPlatformSupport.h:

(WebKit):
(WebKit::WebKitPlatformSupport::idbFactory):

  • src/SharedWorkerRepository.cpp:

(WebKit::sharedWorkerRepository):
(WebCore::SharedWorkerRepository::isAvailable):

8:07 PM Changeset in webkit [138214] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

7:48 PM Changeset in webkit [138213] by Lucas Forschler
  • 1 copy in tags/Safari-537.23

New Tag.

6:00 PM Changeset in webkit [138212] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/win

Build WebKit2ExportGenerator before WebKitLib
https://bugs.webkit.org/show_bug.cgi?id=105487

Reviewed by Tim Horton.

  • WebKit.vcproj/WebKit.sln:
5:43 PM Changeset in webkit [138211] by kerz@chromium.org
  • 2 edits in branches/chromium/1364/Source/WebCore/loader

Merge 138174

REGRESSION(r137607): PluginDocument loads consume huge amounts of memory
https://bugs.webkit.org/show_bug.cgi?id=105359

Reviewed by Alexey Proskuryakov.

No new tests, verified manually that http://www.scb.se/statistik/_publikationer/NR0001_2012K02_TI_A28TI1203.pdf
no longer consumes several GB of memory.

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::setShouldBufferData): shouldBufferData is an enum, not a boolean, so this is reversed.

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::data): If the dataReceived() callback tells us to stop buffering data, be sure to

notify the ResourceLoader and clear the data buffer.

TBR=Nate Chapin
Review URL: https://codereview.chromium.org/11571073

5:40 PM Changeset in webkit [138210] by jonlee@apple.com
  • 2 edits in trunk/Source/WebCore

Leak in StringImpl::createCFString()
https://bugs.webkit.org/show_bug.cgi?id=105485
<rdar://problem/12801963>

Reviewed by Anders Carlsson.

  • platform/text/cf/StringImplCF.cpp:

(WTF::StringImpl::createCFString): Missing adoptCF()'s.

5:40 PM Changeset in webkit [138209] by kerz@chromium.org
  • 20 edits
    4 deletes in branches/chromium/1364

Revert 138188

Merge 137939

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.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11635024

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11644037

5:36 PM Changeset in webkit [138208] by kerz@chromium.org
  • 3 edits
    2 deletes in branches/chromium/1364

Revert 138189

Merge 138095

Input elements with default touch handlers don't update handler counts when changing documents
https://bugs.webkit.org/show_bug.cgi?id=105334

Reviewed by James Robinson.

Source/WebCore:

When an Input element with default touch event handlers changes documents, it failed to
update the touch event handler sets in both the old and new document. This patch fixes this
case.

Test: fast/events/touch/touch-input-element-change-documents.html

  • dom/Document.h:

(WebCore::Document::didRemoveTouchEventTargetNode) This function makes sense when touch
handling is enabled, regardless of whether we're tracking the rects.

  • dom/Document.cpp:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::~HTMLInputElement): Switch from didRemoveTouchEventHandler to
didRemoveTouchEventTargetNode, since we don't care about counts in the destructor.
(WebCore::HTMLInputElement::updateType): Fixing incorrect indentation.
(WebCore::HTMLInputElement::didMoveToNewDocument): Adding the node to the new document and
removing it from the old.

LayoutTests:

  • fast/events/touch/touch-input-element-change-documents-expected.txt: Added.
  • fast/events/touch/touch-input-element-change-documents.html: Added.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11649024

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11571072

5:34 PM Changeset in webkit [138207] by kerz@chromium.org
  • 4 edits in branches/chromium/1364

Revert 138190

Merge 138181

Correct missing touch event handler de-registration for nested Documents and DOMWindows
https://bugs.webkit.org/show_bug.cgi?id=105384

Reviewed by James Robinson.

Source/WebCore:

Correcting case by which a nested DOMWindow wouldn't clean up its event handler references
on its Document when removeAllEventListeners was called. Also, correctly propagating this
from a nested Document to its owner Document.

Updating fast/events/touch/touch-handler-count.html to catch this bug.

  • dom/Document.cpp:

(WebCore::Document::didRemoveEventTargetNode):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::removeAllEventListeners):

LayoutTests:

  • fast/events/touch/touch-handler-count-expected.txt:
  • fast/events/touch/touch-handler-count.html: Adding case of nested DOMWindows with event handlers.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11635026

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11647025

4:58 PM Changeset in webkit [138206] by ap@apple.com
  • 15 edits in trunk/Source

<rdar://problem/12890242> [WK2 NetworkProcess] Client doesn't receive SSL certificates
https://bugs.webkit.org/show_bug.cgi?id=105467

Reviewed by Brady Eidson.

4:50 PM Changeset in webkit [138205] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix some incorrect tests in testapi.c

4:40 PM Changeset in webkit [138204] by kov@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Add new strings to GTK+'s implementation of
LocalizedStrings, using glib's context-aware macro.

  • platform/gtk/LocalizedStringsGtk.cpp:

(WebCore):
(WebCore::textTrackClosedCaptionsText):
(WebCore::textTrackSubtitlesText):
(WebCore::textTrackOffText):
(WebCore::textTrackNoLabelText):

4:38 PM Changeset in webkit [138203] by jonlee@apple.com
  • 10 edits in trunk/Source/WebKit2

Add a function to set the origin hash table
https://bugs.webkit.org/show_bug.cgi?id=105447
<rdar://problem/12910985>

Reviewed by Brian Weinstein.

Add a new API called WKContextSetPlugInAutoStartOriginHashes. It assigns the table of hashes,
keyed by main frame origin, to the WebContext. That, in turn, notifies all existing web
processes, so that each web process can update its copy of the auto-start hashes.

  • UIProcess/API/C/WKContext.cpp:

(WKContextSetPlugInAutoStartOriginHashes): To clear the table, an empty dictionary must be
provided.

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

(WebKit::WebContext::setPlugInAutoStartOriginHashes): Forward to PlugInAutoStartProvider.

  • UIProcess/WebContext.h:
  • UIProcess/Plugins/PlugInAutoStartProvider.cpp:

(WebKit::PlugInAutoStartProvider::setAutoStartOriginsTable): Clear the map and set of hashes,
and convert the data from the provided dictionary. Also add it to a temporary vector, which will
be used to pass along to all of the active web processes.

  • UIProcess/Plugins/PlugInAutoStartProvider.h:
  • WebProcess/WebProcess.messages.in: Add plugInAutoStartOriginsChanged. Takes in a vector of

the new set of hashes.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::plugInAutoStartOriginsChanged): Clear the existing set, and copy the new
hashes.

  • WebProcess/WebProcess.h:
4:27 PM Changeset in webkit [138202] by simonjam@chromium.org
  • 8 edits in trunk/Source/WebCore

Set the original resource's response even on a 304
https://bugs.webkit.org/show_bug.cgi?id=105373

Reviewed by Nate Chapin.

The existing setResponse was renamed to responseReceived to better reflect what it does. A new
setResponse was added that only sets the response. This is used in the 304 case.

No new tests. A new Resource Timing test will depend on this soon.

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::responseReceived):

  • loader/cache/CachedImage.h:

(CachedImage):

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::responseReceived):

  • loader/cache/CachedRawResource.h:

(CachedRawResource):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::responseReceived):

  • loader/cache/CachedResource.h:

(CachedResource):
(WebCore::CachedResource::setResponse):

4:19 PM Changeset in webkit [138201] by fpizlo@apple.com
  • 9 edits
    6 adds in trunk

JSObject::ensure<IndexingType> should gracefully handle InterceptsGetOwn..., and should never be called when the 'this' is not an object
https://bugs.webkit.org/show_bug.cgi?id=105468

Reviewed by Mark Hahnenberg, Oliver Hunt, and Gavin Barraclough.

Source/JavaScriptCore:

Changed JSObject::ensure<IndexingType> methods to gracefully handle
InterceptsGetOwnPropertySlotByIndexEvenWhenLengthIsNotZero. Most of them handle it by returning
null as a result of indexingShouldBeSparse() returning true, while ensureArrayStorage handles it
by entering dictionary indexing mode, which forces the object to behave correctly even if there
is proxying or weird prototype stuff going on.

Changed DFGOperations entrypoints to reject non-objects, so that JSObject doesn't have to deal
with pretending to be JSString. In particular, this would go wrong in the ArrayStorage case
since we'd try to resize a butterfly on a JSString, but JSString has something other than
m_butterfly at that offset.

Finally, removed all InterceptsGetOwnPropertySlotByIndexEvenWhenLengthIsNotZero from JIT code
since those are now redundant.

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

(JSC::DFG::SpeculativeJIT::arrayify):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):

  • runtime/JSObject.cpp:

(JSC::JSObject::enterDictionaryIndexingMode):
(JSC::JSObject::ensureInt32Slow):
(JSC::JSObject::ensureDoubleSlow):
(JSC::JSObject::ensureContiguousSlow):
(JSC::JSObject::ensureArrayStorageSlow):
(JSC):
(JSC::JSObject::putByIndexBeyondVectorLengthWithoutAttributes):

  • runtime/JSObject.h:

(JSObject):

LayoutTests:

  • fast/js/dfg-ensure-array-storage-on-string-expected.txt: Added.
  • fast/js/dfg-ensure-array-storage-on-string.html: Added.
  • fast/js/dfg-ensure-contiguous-on-string-expected.txt: Added.
  • fast/js/dfg-ensure-contiguous-on-string.html: Added.
  • fast/js/jsc-test-list
  • fast/js/script-tests/dfg-ensure-array-storage-on-string.js: Added.

(foo):

  • fast/js/script-tests/dfg-ensure-contiguous-on-string.js: Added.

(foo):

4:08 PM Changeset in webkit [138200] by leviw@chromium.org
  • 61 edits
    2 adds in branches/chromium/1312

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:
3:36 PM Changeset in webkit [138199] by oliver@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Tidy up JSScriptRef API
https://bugs.webkit.org/show_bug.cgi?id=105470

Reviewed by Anders Carlsson.

People found the API's use of a context confusing, so we'll switch to a JSContextGroup based
API, and drop a number of the unnecessary uses of contexts.

  • API/JSScriptRef.cpp:

(OpaqueJSScript::globalData):
(parseScript):

  • API/JSScriptRefPrivate.h:
  • API/tests/testapi.c:

(main):

3:27 PM Changeset in webkit [138198] by wjmaclean@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] plugins/npp-set-window-called-during-destruction.html is flaky on Win
http://crbug.com/78835

Unreviewed gardening.

  • platform/chromium/TestExpectations:
3:21 PM Changeset in webkit [138197] by wjmaclean@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] composited scrolling tests failing on Win
https://bugs.webkit.org/show_bug.cgi?id=105471

Unreviewed gardening.

Mark tests as failing on Win:

platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting.html
platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content.html

  • platform/chromium/TestExpectations:
3:07 PM Changeset in webkit [138196] by eae@chromium.org
  • 4 edits
    2 adds in trunk

[Regression] text-overflow ellipsis clips content when zoomed
https://bugs.webkit.org/show_bug.cgi?id=105456

Reviewed by Levi Weintraub.

Source/WebCore:

At certain zoom levels text-overflow ellipsis incorrectly clips
content and displays the ellipsis even though the full content
would fit.

Test: fast/sub-pixel/ellipsis-zoom.html

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::pixelSnappedLogicalRightOffsetForLine):
Add bug url to FIXME.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::checkLinesForTextOverflow):
Pixel snap the content edge before comparing with the line box
edge as the line box edge is aligned to a pixel boundary.

LayoutTests:

Add test for text-overflow: ellipsis.

  • fast/sub-pixel/ellipsis-zoom-expected.html: Added.
  • fast/sub-pixel/ellipsis-zoom.html: Added.
2:39 PM Changeset in webkit [138195] by Antti Koivisto
  • 11 edits in trunk/Source/WebCore

Use ElementTraversal in LiveNodeListBase
https://bugs.webkit.org/show_bug.cgi?id=105324

Reviewed by Ryosuke Niwa.

Factor the code so that we get clean minimally branchy traversal functions for all the common cases.

This patch changes the more performance critical forward traversal only, backwards traversal is unaffected for now.

Instruments thinks it is a progression at least in DOM/DOMDivWalk.html. Bots should tell more.

  • dom/ClassNodeList.cpp:

(WebCore::ClassNodeList::nodeMatches):

  • dom/ClassNodeList.h:

(ClassNodeList):
(WebCore::ClassNodeList::create):
(WebCore):
(WebCore::ClassNodeList::nodeMatchesInlined):

Add inlined version of the matching function for class lists.

  • dom/LiveNodeList.cpp:

(WebCore::LiveNodeListBase::rootContainerNode):

Root is always ContainerNode if the list has anything in it. Traversal functions are slightly more
efficient if we know we are operating on ContainerNodes.

(WebCore):

  • dom/LiveNodeList.h:

(LiveNodeListBase):
(WebCore::LiveNodeListBase::shouldOnlyIncludeDirectChildren):

  • dom/Node.cpp:

(WebCore::Node::getElementsByTagName):

  • dom/TagNodeList.cpp:

(WebCore::TagNodeList::TagNodeList):
(WebCore::TagNodeList::~TagNodeList):
(WebCore::HTMLTagNodeList::HTMLTagNodeList):
(WebCore::HTMLTagNodeList::nodeMatches):

  • dom/TagNodeList.h:

(WebCore):
(TagNodeList):
(WebCore::TagNodeList::create):
(HTMLTagNodeList):
(WebCore::HTMLTagNodeList::create):

Use separate ContainerType enum value for HTMLTagNodeList so we can tell it apart from TagNodeList.

(WebCore::HTMLTagNodeList::nodeMatchesInlined):

Add inlined version of the matching function for tag lists.

  • html/CollectionType.h:
  • html/HTMLCollection.cpp:

(WebCore::shouldOnlyIncludeDirectChildren):
(WebCore::rootTypeFromCollectionType):
(WebCore::invalidationTypeExcludingIdAndNameAttributes):
(WebCore):
(WebCore::isMatchingElement):

List type templated matching functions for common cases.

(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::create):
(WebCore::HTMLCollection::~HTMLCollection):
(WebCore::previousNode):
(WebCore::lastNode):
(WebCore::LiveNodeListBase::iterateForPreviousNode):
(WebCore::LiveNodeListBase::itemBefore):

Leave the backwards traversal unchanged for now but remove the forward traversal code.

(WebCore::firstMatchingElement):
(WebCore::nextMatchingElement):
(WebCore::firstMatchingChildElement):
(WebCore::nextMatchingChildElement):
(WebCore::traverseMatchingElementsForwardToOffset):

List type templated traversal functions with matching. Separate functions for first and subsequent elements

(WebCore::LiveNodeListBase::traverseChildNodeListForwardToOffset):
(WebCore::LiveNodeListBase::traverseLiveNodeListFirstElement):
(WebCore::LiveNodeListBase::traverseLiveNodeListForwardToOffset):

LiveNodeList traversal, picking the right template.

(WebCore::LiveNodeListBase::item):
(WebCore::LiveNodeListBase::itemBeforeOrAfterCachedItem):

Switch to new traversal functions.

(WebCore::HTMLCollection::traverseFirstElement):
(WebCore::HTMLCollection::traverseForwardToOffset):
(WebCore::HTMLCollection::traverseNextElement):

HTMLCollection traversal, picking the right template.

(WebCore::HTMLCollection::namedItem):
(WebCore::HTMLCollection::updateNameCache):

Switch to new traversal functions.

  • html/HTMLCollection.h:

(HTMLCollection):

1:59 PM Changeset in webkit [138194] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

StringImpl isolatedCopy unnecessarily copies text-segment character data
https://bugs.webkit.org/show_bug.cgi?id=105376

Reviewed by Anders Carlsson.

This patch adds a new (private) helper to StringImpl that tests whether the StringImpl
is backed by an ASCII literal. This allows isolatedCopy() to safely use the createFromLiteral
constructor rather than making an unnecessary copy.

  • wtf/text/StringImpl.h:

(StringImpl):
(WTF::StringImpl::isASCIILiteral):
(WTF::StringImpl::isolatedCopy):

1:32 PM Changeset in webkit [138193] by nghanavatian@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

Calculate correct word offsets for form elements.
https://bugs.webkit.org/show_bug.cgi?id=105354

Reviewed by Rob Buis.

PR266117
We need to calculate correct offsets for form elements, such as
textareas, relative to the start of the field. This allows for correct
spell checking of words in a textarea element after line breaks.

Internally reviewed by Mike Fenton.

  • WebKitSupport/InputHandler.cpp: (BlackBerry::WebKit::InputHandler::requestSpellingCheckingOptions):
1:31 PM Changeset in webkit [138192] by rniwa@webkit.org
  • 3 edits in trunk/Tools

PerfTest.parse_output does too much
https://bugs.webkit.org/show_bug.cgi?id=105391

Reviewed by Tony Chang.

Moved the code to filter lines into PerfTest._filter_output, which has been renamed from _filter_stderr.
Also moved the code to output test results into PerfTest._run_with_driver.

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTest.init): Added _description.
(PerfTest.description): Added.
(PerfTest._run_with_driver): Moved the code to output test description and test results.
(PerfTest._filter_output): Moved and renamed from PerfTest._filter_stderr.
(PerfTest.parse_output): Removed the code to output test results. Return test results and description
respectively. Also removed the code that allowed some tests to omit values since all tests report each
iteration now since r136492.
(PerfTest.output_statistics): Removed the code to print test description, now done in _run_with_driver.
(ChromiumStylePerfTest._run_with_driver): Added. Chromium style tests are sufficiently different from
regular PerfTest that it doesn't make much sense to share _run_with_driver. But really, we should just
get rid of this type of test altogether in favor of regular performance tests that uses runner.js.
(ChromiumStylePerfTest.parse_and_log_output): Renamed from parse_output.
(PageLoadingPerfTest._run_with_driver): Removed the explicit for the test description.

  • Scripts/webkitpy/performance_tests/perftest_unittest.py:

(MainTest.test_parse_output): Removed the expected logs since parse_output no longer prints out results.
Also added a call to _filter_output since parse_output doesn't filter the output text anymore.
(MainTest.test_parse_output_with_failing_line): Added a call to _filter_output. Also added ',' after 'Time:'
so that it's not string-concatenated with the next line.
(MainTest.test_parse_output_with_description): Added; a test for PerfTest.description().
(MainTest.test_parse_output_with_subtests): Removed the expected logs, and added a call to _filter_output.

1:06 PM Changeset in webkit [138191] by ap@apple.com
  • 3 edits in trunk/Source/WebCore

<rdar://problem/12896478> Cannot log into gmail/facebook with NetworkProcess and private browsing enabled
https://bugs.webkit.org/show_bug.cgi?id=105454

Reviewed by Brady Eidson.

Request was using a wrong session after a redirect, because session cannot be
preserved over IPC.

Just set the storage session after calling the client, it is not really meaningful
for a client to change session behind WebKit's back.

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::willSendRequest):
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::willSendRequest):
12:48 PM Changeset in webkit [138190] by leviw@chromium.org
  • 4 edits in branches/chromium/1364

Merge 138181

Correct missing touch event handler de-registration for nested Documents and DOMWindows
https://bugs.webkit.org/show_bug.cgi?id=105384

Reviewed by James Robinson.

Source/WebCore:

Correcting case by which a nested DOMWindow wouldn't clean up its event handler references
on its Document when removeAllEventListeners was called. Also, correctly propagating this
from a nested Document to its owner Document.

Updating fast/events/touch/touch-handler-count.html to catch this bug.

  • dom/Document.cpp:

(WebCore::Document::didRemoveEventTargetNode):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::removeAllEventListeners):

LayoutTests:

  • fast/events/touch/touch-handler-count-expected.txt:
  • fast/events/touch/touch-handler-count.html: Adding case of nested DOMWindows with event handlers.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11635026

12:47 PM Changeset in webkit [138189] by leviw@chromium.org
  • 3 edits
    2 copies in branches/chromium/1364

Merge 138095

Input elements with default touch handlers don't update handler counts when changing documents
https://bugs.webkit.org/show_bug.cgi?id=105334

Reviewed by James Robinson.

Source/WebCore:

When an Input element with default touch event handlers changes documents, it failed to
update the touch event handler sets in both the old and new document. This patch fixes this
case.

Test: fast/events/touch/touch-input-element-change-documents.html

  • dom/Document.h:

(WebCore::Document::didRemoveTouchEventTargetNode) This function makes sense when touch
handling is enabled, regardless of whether we're tracking the rects.

  • dom/Document.cpp:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::~HTMLInputElement): Switch from didRemoveTouchEventHandler to
didRemoveTouchEventTargetNode, since we don't care about counts in the destructor.
(WebCore::HTMLInputElement::updateType): Fixing incorrect indentation.
(WebCore::HTMLInputElement::didMoveToNewDocument): Adding the node to the new document and
removing it from the old.

LayoutTests:

  • fast/events/touch/touch-input-element-change-documents-expected.txt: Added.
  • fast/events/touch/touch-input-element-change-documents.html: Added.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11649024

12:45 PM Changeset in webkit [138188] by leviw@chromium.org
  • 20 edits
    4 copies in branches/chromium/1364

Merge 137939

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.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11635024

12:17 PM Changeset in webkit [138187] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

WTF String from ASCIILiteral fails to correctly handle empty strings.
https://bugs.webkit.org/show_bug.cgi?id=105453

Reviewed by Anders Carlsson.

When we have an zero length literal we should return the empty StringImpl.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::createFromLiteral):

12:03 PM Changeset in webkit [138186] by leviw@chromium.org
  • 3 edits in trunk/LayoutTests

Re-skipping touch-input-element-chang-documents.html since it's still
failing on qt and efl.

  • platform/efl/TestExpectations:
  • platform/qt/TestExpectations:
12:01 PM Changeset in webkit [138185] by jonlee@apple.com
  • 9 edits in trunk/Source/WebKit2

Notify context client of change to table, and allow client to get a copy of it
https://bugs.webkit.org/show_bug.cgi?id=105364
<rdar://problem/12906267>

Reviewed by Brady Eidson.

Add a callback to notify the context client that the origin hashes have changed.
The client may choose to get a copy of that table and save it to disk.

  • UIProcess/API/C/WKContext.cpp:

(WKContextCopyPlugInAutoStartOriginHashes): Added to the context client.

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

(WebKit::WebContext::plugInAutoStartOriginHashes): Return a copy of the origin hash
table.

  • UIProcess/WebContext.h:
  • UIProcess/Plugins/PlugInAutoStartProvider.cpp:

(WebKit::PlugInAutoStartProvider::addAutoStartOrigin): When the origin is added to
the table, notify the context client.
(WebKit::PlugInAutoStartProvider::autoStartOriginsTableCopy): Create a copy of the
table.

  • UIProcess/Plugins/PlugInAutoStartProvider.h:
  • UIProcess/WebContextClient.cpp:

(WebKit::WebContextClient::plugInAutoStartOriginHashesChanged): Call the client.

  • UIProcess/WebContextClient.h:
11:35 AM Changeset in webkit [138184] by alexis@webkit.org
  • 24 edits
    2 adds in trunk

Implement CSS parsing for CSS transitions unprefixed.
https://bugs.webkit.org/show_bug.cgi?id=104804

Reviewed by Dean Jackson.

.:

Add a new flag ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
to cover the work of unprefixing Transforms, Animations and
Transitions. It will let the possibility of each ports to turn it off
in their release branches until we're confident that these CSS
properties are ready to be unprefixed.

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:
  • configure.ac:

Source/JavaScriptCore:

Add a new flag ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
to cover the work of unprefixing Transforms, Animations and
Transitions. It will let the possibility of each ports to turn it off
in their release branches until we're confident that these CSS
properties are ready to be unprefixed.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Add support of an unprefixed version of CSS transitions modules by adding unprefixed versions
of each CSS properties. The work is protected behind the flag ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
to cover the work of unprefixing Transforms, Animations and Transitions. It will let the possibility of each ports to turn it off
in their release branches until we're confident that these CSS properties are ready to be unprefixed.

Test: transitions/transitions-parsing.html

  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.am:
  • GNUmakefile.features.am.in:
  • css/CSSPropertyNames.in: alias the unprefixed versions to the prefixed versions.

Source/WebKit/chromium:

Add a new flag ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
to cover the work of unprefixing Transforms, Animations and
Transitions. It will let the possibility of each ports to turn it off
in their release branches until we're confident that these CSS
properties are ready to be unprefixed.

  • features.gypi:

Source/WebKit/mac:

Add a new flag ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
to cover the work of unprefixing Transforms, Animations and
Transitions. It will let the possibility of each ports to turn it off
in their release branches until we're confident that these CSS
properties are ready to be unprefixed.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Add a new flag ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
to cover the work of unprefixing Transforms, Animations and
Transitions. It will let the possibility of each ports to turn it off
in their release branches until we're confident that these CSS
properties are ready to be unprefixed.

  • Configurations/FeatureDefines.xcconfig:

Tools:

Add a new flag ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
to cover the work of unprefixing Transforms, Animations and
Transitions. It will let the possibility of each ports to turn it off
in their release branches until we're confident that these CSS
properties are ready to be unprefixed.

  • Scripts/webkitperl/FeatureList.pm:
  • qmake/mkspecs/features/features.pri:

WebKitLibraries:

Add a new flag ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
to cover the work of unprefixing Transforms, Animations and
Transitions. It will let the possibility of each ports to turn it off
in their release branches until we're confident that these CSS
properties are ready to be unprefixed.

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:

LayoutTests:

Add new tests to cover the unprefixed version as well as the prefixed version of the properties.
It only covers the parsing and the computed style values.

  • transitions/transitions-parsing.html: Added.
11:27 AM Changeset in webkit [138183] by tonikitoo@webkit.org
  • 4 edits in trunk/Source/WebCore

Make RenderLayerCompositor::requiresCompositingForScrollableFrame scrollbars agnostic
https://bugs.webkit.org/show_bug.cgi?id=97903

Reviewed by Simon Fraser.
Patch by Antonio Gomes <a1.gomes@sisa.samsung.com>

Some ports (including Qt-wk1 and BlackBerry) allow disabling
scrollbars at FrameView creation level. Regardless the scrollbars
presence though, their frame's content can still be scrolled as needed.
The said, checking for the scrollbars presence in order to determine
the scrollability of an inner frame is flaky, as done in RenderLayerCompositor::requiresCompositingForScrollableFrame.

Instead, the patch factors out part of the logic in
FrameView::updateScrollableAreaSet into a new ::isScrollable method.
The later can be used to check the scrollability of a given FrameView.

No new tests added, since there is no behavior change: ports like Chromium and others
who currently check for the scrollbars presence in order to determine
an inner frame scrollability should not be affected.

  • page/FrameView.cpp:

(WebCore::FrameView::isScrollable):
(WebCore):
(WebCore::FrameView::updateScrollableAreaSet):

  • page/FrameView.h:

(FrameView):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForScrollableFrame):

11:24 AM Changeset in webkit [138182] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Popup menu on Windows should fade in instead of sliding in.
https://bugs.webkit.org/show_bug.cgi?id=105358
<rdar://problem/7611211>

Reviewed by Timothy Horton.

Changing popup menu display animation to match what most other Windows applications do.

  • platform/win/PopupMenuWin.cpp:

(WebCore::PopupMenuWin::show):

11:22 AM Changeset in webkit [138181] by leviw@chromium.org
  • 6 edits in trunk

Correct missing touch event handler de-registration for nested Documents and DOMWindows
https://bugs.webkit.org/show_bug.cgi?id=105384

Reviewed by James Robinson.

Source/WebCore:

Correcting case by which a nested DOMWindow wouldn't clean up its event handler references
on its Document when removeAllEventListeners was called. Also, correctly propagating this
from a nested Document to its owner Document.

Updating fast/events/touch/touch-handler-count.html to catch this bug.

  • dom/Document.cpp:

(WebCore::Document::didRemoveEventTargetNode):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::removeAllEventListeners):

LayoutTests:

  • fast/events/touch/touch-handler-count-expected.txt:
  • fast/events/touch/touch-handler-count.html: Adding case of nested DOMWindows with event handlers.
11:20 AM Changeset in webkit [138180] by leviw@chromium.org
  • 7 edits in trunk/LayoutTests

Unreviewed gardening. The previous rebaseline didn't quite get it right for Mac.

  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
10:01 AM Changeset in webkit [138179] by leviw@chromium.org
  • 20 edits
    5 adds
    1 delete in trunk/LayoutTests

Unreviewed gardening. Updating expectations following r137847.

  • platform/chromium-linux-x86/fast/dom/Window: Added.
  • platform/chromium-linux-x86/fast/dom/Window/webkitConvertPoint-expected.txt: Added.
  • platform/chromium-linux/fast/dom/Window/webkitConvertPoint-expected.txt: Added.
  • platform/chromium-linux/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.txt: Removed.
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-lion/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac-snowleopard/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png:
  • platform/chromium-mac-snowleopard/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png
  • platform/chromium-mac/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png:
  • platform/chromium-mac/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.txt:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-win/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png:
  • platform/chromium-win/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
  • platform/chromium-win/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.txt: Added.
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/month-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium/TestExpectations:
9:50 AM Changeset in webkit [138178] by leviw@chromium.org
  • 4 edits in trunk/LayoutTests

Unreviewed. Fixing incorrect include path and unskipping broken test.

  • fast/events/touch/touch-input-element-change-documents.html:
  • platform/efl/TestExpectations:
  • platform/qt/TestExpectations:
9:49 AM Changeset in webkit [138177] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix regression from r137923 that caused all tiles to paint when scrolling
https://bugs.webkit.org/show_bug.cgi?id=105394

Reviewed by Dean Jackson.

r137923 removed a 'continue' from the loop that ensures we have tile coverage,
but this caused us to issue repaints for all existing tiles.

Fix to 'continue' when the tile size is unchanged. Also remove 'primaryLayerCount'
which was unused.

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

(WebCore::TileCache::revalidateTiles):

9:45 AM Changeset in webkit [138176] by jchaffraix@webkit.org
  • 2 edits in trunk/Tools

2 clampTo unit tests are failing
https://bugs.webkit.org/show_bug.cgi?id=105253

Reviewed by Emil A Eklund.

Removed clampToUnsigned as it was actually testing exactly what
clampToUnsignedLong was doing. Also made clampToIntFloat more robust
to precision loss (fix suggested by Emil).

  • TestWebKitAPI/Tests/WTF/MathExtras.cpp:
9:42 AM Changeset in webkit [138175] by dmazzoni@google.com
  • 5 edits
    1 copy
    1 move in trunk

Support titleUIElement in chromium DRT
https://bugs.webkit.org/show_bug.cgi?id=96529

Reviewed by Chris Fleizach.

Source/WebKit/chromium:

Fix implementation of titleUIElement - it shouldn't return anything
if supportsTitleUIElement returns false, so that accessible label
overriding logic works correctly.

  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::titleUIElement):

LayoutTests:

Modify aria-labelledby-overrides-label.html to be more cross-platform,
with slightly different expectations on Mac & Chromium.

  • accessibility/aria-labelledby-overrides-label.html:
  • platform/chromium/TestExpectations:
  • platform/chromium/accessibility/aria-labelledby-overrides-label-expected.txt: Copied from LayoutTests/accessibility/aria-labelledby-overrides-label-expected.txt.
  • platform/mac/accessibility/aria-labelledby-overrides-label-expected.txt: Renamed from LayoutTests/accessibility/aria-labelledby-overrides-label-expected.txt.
9:38 AM Changeset in webkit [138174] by Nate Chapin
  • 3 edits in trunk/Source/WebCore

REGRESSION(r137607): PluginDocument loads consume huge amounts of memory
https://bugs.webkit.org/show_bug.cgi?id=105359

Reviewed by Alexey Proskuryakov.

No new tests, verified manually that http://www.scb.se/statistik/_publikationer/NR0001_2012K02_TI_A28TI1203.pdf
no longer consumes several GB of memory.

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::setShouldBufferData): shouldBufferData is an enum, not a boolean, so this is reversed.

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::data): If the dataReceived() callback tells us to stop buffering data, be sure to

notify the ResourceLoader and clear the data buffer.

9:23 AM Changeset in webkit [138173] by gavinp@chromium.org
  • 4 edits in trunk/Source

[chromium] WebCore::Prerender::didStartPrerender depends on LinkLoader
https://bugs.webkit.org/show_bug.cgi?id=105290

Reviewed by Abhishek Arya.

The LinkLoader now removes itself from its prerender in time.

Source/WebCore:

Tested in unit tests, PrerenderingTest.FastRemoveElement.

  • loader/LinkLoader.cpp:

(WebCore::LinkLoader::~LinkLoader):
(WebCore::LinkLoader::released):

Source/WebKit/chromium:

  • tests/PrerenderingTest.cpp:
9:22 AM Changeset in webkit [138172] by dominik.rottsches@intel.com
  • 2 edits
    1 add in trunk/LayoutTests

[EFL] Unreviewed gardening.

Adding platform specific expectations since our error msg is chattier,
test was introduced in r138165.
Also, marking a crash failure.

  • platform/efl/TestExpectations:
  • platform/efl/fast/dom/shadow/shadow-root-js-api-expected.txt: Added.
9:21 AM Changeset in webkit [138171] by zandobersek@gmail.com
  • 4 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Rebaselining two tests after r137953 and r138102.
Updating test expectations as necessary.

  • platform/gtk/TestExpectations:
  • platform/gtk/editing/selection/move-by-character-6-expected.txt:
  • platform/gtk/fast/css/image-set-value-not-removed-crash-expected.txt:
9:16 AM Changeset in webkit [138170] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[Chromium/Skia] Check whether bitmap has pixels in image encoders
https://bugs.webkit.org/show_bug.cgi?id=105349

Patch by Brian Salomon <bsalomon@google.com> on 2012-12-19
Reviewed by Stephen White.

This adds NULL checks to the JPEG, PNG, WEBP encoders.

Difficult to test as condition occurs when OOM.

  • platform/image-encoders/skia/JPEGImageEncoder.cpp:

(WebCore::JPEGImageEncoder::encode):

  • platform/image-encoders/skia/PNGImageEncoder.cpp:

(WebCore::PNGImageEncoder::encode):

  • platform/image-encoders/skia/WEBPImageEncoder.cpp:

(WebCore::WEBPImageEncoder::encode):

9:10 AM Changeset in webkit [138169] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Unable to place the caret at the end of the first line, when followed by a block, in the vertical writing mode.
https://bugs.webkit.org/show_bug.cgi?id=104794

Patch by Arpita Bahuguna <arpitabahuguna@gmail.com> on 2012-12-19
Reviewed by Ryosuke Niwa.

Source/WebCore:

In the vertical writing mode, when trying to place the caret at the end
of a text line which is followed by a block, the local point sent as
part of the hitTest result in the mouse click event is not correct.

When clicking on the empty region (beyond the text) in the first line,
the local point computed is not in accordance with the writing mode.

Test: editing/selection/caret-at-end-of-text-line-followed-by-block-in-vertical-mode.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::nodeAtPoint):
Modified the code to handle the point as per the writing mode when
computing the hitTest result. Calling flipForWritingMode() on the
point for achieving the same.

LayoutTests:

  • editing/selection/caret-at-end-of-text-line-followed-by-block-in-vertical-mode-expected.txt: Added.
  • editing/selection/caret-at-end-of-text-line-followed-by-block-in-vertical-mode.html: Added.

Test added for verifying that a caret is painted at the end of the text
in the first vertical line, when followed by a block.

8:40 AM Changeset in webkit [138168] by dominik.rottsches@intel.com
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling out r138157.
http://trac.webkit.org/changeset/138157
https://bugs.webkit.org/show_bug.cgi?id=105439

Crashes with assertion failures in EFL debug build. (Requested
by drott on #webkit).

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

  • platform/graphics/texmap/TextureMapperGL.cpp:

(SharedGLData):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::keyForFilterType):
(WebCore::prepareFilterProgram):
(WebCore::TextureMapperGL::drawFiltered):
(WebCore::TextureMapperGL::beginClip):

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore):
(ShaderSpec):
(WebCore::ShaderSpec::ShaderSpec):
(WebCore::getShaderSpec):
(WebCore::TextureMapperShaderManager::getShaderProgram):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

(TextureMapperShaderProgram):
(TextureMapperShaderManager):

8:33 AM Changeset in webkit [138167] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebCore

[GTK] Enable Navigation Timing by default
https://bugs.webkit.org/show_bug.cgi?id=105322

Reviewed by Martin Robinson.

The Navigation Timing specification (of which implementation is guarder
by the ENABLE_WEB_TIMING feature define) has been promoted to the W3C Recommendation
status. Because of this we should enable it by default in the release builds of
the GTK port.

No new tests - they already exist and are in majority passing.

  • GNUmakefile.am:
  • bindings/gobject/GNUmakefile.am: Move the DOM bindings for interfaces related to this

feature out of the unstable features define guard and into the general list.

8:23 AM Changeset in webkit [138166] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: default font on mac is Monaco (should do be Menlo)
https://bugs.webkit.org/show_bug.cgi?id=105435

Reviewed by Alexander Pavlov.

Regressed when I introduced mountain lion modifier in the inspector.css.

  • inspector/front-end/inspector.css:

(body.platform-mac .monospace, body.platform-mac .source-code):
(body.platform-mac.platform-mac-tiger .source-code):

8:09 AM Changeset in webkit [138165] by hayato@chromium.org
  • 8 edits in trunk

Expose WebKitShadowRoot constructor to DOMWindow.
https://bugs.webkit.org/show_bug.cgi?id=105385

Reviewed by Dimitri Glazkov.

Source/WebCore:

This is a follow-up patch for r137870. WebKitShadowRoot
constructor should be in DOMWindow, just like all of the other
not-callable-constructors like HTMLDivElement, etc. We need it
for instanceof tests and so on.

Test: fast/dom/shadow/shadow-root-js-api.html

fast/js/global-constructors-expected.html

  • page/DOMWindow.idl:

LayoutTests:

  • fast/dom/shadow/shadow-root-js-api-expected.txt:
  • fast/dom/shadow/shadow-root-js-api.html:
  • fast/js/global-constructors-expected.txt:
  • platform/efl/fast/js/global-constructors-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
8:07 AM Changeset in webkit [138164] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: refactor DefaultTextEditor's |expanded| setters
https://bugs.webkit.org/show_bug.cgi?id=105415

Patch by Andrey Lushnikov <lushnikov@chromium.com> on 2012-12-19
Reviewed by Pavel Feldman.

Refactor |expanded| setters and getters into |collapse()|, |expand()|
and |expanded()| methods

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine):
(WebInspector.TextEditorChunkedPanel.prototype._expandChunks):
(WebInspector.TextEditorGutterPanel.prototype.textChanged):
(WebInspector.TextEditorGutterChunk.prototype.expanded): Added.
(WebInspector.TextEditorGutterChunk.prototype.collapse): Added.
(WebInspector.TextEditorGutterChunk.prototype.expand): Added.
(WebInspector.TextEditorMainPanel.prototype.markAndRevealRange):
(WebInspector.TextEditorMainPanel.prototype._updateHighlightsForRange):
(WebInspector.TextEditorMainChunk.prototype.expanded): Added.
(WebInspector.TextEditorMainChunk.prototype.collapse): Added.
(WebInspector.TextEditorMainChunk.prototype.expand): Added.

7:43 AM Changeset in webkit [138163] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Use Document* as argument in WebSocket Instrumentation.
https://bugs.webkit.org/show_bug.cgi?id=105279.

Patch by Pan Deng <pan.deng@intel.com> on 2012-12-19
Reviewed by Pavel Feldman.

Some WebSocket instrumentation fuctions adopted ScriptExecutionContext* as argument, it is not clear that
their clients and implementations are all using Document*. This patch adopt Document* as argument, and
Document* could supply more information in future.

No functionality changed, no new tests.

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didCreateWebSocket):
(WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequest):
(WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponse):
(WebCore::InspectorInstrumentation::didCloseWebSocket):

7:34 AM Changeset in webkit [138162] by commit-queue@webkit.org
  • 4 edits
    10 adds in trunk

Text Autosizing: Work out what to do about form controls
https://bugs.webkit.org/show_bug.cgi?id=102560

Patch by Tim Volodine <timvolodine@chromium.org> on 2012-12-19
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Disallow autosizing of form input controls like buttons, text input fields, selection controls, radio buttons
and check boxes. This is a short term solution to avoid inconsistent autosizing of form controls (which is
worse than not autosizing at all).

Tests: fast/text-autosizing/form-controls-autosizing-button-input-elements.html

fast/text-autosizing/form-controls-autosizing-checkbox-input-element.html
fast/text-autosizing/form-controls-autosizing-radio-input-element.html
fast/text-autosizing/form-controls-autosizing-select-element.html
fast/text-autosizing/form-controls-autosizing-textfield-input-elements.html

  • rendering/TextAutosizer.cpp:

(WebCore):
(WebCore::formInputTags):
(WebCore::TextAutosizer::isAutosizingContainer):
(WebCore::TextAutosizer::contentHeightIsConstrained):
(WebCore::TextAutosizer::containerShouldBeAutosized):
(WebCore::TextAutosizer::containerContainsOneOfTags):

  • rendering/TextAutosizer.h:

LayoutTests:

Tests for form input elements autosizing. Added tests to check that various kinds of form elements
don't get autosized, i.e. buttons, textareas, check boxes, radio button and selection menus.

  • fast/text-autosizing/form-controls-autosizing-button-input-elements-expected.html: Added.
  • fast/text-autosizing/form-controls-autosizing-button-input-elements.html: Added.
  • fast/text-autosizing/form-controls-autosizing-checkbox-input-element-expected.html: Added.
  • fast/text-autosizing/form-controls-autosizing-checkbox-input-element.html: Added.
  • fast/text-autosizing/form-controls-autosizing-radio-input-element-expected.html: Added.
  • fast/text-autosizing/form-controls-autosizing-radio-input-element.html: Added.
  • fast/text-autosizing/form-controls-autosizing-select-element-expected.html: Added.
  • fast/text-autosizing/form-controls-autosizing-select-element.html: Added.
  • fast/text-autosizing/form-controls-autosizing-textfield-input-elements-expected.html: Added.
  • fast/text-autosizing/form-controls-autosizing-textfield-input-elements.html: Added.
7:32 AM Changeset in webkit [138161] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Add Workspace.setFileContent() method
https://bugs.webkit.org/show_bug.cgi?id=105434

Reviewed by Pavel Feldman.

Added method that will be usedto save file system-based uiSourceCodes to the disk.

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode.prototype._commitContent):

  • inspector/front-end/Workspace.js:

(WebInspector.WorkspaceProvider.prototype.setFileContent):
(WebInspector.Project.prototype.setFileContent):

7:29 AM Changeset in webkit [138160] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Rename workspace path to uri.
https://bugs.webkit.org/show_bug.cgi?id=105433

Reviewed by Pavel Feldman.

URI should later become file unique id / address in workspace.

  • inspector/front-end/NetworkWorkspaceProvider.js:

(WebInspector.NetworkWorkspaceProvider.prototype.requestFileContent):
(WebInspector.NetworkWorkspaceProvider.prototype.setFileContent):
(WebInspector.NetworkWorkspaceProvider.prototype.searchInFileContent):
(WebInspector.NetworkWorkspaceProvider.prototype.addFile):
(WebInspector.NetworkWorkspaceProvider.prototype.removeFile):

  • inspector/front-end/Workspace.js:

(WebInspector.FileDescriptor):
(WebInspector.WorkspaceProvider.prototype.requestFileContent):
(WebInspector.WorkspaceProvider.prototype.searchInFileContent):
(WebInspector.Project.prototype._fileAdded):
(WebInspector.Project.prototype._fileRemoved):
(WebInspector.Project.prototype.requestFileContent):
(WebInspector.Project.prototype.searchInFileContent):
(WebInspector.Workspace.prototype.addTemporaryUISourceCode):

7:28 AM Changeset in webkit [138159] by apavlov@chromium.org
  • 12 edits
    1 add
    2 deletes in trunk/Source/WebCore

Web Inspector: Refactor CSS[Keyword]Completions to augment property metadata
https://bugs.webkit.org/show_bug.cgi?id=105020

Reviewed by Pavel Feldman.

  • CSSCompletions and CSSKeywordCompletions of WebInspector have been merged into CSSMetadata.
  • Valid value keyword lists have been added or augmented for some properties.
  • Some properties have been made inherited or color-aware.
  • English.lproj/localizedStrings.js:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/CSSCompletions.js: Removed.
  • inspector/front-end/CSSKeywordCompletions.js: Removed.
  • inspector/front-end/CSSMetadata.js: Added.

(WebInspector.CSSMetadata):
(WebInspector.CSSMetadata.isColorAwareProperty):
(WebInspector.CSSMetadata.colors):
(WebInspector.CSSMetadata.valuesForProperty):
(WebInspector.CSSMetadata.descriptor):
(WebInspector.CSSMetadata.requestCSSShorthandData):
(WebInspector.CSSMetadata.cssPropertiesMetainfoKeySet):
(WebInspector.CSSMetadata.prototype.startsWith):
(WebInspector.CSSMetadata.prototype.mostUsedOf):
(WebInspector.CSSMetadata.prototype._firstIndexOfPrefix):
(WebInspector.CSSMetadata.prototype.keySet):
(WebInspector.CSSMetadata.prototype.next):
(WebInspector.CSSMetadata.prototype.previous):
(WebInspector.CSSMetadata.prototype._closest):
(WebInspector.CSSMetadata.prototype.longhands):
(WebInspector.CSSMetadata.prototype.shorthands):

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSStyleDeclaration.prototype.longhandProperties):

  • inspector/front-end/SourceCSSTokenizer.js:

(WebInspector.SourceCSSTokenizer):

  • inspector/front-end/SourceCSSTokenizer.re2js:
  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylesSidebarPane.createExclamationMark):
(WebInspector.StylesSidebarPane.prototype._markUsedProperties):
(WebInspector.StylesSidebarPane.prototype._containsInherited):
(WebInspector.StylePropertiesSection.prototype.isPropertyInherited):
(WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):
(WebInspector.StylePropertiesSection.prototype.onpopulate):
(WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace):
(WebInspector.StylePropertyTreeElement.prototype):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.html:
  • inspector/front-end/inspector.js:
7:05 AM Changeset in webkit [138158] by thiago.santos@intel.com
  • 2 edits
    1 move
    4 adds
    1 delete in trunk/Tools

[EFL] Move ImageDiff to the Tools directory root
https://bugs.webkit.org/show_bug.cgi?id=105305

Reviewed by Laszlo Gombos.

We previously moved this directory from the DRT directory to
efl/ImageDiff. The major reason for doing so was because ImageDiff does
not depend on DumpRenderTree but for legacy reasons was living inside the
DRT folder, even though it is needed when running pixel tests for WK2.

Now we are moving to Tool directory root as other ports agreed to do the same.

  • CMakeLists.txt:
  • ImageDiff/CMakeLists.txt: Added.
  • ImageDiff/PlatformEfl.cmake: Added.
  • ImageDiff/efl/ImageDiff.cpp: Renamed from Tools/efl/ImageDiff/ImageDiff.cpp.
  • efl/ImageDiff/CMakeLists.txt: Removed.
6:52 AM Changeset in webkit [138157] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[Texmap] Instead of having multiple shaders sources with lots of duplication, we should have one shader source with MACRO variants
https://bugs.webkit.org/show_bug.cgi?id=104815

Patch by No'am Rosenthal <Noam Rosenthal> on 2012-12-19
Reviewed by Kenneth Rohde Christiansen.

Created templates for the vertex and fragment shaders, and added some MACROs in
TextureMapperShaderManager to allow GLSL precompiler-based configuration.

The template follows a pattern where the main function in the shader calls
applyFooBarIfNeeded(), while applyFooBar() is implemented. The Macros prepended to the template define whether applyIfNeeded resolves to the real function or to a noop.

In addition, made some small changes to the filter shaders so that they can use the same code as the normal shaders.

Covered by existing pixel/ref tests when run on Qt/EFL/GTK.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::drawSolidColor):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::optionsForFilterType):
(WebCore):
(WebCore::getPassesRequiredForFilter):
(WebCore::prepareFilterProgram):
(WebCore::TextureMapperGL::drawFiltered):
(WebCore::BitmapTextureGL::applyFilters):

Always draw using the drawQuad function, and use the new TextureMapperShaderManager::Options mask instead of the old ShaderKey.

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore):
(WebCore::getShaderSpec):
(WebCore::TextureMapperShaderManager::getShaderProgram):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

(TextureMapperShaderProgram):
(TextureMapperShaderManager):

6:48 AM Changeset in webkit [138156] by Csaba Osztrogonác
  • 159 edits
    20 moves
    9 adds
    8 deletes in trunk/LayoutTests

[Qt] Unreviewed gardening, update pixel results.

  • platform/qt-5.0-wk2/fast/backgrounds/transformed-body-background-expected.png: Removed.
  • platform/qt-5.0-wk2/fast/backgrounds/transformed-body-html-background-expected.png: Removed.
  • platform/qt-5.0-wk2/fast/backgrounds/transformed-html-body-background-expected.png: Removed.
  • platform/qt-5.0-wk2/fast/forms/datalist/input-appearance-range-with-transform-expected.png: Removed.
  • platform/qt-5.0-wk2/fast/layers/scroll-with-transform-composited-layer-expected.png: Removed.
  • platform/qt-5.0-wk2/svg/dom/SVGLengthList-getItem-expected.png: Removed.
  • platform/qt-5.0-wk2/svg/dom/SVGLengthList-initialize-expected.png: Removed.
  • platform/qt-5.0-wk2/svg/dom/SVGLengthList-replaceItem-expected.png: Removed.
  • platform/qt/compositing/masks/masked-ancestor-expected.png:
  • platform/qt/compositing/reflections/reflection-in-composited-expected.png:
  • platform/qt/compositing/shadows/shadow-drawing-expected.png:
  • platform/qt/css1/box_properties/border_style-expected.png:
  • platform/qt/css2.1/t0805-c5517-brdr-s-00-c-expected.png:
  • platform/qt/css2.1/t0805-c5519-brdr-r-01-e-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-04-d-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-14-d-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-24-d-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-34-d-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-44-d-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-54-d-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-64-d-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-74-d-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-84-d-expected.png:
  • platform/qt/css2.1/t170602-bdr-conflct-w-94-d-expected.png:
  • platform/qt/editing/deleting/delete-at-paragraph-boundaries-007-expected.png:
  • platform/qt/editing/deleting/delete-at-paragraph-boundaries-009-expected.png:
  • platform/qt/editing/selection/extend-by-character-002-expected.png:
  • platform/qt/editing/selection/extend-by-character-004-expected.png:
  • platform/qt/editing/selection/move-by-character-002-expected.png:
  • platform/qt/editing/selection/move-by-character-004-expected.png:
  • platform/qt/fast/backgrounds/animated-svg-as-mask-expected.png:
  • platform/qt/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
  • platform/qt/fast/backgrounds/transformed-body-background-expected.png: Added.
  • platform/qt/fast/backgrounds/transformed-body-html-background-expected.png: Added.
  • platform/qt/fast/backgrounds/transformed-html-body-background-expected.png: Added.
  • platform/qt/fast/css/outline-auto-empty-rects-expected.png:
  • platform/qt/fast/css/outline-auto-location-expected.png:
  • platform/qt/fast/css/resize-corner-tracking-transformed-expected.png:
  • platform/qt/fast/css/vertical-text-overflow-ellipsis-text-align-center-expected.png:
  • platform/qt/fast/forms/datalist/input-appearance-range-with-datalist-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/fast/forms/datalist/input-appearance-range-with-datalist-expected.png.
  • platform/qt/fast/forms/datalist/input-appearance-range-with-datalist-zoomed-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/fast/forms/datalist/input-appearance-range-with-datalist-zoomed-expected.png.
  • platform/qt/fast/forms/datalist/input-appearance-range-with-padding-with-datalist-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/fast/forms/datalist/input-appearance-range-with-padding-with-datalist-expected.png.
  • platform/qt/fast/forms/datalist/input-appearance-range-with-transform-expected.png: Added.
  • platform/qt/fast/forms/number/number-appearance-rtl-expected.png:
  • platform/qt/fast/forms/number/number-appearance-spinbutton-disabled-readonly-expected.png:
  • platform/qt/fast/forms/select-baseline-expected.png:
  • platform/qt/fast/inline/continuation-outlines-expected.png:
  • platform/qt/fast/layers/scroll-with-transform-composited-layer-expected.png: Added.
  • platform/qt/fast/layers/scroll-with-transform-layer-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/fast/layers/scroll-with-transform-layer-expected.png.
  • platform/qt/fast/multicol/vertical-lr/float-avoidance-expected.png:
  • platform/qt/fast/multicol/vertical-rl/float-avoidance-expected.png:
  • platform/qt/fast/overflow/overflow-with-local-background-attachment-expected.png:
  • platform/qt/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.png:
  • platform/qt/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.png:
  • platform/qt/fast/repaint/line-flow-with-floats-in-regions-expected.png:
  • platform/qt/fast/repaint/reflection-repaint-test-expected.png:
  • platform/qt/fast/repaint/region-painting-invalidation-expected.png:
  • platform/qt/fast/repaint/region-painting-via-layout-expected.png:
  • platform/qt/fast/repaint/transform-repaint-descendants-expected.png:
  • platform/qt/fast/replaced/selection-rect-transform-expected.png:
  • platform/qt/fast/table/035-vertical-expected.png:
  • platform/qt/fast/table/border-collapsing/001-expected.png:
  • platform/qt/fast/table/border-collapsing/001-vertical-expected.png:
  • platform/qt/fast/table/border-collapsing/004-vertical-expected.png:
  • platform/qt/fast/transforms/transform-table-row-expected.png:
  • platform/qt/fast/transforms/transformed-caret-expected.png:
  • platform/qt/fast/writing-mode/box-shadow-vertical-lr-expected.png:
  • platform/qt/fast/writing-mode/box-shadow-vertical-rl-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/animate-elem-11-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/animate-elem-33-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/animate-elem-84-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/filters-composite-02-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/masking-path-03-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/paths-data-04-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/paths-data-06-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/paths-data-08-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/pservers-grad-07-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/text-align-02-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/text-path-01-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/text-tspan-01-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t-expected.png:
  • platform/qt/svg/as-background-image/svg-as-background-5-expected.png:
  • platform/qt/svg/batik/paints/patternPreserveAspectRatioA-expected.png:
  • platform/qt/svg/batik/text/smallFonts-expected.png:
  • platform/qt/svg/batik/text/textAnchor-expected.png:
  • platform/qt/svg/batik/text/textGlyphOrientationHorizontal-expected.png:
  • platform/qt/svg/batik/text/textOnPath-expected.png:
  • platform/qt/svg/batik/text/textOnPath2-expected.png:
  • platform/qt/svg/batik/text/textOnPathSpaces-expected.png:
  • platform/qt/svg/batik/text/verticalText-expected.png:
  • platform/qt/svg/batik/text/verticalTextOnPath-expected.png:
  • platform/qt/svg/batik/text/xmlSpace-expected.png:
  • platform/qt/svg/carto.net/button-expected.png:
  • platform/qt/svg/carto.net/colourpicker-expected.png:
  • platform/qt/svg/carto.net/slider-expected.png:
  • platform/qt/svg/carto.net/textbox-expected.png:
  • platform/qt/svg/carto.net/window-expected.png:
  • platform/qt/svg/css/text-shadow-multiple-expected.png:
  • platform/qt/svg/custom/feComponentTransfer-Discrete-expected.png:
  • platform/qt/svg/custom/feComponentTransfer-Gamma-expected.png:
  • platform/qt/svg/custom/feComponentTransfer-Linear-expected.png:
  • platform/qt/svg/custom/feComponentTransfer-Table-expected.png:
  • platform/qt/svg/custom/focus-ring-expected.png:
  • platform/qt/svg/custom/font-face-simple-expected.png:
  • platform/qt/svg/custom/foreign-object-skew-expected.png:
  • platform/qt/svg/custom/invalid-css-expected.png:
  • platform/qt/svg/custom/marker-default-width-height-expected.png:
  • platform/qt/svg/custom/no-inherited-dashed-stroke-expected.png:
  • platform/qt/svg/custom/preserve-aspect-ratio-syntax-expected.png:
  • platform/qt/svg/custom/shapes-supporting-markers-expected.png:
  • platform/qt/svg/custom/stroked-pattern-expected.png:
  • platform/qt/svg/custom/text-rotated-gradient-expected.png:
  • platform/qt/svg/custom/text-tref-03-b-change-href-dom-expected.png:
  • platform/qt/svg/custom/text-tref-03-b-change-href-expected.png:
  • platform/qt/svg/custom/text-tref-03-b-referenced-element-removal-expected.png:
  • platform/qt/svg/custom/text-tref-03-b-tref-removal-expected.png:
  • platform/qt/svg/custom/tref-own-content-removal-expected.png:
  • platform/qt/svg/custom/use-detach-expected.png:
  • platform/qt/svg/custom/viewbox-syntax-expected.png:
  • platform/qt/svg/dom/SVGLengthList-appendItem-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGLengthList-appendItem-expected.png.
  • platform/qt/svg/dom/SVGLengthList-basics-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGLengthList-basics-expected.png.
  • platform/qt/svg/dom/SVGLengthList-getItem-expected.png: Added.
  • platform/qt/svg/dom/SVGLengthList-initialize-expected.png: Added.
  • platform/qt/svg/dom/SVGLengthList-insertItemBefore-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGLengthList-insertItemBefore-expected.png.
  • platform/qt/svg/dom/SVGLengthList-removeItem-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGLengthList-removeItem-expected.png.
  • platform/qt/svg/dom/SVGLengthList-replaceItem-expected.png: Added.
  • platform/qt/svg/dom/SVGLengthList-xml-dom-modifications-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGLengthList-xml-dom-modifications-expected.png.
  • platform/qt/svg/dom/SVGLocatable-getCTM-svg-root-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGLocatable-getCTM-svg-root-expected.png.
  • platform/qt/svg/dom/SVGNumberList-basics-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGNumberList-basics-expected.png.
  • platform/qt/svg/dom/SVGPathSegList-appendItem-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGPathSegList-appendItem-expected.png.
  • platform/qt/svg/dom/SVGPathSegList-clear-and-initialize-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGPathSegList-clear-and-initialize-expected.png.
  • platform/qt/svg/dom/SVGPathSegList-insertItemBefore-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGPathSegList-insertItemBefore-expected.png.
  • platform/qt/svg/dom/SVGPathSegList-removeItem-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGPathSegList-removeItem-expected.png.
  • platform/qt/svg/dom/SVGPathSegList-replaceItem-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGPathSegList-replaceItem-expected.png.
  • platform/qt/svg/dom/SVGPathSegList-xml-dom-synchronization-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGPathSegList-xml-dom-synchronization-expected.png.
  • platform/qt/svg/dom/SVGPointList-basics-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGPointList-basics-expected.png.
  • platform/qt/svg/dom/SVGStringList-basics-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGStringList-basics-expected.png.
  • platform/qt/svg/dom/SVGTransformList-basics-expected.png: Renamed from LayoutTests/platform/qt-5.0-wk2/svg/dom/SVGTransformList-basics-expected.png.
  • platform/qt/svg/dynamic-updates/SVGUseElement-svgdom-href1-prop-expected.png:
  • platform/qt/svg/hixie/perf/003-expected.png:
  • platform/qt/svg/text/select-textLength-spacing-squeeze-3-expected.png:
  • platform/qt/svg/text/select-textLength-spacing-stretch-1-expected.png:
  • platform/qt/svg/text/select-textLength-spacingAndGlyphs-squeeze-1-expected.png:
  • platform/qt/svg/text/select-textLength-spacingAndGlyphs-stretch-1-expected.png:
  • platform/qt/svg/text/select-x-list-1-expected.png:
  • platform/qt/svg/text/select-x-list-with-tspans-1-expected.png:
  • platform/qt/svg/text/small-fonts-2-expected.png:
  • platform/qt/svg/text/small-fonts-3-expected.png:
  • platform/qt/svg/text/text-align-01-b-expected.png:
  • platform/qt/svg/text/text-align-02-b-expected.png:
  • platform/qt/svg/text/text-align-03-b-expected.png:
  • platform/qt/svg/text/text-align-06-b-expected.png:
  • platform/qt/svg/text/text-fonts-02-t-expected.png:
  • platform/qt/svg/text/text-path-01-b-expected.png:
  • platform/qt/svg/text/text-text-03-b-expected.png:
  • platform/qt/svg/text/text-text-05-t-expected.png:
  • platform/qt/svg/text/text-tref-01-b-expected.png:
  • platform/qt/svg/text/text-tselect-01-b-expected.png:
  • platform/qt/svg/text/text-tspan-01-b-expected.png:
  • platform/qt/svg/transforms/animated-path-inside-transformed-html-expected.png:
  • platform/qt/svg/transforms/svg-css-transforms-expected.png:
  • platform/qt/svg/transforms/text-with-mask-with-svg-transform-expected.png:
  • platform/qt/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
  • platform/qt/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
  • platform/qt/svg/zoom/page/zoom-mask-with-percentages-expected.png:
  • platform/qt/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png:
  • platform/qt/svg/zoom/text/zoom-foreignObject-expected.png:
  • platform/qt/tables/mozilla/bugs/bug6674-expected.png:
  • platform/qt/tables/mozilla/marvin/backgr_position-table-expected.png:
  • platform/qt/tables/mozilla/marvin/backgr_simple-table-cell-expected.png:
  • platform/qt/tables/mozilla/marvin/backgr_simple-table-expected.png:
  • platform/qt/tables/mozilla/marvin/backgr_simple-table-row-group-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-quirks-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.png:
  • platform/qt/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.png:
  • platform/qt/transforms/svg-vs-css-expected.png:
6:43 AM Changeset in webkit [138155] by kareng@chromium.org
  • 17 edits
    4 deletes in branches/chromium/1365

Revert 137939

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.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11633018

6:39 AM Changeset in webkit [138154] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[EFL][WK2][AC] Avoid creating an empty surface.
https://bugs.webkit.org/show_bug.cgi?id=105410

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-19
Reviewed by Kenneth Rohde Christiansen.

Ensure that the view has valid size before creating the surface.

  • UIProcess/API/efl/EvasGLSurface.h:

(WebKit::EvasGLSurface::create):

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::displayTimerFired):

6:33 AM Changeset in webkit [138153] by kareng@chromium.org
  • 1 add in branches/chromium/1365/codereview.settings

for easy drovering

6:31 AM Changeset in webkit [138152] by kareng@chromium.org
  • 1 copy in branches/chromium/1365

branching for chromium

6:14 AM Changeset in webkit [138151] by vsevik@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Support removing several tabs from TabbedEditorContainer/TabbedPane at once.
https://bugs.webkit.org/show_bug.cgi?id=104881

Reviewed by Alexander Pavlov.

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):

  • inspector/front-end/TabbedEditorContainer.js:

(WebInspector.TabbedEditorContainer.prototype.removeUISourceCode):

  • inspector/front-end/TabbedPane.js:

(WebInspector.TabbedPane.prototype.closeTab):
(WebInspector.TabbedPane.prototype.closeTabs):

5:56 AM Changeset in webkit [138150] by caseq@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: scripts to evaluate on load are not removed from inspector state when Page agent is disabled
https://bugs.webkit.org/show_bug.cgi?id=105422

Reviewed by Alexander Pavlov.

  • reset scripts to evaluate on load when InspectorPageAgent is disabled.
  • added InspectorState::remove();
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::disable):

  • inspector/InspectorState.cpp:

(WebCore::InspectorState::remove):
(WebCore):

  • inspector/InspectorState.h:

(InspectorState):

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

[EFL][Qt][WK2] Going back to 47-amazing-css3-animation-demos shows nothing or wrong position
https://bugs.webkit.org/show_bug.cgi?id=104414

Reviewed by Simon Hausmann.

When contents size changes, make sure to apply any pending position
change if possible.

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::didChangeContentsSize):

5:38 AM Changeset in webkit [138148] by commit-queue@webkit.org
  • 8 edits
    2 adds in trunk

INPUT_MULTIPLE_FIELDS_UI: Make year field readonly if min and max have the same year
https://bugs.webkit.org/show_bug.cgi?id=105383

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

Source/WebCore:

Make year field readonly if min and max have the same year, and it does not have
value with different year.

Test: fast/forms/date-multiple-fields/date-multiple-fields-readonly-subfield.html

  • css/html.css: Add CSS rule for the year field.
  • html/shadow/DateTimeEditElement.cpp:

(DateTimeEditBuilder):
(WebCore::DateTimeEditBuilder::visitField): Make year-field readonly when appropriate.
(WebCore::DateTimeEditBuilder::shouldYearFieldReadOnly): Added.

LayoutTests:

  • fast/forms/date-multiple-fields/date-multiple-fields-readonly-subfield-expected.txt: Added.
  • fast/forms/date-multiple-fields/date-multiple-fields-readonly-subfield.html: Added.
  • fast/forms/date-multiple-fields/resources/preserve-value-after-history-back-frame.html: Tweak so year field is focusable.
  • fast/forms/datetimelocal-multiple-fields/resources/preserve-value-after-history-back-frame.html: Ditto.
  • fast/forms/month-multiple-fields/resources/preserve-value-after-history-back-frame.html: Ditto.
  • fast/forms/week-multiple-fields/resources/preserve-value-after-history-back-frame.html: Ditto.
5:32 AM Changeset in webkit [138147] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] [WK2] Trailing semicolon in an #include line
https://bugs.webkit.org/show_bug.cgi?id=105418

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-19
Reviewed by Xan Lopez.

  • UIProcess/gtk/WebContextGtk.cpp:

Remove trailing semicolon in #include line.

5:22 AM Changeset in webkit [138146] by kenneth@webkit.org
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] Move deviceScaleFactor to our view as it's view related
https://bugs.webkit.org/show_bug.cgi?id=105412

Reviewed by Laszlo Gombos.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::setDeviceScaleFactor):
(EwkViewImpl::transformFromScene):

  • UIProcess/API/efl/EwkViewImpl.h:

(EwkViewImpl):

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_device_pixel_ratio_set):

5:13 AM Changeset in webkit [138145] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Fix undesired re-entrant calls during media error dialog
https://bugs.webkit.org/show_bug.cgi?id=105398

Patch by Max Feil <mfeil@rim.com> on 2012-12-19
Reviewed by Rob Buis.

A recent change in libwebview (PR194379) to the dialog
handling means that dialogs are not truly blocking anymore.
While the dialog is up, a sub-event loop is called. Therefore
the HTML5 media code will continue processing pps messages from
mm-renderer, responding to periodic timers, etc., all while a
media error dialog call higher up in the stack is waiting for
the user to respond. Unfortunately certain places in our code
do not anticipate being called in this re-entrant way.

This patch restores previous behaviour, covered by existing tests.

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:

(WebCore::MediaPlayerPrivate::waitMetadataTimerFired):

5:02 AM Changeset in webkit [138144] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [REGRESSION] The last remembered tab is not restored when the Settings dialog is opened
https://bugs.webkit.org/show_bug.cgi?id=105414

Reviewed by Vsevolod Vlasov.

Do not force the "General" tab when opening settings upon the Cog button click.

  • inspector/front-end/SettingsScreen.js:

(WebInspector.SettingsController.prototype._mouseUp):

5:00 AM Changeset in webkit [138143] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, skip flakey tests.

  • platform/qt-5.0-wk2/TestExpectations:
4:49 AM Changeset in webkit [138142] by zeno.albisser@digia.com
  • 3 edits in trunk/Source/WebKit2

[Qt] Missing vtable for LoadStartedCatcher.
https://bugs.webkit.org/show_bug.cgi?id=105313

Properly splitting class declarations and function
definitions into headers/cpp-files.
This makes including util.moc redundant
and avoids the well known vtable issues with QObject classes.

Reviewed by Simon Hausmann.

  • UIProcess/API/qt/tests/util.cpp:

(LoadSpy::LoadSpy):
(LoadSpy::onLoadingChanged):

  • UIProcess/API/qt/tests/util.h:

(LoadSpy):

3:56 AM Changeset in webkit [138141] by reni@webkit.org
  • 3 edits
    2 adds in trunk

CSSParser crases, when no context is available, and the value is a valid keyword
https://bugs.webkit.org/show_bug.cgi?id=105275

Reviewed by Tony Chang.

ParserContext could be null even if the keyword is valid. We have to check it.

Source/WebCore:

Test: fast/css/invalid-parsercontext-valid-keyword-crash.svg

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

LayoutTests:

  • fast/css/invalid-parsercontext-valid-keyword-crash-expected.txt: Added.
  • fast/css/invalid-parsercontext-valid-keyword-crash.svg: Added.
3:35 AM Changeset in webkit [138140] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk/Source/WebCore

[EFL][WebGL] Refactor GLXSurface.
https://bugs.webkit.org/show_bug.cgi?id=105357

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-19
Reviewed by Kenneth Rohde Christiansen.

This is in preparation for adding EGL support.
There is lot of X related code which could be shared between our current GLX implementation
and EGL. This patch makes it possible to share the common code but doesn't change any functionality.

  • PlatformEfl.cmake:
  • platform/graphics/surfaces/glx/GLXSurface.cpp:

(WebCore):
(WebCore::GLXTransportSurface::GLXTransportSurface):
(WebCore::GLXTransportSurface::configuration):
(WebCore::GLXTransportSurface::destroy):
(WebCore::GLXTransportSurface::freeResources):
(WebCore::GLXPBuffer::GLXPBuffer):
(WebCore::GLXPBuffer::initialize):
(WebCore::GLXPBuffer::configuration):
(WebCore::GLXPBuffer::setGeometry):

  • platform/graphics/surfaces/glx/GLXSurface.h:

(GLXTransportSurface):
(GLXPBuffer):

GLX related implementation.

  • platform/graphics/surfaces/glx/GLXWindowResources.h: Added.

(WebCore):
(SharedGLXResources):
(WebCore::SharedGLXResources::create):
(WebCore::SharedGLXResources::nativeDisplay):
(WebCore::SharedGLXResources::pBufferContextConfig):
(WebCore::SharedGLXResources::surfaceContextConfig):
(WebCore::SharedGLXResources::SharedGLXResources):
(WebCore::SharedGLXResources::createConfig):

Moving X related code to a seperate class.

  • platform/graphics/surfaces/glx/X11WindowResources.cpp: Added.

(WebCore):
(WebCore::X11OffScreenWindow::X11OffScreenWindow):
(WebCore::X11OffScreenWindow::~X11OffScreenWindow):
(WebCore::X11OffScreenWindow::setGeometry):
(WebCore::X11OffScreenWindow::createOffscreenWindow):

  • platform/graphics/surfaces/glx/X11WindowResources.h: Added.

(WebCore):
(SharedX11Resources):
(WebCore::SharedX11Resources::deref):
(WebCore::SharedX11Resources::x11Display):
(WebCore::SharedX11Resources::getXWindow):
(WebCore::SharedX11Resources::visualInfo):
(WebCore::SharedX11Resources::isXRenderExtensionSupported):
(WebCore::SharedX11Resources::SharedX11Resources):
(WebCore::SharedX11Resources::~SharedX11Resources):
(X11OffScreenWindow):

2:56 AM Changeset in webkit [138139] by dominik.rottsches@intel.com
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening.

Adding failing touch events case, details in bug 105406.

  • platform/efl/TestExpectations:
2:50 AM Changeset in webkit [138138] by commit-queue@webkit.org
  • 13 edits
    1 delete in trunk

[JSC] Add support for overloaded constructors
https://bugs.webkit.org/show_bug.cgi?id=103226

Patch by Tommy Widenflycht <tommyw@chromium.org> on 2012-12-19
Reviewed by Kentaro Hara.

Source/WebCore:

This patch adds the same support for overloaded constructors to JSC as V8.
As proof of implementation soundness WebSockets custom constructor is removed.

Existing tests cover patch. As they should.

  • GNUmakefile.list.am:
  • Modules/websockets/WebSocket.idl:
  • Target.pri:
  • UseJSC.cmake:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSWebSocketCustom.cpp: Removed.
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorDeclaration):
(GenerateConstructorDefinitions):
(GenerateOverloadedConstructorDefinition):
(GenerateConstructorDefinition):
(GenerateConstructorHelperMethods):

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

(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors1):
(WebCore):
(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors2):
(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors3):
(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors4):
(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors):

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

(JSTestOverloadedConstructorsConstructor):

LayoutTests:

  • http/tests/websocket/tests/hybi/url-parsing-expected.txt:
2:48 AM Changeset in webkit [138137] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Mark XHR tests flaky (unreliable console logging)
https://bugs.webkit.org/show_bug.cgi?id=105403

Unreviewed gardening: mark a bunch of xmlhttprequest tests flaky.

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

  • platform/efl/TestExpectations:
2:46 AM Changeset in webkit [138136] by zeno.albisser@digia.com
  • 2 edits in trunk/Tools

[Qt][Mac] run-launcher cannot find Qt5WebKitWidgets.
https://bugs.webkit.org/show_bug.cgi?id=105309

The version number is only used as a part
of the library name on Linux.

Reviewed by Kenneth Rohde Christiansen.

  • Scripts/webkitdirs.pm:

(builtDylibPathForName):

2:39 AM Changeset in webkit [138135] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Pass debuggerTaskMode as a parameter in WorkerScriptDebugServer constructor
https://bugs.webkit.org/show_bug.cgi?id=105085

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-19
Reviewed by Yury Semikhatsky.

Leave WorkerDebuggerAgent::debuggerTaskMode
and remove WorkerScriptDebugServer::debuggerTaskMode.

No new tests, no behavior change.

  • bindings/js/WorkerScriptDebugServer.cpp:

(WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
(WebCore::WorkerScriptDebugServer::runEventLoopWhilePaused):

  • bindings/js/WorkerScriptDebugServer.h:

(WorkerScriptDebugServer):

  • bindings/v8/WorkerScriptDebugServer.cpp:

(WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
(WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):

  • bindings/v8/WorkerScriptDebugServer.h:

(WorkerScriptDebugServer):

  • inspector/WorkerDebuggerAgent.cpp:

(WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):

2:29 AM Changeset in webkit [138134] by János Badics
  • 2 edits in trunk/LayoutTests

[Qt] Gardening after r138095, skip a newly added, but failing test.
https://bugs.webkit.org/show_bug.cgi?id=105406

Reviewed by Csaba Osztrogonác.

  • platform/qt/TestExpectations:
2:18 AM Changeset in webkit [138133] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] Tests that time out are not considered as failures.
https://bugs.webkit.org/show_bug.cgi?id=105318

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

Fix parsing of the GTK API tests log files.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunGtkAPITests.commandComplete):

2:10 AM Changeset in webkit [138132] by loislo@chromium.org
  • 1 edit
    1 move in trunk/LayoutTests

Unreviewed gardening. Move chromium-mac image to chromium where it will also be used for win and linux.

  • platform/chromium/fast/text/line-initial-and-final-swashes-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/text/line-initial-and-final-swashes-expected.png.
1:56 AM Changeset in webkit [138131] by loislo@chromium.org
  • 5 edits
    2 adds in trunk

Unreviewed, rolling out r138129.
http://trac.webkit.org/changeset/138129
https://bugs.webkit.org/show_bug.cgi?id=105399

reapply patch r138123. The problem was on chromium side at r173875.

Source/WebCore:

  • dom/Element.cpp:

(WebCore::Element::insertedInto):
(WebCore::Element::removedFrom):

  • dom/Element.h:

(WebCore::Node::insertedInto):
(WebCore):
(WebCore::Node::removedFrom):

  • dom/Node.cpp:

LayoutTests:

  • fast/dom/shadow/getelementbyid-shadow-expected.txt: Added.
  • fast/dom/shadow/getelementbyid-shadow.html: Added.
12:54 AM Changeset in webkit [138130] by tasak@google.com
  • 3 edits
    2 adds in trunk

[Shadow] TITLE elements in Shadow DOM should not affect document.title attribute
https://bugs.webkit.org/show_bug.cgi?id=85864

Reviewed by Ryosuke Niwa.

Source/WebCore:

Modified HTMLTitleElement to check whether a title element is in a
shadow tree or not when it is inserted or removed. Now if a title
element has been just removed from or inserted into a shadow tree,
document.title is not updated independent of inDocument(). If the
title element is not in a shadow tree and in document,
document.title is updated.

Test: fast/dom/shadow/title-element-in-shadow.html

  • html/HTMLTitleElement.cpp:

(WebCore::HTMLTitleElement::insertedInto):
Added a condition: isInShadowTree() to the code which checks
inDocument or not.
(WebCore::HTMLTitleElement::removedFrom):
Added a condition: insertionPoint.isInShadowTree() to the code which
checks an insertion point is in a document or not.
(WebCore::HTMLTitleElement::childrenChanged):
Added a condition: isInShadowTree() before setTitle.
If not isInShadowTree, modified to removeTitle from document.

LayoutTests:

  • fast/dom/shadow/title-element-in-shadow-expected.txt: Added.
  • fast/dom/shadow/title-element-in-shadow.html: Added.
12:46 AM Changeset in webkit [138129] by loislo@chromium.org
  • 5 edits
    2 deletes in trunk

Unreviewed, rolling out r138123.
http://trac.webkit.org/changeset/138123
https://bugs.webkit.org/show_bug.cgi?id=105399

It broke compositing/visibility/visibility-simple-video-
layer.html (Requested by loislo on #webkit).

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

Source/WebCore:

  • dom/Element.cpp:

(WebCore::Element::insertedInto):
(WebCore::Element::removedFrom):

  • dom/Element.h:
  • dom/Node.cpp:

(WebCore::Node::insertedInto):
(WebCore):
(WebCore::Node::removedFrom):

LayoutTests:

  • fast/dom/shadow/getelementbyid-shadow-expected.txt: Removed.
  • fast/dom/shadow/getelementbyid-shadow.html: Removed.
12:41 AM Changeset in webkit [138128] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

transitions/interrupted-accelerated-transition.html should use pauseAPI
https://bugs.webkit.org/show_bug.cgi?id=103524

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-12-19
Reviewed by Simon Fraser.

In certain situations interrupted-accelerated-transition.html exceeds the
test tolerance, making the test flaky. Use the pauseAPI so we don't
depend on javascript timing.

  • transitions/resources/interrupted-accelerated-transition-final.html:
12:23 AM Changeset in webkit [138127] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Restore expectations for mac.

The tests still have problem with scroller image.

  • platform/chromium/TestExpectations:

added: webkit.org/b/102294 [ Mac ] platform/chromium/virtual/deferred/fast/images/exif-orientation.html [ ImageOnlyFailure ]
added: webkit.org/b/102294 [ Mac ] platform/chromium/virtual/deferred/fast/images/exif-orientation-css.html [ ImageOnlyFailure ]
added: webkit.org/b/102294 [ Mac ] platform/chromium/virtual/deferred/fast/images/gray-scale-jpeg-with-color-profile.html [ ImageOnlyFailure ]

12:21 AM Changeset in webkit [138126] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unused parameters on WebContext.cpp
https://bugs.webkit.org/show_bug.cgi?id=105395

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-19
Reviewed by Kentaro Hara.

Because the parameters 'certficate', 'host' are not used if !ENABLE(NETWORK_PROCESS),
use UNUSED_PARAM macro to fix build warning -Wunused-parameter.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::allowSpecificHTTPSCertificateForHost):

12:15 AM Changeset in webkit [138125] by loislo@chromium.org
  • 1 edit
    1 add
    1 delete in trunk/LayoutTests

Unreviewed gardening. Update expectation for mac and remove wrong expectation for win.

  • platform/chromium-mac-snowleopard/fast/text/line-initial-and-final-swashes-expected.png: Added.
  • platform/chromium-win/fast/text/line-initial-and-final-swashes-expected.png: Removed.

Dec 18, 2012:

11:57 PM Changeset in webkit [138124] by dmazzoni@google.com
  • 2 edits
    2 moves in trunk/LayoutTests

AX: radio-button-checkbox-size is Mac-specific and should be moved.
https://bugs.webkit.org/show_bug.cgi?id=105382

Reviewed by Chris Fleizach.

Move radio-button-checkbox-size to platform/mac because the
behavior it tests for is Mac-specific. Take it out of the
Chromium TestExpectations file.

  • platform/chromium/TestExpectations:
  • platform/mac/accessibility/radio-button-checkbox-size-expected.txt: Renamed from LayoutTests/accessibility/radio-button-checkbox-size-expected.txt.
  • platform/mac/accessibility/radio-button-checkbox-size.html: Renamed from LayoutTests/accessibility/radio-button-checkbox-size.html.
11:54 PM Changeset in webkit [138123] by shinyak@chromium.org
  • 5 edits
    2 adds in trunk

ShadowRoot.getElementById() returns a deleted element
https://bugs.webkit.org/show_bug.cgi?id=105243

Reviewed by Dimitri Glazkov.

Source/WebCore:

Only when the treeScope of an element and the treeScope of insertionPoint is the same in insertedInto or removedFrom,
we can call updatedId() etc. However, we didn't check it's same.

For removedFrom, since an element has been removed, treeScope() doesn't return the original treeScope but document()
every time.

This patch might hurt html5-full-render a bit: the result is here. The first 2 results are without this patch,
the last 2 results are with this patch.

Dromaeo/dom-modify [runs/s]

35.97, 36.09 --> 36.05, 35.69

Parser/html5-full-render [ms]

4156.58, 4166.09 --> 4155.22, 4216.38

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

  • dom/Element.cpp:

(WebCore::Element::insertedInto):
(WebCore::Element::removedFrom):

  • dom/Element.h:

(WebCore::Node::insertedInto): Moved from Node.cpp to make this inline.
(WebCore):
(WebCore::Node::removedFrom): ditto.

  • dom/Node.cpp:

LayoutTests:

  • fast/dom/shadow/getelementbyid-shadow-expected.txt: Added.
  • fast/dom/shadow/getelementbyid-shadow.html: Added.
11:37 PM Changeset in webkit [138122] by vivek.vg@samsung.com
  • 3 edits in trunk/Source/WebCore

Web Inspector: AuditLauncherView UI components should be disabled until ongoing audit finishes
https://bugs.webkit.org/show_bug.cgi?id=105389

Reviewed by Alexander Pavlov.

While the Audit request is on-going, UI components on the AuditLauncherView are disabled
until the request is completed or explicitly stopped. Also changed the _categoriesElement
from div to fieldset and modified the associated CSS file accordingly.

No new tests as this is a UI change.

  • inspector/front-end/AuditLauncherView.js:

(WebInspector.AuditLauncherView.prototype._setAuditRunning):
(WebInspector.AuditLauncherView.prototype._toggleUIComponents):

  • inspector/front-end/auditsPanel.css:

(.audit-launcher-view fieldset.audit-categories-container):

11:36 PM Changeset in webkit [138121] by loislo@chromium.org
  • 11 edits
    2 copies
    1 move in trunk

Unreviewed, rolling out r138061.
https://bugs.webkit.org/show_bug.cgi?id=105396

Original patch:
http://trac.webkit.org/changeset/138061
https://bugs.webkit.org/show_bug.cgi?id=97359

It is crashing on Debug bots

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:

(WebAccessibilityObject):

  • src/WebAccessibilityObject.cpp:

Tools:

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

(WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
(WebTestRunner::AccessibilityUIElement::elementAtPointCallback):

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

(AccessibilityUIElement):

LayoutTests:

  • accessibility/svg-bounds.html:
  • accessibility/svg-remote-element-expected.txt:
  • accessibility/svg-remote-element.html:
  • platform/chromium/TestExpectations:
  • platform/chromium/accessibility/svg-bounds-expected.txt: Copied from LayoutTests/accessibility/svg-bounds-expected.txt.
  • platform/mac/accessibility/svg-bounds-expected.txt: Renamed from LayoutTests/accessibility/svg-bounds-expected.txt.
  • platform/mac/accessibility/svg-remote-element-expected.txt: Copied from LayoutTests/accessibility/svg-remote-element-expected.txt.
11:33 PM Changeset in webkit [138120] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] regression(r138071) Add mission functions for build fix
https://bugs.webkit.org/show_bug.cgi?id=105392

Unreviewed build fix.

r138071 add new functions to LocalizedStrings.cpp, but EFL port doesn't use them.
So, add those functions to LocalizedStringsEfl.cpp

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-18

  • platform/efl/LocalizedStringsEfl.cpp:

(WebCore):
(WebCore::textTrackClosedCaptionsText):
(WebCore::textTrackSubtitlesText):
(WebCore::textTrackOffText):
(WebCore::textTrackNoLabelText):

10:58 PM Changeset in webkit [138119] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, skip a new failing test.

  • platform/qt-5.0-wk1/TestExpectations:
10:42 PM Changeset in webkit [138118] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Chromium] profiler - differentiate between native code (program) and idle time
https://bugs.webkit.org/show_bug.cgi?id=88446

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

Now idleTime is supplied in profile object. In this patch, idleTime,
if any, is subtracted from "(program)" node, and new node "(idle)" is
injected as a top level node to profile.

  • inspector/front-end/CPUProfileView.js:

(WebInspector.CPUProfileView.profileCallback): Call _injectIdleTimeNode
if non-zero idleTime is specified.
(WebInspector.CPUProfileView.prototype._injectIdleTimeNode): Lookup for
"(program)" node, modify it, add "(idle)" node.

10:34 PM Changeset in webkit [138117] by loislo@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed rebaseline after r138075. Remove entries for passing tests and one bad expectation for a reftest by dpranke@chromium.org

  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbars-on-positioned-content-expected.png: Added.
10:26 PM Changeset in webkit [138116] by loislo@chromium.org
  • 1 edit
    5 adds in trunk/LayoutTests

Unreviewed rebaseline.

  • platform/chromium-linux-x86/fast/inline/justify-emphasis-inline-box-expected.txt: Added.
  • platform/chromium-linux/fast/inline/justify-emphasis-inline-box-expected.png: Added.
  • platform/chromium-linux/fast/inline/justify-emphasis-inline-box-expected.txt: Added.
  • platform/chromium-win/fast/inline/justify-emphasis-inline-box-expected.png: Added.
  • platform/chromium-win/fast/inline/justify-emphasis-inline-box-expected.txt: Added.
10:14 PM Changeset in webkit [138115] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Layout Test fast/events/touch/touch-input-element-change-documents.html is failing
https://bugs.webkit.org/show_bug.cgi?id=105388

wrong path to the js-test-pre.js

  • fast/events/touch/touch-input-element-change-documents.html:
9:41 PM Changeset in webkit [138114] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r138097.
http://trac.webkit.org/changeset/138097
https://bugs.webkit.org/show_bug.cgi?id=105386

multiple crashes on media tests (Requested by loislo on
#webkit).

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

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::canPlayType):
(WebCore::createFileURLForApplicationCacheResource):
(WebCore::stringForNetworkState):
(WebCore::HTMLMediaElement::preload):
(WebCore::HTMLMediaElement::setLoop):
(WebCore::HTMLMediaElement::getPluginProxyParams):

9:19 PM Changeset in webkit [138113] by jchaffraix@webkit.org
  • 8 edits in trunk/Source/WebCore

Free one bit in RenderObject
https://bugs.webkit.org/show_bug.cgi?id=105065

Reviewed by Simon Fraser.

This change uses the mutual exclusivity between the different position bits to pack
the information more efficiently. Because you can be only in one position at any point
in time, you only need to store 4 states in RenderObject (ie 2 bits of information) but
we were using 3 bits to store this information, thus losing one bit that I am reclaiming.

The change covers the 3 bits into a single PositionState. In order to avoid any extra branch
on the common code path, the logic was modified to be able to convert a EPosition to a PositionState
using only a bit mask. This also means that we now sets up and clears all the bits at once instead
of several calls, which matches more closely what happens at style change.

Change covered by existing tests.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::updateFromStyle):
Removed a call, superseed by the one in RenderBoxModelObject::updateFromStyle.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::updateFromStyle):
Changed to set the positioned bits in only one call to setPositionedState.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::styleWillChange):
Changed to clear all positioned bits at once.

  • rendering/RenderScrollbarPart.cpp:

(WebCore::RenderScrollbarPart::styleDidChange):
Ditto, which was probably the intent anyway.

  • rendering/RenderView.cpp:

(WebCore::RenderView::RenderView):
Changed to explicitly be AbsolutelyPositioned, not that it really matters as we only store
the out-of-flow information.

  • rendering/RenderObject.h:

(WebCore::RenderObject::isOutOfFlowPositioned):
(WebCore::RenderObject::isInFlowPositioned):
(WebCore::RenderObject::isRelPositioned):
(WebCore::RenderObject::isStickyPositioned):
(WebCore::RenderObject::isPositioned):
(WebCore::RenderObject::clearPositionedState):
Updated after the renaming below.

(WebCore::RenderObject::setPositionState):
Ditto, but added an ASSERT to ensure that the out-of-flow bit is only set on boxes, to match
existing code.

  • rendering/style/RenderStyleConstants.h:

Changed the values so that the conversion to PositionState is a simple bit mask, e.g
FixedPosition & 0x3 == AbsolutePosition as we only store the out-of-flow position information.

(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
Introduced PositionState to hold the different bits.

(WebCore::RenderObject::RenderObjectBitfields::setPositionedState):
(WebCore::RenderObject::RenderObjectBitfields::clearPositionedState):
(WebCore::RenderObject::RenderObjectBitfields::isOutOfFlowPositioned):
(WebCore::RenderObject::RenderObjectBitfields::isRelPositioned):
(WebCore::RenderObject::RenderObjectBitfields::isStickyPositioned):
(WebCore::RenderObject::RenderObjectBitfields::isPositioned):
Re-implemented these getters / setters and renamed them to match our style while at it.

9:13 PM Changeset in webkit [138112] by dmazzoni@google.com
  • 3 edits in trunk/LayoutTests

AX: aria-controls-with-tabs should run on Chromium
https://bugs.webkit.org/show_bug.cgi?id=105381

Reviewed by Chris Fleizach.

Use accessibleElementById so the test works on all platforms,
and specifically unskip it in the Chromium expectations.

  • accessibility/aria-controls-with-tabs.html:
  • platform/chromium/TestExpectations:
8:33 PM Changeset in webkit [138111] by commit-queue@webkit.org
  • 10 edits in trunk

Text Autosizing: containers wider than their enclosing clusters should be autosized as separate clusters
https://bugs.webkit.org/show_bug.cgi?id=103627

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

Source/WebCore:

Some blocks of texts might be wider than their parent clusters and need to be autosized separately.

isAutosizingCluster() now checks for the width of the container being greater than the width of the lowest
common ancestor of the text nodes of the enclosing cluster. This block containing all text is passed to all
tree traversal methods.
An overloaded version is added for cases when we don't have the lowest common ancestor yet.

The change fixes several cases covered by existing tests.

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processSubtree):

Calls processCluster with a new number of arguments.

(WebCore::TextAutosizer::processCluster):

Passes block containing all text nodes into processContainer. Assertion removed since it can no longer be
checked without passing an additional parameter (the parent block containing all text) to the function
for the sake of this assertion only.

(WebCore::TextAutosizer::processContainer):

|parentBlockContainingAllText| parameter passed into isAutosizingCluster.

(WebCore::TextAutosizer::isAutosizingCluster(const RenderBlock*, const RenderBlock*)):

The overloaded method that is used when the render block checked is already known to be an autosizing
container and there's full information necessary to determine if it's a cluster like the parent block
containing all text within the enclosing cluster.
Considers a block a cluster if it is wider than its parent block containing all text within enclosing
cluster.

(WebCore::TextAutosizer::isAutosizingCluster(const RenderObject*)):

The overloaded method that checks for the given object to be an autosizing container first (for
convenience of the caller) and doesn't require information about the parent cluster. Used when such
information is not available, for example, in the process of retrieving the information for the parent
cluster or when looking for the root cluster in the tree.

(WebCore::TextAutosizer::clusterShouldBeAutosized):

Passes new parameter to measureDescendantTextWidth.

(WebCore::TextAutosizer::measureDescendantTextWidth):

Uses blockContainingAllText parameter to pass to isAutosizingCluster.

(WebCore::TextAutosizer::findDeepestBlockContainingAllText):

Assertion removed since it can no longer be checked without passing an additional parameter (the
parent block containing all text) to the function for the sake of this assertion only.

(WebCore::TextAutosizer::findFirstTextLeafNotInCluster):

Uses shorter isAutosizingCluster call.

LayoutTests:

Modified existing tests to reflect the new autosizing approach to handling of the elements that are
wider than the lowest common ancestor of the text nodes of the enclosing autosizing cluster.

  • fast/text-autosizing/cluster-wide-in-narrow-expected.html:
  • fast/text-autosizing/cluster-wide-in-narrow.html:
  • fast/text-autosizing/wide-child-expected.html:
  • fast/text-autosizing/wide-child.html:
  • fast/text-autosizing/wide-in-narrow-overflow-scroll-expected.html:
  • fast/text-autosizing/wide-in-narrow-overflow-scroll.html:
8:23 PM Changeset in webkit [138110] by ap@apple.com
  • 8 edits in trunk/Source

Correcting reviewer in ChangeLogs.

8:21 PM Changeset in webkit [138109] by ap@apple.com
  • 30 edits in trunk/Source

Remove unnecessary functions from CookiesStrategy
https://bugs.webkit.org/show_bug.cgi?id=105369

Reviewed by Sam Weinig.

Remove CookieJar functions that are only ever called from WebKit.

  • WebCore.exp.in:
  • loader/CookieJar.cpp:
  • loader/CookieJar.h:
  • platform/CookiesStrategy.h:
8:18 PM Changeset in webkit [138108] by hayato@chromium.org
  • 8 edits in trunk/PerformanceTests

Use element.webkitCreateShadowRoot instead of WebKitShadowRoot in PerformanceTests.
https://bugs.webkit.org/show_bug.cgi?id=105256

Reviewed by Dimitri Glazkov.

WebKitShadowRoot constructor was deleted in favor of element.webkitCreateShadowRoot().

  • ShadowDOM/ChangingClassNameShadowDOM.html:
  • ShadowDOM/ChangingSelect.html:
  • ShadowDOM/ContentReprojection.html:
  • ShadowDOM/DistributionWithMultipleShadowRoots.html:
  • ShadowDOM/LargeDistributionWithLayout.html:
  • ShadowDOM/MultipleInsertionPoints.html:
  • ShadowDOM/ShadowReprojection.html:
  • ShadowDOM/SmallDistributionWithLayout.html:
7:29 PM Changeset in webkit [138107] by fpizlo@apple.com
  • 5 edits
    3 adds in trunk

Proxies should set InterceptsGetOwnPropertySlotByIndexEvenWhenLengthIsNotZero
https://bugs.webkit.org/show_bug.cgi?id=105379

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Forgetting to set this flag led to the DFG trying to ensure array storage on a proxy. I've
now hardened the code with a release assertion as well as fixing the bug. A release assertion
is appropriate here since this is slow-path code.

  • runtime/JSObject.cpp:

(JSC::JSObject::enterDictionaryIndexingMode):
(JSC::JSObject::ensureInt32Slow):
(JSC::JSObject::ensureDoubleSlow):
(JSC::JSObject::ensureContiguousSlow):
(JSC::JSObject::ensureArrayStorageSlowNoCheck):
(JSC::JSObject::ensureArrayStorageSlow):
(JSC):
(JSC::JSObject::putByIndexBeyondVectorLengthWithoutAttributes):

  • runtime/JSObject.h:

(JSObject):

  • runtime/JSProxy.h:

(JSProxy):

LayoutTests:

  • fast/js/dfg-ensure-non-array-array-storage-on-window-expected.txt: Added.
  • fast/js/dfg-ensure-non-array-array-storage-on-window.html: Added.
  • fast/js/script-tests/dfg-ensure-non-array-array-storage-on-window.js: Added.

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

7:28 PM Changeset in webkit [138106] by fpizlo@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed, fix expected file to have the right test description.

  • fast/js/dfg-ensure-array-storage-on-window-expected.txt:
7:18 PM Changeset in webkit [138105] by haraken@chromium.org
  • 3 edits
    2 copies in branches/chromium/1312

Merge 137964

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.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/11644013

7:00 PM Changeset in webkit [138104] by alice.liu@apple.com
  • 5 edits
    1 add in trunk

Source/WebKit/mac: Add SPI to WebKit1 WebFrame for hit testing
https://bugs.webkit.org/show_bug.cgi?id=105106

Reviewed by Dan Bernstein.

  • WebView/WebFrame.mm:

(-[WebFrame elementAtPoint:]): Added. Takes an NSPoint to feed to the WebCore::Frame for hit-testing.
Creates a WebElementDictionary from that WebCore::HitTestResult, and returns the element dictionary.

  • WebView/WebFramePrivate.h:

Tools: Test for https://bugs.webkit.org/show_bug.cgi?id=105106
Add SPI to WebKit1 WebFrame for hit testing

Reviewed by Dan Bernstein.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added file Tests/mac/ElementAtPointInWebFrame.mm
  • TestWebKitAPI/Tests/mac/ElementAtPointInWebFrame.mm: Added.

(TestWebKitAPI::TEST): Loads html with two divs positioned in the 2nd and 4th quadrants of the webview.
Then hit-tests at three points, expecting to hit the two divs and body element.

6:45 PM Changeset in webkit [138103] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK][AC] Assertion failed while destroying GraphicsLayer
https://bugs.webkit.org/show_bug.cgi?id=105312

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

According to the comment in GraphicsLayer::~GraphicsLayer(), we should call
willBeDestroyed() before destructor of GraphicsLayer.

No new tests since this patch can be covered by already existing gtk ac tests.

  • platform/graphics/clutter/GraphicsLayerClutter.cpp:

(WebCore::GraphicsLayerClutter::~GraphicsLayerClutter): call willBeDestroyed()

6:35 PM Changeset in webkit [138102] by timothy_horton@apple.com
  • 3 edits
    1 delete in trunk/LayoutTests

fast/css/image-set-value-not-removed-crash.html should not InsertText with an apostrophe
https://bugs.webkit.org/show_bug.cgi?id=105375

Reviewed by Beth Dakin.

Don't InsertText text content with an apostrophe in it, as this can break
on platforms where apostrophes turn into curly quotes.

  • fast/css/image-set-value-not-removed-crash-expected.txt:
  • fast/css/image-set-value-not-removed-crash.html:
  • platform/win/fast/css/image-set-value-not-removed-crash-expected.txt: Removed.
6:33 PM Changeset in webkit [138101] by alice.liu@apple.com
  • 5 edits
    1 add in trunk

Source/WebKit/mac: Add SPI to WebKit1 WebFrame for node conversion to JSValueRef
https://bugs.webkit.org/show_bug.cgi?id=105262

Reviewed by Anders Carlsson.

  • WebView/WebFrame.mm:

(-[WebFrame jsWrapper:forWorld:]): Added. Takes a DOMNode and WebScriptWorld and provides a JSValueRef
for the WebCore::Node in that particular WebScriptWorld.

  • WebView/WebFramePrivate.h:

Tools: Test for https://bugs.webkit.org/show_bug.cgi?id=105262
Add SPI to WebKit1 WebFrame for node conversion to JSValueRef

Reviewed by Anders Carlsson.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added file Tests/mac/JSWrapperForNodeInWebFrame.mm.mm
  • TestWebKitAPI/Tests/mac/JSWrapperForNodeInWebFrame.mm.mm: Added.

(TestWebKitAPI::TEST): Tests for the correct JS wrapper for a DOMNode, provided a WebScriptWorld.
Loads html with a single div element. In an isolated world, creates a property on that node.
Also, in the standard world, creates a different property on that node. Then tests for 4 things:

  • Existence of the isolated property in the isolated world.
  • Existence of the standard property in the standard world.
  • Non-existence of the isolated property in the standard world.
  • Non-existence of the standard property in the isolated world.
6:32 PM Changeset in webkit [138100] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/gtk

[GTK][AC] Fix assertion failures for AC with clutter
https://bugs.webkit.org/show_bug.cgi?id=105039

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

AcceleratedCompositingContext could be a client of GraphicsLayerClutter
not only RenderLayerBacking. So inserting ASSERT_NOT_REACH in notifyFlushRequired()
causes a crash by calling GraphicsLayerClutter::noteLayerPropertyChanged in debug build.
And also I added flushCompositingStateIncludingSubframes taken from
AcceleratedCompositingContextGL to flushAndRenderLayers(). If not so,
ASSERT(!needsLayout()) failed in FrameView::paintContents() too in debug build.

  • WebCoreSupport/AcceleratedCompositingContextClutter.cpp:

(WebKit::AcceleratedCompositingContext::flushAndRenderLayers): Add updateLayoutAndStyleIfNeededRecursive()
(WebKit::AcceleratedCompositingContext::notifyAnimationStarted): Removed ASSERT_NOT_REACHED()
(WebKit::AcceleratedCompositingContext::notifyFlushRequired): Removed ASSERT_NOT_REACHED()

6:21 PM Changeset in webkit [138099] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Remove extra call to doFatFingers.
https://bugs.webkit.org/show_bug.cgi?id=105347

Patch by Genevieve Mak <gmak@rim.com> on 2012-12-18
Reviewed by Rob Buis.

Reviewed Internally by Mike Fenton.
Now that we do fat fingers on touch start, we don't need this anymore.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::touchEvent):

6:19 PM Changeset in webkit [138098] by oliver@apple.com
  • 7 edits
    2 adds in trunk/Source/JavaScriptCore

Add a JSScriptRef API to JSC so that we can allow API users to avoid the full cost of reparsing everytime the execute a script.
https://bugs.webkit.org/show_bug.cgi?id=105340

Reviewed by Gavin Barraclough.

This patch adds a (currently private) API to allow users of the JSC API to create a JSScript object
that references a reusable version of the script that they wish to evaluate. This can help us avoid
numeorus copies that are otherwise induced by our existing API and gives us an opaque object that we
can hang various caches off. Currently this is simply a simple SourceProvider, but in future we may
be able to add more caching without requiring new/replacement APIs.

  • API/JSScriptRef.cpp: Added.
  • API/JSScriptRefPrivate.h: Added.
  • API/tests/testapi.c: Add tests for new APIs.
  • JavaScriptCore.xcodeproj/project.pbxproj:
6:14 PM Changeset in webkit [138097] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Minor improvements to HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=105353

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2012-12-18
Reviewed by Eric Carlson.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::canPlayType):
(WebCore::createFileURLForApplicationCacheResource):
(WebCore::stringForNetworkState):
(WebCore::HTMLMediaElement::preload):
(WebCore::HTMLMediaElement::getPluginProxyParams):
Use ASCIILiteral for literal strings becoming WTFStrings.

(WebCore::HTMLMediaElement::setLoop):
By going through setAttribute, parseAttribute would already take care of
updating the disable sleep, so the call here is not needed.

6:11 PM Changeset in webkit [138096] by jonlee@apple.com
  • 10 edits
    2 adds in trunk/Source/WebKit2

[WK2] Create a context client
https://bugs.webkit.org/show_bug.cgi?id=105316
<rdar://problem/12901762>

Reviewed by Brady Eidson.

Web contexts already have clients related to downloads or history.
Miscellaneous callbacks can be grouped into a generic client for the
web context.

  • UIProcess/API/C/WKContext.cpp:

(WKContextSetClient): Set the client for the context.

  • UIProcess/API/C/WKContext.h: Define a new, empty WKContextClient.
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::initializeClient):

  • UIProcess/WebContext.h: Add a variable for the new client. Move the

download client so that all the clients are grouped together.
(WebKit::WebContext::client): Returns the context client.

  • UIProcess/WebContextClient.cpp: Added. Currently empty, but will be

filled out in a pending patch.

  • UIProcess/WebContextClient.h: Added.

Add WebContextClient.{h,cpp}.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebKit2.xcodeproj/project.pbxproj:
  • win/WebKit2.vcproj:
6:04 PM Changeset in webkit [138095] by leviw@chromium.org
  • 5 edits
    2 adds in trunk

Input elements with default touch handlers don't update handler counts when changing documents
https://bugs.webkit.org/show_bug.cgi?id=105334

Reviewed by James Robinson.

Source/WebCore:

When an Input element with default touch event handlers changes documents, it failed to
update the touch event handler sets in both the old and new document. This patch fixes this
case.

Test: fast/events/touch/touch-input-element-change-documents.html

  • dom/Document.h:

(WebCore::Document::didRemoveTouchEventTargetNode) This function makes sense when touch
handling is enabled, regardless of whether we're tracking the rects.

  • dom/Document.cpp:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::~HTMLInputElement): Switch from didRemoveTouchEventHandler to
didRemoveTouchEventTargetNode, since we don't care about counts in the destructor.
(WebCore::HTMLInputElement::updateType): Fixing incorrect indentation.
(WebCore::HTMLInputElement::didMoveToNewDocument): Adding the node to the new document and
removing it from the old.

LayoutTests:

  • fast/events/touch/touch-input-element-change-documents-expected.txt: Added.
  • fast/events/touch/touch-input-element-change-documents.html: Added.
6:02 PM Changeset in webkit [138094] by Simon Fraser
  • 2 edits in trunk/LayoutTests

Skip two asserting tests in Debug.

  • platform/mac/TestExpectations:
5:54 PM Changeset in webkit [138093] by kbr@google.com
  • 1 edit in branches/chromium/1312/Source/WebCore/platform/graphics/gpu/SharedGraphicsContext3D.cpp

Merge 136332

[chromium] Let Pepper Flash use integrated GPU
https://bugs.webkit.org/show_bug.cgi?id=103800

Patch by John Bauman <jbauman@chromium.org> on 2012-12-02
Reviewed by Kenneth Russell.

Pepper Flash uses the SharedGraphicsContext3D as a parent, so don't
require that to use the discrete GPU. This means that accelerated
canvas will use the integrated GPU, but that will save battery life
and seems acceptable.

  • platform/graphics/gpu/SharedGraphicsContext3D.cpp:

(WebCore::SharedGraphicsContext3DImpl::createContext):

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/11639008

5:52 PM Changeset in webkit [138092] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Remove temporary backwards compatible interface code (from r137724).
https://bugs.webkit.org/show_bug.cgi?id=105205

Patch by David Dorwin <ddorwin@chromium.org> on 2012-12-18
Reviewed by James Robinson.

  • public/WebMediaPlayerClient.h:
  • src/WebMediaPlayerClientImpl.cpp:
5:45 PM Changeset in webkit [138091] by Simon Fraser
  • 2 edits in trunk/LayoutTests

New baseline for Acid3 test.

  • platform/mac/http/tests/misc/acid3-expected.txt:
5:41 PM Changeset in webkit [138090] by Simon Fraser
  • 3 edits
    2 adds in trunk/LayoutTests

Rebaseline some tests on Lion.

  • platform/mac-lion/fast/text/decorations-with-text-combine-expected.txt: Added.
  • platform/mac-lion/fast/text/orientation-sideways-expected.txt: Added.
  • platform/mac-lion/fast/writing-mode/broken-ideographic-font-expected.txt:
  • platform/mac-lion/fast/writing-mode/vertical-baseline-alignment-expected.txt:
5:15 PM Changeset in webkit [138089] by Simon Fraser
  • 2 edits in trunk/Tools

Disable the SimplifyMarkup API test, wich asserts in debug builds.
Tracked by https://bugs.webkit.org/show_bug.cgi?id=105370.

  • TestWebKitAPI/Tests/mac/SimplifyMarkup.mm:

(TestWebKitAPI::TEST):

4:49 PM Changeset in webkit [138088] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebCore

Fixed bad merge in "Initial refactoring of database functionality into the manager and server".
https://bugs.webkit.org/show_bug.cgi?id=104748.

Not reviewed.

No new tests.

  • Modules/webdatabase/DBBackendServer.cpp:
4:35 PM Changeset in webkit [138087] by fpizlo@apple.com
  • 2 edits in trunk/LayoutTests

Fix the test description.

Rubber stamped by Mark Hahnenberg.

  • fast/js/script-tests/dfg-ensure-array-storage-on-window.js:
4:33 PM Changeset in webkit [138086] by fpizlo@apple.com
  • 3 edits
    6 adds in trunk

DFG::SpeculativeJIT::jumpSlowForUnwantedArrayMode incorrectly checks for non-array array storage when it should be checking for array array storage
https://bugs.webkit.org/show_bug.cgi?id=105365

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::jumpSlowForUnwantedArrayMode):

LayoutTests:

  • fast/js/dfg-ensure-array-storage-on-window-expected.txt: Added.
  • fast/js/dfg-ensure-array-storage-on-window.html: Added.
  • fast/js/indexed-setter-on-global-object-expected.txt: Added.
  • fast/js/indexed-setter-on-global-object.html: Added.
  • fast/js/script-tests/dfg-ensure-array-storage-on-window.js: Added.

(foo):

  • fast/js/script-tests/indexed-setter-on-global-object.js: Added.
4:27 PM Changeset in webkit [138085] by mark.lam@apple.com
  • 26 edits
    2 adds in trunk/Source/WebCore

Initial refactoring of database functionality into the manager and server.
https://bugs.webkit.org/show_bug.cgi?id=104748.

Reviewed by Brady Eidson.

This is not a complete refactor, but a stepping stone on the way to isolating
script side database activity from the SQL backend.

No new tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/webdatabase/AbstractDatabase.cpp:

(WebCore):
(WebCore::updateGuidVersionMap):
(WebCore::guidForOriginAndName):
(WebCore::AbstractDatabase::AbstractDatabase):
(WebCore::AbstractDatabase::maximumSize):

  • Modules/webdatabase/AbstractDatabase.h:

(AbstractDatabase):

  • Moved isAvailable() and setIsAvailable() to the DatabaseManager.
  • Modules/webdatabase/AbstractDatabaseServer.h:

(AbstractDatabaseServer):

  • Modules/webdatabase/DBBackendServer.cpp: Added.

(WebCore::DBBackend::Server::initialize):
(WebCore::DBBackend::Server::setClient):
(WebCore::DBBackend::Server::databaseDirectoryPath):
(WebCore::DBBackend::Server::setDatabaseDirectoryPath):
(WebCore::DBBackend::Server::fullPathForDatabase):
(WebCore::DBBackend::Server::hasEntryForOrigin):
(WebCore::DBBackend::Server::origins):
(WebCore::DBBackend::Server::databaseNamesForOrigin):
(WebCore::DBBackend::Server::detailsForNameAndOrigin):
(WebCore::DBBackend::Server::usageForOrigin):
(WebCore::DBBackend::Server::quotaForOrigin):
(WebCore::DBBackend::Server::setQuota):
(WebCore::DBBackend::Server::deleteAllDatabases):
(WebCore::DBBackend::Server::deleteOrigin):
(WebCore::DBBackend::Server::deleteDatabase):
(WebCore::DBBackend::Server::scheduleNotifyDatabaseChanged):
(WebCore::DBBackend::Server::databaseChanged):
(WebCore::DBBackend::Server::closeDatabasesImmediately):
(WebCore::DBBackend::Server::interruptAllDatabasesForContext):
(WebCore::DBBackend::Server::canEstablishDatabase):
(WebCore::DBBackend::Server::addOpenDatabase):
(WebCore::DBBackend::Server::removeOpenDatabase):
(WebCore::DBBackend::Server::setDatabaseDetails):
(WebCore::DBBackend::Server::getMaxSizeForDatabase):

  • Refactored all calls to the DatabaseTracker to go thru the DBBackend::Server.
  • Modules/webdatabase/DBBackendServer.h:
  • Modules/webdatabase/DOMWindowWebDatabase.cpp:

(WebCore::DOMWindowWebDatabase::openDatabase):

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::close):
(WebCore::Database::maximumSize):

  • Modules/webdatabase/Database.h:

(Database):

  • Moved the openDatabase() factory method to the DatabaseManager.
  • Removed the unused deliverPendingCallback() prototype.
  • Modules/webdatabase/DatabaseBasicTypes.h: Added.
  • A place to define some common basic types used by the database module.
  • Modules/webdatabase/DatabaseContext.cpp:

(WebCore::DatabaseContext::databaseExceededQuota):

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::DatabaseManager):
(WebCore::DatabaseManager::initialize):
(WebCore::DatabaseManager::setClient):
(WebCore::DatabaseManager::databaseDirectoryPath):
(WebCore::DatabaseManager::setDatabaseDirectoryPath):
(WebCore::DatabaseManager::isAvailable):
(WebCore::DatabaseManager::setIsAvailable):
(DatabaseCreationCallbackTask):
(WebCore::DatabaseCreationCallbackTask::create):
(WebCore::DatabaseCreationCallbackTask::performTask):
(WebCore::DatabaseCreationCallbackTask::DatabaseCreationCallbackTask):
(WebCore::DatabaseManager::openDatabase):
(WebCore::DatabaseManager::openDatabaseSync):
(WebCore::DatabaseManager::setHasOpenDatabases):
(WebCore::DatabaseManager::fullPathForDatabase):
(WebCore::DatabaseManager::hasEntryForOrigin):
(WebCore::DatabaseManager::origins):
(WebCore::DatabaseManager::databaseNamesForOrigin):
(WebCore::DatabaseManager::detailsForNameAndOrigin):
(WebCore::DatabaseManager::usageForOrigin):
(WebCore::DatabaseManager::quotaForOrigin):
(WebCore::DatabaseManager::setQuota):
(WebCore::DatabaseManager::deleteAllDatabases):
(WebCore::DatabaseManager::deleteOrigin):
(WebCore::DatabaseManager::deleteDatabase):
(WebCore::DatabaseManager::scheduleNotifyDatabaseChanged):
(WebCore::DatabaseManager::databaseChanged):
(WebCore::DatabaseManager::closeDatabasesImmediately):
(WebCore::DatabaseManager::interruptAllDatabasesForContext):
(WebCore::DatabaseManager::canEstablishDatabase):
(WebCore::DatabaseManager::addOpenDatabase):
(WebCore::DatabaseManager::removeOpenDatabase):
(WebCore::DatabaseManager::setDatabaseDetails):
(WebCore::DatabaseManager::getMaxSizeForDatabase):

  • Modules/webdatabase/DatabaseManager.h:

(DatabaseManager):

  • Modules/webdatabase/DatabaseSync.cpp:

(WebCore::DatabaseSync::~DatabaseSync):
(WebCore::DatabaseSync::closeImmediately):

  • Modules/webdatabase/DatabaseSync.h:

(DatabaseSync):

  • Moved the openDatabaseSync() factory method to the DatabaseManager.
  • Modules/webdatabase/DatabaseTask.h:
  • Modules/webdatabase/SQLResultSet.h:
  • Modules/webdatabase/SQLStatementSync.h:
  • Modules/webdatabase/SQLTransaction.h:
  • Modules/webdatabase/SQLTransactionClient.cpp:

(WebCore::SQLTransactionClient::didCommitWriteTransaction):
(WebCore::SQLTransactionClient::didExecuteStatement):
(WebCore::SQLTransactionClient::didExceedQuota):

  • Modules/webdatabase/SQLTransactionSync.h:
  • Modules/webdatabase/WorkerContextWebDatabase.cpp:

(WebCore::WorkerContextWebDatabase::openDatabase):
(WebCore::WorkerContextWebDatabase::openDatabaseSync):

  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
4:26 PM Changeset in webkit [138084] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

Bug 105344 - [BlackBerry] Make single line text edits touch scrollable.
https://bugs.webkit.org/show_bug.cgi?id=105344

Patch by Genevieve Mak <gmak@rim.com> on 2012-12-18
Reviewed by Antonio Gomes.

Reviewed Internally by Mike Fenton.
We don't need to check the overflow for editable layers because there's
no need for overflow to be set by the content.
PR #231776

  • WebKitSupport/InRegionScrollableArea.cpp:

(BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):

4:19 PM Changeset in webkit [138083] by commit-queue@webkit.org
  • 18 edits
    8 adds in trunk

EventSource should support CORS
https://bugs.webkit.org/show_bug.cgi?id=61862

Patch by Per-Erik Brodin <per-erik.brodin@ericsson.com> on 2012-12-18
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Enabled CORS in EventSource with optional constructor argument to
indicate whether credentials should be included or not, as per the spec.
Added didFailAccessControlCheck to ThreadableLoaderClient to be able to
properly distinguish CORS failures from other errors.

Tests: http/tests/eventsource/eventsource-cors-basic.html

http/tests/eventsource/eventsource-cors-no-server.html
http/tests/eventsource/eventsource-cors-with-credentials.html

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
(WebCore::DocumentThreadableLoader::didReceiveResponse):
(WebCore::DocumentThreadableLoader::preflightFailure):

  • loader/ThreadableLoaderClient.h:

(WebCore::ThreadableLoaderClient::didFailAccessControlCheck):

  • loader/ThreadableLoaderClientWrapper.h:

(WebCore::ThreadableLoaderClientWrapper::didFailAccessControlCheck):
(ThreadableLoaderClientWrapper):

  • loader/WorkerThreadableLoader.cpp:

(WebCore::workerContextDidFailAccessControlCheck):
(WebCore):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didFailAccessControlCheck):

  • loader/WorkerThreadableLoader.h:

(MainThreadBridge):

  • page/EventSource.cpp:

(WebCore::EventSource::EventSource):
(WebCore::EventSource::create):
(WebCore::EventSource::connect):
(WebCore::EventSource::withCredentials):
(WebCore):
(WebCore::EventSource::didReceiveResponse):
(WebCore::EventSource::didFailAccessControlCheck):
(WebCore::EventSource::didFailRedirectCheck):
(WebCore::EventSource::abortConnectionAttempt):
(WebCore::EventSource::parseEventStreamLine):
(WebCore::EventSource::createMessageEvent):

  • page/EventSource.h:

(WebCore):
(EventSource):
(WebCore::EventSource::refEventTarget):
(WebCore::EventSource::derefEventTarget):

  • page/EventSource.idl:

LayoutTests:

Added new CORS tests for EventSource. Modified existing test to verify
that the new constructor argument can be passed to the constructor.

  • fast/eventsource/eventsource-constructor-expected.txt:
  • fast/eventsource/eventsource-constructor.html:
  • fast/js/constructor-length.html:
  • http/tests/eventsource/eventsource-cors-basic-expected.txt: Added.
  • http/tests/eventsource/eventsource-cors-basic.html: Added.
  • http/tests/eventsource/eventsource-cors-no-server-expected.txt: Added.
  • http/tests/eventsource/eventsource-cors-no-server.html: Added.
  • http/tests/eventsource/eventsource-cors-with-credentials-expected.txt: Added.
  • http/tests/eventsource/eventsource-cors-with-credentials.html: Added.
  • http/tests/eventsource/resources/es-cors-basic.php: Added.
  • http/tests/eventsource/resources/es-cors-credentials.php: Added.
  • platform/blackberry/fast/js/constructor-length-expected.txt:
  • platform/chromium/fast/js/constructor-length-expected.txt:
  • platform/gtk/fast/js/constructor-length-expected.txt:
  • platform/mac/fast/js/constructor-length-expected.txt:
  • platform/qt/fast/js/constructor-length-expected.txt:
4:16 PM Changeset in webkit [138082] by dpranke@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] pull in the CDM module recently added to media
https://bugs.webkit.org/show_bug.cgi?id=105360

Unreiviewed build fix, but sanity checked by ddorwin.

  • DEPS:
4:10 PM Changeset in webkit [138081] by commit-queue@webkit.org
  • 11 edits
    2 adds in trunk/Source/WebCore

IndexedDB: Implement custom bindings for parsing options
https://bugs.webkit.org/show_bug.cgi?id=96614

Patch by Michael Pruett <michael@68k.org> on 2012-12-18
Reviewed by Darin Adler.

Parsing the options dictionary in IDBDatabase.createObjectStore()
and IDBObjectStore.createIndex() requires custom bindings in JSC.

Tests: storage/indexeddb/*

  • GNUmakefile.list.am:
  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::createObjectStore):
(WebCore):

  • Modules/indexeddb/IDBDatabase.h:

(IDBDatabase):

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

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

  • Modules/indexeddb/IDBObjectStore.h:

(IDBObjectStore):

  • Modules/indexeddb/IDBObjectStore.idl:
  • UseJSC.cmake:
  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::idbKeyPathFromValue): Added utility function for converting a JSValue to an IDBKeyPath.
(WebCore):

  • bindings/js/IDBBindingUtilities.h:

(WebCore):

  • bindings/js/JSIDBDatabaseCustom.cpp: Added.

(WebCore):
(WebCore::JSIDBDatabase::createObjectStore):

  • bindings/js/JSIDBObjectStoreCustom.cpp: Added.

(WebCore):
(WebCore::JSIDBObjectStore::createIndex):

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

Cannot click an element at 2nd line or more inside inline-block in vertical writing mode.
https://bugs.webkit.org/show_bug.cgi?id=104775

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

Source/WebCore:

If the parent of an inline box changes writing mode, then the inline box must flip incoming hit point coordinates.
Otherwise, the coordinate will be misunderstood because the box has a different origin from its parent.
If the InlineBox doesn't flip its offset, its children will use the wrong offset
because they don't know their grandparent changed writing modes.
InlineBox::nodeAtPoint should flip accumulatedOffset like InlineBox::paint().

Test: fast/writing-mode/vertical-inline-block-hittest.html

  • rendering/InlineBox.cpp:

(WebCore::InlineBox::nodeAtPoint):

LayoutTests:

Test that we can click 2nd line inside inline-block in vertical writing mode.

  • fast/writing-mode/vertical-inline-block-hittest-expected.txt: Added.
  • fast/writing-mode/vertical-inline-block-hittest.html: Added.
4:01 PM Changeset in webkit [138079] by dino@apple.com
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed attempted build fix for Chromium.

Insert stub methods for localized text track menu labels.

  • src/LocalizedStrings.cpp:

(WebCore):
(WebCore::textTrackClosedCaptionsText):
(WebCore::textTrackSubtitlesText):
(WebCore::textTrackOffText):
(WebCore::textTrackNoLabelText):

3:48 PM Changeset in webkit [138078] by ike@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/12720539> per-pid private temporary directories for sandboxed webkit2 plugins

Reviewed by Sam Weinig, Alexey Proskuryakov, Anders Carlsson.

Previously we assigned each PluginProcess a private temporary and
cache directory based on the bundle name of the plugin that was
running. This sometimes led to overly-long pathnames (sockets on OS X
can only be 103 characters long), and didn't provide isolation between
multiple running instances of the same plugin on behalf of different
processes. We now assign each PluginProcess its own private
temporary and cache directory regardless of which plugin it's running,
and make an attempt to clean these up when the process terminates.

We also pass the temporary directory into the sandbox
profile as a parameter, in case the plugin profile needs to apply
additional rules beyond the default read/write policy.

  • PluginProcess/mac/PluginProcessMainMac.mm:

(WebKit::PluginProcessMain):

  • WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:

(enterSandbox):

3:35 PM Changeset in webkit [138077] by dpranke@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Pull in the opus codec sources.

Unreviewed, build fix.

  • DEPS:
3:31 PM Changeset in webkit [138076] by Simon Fraser
  • 14 edits
    2 copies
    7 adds in trunk

Allow position:sticky elements to be moved by the scrolling thread
https://bugs.webkit.org/show_bug.cgi?id=105245

Reviewed by Beth Dakin.

Source/WebCore:

Allow sticky position elements to be repositioned on the scrolling thread.

RenderLayerCompositor::requiresCompositingForPosition() is changed to make
all position:-webkit-sticky elements composited.

Sticky position constraints are already communicated to the ScrollingCoordinator,
but now we created ScrollingStateStickyNodes for them, and send the constraints
over to the scrolling thread for new ScrollingTreeStickyNodes. That allows
their layers to be repositioned on the scrolling thread.

Tests: platform/mac/tiled-drawing/sticky/sticky-horizontal.html

platform/mac/tiled-drawing/sticky/sticky-vertical.html

  • WebCore.xcodeproj/project.pbxproj: Add new files.
  • page/scrolling/ScrollingConstraints.h:

(WebCore::StickyPositionViewportConstraints::absoluteContainingBlockRect): New accessors.
(WebCore::StickyPositionViewportConstraints::absoluteStickyBoxRect):
(WebCore::StickyPositionViewportConstraints::operator==):
(WebCore::StickyPositionViewportConstraints::operator!=):

  • page/scrolling/ScrollingCoordinator.h: Added StickyNode type.
  • page/scrolling/ScrollingStateFixedNode.cpp:

(WebCore::ScrollingStateFixedNode::syncLayerPositionForViewportRect):
New virtual method that allows different kinds of nodes to sync layer positions.

  • page/scrolling/ScrollingStateFixedNode.h:
  • page/scrolling/ScrollingStateNode.h:

(WebCore::ScrollingStateNode::isStickyNode):
(WebCore::ScrollingStateNode::syncLayerPositionForViewportRect):

  • page/scrolling/ScrollingStateStickyNode.cpp: Added.

(WebCore::ScrollingStateStickyNode::create):
(WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
(WebCore::ScrollingStateStickyNode::~ScrollingStateStickyNode):
(WebCore::ScrollingStateStickyNode::clone):
(WebCore::ScrollingStateStickyNode::updateConstraints):
(WebCore::ScrollingStateStickyNode::syncLayerPositionForViewportRect):
(WebCore::ScrollingStateStickyNode::dumpProperties):

  • page/scrolling/ScrollingStateStickyNode.h: Copied from Source/WebCore/page/scrolling/ScrollingStateFixedNode.h.

(ScrollingStateStickyNode):
(WebCore::ScrollingStateStickyNode::viewportConstraints):
(WebCore::toScrollingStateStickyNode):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::updateTreeFromStateNode):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::attachToStateTree): Handle sticky nodes.
(WebCore::ScrollingCoordinatorMac::syncChildPositions): Generalize to different kinds of nodes by
calling a virtual method on the node.
(WebCore::ScrollingCoordinatorMac::updateViewportConstrainedNode):

  • page/scrolling/mac/ScrollingTreeFixedNode.mm:

(WebCore::ScrollingTreeFixedNode::ScrollingTreeFixedNode):

  • page/scrolling/mac/ScrollingTreeStickyNode.h: Added.

(ScrollingTreeStickyNode):

  • page/scrolling/mac/ScrollingTreeStickyNode.mm: Copied from Source/WebCore/page/scrolling/mac/ScrollingTreeFixedNode.mm.

(WebCore::ScrollingTreeStickyNode::create):
(WebCore::ScrollingTreeStickyNode::ScrollingTreeStickyNode):
(WebCore::ScrollingTreeStickyNode::~ScrollingTreeStickyNode):
(WebCore::ScrollingTreeStickyNode::update):
(WebCore::operator*):
(WebCore::ScrollingTreeStickyNode::parentScrollPositionDidChange):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::attachToScrollingCoordinator):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForPosition):
(WebCore::RenderLayerCompositor::computeFixedViewportConstraints):
(WebCore::RenderLayerCompositor::computeStickyViewportConstraints):
(WebCore::RenderLayerCompositor::registerOrUpdateViewportConstrainedLayer):

  • rendering/RenderLayerCompositor.h:

(RenderLayerCompositor):

LayoutTests:

Sticky position tests that dump the scrolling tree.

  • platform/mac/tiled-drawing/sticky/sticky-horizontal-expected.txt: Added.
  • platform/mac/tiled-drawing/sticky/sticky-horizontal.html: Added.
  • platform/mac/tiled-drawing/sticky/sticky-vertical-expected.txt: Added.
  • platform/mac/tiled-drawing/sticky/sticky-vertical.html: Added.
3:04 PM Changeset in webkit [138075] by dpranke@chromium.org
  • 2 edits
    1 delete in trunk/LayoutTests

Remove entries for passing tests and one bad expectation for a reftest.

Unreviewed.

  • platform/chromium-mac/compositing/background-color/background-color-change-to-text-expected.png: Removed.
  • platform/chromium/TestExpectations:
2:49 PM Changeset in webkit [138074] by fpizlo@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

SunSpider/date-format-tofte shouldn't compile each of the tiny worthless eval's only to OSR exit in the prologue every time
https://bugs.webkit.org/show_bug.cgi?id=105335

Reviewed by Geoffrey Garen.

The first thing I did was restructure the logic of canInlineResolveOperations(),
because I didn't understand it. This was relevant because the OSR exits are
caused by a resolve that the DFG cannot handle.

I was then going to make it so that we didn't compile the resolve at all, but
realized that this would not be the best fix: it didn't seem sensible to me to
be optimizing these evals after only 60 invocations. Evals should have a higher
threshold, since they often contain code for which the baseline JIT does a
pretty good job already (if all you've got is a single heap access or a single
hard-to-inline call, then the baseline JIT has got you covered), and typically
if we see one eval code block we expect to see more (from the same eval site):
so our typical low threshold could lead to a *lot* of compilation. As such, the
main effect of this patch is to introduce an evalThresholdMultiplier, which is
now set to 10.

This is a ~5% speed-up on data-format-tofte. No regressions anywhere as far as
I can see.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::codeTypeThresholdMultiplier):
(JSC):
(JSC::CodeBlock::optimizationThresholdScalingFactor):
(JSC::CodeBlock::exitCountThresholdForReoptimization):
(JSC::CodeBlock::exitCountThresholdForReoptimizationFromLoop):

  • bytecode/CodeBlock.h:

(CodeBlock):

  • dfg/DFGCapabilities.h:

(JSC::DFG::canInlineResolveOperations):

  • dfg/DFGOSRExitCompiler.cpp:
  • runtime/Options.h:

(JSC):

2:32 PM Changeset in webkit [138073] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Convert indexingTypeToString to IndexingTypeDump
https://bugs.webkit.org/show_bug.cgi?id=105351

Reviewed by Mark Hahnenberg.

This gets rid of another case of static char buffer[thingy].

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • runtime/IndexingType.cpp:

(JSC::dumpIndexingType):

  • runtime/IndexingType.h:

(JSC):

  • runtime/JSValue.cpp:

(JSC::JSValue::dump):

2:32 PM Changeset in webkit [138072] by dgrogan@chromium.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: Split BackingStore histogram
https://bugs.webkit.org/show_bug.cgi?id=105222

Reviewed by Tony Chang.

Add separate histograms for Consistency, Write, and Read errors.
Recategorize some read errors as consistency errors.

Tested the preprocessor logic by manually making some functions fail
and printing the histogram string from chromium code.

Next up is logging successes to get an idea of which functions have
the highest failure _rate_.

  • Modules/indexeddb/IDBBackingStore.cpp:

(WebCore::recordInternalError):
(WebCore):
(WebCore::setUpMetadata):
(WebCore::IDBBackingStore::getIDBDatabaseMetaData):
(WebCore::getNewDatabaseId):
(WebCore::IDBBackingStore::createIDBDatabaseMetaData):
(WebCore::IDBBackingStore::getObjectStores):
(WebCore::setMaxObjectStoreId):
(WebCore::IDBBackingStore::deleteObjectStore):
(WebCore::IDBBackingStore::getRecord):
(WebCore::getNewVersionNumber):
(WebCore::IDBBackingStore::getKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStore::keyExistsInObjectStore):
(WebCore::IDBBackingStore::getIndexes):
(WebCore::setMaxIndexId):
(WebCore::versionExists):
(WebCore::IDBBackingStore::findKeyInIndex):
(WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
(WebCore::IDBBackingStore::keyExistsInIndex):
(WebCore::ObjectStoreKeyCursorImpl::loadCurrentRow):
(WebCore::ObjectStoreCursorImpl::loadCurrentRow):
(WebCore::IndexKeyCursorImpl::loadCurrentRow):
(WebCore::IndexCursorImpl::loadCurrentRow):

2:30 PM Changeset in webkit [138071] by dino@apple.com
  • 11 edits
    3 adds in trunk

Track menu needs localization
https://bugs.webkit.org/show_bug.cgi?id=105233

Reviewed by Eric Carlson.

Source/WebCore:

Allow the UI strings in the closed captions menu to be localized, and
profile strings for the English locale.

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

  • English.lproj/Localizable.strings: Adds the four new captions strings.
  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu): Use localized getters.

  • platform/LocalizedStrings.cpp:

(WebCore::textTrackClosedCaptionsText): New localized string getter.
(WebCore::textTrackSubtitlesText): Ditto.
(WebCore::textTrackOffText): Ditto.
(WebCore::textTrackNoLabelText): Ditto.

  • platform/LocalizedStrings.h:

LayoutTests:

Test to exercise the localization of strings in the captions menu.
While I was here I merged some common code into a helper file.

  • media/trackmenu-test.js: Added. New helper file to run common test operations.
  • media/video-controls-captions-trackmenu-localized-expected.txt: Added.
  • media/video-controls-captions-trackmenu-localized.html: Added.
  • media/video-controls-captions-trackmenu-sorted.html: Updated to use helper functions.
  • platform/chromium/TestExpectations: Skip unimplemented test.
  • platform/efl/TestExpectations: Ditto.
  • platform/gtk/TestExpectations: Ditto.
  • platform/qt/TestExpectations: Ditto.
2:26 PM Changeset in webkit [138070] by dpranke@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, roll chromium deps to r173769

  • DEPS:
2:25 PM Changeset in webkit [138069] by Beth Dakin
  • 11 edits in trunk

https://bugs.webkit.org/show_bug.cgi?id=102579
[mac] Enable scaled cursors

Reviewed by Dean Jackson.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Not much is required to get this turned on. We just need the feature to be
defined, and we need to initialize m_imageScaleFactor in the Cursor constructors.

  • Configurations/FeatureDefines.xcconfig:
  • platform/mac/CursorMac.mm:

(WebCore::Cursor::Cursor):
(WebCore::Cursor::operator=):

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

LayoutTests:

Un-skip these tests now that the feature is enabled.

  • platform/mac/TestExpectations:
2:16 PM Changeset in webkit [138068] by thakis@chromium.org
  • 2 edits in trunk/Websites/webkit.org

Fix broken loop in style guide
https://bugs.webkit.org/show_bug.cgi?id=105346

Reviewed by Ryosuke Niwa.

Found by Sean Silva <silvas@purdue.edu>

  • coding/coding-style.html:
2:01 PM Changeset in webkit [138067] by mhahnenberg@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

Restrictions on oversize CopiedBlock allocations should be relaxed
https://bugs.webkit.org/show_bug.cgi?id=105339

Reviewed by Filip Pizlo.

Currently the DFG has a single branch in the inline allocation path for property/array storage where
it checks to see if the number of bytes requested will fit in the current block. This does not match
what the C++ allocation path does; it checks if the requested number of bytes is oversize, and then
if it's not, it tries to fit it in the current block. The garbage collector assumes that ALL allocations
that are greater than 16KB are in oversize blocks. Therefore, this mismatch can lead to crashes when
the collector tries to perform some operation on a CopiedBlock.

To avoid adding an extra branch to the inline allocation path in the JIT, we should make it so that
oversize blocks are allocated on the same alignment boundaries so that there is a single mask to find
the block header of any CopiedBlock (rather than two, one for normal and one for oversize blocks), and
we should figure out if a block is oversize by some other method than just whatever the JSObject says
it is. One way we could record this info Region of the block, since we allocate a one-off Region for
oversize blocks.

  • heap/BlockAllocator.h:

(JSC::Region::isCustomSize):
(Region):
(JSC::Region::createCustomSize):
(JSC::Region::Region):
(JSC::BlockAllocator::deallocateCustomSize):

  • heap/CopiedBlock.h:

(CopiedBlock):
(JSC::CopiedBlock::isOversize):
(JSC):

  • heap/CopiedSpace.cpp:

(JSC::CopiedSpace::tryAllocateOversize):
(JSC::CopiedSpace::tryReallocate):
(JSC::CopiedSpace::tryReallocateOversize):

  • heap/CopiedSpace.h:

(CopiedSpace):

  • heap/CopiedSpaceInlines.h:

(JSC::CopiedSpace::contains):
(JSC::CopiedSpace::tryAllocate):
(JSC):

  • heap/CopyVisitor.h:

(CopyVisitor):

  • heap/CopyVisitorInlines.h:

(JSC::CopyVisitor::checkIfShouldCopy):
(JSC::CopyVisitor::didCopy):

  • heap/SlotVisitorInlines.h:

(JSC::SlotVisitor::copyLater):

  • runtime/JSObject.cpp:

(JSC::JSObject::copyButterfly):

1:44 PM Changeset in webkit [138066] by jpetsovits@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Build fix for r138024.
https://bugs.webkit.org/show_bug.cgi?id=105199
RIM PR 260232

Reviewed by Yong Li.

The clearVisibleTiles() function doesn't exist anymore
and apparently I fail at merge conflict resolution.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidLayout):

1:36 PM Changeset in webkit [138065] by Joseph Pecoraro
  • 8 edits in trunk/Source

[Mac] Add Build Phase to Check Headers for Inappropriate Macros (Platform.h macros)
https://bugs.webkit.org/show_bug.cgi?id=104279

Reviewed by David Kilzer.

Source/JavaScriptCore:

Add a build phase to check the public JavaScriptCore headers for
inappropriate macros.

Source/WebCore:

Set the executable as an input path on the check-* build phases.

  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit:

Add a build phase to check the public WebKit headers for
inappropriate macros. Also set the executable as an input
path on the other check-* build phases.

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit2:

Add a build phase to check the public WebKit2 headers for
inappropriate macros. Also set the executable as an input
path on the other check-* build phases.

  • WebKit2.xcodeproj/project.pbxproj:
1:36 PM Changeset in webkit [138064] by Joseph Pecoraro
  • 2 edits
    12 adds in trunk/Tools

[Mac] Add Build Phase to Check Headers for Inappropriate Macros (Platform.h macros)
https://bugs.webkit.org/show_bug.cgi?id=104279

Reviewed by David Kilzer.

Add a build phase script that checks a framework's header files for
Platform.h and Compiler.h macros. Also add some tests for the script.

  • Scripts/check-for-inappropriate-macros-in-external-headers: Added.

Script to be used in build phases to check for inappropriate macros in headers.

  • Scripts/test-webkitruby: Added.

Script that can be used to run all webkitruby tests.

  • Scripts/test-webkit-scripts:

Also run the ruby tests.

  • Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/fake-data-failing-expected.txt: Added.
  • Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/pass-expected.txt: Added.
  • Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/passing-expected.txt: Added.
  • Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/resources/Fake.framework/Headers/Fail.h: Added.
  • Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/resources/Fake.framework/Headers/Pass.h: Added.
  • Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/run-test.rb: Added.

Tests for the new script.

1:34 PM Changeset in webkit [138063] by dmazzoni@google.com
  • 3 edits in trunk/LayoutTests

[chromium] Unreviewed gardening.

Updating the expectation and unskipping a test whose output was correct.

  • platform/chromium/TestExpectations:
  • platform/chromium/accessibility/legend-expected.txt:
1:28 PM Changeset in webkit [138062] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION: Using the Exit Full Screen button in the menu bar to exit HTML5 / media full screen breaks Safari windows
https://bugs.webkit.org/show_bug.cgi?id=104610

Reviewed by Anders Carlsson.

When a user clicks on the menu-bar exit fullscreen button, that skips notifying the document that
the window is exiting fullscreen and tearing down the placeholder. Manually call that part of the code
when we detect that it has been skipped.

  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController _startExitFullScreenAnimationWithDuration:]):

1:28 PM Changeset in webkit [138061] by dmazzoni@google.com
  • 11 edits
    1 move
    2 deletes in trunk

AX: support clickPoint in DRT for chromium
https://bugs.webkit.org/show_bug.cgi?id=97359

Reviewed by Chris Fleizach.

Source/WebKit/chromium:

Exposes the clickPoint accessibility method in WebAccessibilityObject.

  • public/WebAccessibilityObject.h:

(WebAccessibilityObject):

  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::clickPoint):
(WebKit):

Tools:

Implement clickPointX, clickPointY, and elementAtPoint for Chromium, so that
several more tests can pass.

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

(WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
(WebTestRunner::AccessibilityUIElement::clickPointXGetterCallback):
(WebTestRunner):
(WebTestRunner::AccessibilityUIElement::clickPointYGetterCallback):
(WebTestRunner::AccessibilityUIElement::elementAtPointCallback):

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

(AccessibilityUIElement):

LayoutTests:

Enable four more tests now that clickPointX, clickPointY,
and elementAtPoint are implemented for Chromium.

Minor fixes to two tests to make them more robust
across platfoms and when run in parallel.

  • accessibility/svg-bounds.html: Updated
  • accessibility/svg-bounds-expected.txt: Added (made cross-platform
  • accessibility/svg-remote-element.html: Updated
  • accessibility/svg-remote-element-expected.txt: Added (made cross-platform)
  • platform/mac/accessibility/svg-bounds-expected.txt: Deleted
  • platform/mac/accessibility/svg-remote-element-expected.txt: Deleted
  • platform/chromium/TestExpectations: Updated
1:09 PM Changeset in webkit [138060] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

WebProcesses often crash if they access the network after a NetworkProcess crash.
<rdar://problem/12865789> and https://bugs.webkit.org/show_bug.cgi?id=105338

Reviewed by Alexey Proskuryakov.

After a NetworkProcess crash we should try to re-establish a connection to a new NetworkProcess
when it is needed.

If that attempt fails, then the WebProcess should "cleanly" crash.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::networkConnection):

1:06 PM Changeset in webkit [138059] by adamk@chromium.org
  • 5 edits in trunk

[HTMLTemplateElement] Prevent first-level recursive <template> from resetting the implied context
https://bugs.webkit.org/show_bug.cgi?id=104142

Reviewed by Eric Seidel.

Source/WebCore:

This patch adds a stack of InsertionModes retains the chosen
"implied context" for each template element.

Based on a patch by Rafael Weinstein.

Tests added to html5lib/run-template.html

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::HTMLTreeBuilder): Initialize the stack appropriately for HTMLTemplateElement.innerHTML.
(WebCore::HTMLTreeBuilder::processTemplateStartTag):
(WebCore::HTMLTreeBuilder::processTemplateEndTag):
(WebCore::HTMLTreeBuilder::processStartTag): Once we've figured out the insertion mode for a given <template> store it in the stack.
(WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
(WebCore::HTMLTreeBuilder::processEndTag):
(WebCore::HTMLTreeBuilder::processEndOfFile): Clear the stack if we hit end of file to allow the assertion in finish().
(WebCore::HTMLTreeBuilder::finished):

  • html/parser/HTMLTreeBuilder.h:

(HTMLTreeBuilder):

LayoutTests:

Added test that the original template context is retained after inner template.

  • html5lib/resources/template.dat:
1:02 PM Changeset in webkit [138058] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Build fix after r138045.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._collect_tests): Use relative_path. We skip only when this path
is not explicitly specified. The condition was backwards but never matched so we
always ran the test regardless of whether it's listed in the skipped list or not.

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(test_collect_tests_with_ignored_skipped_list): Renamed so that it actually runs.

12:58 PM Changeset in webkit [138057] by jpetsovits@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Clean up "frontState" vs. "geometry" naming confusion.
https://bugs.webkit.org/show_bug.cgi?id=105331
RIM PR 260232

Reviewed by Adam Treat.

The concept of the "front state" is going away or will be
marginalized/renamed, but I don't want to clutter upcoming
patches with renames. So do the variable renames in here,
once, and have future patches focus on actual behavior changes.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::shouldDirectRenderingToWindow):
(BlackBerry::WebKit::BackingStorePrivate::setBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesAfterBackingStoreRectChange):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::compositeContents):
(BlackBerry::WebKit::BackingStorePrivate::resetTiles):
(BlackBerry::WebKit::BackingStorePrivate::updateTiles):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesForScrollOrNotRenderedRegion):
(BlackBerry::WebKit::BackingStorePrivate::createSurfaces):

12:51 PM Changeset in webkit [138056] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Use midpoint for fixed position heuristic
https://bugs.webkit.org/show_bug.cgi?id=105329

Patch by Andrew Lo <anlo@rim.com> on 2012-12-18
Reviewed by Rob Buis.
Internally reviewed by Joe Mason.

Use the midpoint of the layer when determining whether the
fixed-position layer is on the top or bottom half of the screen
rather than the top of the layer.
Internal PR 237073.

No new tests are needed.

  • platform/graphics/blackberry/LayerRenderer.cpp:

(WebCore::LayerRenderer::updateLayersRecursive):

12:49 PM Changeset in webkit [138055] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Fixed position elements should be fixed position on x axis
https://bugs.webkit.org/show_bug.cgi?id=105333

Patch by Andrew Lo <anlo@rim.com> on 2012-12-18
Reviewed by Rob Buis.
Internally reviewed by Joe Mason.

Have fixed position elements be fixed on the X axis as well as Y.
This better aligns with what other ports are doing.
Internal PR237073.

No new tests are needed.

  • platform/graphics/blackberry/LayerRenderer.cpp:

(WebCore::LayerRenderer::updateLayersRecursive):

12:34 PM Changeset in webkit [138054] by nghanavatian@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Reduce calls to IMF on return
https://bugs.webkit.org/show_bug.cgi?id=105308

Reviewed by Yong Li.

PR207743
The extra calls of selection change and most importantly, end composition
are sent incorrectly on return. This is causing our state to be reset
every time we hit enter.

Internally reviewed by Mike Fenton and Gen Mak.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::InputHandler):
(BlackBerry::WebKit::InputHandler::nodeTextChanged):
(BlackBerry::WebKit::InputHandler::selectionChanged):
(BlackBerry::WebKit::InputHandler::handleKeyboardInput):
(BlackBerry::WebKit::InputHandler::shouldNotifyWebView):
(WebKit):

  • WebKitSupport/InputHandler.h:

(InputHandler):

12:20 PM Changeset in webkit [138053] by commit-queue@webkit.org
  • 2 edits in trunk

[BlackBerry] Add -fno-exceptions to CXX_FLAGS
https://bugs.webkit.org/show_bug.cgi?id=105306

Patch by Ming Xie <mxie@rim.com> on 2012-12-18
Reviewed by Rob Buis.

Disable exception handling. We don't have any try or catch
constructs in our code.

  • Source/cmake/OptionsBlackBerry.cmake:
12:18 PM Changeset in webkit [138052] by danakj@chromium.org
  • 2 edits in trunk/Source/Platform

[chromium] Make WebLayerTreeView::loseCompositorContext non-pure virtual
https://bugs.webkit.org/show_bug.cgi?id=105328

Reviewed by James Robinson.

This allows us to decouple the chromium and webkit sides and remove this
function entirely on each side.

  • chromium/public/WebLayerTreeView.h:

(WebKit::WebLayerTreeView::loseCompositorContext):

12:14 PM Changeset in webkit [138051] by simonjam@chromium.org
  • 2 edits in trunk/Source/WebCore

[Resource Timing] Populate responseEnd on cross-origin requests
https://bugs.webkit.org/show_bug.cgi?id=105231

Reviewed by Tony Gentilcore.

No new tests. Covered by existing cross-origin test, but masked by iframe bug.

  • page/PerformanceResourceTiming.cpp:

(WebCore::PerformanceResourceTiming::responseEnd):

12:07 PM Changeset in webkit [138050] by eae@chromium.org
  • 2 edits in trunk/Tools

TestWebKitAPI/Tests/WebCore/LayoutUnit fails on mac
https://bugs.webkit.org/show_bug.cgi?id=105332

Reviewed by Levi Weintraub.

Create new test suite for LayoutUnit tests as the KURL tests are
of the incompatible TEST_F type.

  • TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp:

(TestWebKitAPI):
(TestWebKitAPI::TEST_F):

11:58 AM Changeset in webkit [138049] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Enable media stream on Android for Chromium
https://bugs.webkit.org/show_bug.cgi?id=102545

Patch by Wei Jia <wjia@chromium.org> on 2012-12-18
Reviewed by Eric Seidel.

Put all webrtc related stuff under one flag "enable_webrtc" which is set to 1
on Linux/Windows/Mac and 0 on Android.

  • features.gypi:
11:47 AM Changeset in webkit [138048] by mvujovic@adobe.com
  • 2 edits in trunk/Source/ThirdParty/ANGLE

[ANGLE] Use of uninitialized memory in ArrayBoundsClamper
https://bugs.webkit.org/show_bug.cgi?id=105218

Reviewed by Dean Jackson.

TIntermBinary::addIndexClamp is uninitialized when the compile flag
SH_CLAMP_INDIRECT_ARRAY_BOUNDS is not set. Then, addIndexClamp is used in OutputGLSLBase.
CSS Shaders needs to do a first validation pass without the SH_CLAMP_INDIRECT_ARRAY_BOUNDS
flag and its effects. However, sometimes addIndexClamp is true, which inserts clamping code
that causes a shader to fail compilation at the WebGL level.

  • src/compiler/intermediate.h:

(TIntermBinary::TIntermBinary):

11:44 AM Changeset in webkit [138047] by commit-queue@webkit.org
  • 2 edits in trunk/Source/Platform

[chromium] Fix include style in WebTransformOperations.h
https://bugs.webkit.org/show_bug.cgi?id=105259

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

Changes include of WebTransformationMatrix.h from '#include <public/..h>' to '#include "....h". The latter
always works, since #include "foo.h" always finds foo.h in the same directory, and doesn't require all
downstream users of this header to have Source/Platform/chromium/ on the include path.

  • chromium/public/WebTransformOperations.h:
11:29 AM Changeset in webkit [138046] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after http://trac.webkit.org/changeset/138041

Need to cast int64_t to int32_t to avoid a warning on some compilers.

  • platform/LayoutUnit.h:

(WebCore::boundedMultiply):

11:15 AM Changeset in webkit [138045] by rniwa@webkit.org
  • 4 edits in trunk/Tools

Running a skipped test with run-perf-tests could alert the user
https://bugs.webkit.org/show_bug.cgi?id=105219

Reviewed by Eric Seidel.

Force run skipped performance tests explicitly specified in the command line.
Also warn the user when the specified paths don't exist.

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

(Port.relative_test_filename):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):
(PerfTestsRunner._collect_tests):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(test_collect_tests_with_skipped_list_and_files):

11:12 AM Changeset in webkit [138044] by commit-queue@webkit.org
  • 5 edits in trunk

Chrome Android java output is too verbose
https://bugs.webkit.org/show_bug.cgi?id=105247

Patch by Yaron Friedman <yfriedman@chromium.org> on 2012-12-18
Reviewed by Tony Chang.

Pass -quiet to ant to suppress extraneous output.

Source/WebKit/chromium:

  • WebKitUnitTests.gyp:

Tools:

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
  • TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
11:08 AM Changeset in webkit [138043] by commit-queue@webkit.org
  • 8 edits
    2 adds in trunk

[CSS Exclusions] shape-inside layout fails to adjust first line correctly for writing-mode: vertical-rl
https://bugs.webkit.org/show_bug.cgi?id=104419

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

Source/WebCore:

ExclusionShapes no longer maintain a private "internal" coordinate system,
they're now defined in logical coordinates. The createExclusionShape() method
now handles the one-time conversion from physical to logical coordinates.

Test: fast/exclusions/shape-inside/shape-inside-rounded-rectangle-fit-003.html

  • rendering/ExclusionPolygon.cpp:

(WebCore::ExclusionPolygon::getExcludedIntervals): Removed logical to internal coordinate conversions.
(WebCore::ExclusionPolygon::getIncludedIntervals): Ditto.
(WebCore::ExclusionPolygon::firstIncludedIntervalLogicalTop): Ditto.

  • rendering/ExclusionPolygon.h:
  • rendering/ExclusionRectangle.cpp:

(WebCore::ExclusionRectangle::getExcludedIntervals): Removed logical to internal coordinate conversions.
(WebCore::ExclusionRectangle::getIncludedIntervals): Ditto.
(WebCore::ExclusionRectangle::firstIncludedIntervalLogicalTop): Ditto.

  • rendering/ExclusionRectangle.h:
  • rendering/ExclusionShape.cpp:

(WebCore::physicalRectToLogical): Convert a FloatRect defined with coordinates to logical coordinates.
(WebCore::physicalPointToLogical): Similar.
(WebCore::physicalSizeToLogical): Simlar.
(WebCore::ExclusionShape::createExclusionShape): Convert shapes from physical to logical coordinates.

  • rendering/ExclusionShape.h:

(ExclusionShape): Removed internal to logical coordinate conversion utility methods.

LayoutTests:

For the vertical writing modes, verify that rounded rectangle shape-inside content is
adjusted in the logical down direction when it will not fit betwen the rounded corners.

  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-fit-003-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-fit-003.html: Added.
10:55 AM Changeset in webkit [138042] by rniwa@webkit.org
  • 6 edits in trunk/Tools

Consider removing --pause-before-testing option
https://bugs.webkit.org/show_bug.cgi?id=105248

Reviewed by Eric Seidel.

Remove --pause-before-testing option.

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

(DriverProxy.start): Removed.

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTest.init):
(PerfTest.test_path): Renamed from path_or_url.
(PerfTest.run):
(PerfTest): Removed "driver" argument.
(PerfTest._run_with_driver):
(PerfTest.run_single):
(ChromiumStylePerfTest.init):
(PageLoadingPerfTest.init):
(PageLoadingPerfTest.run_single):
(PageLoadingPerfTest._run_with_driver): Renamed from run so that PerfTest.run can create a driver for us.
(ReplayPerfTest.init):
(ReplayPerfTest.prepare):

  • Scripts/webkitpy/performance_tests/perftest_unittest.py:

(TestPageLoadingPerfTest.test_run):
(TestPageLoadingPerfTest.test_run_with_memory_output):
(TestPageLoadingPerfTest.test_run_with_bad_output):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):
(PerfTestsRunner._run_tests_set): Removed the code to create a driver and pause before running the test.
(PerfTestsRunner._run_single_test): Removed "driver" argument.

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(run_test):
(test_run_test_pause_before_testing): Removed.

10:46 AM Changeset in webkit [138041] by eae@chromium.org
  • 2 edits in trunk/Source/WebCore

Optimize LayoutUnit::boundedMultiply
https://bugs.webkit.org/show_bug.cgi?id=105216

Reviewed by Levi Weintraub.

LayoutUnit::boundedMultiply is used for multiplication that's
prone to overflow and for all LayoutUnit multiplication if
SATURATED_LAYOUT_ARITHMETIC is enabled. The current approach is
quite inefficient.

Change it to use a more efficient saturated multiplication
implementation. As the implementation needs to use
kFixedPointDenominator it is implemented in LayoutUnit.h instead
of in wtf/SaturatedArithmetic.h.

Test: Covered by TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp

  • platform/LayoutUnit.h:

(WebCore::boundedMultiply):

10:43 AM Changeset in webkit [138040] by commit-queue@webkit.org
  • 8 edits
    2 adds in trunk

[CSS Exclusions] Blocks should not re-use their parent's ExclusionShapeInsideInfo
if they participate in inline layout
https://bugs.webkit.org/show_bug.cgi?id=104582

Patch by Bear Travis <betravis@adobe.com> on 2012-12-18
Reviewed by Julien Chaffraix.

Source/WebCore:

Blocks that participate in inline layout should not re-use a parent's
ExclusionShapeInsideInfo, as the parent and child would both use the info for
layout at the same time. This patch alters LayoutState to not include
ExclusionShapeInsideInfo if the current block participates in inline layout (ie,
it is a float, inline-block, or inline-table).

Test: fast/exclusions/shape-inside/shape-inside-recursive-layout.html

  • rendering/ExclusionShapeInsideInfo.h:

(WebCore::ExclusionShapeInsideInfo::ownerBlock): Return the block associated with
the shape-inside style.

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState): Do not re-use ExclusionShapeInsideInfo
on a block that participates in inline layout (floats and inline blocks).

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::allowsExclusionShapeInsideInfoSharing): Returns whether the
block can re-use an ExclusionShapeInsideInfo from its parent block.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloatsInRange): Adding an assert to make sure
we do not overwrite ExclusionShapeInsideInfo's state during a recursive layout.

  • rendering/RenderView.h:

(WebCore::RenderView::pushLayoutState): Push a new LayoutState in the case that
ExclusionShapeInsideInfo exists but should not be propagated.

LayoutTests:

Test that recursive inline layouts work correctly.

  • fast/exclusions/resources/simple-rectangle.js:

(createRectangleTest): Remove extra ':' from pseudo-element.
(createRectangleTestResult): Ditto.

  • fast/exclusions/shape-inside/shape-inside-recursive-layout-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-recursive-layout.html: Added.
10:35 AM Changeset in webkit [138039] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Removing failures for a bunch of tests that are now passing due to
various reasons.

  • platform/gtk/TestExpectations:
10:32 AM Changeset in webkit [138038] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[GTK] Tests that time out are not considered as failures.
https://bugs.webkit.org/show_bug.cgi?id=105318

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

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunGtkAPITests.commandComplete):
Consider log lines that end with TIMEOUT as errors.

  • Scripts/run-gtk-tests:

(TestRunner.run_tests):
Consider timeouts as failures when returning the number of failed
tests.

10:23 AM Changeset in webkit [138037] by tony@chromium.org
  • 6 edits
    2 adds in trunk

REGRESSION(r136324): flex items with percent heights not resizing
https://bugs.webkit.org/show_bug.cgi?id=105213

Reviewed by Ojan Vafai.

Source/WebCore:

We were missing some of the logic for when to relayout a flex child. Refactor
the code in RenderBlock::layoutBlockChildren so we can use it in RenderFlexibleBox.

Test: css3/flexbox/flexitem-percent-height-change.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateNeedsLayoutAndPreferredLogicalWidthsDirtyBeforeBlockChildLayout):
Pull out logic needed by RenderFlexibleBox.
(WebCore::RenderBlock::layoutBlockChildren): Use helper method.

  • rendering/RenderBlock.h:

(RenderBlock): Add updateNeedsLayoutAndPreferredLogicalWidthsDirtyBeforeBlockChildLayout.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock): Pass through relayoutChildren bool.
(WebCore::RenderFlexibleBox::layoutFlexItems): Pass through relayoutChildren and mark the child as needing
layout if it has a percent height.
(WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes): We need to always layout here since we're
trying to get the preferred size.
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):

  • rendering/RenderFlexibleBox.h:

LayoutTests:

Add a test that changes the height of a flexbox with a percentage height child.

  • css3/flexbox/flexitem-percent-height-change-expected.txt: Added.
  • css3/flexbox/flexitem-percent-height-change.html: Added.
10:07 AM Changeset in webkit [138036] by Simon Fraser
  • 5 edits
    2 adds in trunk

Fix position:-webkit-sticky behavior when zoomed
https://bugs.webkit.org/show_bug.cgi?id=105251

Reviewed by Dean Jackson.

Source/WebCore:

Position sticky elements were misplaced when stickily-constrained, under zooming.
The cause was that some of the functions used to compute sticky position
took page scale into account, and some did not.

Fix by using localToContainerQuad(..., view()) to compute RenderView-relative
quads, which avoids page scale, so all the constraints math is done ignoring
page scale. This also requires that we compute a scale-free viewport rect
in stickyPositionOffset().

Test: fast/css/sticky/sticky-top-zoomed.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::computeStickyPositionConstraints):
(WebCore::RenderBoxModelObject::stickyPositionOffset):

LayoutTests:

Ref test for sticky elements in a zoomed page.

This test is marked as failing for WK1, because scrollbars always show on
zoomed pages and cannot be hidden there.

  • fast/css/sticky/sticky-top-zoomed-expected.html: Added.
  • fast/css/sticky/sticky-top-zoomed.html: Added.
  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
10:06 AM Changeset in webkit [138035] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: DataGrid cell values are "clipped" in editing mode.
https://bugs.webkit.org/show_bug.cgi?id=105277

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

UIUtils expects that "text-overflow" is not "ellipsis".

  • inspector/front-end/dataGrid.css:

(.data-grid td.editing > div): Override text-overflow for editing mode.

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

[Inspector] Add frameId for frame owner nodes.
https://bugs.webkit.org/show_bug.cgi?id=105317

Patch by Ken Kania <kkania@chromium.org> on 2012-12-18
Reviewed by Pavel Feldman.

This is needed to translate from a node ID to the execution context ID for
evaluating scripts in the associated frame.

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

(WebCore::InspectorDOMAgent::buildObjectForNode):

10:00 AM Changeset in webkit [138033] by commit-queue@webkit.org
  • 1 edit
    1 add in trunk

[EFL] Allow the build system to detect EGL support.
https://bugs.webkit.org/show_bug.cgi?id=105287

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-18
Reviewed by Laszlo Gombos.

Currently, we don't have any way to determine if EGL is supported by the build.
This patch adds support for this. The patch doesn't make any changes to take this into
use. This will be done in another patch.

  • Source/cmake/FindEGL.cmake:
9:55 AM Changeset in webkit [138032] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

[Qt] Fix the ARMv7 build after r137976
https://bugs.webkit.org/show_bug.cgi?id=105270

Reviewed by Csaba Osztrogonác.

Add default value for Jump parameter to fix build.

  • assembler/AbstractMacroAssembler.h:

(JSC::AbstractMacroAssembler::Jump::Jump):

9:32 AM Changeset in webkit [138031] by pravin.d@samsung.com
  • 2 edits in trunk/Tools

Unreviewed, adding secondary email.

9:29 AM Changeset in webkit [138030] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo] Compile fix.
https://bugs.webkit.org/show_bug.cgi?id=105175

Patch by peavo@outlook.com <peavo@outlook.com> on 2012-12-18
Reviewed by Simon Fraser.

  • rendering/RenderLayer.h: Compile fixes for USE(ACCELERATED_COMPOSITING) mismatch.
9:19 AM Changeset in webkit [138029] by pravin.d@samsung.com
  • 2 edits in trunk/Tools

Unreviewed, promoting myself to committer's list

9:18 AM Changeset in webkit [138028] by jpetsovits@rim.com
  • 6 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Remove the visible tile buffer from the BackingStore.
https://bugs.webkit.org/show_bug.cgi?id=105302
RIM PR 260232

Reviewed by George Staikos.

The visible tile buffer was introduced as an additional
buffering solution that was necessary because other
buffers would only cover part of the screen and could
only be swapped one by one, with long blocking calls
between each newly rendered tile. By carrying an old copy
of all tiles at once, we were avoiding checkerboard and
visual artifacts during load time when much zoom-to-fit
action is going on.

These days, the visual tile buffer hurts more than it helps,
not only taking up lots of memory but also requiring
complexity that we'd rather get rid of. Now that multiple
buffers are being swapped into the user interface thread
at once, the need for the visible tile buffer is no longer
there and can be exchanged for standard geometry behavior.

This patch simply deletes the visible tile buffer to use
existing other code instead. Differences in behavior are
non-existent or negligible.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::transformChanged):
(BlackBerry::WebKit::BackingStorePrivate::orientationChanged):
(BlackBerry::WebKit::BackingStorePrivate::createSurfaces):

  • Api/BackingStore_p.h:

(BackingStorePrivate):

  • Api/WebPage.cpp:

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

  • WebKitSupport/SurfacePool.cpp:

(BlackBerry::WebKit::SurfacePool::SurfacePool):
(BlackBerry::WebKit::SurfacePool::initialize):
(BlackBerry::WebKit::SurfacePool::createBuffers):
(BlackBerry::WebKit::SurfacePool::releaseBuffers):

  • WebKitSupport/SurfacePool.h:

(SurfacePool):

9:00 AM Changeset in webkit [138027] by thiago.santos@intel.com
  • 2 edits
    4 adds in trunk/LayoutTests

[EFL] Unreviewed gardening.

Added new baselines marked tests flaky due to Accessibility code
crashes.

  • platform/efl-wk2/TestExpectations:
  • platform/efl-wk2/editing/selection/move-by-character-6-expected.png: Added.
  • platform/efl-wk2/editing/selection/move-by-character-6-expected.txt: Added.
8:45 AM Changeset in webkit [138026] by eae@chromium.org
  • 7 edits
    2 deletes in trunk

Have kFixedPointDenominator be constant across ports
https://bugs.webkit.org/show_bug.cgi?id=104843

Source/WebCore:

Reviewed by Julien Chaffraix.

Currently the kFixedPointDenominator constant is set to either
64 or 1 depending on the SUBPIXEL_LAYOUT flag. As this constant
is used to limit the range of supported values this results in
inconsistencies across ports.

Change kFixedPointDenominator to always be 64 and introduce a
new constant (kEffectiveFixedPointDenominator) that varies.
This ensures that the same range of values are supported across
ports regardless of the SUBPIXEL_LAYOUT flag.

Covered by fast/css/large-numbers.html and fast/css/large-number-round-trip.html

  • platform/LayoutUnit.h:

Add kEffectiveFixedPointDenominator constant and change
LayoutUnit code to use it instead of kFixedPointDenominator
which is now set to 64 regardless of the SUBPIXEL_LAYOUT flag.

LayoutTests:

Reviewed by Julien Chaffraix.

Unskip the following tests on efl, qt and gtk:
fast/css/large-number-round-trip.html
fast/css/large-numbers.html

Remove platform specific results for large-number-round-trip.html.

  • fast/css/large-number-round-trip-expected.txt:
  • platform/chromium/fast/css/large-number-round-trip-expected.txt: Removed.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/fast/css/large-number-round-trip-expected.txt: Removed.
  • platform/qt/TestExpectations:
8:39 AM Changeset in webkit [138025] by commit-queue@webkit.org
  • 6 edits in trunk

Unreviewed, rolling out r137979.
http://trac.webkit.org/changeset/137979
https://bugs.webkit.org/show_bug.cgi?id=105311

nodeName returned by the inspector protocol commands should
match one accessible fro JS (Requested by yurys_ on #webkit).

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

Source/WebCore:

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):

LayoutTests:

  • inspector/elements/shadow-dom-modify-chardata-expected.txt:
  • inspector/elements/shadow-root-expected.txt:
  • inspector/elements/shadow-root.html:
8:37 AM Changeset in webkit [138024] by jpetsovits@rim.com
  • 11 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Restructure the render queue to process multiple tiles at once.
https://bugs.webkit.org/show_bug.cgi?id=105199
RIM PR 260232

Reviewed by George Staikos.
Internally reviewed by Arvid Nilsson.

Since my last big commit, r136442, the BackingStore's render()
function is able to fetch multiple back buffers and swap them
into the user interface thread in one go. However, it turns out
that this is not enough to actually render to all of the
available back buffers at once. The RenderQueue class was still
working with a model based on processing one rectangle after
another.

This commit rewrites large parts of RenderQueue to issue
render() calls for multiple tiles at once. As WebCore painting
gets cheaper and blocking becomes more of an issue, this commit
does away with paints smaller than tile size and always renders
whole tiles at once. This means the demise of RenderRect.
As an additional benefit, this means we can remove the
copyPreviousContentsToTileBuffer() function which caused
potential threading issues as it was accessing a buffer
now owned by the UI thread from the WebKit thread.

RenderQueue is also smarter than before in assigning batches,
it now takes into account the number of available back buffers
for rendering as well as excludes tiles outside contents
boundaries. Regular render jobs continue being tracked as
regions (and are being issued to didRenderContent()) with only
the changed content regions. Everything else switches over to
tile index lists from previously lists of rectangles.
By default, we render as many tiles at once as we can grab
back buffers, or until a given set of jobs is done.
For high-priority jobs, render() will be called in a loop.

To allow for the necessary changes in render() and improve
reliability in the same go, we now call render() almost
exclusively through RenderQueue. Other places would often
call renderVisibleContents() in situations where rendering
is not possible, geometries don't get updated, or content
rendered notifications would not get issued to the client.
By replacing renderVisibleContents() with a scheduled
high-priority queue that's immediately being processed
(but only if possible), these problems go away.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::resumeScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::slowScroll):
(BlackBerry::WebKit::BackingStorePrivate::renderJob):
(BlackBerry::WebKit::BackingStorePrivate::setBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesAfterBackingStoreRectChange):
(BlackBerry::WebKit::BackingStorePrivate::indexesForBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::clearAndUpdateTileOfNotRenderedRegion):
(BlackBerry::WebKit::BackingStorePrivate::isCurrentVisibleJob):
(BlackBerry::WebKit::BackingStorePrivate::renderDirectToWindow):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::renderAndBlitVisibleContentsImmediately):
(BlackBerry::WebKit::BackingStorePrivate::renderAndBlitImmediately):
(BlackBerry::WebKit::BackingStorePrivate::paintDefaultBackground):
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::compositeContents):
(BlackBerry::WebKit::BackingStorePrivate::visibleTileIndexes):
(BlackBerry::WebKit::BackingStorePrivate::resetTiles):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesForScrollOrNotRenderedRegion):
(BlackBerry::WebKit::BackingStorePrivate::updateTile):
(BlackBerry::WebKit::BackingStorePrivate::transformChanged):
(BlackBerry::WebKit::BackingStorePrivate::didRenderContent):

  • Api/BackingStore_p.h:

(BackingStorePrivate):

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setLoadState):
(BlackBerry::WebKit::WebPagePrivate::zoomAboutPoint):
(BlackBerry::WebKit::WebPagePrivate::resumeBackingStore):

  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositorPrivate::animationFrameChanged):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidLayout):

  • WebKitSupport/RenderQueue.cpp:

(BlackBerry::WebKit::compareRectOneDirection):
(BlackBerry::WebKit::tileIndexIsLessThan):
(WebKit):
(BlackBerry::WebKit::tileIndexLessThanFunction):
(BlackBerry::WebKit::TileIndexLessThan::TileIndexLessThan):
(BlackBerry::WebKit::TileIndexLessThan::operator()):
(TileIndexLessThan):
(BlackBerry::WebKit::RenderQueue::reset):
(BlackBerry::WebKit::RenderQueue::isEmpty):
(BlackBerry::WebKit::RenderQueue::hasCurrentRegularRenderJob):
(BlackBerry::WebKit::RenderQueue::hasCurrentVisibleZoomJob):
(BlackBerry::WebKit::RenderQueue::hasCurrentVisibleScrollJob):
(BlackBerry::WebKit::RenderQueue::isCurrentVisibleZoomJob):
(BlackBerry::WebKit::RenderQueue::isCurrentVisibleZoomJobCompleted):
(BlackBerry::WebKit::RenderQueue::isCurrentVisibleScrollJob):
(BlackBerry::WebKit::RenderQueue::isCurrentVisibleScrollJobCompleted):
(BlackBerry::WebKit::RenderQueue::isCurrentRegularRenderJob):
(BlackBerry::WebKit::RenderQueue::tileIndexesIntersectingRegion):
(BlackBerry::WebKit::RenderQueue::tileIndexesFullyContainedInRegion):
(BlackBerry::WebKit::RenderQueue::tileRegion):
(BlackBerry::WebKit::RenderQueue::addToQueue):
(BlackBerry::WebKit::RenderQueue::addToRegularQueue):
(BlackBerry::WebKit::RenderQueue::addToScrollZoomQueue):
(BlackBerry::WebKit::RenderQueue::quickSort):
(BlackBerry::WebKit::RenderQueue::visibleContentChanged):
(BlackBerry::WebKit::RenderQueue::backingStoreRectChanging):
(BlackBerry::WebKit::RenderQueue::clear):
(BlackBerry::WebKit::RenderQueue::clearRegions):
(BlackBerry::WebKit::RenderQueue::clearTileIndexes):
(BlackBerry::WebKit::RenderQueue::render):
(BlackBerry::WebKit::RenderQueue::renderRegularRenderJobs):
(BlackBerry::WebKit::RenderQueue::renderScrollZoomJobs):
(BlackBerry::WebKit::RenderQueue::scrollZoomJobsCompleted):

  • WebKitSupport/RenderQueue.h:

(WebKit):
(RenderQueue):

  • WebKitSupport/SurfacePool.cpp:

(BlackBerry::WebKit::SurfacePool::numberOfAvailableBackBuffers):
(BlackBerry::WebKit::SurfacePool::takeBackBuffer):

  • WebKitSupport/SurfacePool.h:

(SurfacePool):

  • WebKitSupport/TileIndex.h:

(WebKit):

8:06 AM Changeset in webkit [138023] by wjmaclean@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed gardening: marking test as flaky on Linux Dbg bot.
http://webkit.org/b/86114

Unreviewed gardening.

  • platform/chromium/TestExpectations:
7:55 AM Changeset in webkit [138022] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Styles] Selector matches are not marked after property editing
https://bugs.webkit.org/show_bug.cgi?id=105284

Reviewed by Vsevolod Vlasov.

Once a property edit is committed, the selector markup is reset and needs to be re-applied.

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertiesSection.prototype.update):

7:53 AM Changeset in webkit [138021] by kerz@chromium.org
  • 20 edits
    4 deletes in branches/chromium/1364

Revert 137939

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.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11612021

7:52 AM Changeset in webkit [138020] by kerz@chromium.org
  • 1 copy in branches/chromium/1364/codereview.settings

Fix drover

7:49 AM Changeset in webkit [138019] by thiago.santos@intel.com
  • 3 edits
    1 move
    2 adds in trunk/Tools

[EFL] ImageDiff does not build on WebKit2 only builds
https://bugs.webkit.org/show_bug.cgi?id=105288

Reviewed by Kenneth Rohde Christiansen.

Moved ImageDiff to the efl/ folder inside Tools/ (so we don't pollute
the folder with things which are EFL-specific.

ImageDiff will be built by default now regardless of WebKit API flavor
you choose.

  • CMakeLists.txt:
  • DumpRenderTree/efl/CMakeLists.txt:
  • efl/ImageDiff/CMakeLists.txt: Added.
  • efl/ImageDiff/ImageDiff.cpp: Renamed from Tools/DumpRenderTree/efl/ImageDiff.cpp.
7:48 AM Changeset in webkit [138018] by kerz@chromium.org
  • 1 copy in branches/chromium/1364

Branch for Chromium

7:23 AM Changeset in webkit [138017] by eric.carlson@apple.com
  • 16 edits
    2 adds in trunk

Add in-band text track cues only once
https://bugs.webkit.org/show_bug.cgi?id=104593

Reviewed by Dean Jackson.

Source/WebCore:

Test: media/track/track-in-band-cues-added-once.html

  • html/track/InbandTextTrack.cpp:

(WebCore::InbandTextTrack::hasCue): New.

  • html/track/InbandTextTrack.h:
  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::setCueSettings): Remember the raw cue settings so they can be accessed later.

  • html/track/TextTrackCue.h:
  • platform/graphics/InbandTextTrackPrivateClient.h: Declare hasCue.
  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::processCue): Early return if m_player has been cleared.
(WebCore::InbandTextTrackPrivateAVF::setMode): Ditto.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::seek): Clear the partially accumulated cue when the seek

starts, not when it completes.

(WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Ditto.
(WebCore::MediaPlayerPrivateAVFoundation::flushCurrentCue): Don't add a cue if it is already in the

text track cue list.

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::clearTextTracks): Drive-by cleanup, clear the track list completely.

LayoutTests:

Test to ensure that in-band text track cues are not added to the the cue list more than once.

  • media/track/track-in-band-cues-added-once-expected.txt: Added.
  • media/track/track-in-band-cues-added-once.html: Added.
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
7:01 AM Changeset in webkit [138016] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Network] Ordering of cookies displayed is nondeterministic.
https://bugs.webkit.org/show_bug.cgi?id=105272

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

This patch fixes double-selection of request and sets default ordering
of cookies.

  • inspector/front-end/CookiesTable.js: By default sort by name.
  • inspector/front-end/NetworkPanel.js: Do not fire "select" on

mouse-click in viewing-request mode.

6:42 AM Changeset in webkit [138015] by kenneth@webkit.org
  • 2 edits in trunk/Tools

[EFL][WK2] When creating new windows, use the opener's context
https://bugs.webkit.org/show_bug.cgi?id=105283

Reviewed by Laszlo Gombos.

Use the context of the opener if exists.

  • MiniBrowser/efl/main.c:

(on_key_down):
(on_window_create):
(window_create):
(elm_main):

5:53 AM Changeset in webkit [138014] by thiago.santos@intel.com
  • 2 edits in trunk/LayoutTests

[WK2] Unreviewed gardening.

Fixed malformed entry on the WK2 expectations file.

  • platform/wk2/TestExpectations:
5:42 AM Changeset in webkit [138013] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r138011.
http://trac.webkit.org/changeset/138011
https://bugs.webkit.org/show_bug.cgi?id=105272

WebInspector: Broke request selection in the Network panel

  • inspector/front-end/CookiesTable.js:

(WebInspector.CookiesTable):

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkPanel.prototype._toggleGridMode):
(WebInspector.NetworkPanel.prototype._toggleViewingRequestMode):
(WebInspector.NetworkDataGridNode.prototype.createCells):
(WebInspector.NetworkDataGridNode.prototype.get selectable):

5:04 AM Changeset in webkit [138012] by Nate Chapin
  • 3 edits in trunk/Source/WebCore

REGRESSION (r137607): Cannot download files, stuck in “Preparing to download”
https://bugs.webkit.org/show_bug.cgi?id=105044

Reviewed by Antti Koivisto.

The work done by DocumentLoader::mainReceivedError() changed subtly in r137607,
such that it cancels the ResourceHandle. We want to treat switching to a download
like a failure, where WebCore assumes that the load is finished, and no
cancellation is required.

No new tests, tested manually by verifying that downloading files works in
Safari Mac.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::continueAfterContentPolicy):

  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::cancel): Remove the workaround added in r137763.

4:57 AM Changeset in webkit [138011] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Network] Ordering of cookies displayed is nondeterministic.
https://bugs.webkit.org/show_bug.cgi?id=105272

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-18
Reviewed by Alexander Pavlov.

This patch fixes double-selection of request and sets default ordering
of cookies.

  • inspector/front-end/CookiesTable.js: By default sort by name.
  • inspector/front-end/NetworkPanel.js: Remove redundant member, make

rows "not-selectable", activate request selection on "mouse-down".

4:49 AM Changeset in webkit [138010] by loislo@chromium.org
  • 2 edits
    1 copy in trunk/LayoutTests

Unreviewed rebaseline new test introdiced at r138003

  • inspector-protocol/media-query-listener-exception-expected.txt:
  • platform/chromium/inspector-protocol/media-query-listener-exception-expected.txt: Copied from LayoutTests/inspector-protocol/media-query-listener-exception-expected.txt.
4:19 AM Changeset in webkit [138009] by thiago.santos@intel.com
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening

Skipped some accessibility because of missing bits on EFL.

  • platform/efl-wk2/TestExpectations:
4:07 AM Changeset in webkit [138008] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

[JSC] Refactoring CodeGeneratorJS.pm to simplify adding support for overloaded constructors
https://bugs.webkit.org/show_bug.cgi?id=105271

Patch by Tommy Widenflycht <tommyw@chromium.org> on 2012-12-18
Reviewed by Kentaro Hara.

This patch splits the very large function that generates constructor code into a few smaller ones.
No changes in actual generated code but some functions in the generated bindings code moves.

Existing tests cover patch.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
(GenerateConstructorDefinitions):
(GenerateConstructorDefinition):
(GenerateConstructorSupportDefinitions):
(IsCustomConstructable):
(IsConstructable):

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

(WebCore::JSFloat64ArrayConstructor::constructJSFloat64Array):
(WebCore):
(WebCore::toJS):
(WebCore::JSFloat64Array::indexSetter):

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

(WebCore):
(WebCore::JSTestEventConstructorConstructor::JSTestEventConstructorConstructor):
(WebCore::JSTestEventConstructorConstructor::finishCreation):
(WebCore::JSTestEventConstructorConstructor::getOwnPropertySlot):
(WebCore::JSTestEventConstructorConstructor::getOwnPropertyDescriptor):

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

(WebCore::JSTestInterfaceConstructor::constructJSTestInterface):
(WebCore):

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

(WebCore):
(WebCore::JSTestNamedConstructorNamedConstructor::JSTestNamedConstructorNamedConstructor):
(WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):

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

(WebCore::JSTestNodeConstructor::constructJSTestNode):
(WebCore):

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

(WebCore::JSTestObjConstructor::constructJSTestObj):
(WebCore):

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

(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors):
(WebCore):

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

(WebCore::JSTestSerializedScriptValueInterfaceConstructor::constructJSTestSerializedScriptValueInterface):
(WebCore):

3:58 AM Changeset in webkit [138007] by thiago.santos@intel.com
  • 3 edits in trunk/Tools

[EFL][WK2] Gardening of TestWebKitAPI tests
https://bugs.webkit.org/show_bug.cgi?id=105268

Reviewed by Kenneth Rohde Christiansen.

Some tests were marked as failing but are passing and the newly added
LayoutUnit should have it's own binary because it conflicts with the
fixture used by KURL and is failing on the bots because of that.

  • TestWebKitAPI/CMakeLists.txt:
  • TestWebKitAPI/PlatformEfl.cmake:
3:57 AM Changeset in webkit [138006] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Add support for setMuted() for media
https://bugs.webkit.org/show_bug.cgi?id=105254

Patch by Max Feil <mfeil@rim.com> on 2012-12-18
Reviewed by George Staikos.

Simply pass the API call through to the platform layer.

Covered by existing tests.

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:

(WebCore::MediaPlayerPrivate::setMuted):
(WebCore):
(WebCore::MediaPlayerPrivate::muted):

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:

(MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::supportsMuting):

3:46 AM Changeset in webkit [138005] by yurys@chromium.org
  • 10 edits in trunk/Source

Web Inspector: show cached images under MemoryCache -> Images section
https://bugs.webkit.org/show_bug.cgi?id=105261

Reviewed by Pavel Feldman.

Source/WebCore:

Provided class name and name for several objects related to CachedImage.
Changed native memory snapsho view so that MemoryCache.Image section can
be expanded into individual images.

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeMemorySnapshotView):
(WebInspector.NativeSnapshotNode.prototype._addChildrenFromGraph):
(WebInspector.NativeHeapGraphEdge):
(WebInspector.NativeHeapGraphEdge.prototype.type):
(WebInspector.NativeHeapGraphEdge.prototype.name):
(WebInspector.NativeHeapGraphEdge.prototype.target):
(WebInspector.NativeHeapGraphEdge.prototype._getStringField):
(WebInspector.NativeHeapGraphEdge.prototype.toString):
(WebInspector.NativeHeapGraphNode.prototype.size):
(WebInspector.NativeHeapGraphNode.prototype.referencedNodes):
(WebInspector.NativeHeapGraphNode.prototype.outgoingEdges):
(WebInspector.NativeHeapGraphNode.prototype.targetOfEdge):
(WebInspector.NativeHeapGraphNode.prototype.targetsOfAllEdges):
(WebInspector.NativeHeapGraphNode.prototype._firstEdgePoistion):
(WebInspector.NativeHeapGraphNode.prototype._afterLastEdgePosition):
(WebInspector.NativeHeapGraphNode.prototype._getStringField):
(WebInspector.NativeHeapGraphNode.prototype.toString):
(WebInspector.NativeHeapGraph):
(WebInspector.NativeHeapGraph.prototype.rootNodes):
(WebInspector.NativeHeapGraph.prototype._calculateNodeEdgeIndexes):
(WebInspector.NativeHeapGraph.prototype._addDummyNode):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked.didReceiveMemorySnapshot):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::reportMemoryUsage):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::reportMemoryUsage):

  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::reportMemoryUsage):

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::reportMemoryUsage):
(WebCore::FrameData::reportMemoryUsage):

  • platform/graphics/Image.cpp:

(WebCore::Image::reportMemoryUsage):

  • platform/graphics/skia/MemoryInstrumentationSkia.cpp:

(reportMemoryUsage):

Source/WTF:

Use first provided name and class name. If one of the ancestors tries to overwrite
it just ignore the call.

  • wtf/MemoryObjectInfo.h:

(WTF::MemoryObjectInfo::setClassName):
(WTF::MemoryObjectInfo::setName):

3:43 AM Changeset in webkit [138004] by caseq@chromium.org
  • 14 edits in trunk/Source/WebCore

Web Inspector: Calculate "idle" time for CPU profiles.
https://bugs.webkit.org/show_bug.cgi?id=103120

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

CPU profiles contain a very confusing "(program)" item.
It is time when there is no JS stack.
That could be either idle time, or time when browser is doing something.

To split "(program)" item to idle and really program time we are to
calculate idle time during profiling.

  • bindings/js/ScriptProfile.cpp: Added "idleTime" getter.
  • bindings/js/ScriptProfile.h: Ditto.
  • bindings/js/ScriptProfiler.h:

Added getter of thread-local map of currently written profiles.

  • bindings/v8/ScriptProfile.cpp: Added "idleTime" getter.
  • bindings/v8/ScriptProfile.h: Ditto.
  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::start): Put profile name to map.
(WebCore::ScriptProfiler::stop): Remove profile name from map;
pass idleTime to profile constructor.

  • bindings/v8/ScriptProfiler.h:

Added getter of thread-local map of currently written profiles.

  • inspector/Inspector.json: Added "idleTime" field to profile.
  • inspector/InspectorController.cpp: Pass hooks to profiler agent.
  • inspector/InspectorProfilerAgent.cpp:

Add idle time to currently written profiles.

  • inspector/InspectorProfilerAgent.h:

Added member to hold reference to map of currently written profiles.

  • inspector/InspectorTimelineAgent.h:

Cleanup.

  • inspector/ScriptProfile.idl:

Add "idleTime" member.

2:47 AM Changeset in webkit [138003] by yurys@chromium.org
  • 7 edits
    2 adds in trunk

Web Inspector: MediaQueryList listener silently catches errors
https://bugs.webkit.org/show_bug.cgi?id=105162

Reviewed by Alexander Pavlov.

Source/WebCore:

Drive-by: removed unused ScriptCallback::call(bool).

Test: inspector-protocol/media-query-listener-exception.html

  • bindings/js/ScriptFunctionCall.cpp:

(WebCore::ScriptCallback::call):

  • bindings/js/ScriptFunctionCall.h:

(ScriptCallback):

  • bindings/v8/ScriptFunctionCall.cpp: report uncaught exception to the inspector

if it was thrown during the function call.
(WebCore::ScriptCallback::call):

  • bindings/v8/ScriptFunctionCall.h:

(ScriptCallback):

LayoutTests:

Test that uncaught exception in MediaQueryListListener will be logged to the console.

  • http/tests/inspector-protocol/resources/protocol-test.js:

(runTest):

  • inspector-protocol/media-query-listener-exception-expected.txt: Added.
  • inspector-protocol/media-query-listener-exception.html: Added.
2:40 AM Changeset in webkit [138002] by dominik.rottsches@intel.com
  • 2 edits in trunk/LayoutTests

webaudio/oscillator* tests should use OfflineAudioContext
https://bugs.webkit.org/show_bug.cgi?id=105174

Reviewed by Kentaro Hara.

webaudio/oscillator* tests were using the slower webkitAudioContext for output rendering.
Replacing the usage with webkitOfflineAudioContext allows for faster-than-realtime rendering
in testing. Also, it avoids a deprecation warning on the console.

  • webaudio/resources/oscillator-testing.js: Replace usage of webkitAudioContext with webkitOfflineAudioContext

(generateExponentialOscillatorSweep):

2:37 AM WebInspector edited by abecsi@webkit.org
Remove spam. (diff)
2:07 AM Changeset in webkit [138001] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

Unreviewed gardening.

  • platform/qt-5.0-wk2/fast/text/zero-font-size-expected.txt: Updated.
  • platform/wk2/TestExpectations: Skip a new failing test.
2:03 AM Changeset in webkit [138000] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Network: display JavaScript stack in case of script initiator.
https://bugs.webkit.org/show_bug.cgi?id=104899

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

Show popup with navigavle stack-trace.

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkLogView.prototype._getPopoverAnchor):
Added new target.
(WebInspector.NetworkLogView.prototype._showPopover):
Added case for new target.
(WebInspector.NetworkLogView.prototype._generateScriptInitiatedPopoverContent):
Generates table with stack trace items.
(WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
Added target marker, removed annoying titles.

1:56 AM Changeset in webkit [137999] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Style fix to OpenCL SVG Filters
https://bugs.webkit.org/show_bug.cgi?id=105265

Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2012-12-18
Reviewed by Zoltan Herczeg.

Inserted missing spaces and correct copyright text. There were no vital changes.

  • platform/graphics/gpu/opencl/FilterContextOpenCL.cpp:

(WebCore):

  • platform/graphics/gpu/opencl/FilterContextOpenCL.h:

(FilterContextOpenCL):

  • platform/graphics/gpu/opencl/OpenCLFEColorMatrix.cpp:

(WebCore::FilterContextOpenCL::applyFEColorMatrix):

  • platform/graphics/gpu/opencl/OpenCLFETurbulence.cpp:

(WebCore):
(WebCore::FilterContextOpenCL::compileFETurbulence):
(WebCore::FilterContextOpenCL::applyFETurbulence):
(WebCore::FETurbulence::platformApplyOpenCL):

  • platform/graphics/gpu/opencl/OpenCLHandle.h:
1:46 AM WebInspector edited by mousewiki@yahoo.com
(diff)
1:42 AM Changeset in webkit [137998] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

Rebaselining a test after r137953.

Patch by Szilard Ledan <Szilárd LEDÁN> on 2012-12-18

  • platform/qt/editing/selection/move-by-character-6-expected.txt:
1:05 AM Changeset in webkit [137997] by jochen@chromium.org
  • 10 edits in trunk/Tools

[chromium] move webintent related methods to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=105164

Reviewed by Darin Fisher.

Also deleted the unused deliveredIntentFailure and
deliveredIntentResult methods.

  • DumpRenderTree/chromium/DRTTestRunner.cpp:

(DRTTestRunner::DRTTestRunner):

  • DumpRenderTree/chromium/DRTTestRunner.h:

(DRTTestRunner):

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

(WebKit):
(WebTestRunner::WebTestDelegate::setCurrentWebIntentRequest):
(WebTestRunner::WebTestDelegate::currentWebIntentRequest):

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

(WebKit):
(WebTestProxyBase):
(WebTestRunner::WebTestProxy::registerIntentService):
(WebTestRunner::WebTestProxy::dispatchIntent):

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

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::sendWebIntentResponse):
(WebTestRunner):
(WebTestRunner::TestRunner::deliverWebIntent):

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

(TestRunner):

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

(WebTestRunner::WebTestProxyBase::postAccessibilityNotification):
(WebTestRunner::WebTestProxyBase::registerIntentService):
(WebTestRunner):
(WebTestRunner::WebTestProxyBase::dispatchIntent):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::setCurrentWebIntentRequest):
(WebViewHost::currentWebIntentRequest):

  • DumpRenderTree/chromium/WebViewHost.h:

(WebKit):
(WebViewHost):

1:02 AM Changeset in webkit [137996] by aandrey@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [WebGL] handle video elements used in WebGL
https://bugs.webkit.org/show_bug.cgi?id=105170

Reviewed by Yury Semikhatsky.

Copy current image of video elements into a canvas to use it later in the replay.

  • inspector/InjectedScriptCanvasModuleSource.js:

(.):

12:45 AM Changeset in webkit [137995] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Rebaselining a test after r137953.
Adding back failure expectations for SVG viewspec tests after the rollout in r137947.
Enhancing failure expectation for a slow HTTP multipart test that can pass,
fail or timeout.

  • platform/gtk/TestExpectations:
  • platform/gtk/editing/selection/move-by-character-6-expected.txt:
12:37 AM Changeset in webkit [137994] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Implement uncommitted memory for Linux.
https://bugs.webkit.org/show_bug.cgi?id=65766

Patch by Uli Schlachter <psychon@znc.in> on 2012-12-18
Reviewed by Simon Hausmann.

The old approach used MAP_NORESERVE to allocate address space without
committing it. However, that flag gets ignored if
/proc/sys/vm/overcommit_memory is set to 2. The new approach uses a
mapping with PROT_NONE. This works because mappings which aren't even
readable don't get accounted as committed on Linux.

  • wtf/OSAllocatorPosix.cpp:

(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::reserveAndCommit):
(WTF::OSAllocator::commit):
(WTF::OSAllocator::decommit):

12:25 AM Changeset in webkit [137993] by jochen@chromium.org
  • 13 edits
    1 copy in trunk/Tools

[chromium] move editing callback dumping to the WebTestProxy
https://bugs.webkit.org/show_bug.cgi?id=105013

Reviewed by Darin Fisher.

To decide whether or not to dump the editing callbacks, the WebTestProxy
needs to query the TestRunner. For this purpose, I introduce a
WebTestRunner class that just exposes the shouldDumpEditingCallbacks
method. In contrast to e.g. WebEventSender, the WebTestRunner is just
an interface, and it is not owned by the WebTestInterfaces, but the
embedder of the TestRunner library must provide it. This will change
once all TestRunner methods are in the library.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/DRTTestRunner.cpp:

(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::reset):

  • DumpRenderTree/chromium/DRTTestRunner.h:

(DRTTestRunner):
(DRTTestRunner::taskList):
(DRTTestRunner::WorkQueue::taskList):

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

(WebTestRunner):
(WebTestInterfaces):

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

(WebKit):
(WebTestRunner):
(WebTestProxyBase):
(WebTestRunner::WebTestProxy::shouldBeginEditing):
(WebTestRunner::WebTestProxy::shouldEndEditing):
(WebTestRunner::WebTestProxy::shouldInsertNode):
(WebTestRunner::WebTestProxy::shouldInsertText):
(WebTestRunner::WebTestProxy::shouldChangeSelectedRange):
(WebTestRunner::WebTestProxy::shouldDeleteRange):
(WebTestRunner::WebTestProxy::shouldApplyStyle):
(WebTestRunner::WebTestProxy::didBeginEditing):
(WebTestRunner::WebTestProxy::didChangeSelection):
(WebTestRunner::WebTestProxy::didChangeContents):
(WebTestRunner::WebTestProxy::didEndEditing):

  • DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h: Copied from Tools/DumpRenderTree/chromium/TestRunner/public/WebTestInterfaces.h.

(WebTestRunner):
(WebTestRunner::WebTestRunner::shouldDumpEditingCallbacks):

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

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::~TestRunner):
(WebTestRunner):
(WebTestRunner::TestRunner::reset):
(WebTestRunner::TestRunner::shouldDumpEditingCallbacks):
(WebTestRunner::TestRunner::dumpEditingCallbacks):

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

(TestRunner):

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

(WebTestRunner::WebTestInterfaces::Internal::testRunner):
(WebTestRunner::WebTestInterfaces::Internal::setTestRunner):
(WebTestInterfaces::Internal):
(WebTestRunner::WebTestInterfaces::Internal::Internal):
(WebTestRunner::WebTestInterfaces::testRunner):
(WebTestRunner):
(WebTestRunner::WebTestInterfaces::setTestRunner):

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

(WebTestRunner::WebTestProxyBase::postAccessibilityNotification):
(WebTestRunner):
(WebTestRunner::WebTestProxyBase::shouldBeginEditing):
(WebTestRunner::WebTestProxyBase::shouldEndEditing):
(WebTestRunner::WebTestProxyBase::shouldInsertNode):
(WebTestRunner::WebTestProxyBase::shouldInsertText):
(WebTestRunner::WebTestProxyBase::shouldChangeSelectedRange):
(WebTestRunner::WebTestProxyBase::shouldDeleteRange):
(WebTestRunner::WebTestProxyBase::shouldApplyStyle):
(WebTestRunner::WebTestProxyBase::didBeginEditing):
(WebTestRunner::WebTestProxyBase::didChangeSelection):
(WebTestRunner::WebTestProxyBase::didChangeContents):
(WebTestRunner::WebTestProxyBase::didEndEditing):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::initialize):
(TestShell::createNewWindow):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::shouldBeginEditing):
(WebViewHost::shouldEndEditing):
(WebViewHost::shouldInsertNode):
(WebViewHost::shouldInsertText):
(WebViewHost::shouldChangeSelectedRange):
(WebViewHost::shouldDeleteRange):
(WebViewHost::shouldApplyStyle):

  • DumpRenderTree/chromium/WebViewHost.h:

(WebViewHost):

Note: See TracTimeline for information about the timeline view.