WebKit-https.git
11 years agoAlways enable ENABLE(DOM_STORAGE)
abarth@webkit.org [Sun, 16 Oct 2011 10:28:50 +0000 (10:28 +0000)]
Always enable ENABLE(DOM_STORAGE)
https://bugs.webkit.org/show_bug.cgi?id=70189

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, we are reducing the complexity of WebKit by
removing unnecessary configuration options.  DOMStorage is not a core
part of the web platform.  It should always be enabled.

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:
* GNUmakefile.list.am:
* UseJSC.cmake:
* WebCore.exp.in:
* WebCore.pro:
* bindings/js/JSEventCustom.cpp:
* bindings/js/JSInjectedScriptHostCustom.cpp:
* bindings/js/JSStorageCustom.cpp:
* bindings/v8/custom/V8EventCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
(WebCore::V8InjectedScriptHost::storageIdCallback):
* bindings/v8/custom/V8StorageCustom.cpp:
* dom/Document.cpp:
(WebCore::Document::createEvent):
* dom/Event.cpp:
(WebCore::Event::isStorageEvent):
* dom/Event.h:
* dom/Node.cpp:
* features.pri:
* inspector/InjectedScriptHost.cpp:
(WebCore::InjectedScriptHost::InjectedScriptHost):
(WebCore::InjectedScriptHost::disconnect):
(WebCore::InjectedScriptHost::storageIdImpl):
* inspector/InjectedScriptHost.h:
(WebCore::InjectedScriptHost::init):
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
(WebCore::InspectorController::restoreInspectorStateFromCookie):
* inspector/InspectorController.h:
* inspector/InspectorDOMStorageAgent.cpp:
* inspector/InspectorDOMStorageResource.cpp:
* inspector/InspectorDOMStorageResource.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
(WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::didUseDOMStorage):
* inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::InstrumentingAgents):
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):
(WebCore::WorkerInspectorController::connectFrontend):
* inspector/generate-inspector-idl:
* page/Chrome.cpp:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::~DOMWindow):
(WebCore::DOMWindow::clear):
(WebCore::DOMWindow::localStorage):
* page/DOMWindow.h:
* page/DOMWindow.idl:
* page/Navigator.cpp:
(WebCore::Navigator::getStorageUpdates):
* page/Navigator.h:
* page/Navigator.idl:
* page/Page.cpp:
* page/Page.h:
* page/PageGroup.cpp:
(WebCore::PageGroup::closeLocalStorage):
* page/PageGroup.h:
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setSessionStorageQuota):
* page/Settings.h:
(WebCore::Settings::sessionStorageQuota):
* storage/LocalStorageTask.cpp:
* storage/LocalStorageTask.h:
* storage/LocalStorageThread.cpp:
* storage/LocalStorageThread.h:
* storage/Storage.cpp:
* storage/Storage.h:
* storage/Storage.idl:
* storage/StorageArea.h:
* storage/StorageAreaImpl.cpp:
* storage/StorageAreaImpl.h:
* storage/StorageAreaSync.cpp:
(WebCore::StorageAreaSync::scheduleSync):
* storage/StorageAreaSync.h:
* storage/StorageEvent.cpp:
* storage/StorageEvent.h:
* storage/StorageEvent.idl:
* storage/StorageEventDispatcher.cpp:
* storage/StorageEventDispatcher.h:
* storage/StorageMap.cpp:
* storage/StorageMap.h:
* storage/StorageNamespace.cpp:
* storage/StorageNamespace.h:
* storage/StorageNamespaceImpl.cpp:
* storage/StorageNamespaceImpl.h:
* storage/StorageSyncManager.cpp:
(WebCore::StorageSyncManager::scheduleDeleteEmptyDatabase):
* storage/StorageSyncManager.h:
* storage/StorageTracker.cpp:
* storage/StorageTracker.h:

Source/WebKit/chromium:

* features.gypi:
* src/StorageAreaProxy.cpp:
* src/StorageAreaProxy.h:
* src/StorageEventDispatcherChromium.cpp:
* src/StorageEventDispatcherImpl.cpp:
* src/StorageEventDispatcherImpl.h:
* src/StorageNamespaceProxy.cpp:
* src/StorageNamespaceProxy.h:
* src/WebRuntimeFeatures.cpp:
(WebKit::WebRuntimeFeatures::enableLocalStorage):
(WebKit::WebRuntimeFeatures::isLocalStorageEnabled):
(WebKit::WebRuntimeFeatures::enableSessionStorage):
(WebKit::WebRuntimeFeatures::isSessionStorageEnabled):
* src/WebStorageAreaImpl.cpp:
* src/WebStorageAreaImpl.h:
* src/WebStorageEventDispatcherImpl.cpp:
* src/WebStorageEventDispatcherImpl.h:
* src/WebStorageNamespaceImpl.cpp:
* src/WebStorageNamespaceImpl.h:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:
* Storage/WebStorageManager.mm:
* Storage/WebStorageManagerInternal.h:
* Storage/WebStorageTrackerClient.h:
* Storage/WebStorageTrackerClient.mm:
(WebStorageTrackerClient::dispatchDidModifyOrigin):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):

Tools:

* Scripts/build-webkit:
* waf/build/settings.py:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:

LayoutTests:

* fast/events/event-creation.html:

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

11 years agoRename ENABLE(SKIA_TEXT) to USE(SKIA_TEXT)
abarth@webkit.org [Sun, 16 Oct 2011 05:59:12 +0000 (05:59 +0000)]
Rename ENABLE(SKIA_TEXT) to USE(SKIA_TEXT)
https://bugs.webkit.org/show_bug.cgi?id=70191

Reviewed by Daniel Bates.

Source/WebCore:

SKIA_TEXT is not a WebKit feature.  It's a macro that determines
whether we use a feature of the underly library (Skia).

* platform/graphics/chromium/FontChromiumWin.cpp:
(WebCore::Font::drawComplexText):
* platform/graphics/chromium/UniscribeHelper.cpp:
(WebCore::UniscribeHelper::draw):
* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
* platform/graphics/skia/PlatformContextSkia.h:
* platform/graphics/skia/SkiaFontWin.cpp:
* platform/graphics/skia/SkiaFontWin.h:

Source/WebKit/chromium:

* features.gypi:

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

11 years ago2011-10-15 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Sun, 16 Oct 2011 05:00:15 +0000 (05:00 +0000)]
2011-10-15  Eric Carlson  <eric.carlson@apple.com>

        Make VIDEO_TRACK compile with warnings as errors enabled
        https://bugs.webkit.org/show_bug.cgi?id=70188

        Reviewed by Filip Pizlo.

        No new tests, no functionality changed.

        * html/TextTrackCueList.h: Fix an include.
        * html/track/CueParser.cpp:
        (WebCore::CueParser::supportsType): Remove unused param.
        * html/track/CueParser.h:
        (WebCore::CueParserClient::~CueParserClient): Add virtual destructor.
        * html/track/CueParserPrivate.h:
        (WebCore::CueParserPrivateClient::~CueParserPrivateClient): Ditto.
        * loader/CueLoader.h:
        (WebCore::CueLoaderClient::~CueLoaderClient): Ditto.
        (WebCore::CueLoader::~CueLoader): Ditto.

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

11 years agoRename ENABLE(TILED_BACKING_STORE) to USE(TILED_BACKING_STORE)
abarth@webkit.org [Sun, 16 Oct 2011 04:35:21 +0000 (04:35 +0000)]
Rename ENABLE(TILED_BACKING_STORE) to USE(TILED_BACKING_STORE)
https://bugs.webkit.org/show_bug.cgi?id=70194

Reviewed by Daniel Bates.

Source/WebCore:

TILED_BACKING_STORE isn't a web platform feature.  It's an
implementation strategy for WebKit that's used by some ports
and not by others.

* features.pri:
* loader/EmptyClients.h:
* page/Chrome.cpp:
* page/Chrome.h:
* page/ChromeClient.h:
* page/Frame.cpp:
(WebCore::Frame::Frame):
(WebCore::Frame::setView):
* page/Frame.h:
* page/FrameView.cpp:
(WebCore::FrameView::repaintContentRectangle):
(WebCore::FrameView::doDeferredRepaints):
* page/Settings.cpp:
(WebCore::Settings::setTiledBackingStoreEnabled):
* platform/HostWindow.h:
* platform/ScrollView.cpp:
(WebCore::ScrollView::setScrollPosition):
* platform/graphics/Tile.h:
* platform/graphics/TiledBackingStore.cpp:
* platform/graphics/TiledBackingStore.h:
* platform/graphics/TiledBackingStoreBackend.h:
* platform/graphics/TiledBackingStoreClient.h:
* platform/graphics/qt/GraphicsLayerQt.cpp:
(WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
(WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
(WebCore::GraphicsLayerQtImpl::recache):
(WebCore::GraphicsLayerQtImpl::paint):
* platform/graphics/qt/TileQt.cpp:
* platform/graphics/qt/TileQt.h:
* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::TextureMapperNode::computeTiles):
(WebCore::TextureMapperNode::renderContent):
(WebCore::TextureMapperNode::paintSelf):
(WebCore::TextureMapperNode::syncCompositingStateSelf):
* platform/graphics/texmap/TextureMapperNode.h:
(WebCore::TextureMapperNode::State::State):

Source/WebKit/qt:

* Api/qgraphicswebview.cpp:
(QGraphicsWebViewPrivate::_q_scaleChanged):
(QGraphicsWebView::QGraphicsWebView):
(QGraphicsWebView::paint):
(QGraphicsWebView::isTiledBackingStoreFrozen):
(QGraphicsWebView::setTiledBackingStoreFrozen):
* Api/qwebframe.cpp:
* Api/qwebframe_p.h:
* Api/qwebpage.cpp:
(QWebPagePrivate::dynamicPropertyChangeEvent):
* Api/qwebsettings.cpp:
(QWebSettingsPrivate::apply):
* WebCoreSupport/ChromeClientQt.cpp:
(WebCore::ChromeClientQt::invalidateWindow):
* WebCoreSupport/ChromeClientQt.h:
* WebCoreSupport/PageClientQt.cpp:
(WebCore::PageClientQGraphicsWidget::createOrDeleteOverlay):
* WebCoreSupport/PageClientQt.h:
* tests/qgraphicswebview/tst_qgraphicswebview.cpp:

Source/WebKit2:

* Shared/DrawingAreaInfo.h:
* UIProcess/DrawingAreaProxy.h:
* UIProcess/DrawingAreaProxy.messages.in:
* UIProcess/PageClient.h:
* UIProcess/TiledDrawingAreaProxy.cpp:
* UIProcess/TiledDrawingAreaProxy.h:
* UIProcess/WebPageProxy.cpp:
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::contentsSizeChanged):
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
* WebProcess/WebPage/DrawingArea.cpp:
(WebKit::DrawingArea::create):
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingArea.messages.in:
* WebProcess/WebPage/TiledBackingStoreRemoteTile.cpp:
* WebProcess/WebPage/TiledBackingStoreRemoteTile.h:
* WebProcess/WebPage/TiledDrawingArea.cpp:
* WebProcess/WebPage/TiledDrawingArea.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setSize):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:

Tools:

* Scripts/build-webkit:

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

11 years agoRemove unused ENABLE(SKIA_GPU)
abarth@webkit.org [Sun, 16 Oct 2011 04:19:55 +0000 (04:19 +0000)]
Remove unused ENABLE(SKIA_GPU)
https://bugs.webkit.org/show_bug.cgi?id=70192

Reviewed by Daniel Bates.

There do not appear to be any references to this macro.

* features.gypi:

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

11 years agoRemove the last remnant of WBXML
abarth@webkit.org [Sun, 16 Oct 2011 03:33:30 +0000 (03:33 +0000)]
Remove the last remnant of WBXML
https://bugs.webkit.org/show_bug.cgi?id=70187

Reviewed by Daniel Bates.

The bulk of the WBXML code was removed in 2009, but we missed one block.

* platform/wince/MIMETypeRegistryWinCE.cpp:
(WebCore::initMIMETypeEntensionMap):

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

11 years agoThe s390 and s390x architectures both use 64-bit double type
commit-queue@webkit.org [Sun, 16 Oct 2011 00:54:05 +0000 (00:54 +0000)]
The s390 and s390x architectures both use 64-bit double type
that conforms to the IEEE-754 standard.

https://bugs.webkit.org/show_bug.cgi?id=69940

Patch by Dan HorĂ¡k <dan@danny.cz> on 2011-10-15
Reviewed by Gavin Barraclough.

* wtf/dtoa/utils.h:

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

11 years agorun-webkit-tests should accept --child-processes
ojan@chromium.org [Sun, 16 Oct 2011 00:18:26 +0000 (00:18 +0000)]
run-webkit-tests should accept --child-processes
https://bugs.webkit.org/show_bug.cgi?id=69713

Reviewed by Adam Barth.

Only set --child-processes=1 if --child-processes it not
passed on the commandline.

* Scripts/run-webkit-tests:

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

11 years agoJS Test Harness: Make console and description elements optional in the HTML
arv@chromium.org [Sat, 15 Oct 2011 23:46:03 +0000 (23:46 +0000)]
JS Test Harness: Make console and description elements optional in the HTML
https://bugs.webkit.org/show_bug.cgi?id=69881

Reviewed by Darin Adler.

This makes the description element and the console element in the HTML files
optional and these gets created as needed by the call to description() and debug().

This removes the description and console elements from a lots of files in LayoutTests/fast/

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

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

11 years agoREGRESSION(r97533): fast/forms/select-script-onchange.html failed after
darin@apple.com [Sat, 15 Oct 2011 22:47:42 +0000 (22:47 +0000)]
REGRESSION(r97533): fast/forms/select-script-onchange.html failed after
https://bugs.webkit.org/show_bug.cgi?id=70173

Reviewed by Ryosuke Niwa.

* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::setValue): Removed unneeded boolean argument
[true for deselect].
(WebCore::HTMLSelectElement::menuListDefaultEventHandler): Added explicit
boolean arguments for all calls to setSelectedIndex to restore pre-r97533
behavior.
(WebCore::HTMLSelectElement::typeAheadFind): Ditto.
(WebCore::HTMLSelectElement::accessKeySetSelectedIndex): Ditto.

* html/HTMLSelectElement.h:
Removed default of true for userDrivenChange. Each caller should pass it
explicitly. Longer term we should use an enum instead of a boolean or find
some other way of avoiding the argument.
(WebCore::HTMLSelectElement::setSelectedIndex):
Pass false for userDrivenChange as the old code did pre-r97533.

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

11 years agoFunctionExecutable should expose the ability to create unattached FunctionCodeBlocks
fpizlo@apple.com [Sat, 15 Oct 2011 21:44:50 +0000 (21:44 +0000)]
FunctionExecutable should expose the ability to create unattached FunctionCodeBlocks
https://bugs.webkit.org/show_bug.cgi?id=70157

Reviewed by Geoff Garen.

Added FunctionExecutable::produceCodeBlockFor() and rewired compileForCallInternal()
and compileForConstructInternal() to use this method. This required more cleanly
exposing some of CodeBlock's tiering functionality and moving the CompilationKind
enum to Executable.h, as this was the easiest way to make it available to the
declarations/definitions of CodeBlock, FunctionExecutable, and BytecodeGenerator.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::copyDataFrom):
(JSC::CodeBlock::copyDataFromAlternative):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::setAlternative):
* bytecompiler/BytecodeGenerator.h:
* runtime/Executable.cpp:
(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::produceCodeBlockFor):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):
* runtime/Executable.h:
(JSC::FunctionExecutable::codeBlockFor):

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

11 years ago[Chromium] Populate WebMouseEvent movementX/Y on Mac
scheib@chromium.org [Sat, 15 Oct 2011 19:35:33 +0000 (19:35 +0000)]
[Chromium] Populate WebMouseEvent movementX/Y on Mac
https://bugs.webkit.org/show_bug.cgi?id=70167

Reviewed by Adam Barth.

* src/mac/WebInputEventFactory.mm:
(WebKit::setWebEventLocationFromEventInView):

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

11 years agoExtract common gdb code into its own function; Remove script gdb-safari
dbates@webkit.org [Sat, 15 Oct 2011 19:34:27 +0000 (19:34 +0000)]
Extract common gdb code into its own function; Remove script gdb-safari
https://bugs.webkit.org/show_bug.cgi?id=68499

Reviewed by David Kilzer.

Almost identical code is used in webkitdirs::{debugMiniBrowser, debugWebKitTestRunner,
runSafari}() and in the script gdb-safari to launch gdb to debug an application.
We should extract the common parts into a function that can be shared by all callers
so as to remove duplicate code.

As a side effect of removing duplicate code we can remove the script gdb-safari since
its code has been incorporated into webkitdirs::debugSafari() which is called by the
script debug-safari.

* Scripts/debug-safari: Modified to call webkitdirs::debugSafari().
* Scripts/gdb-safari: Removed.
* Scripts/webkitdirs.pm:
(execMacWebKitAppForDebugging): Added; Extracted common debugging code from
debugMiniBrowser(), debugWebKitTestRunner(), runSafari() and
script gdb-safari to here.
(debugSafari): Added.
(runSafari): Extracted debugging code to debugSafari() and debugMacWebKitApp();
Also, return the exit status of WebKit launcher (WebKit.exe) on Windows. Currently,
runSafari() always returns 1 on Windows and the script run-safari exits using this
value as its exit status. Hence, the script run-safari always exits with a nonzero
exit status (i.e. abnormal termination) on Windows. Instead, we should return the
exit status of the WebKit launcher application.
(debugMiniBrowser): Modified to call debugMacWebKitApp().
(debugWebKitTestRunner): Ditto.

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

11 years ago[webkit-patch] Put Source/Tools changes at the top of patches, LayoutTests at the...
robert@webkit.org [Sat, 15 Oct 2011 19:14:37 +0000 (19:14 +0000)]
[webkit-patch] Put Source/Tools changes at the top of patches, LayoutTests at the bottom
https://bugs.webkit.org/show_bug.cgi?id=70056

Reviewed by Adam Barth.

The preferred file-order for patches is LayoutTests at the end and
ChangeLogs before everything else in a subdirectory. Specify this in a git 'orderfile' and use
it when creating patches for review and landing.

