WebKit-https.git
7 years agoWeb Inspector: speed up _calculateRetainedSizes function
loislo@chromium.org [Mon, 4 Jun 2012 12:38:30 +0000 (12:38 +0000)]
Web Inspector: speed up _calculateRetainedSizes function
https://bugs.webkit.org/show_bug.cgi?id=87863

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-06-04
Reviewed by Yury Semikhatsky.

PerformanceTests:

* inspector/heap-snapshot-advanced.html: Added.
* inspector/heap-snapshot-performance-test.js: Copied from PerformanceTests/inspector/heap-snapshot.html.
(test.performanceTest.step0):
(test.performanceTest.step1):
(test.performanceTest.step2):
(test.performanceTest.cleanup):
(test.performanceTest.done):
(test.performanceTest):
(test):
* inspector/heap-snapshot.html:

Source/WebCore:

* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot.prototype._calculateRetainedSizes):

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

7 years agoUnreviewed. Disable heap profiler test on mac platform.
loislo@chromium.org [Mon, 4 Jun 2012 12:35:32 +0000 (12:35 +0000)]
Unreviewed. Disable heap profiler test on mac platform.

* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:

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

7 years agoUnreviewed, rolling out r119384.
commit-queue@webkit.org [Mon, 4 Jun 2012 12:17:10 +0000 (12:17 +0000)]
Unreviewed, rolling out r119384.
http://trac.webkit.org/changeset/119384
https://bugs.webkit.org/show_bug.cgi?id=88227

Need to update some tests, I'll roll in later. (Requested by
Zoltan on #webkit).

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

* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::dispatchWillSendRequest):

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

7 years agoWeb Inspector: add unknown size to the memory pie-chart legend
loislo@chromium.org [Mon, 4 Jun 2012 12:02:24 +0000 (12:02 +0000)]
Web Inspector: add unknown size to the memory pie-chart legend
https://bugs.webkit.org/show_bug.cgi?id=88081

Patch by Yury Semikhatsky <yurys@chromium.org> on 2012-06-04
Reviewed by Pavel Feldman.

Added "Unknown" part size to the memory pie-chart legend.

* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked.didReceiveMemorySnapshot):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked):
(WebInspector.MemoryBlockViewProperties._initialize):
(WebInspector.NativeMemoryPieChart.prototype._paint):

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

7 years ago[Qt][WK2] Refactor the tap gesture recognizer
abecsi@webkit.org [Mon, 4 Jun 2012 11:31:15 +0000 (11:31 +0000)]
[Qt][WK2] Refactor the tap gesture recognizer
https://bugs.webkit.org/show_bug.cgi?id=88096

Reviewed by Simon Hausmann.

Refactor the tap gesture recognizer so that its internal state machine is
self contained and independent of input event types.
Also change the internal API for tap highlighting to make the code easier
to understand on the caller side.

This patch makes the tap gesture recognizer more robust, consistent with
other gesture recognizers and fixes some issues related to highlighting
and link activation with respect to native touch events.

* UIProcess/qt/QtTapGestureRecognizer.cpp:
(WebKit::QtTapGestureRecognizer::QtTapGestureRecognizer):
(WebKit::QtTapGestureRecognizer::withinDistance):
(WebKit::QtTapGestureRecognizer::update):
(WebKit::QtTapGestureRecognizer::finish):
(WebKit::QtTapGestureRecognizer::cancel):
(WebKit::QtTapGestureRecognizer::highlightTimeout):
(WebKit::QtTapGestureRecognizer::singleTapTimeout):
(WebKit::QtTapGestureRecognizer::tapAndHoldTimeout):
(WebKit::QtTapGestureRecognizer::reset):
* UIProcess/qt/QtTapGestureRecognizer.h:
(QtTapGestureRecognizer):
* UIProcess/qt/QtWebPageEventHandler.cpp:
(WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
(WebKit::QtWebPageEventHandler::activateTapHighlight):
(WebKit::QtWebPageEventHandler::deactivateTapHighlight):
(WebKit):
(WebKit::QtWebPageEventHandler::handleSingleTapEvent):
(WebKit::QtWebPageEventHandler::handleDoubleTapEvent):
(WebKit::QtWebPageEventHandler::doneWithTouchEvent):
* UIProcess/qt/QtWebPageEventHandler.h:
(QtWebPageEventHandler):

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

7 years ago[Qt] Qt DRT / WTR should be able to load external resources
zoltan@webkit.org [Mon, 4 Jun 2012 11:26:11 +0000 (11:26 +0000)]
[Qt] Qt DRT / WTR should be able to load external resources
https://bugs.webkit.org/show_bug.cgi?id=87326

Reviewed by Ryosuke Niwa.

Allow external resources to be loaded when the main frame's URL is also an external resource.
This change is analogous to r118231 for Mac port and to r119153 Chromium port.

* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::blockRequest):
(WebCore):
(WebCore::isLocalhost):
(WebCore::hostIsUsedBySomeTestsToGenerateError):
(WebCore::FrameLoaderClientQt::dispatchWillSendRequest):

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

7 years agoUnreviewed. Update NEWS and configure.ac for 1.9.3 release
carlosgc@webkit.org [Mon, 4 Jun 2012 11:00:09 +0000 (11:00 +0000)]
Unreviewed. Update NEWS and configure.ac for 1.9.3 release

.:

* configure.ac: Bump version number.

Source/WebKit/gtk:

* NEWS: Added release notes for 1.9.3.

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

7 years ago[Qt] Don't use WebKit HAVE() macro in public Qt headers
vestbo@webkit.org [Mon, 4 Jun 2012 10:24:38 +0000 (10:24 +0000)]
[Qt] Don't use WebKit HAVE() macro in public Qt headers

Reviewed by Kenneth Rohde Christiansen.

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

7 years agoAdding explicit console error for duplicated CSP directives.
commit-queue@webkit.org [Mon, 4 Jun 2012 10:09:59 +0000 (10:09 +0000)]
Adding explicit console error for duplicated CSP directives.
https://bugs.webkit.org/show_bug.cgi?id=88193

Source/WebCore:

This patch adds an explicit error message for duplicated CSP
directives instead of reusing the "unrecognized directive" error.

Patch by Mike West <mkwst@chromium.org> on 2012-06-04
Reviewed by Adam Barth.

Test: http/tests/security/contentSecurityPolicy/duplicate-directive.html

* page/ContentSecurityPolicy.cpp:
(CSPDirectiveList):
(WebCore::CSPDirectiveList::logDuplicateDirective):
(WebCore):
(WebCore::CSPDirectiveList::parseReportURI):
(WebCore::CSPDirectiveList::setCSPDirective):
(WebCore::CSPDirectiveList::applySandboxPolicy):
(WebCore::CSPDirectiveList::addDirective):

LayoutTests:

Patch by Mike West <mkwst@chromium.org> on 2012-06-04
Reviewed by Adam Barth.

* http/tests/security/contentSecurityPolicy/duplicate-directive-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/duplicate-directive.html: Added.

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

7 years agoREGRESSION(r117929) [Forms] input type=number thinks 0 is not a number
yosin@chromium.org [Mon, 4 Jun 2012 09:48:59 +0000 (09:48 +0000)]
REGRESSION(r117929) [Forms] input type=number thinks 0 is not a number
https://bugs.webkit.org/show_bug.cgi?id=88208

Reviewed by Kent Tamura.

Source/WebCore:

This patch fixes invalid handling of return value of parseToDoubleForNumberType
in NumberInputType::isAcceptableValue to use isfinite() function for checking
whether specified string is valid number or not. Before r117929, return value
of parseToDoubleForNumberType was bool, but after r117929, it is double.

Test: fast/forms/number/input-number-from-renderer.html

* html/NumberInputType.cpp:
(WebCore::NumberInputType::isAcceptableValue): Use isfinite()

LayoutTests:

This patch introduced function checkIt() for code sharing and added
more test cases to input-number-commit-valid-only.htm

* fast/forms/number/input-number-commit-valid-only-expected.txt: Changed for additional tests.
* fast/forms/number/input-number-commit-valid-only.html: Changed.

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

7 years agoCrash in WebCore::RenderView::getRetainedWidgets
antti@apple.com [Mon, 4 Jun 2012 09:32:05 +0000 (09:32 +0000)]
Crash in WebCore::RenderView::getRetainedWidgets
https://bugs.webkit.org/show_bug.cgi?id=88217

Reviewed by Kenneth Rohde Christiansen.

There is no known repro, the crash has been seen on the field. It is likely that it happens with frame
flattening enabled only.

Null check root renderer in performPostLayoutTasks. The root can legitimely be null for several reasons and
is mostly null checked everywhere else.

* page/FrameView.cpp:
(WebCore::FrameView::performPostLayoutTasks):

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

7 years ago[EFL] Reset "WebKitTabToLinksPreferenceKey" in DumpRenderTreeChrome::resetDefaultsToC...
commit-queue@webkit.org [Mon, 4 Jun 2012 09:28:34 +0000 (09:28 +0000)]
[EFL] Reset "WebKitTabToLinksPreferenceKey" in DumpRenderTreeChrome::resetDefaultsToConsistentValues
https://bugs.webkit.org/show_bug.cgi?id=87668

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-06-04
Reviewed by Ryosuke Niwa.

Tools:

Layout test controller "WebKitTabToLinksPreferenceKey" setting should be reset to false
otherwise LayoutTests/fast/html/tab-order.html is failing as it has a link inside the test description which might
be included in focus chain (if "WebKitTabToLinksPreferenceKey" setting is set to true).

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

LayoutTests:

* platform/efl/Skipped: Unskipped fast/html/tab-order.html.

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

7 years ago[GTK] Remove geoclue dependency from WebKit API Layer
mario@webkit.org [Mon, 4 Jun 2012 09:06:26 +0000 (09:06 +0000)]
[GTK] Remove geoclue dependency from WebKit API Layer
https://bugs.webkit.org/show_bug.cgi?id=87801

Reviewed by Martin Robinson.

Make GeolocationClient for WebKitGTK+ use the new Geoclue-based
geolocation provider available in WebCore.

* WebCoreSupport/GeolocationClientGtk.cpp:
(WebKit):
(WebKit::GeolocationClient::GeolocationClient):
(WebKit::GeolocationClient::startUpdating):
(WebKit::GeolocationClient::stopUpdating):
(WebKit::GeolocationClient::setEnableHighAccuracy):
(WebKit::GeolocationClient::notifyPositionChanged):
(WebKit::GeolocationClient::notifyErrorOccurred):
* WebCoreSupport/GeolocationClientGtk.h:
(GeolocationClient):

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

7 years agoUse SelectorQuery in Element::webkitMatchesSelector()
haraken@chromium.org [Mon, 4 Jun 2012 08:52:08 +0000 (08:52 +0000)]
Use SelectorQuery in Element::webkitMatchesSelector()
https://bugs.webkit.org/show_bug.cgi?id=88209

Reviewed by Antti Koivisto.

By using SelectorQuery in Element::webkitMatchesSelector(),
we can not only simplify the code but also improve the performance
thanks to the cache mechanism of SelectorQuery which was implemented
in bug 87942.

