WebKit-https.git
9 years agoAdd performance tests for DOM attribute getters and setters
haraken@chromium.org [Fri, 24 Feb 2012 08:55:59 +0000 (08:55 +0000)]
Add performance tests for DOM attribute getters and setters
https://bugs.webkit.org/show_bug.cgi?id=79208

Reviewed by Ryosuke Niwa.

PerformanceTests:

This patch adds performance micro-benchmarks for DOM attribute
getters and setters. We selected DOM attributes from HTMLElement,
Element and Node which will most impact on the DOM performance
in the real Web and which have different call-paths from another
DOM attribute.

The perf test result in my local Chromium/Linux environment is as follows:
median= 14967.0 ms, stdev= 85.2385476178 ms, min= 14861.0 ms, max= 15155.0 ms

If we run the test with DumpRenderTree, we can get the following test results:
Info: [HTMLElement.id] avg=65.76ms, median=65.00ms, stdev=2.14ms, min=63, max=70
Info: [HTMLElement.title] avg=64.05ms, median=63.00ms, stdev=1.50ms, min=63, max=67
Info: [HTMLElement.lang] avg=64.19ms, median=63.00ms, stdev=1.82ms, min=62, max=67
Info: [HTMLElement.dir] avg=64.10ms, median=63.00ms, stdev=1.72ms, min=62, max=68
Info: [HTMLElement.className] avg=63.33ms, median=63.00ms, stdev=0.89ms, min=63, max=67
Info: [HTMLElement.classList] avg=1946.00ms, median=1945.00ms, stdev=38.22ms, min=1921, max=2110
Info: [HTMLElement.tabIndex] avg=83.52ms, median=80.00ms, stdev=6.00ms, min=79, max=94
Info: [HTMLElement.draggable] avg=78.14ms, median=81.00ms, stdev=3.51ms, min=74, max=82
Info: [HTMLElement.webkitdropzone] avg=64.33ms, median=63.00ms, stdev=1.98ms, min=63, max=68
Info: [HTMLElement.hidden] avg=65.57ms, median=64.00ms, stdev=3.27ms, min=63, max=71
Info: [HTMLElement.accessKey] avg=64.43ms, median=63.00ms, stdev=2.11ms, min=62, max=68
Info: [HTMLElement.children] avg=130.76ms, median=128.00ms, stdev=9.75ms, min=109, max=143
Info: [HTMLElement.isContentEditable] avg=74.29ms, median=75.00ms, stdev=2.00ms, min=71, max=77
Info: [HTMLElement.spellcheck] avg=79.52ms, median=80.00ms, stdev=2.52ms, min=76, max=82
Info: [HTMLElement.innerHTML] avg=279.05ms, median=279.00ms, stdev=1.96ms, min=276, max=283
Info: [HTMLElement.innerText] avg=204.14ms, median=203.00ms, stdev=2.95ms, min=200, max=210
Info: [HTMLElement.outerHTML] avg=1544.10ms, median=1546.00ms, stdev=15.56ms, min=1514, max=1568
Info: [HTMLElement.outerText] avg=216.05ms, median=207.00ms, stdev=18.19ms, min=201, max=247
Info: [HTMLElement.contentEditable] avg=334.24ms, median=323.00ms, stdev=36.06ms, min=318, max=446
Info: [HTMLElement.id="foo"] avg=53.19ms, median=53.00ms, stdev=1.76ms, min=52, max=58
Info: [HTMLElement.title="foo"] avg=63.14ms, median=63.00ms, stdev=0.35ms, min=63, max=64
Info: [HTMLElement.lang="foo"] avg=60.86ms, median=61.00ms, stdev=0.56ms, min=60, max=62
Info: [HTMLElement.dir="foo"] avg=53.57ms, median=54.00ms, stdev=0.58ms, min=53, max=55
Info: [HTMLElement.className="foo"] avg=64.52ms, median=64.00ms, stdev=0.91ms, min=63, max=66
Info: [HTMLElement.tabIndex="foo"] avg=367.86ms, median=369.00ms, stdev=8.06ms, min=352, max=380
Info: [HTMLElement.draggable="foo"] avg=79.43ms, median=79.00ms, stdev=0.58ms, min=79, max=81
Info: [HTMLElement.webkitdropzone="foo"] avg=62.14ms, median=62.00ms, stdev=0.35ms, min=62, max=63
Info: [HTMLElement.hidden="foo"] avg=61.67ms, median=62.00ms, stdev=0.71ms, min=61, max=64
Info: [HTMLElement.accessKey="foo"] avg=61.86ms, median=62.00ms, stdev=0.56ms, min=61, max=63
Info: [HTMLElement.spellcheck="foo"] avg=79.57ms, median=80.00ms, stdev=0.58ms, min=78, max=80
Info: [HTMLElement.innerHTML="foo"] avg=1176.67ms, median=1169.00ms, stdev=26.60ms, min=1146, max=1246
Info: [HTMLElement.innerText="foo"] avg=51.62ms, median=52.00ms, stdev=0.72ms, min=50, max=53
Info: [Element.tagName] avg=79.52ms, median=80.00ms, stdev=1.05ms, min=78, max=81
Info: [Element.style] avg=126.19ms, median=126.00ms, stdev=10.40ms, min=104, max=161
Info: [Element.offsetLeft] avg=98.95ms, median=104.00ms, stdev=4.01ms, min=100, max=99
Info: [Element.clientLeft] avg=98.33ms, median=102.00ms, stdev=2.59ms, min=100, max=99
Info: [Element.scrollLeft] avg=103.29ms, median=96.00ms, stdev=15.63ms, min=100, max=97
Info: [Element.dataset] avg=2448.62ms, median=2441.00ms, stdev=20.43ms, min=2426, max=2503
Info: [Element.firstElementChild] avg=58.71ms, median=58.00ms, stdev=2.37ms, min=57, max=65
Info: [Element.lastElementChild] avg=56.33ms, median=55.00ms, stdev=1.83ms, min=54, max=59
Info: [Element.previousElementSibling] avg=52.95ms, median=52.00ms, stdev=1.70ms, min=52, max=57
Info: [Element.nextElementSibling] avg=58.48ms, median=58.00ms, stdev=1.79ms, min=57, max=63
Info: [Element.childElementCount] avg=64.57ms, median=64.00ms, stdev=1.81ms, min=63, max=71
Info: [Element.onload] avg=98.38ms, median=98.00ms, stdev=0.49ms, min=98, max=99
Info: [Element.scrollLeft="foo"] avg=95.24ms, median=95.00ms, stdev=0.92ms, min=94, max=98
Info: [Element.onload="foo"] avg=67.14ms, median=67.00ms, stdev=0.56ms, min=66, max=68
Info: [Node.nodeName] avg=76.29ms, median=76.00ms, stdev=0.63ms, min=75, max=77
Info: [Node.nodeType] avg=53.05ms, median=52.00ms, stdev=2.61ms, min=52, max=61
Info: [Node.parentNode] avg=53.52ms, median=53.00ms, stdev=1.22ms, min=52, max=56
Info: [Node.childNodes] avg=118.33ms, median=123.00ms, stdev=8.85ms, min=107, max=129
Info: [Node.firstChild] avg=53.62ms, median=53.00ms, stdev=1.13ms, min=51, max=55
Info: [Node.lastChild] avg=53.14ms, median=53.00ms, stdev=1.21ms, min=52, max=55
Info: [Node.previousSibling] avg=51.86ms, median=51.00ms, stdev=1.55ms, min=50, max=54
Info: [Node.nextSibling] avg=52.86ms, median=54.00ms, stdev=1.81ms, min=50, max=55
Info: [Node.attributes] avg=2027.71ms, median=2026.00ms, stdev=10.48ms, min=2010, max=2051
Info: [Node.ownerDocument] avg=152.14ms, median=152.00ms, stdev=1.73ms, min=149, max=155
Info: [Node.namespaceURI] avg=60.86ms, median=59.00ms, stdev=3.85ms, min=56, max=66
Info: [Node.localName] avg=60.00ms, median=59.00ms, stdev=2.71ms, min=57, max=66
Info: [Node.baseURI] avg=671.10ms, median=668.00ms, stdev=10.66ms, min=659, max=706
Info: [Node.parentElement] avg=55.05ms, median=56.00ms, stdev=2.15ms, min=52, max=58
Info: [Node.nodeValue] avg=61.24ms, median=60.00ms, stdev=2.56ms, min=59, max=68
Info: [Node.prefix] avg=60.90ms, median=58.00ms, stdev=4.26ms, min=57, max=68
Info: [Node.textContent] avg=149.71ms, median=149.00ms, stdev=1.12ms, min=148, max=152
Info: [Node.nodeValue="foo"] avg=23.62ms, median=23.00ms, stdev=0.72ms, min=23, max=25
Info: [Node.prefix="foo"] avg=49.57ms, median=49.00ms, stdev=0.73ms, min=49, max=51
Info: [Node.textContent="foo"] avg=145.81ms, median=140.00ms, stdev=17.43ms, min=138, max=199

* Bindings/dom_attributes.html: Added.
* resources/runner.js:
(PerfTestRunner.info):

Tools:

We want to allow perf tests to output info messages
that do not affect the test results. To accomplish this,
this patch modifies perftestsrunner.py so that it ignores
a line that starts from "Info:".

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108748 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[BlackBerry] Enable requestAnimationFrame
commit-queue@webkit.org [Fri, 24 Feb 2012 08:42:47 +0000 (08:42 +0000)]
[BlackBerry] Enable requestAnimationFrame
https://bugs.webkit.org/show_bug.cgi?id=79408

Source/JavaScriptCore:

Use timer implementation of requestAnimationFrame on BlackBerry.

Patch by Andrew Lo <anlo@rim.com> on 2012-02-24
Reviewed by Rob Buis.

* wtf/Platform.h:

Tools:

Enable requestAnimationFrame for BlackBerry.

Patch by Andrew Lo <anlo@rim.com> on 2012-02-24
Reviewed by Rob Buis.

* Scripts/build-webkit:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108747 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoRename LocalStorageThread to StorageThread and LocalStorageTask to StorageTask.
commit-queue@webkit.org [Fri, 24 Feb 2012 08:38:46 +0000 (08:38 +0000)]
Rename LocalStorageThread to StorageThread and LocalStorageTask to StorageTask.
https://bugs.webkit.org/show_bug.cgi?id=79358

Revision 45124 commented FIXME to rename these classes.

Patch by Huang Dongsung <luxtella@company100.net> on 2012-02-24
Reviewed by Kentaro Hara.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.order:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* storage/LocalStorageTask.h: Removed.
* storage/StorageSyncManager.cpp:
(WebCore::StorageSyncManager::StorageSyncManager):
(WebCore::StorageSyncManager::scheduleImport):
(WebCore::StorageSyncManager::scheduleSync):
(WebCore::StorageSyncManager::scheduleDeleteEmptyDatabase):
* storage/StorageSyncManager.h:
(WebCore):
(StorageSyncManager):
* storage/StorageTask.cpp: Renamed from Source/WebCore/storage/LocalStorageTask.cpp.
(WebCore):
(WebCore::StorageTask::StorageTask):
(WebCore::StorageTask::~StorageTask):
(WebCore::StorageTask::performTask):
* storage/StorageTask.h: Added.
(WebCore):
(StorageTask):
(WebCore::StorageTask::createImport):
(WebCore::StorageTask::createSync):
(WebCore::StorageTask::createDeleteEmptyDatabase):
(WebCore::StorageTask::createOriginIdentifiersImport):
(WebCore::StorageTask::createSetOriginDetails):
(WebCore::StorageTask::createDeleteOrigin):
(WebCore::StorageTask::createDeleteAllOrigins):
(WebCore::StorageTask::createTerminate):
* storage/StorageThread.cpp: Renamed from Source/WebCore/storage/LocalStorageThread.cpp.
(WebCore):
(WebCore::StorageThread::create):
(WebCore::StorageThread::StorageThread):
(WebCore::StorageThread::~StorageThread):
(WebCore::StorageThread::start):
(WebCore::StorageThread::threadEntryPointCallback):
(WebCore::StorageThread::threadEntryPoint):
(WebCore::StorageThread::scheduleTask):
(WebCore::StorageThread::terminate):
(WebCore::StorageThread::performTerminate):
* storage/StorageThread.h: Renamed from Source/WebCore/storage/LocalStorageThread.h.
(WebCore):
(StorageThread):
* storage/StorageTracker.cpp:
(WebCore::StorageTracker::StorageTracker):
(WebCore::StorageTracker::importOriginIdentifiers):
(WebCore::StorageTracker::setOriginDetails):
(WebCore::StorageTracker::scheduleTask):
(WebCore::StorageTracker::deleteAllOrigins):
(WebCore::StorageTracker::deleteOrigin):
* storage/StorageTracker.h:
(WebCore):
(StorageTracker):
* storage/wince/StorageThreadWinCE.cpp: Renamed from Source/WebCore/storage/wince/LocalStorageThreadWinCE.cpp.
(WebCore):
(WebCore::StorageThread::StorageThread):
(WebCore::StorageThread::~StorageThread):
(WebCore::StorageThread::start):
(WebCore::StorageThread::timerFired):
(WebCore::StorageThread::scheduleImport):
(WebCore::StorageThread::scheduleSync):
(WebCore::StorageThread::terminate):
(WebCore::StorageThread::performTerminate):
* storage/wince/StorageThreadWinCE.h: Renamed from Source/WebCore/storage/wince/LocalStorageThreadWinCE.h.
(WebCore):
(StorageThread):
(WebCore::StorageThread::create):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108746 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoWeb Inspector: prepare border images on timelines to enable zooming.
pfeldman@chromium.org [Fri, 24 Feb 2012 08:34:12 +0000 (08:34 +0000)]
Web Inspector: prepare border images on timelines to enable zooming.
https://bugs.webkit.org/show_bug.cgi?id=79360

Reviewed by Yury Semikhatsky.

* inspector/front-end/Images/timelineBarBlue.png:
* inspector/front-end/Images/timelineBarGray.png:
* inspector/front-end/Images/timelineBarGreen.png:
* inspector/front-end/Images/timelineBarOrange.png:
* inspector/front-end/Images/timelineBarPurple.png:
* inspector/front-end/Images/timelineBarRed.png:
* inspector/front-end/Images/timelineBarYellow.png:
* inspector/front-end/Images/timelineHollowPillBlue.png:
* inspector/front-end/Images/timelineHollowPillGray.png:
* inspector/front-end/Images/timelineHollowPillGreen.png:
* inspector/front-end/Images/timelineHollowPillOrange.png:
* inspector/front-end/Images/timelineHollowPillPurple.png:
* inspector/front-end/Images/timelineHollowPillRed.png:
* inspector/front-end/Images/timelineHollowPillYellow.png:
* inspector/front-end/Images/timelinePillBlue.png:
* inspector/front-end/Images/timelinePillGray.png:
* inspector/front-end/Images/timelinePillGreen.png:
* inspector/front-end/Images/timelinePillOrange.png:
* inspector/front-end/Images/timelinePillPurple.png:
* inspector/front-end/Images/timelinePillRed.png:
* inspector/front-end/Images/timelinePillYellow.png:
* inspector/front-end/inspectorCommon.css:
(body):
* inspector/front-end/networkLogView.css:
(.network-graph-bar):
(.resource-cached .network-graph-bar):
(.network-category-documents .network-graph-bar):
(.network-category-documents.resource-cached .network-graph-bar):
(.network-category-stylesheets .network-graph-bar):
(.network-category-stylesheets.resource-cached .network-graph-bar):
(.network-category-images.resource-cached .network-graph-bar):
(.network-category-fonts .network-graph-bar):
(.network-category-fonts.resource-cached .network-graph-bar):
(.network-category-scripts .network-graph-bar):
(.network-category-scripts.resource-cached .network-graph-bar):
(.network-category-xhr .network-graph-bar):
(.network-category-xhr.resource-cached .network-graph-bar):
(.network-category-websockets .network-graph-bar):
(.network-category-websockets.resource-cached .network-graph-bar):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108745 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agostyle-queue tries to apply the patch twice
abarth@webkit.org [Fri, 24 Feb 2012 08:33:50 +0000 (08:33 +0000)]
style-queue tries to apply the patch twice
https://bugs.webkit.org/show_bug.cgi?id=79459