* Scripts/webkitpy/common/checkout/scm/git.py:
* Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
* Scripts/webkitpy/common/config/orderfile: Added.

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

11 years agoUnreviewed, rolling out r97559.
commit-queue@webkit.org [Sat, 15 Oct 2011 16:17:29 +0000 (16:17 +0000)]
Unreviewed, rolling out r97559.
http://trac.webkit.org/changeset/97559
https://bugs.webkit.org/show_bug.cgi?id=70176

Broke build on Mac (Requested by noamr_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-10-15

* DerivedSources.pro:
* Platform/CoreIPC/MessageID.h:
* Scripts/webkit2/messages.py:
* Shared/LayerTreeContext.h:
* Shared/WebLayerTreeInfo.cpp:
(WebKit::WebLayerInfo::encode):
(WebKit::WebLayerInfo::decode):
* Shared/WebLayerTreeInfo.h:
* Shared/qt/LayerTreeContextQt.cpp:
(WebKit::LayerTreeContext::LayerTreeContext):
(WebKit::LayerTreeContext::~LayerTreeContext):
(WebKit::LayerTreeContext::encode):
(WebKit::LayerTreeContext::decode):
(WebKit::LayerTreeContext::isEmpty):
(WebKit::operator==):
* UIProcess/DrawingAreaProxy.cpp:
* UIProcess/DrawingAreaProxy.h:
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
* UIProcess/DrawingAreaProxyImpl.h:
* UIProcess/LayerTreeHostProxy.h: Removed.
* UIProcess/LayerTreeHostProxy.messages.in: Removed.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveMessage):
* UIProcess/qt/LayerTreeHostProxyQt.cpp: Removed.
* WebKit2.pro:
* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::deletedLayerIDs):
(WebCore::WebGraphicsLayer::WebGraphicsLayer):
(WebCore::WebGraphicsLayer::~WebGraphicsLayer):
(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::removeFromParent):
(WebCore::WebGraphicsLayer::setContentsRect):
(WebCore::WebGraphicsLayer::setContentsToImage):
(WebCore::WebGraphicsLayer::setNeedsDisplay):
(WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
(WebCore::WebGraphicsLayer::setContentsNeedsDisplay):
(WebCore::WebGraphicsLayer::didSynchronize):
(WebCore::WebGraphicsLayer::layerInfo):
(WebCore::WebGraphicsLayer::syncCompositingState):
(WebCore::WebGraphicsLayer::needsDisplayRect):
(WebCore::WebGraphicsLayer::takeLayersToDelete):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::divideIntoTiles):
(WebCore::collectCompositingInfoForThisLayer):
(WebCore::collectCompositingInfoRecursively):
(WebCore::WebGraphicsLayer::sendLayersToUIProcess):
* WebProcess/WebCoreSupport/WebGraphicsLayer.h:
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingAreaImpl.cpp:
* WebProcess/WebPage/DrawingAreaImpl.h:
* WebProcess/WebPage/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::create):
* WebProcess/WebPage/LayerTreeHost.h:
* WebProcess/WebPage/LayerTreeHost.messages.in: Removed.
* WebProcess/WebPage/TiledDrawingArea.cpp:
* WebProcess/WebPage/TiledDrawingArea.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didReceiveMessage):
* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
* WebProcess/WebPage/qt/LayerTreeHostQt.h: Removed.

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

11 years ago[Qt][WK2] Synchronize tiling with accelerated compositing
noam.rosenthal@nokia.com [Sat, 15 Oct 2011 16:01:47 +0000 (16:01 +0000)]
[Qt][WK2] Synchronize tiling with accelerated compositing
https://bugs.webkit.org/show_bug.cgi?id=69151

Reviewed by Simon Hausmann.

Make the tiled "non-composited" content and the composited layers go through the same
code path on WebKit2. Instead of having a "drawing area" that handles the non-composited
content and a seperate layer tree, we put everything in a layer tree, with the non-
composited content being a layer in the tree.

This allows fixing several issues with websites that have large content areas that are
composited or overlap with composited layers.

Layer-tree synchronization is done by passing WebKit2 messages between a LayerTreeHost
on the WebProcess and a LayerTreeHostProxy on the UI process. Every layer in the tree has
its own tiled backing store, and uses the LayerTreeHost communication channel to pass
content up to the UI process. The UI process will later creates its own GraphicsLayer tree,
based on TextureMapper, which can be painted directly with OpenGL.

Several optimizations are available for the non-composited layer as well, e.g. specifying
a trajectory and updating the visible rect together with the content scale.

This code is currently disabled, a separate patch will enable it and glue it to
QTouchWebPage.

* DerivedSources.pro:
* Platform/CoreIPC/MessageID.h:
* Scripts/webkit2/messages.py:
* Shared/LayerTreeContext.h:
* Shared/WebLayerTreeInfo.cpp:
(WebKit::WebLayerInfo::encode):
(WebKit::WebLayerInfo::decode):
* Shared/WebLayerTreeInfo.h:
* Shared/qt/LayerTreeContextQt.cpp:
(WebKit::LayerTreeContext::LayerTreeContext):
(WebKit::LayerTreeContext::~LayerTreeContext):
(WebKit::LayerTreeContext::encode):
(WebKit::LayerTreeContext::decode):
(WebKit::LayerTreeContext::isEmpty):
(WebKit::operator==):
* UIProcess/DrawingAreaProxy.cpp:
(WebKit::DrawingAreaProxy::updateWebView):
(WebKit::DrawingAreaProxy::contentsRect):
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::viewportVisibleRect):
(WebKit::DrawingAreaProxy::isBackingStoreReady):
(WebKit::DrawingAreaProxy::paintToCurrentGLContext):
(WebKit::DrawingAreaProxy::setVisibleContentsRectAndScale):
(WebKit::DrawingAreaProxy::setVisibleContentRectTrajectoryVector):
(WebKit::DrawingAreaProxy::createTileForLayer):
(WebKit::DrawingAreaProxy::updateTileForLayer):
(WebKit::DrawingAreaProxy::removeTileForLayer):
(WebKit::DrawingAreaProxy::didReceiveLayerTreeHostProxyMessage):
(WebKit::DrawingAreaProxy::page):
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::didReceiveLayerTreeHostProxyMessage):
(WebKit::DrawingAreaProxyImpl::setVisibleContentsRectAndScale):
(WebKit::DrawingAreaProxyImpl::setVisibleContentRectTrajectoryVector):
(WebKit::DrawingAreaProxyImpl::paintToCurrentGLContext):
* UIProcess/DrawingAreaProxyImpl.h:
* UIProcess/LayerTreeHostProxy.h: Added.
(WebKit::LayerTreeHostProxy::layerByID):
(WebKit::LayerTreeHostProxy::rootLayer):
(WebKit::LayerTreeHostProxy::notifyAnimationStarted):
(WebKit::LayerTreeHostProxy::notifySyncRequired):
(WebKit::LayerTreeHostProxy::showDebugBorders):
(WebKit::LayerTreeHostProxy::showRepaintCounter):
(WebKit::LayerTreeHostProxy::paintContents):
* UIProcess/LayerTreeHostProxy.messages.in: Added.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveMessage):
* UIProcess/qt/LayerTreeHostProxyQt.cpp: Added.
* WebKit2.pro:
* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::WebGraphicsLayer):
(WebCore::WebGraphicsLayer::~WebGraphicsLayer):
(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::removeFromParent):
(WebCore::WebGraphicsLayer::setContentsNeedsDisplay):
(WebCore::WebGraphicsLayer::setContentsToImage):
(WebCore::WebGraphicsLayer::setNeedsDisplay):
(WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
(WebCore::WebGraphicsLayer::syncCompositingState):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::WebGraphicsLayer::tiledBackingStorePaintBegin):
(WebCore::WebGraphicsLayer::setContentsScale):
(WebCore::WebGraphicsLayer::setRootLayer):
(WebCore::WebGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::WebGraphicsLayer::setVisibleContentRect):
(WebCore::WebGraphicsLayer::tiledBackingStorePaint):
(WebCore::WebGraphicsLayer::tiledBackingStorePaintEnd):
(WebCore::WebGraphicsLayer::tiledBackingStoreUpdatesAllowed):
(WebCore::WebGraphicsLayer::tiledBackingStoreContentsRect):
(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::WebGraphicsLayer::tiledBackingStoreBackgroundColor):
(WebCore::WebGraphicsLayer::createTile):
(WebCore::WebGraphicsLayer::updateTile):
(WebCore::WebGraphicsLayer::removeTile):
(WebCore::WebGraphicsLayer::updateTileBuffersRecursively):
(WebCore::WebGraphicsLayer::layerTreeTileClient):
(WebCore::WebGraphicsLayer::updateContentBuffers):
* WebProcess/WebCoreSupport/WebGraphicsLayer.h:
(WebCore::WebGraphicsLayer::setLayerTreeTileClient):
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::didReceiveLayerTreeHostMessage):
* WebProcess/WebPage/DrawingAreaImpl.h:
* WebProcess/WebPage/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::create):
* WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setVisibleContentRectAndScale):
(WebKit::LayerTreeHost::setVisibleContentRectTrajectoryVector):
(WebKit::LayerTreeHost::setVisibleContentRectForLayer):
(WebKit::LayerTreeHost::renderNextFrame):
* WebProcess/WebPage/LayerTreeHost.messages.in: Added.
* WebProcess/WebPage/TiledDrawingArea.cpp:
(WebKit::TiledDrawingArea::didReceiveLayerTreeHostMessage):
* WebProcess/WebPage/TiledDrawingArea.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didReceiveMessage):
* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
(WebKit::LayerTreeHostQt::create):
(WebKit::LayerTreeHostQt::~LayerTreeHostQt):
(WebKit::LayerTreeHostQt::LayerTreeHostQt):
(WebKit::LayerTreeHostQt::setLayerFlushSchedulingEnabled):
(WebKit::LayerTreeHostQt::scheduleLayerFlush):
(WebKit::LayerTreeHostQt::cancelPendingLayerFlush):
(WebKit::LayerTreeHostQt::setShouldNotifyAfterNextScheduledLayerFlush):
(WebKit::LayerTreeHostQt::setRootCompositingLayer):
(WebKit::LayerTreeHostQt::invalidate):
(WebKit::LayerTreeHostQt::setNonCompositedContentsNeedDisplay):
(WebKit::LayerTreeHostQt::scrollNonCompositedContents):
(WebKit::LayerTreeHostQt::forceRepaint):
(WebKit::LayerTreeHostQt::sizeDidChange):
(WebKit::LayerTreeHostQt::didInstallPageOverlay):
(WebKit::LayerTreeHostQt::didUninstallPageOverlay):
(WebKit::LayerTreeHostQt::setPageOverlayNeedsDisplay):
(WebKit::LayerTreeHostQt::flushPendingLayerChanges):
(WebKit::LayerTreeHostQt::didSyncCompositingStateForLayer):
(WebKit::LayerTreeHostQt::didDeleteLayer):
(WebKit::LayerTreeHostQt::performScheduledLayerFlush):
(WebKit::LayerTreeHostQt::layerFlushTimerFired):
(WebKit::LayerTreeHostQt::createPageOverlayLayer):
(WebKit::LayerTreeHostQt::destroyPageOverlayLayer):
(WebKit::LayerTreeHostQt::adoptImageBackingStore):
(WebKit::LayerTreeHostQt::releaseImageBackingStore):
(WebKit::LayerTreeHostQt::notifyAnimationStarted):
(WebKit::LayerTreeHostQt::notifySyncRequired):
(WebKit::LayerTreeHostQt::paintContents):
(WebKit::LayerTreeHostQt::showDebugBorders):
(WebKit::LayerTreeHostQt::showRepaintCounter):
(WebKit::LayerTreeHost::supportsAcceleratedCompositing):
(WebKit::LayerTreeHostQt::createTile):
(WebKit::LayerTreeHostQt::updateTile):
(WebKit::LayerTreeHostQt::removeTile):
(WebKit::LayerTreeHostQt::setVisibleContentRectForLayer):
(WebKit::LayerTreeHostQt::setVisibleContentRectAndScale):
(WebKit::LayerTreeHostQt::setVisibleContentRectTrajectoryVector):
(WebKit::LayerTreeHostQt::renderNextFrame):
(WebKit::LayerTreeHostQt::layerTreeTileUpdatesAllowed):

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

11 years agoMissed mac result from r97555
robert@webkit.org [Sat, 15 Oct 2011 15:15:05 +0000 (15:15 +0000)]
Missed mac result from r97555

Unreviewed.

* platform/mac/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Added.

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

