WebKit-https.git
8 years agoApplicationCache update should not immediately fail when reaching per-origin quota
joepeck@webkit.org [Tue, 12 Jul 2011 22:00:45 +0000 (22:00 +0000)]
ApplicationCache update should not immediately fail when reaching per-origin quota
https://bugs.webkit.org/show_bug.cgi?id=64177

Reviewed by Alexey Proskuryakov.

2011-07-12  Joseph Pecoraro  <joepeck@webkit.org>

        Include spaceNeeded information in the output dumped for appcache quota delegates.
        Add and update tests related to handling of per-origin quotas.

        * http/tests/appcache/origin-quota-continued-download-expected.txt: Added.
        * http/tests/appcache/origin-quota-continued-download.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download.manifest: Added.
        New test which checks that there will still be a successful cache
        when the per-origin quota is reached and increased at the end of downloading.

        * http/tests/appcache/origin-quota-continued-download-multiple-manifests-expected.txt: Added.
        * http/tests/appcache/origin-quota-continued-download-multiple-manifests.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download-multiple-manifests-1.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download-multiple-manifests-1.manifest: Added.
        * http/tests/appcache/resources/quota-origin-continued-download-multiple-manifests-2.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download-multiple-manifests-2.manifest: Added.
        * http/tests/appcache/resources/quota-origin-continued-download.html: Added.
        * http/tests/appcache/resources/quota-origin-continued-download.manifest: Added.
        New test which checks that the spaceNeeded appropriately lists enough space for
        multiple manifests across multiple frames for the same origin.

        * http/tests/appcache/resources/quota-origin-iframe-3.manifest: Fix a typo.
        * http/tests/appcache/origin-quota.html:
        Update the old test to disallow automatic increase of the quota,
        which is the default handling of DRT when reaching the quota.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:
        * platform/wk2/Skipped:
        Skip the test on ports that don't implement ApplicationCache per-origin quotas.

2011-07-12  Joseph Pecoraro  <joepeck@webkit.org>

        New behavior of handling ApplicationCache per-origin quotas. Previously,
        if the quota was reached while downloading we would fail the download
        and then prompt the user for a storage increase. This required a refresh,
        a redownload of resources, and the total storage was not known so the
        process could be repeated multiple times before an acceptable quota
        was found or the user disallowed an increase.

        The new behavior is to complete the download of the entire appcache.
        When the cache completes downloading and it is greater than the origin
        quota, prompt the user to allow a quota increase with the known space
        needed. If the quota is increased, the cache will succeed, otherwise
        it will fail with the normal failure steps.

        An alternative behavior is prompting while downloading immediately
        when the origin quota is reached, however at that point the entire
        space needed is unknown and so quota increases might not be enough
        and could result in multiple prompts to the user.

        Tests: http/tests/appcache/origin-quota-continued-download-multiple-manifests.html
               http/tests/appcache/origin-quota-continued-download.html

        * loader/appcache/ApplicationCacheGroup.h:
        * loader/appcache/ApplicationCacheGroup.cpp:
        (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
        Rename instance variable to be more clear on its intent.

        (WebCore::ApplicationCacheGroup::didFinishLoading):
        Check the quota limit while downloading so we can fail early
        if the user already denied a quota increase.

        (WebCore::ApplicationCacheGroup::didReachOriginQuota):
        Pass the space needed information to the chrome client.

        (WebCore::ApplicationCacheGroup::cacheUpdateFailedDueToOriginQuota):
        Removed. Instead convert the callers to update state and console
        log when the per-origin quota is reached. This allows us to follow
        the normal failure steps if the quota is reached at the end of a
        download, and the alternative short path when we fail during downloading.

        (WebCore::ApplicationCacheGroup::recalculateAvailableSpaceInQuota):
        Extract to a helper function.

        (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
        Allow for a quota increase at the end of the download now that
        we know the space needed. Then proceed to fail or succeed
        as we normally would.

        * loader/appcache/ApplicationCacheStorage.h:
        * loader/appcache/ApplicationCacheStorage.cpp:
        (WebCore::ApplicationCacheStorage::checkOriginQuota):
        (WebCore::ApplicationCacheStorage::storeNewestCache):
        Extract checking the origin quota for when an ApplicationCacheGroup
        will be replacing an ApplicationCacheGroup into a helper function.
        The helper also provides an out parameter for the space needed
        to properly fit the new cache group if it wouldn't fit.

        * page/ChromeClient.h:
        * loader/EmptyClients.h:
        (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota):
        Add a space needed parameter when reaching the per-origin quota.

2011-07-12  Joseph Pecoraro  <joepeck@webkit.org>

        * WebView/WebUIDelegatePrivate.h:
        * DefaultDelegates/WebDefaultUIDelegate.m:
        (-[WebDefaultUIDelegate webView:exceededApplicationCacheOriginQuotaForSecurityOrigin:spaceNeeded:]):
        Update the delegate to include a space needed parameter.

        * WebCoreSupport/WebChromeClient.h:
        * WebCoreSupport/WebChromeClient.mm:
        (WebChromeClient::reachedApplicationCacheOriginQuota):
        Call the delegate with the new space needed information.

2011-07-12  Joseph Pecoraro  <joepeck@webkit.org>

        * Api/qwebpage.cpp:
        * Api/qwebpage.h:
        * WebCoreSupport/ChromeClientQt.cpp:
        (WebCore::ChromeClientQt::reachedApplicationCacheOriginQuota):
        * WebCoreSupport/ChromeClientQt.h:
        Pass the spaceNeeded value through to the applicationCacheQuotaExceeded signal.

2011-07-12  Joseph Pecoraro  <joepeck@webkit.org>

        Add layoutTestController.disallowIncreaseForApplicationCacheQuota()
        to disable the default behavior of raising the default per-origin
        quota to 5MB when reached. This allows us to test what happens
        when the quota is reached and not increased.

        * DumpRenderTree/LayoutTestController.cpp:
        (LayoutTestController::LayoutTestController):
        (disallowIncreaseForApplicationCacheQuotaCallback):
        (LayoutTestController::staticFunctions):
        * DumpRenderTree/LayoutTestController.h:
        (LayoutTestController::disallowIncreaseForApplicationCacheQuota):
        (LayoutTestController::setDisallowIncreaseForApplicationCacheQuota):
        * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
        (LayoutTestController::reset):
        * DumpRenderTree/qt/LayoutTestControllerQt.h:
        (LayoutTestController::disallowIncreaseForApplicationCacheQuota):
        (LayoutTestController::dumpApplicationCacheDelegateCallbacks):
        Expose a function to prevent automatically increasing the per-origin
        quota when the quota is reached. This allows us to test what happens
        when a user would "disallow" a quota increase.

        * DumpRenderTree/mac/UIDelegate.mm:
        (-[UIDelegate webView:exceededApplicationCacheOriginQuotaForSecurityOrigin:spaceNeeded:]):
        * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
        (WebCore::DumpRenderTree::dumpApplicationCacheQuota):
        Respect the new disallowIncrease flag and dump the spaceNeeded values
        for ports that implement application cache quotas.

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

8 years agoDelete some redundant code in WebHTMLView
aroben@apple.com [Tue, 12 Jul 2011 21:56:25 +0000 (21:56 +0000)]
Delete some redundant code in WebHTMLView

This code had no user-visible effect, as we were just duplicating work that AppKit would do
for us at a slightly different time.

Fixes <http://webkit.org/b/64390> WebHTMLView sets its root layer's transform unnecessarily

Reviewed by Simon Fraser.

* WebView/WebHTMLView.mm:
(-[WebHTMLView viewDidMoveToWindow]):
(-[WebHTMLView attachRootLayer:]):
Don't bother setting the root layer's transform to account for the scale factor. AppKit
takes care of this for us nowadays.

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

8 years agoDFG JIT put_by_id transition caching does not inform the GC about the structure and
commit-queue@webkit.org [Tue, 12 Jul 2011 21:51:52 +0000 (21:51 +0000)]
DFG JIT put_by_id transition caching does not inform the GC about the structure and
prototype chain that it is referencing.
https://bugs.webkit.org/show_bug.cgi?id=64387

Patch by Filip Pizlo <fpizlo@apple.com> on 2011-07-12
Reviewed by Gavin Barraclough.

Fixed the relevant code in DFGRepatch to call StructureStubInfo::initPutByIdTransition().

* dfg/DFGRepatch.cpp:
(JSC::DFG::tryCachePutByID):

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

8 years agoAudioDevice::Stop can close NULL handle.
crogers@google.com [Tue, 12 Jul 2011 21:46:35 +0000 (21:46 +0000)]
AudioDevice::Stop can close NULL handle.
https://bugs.webkit.org/show_bug.cgi?id=64157

Reviewed by Kenneth Russell.

No new tests since audio API is not yet implemented.

* bindings/js/JSAudioContextCustom.cpp:
(WebCore::JSAudioContextConstructor::constructJSAudioContext):
* bindings/v8/custom/V8AudioContextCustom.cpp:
(WebCore::V8AudioContext::constructorCallback):
* webaudio/AudioContext.cpp:
(WebCore::AudioContext::create):
(WebCore::AudioContext::uninitialize):
* webaudio/AudioContext.h:

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

8 years agofix flakiness dashboard to work with new crash log filenames
ojan@chromium.org [Tue, 12 Jul 2011 21:38:21 +0000 (21:38 +0000)]
fix flakiness dashboard to work with new crash log filenames
https://bugs.webkit.org/show_bug.cgi?id=64393

Reviewed by Adam Barth.

* TestResultServer/static-dashboards/flakiness_dashboard.html:

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

8 years agoFull-screen: Don't change the collectionBehavior of the WebView's NSWindow if not...
jer.noble@apple.com [Tue, 12 Jul 2011 21:38:05 +0000 (21:38 +0000)]
Full-screen: Don't change the collectionBehavior of the WebView's NSWindow if not necessary
https://bugs.webkit.org/show_bug.cgi?id=63217
<rdar://problem/9660291>

Reviewed by Darin Adler.

Check to see if the NSWindow hosting the WebView is not on the active space before changing the window's
collectionBehavior.

* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController beganExitFullScreenAnimation]):

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

8 years agoMove call to syncCompositingLayers so that we do not trigger redundant draws.
commit-queue@webkit.org [Tue, 12 Jul 2011 21:22:45 +0000 (21:22 +0000)]
Move call to syncCompositingLayers so that we do not trigger redundant draws.
https://bugs.webkit.org/show_bug.cgi?id=64224

Source/WebCore:

doComposite was triggering two composites every time a canvas was dirtied.
By moving syncCompositingLayers call to layout, the client code can draw without triggering
a redundant frame. Also renamed WebViewImpl::updateLayers to
syncCompositingLayers, because it was confusing. CCLayerTreeHostImplProxy::updateLayers was
no longer needed, because animateAndLayout calls WebViewImpl::layout.

Patch by John Bates <jbates@google.com> on 2011-07-12
Reviewed by James Robinson.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::updateLayers):
* platform/graphics/chromium/LayerRendererChromium.h:
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::syncCompositingLayers):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
* platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp:
(WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommit):

Source/WebKit/chromium:

doComposite was triggering two composites every time a canvas was dirtied.
By moving syncCompositingLayers call to layout, the client code can draw without triggering
a redundant frame. Also renamed WebViewImpl::updateLayers to
syncCompositingLayers, because it was confusing.

Patch by John Bates <jbates@google.com> on 2011-07-12
Reviewed by James Robinson.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::layout):
(WebKit::WebViewImpl::syncCompositingLayers):
* src/WebViewImpl.h:

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

8 years agoIsolate HTMLTextFormControlElement into a separate file
rniwa@webkit.org [Tue, 12 Jul 2011 21:20:35 +0000 (21:20 +0000)]
Isolate HTMLTextFormControlElement into a separate file
https://bugs.webkit.org/show_bug.cgi?id=64381

Reviewed by Dimitri Glazkov.

Extracted HTMLTextFormControlElement.h and HTMLTextFormControlElement.cpp out of
HTMLFormControlElement.h and HTMLFormControlElement.cpp.