Reviewed by Eric Seidel.

Previously, we applied the patch using both apply-patch and
check-style.  This patch introduces a check-style-local to mirror the
apply-watchlist-local, which operates on the current working diff.

This patch also cleans up some other bugs I found by running the queue
locally for a while.  The queue still prints out a slightly
less-than-ideal message on the bugs when it find an error, but it's ok
for now.  We'll need to iterate a bit.

* Scripts/webkitpy/tool/bot/stylequeuetask.py:
(StyleQueueTask.validate):
(StyleQueueTask._check_style):
* Scripts/webkitpy/tool/commands/download.py:
(CheckStyleLocal):
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(EarlyWarningSytemTest._default_expected_stderr):
(EarlyWarningSytemTest._test_testing_ews):
* Scripts/webkitpy/tool/commands/queues.py:
(AbstractReviewQueue.handle_script_error):
(StyleQueue.review_patch):
* Scripts/webkitpy/tool/commands/queues_unittest.py:
* Scripts/webkitpy/tool/commands/queuestest.py:
(QueuesTest.assert_queue_outputs):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108744 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoWeb Inspector: exception in front-end on selecting an element in heap snapshot
yurys@chromium.org [Fri, 24 Feb 2012 08:28:43 +0000 (08:28 +0000)]
Web Inspector: exception in front-end on selecting an element in heap snapshot
https://bugs.webkit.org/show_bug.cgi?id=79447

Fixed a typo in method name and added a check that selected node has
corresponding heap snapshot object before adding that object to the console
as $0 entry.

Reviewed by Pavel Feldman.

* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.DetailedHeapshotView.prototype._inspectedObjectChanged):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108743 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago`\u200c` and `\u200d` should be allowed in IdentifierPart, as per ES5
commit-queue@webkit.org [Fri, 24 Feb 2012 08:20:51 +0000 (08:20 +0000)]
`\u200c` and `\u200d` should be allowed in IdentifierPart, as per ES5
https://bugs.webkit.org/show_bug.cgi?id=78908

Source/JavaScriptCore:

Add additional checks for zero-width non-joiner (0x200C) and
zero-width joiner (0x200D) characters.

Patch by Mathias Bynens <mathias@qiwi.be> on 2012-02-24
Reviewed by Michael Saboff.

* parser/Lexer.cpp:
(JSC::isNonASCIIIdentPart)
* runtime/LiteralParser.cpp:
(JSC::::Lexer::lexIdentifier)

LayoutTests:

Patch by Mathias Bynens <mathias@qiwi.be> on 2012-02-24
Reviewed by Michael Saboff.

* fast/js/var-declarations-zero-width-expected.txt: Added.
* fast/js/var-declarations-zero-width.html: Added.
* fast/js/removing-Cf-characters-expected.txt: Removed the ZWJ test.
* fast/js/script-tests/removing-Cf-characters.js: Removed the ZWJ test.
* fast/js/script-tests/var-declarations-zero-width.js: Added.
* platform/chromium/test_expectations.txt: Disable the new test in Chromium, for now.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108742 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Unreviewed test expectation change.
yuzo@google.com [Fri, 24 Feb 2012 08:17:11 +0000 (08:17 +0000)]
[chromium] Unreviewed test expectation change.
svg/repaint/image-with-clip-path.svg is flaky for DEBUG builds.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108741 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Unreviewed test expectation change.
yuzo@google.com [Fri, 24 Feb 2012 08:11:31 +0000 (08:11 +0000)]
[chromium] Unreviewed test expectation change.
svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm is flaky for DEBUG builds.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108740 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Fri, 24 Feb 2012 08:00:13 +0000 (08:00 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped: Skip failing tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108739 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Unreviewed test expectation change.
yuzo@google.com [Fri, 24 Feb 2012 07:58:50 +0000 (07:58 +0000)]
[chromium] Unreviewed test expectation change.
svg/text/text-rescale.html and svg/text/text-viewbox-rescale.html
are failing on Win, Linux, and Mac since added by wk r108699.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108738 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoshould_proceed_with_work_item is unused and can be removed
abarth@webkit.org [Fri, 24 Feb 2012 07:52:51 +0000 (07:52 +0000)]
should_proceed_with_work_item is unused and can be removed
https://bugs.webkit.org/show_bug.cgi?id=79416

Reviewed by Eric Seidel.

We used to use this function to check whether the tree is red.  Now, we
don't use external measures of whether to proceed with work items.
Instead, we analyze them with the idea in mind that the tree might be
red.

* Scripts/webkitpy/tool/bot/queueengine.py:
(QueueEngineDelegate.next_work_item):
(QueueEngine.run):
* Scripts/webkitpy/tool/bot/queueengine_unittest.py:
(LoggingDelegate):
(LoggingDelegate.next_work_item):
(RaisingDelegate.process_work_item):
(QueueEngineTest.test_terminating_error):
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(AbstractEarlyWarningSystem.__init__):
* Scripts/webkitpy/tool/commands/queues.py:
(AbstractQueue.next_work_item):
(FeederQueue.next_work_item):
(CommitQueue.next_work_item):
(AbstractReviewQueue.next_work_item):
(StyleQueue.__init__):
* Scripts/webkitpy/tool/commands/queues_unittest.py:
(FeederQueueTest.test_feeder_queue):
(CommitQueueTest.test_commit_queue):
(test_commit_queue_failure):
(test_commit_queue_failure_with_failing_tests):
(test_rollout):
(test_rollout_lands):
(StyleQueueTest.test_style_queue_with_style_exception):
(test_style_queue_with_watch_list_exception):
* Scripts/webkitpy/tool/commands/queuestest.py:
(QueuesTest.assert_queue_outputs):
* Scripts/webkitpy/tool/commands/sheriffbot.py:
(SheriffBot.next_work_item):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108737 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt] Unreviewed morning gardening.
ossy@webkit.org [Fri, 24 Feb 2012 07:49:53 +0000 (07:49 +0000)]
[Qt] Unreviewed morning gardening.

* platform/qt/Skipped:
* platform/qt/fast/block/float/centered-float-avoidance-complexity-expected.png: Added.
* platform/qt/fast/block/float/centered-float-avoidance-complexity-expected.txt: Added.
* platform/qt/fast/block/float/shrink-to-avoid-float-complexity-expected.png: Added.
* platform/qt/fast/block/float/shrink-to-avoid-float-complexity-expected.txt: Added.
* platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
* platform/qt/fast/js/global-constructors-expected.png:
* platform/qt/fast/js/global-constructors-expected.txt:
* platform/qt/fast/repaint/region-painting-invalidation-expected.png: Added.
* platform/qt/fast/repaint/region-painting-invalidation-expected.txt: Added.
* platform/qt/svg/carto.net/window-expected.png:
* platform/qt/svg/carto.net/window-expected.txt:
* platform/qt/svg/custom/js-late-clipPath-and-object-creation-expected.png:
* platform/qt/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
* platform/qt/svg/custom/js-late-gradient-and-object-creation-expected.png:
* platform/qt/svg/custom/js-late-gradient-and-object-creation-expected.txt:
* platform/qt/svg/custom/pointer-events-text-css-transform-expected.png:
* platform/qt/svg/custom/pointer-events-text-css-transform-expected.txt:
* platform/qt/svg/custom/text-ctm-expected.png:
* platform/qt/svg/custom/text-ctm-expected.txt:
* platform/qt/svg/hixie/perf/003-expected.png:
* platform/qt/svg/hixie/perf/003-expected.txt:
* platform/qt/svg/text/ems-display-none-expected.png: Added.
* platform/qt/svg/text/ems-display-none-expected.txt: Added.
* platform/qt/svg/text/exs-display-none-expected.png: Added.
* platform/qt/svg/text/exs-display-none-expected.txt: Added.
* platform/qt/svg/text/text-fill-opacity-expected.png: Added.
* platform/qt/svg/text/text-fill-opacity-expected.txt: Added.
* platform/qt/svg/text/text-viewbox-rescale-expected.png: Added.
* platform/qt/svg/text/text-viewbox-rescale-expected.txt: Added.
* platform/qt/svg/text/tspan-dynamic-positioning-expected.png: Added.
* platform/qt/svg/text/tspan-dynamic-positioning-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108736 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoWeb Inspector: hide color picker upon panel switch.
pfeldman@chromium.org [Fri, 24 Feb 2012 07:37:34 +0000 (07:37 +0000)]
Web Inspector: hide color picker upon panel switch.
https://bugs.webkit.org/show_bug.cgi?id=79355

Reviewed by Vsevolod Vlasov.

* inspector/front-end/ElementsPanel.js:
(WebInspector.ElementsPanel.prototype.willHide):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane.prototype._showUserAgentStylesSettingChanged):
(WebInspector.StylesSidebarPane.prototype.willHide):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108735 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoWeb Inspector: make color review larger in the color picker.
pfeldman@chromium.org [Fri, 24 Feb 2012 07:28:39 +0000 (07:28 +0000)]
Web Inspector: make color review larger in the color picker.
https://bugs.webkit.org/show_bug.cgi?id=79339

Reviewed by Vsevolod Vlasov.

* inspector/front-end/Popover.js:
(WebInspector.Popover.prototype.hide):
* inspector/front-end/Spectrum.js:
* inspector/front-end/elementsPanel.css:
(.spectrum-container):
(.spectrum-color):
(.spectrum-display-value):
(.spectrum-hue):
(.spectrum-fill):
(.spectrum-range-container label):
(.spectrum-range-container input):
(.spectrum-slider):
(.spectrum-container .swatch):
* inspector/front-end/inspector.css:
(.swatch):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108734 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Chromium] Add HarfBuzzShaperBase class
bashi@chromium.org [Fri, 24 Feb 2012 07:00:03 +0000 (07:00 +0000)]
[Chromium] Add HarfBuzzShaperBase class
https://bugs.webkit.org/show_bug.cgi?id=79336

Extract a part of ComplexTextControllerHarfBuzz class as
HarfBuzzShaperBase class. This patch intends to share the code between
old HarfBuzz and HarfBuzz-ng.

Reviewed by Tony Chang.

No new tests. No behavior change. Existing tests in fast/text should pass.

* PlatformBlackBerry.cmake: Added HarfBuzzShaperBase.cpp.
* WebCore.gyp/WebCore.gyp: Added HarfBuzzShaperBase.(cpp|h).
* WebCore.gypi: Ditto.
* platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp:
(WebCore::ComplexTextController::ComplexTextController): Removed redundant arguments.
(WebCore::ComplexTextController::nextScriptRun): Use m_normalizedBuffer and m_normalizedBufferLength instead of m_run.
(WebCore::ComplexTextController::setupFontForScriptRun): Ditto.
(WebCore::ComplexTextController::setGlyphPositions): Ditto.
* platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.h:
(ComplexTextController):
* platform/graphics/harfbuzz/FontHarfBuzz.cpp:
(WebCore::Font::drawComplexText): Removed redundant arguments of ComplexTextController constructor.
(WebCore::Font::floatWidthForComplexText): Ditto.
(WebCore::Font::offsetForPositionForComplexText): Ditto.
(WebCore::Font::selectionRectForComplexText): Ditto.
* platform/graphics/harfbuzz/HarfBuzzShaperBase.cpp: Added.
(WebCore):
(WebCore::HarfBuzzShaperBase::HarfBuzzShaperBase):
(WebCore::normalizeSpacesAndMirrorChars):
(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):
(WebCore::HarfBuzzShaperBase::isWordEnd):
(WebCore::HarfBuzzShaperBase::determineWordBreakSpacing):
(WebCore::HarfBuzzShaperBase::setPadding):
* platform/graphics/harfbuzz/HarfBuzzShaperBase.h: Added.
(WebCore):
(HarfBuzzShaperBase):
(WebCore::HarfBuzzShaperBase::~HarfBuzzShaperBase):
(WebCore::HarfBuzzShaperBase::isCodepointSpace):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108733 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Fri, 24 Feb 2012 06:34:37 +0000 (06:34 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108732 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoAdding WebSocket per-frame DEFLATE extension
bashi@chromium.org [Fri, 24 Feb 2012 06:29:33 +0000 (06:29 +0000)]
Adding WebSocket per-frame DEFLATE extension
https://bugs.webkit.org/show_bug.cgi?id=77522

Source/JavaScriptCore:

Added USE(ZLIB) flag.

Reviewed by Kent Tamura.

* wtf/Platform.h:

Source/WebCore:

Add WebSocketDeflateFramer class which handles deflate-frame extension.
This class encapsulates WebSocketDeflater and WebSocketInflater classes,
which depend on zlib, so that WebSocketChannel is not necessary to aware
zlib dependency.

This is the second patch to land. The previous patch broke Chromium Win
release build. r108600 should fix the build failure. I also added
zlib entry to |export_dependent_settings| of |webcore_prerequisites|
target.

Reviewed by Kent Tamura.

Tests: http/tests/websocket/tests/hybi/compressed-control-frame.html
       http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html
       http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html
       http/tests/websocket/tests/hybi/deflate-frame-parameter.html

* CMakeLists.txt: Added WebSocketDeflateFramer.(cpp|h)
* GNUmakefile.list.am: Ditto.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.gyp/WebCore.gyp: Added zlib dependency.
* WebCore.vcproj/WebCore.vcproj: Added WebSocketDeflateFramer.(cpp|h)
* WebCore.xcodeproj/project.pbxproj: Ditto.
* websockets/WebSocket.cpp:
(WebCore::WebSocket::didConnect): Set m_extensions.
* websockets/WebSocketChannel.cpp:
(WebCore::WebSocketChannel::connect): Add deflate-frame extension processor to WebSocketHanshake if deflate can use.
(WebCore::WebSocketChannel::fail): Call m_deflateFramer.didFail().
(WebCore::WebSocketChannel::processFrame): Decompress frames if needed.
(WebCore::WebSocketChannel::sendFrame): Compress frames if possible.
* websockets/WebSocketChannel.h:
* websockets/WebSocketDeflateFramer.cpp: Added.
(WebCore):
(WebSocketExtensionDeflateFrame):
(WebCore::WebSocketExtensionDeflateFrame::create):
(WebCore::WebSocketExtensionDeflateFrame::~WebSocketExtensionDeflateFrame):
(WebCore::WebSocketExtensionDeflateFrame::WebSocketExtensionDeflateFrame):
(WebCore::WebSocketExtensionDeflateFrame::handshakeString):
(WebCore::WebSocketExtensionDeflateFrame::processResponse):
(WebCore::DeflateResultHolder::DeflateResultHolder):
(WebCore::DeflateResultHolder::~DeflateResultHolder):
(WebCore::DeflateResultHolder::fail):
(WebCore::InflateResultHolder::InflateResultHolder):
(WebCore::InflateResultHolder::~InflateResultHolder):
(WebCore::InflateResultHolder::fail):
(WebCore::WebSocketDeflateFramer::WebSocketDeflateFramer):
(WebCore::WebSocketDeflateFramer::createExtensionProcessor):
(WebCore::WebSocketDeflateFramer::canDeflate):
(WebCore::WebSocketDeflateFramer::enableDeflate):
(WebCore::WebSocketDeflateFramer::deflate):
(WebCore::WebSocketDeflateFramer::resetDeflateContext):
(WebCore::WebSocketDeflateFramer::inflate):
(WebCore::WebSocketDeflateFramer::resetInflateContext):
(WebCore::WebSocketDeflateFramer::didFail):
* websockets/WebSocketDeflateFramer.h: Added.
(WebCore):
(DeflateResultHolder):
(WebCore::DeflateResultHolder::succeeded):
(WebCore::DeflateResultHolder::failureReason):
(InflateResultHolder):
(WebCore::InflateResultHolder::succeeded):
(WebCore::InflateResultHolder::failureReason):
(WebSocketDeflateFramer):
(WebCore::WebSocketDeflateFramer::enabled):

LayoutTests:

Added tests for WebSocket deflate-frame extension. Also updated some
tests to follow the change.

Reviewed by Kent Tamura.

* http/tests/websocket/tests/hybi/compressed-control-frame-expected.txt: Added.
* http/tests/websocket/tests/hybi/compressed-control-frame.html: Added.
* http/tests/websocket/tests/hybi/compressed-control-frame_wsh.py: Added.
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
* http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff-expected.txt: Added.
* http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html: Added.
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter-expected.txt: Added.
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html: Added.
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter_wsh.py: Added.
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
* http/tests/websocket/tests/hybi/deflate-frame-parameter-expected.txt: Added.
* http/tests/websocket/tests/hybi/deflate-frame-parameter.html: Added.
* http/tests/websocket/tests/hybi/deflate-frame_wsh.py: Added.
(_get_deflate_frame_extension_processor):
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
* http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header-expected.txt:
* http/tests/websocket/tests/hybi/send-file-blob_wsh.py:
(_retrieve_frame):
(web_socket_transfer_data):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108731 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoRename [setS|s]uppressIncrementalRendering to [setS|s]uppressesIncrementalRendering...
aestes@apple.com [Fri, 24 Feb 2012 06:24:47 +0000 (06:24 +0000)]
Rename [setS|s]uppressIncrementalRendering to [setS|s]uppressesIncrementalRendering and make it WebPreferences API.
https://bugs.webkit.org/show_bug.cgi?id=79433

Reviewed by Dan Bernstein.

Source/WebCore:

* dom/Document.cpp:
(WebCore::Document::implicitClose):
(WebCore::Document::visualUpdatesAllowed):
* page/Settings.cpp:
(WebCore::Settings::Settings):
* page/Settings.h:
(WebCore::Settings::setSuppressesIncrementalRendering):
(WebCore::Settings::suppressesIncrementalRendering):
(Settings):

Source/WebKit/mac:

* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController init]):
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setSuppressesIncrementalRendering:]):
(-[WebPreferences suppressesIncrementalRendering]):
(-[WebPreferences setSuppressIncrementalRendering:]):
(-[WebPreferences suppressIncrementalRendering]):
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKit2:

* Shared/WebPreferencesStore.h:
(WebKit):
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetSuppressesIncrementalRendering):
(WKPreferencesGetSuppressesIncrementalRendering):
* UIProcess/API/C/WKPreferences.h:
* UIProcess/WebInspectorProxy.cpp:
(WebKit::createInspectorPageGroup):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidFirstLayout):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108730 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoRename DOMWindow to Window in the bindings
arv@chromium.org [Fri, 24 Feb 2012 06:21:32 +0000 (06:21 +0000)]
Rename DOMWindow to Window in the bindings
https://bugs.webkit.org/show_bug.cgi?id=78721

Reviewed by Adam Barth.

Source/WebCore:

Covered by existing tests.

* inspector/front-end/DetailedHeapshotGridNodes.js:
(WebInspector.HeapSnapshotGenericObjectNode):
(WebInspector.HeapSnapshotGenericObjectNode.prototype.isWindow):
* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshotNode.prototype.get isWindow):
(WebInspector.HeapSnapshot.prototype._calculateObjectToWindowDistance):
(WebInspector.HeapSnapshot.prototype._markQueriableHeapObjects):
* page/DOMWindow.idl:

LayoutTests:

* fast/dom/Window/atob-btoa-expected.txt:
* fast/dom/Window/atob-btoa.html:
* fast/dom/Window/window-lookup-precedence-expected.txt:
* fast/dom/Window/window-lookup-precedence.html:
* fast/dom/Window/window-postmessage-args-expected.txt:
* fast/dom/Window/window-properties-expected.txt:
* fast/dom/Window/window-property-descriptors-expected.txt:
* fast/dom/dom-constructors-expected.txt:
* fast/dom/dom-constructors.html:
* fast/dom/prototype-inheritance-2-expected.txt:
* fast/dom/script-tests/prototype-inheritance-2.js:
(pushPropertyValuesWithUnseenTypes):
* fast/dom/wrapper-classes-expected.txt:
* fast/dom/wrapper-classes.html:
* fast/events/device-orientation-crash-expected.txt:
* fast/events/device-orientation-crash.html:
* fast/events/event-trace-expected.txt:
* fast/events/event-view-toString-expected.txt:
* fast/events/popup-blocked-to-post-blank-expected.txt:
* fast/events/popup-blocked-to-post-blank.html:
* fast/js/eval-cross-window-expected.txt:
* fast/js/eval-keyword-vs-function-expected.txt:
* fast/js/function-bind-expected.txt:
* fast/js/mozilla/strict/10.4.3-expected.txt:
* fast/js/mozilla/strict/15.3.4.5-expected.txt:
* fast/js/mozilla/strict/this-for-function-expression-recursion-expected.txt:
* fast/js/script-tests/function-bind.js:
* fast/js/toString-and-valueOf-override-expected.txt:
* http/tests/inspector-enabled/console-clear-arguments-on-frame-remove-expected.txt:
* http/tests/security/cross-frame-access-custom-expected.txt:
* http/tests/security/cross-frame-access-custom.html:
* http/tests/security/cross-frame-access-put-expected.txt:
* http/tests/security/document-all-expected.txt:
* inspector/console/console-dir-global-expected.txt:
* inspector/debugger/debugger-expand-scope-expected.txt:
* inspector/profiler/heap-snapshot-test.js:
(initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotMockWithDOM):
(initialize_HeapSnapshotTest):
* inspector/profiler/heap-snapshot.html:
* java/lc3/JSObject/ToJSObject-001-expected.txt:
* java/lc3/JSObject/ToObject-001-expected.txt:
* java/lc3/JSObject/ToString-001-expected.txt:
* platform/chromium-mac/fast/events/event-view-toString-expected.txt:
* platform/chromium-win/fast/events/event-view-toString-expected.txt:
* platform/chromium-win/fast/js/README:
* platform/chromium/fast/dom/Window/window-lookup-precedence-expected.txt:
* platform/chromium/fast/dom/Window/window-postmessage-args-expected.txt:
* platform/chromium/fast/dom/wrapper-classes-expected.txt:
* platform/chromium/fast/js/mozilla/strict/15.3.4.5-expected.txt:
* platform/chromium/fast/js/toString-and-valueOf-override-expected.txt:
* platform/chromium/http/tests/security/cross-frame-access-call-expected.txt:
* platform/chromium/http/tests/security/cross-frame-access-put-expected.txt:
* platform/chromium/inspector/console/console-dir-global-expected.txt:
* platform/chromium/inspector/debugger/debugger-expand-scope-expected.txt:
* platform/gtk/fast/dom/Window/window-properties-expected.txt:
* platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:
* platform/gtk/http/tests/security/cross-frame-access-put-expected.txt:
* platform/mac/fast/dom/Window/window-properties-expected.txt:
* platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
* platform/mac/fast/dom/prototype-inheritance-2-expected.txt:
* platform/mac/fast/dom/wrapper-classes-objc.html:
* platform/mac/fast/js/global-constructors-expected.txt:
* platform/qt-5.0-wk2/fast/dom/Window/window-properties-expected.txt:
* platform/qt-5.0-wk2/fast/dom/Window/window-property-descriptors-expected.txt:
* platform/qt-5.0-wk2/fast/dom/prototype-inheritance-2-expected.txt:
* platform/qt-arm/fast/dom/Window/window-property-descriptors-expected.txt:
* platform/qt/fast/dom/Window/window-properties-expected.txt:
* platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
* platform/qt/fast/js/global-constructors-expected.txt:
* platform/qt/http/tests/security/cross-frame-access-put-expected.txt:
* platform/win/fast/dom/Window/window-properties-expected.txt:
* platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
* platform/win/fast/dom/prototype-inheritance-2-expected.txt:
* sputnik/Conformance/11_Expressions/11.1_Primary_Expressions/11.1.1_The_this_Keyword/S11.1.1_A2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/S15.1_A1_T1-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/S15.1_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/S15.1_A2_T1-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108729 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoNodeRenderingContext should have ShadowRootList instead of ShadowRoot.
shinyak@chromium.org [Fri, 24 Feb 2012 05:43:13 +0000 (05:43 +0000)]
NodeRenderingContext should have ShadowRootList instead of ShadowRoot.
https://bugs.webkit.org/show_bug.cgi?id=79079

Reviewed by Dimitri Glazkov.

Apparently NodeRenderingContext should have ShadowRootList instead of ShadowRoot.
This patch changes it.

No new tests. Simple refactoring.

* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::NodeRenderingContext):
(WebCore::NodeRenderingContext::hostChildrenChanged):
(WebCore::NodeRenderingContext::shouldCreateRenderer):
* dom/NodeRenderingContext.h:
(WebCore):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108728 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Implement keyframed animations for the cc thread.
commit-queue@webkit.org [Fri, 24 Feb 2012 05:31:12 +0000 (05:31 +0000)]
[chromium] Implement keyframed animations for the cc thread.
https://bugs.webkit.org/show_bug.cgi?id=77229

Patch by Ian Vollick <vollick@chromium.org> on 2012-02-23
Reviewed by James Robinson.

Source/WebCore:

* WebCore.gypi:
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::hasActiveAnimation):
(WebCore):
* platform/graphics/chromium/LayerChromium.h:
(LayerChromium):
* platform/graphics/chromium/cc/CCActiveAnimation.cpp:
(WebCore::CCActiveAnimation::CCActiveAnimation):
(WebCore::CCActiveAnimation::isFinishedAt):
(WebCore::CCActiveAnimation::trimTimeToCurrentIteration):
(WebCore::CCActiveAnimation::cloneForImplThread):
* platform/graphics/chromium/cc/CCActiveAnimation.h:
(WebCore::CCActiveAnimation::curve):
(CCActiveAnimation):
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.cpp: Added.
(WebCore::CCKeyframedFloatAnimationCurve::create):
(WebCore):
(WebCore::CCKeyframedFloatAnimationCurve::CCKeyframedFloatAnimationCurve):
(WebCore::CCKeyframedFloatAnimationCurve::~CCKeyframedFloatAnimationCurve):
(WebCore::CCKeyframedFloatAnimationCurve::duration):
(WebCore::CCKeyframedFloatAnimationCurve::clone):
(WebCore::CCKeyframedFloatAnimationCurve::getValue):
(WebCore::CCKeyframedTransformAnimationCurve::create):
(WebCore::CCKeyframedTransformAnimationCurve::CCKeyframedTransformAnimationCurve):
(WebCore::CCKeyframedTransformAnimationCurve::~CCKeyframedTransformAnimationCurve):
(WebCore::CCKeyframedTransformAnimationCurve::duration):
(WebCore::CCKeyframedTransformAnimationCurve::clone):
(WebCore::CCKeyframedTransformAnimationCurve::getValue):
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.h: Added.
(WebCore):
(WebCore::CCFloatKeyframe::CCFloatKeyframe):
(CCFloatKeyframe):
(WebCore::CCTransformKeyframe::CCTransformKeyframe):
(CCTransformKeyframe):
(CCKeyframedFloatAnimationCurve):
(CCKeyframedTransformAnimationCurve):
* platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
(WebCore::CCLayerAnimationController::addAnimation):
* platform/graphics/chromium/cc/CCLayerAnimationController.h:
(WebCore::CCLayerAnimationController::hasActiveAnimation):
(CCLayerAnimationController):
* platform/graphics/chromium/cc/CCLayerAnimationControllerImpl.cpp:
(WebCore::CCLayerAnimationControllerImpl::tickAnimations):

Source/WebKit/chromium:

* WebKit.gypi:
* tests/CCAnimationTestCommon.cpp:
(WebCore):
(WebCore::addOpacityTransition):
(WebKitTests::addOpacityTransitionToController):
(WebKitTests::addOpacityTransitionToLayer):
* tests/CCAnimationTestCommon.h:
(WebCore):
(WebKitTests):
* tests/CCKeyframedAnimationCurveTest.cpp: Added.
(WebCore):
(WebCore::expectTranslateX):
(WebCore::TEST):
* tests/CCLayerAnimationControllerTest.cpp:
(WebKitTests::expectTranslateX):
(WebKitTests):
(WebKitTests::TEST):
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTest::dispatchAddAnimation):
(WTF::CCLayerTreeHostTest::doBeginTest):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108727 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUse MathExtras round() in timeToSampleFrame
commit-queue@webkit.org [Fri, 24 Feb 2012 05:25:31 +0000 (05:25 +0000)]
Use MathExtras round() in timeToSampleFrame
https://bugs.webkit.org/show_bug.cgi?id=79281

Patch by Raymond Toy <rtoy@google.com> on 2012-02-23
Reviewed by Chris Rogers.

No new tests. Existing tests cover this change.