11 years ago [Qt] [Symbian] Remove support for the Symbian platform for the QtWebKit port
laszlo.1.gombos@nokia.com [Sat, 15 Oct 2011 13:25:09 +0000 (13:25 +0000)]
    [Qt] [Symbian] Remove support for the Symbian platform for the QtWebKit port
        https://bugs.webkit.org/show_bug.cgi?id=69920
        Patch by Laszlo Gombos  <laszlo.1.gombos@nokia.com> on 2011-10-15
        Reviewed by Kenneth Rohde Christiansen.

        * Source/WebKit.pri:
        * Source/WebKit.pro:

        * DumpRenderTree/qt/DumpRenderTree.pro:
        * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
        (WebCore::DumpRenderTree::open):
        * DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
        * QtTestBrowser/QtTestBrowser.pro:
        * QtTestBrowser/launcherwindow.cpp:
        (LauncherWindow::screenshot):
        (LauncherWindow::showFPS):
        (LauncherWindow::updateFPS):
        * QtTestBrowser/launcherwindow.h:
        (WindowOptions::WindowOptions):
        * QtTestBrowser/mainwindow.cpp:
        (MainWindow::buildUI):
        * Scripts/webkitpy/style/checker.py: Remove rules for the
        WebKit/qt/symbian/platformplugin directory.
        * Scripts/webkitpy/style/checker_unittest.py:
        * Tools.pro:
        * WebKitTestRunner/InjectedBundle/qt/InjectedBundle.pro:
        * WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp:
        (WTR::LayoutTestController::platformInitialize):
        * WebKitTestRunner/qt/TestControllerQt.cpp:
        (WTR::isExistingLibrary):
        * WebKitTestRunner/qt/WebKitTestRunner.pro:

        * benchmarks/qscriptengine/qscriptengine.pro:

        * JavaScriptCore.pri:
        * JavaScriptCore.pro:
        * heap/MarkStack.h:
        (JSC::::shrinkAllocation):
        * jit/ExecutableAllocator.cpp:
        * jit/ExecutableAllocator.h:
        (JSC::ExecutableAllocator::cacheFlush):
        * jit/JITStubs.cpp:
        * jsc.pro:
        * runtime/ArrayPrototype.cpp:
        (JSC::arrayProtoFuncToString):
        * runtime/DatePrototype.cpp:
        (JSC::formatLocaleDate):
        * runtime/StringPrototype.cpp:
        (JSC::stringProtoFuncLastIndexOf):
        * runtime/TimeoutChecker.cpp:
        (JSC::getCPUTime):
        * wtf/Assertions.cpp:
        * wtf/Assertions.h:
        * wtf/Atomics.h:
        * wtf/MathExtras.h:
        * wtf/OSAllocator.h:
        (WTF::OSAllocator::decommitAndRelease):
        * wtf/OSAllocatorSymbian.cpp: Removed.
        * wtf/OSRandomSource.cpp:
        (WTF::cryptographicallyRandomValuesFromOS):
        * wtf/PageAllocation.h:
        * wtf/PageAllocatorSymbian.h: Removed.
        * wtf/PageBlock.cpp:
        * wtf/Platform.h:
        * wtf/StackBounds.cpp:
        * wtf/wtf.pri:

        * Api/qgraphicswebview.cpp:
        (QGraphicsWebView::setPage):
        * Api/qwebpage.cpp:
        (QWebPage::userAgentForUrl):
        * Api/qwebview.cpp:
        (QWebView::QWebView):
        * QtWebKit.pro:
        * WebCoreSupport/EditorClientQt.cpp:
        (WebCore::EditorClientQt::setInputMethodState):
        * WebCoreSupport/QtFallbackWebPopup.cpp:
        (WebCore::QtFallbackWebPopup::populate):
        * declarative/declarative.pro:
        * declarative/qdeclarativewebview.cpp:
        (QDeclarativeWebView::setPage):
        * symbian: Removed.
        * symbian/backup_registration.xml: Removed.
        * symbian/bwins: Removed.
        * symbian/bwins/QtWebKitu.def: Removed.
        * symbian/eabi: Removed.
        * symbian/eabi/QtWebKitu.def: Removed.
        * symbian/platformplugin: Removed.
        * symbian/platformplugin/HTML5VideoPlugin.cpp: Removed.
        * symbian/platformplugin/HTML5VideoPlugin.h: Removed.
        * symbian/platformplugin/HTML5VideoWidget.cpp: Removed.
        * symbian/platformplugin/HTML5VideoWidget.h: Removed.
        * symbian/platformplugin/OverlayWidget.cpp: Removed.
        * symbian/platformplugin/OverlayWidget.h: Removed.
        * symbian/platformplugin/PlayerButton.cpp: Removed.
        * symbian/platformplugin/PlayerButton.h: Removed.
        * symbian/platformplugin/PlayerLabel.cpp: Removed.
        * symbian/platformplugin/PlayerLabel.h: Removed.
        * symbian/platformplugin/WebPlugin.cpp: Removed.
        * symbian/platformplugin/WebPlugin.h: Removed.
        * symbian/platformplugin/images: Removed.
        * symbian/platformplugin/images/button_cannotplay.png: Removed.
        * symbian/platformplugin/images/button_close.png: Removed.
        * symbian/platformplugin/images/button_pause.png: Removed.
        * symbian/platformplugin/images/button_play.png: Removed.
        * symbian/platformplugin/images/button_sound_off.png: Removed.
        * symbian/platformplugin/images/button_sound_on.png: Removed.
        * symbian/platformplugin/images/loading_buffering_1.png: Removed.
        * symbian/platformplugin/images/loading_buffering_2.png: Removed.
        * symbian/platformplugin/images/loading_buffering_3.png: Removed.
        * symbian/platformplugin/images/loading_buffering_4.png: Removed.
        * symbian/platformplugin/platformplugin.pro: Removed.
        * symbian/platformplugin/platformplugin.qrc: Removed.
        * symbian/platformplugin/qss: Removed.
        * symbian/platformplugin/qss/OverlayWidget.qss: Removed.
        * symbian/platformplugin/qwebkitplatformplugin.h: Removed.
        * tests/qgraphicswebview/tst_qgraphicswebview.cpp:
        (tst_QGraphicsWebView::focusInputTypes):
        * tests/qwebframe/qwebframe.pro:
        * tests/qwebframe/tst_qwebframe.cpp:
        * tests/qwebview/tst_qwebview.cpp:
        (tst_QWebView::focusInputTypes):
        * tests/tests.pri:

        * WebCore.gypi:
        * WebCore.pri:
        * WebCore.pro:
        * bindings/v8/V8GCController.cpp:
        (WebCore::V8GCController::checkMemoryUsage):
        * config.h:
        * css/CSSPrimitiveValueMappings.h:
        (WebCore::CSSPrimitiveValue::operator int):
        * features.pri:
        * page/NavigatorBase.cpp:
        * platform/graphics/qt/GraphicsContextQt.cpp:
        (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
        * platform/network/qt/ResourceRequestQt.cpp:
        (WebCore::initializeMaximumHTTPConnectionCountPerHost):
        * platform/text/qt/TextCodecQt.cpp:
        (WebCore::TextCodecQt::decode):
        * plugins/PluginDatabase.cpp:
        * plugins/PluginPackage.cpp:
        (WebCore::PluginPackage::unload):
        * plugins/PluginPackage.h:
        (WebCore::PluginPackage::version):
        * plugins/PluginView.cpp:
        (WebCore::PluginView::setFrameRect):
        * plugins/PluginView.h:
        * plugins/npapi.h:
        * plugins/symbian: Removed.
        * plugins/symbian/PluginContainerSymbian.cpp: Removed.
        * plugins/symbian/PluginContainerSymbian.h: Removed.
        * plugins/symbian/PluginDatabaseSymbian.cpp: Removed.
        * plugins/symbian/PluginPackageSymbian.cpp: Removed.
        * plugins/symbian/PluginViewSymbian.cpp: Removed.
        * plugins/symbian/npinterface.h: Removed.

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

11 years agoPlatform-specific results for r97555
robert@webkit.org [Sat, 15 Oct 2011 13:00:53 +0000 (13:00 +0000)]
Platform-specific results for r97555

Unreviewed.

* platform/gtk/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Added.
* platform/gtk/css2.1/20110323/height-width-inline-table-001-expected.txt: Added.
* platform/gtk/css2.1/20110323/height-width-table-001-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Added.
* platform/mac/css2.1/20110323/height-width-inline-table-001-expected.txt: Added.
* platform/mac/css2.1/20110323/height-width-table-001-expected.txt: Added.
* platform/qt/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Added.
* platform/qt/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Added.
* platform/qt/css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Added.
* platform/qt/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Added.
* platform/qt/css2.1/20110323/height-width-inline-table-001-expected.txt: Added.
* platform/qt/css2.1/20110323/height-width-table-001-expected.txt: Added.

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

11 years agoCSS 2.1 failure: height-width-table-001.htm
robert@webkit.org [Sat, 15 Oct 2011 11:32:40 +0000 (11:32 +0000)]
CSS 2.1 failure: height-width-table-001.htm
https://bugs.webkit.org/show_bug.cgi?id=69709

Reviewed by Simon Fraser.

Source/WebCore:

CSS 2.1 expects CSS table elements to treat fixed height/width as
excluding table borders, but HTML table elements to treat fixed height/width as
including them.

See http://lists.w3.org/Archives/Public/www-style/2011Jan/0178.html
    http://lists.w3.org/Archives/Public/public-css-testsuite/2011Oct/0005.html

It looks like some clarification is pending in the specs, but the new behaviour
lets WebKit pass the following tests in the suite CSS and also match FF:
  height-width-table-001.htm
  height-width-inline-table-001.htm
  abspos-containing-block-initial-004d.htm

* rendering/RenderTable.cpp:
(WebCore::RenderTable::computeLogicalWidth):
(WebCore::RenderTable::layout):

LayoutTests:

* css2.1/20110323/abspos-containing-block-initial-001-ref.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-001.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-004-ref-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-004-ref-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004-ref.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-004a-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-004a-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004a.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-004b-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-004b-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004b.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-004c-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-004c-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004c.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-004d-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-004d-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004d.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-004d.htm.1: Added.
* css2.1/20110323/abspos-containing-block-initial-004e-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-004e-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004e.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-004f-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-004f-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004f.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-005-ref-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-005-ref-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005-ref.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-005a-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-005a-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005a.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-005b-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-005b-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005b.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-005c-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-005c-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005c.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-005d-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-005d-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005d.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-007-ref.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-007.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-009-ref-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-009-ref-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009-ref.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-009a-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-009a-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009a.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-009b-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-009b-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009b.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-009e-expected.png: Added
* css2.1/20110323/abspos-containing-block-initial-009e-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009e.htm: Added.
* css2.1/20110323/abspos-containing-block-initial-009f-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-009f-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009f.htm: Added.
* css2.1/20110323/height-width-inline-table-001.htm: Added.
* css2.1/20110323/height-width-table-001.htm: Added.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Added.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Added.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Added
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Added.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.png: Added
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Added.
* platform/chromium-linux/css2.1/20110323/height-width-inline-table-001-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/height-width-inline-table-001-expected.txt: Added.
* platform/chromium-linux/css2.1/20110323/height-width-table-001-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/height-width-table-001-expected.txt: Added.
* platform/gtk/fast/backgrounds/table-root-expected.txt: Removed.
* platform/mac/fast/backgrounds/positioned-root-expected.png: Removed.
* platform/mac/fast/backgrounds/table-root-expected.png: Removed.
* platform/mac/fast/backgrounds/table-root-expected.txt: Removed.
* platform/qt/fast/backgrounds/positioned-root-expected.png: Removed.
* platform/qt/fast/backgrounds/positioned-root-expected.txt: Removed.
* platform/qt/fast/backgrounds/table-root-expected.png: Removed.
* platform/qt/fast/backgrounds/table-root-expected.txt: Removed.

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

11 years agoUnreviewed, rolling out r97549.
commit-queue@webkit.org [Sat, 15 Oct 2011 09:37:10 +0000 (09:37 +0000)]
Unreviewed, rolling out r97549.
http://trac.webkit.org/changeset/97549
https://bugs.webkit.org/show_bug.cgi?id=70174

It broke the SL build (Requested by Ossy_weekend on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-10-15

* DerivedSources.pro:
* Platform/CoreIPC/MessageID.h:
* Scripts/webkit2/messages.py:
* Shared/LayerTreeContext.h:
* Shared/WebLayerTreeInfo.cpp:
(WebKit::WebLayerInfo::encode):
(WebKit::WebLayerInfo::decode):
* Shared/WebLayerTreeInfo.h:
* Shared/qt/LayerTreeContextQt.cpp:
(WebKit::LayerTreeContext::LayerTreeContext):
(WebKit::LayerTreeContext::~LayerTreeContext):
(WebKit::LayerTreeContext::encode):
(WebKit::LayerTreeContext::decode):
(WebKit::LayerTreeContext::isEmpty):
(WebKit::operator==):
* UIProcess/DrawingAreaProxy.cpp:
* UIProcess/DrawingAreaProxy.h:
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
* UIProcess/DrawingAreaProxyImpl.h:
* UIProcess/LayerTreeHostProxy.h: Removed.
* UIProcess/LayerTreeHostProxy.messages.in: Removed.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveMessage):
* UIProcess/qt/LayerTreeHostProxyQt.cpp: Removed.
* WebKit2.pro:
* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::deletedLayerIDs):
(WebCore::WebGraphicsLayer::WebGraphicsLayer):
(WebCore::WebGraphicsLayer::~WebGraphicsLayer):
(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::removeFromParent):
(WebCore::WebGraphicsLayer::setContentsRect):
(WebCore::WebGraphicsLayer::setContentsToImage):
(WebCore::WebGraphicsLayer::setNeedsDisplay):
(WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
(WebCore::WebGraphicsLayer::setContentsNeedsDisplay):
(WebCore::WebGraphicsLayer::didSynchronize):
(WebCore::WebGraphicsLayer::layerInfo):
(WebCore::WebGraphicsLayer::syncCompositingState):
(WebCore::WebGraphicsLayer::needsDisplayRect):
(WebCore::WebGraphicsLayer::takeLayersToDelete):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::divideIntoTiles):
(WebCore::collectCompositingInfoForThisLayer):
(WebCore::collectCompositingInfoRecursively):
(WebCore::WebGraphicsLayer::sendLayersToUIProcess):
* WebProcess/WebCoreSupport/WebGraphicsLayer.h:
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingAreaImpl.cpp:
* WebProcess/WebPage/DrawingAreaImpl.h:
* WebProcess/WebPage/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::create):
* WebProcess/WebPage/LayerTreeHost.h:
* WebProcess/WebPage/LayerTreeHost.messages.in: Removed.
* WebProcess/WebPage/TiledDrawingArea.cpp:
* WebProcess/WebPage/TiledDrawingArea.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didReceiveMessage):
* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
* WebProcess/WebPage/qt/LayerTreeHostQt.h: Removed.

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

11 years agoFix typo in webkitpy help
abarth@webkit.org [Sat, 15 Oct 2011 08:28:51 +0000 (08:28 +0000)]
Fix typo in webkitpy help
https://bugs.webkit.org/show_bug.cgi?id=70169

Reviewed by Eric Seidel.

* Scripts/webkitpy/tool/commands/upload.py:

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

11 years agoTrivial fix for a missing change in r97512
commit-queue@webkit.org [Sat, 15 Oct 2011 07:59:26 +0000 (07:59 +0000)]
Trivial fix for a missing change in r97512
https://bugs.webkit.org/show_bug.cgi?id=70166

Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-10-15
Reviewed by Gavin Barraclough.

* dfg/DFGJITCompiler32_64.cpp:
(JSC::DFG::JITCompiler::link):

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

11 years agoMake toHTMLElement fail to compile if you try to use it on an HTMLElement*
darin@apple.com [Sat, 15 Oct 2011 07:59:24 +0000 (07:59 +0000)]
Make toHTMLElement fail to compile if you try to use it on an HTMLElement*
https://bugs.webkit.org/show_bug.cgi?id=70164

Reviewed by Adam Barth.

Refactoring covered by existing tests.

* bindings/js/JSHTMLFrameSetElementCustom.cpp:
(WebCore::JSHTMLFrameSetElement::nameGetter): Removed unneeded casts and
some unneeded local variables as well. Changed the name of the local variable
for the HTMLFrameElement to frameElement to avoid confusion with the Frame.
* dom/Document.cpp:
(WebCore::Document::openSearchDescriptionURL): Removed unneeded HTMLElement
check; we can call hasTagName directly on a Node and that takes care of
checking both that it's an HTMLElement and checking the tag name.
* dom/MicroDataItemList.cpp:
(WebCore::MicroDataItemList::nodeMatches): Use toHTMLElement instead of
a cast. Also changed hasAttribute calls to fastHasAttribute and getAttribute
calls to fastGetAttribute since these are neither style attributes nor SVG
animatables.
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Use toHTMLElement.
(WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Ditto.
* editing/DeleteButtonController.cpp:
(WebCore::DeleteButtonController::show): Removed unneeded toHTMLElement call.
* html/HTMLElement.cpp:
(WebCore::HTMLElement::setOuterHTML): Use toHTMLElement.
* html/HTMLElement.h: Added toHTMLElement overload to catch calls when the
pointer is already HTMLElement* or a pointer to a class derived from it.
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::recalcListItems): Use toHTMLElement.
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::innerTextElement): Use toHTMLElement.

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

11 years agoAdd WebAcceleratedContentLayer backed by a texture to support accelerated content...
commit-queue@webkit.org [Sat, 15 Oct 2011 07:44:39 +0000 (07:44 +0000)]
Add WebAcceleratedContentLayer backed by a texture to support accelerated content hosting
https://bugs.webkit.org/show_bug.cgi?id=70084

Patch by Antoine Labour <piman@chromium.org> on 2011-10-15
Reviewed by James Robinson.

Source/WebCore:

Covered by existing compositing/ tests

* platform/graphics/chromium/LayerChromium.h:
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::pluginLayerProgramFlip):
(WebCore::LayerRendererChromium::cleanupSharedObjects):
* platform/graphics/chromium/LayerRendererChromium.h:
* platform/graphics/chromium/PluginLayerChromium.cpp:
(WebCore::PluginLayerChromium::PluginLayerChromium):
(WebCore::PluginLayerChromium::setTextureId):
(WebCore::PluginLayerChromium::setFlipped):
(WebCore::PluginLayerChromium::pushPropertiesTo):
* platform/graphics/chromium/PluginLayerChromium.h:
(WebCore::PluginLayerChromium::flipped):
* platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
(WebCore::CCPluginLayerImpl::CCPluginLayerImpl):
(WebCore::CCPluginLayerImpl::draw):
* platform/graphics/chromium/cc/CCPluginLayerImpl.h:
(WebCore::CCPluginLayerImpl::setFlipped):

Source/WebKit/chromium:

* WebKit.gyp:
* public/WebExternalTextureLayer.h: Added.
(WebKit::WebExternalTextureLayer::WebExternalTextureLayer):
(WebKit::WebExternalTextureLayer::~WebExternalTextureLayer):
(WebKit::WebExternalTextureLayer::operator=):
* src/WebExternalTextureLayer.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCPluginLayerImpl.h.
(WebKit::WebExternalTextureLayer::create):
(WebKit::WebExternalTextureLayer::setTextureId):
(WebKit::WebExternalTextureLayer::textureId):
(WebKit::WebExternalTextureLayer::setFlipped):
(WebKit::WebExternalTextureLayer::flipped):
(WebKit::WebExternalTextureLayer::WebExternalTextureLayer):
(WebKit::WebExternalTextureLayer::operator=):
(WebKit::WebExternalTextureLayer::operator PassRefPtr<WebExternalTextureLayerImpl>):
* src/WebExternalTextureLayerImpl.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCPluginLayerImpl.h.
(WebKit::WebExternalTextureLayerImpl::create):
(WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayerImpl::~WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayerImpl::drawsContent):
(WebKit::WebExternalTextureLayerImpl::paintContents):
(WebKit::WebExternalTextureLayerImpl::notifySyncRequired):
* src/WebExternalTextureLayerImpl.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCPluginLayerImpl.h.

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

11 years ago[Qt][WK2] Synchronize tiling with accelerated compositing
noam.rosenthal@nokia.com [Sat, 15 Oct 2011 07:32:36 +0000 (07:32 +0000)]
[Qt][WK2] Synchronize tiling with accelerated compositing
https://bugs.webkit.org/show_bug.cgi?id=69151

Reviewed by Simon Hausmann.

Make the tiled "non-composited" content and the composited layers go through the same
code path on WebKit2. Instead of having a "drawing area" that handles the non-composited
content and a seperate layer tree, we put everything in a layer tree, with the non-
composited content being a layer in the tree.

This allows fixing several issues with websites that have large content areas that are
composited or overlap with composited layers.

Layer-tree synchronization is done by passing WebKit2 messages between a LayerTreeHost
on the WebProcess and a LayerTreeHostProxy on the UI process. Every layer in the tree has
its own tiled backing store, and uses the LayerTreeHost communication channel to pass
content up to the UI process. The UI process will later creates its own GraphicsLayer tree,
based on TextureMapper, which can be painted directly with OpenGL.

Several optimizations are available for the non-composited layer as well, e.g. specifying
a trajectory and updating the visible rect together with the content scale.

This code is currently disabled, a separate patch will enable it and glue it to
QTouchWebPage.