Tests: fast/dom/SelectorAPI/*. No change in test results.

* dom/Element.cpp:
(WebCore::Element::webkitMatchesSelector):
* dom/SelectorQuery.cpp:
(WebCore::SelectorQuery::matches):
(WebCore):
* dom/SelectorQuery.h:
(SelectorQuery):

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

7 years ago[EFL] Refactor ewk_view_context_paint code.
commit-queue@webkit.org [Mon, 4 Jun 2012 08:45:38 +0000 (08:45 +0000)]
[EFL] Refactor ewk_view_context_paint code.
https://bugs.webkit.org/show_bug.cgi?id=85588

Patch by Tomasz Morawski <t.morawski@samsung.com> on 2012-06-04
Reviewed by Hajime Morita.

Source/WebKit:

Added new ewk_paint_context.cpp file to source list.

* PlatformEfl.cmake:

Source/WebKit/efl:

The main purpose of this change is reduce size of ewk_view.h/cpp files and make use of ewk_view_context_paint
object by ewk_view_single and ewk_view_tiled instead of direct operations on cairo.
The code is more objective and looks very simple now.
Remove ewk_view_context_paint code from ewk_view h/cpp file and move it to separate new ewk_context_paint file.
The ewk_view_context_paint has been renamed to ewk_context_paint and it is not binded to view on creation time.

* ewk/ewk_paint_context.cpp: Added.
Functions renamed and moved from ewk_view to ewk_paint_context file.
(ewk_paint_context_new):
(ewk_paint_context_from_image_new): New function.
(ewk_paint_context_from_image_data_new): New function.
(ewk_paint_context_free):
(ewk_paint_context_save):
(ewk_paint_context_restore):
(ewk_paint_context_clip):
(ewk_paint_context_scale):
(ewk_paint_context_translate):
(ewk_paint_context_paint): Added FrameView parameter.
(ewk_paint_context_paint_contents): Added FrameView parameter.
* ewk/ewk_paint_context_private.h: Added.
(_Ewk_Paint_Context):
* ewk/ewk_private.h: Functions ewk_view_paint and ewk_view_paint_contents moved from ewk_view.h.
* ewk/ewk_tiled_backing_store.h: Removed unused include.
* ewk/ewk_view.cpp: Moved all function releated to paint context object to new ewk_paint_context file.
(_Ewk_View_Private_Data):
(ewk_view_paint): Changed function according change in ewk_paint_context_paint function.
(ewk_view_paint_contents): Changed function according change in ewk_paint_context_paint_contents function.
* ewk/ewk_view.h: Removed all paint context functions and ewk_view_paint, ewk_view_paint_contents function from
public API.
* ewk/ewk_view_single.cpp:
(_ewk_view_single_smart_repaints_process):
Refactor of _ewk_view_single_smart_repaints_process function.
Removed goto statements.
Removed variables declaration from function beginning.
* ewk/ewk_view_tiled.cpp:
(_ewk_view_tiled_render_cb): Make use of ewk_paint_context object instead of direction operation on cairo.
Looks simpler and more objective.

Tools:

* DumpRenderTree/efl/CMakeLists.txt: Added include directory.

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

7 years ago[EFL] Compilation warning in DumpRenderTreeView.cpp on 64-Bit
commit-queue@webkit.org [Mon, 4 Jun 2012 07:00:15 +0000 (07:00 +0000)]
[EFL] Compilation warning in DumpRenderTreeView.cpp on 64-Bit
https://bugs.webkit.org/show_bug.cgi?id=87869

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-04
Reviewed by Andreas Kling.

Replace %lld by PRId64 macro to print an int64_t value and silent a
compilation warning on 64-Bit.

* DumpRenderTree/efl/DumpRenderTreeView.cpp:
(onExceededApplicationCacheQuota):

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

7 years agoRoll Chromium DEPS from r140222 to r140260.
rniwa@webkit.org [Mon, 4 Jun 2012 06:20:39 +0000 (06:20 +0000)]
Roll Chromium DEPS from r140222 to r140260.

* DEPS:

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

7 years ago[chromium] DataTransferItem.webkitGetAsEntry() should synchronously return entry
kinuko@chromium.org [Mon, 4 Jun 2012 05:38:04 +0000 (05:38 +0000)]
[chromium] DataTransferItem.webkitGetAsEntry() should synchronously return entry
https://bugs.webkit.org/show_bug.cgi?id=87969

Reviewed by Tony Chang.

Source/WebCore:

Per discussion on whatwg we should make webkitGetAsEntry synchronous.
http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Apr/0079.html

Tests: editing/pasteboard/data-transfer-items-drag-drop-entry.html
       fast/filesystem/cross-filesystem-op.html

* Modules/filesystem/DataTransferItemFileSystem.h:
(DataTransferItemFileSystem):
* Modules/filesystem/DataTransferItemFileSystem.idl:
* Modules/filesystem/chromium/DataTransferItemFileSystemChromium.cpp:
(WebCore::DataTransferItemFileSystem::webkitGetAsEntry): Changed it to synchronously return entry.

LayoutTests:

* editing/pasteboard/data-transfer-items-drag-drop-entry-expected.txt:
* editing/pasteboard/data-transfer-items-drag-drop-entry.html:
* fast/filesystem/cross-filesystem-op.html:
* platform/chromium/test_expectations.txt:

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

7 years agoUnreviewed fix of chromium TestExpectations
shawnsingh@chromium.org [Mon, 4 Jun 2012 05:24:33 +0000 (05:24 +0000)]
Unreviewed fix of chromium TestExpectations

Some extra junk got added by accident when I tried to change
TestExpectations. This patch removes it.

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed rebasline for transforms/3d test cases.
shawnsingh@chromium.org [Mon, 4 Jun 2012 05:10:11 +0000 (05:10 +0000)]
Unreviewed rebasline for transforms/3d test cases.

9 tests re-baselined.
The remainin 6 tests are explicitly enumerated in the TestExpectations file now.

* platform/chromium-linux/transforms/3d/general/perspective-units-expected.png: Added.
* platform/chromium-linux/transforms/3d/hit-testing/backface-hit-test-expected.png: Added.
* platform/chromium-linux/transforms/3d/hit-testing/backface-no-transform-hit-test-expected.png: Added.
* platform/chromium-linux/transforms/3d/point-mapping/3d-point-mapping-3-expected.png: Added.
* platform/chromium-linux/transforms/3d/point-mapping/3d-point-mapping-expected.png: Added.
* platform/chromium-linux/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png: Added.
* platform/chromium-linux/transforms/3d/point-mapping/3d-point-mapping-overlapping-expected.png: Added.
* platform/chromium-linux/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png: Added.
* platform/chromium-mac-leopard/transforms/3d/general/perspective-units-expected.png:
* platform/chromium-mac-leopard/transforms/3d/hit-testing/backface-hit-test-expected.png: Added.
* platform/chromium-mac-leopard/transforms/3d/hit-testing/backface-no-transform-hit-test-expected.png: Added.
* platform/chromium-mac-leopard/transforms/3d/point-mapping/3d-point-mapping-3-expected.png: Added.
* platform/chromium-mac-leopard/transforms/3d/point-mapping/3d-point-mapping-expected.png:
* platform/chromium-mac-leopard/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png:
* platform/chromium-mac-leopard/transforms/3d/point-mapping/3d-point-mapping-overlapping-expected.png:
* platform/chromium-mac-leopard/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png:
* platform/chromium-mac-snowleopard/transforms/3d/general/perspective-units-expected.png:
* platform/chromium-mac-snowleopard/transforms/3d/hit-testing/backface-hit-test-expected.png: Added.
* platform/chromium-mac-snowleopard/transforms/3d/hit-testing/backface-no-transform-hit-test-expected.png: Added.
* platform/chromium-mac-snowleopard/transforms/3d/point-mapping/3d-point-mapping-3-expected.png: Added.
* platform/chromium-mac-snowleopard/transforms/3d/point-mapping/3d-point-mapping-expected.png:
* platform/chromium-mac-snowleopard/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png:
* platform/chromium-mac-snowleopard/transforms/3d/point-mapping/3d-point-mapping-overlapping-expected.png: Added.
* platform/chromium-mac-snowleopard/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png:
* platform/chromium-mac/transforms/3d/general/matrix-with-zoom-3d-expected.png: Added.
* platform/chromium-mac/transforms/3d/general/perspective-units-expected.png: Added.
* platform/chromium-mac/transforms/3d/hit-testing/backface-hit-test-expected.png: Added.
* platform/chromium-mac/transforms/3d/hit-testing/backface-no-transform-hit-test-expected.png: Added.
* platform/chromium-mac/transforms/3d/point-mapping/3d-point-mapping-3-expected.png: Added.
* platform/chromium-mac/transforms/3d/point-mapping/3d-point-mapping-expected.png: Added.
* platform/chromium-mac/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png: Added.
* platform/chromium-mac/transforms/3d/point-mapping/3d-point-mapping-overlapping-expected.png: Added.
* platform/chromium-mac/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png: Added.
* platform/chromium-win/transforms/3d/general/matrix-with-zoom-3d-expected.png: Added.
* platform/chromium-win/transforms/3d/general/perspective-units-expected.png: Added.
* platform/chromium-win/transforms/3d/general/perspective-units-expected.txt: Added.
* platform/chromium-win/transforms/3d/hit-testing/backface-hit-test-expected.png: Added.
* platform/chromium-win/transforms/3d/hit-testing/backface-hit-test-expected.txt: Added.
* platform/chromium-win/transforms/3d/hit-testing/backface-no-transform-hit-test-expected.png: Added.
* platform/chromium-win/transforms/3d/hit-testing/backface-no-transform-hit-test-expected.txt: Added.
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-3-expected.png: Added.
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-3-expected.txt: Added.
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-expected.png:
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-expected.txt:
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-origins-expected.png:
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-origins-expected.txt:
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-overlapping-expected.png: Added.
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-overlapping-expected.txt: Added.
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.png:
* platform/chromium-win/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.txt:
* platform/chromium/TestExpectations:

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

7 years ago[perf-test] Add a benchmark of querySelector() for an element that appears in the...
haraken@chromium.org [Mon, 4 Jun 2012 03:14:20 +0000 (03:14 +0000)]
[perf-test] Add a benchmark of querySelector() for an element that appears in the depths in the document
https://bugs.webkit.org/show_bug.cgi?id=88202

Reviewed by Ryosuke Niwa.

query-selector-first.html tests querySelector() for an element
that appears at the head of the document. query-selector-last.html
tests querySelector() for an element that appears at the tail of
the document. In addition, we want a benchmark of querySelector()
for an element that appears in the depths in the document.

Test results in my Linux desktop:

RESULT Parser: query-selector-deep= 460.776980611 runs/s
median= 460.947503201 runs/s, stdev= 1.72274941942 runs/s, min= 455.696202532 runs/s, max= 463.32046332 runs/s

RESULT Parser: query-selector-deep= 458.925050915 runs/s
median= 459.183673469 runs/s, stdev= 1.47930124139 runs/s, min= 454.545454545 runs/s, max= 460.947503201 runs/s

RESULT Parser: query-selector-deep= 461.866981491 runs/s
median= 461.538461538 runs/s, stdev= 1.14613123359 runs/s, min= 459.183673469 runs/s, max= 463.917525773 runs/s

RESULT Parser: query-selector-deep= 453.922010788 runs/s
median= 454.258855898 runs/s, stdev= 1.77279123317 runs/s, min= 447.204968944 runs/s, max= 455.696202532 runs/s

RESULT Parser: query-selector-deep= 454.666321221 runs/s
median= 454.545454545 runs/s, stdev= 1.65775667417 runs/s, min= 451.127819549 runs/s, max= 456.852791878 runs/s

* Parser/query-selector-deep.html: Added.

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

7 years agoEventTarget.idl should generate JS bindings
dominicc@chromium.org [Mon, 4 Jun 2012 03:06:19 +0000 (03:06 +0000)]
EventTarget.idl should generate JS bindings
https://bugs.webkit.org/show_bug.cgi?id=88120

This is one step in a larger change to expose a constructor for
EventTarget and put EventTarget on the prototype chain of DOM
objects that are event targets, in line with DOM Core. See
<https://bugs.webkit.org/show_bug.cgi?id=67312>

Reviewed by Adam Barth.

No new tests. This change does not change any functionality.

* CMakeLists.txt: Generate JSEventTarget.
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* UseJSC.cmake:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSBindingsAllInOne.cpp: JSEventTarget.cpp was renamed.
* bindings/js/JSEventTarget.h: Removed. Generated now.
* bindings/js/JSEventTargetCustom.cpp: Renamed from Source/WebCore/bindings/js/JSEventTarget.cpp.
* bindings/scripts/CodeGeneratorV8.pm:
(GetInternalFields): EventTarget is an EventTarget.
* dom/EventTarget.idl: Defer to toJS, toEventTarget in JSEventTargetCustom.cpp.

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

7 years ago[perf-test] Make query-selector-last.html more realistic
haraken@chromium.org [Mon, 4 Jun 2012 02:24:49 +0000 (02:24 +0000)]
[perf-test] Make query-selector-last.html more realistic
https://bugs.webkit.org/show_bug.cgi?id=88203

Reviewed by Ryosuke Niwa.

query-selector-last.html tests querySelector() for an element
that appears after 1000 div elements, all of which have the same
id and class. To test the performance of querySelector() under
a lot of ids and classes, we should make the ids and classes of
the 1000 elements different.

This patch degrades the performance of query-selector-last.html
by 3.6%.

[Before]
RESULT Parser: query-selector-last= 476.382274152 runs/s
median= 476.821192053 runs/s, stdev= 1.14578875814 runs/s, min= 474.308300395 runs/s, max= 478.087649402 runs/s

RESULT Parser: query-selector-last= 478.423061861 runs/s
median= 478.723404255 runs/s, stdev= 1.54876867255 runs/s, min= 473.684210526 runs/s, max= 481.347773767 runs/s

RESULT Parser: query-selector-last= 479.849287174 runs/s
median= 480.0 runs/s, stdev= 1.69849752498 runs/s, min= 475.561426684 runs/s, max= 481.927710843 runs/s

RESULT Parser: query-selector-last= 476.765438846 runs/s
median= 477.453580902 runs/s, stdev= 1.8724488664 runs/s, min= 471.821756225 runs/s, max= 478.723404255 runs/s

RESULT Parser: query-selector-last= 481.715340644 runs/s
median= 481.637742305 runs/s, stdev= 1.81446361145 runs/s, min= 475.561426684 runs/s, max= 483.675937122 runs/s

[After]
RESULT Parser: query-selector-last= 458.866623582 runs/s
median= 459.183673469 runs/s, stdev= 1.48881464737 runs/s, min= 453.972257251 runs/s, max= 460.947503201 runs/s

RESULT Parser: query-selector-last= 460.363532897 runs/s
median= 460.358056266 runs/s, stdev= 1.58512056995 runs/s, min= 456.273764259 runs/s, max= 462.130937099 runs/s

RESULT Parser: query-selector-last= 457.727448451 runs/s
median= 458.015267176 runs/s, stdev= 1.23681915516 runs/s, min= 453.972257251 runs/s, max= 459.183673469 runs/s

RESULT Parser: query-selector-last= 465.57336853 runs/s
median= 465.717981889 runs/s, stdev= 1.6616925374 runs/s, min= 460.947503201 runs/s, max= 467.532467532 runs/s

RESULT Parser: query-selector-last= 459.836252019 runs/s
median= 459.770114943 runs/s, stdev= 1.84485630505 runs/s, min= 455.696202532 runs/s, max= 462.724935733 runs/s

* Parser/query-selector-last.html:

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

7 years agoSupports traversing nodes in an orphaned shadow subtree in ComposedShadowTreeParentWa...
hayato@chromium.org [Sun, 3 Jun 2012 22:35:42 +0000 (22:35 +0000)]
Supports traversing nodes in an orphaned shadow subtree in ComposedShadowTreeParentWalker.
https://bugs.webkit.org/show_bug.cgi?id=87924

Reviewed by Dimitri Glazkov.

Source/WebCore:

Some events, such as a 'click' event, can be dispatched on nodes in an orphaned shadow subtree.
When resolving a parent node of a shadow root which is not assigned to any shadow insertion point,
we have to return its shadow host as a parent node.

The related shadow DOM spec section is:
https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#events

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

* dom/ComposedShadowTreeWalker.cpp:
(WebCore::ComposedShadowTreeParentWalker::traverseParentIncludingInsertionPointAndShadowRoot):

LayoutTests:

* fast/dom/shadow/shadow-dom-event-dispatching-expected.txt:
* fast/dom/shadow/shadow-dom-event-dispatching.html:

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

7 years agoWeak pointer finalization should be lazy
ggaren@apple.com [Sun, 3 Jun 2012 21:16:55 +0000 (21:16 +0000)]
Weak pointer finalization should be lazy
https://bugs.webkit.org/show_bug.cgi?id=87599

Reviewed by Sam Weinig.

This time for sure!

* heap/Heap.cpp:
(JSC::Heap::collect): Don't sweep eagerly -- we'll sweep lazily instead.

* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::sweep): Sweep our weak set before we sweep our other
destructors -- this is our last chance to run weak set finalizers before
we recycle our memory.

* heap/MarkedBlock.h:
(JSC::MarkedBlock::resetAllocator):
* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::resetAllocators):
* heap/MarkedSpace.h:
(JSC::MarkedSpace::resetAllocators): Don't force allocator reset anymore.
It will happen automatically when a weak set is swept. It's simpler to
have only one canonical way for this to happen, and it wasn't buying
us anything to do it eagerly.

* heap/WeakBlock.cpp:
(JSC::WeakBlock::sweep): Don't short-circuit a sweep unless we know
the sweep would be a no-op. If even one finalizer is pending, we need to
run it, since we won't get another chance.

* heap/WeakSet.cpp:
(JSC::WeakSet::sweep): This loop can be simpler now that
WeakBlock::sweep() does what we mean.

Reset our allocator after a sweep because this is the optimal time to
start trying to recycle old weak pointers.

(JSC::WeakSet::tryFindAllocator): Don't sweep when searching for an
allocator because we've swept already, and forcing a new sweep would be
wasteful.

* heap/WeakSet.h:
(JSC::WeakSet::shrink): Be sure to reset our allocator after a shrink
because the shrink may have removed the block the allocator was going to
allocate out of.

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

7 years ago[EFL] http/tests/media/video-buffered.html is failing after r119268 and need to be...
commit-queue@webkit.org [Sun, 3 Jun 2012 19:13:59 +0000 (19:13 +0000)]
[EFL] http/tests/media/video-buffered.html is failing after r119268 and need to be skipped
https://bugs.webkit.org/show_bug.cgi?id=88194

Unreviewed EFL gardening. Skipping http/tests/media/video-buffered.html
which is failing after r119268.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-03

* platform/efl/TestExpectations:

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

7 years ago[EFL] legacy-viewport tests added in r119256 need to be skipped
commit-queue@webkit.org [Sun, 3 Jun 2012 18:49:46 +0000 (18:49 +0000)]
[EFL] legacy-viewport tests added in r119256 need to be skipped
https://bugs.webkit.org/show_bug.cgi?id=88192

Unreviewed EFL gardening. Skip new tests added in r119256 since the
LEGACY_VIEWPORT_ADAPTION flag is disabled on EFL port.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-03

* platform/efl/Skipped:
* platform/efl/TestExpectations:

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

7 years ago[EFL] New tests need a baseline
commit-queue@webkit.org [Sun, 3 Jun 2012 18:30:13 +0000 (18:30 +0000)]
[EFL] New tests need a baseline
https://bugs.webkit.org/show_bug.cgi?id=88190

Unreviewed EFL gardening. Add EFL baseline for new test cases.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-03

* platform/efl/fast/reflections/reflection-with-zoom-expected.png: Added.
* platform/efl/fast/reflections/reflection-with-zoom-expected.txt: Added.
* platform/efl/svg/repaint/text-mask-update-expected.png: Added.
* platform/efl/svg/repaint/text-mask-update-expected.txt: Added.

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

7 years agoUnreviewed, rolling out r119359.
commit-queue@webkit.org [Sun, 3 Jun 2012 15:51:08 +0000 (15:51 +0000)]
Unreviewed, rolling out r119359.
http://trac.webkit.org/changeset/119359
https://bugs.webkit.org/show_bug.cgi?id=88189

This broke platform/mac/fast/dom/wrapper-classes-objc.html.
(Requested by dominicc on #webkit).

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

Source/WebCore:

* bindings/objc/PublicDOMInterfaces.h:
* bindings/scripts/CodeGeneratorObjC.pm:
(GetBaseClass):
* dom/MouseEvent.h:
(MouseEvent):
* dom/WheelEvent.cpp:
(WebCore::WheelEvent::WheelEvent):
* dom/WheelEvent.h:
(WheelEvent):
* dom/WheelEvent.idl:

LayoutTests:

* fast/events/event-creation-expected.txt:
* fast/events/event-creation.html:

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

7 years agoWheelEvent should inherit from MouseEvent
dominicc@chromium.org [Sun, 3 Jun 2012 14:33:27 +0000 (14:33 +0000)]
WheelEvent should inherit from MouseEvent
https://bugs.webkit.org/show_bug.cgi?id=76104

Reviewed by Kentaro Hara.

Source/WebCore:

The spec for WheelEvent is
<http://www.w3.org/TR/DOM-Level-3-Events/#webidl-events-WheelEvent>

Tests: fast/events/event-creation.html
       http://samples.msdn.microsoft.com/ietestcenter/dominheritance/showdominheritancetest.htm?Prototype_WheelEvent

* bindings/objc/PublicDOMInterfaces.h: Remove redundant MouseEvent API from WheelEvent
* bindings/scripts/CodeGeneratorObjC.pm: MouseEvents are Events
* dom/MouseEvent.h: Expose no-arg constructor to WheelEvent
* dom/WheelEvent.cpp:
(WebCore::WheelEvent::WheelEvent): Call MouseEvent superconstructor
* dom/WheelEvent.h: Extend MouseEvent
* dom/WheelEvent.idl: "

LayoutTests:

* fast/events/event-creation-expected.txt:
* fast/events/event-creation.html: Also check WheelEvent instanceof MouseEvent as well as UIEvent, Event

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

7 years agoAdd ewk_custom_handler_private.h for ewk_custom_handler.cpp
gyuyoung.kim@samsung.com [Sun, 3 Jun 2012 09:35:53 +0000 (09:35 +0000)]
Add ewk_custom_handler_private.h for ewk_custom_handler.cpp
https://bugs.webkit.org/show_bug.cgi?id=88163

Reviewed by Ryosuke Niwa.

EFL WK1 decided to divide up ewk_private.h into each file's XXX_private.h file
in order to maintain internal functions more easily. Bug 73176 is adding new
internal functions to ewk_custom_hanlder.cpp. So, ewk_custom_handler.cpp needs
to have _private.h file as well.

* WebCoreSupport/ChromeClientEfl.cpp:
* ewk/ewk_custom_handler.cpp:
* ewk/ewk_custom_handler_private.h: Added.
* ewk/ewk_view_private.h:

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

7 years agoRoll Chromium DEPS from r140000 to r140222.
rniwa@webkit.org [Sun, 3 Jun 2012 08:21:01 +0000 (08:21 +0000)]
Roll Chromium DEPS from r140000 to r140222.

* DEPS:

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

7 years ago[chromium] Add new gesture type (two finger tap) that triggers context menu.
commit-queue@webkit.org [Sun, 3 Jun 2012 07:26:57 +0000 (07:26 +0000)]
[chromium] Add new gesture type (two finger tap) that triggers context menu.
https://bugs.webkit.org/show_bug.cgi?id=88173

Patch by Varun Jain <varunjain@google.com> on 2012-06-03
Reviewed by Adam Barth.

Source/WebCore:

Test: fast/events/touch/gesture/context-menu-on-two-finger-tap.html

* platform/PlatformEvent.h:

Source/WebKit/chromium:

* public/WebInputEvent.h:
* src/PageWidgetDelegate.cpp:
(WebKit::PageWidgetDelegate::handleInputEvent):
* src/WebInputEventConversion.cpp:
(WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
* src/WebPopupMenuImpl.cpp:
(WebKit::WebPopupMenuImpl::handleInputEvent):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleGestureEvent):

Tools:

* DumpRenderTree/chromium/EventSender.cpp:
(EventSender::EventSender):
(EventSender::gestureTwoFingerTap):
(EventSender::gestureEvent):
* DumpRenderTree/chromium/EventSender.h:
(EventSender):

LayoutTests:

* fast/events/touch/gesture/context-menu-on-two-finger-tap.html: Added.
* platform/chromium/fast/events/touch/gesture/context-menu-on-two-finger-tap-expected.txt: Added.

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

7 years ago[chromium] replace isScrollGestureEventType with isGestureEventType
rjkroege@chromium.org [Sun, 3 Jun 2012 07:06:51 +0000 (07:06 +0000)]
[chromium] replace isScrollGestureEventType with isGestureEventType
https://bugs.webkit.org/show_bug.cgi?id=88097

This change replaces the unused and incorrect isScrollGestureEventType
method with a correct and useful isGestureEventType method.

Reviewed by Adam Barth.

* public/WebInputEvent.h:
(WebInputEvent):
(WebKit::WebInputEvent::isGestureEventType):

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

7 years ago__ZNK7WebCore4Node27traverseNextAncestorSiblingEv should be exported even if ENABLE...
aestes@apple.com [Sun, 3 Jun 2012 06:29:49 +0000 (06:29 +0000)]
__ZNK7WebCore4Node27traverseNextAncestorSiblingEv should be exported even if ENABLE(FULLSCREEN_API) is false
https://bugs.webkit.org/show_bug.cgi?id=88184

Reviewed by Dan Bernstein.

Node::traverseNextAncestorSibling() is called in several inline
functions defined in ContainerNode.h (a private header), so its symbol
needs to be exported regardless of whether full-screen API is enabled.

* WebCore.exp.in:

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

7 years agoSVGImageCache leaks image data
wangxianzhu@chromium.org [Sun, 3 Jun 2012 05:06:06 +0000 (05:06 +0000)]
SVGImageCache leaks image data
https://bugs.webkit.org/show_bug.cgi?id=87792

Source/WebCore:

There are two functions to remove a client from a CachedImage:
- CachedResource::removeClient()
- CachedImage::removeClientForRenderer().
It's easy to make error to call the former which will leak the cached
image buffers in SVGImageCache.

This change combined the two by adding the virtual
CachedResource::didRemoveClient(). CachedImage will do SVGImageCache
cleanup in the function.

Reviewed by Nikolas Zimmermann.

Test: svg/as-image/svg-image-leak-cached-data.html

* loader/cache/CachedFont.h:
(WebCore::CachedFontClient::resourceClientType): Added 'const'.
* loader/cache/CachedImage.cpp:
(WebCore):
(WebCore::CachedImage::didRemoveClient): Removes the client from SVGImageCache.
(WebCore::CachedImage::lookupOrCreateImageForRenderer):
* loader/cache/CachedImage.h:
(CachedImage):
(WebCore::CachedImageClient::resourceClientType): Added 'const'.
* loader/cache/CachedRawResource.h:
(WebCore::CachedRawResourceClient::resourceClientType): Added 'const'.
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::removeClient): Added invocation of didRemoveClient().
* loader/cache/CachedResource.h:
(WebCore::CachedResource::didRemoveClient): Added for subclasses to do additional works.
* loader/cache/CachedResourceClient.h:
(WebCore::CachedResourceClient::resourceClientType): Added 'const'.
* loader/cache/CachedSVGDocument.h:
(WebCore::CachedSVGDocumentClient::resourceClientType): Added 'const'.
* loader/cache/CachedStyleSheetClient.h:
(WebCore::CachedStyleSheetClient::resourceClientType): Added 'const'.
* rendering/style/StyleCachedImage.cpp:
(WebCore::StyleCachedImage::removeClient):
* rendering/style/StyleCachedImageSet.cpp:
(WebCore::StyleCachedImageSet::removeClient):
* svg/graphics/SVGImageCache.cpp:
(WebCore::SVGImageCache::~SVGImageCache): Added checking for leaks.
(WebCore::SVGImageCache::removeClientFromCache):
(WebCore::SVGImageCache::setRequestedSizeAndScales):
(WebCore::SVGImageCache::requestedSizeAndScales):
(WebCore::SVGImageCache::lookupOrCreateBitmapImageForClient):
* svg/graphics/SVGImageCache.h:
(WebCore):
(SVGImageCache):

LayoutTests:

Reviewed by Nikolas Zimmermann.

New test case.

* svg/as-image/svg-image-leak-cached-data-expected.txt: Added.
* svg/as-image/svg-image-leak-cached-data.html: Added.

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

7 years agoRemove the failing expectation on fast/forms/textarea-scrollbar-height.html since...
rniwa@webkit.org [Sun, 3 Jun 2012 04:10:27 +0000 (04:10 +0000)]
Remove the failing expectation on fast/forms/textarea-scrollbar-height.html since it has been passing.

* platform/chromium/TestExpectations:

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

7 years ago2012-06-02 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sun, 3 Jun 2012 03:45:48 +0000 (03:45 +0000)]
2012-06-02  Geoffrey Garen  <ggaren@apple.com>

        Try to fix the Windows build.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

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

7 years agoAdd back files inadvertently removed in r119323.
rniwa@webkit.org [Sun, 3 Jun 2012 03:35:18 +0000 (03:35 +0000)]
Add back files inadvertently removed in r119323.

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

7 years ago[WebKit2] Use USE(), ENABLE(), and HAVE() macros in more places
aestes@apple.com [Sun, 3 Jun 2012 02:46:11 +0000 (02:46 +0000)]
[WebKit2] Use USE(), ENABLE(), and HAVE() macros in more places
https://bugs.webkit.org/show_bug.cgi?id=88182

Reviewed by Sam Weinig.

Use USE(APPKIT):
* Shared/mac/NativeWebKeyboardEventMac.mm:
* Shared/mac/NativeWebMouseEventMac.mm:
* Shared/mac/NativeWebWheelEventMac.mm:
* Shared/mac/WebEventFactory.h:
* UIProcess/API/mac/WKTextInputWindowController.h:
* UIProcess/API/mac/WKTextInputWindowController.mm:
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.h:

Use ENABLE(NETSCAPE_PLUGIN_API):
* UIProcess/API/C/WKPluginSiteDataManager.cpp:
(WKPluginSiteDataManagerClearSiteData):
(WKPluginSiteDataManagerClearAllSiteData):

Use USE(AUTOCORRECTION_PANEL):
* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::showCorrectionPanel):
(WebKit::PageClientImpl::dismissCorrectionPanel):
(WebKit::PageClientImpl::dismissCorrectionPanelSoon):
* UIProcess/mac/CorrectionPanel.mm:

Use HAVE(HOSTED_CORE_ANIMATION):
* UIProcess/mac/WebContextMac.mm:

Put ENABLE(FULLSCREEN_API) in the right place:
* UIProcess/mac/WebFullScreenManagerProxyMac.mm:

Remove unnecessary use of USE(APPKIT):
* UIProcess/mac/WebPageProxyMac.mm:

Use USE(SECURITY_FRAMEWORK):
* WebProcess/Authentication/mac/AuthenticationManager.mac.mm:

Use ENABLE(CONTEXT_MENUS):
* WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:

Use USE(SECURITY_FRAMEWORK):
* WebProcess/WebProcess.h:

Remove unnecessary use of USE(SECURITY_FRAMEWORK):
* WebProcess/mac/WebProcessMac.mm:

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

7 years agoWindows build fix after r119330. Unnest the class for now.
rniwa@webkit.org [Sun, 3 Jun 2012 02:38:34 +0000 (02:38 +0000)]
Windows build fix after r119330. Unnest the class for now.

* dom/SelectorQuery.cpp:
(WebCore::SelectorQueryCacheEntry::SelectorQueryCacheEntry):
(WebCore::SelectorQueryCache::add):
* dom/SelectorQuery.h:
(SelectorQueryCacheEntry):
(WebCore::SelectorQueryCacheEntry::selectorQuery):
(WebCore):
(SelectorQueryCache):

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

7 years agoRemove a duplicate INIT() from WebSystemInterface.mm
aestes@apple.com [Sun, 3 Jun 2012 02:33:02 +0000 (02:33 +0000)]
Remove a duplicate INIT() from WebSystemInterface.mm
https://bugs.webkit.org/show_bug.cgi?id=88181

Reviewed by Anders Carlsson.

* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

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

7 years agoRemove unnecessary import of <Cocoa/Cocoa.h>
aestes@apple.com [Sun, 3 Jun 2012 02:23:10 +0000 (02:23 +0000)]
Remove unnecessary import of <Cocoa/Cocoa.h>
https://bugs.webkit.org/show_bug.cgi?id=88180

Reviewed by Sam Weinig.

* UIProcess/mac/WKFullKeyboardAccessWatcher.h:

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

7 years agoEnsure cpu_type_t is defined by including <mach/machine.h>
aestes@apple.com [Sun, 3 Jun 2012 00:53:38 +0000 (00:53 +0000)]
Ensure cpu_type_t is defined by including <mach/machine.h>
https://bugs.webkit.org/show_bug.cgi?id=88178

Reviewed by Anders Carlsson.

* Shared/Plugins/PluginModuleInfo.h:

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

7 years agoInjectedBundles' sandbox extensions don't do what we think they do
weinig@apple.com [Sun, 3 Jun 2012 00:47:19 +0000 (00:47 +0000)]
InjectedBundles' sandbox extensions don't do what we think they do
https://bugs.webkit.org/show_bug.cgi?id=88177

Reviewed by Anders Carlsson.

This cannot be tested with our current infrastructure (or any modifications of the
infrastructure I can think of) since it relies on the bundle being put outside
the build directory where WebKit is put.

* WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
(WebKit::InjectedBundle::load):
Use SandboxExtension::consumePermanently() rather than consume(), otherwise,
nulling out the SandboxExtension a few lines later invalidates the extension
we just consumed.

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

7 years agoIf the DFG bytecode parser detects that op_method_check has gone polymorphic, it
fpizlo@apple.com [Sun, 3 Jun 2012 00:41:08 +0000 (00:41 +0000)]
If the DFG bytecode parser detects that op_method_check has gone polymorphic, it
shouldn't revert all the way to GetById/GetByIdFlush
https://bugs.webkit.org/show_bug.cgi?id=88176

Reviewed by Geoffrey Garen.

Refactored the code so that the op_method_check case of the parser gracefully falls
through to all of the goodness of the normal op_get_by_id case.

* dfg/DFGByteCodeParser.cpp:
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::handleGetById):
(DFG):
(JSC::DFG::ByteCodeParser::parseBlock):

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

7 years agoDFG CSE should be able to eliminate unnecessary flushes of arguments and captured...
fpizlo@apple.com [Sat, 2 Jun 2012 22:58:48 +0000 (22:58 +0000)]
DFG CSE should be able to eliminate unnecessary flushes of arguments and captured variables
https://bugs.webkit.org/show_bug.cgi?id=87929

Reviewed by Geoffrey Garen.

Slight speed-up on V8. Big win (up to 50%) on programs that inline very small functions.

This required a bunch of changes:

- The obvious change is making CSE essentially ignore whether or not the set of
  operations between the Flush and the SetLocal can exit, and instead focus on whether or
  not that set of operations can clobber the world or access local variables. This code
  is now refactored to return a set of flags indicating any of these events, and the CSE
  decides what to do based on those flags. If the set of operations is non-clobbering
  and non-accessing, then the Flush is turned into a Phantom on the child of the
  SetLocal. This expands the liveness of the relevant variable but virtually guarantees
  that it will be register allocated and not flushed to the stack. So, yeah, this patch
  is a lot of work to save a few stores to the stack.

- Previously, CheckArgumentsNotCreated was optimized "lazily" in that you only knew if
  it was a no-op if you were holding onto a CFA abstract state. But this would make the
  CSE act pessimistically, since it doesn't use the CFA. Hence, this patch changes the
  constant folding phase into something more broad; it now fixes up
  CheckArgumentsNotCreated nodes by turning them into phantoms if it knows that they are
  no-ops.

- Arguments simplification was previously relying on this very strange PhantomArguments
  node, which had two different meanings: for normal execution it meant the empty value
  but for OSR exit it meant that the arguments should be reified. This produces problems
  when set SetLocals to the captured arguments registers are CSE'd away, since we'd be
  triggering reification of arguments without having initialized the arguments registers
  to empty. The cleanest solution was to fix PhantomArguments to have one meaning:
  namely, arguments reification on OSR exit. Hence, this patch changes arguments
  simplification to change SetLocal of CreateArguments on the arguments registers to be
  a SetLocal of Empty.

- Argument value recoveries were previously derived from the value source of the
  arguments at the InlineStart. But that relies on all SetLocals to arguments having
  been flushed. It's possible that we could have elided the SetLocal to the arguments
  at the callsite because there were subsequent SetLocals to the arguments inside of the
  callee, in which case the InlineStart would get the wrong information. Hence, this
  patch changes argument value recovery computation to operate over the ArgumentPositions
  directly.

- But that doesn't actually work, because previously, there was no way to link an
  InlineStart back to the corresponding ArgumentPositions, at least not without some
  ugliness. So this patch instates the rule that the m_argumentPositions vector consists
  of disjoint subsequences such that each subsequence corresponds to an inline callsite
  and can be identified by its first index, and within each subsequence are the
  ArgumentPositions of all of the arguments ordered by argument index. This required
  flipping the order in which ArgumentPositions are added to the vector, and giving
  InlineStart an operand that indicates the start of that inline callsite's
  ArgumentPosition subsequence.

- This patch also revealed a nasty bug in the reification of arguments in inline call
  frames on OSR exit. Since the reification was happening after the values of virtual
  registers were recovered, the value recoveries of the inline arguments were wrong.
  Hence using operationCreateInlinedArguments is wrong. For example a value recovery
  might say that you have to box a double, but if we had already boxed it then boxing
  it a second time will result in garbage. The specific case of this bug was this patch
  uncovered was that now it is possible for an inline call frame to not have any valid
  value recoveries for any inline arguments, if the optimization elides all argument
  flushes, while at the same time optimizing away arguments creation. Then OSR exit
  would try to recover the arguments using the inline call frame, which had bogus
  information, and humorous crashes would ensue. This patch fixes this issue by moving
  arguments reification to after call frame reification, so that arguments reification
  can always use operationCreateArguments instead of operationCreateInlinedArguments.

- This patch may turn a Flush into a Phantom. That's kind of the whole point. But that
  broke forward speculation checks, which knew to look for a Flush prior to a SetLocal
  but didn't know that there could alternatively be a Phantom in place of the Flush.
  This patch fixes that by augmenting the forward speculation check logic.

- Finally, in the process of having fun with all of the above, I realized that my DFG
  validation was not actually running on every phase like I had originally designed it
  to. In fact it was only running just after bytecode parsing. I initially tried to
  make it run in every phase but found that this causes some tests to timeout
  (specifically the evil fuzzing ones), so I decided on a compromise where: (i) in
  release mode validation never runs, (ii) in debug mode validation will run just
  after parsing and just before the backend, and (iii) it's possible with a simple
  switch to enable validation to run on every phase.

Luckily all of the above issues were already covered by the 77 or so DFG-specific
layout tests. Hence, this patch does not introduce any new tests despite being so
meaty.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGArgumentPosition.h:
(JSC::DFG::ArgumentPosition::prediction):
(JSC::DFG::ArgumentPosition::doubleFormatState):
(JSC::DFG::ArgumentPosition::shouldUseDoubleFormat):
(ArgumentPosition):
* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::SetLocalStoreEliminationResult::SetLocalStoreEliminationResult):
(SetLocalStoreEliminationResult):
(JSC::DFG::CSEPhase::setLocalStoreElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
* dfg/DFGCommon.h:
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::run):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGNode.h:
(Node):
(JSC::DFG::Node::hasArgumentPositionStart):
(JSC::DFG::Node::argumentPositionStart):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGPhase.cpp:
(DFG):
* dfg/DFGPhase.h:
(Phase):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

7 years agoDOM string cache should hash pointers, not characters
ggaren@apple.com [Sat, 2 Jun 2012 22:49:05 +0000 (22:49 +0000)]
DOM string cache should hash pointers, not characters
https://bugs.webkit.org/show_bug.cgi?id=88175

Reviewed by Phil Pizlo and Sam Weinig.

../JavaScriptCore:

* heap/Weak.h:
(JSC::weakAdd):
(JSC::weakRemove): Made these function templates slightly more generic
to accommodate new client types.

../WebCore:

Dromaeo DOM Core reports no change.

http://trac.webkit.org/changeset/84934 accidentally changed from hashing
pointers to hashing characters, due to template defaults. Let's change back.

Hashing characters is not so good because:

(1) It's not memory-safe with HashMap::set(). HashMap::set() replaces
the value but not the key. Since our values own our keys, we need to
ensure object identity between key and value, or the key can be freed
prematurely. (This is impossible to demonstrate with our current
eager sweep behavior, but it shows up as crashes in layout tests if you
change to lazy sweep.)

(2) It's slower.

* bindings/js/DOMWrapperWorld.h:
(WebCore): Override the default hash, which hashes based on characters.

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

7 years agoDon't crash if we ask for fonts that don't exist.
efidler@rim.com [Sat, 2 Jun 2012 21:52:29 +0000 (21:52 +0000)]
Don't crash if we ask for fonts that don't exist.
https://bugs.webkit.org/show_bug.cgi?id=88106

Reviewed by Dan Bernstein.

RIM PR 161219

If the site doesn't ask for a reasonable font and the system doesn't
provide a good fallback, FontFallBackList::primaryFontData can be 0,
which can cause a crash.

* platform/graphics/skia/FontCacheSkia.cpp:
(WebCore::FontCache::getLastResortFallbackFont):

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

7 years agoloadRequest should check for empty URLs.
commit-queue@webkit.org [Sat, 2 Jun 2012 21:30:01 +0000 (21:30 +0000)]
loadRequest should check for empty URLs.
https://bugs.webkit.org/show_bug.cgi?id=88154

In [WebFrame loadRequest], if the url is invalid and not nil, we transform it to file: url.
However, WebKit client could send down an empty URL that makes us transform it to file: url
as well.  We should skip that as we did for nil URLs.

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2012-06-02
Reviewed by Brady Eidson.

* WebView/WebFrame.mm:
(-[WebFrame loadRequest:]):

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

7 years ago[Performance] Optimize querySelector() by caching SelectorQuery objects
haraken@chromium.org [Sat, 2 Jun 2012 19:23:25 +0000 (19:23 +0000)]
[Performance] Optimize querySelector() by caching SelectorQuery objects
https://bugs.webkit.org/show_bug.cgi?id=87942

Reviewed by Antti Koivisto.

This patch improves performance of Node::querySelector() by 7.1x in Safari/Mac
and by 8.5x in Chromium/Linux.

Performance test: Parser/query-selector-first.html, Parser/query-selector-last.html

[query-selector-first.html]
Safari/Mac      264.97 runs/s  =>  1872.78 runs/s  (7.06x speed-up)
Chromium/Linux  244.84 runs/s  =>  2071.60 runs/s  (8.46x speed-up)

[query-selector-last.html]
Safari/Mac      393.73 runs/s  =>  466.05 runs/s   (1.18x speed-up)
Chromium/Linux  401.15 runs/s  =>  484.45 runs/s   (1.20x speed-up)

Previously Node::querySelector() and Node::querySelectorAll() had been
parsing CSS queries every time. This patch optimizes the performance by caching
parsed results onto a Document.

The cache is invalidated when any of CSS related variables is updated.
As per the current implementation of CSSParserContext::operator==(), the CSS related
variables are as follows:

- baseURI
- charset
- mode
- isHTMLDocument
- isCSSCustomFilterEnabled
- isCSSRegionsEnabled
- needsSiteSpecificQuirks
- enforcesCSSMIMETypeInNoQuirksMode

Actually, we do not need to watch all of these variables:

- The current implementation does not watch the change of charset.
charset is always set to a null String by CSSParserContext::CSSParserContext().

- isHTMLDocument never changes.

- isCSSCustomFilterEnabled, isCSSRegionsEnabled, needsSiteSpecificQuirks and
enforcesCSSMIMETypeInNoQuirksMode are not flipped in a user scenario.
If someone changes them, it would be reasonable to expect them
to take the effect only on subsequent document loads.
Thus we do not need to invalidate the cache when these variables are updated.

Consequently, the condition under which we have to invalidate the cache is
that any of the following variables is updated:

- baseURI
- mode

Tests: fast/dom/SelectorAPI/*. No change in test results.

* dom/SelectorQuery.h: SelectorQueryCache is a cache from CSS selectors to parsed results.
SelectorQueryCache::Entry is an entry of the cache.
SelectorQueryCache::Entry holds a SelectorQuery object and a CSSSelectorList object.
The reason why SelectorQueryCache::Entry needs to hold the CSSSelectorList object
is that the CSSSelectorList object keeps the lifetime of CSSSelector objects
in the SelectorQuery object. Since the SelectorQuery object just holds pointers
to CSSSelector objects, the CSSSelectorList object must not be destructed
before the SelectorQuery object is destructed.
(WebCore):
(SelectorDataList):
(WebCore::SelectorQuery::SelectorQuery):
(SelectorQuery):
(SelectorQueryCache):
(WebCore::SelectorQueryCache::SelectorQueryCache):
(Entry):
(WebCore::SelectorQueryCache::Entry::selectorQuery):
* dom/SelectorQuery.cpp:
(WebCore::SelectorQuery::initialize):
(WebCore::SelectorQueryCache::Entry::Entry):
(WebCore::SelectorQueryCache::add): Returns a cached SelectorQuery object if any.
Otherwise, parses a given CSS selector, creates a SelectorQuery object,
adds the SelectorQuery object to a new entry in the cache, returns the SelectorQuery
object.
(WebCore::SelectorQueryCache::invalidate): Clears the cache.

* dom/Document.h:
(WebCore):
(Document):
* dom/Document.cpp:
(WebCore::Document::selectorQueryCache):
(WebCore):
(WebCore::Document::setCompatibilityMode): Invalidates the cache
when m_compatibilityMode is updated.
(WebCore::Document::updateBaseURL): Invalidates the cache
when m_baseURL is updated.

* dom/Node.h: Changed String to AtomicString, since the key of the cache
should be AtomicString.
(Node):
* dom/Node.cpp: Optimized the code by using the cache.
(WebCore::Node::querySelector):
(WebCore::Node::querySelectorAll):

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

7 years agoReverted the last change.
mitz@apple.com [Sat, 2 Jun 2012 19:05:37 +0000 (19:05 +0000)]
Reverted the last change.

* WebCore.xcodeproj/project.pbxproj:

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

7 years agoReverted the last change.
mitz@apple.com [Sat, 2 Jun 2012 19:02:57 +0000 (19:02 +0000)]
Reverted the last change.

* WebKit2.xcodeproj/project.pbxproj:

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

7 years agoStop treating Perl code as private headers.
mitz@apple.com [Sat, 2 Jun 2012 18:59:03 +0000 (18:59 +0000)]
Stop treating Perl code as private headers.

* WebCore.xcodeproj/project.pbxproj: Removed CodeGenerator.pm, generate-bindings.pl,
IDLParser.pm, IDLStructure.pm, and preprocessor.pm from the Copy Headers build phase.

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

7 years ago[chromium] SKIP http/tests/media/video-buffered.html because it requires overly large...
fischman@chromium.org [Sat, 2 Jun 2012 18:57:36 +0000 (18:57 +0000)]
[chromium] SKIP http/tests/media/video-buffered.html because it requires overly large data
https://bugs.webkit.org/show_bug.cgi?id=88172

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

7 years ago[wx] Unreviewed build fix. Temporarily disable DerivedSources cleanup on Windows.
kevino@webkit.org [Sat, 2 Jun 2012 18:54:52 +0000 (18:54 +0000)]
[wx] Unreviewed build fix. Temporarily disable DerivedSources cleanup on Windows.

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

7 years agoStop treating two Python scripts as private headers.
mitz@apple.com [Sat, 2 Jun 2012 18:43:38 +0000 (18:43 +0000)]
Stop treating two Python scripts as private headers.

* WebKit2.xcodeproj/project.pbxproj: Removed model.py and parser.py from the Copy Headers
build phase.

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

7 years ago[Qt] Replace QtXmlPatterns usage with libxslt dependency
ossy@webkit.org [Sat, 2 Jun 2012 16:58:04 +0000 (16:58 +0000)]
[Qt] Replace QtXmlPatterns usage with libxslt dependency
https://bugs.webkit.org/show_bug.cgi?id=76820

Unreviewed gardening.

* fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt: Renamed from LayoutTests/platform/efl/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt.
* platform/efl/fast/xsl/xslt-mismatched-tags-in-xslt-expected.png: Removed.
* platform/gtk/fast/xsl/xslt-mismatched-tags-in-xslt-expected.png: Removed.
* platform/gtk/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt: Removed.
* platform/mac/fast/xsl/xslt-mismatched-tags-in-xslt-expected.png: Removed.
* platform/mac/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt: Removed.
* platform/qt-4.8/Skipped:
* platform/qt-4.8/fast/css/dumpAsText/xml-stylesheet-pi-not-in-prolog-expected.txt: Renamed from LayoutTests/platform/qt/fast/css/dumpAsText/xml-stylesheet-pi-not-in-prolog-expected.txt.
* platform/qt-4.8/fast/dom/Range/surround-contents-font-face-crash-expected.txt: Renamed from LayoutTests/platform/qt/fast/dom/Range/surround-contents-font-face-crash-expected.txt.
* platform/qt-4.8/fast/dom/xml-parser-error-message-crash-expected.txt: Renamed from LayoutTests/platform/qt/fast/dom/xml-parser-error-message-crash-expected.txt.
* platform/qt-4.8/fast/encoding/dumpAsText/utf-16-no-bom-expected.txt: Renamed from LayoutTests/platform/qt/fast/encoding/dumpAsText/utf-16-no-bom-expected.txt.
* platform/qt-4.8/fast/events/xsl-onload-expected.txt: Renamed from LayoutTests/platform/qt/fast/events/xsl-onload-expected.txt.
* platform/qt-4.8/fast/parser/xml-colon-entity-expected.txt: Renamed from LayoutTests/platform/qt/fast/parser/xml-colon-entity-expected.txt.
* platform/qt-4.8/fast/parser/xml-declaration-missing-ending-mark-expected.txt: Renamed from LayoutTests/platform/qt/fast/parser/xml-declaration-missing-ending-mark-expected.txt.
* platform/qt-4.8/fast/parser/xslt-with-html-expected.txt: Renamed from LayoutTests/platform/qt/fast/parser/xslt-with-html-expected.txt.
* platform/qt-4.8/fast/xsl/subframe-location-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/subframe-location-expected.txt.
* platform/qt-4.8/fast/xsl/transform-to-html-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/transform-to-html-expected.txt.
* platform/qt-4.8/fast/xsl/utf8-chunks-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/utf8-chunks-expected.txt.
* platform/qt-4.8/fast/xsl/xslt-bad-import-uri-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-bad-import-uri-expected.txt.
* platform/qt-4.8/fast/xsl/xslt-doc-noenc-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-doc-noenc-expected.txt.
* platform/qt-4.8/fast/xsl/xslt-entity-enc-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-entity-enc-expected.txt.
* platform/qt-4.8/fast/xsl/xslt-entity-expected.png: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-entity-expected.png.
* platform/qt-4.8/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt.
* platform/qt-4.8/fast/xsl/xslt-recursion-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-recursion-expected.txt.
* platform/qt-4.8/http/tests/misc/location-test-xsl-style-sheet-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/misc/location-test-xsl-style-sheet-expected.txt.
* platform/qt-4.8/http/tests/security/contentSecurityPolicy/xsl-allowed-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/contentSecurityPolicy/xsl-allowed-expected.txt.
* platform/qt-4.8/http/tests/security/contentSecurityPolicy/xsl-img-blocked-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/contentSecurityPolicy/xsl-img-blocked-expected.txt.
* platform/qt-4.8/http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-2-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-2-expected.txt.
* platform/qt-4.8/http/tests/security/cookies/first-party-cookie-allow-xslt-expected.png: Renamed from LayoutTests/platform/qt/http/tests/security/cookies/first-party-cookie-allow-xslt-expected.png.
* platform/qt-4.8/http/tests/security/cookies/first-party-cookie-allow-xslt-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/cookies/first-party-cookie-allow-xslt-expected.txt.
* platform/qt-4.8/http/tests/security/cookies/third-party-cookie-blocking-xslt-expected.png: Renamed from LayoutTests/platform/qt/http/tests/security/cookies/third-party-cookie-blocking-xslt-expected.png.
* platform/qt-4.8/http/tests/security/cookies/third-party-cookie-blocking-xslt-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/cookies/third-party-cookie-blocking-xslt-expected.txt.
* platform/qt-4.8/http/tests/security/xss-DENIED-xml-external-entity-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/xss-DENIED-xml-external-entity-expected.txt.
* platform/qt-4.8/http/tests/security/xss-DENIED-xsl-document-redirect-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/xss-DENIED-xsl-document-redirect-expected.txt.
* platform/qt-4.8/http/tests/security/xss-DENIED-xsl-external-entity-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/xss-DENIED-xsl-external-entity-expected.txt.
* platform/qt-4.8/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt.
* platform/qt-4.8/svg/custom/bug45331-expected.png: Renamed from LayoutTests/platform/qt/svg/custom/bug45331-expected.png.
* platform/qt-4.8/svg/custom/bug45331-expected.txt: Renamed from LayoutTests/platform/qt/svg/custom/bug45331-expected.txt.
* platform/qt-4.8/svg/custom/bug78807-expected.txt: Renamed from LayoutTests/platform/qt/svg/custom/bug78807-expected.txt.
* platform/qt-4.8/svg/custom/use-invalid-html-expected.txt: Renamed from LayoutTests/platform/qt/svg/custom/use-invalid-html-expected.txt.
* platform/qt-4.8/svg/custom/use-invalid-style-expected.txt: Renamed from LayoutTests/platform/qt/svg/custom/use-invalid-style-expected.txt.
* platform/qt-4.8/svg/hixie/error/dumpAsText/004-expected.txt: Renamed from LayoutTests/platform/qt/svg/hixie/error/dumpAsText/004-expected.txt.
* platform/qt-4.8/svg/hixie/error/dumpAsText/005-expected.txt: Renamed from LayoutTests/platform/qt/svg/hixie/error/dumpAsText/005-expected.txt.
* platform/qt-5.0-wk1/Skipped:
* platform/qt-5.0/Skipped:
* platform/qt-5.0/http/tests/security/xss-DENIED-xsl-document-redirect-expected.txt: Added.
* platform/qt-5.0/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt: Added.
* platform/qt-arm/Skipped:
* platform/qt/Skipped:

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

7 years ago[BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus...
tonikitoo@webkit.org [Sat, 2 Jun 2012 14:53:19 +0000 (14:53 +0000)]
[BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus - cannot navigate or use the buttons on the screen (PART III)
https://bugs.webkit.org/show_bug.cgi?id=88019

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

Enter 'pure-with-mouse-conversion' mode when going fullscreen, so
that it prevents user from scrolling the WebPage, pinch zooming,
touch-and-hold, enter selection mode, etc ...

Internally reviewed by Gen Mak.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::enterFullScreenForElement):
(BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):
* Api/WebPage_p.h:
(WebPagePrivate):

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

7 years ago[BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus...
tonikitoo@webkit.org [Sat, 2 Jun 2012 14:52:55 +0000 (14:52 +0000)]
[BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus - cannot navigate or use the buttons on the screen (PART II)
https://bugs.webkit.org/show_bug.cgi?id=88019

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

When an element goes fullscreen, its wrapper/container obeys all
BlackBerry specific fixed position customizations: we fixed
against Y, but not X. Then, in order to have the wrapper element
properly positioned when entering fullscreen mode, we
temporarily scroll x to 0.

The original x scroll position is restored when we leave
fullscreen.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::enterFullScreenForElement):
(BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):
* Api/WebPage_p.h:
(WebPagePrivate):

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

7 years ago[BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus...
tonikitoo@webkit.org [Sat, 2 Jun 2012 14:52:45 +0000 (14:52 +0000)]
[BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus - cannot navigate or use the buttons on the screen (PART I)
https://bugs.webkit.org/show_bug.cgi?id=88019
PR #158266

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

The way elements go fullscreen with the new FULLSCREEN_API
is that they get cloned and added to an out-of-DOM wrapper
element. The wrapper is a normal fixed position element and
then zoom in/out accordingly to how other layers do: following
WebPage's scale.

When going fullscreen, we have to take the current WebPage scale
into account in order to properly fit the element to the screen,
regardless the web page scale.

* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore):
(WebCore::ChromeClientBlackBerry::fullScreenRendererChanged):
* WebCoreSupport/ChromeClientBlackBerry.h:
(ChromeClientBlackBerry):

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

7 years ago[Qt] Unreviewed fix after r119255.
ossy@webkit.org [Sat, 2 Jun 2012 14:48:43 +0000 (14:48 +0000)]
[Qt] Unreviewed fix after r119255.

* platform/qt/svg/css/getComputedStyle-basic-expected.txt:

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

7 years agoFix and enable WebGL for WebKit2 on Qt.
zeno.albisser@nokia.com [Sat, 2 Jun 2012 14:01:16 +0000 (14:01 +0000)]
Fix and enable WebGL for WebKit2 on Qt.
https://bugs.webkit.org/show_bug.cgi?id=86214

Source/WebCore:

Make GraphicsContext3DPrivate use GraphicsSurfaces
for WK2. The GraphicsContext3D then uses the existing
RenderBuffer for multisample rendering.
When WebGraphicsLayer::syncCompositingState is being
executed, the canvas is being synced as well. This means
that the RenderBuffer contents are being blit onto
a GraphicsSurface, and the GraphicsSurface token is
being sent to the UIProcess.
The WebLayerTreeRenderer then creates a
TextureMapperSurfaceBackingStore for the canvas and
passes the GraphicsSurface token as an argument.
The token can then be used to identify the GraphicsSurface
from the UIProcess side.

Reviewed by Noam Rosenthal.

* platform/graphics/GraphicsContext3D.h:
Added createGraphicsSurfaces function. This is currently only
being used by the Qt port.

* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::reshape):
Calling the createGraphicsSurfaces function when the GraphicsContext3D
is reshaped. This is currently only relevant for the Qt port.

* platform/graphics/qt/GraphicsContext3DQt.cpp:
(GraphicsContext3DPrivate):
Added m_frontBufferGraphicsSurface, m_backBufferGraphicsSurface
and m_surfaceFlags members.
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
In case of WK2, create a QOpenGLContext and two GraphicsSurface
for sharing the WebGL content with the UIProcess. One GraphicsSurface
is being used as the front, the other one as the backbuffer.
Creating a QOpenGLContext currently requires showing a QWindow.
For the moment we therefore create a minimal QWindow and place
it offscreen.
(WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface):
This new function is called from the WebGraphicsLayer,
to blit the multisample framebuffer and copy its contents
onto the GraphicsSurface.
(WebCore::GraphicsContext3DPrivate::createGraphicsSurfaces):
Whenever the GraphicsContext3D is being reshaped,
new GraphicsSurfaces must be created with the updated dimensions.
(WebCore::GraphicsContext3D::createGraphicsSurfaces):

* platform/graphics/texmap/TextureMapperPlatformLayer.h:
Added a new virtual function copyToGraphicsSurface.
(TextureMapperPlatformLayer):
(WebCore::TextureMapperPlatformLayer::copyToGraphicsSurface):

Source/WebKit2:

Added glue code to make use of GraphicsSurface
as a backend for the webgl-canvas in case of WK2.

Reviewed by Noam Rosenthal.

* UIProcess/API/qt/qwebpreferences.cpp:
(QWebPreferencesPrivate::testAttribute):
(QWebPreferencesPrivate::setAttribute):
(QWebPreferences::webGLEnabled):
(QWebPreferences::setWebGLEnabled):
* UIProcess/API/qt/qwebpreferences_p.h:
* UIProcess/API/qt/qwebpreferences_p_p.h:
Added WebGLEnabled enum to allow enabling/disabling of
WebGL using QWebPreferences.

* UIProcess/LayerTreeHostProxy.cpp:
(WebKit::LayerTreeHostProxy::syncCanvas):
Dispatch syncCanvas calls to the apropriate
WebLayerTreeRenderer.

* UIProcess/LayerTreeHostProxy.h:
(LayerTreeHostProxy):
* UIProcess/LayerTreeHostProxy.messages.in:
* UIProcess/WebLayerTreeRenderer.h:
(WebLayerTreeRenderer):
* UIProcess/WebLayerTreeRenderer.cpp:
(WebKit::WebLayerTreeRenderer::syncCanvas):
(WebKit::WebLayerTreeRenderer::deleteLayer):
(WebKit::WebLayerTreeRenderer::purgeGLResources):
Create a TextureMapperSurfaceBackingStore for the canvas
if necessary and pass or update the graphicsSurfaceToken
for to be used with the backing store.

* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::WebGraphicsLayer):
(WebCore):
(WebCore::WebGraphicsLayer::setContentsToCanvas):
(WebCore::WebGraphicsLayer::syncCanvas):
Copy the multisample framebuffer contents onto the GraphicsSurface.
Notify the UIProcess of the availability of a new texture.
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
Sync the canvas as well.

* WebProcess/WebCoreSupport/WebGraphicsLayer.h:
Added a pure virtual function syncCanvas.
This is guarded by PLATFORM(QT).
(WebGraphicsLayerClient):
(WebGraphicsLayer):

* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
(WebKit::LayerTreeHostQt::syncLayerChildren):
(WebKit):
(WebKit::LayerTreeHostQt::syncCanvas):
* WebProcess/WebPage/qt/LayerTreeHostQt.h:
(LayerTreeHostQt):

Tools:

Enable WebGL by default for Qt MiniBrowser.

Reviewed by Noam Rosenthal.

* MiniBrowser/qt/qml/BrowserWindow.qml:

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

7 years agoTools: Teach svn-apply how to apply changes in test_expectations.txt to TestExpectations
rniwa@webkit.org [Sat, 2 Jun 2012 09:46:15 +0000 (09:46 +0000)]
Tools: Teach svn-apply how to apply changes in test_expectations.txt to TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=88164

Reviewed by Kentaro Hara.

Just like r74856, adjust git/svn headers from test_expectations.txt to TestExpectations.
Also replace all occurrences of /test_expectations.txt: by /TestExpectations: in change log entries.

* Scripts/VCSUtils.pm:
(adjustPathForRecentRenamings):
(fixChangeLogPatch):

LayoutTests: Rename test_expectations.txt to TestExpectations.

* platform/chromium/TestExpectations: Copied from LayoutTests/platform/chromium/test_expectations.txt.
* platform/chromium/test_expectations.txt: Removed.
* platform/efl/TestExpectations: Copied from LayoutTests/platform/efl/test_expectations.txt.
* platform/efl/test_expectations.txt: Removed.
* platform/gtk/TestExpectations: Copied from LayoutTests/platform/gtk/test_expectations.txt.
* platform/gtk/test_expectations.txt: Removed.
* platform/mac/TestExpectations: Copied from LayoutTests/platform/mac/test_expectations.txt.
* platform/mac/test_expectations.txt: Removed.
* platform/qt/TestExpectations: Copied from LayoutTests/platform/qt/test_expectations.txt.
* platform/qt/test_expectations.txt: Removed.
* platform/win/TestExpectations: Copied from LayoutTests/platform/win/test_expectations.txt.
* platform/win/test_expectations.txt: Removed.

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

7 years agoRename the flexbox CSS propery values from start to flex-start and end to flex-end
tony@chromium.org [Sat, 2 Jun 2012 08:15:04 +0000 (08:15 +0000)]
Rename the flexbox CSS propery values from start to flex-start and end to flex-end
https://bugs.webkit.org/show_bug.cgi?id=88152

Reviewed by Ojan Vafai.

Source/WebCore:

The spec changed. This is to differentiate from start/end which will
depend on writing mode direction, rather than flex direction.

No new tests, just updated the existing values.

* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EAlignItems):
(WebCore::CSSPrimitiveValue::operator EJustifyContent):
(WebCore::CSSPrimitiveValue::operator EAlignContent):
* css/CSSValueKeywords.in:
* rendering/RenderFlexibleBox.cpp:
(WebCore::initialJustifyContentOffset):
(WebCore::alignmentForChild):
(WebCore::initialAlignContentOffset):
(WebCore::RenderFlexibleBox::alignFlexLines):
(WebCore::RenderFlexibleBox::alignChildren):
* rendering/style/RenderStyle.h:
* rendering/style/RenderStyleConstants.h:

LayoutTests:

Rename start to flex-start and end to flex-end.

* css3/flexbox/css-properties-expected.txt:
* css3/flexbox/css-properties.html:
* css3/flexbox/flex-align-column.html:
* css3/flexbox/flex-align-end.html:
* css3/flexbox/flex-align-vertical-writing-mode.html:
* css3/flexbox/flex-align.html:
* css3/flexbox/flex-pack.html:
* css3/flexbox/line-wrapping.html:
* css3/flexbox/multiline-align.html:
* css3/flexbox/multiline-column-auto.html:
* css3/flexbox/multiline-line-pack-horizontal-column-expected.txt:
* css3/flexbox/multiline-line-pack-horizontal-column.html:
* css3/flexbox/multiline-line-pack.html:
* css3/flexbox/multiline-pack-expected.txt:
* css3/flexbox/multiline-pack.html:
* css3/flexbox/multiline-reverse-wrap-baseline.html:
* css3/flexbox/multiline-reverse-wrap-overflow.html:
* css3/flexbox/multiline-shrink-to-fit.html:
* css3/flexbox/multiline.html:
* css3/flexbox/nested-stretch.html:
* css3/flexbox/orthogonal-flex-directions.html:
* platform/chromium-linux-x86/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-linux/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-mac-leopard/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-mac/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-win-vista/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-win-xp/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
* platform/gtk/svg/css/getComputedStyle-basic-expected.txt:
* platform/mac/svg/css/getComputedStyle-basic-expected.txt:
* platform/qt/svg/css/getComputedStyle-basic-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt:

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

7 years ago[Qt] Use 'Ok' and 'Cancel' buttons in JavaScript confirm box.
commit-queue@webkit.org [Sat, 2 Jun 2012 07:12:44 +0000 (07:12 +0000)]
[Qt] Use 'Ok' and 'Cancel' buttons in JavaScript confirm box.
https://bugs.webkit.org/show_bug.cgi?id=76190
Based on Johannes Obermayrs (johannesobermayr@gmx.de) patch.
See: http://www.javascripter.net/faq/confirm.htm
Fixes: https://bugs.kde.org/show_bug.cgi?id=287629

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-06-02
Reviewed by Simon Hausmann.

* Api/qwebpage.cpp:
(QWebPage::javaScriptConfirm):

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

7 years agoRename test_expectations.txt to TestExpectations
rniwa@webkit.org [Sat, 2 Jun 2012 06:44:08 +0000 (06:44 +0000)]
Rename test_expectations.txt to TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=86690

Reviewed by Dirk Pranke.

Make webkitpy aware of both test_expectations.txt and TestExpectations while we rename files.
We can the code to read test_expectations.txt once we've successfully transitioned.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser._check_path_does_not_exist):
(TestExpectationParser._tokenize):
(TestExpectations): Removed TEST_LIST, which is not used anywhere.
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.path_to_test_expectations_file): Moved from WebKitPort and ChromiumPort. Returns the path to
test_expectations.txt if one exists and the path to TestExpectations otherwise.
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_virtual_methods): path_to_test_expectations_file and test_expectations are no longer
virtual.
* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort.path_from_chromium_base):
* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidPort.test_expectations):
* Scripts/webkitpy/layout_tests/port/test.py:
(add_unit_tests_to_mock_filesystem): Use TestExpectations instead of test_expectations.txt.
(TestPort.__init__):
* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitPort.baseline_search_path):
(WebKitPort.test_expectations):
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py: Added some test cases. We should move these
tests to base as a follow up.
(WebKitPortTest.test_path_to_test_expectations_file):
(test_test_expectations):
(test_legacy_test_expectations):
* Scripts/webkitpy/style/checker.py:
(CheckerDispatcher.should_skip_without_warning): Replace the check for legacy drt_expectations.txt
with one for TestExpectations.
* Scripts/webkitpy/style/checkers/test_expectations.py:
(TestExpectationsChecker): Accept both test_expectations.txt and TestExpectations in warning outputs.
* Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
(TestExpectationsTestCase._expect_port_for_expectations_path): Test both TestExpectations and
test_expectations.txt.
(TestExpectationsTestCase.test_determine_port_from_expectations_path):
(TestExpectationsTestCase.assert_lines_lint):
* Scripts/webkitpy/tool/commands/queries.py:
(PrintExpectations.__init__):
* Scripts/webkitpy/tool/commands/rebaseline.py:
(RebaselineExpectations):
* Scripts/webkitpy/tool/steps/commit.py:
(Commit._check_test_expectations):
* Scripts/webkitpy/tool/steps/commit_unittest.py:
(CommitTest._test_check_test_expectations): Extracted from test_check_test_expectations.
(CommitTest.test_check_test_expectations): For TestExpectations.
(CommitTest.test_check_legacy_test_expectations): For test_expectations.txt
* TestResultServer/static-dashboards/dashboard_base.js:
(requestExpectationsFile): Look for TestExpectations first, and fallback to test_expectations.txt.
Error only when neither exists.
* TestResultServer/static-dashboards/flakiness_dashboard.js:
(processMissingAndExtraExpectations):
(htmlForTestsWithExpectationsButNoFailures):
* TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

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

7 years ago[chromium] Software compositor initialization and base classes
commit-queue@webkit.org [Sat, 2 Jun 2012 06:07:26 +0000 (06:07 +0000)]
[chromium] Software compositor initialization and base classes
https://bugs.webkit.org/show_bug.cgi?id=87920

Patch by Alexandre Elias <aelias@google.com> on 2012-06-01
Reviewed by James Robinson.

Source/Platform:

Add a new setting to force software compositing.  In this mode,
no GraphicsContext3D should ever be created.

* chromium/public/WebLayerTreeView.h:
(WebKit::WebLayerTreeView::Settings::Settings):
(Settings):

Source/WebCore:

This introduces new wrapper class CCGraphicsContext and base class
CCRenderer which will be used for software compositing support.
If no GraphicsContext3D is available, early return for now.

No new tests. (No-op change in 3d mode.)

* platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:
(WebCore::BitmapCanvasLayerTextureUpdater::Texture::updateRect):
(WebCore::BitmapCanvasLayerTextureUpdater::updateTextureRect):
* platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:
(Texture):
(BitmapCanvasLayerTextureUpdater):
* platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:
(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::Texture::updateRect):
(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::updateTextureRect):
* platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:
(Texture):
(BitmapSkPictureCanvasLayerTextureUpdater):
* platform/graphics/chromium/CanvasLayerTextureUpdater.h:
* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::updateRect):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):
* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:
(Texture):
(FrameBufferSkPictureCanvasLayerTextureUpdater):
* platform/graphics/chromium/ImageLayerChromium.cpp:
(WebCore::ImageLayerTextureUpdater::Texture::updateRect):
(WebCore::ImageLayerTextureUpdater::updateTextureRect):
* platform/graphics/chromium/LayerChromium.h:
(WebCore):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::CCRenderer::toGLMatrix):
(WebCore):
(WebCore::LayerRendererChromium::create):
(WebCore::CCRenderer::CCRenderer):
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::copyPlaneToTexture):
(WebCore::LayerRendererChromium::drawHeadsUpDisplay):
(WebCore::LayerRendererChromium::getFramebufferTexture):
(WebCore::LayerRendererChromium::bindFramebufferToTexture):
* platform/graphics/chromium/LayerRendererChromium.h:
(CCRenderer):
(WebCore::CCRenderer::~CCRenderer):
(WebCore::CCRenderer::ccContext):
(WebCore::CCRenderer::settings):
(WebCore::CCRenderer::viewportSize):
(WebCore::CCRenderer::viewportWidth):
(WebCore::CCRenderer::viewportHeight):
(WebCore::CCRenderer::projectionMatrix):
(WebCore::CCRenderer::windowMatrix):
(WebCore::CCRenderer::sharedGeometryQuad):
(WebCore):
(LayerRendererChromium):
* platform/graphics/chromium/LayerTextureSubImage.cpp:
(WebCore::LayerTextureSubImage::upload):
(WebCore::LayerTextureSubImage::uploadWithTexSubImage):
(WebCore::LayerTextureSubImage::uploadWithMapTexSubImage):
* platform/graphics/chromium/LayerTextureSubImage.h:
(WebCore):
(LayerTextureSubImage):
* platform/graphics/chromium/LayerTextureUpdater.h:
(WebCore):
(Texture):
* platform/graphics/chromium/ManagedTexture.cpp:
(WebCore::ManagedTexture::bindTexture):
(WebCore::ManagedTexture::framebufferTexture2D):
* platform/graphics/chromium/ManagedTexture.h:
(WebCore):
(ManagedTexture):
* platform/graphics/chromium/RenderSurfaceChromium.cpp:
* platform/graphics/chromium/TextureCopier.cpp:
(WebCore::AcceleratedTextureCopier::copyTexture):
* platform/graphics/chromium/TextureCopier.h:
(TextureCopier):
(AcceleratedTextureCopier):
* platform/graphics/chromium/TextureUploader.h:
(TextureUploader):
* platform/graphics/chromium/ThrottledTextureUploader.cpp:
(WebCore::ThrottledTextureUploader::uploadTexture):
* platform/graphics/chromium/ThrottledTextureUploader.h:
(ThrottledTextureUploader):
* platform/graphics/chromium/cc/CCGraphicsContext.h: Copied from Source/WebCore/platform/graphics/chromium/CanvasLayerTextureUpdater.h.
(WebCore):
(CCGraphicsContext):
(WebCore::CCGraphicsContext::create2D):
(WebCore::CCGraphicsContext::create3D):
(WebCore::CCGraphicsContext::context3D):
(WebCore::CCGraphicsContext::CCGraphicsContext):
* platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
(WebCore::CCHeadsUpDisplay::draw):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::willDraw):
(WebCore::CCLayerImpl::bindContentsTexture):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore):
(CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::createContext):
(WebCore::CCLayerTreeHost::context):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHostClient):
(WebCore::CCSettings::CCSettings):
(CCSettings):
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::context):
(WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::layerRenderer):
* platform/graphics/chromium/cc/CCProxy.h:
(WebCore):
(CCProxy):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
(WebCore::CCScrollbarLayerImpl::willDraw):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
(CCScrollbarLayerImpl):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::context):
(WebCore::CCSingleThreadProxy::initializeContext):
(WebCore::CCSingleThreadProxy::recreateContext):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
(CCSingleThreadProxy):
* platform/graphics/chromium/cc/CCTextureUpdater.cpp:
(WebCore::CCTextureUpdater::update):
* platform/graphics/chromium/cc/CCTextureUpdater.h:
(CCTextureUpdater):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::context):
(WebCore::CCThreadProxy::initializeContext):
(WebCore::CCThreadProxy::recreateContext):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::initializeContextOnImplThread):
(WebCore::CCThreadProxy::recreateContextOnImplThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::willDraw):
(WebCore::CCVideoLayerImpl::willDrawInternal):
(WebCore::CCVideoLayerImpl::reserveTextures):
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:
(CCVideoLayerImpl):

Source/WebKit/chromium:

Add a new setting to force software compositing.  In this mode,
no GraphicsContext3D should ever be created.

* public/WebSettings.h:
* src/WebLayerTreeView.cpp:
(WebKit::WebLayerTreeView::Settings::operator CCSettings):
(WebKit::WebLayerTreeView::context):
* src/WebLayerTreeViewImpl.cpp:
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::WebSettingsImpl):
(WebKit::WebSettingsImpl::setForceSoftwareCompositing):
(WebKit):
* src/WebSettingsImpl.h:
(WebSettingsImpl):
(WebKit::WebSettingsImpl::forceSoftwareCompositing):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
(WebKit::WebViewImpl::createCompositorGraphicsContext3D):
(WebKit::WebViewImpl::createContext3D):
* tests/CCLayerTreeHostImplTest.cpp:
(WebKitTests::CCLayerTreeHostImplTest::createContext):
(WebKitTests::TEST_F):
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestAtomicCommit::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::drawLayersOnCCThread):
* tests/CCTiledLayerTestCommon.cpp:
(WebKitTests::FakeLayerTextureUpdater::Texture::updateRect):
* tests/CCTiledLayerTestCommon.h:
(Texture):
(WebKitTests::FakeTextureCopier::copyTexture):
(WebKitTests::FakeTextureUploader::uploadTexture):
* tests/Canvas2DLayerChromiumTest.cpp:
(Canvas2DLayerChromiumTest::fullLifecycleTest):
* tests/FakeCCLayerTreeHostClient.h:
* tests/LayerRendererChromiumTest.cpp:
(FakeLayerRendererChromium::FakeLayerRendererChromium):
(LayerRendererChromiumTest::LayerRendererChromiumTest):
(LayerRendererChromiumTest):
(TEST):
* tests/TextureCopierTest.cpp:
* tests/TiledLayerChromiumTest.cpp:
(WTF::TEST):

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

7 years agoSuppress text diff on http/tests/media/video-buffered.html on Chromium Leopard as
rniwa@webkit.org [Sat, 2 Jun 2012 05:47:32 +0000 (05:47 +0000)]
Suppress text diff on http/tests/media/video-buffered.html on Chromium Leopard as
it has been failing on Leopard since it was re-enabled in http://trac.webkit.org/changeset/119268.
The failure is tracked by the bug 88160.

* platform/chromium/test_expectations.txt:

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

7 years agoUnreviewed, rolling out r119283, r119287, and r119291.
commit-queue@webkit.org [Sat, 2 Jun 2012 03:20:07 +0000 (03:20 +0000)]
Unreviewed, rolling out r119283, r119287, and r119291.
http://trac.webkit.org/changeset/119283
http://trac.webkit.org/changeset/119287
http://trac.webkit.org/changeset/119291
https://bugs.webkit.org/show_bug.cgi?id=88159

Not only broke compilation in the initial commit but also
broke LayerChromiumTest.basicCreateAndDestroy (Requested by
rniwa on #webkit).

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

Source/WebCore:

* WebCore.gypi:
* platform/graphics/chromium/AnimationTranslationUtil.cpp: Removed.
* platform/graphics/chromium/AnimationTranslationUtil.h: Removed.
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::addAnimation):
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::addAnimation):
* platform/graphics/chromium/LayerChromium.h:
(LayerChromium):
* platform/graphics/chromium/LinkHighlight.cpp:
(WebCore::LinkHighlight::LinkHighlight):
* platform/graphics/chromium/cc/CCAnimationCurve.h:
(CCTransformAnimationCurve):
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.cpp:
(WebCore::CCTransformKeyframe::create):
(WebCore::CCTransformKeyframe::CCTransformKeyframe):
(WebCore::CCTransformKeyframe::value):
(WebCore::CCTransformKeyframe::clone):
(WebCore::CCKeyframedTransformAnimationCurve::getValue):
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.h:
(CCTransformKeyframe):
(CCKeyframedTransformAnimationCurve):
* platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
(WebCore::CCLayerAnimationController::addAnimation):
(WebCore):
(WebCore::CCLayerAnimationController::add):
(WebCore::CCLayerAnimationController::pushNewAnimationsToImplThread):
(WebCore::CCLayerAnimationController::replaceImplThreadAnimations):
(WebCore::CCLayerAnimationController::tickAnimations):
* platform/graphics/chromium/cc/CCLayerAnimationController.h:
(CCLayerAnimationControllerClient):
(CCLayerAnimationController):
* platform/graphics/chromium/cc/CCLayerImpl.h:

Source/WebKit/chromium:

* tests/CCAnimationTestCommon.cpp:
(WebCore::addOpacityTransition):
(WebCore::addAnimatedTransform):
(WebKitTests::FakeTransformTransition::getValue):
* tests/CCAnimationTestCommon.h:
* tests/CCKeyframedAnimationCurveTest.cpp:
* tests/CCLayerAnimationControllerTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestLayerAddedWithAnimation::beginTest):
* tests/GraphicsLayerChromiumTest.cpp:
(WebKitTests::MockGraphicsLayerClient::notifyAnimationStarted):
(WebKitTests::MockGraphicsLayerClient::notifySyncRequired):
(WebKitTests::MockGraphicsLayerClient::paintContents):
(WebKitTests::MockGraphicsLayerClient::showDebugBorders):
(WebKitTests::MockGraphicsLayerClient::showRepaintCounter):
(WebKitTests::TEST):

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

7 years agoLarge number constant in TransformationMatrix::projectPoint overflows FractionalLayou...
leviw@chromium.org [Sat, 2 Jun 2012 03:17:57 +0000 (03:17 +0000)]
Large number constant in TransformationMatrix::projectPoint overflows FractionalLayoutUnits with sub-pixel layout enabled
https://bugs.webkit.org/show_bug.cgi?id=87896

Reviewed by James Robinson.

kLargeNumber is meant to avoid overflowing when projecting a point through a transform. Unfortunately,
due to FractionalLayoutUnit's diminished range compared to integers, we were overflowing anyways. This
change adjusts our large number by the same value, but adjusted for our denominator.

This was originally missed because transforms/3d is marked as pass/fail in Chromium's test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=66989 tracks removing this problem.

No new tests. Covered by transforms/3d/hit-testing/perspective-clipped.html

* platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::TransformationMatrix::projectPoint):

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

7 years agoRemove dependency from ImageDiff to WTF
wangxianzhu@chromium.org [Sat, 2 Jun 2012 02:47:39 +0000 (02:47 +0000)]
Remove dependency from ImageDiff to WTF
https://bugs.webkit.org/show_bug.cgi?id=88147

Reviewed by Adam Barth.

Source/WTF:

* WTF.gyp/WTF.gyp:

Tools:

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

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

7 years agoNRWT seems to leak (more?) temp dirs
dpranke@chromium.org [Sat, 2 Jun 2012 02:09:12 +0000 (02:09 +0000)]
NRWT seems to leak (more?) temp dirs
https://bugs.webkit.org/show_bug.cgi?id=88126

Re-land r119297 with chromium fix (weren't calling the
super() method if not in --test-shell mode in start().
Add unit tests to chromium_unittest as well to check.

* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumDriver.start):
* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitDriver.__del__):
(WebKitDriver._start):
(WebKitDriver.run_test):
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
(WebKitDriverTest.test_check_for_driver_crash):
(WebKitDriverTest.test_stop_cleans_up_properly):
(WebKitDriverTest):
(WebKitDriverTest.test_two_starts_cleans_up_properly):
* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
(ChromiumDriverTest.test_stop_cleans_up_properly):
(ChromiumDriverTest.test_two_starts_cleans_up_properly):

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

7 years agoCleanup GeneratorGeneratedImage/Gradient changes from r117858
timothy_horton@apple.com [Sat, 2 Jun 2012 01:38:39 +0000 (01:38 +0000)]
Cleanup GeneratorGeneratedImage/Gradient changes from r117858
https://bugs.webkit.org/show_bug.cgi?id=88063

Reviewed by Simon Fraser.

No new tests, code cleanup.

* platform/graphics/Generator.h:
(WebCore::Generator::hash): hash() should be const.
* platform/graphics/GeneratorGeneratedImage.cpp:
(WebCore::GeneratorGeneratedImage::drawPattern): Minor cleanup.
* platform/graphics/Gradient.cpp:
(WebCore::Gradient::Gradient): Rename m_hashCache to m_cachedHash.
(WebCore::Gradient::addColorStop): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::sortStopsIfNecessary): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setSpreadMethod): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setGradientSpaceTransform): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::hash): Use intHash instead of the pair hasher. Add compile time size checks
for structures being passed to StringHasher.
* platform/graphics/Gradient.h:
(WebCore::Gradient::setP0): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setP1): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setStartRadius): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setEndRadius): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::invalidateHash):  Rename clearHashCache to invalidateHash.
* platform/graphics/GraphicsContext.cpp:
(WebCore::scalesMatch): Added. Determine if the scale of two AffineTransforms match.
(WebCore::GraphicsContext::isCompatibleWithBuffer): Make use of scalesMatch to simplify the logic.

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

7 years agoSkip more asserting tests on Windows.
jberlin@webkit.org [Sat, 2 Jun 2012 01:26:45 +0000 (01:26 +0000)]
Skip more asserting tests on Windows.

* platform/win/Skipped:

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

7 years agoLots of "failed download-built-product" on Apple bots
timothy_horton@apple.com [Sat, 2 Jun 2012 01:26:38 +0000 (01:26 +0000)]
Lots of "failed download-built-product" on Apple bots
https://bugs.webkit.org/show_bug.cgi?id=88158

Reviewed by Jessie Berlin.

Disable mergeRequests on all Apple builders. This is a speculative fix.

* BuildSlaveSupport/build.webkit.org-config/config.json:

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

7 years agoUnreviewed, rolling out r119297.
rniwa@webkit.org [Sat, 2 Jun 2012 01:00:48 +0000 (01:00 +0000)]
Unreviewed, rolling out r119297.
http://trac.webkit.org/changeset/119297
https://bugs.webkit.org/show_bug.cgi?id=88156

May have broken Chromium bots (Requested by rniwa on #webkit).

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

* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitDriver.__del__):
(WebKitDriver.run_test):
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
(WebKitDriverTest.test_check_for_driver_crash):
(WebKitDriverTest.test_stop_cleans_up_properly):

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

7 years agoDFG CFA should know that PutByVal can clobber the world
fpizlo@apple.com [Sat, 2 Jun 2012 00:22:31 +0000 (00:22 +0000)]
DFG CFA should know that PutByVal can clobber the world
https://bugs.webkit.org/show_bug.cgi?id=88155

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):

LayoutTests:

* fast/js/dfg-putbyval-cfa-clobber-expected.txt: Added.
* fast/js/dfg-putbyval-cfa-clobber.html: Added.
* fast/js/script-tests/dfg-putbyval-cfa-clobber.js: Added.
(foo.bar):
(foo):

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

7 years agoRemove RefInfo class
commit-queue@webkit.org [Sat, 2 Jun 2012 00:09:04 +0000 (00:09 +0000)]
Remove RefInfo class
https://bugs.webkit.org/show_bug.cgi?id=87904

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

No new tests; covered by existing tests.

* Modules/webaudio/AudioBufferSourceNode.cpp:
(WebCore::AudioBufferSourceNode::~AudioBufferSourceNode): Clear
panner node.
(WebCore::AudioBufferSourceNode::totalPitchRate):
(WebCore::AudioBufferSourceNode::setPannerNode): Use
RefTypeConnection counting for panner node.
(WebCore):
(WebCore::AudioBufferSourceNode::clearPannerNode): New function to
 clear panner node in AudioBufferSourceNode.
(WebCore::AudioBufferSourceNode::finish): Clear panner node when done.
* Modules/webaudio/AudioBufferSourceNode.h:
(AudioBufferSourceNode): Add virtual finish(), m_pannerNode is not
a RefPtr anymore.
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::addDeferredFinishDeref): Remove unneeded RefTyp.
(WebCore::AudioContext::handleDeferredFinishDerefs): Remove
unneeded RefType.
* Modules/webaudio/AudioContext.h:
(AudioContext): Update addDeferredFinishDeref signature.
* Modules/webaudio/AudioNode.cpp:
(WebCore::AudioNode::deref): Update call to addDeferredFinishDeref.
* Modules/webaudio/AudioScheduledSourceNode.h:
(AudioScheduledSourceNode): Make finish() virtual.

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

7 years agoDFG CFA should mark basic blocks as having constants if local accesses yield constants
fpizlo@apple.com [Fri, 1 Jun 2012 23:54:36 +0000 (23:54 +0000)]
DFG CFA should mark basic blocks as having constants if local accesses yield constants
https://bugs.webkit.org/show_bug.cgi?id=88153

Reviewed by Gavin Barraclough.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):

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

7 years agoDFG arguments simplification phase uses a node.codeOrigin after appending a node
fpizlo@apple.com [Fri, 1 Jun 2012 23:47:28 +0000 (23:47 +0000)]
DFG arguments simplification phase uses a node.codeOrigin after appending a node
https://bugs.webkit.org/show_bug.cgi?id=88151

Reviewed by Geoffrey Garen.

The right thing to do is to save the CodeOrigin before appending to the graph.

* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):

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

7 years agoDFG should not emit unnecessary speculation checks when performing an int32 to double...
fpizlo@apple.com [Fri, 1 Jun 2012 23:18:59 +0000 (23:18 +0000)]
DFG should not emit unnecessary speculation checks when performing an int32 to double conversion on
a value that is proved to be a number, predicted to be an int32, but not proved to be an int32
https://bugs.webkit.org/show_bug.cgi?id=88146

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileInt32ToDouble):

LayoutTests:

* fast/js/dfg-int32-to-double-on-known-number-expected.txt: Added.
* fast/js/dfg-int32-to-double-on-known-number.html: Added.
* fast/js/script-tests/dfg-int32-to-double-on-known-number.js: Added.
(foo.bar):
(foo):

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

7 years agorename -webkit-flex-pack and -webkit-flex-line-pack to -webkit-justify-content and...
tony@chromium.org [Fri, 1 Jun 2012 23:18:21 +0000 (23:18 +0000)]
rename -webkit-flex-pack and -webkit-flex-line-pack to -webkit-justify-content and -webkit-align-content
https://bugs.webkit.org/show_bug.cgi?id=88113

Reviewed by Ojan Vafai.

Source/WebCore:

This recently changed in the spec:
http://dev.w3.org/csswg/css3-flexbox/#justify-content-property
http://dev.w3.org/csswg/css3-flexbox/#align-content-property

No new tests, updated existing tests.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EJustifyContent):
(WebCore::CSSPrimitiveValue::operator EAlignContent):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/StyleBuilder.cpp:
(WebCore::StyleBuilder::StyleBuilder):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems):
(WebCore::initialJustifyContentOffset):
(WebCore::justifyContentSpaceBetweenChildren):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
(WebCore::RenderFlexibleBox::layoutColumnReverse):
(WebCore::initialAlignContentOffset):
(WebCore::alignContentSpaceBetweenChildren):
(WebCore::RenderFlexibleBox::alignFlexLines):
* rendering/RenderFlexibleBox.h:
* rendering/style/RenderStyle.h:
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleFlexibleBoxData.cpp:
(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):
* rendering/style/StyleFlexibleBoxData.h:
(StyleFlexibleBoxData):
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
* rendering/style/StyleRareNonInheritedData.h:
(StyleRareNonInheritedData):

LayoutTests:

Find and replace for the CSS keywords.

* css3/flexbox/columns-auto-size.html:
* css3/flexbox/css-properties-expected.txt:
* css3/flexbox/css-properties.html:
* css3/flexbox/flex-pack.html:
* css3/flexbox/multiline-align.html:
* css3/flexbox/multiline-column-auto.html:
* css3/flexbox/multiline-line-pack-expected.txt:
* css3/flexbox/multiline-line-pack-horizontal-column-expected.txt:
* css3/flexbox/multiline-line-pack-horizontal-column.html:
* css3/flexbox/multiline-line-pack.html:
* css3/flexbox/multiline-pack-expected.txt:
* css3/flexbox/multiline-pack.html:
* css3/flexbox/multiline-reverse-wrap-overflow.html:
* css3/flexbox/multiline-shrink-to-fit.html:
* css3/flexbox/multiline.html:
* css3/flexbox/nested-stretch.html:
* css3/flexbox/position-absolute-child.html:
* css3/flexbox/true-centering.html:
* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-linux-x86/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-linux/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-mac-leopard/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/chromium-mac-leopard/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-mac/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/chromium-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-mac/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-win-vista/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-win-xp/svg/css/getComputedStyle-basic-expected.txt:
* platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
* platform/gtk/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/gtk/svg/css/getComputedStyle-basic-expected.txt:
* platform/mac/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/mac/svg/css/getComputedStyle-basic-expected.txt:
* platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/qt/svg/css/getComputedStyle-basic-expected.txt:
* platform/win/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt:

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

7 years agonrwt seems to leak tmpdirs
dpranke@chromium.org [Fri, 1 Jun 2012 23:11:54 +0000 (23:11 +0000)]
nrwt seems to leak tmpdirs
https://bugs.webkit.org/show_bug.cgi?id=88126

Reviewed by Ojan Vafai.

Fix leak possibly introduced in r118979 - we now will
make sure we clean up any stale temp directories during the
start routine and attempt to clean up again in __del__. It
turns out that asserting in __del__ logs a message but is
caught by the runtime, so it's mostly useless.

* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitDriver.__del__):
(WebKitDriver._start):
(WebKitDriver.run_test):
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
(WebKitDriverTest.test_check_for_driver_crash):
(WebKitDriverTest.test_stop_cleans_up_properly):
(WebKitDriverTest):
(WebKitDriverTest.test_two_starts_cleans_up_properly):

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

7 years ago Make cookie tests debuggable by merging scripts into HTML
ap@apple.com [Fri, 1 Jun 2012 23:09:07 +0000 (23:09 +0000)]
    Make cookie tests debuggable by merging scripts into HTML
        https://bugs.webkit.org/show_bug.cgi?id=88143

        Reviewed by Anders Carlsson.

        * http/tests/cookies/double-quoted-value-with-semi-colon.html:
        * http/tests/cookies/multiple-cookies.html:
        * http/tests/cookies/script-tests: Removed.
        * http/tests/cookies/script-tests/TEMPLATE.html: Removed.
        * http/tests/cookies/script-tests/double-quoted-value-with-semi-colon.js: Removed.
        * http/tests/cookies/script-tests/multiple-cookies.js: Removed.
        * http/tests/cookies/script-tests/simple-cookies-expired.js: Removed.
        * http/tests/cookies/script-tests/simple-cookies-max-age.js: Removed.
        * http/tests/cookies/script-tests/single-quoted-value.js: Removed.
        * http/tests/cookies/simple-cookies-expired.html:
        * http/tests/cookies/simple-cookies-max-age.html:
        * http/tests/cookies/single-quoted-value.html:

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

7 years ago[Win] Windows 7 Release Testers report many compositing failures
jberlin@webkit.org [Fri, 1 Jun 2012 22:59:07 +0000 (22:59 +0000)]
[Win] Windows 7 Release Testers report many compositing failures
https://bugs.webkit.org/show_bug.cgi?id=88040

Part 2 of adding expected (failing?) results to get the bots greener.

* platform/win/compositing/images: Added.
* platform/win/compositing/images/clip-on-directly-composited-image-expected.txt: Added.
* platform/win/compositing/images/direct-image-background-color-expected.txt: Added.
* platform/win/compositing/images/direct-pdf-image-expected.txt: Added.
* platform/win/compositing/images/direct-svg-image-expected.txt: Added.
* platform/win/compositing/layer-creation/fixed-position-out-of-view-expected.txt: Added.
* platform/win/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Added.
* platform/win/compositing/layer-creation/overlap-animation-expected.txt: Added.
* platform/win/compositing/layer-creation/overlap-child-layer-expected.txt: Added.
* platform/win/compositing/layer-creation/overlap-clipping-expected.txt: Added.
* platform/win/compositing/layer-creation/overlap-transformed-and-clipped-expected.txt: Added.
* platform/win/compositing/layer-creation/overlap-transformed-layer-expected.txt: Added.
* platform/win/compositing/layer-creation/overlap-transforms-expected.txt: Added.
* platform/win/compositing/layer-creation/rotate3d-overlap-expected.txt: Added.
* platform/win/compositing/layer-creation/scroll-partial-update-expected.txt: Added.
* platform/win/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Added.
* platform/win/compositing/layer-creation/stacking-context-overlap-expected.txt: Added.
* platform/win/compositing/layer-creation/stacking-context-overlap-nested-expected.txt: Added.
* platform/win/compositing/layer-creation/translatez-overlap-expected.txt: Added.
* platform/win/compositing/masks: Added.
* platform/win/compositing/masks/direct-image-mask-expected.txt: Added.
* platform/win/compositing/masks/masked-ancestor-expected.txt: Added.
* platform/win/compositing/masks/multiple-masks-expected.txt: Added.
* platform/win/compositing/masks/simple-composited-mask-expected.txt: Added.
* platform/win/compositing/overflow/ancestor-overflow-expected.txt
* platform/win/compositing/overflow/clip-descendents-expected.txt: Added.
* platform/win/compositing/overflow/content-gains-scrollbars-expected.txt: Added.
* platform/win/compositing/overflow/content-loses-scrollbars-expected.txt: Added.
* platform/win/compositing/overflow/overflow-compositing-descendant-expected.txt: Added.
* platform/win/compositing/overflow/overflow-positioning-expected.txt: Added.
* platform/win/compositing/overflow/overflow-scrollbar-layers-expected.txt: Added.
* platform/win/compositing/overflow/resize-painting-expected.txt: Added.
* platform/win/compositing/rtl: Added.
* platform/win/compositing/rtl/rtl-absolute-expected.txt: Added.
* platform/win/compositing/rtl/rtl-absolute-overflow-expected.txt: Added.
* platform/win/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt: Added.
* platform/win/compositing/rtl/rtl-iframe-absolute-expected.txt: Added.
* platform/win/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
* platform/win/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
* platform/win/compositing/rtl/rtl-iframe-fixed-expected.txt: Added.
* platform/win/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
* platform/win/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
* platform/win/compositing/rtl/rtl-iframe-relative-expected.txt: Added.
* platform/win/compositing/rtl/rtl-relative-expected.txt: Added.
* platform/win/compositing/tiling/crash-reparent-tiled-layer-expected.txt: Added.
* platform/win/compositing/visibility: Added.
* platform/win/compositing/visibility/layer-visible-content-expected.txt: Added.
* platform/win/compositing/visibility/visibility-image-layers-dynamic-expected.txt: Added.

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

7 years agoOverflow scrolling doesn't need to create a stacking context is the overflow is hidden
abarth@webkit.org [Fri, 1 Jun 2012 22:53:53 +0000 (22:53 +0000)]
Overflow scrolling doesn't need to create a stacking context is the overflow is hidden
https://bugs.webkit.org/show_bug.cgi?id=88057

Reviewed by James Robinson.

This patch causes us to match the iOS implementation of this feature.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):

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

7 years agoDFG constant folding search for the last local access skips the immediately previous...
fpizlo@apple.com [Fri, 1 Jun 2012 22:44:43 +0000 (22:44 +0000)]
DFG constant folding search for the last local access skips the immediately previous local access
https://bugs.webkit.org/show_bug.cgi?id=88141

Source/JavaScriptCore:

Reviewed by Michael Saboff.

If you use a loop in the style of:

for (i = start; i--;)

then you need to remember that the first value of 'i' that the loop body will see is 'start - 1'.
Hence the following is probably wrong:

for (i = start - 1; i--;)

* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::run):

LayoutTests:

Reviewed by Michael Saboff.

* fast/js/dfg-obvious-constant-cfa-expected.txt: Added.
* fast/js/dfg-obvious-constant-cfa.html: Added.
* fast/js/script-tests/dfg-obvious-constant-cfa.js: Added.
(bar.baz):
(bar):

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

7 years agoUse fully qualified name for Fixed to avoid the collision with "typedef SInt32 Fixed...
rniwa@webkit.org [Fri, 1 Jun 2012 22:43:11 +0000 (22:43 +0000)]
Use fully qualified name for Fixed to avoid the collision with "typedef SInt32 Fixed" in MacTypes.h

* tests/GraphicsLayerChromiumTest.cpp:
(WebKitTests::TEST_F):

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

7 years ago[BlackBerry] Fix the return value checking in SelectPopupClient
commit-queue@webkit.org [Fri, 1 Jun 2012 22:34:30 +0000 (22:34 +0000)]
[BlackBerry] Fix the return value checking in SelectPopupClient
https://bugs.webkit.org/show_bug.cgi?id=88130

Patch by Crystal Zhang <haizhang@rim.com> on 2012-06-01
Reviewed by Rob Buis.

In SelectPopupClient, return '1' means selected, '0' means not selected,
the ASCII value of '0' is 48, not 32, use '0' to be more readable.

* WebCoreSupport/SelectPopupClient.cpp:
(WebCore::SelectPopupClient::setValueAndClosePopup):

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

7 years agoChromium rebaseline after r119274.
rniwa@webkit.org [Fri, 1 Jun 2012 22:32:28 +0000 (22:32 +0000)]
Chromium rebaseline after r119274.

* platform/chromium-linux/fast/reflections/reflection-with-zoom-expected.png: Added.
* platform/chromium-mac-leopard/fast/reflections/reflection-with-zoom-expected.png: Added.
* platform/chromium-mac/fast/reflections/reflection-with-zoom-expected.png: Added.
* platform/chromium-win/fast/reflections/reflection-with-zoom-expected.png: Added.

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

7 years agoFix a typo in the expected result for the test added in r119281.119281
rniwa@webkit.org [Fri, 1 Jun 2012 22:15:46 +0000 (22:15 +0000)]
Fix a typo in the expected result for the test added in r119281.119281

* fast/js/dfg-cse-cfa-discrepancy-expected.txt:

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

7 years ago[chromium] Unreviewed compile fix for r119283
jamesr@google.com [Fri, 1 Jun 2012 22:14:44 +0000 (22:14 +0000)]
[chromium] Unreviewed compile fix for r119283

For the record, Dana Jensens <danakj@chromium.org> wrote this slightly faster than I did.

Source/WebCore:

* platform/graphics/chromium/LayerChromium.h:
(WebCore::LayerChromium::bounds):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore::CCLayerImpl::bounds):

Source/WebKit/chromium:

* tests/CCAnimationTestCommon.h:

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

7 years ago http/tests/cookies/simple-cookies-expired.html and simple-cookies-max-age...
ap@apple.com [Fri, 1 Jun 2012 22:11:58 +0000 (22:11 +0000)]
    http/tests/cookies/simple-cookies-expired.html and simple-cookies-max-age.html are failing
        https://bugs.webkit.org/show_bug.cgi?id=82749

        I don't see any failures locally (other than sometimes as flakiness in all cookie
        tests), and the bug report doesnt' have any information about what was wrong.

        * platform/mac/Skipped: Re-enable to see what happens.

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

7 years ago[Win] Windows 7 Release Testers report many compositing failures
jberlin@webkit.org [Fri, 1 Jun 2012 21:59:12 +0000 (21:59 +0000)]
[Win] Windows 7 Release Testers report many compositing failures
https://bugs.webkit.org/show_bug.cgi?id=88040

Part 1 of adding expected (failing?) results to get the bots greener.

* platform/win/compositing/geometry/flipped-writing-mode-expected.txt: Added.
* platform/win/compositing/geometry/foreground-layer-expected.txt: Added.
* platform/win/compositing/geometry/foreground-offset-change-expected.txt: Added.
* platform/win/compositing/geometry/horizontal-scroll-composited-expected.txt: Added.
* platform/win/compositing/geometry/layer-due-to-layer-children-deep-expected.txt: Added.
* platform/win/compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt: Added.
* platform/win/compositing/geometry/layer-due-to-layer-children-expected.txt: Added.
* platform/win/compositing/geometry/layer-due-to-layer-children-switch-expected.txt: Added.
* platform/win/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Added.
* platform/win/compositing/geometry/limit-layer-bounds-opacity-transition-expected.txt: Added.
* platform/win/compositing/geometry/limit-layer-bounds-overflow-repaint-expected.txt: Added.
* platform/win/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt: Added.
* platform/win/compositing/geometry/limit-layer-bounds-positioned-expected.txt: Added.
* platform/win/compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt: Added.
* platform/win/compositing/geometry/limit-layer-bounds-transformed-expected.txt: Added.
* platform/win/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt: Added.
* platform/win/compositing/geometry/outline-change-expected.txt: Added.
* platform/win/compositing/geometry/partial-layout-update-expected.txt: Added.
* platform/win/compositing/geometry/preserve-3d-switching-expected.txt: Added.
* platform/win/compositing/geometry/root-layer-update-expected.txt: Added.
* platform/win/compositing/geometry/tall-page-composited-expected.txt: Added.
* platform/win/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.txt: Added.
* platform/win/compositing/geometry/vertical-scroll-composited-expected.txt: Added.
* platform/win/compositing/geometry/video-opacity-overlay-expected.txt: Added.
* platform/win/compositing/iframes/become-composited-nested-iframes-expected.txt: Added.
* platform/win/compositing/iframes/become-overlapped-iframe-expected.txt: Added.
* platform/win/compositing/iframes/composited-iframe-alignment-expected.txt: Added.
* platform/win/compositing/iframes/composited-iframe-scroll-expected.txt: Added.
* platform/win/compositing/iframes/composited-parent-iframe-expected.txt: Added.
* platform/win/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
* platform/win/compositing/iframes/connect-compositing-iframe-expected.txt: Added.
* platform/win/compositing/iframes/connect-compositing-iframe2-expected.txt: Added.
* platform/win/compositing/iframes/connect-compositing-iframe3-expected.txt: Added.
* platform/win/compositing/iframes/enter-compositing-iframe-expected.txt: Added.
* platform/win/compositing/iframes/iframe-content-flipping-expected.txt: Added.
* platform/win/compositing/iframes/iframe-copy-on-scroll-expected.txt: Added.
* platform/win/compositing/iframes/iframe-in-composited-layer-expected.txt: Added.
* platform/win/compositing/iframes/iframe-resize-expected.txt: Added.
* platform/win/compositing/iframes/iframe-size-from-zero-expected.txt: Added.
* platform/win/compositing/iframes/invisible-iframe-expected.txt: Added.
* platform/win/compositing/iframes/invisible-nested-iframe-expected.txt: Added.
* platform/win/compositing/iframes/invisible-nested-iframe-hide-expected.txt: Added.
* platform/win/compositing/iframes/invisible-nested-iframe-show-expected.txt:
* platform/win/compositing/iframes/layout-on-compositing-change-expected.txt: Added.
* platform/win/compositing/iframes/nested-iframe-scrolling-expected.txt: Added.
* platform/win/compositing/iframes/overlapped-iframe-expected.txt: Added.
* platform/win/compositing/iframes/overlapped-iframe-iframe-expected.txt:
* platform/win/compositing/iframes/page-cache-layer-tree-expected.txt: Added.
* platform/win/compositing/iframes/resizer-expected.txt: Added.
* platform/win/compositing/iframes/scrolling-iframe-expected.txt: Added.

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

7 years agoUnreviewed GTK gardening, adding a TEXT expectation for http/tests/media/video-buffer...
zandobersek@gmail.com [Fri, 1 Jun 2012 21:53:18 +0000 (21:53 +0000)]
Unreviewed GTK gardening, adding a TEXT expectation for http/tests/media/video-buffered.html
after it started failing in r119268.

* platform/gtk/test_expectations.txt:

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

7 years ago[chromium] Accelerated animations should use WebTransformOperations
commit-queue@webkit.org [Fri, 1 Jun 2012 21:46:40 +0000 (21:46 +0000)]
[chromium] Accelerated animations should use WebTransformOperations
https://bugs.webkit.org/show_bug.cgi?id=87686

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

CCTransformKeyframe new owns a WebTransformOperations rather than a
TransformOperations. LayerChromium's API has been changed so that
LayerChromium::addAnimation should take only a CCActiveAnimation.
GraphicsLayerChromium is new responsible for translating to
WebTransformOperations and creating CCActiveAnimations. Tests that use
the public API (that is, they call addAnimation with KeyframeValueList
and Animation arguments) have been moved to GraphicsLayerChromiumTest.

Source/WebCore:

Unit tests:
    GraphicsLayerChromiumTest.createOpacityAnimation
    GraphicsLayerChromiumTest.createTransformAnimation
    GraphicsLayerChromiumTest.createTransformAnimationWithBigRotation
    GraphicsLayerChromiumTest.createTransformAnimationWithSingularMatrix
    GraphicsLayerChromiumTest.createReversedAnimation
    GraphicsLayerChromiumTest.createAlternatingAnimation
    GraphicsLayerChromiumTest.createReversedAlternatingAnimation

* WebCore.gypi:
* platform/graphics/chromium/AnimationTranslationUtil.cpp: Added.
(WebCore):
(WebCore::toWebTransformOperations):
(WebCore::appendKeyframe):
(WebCore::CCKeyframedTransformAnimationCurve):
(WebCore::createActiveAnimation):
* platform/graphics/chromium/AnimationTranslationUtil.h: Added.
(WebCore):
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::addAnimation):
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::addAnimation):
* platform/graphics/chromium/LayerChromium.h:
(WebCore):
(LayerChromium):
* platform/graphics/chromium/LinkHighlight.cpp:
(WebCore::LinkHighlight::LinkHighlight):
* platform/graphics/chromium/cc/CCAnimationCurve.h:
(CCTransformAnimationCurve):
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.cpp:
(WebCore::CCTransformKeyframe::create):
(WebCore::CCTransformKeyframe::CCTransformKeyframe):
(WebCore::CCTransformKeyframe::value):
(WebCore::CCTransformKeyframe::clone):
(WebCore::CCKeyframedTransformAnimationCurve::getValue):
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.h:
(CCTransformKeyframe):
(CCKeyframedTransformAnimationCurve):
* platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
(WebCore::CCLayerAnimationController::removeAnimation):
(WebCore):
(WebCore::CCLayerAnimationController::addAnimation):
(WebCore::CCLayerAnimationController::getActiveAnimation):
(WebCore::CCLayerAnimationController::pushNewAnimationsToImplThread):
(WebCore::CCLayerAnimationController::replaceImplThreadAnimations):
(WebCore::CCLayerAnimationController::tickAnimations):
* platform/graphics/chromium/cc/CCLayerAnimationController.h:
(CCLayerAnimationControllerClient):
(CCLayerAnimationController):

Source/WebKit/chromium:

* tests/CCAnimationTestCommon.cpp:
(WebCore::addOpacityTransition):
(WebCore::addAnimatedTransform):
(WebKitTests::FakeTransformTransition::getValue):
* tests/CCAnimationTestCommon.h:
* tests/CCKeyframedAnimationCurveTest.cpp:
(WebCore::TEST):
* tests/CCLayerAnimationControllerTest.cpp:
(WebKitTests::TEST):
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestLayerAddedWithAnimation::beginTest):
* tests/GraphicsLayerChromiumTest.cpp:
(MockLayerTreeHostClient):
(WebKitTests):
(MockLayerTreeHost):
(WebKitTests::MockLayerTreeHost::create):
(WebKitTests::MockLayerTreeHost::createLayerTreeHostImpl):
(WebKitTests::MockLayerTreeHost::MockLayerTreeHost):
(GraphicsLayerChromiumTest):
(WebKitTests::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):
(WebKitTests::GraphicsLayerChromiumTest::~GraphicsLayerChromiumTest):
(WebKitTests::GraphicsLayerChromiumTest::expectTranslateX):
(WebKitTests::TEST_F):

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

7 years agoDFG constant folding should be OK with GetLocal of captured variables having a constant
fpizlo@apple.com [Fri, 1 Jun 2012 21:34:40 +0000 (21:34 +0000)]
DFG constant folding should be OK with GetLocal of captured variables having a constant
https://bugs.webkit.org/show_bug.cgi?id=88137

Fix a typo that Gavin found but that I failed to fix in previous commit.

* fast/js/script-tests/dfg-cse-cfa-discrepancy.js:

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

7 years agoDFG constant folding should be OK with GetLocal of captured variables having a constant
fpizlo@apple.com [Fri, 1 Jun 2012 21:32:45 +0000 (21:32 +0000)]
DFG constant folding should be OK with GetLocal of captured variables having a constant
https://bugs.webkit.org/show_bug.cgi?id=88137

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::run):

LayoutTests:

* fast/js/dfg-cse-cfa-discrepancy-expected.txt: Added.
* fast/js/dfg-cse-cfa-discrepancy.html: Added.
* fast/js/script-tests/dfg-cse-cfa-discrepancy.js: Added.
(foo.bar.baz):
(foo.bar):
(foo):

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

7 years agoWebFrame::_stringByEvaluatingJavaScriptFromString methods don't handle nil string
msaboff@apple.com [Fri, 1 Jun 2012 21:26:11 +0000 (21:26 +0000)]
WebFrame::_stringByEvaluatingJavaScriptFromString methods don't handle nil string
https://bugs.webkit.org/show_bug.cgi?id=88109

Reviewed by Geoffrey Garen.

Source/WebKit/mac:

Added short circuit return when the NSString to evaluate is nil.

* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):

Tools:

Additional test case.

* TestWebKitAPI/Tests/mac/StringByEvaluatingJavaScriptFromString.mm:
(TestWebKitAPI::TEST):

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