Also moved defaultEventHandler from HTMLFormControlElementWithState to HTMLTextFormControlElement
because it was specific to HTMLTextFormControlElement, and replaced all references to
HTMLFormControlElementWithState in HTMLInputElement and HTMLTextAreaElement by ones to
HTMLTextFormControlElement.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* editing/TextIterator.cpp:
* editing/htmlediting.cpp:
* html/HTMLElementsAllInOne.cpp:
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::isFocusable):
* html/HTMLFormControlElement.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::isKeyboardFocusable):
(WebCore::HTMLInputElement::isMouseFocusable):
(WebCore::HTMLInputElement::updateFocusAppearance):
(WebCore::HTMLInputElement::canStartSelection):
(WebCore::HTMLInputElement::parseMappedAttribute):
(WebCore::HTMLInputElement::finishParsingChildren):
(WebCore::HTMLInputElement::rendererIsNeeded):
(WebCore::HTMLInputElement::attach):
(WebCore::HTMLInputElement::detach):
(WebCore::HTMLInputElement::copyNonAttributeProperties):
(WebCore::HTMLInputElement::defaultEventHandler):
(WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
(WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
(WebCore::HTMLInputElement::addSubresourceAttributeURLs):
(WebCore::HTMLInputElement::recalcWillValidate):
* html/HTMLInputElement.h:
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::defaultEventHandler):
* html/HTMLTextAreaElement.h:
* html/HTMLTextFormControlElement.cpp: Copied from Source/WebCore/html/HTMLFormControlElement.cpp.
(WebCore::HTMLTextFormControlElement::defaultEventHandler):
* html/HTMLTextFormControlElement.h: Copied from Source/WebCore/html/HTMLFormControlElement.h.

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

8 years agoUnreviewed, rolling out r90831.
commit-queue@webkit.org [Tue, 12 Jul 2011 21:08:27 +0000 (21:08 +0000)]
Unreviewed, rolling out r90831.
http://trac.webkit.org/changeset/90831
https://bugs.webkit.org/show_bug.cgi?id=64389

Likely caused fast/canvas/DrawImageSinglePixelStretch.html to
start timing out on the chromium GPU bots (Requested by ojan
on #webkit).

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

* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::getImageData):
(WebCore::putImageData):

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

8 years agoAdd a happy animation to garden-o-matic when there are no failures
abarth@webkit.org [Tue, 12 Jul 2011 20:58:03 +0000 (20:58 +0000)]
Add a happy animation to garden-o-matic when there are no failures
https://bugs.webkit.org/show_bug.cgi?id=64382

Reviewed by Ojan Vafai.

As requested by Ojan.

* Scripts/webkitpy/tool/servers/data/gardeningserver/main.css:
* Scripts/webkitpy/tool/servers/data/gardeningserver/main.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/partytime.gif: Added.
* Scripts/webkitpy/tool/servers/gardeningserver.py:

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

8 years ago[Qt][WK2] Navigation actions in incorrect state when loadStarted() is emitted.
andreas.kling@nokia.com [Tue, 12 Jul 2011 20:25:22 +0000 (20:25 +0000)]
[Qt][WK2] Navigation actions in incorrect state when loadStarted() is emitted.
https://bugs.webkit.org/show_bug.cgi?id=64383

Reviewed by Kenneth Rohde Christiansen.

Update the navigation actions before emitting loadStarted().

* UIProcess/API/qt/tests/qdesktopwebview/tst_qdesktopwebview.cpp:
(LoadStartedCatcher::LoadStartedCatcher):
(LoadStartedCatcher::onLoadStarted):
(tst_QDesktopWebView::stopActionEnabledAfterLoadStarted):
* UIProcess/qt/ClientImpl.cpp:
(qt_wk_didStartProvisionalLoadForFrame):

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

8 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Tue, 12 Jul 2011 20:22:21 +0000 (20:22 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

8 years agoReviewed by Kenneth Russell.
jamesr@google.com [Tue, 12 Jul 2011 19:56:59 +0000 (19:56 +0000)]
Reviewed by Kenneth Russell.

[chromium] Move draw implementation for ContentLayerChromium/ImageLayerChromium to the appropriate CCLayerImpl subclass
https://bugs.webkit.org/show_bug.cgi?id=58833

Adds a TiledLayerChromium class to handle the tiling logic shared by ContentLayerChromium and ImageLayerChromium
so that they can be siblings in the class hierarchy instead of children. Also adds a CCTiledLayerImpl to handle
the drawing responsibilities for tiled layers.

TiledLayerChromium maintains a tiler, tiling options, and calculates the tiling transform. Subclasses are
responsible for providing an appropriate texture updater implementation. CCTiledLayerImpl takes the tiler,
tiling transform and layer properties and draws the layer.  Longer term it'd be better of the CCTiledLayerImpl
owned the tiler and the TiledLayerChromium only owned an updater, but getting there will require changing the
way tile eviction works.

* WebCore.gypi:
* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerChromium::ContentLayerChromium):
(WebCore::ContentLayerChromium::paintContentsIfDirty):
(WebCore::ContentLayerChromium::drawsContent):
* platform/graphics/chromium/ContentLayerChromium.h:
(WebCore::ContentLayerChromium::textureUpdater):
* platform/graphics/chromium/ImageLayerChromium.cpp:
(WebCore::ImageLayerChromium::ImageLayerChromium):
(WebCore::ImageLayerChromium::cleanupResources):
(WebCore::ImageLayerChromium::paintContentsIfDirty):
(WebCore::ImageLayerChromium::textureUpdater):
(WebCore::ImageLayerChromium::contentBounds):
(WebCore::ImageLayerChromium::drawsContent):
(WebCore::ImageLayerChromium::createTextureUpdaterIfNeeded):
* platform/graphics/chromium/ImageLayerChromium.h:
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::pushPropertiesTo):
(WebCore::LayerChromium::ccLayerImpl):
* platform/graphics/chromium/LayerChromium.h:
(WebCore::LayerChromium::contentBounds):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawRootLayer):
(WebCore::visibleLayerRect):
(WebCore::paintLayerContentsIfDirty):
(WebCore::LayerRendererChromium::paintLayerContents):
(WebCore::LayerRendererChromium::drawLayer):
* platform/graphics/chromium/LayerTilerChromium.cpp:
(WebCore::LayerTilerChromium::updateRect):
(WebCore::LayerTilerChromium::draw):
(WebCore::LayerTilerChromium::drawTiles):
* platform/graphics/chromium/LayerTilerChromium.h:
* platform/graphics/chromium/TiledLayerChromium.cpp: Added.
(WebCore::TiledLayerChromium::TiledLayerChromium):
(WebCore::TiledLayerChromium::~TiledLayerChromium):
(WebCore::TiledLayerChromium::createCCLayerImpl):
(WebCore::TiledLayerChromium::cleanupResources):
(WebCore::TiledLayerChromium::setLayerRenderer):
(WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):
(WebCore::TiledLayerChromium::drawsContent):
(WebCore::TiledLayerChromium::createTilerIfNeeded):
(WebCore::TiledLayerChromium::updateCompositorResources):
(WebCore::TiledLayerChromium::setTilingOption):
(WebCore::TiledLayerChromium::setIsMask):
(WebCore::TiledLayerChromium::tilingTransform):
(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::writeIndent):
(WebCore::TiledLayerChromium::dumpLayerProperties):
* platform/graphics/chromium/TiledLayerChromium.h: Copied from Source/WebCore/platform/graphics/chromium/ContentLayerChromium.h.
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::draw):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore::CCLayerImpl::setDrawsContent):
(WebCore::CCLayerImpl::drawsContent):
(WebCore::CCLayerImpl::contentBounds):
(WebCore::CCLayerImpl::setContentBounds):
(WebCore::CCLayerImpl::doubleSided):
(WebCore::CCLayerImpl::setDoubleSided):
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: Added.
(WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
(WebCore::CCTiledLayerImpl::~CCTiledLayerImpl):
(WebCore::CCTiledLayerImpl::draw):
(WebCore::CCTiledLayerImpl::bindContentsTexture):
(WebCore::CCTiledLayerImpl::dumpLayerProperties):
* platform/graphics/chromium/cc/CCTiledLayerImpl.h: Added.
(WebCore::CCTiledLayerImpl::create):
(WebCore::CCTiledLayerImpl::setTilingTransform):
(WebCore::CCTiledLayerImpl::setTiler):

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

8 years ago2011-07-12 Arno Renevier <arno@renevier.net>
xan@webkit.org [Tue, 12 Jul 2011 19:41:24 +0000 (19:41 +0000)]
2011-07-12  Arno Renevier  <arno@renevier.net>

        [GTK] DOM bindings do not have gir annotations
        https://bugs.webkit.org/show_bug.cgi?id=45395

        Reviewed by Xan Lopez.

        * bindings/scripts/CodeGeneratorGObject.pm: generate introspection annotations.
        * bindings/scripts/test/GObject/WebKitDOMTestCallback.h: update for new output.
        * bindings/scripts/test/GObject/WebKitDOMTestObj.h: ditto.
        * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h: ditto.

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

8 years agosheriffbot can't perform rollouts
abarth@webkit.org [Tue, 12 Jul 2011 19:20:56 +0000 (19:20 +0000)]
sheriffbot can't perform rollouts
https://bugs.webkit.org/show_bug.cgi?id=64370

Reviewed by Eric Seidel.

Now that we're not updating the working copy before processing every
IRC message, the rollout command needs to update it manually.

* Scripts/webkitpy/tool/bot/irc_command.py:
* Scripts/webkitpy/tool/bot/irc_command_unittest.py:

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

8 years ago2011-07-12 Chris Rogers <crogers@google.com>
crogers@google.com [Tue, 12 Jul 2011 19:16:53 +0000 (19:16 +0000)]
2011-07-12  Chris Rogers  <crogers@google.com>

        webkitAudioContext does not do proper sanity checking on its arguments.
        https://bugs.webkit.org/show_bug.cgi?id=64076

        Reviewed by Kenneth Russell.

        No new tests since audio API is not yet implemented.

        * bindings/js/JSAudioContextCustom.cpp:
        (WebCore::JSAudioContextConstructor::constructJSAudioContext):
        (WebCore::JSAudioContext::createBuffer):
        * bindings/v8/custom/V8AudioContextCustom.cpp:
        (WebCore::V8AudioContext::constructorCallback):
        (WebCore::V8AudioContext::createBufferCallback):
        * platform/audio/HRTFDatabaseLoader.h:
        (WebCore::HRTFDatabaseLoader::databaseSampleRate):
        * webaudio/AudioContext.cpp:
        (WebCore::AudioContext::create):
        (WebCore::AudioContext::createOfflineContext):
        (WebCore::AudioContext::createBuffer):
        * webaudio/AudioContext.h:

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

8 years ago[Qt][WK2] Add a basic Pinch gesture recognizer for WebKit2
benjamin.poulain@nokia.com [Tue, 12 Jul 2011 19:16:24 +0000 (19:16 +0000)]
[Qt][WK2] Add a basic Pinch gesture recognizer for WebKit2
https://bugs.webkit.org/show_bug.cgi?id=64373

Reviewed by Andreas Kling.

This patch adds QtPinchGestureRecognizer to recognize pinch gesture out of
the events not handled by the WebProcess.

TouchViewInterface::pinchGestureRequestScale() has a basic default implementation
so the feature can be tested manually.

* UIProcess/qt/QtGestureRecognizer.cpp:
QtGestureRecognizer is the private base class for both gesture recognizer
in order to be able to share some code.
(WebKit::QtGestureRecognizer::QtGestureRecognizer):
(WebKit::QtGestureRecognizer::reset):
* UIProcess/qt/QtGestureRecognizer.h:
* UIProcess/qt/QtPanGestureRecognizer.cpp:
(WebKit::QtPanGestureRecognizer::QtPanGestureRecognizer):
(WebKit::QtPanGestureRecognizer::reset):
* UIProcess/qt/QtPanGestureRecognizer.h:
* UIProcess/qt/QtPinchGestureRecognizer.cpp: Added.
(WebKit::findTouchPointIndex):
(WebKit::computeTouchCenter):
(WebKit::QtPinchGestureRecognizer::QtPinchGestureRecognizer):
(WebKit::QtPinchGestureRecognizer::recognize):
(WebKit::QtPinchGestureRecognizer::reset):
(WebKit::QtPinchGestureRecognizer::initializeGesture):
* UIProcess/qt/QtPinchGestureRecognizer.h: Copied from Source/WebKit2/UIProcess/qt/QtPanGestureRecognizer.h.
(WebKit::QtPinchGestureRecognizer::TouchPointInformation::TouchPointInformation):
(WebKit::QtPinchGestureRecognizer::TouchPointInformation::isValid):
* UIProcess/qt/TouchViewInterface.cpp:
(WebKit::TouchViewInterface::TouchViewInterface):
(WebKit::TouchViewInterface::pinchGestureStarted):
(WebKit::TouchViewInterface::pinchGestureRequestScale):
The scale factor reported by the recognizer to the TouchViewInterface is the total scale since the start
of the gesture in order to avoid numerical instabilities.
(WebKit::TouchViewInterface::pinchGestureEnded):
* UIProcess/qt/TouchViewInterface.h:
* UIProcess/qt/qtouchwebpageproxy.cpp:
(QTouchWebPageProxy::QTouchWebPageProxy):
(QTouchWebPageProxy::processDidCrash):
(QTouchWebPageProxy::doneWithTouchEvent):
* UIProcess/qt/qtouchwebpageproxy.h:
* WebKit2.pro:

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

8 years ago[Qt][WK2] Navigation actions should react to web process availability.
andreas.kling@nokia.com [Tue, 12 Jul 2011 18:55:41 +0000 (18:55 +0000)]
[Qt][WK2] Navigation actions should react to web process availability.
https://bugs.webkit.org/show_bug.cgi?id=64375

Reviewed by Benjamin Poulain.

When the web process is unavailable, the reload and stop actions should
behave slightly differently. Stop should always be disabled, and reload
should be enabled if there's a reloadable item in the back/forward list.

* UIProcess/API/qt/tests/qdesktopwebview/tst_qdesktopwebview.cpp:
(tst_QDesktopWebView::navigationActionEnabledStatusAtStartup):
* UIProcess/API/qt/tests/qtouchwebview/tst_qtouchwebview.cpp:
(tst_QTouchWebView::navigationActionEnabledStatusAtStartup):
* UIProcess/qt/QtWebPageProxy.cpp:
(QtWebPageProxy::updateAction):
(QtWebPageProxy::didRelaunchProcess):
(QtWebPageProxy::processDidCrash):

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

8 years ago[chromium] DRT depends on v8
evan@chromium.org [Tue, 12 Jul 2011 18:53:52 +0000 (18:53 +0000)]
[chromium] DRT depends on v8
https://bugs.webkit.org/show_bug.cgi?id=64376

DumpRenderTree.cpp has calls to v8:: functions, so it should have a build
dependency on v8.  This fixes missing references in the shared-object build.

* WebKit.gyp:

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

8 years agoFix the grammar in the FIXME comment.
abarth@webkit.org [Tue, 12 Jul 2011 18:49:03 +0000 (18:49 +0000)]
Fix the grammar in the FIXME comment.

* Scripts/webkitpy/common/net/resultsjsonparser.py:

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

8 years agoImplement didReceiveDataArray callback for CFNetwork based loader
psolanki@apple.com [Tue, 12 Jul 2011 18:47:18 +0000 (18:47 +0000)]
Implement didReceiveDataArray callback for CFNetwork based loader
https://bugs.webkit.org/show_bug.cgi?id=64130

Reviewed by David Kilzer.

Factor out the didReceiveDataArray code from ResourceHandleMac.mm into
a new method ResourceHandle::handleDataArray(). Implement the callback
in the CFNetwork loader code and call handleDataArray() to process
incoming data.

No new tests because the flag is not enabled for any bots.

* platform/network/ResourceHandle.h:
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::didReceiveDataArray):
(WebCore::ResourceHandle::createCFURLConnection):
(WebCore::ResourceHandle::handleDataArray):
* platform/network/mac/ResourceHandleMac.mm:
(-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):

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