* DerivedSources.pro:
* Platform/CoreIPC/MessageID.h:
* Scripts/webkit2/messages.py:
* Shared/LayerTreeContext.h:
* Shared/WebLayerTreeInfo.cpp:
(WebKit::WebLayerInfo::encode):
(WebKit::WebLayerInfo::decode):
* Shared/WebLayerTreeInfo.h:
* Shared/qt/LayerTreeContextQt.cpp:
(WebKit::LayerTreeContext::LayerTreeContext):
(WebKit::LayerTreeContext::~LayerTreeContext):
(WebKit::LayerTreeContext::encode):
(WebKit::LayerTreeContext::decode):
(WebKit::LayerTreeContext::isEmpty):
(WebKit::operator==):
* UIProcess/DrawingAreaProxy.cpp:
(WebKit::DrawingAreaProxy::updateWebView):
(WebKit::DrawingAreaProxy::contentsRect):
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::viewportVisibleRect):
(WebKit::DrawingAreaProxy::isBackingStoreReady):
(WebKit::DrawingAreaProxy::paintToCurrentGLContext):
(WebKit::DrawingAreaProxy::setVisibleContentsRectAndScale):
(WebKit::DrawingAreaProxy::setVisibleContentRectTrajectoryVector):
(WebKit::DrawingAreaProxy::createTileForLayer):
(WebKit::DrawingAreaProxy::updateTileForLayer):
(WebKit::DrawingAreaProxy::removeTileForLayer):
(WebKit::DrawingAreaProxy::didReceiveLayerTreeHostProxyMessage):
(WebKit::DrawingAreaProxy::page):
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::didReceiveLayerTreeHostProxyMessage):
(WebKit::DrawingAreaProxyImpl::setVisibleContentsRectAndScale):
(WebKit::DrawingAreaProxyImpl::setVisibleContentRectTrajectoryVector):
(WebKit::DrawingAreaProxyImpl::paintToCurrentGLContext):
* UIProcess/DrawingAreaProxyImpl.h:
* UIProcess/LayerTreeHostProxy.h: Added.
(WebKit::LayerTreeHostProxy::layerByID):
(WebKit::LayerTreeHostProxy::rootLayer):
(WebKit::LayerTreeHostProxy::notifyAnimationStarted):
(WebKit::LayerTreeHostProxy::notifySyncRequired):
(WebKit::LayerTreeHostProxy::showDebugBorders):
(WebKit::LayerTreeHostProxy::showRepaintCounter):
(WebKit::LayerTreeHostProxy::paintContents):
* UIProcess/LayerTreeHostProxy.messages.in: Added.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveMessage):
* UIProcess/qt/LayerTreeHostProxyQt.cpp: Added.
* WebKit2.pro:
* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::WebGraphicsLayer):
(WebCore::WebGraphicsLayer::~WebGraphicsLayer):
(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::removeFromParent):
(WebCore::WebGraphicsLayer::setContentsNeedsDisplay):
(WebCore::WebGraphicsLayer::setContentsToImage):
(WebCore::WebGraphicsLayer::setNeedsDisplay):
(WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
(WebCore::WebGraphicsLayer::syncCompositingState):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::WebGraphicsLayer::tiledBackingStorePaintBegin):
(WebCore::WebGraphicsLayer::setContentsScale):
(WebCore::WebGraphicsLayer::setRootLayer):
(WebCore::WebGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::WebGraphicsLayer::setVisibleContentRect):
(WebCore::WebGraphicsLayer::tiledBackingStorePaint):
(WebCore::WebGraphicsLayer::tiledBackingStorePaintEnd):
(WebCore::WebGraphicsLayer::tiledBackingStoreUpdatesAllowed):
(WebCore::WebGraphicsLayer::tiledBackingStoreContentsRect):
(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::WebGraphicsLayer::tiledBackingStoreBackgroundColor):
(WebCore::WebGraphicsLayer::createTile):
(WebCore::WebGraphicsLayer::updateTile):
(WebCore::WebGraphicsLayer::removeTile):
(WebCore::WebGraphicsLayer::updateTileBuffersRecursively):
(WebCore::WebGraphicsLayer::layerTreeTileClient):
(WebCore::WebGraphicsLayer::updateContentBuffers):
* WebProcess/WebCoreSupport/WebGraphicsLayer.h:
(WebCore::WebGraphicsLayer::setLayerTreeTileClient):
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::didReceiveLayerTreeHostMessage):
* WebProcess/WebPage/DrawingAreaImpl.h:
* WebProcess/WebPage/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::create):
* WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setVisibleContentRectAndScale):
(WebKit::LayerTreeHost::setVisibleContentRectTrajectoryVector):
(WebKit::LayerTreeHost::setVisibleContentRectForLayer):
(WebKit::LayerTreeHost::renderNextFrame):
* WebProcess/WebPage/LayerTreeHost.messages.in: Added.
* WebProcess/WebPage/TiledDrawingArea.cpp:
(WebKit::TiledDrawingArea::didReceiveLayerTreeHostMessage):
* WebProcess/WebPage/TiledDrawingArea.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didReceiveMessage):
* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
(WebKit::LayerTreeHostQt::create):
(WebKit::LayerTreeHostQt::~LayerTreeHostQt):
(WebKit::LayerTreeHostQt::LayerTreeHostQt):
(WebKit::LayerTreeHostQt::setLayerFlushSchedulingEnabled):
(WebKit::LayerTreeHostQt::scheduleLayerFlush):
(WebKit::LayerTreeHostQt::cancelPendingLayerFlush):
(WebKit::LayerTreeHostQt::setShouldNotifyAfterNextScheduledLayerFlush):
(WebKit::LayerTreeHostQt::setRootCompositingLayer):
(WebKit::LayerTreeHostQt::invalidate):
(WebKit::LayerTreeHostQt::setNonCompositedContentsNeedDisplay):
(WebKit::LayerTreeHostQt::scrollNonCompositedContents):
(WebKit::LayerTreeHostQt::forceRepaint):
(WebKit::LayerTreeHostQt::sizeDidChange):
(WebKit::LayerTreeHostQt::didInstallPageOverlay):
(WebKit::LayerTreeHostQt::didUninstallPageOverlay):
(WebKit::LayerTreeHostQt::setPageOverlayNeedsDisplay):
(WebKit::LayerTreeHostQt::flushPendingLayerChanges):
(WebKit::LayerTreeHostQt::didSyncCompositingStateForLayer):
(WebKit::LayerTreeHostQt::didDeleteLayer):
(WebKit::LayerTreeHostQt::performScheduledLayerFlush):
(WebKit::LayerTreeHostQt::layerFlushTimerFired):
(WebKit::LayerTreeHostQt::createPageOverlayLayer):
(WebKit::LayerTreeHostQt::destroyPageOverlayLayer):
(WebKit::LayerTreeHostQt::adoptImageBackingStore):
(WebKit::LayerTreeHostQt::releaseImageBackingStore):
(WebKit::LayerTreeHostQt::notifyAnimationStarted):
(WebKit::LayerTreeHostQt::notifySyncRequired):
(WebKit::LayerTreeHostQt::paintContents):
(WebKit::LayerTreeHostQt::showDebugBorders):
(WebKit::LayerTreeHostQt::showRepaintCounter):
(WebKit::LayerTreeHost::supportsAcceleratedCompositing):
(WebKit::LayerTreeHostQt::createTile):
(WebKit::LayerTreeHostQt::updateTile):
(WebKit::LayerTreeHostQt::removeTile):
(WebKit::LayerTreeHostQt::setVisibleContentRectForLayer):
(WebKit::LayerTreeHostQt::setVisibleContentRectAndScale):
(WebKit::LayerTreeHostQt::setVisibleContentRectTrajectoryVector):
(WebKit::LayerTreeHostQt::renderNextFrame):
(WebKit::LayerTreeHostQt::layerTreeTileUpdatesAllowed):

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

11 years agofix another typo in treemap.html
tony@chromium.org [Sat, 15 Oct 2011 07:28:51 +0000 (07:28 +0000)]
fix another typo in treemap.html
https://bugs.webkit.org/show_bug.cgi?id=70149

Reviewed by Ojan Vafai.

Fixes a bug where #treemapfocus=LayoutTests%2Fhttp didn't focus the http tests.

* TestResultServer/static-dashboards/treemap.html:

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

11 years agoIndexedDB: some string keys not properly stored and retrieved
commit-queue@webkit.org [Sat, 15 Oct 2011 07:19:16 +0000 (07:19 +0000)]
IndexedDB: some string keys not properly stored and retrieved
https://bugs.webkit.org/show_bug.cgi?id=62348

Patch by Joshua Bell <jsbell@chromium.org> on 2011-10-15
Reviewed by Tony Chang.

Just adding Mark Pilgrim's test case from bug; this was fixed at some
point, presumably when we moved to LevelDB.

* storage/indexeddb/odd-strings-expected.txt: Added.
* storage/indexeddb/odd-strings.html: Added.

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

11 years ago[Chromium] Some WebSQLDatabase in worker bug fixes.
michaeln@google.com [Sat, 15 Oct 2011 07:16:21 +0000 (07:16 +0000)]
[Chromium] Some WebSQLDatabase in worker bug fixes.
https://bugs.webkit.org/show_bug.cgi?id=70071

- Test for a NULL webView WebWorkerClientImpl.
- Avoid altering Database instance lifetimes during WorkerThread::stop().

Source/WebCore:

Existing tests coverage applies.

Reviewed by David Levin.

* storage/chromium/DatabaseTrackerChromium.cpp:
(WebCore::DatabaseTracker::interruptAllDatabasesForContext):

Source/WebKit/chromium:

Reviewed by David Levin.

* src/WebWorkerClientImpl.cpp:
(WebKit::WebWorkerClientImpl::allowFileSystem):
(WebKit::WebWorkerClientImpl::allowDatabase):

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

11 years ago[FileSystem API] File readonly attributes test
commit-queue@webkit.org [Sat, 15 Oct 2011 07:08:39 +0000 (07:08 +0000)]
[FileSystem API] File readonly attributes test
https://bugs.webkit.org/show_bug.cgi?id=69687

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2011-10-15
Reviewed by Adam Barth.

* fast/filesystem/simple-readonly-file-object-expected.txt: Added.
* fast/filesystem/simple-readonly-file-object.html: Added.

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

11 years ago[File API] URL methods required arguments
commit-queue@webkit.org [Sat, 15 Oct 2011 07:03:43 +0000 (07:03 +0000)]
[File API] URL methods required arguments
https://bugs.webkit.org/show_bug.cgi?id=69692

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2011-10-15
Reviewed by Adam Barth.

* fast/files/url-required-arguments-expected.txt: Added.
* fast/files/url-required-arguments.html: Added.

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

11 years ago[File API] Test how FileReader substitutes illegal UTF-8 characters
commit-queue@webkit.org [Sat, 15 Oct 2011 07:02:11 +0000 (07:02 +0000)]
[File API] Test how FileReader substitutes illegal UTF-8 characters
https://bugs.webkit.org/show_bug.cgi?id=69691

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2011-10-14
Reviewed by Adam Barth.

* fast/files/file-reader-fffd-expected.txt: Added.
* fast/files/file-reader-fffd.html: Added.

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

11 years ago[FileSystem API] readonly attributes test
commit-queue@webkit.org [Sat, 15 Oct 2011 06:52:49 +0000 (06:52 +0000)]
[FileSystem API] readonly attributes test
https://bugs.webkit.org/show_bug.cgi?id=69655

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2011-10-14
Reviewed by Adam Barth.

* fast/filesystem/resources/simple-readonly.js: Added.
(setReadonlyProperty):
(errorCallback):
(getFileCallback):
(successCallback):
* fast/filesystem/simple-readonly-expected.txt: Added.
* fast/filesystem/simple-readonly.html: Added.

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

11 years ago[FileSystem API] restricted Unicode characters in names
commit-queue@webkit.org [Sat, 15 Oct 2011 06:51:25 +0000 (06:51 +0000)]
[FileSystem API] restricted Unicode characters in names
https://bugs.webkit.org/show_bug.cgi?id=69657

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2011-10-14
Reviewed by Adam Barth.

* fast/filesystem/op-restricted-unicode-expected.txt: Added.
* fast/filesystem/op-restricted-unicode.html: Added.
* fast/filesystem/resources/op-restricted-unicode.js: Added.
(testCases.name.precondition.tests):
(testCases):

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

11 years agoUpdate expected results.
abarth@webkit.org [Sat, 15 Oct 2011 06:26:31 +0000 (06:26 +0000)]
Update expected results.

* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjInternal::serializedValueCallback):

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

11 years agoGTK build fix after r97533.
rniwa@webkit.org [Sat, 15 Oct 2011 05:45:09 +0000 (05:45 +0000)]
GTK build fix after r97533.

* accessibility/gtk/AXObjectCacheAtk.cpp:
(WebCore::notifyChildrenSelectionChange):
* accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
(optionFromSelection):
(webkit_accessible_selection_get_selection_count):

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

11 years ago<http://webkit.org/b/70158> Fix clang compiler warnings
ddkilzer@apple.com [Sat, 15 Oct 2011 04:37:31 +0000 (04:37 +0000)]
<webkit.org/b/70158> Fix clang compiler warnings

Reviewed by Darin Adler.

Source/WebCore:

* dom/ViewportArguments.cpp:
(WebCore::computeViewportAttributes): Use std::max<float>()
instead of std::max().

Source/WebKit/mac:

The following two methods in WebDelegateImplementationCaching.h
are ambiguous in WebChromeClient::runJavaScriptPrompt() because
the compiler can't decide how to convert the WTF::String
defaultText argument:

    id CallUIDelegate(WebView *, SEL, id, id);
    id CallUIDelegate(WebView *, SEL, id, BOOL);

The fix is to perform the conversion explicitly.

* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::runJavaScriptPrompt): Extract a defaultString
variable to convert the WTF::String to an NSString*, then
use defaultString in place of defaultText.

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

11 years agoRename getOwnPropertySlot to getOwnPropertySlotVirtual
mhahnenberg@apple.com [Sat, 15 Oct 2011 02:00:23 +0000 (02:00 +0000)]
Rename getOwnPropertySlot to getOwnPropertySlotVirtual
https://bugs.webkit.org/show_bug.cgi?id=69810

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Renamed the virtual version of getOwnPropertySlot to getOwnPropertySlotVirtual
in preparation for when we add the static getOwnPropertySlot to the MethodTable
in ClassInfo.

Also added a few static getOwnPropertySlot functions where they had been overlooked
before (especially in CodeGeneratorJS.pm).

* API/JSCallbackObject.h:
* API/JSCallbackObjectFunctions.h:
(JSC::::getOwnPropertySlotVirtual):
(JSC::::getOwnPropertySlot):
(JSC::::getOwnPropertyDescriptor):
(JSC::::staticFunctionGetter):
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* debugger/DebuggerActivation.cpp:
(JSC::DebuggerActivation::getOwnPropertySlotVirtual):
(JSC::DebuggerActivation::getOwnPropertySlot):
* debugger/DebuggerActivation.h:
* runtime/Arguments.cpp:
(JSC::Arguments::getOwnPropertySlotVirtual):
(JSC::Arguments::getOwnPropertySlot):
* runtime/Arguments.h:
* runtime/ArrayConstructor.cpp:
(JSC::ArrayConstructor::getOwnPropertySlotVirtual):
(JSC::ArrayConstructor::getOwnPropertySlot):
* runtime/ArrayConstructor.h:
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::getOwnPropertySlotVirtual):
* runtime/ArrayPrototype.h:
* runtime/BooleanPrototype.cpp:
(JSC::BooleanPrototype::getOwnPropertySlotVirtual):
* runtime/BooleanPrototype.h:
* runtime/DateConstructor.cpp:
(JSC::DateConstructor::getOwnPropertySlotVirtual):
* runtime/DateConstructor.h:
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::getOwnPropertySlotVirtual):
* runtime/DatePrototype.h:
* runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::getOwnPropertySlotVirtual):
* runtime/ErrorPrototype.h:
* runtime/JSActivation.cpp:
(JSC::JSActivation::getOwnPropertySlotVirtual):
* runtime/JSActivation.h:
* runtime/JSArray.cpp:
(JSC::JSArray::getOwnPropertySlotVirtual):
(JSC::JSArray::getOwnPropertySlot):
* runtime/JSArray.h:
* runtime/JSBoundFunction.cpp:
(JSC::JSBoundFunction::getOwnPropertySlotVirtual):
* runtime/JSBoundFunction.h:
* runtime/JSByteArray.cpp:
(JSC::JSByteArray::getOwnPropertySlotVirtual):
* runtime/JSByteArray.h:
* runtime/JSCell.cpp:
(JSC::JSCell::getOwnPropertySlotVirtual):
* runtime/JSCell.h:
* runtime/JSFunction.cpp:
(JSC::JSFunction::getOwnPropertySlotVirtual):
(JSC::JSFunction::getOwnPropertyDescriptor):
(JSC::JSFunction::getOwnPropertyNames):
(JSC::JSFunction::put):
* runtime/JSFunction.h:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::getOwnPropertySlotVirtual):
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::hasOwnPropertyForWrite):
* runtime/JSNotAnObject.cpp:
(JSC::JSNotAnObject::getOwnPropertySlotVirtual):
* runtime/JSNotAnObject.h:
* runtime/JSONObject.cpp:
(JSC::Stringifier::Holder::appendNextProperty):
(JSC::JSONObject::getOwnPropertySlotVirtual):
(JSC::Walker::walk):
* runtime/JSONObject.h:
* runtime/JSObject.cpp:
(JSC::JSObject::getOwnPropertySlotVirtual):
(JSC::JSObject::getOwnPropertySlot):
(JSC::JSObject::hasOwnProperty):
* runtime/JSObject.h:
(JSC::JSObject::getOwnPropertySlotVirtual):
(JSC::JSCell::fastGetOwnPropertySlot):
(JSC::JSObject::getPropertySlot):
(JSC::JSValue::get):
* runtime/JSStaticScopeObject.cpp:
(JSC::JSStaticScopeObject::getOwnPropertySlotVirtual):
* runtime/JSStaticScopeObject.h:
* runtime/JSString.cpp:
(JSC::JSString::getOwnPropertySlotVirtual):
(JSC::JSString::getOwnPropertySlot):
* runtime/JSString.h:
* runtime/Lookup.h:
(JSC::getStaticPropertySlot):
(JSC::getStaticFunctionSlot):
(JSC::getStaticValueSlot):
* runtime/MathObject.cpp:
(JSC::MathObject::getOwnPropertySlotVirtual):
* runtime/MathObject.h:
* runtime/NumberConstructor.cpp:
(JSC::NumberConstructor::getOwnPropertySlotVirtual):
* runtime/NumberConstructor.h:
* runtime/NumberPrototype.cpp:
(JSC::NumberPrototype::getOwnPropertySlotVirtual):
* runtime/NumberPrototype.h:
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::getOwnPropertySlotVirtual):
* runtime/ObjectConstructor.h:
* runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::getOwnPropertySlotVirtual):
* runtime/ObjectPrototype.h:
* runtime/RegExpConstructor.cpp:
(JSC::RegExpConstructor::getOwnPropertySlotVirtual):
* runtime/RegExpConstructor.h:
* runtime/RegExpMatchesArray.h:
(JSC::RegExpMatchesArray::getOwnPropertySlotVirtual):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::getOwnPropertySlotVirtual):
* runtime/RegExpObject.h:
* runtime/RegExpPrototype.cpp:
(JSC::RegExpPrototype::getOwnPropertySlotVirtual):
* runtime/RegExpPrototype.h:
* runtime/StringConstructor.cpp:
(JSC::StringConstructor::getOwnPropertySlotVirtual):
* runtime/StringConstructor.h:
* runtime/StringObject.cpp:
(JSC::StringObject::getOwnPropertySlotVirtual):
* runtime/StringObject.h:
* runtime/StringPrototype.cpp:
(JSC::StringPrototype::getOwnPropertySlotVirtual):
* runtime/StringPrototype.h:

Source/JavaScriptGlue:

Renamed the virtual version of getOwnPropertySlot to getOwnPropertySlotVirtual
in preparation for when we add the static getOwnPropertySlot to the MethodTable
in ClassInfo.

Also added a few static getOwnPropertySlot functions where they had been overlooked
before (especially in CodeGeneratorJS.pm).

* UserObjectImp.cpp:
(UserObjectImp::getOwnPropertySlotVirtual):
* UserObjectImp.h:

Source/WebCore:

No new tests.

Renamed the virtual version of getOwnPropertySlot to getOwnPropertySlotVirtual
in preparation for when we add the static getOwnPropertySlot to the MethodTable
in ClassInfo.

Also added a few static getOwnPropertySlot functions where they had been overlooked
before (especially in CodeGeneratorJS.pm).

* WebCore.exp.in:
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlotVirtual):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::DialogHandler::returnValue):
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::getOwnPropertySlotVirtual):
(WebCore::JSDOMWindowShell::getOwnPropertySlot):
* bindings/js/JSDOMWindowShell.h:
* bindings/js/JSWorkerContextCustom.cpp:
(WebCore::JSWorkerContext::getOwnPropertySlotDelegate):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::getSparseIndex):
(WebCore::CloneSerializer::getProperty):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateHeader):
(GenerateImplementation):
(GenerateConstructorDeclaration):
(GenerateConstructorDefinition):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterfaceConstructor::getOwnPropertySlotVirtual):
(WebCore::JSTestInterfaceConstructor::getOwnPropertySlot):
(WebCore::JSTestInterface::getOwnPropertySlotVirtual):
(WebCore::JSTestInterface::getOwnPropertySlot):
* bindings/scripts/test/JS/JSTestInterface.h:
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertySlotVirtual):
(WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertySlot):
(WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlotVirtual):
(WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlot):
(WebCore::JSTestMediaQueryListListener::getOwnPropertySlotVirtual):
(WebCore::JSTestMediaQueryListListener::getOwnPropertySlot):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObjConstructor::getOwnPropertySlotVirtual):
(WebCore::JSTestObjConstructor::getOwnPropertySlot):
(WebCore::JSTestObjPrototype::getOwnPropertySlotVirtual):
(WebCore::JSTestObjPrototype::getOwnPropertySlot):
(WebCore::JSTestObj::getOwnPropertySlotVirtual):
(WebCore::JSTestObj::getOwnPropertySlot):
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlotVirtual):
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlot):
(WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlotVirtual):
(WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
* bridge/objc/objc_runtime.h:
* bridge/objc/objc_runtime.mm:
(JSC::Bindings::ObjcFallbackObjectImp::getOwnPropertySlotVirtual):
* bridge/qt/qt_instance.cpp:
(JSC::Bindings::QtInstance::getOwnPropertySlot):
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtRuntimeMetaMethod::getOwnPropertySlotVirtual):
(JSC::Bindings::QtRuntimeConnectionMethod::getOwnPropertySlotVirtual):
* bridge/qt/qt_runtime.h:
* bridge/runtime_array.cpp:
(JSC::RuntimeArray::getOwnPropertySlotVirtual):
* bridge/runtime_array.h:
* bridge/runtime_method.cpp:
(JSC::RuntimeMethod::getOwnPropertySlotVirtual):
* bridge/runtime_method.h:
* bridge/runtime_object.cpp:
(JSC::Bindings::RuntimeObject::getOwnPropertySlotVirtual):
* bridge/runtime_object.h:

Source/WebKit2:

Renamed the virtual version of getOwnPropertySlot to getOwnPropertySlotVirtual
in preparation for when we add the static getOwnPropertySlot to the MethodTable
in ClassInfo.

Also added a few static getOwnPropertySlot functions where they had been overlooked
before (especially in CodeGeneratorJS.pm).

* WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::getOwnPropertySlotVirtual):
* WebProcess/Plugins/Netscape/JSNPObject.h:

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

11 years agoMost built-in properties are not deletable
barraclough@apple.com [Sat, 15 Oct 2011 01:25:53 +0000 (01:25 +0000)]
Most built-in properties are not deletable
https://bugs.webkit.org/show_bug.cgi?id=61014

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Our static hash tables don't allow for deleting properties.
This is the cause of a bunch of expected failures in LayoutTests/sputnik.

This fixes the problem by reifying all static functions immediately prior
to the first deletion.  Reification is tracked by a flag on the structure,
so properties will no longer 'bounce-back' on later access.

Theoretically there could probably also be an issue with custom accessor
properties, but we probably do not really require any of these to be
Configurable anyway. I'll follow up with a separate patch to address this.

* runtime/ClassInfo.h:
(JSC::ClassInfo::hasStaticProperties):
    - detects static property tables.
* runtime/JSObject.cpp:
(JSC::JSObject::deleteProperty):
    - call reifyStaticFunctions before deletion.
(JSC::JSObject::reifyStaticFunctions):
    - If the class has static functions, set them up now.
* runtime/JSObject.h:
(JSC::JSObject::staticFunctionsReified):
    - returns true if static functions have been reified,
      and as such should no longer be added.
* runtime/Lookup.cpp:
(JSC::setUpStaticFunctionSlot):
    - If static functions have been reified do not add.
* runtime/Lookup.h:
(JSC::HashTable::ConstIterator::ConstIterator):
(JSC::HashTable::ConstIterator::operator->):
(JSC::HashTable::ConstIterator::operator*):
(JSC::HashTable::ConstIterator::operator!=):
(JSC::HashTable::ConstIterator::operator++):
(JSC::HashTable::ConstIterator::skipInvalidKeys):
(JSC::HashTable::begin):
(JSC::HashTable::end):
(JSC::getStaticPropertySlot):
(JSC::getStaticPropertyDescriptor):
(JSC::getStaticFunctionSlot):
(JSC::getStaticFunctionDescriptor):
    - setUpStaticFunctionSlot may not add, returns a bool.
(JSC::lookupPut):
    - remove redundant branch.
* runtime/Structure.cpp:
(JSC::Structure::Structure):
    - initialize new flag in constructors.
* runtime/Structure.h:
(JSC::Structure::staticFunctionsReified):
(JSC::Structure::setStaticFunctionsReified):
    - added flag

LayoutTests:

Mostly checking in passing results, added a couple of extra test cases to fast/js/delete-syntax.

* fast/js/delete-syntax-expected.txt:
* fast/js/script-tests/delete-syntax.js:
* ietestcenter/Javascript/11.4.1-4.a-10-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/S15.4.4_A1.1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/S15.5.4.1_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/S15.5.4_A1-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/S15.5.4_A3-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.6_Boolean/15.6.2/S15.6.2.1_A4-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.6_Boolean/15.6.3/15.6.3.1_Boolean.prototype/S15.6.3.1_A1-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.6_Boolean/15.6.4/S15.6.4_A1-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.7_Number/15.7.2/S15.7.2.1_A4-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.7_Number/15.7.3/15.7.3.1_Number.prototype/S15.7.3.1_A2_T1-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.7_Number/15.7.4/S15.7.4_A1-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.4/15.9.4.2_Date.parse/S15.9.4.2_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.4/15.9.4.3_Date.UTC/S15.9.4.3_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.10_Date.prototype.getFullYear/S15.9.5.10_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.11_Date.prototype.getUTCFullYear/S15.9.5.11_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.12_Date.prototype.getMonth/S15.9.5.12_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.13_Date.prototype.getUTCMonth/S15.9.5.13_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.14_Date.prototype.getDate/S15.9.5.14_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.15_Date.prototype.getUTCDate/S15.9.5.15_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.16_Date.prototype.getDay/S15.9.5.16_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.17_Date.prototype.getUTCDay/S15.9.5.17_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.18_Date.prototype.getHours/S15.9.5.18_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.19_Date.prototype.getUTCHours/S15.9.5.19_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.20_Date.prototype.getMinutes/S15.9.5.20_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.21_Date.prototype.getUTCMinutes/S15.9.5.21_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.22_Date.prototype.getSeconds/S15.9.5.22_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.23_Date.prototype.getUTCSeconds/S15.9.5.23_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.24_Date.prototype.getMilliseconds/S15.9.5.24_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.25_Date.prototype.getUTCMilliseconds/S15.9.5.25_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.26_Date.prototype.getTimezoneOffset/S15.9.5.26_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.27_Date.prototype.setTime/S15.9.5.27_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.28_Date.prototype.setMilliseconds/S15.9.5.28_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.29_Date.prototype.setUTCMilliseconds/S15.9.5.29_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.2_Date.prototype.toString/S15.9.5.2_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.30_Date.prototype.setSeconds/S15.9.5.30_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.31_Date.prototype.setUTCSeconds/S15.9.5.31_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.32_Date.prototype.setMinutes/S15.9.5.32_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.33_Date.prototype.setUTCMinutes/S15.9.5.33_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.34_Date.prototype.setHours/S15.9.5.34_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.35_Date.prototype.setUTCHours/S15.9.5.35_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.36_Date.prototype.setDate/S15.9.5.36_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.37_Date.prototype.setUTCDate/S15.9.5.37_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.38_Date.prototype.setMonth/S15.9.5.38_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.39_Date.prototype.setUTCMonth/S15.9.5.39_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.3_Date.prototype.toDateString/S15.9.5.3_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.40_Date.prototype.setFullYear/S15.9.5.40_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.41_Date.prototype.setUTCFullYear/S15.9.5.41_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.42_Date.prototype.toUTCString/S15.9.5.42_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.4_Date.prototype.toTimeString/S15.9.5.4_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.5_Date.prototype.toLocaleString/S15.9.5.5_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.6_Date.prototype.toLocaleDateString/S15.9.5.6_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.7_Date.prototype.toLocaleTimeString/S15.9.5.7_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.8_Date.prototype.valueOf/S15.9.5.8_A1_T2-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.9_Date.prototype.getTime/S15.9.5.9_A1_T2-expected.txt:

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

11 years ago Try to fix Chromium build.
darin@apple.com [Sat, 15 Oct 2011 00:53:06 +0000 (00:53 +0000)]
   Try to fix Chromium build.

* tests/PopupMenuTest.cpp:
(WebKit::TestPopupMenuClient::valueChanged):
Use toHTMLSelectElement instead of toSelectElement.

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

11 years agoWindows build fix attempt after r97533.
rniwa@webkit.org [Sat, 15 Oct 2011 00:48:01 +0000 (00:48 +0000)]
Windows build fix attempt after r97533.

* html/HTMLSelectElementWin.cpp:
(WebCore::HTMLSelectElement::platformHandleKeydownEvent):

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

11 years agoFollow up the recent HTMLSelectElement improvements with a little bit more
darin@apple.com [Sat, 15 Oct 2011 00:30:43 +0000 (00:30 +0000)]
Follow up the recent HTMLSelectElement improvements with a little bit more
https://bugs.webkit.org/show_bug.cgi?id=70139

Reviewed by Ryosuke Niwa.

Refactoring, covered by existing tests.

Mostly, this adds a toHTMLSelectElement and uses it wherever possible.

* accessibility/AccessibilityListBox.cpp:
(WebCore::AccessibilityListBox::canSetSelectedChildrenAttribute): Use toHTMLSelectElement.
(WebCore::AccessibilityListBox::addChildren): Ditto. Also removed unneeded toHTMLElement.
* accessibility/AccessibilityMenuListPopup.cpp:
(WebCore::AccessibilityMenuListPopup::addChildren): Ditto.
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isMultiSelectable): Ditto.
(WebCore::AccessibilityRenderObject::stringValue): Removed checks on the type of the
underlying node, since other code already assumes that a menu list renderer is only
created for a select element. Streamlined the code a bit and removed some unneeded
local variables.
* bindings/js/JSHTMLOptionsCollectionCustom.cpp:
(WebCore::JSHTMLOptionsCollection::indexSetter): Use toHTMLSelectElement.
* bindings/js/JSHTMLSelectElementCustom.cpp:
(WebCore::JSHTMLSelectElement::remove): Ditto.
(WebCore::JSHTMLSelectElement::indexSetter): Ditto.
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::selectAll): Ditto.
* html/HTMLKeygenElement.cpp:
(WebCore::HTMLKeygenElement::shadowSelect): Ditto.
* html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::recalcSelectOptions): Ditto.
(WebCore::HTMLOptGroupElement::ownerSelectElement): Ditto.
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::selected): Changed code to call renamed
updateListItemSelectedStates rather than the confusing old name
recalcListItemsIfNeeded.
(WebCore::HTMLOptionElement::childrenChanged): Changed to call
optionElementChildrenChanged rather than calling childrenChanged,
because the children of the select element did not change!
(WebCore::HTMLOptionElement::ownerSelectElement): Use toHTMLSelectElement.
* html/HTMLOptionsCollection.cpp:
(WebCore::HTMLOptionsCollection::add): Use toHTMLSelectElement.
(WebCore::HTMLOptionsCollection::remove): Use toHTMLSelectElement.
(WebCore::HTMLOptionsCollection::selectedIndex): Use toHTMLSelectElement.
(WebCore::HTMLOptionsCollection::setSelectedIndex): Use toHTMLSelectElement.
(WebCore::HTMLOptionsCollection::setLength): Use toHTMLSelectElement.
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::setSelectedIndexByUser): Call setSelectedIndex
without the now-unneeded internal suffix.
(WebCore::HTMLSelectElement::parseMappedAttribute): When the code says that
we should "determine selectedness of the items", call updateListItemSelectedStates
rather than the confusingly named recalcListItemsIfNeeded.
(WebCore::HTMLSelectElement::updateListItemSelectedStates): Renamed
recalcListItemsIfNeeded to this, since that's what this function is for.
(WebCore::HTMLSelectElement::optionElementChildrenChanged): Added. Does
the same work as childrenChanged, although it does not call up to the
base class childrenChanged function. Later we might find we can remove
some of the work here, for example it's not clear we should call the
accessibility childrenChanged function.
(WebCore::HTMLSelectElement::nextValidIndex): Changed this to a member function
and made it get the list items itself rather than requiring they be passed in.
(WebCore::HTMLSelectElement::nextSelectableListIndex): Updated for change to
nextValidIndex.
(WebCore::HTMLSelectElement::previousSelectableListIndex): Ditto.
(WebCore::HTMLSelectElement::firstSelectableListIndex): Ditto.
(WebCore::HTMLSelectElement::lastSelectableListIndex): Ditto.
(WebCore::HTMLSelectElement::nextSelectableListIndexPageAway): Ditto.
(WebCore::HTMLSelectElement::listItems): Removed unneeded const_cast, since
recalcListItems is now a const member function. Call recalcListItems by that
name instead of recalcListItemsInternal.
(WebCore::HTMLSelectElement::recalcListItems): Renamed from recalcListItemsInternal
and made this a const member function. The data members that this needs to modify
are now mutable.
(WebCore::HTMLSelectElement::setSelectedIndex): Renamed from setSelectedIndexInternal.
Changed call to updateValidity to instead call setNeedsValidityCheck, since both
do the same thing.
(WebCore::HTMLSelectElement::parseMultipleAttribute): Ditto.
(WebCore::HTMLSelectElement::menuListDefaultEventHandler): Updated for change to
nextValidIndex, removed unneeded comparison with zero that's already handled by
casting to an unsigned type, and use setSelectedIndex instead of using
setSelectedIndexInternal since they are both the same thing.
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Removed another unneeded
comparision with zero that's handled by casting to an unsigned type.
(WebCore::HTMLSelectElement::lastSelectedListIndex): Use size_t instead of unsigned
for a vector index.
(WebCore::HTMLSelectElement::typeAheadFind): Use setSelectedIndex instead of
setSelectedIndexInternal.
(WebCore::HTMLSelectElement::insertedIntoTree): Removed unneeded explicit boolean
when calling a function that already has a default value of true.
(WebCore::HTMLSelectElement::accessKeySetSelectedIndex): Use setSelectedIndex
instead of setSelectedIndexInternal.

* html/HTMLSelectElement.h: Made childrenChanged private. Added
optionElementChildrenChanged. Renamed recalcListItemsIfNeeded to the clearer
updateListItemSelectedStates. Removed unused listBoxSelectItem. Removed
updateValidity after changing all callers to instead call setNeedsValidityCheck.
Made canSelectAll and selectAll non-virtual. Removed recalcListItemsInternal
since it's the same thing as recalcListItems now. Renamed setSelectedIndexInternal
to setSelectedIndex since it's the same function, just with a few arguments we
don't want to allow outside callers to pass. Changed nextValidIndex into a
non-static member function. Made m_listItems and m_shouldRecalcListItems mutable.
Added a toHTMLSelectElement function, modeled on the toElement function.

* html/ValidityState.cpp:
(WebCore::ValidityState::valueMissing): Use toHTMLSelectElement.
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::updateFromElement): Ditto.
(WebCore::RenderListBox::scrollToRevealSelection): Ditto.
(WebCore::RenderListBox::size): Ditto.
(WebCore::RenderListBox::numItems): Ditto.
(WebCore::RenderListBox::addFocusRingRects): Ditto.
(WebCore::RenderListBox::paintItemForeground): Ditto.
(WebCore::RenderListBox::paintItemBackground): Ditto.
(WebCore::RenderListBox::panScroll): Ditto.
(WebCore::RenderListBox::autoscroll): Ditto.
(WebCore::RenderListBox::stopAutoscroll): Ditto.
(WebCore::RenderListBox::valueChanged): Ditto.
(WebCore::RenderListBox::nodeAtPoint): Ditto.
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::updateOptionsWidth): Ditto.
(WebCore::RenderMenuList::updateFromElement): Ditto.
(WebCore::RenderMenuList::setTextFromOption): Ditto.
(WebCore::RenderMenuList::showPopup): Ditto.
(WebCore::RenderMenuList::valueChanged): Ditto.
(WebCore::RenderMenuList::listBoxSelectItem): Ditto.
(WebCore::RenderMenuList::multiple): Ditto.
(WebCore::RenderMenuList::didSetSelectedIndex): Ditto.
(WebCore::RenderMenuList::didUpdateActiveOption): Ditto.
(WebCore::RenderMenuList::itemText): Ditto.
(WebCore::RenderMenuList::itemAccessibilityText): Ditto.
(WebCore::RenderMenuList::itemToolTip): Ditto.
(WebCore::RenderMenuList::itemIsEnabled): Ditto. Also use the
disabled function instead of the virtual isEnabledFormControl
function to check if the optgroup is enabled.
(WebCore::RenderMenuList::itemStyle): Ditto.
(WebCore::RenderMenuList::itemBackgroundColor): Ditto.
(WebCore::RenderMenuList::listSize): Ditto.
(WebCore::RenderMenuList::selectedIndex): Ditto.
(WebCore::RenderMenuList::itemIsSeparator): Ditto.
(WebCore::RenderMenuList::itemIsLabel): Ditto.
(WebCore::RenderMenuList::itemIsSelected): Ditto.
(WebCore::RenderMenuList::setTextFromItem): Ditto.

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