* platform/audio/AudioUtilities.cpp:
(WebCore::AudioUtilities::timeToSampleFrame): Use round().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108726 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoREGRESSION: Assertion failure in Document::setCompatibilityMode() (!m_styleSheets...
mitz@apple.com [Fri, 24 Feb 2012 05:24:55 +0000 (05:24 +0000)]
REGRESSION: Assertion failure in Document::setCompatibilityMode() (!m_styleSheets->length()) in fast/dynamic/crash-paint-no-documentElement-renderer.html
https://bugs.webkit.org/show_bug.cgi?id=79333

Reviewed by Sam Weinig.

Disabled the test. The assertion failure is tracked by <http://webkit.org/b/68859>.

* fast/dynamic/crash-paint-no-documentElement-renderer.html: Removed.
* fast/dynamic/crash-paint-no-documentElement-renderer.html-disabled: Copied from LayoutTests/fast/dynamic/crash-paint-no-documentElement-renderer.html.
* platform/chromium/test_expectations.txt:
* platform/efl/Skipped:
* platform/gtk/test_expectations.txt:
* platform/mac/test_expectations.txt:
* platform/qt/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108725 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoDon't clear IntentRequest callback pointers on stop()
commit-queue@webkit.org [Fri, 24 Feb 2012 04:58:34 +0000 (04:58 +0000)]
Don't clear IntentRequest callback pointers on stop()

This causes re-entry into ScriptExecutionContext when
the ActiveDOMCallback objects get deleted, which crashes.
Instead, just de-activate the object and wait for
context destruction to clean up.

Test crashes consistently without fix and passes with fix.
Added some test infrastructure to support this test.
https://bugs.webkit.org/show_bug.cgi?id=78638

Patch by Greg Billock <gbillock@google.com> on 2012-02-23
Reviewed by Adam Barth.

* Modules/intents/IntentRequest.cpp:
(WebCore::IntentRequest::IntentRequest):
(WebCore::IntentRequest::stop):
(WebCore::IntentRequest::postResult):
(WebCore::IntentRequest::postFailure):
* Modules/intents/IntentRequest.h:
(IntentRequest):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108724 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[BlackBerry] Selection handler has compile failure with logs enabled.
commit-queue@webkit.org [Fri, 24 Feb 2012 04:40:48 +0000 (04:40 +0000)]
[BlackBerry] Selection handler has compile failure with logs enabled.
https://bugs.webkit.org/show_bug.cgi?id=79392

Patch by Mike Fenton <mifenton@rim.com> on 2012-02-23
Reviewed by Antonio Gomes.

Build Fix.  Update log to avoid usage of toString which was removed.

* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108723 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUpstream BlackBerry Cookie Management Classes
commit-queue@webkit.org [Fri, 24 Feb 2012 04:34:56 +0000 (04:34 +0000)]
Upstream BlackBerry Cookie Management Classes
https://bugs.webkit.org/show_bug.cgi?id=73654

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-02-23
Reviewed by Rob Buis.

.:

Manual test to see in milliseconds how quickly 100 writes followed by 100 reads take.
This test is ran twice and the average read and write for each of the 2 runs is shown.

* ManualTests/cookieSpeedTest.html: Added.

Source/WebCore:

Added ManualTests/cookieSpeedTest.html as well as tested functionality
on the BlackBerry port with http://testsuites.opera.com/cookies/
Passes all non Cookie 2 tests since Cookie 2 is not implemented/supported at this time.
Error handling and extended tests do not all pass and will be updated with future bugs/patches.

* platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp: Added.
* platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h: Added.
* platform/blackberry/CookieJarBlackBerry.cpp: Added.
* platform/blackberry/CookieManager.cpp: Added.
* platform/blackberry/CookieManager.h: Added.
* platform/blackberry/CookieMap.cpp: Added.
* platform/blackberry/CookieMap.h: Added.
* platform/blackberry/CookieParser.cpp: Added.
* platform/blackberry/CookieParser.h: Added.
* platform/blackberry/ParsedCookie.cpp: Added.
* platform/blackberry/ParsedCookie.h: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108722 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2012-02-19 Antonio Gomes <agomes@rim.com>
tonikitoo@webkit.org [Fri, 24 Feb 2012 04:28:34 +0000 (04:28 +0000)]
2012-02-19  Antonio Gomes  <agomes@rim.com>

        Fat fingers - Add a clearer way to distinguish the node we want (shadow or non-shadow)
        https://bugs.webkit.org/show_bug.cgi?id=79256
        PR #127814 / MKS_2587410

        Reviewed by Rob Buis.

        Patch adds a cleaner way for call sites of FatFingersResult to
        query for the appropriated target node: shadow or non-shadow DOM nodes.

        It also renames FatFingersResults::validNode to ::node, assuming
        that "invalid" nodes are not applicable in any context.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::clearDocumentData):
        (BlackBerry::WebKit::WebPagePrivate::contextNode):
        (BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
        * WebKitSupport/FatFingers.h:
        (FatFingersResult):
        (BlackBerry::WebKit::FatFingersResult::node):
        (BlackBerry::WebKit::FatFingersResult::nodeAsElementIfApplicable):
        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::selectAtPoint):
        * WebKitSupport/TouchEventHandler.cpp:
        (BlackBerry::WebKit::TouchEventHandler::touchHoldEvent):
        (BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108721 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUnreviewed test fix after r108699.
bashi@chromium.org [Fri, 24 Feb 2012 04:04:33 +0000 (04:04 +0000)]
Unreviewed test fix after r108699.

Fix wrong path of repaint.js in platform/mac/svg/text/text-rescale.html
and platform/mac/svg/text/text-viewbox-rescale.html

* platform/mac/svg/text/text-rescale.html:
* platform/mac/svg/text/text-viewbox-rescale.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108720 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoSwitch drawLineForBoxSide to use integers
leviw@chromium.org [Fri, 24 Feb 2012 03:55:53 +0000 (03:55 +0000)]
Switch drawLineForBoxSide to use integers
https://bugs.webkit.org/show_bug.cgi?id=78647

Reviewed by Eric Seidel.

drawLineForBoxSide handles painting lines for boxes which must be done on pixel boundaries.
Its interface doesn't make it possible to pixel snap properly within the function itself --
it draws one side of the box at a time, and the logical right and bottom lines can only be
properly determined using the logical top and left positions -- so it needs to be treated
like a graphics context function, whereby the caller handles the proper pixel snapping before
passing the values in.

No new tests. No change in behavior.

* rendering/LayoutTypes.h:
(WebCore::pixelSnappedIntRectFromEdges): convenience function for returning a pixel snapped
int rect from four LayoutUnits that are its edges (as opposed to position and size).
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintColumnRules): Pixel snapping the column rule rect.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintOneBorderSide): Side rects are now IntRects by the time
they get to paintOneBorderSide.
(WebCore::calculateSideRect): Properly use RoundedRect as IntRects instead of LayoutRects.
(WebCore::RenderBoxModelObject::paintBorderSides): Ditto.
(WebCore::RenderBoxModelObject::paintBorder): Ditto.
(WebCore::calculateSideRectIncludingInner): Ditto.
* rendering/RenderBoxModelObject.h:
(RenderBoxModelObject):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::paintOutlineForLine): Outline widths are related to borders and stored
as ints. Removing an unnecessary conversion to LayoutUnits. Pixel snapping the edges of the box.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::drawLineForBoxSide): Moving back to integers and removing an
unnecessary pixelSnappedIntRect call.
(WebCore::RenderObject::paintOutline): Pixel snapping the column rule rect and using an integer
for outlineOffset.
* rendering/RenderObject.h:
(RenderObject):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108719 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[BlackBerry] Upstream BlackBerry API web page related files
commit-queue@webkit.org [Fri, 24 Feb 2012 03:41:01 +0000 (03:41 +0000)]
[BlackBerry] Upstream BlackBerry API web page related files
https://bugs.webkit.org/show_bug.cgi?id=74380

Patch by Jacky Jiang <zhajiang@rim.com> on 2012-02-23
Reviewed by Antonio Gomes.

Initial upstream, no new tests.

* Api/WebPage.cpp: Added.
* Api/WebPage.h: Added.
* Api/WebPage_p.h: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108718 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[BlackBerry] Remove unused ChromeClientBlackBerry::platformCompositingWindow(), platf...
leo.yang@torchmobile.com.cn [Fri, 24 Feb 2012 03:11:20 +0000 (03:11 +0000)]
[BlackBerry] Remove unused ChromeClientBlackBerry::platformCompositingWindow(), platformWindow() and WebPageClient::compositingWindow()
https://bugs.webkit.org/show_bug.cgi?id=78681

Reviewed by Antonio Gomes.

* Api/WebPageClient.h:
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore):
* WebCoreSupport/ChromeClientBlackBerry.h:
(ChromeClientBlackBerry):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108717 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoZero out CopiedBlocks on initialization
mhahnenberg@apple.com [Fri, 24 Feb 2012 03:10:03 +0000 (03:10 +0000)]
Zero out CopiedBlocks on initialization
https://bugs.webkit.org/show_bug.cgi?id=79199

Reviewed by Filip Pizlo.

Made CopyBlocks zero their payloads during construction. This allows
JSArray to avoid having to manually clear its backing store upon allocation
and also alleviates any future pain with regard to the garbage collector trying
to mark what it thinks are values in what is actually uninitialized memory.

* heap/CopiedBlock.h:
(JSC::CopiedBlock::CopiedBlock):
* runtime/JSArray.cpp:
(JSC::JSArray::finishCreation):
(JSC::JSArray::tryFinishCreationUninitialized):
(JSC::JSArray::increaseVectorLength):
(JSC::JSArray::unshiftCountSlowCase):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108716 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[BlackBerry] Upstream the BlackBerry change to platform/graphics/IntPoint.h
leo.yang@torchmobile.com.cn [Fri, 24 Feb 2012 03:05:58 +0000 (03:05 +0000)]
[BlackBerry] Upstream the BlackBerry change to platform/graphics/IntPoint.h
https://bugs.webkit.org/show_bug.cgi?id=79094

Reviewed by Antonio Gomes.

Add conversion convenience between WebCore::IntPoint and BlackBerry::Platform::IntPoint.

The porting can't be built yet, no new tests.

* platform/graphics/IntPoint.h:
(Platform):
(IntPoint):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108715 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Chromium] Add profiling trace for deferred canvas rendering
commit-queue@webkit.org [Fri, 24 Feb 2012 03:03:52 +0000 (03:03 +0000)]
[Chromium] Add profiling trace for deferred canvas rendering
https://bugs.webkit.org/show_bug.cgi?id=79376

Patch by Justin Novosad <junov@chromium.org> on 2012-02-23
Reviewed by Stephen White.

No new tests.

* platform/graphics/chromium/Canvas2DLayerChromium.cpp:
(WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
Profiling trace for the entire method, as well as for
calls to canvas flush and context flush, both of which may
cause deferred operation to be executed.
* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::bitmap):
Inserting a profiling trace in this method because it may cause
deferred draw commands to be executed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108714 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoShadowRootList should have recalculation flag instead of ShadowRoot.
shinyak@chromium.org [Fri, 24 Feb 2012 02:37:02 +0000 (02:37 +0000)]
ShadowRootList should have recalculation flag instead of ShadowRoot.
https://bugs.webkit.org/show_bug.cgi?id=79071

Reviewed by Hajime Morita.

When light children or shadow children are changed, we currently re-construct a shadow subtree.
However, when supporting multiple shadow subtrees, all shadow subtrees should be re-constructed.
So ShadowRootList should have re-construction flag instead of ShadowRoot.

Also, re-construction methods in ShadowRoot should be moved to ShadowRootList.

No new tests, should be convered by existing tests.

* dom/Element.cpp:
(WebCore::Element::recalcStyle):
(WebCore::Element::childrenChanged):
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::hostChildrenChanged):
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::ShadowRoot):
(WebCore::ShadowRoot::list):
* dom/ShadowRoot.h:
(WebCore):
(ShadowRoot):
* dom/ShadowRootList.cpp:
(WebCore::ShadowRootList::ShadowRootList):
(WebCore::ShadowRootList::reattach):
(WebCore):
(WebCore::ShadowRootList::childNeedsStyleRecalc):
(WebCore::ShadowRootList::needsStyleRecalc):
(WebCore::ShadowRootList::recalcShadowTreeStyle):
(WebCore::ShadowRootList::needsReattachHostChildrenAndShadow):
(WebCore::ShadowRootList::hostChildrenChanged):
(WebCore::ShadowRootList::setNeedsReattachHostChildrenAndShadow):
(WebCore::ShadowRootList::reattachHostChildrenAndShadow):
* dom/ShadowRootList.h:
(WebCore):
(ShadowRootList):
(WebCore::ShadowRootList::clearNeedsReattachHostChildrenAndShadow):
* html/shadow/HTMLContentElement.cpp:
(WebCore::HTMLContentElement::attach):
(WebCore::HTMLContentElement::detach):
(WebCore::HTMLContentElement::parseAttribute):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108713 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUnreviewed: add clause in ASSERT missing from r108474.
rolandsteiner@chromium.org [Fri, 24 Feb 2012 02:20:19 +0000 (02:20 +0000)]
Unreviewed: add clause in ASSERT missing from r108474.

No new tests. (fix)

* html/HTMLStyleElement.cpp:
(WebCore::HTMLStyleElement::willRemove):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108712 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[BlackBerry] Upstream GLES2Context.{h, cpp}
leo.yang@torchmobile.com.cn [Fri, 24 Feb 2012 02:16:01 +0000 (02:16 +0000)]
[BlackBerry] Upstream GLES2Context.{h, cpp}
https://bugs.webkit.org/show_bug.cgi?id=79196

Reviewed by Rob Buis.

Initial upstream, no new tests.

* WebKitSupport/GLES2Context.cpp: Added.
* WebKitSupport/GLES2Context.h: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108711 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoSplit out HTML constructors into new DOMWindowHTML suplemental idl
eric@webkit.org [Fri, 24 Feb 2012 02:11:04 +0000 (02:11 +0000)]
Split out HTML constructors into new DOMWindowHTML suplemental idl
https://bugs.webkit.org/show_bug.cgi?id=79377

Reviewed by Adam Barth.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* html/DOMWindowHTML.idl: Added.
* page/DOMWindow.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108710 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoMove SVG element constructors out of DOMWindow.idl into a new DOMWindowSVG.idl suplem...
eric@webkit.org [Fri, 24 Feb 2012 02:04:40 +0000 (02:04 +0000)]
Move SVG element constructors out of DOMWindow.idl into a new DOMWindowSVG.idl suplemental
https://bugs.webkit.org/show_bug.cgi?id=79379

Reviewed by Adam Barth.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* page/DOMWindow.idl:
* svg/DOMWindowSVG.idl: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108709 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUnreviewed, add Stephen Chenney to committers.py as a contributor.
enne@google.com [Fri, 24 Feb 2012 01:48:00 +0000 (01:48 +0000)]
Unreviewed, add Stephen Chenney to committers.py as a contributor.

* Scripts/webkitpy/common/config/committers.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108707 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Clean up GraphicsContext3D initialization paths
jamesr@google.com [Fri, 24 Feb 2012 01:38:43 +0000 (01:38 +0000)]
[chromium] Clean up GraphicsContext3D initialization paths
https://bugs.webkit.org/show_bug.cgi?id=79321

Reviewed by Kenneth Russell.

This simplifies the GraphicsContext3D initialization paths down to two simple codepaths, one for offscreen
contexts initialized from WebCore and one for onscreen (compositor) contexts initialized by WebViewImpl or
WebLayerTreeViewImpl.

Offscreen initialization path:
1) WebCore code calls WebCore::GraphicsContext3D::create(), implemented in GraphicsContext3DChromium.cpp
2) GraphicsContext3D::create() instantiates a WebGraphicsContext3D via the static WebKitPlatformSupport interface
3) GraphicsContext3DPrivate::createGraphicsContextFromWebContext() wraps the WebGraphicsContext3D in a
GraphicsContext3D's m_private pointer.

Onscreen initialization path:
1) WebViewImpl or WebLayerTreeViewImpl request an onscreen WebGraphicsContext3D from either their WebViewClient
or WebLayerTreeViewClient, respectively
2) GraphicsContext3DPrivate::createGraphicsContextFromWebContext() wraps the WebGraphicsContext3D in a
GraphicsContext3D's m_private pointer.

There are no other initialization paths. Specifically, we do not support instantiating onscreen contexts from
within WebCore.