8 years agoSwitch preferred width/height and columns to to new layout types
eae@chromium.org [Tue, 12 Jul 2011 18:42:18 +0000 (18:42 +0000)]
Switch preferred width/height and columns to to new layout types
https://bugs.webkit.org/show_bug.cgi?id=64329

Reviewed by Eric Seidel.

No new tests, no new functionality.

* rendering/LayoutTypes.h:
(WebCore::ceiledLayoutUnit):
Add ceiledLayoutUnit to go with the floored version.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::adjustRectForColumns):
(WebCore::RenderBlock::flipForWritingModeIncludingColumns):
(WebCore::RenderBlock::adjustStartEdgeForWritingModeIncludingColumns):
Rename rect version of flipForWritingModeIncludingColumns to
adjustStartEdgeForWritingModeIncludingColumns as it adjust the start edge
and does not flip the rect.

(WebCore::RenderBlock::adjustForColumns):
(WebCore::updatePreferredWidth):
* rendering/RenderBlock.h:
* rendering/RenderBox.cpp:
(WebCore::RenderBox::minPreferredLogicalWidth):
(WebCore::RenderBox::maxPreferredLogicalWidth):
(WebCore::RenderBox::offsetFromContainer):
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::flipForWritingMode):
(WebCore::RenderBox::flipForWritingModeIncludingColumns):
* rendering/RenderBox.h:
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::itemBoundingBoxRect):
* rendering/RenderListBox.h:
* rendering/RenderObject.h:
(WebCore::RenderObject::minPreferredLogicalWidth):
(WebCore::RenderObject::maxPreferredLogicalWidth):
(WebCore::RenderObject::adjustForColumns):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeReplacedLogicalWidth):
(WebCore::RenderReplaced::computeReplacedLogicalHeight):
* rendering/TableLayout.h:

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

8 years agoChange roundedIntRect to roundedRect
leviw@chromium.org [Tue, 12 Jul 2011 18:37:09 +0000 (18:37 +0000)]
Change roundedIntRect to roundedRect
https://bugs.webkit.org/show_bug.cgi?id=64326

Reviewed by Eric Seidel.

Renaming RoundedIntRect to RoundedRect and moving the underlying type to Layout units from
integer-based versions.

No new tests, no new functionality

* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::addRoundedRectClip):
(WebCore::GraphicsContext::clipOutRoundedRect):
(WebCore::GraphicsContext::fillRoundedRect):
(WebCore::GraphicsContext::fillRectWithRoundedHole):
* platform/graphics/GraphicsContext.h:
* platform/graphics/Path.cpp:
(WebCore::Path::addRoundedRect):
* platform/graphics/Path.h:
* platform/graphics/RoundedIntRect.cpp: Removed.
* platform/graphics/RoundedIntRect.h: Removed.
* platform/graphics/RoundedRect.cpp: Copied from Source/WebCore/platform/graphics/RoundedIntRect.cpp.
(WebCore::RoundedRect::Radii::isZero):
(WebCore::RoundedRect::Radii::scale):
(WebCore::RoundedRect::Radii::expand):
(WebCore::RoundedRect::inflateWithRadii):
(WebCore::RoundedRect::Radii::includeLogicalEdges):
(WebCore::RoundedRect::Radii::excludeLogicalEdges):
(WebCore::RoundedRect::RoundedRect):
(WebCore::RoundedRect::includeLogicalEdges):
(WebCore::RoundedRect::excludeLogicalEdges):
(WebCore::RoundedRect::isRenderable):
* platform/graphics/RoundedRect.h: Copied from Source/WebCore/platform/graphics/RoundedIntRect.h.
(WebCore::RoundedRect::Radii::Radii):
(WebCore::RoundedRect::Radii::setTopLeft):
(WebCore::RoundedRect::Radii::setTopRight):
(WebCore::RoundedRect::Radii::setBottomLeft):
(WebCore::RoundedRect::Radii::setBottomRight):
(WebCore::RoundedRect::Radii::topLeft):
(WebCore::RoundedRect::Radii::topRight):
(WebCore::RoundedRect::Radii::bottomLeft):
(WebCore::RoundedRect::Radii::bottomRight):
(WebCore::RoundedRect::Radii::expand):
(WebCore::RoundedRect::Radii::shrink):
(WebCore::RoundedRect::rect):
(WebCore::RoundedRect::setRect):
(WebCore::RoundedRect::move):
(WebCore::RoundedRect::inflate):
(WebCore::RoundedRect::expandRadii):
(WebCore::RoundedRect::shrinkRadii):
(WebCore::operator==):
* platform/graphics/ShadowBlur.cpp:
(WebCore::ScratchBuffer::setLastShadowValues):
(WebCore::ScratchBuffer::setLastInsetShadowValues):
(WebCore::ScratchBuffer::matchesLastShadow):
(WebCore::ScratchBuffer::matchesLastInsetShadow):
(WebCore::computeSliceSizesFromRadii):
(WebCore::ShadowBlur::templateSize):
(WebCore::ShadowBlur::drawRectShadow):
(WebCore::ShadowBlur::drawInsetShadow):
(WebCore::ShadowBlur::drawRectShadowWithoutTiling):
(WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
(WebCore::ShadowBlur::drawInsetShadowWithTiling):
(WebCore::ShadowBlur::drawRectShadowWithTiling):
(WebCore::ShadowBlur::drawLayerPieces):
* platform/graphics/ShadowBlur.h:
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::fillRoundedRect):
(WebCore::GraphicsContext::fillRectWithRoundedHole):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintBoxDecorations):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::getBackgroundRoundedRect):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
(WebCore::RenderBoxModelObject::paintOneBorderSide):
(WebCore::RenderBoxModelObject::paintBorderSides):
(WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
(WebCore::RenderBoxModelObject::paintBorder):
(WebCore::RenderBoxModelObject::drawBoxSideFromPath):
(WebCore::RenderBoxModelObject::clipBorderSidePolygon):
(WebCore::RenderBoxModelObject::paintBoxShadow):
* rendering/RenderBoxModelObject.h:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintMenuListButtonGradients):
(WebCore::RenderThemeMac::paintSliderTrack):
* rendering/style/RenderStyle.cpp:
(WebCore::calcRadiiFor):
(WebCore::calcConstraintScaleFor):
(WebCore::RenderStyle::getRoundedBorderFor):
(WebCore::RenderStyle::getRoundedInnerBorderFor):
* rendering/style/RenderStyle.h:

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

8 years ago[skia] optimize getImageData to avoid a copy when not needed. lockPixels() now does...
commit-queue@webkit.org [Tue, 12 Jul 2011 18:31:53 +0000 (18:31 +0000)]
[skia] optimize getImageData to avoid a copy when not needed. lockPixels() now does the right thing.
https://bugs.webkit.org/show_bug.cgi?id=64302

Patch by Mike Reed <reed@google.com> on 2011-07-12
Reviewed by Stephen White.

No new tests. Just an optimization for getImageData(), existing <canvas> tests apply

* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::getImageData):
(WebCore::putImageData):

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

8 years agoWeb Inspector: introduce UserMetrics for collecting stats in Chromium port.
pfeldman@chromium.org [Tue, 12 Jul 2011 18:20:16 +0000 (18:20 +0000)]
Web Inspector: introduce UserMetrics for collecting stats in Chromium port.
https://bugs.webkit.org/show_bug.cgi?id=64350

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: inspector/user-metrics.html

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* bindings/js/JSInspectorFrontendHostCustom.cpp:
(WebCore::JSInspectorFrontendHost::recordActionTaken):
(WebCore::JSInspectorFrontendHost::recordPanelShown):
(WebCore::JSInspectorFrontendHost::recordSettingChanged):
* bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
(WebCore::histogramEnumeration):
(WebCore::V8InspectorFrontendHost::recordActionTakenCallback):
(WebCore::V8InspectorFrontendHost::recordPanelShownCallback):
(WebCore::V8InspectorFrontendHost::recordSettingChangedCallback):
* inspector/InspectorFrontendHost.idl:
* inspector/front-end/AuditsPanel.js:
(WebInspector.AuditsPanel.prototype.initiateAudit):
* inspector/front-end/ConsoleView.js:
* inspector/front-end/DebuggerModel.js:
(WebInspector.DebuggerModel.prototype.setBreakpoint):
(WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
* inspector/front-end/InspectorFrontendHostStub.js:
(.WebInspector.InspectorFrontendHostStub.prototype.loadSessionSetting):
(.WebInspector.InspectorFrontendHostStub.prototype.recordActionTaken):
(.WebInspector.InspectorFrontendHostStub.prototype.recordPanelShown):
(.WebInspector.InspectorFrontendHostStub.prototype.recordSettingChanged):
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfilesPanel.prototype._setRecordingProfile):
(WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
* inspector/front-end/UserMetrics.js: Added.
(WebInspector.UserMetrics.settingChanged):
(WebInspector.UserMetrics):
(WebInspector.UserMetrics.prototype.panelShown):
(WebInspector.UserMetrics._Recorder):
(WebInspector.UserMetrics._Recorder.prototype.record):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector._toggleAttach):

LayoutTests:

* inspector/user-metrics-expected.txt: Added.
* inspector/user-metrics.html: Added.

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

8 years ago[Qt][WK2] QDesktopWebView crashes if resized without web process.
andreas.kling@nokia.com [Tue, 12 Jul 2011 18:13:41 +0000 (18:13 +0000)]
[Qt][WK2] QDesktopWebView crashes if resized without web process.
https://bugs.webkit.org/show_bug.cgi?id=64371

Reviewed by Benjamin Poulain.

* UIProcess/qt/QtWebPageProxy.cpp:
(QtWebPageProxy::paint): Remove an invalid assertion. The drawing
area may be null if the web process has crashed.
(QtWebPageProxy::setDrawingAreaSize): Fail silently if there is no
drawing area.

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

8 years agoPatch by Jeff Timanus <twiz@chromium.org> on 2011-07-12
commit-queue@webkit.org [Tue, 12 Jul 2011 18:06:13 +0000 (18:06 +0000)]
Patch by Jeff Timanus <twiz@chromium.org> on 2011-07-12
Reviewed by Stephen White.

Suppress flaky Chromium layout tests.
https://bugs.webkit.org/show_bug.cgi?id=64308

* platform/chromium/test_expectations.txt:

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

8 years agoRemove results for iframe-outline.html
commit-queue@webkit.org [Tue, 12 Jul 2011 18:00:50 +0000 (18:00 +0000)]
Remove results for iframe-outline.html
https://bugs.webkit.org/show_bug.cgi?id=64343

fast/frames/iframe-outline.html was reverted in bug 57439 (another test
added to replace it). Remove the redundant iframe-outline test results.

Patch by Noel Gordon <noel.gordon@gmail.com> on 2011-07-12
Reviewed by Tony Chang.

* platform/chromium-win/fast/frames/iframe-outline-expected.png: Removed.
* platform/chromium/iframe-outline-expected.png: Removed.
* platform/gtk/fast/frames/iframe-outline-expected.png: Removed.
* platform/gtk/fast/frames/iframe-outline-expected.txt: Removed.

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

8 years agoNRWT should open test results page with Safari trunk, not the system provided one...
eric@webkit.org [Tue, 12 Jul 2011 17:52:54 +0000 (17:52 +0000)]
NRWT should open test results page with Safari trunk, not the system provided one on Mac
https://bugs.webkit.org/show_bug.cgi?id=64346