11 years agoRename virtual put to putVirtual
mhahnenberg@apple.com [Sat, 15 Oct 2011 00:04:53 +0000 (00:04 +0000)]
Rename virtual put to putVirtual
https://bugs.webkit.org/show_bug.cgi?id=69851

Reviewed by Darin Adler.

.:

Renamed virtual versions of put to putVirtual in prepration for
adding the static put to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same
name.

* Source/autotools/symbols.filter:

Source/JavaScriptCore:

Renamed virtual versions of put to putVirtual in prepration for
adding the static put to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same
name.

* API/JSCallbackObject.h:
* API/JSCallbackObjectFunctions.h:
(JSC::::putVirtual):
* API/JSObjectRef.cpp:
(JSObjectSetProperty):
(JSObjectSetPropertyAtIndex):
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* debugger/DebuggerActivation.cpp:
(JSC::DebuggerActivation::putVirtual):
(JSC::DebuggerActivation::put):
* debugger/DebuggerActivation.h:
* dfg/DFGOperations.cpp:
(JSC::DFG::putByVal):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::execute):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* jsc.cpp:
(GlobalObject::finishCreation):
* runtime/Arguments.cpp:
(JSC::Arguments::putVirtual):
* runtime/Arguments.h:
* runtime/ArrayPrototype.cpp:
(JSC::putProperty):
(JSC::arrayProtoFuncConcat):
(JSC::arrayProtoFuncPush):
(JSC::arrayProtoFuncReverse):
(JSC::arrayProtoFuncShift):
(JSC::arrayProtoFuncSlice):
(JSC::arrayProtoFuncSort):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncMap):
* runtime/JSActivation.cpp:
(JSC::JSActivation::putVirtual):
* runtime/JSActivation.h:
* runtime/JSArray.cpp:
(JSC::JSArray::putVirtual):
(JSC::JSArray::putSlowCase):
(JSC::JSArray::push):
(JSC::JSArray::shiftCount):
(JSC::JSArray::unshiftCount):
* runtime/JSArray.h:
* runtime/JSByteArray.cpp:
(JSC::JSByteArray::putVirtual):
* runtime/JSByteArray.h:
* runtime/JSCell.cpp:
(JSC::JSCell::putVirtual):
(JSC::JSCell::put):
* runtime/JSCell.h:
* runtime/JSFunction.cpp:
(JSC::JSFunction::putVirtual):
* runtime/JSFunction.h:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::putVirtual):
(JSC::JSGlobalObject::putWithAttributes):
* runtime/JSGlobalObject.h:
* runtime/JSNotAnObject.cpp:
(JSC::JSNotAnObject::putVirtual):
* runtime/JSNotAnObject.h:
* runtime/JSONObject.cpp:
(JSC::Walker::walk):
* runtime/JSObject.cpp:
(JSC::JSObject::putVirtual):
(JSC::JSObject::put):
(JSC::JSObject::defineOwnProperty):
* runtime/JSObject.h:
(JSC::JSValue::put):
* runtime/JSStaticScopeObject.cpp:
(JSC::JSStaticScopeObject::putVirtual):
* runtime/JSStaticScopeObject.h:
* runtime/Lookup.h:
(JSC::lookupPut):
* runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::putVirtual):
* runtime/ObjectPrototype.h:
* runtime/RegExpConstructor.cpp:
(JSC::RegExpMatchesArray::fillArrayInstance):
(JSC::RegExpConstructor::putVirtual):
* runtime/RegExpConstructor.h:
* runtime/RegExpMatchesArray.h:
(JSC::RegExpMatchesArray::putVirtual):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::putVirtual):
* runtime/RegExpObject.h:
* runtime/StringObject.cpp:
(JSC::StringObject::putVirtual):
* runtime/StringObject.h:
* runtime/StringPrototype.cpp:
(JSC::stringProtoFuncSplit):

Source/JavaScriptGlue:

Renamed virtual versions of put to putVirtual in prepration for
adding the static put to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same
name.

* JSValueWrapper.cpp:
(JSValueWrapper::JSObjectSetProperty):
* UserObjectImp.cpp:
(UserObjectImp::putVirtual):
* UserObjectImp.h:

Source/WebCore:

No new tests.

Renamed virtual versions of put to putVirtual in prepration for
adding the static put to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same
name.

* WebCore.exp.in:
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::putVirtual):
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::putVirtual):
* bindings/js/JSDOMWindowShell.h:
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::putDelegate):
* bindings/js/JSPluginElementFunctions.cpp:
(WebCore::runtimeObjectCustomPut):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneDeserializer::putProperty):
* bindings/objc/WebScriptObject.mm:
(-[WebScriptObject setValue:forKey:]):
(-[WebScriptObject setWebScriptValueAtIndex:value:]):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObj::putVirtual):
* bindings/scripts/test/JS/JSTestObj.h:
* bridge/NP_jsobject.cpp:
(_NPN_SetProperty):
* bridge/jni/jni_jsobject.mm:
(JavaJSObject::setMember):
(JavaJSObject::setSlot):
* bridge/objc/objc_runtime.h:
* bridge/objc/objc_runtime.mm:
(JSC::Bindings::ObjcFallbackObjectImp::putVirtual):
* bridge/qt/qt_instance.cpp:
(JSC::Bindings::QtInstance::put):
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::convertQVariantToValue):
* bridge/runtime_array.cpp:
(JSC::RuntimeArray::putVirtual):
* bridge/runtime_array.h:
* bridge/runtime_object.cpp:
(JSC::Bindings::RuntimeObject::putVirtual):
* bridge/runtime_object.h:
* bridge/testqtbindings.cpp:
(main):

Source/WebKit/efl:

Renamed virtual versions of put to putVirtual in prepration for
adding the static put to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same
name.

* ewk/ewk_view.cpp:
(ewk_view_js_object_add):

Source/WebKit/mac:

Renamed virtual versions of put to putVirtual in prepration for
adding the static put to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same
name.

* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::setProperty):

Source/WebKit/qt:

Renamed virtual versions of put to putVirtual in prepration for
adding the static put to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same
name.

* Api/qwebframe.cpp:
(QWebFrame::addToJavaScriptWindowObject):

Source/WebKit2:

Renamed virtual versions of put to putVirtual in prepration for
adding the static put to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same
name.

* WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::putVirtual):
(WebKit::JSNPObject::put):
* WebProcess/Plugins/Netscape/JSNPObject.h:
* WebProcess/Plugins/Netscape/NPJSObject.cpp:
(WebKit::NPJSObject::setProperty):

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

11 years agoUnreviewed, rolling out r97519.
commit-queue@webkit.org [Fri, 14 Oct 2011 23:42:04 +0000 (23:42 +0000)]
Unreviewed, rolling out r97519.
http://trac.webkit.org/changeset/97519
https://bugs.webkit.org/show_bug.cgi?id=70156

Broke 79+ tests on bots (Requested by dglazkov on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-10-14

* platform/graphics/skia/GraphicsContextSkia.cpp:
(WebCore::getFocusRingOutset):
(WebCore::GraphicsContext::drawFocusRing):

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

11 years agowatchlist: Add a validation check for the email names in the list.
levin@chromium.org [Fri, 14 Oct 2011 23:13:28 +0000 (23:13 +0000)]
watchlist: Add a validation check for the email names in the list.
https://bugs.webkit.org/show_bug.cgi?id=70154

Reviewed by Adam Barth.

If an email is listed which doesn't have a bugzilla log in, then any emails
added to the bug along with that email will fail to happen, so try to prevent this
from happening by validating that emails added to the watchlist are known to be
contributors.

* Scripts/webkitpy/common/config/committers.py: Add my other email aliases for bugzilla.
* Scripts/webkitpy/common/watchlist/watchlistparser.py: Add the check.
* Scripts/webkitpy/common/watchlist/watchlistparser_unittest.py: A unit test for the check.

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

11 years agoWindows rebaseline after r97522.
rniwa@webkit.org [Fri, 14 Oct 2011 23:04:54 +0000 (23:04 +0000)]
Windows rebaseline after r97522.

* platform/win/fast/harness/results-expected.txt:

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

11 years ago[Chromium] Update expectations after r97522.
dglazkov@chromium.org [Fri, 14 Oct 2011 22:56:42 +0000 (22:56 +0000)]
[Chromium] Update expectations after r97522.

* platform/chromium/fast/harness/results-expected.txt: Tweakaged.

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

11 years agoThese tests results should really be in the mac-specific directory. They were
bdakin@apple.com [Fri, 14 Oct 2011 22:52:22 +0000 (22:52 +0000)]
These tests results should really be in the mac-specific directory. They were
added earlier today with https://bugs.webkit.org/show_bug.cgi?id=68641

Rubber-stamped by Andy Estes and Jon Honeycutt.

* fast/css/clip-text-in-scaled-div-expected.png: Removed.
* fast/css/clip-text-in-scaled-div-expected.txt: Removed.
* platform/mac/fast/css/clip-text-in-scaled-div-expected.png: Added.
* platform/mac/fast/css/clip-text-in-scaled-div-expected.txt: Added.

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

11 years ago[Chromium] Remove the duplicelious expectation.
dglazkov@chromium.org [Fri, 14 Oct 2011 22:51:17 +0000 (22:51 +0000)]
[Chromium] Remove the duplicelious expectation.

* platform/chromium/fast/css/getComputedStyle/computed-style-border-image-expected.txt: Removed.

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

11 years agoReplaced elements squeezed when width is specified as percentage inside a table with...
robert@webkit.org [Fri, 14 Oct 2011 22:49:25 +0000 (22:49 +0000)]
Replaced elements squeezed when width is specified as percentage inside a table with Auto layout
https://bugs.webkit.org/show_bug.cgi?id=29447

If inserting a 'replaced' element (e.g. image, plugin) in a table cell that is not descendant from
a block with fixed layout then do not squeeze the element, let it use its intrinsic width and height.

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/replaced/table-percent-width.html

* rendering/RenderBox.cpp:
(WebCore::shouldExpandToIntrinsicDimension):
(WebCore::RenderBox::containingBlockReplacedLogicalWidthForContent):
(WebCore::RenderBox::computeReplacedLogicalWidthUsing):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
* rendering/RenderBox.h:

LayoutTests:

* fast/replaced/table-percent-width-expected.txt: Added.
* fast/replaced/table-percent-width.html: Added.
* platform/chromium-win/fast/replaced/table-percent-height-expected.txt: Rebaselined

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

11 years agoFix the bad expected result that I added earlier.
simon.fraser@apple.com [Fri, 14 Oct 2011 22:45:54 +0000 (22:45 +0000)]
Fix the bad expected result that I added earlier.

* fast/css/getComputedStyle/computed-style-border-image-expected.txt:

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

11 years agoHide status bubbles from queues which are very far behind
abarth@webkit.org [Fri, 14 Oct 2011 22:42:17 +0000 (22:42 +0000)]
Hide status bubbles from queues which are very far behind
https://bugs.webkit.org/show_bug.cgi?id=70133

Reviewed by Eric Seidel.

The mac-ews is so far behind that we shouldn't show its status bubble.
The status bubble just makes contributors sad.

* QueueStatusServer/handlers/statusbubble.py:

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

11 years agonrwt's results.html should show crashed tests before flaky tests
rniwa@webkit.org [Fri, 14 Oct 2011 22:40:22 +0000 (22:40 +0000)]
nrwt's results.html should show crashed tests before flaky tests
https://bugs.webkit.org/show_bug.cgi?id=66041

Reviewed by Ojan Vafai.

Fixed the over by changing the order in which we aggregate results.

* fast/harness/resources/results-test.js: Added a test.
* fast/harness/results-expected.txt:
* fast/harness/results.html:

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

11 years agoWrite unit test to ensure style-checker-filter option is passed properly in webkit...
dglazkov@chromium.org [Fri, 14 Oct 2011 22:37:16 +0000 (22:37 +0000)]
Write unit test to ensure style-checker-filter option is passed properly in webkit-patch
https://bugs.webkit.org/show_bug.cgi?id=70143

Reviewed by Adam Barth.

* Scripts/webkitpy/tool/commands/download_unittest.py: Added a test for land-cowboy. Not so cowboy after all.
* Scripts/webkitpy/tool/steps/checkstyle.py: Fixed a bug, discovered by the newly added test.

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

11 years ago[Chromium] Update expectations after r97502.
dglazkov@chromium.org [Fri, 14 Oct 2011 22:35:26 +0000 (22:35 +0000)]
[Chromium] Update expectations after r97502.

* platform/chromium/fast/css/getComputedStyle/computed-style-border-image-expected.txt: Added.
* platform/chromium/test_expectations.txt:

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

11 years ago[Chromium Skia on Mac] Improve focus ring
caryclark@google.com [Fri, 14 Oct 2011 22:24:24 +0000 (22:24 +0000)]
[Chromium Skia on Mac] Improve focus ring
https://bugs.webkit.org/show_bug.cgi?id=70124

Reviewed by Eric Seidel.

The focus ring code formerly outset the bounds of
the component rectangles by fractional amounts. Because
the rectangles are SkIRect (integer based), the fractional
outset had no effect.

The equivalent code in GraphicsContextMac.mm computes
the curve radius and rectangle outset with integers, so
the use of floats in Skia's case, besides not working,
is unnecessary.

The Skia code also failed to take the offset into account.
In LayoutTests, the focus rings either have an offset of
0 or 2. The CoreGraphics code increases the ring's rectangles
by the offset, then passes the result to wkDrawFocusRing.

I did not find any documentation about how wkDrawFocusRing
further inflates the focus ring, but empirically I determined
that adding 2 to the offset generated rings with identical
outer diameters.

With these adjustments, the layout tests generate focus rings
in the Skia on Mac case that match the coverage of the
Chromium CG-based platform, in particular, matching:

editing/inserting/editable-inline-element.html
editing/selection/3690703-2.html

* platform/graphics/skia/GraphicsContextSkia.cpp:
(WebCore::getFocusRingOutset):
(WebCore::GraphicsContext::drawFocusRing):

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

11 years ago[Qt] Enable fullscreen api on Qt
commit-queue@webkit.org [Fri, 14 Oct 2011 22:17:48 +0000 (22:17 +0000)]
[Qt] Enable fullscreen api on Qt
https://bugs.webkit.org/show_bug.cgi?id=70131

Source/WebCore:

As a result, we have 3 passed tests.

Patch by Chang Shu <cshu@webkit.org> on 2011-10-14
Reviewed by Noam Rosenthal.

* features.pri:

LayoutTests:

As a result, we have 3 passed tests.
fullscreen/full-screen-api.html
fullscreen/full-screen-iframe-not-allowed.html
fullscreen/full-screen-remove-ancestor-during-transition.html

Patch by Chang Shu <cshu@webkit.org> on 2011-10-14
Reviewed by Noam Rosenthal.

* platform/qt-wk2/Skipped:
* platform/qt/Skipped:

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

11 years agohttps://bugs.webkit.org/show_bug.cgi?id=70148
bdakin@apple.com [Fri, 14 Oct 2011 22:13:39 +0000 (22:13 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=70148
Should switch to CoreUI version of CorrectionDot, GrammarDot, and SpellingDot
-and corresponding-
<rdar://problem/10208281>

Reviewed by Anders Carlsson.

Use NS*Dot whenever it's available, and fallback to *Dot only when it is not.
* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::createPatternColor):
(WebCore::GraphicsContext::drawLineForTextChecking):

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

11 years agohttps://bugs.webkit.org/show_bug.cgi?id=70120
dslomov@google.com [Fri, 14 Oct 2011 22:13:00 +0000 (22:13 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=70120
[Chromium] Pass MessagePortArray to SerializedScriptValue::serialize/deserialize.
This patch augments SerializedScriptValue with MessagePortArray* parameter to implement MessagePort
transfer within the message in the future.

Reviewed by David Levin.

Source/WebCore:

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateParametersCheck):
* bindings/v8/SerializedScriptValue.cpp:
(WebCore::SerializedScriptValue::create):
(WebCore::SerializedScriptValue::SerializedScriptValue):
(WebCore::SerializedScriptValue::deserialize):
* bindings/v8/SerializedScriptValue.h:
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::handlePostMessageCallback):
(WebCore::V8DOMWindow::postMessageCallback):
(WebCore::V8DOMWindow::webkitPostMessageCallback):
* bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
(WebCore::handlePostMessageCallback):
(WebCore::V8DedicatedWorkerContext::postMessageCallback):
(WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):
* bindings/v8/custom/V8HistoryCustom.cpp:
(WebCore::V8History::pushStateCallback):
(WebCore::V8History::replaceStateCallback):
* bindings/v8/custom/V8MessageEventCustom.cpp:
(WebCore::V8MessageEvent::dataAccessorGetter):
* bindings/v8/custom/V8MessagePortCustom.cpp:
(WebCore::handlePostMessageCallback):
(WebCore::V8MessagePort::postMessageCallback):
(WebCore::V8MessagePort::webkitPostMessageCallback):
* bindings/v8/custom/V8WorkerCustom.cpp:
(WebCore::handlePostMessageCallback):
(WebCore::V8Worker::postMessageCallback):
(WebCore::V8Worker::webkitPostMessageCallback):
* workers/Worker.idl:

Source/WebKit/chromium:

* src/WebSerializedScriptValue.cpp:
(WebKit::WebSerializedScriptValue::serialize):

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

11 years agowatchlist: If the style check fails, then the watchlist will not be run.
levin@chromium.org [Fri, 14 Oct 2011 22:11:30 +0000 (22:11 +0000)]
watchlist: If the style check fails, then the watchlist will not be run.
https://bugs.webkit.org/show_bug.cgi?id=69484

Reviewed by Adam Barth.

* Scripts/webkitpy/tool/commands/queues.py: Run the watch list even
if the style part fails and don't allow watch list failures turn the
bot run red.
* Scripts/webkitpy/tool/commands/queues_unittest.py: Appropriate unit tests.
* Scripts/webkitpy/tool/mocktool.py: Add support to make an executive command throw.

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

11 years ago../WebCore: InjectedBundleHitTestResult::imageRect() should return rect in WKView...
jeffm@apple.com [Fri, 14 Oct 2011 22:11:12 +0000 (22:11 +0000)]
../WebCore: InjectedBundleHitTestResult::imageRect() should return rect in WKView coordinates
https://bugs.webkit.org/show_bug.cgi?id=69963

Add infrastructure to convert from any frame view's coordinate system to the
root view's coordinate system.

Reviewed by Simon Fraser.

No new tests (yet), this is covered by <https://bugs.webkit.org/show_bug.cgi?id=70136>.

* WebCore.exp.in: Exported WebCore::ScrollView::contentsToRootView(), used by InjectedBundleHitTestResult.cpp.

* platform/ScrollView.cpp:
(WebCore::ScrollView::rootViewToContents): Added (both point and rect versions).
(WebCore::ScrollView::contentsToRootView): Ditto.

* platform/ScrollView.h: Added member functions to convert to/from root view coordinates.

* platform/Widget.cpp:
(WebCore::Widget::convertFromRootView): Added (both point and rect versions).
(WebCore::Widget::convertToRootView): Ditto.

* platform/Widget.h: Added member functions to convert to/from root view coordinates.

../WebKit2: InjectedBundleHitTestResult::imageRect() should return rect in WKView coordinates
https://bugs.webkit.org/show_bug.cgi?id=69963

WebKit2 clients only have knowledge of the WKView's coordinate system, they have no way to
convert from subframe view coordinates , so any rect that we expose through WK2 APIs should
be in WKView coordinates.

Reviewed by Simon Fraser.

* WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
(WebKit::InjectedBundleHitTestResult::imageRect): Use WebCore::FrameView::contentsToRootView() to convert the image rect to WKView coordinates.

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

11 years ago[Chromium] Update expectations after r97487.
dglazkov@chromium.org [Fri, 14 Oct 2011 22:03:02 +0000 (22:03 +0000)]
[Chromium] Update expectations after r97487.

* platform/chromium-cg-mac-snowleopard/fast/css/clip-text-in-scaled-div-expected.png: Added.
* platform/chromium/test_expectations.txt:

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

11 years agoReflective Arguments retrieval should be hardened for the
fpizlo@apple.com [Fri, 14 Oct 2011 22:01:10 +0000 (22:01 +0000)]
Reflective Arguments retrieval should be hardened for the
possibility of inlining
https://bugs.webkit.org/show_bug.cgi?id=70068

Reviewed by Oliver Hunt.

CodeBlock can now track, as part of its RareData, the virtual inline
stack at callsites. CallFrame walking can now rematerialize "inline"
CallFrames by combining the meta-data in CodeBlock with the information
already in the JS stack. Arguments can now safely retrieve the
arguments from inline CallFrames.

The DFG already had the notion of a "CodeOrigin" in preparation for
inlining. This notion will now be saved into the CodeBlock, if the DFG
had done inlining. So, CodeOrigin has been moved to bytecode/ and has
been changed to behave more like a struct since that is how it's
meant to be used.

* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/CodeBlock.h:
(JSC::CodeBlock::inlineCallFrames):
(JSC::CodeBlock::codeOrigins):
(JSC::CodeBlock::hasCodeOrigins):
(JSC::CodeBlock::codeOriginForReturn):
* bytecode/CodeOrigin.h: Added.
(JSC::CodeOrigin::CodeOrigin):
(JSC::CodeOrigin::isSet):
(JSC::getCallReturnOffsetForCodeOrigin):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
* dfg/DFGNode.h:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* interpreter/CallFrame.cpp:
(JSC::CallFrame::isInlineCallFrame):
(JSC::CallFrame::trueCallerFrame):
* interpreter/CallFrame.h:
(JSC::ExecState::inlineCallFrame):
(JSC::ExecState::setInlineCallFrame):
(JSC::ExecState::isInlineCallFrame):
(JSC::ExecState::trueCallerFrame):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::findFunctionCallFrame):
* interpreter/Register.h:
(JSC::Register::operator=):
(JSC::Register::inlineCallFrame):
* runtime/Arguments.h:
(JSC::Arguments::getArgumentsData):
(JSC::Arguments::finishCreationButDontCopyRegisters):
(JSC::Arguments::finishCreation):
(JSC::Arguments::finishCreationAndCopyRegisters):
* runtime/Executable.h:
(JSC::FunctionExecutable::parameterCount):

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

11 years agoCSSParser: Remove StyleBase usage.
andreas.kling@nokia.com [Fri, 14 Oct 2011 22:00:38 +0000 (22:00 +0000)]
CSSParser: Remove StyleBase usage.
https://bugs.webkit.org/show_bug.cgi?id=70150

Reviewed by Darin Adler.

Split CSSParser::m_parsedStyleObjects into two vectors of
CSSRules and MediaLists.

* css/CSSParser.cpp:
(WebCore::CSSParser::createMediaList):
(WebCore::CSSParser::createCharsetRule):
(WebCore::CSSParser::createImportRule):
(WebCore::CSSParser::createMediaRule):
(WebCore::CSSParser::createKeyframesRule):
(WebCore::CSSParser::createStyleRule):
(WebCore::CSSParser::createFontFaceRule):
(WebCore::CSSParser::createPageRule):
(WebCore::CSSParser::createKeyframeRule):
* css/CSSParser.h:

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

11 years ago[Chromium] unskipping full screen layout tests. We will do rebaselines later.
imasaki@chromium.org [Fri, 14 Oct 2011 21:58:24 +0000 (21:58 +0000)]
[Chromium] unskipping full screen layout tests. We will do rebaselines later.
https://bugs.webkit.org/show_bug.cgi?id=70144

Reviewed by David Levin.

* platform/chromium/test_expectations.txt:

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

11 years agocanvas getImageData should explain why it throws SECURITY_ERR
abarth@webkit.org [Fri, 14 Oct 2011 21:50:58 +0000 (21:50 +0000)]
canvas getImageData should explain why it throws SECURITY_ERR
https://bugs.webkit.org/show_bug.cgi?id=70088

Reviewed by Darin Adler.

Source/WebCore:

Log as message to the console when getImageData fails because the
canvas is tainted.

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::getImageData):