* src/GraphicsContext3DChromium.cpp:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromWebContext):
(WebCore):
(WebCore::GraphicsContext3DPrivate::platformTexture):
(WebCore::GraphicsContext3D::create):
* src/GraphicsContext3DPrivate.h:
(GraphicsContext3DPrivate):
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::createLayerTreeHostContext3D):
* src/WebViewImpl.cpp:
(std::getCompositorContextAttributes):
(WebKit::WebViewImpl::createCompositorGraphicsContext3D):
(WebKit):
(WebKit::WebViewImpl::createLayerTreeHostContext3D):
(WebKit::WebViewImpl::graphicsContext3D):
* src/WebViewImpl.h:
(WebViewImpl):
* tests/CCLayerTreeHostImplTest.cpp:
(WebKit::CCLayerTreeHostImplTest::createContext):
(CCLayerTreeHostImplTest):
(WebKit::TEST_F):
* tests/CCLayerTreeHostTest.cpp:
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
* tests/Canvas2DLayerChromiumTest.cpp:
(WebCore::Canvas2DLayerChromiumTest::fullLifecycleTest):
* tests/CompositorFakeGraphicsContext3D.h:
(WebCore::createCompositorMockGraphicsContext3D):
* tests/FakeGraphicsContext3DTest.cpp:
(TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108706 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Unreviewed gardening. Apply bug number to svg/carto.net failures.
enne@google.com [Fri, 24 Feb 2012 01:33:26 +0000 (01:33 +0000)]
[chromium] Unreviewed gardening. Apply bug number to svg/carto.net failures.
https://bugs.webkit.org/show_bug.cgi?id=79423

These two tests were in a set of tests that needed to be rebaselined
after a jpeg decoder change. However, there was also a text change
during this period that caused debug vs. release differences for text
spans in the SVG output. Filing a real bug so this can get looked at.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108704 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Plumb video damage to the damage tracker.
commit-queue@webkit.org [Fri, 24 Feb 2012 01:32:35 +0000 (01:32 +0000)]
[chromium] Plumb video damage to the damage tracker.
https://bugs.webkit.org/show_bug.cgi?id=79373

Patch by Jonathan Backer <backer@chromium.org> on 2012-02-23
Reviewed by James Robinson.

Source/WebCore:

* platform/graphics/chromium/VideoLayerChromium.cpp:
(WebCore::VideoLayerChromium::contentChanged):
(WebCore):
* platform/graphics/chromium/VideoLayerChromium.h:
(VideoLayerChromium):

Source/WebKit/chromium:

* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::repaint):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108703 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[BlackBerry] InputHandler requires cleanup of Navigation Mode handling.
commit-queue@webkit.org [Fri, 24 Feb 2012 01:27:16 +0000 (01:27 +0000)]
[BlackBerry] InputHandler requires cleanup of Navigation Mode handling.
https://bugs.webkit.org/show_bug.cgi?id=79366

Patch by Mike Fenton <mifenton@rim.com> on 2012-02-23
Reviewed by Rob Buis.

Cleanup InputHandler navigation based code.

1) Remove the concept of NavigationMode and replace it
   with simple showKeyboard calls.

2) Remove navigation move events and replace with standard
   key events.

3) Standardize function/variable names and remove obsolete
   functions.

* Api/WebPageClient.h:
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::InputHandler):
(BlackBerry::WebKit::InputHandler::nodeFocused):
(BlackBerry::WebKit::InputHandler::setElementUnfocused):
(BlackBerry::WebKit::InputHandler::setElementFocused):
(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):
(BlackBerry::WebKit::InputHandler::setDelayKeyboardVisibilityChange):
(BlackBerry::WebKit::InputHandler::processPendingKeyboardVisibilityChange):
(BlackBerry::WebKit::InputHandler::notifyClientOfKeyboardVisibilityChange):
* WebKitSupport/InputHandler.h:
(InputHandler):
* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::setCaretPosition):
(BlackBerry::WebKit::SelectionHandler::updateOrHandleInputSelection):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::touchEventCancel):
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108702 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agostyle-queue logs bogus messages to the QueueStatusServer
abarth@webkit.org [Fri, 24 Feb 2012 01:25:05 +0000 (01:25 +0000)]
style-queue logs bogus messages to the QueueStatusServer
https://bugs.webkit.org/show_bug.cgi?id=79424

Reviewed by Eric Seidel.

Copy/paste error.

* Scripts/webkitpy/tool/bot/stylequeuetask.py:
(StyleQueueTask._check_style):
(StyleQueueTask._apply_watch_list):
* Scripts/webkitpy/tool/commands/queues_unittest.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108701 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoThis test checks select attribute of content element is valid.
morrita@google.com [Fri, 24 Feb 2012 00:54:45 +0000 (00:54 +0000)]
This test checks select attribute of content element is valid.
https://bugs.webkit.org/show_bug.cgi?id=65595

Reviewed by Dimitri Glazkov.

Source/WebCore:

This change introduces FrameTree::scopedChild() and
FrameTree::scopedChild(), which can be used for scope-aware
frame lookup. Using these, the named accessor and the indexed
acceccor on Document, and Window.length are now TreeScope
aware. They don't count iframes in Shadow DOM.

This change also removes FrameTree::m_childCount since
Frame::childCount() is no longer in the hot
path. m_scopedChildCount is added instead.

Test: fast/dom/shadow/iframe-shadow.html

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::childFrameGetter):
(WebCore::indexGetter):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertyDescriptor):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::indexedPropertyGetter):
(WebCore::V8DOMWindow::namedPropertyGetter):
(WebCore::V8DOMWindow::namedSecurityCheck):
(WebCore::V8DOMWindow::indexedSecurityCheck):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::length):
* page/Frame.cpp:
(WebCore::Frame::inScope):
(WebCore):
* page/Frame.h:
(WebCore):
(Frame):
* page/FrameTree.cpp:
(WebCore::FrameTree::actuallyAppendChild):
(WebCore::FrameTree::removeChild):
(WebCore::FrameTree::scopedChild):
(WebCore):
(WebCore::FrameTree::scopedChildCount):
(WebCore::FrameTree::childCount):
* page/FrameTree.h:
(WebCore):
(FrameTree):
(WebCore::FrameTree::FrameTree):

LayoutTests:

* fast/dom/shadow/iframe-shadow-expected.txt: Added.
* fast/dom/shadow/iframe-shadow.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108700 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoRecompute font metrics on scale changes
commit-queue@webkit.org [Fri, 24 Feb 2012 00:52:35 +0000 (00:52 +0000)]
Recompute font metrics on scale changes
https://bugs.webkit.org/show_bug.cgi?id=75091

Patch by Philip Rogers <pdr@google.com> on 2012-02-23
Reviewed by Nikolas Zimmermann.

Source/WebCore:

SVG text metrics depend on the transform from renderer to the svg root
which requires that we propagate transform changes down to text.
This change adds a boolean for tracking transform changes to
SVGViewportContainers and SVGTransformableContainers, and updates
RenderSVGText::layout() to recalculate text metrics if the transform
of an ancestor has changed.

Tests: platform/mac/svg/text/text-rescale.html
       platform/mac/svg/text/text-viewbox-rescale.html
       svg/text/text-rescale.html
       svg/text/text-viewbox-rescale.html

* rendering/RenderObject.h:
(WebCore::RenderObject::isSVGTransformableContainer):
(WebCore::RenderObject::isSVGViewportContainer):
* rendering/svg/RenderSVGContainer.h:
(WebCore::RenderSVGContainer::didTransformToRootUpdate):
* rendering/svg/RenderSVGInlineText.cpp:
(WebCore::RenderSVGInlineText::computeNewScaledFontForStyle):
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::RenderSVGText):
(WebCore::RenderSVGText::layout):
* rendering/svg/RenderSVGText.h:
(WebCore::RenderSVGText::setNeedsTextMetricsUpdate):
(RenderSVGText):
* rendering/svg/RenderSVGTransformableContainer.cpp:
(WebCore::RenderSVGTransformableContainer::RenderSVGTransformableContainer):
(WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
* rendering/svg/RenderSVGTransformableContainer.h:
(WebCore::RenderSVGTransformableContainer::isSVGTransformableContainer):
(WebCore::RenderSVGTransformableContainer::didTransformToRootUpdate):
(RenderSVGTransformableContainer):
* rendering/svg/RenderSVGViewportContainer.cpp:
(WebCore::RenderSVGViewportContainer::RenderSVGViewportContainer):
(WebCore::RenderSVGViewportContainer::calcViewport):
* rendering/svg/RenderSVGViewportContainer.h:
(WebCore::RenderSVGViewportContainer::didTransformToRootUpdate):
(RenderSVGViewportContainer):
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::transformToRootChanged):
(WebCore):
(WebCore::SVGRenderSupport::layoutChildren):
* rendering/svg/SVGRenderSupport.h:
(SVGRenderSupport):

LayoutTests:

* platform/chromium-linux/svg/text/text-rescale-expected.png: Added.
* platform/chromium-linux/svg/text/text-rescale-expected.txt: Added.
* platform/chromium-linux/svg/text/text-viewbox-rescale-expected.png: Added.
* platform/chromium-linux/svg/text/text-viewbox-rescale-expected.txt: Added.
* platform/chromium/test_expectations.txt:
* platform/mac/svg/text/text-rescale-expected.png: Added.
* platform/mac/svg/text/text-rescale-expected.txt: Added.
* platform/mac/svg/text/text-rescale.html: Added.
* platform/mac/svg/text/text-viewbox-rescale-expected.png: Added.
* platform/mac/svg/text/text-viewbox-rescale-expected.txt: Added.
* platform/mac/svg/text/text-viewbox-rescale.html: Added.
* svg/text/text-rescale-expected.png: Added.
* svg/text/text-rescale-expected.txt: Added.
* svg/text/text-rescale.html: Added.
* svg/text/text-viewbox-rescale-expected.png: Added.
* svg/text/text-viewbox-rescale-expected.txt: Added.
* svg/text/text-viewbox-rescale.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108699 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Notify compositor of wheel event registration via ScrollingCoordinator
jamesr@google.com [Fri, 24 Feb 2012 00:29:53 +0000 (00:29 +0000)]
[chromium] Notify compositor of wheel event registration via ScrollingCoordinator
https://bugs.webkit.org/show_bug.cgi?id=79133

Reviewed by Dimitri Glazkov.

Source/WebCore:

This notifies the chromium compositor of changes to the number of wheel event handlers via ScrollingCoordinator
instead of through ChromeClient/WebViewImpl. This is the path we'll use for other properties in the future and
is more extensible for handling things other than the root layer.

Property behavior is covered by new unit tests in LayerChromiumTests and CCLayerTreeHostImplTest.

* page/scrolling/ScrollingCoordinator.cpp:
* page/scrolling/ScrollingCoordinator.h:
(WebCore):
(ScrollingCoordinator):
    Add a ScrollingCoordinatorPrivate so implementations can tack on additional data without having to #ifdef up
    ScrollingCoordinator.h/cpp
* page/scrolling/ScrollingCoordinatorNone.cpp:
(WebCore):
(WebCore::ScrollingCoordinator::~ScrollingCoordinator):
* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(ScrollingCoordinatorPrivate):
    ScrollingCoordinatorPrivate in the chromium implementation keeps a reference to the scroll layer.
(WebCore::ScrollingCoordinatorPrivate::ScrollingCoordinatorPrivate):
(WebCore::ScrollingCoordinatorPrivate::~ScrollingCoordinatorPrivate):
(WebCore::ScrollingCoordinatorPrivate::setScrollLayer):
(WebCore::ScrollingCoordinatorPrivate::scrollLayer):
(WebCore):
(WebCore::ScrollingCoordinator::create):
(WebCore::ScrollingCoordinator::~ScrollingCoordinator):
(WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
(WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
(WebCore::ScrollingCoordinator::setScrollLayer):
(WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinator::setScrollParameters):
(WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore):
(WebCore::ScrollingCoordinator::~ScrollingCoordinator):
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::LayerChromium):
(WebCore::LayerChromium::setHaveWheelEventHandlers):
(WebCore):
(WebCore::LayerChromium::pushPropertiesTo):
* platform/graphics/chromium/LayerChromium.h:
(LayerChromium):
* platform/graphics/chromium/cc/CCInputHandler.h:
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore::CCLayerImpl::haveWheelEventHandlers):
(WebCore::CCLayerImpl::setHaveWheelEventHandlers):
(CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::finishCommitOnImplThread):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::scrollBegin):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImpl):

Source/WebKit/chromium:

Rips out old wheel event notification and adds unit tests for new LayerChromium property.

* src/NonCompositedContentHost.cpp:
(WebKit::NonCompositedContentHost::setViewport):
* src/WebCompositorInputHandlerImpl.cpp:
(WebKit::WebCompositorInputHandlerImpl::handleInputEvent):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::numberOfWheelEventHandlersChanged):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
* src/WebViewImpl.h:
* tests/CCLayerTreeHostImplTest.cpp:
(WebKit::TEST_F):
(WebKit):
* tests/LayerChromiumTest.cpp:
* tests/WebCompositorInputHandlerImplTest.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108698 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Unreviewed gardening. Re-enable a handful of tests.
enne@google.com [Fri, 24 Feb 2012 00:26:10 +0000 (00:26 +0000)]
[chromium] Unreviewed gardening. Re-enable a handful of tests.

These have no relation to each other, but all don't appear to be
failing anymore, so removing expectations for them.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108697 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt][WK2] Clipping is broken
noam.rosenthal@nokia.com [Fri, 24 Feb 2012 00:24:40 +0000 (00:24 +0000)]
[Qt][WK2] Clipping is broken
https://bugs.webkit.org/show_bug.cgi?id=78677

Reviewed by Simon Hausmann.

Rework the clipping stack in TextureMapperGL.
Instead of saving a stack of IntRect scissor clips, we save every clipping change in the
stack, and reapply it when we end the clip. Popping the stack is almost free, since we
don't reapply the stencil but simply change the stencil test index.

In addition, we don't use a special shader for clipping, and we don't apply clipping for
masked children, since they're already clipped because they're rendered into an intermediate
buffer.

This fixes exiting tests in LayoutTests/compositing/overflow.
It also fixes asserts in the leaves demo, as well as asserts in nytimes.com and other sites.

* page/FrameView.cpp:
(WebCore::FrameView::paintContents):
* platform/graphics/texmap/TextureMapperGL.cpp:
(ClipState):
(WebCore::TextureMapperGLData::SharedGLData::ClipState::ClipState):
(SharedGLData):
(WebCore::TextureMapperGLData::SharedGLData::pushClipState):
(WebCore::TextureMapperGLData::SharedGLData::popClipState):
(WebCore::TextureMapperGLData::SharedGLData::scissorClip):
(WebCore::TextureMapperGLData::SharedGLData::applyCurrentClip):
(TextureMapperGLData):
(BitmapTextureGL):
(WebCore::TextureMapperGLData::initStencil):
(WebCore):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::TextureMapperGL::endPainting):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::BitmapTextureGL::initStencil):
(WebCore::BitmapTextureGL::bind):
(WebCore::BitmapTextureGL::destroy):
(WebCore::TextureMapperGL::bindSurface):
(WebCore::TextureMapperGL::beginScissorClip):
(WebCore::TextureMapperGL::beginClip):
(WebCore::TextureMapperGL::endClip):
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::paintSelfAndChildren):
* platform/graphics/texmap/TextureMapperShaderManager.cpp:
* platform/graphics/texmap/TextureMapperShaderManager.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108696 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoAdd Chromium gpu_tests to the flakiness dashboard
commit-queue@webkit.org [Fri, 24 Feb 2012 00:18:28 +0000 (00:18 +0000)]
Add Chromium gpu_tests to the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=79300