Reviewed by Adam Barth.

To fix this I implemented Port.show_results_html_file in Mac, Gtk and Qt ports with
implementations (mostly) matching those found in old-run-webkit-tests.
There are still some minor differences for Qt which Qt hackers may wish to tweak.

I had to add a WebKitPort._port_flag_for_scripts method (similar to flag() in common.config.ports.py)
for the Qt/Gtk ports which always require a flag passed to scripts.

While trying to test this, I found that FactoryTest.test_chromium_gpu_linux
was using a real filesystem (due to assert_platform) which due to
global variables in config.py was causing set-webkit-configuration to have
an affect on unit test results!  So I fixed this by making FactoryTest.assert_port
pass a mock file system whenever calling factory.get.

Unfortunately TestPort was depending on always being passed a None filesystem
and asserting filesystem._tests (only true for unit_test_filesystem()).
So I just removed the FactoryTest.test_test and FactoryTest.test_dryrun tests
deciding that they were pretty much useless anyway.  If others feel strongly
I'm happy to fix this in a different way.

* Scripts/webkitpy/common/system/executive.py:
 - default arguments in python are screwy.  They use a single shared
   instance, so it's better to use argument=None and then argument = argument or Default()
   if you have any chance of mutating (or returning) the default argument.
* Scripts/webkitpy/layout_tests/port/config.py:
 - This code is wrong.  We don't need to use a global variable here (as far as I can tell).
   I'm not fixing it in this patch, but I've marked it with a FIXME and we can convert to
   storing the results of the read on the Config object (which should only be created once during normal operation).
   Unit tests shouldn't be hitting the disk anyway.  It's possible Config should move off of Port and onto Tool/Host directly.
* Scripts/webkitpy/layout_tests/port/factory.py:
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
* Scripts/webkitpy/layout_tests/port/gtk.py:
* Scripts/webkitpy/layout_tests/port/gtk_unittest.py: Added.
* Scripts/webkitpy/layout_tests/port/mac.py:
* Scripts/webkitpy/layout_tests/port/mac_unittest.py:
* Scripts/webkitpy/layout_tests/port/qt.py:
* Scripts/webkitpy/layout_tests/port/qt_unittest.py:
* Scripts/webkitpy/layout_tests/port/webkit.py:

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

8 years agoReviewed by David Kilzer.
psolanki@apple.com [Tue, 12 Jul 2011 17:51:16 +0000 (17:51 +0000)]
Reviewed by David Kilzer.

Add NSURLResponse wrapper in ResourceResponse when USE(CFNETWORK) is enabled
https://bugs.webkit.org/show_bug.cgi?id=63286

When USE(CFNETWORK) is enabled on Mac, keep an NSURLResponse object along with the
CFURLResponseRef so that WebKit can continue using the NSURLResponse.

No new tests because no change in functionality and option is not enabled on Mac.

* platform/network/cf/ResourceResponse.h:
(WebCore::ResourceResponse::ResourceResponse):
* platform/network/mac/ResourceResponseMac.mm:
(WebCore::ResourceResponse::initNSURLResponse):
(WebCore::ResourceResponse::nsURLResponse):
(WebCore::ResourceResponse::ResourceResponse):

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

8 years agoTeach TestFailures to recognize when run-webkit-tests gets killed by buildbot
aroben@apple.com [Tue, 12 Jul 2011 17:50:59 +0000 (17:50 +0000)]
Teach TestFailures to recognize when run-webkit-tests gets killed by buildbot

Fixes <http://webkit.org/b/64358> TestFailures page thinks all tests passed in
http://build.webkit.org/builders/Windows%207%20Release%20(Tests)/builds/14672

Reviewed by Daniel Bates.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/Builder.js:
(Builder.prototype.getNumberOfFailingTests): If run-webkit-tests exited with a non-zero
exit status but we didn't find any failure counts, assume that there was some error that
caused run-webkit-tests to die early (like being killed by buildbot due to a timeout).

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/Builder_unittests.js:
Added a new test that shows that we get a failingTestCount of -1 when run-webkit-tests dies
early.
(runGetNumberOfFailingTestsTest): Moved most code here from the only pre-existing test in this
file.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/LayoutTestResultsLoader.js:
(LayoutTestResultsLoader.prototype.start): Bump the cache number so old cached data that was
tainted by the bug fixed in this patch will be evicted.

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

8 years agocr-linux-ews complains about tests that aren't actually failing
abarth@webkit.org [Tue, 12 Jul 2011 17:49:27 +0000 (17:49 +0000)]
cr-linux-ews complains about tests that aren't actually failing
https://bugs.webkit.org/show_bug.cgi?id=64367

The underlying problem here is that full_results.json doesn't have
enough information to determine whether a given test result was
expected because whether an actual result is expected depends on
whether full_results.json was generated duing a test run that included
pixel tests.

The right long-term solution is to make full_results.json a complete
description of what happened durning a test run.  In this patch
however, to stop the spam, this patch makes the jsonresultsparser
ignore pixel failures.

(I'm landing this patch unreviewed in order to stop the bots from
spamming.  I'll happily address any review comments in a follow-up
patch.)

* Scripts/webkitpy/common/net/resultsjsonparser.py:
* Scripts/webkitpy/common/net/resultsjsonparser_unittest.py:

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

8 years agoRe-work garden-o-matic UI to begin to look like the mocks
abarth@webkit.org [Tue, 12 Jul 2011 17:46:16 +0000 (17:46 +0000)]
Re-work garden-o-matic UI to begin to look like the mocks
https://bugs.webkit.org/show_bug.cgi?id=64334

Reviewed by Dimitri Glazkov.

This patch changes how we display failures to be more like the mock the
dglazkov made. We now can display the same information much more
compactly.

* Scripts/webkitpy/tool/servers/data/gardeningserver/base.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/base_unittests.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/index.html:
* Scripts/webkitpy/tool/servers/data/gardeningserver/main.css: Added.
* Scripts/webkitpy/tool/servers/data/gardeningserver/main.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/results.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/results_unittests.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/ui.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/ui_unittests.js:
* Scripts/webkitpy/tool/servers/gardeningserver.py:

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

8 years agoWebKitTestRunner needs an implemenation of allowRoundingHacks
jberlin@webkit.org [Tue, 12 Jul 2011 16:28:01 +0000 (16:28 +0000)]
WebKitTestRunner needs an implemenation of allowRoundingHacks
https://bugs.webkit.org/show_bug.cgi?id=63477

Add platform/mac/fast/text/rounding-hacks-expansion.html to the wk2 Skipped list to get the
bots green.

* platform/wk2/Skipped:

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

8 years ago[Qt][WK2] Add informative loadFailed() signal to web views.
andreas.kling@nokia.com [Tue, 12 Jul 2011 16:15:58 +0000 (16:15 +0000)]
[Qt][WK2] Add informative loadFailed() signal to web views.
https://bugs.webkit.org/show_bug.cgi?id=64362

Reviewed by Benjamin Poulain.

The web views will now emit loadFailed(QWebError) when a load failure occurs.

The QWebError object currently contains:
- Type of failure (whether it's an engine, network or protocol error.)
- The failing URL.
- Any error code associated with the failure.

* UIProcess/API/qt/qdesktopwebview.cpp:
(QDesktopWebViewPrivate::loadDidFail):
* UIProcess/API/qt/qdesktopwebview.h:
* UIProcess/API/qt/qdesktopwebview_p.h:
* UIProcess/API/qt/qtouchwebpage.h:
* UIProcess/API/qt/qweberror.cpp: Added.
(QWebError::QWebError):
(QWebErrorPrivate::createQWebError):
(QWebErrorPrivate::QWebErrorPrivate):
(QWebErrorPrivate::~QWebErrorPrivate):
(QWebError::type):
(QWebError::errorCode):
(QWebError::url):
* UIProcess/API/qt/qweberror.h: Added.
* UIProcess/API/qt/qweberror_p.h: Added.
* UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp:
(tst_CommonViewTests::loadNonexistentFileUrl):
* UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp:
(WebViewAbstraction::WebViewAbstraction):
(WebViewAbstraction::touchViewLoadFailed):
(WebViewAbstraction::desktopViewLoadFailed):
* UIProcess/API/qt/tests/commonviewtests/webviewabstraction.h:
* UIProcess/qt/ClientImpl.cpp:
(dispatchLoadSucceeded):
(dispatchLoadFailed):
(qt_wk_didFailProvisionalLoadWithErrorForFrame):
(qt_wk_didFinishLoadForFrame):
(qt_wk_didFailLoadWithErrorForFrame):
* UIProcess/qt/QtWebPageProxy.cpp:
(QtWebPageProxy::loadDidFail):
* UIProcess/qt/QtWebPageProxy.h:
* UIProcess/qt/TouchViewInterface.cpp:
(WebKit::TouchViewInterface::loadDidFail):
* UIProcess/qt/TouchViewInterface.h:
* UIProcess/qt/ViewInterface.h:
* WebKit2API.pri:

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

8 years agoWeb Inspector: Cancelling an empty edit fails.
podivilov@chromium.org [Tue, 12 Jul 2011 14:53:20 +0000 (14:53 +0000)]
Web Inspector: Cancelling an empty edit fails.
https://bugs.webkit.org/show_bug.cgi?id=64351

Reviewed by Pavel Feldman.

* inspector/front-end/ResourceView.js:
(WebInspector.EditableResourceSourceFrame.prototype.cancelEditing):

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

8 years agoWeb Inspector: make TextViewerDelegate methods implementations public in SourceFrame.
podivilov@chromium.org [Tue, 12 Jul 2011 14:49:33 +0000 (14:49 +0000)]
Web Inspector: make TextViewerDelegate methods implementations public in SourceFrame.
https://bugs.webkit.org/show_bug.cgi?id=64353

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/front-end/SourceFrame.js:
(WebInspector.SourceFrame.prototype.beforeTextChanged):
(WebInspector.SourceFrame.prototype.afterTextChanged):
(WebInspector.SourceFrame.prototype.populateTextAreaContextMenu):
(WebInspector.SourceFrame.prototype.suggestedFileName):
(WebInspector.SourceFrame.prototype.doubleClick):
(WebInspector.SourceFrame.prototype.cancelEditing):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.doubleClick):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.beforeTextChanged):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.afterTextChanged):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.commitEditing):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.cancelEditing):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.populateLineGutterContextMenu):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.populateTextAreaContextMenu):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.suggestedFileName):

LayoutTests:

* inspector/debugger/live-edit.html:

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

8 years ago[Qt] Forward the touch view scale changes to the tiled drawing area.
jocelyn.turcotte@nokia.com [Tue, 12 Jul 2011 14:44:33 +0000 (14:44 +0000)]
[Qt] Forward the touch view scale changes to the tiled drawing area.
https://bugs.webkit.org/show_bug.cgi?id=64357

Reviewed by Kenneth Rohde Christiansen.

The drawing area needs to know the new scale to render tiles accordingly.

* UIProcess/API/qt/qtouchwebpage.cpp:
(QTouchWebPagePrivate::commitScaleChange):
* UIProcess/qt/qtouchwebpageproxy.cpp:
(QTouchWebPageProxy::setContentsScale):
* UIProcess/qt/qtouchwebpageproxy.h:
(QTouchWebPageProxy::drawingArea):

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

8 years agoUpdate Windows expected results for plugins/mouse-events-fixedpos.html after r90742
aroben@apple.com [Tue, 12 Jul 2011 13:59:01 +0000 (13:59 +0000)]
Update Windows expected results for plugins/mouse-events-fixedpos.html after r90742

* platform/win/plugins/mouse-events-fixedpos-expected.txt:

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

8 years agoWeb Inspector: remove more dead code from the Network panel
caseq@chromium.org [Tue, 12 Jul 2011 13:54:10 +0000 (13:54 +0000)]
Web Inspector: remove more dead code from the Network panel
https://bugs.webkit.org/show_bug.cgi?id=64291

Reviewed by Pavel Feldman.

* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkPanel.prototype._toggleGridMode):
(WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
* inspector/front-end/networkPanel.css:

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

8 years agoExtract TestFailures's bug-filing code into two new classes
aroben@apple.com [Tue, 12 Jul 2011 13:53:27 +0000 (13:53 +0000)]
Extract TestFailures's bug-filing code into two new classes

Fixes <http://webkit.org/b/64300> TestFailures page's new-bug-filing code is a mess!

Reviewed by Darin Adler and Adam Barth.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/Buildbot.js:
(Buildbot.prototype.resultsDirectoryURL): Changed to return a URI-encoded URL. Otherwise the
URL isn't valid (and it's harder to mock this function).

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/Buildbot_unittests.js:
Added. Just tests the above change (for now).

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/Builder_unittests.js:
Added a license header, enclosed everything in a closure to avoid polluting the global
namespace, changed the test name to actually describe the passing condition, and replaced
uses of equals() with equal(). (The latter is the actual name of the function, and matches
deepEqual, etc.)

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/NewBugForm.js: Added.
(NewBugForm): This class knows how to construct a <form> used for filing new bugs in
Bugzilla based on some parameters.
(NewBugForm.prototype.domElement): Creates and returns the <form> element. Code came from
ViewController.prototype._domForNewAndExistingBugs.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/NewBugForm_unittests.js:
Added. Tests the above code.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/TestFailureBugForm.js: Added.
(TestFailureBugForm): This class knows how to construct a <form> element used for filing new
bugs specifically about test failures. Code came from
ViewController.prototype._domForNewAndExistingBugs.
(TestFailureBugForm.prototype.domElement): Slightly customizes the <form> element returned
by NewBugForm.
(TestFailureBugForm.prototype._computeOperatingSystem):
(TestFailureBugForm.prototype._computePlatform):
(TestFailureBugForm.prototype._createBugTitle):
(TestFailureBugForm.prototype._failingResultsHTMLURL):
(TestFailureBugForm.prototype._failingRevision):
(TestFailureBugForm.prototype._passingRevision):
(TestFailureBugForm.prototype._regressionRangeString):
Code came from ViewController.prototype._domForNewAndExistingBugs. I broke it out into
separate functions to break up the rat's nest a bit.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/TestFailureBugForm_unittests.js:
Added. Tests the above code.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/ViewController.js:
(ViewController.prototype._domForNewAndExistingBugs): Moved code from here to
TestFailureBugForm/NewBugForm, and changed this code to use a TestFailureBugForm.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/index.html: Pull in
NewBugForm/TestFailureBugForm.js.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/run-unittests.html:
Added new tests and required files.

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

8 years agoEnsure no intermediate WTF::Strings are created when concatenating with string literals
aroben@apple.com [Tue, 12 Jul 2011 13:35:57 +0000 (13:35 +0000)]
Ensure no intermediate WTF::Strings are created when concatenating with string literals

Fixes <http://webkit.org/b/63330> Concatenating string literals and WTF::Strings using
operator+ is suboptimal

Reviewed by Darin Adler.

Source/JavaScriptCore:

* wtf/text/StringConcatenate.h:
(WTF::StringTypeAdapter<String>::writeTo): Added a macro that can be used for testing how
many WTF::Strings get copied while evaluating an operator+ expression.

* wtf/text/StringOperators.h:
(WTF::operator+): Changed the overload that takes a StringAppend to take it on the left-hand
side, since operator+ is left-associative. Having the StringAppend on the right-hand side
was causing us to make intermediate WTF::Strings when evaluating expressions that contained
multiple calls to operator+. Added some more overloads for that take a left-hand side of
const char* to resolve overload ambiguity for certain expressions. Added overloads that take
a left-hand side of const UChar* (matching the const char* overloads) so that wide string
literals don't first have to be converted to a WTF::String in operator+ expressions.

Source/WebKit2:

Export some symbols needed by TestWebKitAPI

* win/WebKit2.def:

Tools:

Test that no intermediate WTF::Strings are created when concatenating with string literals

* TestWebKitAPI/Tests/WTF/StringOperators.cpp: Added.
(TestWebKitAPI::TEST): Test that a bunch of different string concatenation expressions don't
create any intermediate WTF::Strings while they're being evaluated.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/win/TestWebKitAPI.vcproj:
Added new file.

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

8 years agoUnreviewed, rolling out r90811.
aroben@apple.com [Tue, 12 Jul 2011 12:39:52 +0000 (12:39 +0000)]
Unreviewed, rolling out r90811.
http://trac.webkit.org/changeset/90811
https://bugs.webkit.org/show_bug.cgi?id=61025

Several svg tests failing assertions beneath
SVGSMILElement::findInstanceTime

Source/JavaScriptCore:

* wtf/StdLibExtras.h:
(WTF::binarySearch):

Source/WebCore:

* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::findInstanceTime):

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

8 years agoPatch by Oliver Varga <Varga.Oliver@stud.u-szeged.hu> on 2011-07-12
reni@webkit.org [Tue, 12 Jul 2011 10:14:30 +0000 (10:14 +0000)]
Patch by Oliver Varga <Varga.Oliver@stud.u-szeged.hu> on 2011-07-12
Reviewed by Nikolas Zimmermann.

Speed up SVGSMILElement::findInstanceTime.
https://bugs.webkit.org/show_bug.cgi?id=61025

Source/JavaScriptCore:

Add a new parameter to StdlibExtras.h::binarySerarch function
to also handle cases when the array does not contain the key value.
This is needed for an svg function.

* wtf/StdLibExtras.h:
(WTF::binarySearch):

Source/WebCore:

Replace the linear search to binary search on ordered list because
the previous searches from the beginning was not efficient.
Out of index error fixed by Renata Hodovan.

No new tests this is only a performance tweak.

* svg/animation/SVGSMILElement.cpp:
(WebCore::extractTimeFromVector):
(WebCore::SVGSMILElement::findInstanceTime):

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

8 years ago[Qt] NRWT should pick up the right httpd config file
eric@webkit.org [Tue, 12 Jul 2011 08:08:28 +0000 (08:08 +0000)]
[Qt] NRWT should pick up the right httpd config file
https://bugs.webkit.org/show_bug.cgi?id=64086

Reviewed by Adam Barth.

Tools:

This is more fall-out from the Port class inappropriately encapsulating
both platform and port knowledge.  We need to split out some of this
platform knowledge into a separate class which can be better shared
between ports.

The fix was to move all the _path_to_apache_config_file logic down
into the WebKitPort baseclass so that all of the ports can find the
right apache config file, regardless of what platform they may be running on.

I did not move this down into base.Port (even though I considered it).
Chromium duplicates some of this logic, but since they have separate
subclasses for each port-OS combination (e.g. ChromiumMac, ChromiumWin)
they wouldn't notice the change.  Eventually we'll move this logic
out of Port entirely, and then it will be shared by all ports.

I also cleaned up the http-config logic for ORWT while I was there,
although since we're killing that code, I'm happy to revert that part
of the change if changing it is viewed as needlessly risky.

During this cleanup, I noticed that no ports use the "default" httpd.conf
which is left over from Mac OS X Tiger (and old linux distros) which used
Apache 1.3.  I've removed httpd.conf (and associated support in ORWT) since
we no longer support any ports which use this httpd.conf.

* Scripts/webkitperl/httpd.pm:
(getHTTPDConfigPathForTestDirectory):
* Scripts/webkitpy/layout_tests/port/base.py:
* Scripts/webkitpy/layout_tests/port/gtk.py:
* Scripts/webkitpy/layout_tests/port/mac.py:
* Scripts/webkitpy/layout_tests/port/qt.py:
* Scripts/webkitpy/layout_tests/port/webkit.py:
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
* Scripts/webkitpy/layout_tests/port/win.py:
* Scripts/webkitpy/layout_tests/servers/apache_http_server.py:

LayoutTests:

Removed this old httpd.conf file (used by Tiger and old linux distros)
since no supported WebKit ports use it anymore.

* http/conf/httpd.conf: Removed.

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

8 years agoOptimize HTMLInputElement::updateCheckedRadioButtons
commit-queue@webkit.org [Tue, 12 Jul 2011 06:26:04 +0000 (06:26 +0000)]
Optimize HTMLInputElement::updateCheckedRadioButtons
https://bugs.webkit.org/show_bug.cgi?id=62840

Patch by Zeng Huiqing <huiqing.zeng@intel.com> on 2011-07-11
Reviewed by Kent Tamura.

No new tests.

* dom/Document.h:
(WebCore::Document::getFormElements):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::updateCheckedRadioButtons):
(WebCore::HTMLInputElement::setChecked):

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

8 years agoPatch by Jaehun Lim <ljaehun.lim@samsung.com> on 2011-07-11
commit-queue@webkit.org [Tue, 12 Jul 2011 05:58:21 +0000 (05:58 +0000)]
Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2011-07-11
Reviewed by Ryosuke Niwa.

[EFL] Supports to execute "redo" command.
https://bugs.webkit.org/show_bug.cgi?id=62536

Implements basic functions for "redo" command.

* WebCoreSupport/EditorClientEfl.cpp:
(WebCore::EditorClientEfl::registerCommandForUndo):
(WebCore::EditorClientEfl::registerCommandForRedo):
(WebCore::EditorClientEfl::clearUndoRedoOperations):
(WebCore::EditorClientEfl::canRedo):
(WebCore::EditorClientEfl::undo):
(WebCore::EditorClientEfl::redo):
(WebCore::EditorClientEfl::EditorClientEfl):
* WebCoreSupport/EditorClientEfl.h:

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

8 years agoReviewed by David Kilzer.
psolanki@apple.com [Tue, 12 Jul 2011 04:54:54 +0000 (04:54 +0000)]
Reviewed by David Kilzer.

Add NSURLRequest wrapper in ResourceRequest when USE(CFNETWORK) is enabled
https://bugs.webkit.org/show_bug.cgi?id=63276

When USE(CFNETWORK) is enabled on Mac, keep an NSURLRequest object along with the
CFURLRequestRef so that WebKit can continue using the NSURLRequest.

No new tests because no change in functionality and option is not enabled on Mac.

* platform/network/cf/ResourceRequest.h:
(WebCore::ResourceRequest::updateNSURLRequest):
(WebCore::ResourceRequest::ResourceRequest):
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::findCFURLRequestSetContentDispositionEncodingFallbackArrayFunction):
(WebCore::findCFURLRequestCopyContentDispositionEncodingFallbackArrayFunction):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::applyWebArchiveHackForMail):
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::nsURLRequest):
(WebCore::ResourceRequest::ResourceRequest):
(WebCore::ResourceRequest::updateNSURLRequest):

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

8 years agoReviewed by Adam Roben.
hbono@chromium.org [Tue, 12 Jul 2011 02:51:39 +0000 (02:51 +0000)]
Reviewed by Adam Roben.

Implement layoutTestController.setTextDirection for WebKit2 and Windows.
https://bugs.webkit.org/show_bug.cgi?id=61931

This change implements layoutTextController.setTextDirection for WebKit2
and Windows so we can run a layout test added by r87770 on them. Each
implementation adds a wrapper function for Editor::setBaseWritingDirection()
so LayoutTestController can call it.

Source/WebKit/win:

* Interfaces/IWebFramePrivate.idl: Added setTextDirection to allow
LayoutTestController to change the text direction.
* WebFrame.cpp: ditto.
(WebFrame::setTextDirection):
* WebFrame.h: ditto.

Source/WebKit2:

* WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: Added
WKBundleFrameSetTextDirection to allow LayoutTestController to change the
text direction.
(WKBundleFrameSetTextDirection):
* WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: ditto.
* WebProcess/WebPage/WebFrame.cpp: Added setTextDirection to allow
WKBundleFrame to change the text direction.
(WebKit::WebFrame::setTextDirection):
* WebProcess/WebPage/WebFrame.h: ditto.

Tools:

* DumpRenderTree/win/LayoutTestControllerWin.cpp:
(LayoutTestController::setTextDirection): Implemented the binding function
for layoutTestController.setTextDirection (Windows).
* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
Added a binding function for layoutTestController.setTextDirection (WebKit2).
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp: ditto.
(WTR::LayoutTestController::setTextDirection):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h: ditto.

LayoutTests:

* platform/mac-wk2/Skipped: Removed set-text-direction.html.
* platform/win/Skipped: ditto.

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

8 years ago[EFL] ImageDiff: Make sure gEcoreEvas is destroyed at the right time.
commit-queue@webkit.org [Tue, 12 Jul 2011 02:20:09 +0000 (02:20 +0000)]
[EFL] ImageDiff: Make sure gEcoreEvas is destroyed at the right time.
https://bugs.webkit.org/show_bug.cgi?id=64293

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-07-11
Reviewed by Kent Tamura.

gEcoreEvas was being destroyed after shutdownEfl() was called, so the
call to ecore_evas_free() failed.

We now shut it down manually before shutdownEfl() is called.

* DumpRenderTree/efl/ImageDiff.cpp:
(main): Destroy gEcoreEvas before shutting down the EFL.

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

8 years agoMake Chromium Mac and Linux tests bot core builders
rniwa@webkit.org [Tue, 12 Jul 2011 02:17:34 +0000 (02:17 +0000)]
Make Chromium Mac and Linux tests bot core builders
https://bugs.webkit.org/show_bug.cgi?id=63196

Reviewed by Adam Barth.

Added Chromium Mac and Linux Release Tests bots core builders.

Also rearranged the order of bots so that test bots show up right next to
respective builders.

* BuildSlaveSupport/build.webkit.org-config/config.json:
* Scripts/webkitpy/common/net/buildbot/buildbot.py:
* Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:

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

8 years ago[EFL] DRT: Add code related to font management.
commit-queue@webkit.org [Tue, 12 Jul 2011 02:11:28 +0000 (02:11 +0000)]
[EFL] DRT: Add code related to font management.
https://bugs.webkit.org/show_bug.cgi?id=63989

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-07-11
Reviewed by Kent Tamura.

The added files are responsible for managing fontconfig and adding the
fonts required by some layout tests to fontconfig's path.

* DumpRenderTree/efl/FontManagement.cpp: Added.
(getFontDirectories):
(getFontFiles):
(addFontDirectories):
(addFontFiles):
(addFontsToEnvironment):
* DumpRenderTree/efl/FontManagement.h: Added.

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

8 years agoSkip hittest-on-relative-positioned-children.html in WebKit2.
rniwa@webkit.org [Tue, 12 Jul 2011 01:56:40 +0000 (01:56 +0000)]
Skip hittest-on-relative-positioned-children.html in WebKit2.

