crogers@google.com [Mon, 26 Sep 2011 22:58:29 +0000 (22:58 +0000)]
OfflineAudioDestinationNode must wait for thread completion in uninitialize()
https://bugs.webkit.org/show_bug.cgi?id=68725
Reviewed by Kenneth Russell.
No new tests. This fixes internal implementation details.
* webaudio/OfflineAudioDestinationNode.cpp:
(WebCore::OfflineAudioDestinationNode::uninitialize):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96020
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 22:50:38 +0000 (22:50 +0000)]
editing/selection/select-bidi-run.html timeouts on non-Mac platforms
https://bugs.webkit.org/show_bug.cgi?id=68831
Reviewed by Enrica Casucci.
Click at (0,0) to reset click count instead of a long leapForward.
* editing/selection/select-bidi-run.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96016
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 26 Sep 2011 22:46:28 +0000 (22:46 +0000)]
REGRESSION (r95747): Activating the web inspector causes the web process to be killed
https://bugs.webkit.org/show_bug.cgi?id=68762
Reviewed by Anders Carlsson.
* UIProcess/WebInspectorProxy.cpp: (WebKit::WebInspectorProxy::createInspectorPage):
Tell Web process that loading resources from WebCore resources directory is OK.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadHTMLString):
(WebKit::WebPageProxy::loadAlternateHTMLString):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::assumeReadAccessToBaseURL):
* UIProcess/WebProcessProxy.h:
Renamed willLoadHTMLStringWithBaseURL to more generic assumeReadAccessToBaseURL.
* UIProcess/WebInspectorProxy.h:
* UIProcess/efl/WebInspectorEfl.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/gtk/WebInspectorGtk.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/qt/WebInspectorProxyQt.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/win/WebInspectorProxyWin.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
Report what base directory Inspector has access to.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96014
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
imasaki@chromium.org [Mon, 26 Sep 2011 22:45:42 +0000 (22:45 +0000)]
[Chromium] Update the test expectaion file for media related tests.
It includes updating bug numbers, removing
media/video-controls-visible-audio-only.html, and unskipping
media/media-document-audio-repaint.html.
https://bugs.webkit.org/show_bug.cgi?id=68254
Reviewed by David Levin.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96013
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 22:34:54 +0000 (22:34 +0000)]
Source/WebKit/chromium: Fix copy and paste error in r96002.
* tests/InnerGestureRecognizerTest.cpp:
(TEST_F):
LayoutTests: Remove test that no longer crashes (fixed by r95985).
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96010
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
xan@webkit.org [Mon, 26 Sep 2011 22:28:31 +0000 (22:28 +0000)]
[GTK] Do not ignore 'Replaceable' attributes in the DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=68837
Reviewed by Martin Robinson.
* bindings/scripts/CodeGeneratorGObject.pm: add getters (but not
setters) for 'Replaceable' attributes. Punt for the future
actually making them settable, since it seems non trivial.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96009
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 22:27:19 +0000 (22:27 +0000)]
Leopard build fix.
* testing/Internals.cpp:
(WebCore::Internals::setZoomAnimatorTransform):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96008
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 22:22:23 +0000 (22:22 +0000)]
IndexedDB: Null key path gets stored as empty string key path
https://bugs.webkit.org/show_bug.cgi?id=68726
Patch by Joshua Bell <jsbell@chromium.org> on 2011-09-26
Reviewed by Tony Chang.
Store additional flag to indicate if object store key path
is null vs. empty. Added additional runtime tests for integrity
of object store metadata.
* storage/IDBLevelDBBackingStore.cpp:
(WebCore::checkObjectStoreAndMetaDataType):
(WebCore::IDBLevelDBBackingStore::getObjectStores):
(WebCore::IDBLevelDBBackingStore::createObjectStore):
* storage/IDBLevelDBCoding.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96007
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
reed@google.com [Mon, 26 Sep 2011 22:21:04 +0000 (22:21 +0000)]
[skia] need rebaseline after the next skia roll -- improvements to xfermodes on gpu
https://bugs.webkit.org/show_bug.cgi?id=68807
Reviewed by Stephen White.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96006
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Sep 2011 22:19:10 +0000 (22:19 +0000)]
Repaint tests don't work in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=68453
Tools:
Reviewed by Sam Weinig.
Convert DumpRenderTree to use use the repaint rects
exposed via WebKit API when generating the repaint test
overlay.
Fix WebKitTestRunner to work with repaint tests, again
using the repaint rects exposed from WK2.
In both cases, layoutTestController.display() now just
forces a display of the web view, and turns on repaint
rect tracking on the main FrameView.
Later, when pixel results are requested, the alpha overlay
that shows the repaint rects is generated using the list
of rects supplied by WebCore.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetDefaultsToConsistentValues):
(resetWebViewToConsistentStateBeforeTesting):
(displayWebView):
* DumpRenderTree/mac/PixelDumpSupportMac.mm:
(paintRepaintRectOverlay):
(createBitmapContextFromWebView):
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
(WTR::InjectedBundle::done):
* WebKitTestRunner/InjectedBundle/InjectedBundle.h:
(WTR::InjectedBundle::setRepaintRects):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::reset):
(WTR::InjectedBundlePage::dump):
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::display):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
* WebKitTestRunner/TestInvocation.h:
* WebKitTestRunner/cg/TestInvocationCG.cpp:
(WTR::paintRepaintRectOverlay):
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):
LayoutTests:
Reviewed by Sam Weinig.
Update Mac results to use the new repaint rects. Differences from old results:
* There are no longer invalidates from scrolling.
* We no longer see the effects of AppKit rect coalescing.
* Composting tests show the overlay now, but repaints in compositing layers do not show.
Bad results in a couple of tests are covered by bugs 68830 and 68829.
* platform/mac/fast/repaint/4774354-expected.png:
* platform/mac/fast/repaint/block-layout-inline-children-float-positioned-expected.png:
* platform/mac/fast/repaint/block-selection-gap-in-composited-layer-expected.png:
* platform/mac/fast/repaint/border-radius-repaint-expected.png:
* platform/mac/fast/repaint/clipped-relative-expected.png:
* platform/mac/fast/repaint/containing-block-position-change-expected.png:
* platform/mac/fast/repaint/control-clip-expected.png:
* platform/mac/fast/repaint/delete-into-nested-block-expected.png:
* platform/mac/fast/repaint/fixed-and-absolute-position-scrolled-expected.png:
* platform/mac/fast/repaint/fixed-scroll-simple-expected.png:
* platform/mac/fast/repaint/flexible-box-overflow-expected.png:
* platform/mac/fast/repaint/flexible-box-overflow-horizontal-expected.png:
* platform/mac/fast/repaint/float-move-during-layout-expected.png:
* platform/mac/fast/repaint/float-overflow-expected.png:
* platform/mac/fast/repaint/float-overflow-right-expected.png:
* platform/mac/fast/repaint/iframe-scroll-repaint-expected.png:
* platform/mac/fast/repaint/inline-block-overflow-expected.png:
* platform/mac/fast/repaint/japanese-rl-selection-repaint-expected.png:
* platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
* platform/mac/fast/repaint/layer-child-outline-expected.png:
* platform/mac/fast/repaint/layer-outline-expected.png:
* platform/mac/fast/repaint/layer-outline-horizontal-expected.png:
* platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.png:
* platform/mac/fast/repaint/line-overflow-expected.png:
* platform/mac/fast/repaint/nested-iframe-scroll-inner-expected.png:
* platform/mac/fast/repaint/nested-iframe-scroll-outer-expected.png:
* platform/mac/fast/repaint/outline-child-repaint-expected.png:
* platform/mac/fast/repaint/outline-shrinking-expected.png:
* platform/mac/fast/repaint/overflow-delete-line-expected.png:
* platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png:
* platform/mac/fast/repaint/repaint-during-scroll-expected.png:
* platform/mac/fast/repaint/scale-page-shrink-expected.png:
* platform/mac/fast/repaint/search-field-cancel-expected.png:
* platform/mac/fast/repaint/selection-after-remove-expected.png:
* platform/mac/fast/repaint/shadow-multiple-horizontal-expected.png:
* platform/mac/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
* platform/mac/fast/repaint/shadow-multiple-strict-vertical-expected.png:
* platform/mac/fast/repaint/shadow-multiple-vertical-expected.png:
* platform/mac/fast/repaint/static-to-positioned-expected.png:
* platform/mac/fast/repaint/table-cell-move-expected.png:
* platform/mac/fast/repaint/text-selection-rect-in-overflow-2-expected.png:
* platform/mac/fast/repaint/text-shadow-expected.png:
* platform/mac/fast/repaint/text-shadow-horizontal-expected.png:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96005
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 22:12:55 +0000 (22:12 +0000)]
Disable Chromium gesture recognizer tests that started to fail on the
Mac bots recently.
* tests/InnerGestureRecognizerTest.cpp:
(TEST_F):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96002
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
noel.gordon@gmail.com [Mon, 26 Sep 2011 22:10:29 +0000 (22:10 +0000)]
[Chromium] Remove DFGAliasTracker.h references from gyp project files
https://bugs.webkit.org/show_bug.cgi?id=68787
Reviewed by Geoffrey Garen.
DFG/DFGAliasTracker.h was removed in r95389. Cleanup (remove) references
to that file from the gyp project files.
* JavaScriptCore.gypi:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96001
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 22:07:33 +0000 (22:07 +0000)]
Fix nonpremultiplied webgl toDataURL to jpeg
https://bugs.webkit.org/show_bug.cgi?id=68366
Source/WebCore:
The canvas spec says that toDataURL to formats without an alpha must
be "composited onto a solid black background using the source-over
operator." Do that.
Patch by John Bauman <jbauman@chromium.org> on 2011-09-26
Reviewed by Kenneth Russell.
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::CGImageToDataURL):
(WebCore::ImageBuffer::toDataURL):
(WebCore::ImageDataToDataURL):
* platform/image-encoders/skia/JPEGImageEncoder.cpp:
(WebCore::RGBAtoRGB):
LayoutTests:
Update the premultiplyalpha-test from the WebGL conformance tests.
Also use the correct expected result for toDataURL.jpeg.alpha.html.
Patch by John Bauman <jbauman@chromium.org> on 2011-09-26
Reviewed by Kenneth Russell.
* fast/canvas/webgl/premultiplyalpha-test-expected.txt:
* fast/canvas/webgl/premultiplyalpha-test.html:
* platform/mac/canvas/philip/tests/toDataURL.jpeg.alpha-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96000
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 22:00:06 +0000 (22:00 +0000)]
Source/WebKit2: Added WKHitTestResult API's.
WKHitTestResult API's are added. These API's can be used to
get the hover'ed link/image/media URL as well as link lable and
title.
https://bugs.webkit.org/show_bug.cgi?id=68426
Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-09-26
Reviewed by Anders Carlsson.
* CMakeLists.txt:
* GNUmakefile.am:
* UIProcess/API/C/WKHitTestResult.cpp: Added.
(WKHitTestResultGetTypeID):
(WKHitTestResultCopyAbsoluteImageURL):
(WKHitTestResultCopyAbsoluteLinkURL):
(WKHitTestResultCopyAbsoluteMediaURL):
(WKHitTestResultCopyLinkLabel):
(WKHitTestResultCopyLinkTitle):
* UIProcess/API/C/WKHitTestResult.h: Added.
* UIProcess/API/C/WebKit2.h:
* WebKit2.xcodeproj/project.pbxproj:
* WebKit2API.pri:
* win/WebKit2.vcproj:
* win/WebKit2Generated.make:
Tools: Get hover'ed element URL from HitTest.
mouseDidMoveOverElement now gets the hover'ed element link using
WKHitTestResult API's.
https://bugs.webkit.org/show_bug.cgi?id=68426
Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-09-26
Reviewed by Anders Carlsson.
* MiniBrowser/gtk/BrowserWindow.c:
(mouseDidMoveOverElement):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95999
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 21:47:46 +0000 (21:47 +0000)]
[CMake] Remove FindFreetype.cmake
https://bugs.webkit.org/show_bug.cgi?id=68778
Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-26
Reviewed by Adam Barth.
CMake has provided its own FindFreetype.cmake forever, so there is no
need to have another implementation in WebKit.
.:
* Source/cmake/FindCairo.cmake: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS}
instead of Freetype_{LIBRARIES,INCLUDE_DIRS}.
* Source/cmake/FindFreetype.cmake: Removed.
* Source/cmake/FindPango.cmake: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS}
instead of Freetype_{LIBRARIES,INCLUDE_DIRS}.
* Source/cmake/OptionsEfl.cmake: Remove minimum required version
check, it has never been checked and Freetype 2.1.10 from 2005 is
already > 9.0.
Source/WebCore:
No new tests, just a buildsystem change.
* CMakeListsEfl.txt: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS} instead of
Freetype_{LIBRARIES,INCLUDE_DIRS}.
Source/WebKit/efl:
* CMakeListsEfl.txt: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS} instead of
Freetype_{LIBRARIES,INCLUDE_DIRS}.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95998
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 21:44:26 +0000 (21:44 +0000)]
Fix full-page rubber band overhang appearing when gesturing during a slow page load.
https://bugs.webkit.org/show_bug.cgi?id=68568
Chromium bug: http://code.google.com/p/chromium/issues/detail?id=97243
(This also happens on Safari.)
The problem was that ScrollView::overhangAmount() was returning a full-page overhang due to contentsSize() being 0 briefly during a page load, which was then getting used by ScrollAnimatorChromiumMac.mm to update the overhang on a gesture event. This change makes the relevant logic not return an overhang if the contentsSize() is empty.
Patch by Alexei Svitkine <asvitkine@chromium.org> on 2011-09-26
Reviewed by Adam Barth.
No new tests, since this is highly timing-related.
* platform/ScrollView.cpp:
(WebCore::ScrollView::overhangAmount):
(WebCore::ScrollView::wheelEvent):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95997
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alex@webkit.org [Mon, 26 Sep 2011 21:44:11 +0000 (21:44 +0000)]
2011-09-26 Alejandro G. Castro <alex@igalia.com>
[GTK] pot file is not properly remove during distcheck
https://bugs.webkit.org/show_bug.cgi?id=68797
Defined DOMAIN variable before DISTCLEANFILES because we are using
it there to identify the .pot file.
Reviewed by Martin Robinson.
* GNUmakefile.am:
2011-09-26 Alejandro G. Castro <alex@igalia.com>
[GTK] pot file is not properly remove during distcheck
https://bugs.webkit.org/show_bug.cgi?id=68797
DOMAIN is already defined, we just add the value to the variable.
Reviewed by Martin Robinson.
* GNUmakefile.am:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95996
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
levin@chromium.org [Mon, 26 Sep 2011 21:39:02 +0000 (21:39 +0000)]
Add skeleton parsing for a WatchList.
https://bugs.webkit.org/show_bug.cgi?id=68823
Reviewed by Adam Barth.
* Scripts/webkitpy/common/watchlist/watchlistparser.py: Added.
Parses the top level watch list sections -- none are defined yet -- and
throws an exception if an invalid one is listed.
* Scripts/webkitpy/common/watchlist/watchlistparser_unittest.py: Added.
Verify the exception for an invalid section in a watch list.
* Scripts/webkitpy/common/watchlist/watchlist.py: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95995
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 21:06:44 +0000 (21:06 +0000)]
Add a failing expectation to the test added by r95964 on Chromium Linux and Chromium Windows.
The failure is tracked by the bug 68832.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95990
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 26 Sep 2011 20:57:06 +0000 (20:57 +0000)]
[Qt][WK2]Unreviewed speculative buildfix after r95968.
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::contentsSizeChanged):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95989
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
wjmaclean@chromium.org [Mon, 26 Sep 2011 20:31:12 +0000 (20:31 +0000)]
[chromium] Revise zoom animator backend to use full transform instead of just scale.
https://bugs.webkit.org/show_bug.cgi?id=68535
Reviewed by Kenneth Russell.
Source/WebCore:
* page/Settings.cpp:
(WebCore::Settings::Settings):
* page/Settings.h:
(WebCore::Settings::setZoomAnimatorScale):
(WebCore::Settings::zoomAnimatorScale):
(WebCore::Settings::setZoomAnimatorPosition):
(WebCore::Settings::zoomAnimatorPosX):
(WebCore::Settings::zoomAnimatorPosY):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::drawLayersInternal):
* platform/graphics/chromium/LayerRendererChromium.h:
(WebCore::LayerRendererChromium::setZoomAnimatorTransform):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::commitTo):
(WebCore::CCLayerTreeHost::setZoomAnimatorTransform):
(WebCore::CCLayerTreeHost::updateLayers):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::setZoomAnimatorTransform):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
* testing/Internals.cpp:
(WebCore::Internals::setZoomAnimatorTransform):
* testing/Internals.h:
* testing/Internals.idl:
Source/WebKit/chromium:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setZoomLevel):
(WebKit::WebViewImpl::setRootLayerNeedsDisplay):
LayoutTests:
* platform/chromium-gpu-linux/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Added.
* platform/chromium/compositing/zoom-animator-scale-test.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95988
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 20:28:07 +0000 (20:28 +0000)]
Layout Test fast/animation/request-animation-frame-timestamps-advance.html is failing
https://bugs.webkit.org/show_bug.cgi?id=68821
Switch test to use finishJSTest(), which handles js-test-post.js loading
after the test is complete better.
* fast/animation/request-animation-frame-timestamps-advance.html:
* fast/animation/script-tests/request-animation-frame-timestamps-advance.js:
(window.webkitRequestAnimationFrame):
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95987
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 20:08:57 +0000 (20:08 +0000)]
[CMake] Detect the operating system in a more generic way.
https://bugs.webkit.org/show_bug.cgi?id=67482
Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-26
Reviewed by Adam Barth.
So far the buildsystem only considered Windows, Linux and Mac OS X as
valid operating systems, but any Unix (or at least the BSDs) should also
work fine.
By using the OS values CMake itself defines we can check for Unix
systems in a more generic fashion.
* Source/CMakeLists.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95986
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Mon, 26 Sep 2011 20:08:11 +0000 (20:08 +0000)]
REGRESSION (r95926) Assert firing in svg/clip-path/clip-path-on-svg.svg
https://bugs.webkit.org/show_bug.cgi?id=68819
Reviewed by Dave Hyatt.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::scheduleRelayout): Revert to using view() instead of the RenderView**
parameter of isRooted, since only the former returns 0 when the document is detached.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95985
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vsevik@chromium.org [Mon, 26 Sep 2011 20:06:55 +0000 (20:06 +0000)]
Web Inspector: XMLHttpRequest console logging messages should link to network panel when possible.
https://bugs.webkit.org/show_bug.cgi?id=67399
Reviewed by Pavel Feldman.
* inspector/ConsoleMessage.cpp:
(WebCore::ConsoleMessage::ConsoleMessage):
* inspector/ConsoleMessage.h:
* inspector/InspectorConsoleAgent.cpp:
(WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
* inspector/InspectorConsoleAgent.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessage.prototype._formatMessage.else.else.linkifier):
(WebInspector.ConsoleMessage.prototype._formatMessage):
* inspector/front-end/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype.showAnchorLocation):
* inspector/front-end/inspector.js:
(WebInspector.linkifyStringAsFragmentWithCustomLinkifier):
(WebInspector.linkifyStringAsFragment):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95984
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
demarchi@webkit.org [Mon, 26 Sep 2011 19:58:24 +0000 (19:58 +0000)]
[EFL] Add virtual method to notify user when wrapping focus
https://bugs.webkit.org/show_bug.cgi?id=68699
Reviewed by Antonio Gomes.
Add a virtual method to ewk_view, so the Chrome gets notified if we
finished focusing all the items and would start over. This way the
browser can decide to handle the subsequent focus changes among its
widgets.
* WebCoreSupport/ChromeClientEfl.cpp: call ewk_view's virtual method to
give it a chance to grab focus
(WebCore::ChromeClientEfl::canTakeFocus):
* ewk/ewk_private.h:
* ewk/ewk_view.cpp: add virtual method
(ewk_view_focus_can_cycle):
* ewk/ewk_view.h: add focus direction enum and virtual method
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95983
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 26 Sep 2011 19:58:00 +0000 (19:58 +0000)]
Remove an old DrawingAreaProxy::paint member function
https://bugs.webkit.org/show_bug.cgi?id=68825
Reviewed by Dan Bernstein.
* UIProcess/DrawingAreaProxy.h:
* UIProcess/DrawingAreaProxyImpl.cpp:
* UIProcess/DrawingAreaProxyImpl.h:
* UIProcess/TiledDrawingAreaProxy.cpp:
* UIProcess/TiledDrawingAreaProxy.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95982
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 19:57:56 +0000 (19:57 +0000)]
Rebaseline fast/dom/Window/window-resize-contents.html for non-Chromium ports.
Previous expected result was Chromium-specific because console line
numbers were different in JSC.
Additionally, the test doesn't behave as expected for non-Chromium
ports (window size remains at 800x600). Update the baselines to use
that for now, so that we're still aware of regressions/progressions.
* fast/dom/Window/window-resize-contents-expected.txt:
* platform/chromium/fast/dom/Window/window-resize-contents-expected.txt: Copied from LayoutTests/fast/dom/Window/window-resize-contents-expected.txt.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95981
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Mon, 26 Sep 2011 19:51:15 +0000 (19:51 +0000)]
White flash when entering full-screen using element.webkitRequestFullScreen()
https://bugs.webkit.org/show_bug.cgi?id=68481
Reviewed by Simon Fraser.
Source/WebCore:
No new tests; covered by existing full screen tests.
During an animation, renderers may try to paint into the FullScreenRenderer's
GraphicsLayer, and an optimization we previously added for the FullScreenRenderer's
background will cause these paints to fail. Remove this optimization in
containsPaintedContent, and taking non-composited elements into full screen will
animate correctly.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::containsPaintedContent):
Source/WebKit2:
Do not re-enable screen updates after exiting compositing mode until a repaint has completed.
* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController exitAcceleratedCompositingMode]):
(continueExitCompositingModeAfterRepaintCallback):
(-[WKFullScreenWindowController _continueExitCompositingModeAfterRepaint]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95978
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 19:43:56 +0000 (19:43 +0000)]
Unreviewed, rolling out r95960.
http://trac.webkit.org/changeset/95960
https://bugs.webkit.org/show_bug.cgi?id=58608
Significantly changes table border rendering
Source/WebCore:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::drawLineForBoxSide):
LayoutTests:
* fast/borders/border-groove-expected.png: Removed.
* fast/borders/border-groove-expected.txt: Removed.
* fast/borders/border-groove.html: Removed.
* fast/borders/border-inset-expected.png: Removed.
* fast/borders/border-inset-expected.txt: Removed.
* fast/borders/border-inset.html: Removed.
* fast/borders/border-outset-expected.png: Removed.
* fast/borders/border-outset-expected.txt: Removed.
* fast/borders/border-outset.html: Removed.
* fast/borders/border-ridge-expected.png: Removed.
* fast/borders/border-ridge-expected.txt: Removed.
* fast/borders/border-ridge.html: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95974
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 19:09:49 +0000 (19:09 +0000)]
Chromium test expectations update.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95969
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Sep 2011 19:01:36 +0000 (19:01 +0000)]
Repaint tests don't work in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=68453
Reviewed by Sam Weinig.
Expose WKBundlePage methods to turn on repaint rect tracking
in WebKit2, for WebKitTestRunner.
As part of the change, expose utility methods on WebPage
to get the main Frame and FrameView, which required renaming
the exisiting method that returns a WebFrame. Fix callers
of that method to handle null when necessary.
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageGetMainFrame):
(WKBundlePageSetTracksRepaints):
(WKBundlePageIsTrackingRepaints):
(WKBundlePageResetTrackedRepaints):
(WKBundlePageCopyTrackedRepaintRects):
* WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::findLargestFrameInFrameSet):
(WebKit::WebChromeClient::closeWindowSoon):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidFirstLayout):
(WebKit::WebFrameLoaderClient::dispatchDidLayout):
(WebKit::WebFrameLoaderClient::frameLoadCompleted):
(WebKit::WebFrameLoaderClient::restoreViewState):
(WebKit::WebFrameLoaderClient::provisionalLoadStarted):
(WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
(WebKit::WebFrameLoaderClient::createPlugin):
* WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
(WebKit::WebEditorClient::documentFragmentFromAttributedString):
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::isMainFrame):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setTracksRepaints):
(WebKit::WebPage::isTrackingRepaints):
(WebKit::WebPage::resetTrackedRepaints):
(WebKit::WebPage::trackedRepaintRects):
(WebKit::WebPage::clearMainFrameName):
(WebKit::WebPage::layoutIfNeeded):
(WebKit::WebPage::mainFrameHasCustomRepresentation):
(WebKit::WebPage::mainFrame):
(WebKit::WebPage::mainFrameView):
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::mainWebFrame):
* WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
(-[WKAccessibilityWebPageObject accessibilityHitTest:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95968
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Sep 2011 18:57:14 +0000 (18:57 +0000)]
Repaint tests don't work in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=68453
Reviewed by Sam Weinig.
Source/WebCore:
Have FrameView keep track of repaint rects when asked to, and
expose this set of repaint rects via private WebKit API for later
use by DumpRenderTree.
The repaint rects are in WebView coordinates, so we have to
unapply the scroll offset.
* WebCore.exp.in:
* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::reset):
(WebCore::FrameView::repaintContentRectangle):
(WebCore::FrameView::setTracksRepaints):
* page/FrameView.h:
(WebCore::FrameView::isTrackingRepaints):
(WebCore::FrameView::resetTrackedRepaints):
(WebCore::FrameView::trackedRepaintRects):
Source/WebKit/mac:
Have FrameView keep track of repaint rects when asked to, and
expose this set of repaint rects via private WebKit API for later
use by DumpRenderTree.
* WebView/WebView.mm:
(-[WebView setTracksRepaints:]):
(-[WebView isTrackingRepaints]):
(-[WebView resetTrackedRepaints]):
(-[WebView trackedRepaintRects]):
* WebView/WebViewPrivate.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95967
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Mon, 26 Sep 2011 18:53:48 +0000 (18:53 +0000)]
Optimize matching of common pseudo classes
https://bugs.webkit.org/show_bug.cgi?id=68633
Reviewed by Dave Hyatt, Darin Adler, Dimitri Glazkov.
:link, :visited and :focus are quite common. They often used as univeral selectors (including in our
default stylesheet) so we try to match them for all elements in the document. They take always the
slow matching path. In addition we match link styles twice due to visited link pseudo style generation
so the overhead is doubled. As a result substantial portion of our style matching time is spent
dealing with these pseudo classes.
This patch adds new lists to RuleSet for common pseudo class rules. The rules on the lists are only checked
if the element has approprate type and stat. ases where the rightmost pseudo class can then be rejected immediately.
We can also enable the fast path checking for the rest of the selector in many cases.
This seems to be >30% progression in selector matching performance with typical style sheets. It saves ~0.9s
when loading the full HTML5 spec.
* css/CSSStyleSelector.cpp:
(WebCore::RuleData::hasRightmostSelectorMatchingHTMLBasedOnRuleHash):
(WebCore::RuleSet::idRules):
(WebCore::RuleSet::classRules):
(WebCore::RuleSet::tagRules):
(WebCore::RuleSet::shadowPseudoElementRules):
(WebCore::RuleSet::linkPseudoClassRules):
(WebCore::RuleSet::visitedPseudoClassRules):
(WebCore::RuleSet::focusPseudoClassRules):
(WebCore::RuleSet::universalRules):
(WebCore::RuleSet::pageRules):
Add a new lists, some stylistic renamings.
(WebCore::CSSStyleSelector::matchRules):
New link and focus checks.
(WebCore::CSSStyleSelector::matchRulesForList):
(WebCore::CSSStyleSelector::checkSelector):
Inline the rightmost selector tag checking, skip if unnecessary.
(WebCore::isSelectorMatchingHTMLBasedOnRuleHash):
Common pseudo classes now match based on early filtering (though it is not a hash in this case).
(WebCore::RuleData::RuleData):
(WebCore::RuleSet::~RuleSet):
(WebCore::RuleSet::addRule):
Sort pseudo classes to new lists.
(WebCore::RuleSet::collectFeatures):
(WebCore::RuleSet::shrinkToFit):
(WebCore::CSSStyleSelector::matchPageRules):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkSelector):
Adopt to expanded fast path (this is used by querySelectorAll).
(WebCore::SelectorChecker::fastCheckRightmostSelector):
(WebCore::SelectorChecker::fastCheckSelector):
Rightmost selector is now checked differently than the rest. RuleSet based selection in CSSStyleSelector
is equivalent to fastCheckRightmostSelector().
(WebCore::isFastCheckableRelation):
(WebCore::isFastCheckableMatch):
(WebCore::isFastCheckableRightmostSelector):
(WebCore::SelectorChecker::isFastCheckableSelector):
(WebCore::SelectorChecker::checkOneSelector):
(WebCore::SelectorChecker::commonPseudoClassSelectorMatches):
(WebCore::SelectorChecker::isFrameFocused):
* css/SelectorChecker.h:
(WebCore::SelectorChecker::isCommonPseudoClassSelector):
(WebCore::SelectorChecker::linkMatchesVisitedPseudoClass):
(WebCore::SelectorChecker::matchesFocusPseudoClass):
(WebCore::SelectorChecker::tagMatches):
Refactor a bunch of shared checks into functions.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95966
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Mon, 26 Sep 2011 18:52:00 +0000 (18:52 +0000)]
[Qt]REGRESSION(r95865): It made 4 tests crash
https://bugs.webkit.org/show_bug.cgi?id=68780
Patch by Zoltan Herczeg <zherczeg@webkit.org> on 2011-09-26
Reviewed by Oliver Hunt.
emitJumpSlowCaseIfNotJSCell(...) cannot be moved
away since the next load depends on it.
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_put_by_val):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95965
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 18:30:29 +0000 (18:30 +0000)]
REGRESSION(r74971): Selection doesn't work correctly in BiDi Text
https://bugs.webkit.org/show_bug.cgi?id=57340
Reviewed by Eric Seidel.
Source/WebCore:
This patch adds the end point adjustment mechanism at bidi boundaries similar to the one NSTextView implements.
To understand the problem, suppose we have strong RTL letters "ABC" in a LTR block (visually laid out as CBA).
Per NSTextView convention, logical offsets between each letter is placed as (0)C(2)B(1)A(3). In other words,
placing the caret visually on the left of CBA yields the position inside the text node of "ABC" at offset 0.
Likewise, placing it between C and B yields ("ABC", 2), and placing it on the right of CBA yields ("ABC", 3).
Now suppose a user attempts to select the letter A by a mouse drag from the right of CBA to a point between
B and A. First, the initial mouse down places the selection's base at ("ABC", 3). Then as the mouse pointer
moves to a point on the left of A, the selection's extent is set at ("ABC", 1), selecting "BC".
To mitigate this issue, NSTextView adjusts selection base and extent under certain conditions. In the above
example, NSTextView detects user's intent and changes the selection's base to ("ABC", 0) temporarily.
This patch implements a similar trick on WebKit. We adjust the base or the extent when they're at the left
end or at the right end of a bidi run and the other end is inside of the run. In the above example, the
base position on the right of A is the right end of a bidi run and the extent position between B and A is
inside the same run (CBA), so we would adjust the base to be ("ABC", 0) as NSTextView does.
Take another example abcABC. Note offsets are assigned as (0)a(1)b(2)c(3)C(5)B(4)A(6) When the user starts
a mouse drag from the right of A to a point between B and A, we adjust the selection base to be ("abcABC", 3)
because the base is at the right end of a bidi run and the extent is in the same run. We keep the adjustment
when the mouse pointer moves to a point between C and B. However, when the mouser pointer reaches a point
between letters b and c, the selection extent is placed at ("abcABC", 2). Because the extent is outside of
the bidi run started from the selection base, we restore the original base at this point. Had we not done this,
we'll end up selecting just "c".
While this algorithm is implemented in FrameSelection::setNonDirectionalSelectionIfNeeded, this patch adds
various member functions to RenderedPosition to facilitate abstraction around inline boxes and bidi runs.
Test: editing/selection/select-bidi-run.html
* editing/FrameSelection.cpp:
(WebCore::adjustEndpointsAtBidiBoundary): Added. Implements the endpoints adjustment algorithm.
(WebCore::FrameSelection::setNonDirectionalSelectionIfNeeded): Calls adjustEndpointsAtBidiBoundary, and
restores the original base as needed.
* editing/FrameSelection.h:
* editing/RenderedPosition.cpp:
(WebCore::RenderedPosition::RenderedPosition):
(WebCore::RenderedPosition::prevLeafChild): Added to cache prevLeafChild of the current inline box.
(WebCore::RenderedPosition::nextLeafChild): Ditto for nextLeafChild.
(WebCore::RenderedPosition::isEquivalent): Compares two RenderedPositions considering neighboring inline boxes
so that the rightmost position in a box and the leftmost position in the following box is considered equal.
(WebCore::RenderedPosition::bidiLevelOnLeft): Added. Returns the bidi level of the run on the left. We can't
add a generic bidiLevel to this class because it'll be ambiguous at bidi boundaries.
(WebCore::RenderedPosition::bidiLevelOnRight): Ditto for the run on the right.
(WebCore::RenderedPosition::leftBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::rightBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::atLeftBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::atRightBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::positionAtLeftBoundaryOfBiDiRun): Returns Position at the left edge of a bidi run
if RenderedPosition is at such a position. Asserts atLeftBoundaryOfBidiRun.
(WebCore::RenderedPosition::positionAtRightBoundaryOfBiDiRun): Ditto for the right edge.
* editing/RenderedPosition.h:
(WebCore::RenderedPosition::atLeftBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::atRightBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::atLeftmostOffsetInBox): Added.
(WebCore::RenderedPosition::atRightmostOffsetInBox): Added.
(WebCore::RenderedPosition::uncachedInlineBox): Added. We can't use a static const variable because gcc thinks
reinterpret_cast<InlineBox*>(1) is not an integral value.
(WebCore::RenderedPosition::RenderedPosition):
* editing/VisibleSelection.h:
(WebCore::VisibleSelection::visibleBase): Added.
(WebCore::VisibleSelection::visibleExtent): Added.
* page/EventHandler.cpp:
(WebCore::EventHandler::updateSelectionForMouseDrag):
LayoutTests:
* editing/selection/select-bidi-run-expected.txt: Added.
* editing/selection/select-bidi-run.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95964
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 26 Sep 2011 18:00:50 +0000 (18:00 +0000)]
[Qt] Unreviewed gardening.
* platform/qt/fast/dom/Window/window-resize-contents-expected.png: Added after r95897.
* platform/qt/fast/dom/Window/window-resize-contents-expected.txt: Added after r95897.
* platform/qt/fast/frames/flattening/frameset-flattening-advanced-expected.png: Updated after r95897.
* platform/qt/fast/frames/flattening/frameset-flattening-advanced-expected.txt: Updated after r95897.
* platform/qt/fast/frames/flattening/frameset-flattening-subframesets-expected.png: Updated after r95897.
* platform/qt/fast/frames/flattening/frameset-flattening-subframesets-expected.txt: Updated after r95897.
* platform/qt/fast/ruby/ruby-text-before-after-content-expected.png: Added after r95857.
* platform/qt/fast/ruby/ruby-text-before-after-content-expected.txt: Added after r95857.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95963
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 17:52:55 +0000 (17:52 +0000)]
Unreviewed, rolling out r95256.
http://trac.webkit.org/changeset/95256
https://bugs.webkit.org/show_bug.cgi?id=68814
Temporary CRASH calls no longer needed (Requested by enne on
#webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-26
Source/WebCore:
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::commitTo):
Source/WebKit/chromium:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::composite):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95962
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 26 Sep 2011 17:36:19 +0000 (17:36 +0000)]
<webkit.org/b/68809> IconDatabase::syncThreadMainLoop can assert if wakeSyncThread is called before thread starts executing
If wakeSyncThread is called before syncThreadMainLoop starts executing then m_syncThreadHasWorkToDo would be set
while executing the body of the sync thread loop, causing us to skip blocking on the condition variable. This would
lead to us hitting the assertion failure due to m_disabledSuddenTerminationForSyncThread being false, unless the main
thread happened to call wakeSyncThread a second time while the first loop iteration was executing.
Reviewed by Anders Carlsson.
* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::syncThreadMainLoop): Clear m_syncThreadHasWorkToDo to indicate that we're about to perform
all pending work.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95961
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Sep 2011 17:34:08 +0000 (17:34 +0000)]
Groove/inset/outset borders show solid if the color is black.
https://bugs.webkit.org/show_bug.cgi?id=58608
Patch by Antaryami Pandia <antaryami.pandia@motorola.com> on 2011-09-26
Reviewed by Simon Fraser.
Source/WebCore:
Lightened the border side colors when drawing borders with styles as
Outset/Inset/Groove/Ridge.
Tests: fast/borders/border-groove.html
fast/borders/border-inset.html
fast/borders/border-outset.html
fast/borders/border-ridge.html
* rendering/RenderObject.cpp:
(WebCore::RenderObject::drawLineForBoxSide):
LayoutTests:
* fast/borders/border-groove-expected.png: Added.
* fast/borders/border-groove-expected.txt: Added.
* fast/borders/border-groove.html: Added.
* fast/borders/border-inset-expected.png: Added.
* fast/borders/border-inset-expected.txt: Added.
* fast/borders/border-inset.html: Added.
* fast/borders/border-outset-expected.png: Added.
* fast/borders/border-outset-expected.txt: Added.
* fast/borders/border-outset.html: Added.
* fast/borders/border-ridge-expected.png: Added.
* fast/borders/border-ridge-expected.txt: Added.
* fast/borders/border-ridge.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95960
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
inferno@chromium.org [Mon, 26 Sep 2011 17:13:09 +0000 (17:13 +0000)]
Delete retired custom font data only on document
destruction, and not on recalc style.
https://bugs.webkit.org/show_bug.cgi?id=68805
Reviewed by Dave Hyatt.
Source/WebCore:
Test: fast/text/custom-font-data-crash.html
* dom/Document.cpp:
(WebCore::Document::recalcStyle):
LayoutTests:
* fast/text/custom-font-data-crash-expected.txt: Added.
* fast/text/custom-font-data-crash.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95959
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 17:00:40 +0000 (17:00 +0000)]
chrome.dll!WebCore::ApplyStyleCommand::applyBlockStyle ReadAV@NULL (
64db547804532a84be2e53721e499e9e)
https://bugs.webkit.org/show_bug.cgi?id=51639
Patch by Jay Soffian <jaysoffian@gmail.com> on 2011-09-26
Reviewed by Ryosuke Niwa.
Add missing window.layoutTestController.dumpAsText so that test output matches expectation.
* LayoutTests/editing/style/justify-without-enclosing-block.xhtml:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95958
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
enne@google.com [Mon, 26 Sep 2011 16:44:18 +0000 (16:44 +0000)]
[chromium] Update VideoLayerChromium textures after texture resources are reclaimed
https://bugs.webkit.org/show_bug.cgi?id=68742
Reviewed by James Robinson.
Source/WebCore:
If video textures are reclaimed (such as during a visibility change on
a tab), the dirty rect for the layer is empty and it skips out of
updating compositor resources, leaving the video textures invalid.
Instead, check the textures here to make sure they're still valid
first before early out so that they can get reupdated if necessary.
Additionally, fix a small bug in pushPropertiesTo where 1 plane RGB
videos would not get drawn because all 3 planes didn't have valid
textures.
Test: compositing/video-page-visibility.html
* platform/graphics/chromium/VideoLayerChromium.cpp:
(WebCore::VideoLayerChromium::VideoLayerChromium):
(WebCore::VideoLayerChromium::cleanupResources):
(WebCore::VideoLayerChromium::updateCompositorResources):
(WebCore::VideoLayerChromium::pushPropertiesTo):
(WebCore::VideoLayerChromium::setLayerTreeHost):
(WebCore::VideoLayerChromium::texturesValid):
* platform/graphics/chromium/VideoLayerChromium.h:
LayoutTests:
Without this patch, this video texture is invalid.
* compositing/video-page-visibility-expected.png: Added.
* compositing/video-page-visibility-expected.txt: Added.
* compositing/video-page-visibility.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95957
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Mon, 26 Sep 2011 16:31:46 +0000 (16:31 +0000)]
Web Inspector: generic performance UI test for panel switch.
https://bugs.webkit.org/show_bug.cgi?id=68806
Reviewed by Pavel Feldman.
* inspector/performance/resources/show-panel-elements.html: Removed.
* inspector/performance/resources/show-panel-network.html: Removed.
* inspector/performance/resources/show-panel.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95956
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Mon, 26 Sep 2011 15:55:05 +0000 (15:55 +0000)]
Clean up code imported from WebKitAPITest
Fixes <http://webkit.org/b/68799> WebViewDestruction tests and related code don't match
TestWebKitAPI conventions
Reviewed by David Levin.
* TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp: Changed tests to use gtest macros
and to share functionality via test fixtures. Prefixed Win32 API calls with ::. Updated
namespace name.
(TestWebKitAPI::WebViewDestruction::SetUp):
(TestWebKitAPI::WebViewDestruction::webViewCount):
(TestWebKitAPI::WebViewDestructionWithHostWindow::SetUp):
(TestWebKitAPI::WebViewDestruction::runMessagePump):
(TestWebKitAPI::WebViewDestruction::TearDown):
(TestWebKitAPI::WebViewDestructionWithHostWindow::TearDown):
Moved functionality from free functions into these new test fixtures.
* TestWebKitAPI/win/HostWindow.cpp:
* TestWebKitAPI/win/HostWindow.h:
Prefixed Win32 API calls with ::. Updated namespace name.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95955
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 15:51:43 +0000 (15:51 +0000)]
Unreviewed. Rolled DEPS.
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-26
* DEPS:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95954
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Mon, 26 Sep 2011 15:29:39 +0000 (15:29 +0000)]
Web Inspector: introduce protocol backwards compatibility validator.
https://bugs.webkit.org/show_bug.cgi?id=68800
Reviewed by Yury Semikhatsky.
* inspector/Inspector.json:
* inspector/Inspector.draft-01.json: Copied from Source/WebCore/inspector/Inspector.json.
* inspector/validate-protocol-compatibility: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95953
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
reni@webkit.org [Mon, 26 Sep 2011 14:45:33 +0000 (14:45 +0000)]
Unreviewed Qt gardening.
https://bugs.webkit.org/show_bug.cgi?id=68796
Patch by Zsolt Fehér <feherzs@inf.u-szeged.hu> on 2011-09-26
* platform/qt/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95950
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
reni@webkit.org [Mon, 26 Sep 2011 14:39:24 +0000 (14:39 +0000)]
Unreviewed Qt gardening.
https://bugs.webkit.org/show_bug.cgi?id=51639
Patch by Zsolt Fehér <feherzs@inf.u-szeged.hu> on 2011-09-26
* platform/qt/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95949
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kov@webkit.org [Mon, 26 Sep 2011 13:35:51 +0000 (13:35 +0000)]
Fix documentation generation by specifying the sources
directory with $(top_srcdir).
Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2011-09-26
Reviewed by Xan Lopez.
* docs/GNUmakefile.am:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95948
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 13:03:01 +0000 (13:03 +0000)]
[Qt] Unused variable in QNetworkReplyHandler::sendNetworkRequest.
https://bugs.webkit.org/show_bug.cgi?id=68798
Patch by Andreas Kling <kling@webkit.org> on 2011-09-26
Reviewed by Noam Rosenthal.
* platform/network/qt/QNetworkReplyHandler.cpp:
(WebCore::QNetworkReplyHandler::sendNetworkRequest):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95947
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Mon, 26 Sep 2011 12:52:41 +0000 (12:52 +0000)]
Second unreviewed build fix for r95941
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willCallFunctionImpl):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95946
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Mon, 26 Sep 2011 12:48:55 +0000 (12:48 +0000)]
Unreviewed build fix for webkit builds after r95941.
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willCallFunctionImpl):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95945
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Mon, 26 Sep 2011 12:16:59 +0000 (12:16 +0000)]
Merge WebKitAPITest into TestWebKitAPI
This also means that our formerly-WebKitAPITest tests will be run on the bots!
I made the minimal changes necessary to get the tests to run in TestWebKitAPI. I'll make
them more idiomatic in a separate pass.
Fixes <http://webkit.org/b/66560> WebKitAPITest and TestWebKitAPI have duplicate
functionality (and names!)
Reviewed by Anders Carlsson.
Tools:
* TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp: Renamed from Tools/WebKitAPITest/tests/WebViewDestruction.cpp.
* TestWebKitAPI/win/HostWindow.cpp: Renamed from Tools/WebKitAPITest/HostWindow.cpp.
* TestWebKitAPI/win/HostWindow.h: Renamed from Tools/WebKitAPITest/HostWindow.h.
* TestWebKitAPI/win/TestWebKitAPI.vcproj: Added new files.
* TestWebKitAPI/win/main.cpp:
(main): Added a call to ::OleInitialize to make WebKit1 work. This came from WebKitAPITest.
* WebKitAPITest: Removed this directory and its contents.
Source/WebKit/win:
Remove WebKitAPITest
* WebKit.vcproj/WebKit.sln: Removed WebKitAPITest.vcproj. Changed WebKitLauncherWin, which
formerly depended on WebKitAPITest, to now depend on DumpRenderTree, which WebKitAPITest
depended on.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95944
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Mon, 26 Sep 2011 12:15:28 +0000 (12:15 +0000)]
Remove two failing WebKitAPITest tests
The failures are covered by <http://webkit.org/b/33162> and <http://webkit.org/b/32868>.
Reviewed by Anders Carlsson.
* WebKitAPITest/tests/WebViewDestruction.cpp: Removed the NoCloseOrDestroyViewWindow and
MainFrameAfterClose tests.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95943
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caseq@chromium.org [Mon, 26 Sep 2011 12:15:14 +0000 (12:15 +0000)]
2011-09-26 Andrey Kosyakov <caseq@chromium.org>
Web Inspector: [Extensions API] allow resources to hook on click on resource links
https://bugs.webkit.org/show_bug.cgi?id=68528
Reviewed by Yury Semikhatsky.
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/front-end/ExtensionAPI.js:
(injectedExtensionAPI.Console.prototype.get Severity):
(injectedExtensionAPI.Panels.prototype.create):
(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler.else.callbackWrapper):
(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler):
(injectedExtensionAPI.ExtensionServerClient.prototype.hasHandler):
(injectedExtensionAPI.ExtensionServerClient.prototype.deregisterHandler):
* inspector/front-end/ExtensionServer.js:
(WebInspector.ExtensionServer):
(WebInspector.ExtensionServer.prototype._onSetOpenResourceHandler):
(WebInspector.ExtensionServer.prototype._handleAnchorClicked):
(WebInspector.ExtensionServer.prototype._addExtensions):
(WebInspector.ExtensionServer.prototype._addExtension):
(WebInspector.ExtensionServer.prototype._registerExtension):
* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsScreen):
(WebInspector.SettingsScreen.prototype._createCustomSetting):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/helpScreen.css:
(.help-content select):
(.help-content select:disabled):
(.help-content option):
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector.set attached):
(WebInspector._showAnchorLocation):
2011-09-26 Andrey Kosyakov <caseq@chromium.org>
Web Inspector: [Extensions API] allow resources to hook on click on resource links
https://bugs.webkit.org/show_bug.cgi?id=68528
Reviewed by Yury Semikhatsky.
* http/tests/inspector/extensions-test.js:
(initialize_ExtensionsTest.InspectorTest.runExtensionTests):
(initialize_ExtensionsTest):
* inspector/extensions/extensions-api-expected.txt:
* inspector/extensions/extensions-resources-expected.txt:
* inspector/extensions/extensions-resources.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95942
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Mon, 26 Sep 2011 12:12:34 +0000 (12:12 +0000)]
Web Inspector: Timeline: record root event for the function calls enforced by console eval.
https://bugs.webkit.org/show_bug.cgi?id=68695
In a complex web application developer might want to timeline a specific piece of code.
In this case he can do the next steps:
1) start timeline;
2) eval a command in console;
3) stop timeline.
I think it'd be nice to have a root event for the all the events that happened as the result of such eval.
Reviewed by Yury Semikhatsky.
Source/WebCore:
Test: inspector/timeline/timeline-injected-script-eval.html
* bindings/v8/ScriptFunctionCall.cpp:
* inspector/InjectedScript.cpp:
(WebCore::InjectedScript::makeCall):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willCallFunctionImpl):
LayoutTests:
* inspector/timeline/timeline-injected-script-eval-expected.txt: Added.
* inspector/timeline/timeline-injected-script-eval.html: Added.
* platform/chromium/inspector/timeline/timeline-injected-script-eval-expected.txt: Added.
* platform/chromium/inspector/timeline/timeline-receive-response-event-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95941
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kov@webkit.org [Mon, 26 Sep 2011 12:06:02 +0000 (12:06 +0000)]
REGRESSION: Empathy crashes when switching theme
https://bugs.webkit.org/show_bug.cgi?id=68600
Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2011-09-26
Reviewed by Martin Robinson.
* webkit/webkitwebview.cpp:
(webkit_web_view_set_scroll_adjustments): use the existing
set{Horizontal,Vertical}Adjustment functions, so the code is not
duplicated
(webkit_web_view_dispose): unset the adjustments during dispose,
to avoid late adjustment change notifications hitting the
adjustment watcher
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95940
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
noam.rosenthal@nokia.com [Mon, 26 Sep 2011 10:51:59 +0000 (10:51 +0000)]
[Texmap][Qt] Enable TextureMapperGL in platforms where BGRA is not present
https://bugs.webkit.org/show_bug.cgi?id=65473
Reviewed by Andreas Kling.
For now, swap RGBA->BGRA in software if we're in OpenGL ES 2.
We do that by iterating on the pixels and manually swapping each pixel's red and blue
values. This can be done faster with shaders, but for now this is a working solution
for platforms without BGRA support.
No new tests. Existing layout tests cover this.
* platform/graphics/opengl/TextureMapperGL.cpp:
(WebCore::BitmapTextureGL::endPaint):
* platform/graphics/opengl/TextureMapperGL.h:
* platform/graphics/qt/TextureMapperQt.cpp:
(WebCore::RGBA32PremultimpliedBufferQt::swapRGB):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95939
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 09:05:02 +0000 (09:05 +0000)]
[GTK] Fix coding style bits in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=68634
Patch by Sergio Villar Senin <svillar@igalia.com> on 2011-09-26
Reviewed by Martin Robinson.
No new tests needed.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandle::defaultSession):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95938
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 07:21:45 +0000 (07:21 +0000)]
[mac] Timestamp parameter to requestAnimationFrame is busted in USE(REQUEST_ANIMATION_FRAME_TIMER) path
https://bugs.webkit.org/show_bug.cgi?id=68769
Patch by James Robinson <jamesr@chromium.org> on 2011-09-26
Reviewed by Simon Fraser.
Source/WebCore:
Convert the time parameter from double to DOMTimeStamp using convertSecondsToDOMTimeStamp rather than relying on
implicit double->long conversion, which ignores the units of the value.
Test: fast/animation/request-animation-frame-timestamps-advance.html
* dom/ScriptedAnimationController.cpp:
(WebCore::ScriptedAnimationController::animationTimerFired):
LayoutTests:
Adds a test that the timestamp parameter to the requestAnimationFrame callback advances between calls.
* fast/animation/request-animation-frame-timestamps-advance-expected.txt: Added.
* fast/animation/request-animation-frame-timestamps-advance.html: Added.
* fast/animation/script-tests/request-animation-frame-timestamps-advance.js: Copied from LayoutTests/fast/animation/script-tests/request-animation-frame-timestamps.js.
(busyWait):
(window.webkitRequestAnimationFrame):
* fast/animation/script-tests/request-animation-frame-timestamps.js:
Remove the element parameter, they aren't a useful part of the test.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95937
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhahnenberg@apple.com [Mon, 26 Sep 2011 07:05:28 +0000 (07:05 +0000)]
Add custom vtable struct to ClassInfo struct
https://bugs.webkit.org/show_bug.cgi?id=68567
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
Declared/defined the MethodTable struct and added it to the ClassInfo struct.
Also defined the CREATE_METHOD_TABLE macro to generate these method tables
succinctly where they need to be defined.
Also added to it the first function to use this macro, visitChildren.
This is part of the process of getting rid of all C++ virtual methods in JSCell.
Eventually all virtual functions in JSCell that can't easily be converted to
non-virtual functions will be put into this custom vtable structure.
* runtime/ClassInfo.h:
Added the CREATE_METHOD_TABLE macro call as the last argument to each of the
ClassInfo structs declared in these classes. This saves us from having to visit
each s_info definition in the future when we add more methods to the MethodTable.
* API/JSCallbackConstructor.cpp:
* API/JSCallbackFunction.cpp:
* API/JSCallbackObject.cpp:
* JavaScriptCore.exp:
* runtime/Arguments.cpp:
* runtime/ArrayConstructor.cpp:
* runtime/ArrayPrototype.cpp:
* runtime/BooleanObject.cpp:
* runtime/BooleanPrototype.cpp:
* runtime/DateConstructor.cpp:
* runtime/DateInstance.cpp:
* runtime/DatePrototype.cpp:
* runtime/ErrorInstance.cpp:
* runtime/ErrorPrototype.cpp:
* runtime/ExceptionHelpers.cpp:
* runtime/Executable.cpp:
* runtime/GetterSetter.cpp:
* runtime/InternalFunction.cpp:
* runtime/JSAPIValueWrapper.cpp:
* runtime/JSActivation.cpp:
* runtime/JSArray.cpp:
* runtime/JSByteArray.cpp:
* runtime/JSFunction.cpp:
* runtime/JSGlobalObject.cpp:
* runtime/JSONObject.cpp:
* runtime/JSObject.cpp:
* runtime/JSPropertyNameIterator.cpp:
* runtime/JSString.cpp:
* runtime/MathObject.cpp:
* runtime/NativeErrorConstructor.cpp:
* runtime/NumberConstructor.cpp:
* runtime/NumberObject.cpp:
* runtime/NumberPrototype.cpp:
* runtime/ObjectConstructor.cpp:
* runtime/ObjectPrototype.cpp:
* runtime/RegExp.cpp:
* runtime/RegExpConstructor.cpp:
* runtime/RegExpObject.cpp:
* runtime/RegExpPrototype.cpp:
* runtime/ScopeChain.cpp:
* runtime/StringConstructor.cpp:
* runtime/StringObject.cpp:
* runtime/StringPrototype.cpp:
* runtime/Structure.cpp:
* runtime/StructureChain.cpp:
Had to make visitChildren and visitChildrenVirtual protected instead of private
because some of the subclasses of JSWrapperObject need access to JSWrapperObject's
visitChildren function pointer in their vtable since they don't provide their own
implementation. Same for RegExpObject.
* runtime/JSWrapperObject.h:
* runtime/RegExpObject.h:
Source/JavaScriptGlue:
Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
specified class in its ClassInfo. Also added to it the first function to use
this macro, visitChildren. This is part of the process of getting rid of all
C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
that can't easily be converted to non-virtual functions will be put into
this custom vtable structure.
* UserObjectImp.cpp:
Source/WebCore:
No new tests.
Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
specified class in its ClassInfo. Also added to it the first function to use
this macro, visitChildren. This is part of the process of getting rid of all
C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
that can't easily be converted to non-virtual functions will be put into
this custom vtable structure.
* bindings/js/JSAudioConstructor.cpp:
* bindings/js/JSDOMGlobalObject.cpp:
* bindings/js/JSDOMWindowBase.cpp:
* bindings/js/JSDOMWindowShell.cpp:
* bindings/js/JSImageConstructor.cpp:
* bindings/js/JSImageDataCustom.cpp:
(WebCore::toJS):
* bindings/js/JSOptionConstructor.cpp:
* bindings/js/JSWorkerContextBase.cpp:
Changed the bindings generator to add the call to the CREATE_METHOD_TABLE macro where
necessary.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
(GenerateConstructorDefinition):
* bindings/scripts/test/JS/JSTestInterface.cpp:
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bridge/c/CRuntimeObject.cpp:
* bridge/c/c_instance.cpp:
* bridge/jni/jsc/JavaInstanceJSC.cpp:
* bridge/jni/jsc/JavaRuntimeObject.cpp:
* bridge/objc/ObjCRuntimeObject.mm:
* bridge/objc/objc_instance.mm:
* bridge/objc/objc_runtime.mm:
* bridge/qt/qt_instance.cpp:
* bridge/qt/qt_pixmapruntime.cpp:
* bridge/qt/qt_runtime.cpp:
* bridge/runtime_array.cpp:
* bridge/runtime_method.cpp:
* bridge/runtime_object.cpp:
Source/WebKit/mac:
Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
specified class in its ClassInfo. Also added to it the first function to use
this macro, visitChildren. This is part of the process of getting rid of all
C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
that can't easily be converted to non-virtual functions will be put into
this custom vtable structure.
* Plugins/Hosted/ProxyInstance.mm:
* Plugins/Hosted/ProxyRuntimeObject.mm:
Source/WebKit2:
Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
specified class in its ClassInfo. Also added to it the first function to use
this macro, visitChildren. This is part of the process of getting rid of all
C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
that can't easily be converted to non-virtual functions will be put into
this custom vtable structure.
* WebProcess/Plugins/Netscape/JSNPMethod.cpp:
* WebProcess/Plugins/Netscape/JSNPObject.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95936
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 06:53:14 +0000 (06:53 +0000)]
[EFL] Move GtkWidgetBackingStoreCairo to the cairo directory and modify to use in the EFL.
https://bugs.webkit.org/show_bug.cgi?id=63502
Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2011-09-25
Reviewed by Martin Robinson.
The gtk/GtkWidgetBackingStoreCairo.cpp is moved to the cairo/WidgetBackingStoreCairo.cpp and
some codes for EFL are added.
WidgetBackingStoreCairo creates cairo_image_surface and has a role to copy reusable area
when scrolling. So, it will be used in the WebKit2 EFL port's BackingStore.
* CMakeListsEfl.txt:
* GNUmakefile.list.am:
* platform/cairo/WidgetBackingStore.h:
* platform/cairo/WidgetBackingStoreCairo.cpp: Renamed from Source/WebCore/platform/gtk/GtkWidgetBackingStoreCairo.cpp.
(WebCore::createSurfaceForBackingStore):
(WebCore::WidgetBackingStorePrivate::create):
(WebCore::WidgetBackingStorePrivate::WidgetBackingStorePrivate):
(WebCore::WidgetBackingStore::create):
(WebCore::WidgetBackingStore::WidgetBackingStore):
(WebCore::WidgetBackingStore::~WidgetBackingStore):
(WebCore::WidgetBackingStore::cairoSurface):
(WebCore::WidgetBackingStore::scroll):
* platform/gtk/GtkWidgetBackingStoreX11.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95935
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Mon, 26 Sep 2011 04:13:43 +0000 (04:13 +0000)]
Finish removing PLATFORM(BREWMP) by removing associated code
https://bugs.webkit.org/show_bug.cgi?id=68779
Reviewed by Sam Weinig.
.:
* Source/cmake/WebKitPackaging.cmake:
* wscript:
Source/JavaScriptCore:
* JavaScriptCore.gyp/JavaScriptCore.gyp:
* JavaScriptCore.gypi:
* gyp/JavaScriptCore.gyp:
* wscript:
* wtf/FastMalloc.cpp:
(WTF::fastMallocSize):
* wtf/Vector.h:
* wtf/brew: Removed.
* wtf/brew/MainThreadBrew.cpp: Removed.
* wtf/brew/OwnPtrBrew.cpp: Removed.
* wtf/brew/RefPtrBrew.h: Removed.
* wtf/brew/ShellBrew.h: Removed.
* wtf/brew/StringBrew.cpp: Removed.
* wtf/brew/SystemMallocBrew.h: Removed.
* wtf/unicode/brew: Removed.
* wtf/unicode/brew/UnicodeBrew.cpp: Removed.
* wtf/unicode/brew/UnicodeBrew.h: Removed.
Source/WebCore:
When Geoffrey Garen removed PLATFORM(BREWMP) in
http://trac.webkit.org/changeset/95555, he did not remove all the
associated code. This completes the work started in r95555 by removing
all the code assoicated with PLATFORM(BREWMP).
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* bindings/js/ScriptControllerBrew.cpp: Removed.
* editing/brew: Removed.
* editing/brew/EditorBrew.cpp: Removed.
* gyp/WebCore.gyp:
* page/brew: Removed.
* page/brew/ChromeClientBrew.h: Removed.
* page/brew/DragControllerBrew.cpp: Removed.
* page/brew/EventHandlerBrew.cpp: Removed.
* page/brew/FrameBrew.cpp: Removed.
* platform/brew: Removed.
* platform/brew/ClipboardBrew.cpp: Removed.
* platform/brew/ClipboardBrew.h: Removed.
* platform/brew/ContextMenuBrew.cpp: Removed.
* platform/brew/ContextMenuItemBrew.cpp: Removed.
* platform/brew/CursorBrew.cpp: Removed.
* platform/brew/DragDataBrew.cpp: Removed.
* platform/brew/EventLoopBrew.cpp: Removed.
* platform/brew/FileSystemBrew.cpp: Removed.
* platform/brew/KURLBrew.cpp: Removed.
* platform/brew/LanguageBrew.cpp: Removed.
* platform/brew/LocalizedStringsBrew.cpp: Removed.
* platform/brew/LoggingBrew.cpp: Removed.
* platform/brew/MIMETypeRegistryBrew.cpp: Removed.
* platform/brew/PasteboardBrew.cpp: Removed.
* platform/brew/PlatformKeyboardEventBrew.cpp: Removed.
* platform/brew/PlatformMouseEventBrew.cpp: Removed.
* platform/brew/PlatformTouchEventBrew.cpp: Removed.
* platform/brew/PlatformTouchPointBrew.cpp: Removed.
* platform/brew/PopupMenuBrew.cpp: Removed.
* platform/brew/PopupMenuBrew.h: Removed.
* platform/brew/SSLKeyGeneratorBrew.cpp: Removed.
* platform/brew/ScreenBrew.cpp: Removed.
* platform/brew/ScrollbarThemeBrew.cpp: Removed.
* platform/brew/ScrollbarThemeBrew.h: Removed.
* platform/brew/SearchPopupMenuBrew.cpp: Removed.
* platform/brew/SearchPopupMenuBrew.h: Removed.
* platform/brew/SharedBufferBrew.cpp: Removed.
* platform/brew/SharedTimerBrew.cpp: Removed.
* platform/brew/SoundBrew.cpp: Removed.
* platform/brew/SystemTimeBrew.cpp: Removed.
* platform/brew/TemporaryLinkStubs.cpp: Removed.
* platform/brew/WidgetBrew.cpp: Removed.
* platform/graphics/brew: Removed.
* platform/graphics/brew/IconBrew.cpp: Removed.
* platform/graphics/brew/ImageBrew.cpp: Removed.
* platform/graphics/brew/IntPointBrew.cpp: Removed.
* platform/graphics/brew/IntSizeBrew.cpp: Removed.
* platform/network/brew: Removed.
* platform/network/brew/DNSBrew.cpp: Removed.
* platform/network/brew/SocketStreamError.h: Removed.
* platform/network/brew/SocketStreamHandle.h: Removed.
* platform/network/brew/SocketStreamHandleBrew.cpp: Removed.
* platform/network/brew/SocketStreamHandlePrivate.h: Removed.
* platform/text/brew: Removed.
* platform/text/brew/TextBoundariesBrew.cpp: Removed.
* platform/text/brew/TextBreakIteratorBrew.cpp: Removed.
* platform/text/brew/TextCodecBrew.cpp: Removed.
* platform/text/brew/TextCodecBrew.h: Removed.
Source/WebKit2:
* Scripts/generate-forwarding-headers.pl:
Tools:
* Scripts/webkitpy/common/config/build.py:
* waf/build/settings.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95934
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Mon, 26 Sep 2011 04:05:28 +0000 (04:05 +0000)]
DFG JIT does not count speculation successes correctly
https://bugs.webkit.org/show_bug.cgi?id=68785
Reviewed by Geoffrey Garen.
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compileEntry):
(JSC::DFG::JITCompiler::compileBody):
* dfg/DFGOperations.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95933
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Mon, 26 Sep 2011 03:36:04 +0000 (03:36 +0000)]
DFG support for op_resolve_global is not enabled
https://bugs.webkit.org/show_bug.cgi?id=68786
Reviewed by Geoffrey Garen.
* dfg/DFGCapabilities.h:
(JSC::DFG::canCompileOpcode):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95932
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 03:30:34 +0000 (03:30 +0000)]
Implement a CloseEvent constructor for JSC
https://bugs.webkit.org/show_bug.cgi?id=68340
Patch by Kentaro Hara <haraken@chromium.org> on 2011-09-25
Reviewed by Oliver Hunt.
Source/WebCore:
The spec of the CloseEvent constructor is here:
http://dev.w3.org/html5/websockets/#closeevent
Test: fast/events/constructors/close-event-constructor.html
* bindings/generic/EventConstructors.h: Added a definition for the CloseEvent constructor.
* bindings/js/JSEventConstructors.cpp: Added #includes for CloseEvent.
* websockets/CloseEvent.h: Added a definition for CloseEventInit.
(WebCore::CloseEventInit::CloseEventInit):
(WebCore::CloseEvent::create):
(WebCore::CloseEvent::CloseEvent):
* websockets/CloseEvent.idl: Makes CloseEvent constructible.
LayoutTests:
* fast/dom/constructed-objects-prototypes-expected.txt: Now window has CloseEvent.
* fast/events/constructors/close-event-constructor-expected.txt: Added.
* fast/events/constructors/close-event-constructor.html: Added.
* platform/chromium/test_expectations.txt: Skipped close-event-constructor.html, since V8 does not yet have the CloseEvent constructor.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95931
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Mon, 26 Sep 2011 02:25:02 +0000 (02:25 +0000)]
DFG static prediction code is no longer needed and should be removed
https://bugs.webkit.org/show_bug.cgi?id=68784
Reviewed by Oliver Hunt.
This gets rid of static prediction code, and ensures that we do not
try to compile code where dynamic predictions are not available.
This is accomplished by immediately performing an OSR exit wherever
a value is retrieved for which no predictions exist.
This also adds value profiling for this on functions used for calls.
The heuristics for deciding when to optimize code are also tweaked,
since it is now profitable to optimize sooner. This may need to be
tweaked further, but this patch only makes minimal changes.
This results in a 16% speed-up on Kraken/ai-astar, leading to a 3%
overall win on Kraken. It's neutral elsewhere.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::shouldOptimizeNow):
(JSC::CodeBlock::dumpValueProfiles):
* bytecode/CodeBlock.h:
* bytecode/PredictedType.cpp:
(JSC::predictionToString):
* bytecode/PredictedType.h:
(JSC::isCellPrediction):
(JSC::isObjectPrediction):
(JSC::isFinalObjectPrediction):
(JSC::isStringPrediction):
(JSC::isArrayPrediction):
(JSC::isInt32Prediction):
(JSC::isDoublePrediction):
(JSC::isNumberPrediction):
(JSC::isBooleanPrediction):
(JSC::mergePredictions):
* bytecode/PredictionTracker.h:
(JSC::PredictionTracker::predictArgument):
(JSC::PredictionTracker::predict):
(JSC::PredictionTracker::predictGlobalVar):
* bytecode/ValueProfile.cpp:
(JSC::ValueProfile::computeUpdatedPrediction):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::set):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::getPrediction):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::predictArgumentTypes):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::predict):
(JSC::DFG::Graph::predictGlobalVar):
(JSC::DFG::Graph::getMethodCheckPrediction):
(JSC::DFG::Graph::getJSConstantPrediction):
(JSC::DFG::Graph::getPrediction):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::writeBarrier):
(JSC::DFG::JITCodeGenerator::emitBranch):
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::getPrediction):
* dfg/DFGNode.h:
(JSC::DFG::Node::valueOfJSConstantNode):
(JSC::DFG::Node::isInt32Constant):
(JSC::DFG::Node::isDoubleConstant):
(JSC::DFG::Node::isNumberConstant):
(JSC::DFG::Node::isBooleanConstant):
(JSC::DFG::Node::predict):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::Propagator):
(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::isPredictedNumerical):
(JSC::DFG::Propagator::logicalNotIsPure):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::shouldSpeculateInteger):
(JSC::DFG::SpeculativeJIT::shouldSpeculateDouble):
(JSC::DFG::SpeculativeJIT::shouldSpeculateNumber):
(JSC::DFG::SpeculativeJIT::shouldNotSpeculateInteger):
(JSC::DFG::SpeculativeJIT::shouldSpeculateFinalObject):
(JSC::DFG::SpeculativeJIT::shouldSpeculateArray):
(JSC::DFG::SpeculativeJIT::shouldSpeculateObject):
(JSC::DFG::SpeculativeJIT::shouldSpeculateCell):
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95930
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 26 Sep 2011 01:40:04 +0000 (01:40 +0000)]
<rdar://problem/
10177824> IconDatabase’s use of ThreadCondition leads to assertion failures in the face of spurious wakeups
It's possible for ThreadCondition::wait to return spuriously without the condition having been signaled.
When that happens we should immediately return to waiting rather than doing our normal work, as some of that
work relies on wakeSyncThread having been called to signal the condition.
Reviewed by Sam Weinig.
* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::IconDatabase):
(WebCore::IconDatabase::wakeSyncThread): Note that we have work for the sync thread to do.
(WebCore::IconDatabase::syncThreadMainLoop): If we were woken with no work to do, immediately
go back to waiting on the condition variable. Otherwise, reset m_syncThreadHasWorkToDo and then
do that work. We also switch to moving m_disabledSuddenTerminationForSyncThread immediately in to
our local shouldReenableSuddenTermination variable since it can be updated by other threads while
we don't hold the lock. This makes it inappropriate to make assumptions about its value after dropping
and reacquiring the lock.
* loader/icon/IconDatabase.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95929
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Mon, 26 Sep 2011 01:12:53 +0000 (01:12 +0000)]
Provides a simple LRU cache class in Python.
https://bugs.webkit.org/show_bug.cgi?id=67823
Patch by Ai Makabi <makabi@google.com> on 2011-09-21
Reviewed by Tony Chang.
* Scripts/webkitpy/common/lru_cache.py:
* Scripts/webkitpy/common/lru_cache_unittest.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95928
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Mon, 26 Sep 2011 00:01:09 +0000 (00:01 +0000)]
DFG JIT Construct opcode takes a this argument even though it's
not passed
https://bugs.webkit.org/show_bug.cgi?id=68782
Reviewed by Oliver Hunt.
This is performance-neutral, mostly. It's a slight speed-up on
v8-splay.
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addCall):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::emitCall):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95927
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sun, 25 Sep 2011 23:58:13 +0000 (23:58 +0000)]
<rdar://problem/
10156263> ASSERT in WebCore::FrameView::scheduleRelayoutOfSubtree
Reviewed by Sam Weinig.
Source/WebCore:
Test: fast/dynamic/subtree-unrooted.html
* rendering/RenderObject.cpp:
(WebCore::RenderObject::scheduleRelayout): Replaced the check that the renderer is parented,
which was added in r21162, with a check that it is “rooted”.
LayoutTests:
* fast/dynamic/subtree-unrooted-expected.txt: Added.
* fast/dynamic/subtree-unrooted.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95926
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Sun, 25 Sep 2011 23:40:51 +0000 (23:40 +0000)]
DFG tracking of the value in cachedResultRegister does not handle
op_mov correctly
https://bugs.webkit.org/show_bug.cgi?id=68781
Reviewed by Oliver Hunt.
This takes the simplest approach: it makes the old JIT dumber rather
than making the DFG JIT smarter. This is performance-neutral.
* jit/JIT.h:
(JSC::JIT::canBeOptimized):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_mov):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95925
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
inferno@chromium.org [Sun, 25 Sep 2011 21:42:33 +0000 (21:42 +0000)]
Source/WebCore: Issues with merging block children of a ruby
base with another ruby base having inline children.
https://bugs.webkit.org/show_bug.cgi?id=66124
Reviewed by Dan Bernstein.
Test: fast/ruby/ruby-base-merge-block-children-crash.html
* rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::moveInlineChildren): add a firstChild()
check to prevent empty anonymous block addition, just like
moveBlockChildren method.
* rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::moveBlockChildren): This was incorrectly
doing optimizations to see if current ruby base has only inline
children before beforeChild and then trying to take out them from
their parent anonymous blocks. The problem is those inlines could
be split and have continuations because of encountering a block
inside inline flow. In those cases, we cannot take the inline out.
So, we should just make children non-inline in the destination
block and transfer the children as it-is.
* rendering/RenderRubyBase.h: remove unncessary functions.
LayoutTests: Issues with merging block children of a ruby
base with another ruby base having inline children.
https://bugs.webkit.org/show_bug.cgi?id=66124
Reviewed by Dan Bernstein.
* fast/ruby/ruby-base-merge-block-children-crash.html: Added.
* platform/mac/fast/ruby/ruby-base-merge-block-children-crash-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95924
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
philn@webkit.org [Sun, 25 Sep 2011 21:15:06 +0000 (21:15 +0000)]
Unreviewed, remove fast/workers/storage/interrupt-database.html
from GTK test_expectations since it's been skipped in r95809.
* platform/gtk/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95923
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Sun, 25 Sep 2011 19:35:21 +0000 (19:35 +0000)]
Remove PLATFORM(HAIKU) and associated code
https://bugs.webkit.org/show_bug.cgi?id=68774
Reviewed by Sam Weinig.
.:
* Source/cmake/WebKitPackaging.cmake:
* wscript:
Source/JavaScriptCore:
* JavaScriptCore.gyp/JavaScriptCore.gyp:
* JavaScriptCore.gypi:
* gyp/JavaScriptCore.gyp:
* heap/MachineStackMarker.cpp:
* wtf/PageAllocation.h:
* wtf/Platform.h:
* wtf/StackBounds.cpp:
* wtf/haiku: Removed.
* wtf/haiku/MainThreadHaiku.cpp: Removed.
* wtf/haiku/StringHaiku.cpp: Removed.
* wtf/text/WTFString.h:
Source/WebCore:
As discussed on webkit-dev, the Haiku port has been inactive for over a
year. A year and a half ago, we discussed removing the port, but folks
said they planned to work on it more. That work does not appear to
have happened in the intervening time.
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* bindings/js/ScriptControllerHaiku.cpp: Removed.
* editing/haiku: Removed.
* editing/haiku/EditorHaiku.cpp: Removed.
* gyp/WebCore.gyp:
* loader/cache/CachedFont.cpp:
* page/EventHandler.cpp:
(WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):
* page/haiku: Removed.
* page/haiku/DragControllerHaiku.cpp: Removed.
* page/haiku/EventHandlerHaiku.cpp: Removed.
* page/haiku/FrameHaiku.cpp: Removed.
* platform/ContextMenuItem.h:
* platform/Cursor.h:
* platform/DragData.h:
* platform/DragImage.h:
* platform/PlatformKeyboardEvent.h:
* platform/PlatformMenuDescription.h:
* platform/PlatformMouseEvent.h:
* platform/Widget.h:
* platform/graphics/BitmapImage.h:
* platform/graphics/Color.h:
* platform/graphics/FloatPoint.h:
* platform/graphics/FloatRect.h:
* platform/graphics/Gradient.h:
* platform/graphics/GraphicsContext.cpp:
* platform/graphics/GraphicsContext.h:
* platform/graphics/ImageBufferData.h:
* platform/graphics/ImageSource.h:
* platform/graphics/IntPoint.h:
* platform/graphics/IntRect.h:
* platform/graphics/IntSize.h:
* platform/graphics/Path.h:
* platform/graphics/Pattern.h:
* platform/graphics/SimpleFontData.h:
* platform/graphics/haiku: Removed.
* platform/graphics/haiku/ColorHaiku.cpp: Removed.
* platform/graphics/haiku/FloatPointHaiku.cpp: Removed.
* platform/graphics/haiku/FloatRectHaiku.cpp: Removed.
* platform/graphics/haiku/FontCacheHaiku.cpp: Removed.
* platform/graphics/haiku/FontCustomPlatformData.cpp: Removed.
* platform/graphics/haiku/FontCustomPlatformData.h: Removed.
* platform/graphics/haiku/FontHaiku.cpp: Removed.
* platform/graphics/haiku/FontPlatformData.h: Removed.
* platform/graphics/haiku/GlyphPageTreeNodeHaiku.cpp: Removed.
* platform/graphics/haiku/GradientHaiku.cpp: Removed.
* platform/graphics/haiku/GraphicsContextHaiku.cpp: Removed.
* platform/graphics/haiku/IconHaiku.cpp: Removed.
* platform/graphics/haiku/ImageBufferDataHaiku.h: Removed.
* platform/graphics/haiku/ImageBufferHaiku.cpp: Removed.
* platform/graphics/haiku/ImageHaiku.cpp: Removed.
* platform/graphics/haiku/IntPointHaiku.cpp: Removed.
* platform/graphics/haiku/IntRectHaiku.cpp: Removed.
* platform/graphics/haiku/IntSizeHaiku.cpp: Removed.
* platform/graphics/haiku/PathHaiku.cpp: Removed.
* platform/graphics/haiku/SimpleFontDataHaiku.cpp: Removed.
* platform/graphics/haiku/StillImageHaiku.cpp: Removed.
* platform/graphics/haiku/StillImageHaiku.h: Removed.
* platform/haiku: Removed.
* platform/haiku/ClipboardHaiku.cpp: Removed.
* platform/haiku/ClipboardHaiku.h: Removed.
* platform/haiku/ContextMenuHaiku.cpp: Removed.
* platform/haiku/ContextMenuItemHaiku.cpp: Removed.
* platform/haiku/CookieJarHaiku.cpp: Removed.
* platform/haiku/CursorHaiku.cpp: Removed.
* platform/haiku/DragDataHaiku.cpp: Removed.
* platform/haiku/DragImageHaiku.cpp: Removed.
* platform/haiku/EventLoopHaiku.cpp: Removed.
* platform/haiku/FileSystemHaiku.cpp: Removed.
* platform/haiku/LocalizedStringsHaiku.cpp: Removed.
* platform/haiku/LoggingHaiku.cpp: Removed.
* platform/haiku/MIMETypeRegistryHaiku.cpp: Removed.
* platform/haiku/PasteboardHaiku.cpp: Removed.
* platform/haiku/PlatformKeyboardEventHaiku.cpp: Removed.
* platform/haiku/PlatformMouseEventHaiku.cpp: Removed.
* platform/haiku/PlatformWheelEventHaiku.cpp: Removed.
* platform/haiku/PopupMenuHaiku.cpp: Removed.
* platform/haiku/PopupMenuHaiku.h: Removed.
* platform/haiku/RenderThemeHaiku.cpp: Removed.
* platform/haiku/RenderThemeHaiku.h: Removed.
* platform/haiku/ScreenHaiku.cpp: Removed.
* platform/haiku/ScrollbarThemeHaiku.cpp: Removed.
* platform/haiku/ScrollbarThemeHaiku.h: Removed.
* platform/haiku/SearchPopupMenuHaiku.cpp: Removed.
* platform/haiku/SearchPopupMenuHaiku.h: Removed.
* platform/haiku/SharedBufferHaiku.cpp: Removed.
* platform/haiku/SharedTimerHaiku.cpp: Removed.
* platform/haiku/SoundHaiku.cpp: Removed.
* platform/haiku/TemporaryLinkStubs.cpp: Removed.
* platform/haiku/WidgetHaiku.cpp: Removed.
* platform/image-decoders/haiku: Removed.
* platform/image-decoders/haiku/ImageDecoderHaiku.cpp: Removed.
* platform/text/UnicodeRange.h:
* platform/text/haiku: Removed.
* platform/text/haiku/TextBreakIteratorInternalICUHaiku.cpp: Removed.
Source/WebKit:
* haiku: Removed.
* haiku/WebCoreSupport: Removed.
* haiku/WebCoreSupport/ChromeClientHaiku.cpp: Removed.
* haiku/WebCoreSupport/ChromeClientHaiku.h: Removed.
* haiku/WebCoreSupport/ContextMenuClientHaiku.cpp: Removed.
* haiku/WebCoreSupport/ContextMenuClientHaiku.h: Removed.
* haiku/WebCoreSupport/DragClientHaiku.cpp: Removed.
* haiku/WebCoreSupport/DragClientHaiku.h: Removed.
* haiku/WebCoreSupport/EditorClientHaiku.cpp: Removed.
* haiku/WebCoreSupport/EditorClientHaiku.h: Removed.
* haiku/WebCoreSupport/FrameLoaderClientHaiku.cpp: Removed.
* haiku/WebCoreSupport/FrameLoaderClientHaiku.h: Removed.
* haiku/WebCoreSupport/InspectorClientHaiku.cpp: Removed.
* haiku/WebCoreSupport/InspectorClientHaiku.h: Removed.
Source/WebKit2:
* Scripts/generate-forwarding-headers.pl:
Tools:
* Scripts/webkitpy/common/config/build.py:
* waf/build/settings.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95922
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sun, 25 Sep 2011 08:16:48 +0000 (08:16 +0000)]
[CMake] Remove FindLibXlst.cmake
https://bugs.webkit.org/show_bug.cgi?id=68770
Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-25
Reviewed by Adam Barth.
This file should have never been committed -- the library it looks for
is called libxslt, not libxlst, so it has never really been used. When
the buildsystem looked for libxslt, it used CMake's own LibXslt.cmake
instead.
* Source/cmake/FindLibXlst.cmake: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95921
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Sun, 25 Sep 2011 07:03:51 +0000 (07:03 +0000)]
Attempted build fixes for GTK and Qt.
* GNUmakefile.list.am:
* WebCore.pro:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95920
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Sun, 25 Sep 2011 06:04:46 +0000 (06:04 +0000)]
Always enable ENABLE(OFFLINE_WEB_APPLICATIONS)
https://bugs.webkit.org/show_bug.cgi?id=68767
Reviewed by Eric Seidel.
.:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* Source/cmakeconfig.h.cmake:
* configure.ac:
Source/JavaScriptCore:
* Configurations/FeatureDefines.xcconfig:
Source/WebCore:
As discussed on webkit-dev, almost everyone has this enable turned on
and this feature is unlikely to be removed from the web platform given
its popularity.
* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:
* GNUmakefile.list.am:
* WebCore.exp.in:
* WebCore.pro:
* bindings/cpp/WebDOMEventTarget.cpp:
(toWebKit):
* bindings/js/JSEventTarget.cpp:
(WebCore::toJS):
(WebCore::toEventTarget):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::convertEventTargetToV8Object):
* dom/EventTarget.cpp:
(WebCore::EventTarget::toDOMApplicationCache):
* dom/EventTarget.h:
* features.pri:
* history/PageCache.cpp:
(WebCore::logCanCacheFrameDecision):
(WebCore::PageCache::canCachePageContainingThisFrame):
* html/HTMLHtmlElement.cpp:
(WebCore::HTMLHtmlElement::insertedByParser):
* html/HTMLHtmlElement.h:
* html/HTMLMediaElement.cpp:
(WebCore::createFileURLForApplicationCacheResource):
(WebCore::HTMLMediaElement::loadResource):
* html/ImageDocument.cpp:
(WebCore::ImageDocument::createDocumentStructure):
* html/MediaDocument.cpp:
(WebCore::MediaDocumentParser::createDocumentStructure):
* html/PluginDocument.cpp:
(WebCore::PluginDocumentParser::createDocumentStructure):
* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
* inspector/InspectorApplicationCacheAgent.cpp:
* inspector/InspectorApplicationCacheAgent.h:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
* inspector/InspectorController.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::updateApplicationCacheStatusImpl):
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::networkStateChanged):
(WebCore::InspectorInstrumentation::updateApplicationCacheStatus):
* inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::InstrumentingAgents):
(WebCore::InstrumentingAgents::setInspectorApplicationCacheAgent):
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::connectFrontend):
* inspector/generate-inspector-idl:
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::DocumentLoader):
(WebCore::DocumentLoader::mainReceivedError):
(WebCore::DocumentLoader::stopLoading):
(WebCore::DocumentLoader::detachFromFrame):
(WebCore::DocumentLoader::handledOnloadEvents):
* loader/DocumentLoader.h:
(WebCore::DocumentLoader::applicationCacheHost):
* loader/EmptyClients.h:
(WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadResourceSynchronously):
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::didReceiveResponse):
(WebCore::MainResourceLoader::didReceiveData):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::didFail):
(WebCore::MainResourceLoader::load):
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::start):
(WebCore::ResourceLoader::willSendRequest):
(WebCore::ResourceLoader::didSendData):
(WebCore::ResourceLoader::didReceiveResponse):
(WebCore::ResourceLoader::didReceiveData):
(WebCore::ResourceLoader::didFinishLoading):
(WebCore::ResourceLoader::didFail):
(WebCore::ResourceLoader::wasBlocked):
(WebCore::ResourceLoader::cannotShowURL):
(WebCore::ResourceLoader::shouldUseCredentialStorage):
(WebCore::ResourceLoader::willCacheResponse):
* loader/ResourceLoader.h:
* loader/appcache/ApplicationCache.cpp:
* loader/appcache/ApplicationCache.h:
* loader/appcache/ApplicationCacheGroup.cpp:
* loader/appcache/ApplicationCacheGroup.h:
* loader/appcache/ApplicationCacheHost.cpp:
* loader/appcache/ApplicationCacheHost.h:
* loader/appcache/ApplicationCacheResource.cpp:
* loader/appcache/ApplicationCacheResource.h:
* loader/appcache/ApplicationCacheStorage.cpp:
* loader/appcache/ApplicationCacheStorage.h:
* loader/appcache/DOMApplicationCache.cpp:
* loader/appcache/DOMApplicationCache.h:
* loader/appcache/DOMApplicationCache.idl:
* loader/appcache/ManifestParser.cpp:
(WebCore::parseManifest):
* loader/appcache/ManifestParser.h:
* loader/chromium/ResourceLoaderChromium.cpp:
(WebCore::ResourceLoader::didDownloadData):
* page/ChromeClient.h:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::clear):
(WebCore::DOMWindow::applicationCache):
* page/DOMWindow.h:
(WebCore::DOMWindow::optionalApplicationCache):
* page/DOMWindow.idl:
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::startElementNs):
* xml/parser/XMLDocumentParserQt.cpp:
(WebCore::XMLDocumentParser::parseStartElement):
Source/WebKit/chromium:
* features.gypi:
* src/ApplicationCacheHost.cpp:
* src/ApplicationCacheHostInternal.h:
* src/AssertMatchingEnums.cpp:
* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::reachedApplicationCacheOriginQuota):
* src/ChromeClientImpl.h:
* src/WebDataSourceImpl.cpp:
(WebKit::WebDataSourceImpl::applicationCacheHost):
* src/WebRuntimeFeatures.cpp:
(WebKit::WebRuntimeFeatures::enableApplicationCache):
(WebKit::WebRuntimeFeatures::isApplicationCacheEnabled):
Source/WebKit/efl:
* WebCoreSupport/ChromeClientEfl.cpp:
(WebCore::ChromeClientEfl::reachedApplicationCacheOriginQuota):
* WebCoreSupport/ChromeClientEfl.h:
* ewk/ewk_main.cpp:
(_ewk_init_body):
* ewk/ewk_settings.cpp:
(ewk_settings_cache_directory_path_set):
(ewk_settings_cache_directory_path_get):
Source/WebKit/gtk:
* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::reachedApplicationCacheOriginQuota):
* WebCoreSupport/ChromeClientGtk.h:
* webkit/webkitapplicationcache.cpp:
(webkit_application_cache_get_maximum_size):
(webkit_application_cache_set_maximum_size):
(webkit_application_cache_get_database_directory_path):
* webkit/webkitglobals.cpp:
(webkitInit):
Source/WebKit/haiku:
* WebCoreSupport/ChromeClientHaiku.cpp:
(WebCore::ChromeClientWx::reachedApplicationCacheOriginQuota):
* WebCoreSupport/ChromeClientHaiku.h:
Source/WebKit/mac:
* Configurations/FeatureDefines.xcconfig:
* Misc/WebCache.mm:
(+[WebCache empty]):
* WebCoreSupport/WebApplicationCache.mm:
* WebCoreSupport/WebApplicationCacheQuotaManager.mm:
(-[WebApplicationCacheQuotaManager usage]):
(-[WebApplicationCacheQuotaManager quota]):
(-[WebApplicationCacheQuotaManager setQuota:]):
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
* WebView/WebDataSource.mm:
(-[WebDataSource _transferApplicationCache:]):
* WebView/WebFrame.mm:
(-[WebFrame _cacheabilityDictionary]):
* WebView/WebView.mm:
(WebKitInitializeApplicationCachePathIfNecessary):
Source/WebKit/qt:
* Api/qwebsecurityorigin.cpp:
(QWebSecurityOrigin::setApplicationCacheQuota):
* Api/qwebsettings.cpp:
(QWebSettings::setOfflineWebApplicationCachePath):
(QWebSettings::offlineWebApplicationCachePath):
(QWebSettings::setOfflineWebApplicationCacheQuota):
(QWebSettings::offlineWebApplicationCacheQuota):
* WebCoreSupport/ChromeClientQt.cpp:
(WebCore::ChromeClientQt::reachedApplicationCacheOriginQuota):
* WebCoreSupport/ChromeClientQt.h:
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::clearAllApplicationCaches):
Source/WebKit/win:
* WebCoreSupport/WebChromeClient.cpp:
(WebChromeClient::reachedApplicationCacheOriginQuota):
* WebCoreSupport/WebChromeClient.h:
Source/WebKit/wince:
* WebCoreSupport/ChromeClientWinCE.cpp:
(WebKit::ChromeClientWinCE::reachedApplicationCacheOriginQuota):
* WebCoreSupport/ChromeClientWinCE.h:
Source/WebKit/wx:
* WebKitSupport/ChromeClientWx.cpp:
(WebCore::ChromeClientWx::reachedApplicationCacheOriginQuota):
* WebKitSupport/ChromeClientWx.h:
Source/WebKit2:
* Configurations/FeatureDefines.xcconfig:
* UIProcess/qt/WebContextQt.cpp:
(WebKit::WebContext::applicationCacheDirectory):
* WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
(WebKit::WebApplicationCacheManager::getApplicationCacheOrigins):
(WebKit::WebApplicationCacheManager::deleteEntriesForOrigin):
(WebKit::WebApplicationCacheManager::deleteAllEntries):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::clearApplicationCache):
* WebProcess/WebProcess.h:
Tools:
* Scripts/build-webkit:
WebKitLibraries:
* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95919
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Sun, 25 Sep 2011 02:20:41 +0000 (02:20 +0000)]
JIT implementation of put_by_val increments m_length instead of setting
it to index+1
https://bugs.webkit.org/show_bug.cgi?id=68766
Reviewed by Geoffrey Garen.
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_by_val):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95918
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Sat, 24 Sep 2011 22:53:29 +0000 (22:53 +0000)]
More build fixage.
* heap/ConservativeRoots.cpp: Our system of #includes, it is chaos.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95917
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Sat, 24 Sep 2011 22:39:16 +0000 (22:39 +0000)]
The DFG should not attempt to guess types in the absence of value
profiles
https://bugs.webkit.org/show_bug.cgi?id=68677
Reviewed by Oliver Hunt.
This adds the ForceOSRExit node, which is ignored by the propagator
and virtual register allocator (and hence ensuring that liveness analysis
works correctly), but forces terminateSpeculativeExecution() in the
back-end. This appears to be a slight speed-up on benchmark averages,
with ~5% swings on individual benchmarks, in both directions. But it's
never a regression on any average, and appears to be a ~1% progression
in the SunSpider average.
This also adds a bit better debugging support in the old JIT and in DFG,
as this was necessary to debug the much more frequent OSR transitions
that occur with this change.
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::getStrongPrediction):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::exitSpeculativeWithOSR):
* dfg/DFGNode.h:
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::privateCompile):
* jit/JIT.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95916
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Sat, 24 Sep 2011 22:38:57 +0000 (22:38 +0000)]
Remove Chromium failing expectations for WCSS tests now that they're
been removed with r95911.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95915
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Sat, 24 Sep 2011 22:36:57 +0000 (22:36 +0000)]
Some Windows build fixage.
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::sweep):
* heap/MarkedBlock.h:
(JSC::MarkedBlock::isLive): Show the compiler that all control paths
return a value. There, there, compiler. Everything's going to be OK.
* runtime/JSCell.h:
(JSC::JSCell::setVPtr): Oops! Unrename this function.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95914
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Sat, 24 Sep 2011 22:35:37 +0000 (22:35 +0000)]
Mark an svg/ test as slow, and remove incorrect baselines for another.
* platform/chromium-cg-mac-leopard/fast/ruby/ruby-text-before-after-content-expected.txt: Removed.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95913
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Sat, 24 Sep 2011 22:15:40 +0000 (22:15 +0000)]
Allocate new objects unmarked
https://bugs.webkit.org/show_bug.cgi?id=68764
Source/JavaScriptCore:
Reviewed by Oliver Hunt.
This is a pre-requisite to using the mark bit to determine object age.
~2% v8 speedup, mostly due to a 12% v8-splay speedup.
* heap/MarkedBlock.h:
(JSC::MarkedBlock::isLive):
(JSC::MarkedBlock::isLiveCell): These two functions are the reason for
this patch. They can now determine object liveness without relying on
newly allocated objects having their mark bits set. Each MarkedBlock
now has a state variable that tells us how to determine whether its
cells are live. (This new state variable supercedes the old one about
destructor state. The rest of this patch is just refactoring to support
the invariants of this new state variable without introducing a
performance regression.)
(JSC::MarkedBlock::didConsumeFreeList): New function for updating interal
state when a block becomes fully allocated.
(JSC::MarkedBlock::clearMarks): Folded a state change to 'Marked' into
this function because, logically, clearing all mark bits is the first
step in saying "mark bits now exactly reflect object liveness".
(JSC::MarkedBlock::markCountIsZero): Renamed from isEmpty() to clarify
that this function only tells you about the mark bits, so it's only
meaningful if you've put the mark bits into a meaningful state before
calling it.
(JSC::MarkedBlock::forEachCell): Changed to use isLive() helper function
instead of testing mark bits, since mark bits are not always the right
way to find out if an object is live anymore. (New objects are live, but
not marked.)
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::recycle):
(JSC::MarkedBlock::MarkedBlock): Folded all initialization -- even
initialization when recycling an old block -- into the MarkedBlock
constructor, for simplicity.
(JSC::MarkedBlock::callDestructor): Inlined for speed. Always check for
a zapped cell before running a destructor, and always zap after
running a destructor. This does not seem to be expensive, and the
alternative just creates a too-confusing matrix of possible cell states
((zombie undestructed cell + zombie destructed cell + zapped destructed
cell) * 5! permutations for progressing through block states = "Oh my!").
(JSC::MarkedBlock::specializedSweep):
(JSC::MarkedBlock::sweep): Maintained and expanded a pre-existing
optimization to use template specialization to constant fold lots of
branches and elide certain operations entirely during a sweep. Merged
four or five functions that were logically about sweeping into this one
function pair, so there's only one way to do things now, it's
automatically correct, and it's always fast.
(JSC::MarkedBlock::zapFreeList): Renamed this function to be more explicit
about exactly what it does, and to honor the new block state system.
* heap/AllocationSpace.cpp:
(JSC::AllocationSpace::allocateBlock): Updated for rename.
(JSC::AllocationSpace::freeBlocks): Updated for changed interface.
(JSC::TakeIfUnmarked::TakeIfUnmarked):
(JSC::TakeIfUnmarked::operator()):
(JSC::TakeIfUnmarked::returnValue): Just like isEmpty() above, renamed
to clarify that this functor only tests the mark bits, so it's only
valid if you've put the mark bits into a meaningful state before
calling it.
(JSC::AllocationSpace::shrink): Updated for rename.
* heap/AllocationSpace.h:
(JSC::AllocationSpace::canonicalizeCellLivenessData): Renamed to be a
little more specific about what we're making canonical.
(JSC::AllocationSpace::forEachCell): Updated for rename.
(JSC::AllocationSpace::forEachBlock): No need to canonicalize cell
liveness data before iterating blocks -- clients that want iterated
blocks to have valid cell lieveness data should make this call for
themselves. (And not all clients want it.)
* heap/ConservativeRoots.cpp:
(JSC::ConservativeRoots::genericAddPointer): Updated for rename. Removed
obsolete comment.
* heap/Heap.cpp:
(JSC::CountFunctor::ClearMarks::operator()): Removed call to notify...()
because clearMarks() now does that implicitly.
(JSC::Heap::destroy): Make sure to canonicalize before tear-down, since
tear-down tests cell liveness when running destructors.
(JSC::Heap::markRoots):
(JSC::Heap::collect): Moved weak reference harvesting out of markRoots()
and into collect, since it strictly depends on root marking, and does
not contribute to root marking.
(JSC::Heap::canonicalizeCellLivenessData): Renamed to be a little more
specific about what we're making canonical.
* heap/Heap.h:
(JSC::Heap::forEachProtectedCell): No need to canonicalize cell liveness
data before iterating protected cells, since we know they're all live,
and don't need to test for it.
* heap/Local.h:
(JSC::::set): Can't make the same ASSERT we used to because we just don't
have the mark bits for it anymore. Perhaps we can bring this ASSERT back
in a weaker form in the future.
* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::addBlock):
(JSC::MarkedSpace::removeBlock): Updated for interface change.
(JSC::MarkedSpace::canonicalizeCellLivenessData): Renamed to be a little more
specific about what we're making canonical.
* heap/MarkedSpace.h:
(JSC::MarkedSpace::allocate):
(JSC::MarkedSpace::SizeClass::SizeClass):
(JSC::MarkedSpace::SizeClass::resetAllocator):
(JSC::MarkedSpace::SizeClass::zapFreeList): Simplified this allocator
functionality a bit. We now track only one block -- "currentBlock" --
and rely on its internal state to know whether it has more cells to
allocate.
* heap/Weak.h:
(JSC::Weak::set): Can't make the same ASSERT we used to because we just don't
have the mark bits for it anymore. Perhaps we can bring this ASSERT back
in a weaker form in the future.
* runtime/JSCell.h:
(JSC::JSCell::vptr):
(JSC::JSCell::zap):
(JSC::JSCell::isZapped):
(JSC::isZapped): Made zapping a property of JSCell, for a little abstraction.
In the future, exactly how a JSCell zaps itself will change, as the
internal representation of JSCell changes.
LayoutTests:
Reviewed by Oliver Hunt.
Made this flaky test less flaky. (Just enough to make my patch not fail.)
* fast/dom/gc-10.html: Count objects immediately after GC to get an
exact count. Call 'reload' a few times to improve test coverage. Preload
properties in case they're lazily instantiated, which would change
object count numbers. Also, use the 'var' keyword like a good little
JavaScripter.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95912
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Sat, 24 Sep 2011 22:03:05 +0000 (22:03 +0000)]
Remove ENABLE(WCSS) and associated code
https://bugs.webkit.org/show_bug.cgi?id=68759
Reviewed by Darin Adler.
.:
* configure.ac:
Source/WebCore:
As discussed on webkit-dev, we are removing this feature from trunk to
reduce the number of different configurations.
* CodeGenerators.pri:
* GNUmakefile.am:
* WebCore.pro:
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSParser.h:
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):
* css/WCSSPropertyNames.in: Removed.
* css/WCSSValueKeywords.in: Removed.
* features.pri:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::HTMLInputElement):
* html/HTMLInputElement.h:
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::sanitizeValue):
(WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):
* rendering/RenderMarquee.cpp:
(WebCore::RenderMarquee::start):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
* rendering/style/RenderStyleConstants.h:
Tools:
* Scripts/build-webkit:
* Scripts/old-run-webkit-tests:
* Scripts/webkitperl/features.pm:
(hasFeature):
* Scripts/webkitpy/layout_tests/port/webkit.py:
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
LayoutTests:
* fast/wcss: Removed.
* fast/wcss/wap-input-format-expected.txt: Removed.
* fast/wcss/wap-input-format.xhtml: Removed.
* fast/wcss/wap-input-required-expected.txt: Removed.
* fast/wcss/wap-input-required.xhtml: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95911
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Sat, 24 Sep 2011 21:23:24 +0000 (21:23 +0000)]
DFG JIT should not eagerly initialize integer tags in the register file
https://bugs.webkit.org/show_bug.cgi?id=68763
Reviewed by Oliver Hunt.
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::exitSpeculativeWithOSR):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::ValueRecovery::dump):
(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::ValueRecovery::alreadyInRegisterFileAsUnboxedInt32):
(JSC::DFG::OSRExit::operandForArgument):
(JSC::DFG::OSRExit::operandForIndex):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95910
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 24 Sep 2011 19:13:40 +0000 (19:13 +0000)]
Added Snow Leopard-specific expected results.
* platform/mac-snowleopard/platform/mac/fast/text/combining-character-sequence-fallback-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95909
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alex@webkit.org [Sat, 24 Sep 2011 09:58:23 +0000 (09:58 +0000)]
2011-09-24 Alejandro G. Castro <alex@igalia.com>
Fixed GTK compilation after r95878, the operator== was defined
twice when USE_WEBPROCESS_EVENT_SIMULATION is defined.
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95908
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Sep 2011 08:17:38 +0000 (08:17 +0000)]
SVGAnimation does not support 'values' for from-to animations
https://bugs.webkit.org/show_bug.cgi?id=64859
Patch by Young Han Lee <joybro@company100.net> on 2011-09-24
Reviewed by Dirk Schulze.
If from-to animation have discrete calc-mode and have a 'keyTimes' list, values of
the keyTimes indicate the begin and the end of the animation respectively.[1][2]
When keyTimes is given, calculate the progress percentage of the animation with it
even for from-to animation.
[1] http://www.w3.org/TR/SVG/animate.html#ValueAttributes
[2] http://www.w3.org/TR/2001/REC-smil-animation-
20010904/#AnimFuncValues
Source/WebCore:
Test: svg/animations/animate-from-to-keyTimes.html
* svg/SVGAnimationElement.cpp:
(WebCore::SVGAnimationElement::calculatePercentForFromTo):
(WebCore::SVGAnimationElement::updateAnimation):
* svg/SVGAnimationElement.h:
LayoutTests:
* svg/animations/animate-from-to-keyTimes-expected.txt: Added.
* svg/animations/animate-from-to-keyTimes.html: Added.
* svg/animations/script-tests/animate-from-to-keyTimes.js: Added.
(sample1):
(sample2):
(executeTest):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95907
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Sat, 24 Sep 2011 07:00:15 +0000 (07:00 +0000)]
WebKit does not expose AXPlaceholder value on password fields
https://bugs.webkit.org/show_bug.cgi?id=68745
Reviewed by Oliver Hunt.
Source/WebCore:
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
LayoutTests:
* accessibility/placeholder-expected.txt:
* accessibility/placeholder.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95906
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Sat, 24 Sep 2011 05:42:09 +0000 (05:42 +0000)]
Add JSVALUE32_64 support to DFG JIT
https://bugs.webkit.org/show_bug.cgi?id=67460
Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-09-23
Reviewed by Gavin Barraclough.
Add cmake options to enable DFG JIT compilation for EFL port
* Source/cmake/OptionsEfl.cmake:
* Source/cmakeconfig.h.cmake:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95905
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Sep 2011 05:30:04 +0000 (05:30 +0000)]
[DRT] Include the right config file for EFL's DRT.
https://bugs.webkit.org/show_bug.cgi?id=67042
Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-23
Reviewed by Martin Robinson.
Ports which use CMake as their buildsystem (such as the EFL one) also
have config.h files, but they are named differently, so include the
right one depending on the buildsystem being used.
* DumpRenderTree/config.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95904
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Sat, 24 Sep 2011 05:11:33 +0000 (05:11 +0000)]
Fix the build.
* loader/CrossOriginAccessControl.cpp:
(WebCore::passesAccessControlCheck): Get rid of the exit-time destructor.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95903
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Sat, 24 Sep 2011 05:04:08 +0000 (05:04 +0000)]
Add JSVALUE32_64 support to DFG JIT
https://bugs.webkit.org/show_bug.cgi?id=67460
Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-09-23
Reviewed by Gavin Barraclough.
This is the initial attempt to add JSVALUE32_64 support to DFG JIT.
It's tested on IA32 Linux EFL port currently. It still cannot run
all the test cases and benchmarks so should be turned off now.
The major work includes:
1) dealing with JSVALUE32_64 data format in DFG JIT;
2) bindings between 64-bit JS Value and 32-bit registers;
3) handling of function calls. Currently for DFG operation function
calls we follow the X86 cdecl calling convention on Linux, and the
implementation is in a naive way by pushing the arguments into stack
one by one.
The known issues include:
1) some code duplicates unnecessarily, especially in Speculative JIT
code generation, where most of the operations on SpeculataInteger /
SpeculateDouble should be identical to the JSVALUE64 code. Refactoring
is needed in the future;
2) lack of op_call and op_construct support, comparing to current
JSVALUE64 DFG;
3) currently integer speculations assume to be StrictInt32;
4) lack of JSBoolean speculations;
5) boxing and unboxing doubles could be improved;
6) DFG X86 register description is different with the baseline JIT,
the timeoutCheckRegister is used for general purpose usage;
7) calls to runtime functions with primitive double parameters (e.g.
fmod) don't work. Support needs to be added to the assembler to
implement the mechanism of passing double parameters for X86 cdecl
convention.
And there should be many other hidden bugs which should be exposed and
resolved in later debugging process.
* CMakeListsEfl.txt:
* assembler/MacroAssemblerX86.h:
(JSC::MacroAssemblerX86::loadDouble):
(JSC::MacroAssemblerX86::storeDouble):
* assembler/X86Assembler.h:
(JSC::X86Assembler::movsd_rm):
* bytecode/StructureStubInfo.h:
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.h:
(JSC::DFG::canCompileOpcode):
* dfg/DFGFPRInfo.h:
(JSC::DFG::FPRInfo::debugName):
* dfg/DFGGPRInfo.h:
(JSC::DFG::GPRInfo::toRegister):
(JSC::DFG::GPRInfo::toIndex):
(JSC::DFG::GPRInfo::debugName):
* dfg/DFGGenerationInfo.h:
(JSC::DFG::needDataFormatConversion):
(JSC::DFG::GenerationInfo::initJSValue):
(JSC::DFG::GenerationInfo::initDouble):
(JSC::DFG::GenerationInfo::gpr):
(JSC::DFG::GenerationInfo::tagGPR):
(JSC::DFG::GenerationInfo::payloadGPR):
(JSC::DFG::GenerationInfo::fpr):
(JSC::DFG::GenerationInfo::fillJSValue):
(JSC::DFG::GenerationInfo::fillCell):
(JSC::DFG::GenerationInfo::fillDouble):
* dfg/DFGJITCodeGenerator.cpp:
* dfg/DFGJITCodeGenerator.h:
(JSC::DFG::JITCodeGenerator::allocate):
(JSC::DFG::JITCodeGenerator::use):
(JSC::DFG::JITCodeGenerator::registersMatched):
(JSC::DFG::JITCodeGenerator::silentSpillGPR):
(JSC::DFG::JITCodeGenerator::silentFillGPR):
(JSC::DFG::JITCodeGenerator::silentFillFPR):
(JSC::DFG::JITCodeGenerator::silentSpillAllRegisters):
(JSC::DFG::JITCodeGenerator::silentFillAllRegisters):
(JSC::DFG::JITCodeGenerator::boxDouble):
(JSC::DFG::JITCodeGenerator::unboxDouble):
(JSC::DFG::JITCodeGenerator::spill):
(JSC::DFG::addressOfDoubleConstant):
(JSC::DFG::integerResult):
(JSC::DFG::jsValueResult):
(JSC::DFG::setupResults):
(JSC::DFG::callOperation):
(JSC::JSValueOperand::JSValueOperand):
(JSC::JSValueOperand::~JSValueOperand):
(JSC::JSValueOperand::isDouble):
(JSC::JSValueOperand::fill):
(JSC::JSValueOperand::tagGPR):
(JSC::JSValueOperand::payloadGPR):
(JSC::JSValueOperand::fpr):
(JSC::GPRTemporary::~GPRTemporary):
(JSC::GPRTemporary::gpr):
(JSC::GPRResult2::GPRResult2):
* dfg/DFGJITCodeGenerator32_64.cpp: Added.
(JSC::DFG::JITCodeGenerator::clearGenerationInfo):
(JSC::DFG::JITCodeGenerator::fillInteger):
(JSC::DFG::JITCodeGenerator::fillDouble):
(JSC::DFG::JITCodeGenerator::fillJSValue):
(JSC::DFG::JITCodeGenerator::fillStorage):
(JSC::DFG::JITCodeGenerator::useChildren):
(JSC::DFG::JITCodeGenerator::isStrictInt32):
(JSC::DFG::JITCodeGenerator::isKnownInteger):
(JSC::DFG::JITCodeGenerator::isKnownNumeric):
(JSC::DFG::JITCodeGenerator::isKnownCell):
(JSC::DFG::JITCodeGenerator::isKnownNotInteger):
(JSC::DFG::JITCodeGenerator::isKnownNotNumber):
(JSC::DFG::JITCodeGenerator::isKnownBoolean):
(JSC::DFG::JITCodeGenerator::nonSpeculativeValueToNumber):
(JSC::DFG::JITCodeGenerator::nonSpeculativeValueToInt32):
(JSC::DFG::JITCodeGenerator::nonSpeculativeUInt32ToNumber):
(JSC::DFG::JITCodeGenerator::nonSpeculativeKnownConstantArithOp):
(JSC::DFG::JITCodeGenerator::nonSpeculativeBasicArithOp):
(JSC::DFG::JITCodeGenerator::nonSpeculativeArithMod):
(JSC::DFG::JITCodeGenerator::nonSpeculativeCheckHasInstance):
(JSC::DFG::JITCodeGenerator::nonSpeculativeInstanceOf):
(JSC::DFG::JITCodeGenerator::cachedGetById):
(JSC::DFG::JITCodeGenerator::writeBarrier):
(JSC::DFG::JITCodeGenerator::cachedPutById):
(JSC::DFG::JITCodeGenerator::cachedGetMethod):
(JSC::DFG::JITCodeGenerator::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::JITCodeGenerator::nonSpeculativePeepholeBranchNull):
(JSC::DFG::JITCodeGenerator::nonSpeculativeCompareNull):
(JSC::DFG::JITCodeGenerator::nonSpeculativePeepholeBranch):
(JSC::DFG::JITCodeGenerator::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::JITCodeGenerator::nonSpeculativeCompare):
(JSC::DFG::JITCodeGenerator::nonSpeculativePeepholeStrictEq):
(JSC::DFG::JITCodeGenerator::nonSpeculativeNonPeepholeStrictEq):
(JSC::DFG::JITCodeGenerator::nonSpeculativeStrictEq):
(JSC::DFG::JITCodeGenerator::emitBranch):
(JSC::DFG::JITCodeGenerator::nonSpeculativeLogicalNot):
(JSC::DFG::JITCodeGenerator::emitCall):
(JSC::DFG::JITCodeGenerator::speculationCheck):
(JSC::DFG::dataFormatString):
(JSC::DFG::JITCodeGenerator::dump):
(JSC::DFG::JITCodeGenerator::checkConsistency):
(JSC::DFG::GPRTemporary::GPRTemporary):
(JSC::DFG::FPRTemporary::FPRTemporary):
* dfg/DFGJITCompiler.cpp:
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::tagForGlobalVar):
(JSC::DFG::JITCompiler::payloadForGlobalVar):
(JSC::DFG::JITCompiler::appendCallWithExceptionCheck):
(JSC::DFG::JITCompiler::addressOfDoubleConstant):
(JSC::DFG::JITCompiler::boxDouble):
(JSC::DFG::JITCompiler::unboxDouble):
(JSC::DFG::JITCompiler::addPropertyAccess):
(JSC::DFG::JITCompiler::PropertyAccessRecord::PropertyAccessRecord):
* dfg/DFGJITCompiler32_64.cpp: Added.
(JSC::DFG::JITCompiler::fillNumericToDouble):
(JSC::DFG::JITCompiler::fillInt32ToInteger):
(JSC::DFG::JITCompiler::fillToJS):
(JSC::DFG::JITCompiler::exitSpeculativeWithOSR):
(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::compileEntry):
(JSC::DFG::JITCompiler::compileBody):
(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):
(JSC::DFG::JITCompiler::jitAssertIsInt32):
(JSC::DFG::JITCompiler::jitAssertIsJSInt32):
(JSC::DFG::JITCompiler::jitAssertIsJSNumber):
(JSC::DFG::JITCompiler::jitAssertIsJSDouble):
(JSC::DFG::JITCompiler::jitAssertIsCell):
(JSC::DFG::JITCompiler::emitCount):
(JSC::DFG::JITCompiler::setSamplingFlag):
(JSC::DFG::JITCompiler::clearSamplingFlag):
* dfg/DFGJITCompilerInlineMethods.h: Added.
(JSC::DFG::JITCompiler::emitLoadTag):
(JSC::DFG::JITCompiler::emitLoadPayload):
(JSC::DFG::JITCompiler::emitLoad):
(JSC::DFG::JITCompiler::emitLoad2):
(JSC::DFG::JITCompiler::emitLoadDouble):
(JSC::DFG::JITCompiler::emitLoadInt32ToDouble):
(JSC::DFG::JITCompiler::emitStore):
(JSC::DFG::JITCompiler::emitStoreInt32):
(JSC::DFG::JITCompiler::emitStoreCell):
(JSC::DFG::JITCompiler::emitStoreBool):
(JSC::DFG::JITCompiler::emitStoreDouble):
* dfg/DFGNode.h:
* dfg/DFGOperations.cpp:
* dfg/DFGRepatch.cpp:
(JSC::DFG::generateProtoChainAccessStub):
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::tryCachePutByID):
* dfg/DFGSpeculativeJIT.cpp:
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::ValueRecovery::inGPR):
(JSC::DFG::ValueRecovery::inPair):
(JSC::DFG::ValueRecovery::tagGPR):
(JSC::DFG::ValueRecovery::payloadGPR):
* dfg/DFGSpeculativeJIT32_64.cpp: Added.
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::ValueSource::dump):
(JSC::DFG::ValueRecovery::dump):
(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::OSRExit::dump):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntStrict):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compilePeepHoleIntegerBranch):
(JSC::DFG::SpeculativeJIT::convertToDouble):
(JSC::DFG::SpeculativeJIT::compilePeepHoleDoubleBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compare):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::initializeVariableTypes):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):
* runtime/JSValue.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95902
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Sat, 24 Sep 2011 04:23:07 +0000 (04:23 +0000)]
Set eol-style to native on many source files where it was unset.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95901
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Sat, 24 Sep 2011 03:51:55 +0000 (03:51 +0000)]
Canvas security checks show up on HTML5GamingTest benchmark
https://bugs.webkit.org/show_bug.cgi?id=68743
Reviewed by Oliver Hunt.
Prior to this patch, the canvas security checks took as much as 4% of
the time on the HTML5GamingTest benchmark:
http://craftymind.com/factory/guimark2/HTML5GamingTest.html
This patch uses a couple of AtomicStrings and shuffles around the order
of the security check to take this down to around 0.1% (which is near
the noise floor of what I can measure with my profiler).
* html/canvas/CanvasRenderingContext.cpp:
(WebCore::CanvasRenderingContext::wouldTaintOrigin):
* loader/CrossOriginAccessControl.cpp:
(WebCore::passesAccessControlCheck):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95900
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Sep 2011 03:24:35 +0000 (03:24 +0000)]
Source/WebCore: Unwarranted DOM Exception when canvas2D drawImage is called with src
rect out of bounds
https://bugs.webkit.org/show_bug.cgi?id=65709
Patch by Justin Novosad <junov@chromium.org> on 2011-09-23
Reviewed by Oliver Hunt.
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawImage):
Return early without throwing an exception if source rectangle is out of
bounds to match the spec.
LayoutTests: Unwarranted DOM Exception when canvas2D drawImage is called with src
rect is out of bounds
https://bugs.webkit.org/show_bug.cgi?id=65709
Patch by Justin Novosad <junov@chromium.org> on 2011-09-23
Reviewed by Oliver Hunt.
* fast/canvas/drawImage-with-invalid-args-expected.txt:
* fast/canvas/drawImage-with-invalid-args.html:
This test covers (among other things) cases where the source rectangle is
_completely_ outside the bounds of the source image. It was modified to no
longer expect DOM exceptions
* platform/chromium/test_expectations.txt:
Out-dated test canvas/philip/tests/2d.drawImage.outsidesource.html
is now expected to fail
* platform/mac/Skipped:
Skipping canvas/philip/tests/2d.drawImage.outsidesource.html
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95899
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Sep 2011 03:20:53 +0000 (03:20 +0000)]
Printing of notImplemented() when logging enabled.
https://bugs.webkit.org/show_bug.cgi?id=64590
Printing of notImplemented() method was enabled on Debug builds only.
Now it is enabled when logging is enabled.
Patch by Lukasz Slachciak <l.slachciak@samsung.com> on 2011-09-23
Reviewed by Oliver Hunt.
No new tests because there is no new functionality.
* platform/NotImplemented.h: Non-debug mode replaced with non-logging mode.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95898
268f45cc-cd09-0410-ab3c-
d52691b4dbfc