Patch by Dave Tu <dtu@chromium.org> on 2012-02-23
Reviewed by Ojan Vafai.

* Tools/TestResultServer/static-dashboards/builders.js:
* Tools/TestResultServer/static-dashboards/dashboard_base.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108695 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[GTK] Wrong signal name on emission in WebKitWindowProperties.cpp
commit-queue@webkit.org [Fri, 24 Feb 2012 00:08:27 +0000 (00:08 +0000)]
[GTK] Wrong signal name on emission in WebKitWindowProperties.cpp
https://bugs.webkit.org/show_bug.cgi?id=79352

Patch by Mario Sanchez Prada <msanchez@igalia.com> on 2012-02-23
Reviewed by Philippe Normand.

Emit the signal 'resizable' instead of 'resizable-visible'.

* UIProcess/API/gtk/WebKitWindowProperties.cpp:
(webkitWindowPropertiesSetResizable): Use right signal name.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108694 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUse self._filesystem in more places in the SCM classes
eric@webkit.org [Fri, 24 Feb 2012 00:05:33 +0000 (00:05 +0000)]
Use self._filesystem in more places in the SCM classes
https://bugs.webkit.org/show_bug.cgi?id=79415

Reviewed by Adam Barth.

* Scripts/webkitpy/common/checkout/scm/detection_unittest.py:
(SCMDetectorTest.test_detect_scm_system):
* Scripts/webkitpy/common/checkout/scm/git.py:
(Git.find_checkout_root):
(Git.to_object_name):
* Scripts/webkitpy/common/checkout/scm/scm.py:
(SCM.__init__):
(SCM.in_working_directory):
* Scripts/webkitpy/common/checkout/scm/svn.py:
(SVN.find_uuid):
(SVN.find_checkout_root):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108693 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUnreviewed, rolling out r108685.
enne@google.com [Fri, 24 Feb 2012 00:03:29 +0000 (00:03 +0000)]
Unreviewed, rolling out r108685.
http://trac.webkit.org/changeset/108685
https://bugs.webkit.org/show_bug.cgi?id=79414

Broke Chromium builds (Requested by enne on #webkit).

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

Source/WebCore:

* Target.pri:
* WebCore.pri:
* platform/MIMETypeRegistry.cpp:
(WebCore::initializeSupportedImageMIMETypes):
(WebCore::initializeSupportedImageMIMETypesForEncoding):
* platform/image-decoders/ImageDecoder.h:
(WebCore::ImageFrame::getAddr):
(ImageFrame):
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
* platform/image-decoders/png/PNGImageDecoder.cpp:
(WebCore):
* platform/image-decoders/qt/ImageFrameQt.cpp:

Tools:

* qmake/mkspecs/features/features.prf:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108692 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agostyle-queue shouldn't spam bugs if it fails to update its working copy
abarth@webkit.org [Thu, 23 Feb 2012 23:59:44 +0000 (23:59 +0000)]
style-queue shouldn't spam bugs if it fails to update its working copy
https://bugs.webkit.org/show_bug.cgi?id=79412

Reviewed by Eric Seidel.

This patch moves style-queue over to the new PatchAnalysisTask
infrastructure, which is smarter about retrying patches when update
fails.

* Scripts/webkitpy/common/system/executive_mock.py:
(MockExecutive.run_and_throw_if_fail):
* Scripts/webkitpy/tool/bot/earlywarningsystemtask.py:
* Scripts/webkitpy/tool/bot/patchanalysistask.py:
(UnableToApplyPatch):
(UnableToApplyPatch.__init__):
(PatchAnalysisTask.__init__):
* Scripts/webkitpy/tool/bot/stylequeuetask.py: Added.
(StyleQueueTaskDelegate):
(StyleQueueTaskDelegate.parent_command):
(StyleQueueTask):
(StyleQueueTask.validate):
(StyleQueueTask._check_style):
(StyleQueueTask._apply_watch_list):
(StyleQueueTask.run):
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
* Scripts/webkitpy/tool/commands/queues.py:
(StyleQueue):
(StyleQueue.should_proceed_with_work_item):
(StyleQueue.review_patch):
(StyleQueue.run_command):
(StyleQueue.command_passed):
(StyleQueue.command_failed):
(StyleQueue.expected_failures):
(StyleQueue.refetch_patch):
* Scripts/webkitpy/tool/commands/queues_unittest.py:
(StyleQueueTest.test_style_queue_with_style_exception):
(test_style_queue_with_watch_list_exception):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108691 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoCSS2:text-decoration: <rt> element should not inherit text-decoration property
commit-queue@webkit.org [Thu, 23 Feb 2012 23:55:51 +0000 (23:55 +0000)]
CSS2:text-decoration: <rt> element should not inherit text-decoration property
https://bugs.webkit.org/show_bug.cgi?id=71266

Patch by Koji Ishii <kojiishi@gmail.com> on 2012-02-23
Reviewed by Kentaro Hara.

Source/WebCore:

Tests: fast/ruby/text-decoration-in-descendants-ruby-expected.html
       fast/ruby/text-decoration-in-descendants-ruby.html

The spec says "text decorations are not propagated to any out-of-flow descendants":
http://www.w3.org/TR/2011/WD-css3-text-20110901/#decoration
Floats etc. are fixed in bug 18611, but <rt> is not inline either and therefore
it should be included; it was confirmed at a discussion at www-style.
http://lists.w3.org/Archives/Public/www-style/2011Sep/0238.html

* rendering/RenderObject.cpp:
(WebCore::RenderObject::getTextDecorationColors):

LayoutTests:

The spec says "text decorations are not propagated to any out-of-flow descendants":
http://www.w3.org/TR/2011/WD-css3-text-20110901/#decoration
Floats etc. are fixed in bug 18611, but <rt> is not inline either and therefore
it should be included; it was confirmed at a discussion at www-style.
http://lists.w3.org/Archives/Public/www-style/2011Sep/0238.html

* fast/ruby/text-decoration-in-descendants-ruby-expected.html: Added.
* fast/ruby/text-decoration-in-descendants-ruby.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108690 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoMake fast/js/script-tests/dfg-inline-function-dot-caller not timeout.
fpizlo@apple.com [Thu, 23 Feb 2012 23:50:39 +0000 (23:50 +0000)]
Make fast/js/script-tests/dfg-inline-function-dot-caller not timeout.

Rubber stamped by Oliver Hunt.

Verified that the test still causes inlining to happen and still passes but
otherwise reduced the loops to take an order of magnitude fewer iterations.

* fast/js/script-tests/dfg-inline-function-dot-caller.js:
(object.nonInlineable.nonInlineable.if):
(object.nonInlineable):
(makeInlinableCall):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108687 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Unreviewed gardening. Mark two fast/files/ tests as non-flaky.
enne@google.com [Thu, 23 Feb 2012 23:44:22 +0000 (23:44 +0000)]
[chromium] Unreviewed gardening. Mark two fast/files/ tests as non-flaky.
https://bugs.webkit.org/show_bug.cgi?id=45667

These two look like they're passing consistently, so remove
expectations.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108686 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt] Allow to use WebCore imagedecoders
zoltan@webkit.org [Thu, 23 Feb 2012 23:37:48 +0000 (23:37 +0000)]
[Qt] Allow to use WebCore imagedecoders
https://bugs.webkit.org/show_bug.cgi?id=32410

Source/WebCore:

Add ENABLE(QT_IMAGE_DECODER) guards around Qt imagedecoders and set it to default.
By passing ENABLE_QT_IMAGE_DECODER=0 define to the build system WebKit will build
with WebCore's imagedecoders.

I added NO_RETURN attribute to 2 functions of PNG and JPEG decoders to avoid compiler warnings
because in Qt-port we treat warning as errors (-Werror).

I'm continuing the refactoring of this area and try to use Qt imagedecoders only in
cases when WebCore doesn't support the image format.

Reviewed by Simon Hausmann.

No behavior change, no need new tests.

* Target.pri:
* WebCore.pri:
* platform/MIMETypeRegistry.cpp:
(WebCore::initializeSupportedImageMIMETypes):
(WebCore::initializeSupportedImageMIMETypesForEncoding):
* platform/image-decoders/ImageDecoder.h:
(WebCore::ImageFrame::getAddr):
(ImageFrame):
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
NO_RETURN has been added to a function to avoid warning message.
* platform/image-decoders/png/PNGImageDecoder.cpp:
NO_RETURN has been added to a function to avoid warning message.
(WebCore):
* platform/image-decoders/qt/ImageFrameQt.cpp:
(WebCore):
(WebCore::ImageFrame::asNewNativeImage):

Tools:

Add ENABLE_QT_IMAGE_DECODER macro, it's enabled by default.

Reviewed by Simon Hausmann.

* qmake/mkspecs/features/features.prf:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108685 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoRemove old broken find_checkout_root tests now that find_checkout_root is gone
eric@webkit.org [Thu, 23 Feb 2012 23:26:27 +0000 (23:26 +0000)]
Remove old broken find_checkout_root tests now that find_checkout_root is gone
https://bugs.webkit.org/show_bug.cgi?id=79405

Reviewed by Adam Barth.

* Scripts/webkitpy/common/checkout/scm/detection_unittest.py: Added.
(SCMDetectorTest):
(SCMDetectorTest.test_find_checkout_root):
* Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
(SVNTestRepository.tear_down):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108684 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Unreviewed gardening. Mark a media-fragments test as slow.
enne@google.com [Thu, 23 Feb 2012 23:20:27 +0000 (23:20 +0000)]
[chromium] Unreviewed gardening. Mark a media-fragments test as slow.
https://bugs.webkit.org/show_bug.cgi?id=77523

This has been periodically timing out on Win, so give it more time.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108683 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt][WK2] Implement proxy authentication dialog.
commit-queue@webkit.org [Thu, 23 Feb 2012 23:20:11 +0000 (23:20 +0000)]
[Qt][WK2] Implement proxy authentication dialog.
https://bugs.webkit.org/show_bug.cgi?id=79350

Patch by Michael BrĂ¼ning <michael.bruning@nokia.com> on 2012-02-23
Reviewed by Simon Hausmann.

* MiniBrowser/qt/MiniBrowser.qrc:
* MiniBrowser/qt/qml/BrowserWindow.qml:
* MiniBrowser/qt/qml/ProxyAuthenticationDialog.qml: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108682 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoMake Interpreter::getStackTrace be able to generate the line number for the top callf...
oliver@apple.com [Thu, 23 Feb 2012 23:18:05 +0000 (23:18 +0000)]
Make Interpreter::getStackTrace be able to generate the line number for the top callframe if none is provided
https://bugs.webkit.org/show_bug.cgi?id=79407

Reviewed by Gavin Barraclough.

Outside of exception handling, we don't know what our source line number is.  This
change allows us to pass -1 is as the initial line number, and get the correct line
number in the resultant stack trace.  We can't completely elide the initial line
number (yet) due to some idiosyncrasies of the exception handling machinery.

* interpreter/Interpreter.cpp:
(JSC::getLineNumberForCallFrame):
(JSC):
(JSC::Interpreter::getStackTrace):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108681 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] New baselines for CSS3 filters drop-shadow() tests.
senorblanco@chromium.org [Thu, 23 Feb 2012 23:13:44 +0000 (23:13 +0000)]
[chromium] New baselines for CSS3 filters drop-shadow() tests.

Unreviewed gardening.

* platform/chromium-linux/css3/filters/effect-drop-shadow-hw-expected.png: Added.
* platform/chromium-mac-snowleopard/css3/filters/effect-drop-shadow-hw-expected.png:
* platform/chromium-win/css3/filters/effect-drop-shadow-hw-expected.png:
* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108680 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUnreviewed, rolling out r108666.
enne@google.com [Thu, 23 Feb 2012 23:12:15 +0000 (23:12 +0000)]
Unreviewed, rolling out r108666.
http://trac.webkit.org/changeset/108666
https://bugs.webkit.org/show_bug.cgi?id=79321

Breaks webplugin tests: http://goo.gl/CoHIi

