1. 12 Jul, 2011 40 commits
    • joepeck@webkit.org's avatar
      ApplicationCache update should not immediately fail when reaching per-origin quota · 98b3b582
      joepeck@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90856 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      98b3b582
    • aroben@apple.com's avatar
      Delete some redundant code in WebHTMLView · 6621a3ef
      aroben@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90855 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6621a3ef
    • commit-queue@webkit.org's avatar
      DFG JIT put_by_id transition caching does not inform the GC about the structure and · be363102
      commit-queue@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90854 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      be363102
    • crogers@google.com's avatar
      AudioDevice::Stop can close NULL handle. · 374290a6
      crogers@google.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90853 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      374290a6
    • ojan@chromium.org's avatar
      fix flakiness dashboard to work with new crash log filenames · f208a969
      ojan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=64393
      
      Reviewed by Adam Barth.
      
      * TestResultServer/static-dashboards/flakiness_dashboard.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90852 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f208a969
    • jer.noble@apple.com's avatar
      Full-screen: Don't change the collectionBehavior of the WebView's NSWindow if not necessary · b384a4e4
      jer.noble@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90851 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b384a4e4
    • commit-queue@webkit.org's avatar
      Move call to syncCompositingLayers so that we do not trigger redundant draws. · a6b12cee
      commit-queue@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90850 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a6b12cee
    • rniwa@webkit.org's avatar
      Isolate HTMLTextFormControlElement into a separate file · 617e098a
      rniwa@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90849 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      617e098a
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r90831. · be218d37
      commit-queue@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90847 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      be218d37
    • abarth@webkit.org's avatar
      Add a happy animation to garden-o-matic when there are no failures · ca882937
      abarth@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90846 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ca882937
    • andreas.kling@nokia.com's avatar
      [Qt][WK2] Navigation actions in incorrect state when loadStarted() is emitted. · 8a14a0f2
      andreas.kling@nokia.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90844 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8a14a0f2
    • commit-queue@webkit.org's avatar
      Unreviewed. Rolled DEPS. · 9efffaab
      commit-queue@webkit.org authored
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-07-12
      
      * DEPS:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90843 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9efffaab
    • jamesr@google.com's avatar
      Reviewed by Kenneth Russell. · c6fe3701
      jamesr@google.com authored
      [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: http://svn.webkit.org/repository/webkit/trunk@90842 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6fe3701
    • xan@webkit.org's avatar
      2011-07-12 Arno Renevier <arno@renevier.net> · 21d7277d
      xan@webkit.org authored
              [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: http://svn.webkit.org/repository/webkit/trunk@90841 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      21d7277d
    • abarth@webkit.org's avatar
      sheriffbot can't perform rollouts · 3b75958f
      abarth@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90840 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3b75958f
    • crogers@google.com's avatar
      2011-07-12 Chris Rogers <crogers@google.com> · 1f508cf1
      crogers@google.com authored
              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: http://svn.webkit.org/repository/webkit/trunk@90839 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1f508cf1
    • benjamin.poulain@nokia.com's avatar
      [Qt][WK2] Add a basic Pinch gesture recognizer for WebKit2 · 6df077cb
      benjamin.poulain@nokia.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90838 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6df077cb
    • andreas.kling@nokia.com's avatar
      [Qt][WK2] Navigation actions should react to web process availability. · 56e2ac5e
      andreas.kling@nokia.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90837 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      56e2ac5e
    • evan@chromium.org's avatar
      [chromium] DRT depends on v8 · ce3d2581
      evan@chromium.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90836 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ce3d2581
    • abarth@webkit.org's avatar
      Fix the grammar in the FIXME comment. · b13ecede
      abarth@webkit.org authored
      * Scripts/webkitpy/common/net/resultsjsonparser.py:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90835 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b13ecede
    • psolanki@apple.com's avatar
      Implement didReceiveDataArray callback for CFNetwork based loader · 28edda70
      psolanki@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90834 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      28edda70
    • eae@chromium.org's avatar
      Switch preferred width/height and columns to to new layout types · 18a276d1
      eae@chromium.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90833 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      18a276d1
    • leviw@chromium.org's avatar
      Change roundedIntRect to roundedRect · 9cc00d14
      leviw@chromium.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90832 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9cc00d14
    • commit-queue@webkit.org's avatar
      [skia] optimize getImageData to avoid a copy when not needed. lockPixels() now... · 02a312c1
      commit-queue@webkit.org authored
      [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: http://svn.webkit.org/repository/webkit/trunk@90831 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      02a312c1
    • pfeldman@chromium.org's avatar
      Web Inspector: introduce UserMetrics for collecting stats in Chromium port. · 97af891a
      pfeldman@chromium.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90830 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      97af891a
    • andreas.kling@nokia.com's avatar
      [Qt][WK2] QDesktopWebView crashes if resized without web process. · 65ffe4c4
      andreas.kling@nokia.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90829 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      65ffe4c4
    • commit-queue@webkit.org's avatar
      Patch by Jeff Timanus <twiz@chromium.org> on 2011-07-12 · 2d96e966
      commit-queue@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90828 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2d96e966
    • commit-queue@webkit.org's avatar
      Remove results for iframe-outline.html · 9461614e
      commit-queue@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90827 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9461614e
    • eric@webkit.org's avatar
      NRWT should open test results page with Safari trunk, not the system provided one on Mac · 312730c7
      eric@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90826 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      312730c7
    • psolanki@apple.com's avatar
      Reviewed by David Kilzer. · f2d37f00
      psolanki@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90825 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f2d37f00
    • aroben@apple.com's avatar
      Teach TestFailures to recognize when run-webkit-tests gets killed by buildbot · b9feaa96
      aroben@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90824 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b9feaa96
    • abarth@webkit.org's avatar
      cr-linux-ews complains about tests that aren't actually failing · bca922dd
      abarth@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90823 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bca922dd
    • abarth@webkit.org's avatar
      Re-work garden-o-matic UI to begin to look like the mocks · 8aaefb6b
      abarth@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90822 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8aaefb6b
    • jberlin@webkit.org's avatar
      WebKitTestRunner needs an implemenation of allowRoundingHacks · 33340138
      jberlin@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90821 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      33340138
    • andreas.kling@nokia.com's avatar
      [Qt][WK2] Add informative loadFailed() signal to web views. · c71b819f
      andreas.kling@nokia.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90820 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c71b819f
    • podivilov@chromium.org's avatar
      Web Inspector: Cancelling an empty edit fails. · a65c5be0
      podivilov@chromium.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90819 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a65c5be0
    • podivilov@chromium.org's avatar
      Web Inspector: make TextViewerDelegate methods implementations public in SourceFrame. · fcadd3c4
      podivilov@chromium.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90818 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fcadd3c4
    • jocelyn.turcotte@nokia.com's avatar
      [Qt] Forward the touch view scale changes to the tiled drawing area. · a33fa0dd
      jocelyn.turcotte@nokia.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@90817 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a33fa0dd
    • aroben@apple.com's avatar
      Update Windows expected results for plugins/mouse-events-fixedpos.html after r90742 · 4d83a746
      aroben@apple.com authored
      * platform/win/plugins/mouse-events-fixedpos-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90816 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4d83a746
    • caseq@chromium.org's avatar
      Web Inspector: remove more dead code from the Network panel · a535098c
      caseq@chromium.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@90815 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a535098c