LayoutTests:

Update test results to show the new error message.

* http/tests/canvas/philip/tests/security.drawImage.canvas-expected.txt:
* http/tests/canvas/philip/tests/security.drawImage.image-expected.txt:
* http/tests/canvas/philip/tests/security.pattern.canvas.fillStyle-expected.txt:
* http/tests/canvas/philip/tests/security.pattern.canvas.strokeStyle-expected.txt:
* http/tests/canvas/philip/tests/security.pattern.cross-expected.txt:
* http/tests/canvas/philip/tests/security.pattern.image.fillStyle-expected.txt:
* http/tests/canvas/philip/tests/security.pattern.image.strokeStyle-expected.txt:
* http/tests/security/canvas-remote-read-data-url-svg-image-expected.txt:
* http/tests/security/canvas-remote-read-redirect-to-remote-image-expected.txt:
* http/tests/security/canvas-remote-read-remote-image-blocked-no-crossorigin-expected.txt:
* http/tests/security/canvas-remote-read-remote-image-blocked-then-allowed-expected.txt:
* http/tests/security/canvas-remote-read-remote-image-expected.txt:
* http/tests/security/canvas-remote-read-remote-image-redirect-expected.txt:
* http/tests/security/canvas-remote-read-svg-image-expected.txt:

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

11 years agoInspector: Remove StyleBase usage.
andreas.kling@nokia.com [Fri, 14 Oct 2011 21:33:49 +0000 (21:33 +0000)]
Inspector: Remove StyleBase usage.
https://bugs.webkit.org/show_bug.cgi?id=70138

Reviewed by Antti Koivisto.

Be fully specific about whether we're operating on a CSSRule or
a CSSStyleSheet.

No behavior change expected, this merely is a cleanup.

* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::parentStyleSheet):
(WebCore::InspectorCSSAgent::asCSSStyleRule):
* inspector/InspectorCSSAgent.h:
* inspector/InspectorStyleSheet.cpp:
(WebCore::asCSSRuleList):

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

11 years ago[Chromium] Update expectations after r97502.
dglazkov@chromium.org [Fri, 14 Oct 2011 21:25:11 +0000 (21:25 +0000)]
[Chromium] Update expectations after r97502.

* platform/chromium/test_expectations.txt: Updated expectations.

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

11 years agoRename virtual deleteProperty to deletePropertyVirtual
mhahnenberg@apple.com [Fri, 14 Oct 2011 21:18:38 +0000 (21:18 +0000)]
Rename virtual deleteProperty to deletePropertyVirtual
https://bugs.webkit.org/show_bug.cgi?id=69884

Reviewed by Darin Adler.

Source/JavaScriptCore:

Renamed virtual versions of deleteProperty to deletePropertyVirtual in prepration for
adding the static deleteProperty to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same name.

* API/JSCallbackObject.h:
* API/JSCallbackObjectFunctions.h:
(JSC::::deletePropertyVirtual):
(JSC::::deleteProperty):
* API/JSObjectRef.cpp:
(JSObjectDeleteProperty):
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* debugger/DebuggerActivation.cpp:
(JSC::DebuggerActivation::deletePropertyVirtual):
(JSC::DebuggerActivation::deleteProperty):
* debugger/DebuggerActivation.h:
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* runtime/Arguments.cpp:
(JSC::Arguments::deletePropertyVirtual):
* runtime/Arguments.h:
* runtime/ArrayPrototype.cpp:
(JSC::arrayProtoFuncPop):
(JSC::arrayProtoFuncReverse):
(JSC::arrayProtoFuncShift):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):
* runtime/JSActivation.cpp:
(JSC::JSActivation::deletePropertyVirtual):
* runtime/JSActivation.h:
* runtime/JSArray.cpp:
(JSC::JSArray::deletePropertyVirtual):
(JSC::JSArray::deleteProperty):
* runtime/JSArray.h:
* runtime/JSCell.cpp:
(JSC::JSCell::deletePropertyVirtual):
(JSC::JSCell::deleteProperty):
* runtime/JSCell.h:
* runtime/JSFunction.cpp:
(JSC::JSFunction::deletePropertyVirtual):
* runtime/JSFunction.h:
* runtime/JSNotAnObject.cpp:
(JSC::JSNotAnObject::deletePropertyVirtual):
* runtime/JSNotAnObject.h:
* runtime/JSONObject.cpp:
(JSC::Walker::walk):
* runtime/JSObject.cpp:
(JSC::JSObject::deletePropertyVirtual):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::defineOwnProperty):
* runtime/JSObject.h:
* runtime/JSVariableObject.cpp:
(JSC::JSVariableObject::deletePropertyVirtual):
* runtime/JSVariableObject.h:
* runtime/RegExpMatchesArray.h:
(JSC::RegExpMatchesArray::deletePropertyVirtual):
* runtime/StrictEvalActivation.cpp:
(JSC::StrictEvalActivation::deletePropertyVirtual):
* runtime/StrictEvalActivation.h:
* runtime/StringObject.cpp:
(JSC::StringObject::deletePropertyVirtual):
* runtime/StringObject.h:

Source/WebCore:

No new tests.

Renamed virtual versions of deleteProperty to deletePropertyVirtual in prepration for
adding the static deleteProperty to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same name.

* WebCore.exp.in:
* bindings/js/JSDOMStringMapCustom.cpp:
(WebCore::JSDOMStringMap::deletePropertyVirtual):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::deletePropertyVirtual):
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::deletePropertyVirtual):
* bindings/js/JSDOMWindowShell.h:
* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::deletePropertyVirtual):
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::deletePropertyVirtual):
* bindings/js/JSStorageCustom.cpp:
(WebCore::JSStorage::deletePropertyVirtual):
* bindings/js/ScriptObject.cpp:
(WebCore::ScriptGlobalObject::remove):
* bindings/objc/WebScriptObject.mm:
(-[WebScriptObject removeWebScriptKey:]):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
* bridge/NP_jsobject.cpp:
(_NPN_RemoveProperty):
* bridge/jni/jni_jsobject.mm:
(JavaJSObject::removeMember):
* bridge/objc/objc_runtime.h:
* bridge/objc/objc_runtime.mm:
(JSC::Bindings::ObjcFallbackObjectImp::deletePropertyVirtual):
* bridge/runtime_array.cpp:
(JSC::RuntimeArray::deletePropertyVirtual):
* bridge/runtime_array.h:
* bridge/runtime_object.cpp:
(JSC::Bindings::RuntimeObject::deletePropertyVirtual):
* bridge/runtime_object.h:

Source/WebKit/mac:

Renamed virtual versions of deleteProperty to deletePropertyVirtual in prepration for
adding the static deleteProperty to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same name.

* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::removeProperty):

Source/WebKit2:

Renamed virtual versions of deleteProperty to deletePropertyVirtual in prepration for
adding the static deleteProperty to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same name.

* WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::deletePropertyVirtual):
(WebKit::JSNPObject::deleteProperty):
* WebProcess/Plugins/Netscape/JSNPObject.h:
* WebProcess/Plugins/Netscape/NPJSObject.cpp:
(WebKit::NPJSObject::removeProperty):

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

11 years agoPlumb style-checker filter up to command options and make land-cowboy use it.
dglazkov@chromium.org [Fri, 14 Oct 2011 21:12:49 +0000 (21:12 +0000)]
Plumb style-checker filter up to command options and make land-cowboy use it.
https://bugs.webkit.org/show_bug.cgi?id=70119

Reviewed by Adam Barth.

* Scripts/webkitpy/style/checker.py: Added ChangeLogChecker categories to the big list.
* Scripts/webkitpy/style/checkers/changelog.py: Declared categories, used in ChangeLogChecker.
* Scripts/webkitpy/tool/commands/download.py: Made LandCowboy use filter.
* Scripts/webkitpy/tool/commands/download_unittest.py: Tweaked the test.
* Scripts/webkitpy/tool/commands/upload_unittest.py: Ditto.
* Scripts/webkitpy/tool/steps/checkstyle.py: Made check_style_filter work.
* Scripts/webkitpy/tool/steps/options.py: Added new option, check-style-filter.

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

11 years ago[WebKit2][gtk] Add documentation for WebKitPluginError and WebKitPolicyError.
commit-queue@webkit.org [Fri, 14 Oct 2011 20:58:08 +0000 (20:58 +0000)]
[WebKit2][gtk] Add documentation for WebKitPluginError and WebKitPolicyError.
https://bugs.webkit.org/show_bug.cgi?id=70016

Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-10-14
Reviewed by Martin Robinson.

* UIProcess/API/gtk/WebKitError.h:

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

11 years agoWeb Inspector: WebProcess crashes hard when inspecting elements with border-images...
simon.fraser@apple.com [Fri, 14 Oct 2011 20:57:53 +0000 (20:57 +0000)]
Web Inspector: WebProcess crashes hard when inspecting elements with border-images applied
https://bugs.webkit.org/show_bug.cgi?id=70105

Source/WebCore:

Reviewed by Dave Hyatt.

Fix three different crashes related to getting computed style for border-image.
In both valueForNinePieceImageSlice() and valueForNinePieceImageQuad(),
assign 'right' to 'left' because we've computed a value for 'right' already.
Otherwise this would leave 'right' as null, causing later crashes in cssText().

In mapNinePieceImage(), borderImage->imageValue() can be null for a border-image
shorthand that is missing the image value.

Test: fast/css/getComputedStyle/computed-style-border-image.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForNinePieceImageSlice):
(WebCore::valueForNinePieceImageQuad):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::mapNinePieceImage):

LayoutTests:

Reviewed by Dave Hyatt.

Computed style test for border-image.

* fast/css/getComputedStyle/computed-style-border-image-expected.txt: Added.
* fast/css/getComputedStyle/computed-style-border-image.html: Added.

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

11 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Fri, 14 Oct 2011 20:53:48 +0000 (20:53 +0000)]
Unreviewed.  Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-10-14

* DEPS:

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

11 years ago[WebKit2][gtk] Skip TestWebKitSettings test.
commit-queue@webkit.org [Fri, 14 Oct 2011 20:33:34 +0000 (20:33 +0000)]
[WebKit2][gtk] Skip TestWebKitSettings test.
https://bugs.webkit.org/show_bug.cgi?id=70129

Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-10-14
Reviewed by Martin Robinson.

Skip running TestWebKitSettings test till a bug
https://bugs.webkit.org/show_bug.cgi?id=70127 gets fixed.

* UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
(testWebKitSettings): Skip TestWebKitSettings test.

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

11 years agoMac build fix after r97497.
rniwa@webkit.org [Fri, 14 Oct 2011 20:16:59 +0000 (20:16 +0000)]
Mac build fix after r97497.

* editing/markup.cpp:
(WebCore::isNonTableCellHTMLBlockElement):

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

11 years ago[EFL] Bump class version after r97421.
commit-queue@webkit.org [Fri, 14 Oct 2011 20:02:29 +0000 (20:02 +0000)]
[EFL] Bump class version after r97421.
https://bugs.webkit.org/show_bug.cgi?id=70102

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-10-14
Reviewed by Joseph Pecoraro.

r97421 changed the signature of the run_open_panel virtual method in
Ewk_Smart_Class, so we need to bump the class version.

* ewk/ewk_view.h:

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

11 years agoContext-aware HTML paste for Chromium
dcheng@chromium.org [Fri, 14 Oct 2011 19:55:59 +0000 (19:55 +0000)]
Context-aware HTML paste for Chromium
https://bugs.webkit.org/show_bug.cgi?id=62112

Reviewed by Ryosuke Niwa.

Source/WebCore:

Add createFragmentFromMarkupWithContext which understands enough about DOM structure to
retain necessary elements to preserve structure and appearance when extracting a subset of
a DOM tree.

Covered by existing layout tests.