* src/GraphicsContext3DChromium.cpp:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore):
(WebCore::GraphicsContext3DPrivate::create):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromWebContext):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextForAnotherThread):
(WebCore::GraphicsContext3DPrivate::platformTexture):
(WebCore::GraphicsContext3D::create):
* src/GraphicsContext3DPrivate.h:
(WebKit):
(GraphicsContext3DPrivate):
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::createLayerTreeHostContext3D):
* src/WebViewImpl.cpp:
(std::getCompositorContextAttributes):
(WebKit::WebViewImpl::createLayerTreeHostContext3D):
(WebKit::WebViewImpl::graphicsContext3D):
* tests/CCLayerTreeHostImplTest.cpp:
(CCLayerTreeHostImplTest):
(WebKit::TEST_F):
* tests/CCLayerTreeHostTest.cpp:
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
* tests/Canvas2DLayerChromiumTest.cpp:
(WebCore::Canvas2DLayerChromiumTest::fullLifecycleTest):
* tests/CompositorFakeGraphicsContext3D.h:
(WebCore::createCompositorMockGraphicsContext3D):
* tests/FakeGraphicsContext3DTest.cpp:
(TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108679 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Push CCLayerIteratorPosition struct into CCLayerIterator class.
commit-queue@webkit.org [Thu, 23 Feb 2012 23:03:32 +0000 (23:03 +0000)]
[chromium] Push CCLayerIteratorPosition struct into CCLayerIterator class.
https://bugs.webkit.org/show_bug.cgi?id=75864

Patch by Dana Jansens <danakj@chromium.org> on 2012-02-23
Reviewed by James Robinson.

* platform/graphics/chromium/cc/CCLayerIterator.cpp:
(WebCore::CCLayerIteratorActions::BackToFront::begin):
(WebCore::CCLayerIteratorActions::BackToFront::end):
(WebCore::CCLayerIteratorActions::BackToFront::next):
(WebCore::CCLayerIteratorActions::FrontToBack::begin):
(WebCore::CCLayerIteratorActions::FrontToBack::end):
(WebCore::CCLayerIteratorActions::FrontToBack::next):
(WebCore::CCLayerIteratorActions::FrontToBack::goToHighestInSubtree):
* platform/graphics/chromium/cc/CCLayerIterator.h:
(WebCore::CCLayerIterator::CCLayerIterator):
(WebCore::CCLayerIterator::operator++):
(WebCore::CCLayerIterator::operator==):
(WebCore::CCLayerIterator::operator->):
(WebCore::CCLayerIterator::operator*):
(WebCore::CCLayerIterator::representsTargetRenderSurface):
(WebCore::CCLayerIterator::representsContributingRenderSurface):
(WebCore::CCLayerIterator::currentLayer):
(WebCore::CCLayerIterator::currentLayerRepresentsContributingRenderSurface):
(WebCore::CCLayerIterator::currentLayerRepresentsTargetRenderSurface):
(WebCore::CCLayerIterator::targetRenderSurfaceLayer):
(WebCore::CCLayerIterator::targetRenderSurface):
(WebCore::CCLayerIterator::targetRenderSurfaceChildren):
* platform/graphics/chromium/cc/CCLayerIteratorPosition.h: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108678 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoDFG OSR exit value profiling should have graceful handling of local variables and...
fpizlo@apple.com [Thu, 23 Feb 2012 22:51:09 +0000 (22:51 +0000)]
DFG OSR exit value profiling should have graceful handling of local variables and arguments
https://bugs.webkit.org/show_bug.cgi?id=79310

Reviewed by Gavin Barraclough.

Previously, if we OSR exited because a prediction in a local was wrong, we'd
only realize what the true type of the local was if the regular value profiling
kicked in and told us. Unless the local was block-locally copy propagated, in
which case we'd know from an OSR exit profile.

This patch adds OSR exit profiling to all locals and arguments. Now, if we OSR
exit because of a mispredicted local or argument type, we'll know what the type of
the local or argument should be immediately upon exiting.

The way that local variable OSR exit profiling works is that we now have a lazily
added set of OSR-exit-only value profiles for exit sites that are BadType and that
cited a GetLocal as their value source. The value profiles are only added if the
OSR exit is taken, and are keyed by CodeBlock, bytecode index of the GetLocal, and
operand. The look-up is performed by querying the
CompressedLazyOperandValueProfileHolder in the CodeBlock, using a key that contains
the bytecode index and the operand. Because the value profiles are added at random
times, they are not sorted; instead they are just stored in an arbitrarily-ordered
SegmentedVector. Look-ups are made fast by "decompressing": the DFG::ByteCodeParser
creates a LazyOperandValueProfileParser, which turns the
CompressedLazyOperandValueProfileHolder's contents into a HashMap for the duration
of DFG parsing.

Previously, OSR exits had a pointer to the ValueProfile that had the specFailBucket
into which values observed during OSR exit would be placed. Now it uses a lazy
thunk for a ValueProfile. I call this the MethodOfGettingAValueProfile. It may
either contain a ValueProfile inside it (which works for previous uses of OSR exit
profiling) or it may just have knowledge of how to go about creating the
LazyOperandValueProfile in the case that the OSR exit is actually taken. This
ensures that we never have to create NumOperands*NumBytecodeIndices*NumCodeBlocks
value profiling buckets unless we actually did OSR exit on every single operand,
in every single instruction, in each code block (that's probably unlikely).

This appears to be neutral on the major benchmarks, but is a double-digit speed-up
on code deliberately written to have data flow that spans basic blocks and where
the code exhibits post-optimization polymorphism in a local variable.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::stronglyVisitStrongReferences):
* bytecode/CodeBlock.h:
(CodeBlock):
(JSC::CodeBlock::lazyOperandValueProfiles):
* bytecode/LazyOperandValueProfile.cpp: Added.
(JSC):
(JSC::CompressedLazyOperandValueProfileHolder::CompressedLazyOperandValueProfileHolder):
(JSC::CompressedLazyOperandValueProfileHolder::~CompressedLazyOperandValueProfileHolder):
(JSC::CompressedLazyOperandValueProfileHolder::computeUpdatedPredictions):
(JSC::CompressedLazyOperandValueProfileHolder::add):
(JSC::LazyOperandValueProfileParser::LazyOperandValueProfileParser):
(JSC::LazyOperandValueProfileParser::~LazyOperandValueProfileParser):
(JSC::LazyOperandValueProfileParser::getIfPresent):
(JSC::LazyOperandValueProfileParser::prediction):
* bytecode/LazyOperandValueProfile.h: Added.
(JSC):
(LazyOperandValueProfileKey):
(JSC::LazyOperandValueProfileKey::LazyOperandValueProfileKey):
(JSC::LazyOperandValueProfileKey::operator!):
(JSC::LazyOperandValueProfileKey::operator==):
(JSC::LazyOperandValueProfileKey::hash):
(JSC::LazyOperandValueProfileKey::bytecodeOffset):
(JSC::LazyOperandValueProfileKey::operand):
(JSC::LazyOperandValueProfileKey::isHashTableDeletedValue):
(JSC::LazyOperandValueProfileKeyHash::hash):
(JSC::LazyOperandValueProfileKeyHash::equal):
(LazyOperandValueProfileKeyHash):
(WTF):
(JSC::LazyOperandValueProfile::LazyOperandValueProfile):
(LazyOperandValueProfile):
(JSC::LazyOperandValueProfile::key):
(CompressedLazyOperandValueProfileHolder):
(LazyOperandValueProfileParser):
* bytecode/MethodOfGettingAValueProfile.cpp: Added.
(JSC):
(JSC::MethodOfGettingAValueProfile::fromLazyOperand):
(JSC::MethodOfGettingAValueProfile::getSpecFailBucket):
* bytecode/MethodOfGettingAValueProfile.h: Added.
(JSC):
(MethodOfGettingAValueProfile):
(JSC::MethodOfGettingAValueProfile::MethodOfGettingAValueProfile):
(JSC::MethodOfGettingAValueProfile::operator!):
* bytecode/ValueProfile.cpp: Removed.
* bytecode/ValueProfile.h:
(JSC):
(ValueProfileBase):
(JSC::ValueProfileBase::ValueProfileBase):
(JSC::ValueProfileBase::dump):
(JSC::ValueProfileBase::computeUpdatedPrediction):
(JSC::MinimalValueProfile::MinimalValueProfile):
(ValueProfileWithLogNumberOfBuckets):
(JSC::ValueProfileWithLogNumberOfBuckets::ValueProfileWithLogNumberOfBuckets):
(JSC::ValueProfile::ValueProfile):
(JSC::getValueProfileBytecodeOffset):
(JSC::getRareCaseProfileBytecodeOffset):
* dfg/DFGByteCodeParser.cpp:
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::injectLazyOperandPrediction):
(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::getArgument):
(InlineStackEntry):
(JSC::DFG::ByteCodeParser::fixVariableAccessPredictions):
(DFG):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
(JSC::DFG::ByteCodeParser::parse):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::valueProfileFor):
(JSC::DFG::Graph::methodOfGettingAValueProfileFor):
(Graph):
* dfg/DFGNode.h:
(Node):
* dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::OSRExit):
* dfg/DFGOSRExit.h:
(OSRExit):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGPhase.cpp:
(JSC::DFG::Phase::beginPhase):
(JSC::DFG::Phase::endPhase):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::speculationCheck):
* dfg/DFGVariableAccessData.h:
(JSC::DFG::VariableAccessData::nonUnifiedPrediction):
(VariableAccessData):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108677 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoFlush layer changes after layout when resizing web page
andersca@apple.com [Thu, 23 Feb 2012 22:41:05 +0000 (22:41 +0000)]
Flush layer changes after layout when resizing web page
https://bugs.webkit.org/show_bug.cgi?id=79399
<rdar://problem/10920157>

Reviewed by Andreas Kling.

Flush layer changes after layout, otherwise the scrollbars won't be updated
until sometime later which looks bad.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::updateGeometry):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108676 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Chromium] Add video stream texture support
commit-queue@webkit.org [Thu, 23 Feb 2012 22:10:02 +0000 (22:10 +0000)]
[Chromium] Add video stream texture support
https://bugs.webkit.org/show_bug.cgi?id=78398

This upstreams the abstraction used on Android for
hardware video decoding with the compositor.

Most of the interfaces are kept generic and the core
of this change is to allow texturing from an external
texture while receiving notifications (on the compositor
thread if we are running it) when there are new frames to
be displayed.

Patch by Daniel Sievers <sievers@chromium.org> on 2012-02-23
Reviewed by James Robinson.

Source/WebCore:

* platform/graphics/chromium/Extensions3DChromium.h:
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawSingleTextureVideoQuad):
(WebCore::LayerRendererChromium::drawRGBA):
(WebCore::LayerRendererChromium::drawNativeTexture):
(WebCore):
(WebCore::LayerRendererChromium::drawStreamTexture):
(WebCore::LayerRendererChromium::drawVideoQuad):
(WebCore::LayerRendererChromium::streamTextureLayerProgram):
(WebCore::LayerRendererChromium::cleanupSharedObjects):
* platform/graphics/chromium/LayerRendererChromium.h:
(LayerRendererChromium):
* platform/graphics/chromium/ShaderChromium.cpp:
(WebCore::VertexShaderVideoTransform::VertexShaderVideoTransform):
(WebCore):
(WebCore::VertexShaderVideoTransform::init):
(WebCore::VertexShaderVideoTransform::getShaderString):
(WebCore::FragmentShaderOESImageExternal::init):
(WebCore::FragmentShaderOESImageExternal::getShaderString):
* platform/graphics/chromium/ShaderChromium.h:
(VertexShaderVideoTransform):
(WebCore::VertexShaderVideoTransform::matrixLocation):
(WebCore::VertexShaderVideoTransform::texTransformLocation):
(WebCore::VertexShaderVideoTransform::texMatrixLocation):
(WebCore):
(FragmentShaderOESImageExternal):
* platform/graphics/chromium/VideoFrameChromium.h:
* platform/graphics/chromium/VideoFrameProvider.h:
(Client):
(VideoFrameProvider):
* platform/graphics/chromium/cc/CCVideoDrawQuad.cpp:
(WebCore::CCVideoDrawQuad::CCVideoDrawQuad):
* platform/graphics/chromium/cc/CCVideoDrawQuad.h:
(WebCore::CCVideoDrawQuad::matrix):
(CCVideoDrawQuad):
(WebCore::CCVideoDrawQuad::setMatrix):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore):
(WebCore::CCVideoLayerImpl::CCVideoLayerImpl):
(WebCore::convertVFCFormatToGC3DFormat):
(WebCore::CCVideoLayerImpl::appendQuads):
(WebCore::CCVideoLayerImpl::didReceiveFrame):
(WebCore::CCVideoLayerImpl::didUpdateMatrix):
(WebCore::CCVideoLayerImpl::setNeedsRedraw):
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:
(WebCore):
(CCVideoLayerImpl):

Source/WebKit/chromium:

* WebKit.gyp:
* public/WebMediaPlayer.h:
(WebKit):
(WebKit::WebMediaPlayer::setStreamTextureClient):
(WebMediaPlayer):
* public/WebStreamTextureClient.h: Copied from Source/WebKit/chromium/public/WebVideoFrame.h.
(WebKit):
(WebStreamTextureClient):
(WebKit::WebStreamTextureClient::~WebStreamTextureClient):
* public/WebVideoFrame.h:
* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::~WebMediaPlayerClientImpl):
(WebKit::WebMediaPlayerClientImpl::setVideoFrameProviderClient):
(WebKit::WebMediaPlayerClientImpl::didReceiveFrame):
(WebKit):
(WebKit::WebMediaPlayerClientImpl::didUpdateMatrix):
* src/WebMediaPlayerClientImpl.h:
(WebMediaPlayerClientImpl):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108675 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoSource/WebCore: [chromium] Implement drop-shadow() CSS filter on composited layers.
senorblanco@chromium.org [Thu, 23 Feb 2012 22:05:15 +0000 (22:05 +0000)]
Source/WebCore: [chromium] Implement drop-shadow() CSS filter on composited layers.
https://bugs.webkit.org/show_bug.cgi?id=79386

Reviewed by James Robinson.

Covered by css3/filters/effect-drop-shadow-hw.html

* platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:
(WebCore::CCRenderSurfaceFilters::apply):
* platform/graphics/filters/FilterOperation.h:
(WebCore::DropShadowFilterOperation::movesPixels):

LayoutTests: [chromium] Mark drop-shadow() tests as failing, pending a rebaseline.
https://bugs.webkit.org/show_bug.cgi?id=79386

Reviewed by James Robinson.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108674 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoBuild fix.
fpizlo@apple.com [Thu, 23 Feb 2012 21:42:02 +0000 (21:42 +0000)]
Build fix.

* llint/LLIntOffsetsExtractor.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108672 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoVersioning.
lforschler@apple.com [Thu, 23 Feb 2012 21:41:17 +0000 (21:41 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108671 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoAdd support for InterfaceName in the bindings
arv@chromium.org [Thu, 23 Feb 2012 21:23:11 +0000 (21:23 +0000)]
Add support for InterfaceName in the bindings
https://bugs.webkit.org/show_bug.cgi?id=79384

Reviewed by Adam Barth.

This makes the interface name part of the idl file instead of being hard coded into the code generators.

* bindings/scripts/CodeGenerator.pm:
(GetVisibleInterfaceName): Extracted from CodeGenerator{JS,V8}.pm and changed to look at the extended attribute.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
(GenerateConstructorDefinition):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateImplementation):
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore):
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::ConfigureV8TestObjTemplate):
* dom/DOMCoreException.idl: Set the InterfaceName.
* html/DOMFormData.idl: Ditto.
* plugins/DOMMimeType.idl: Ditto.
* plugins/DOMMimeTypeArray.idl: Ditto.
* plugins/DOMPlugin.idl: Ditto.
* plugins/DOMPluginArray.idl: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108669 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoREGRESSION(r99076): WebKit pastes the trailing newline into a single-line text field
rniwa@webkit.org [Thu, 23 Feb 2012 21:17:27 +0000 (21:17 +0000)]
REGRESSION(r99076): WebKit pastes the trailing newline into a single-line text field
https://bugs.webkit.org/show_bug.cgi?id=79305

Reviewed by Tony Chang.

Source/WebCore:

The bug was caused by ReplacementFragment::m_hasInterchangeNewlineAtEnd not reset even when
text field's beforeTextInserted event handler removed interchange new lines at the end.
Because the event handler is responsible for trimming new lines, we need to recompute the values
for m_hasInterchangeNewlineAt* after the event dispatch.

Test: editing/input/paste-text-ending-with-interchange-newline.html

* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplacementFragment::ReplacementFragment):

LayoutTests:

Add a regression test. Also make Markup.dump() dump the shadow DOM of the specififed node.

* editing/input/paste-text-ending-with-interchange-newline-expected.txt: Added.
* editing/input/paste-text-ending-with-interchange-newline.html: Added.
* resources/dump-as-markup.js:
(Markup._get):
(Markup._getShadowHostIfPossible):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108668 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoMake use of StylePropertySet::setProperty(propertyID, CSSValue).
kling@webkit.org [Thu, 23 Feb 2012 21:15:16 +0000 (21:15 +0000)]
Make use of StylePropertySet::setProperty(propertyID, CSSValue).
<http://webkit.org/b/79374>

Reviewed by Antti Koivisto.

Use the new setProperty() overload that takes a CSSValue in more places. This allows us
to get rid of 1/3 setProperty() overloads that don't expand shorthands.

* css/StylePropertySet.h:
* css/StylePropertySet.cpp:

    Remove the setProperty() overload for specific primitive value types. StyledElement
    can take care of this without help from StylePropertySet.

* dom/StyledElement.h:
* dom/StyledElement.cpp:
(WebCore::StyledElement::setInlineStyleProperty):
(WebCore::StyledElement::addPropertyToAttributeStyle):

    Switch some functions over to using the setProperty() overload that takes a CSSValue.

* html/HTMLElement.cpp:
(WebCore::HTMLElement::applyBorderAttributeToStyle):
* html/HTMLHRElement.cpp:
(WebCore::HTMLHRElement::collectStyleForAttribute):
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::collectStyleForAttribute):
* html/HTMLTablePartElement.cpp:
(WebCore::HTMLTablePartElement::collectStyleForAttribute):

    Use shorthands where possible to shrink the code a bit. Pass border widths as CSS_PX
    values directly instead of making a CSSParser round-trip.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108667 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Clean up GraphicsContext3D initialization paths
jamesr@google.com [Thu, 23 Feb 2012 21:09:18 +0000 (21:09 +0000)]
[chromium] Clean up GraphicsContext3D initialization paths
https://bugs.webkit.org/show_bug.cgi?id=79321

Reviewed by Kenneth Russell.

This simplifies the GraphicsContext3D initialization paths down to two simple codepaths, one for offscreen
contexts initialized from WebCore and one for onscreen (compositor) contexts initialized by WebViewImpl or
WebLayerTreeViewImpl.