* platform/wk2/Skipped:

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

8 years agoWebSocket: Remove WebSocket tests that do not apply to hybi protocol
yutak@chromium.org [Tue, 12 Jul 2011 01:26:12 +0000 (01:26 +0000)]
WebSocket: Remove WebSocket tests that do not apply to hybi protocol
https://bugs.webkit.org/show_bug.cgi?id=64288

Reviewed by Kent Tamura.

Remove tests from http/tests/websocket/tests/hybi that are not meaningful in terms of
the hybi protocol. The most recent WebSocket protocol draft is available at
<http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10>, and referred as
"hybi-10" here.

* http/tests/websocket/tests/hybi/error-detect-expected.txt: Removed.
* http/tests/websocket/tests/hybi/error-detect.html: Removed.
Hybi protocol has a completely different scheme of representing frame types.
Additionally, hybi-10 no longer fires "error" events (which invoke "onerror" handler).
* http/tests/websocket/tests/hybi/fixed-origin_wsh.py: Removed.
* http/tests/websocket/tests/hybi/frame-length-longer-than-buffer-expected.txt: Removed.
* http/tests/websocket/tests/hybi/frame-length-longer-than-buffer.html: Removed.
Variable-length encoding (which is used to represent frame length in hixie-76) is no longer
used in hybi-10.
* http/tests/websocket/tests/hybi/frame-length-longer-than-buffer_wsh.py: Removed.
* http/tests/websocket/tests/hybi/frame-length-overflow-expected.txt: Removed.
* http/tests/websocket/tests/hybi/frame-length-overflow.html: Removed. Ditto.
* http/tests/websocket/tests/hybi/frame-length-overflow_wsh.py: Removed.
* http/tests/websocket/tests/hybi/frame-length-skip-expected.txt: Removed.
* http/tests/websocket/tests/hybi/frame-length-skip.html: Removed.
There are two ways to indicate the length of a frame in hixie-76 protocol, but
hybi-10 has only one method (length-prefixed frames). Skipping unwanted frames will
be covered by other tests that will be added in a later patch.
* http/tests/websocket/tests/hybi/frame-length-skip_wsh.py: Removed.
* http/tests/websocket/tests/hybi/handshake-fail-by-cross-origin-expected.txt: Removed.
* http/tests/websocket/tests/hybi/handshake-fail-by-cross-origin.html: Removed.
In hybi-10, servers no longer returns Origin header in handshake response, and clients
are not required to validate this value.
* http/tests/websocket/tests/hybi/handshake-fail-by-sub-protocol-mismatch-expected.txt: Removed.
* http/tests/websocket/tests/hybi/handshake-fail-by-sub-protocol-mismatch.html: Removed.
In hybi-10, clients are not required to (and must not) compare the values of subprotocols
in client's request and server's response.
* http/tests/websocket/tests/hybi/unknown-frame-type_wsh.py: Removed.
* http/tests/websocket/tests/hybi/url-with-query-for-no-query-expected.txt: Removed.
* http/tests/websocket/tests/hybi/url-with-query-for-no-query.html: Removed.
In hybi-10, servers do not provide "Sec-WebSocket-Location" header, and clients are not required
to validate this value.
* http/tests/websocket/tests/hybi/websocket-protocol-ignored-expected.txt: Removed.
* http/tests/websocket/tests/hybi/websocket-protocol-ignored.html: Removed.
Same as handshake-fail-by-sub-protocol-mismatch.html.

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

8 years agopositionForPoint is broken when a block is positioned relatively inside the parent
rniwa@webkit.org [Tue, 12 Jul 2011 01:10:32 +0000 (01:10 +0000)]
positionForPoint is broken when a block is positioned relatively inside the parent
https://bugs.webkit.org/show_bug.cgi?id=64298

Reviewed by Simon Fraser.

Source/WebCore:

The bug was caused by positionForPointRespectingEditingBoundaries's not taking relativePositionOffset
into account when computing the point in child coordinates. Fixed the bug by adding the offset to
childLocation as needed.

Test: fast/block/positioning/hittest-on-relative-positioned-children.html

* rendering/RenderBlock.cpp:
(WebCore::positionForPointRespectingEditingBoundaries): Fixed the bug; also replaced all instances of
IntPoint by LayoutPoint.

LayoutTests:

Added a test for hit testing on relatively positioned children.

* fast/block/positioning/hittest-on-relative-positioned-children-expected.txt: Added.
* fast/block/positioning/hittest-on-relative-positioned-children.html: Added.

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

8 years agoDFG speculative JIT does not guard itself against floating point speculation
commit-queue@webkit.org [Tue, 12 Jul 2011 01:10:07 +0000 (01:10 +0000)]
DFG speculative JIT does not guard itself against floating point speculation
failures on non-floating-point constants.
https://bugs.webkit.org/show_bug.cgi?id=64330

Patch by Filip Pizlo <fpizlo@apple.com> on 2011-07-11
Reviewed by Gavin Barraclough.

Made fillSpeculateDouble immediate invoke terminateSpeculativeExecution() as
soon as it notices that it's speculating on something that is a non-numeric
JSConstant.

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

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

8 years agoExcessive expansion of justified text when rounding hacks are enabled
mitz@apple.com [Tue, 12 Jul 2011 00:39:46 +0000 (00:39 +0000)]
Excessive expansion of justified text when rounding hacks are enabled
https://bugs.webkit.org/show_bug.cgi?id=64331

Reviewed by Anders Carlsson.

Source/WebCore:

Test: platform/mac/fast/text/rounding-hacks-expansion.html

When rounding hacks are enabled, the expansion at each expansion opportunity should be by an
integer. Restored more of the logic that was removed in r78846 in order to ensure this.

* platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::advance):
* platform/graphics/mac/ComplexTextController.cpp:
(WebCore::ComplexTextController::adjustGlyphsAndAdvances):

LayoutTests:

* platform/mac/fast/text/rounding-hacks-expansion.html: Added.
* platform/mac/platform/mac/fast/text/rounding-hacks-expansion-expected.png: Added.
* platform/mac/platform/mac/fast/text/rounding-hacks-expansion-expected.txt: Added.

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

8 years agoHTML5 video controller in fullscreen is partly off-screen (at least on youtube) using...
jer.noble@apple.com [Tue, 12 Jul 2011 00:30:54 +0000 (00:30 +0000)]
HTML5 video controller in fullscreen is partly off-screen (at least on youtube) using ClickToFlash
https://bugs.webkit.org/show_bug.cgi?id=64327

Reviewed by Darin Adler.

No new tests; no change in functionality, so covered by existing tests.

Make the rules from fullscreenQuickTime.css !important so they are not overridden
by page authors.

* css/fullscreenQuickTime.css:
(video:-webkit-full-screen::-webkit-media-controls-panel):

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

8 years agonrwt: linting fixes
dpranke@chromium.org [Tue, 12 Jul 2011 00:10:19 +0000 (00:10 +0000)]
nrwt: linting fixes
https://bugs.webkit.org/show_bug.cgi?id=64225

Reviewed by Eric Siedel.

Miscellaneous linting fixes. The most notable change is that
we add public attributes for user, executive, filesystem, and
options on the Port object, so we don't have to refer to the
"protected" versions all over the place".

* Scripts/webkitpy/layout_tests/controllers/manager.py:
* Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
* Scripts/webkitpy/layout_tests/controllers/message_broker.py:
* Scripts/webkitpy/layout_tests/controllers/message_broker_unittest.py:
* Scripts/webkitpy/layout_tests/controllers/worker.py:
* Scripts/webkitpy/layout_tests/port/base.py:
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:

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

8 years agoWin7 rebaselines after http://trac.webkit.org/changeset/90701.
ojan@chromium.org [Mon, 11 Jul 2011 23:55:16 +0000 (23:55 +0000)]
Win7 rebaselines after trac.webkit.org/changeset/90701.
Should have been part of http://trac.webkit.org/changeset/90716/,
but the Win7 bot was down at that time.

* platform/chromium-win/http/tests/loading/simple-subframe-expected.png:
* platform/chromium-win/http/tests/local/file-url-sent-as-referer-expected.png:
* platform/chromium-win/http/tests/misc/acid2-pixel-expected.png:
* platform/chromium-win/http/tests/misc/iframe404-expected.png:
* platform/chromium-win/http/tests/misc/location-replace-crossdomain-expected.png:
* platform/chromium-win/http/tests/multipart/invalid-image-data-standalone-expected.png:
* platform/chromium-win/http/tests/navigation/javascriptlink-frames-expected.png:
* platform/chromium/test_expectations.txt:
Removing useless duplicated comment line.

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

8 years agoUpdate expectation that was missed because the WIN7 bot was down for a long time.
ojan@chromium.org [Mon, 11 Jul 2011 23:49:30 +0000 (23:49 +0000)]
Update expectation that was missed because the WIN7 bot was down for a long time.
* platform/chromium/test_expectations.txt:

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

8 years agowebkit-patch roll-chromium-deps no longer works
rniwa@webkit.org [Mon, 11 Jul 2011 23:35:13 +0000 (23:35 +0000)]
webkit-patch roll-chromium-deps no longer works
https://bugs.webkit.org/show_bug.cgi?id=64324

Reviewed by James Robinson.

Lower the minimum commit message length to 10.

* Scripts/webkitpy/tool/steps/commit.py:

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

8 years agoupdate the boilerplate documentation in the test_expectations.txt files
dpranke@chromium.org [Mon, 11 Jul 2011 23:33:11 +0000 (23:33 +0000)]
update the boilerplate documentation in the test_expectations.txt files
https://bugs.webkit.org/show_bug.cgi?id=64221

Reviewed by Eric Seidel.

The test expectations files either had documentation for the
Chromium port's version of the file (which was also incorrect),
or were undocumented. This adds a comment with a link to the
documentation for the file to each.

* platform/chromium/test_expectations.txt:
* platform/gtk/test_expectations.txt:
* platform/mac/test_expectations.txt:
* platform/qt/test_expectations.txt:
* platform/win/test_expectations.txt:

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