* editing/MarkupAccumulator.h:
* editing/markup.cpp:
(WebCore::isNonTableCellHTMLBlockElement):
(WebCore::isHTMLBlockElement):
(WebCore::ancestorToRetainStructureAndAppearanceForBlock):
(WebCore::ancestorToRetainStructureAndAppearance):
(WebCore::ancestorToRetainStructureAndAppearanceWithNoRenderer):
(WebCore::findNodesSurroundingContext):
(WebCore::trimFragment):
(WebCore::createFragmentFromMarkupWithContext):
* editing/markup.h:
* platform/chromium/ChromiumDataObject.cpp:
(WebCore::ChromiumDataObject::getData):
* platform/chromium/DataTransferItemChromium.cpp:
(WebCore::DataTransferItemChromium::getAsString):
* platform/chromium/PasteboardChromium.cpp:
(WebCore::Pasteboard::documentFragment):
* platform/chromium/PlatformSupport.h:

Source/WebKit/chromium:

Add WebKit side for plumbing to receive context for HTML paste.

* public/WebClipboard.h:
(WebKit::WebClipboard::readHTML):
* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::clipboardReadHTML):

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

11 years agoRemove the Leopard slaves.
weinig@apple.com [Fri, 14 Oct 2011 19:52:53 +0000 (19:52 +0000)]
Remove the Leopard slaves.

Reviewed by Adam Roben.

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

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

11 years ago[chromium skia] Add media/video-playing-and-pause.html to test expectations pending...
commit-queue@webkit.org [Fri, 14 Oct 2011 19:49:39 +0000 (19:49 +0000)]
[chromium skia] Add media/video-playing-and-pause.html to test expectations pending rebaseline
https://bugs.webkit.org/show_bug.cgi?id=70125

Patch by Brian Salomon <bsalomon@google.com> on 2011-10-14
Reviewed by Stephen White.

* platform/chromium/test_expectations.txt:

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

11 years ago2011-10-14 Chang Shu <cshu@webkit.org>
chang.shu@nokia.com [Fri, 14 Oct 2011 19:48:00 +0000 (19:48 +0000)]
2011-10-14  Chang Shu  <cshu@webkit.org>

        [WK2] Unreviewed gardening.

        Some fullscreen tests are passing now on mac WK2 after EventSender support.

        * platform/gtk-wk2/Skipped:
        * platform/win-wk2/Skipped:
        * platform/wk2/Skipped:

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

11 years ago[Chromium] Inherit settings from Chromium's envsetup.sh, address a NDK todo
commit-queue@webkit.org [Fri, 14 Oct 2011 19:47:35 +0000 (19:47 +0000)]
[Chromium] Inherit settings from Chromium's envsetup.sh, address a NDK todo
https://bugs.webkit.org/show_bug.cgi?id=70028

Patch by Peter Beverloo <peter@chromium.org> on 2011-10-14
Reviewed by Adam Barth.

Source/JavaScriptCore:

* JavaScriptCore.gyp/JavaScriptCore.gyp:

Source/WebCore:

* WebCore.gyp/WebCore.gyp:

Source/WebKit/chromium:

* WebKit.gyp:
* gyp_webkit:

Tools:

* Scripts/update-webkit-chromium:
* Scripts/webkitdirs.pm:
(buildChromiumMakefile):
(buildChromium):

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

11 years ago[WinCairo] Unreviewed Skipped change to get bot green again.
bfulgham@webkit.org [Fri, 14 Oct 2011 19:45:38 +0000 (19:45 +0000)]
[WinCairo] Unreviewed Skipped change to get bot green again.

* platform/wincairo/Skipped: Skipped all animations, since tests do
not exactly match Windows results on Apple test output.

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

11 years agoCheck CachedResourceClient types with ASSERTs rather
japhet@chromium.org [Fri, 14 Oct 2011 19:31:57 +0000 (19:31 +0000)]
Check CachedResourceClient types with ASSERTs rather
than if statements.
https://bugs.webkit.org/show_bug.cgi?id=70113

Reviewed by Adam Barth.

No new tests, no functionality change.

* loader/cache/CachedCSSStyleSheet.cpp:
* loader/cache/CachedFont.cpp:
* loader/cache/CachedImage.cpp:
* loader/cache/CachedResourceClientWalker.h:
* loader/cache/CachedXSLStyleSheet.cpp:

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

11 years agoREGRESSION (Safari 5.1 - 5.1.1): CSS nesw-resize cursor shows up as a sw-resize cursor
mitz@apple.com [Fri, 14 Oct 2011 19:18:30 +0000 (19:18 +0000)]
REGRESSION (Safari 5.1 - 5.1.1): CSS nesw-resize cursor shows up as a sw-resize cursor
https://bugs.webkit.org/show_bug.cgi?id=70081

Reviewed by Anders Carlsson.

* WebKitSystemInterface.h: Unrelated change, perhaps needed for bug 68478.
* libWebKitSystemInterfaceLeopard.a:
* libWebKitSystemInterfaceLion.a:
* libWebKitSystemInterfaceSnowLeopard.a:

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

11 years agoDon't assert that CSSRules are CSSRules.
andreas.kling@nokia.com [Fri, 14 Oct 2011 18:54:36 +0000 (18:54 +0000)]
Don't assert that CSSRules are CSSRules.

Rubber-stamped by Antti Koivisto.

* css/CSSRule.h:
(WebCore::CSSRule::isRule):
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::append):
(WebCore::CSSStyleSheet::insert):

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

11 years ago[Chromium] Update expectations after r97481.
dglazkov@chromium.org [Fri, 14 Oct 2011 18:48:35 +0000 (18:48 +0000)]
[Chromium] Update expectations after r97481.

* platform/chromium/test_expectations.txt: Updated.

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

11 years agoAttempted Leopard build fix.
bdakin@apple.com [Fri, 14 Oct 2011 18:45:40 +0000 (18:45 +0000)]
Attempted Leopard build fix.

* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::createCompatibleBuffer):

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

11 years agoChromium Mac build fix after r97478.
rniwa@webkit.org [Fri, 14 Oct 2011 18:41:37 +0000 (18:41 +0000)]
Chromium Mac build fix after r97478.

* src/mac/WebSubstringUtil.mm:
(WebKit::WebSubstringUtil::attributedSubstringInRange):

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

11 years agoCSSStyleSheet should only ever contain CSSRules.
andreas.kling@nokia.com [Fri, 14 Oct 2011 18:36:31 +0000 (18:36 +0000)]
CSSStyleSheet should only ever contain CSSRules.
https://bugs.webkit.org/show_bug.cgi?id=70116

Reviewed by Antti Koivisto.

Move child management from the StyleSheet class down into
CSSStyleSheet and XSLStyleSheet. XSLStyleSheet continues to
manage StyleBase objects, while CSSStyleSheet now only contains
CSSRule.

This is enforced at both compile time and runtime with explicit
types and assertions.

* css/CSSRule.h:
(WebCore::CSSRule::isRule):

    Promoted to a public method so we can use it in assertions.

* css/CSSRuleList.h:
(WebCore::CSSRuleList::create):
(WebCore::CSSRuleList::styleSheet):
* css/CSSRuleList.cpp:
(WebCore::CSSRuleList::CSSRuleList):
* bindings/js/JSCSSRuleListCustom.cpp:
(WebCore::JSCSSRuleListOwner::isReachableFromOpaqueRoots):

    Change backing to a CSSStyleSheet instead of a StyleSheet.

* css/CSSRuleList.cpp:
(WebCore::CSSRuleList::item):

    Remove redundant assertions.

* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::isLoading):
(WebCore::CSSStyleSheet::addSubresourceStyleURLs):
* css/CSSStyleSelector.cpp:
(WebCore::RuleSet::addRulesFromSheet):
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::collectStyleSheets):
* page/PageSerializer.cpp:
(WebCore::PageSerializer::serializeCSSStyleSheet):

    Use more specific CSSRule* since that's what we get from
    CSSStyleSheet::item() now.

* css/StyleSheet.cpp:
(WebCore::StyleSheet::~StyleSheet):
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::~CSSStyleSheet):
* xml/XSLStyleSheetLibxslt.cpp:
(WebCore::XSLStyleSheet::~XSLStyleSheet):
* xml/XSLStyleSheetQt.cpp:
(WebCore::XSLStyleSheet::~XSLStyleSheet):

    Orphaning logic from ~StyleSheet() moved to subclass dtors.

* css/StyleSheet.h:
* css/CSSStyleSheet.h:
(WebCore::CSSStyleSheet::length):
(WebCore::CSSStyleSheet::item):
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::append):
(WebCore::CSSStyleSheet::insert):
(WebCore::CSSStyleSheet::remove):

    Moved from StyleSheet and changed to only accept CSSRules.

* css/StyleSheet.h:
* xml/XSLStyleSheet.h:
(WebCore::XSLStyleSheet::length):
(WebCore::XSLStyleSheet::item):
(WebCore::XSLStyleSheet::append):
(WebCore::XSLStyleSheet::insert):
(WebCore::XSLStyleSheet::remove):

    Moved from StyleSheet though still uses StyleBase.

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

11 years agoUnreviewed; add missing #includes.
leandro@webkit.org [Fri, 14 Oct 2011 18:34:41 +0000 (18:34 +0000)]
Unreviewed; add missing #includes.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
* DumpRenderTree/efl/EventSender.cpp:

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

11 years agoUnreviewed, rolling out r97375.
commit-queue@webkit.org [Fri, 14 Oct 2011 18:27:26 +0000 (18:27 +0000)]
Unreviewed, rolling out r97375.
http://trac.webkit.org/changeset/97375
https://bugs.webkit.org/show_bug.cgi?id=70115

It breaks loading of webpages in QtWebKit2 (Requested by jeez_
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-10-14

* UIProcess/qt/ClientImpl.cpp:
(qt_wk_decidePolicyForNavigationAction):
* UIProcess/qt/ClientImpl.h:
* UIProcess/qt/QtWebPageProxy.cpp:
(QtWebPageProxy::init):

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

11 years agoInclude dom/ExceptionCode.h instead of Filesystem APIs headers
commit-queue@webkit.org [Fri, 14 Oct 2011 18:26:09 +0000 (18:26 +0000)]
Include dom/ExceptionCode.h instead of Filesystem APIs headers
to fix compile error when ENABLE_WORKERS=1 and ENABLE_FILE_SYSTEM=0
https://bugs.webkit.org/show_bug.cgi?id=70036

Patch by Yuji Sanachan <sanachan.y@gmail.com> on 2011-10-14
Reviewed by Darin Adler.

* workers/WorkerContext.cpp:
(WebCore::WorkerContext::importScript):

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

11 years agoText drawn via -webkit-background-clip:text should be non-blurry with all scaling
bdakin@apple.com [Fri, 14 Oct 2011 18:14:57 +0000 (18:14 +0000)]
Text drawn via -webkit-background-clip:text should be non-blurry with all scaling
techniques
https://bugs.webkit.org/show_bug.cgi?id=68641

Source/WebCore:

Patch by Darin Adler <darin@apple.com> on 2011-10-14
Reviewed by Simon Fraser. Committed by Beth Dakin.

* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::createCompatibleBuffer): Allocate a buffer based on the
scale
factor of the context.
* platform/graphics/GraphicsContext.h: Added createCompatibleBuffer.

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended): Use
createCompatibleBuffer.

LayoutTests:

Reviewed by Simon Fraser.

* fast/css/clip-text-in-scaled-div-expected.png: Added.
* fast/css/clip-text-in-scaled-div-expected.txt: Added.
* fast/css/clip-text-in-scaled-div.html: Added.

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

11 years agoMove selectionStartStyle and selectionHasStyle to EditingStyle
rniwa@webkit.org [Fri, 14 Oct 2011 18:00:35 +0000 (18:00 +0000)]
Move selectionStartStyle and selectionHasStyle to EditingStyle
https://bugs.webkit.org/show_bug.cgi?id=69882

Reviewed by Enrica Casucci.

Moved selectionHasStyle and selectionStartStyle from Editor to EditingStyle.
Also moved much of code in Editor::selectionStartCSSPropertyValue to method of EditingStyle.

In addition, moved Range::editingStartPosition to htmlediting where it belongs
and renamed it to adjustedSelectionStartForStyleComputation.

* dom/Range.cpp:
* dom/Range.h:
* editing/EditingStyle.cpp:
(WebCore::EditingStyle::triStateOfStyle): Extracted from selectionHasStyle.
(WebCore::EditingStyle::legacyFontSize): Extracted from selectionStartCSSPropertyValue.
(WebCore::EditingStyle::styleAtSelectionStart): Moved from Editor::selectionStartStyle.
* editing/EditingStyle.h:
* editing/Editor.cpp:
(WebCore::Editor::fontForSelection):
(WebCore::Editor::selectionStartHasStyle):
(WebCore::Editor::selectionHasStyle):
(WebCore::Editor::selectionStartCSSPropertyValue):
* editing/Editor.h:
* editing/EditorCommand.cpp:
(WebCore::executeToggleStyleInList):
* editing/htmlediting.cpp:
(WebCore::adjustedSelectionStartForStyleComputation): Moved from Range::editingStartPosition.
* editing/htmlediting.h:

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

11 years agoRedundant comparison in AccessibilityObject.cpp updateAXLineStartForVisiblePosition
rniwa@webkit.org [Fri, 14 Oct 2011 17:57:52 +0000 (17:57 +0000)]
Redundant comparison in AccessibilityObject.cpp updateAXLineStartForVisiblePosition
https://bugs.webkit.org/show_bug.cgi?id=70074

Reviewed by Chris Fleizach.

Removed redundant code.

* accessibility/AccessibilityObject.cpp:
(WebCore::updateAXLineStartForVisiblePosition):

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

11 years agoMake the interface of locationAndLengthFromRange and rangeFromLocationAndLength consi...
rniwa@webkit.org [Fri, 14 Oct 2011 17:54:42 +0000 (17:54 +0000)]
Make the interface of locationAndLengthFromRange and rangeFromLocationAndLength consistent
https://bugs.webkit.org/show_bug.cgi?id=69964

Reviewed by Enrica Casucci.

Source/WebCore:

Extracted the logic to determine the scope element as FrameSelection::rootEditableElementOrDocumentElement
and deployed it in WebKit layer. Made locationAndLengthFromRange take a scope element and renamed it to
getLocationAndLengthFromRange.

* WebCore.exp.in:
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::rootEditableElementOrDocumentElement):
* editing/FrameSelection.h:
* editing/TextIterator.cpp:
(WebCore::TextIterator::getLocationAndLengthFromRange):
* editing/TextIterator.h:

Source/WebKit/chromium:

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::firstRectForCharacterRange):
(WebKit::WebFrameImpl::characterIndexForPoint):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::compositionRange):
(WebKit::WebViewImpl::getSelectionOffsetsAndTextInEditableContent):
(WebKit::WebViewImpl::caretOrSelectionRange):
* src/mac/WebSubstringUtil.mm:
(WebKit::WebSubstringUtil::attributedSubstringInRange):

Source/WebKit/gtk:

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
(DumpRenderTreeSupportGtk::firstRectForCharacterRange):

Source/WebKit/mac:

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

Source/WebKit/qt:

* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::firstRectForCharacterRange):

Source/WebKit2:

* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::getMarkedRange):
(WebKit::WebPage::getSelectedRange):
(WebKit::WebPage::characterIndexForPoint):
(WebKit::convertToRange):

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

11 years agoDFG JIT 32_64 - Performance fix for ResolveGlobal
commit-queue@webkit.org [Fri, 14 Oct 2011 17:23:39 +0000 (17:23 +0000)]
DFG JIT 32_64 - Performance fix for ResolveGlobal
https://bugs.webkit.org/show_bug.cgi?id=70096

Patch by Yuqiang Xian <yuqiang.xian@intel.com> on 2011-10-14
Reviewed by Gavin Barraclough.

Structure check of global object should be a pointer comparison
instead of a tag and payload pair comparison. This fix improves
SunSpider by 7% on Linux 32, with bitops-bitwise-and improved by 4.75X.
Also two trivial fixes for successful 32-bit build are included.

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

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

11 years agoRemove layerX / layerY from the Windows API
jchaffraix@webkit.org [Fri, 14 Oct 2011 17:15:12 +0000 (17:15 +0000)]
Remove layerX / layerY from the Windows API
https://bugs.webkit.org/show_bug.cgi?id=70051

Reviewed by Darin Adler.

Renamed layerX to unused1 and layerY to unused2 to keep the
binary compatibility.

* DOMEventsClasses.cpp:
(DOMUIEvent::unused1):
(DOMUIEvent::unused2):
* DOMEventsClasses.h:
(DOMKeyboardEvent::unused1):
(DOMKeyboardEvent::unused2):
(DOMMouseEvent::unused1):
(DOMMouseEvent::unused2):
(DOMWheelEvent::unused1):
(DOMWheelEvent::unused2):
* Interfaces/DOMEvents.idl:

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

11 years ago[EFL] Correctly get the absolute URL in LayoutTestController::queueLoad()
commit-queue@webkit.org [Fri, 14 Oct 2011 17:12:45 +0000 (17:12 +0000)]
[EFL] Correctly get the absolute URL in LayoutTestController::queueLoad()
https://bugs.webkit.org/show_bug.cgi?id=69770

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-10-14
Reviewed by Antonio Gomes.

We were just appending the given URL to the absolute URI of the main
frame, which resulted in "file:///foo/bar/baz.htmltheother/url.html"
instead of "file:///foo/bar/theother/url.html".

This should make fast/dom/navigation-type-navigate.html behave
better (it still fails, but later).

* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::queueLoad):

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

11 years ago[GTK] r97438: Inconsistent use of flattening vs flattering in function names/comments
commit-queue@webkit.org [Fri, 14 Oct 2011 17:04:23 +0000 (17:04 +0000)]
[GTK] r97438: Inconsistent use of flattening vs flattering in function names/comments
https://bugs.webkit.org/show_bug.cgi?id=70092

Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-10-14
Reviewed by Martin Robinson.

Fixes the miss-spelling of 'PROP_ENABLE_FRAME_FLATTENING' as 'PROP_ENABLE_FRAME_FLATTERING'
introduced with change set r97438.

* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsSetProperty): Property name correction.
(webKitSettingsGetProperty): Property name correction.
(webkit_settings_class_init): Property name correction.
* UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
(testWebKitSettings): Spelling correction.

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