Offscreen initialization path:
1) WebCore code calls WebCore::GraphicsContext3D::create(), implemented in GraphicsContext3DChromium.cpp
2) GraphicsContext3D::create() instantiates a WebGraphicsContext3D via the static WebKitPlatformSupport interface
3) GraphicsContext3DPrivate::createGraphicsContextFromWebContext() wraps the WebGraphicsContext3D in a
GraphicsContext3D's m_private pointer.

Onscreen initialization path:
1) WebViewImpl or WebLayerTreeViewImpl request an onscreen WebGraphicsContext3D from either their WebViewClient
or WebLayerTreeViewClient, respectively
2) GraphicsContext3DPrivate::createGraphicsContextFromWebContext() wraps the WebGraphicsContext3D in a
GraphicsContext3D's m_private pointer.

There are no other initialization paths. Specifically, we do not support instantiating onscreen contexts from
within WebCore.

* src/GraphicsContext3DChromium.cpp:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromWebContext):
(WebCore):
(WebCore::GraphicsContext3DPrivate::platformTexture):
(WebCore::GraphicsContext3D::create):
* src/GraphicsContext3DPrivate.h:
(GraphicsContext3DPrivate):
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::createLayerTreeHostContext3D):
* src/WebViewImpl.cpp:
(std::getCompositorContextAttributes):
(WebKit::WebViewImpl::createLayerTreeHostContext3D):
(WebKit::WebViewImpl::graphicsContext3D):
* tests/CCLayerTreeHostImplTest.cpp:
(WebKit::CCLayerTreeHostImplTest::createContext):
(CCLayerTreeHostImplTest):
(WebKit::TEST_F):
* tests/CCLayerTreeHostTest.cpp:
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
* tests/Canvas2DLayerChromiumTest.cpp:
(WebCore::Canvas2DLayerChromiumTest::fullLifecycleTest):
* tests/CompositorFakeGraphicsContext3D.h:
(WebCore::createCompositorMockGraphicsContext3D):
* tests/FakeGraphicsContext3DTest.cpp:
(TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108666 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoAdd UserGestureIndicator capability to Chromium API.
commit-queue@webkit.org [Thu, 23 Feb 2012 21:06:18 +0000 (21:06 +0000)]
Add UserGestureIndicator capability to Chromium API.
https://bugs.webkit.org/show_bug.cgi?id=77690

Patch by Greg Billock <gbillock@google.com> on 2012-02-23
Reviewed by Darin Fisher.

* WebKit.gyp:
* public/WebScopedUserGesture.h: Added.
* src/WebScopedUserGesture.cpp: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108665 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[wx] Build fixes, update the build system after recent changes.
kevino@webkit.org [Thu, 23 Feb 2012 20:54:16 +0000 (20:54 +0000)]
[wx] Build fixes, update the build system after recent changes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108664 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[wx] Build fix, use the strings in LocalizedStrings.cpp.
kevino@webkit.org [Thu, 23 Feb 2012 20:52:19 +0000 (20:52 +0000)]
[wx] Build fix, use the strings in LocalizedStrings.cpp.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108663 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoAdd missing "Reviewed by" line to change log entry for changeset r108631
dbates@webkit.org [Thu, 23 Feb 2012 20:51:33 +0000 (20:51 +0000)]
Add missing "Reviewed by" line to change log entry for changeset r108631
(https://bugs.webkit.org/show_bug.cgi?id=79252)

The patch landed in changeset r108631 was reviewed by Martin Robinson.

* ChangeLog:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108662 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[wx] Build fix, disable LLINT for now and fix ENABLE defines for it.
kevino@webkit.org [Thu, 23 Feb 2012 20:48:35 +0000 (20:48 +0000)]
[wx] Build fix, disable LLINT for now and fix ENABLE defines for it.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108661 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[wx] Build fix for non-Mac wx builds.
kevino@webkit.org [Thu, 23 Feb 2012 20:47:24 +0000 (20:47 +0000)]
[wx] Build fix for non-Mac wx builds.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108660 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoMicrosoft IE fishtank demo causes assertion in RenderLayer::convertToLayerCoords
alokp@chromium.org [Thu, 23 Feb 2012 20:46:31 +0000 (20:46 +0000)]
Microsoft IE fishtank demo causes assertion in RenderLayer::convertToLayerCoords
https://bugs.webkit.org/show_bug.cgi?id=61964

Reviewed by James Robinson.

The assertion is caused with the following callstack:
WebCore::RenderLayer::convertToLayerCoords
WebCore::RenderLayerCompositor::layerWillBeRemoved
WebCore::RenderLayer::removeChild
WebCore::RenderLayer::removeOnlyThisLayer

WebCore::RenderLayer::removeOnlyThisLayer removes itself from the parent
before moving its children to its parent. When WebCore::RenderLayer::convertToLayerCoords
is called for one of the children, it tries to walk to root only to stop at the immediate
parent which was disconnected from the tree in WebCore::RenderLayer::removeOnlyThisLayer.
If removal of layer is delayed until the children has been moved, the ASSERT is avoided.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::removeOnlyThisLayer):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108659 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoMissed an if from r108657.
mdelaney@apple.com [Thu, 23 Feb 2012 20:27:31 +0000 (20:27 +0000)]
Missed an if from r108657.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108658 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoFix for canvas breakage caused by r108597 from the following:
mdelaney@apple.com [Thu, 23 Feb 2012 20:17:21 +0000 (20:17 +0000)]
Fix for canvas breakage caused by r108597 from the following:
https://bugs.webkit.org/show_bug.cgi?id=79317

Reviewed by Oliver Hunt.

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::paintsIntoCanvasBuffer):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108657 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoWeb Inspector: mad Redo to Cmd+Shift+Z, not Cmd+Y on a Mac.
pfeldman@chromium.org [Thu, 23 Feb 2012 20:06:01 +0000 (20:06 +0000)]
Web Inspector: mad Redo to Cmd+Shift+Z, not Cmd+Y on a Mac.
https://bugs.webkit.org/show_bug.cgi?id=79341

Reviewed by Timothy Hatcher.

* inspector/front-end/ElementsPanel.js:
(WebInspector.ElementsPanel.prototype.handleShortcut):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108656 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Thu, 23 Feb 2012 20:02:28 +0000 (20:02 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped: Skip a failing test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108655 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoMac build fix after 108629.
rniwa@webkit.org [Thu, 23 Feb 2012 19:58:49 +0000 (19:58 +0000)]
Mac build fix after 108629.

* WebCore.exp.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108654 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] XSS Auditor bypass via javascript url and control characters
tsepez@chromium.org [Thu, 23 Feb 2012 19:46:48 +0000 (19:46 +0000)]
[chromium] XSS Auditor bypass via javascript url and control characters
https://bugs.webkit.org/show_bug.cgi?id=79154

Reviewed by Adam Barth.

Source/WebCore:

Test: http/tests/security/xssAuditor/javascript-link-control-char2.html

* html/parser/XSSAuditor.cpp:
(WebCore):
(WebCore::XSSAuditor::eraseDangerousAttributesIfInjected):

LayoutTests:

* http/tests/security/xssAuditor/javascript-link-control-char2-expected.txt: Added.
* http/tests/security/xssAuditor/javascript-link-control-char2.html: Added.
* platform/chromium/http/tests/security/xssAuditor: Added.
* platform/chromium/http/tests/security/xssAuditor/javascript-link-control-char2-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108653 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoDFG's logic for emitting a Flush is too convoluted and contains an inaccurate comment
fpizlo@apple.com [Thu, 23 Feb 2012 19:45:38 +0000 (19:45 +0000)]
DFG's logic for emitting a Flush is too convoluted and contains an inaccurate comment
https://bugs.webkit.org/show_bug.cgi?id=79334

Reviewed by Oliver Hunt.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::getArgument):
(JSC::DFG::ByteCodeParser::flush):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108652 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoObject.isSealed / Object.isFrozen don't work for native objects
barraclough@apple.com [Thu, 23 Feb 2012 19:43:07 +0000 (19:43 +0000)]
Object.isSealed / Object.isFrozen don't work for native objects
https://bugs.webkit.org/show_bug.cgi?id=79331

Reviewed by Sam Weinig.

Need to inspect all properties, including static ones.
This exposes a couple of bugs in Array & Arguments:
    - getOwnPropertyDescriptor doesn't correctly report the writable attribute of array length.
    - Arguments object's defineOwnProperty does not handle callee/caller/length correctly.

Source/JavaScriptCore:

* runtime/Arguments.cpp:
(JSC::Arguments::defineOwnProperty):
    - Add handling for callee/caller/length.
* runtime/JSArray.cpp:
(JSC::JSArray::getOwnPropertyDescriptor):
    - report length's writability correctly.
* runtime/ObjectConstructor.cpp:
(JSC::objectConstructorSeal):
(JSC::objectConstructorFreeze):
(JSC::objectConstructorIsSealed):
(JSC::objectConstructorIsFrozen):
    - Add spec-based implementation for non-final objects.

LayoutTests:

* fast/js/preventExtensions-expected.txt:
* fast/js/script-tests/preventExtensions.js:
    - Added tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108651 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agopop of array hole should get from the prototype chain
barraclough@apple.com [Thu, 23 Feb 2012 19:41:12 +0000 (19:41 +0000)]
pop of array hole should get from the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=79338

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* runtime/JSArray.cpp:
(JSC::JSArray::pop):
    - If the fast fast vector case fails, more closely follow the spec.

LayoutTests:

* sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.6_Array_prototype_pop/S15.4.4.6_A4_T1-expected.txt:
    - Checking passing test result.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108650 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoJSString::outOfMemory() should ASSERT(isRope()) rather than !isRope()
commit-queue@webkit.org [Thu, 23 Feb 2012 19:29:14 +0000 (19:29 +0000)]
JSString::outOfMemory() should ASSERT(isRope()) rather than !isRope()
https://bugs.webkit.org/show_bug.cgi?id=79268

Patch by Yong Li <yoli@rim.com> on 2012-02-23
Reviewed by Michael Saboff.

resolveRope() is the only caller of outOfMemory(), and it calls outOfMemory()
after it fails to allocate a buffer for m_value. So outOfMemory() should assert
isRope() rather than !isRope().

* runtime/JSString.cpp:
(JSC::JSString::outOfMemory):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108649 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[CMake] Add WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS macro
paroga@webkit.org [Thu, 23 Feb 2012 19:23:47 +0000 (19:23 +0000)]
[CMake] Add WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS macro
https://bugs.webkit.org/show_bug.cgi?id=79371

Reviewed by Daniel Bates.

.:

Add a new macro to handle the inclusion of the platform specific *.cmake files.
In the future this macro should get expanded to also handle feature specifc
files, like the UseJSC.cmake in WebCore we already have.

* Source/cmake/WebKitMacros.cmake:

Source/JavaScriptCore:

* CMakeLists.txt:
* shell/CMakeLists.txt:
* wtf/CMakeLists.txt:

Source/WebCore:

* CMakeLists.txt:

Source/WebKit:

* CMakeLists.txt:
* PlatformBlackBerry.cmake: Renamed from Source/WebKit/blackberry/CMakeListsBlackBerry.txt.
* PlatformEfl.cmake: Renamed from Source/WebKit/efl/CMakeListsEfl.txt.
* PlatformWinCE.cmake: Renamed from Source/WebKit/wince/CMakeListsWinCE.txt.

Source/WebKit2:

* CMakeLists.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108648 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[CMake] Add FindDirectX
paroga@webkit.org [Thu, 23 Feb 2012 19:15:49 +0000 (19:15 +0000)]
[CMake] Add FindDirectX
https://bugs.webkit.org/show_bug.cgi?id=79344

Reviewed by Adam Roben.

* Source/cmake/FindDirectX.cmake: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108647 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Thu, 23 Feb 2012 19:14:34 +0000 (19:14 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped:
* platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png:
* platform/qt/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108646 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoCleanup RenderBlock::moveChildrenTo
jchaffraix@webkit.org [Thu, 23 Feb 2012 19:12:01 +0000 (19:12 +0000)]
Cleanup RenderBlock::moveChildrenTo
https://bugs.webkit.org/show_bug.cgi?id=79319

Reviewed by Eric Seidel.

Refactoring, no change in behavior expected.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::moveChildrenTo):
Removed inline check that was redundant, switched to |while| to a |for|
to show what's going on more closely and adds a call to moveChildTo to
share more code between the 2 functions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108645 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[CMake] Add FindQuickTimeSDK
paroga@webkit.org [Thu, 23 Feb 2012 19:06:33 +0000 (19:06 +0000)]
[CMake] Add FindQuickTimeSDK
https://bugs.webkit.org/show_bug.cgi?id=79345

Reviewed by Adam Roben.

* Source/cmake/FindQuickTimeSDK.cmake: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108644 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt] Add support for touch cancellation
hausmann@webkit.org [Thu, 23 Feb 2012 19:00:11 +0000 (19:00 +0000)]
[Qt] Add support for touch cancellation
https://bugs.webkit.org/show_bug.cgi?id=79348

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Map Qt touch cancel events to the WebCore equivalent.

No new tests, unskipped existing test for Qt 5.

* platform/PlatformTouchPoint.h:
(PlatformTouchPoint):
* platform/qt/PlatformTouchEventQt.cpp:
(WebCore::PlatformTouchEvent::PlatformTouchEvent):
* platform/qt/PlatformTouchPointQt.cpp:
(WebCore::PlatformTouchPoint::PlatformTouchPoint):

Source/WebKit/qt:

Forward incoming touch cancellation events to the WebCore
event handler.

* Api/qgraphicswebview.cpp:
(QGraphicsWebView::sceneEvent):
* Api/qwebpage.cpp:
(QWebPage::event):
* Api/qwebview.cpp:
(QWebView::event):

Source/WebKit2:

Convert and forward incoming touch cancellation events
to the web process.

* Shared/qt/WebEventFactoryQt.cpp:
(WebKit::webEventTypeForEvent):
(WebKit::WebEventFactory::createWebTouchEvent):
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebView::event):
* UIProcess/qt/QtWebPageEventHandler.cpp:
(QtWebPageEventHandler::handleEvent):

Tools:

Added straight-forward touch cancellation event sending to Qt WK1 DRT
and WK2 WTR.

* DumpRenderTree/qt/EventSenderQt.cpp:
(EventSender::touchCancel):
(EventSender::cancelTouchPoint):
* DumpRenderTree/qt/EventSenderQt.h:
(EventSender):
* WebKitTestRunner/EventSenderProxy.h:
(EventSenderProxy):
* WebKitTestRunner/InjectedBundle/Bindings/EventSendingController.idl:
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
(WTR::EventSendingController::touchCancel):
(WTR):
(WTR::EventSendingController::cancelTouchPoint):
* WebKitTestRunner/InjectedBundle/EventSendingController.h:
(EventSendingController):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/qt/EventSenderProxyQt.cpp:
(WTR::EventSenderProxy::touchCancel):
(WTR):
(WTR::EventSenderProxy::cancelTouchPoint):

LayoutTests:

Moved touch cancel event layout tests from general skip list to the
Qt 4 specific one. The Qt 5 version we depend on has QEvent::TouchCancel, which
is all we need in order to implement touch cancellation in DRT/WTR.

* platform/qt-4.8/Skipped:
* platform/qt/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@108643 268f45cc-cd09-0410-ab3c-d52691b4dbfc