8 years ago2011-07-11 Levi Weintraub <leviw@chromium.org>
leviw@chromium.org [Mon, 11 Jul 2011 23:31:19 +0000 (23:31 +0000)]
2011-07-11  Levi Weintraub  <leviw@chromium.org>

        Switch lineTop and lineBottom to new layout types
        https://bugs.webkit.org/show_bug.cgi?id=64317

        Reviewed by Eric Seidel.

        Changing lineTop and lineBottom to LayoutUnits and preparing all uses
        of them for the upcoming conversion.

        No new tests, no new functionality.

        * rendering/EllipsisBox.cpp:
        (WebCore::EllipsisBox::nodeAtPoint):
        * rendering/EllipsisBox.h:
        * rendering/GapRects.h:
        (WebCore::GapRects::left):
        (WebCore::GapRects::center):
        (WebCore::GapRects::right):
        (WebCore::GapRects::uniteLeft):
        (WebCore::GapRects::uniteCenter):
        (WebCore::GapRects::uniteRight):
        (WebCore::GapRects::operator LayoutRect):
        * rendering/InlineBox.cpp:
        (WebCore::InlineBox::nodeAtPoint):
        * rendering/InlineBox.h:
        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
        (WebCore::InlineFlowBox::flipLinesInBlockDirection):
        (WebCore::InlineFlowBox::computeOverflow):
        (WebCore::InlineFlowBox::setLayoutOverflow):
        (WebCore::InlineFlowBox::setVisualOverflow):
        (WebCore::InlineFlowBox::setOverflowFromLogicalRects):
        (WebCore::InlineFlowBox::nodeAtPoint):
        * rendering/InlineFlowBox.h:
        (WebCore::InlineFlowBox::layoutOverflowRect):
        (WebCore::InlineFlowBox::visualOverflowRect):
        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::nodeAtPoint):
        * rendering/RenderLineBoxList.cpp:
        (WebCore::RenderLineBoxList::anyLineIntersectsRect):
        * rendering/RenderLineBoxList.h:
        * rendering/RenderListItem.cpp:
        (WebCore::RenderListItem::positionListMarker):
        * rendering/RenderTextControl.h:
        * rendering/RenderTextControlMultiLine.cpp:
        (WebCore::RenderTextControlMultiLine::adjustControlHeightBasedOnLineHeight):
        * rendering/RenderTextControlSingleLine.cpp:
        (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
        * rendering/RenderTextControlSingleLine.h:
        * rendering/RootInlineBox.cpp:
        (WebCore::RootInlineBox::nodeAtPoint):
        * rendering/RootInlineBox.h:
        (WebCore::RootInlineBox::lineTop):
        (WebCore::RootInlineBox::lineBottom):
        (WebCore::RootInlineBox::setLineTopBottomPositions):
        (WebCore::RootInlineBox::logicalTopVisualOverflow):
        (WebCore::RootInlineBox::logicalBottomVisualOverflow):
        (WebCore::RootInlineBox::logicalTopLayoutOverflow):
        (WebCore::RootInlineBox::logicalBottomLayoutOverflow):
        * rendering/svg/SVGInlineFlowBox.h:
        * rendering/svg/SVGInlineTextBox.cpp:
        (WebCore::SVGInlineTextBox::nodeAtPoint):
        * rendering/svg/SVGInlineTextBox.h:
        * rendering/svg/SVGRootInlineBox.h:

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

8 years agoRolled Chromium DEPS.
rniwa@webkit.org [Mon, 11 Jul 2011 23:23:58 +0000 (23:23 +0000)]
Rolled Chromium DEPS.

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

8 years agoConvert json_results_generator.py to output version 4 JSON.
commit-queue@webkit.org [Mon, 11 Jul 2011 22:48:15 +0000 (22:48 +0000)]
Convert json_results_generator.py to output version 4 JSON.
https://bugs.webkit.org/show_bug.cgi?id=60869

Patch by Alice Boxhall <aboxhall@chromium.org> on 2011-07-11
Reviewed by Ojan Vafai.

* Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:

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

8 years agoReviewed by Daniel Bates.
mrobinson@webkit.org [Mon, 11 Jul 2011 22:43:00 +0000 (22:43 +0000)]
Reviewed by Daniel Bates.

[GTK] Transition to Mozilla named cursors have incorrect hotspot and rendering
https://bugs.webkit.org/show_bug.cgi?id=62752

Instead of offsetting the cursor blit by the hotspot, just pass the hotspot
arguments to the GdkCursor constructor.

No new tests. This is covered by manual-tests/cursor.html.

* platform/gtk/CursorGtk.cpp:
(WebCore::createNamedCursor):

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

8 years agoSkip plugins/evaluate-js-after-removing-plugin-element.html on Chromium Vista.
dpranke@chromium.org [Mon, 11 Jul 2011 22:30:48 +0000 (22:30 +0000)]
Skip plugins/evaluate-js-after-removing-plugin-element.html on Chromium Vista.

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

Unreviewed, expectations change.

* platform/chromium/test_expectations.txt:

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

8 years ago[GTK] [NRWT] Pixel tests do not work
mrobinson@webkit.org [Mon, 11 Jul 2011 22:29:21 +0000 (22:29 +0000)]
[GTK] [NRWT] Pixel tests do not work
https://bugs.webkit.org/show_bug.cgi?id=64091

Reviewed by Eric Seidel.

Fix pixel test runs for GTK+ new-run-webkit-tests by exposing the
path to the ImageDiff binary.

* Scripts/webkitpy/layout_tests/port/gtk.py: Implement _path_to_image_diff.

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

8 years agoUnreviewed, adding myself as a committer
dslomov@google.com [Mon, 11 Jul 2011 22:24:34 +0000 (22:24 +0000)]
Unreviewed, adding myself as a committer

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

8 years ago[Qt] Unreviewed rollout 90779 which may fail the layout-test.
yi.4.shen@nokia.com [Mon, 11 Jul 2011 22:00:11 +0000 (22:00 +0000)]
[Qt] Unreviewed rollout 90779 which may fail the layout-test.

Source/WebCore:

* platform/network/qt/QNetworkReplyHandler.cpp:
(WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
* platform/network/qt/QNetworkReplyHandler.h:

LayoutTests:

* loader/load-defer-resume-crash-expected.txt: Removed.
* loader/load-defer-resume-crash.html: Removed.
* loader/resources/images.html: Removed.
* platform/chromium/test_expectations.txt:

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

8 years agoWebKitTestRunner needs an implementation of layoutTestController.setDefersLoading.
jberlin@webkit.org [Mon, 11 Jul 2011 20:28:34 +0000 (20:28 +0000)]
WebKitTestRunner needs an implementation of layoutTestController.setDefersLoading.
https://bugs.webkit.org/show_bug.cgi?id=64313

Add loader/load-defer-resume-crash.html to the WK2 Skipped list in order to get the bots
green.

* platform/wk2/Skipped:

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

8 years agoFix hang on win32 in a multiprocessing test that shouldn't have been running.
dpranke@chromium.org [Mon, 11 Jul 2011 20:23:37 +0000 (20:23 +0000)]
Fix hang on win32 in a multiprocessing test that shouldn't have been running.

Unreviewed, build fix.

* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

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

8 years ago2011-07-11 Bradley Nelson <bradnelson@chromium.org>
darin@chromium.org [Mon, 11 Jul 2011 19:55:25 +0000 (19:55 +0000)]
2011-07-11  Bradley Nelson  <bradnelson@chromium.org>

        Reviewed by Darin Fisher.

        Split webcore_dom off webcore_remaining to reduce its size for
        whole program optimization builds.

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

        * WebCore.gyp/WebCore.gyp:

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

8 years ago[Qt] ASSERTION FAILED in ResourceHandle::setDefersLoading causes crash
yi.4.shen@nokia.com [Mon, 11 Jul 2011 19:33:32 +0000 (19:33 +0000)]
[Qt] ASSERTION FAILED in ResourceHandle::setDefersLoading causes crash
https://bugs.webkit.org/show_bug.cgi?id=62808

Source/WebCore:

Reviewed by Benjamin Poulain.

The assertion in ResourceHandle::setDefersLoading assumes asynchronous
content delivery -- To resume a page, first, its main resource loader
calls setDefersLoading to resume loading the main content; then all the
sub-resource loaders calls setDefersLoading to resume sub-contents.
However, since QNetworkReplyHandler delivers content synchronously,
some new sub-resource loaders get created as soon as the main resource
loader resumed, and all these new sub-resource loaders set their
defersLoading flag to false. Then, the assertion fails for these new
sub-resource loaders when calling setDefersLoading on them. As a fix,
this path makes QNetworkReplyHandler deliver content asynchronously.

Test: loader/load-defer-resume-crash.html

* platform/network/qt/QNetworkReplyHandler.cpp:
(WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
* platform/network/qt/QNetworkReplyHandler.h:

LayoutTests:

Added a test for the crash occurs when load deferring is turned off.

Reviewed by Benjamin Poulain.

* loader/load-defer-resume-crash-expected.txt: Added.
* loader/load-defer-resume-crash.html: Added.
* loader/resources/images.html: Added.
* platform/chromium/test_expectations.txt: Skip this test since the LayoutTestController::setDefersLoading is not implemented for chromium.

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

8 years agoDon't count leaks as test failures on TestFailures's front page
aroben@apple.com [Mon, 11 Jul 2011 19:20:49 +0000 (19:20 +0000)]
Don't count leaks as test failures on TestFailures's front page

As a bonus, this patch adds our first unit test.

Fixes <http://webkit.org/b/64303> REGRESSION (r90489): TestFailures page says far more tests
are failing on the Leaks bot than actually are

Reviewed by Adam Barth.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/Builder.js:
(Builder.prototype.getNumberOfFailingTests): Exclude lines containing "leak" when summing
failure counts.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/Builder_unittests.js:
Added. Contains a simple test to show that leaks aren't counted as test failures.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/run-unittests.html:
Added. This is the test harness.

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

8 years agoUnreviewed; chromium test expectations update.
senorblanco@chromium.org [Mon, 11 Jul 2011 19:14:36 +0000 (19:14 +0000)]
Unreviewed; chromium test expectations update.

Mark 2d.gradient.object.update as passing after r90767.

* platform/chromium/test_expectations.txt:

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

8 years agoAdd API to WebKit-GTK to allow setting localStorage database path
kov@webkit.org [Mon, 11 Jul 2011 19:10:40 +0000 (19:10 +0000)]
Add API to WebKit-GTK to allow setting localStorage database path
https://bugs.webkit.org/show_bug.cgi?id=62091

Patch by Mike Stegeman  <mrstegeman@gmail.com> on 2011-06-14
Reviewed by Martin Robinson and Gustavo Noronha.

Expose the path of the localStorage databases through a setting
to allow HTML5 localStorage to be persistent. New setting is:
html5-local-storage-database-path

* webkit/webkitwebsettings.cpp:
(webkit_web_settings_class_init):
(webkit_web_settings_set_property):
(webkit_web_settings_get_property):
* webkit/webkitwebsettingsprivate.h:
* webkit/webkitwebview.cpp:
(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

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

8 years agoMove innerTextElement() from RenderTextControl to HTMLTextFormControlElement
rniwa@webkit.org [Mon, 11 Jul 2011 19:06:34 +0000 (19:06 +0000)]
Move innerTextElement() from RenderTextControl to HTMLTextFormControlElement
https://bugs.webkit.org/show_bug.cgi?id=64134

Reviewed by Kent Tamura.

Moved innerTextElement from RenderTextControl to HTMLTextFormControlElement. It is implemented by
HTMLInputElement and HTMLTextAreaElement instead of RenderTextControlSingleLine and
RenderTextControlMultiLine.

This refactoring removes the indirection through RenderTextControl and makes the ownership of
shadow DOM for input and textarea elements clear. Accessing the shadow DOM of input and textarea elements
are now less error prone because it no longer depends on the lifetime of the render tree.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::indexForVisiblePosition): Access innerTextElement via
HTMLTextFormControlElement.
* dom/Node.cpp:
(WebCore::traverseTreeAndMark): No longer calls innerTextElement because this was a work-around
needed before making input and textarea elements use the new shadow DOM model.
* editing/TextIterator.cpp:
(WebCore::TextIterator::handleReplacedElement): Access innerTextElement via HTMLTextFormControlElement.
* html/HTMLFormControlElement.cpp:
(WebCore::hasVisibleTextArea): Takes innerTextElement.
(WebCore::HTMLTextFormControlElement::setSelectionRange): Calls innerTextElement().
(WebCore::HTMLTextFormControlElement::selection): Ditto.
(WebCore::HTMLTextFormControlElement::selectionStart): Ditto; no longer uses a temporary local variable
for innerTextElement because innerTextElement() no longer depends on the lifetime of the render tree.
(WebCore::HTMLTextFormControlElement::selectionEnd): Ditto.
* html/HTMLFormControlElement.h:
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::innerTextElement): Added.
* html/HTMLTextAreaElement.h:
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::textFormControlElement): Made this function a const member.
(WebCore::RenderTextControl::innerTextElement): Added.
* rendering/RenderTextControl.h:
* rendering/RenderTextControlMultiLine.cpp:
* rendering/RenderTextControlMultiLine.h:
* rendering/RenderTextControlSingleLine.cpp:
* rendering/RenderTextControlSingleLine.h:

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

8 years agogarden-o-matic should be able to rebaseline tests
abarth@webkit.org [Mon, 11 Jul 2011 19:04:10 +0000 (19:04 +0000)]
garden-o-matic should be able to rebaseline tests
https://bugs.webkit.org/show_bug.cgi?id=64186

Reviewed by Eric Seidel.

This patch contains a simple HTTP server binding for the
rebaseline-test command.  The frontend will appear in another patch.

* Scripts/webkitpy/tool/servers/gardeningserver.py:
* Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
* Scripts/webkitpy/tool/servers/reflectionhandler.py:

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

8 years agorename RenderObject::isFlexibleBox to isDeprecatedFlexibleBox
tony@chromium.org [Mon, 11 Jul 2011 19:02:17 +0000 (19:02 +0000)]
rename RenderObject::isFlexibleBox to isDeprecatedFlexibleBox
https://bugs.webkit.org/show_bug.cgi?id=64217

Reviewed by Ojan Vafai.

This is to make way for the new flexbox needing a similar method.
RenderObject also has isFlexingChildren() and isStretchingChildren(),
but we may be able to use those for the new flexbox as well so I
didn't rename them.

No new tests, just refactoring.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::removeChild):
(WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
(WebCore::shouldCheckLines):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
(WebCore::RenderBox::computeLogicalWidth):
(WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
(WebCore::RenderBox::computeLogicalHeight):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
* rendering/RenderDeprecatedFlexibleBox.h:
(WebCore::RenderDeprecatedFlexibleBox::isDeprecatedFlexibleBox):
* rendering/RenderObject.h:
(WebCore::RenderObject::isDeprecatedFlexibleBox):

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

8 years agoAdd some basic UI for showing regression ranges
abarth@webkit.org [Mon, 11 Jul 2011 18:58:39 +0000 (18:58 +0000)]
Add some basic UI for showing regression ranges
https://bugs.webkit.org/show_bug.cgi?id=64243

Reviewed by Eric Seidel.

This UI is all temporary.  It exists mostly just to have some buttons
to click to exercise the code.

* Scripts/webkitpy/tool/servers/data/gardeningserver/main.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/results.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/results_unittests.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/ui.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/ui_unittests.js:

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

8 years agogarden-o-matic should be able to determine which revisions caused a given failure
abarth@webkit.org [Mon, 11 Jul 2011 18:54:13 +0000 (18:54 +0000)]
garden-o-matic should be able to determine which revisions caused a given failure
https://bugs.webkit.org/show_bug.cgi?id=64189

Reviewed by Adam Roben.

Walking the failure history looking for failures turns out to be
slightly tricky because the network requests are asynchronous.
Currently we do all the fetches serially and our cache is unbounded.
We'll probably optimize both those parameters eventually.

This patch also generalizes some functionality in the unit testing
framework to make testing this sort of code easier.

* Scripts/webkitpy/tool/servers/data/gardeningserver/base.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/results.js:
* Scripts/webkitpy/tool/servers/data/gardeningserver/results_unittests.js:

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

8 years agoAdd a webkit-patch command for rebaselining an individual test
abarth@webkit.org [Mon, 11 Jul 2011 18:51:13 +0000 (18:51 +0000)]
Add a webkit-patch command for rebaselining an individual test
https://bugs.webkit.org/show_bug.cgi?id=64246

Reviewed by Eric Seidel.

This patch introduces a command that's able to rebaseline a single
test.  Currently, the command works only with the build.chromium.org
buildbots, but extending it to work with the build.webkit.org bots
shouldn't be that hard.

A complete rebaseling tool should also include an "optimize baselines"
command (which moves/deletes baselines in order to reduce the number of
expected results files), but that will come in a future patch.

Really BuilderToPort should be merged into builders.py, but I'm going
to save that for a future patch as well.  (We need to stop shaving yaks
at some point.)

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

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

8 years ago[Chromium] Ensure we don't crash when an
japhet@chromium.org [Mon, 11 Jul 2011 18:48:34 +0000 (18:48 +0000)]
[Chromium] Ensure we don't crash when an
HTMLSelectElement mouse release event removes
the element from the DOM.
https://bugs.webkit.org/show_bug.cgi?id=64295

Reviewed by Dimitri Glazkov.

Manual test only because the crash requires a
real popup menu, which DRT doesn't provide.

* manual-tests/chromium/popup-menu-crash.html: Added.
* platform/chromium/PopupMenuChromium.cpp:
(WebCore::PopupContainer::handleMouseReleaseEvent):

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

8 years agoDFG Speculative JIT does not always insert speculation checks when speculating
commit-queue@webkit.org [Mon, 11 Jul 2011 18:39:14 +0000 (18:39 +0000)]
DFG Speculative JIT does not always insert speculation checks when speculating
arrays.
https://bugs.webkit.org/show_bug.cgi?id=64254

Patch by Filip Pizlo <fpizlo@apple.com> on 2011-07-11
Reviewed by Gavin Barraclough.

Changed the SetLocal instruction to always validate that the value being stored
into the local variable is an array, if that variable was marked PredictArray.
This is necessary since uses of arrays assume that if a PredictArray value is
in a local variable then the speculation check validating that the value is an
array was already performed.

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

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

8 years ago[skia] remove platform helpers for gradients and patterns
commit-queue@webkit.org [Mon, 11 Jul 2011 18:39:11 +0000 (18:39 +0000)]
[skia] remove platform helpers for gradients and patterns
https://bugs.webkit.org/show_bug.cgi?id=64281

Patch by Mike Reed <reed@google.com> on 2011-07-11
Reviewed by Stephen White.

No new tests. fixes canvas/philip/tests/2d.gradient.object.update.html

Remove (now empty) platform helpers for fill/stroke gradients/patterns. We now pickup the platformGradient
and platformPattern fresh when they're needed, so we can see any edits that have occurred to them
2d.gradient.object.update.html sets the fillgradient, and then edits the gradient object. This CL allows
us to see that edit.

* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::setStrokePattern):
(WebCore::GraphicsContext::setFillPattern):
(WebCore::GraphicsContext::setStrokeGradient):
(WebCore::GraphicsContext::setFillGradient):
* platform/graphics/GraphicsContext.h:
* platform/graphics/skia/GraphicsContextSkia.cpp:
(WebCore::GraphicsContext::platformInit):
* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::State::State):
(WebCore::PlatformContextSkia::State::~State):
(WebCore::PlatformContextSkia::PlatformContextSkia):
(WebCore::PlatformContextSkia::drawRect):
(WebCore::PlatformContextSkia::setupShader):
(WebCore::PlatformContextSkia::setupPaintForFilling):
(WebCore::PlatformContextSkia::setupPaintForStroking):
(WebCore::PlatformContextSkia::setFillColor):
(WebCore::PlatformContextSkia::setStrokeColor):
(WebCore::PlatformContextSkia::canAccelerate):
* platform/graphics/skia/PlatformContextSkia.h:
(WebCore::PlatformContextSkia::setGraphicsContext):

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

8 years ago[Qt][WK2] Get rid of focusNextPrevChild()
benjamin.poulain@nokia.com [Mon, 11 Jul 2011 18:22:17 +0000 (18:22 +0000)]
[Qt][WK2] Get rid of focusNextPrevChild()
https://bugs.webkit.org/show_bug.cgi?id=64289

Reviewed by Andreas Kling.

Qt 5 does not use focusNextPrevChild() but uses setFocusNavigation(), and
the focus is not based on QWidget.

We can get rid of the method since the new implementation will be totally
different.

* UIProcess/API/qt/qtouchwebpage.cpp:
* UIProcess/API/qt/qtouchwebpage.h:
* UIProcess/qt/ClientImpl.cpp:
(qt_wk_takeFocus):
* UIProcess/qt/QtWebPageProxy.h:

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

8 years agoPatch by Young Han Lee <joybro@company100.net> on 2011-07-11
commit-queue@webkit.org [Mon, 11 Jul 2011 18:20:23 +0000 (18:20 +0000)]
Patch by Young Han Lee <joybro@company100.net> on 2011-07-11
Reviewed by Simon Fraser.

Transition LayoutTest using pause API shows wrong result if it tries to pause a transition after its delay time.
https://bugs.webkit.org/show_bug.cgi?id=63859

The existing code to set the m_startTime haven't worked because
the animation is not the right state to accept the start event.
This patch just sets the values directly instead of using event.

Source/WebCore:

Test: transitions/delay.html

* page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::freezeAtTime):

LayoutTests:

* transitions/delay-expected.txt: Added.
* transitions/delay.html: Added.

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

8 years agoImplement getFormValue for WebKit2
andersca@apple.com [Mon, 11 Jul 2011 18:14:01 +0000 (18:14 +0000)]
Implement getFormValue for WebKit2
https://bugs.webkit.org/show_bug.cgi?id=64294
<rdar://problem/3964087>

Source/WebKit2:

Reviewed by Kevin Decker.

* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::getFormValue):
Call Plugin::getFormValue.

* PluginProcess/PluginControllerProxy.messages.in:
Add new GetFormValue message.

* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::getFormValue):
Get the form value and convert it to a String.

* WebProcess/Plugins/Plugin.h:
Add getFormValue pure virtual member function.

* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::getFormValue):
Send a GetFormValue message to the plug-in process.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::getFormValue):
Call Plugin::getFormValue.

LayoutTests:

Remove now passing test.

* platform/wk2/Skipped:

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

8 years agoMove selection related code from RenderTextControl to HTMLTextFormControlElement
rniwa@webkit.org [Mon, 11 Jul 2011 17:55:26 +0000 (17:55 +0000)]
Move selection related code from RenderTextControl to HTMLTextFormControlElement
https://bugs.webkit.org/show_bug.cgi?id=64133

Reviewed by Dimitri Glazkov.

Source/WebCore:

Moved selectionStart, selectionEnd, hasVisibleTextArea, setSelectionRange, setContainerAndOffsetForRange
and selection from RenderTextControl.cpp to HTMLFormControlElement.cpp.

This refactoring removes RenderTextControl's dependency on FrameSelection.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::selectedText): Calls HTMLTextFromControl::selectedText.
(WebCore::AccessibilityRenderObject::selectedTextRange): Calls selectionStart and selectionEnd.
(WebCore::AccessibilityRenderObject::setSelectedTextRange): Ditto.
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::selectedText): Extracted from AccessibilityRenderObject::selectedText.
(WebCore::hasVisibleTextArea): Added.
(WebCore::HTMLTextFormControlElement::setSelectionRange): Merged with the function of the same name in RenderTextControl.
(WebCore::HTMLTextFormControlElement::selectionStart): Calls computeSelectionStart instead of RenderTextControl::selectionStart.
(WebCore::HTMLTextFormControlElement::computeSelectionStart): Moved from RenderTextControl::selectionStart.
(WebCore::HTMLTextFormControlElement::selectionEnd): Calls computeSelectionEnd instead of RenderText::selectionEnd.
(WebCore::HTMLTextFormControlElement::computeSelectionEnd): Moved from RenderTextControl::selectionStart.
(WebCore::setContainerAndOffsetForRange): Moved from RenderTextControl.cpp.
(WebCore::HTMLTextFormControlElement::selection): Merged with the function of the same name in RenderTextControl.
(WebCore::HTMLTextFormControlElement::restoreCachedSelection): Calls computeSelectionStart and computeSelectionEnd instead of
RenderTextControl::selectionStart and RenderTextControl::selectionEnd.
(WebCore::HTMLTextFormControlElement::selectionChanged): Calls selectionStart and selectionEnd.
* html/HTMLFormControlElement.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setValue): Calls setSelectionRange.
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::textFormControlElement): Added.
* rendering/RenderTextControl.h:

Source/WebKit/qt:

Replaced calls to WebCore::setSelectionRange by calls to HTMLTextFormControlElement::setSelectionRange.

* Api/qwebpage.cpp:
(QWebPagePrivate::inputMethodEvent):

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

8 years agogarden-o-matic should be able to roll out patches
abarth@webkit.org [Mon, 11 Jul 2011 17:51:04 +0000 (17:51 +0000)]
garden-o-matic should be able to roll out patches
https://bugs.webkit.org/show_bug.cgi?id=64185

Reviewed by Eric Seidel.

This gardening server API is simply a binding to the rollout machinery
already present in webkit-patch.

* Scripts/webkitpy/tool/commands/gardenomatic.py:
* Scripts/webkitpy/tool/servers/gardeningserver.py:
* Scripts/webkitpy/tool/servers/gardeningserver_unittest.py: Added.

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

8 years agoFix syntax error from r90757.
ojan@chromium.org [Mon, 11 Jul 2011 17:35:51 +0000 (17:35 +0000)]
Fix syntax error from r90757.

* platform/chromium/test_expectations.txt:

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

8 years ago The original request should be accessible from WebNavigationData.
adachan@apple.com [Mon, 11 Jul 2011 16:57:57 +0000 (16:57 +0000)]
    The original request should be accessible from WebNavigationData.
        https://bugs.webkit.org/show_bug.cgi?id=64227

        Reviewed by Anders Carlsson.

        * Shared/WebNavigationDataStore.h:
        (WebKit::WebNavigationDataStore::encode): Handle the encoding of the original request.
        (WebKit::WebNavigationDataStore::decode): Handle the decoding of the original request.
        * UIProcess/API/C/WKNavigationData.cpp:
        (WKNavigationDataCopyOriginalRequest):
        * UIProcess/API/C/WKNavigationData.h:
        * UIProcess/WebNavigationData.h:
        (WebKit::WebNavigationData::originalRequest):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::updateGlobalHistory): Store the original request in the WebNavigationDataStore.

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

8 years agohttp/tests/cache/history-only-cached-subresource-loads-max-age-https.html timing...
jberlin@webkit.org [Mon, 11 Jul 2011 16:52:02 +0000 (16:52 +0000)]
http/tests/cache/history-only-cached-subresource-loads-max-age-https.html timing out on
Windows and WebKit2 since it was added.
https://bugs.webkit.org/show_bug.cgi?id=63806

Add the test to the WK2 Skipped list to get the bots green.

* platform/wk2/Skipped:

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

8 years agoReviewed by Oliver Hunt.
andreas.kling@nokia.com [Mon, 11 Jul 2011 16:47:48 +0000 (16:47 +0000)]
Reviewed by Oliver Hunt.

Canvas: Use fast, approximate dirty rects for stroke()
https://bugs.webkit.org/show_bug.cgi?id=59764

No new tests, this is an optimization.

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::stroke): Instead of using
Path::strokeBoundingRect() to calculate the exact bounding rect
for a path stroke, get the Path::boundingRect() and inflate it by
miterLimit + lineWidth to get a slightly oversized dirty rect
in a fraction of the time.

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

8 years ago2011-07-11 Yury Semikhatsky <yurys@chromium.org>
yurys@chromium.org [Mon, 11 Jul 2011 16:37:01 +0000 (16:37 +0000)]
2011-07-11  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium test expectations.

        * platform/chromium/test_expectations.txt:

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

8 years agoUkrainian translation for WebKitGTK+
kov@webkit.org [Mon, 11 Jul 2011 16:36:06 +0000 (16:36 +0000)]
Ukrainian translation for WebKitGTK+
https://bugs.webkit.org/show_bug.cgi?id=36415

Patch by Yuri Chornoivan  <yurchor@ukr.net> on 2011-07-11
Reviewed by Gustavo Noronha.

* uk.po: added.

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

8 years agoIndonesian translation
kov@webkit.org [Mon, 11 Jul 2011 16:30:09 +0000 (16:30 +0000)]
Indonesian translation
https://bugs.webkit.org/show_bug.cgi?id=44410

Patch by Andika Triwidada <andika@gmail.com> on 2011-07-11
Reviewed by Gustavo Noronha.

* id.po: updated.

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

8 years agoPortuguese translation update
kov@webkit.org [Mon, 11 Jul 2011 16:26:12 +0000 (16:26 +0000)]
Portuguese translation update
https://bugs.webkit.org/show_bug.cgi?id=46137

Patch by Duarte Loreto <happyguy_pt@hotmail.com> on 2011-07-11
Reviewed by Gustavo Noronha.

* pt.po: updated.

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