1. 15 Sep, 2009 4 commits
  2. 14 Sep, 2009 8 commits
    • beidson@apple.com's avatar
      Page cache should support pages with unload handlers as an experiment. · 4bb4ad00
      beidson@apple.com authored
      <rdar://problem/7196485> and https://bugs.webkit.org/show_bug.cgi?id=29021
      
      Reviewed by Darin Adler.
      
      WebCore: 
      
      For the experiment, only allow pages with unload handlers into the Page Cache on
      Mac and Windows.
      
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::canCachePageContainingThisFrame):
      (WebCore::FrameLoader::logCanCacheFrameDecision):
      
      LayoutTests: 
      
      Disable fast/loader/frames-with-unload-handlers-in-page-cache.html as it doesn't
      make sense in the context of this experiment.
      
      * platform/mac/Skipped: 
      * platform/win/Skipped:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48388 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4bb4ad00
    • cmarrin@apple.com's avatar
      51e8bdfd
    • beidson@apple.com's avatar
      · 62bfc8ee
      beidson@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48377 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      62bfc8ee
    • simon.fraser@apple.com's avatar
      2009-09-14 Simon Fraser <simon.fraser@apple.com> · d15e7113
      simon.fraser@apple.com authored
              Reviewed by Dan Bernstein.
      
              <rdar://problem/7047282> Safari crashes at WebCore::RenderMenuList::adjustInnerStyle() + 436
      
              Avoid a crash when a mouse event handler on a <select> changes the select from a popup
              to a list (by setting the 'size' property) inside the event handler.
      
              Test: fast/forms/select-change-popup-to-listbox-in-event-handler.html
      
              * dom/SelectElement.cpp:
              (WebCore::SelectElement::menuListDefaultEventHandler):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48376 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d15e7113
    • jhoneycutt@apple.com's avatar
      DRT/test part of · f1115ef5
      jhoneycutt@apple.com authored
      <rdar://problem/7197644> WebKit should broadcast an MSAA event when
      jumping to a named anchor
      
      https://bugs.webkit.org/show_bug.cgi?id=28899
      
      Reviewed by Adam Roben.
      
      WebKitTools:
      
      * DumpRenderTree/AccessibilityController.cpp:
      (logScrollingStartEventsCallback):
      Turn on logging of scrolling start events.
      (AccessibilityController::getJSClass):
      Add a "logScrollingStartEvents" to the AccessibilityController's JS
      class definition.
      (AccessibilityController::resetToConsistentState):
      Turn off logging of scrolling start events.
      
      * DumpRenderTree/AccessibilityController.h:
      Declare setLogScrollingStartEvents(). Add a member for the scrolling
      start event hook.
      
      * DumpRenderTree/mac/AccessibilityControllerMac.cpp:
      (AccessibilityController::setLogScrollingStartEvents):
      Stubbed.
      
      * DumpRenderTree/win/AccessibilityControllerWin.cpp:
      (AccessibilityController::AccessibilityController):
      Initialize the handle to 0.
      (logEventProc):
      Renamed from logFocusEventProc; now logs scrolling start events, too.
      Removed the assertion that the event is a focus event. Added a switch
      to print a message for focus, scrolling start, and other, unknown
      events.
      (AccessibilityController::setLogFocusEvents):
      Changed to use logEventProc.
      (AccessibilityController::setLogScrollingStartEvents):
      If turning logging off, unhook the scrolling start event hook, and clear
      the member holding the handle. If turning on, query for the root
      accessible, so that accessibility is enabled for the WebView, and call
      SetWinEventHook to setup an event hook using logEventProc as the
      callback function.
      
      LayoutTests:
      
      * platform/win/accessibility/scroll-to-anchor-expected.txt: Added.
      * platform/win/accessibility/scroll-to-anchor.html:
      Added. Turns on scrolling start event logging, then jumps to an
      anchor at the bottom of the page.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48368 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f1115ef5
    • beidson@apple.com's avatar
      Safari 4 cannot be used to update firmware on Linksys routers. · 29c8b21b
      beidson@apple.com authored
      <rdar://problem/7174050> and https://bugs.webkit.org/show_bug.cgi?id=29160
      
      Reviewed by Alexey Proskuryakov.
      
      WebCore: 
      
      In http://trac.webkit.org/changeset/42483, we disabled CFNetwork's session credential storage and 
      implemented our own in WebCore.
      
      One feature we lost is that CFNetwork would automatically send previously authenticated credentials
      with new connections when the paths match, as allowed by RFC 2617 for HTTP Basic and Digest Authentication.  
      
      Even though it's optional for User Agents to do this, (some?) Linksys routers rely on this behavior for
      HTTP Basic Authentication.  So now WebCore's CredentialStorage will track URL paths for Basic credentials.
      
      We're not making this enhancement for Digest at this time, since we don't know of anything that broke
      due to the change in Digest behavior.
      
      Test: http/tests/loading/basic-credentials-sent-automatically.html
            http/tests/loading/basic-auth-resend-wrong-credentials.html
      
      * WebCore.base.exp:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      
      * platform/network/Credential.cpp:
      (WebCore::Credential::isEmpty):
      * platform/network/Credential.h:
      
      Add a slightly more full featured CredentialStore that will track URL paths a credential belongs to:
      * platform/network/CredentialStorage.cpp: Added.
      (WebCore::protectionSpaceToCredentialMap):
      (WebCore::originToDefaultCredentialMap):
      (WebCore::originStringFromURL):
      (WebCore::CredentialStorage::set):
      (WebCore::CredentialStorage::get):
      (WebCore::CredentialStorage::getDefaultAuthenticationCredential):
      * platform/network/CredentialStorage.h: Added.
      
      Allow ProtectionSpace to be a hash key:
      * platform/network/ProtectionSpace.cpp:
      (WebCore::ProtectionSpace::ProtectionSpace):
      * platform/network/ProtectionSpace.h:
      (WebCore::ProtectionSpace::ProtectionSpace):
      (WebCore::ProtectionSpace::isHashTableDeletedValue):
      * platform/network/ProtectionSpaceHash.h: Added.
      (WebCore::ProtectionSpaceHash::hash):
      (WebCore::ProtectionSpaceHash::equal):
      
      Allow ResourceHandles to remember the initial credential they used:
      * platform/network/ResourceHandleInternal.h:
      
      Allow mutable ResourceRequests to update their platform object if HTTP header fields change:
      * platform/network/ResourceRequestBase.cpp:
      (WebCore::ResourceRequestBase::addHTTPHeaderField):
      
      Remove WebCoreCredentialStorage:
      * platform/network/cf/AuthenticationCF.cpp:
      * platform/network/cf/AuthenticationCF.h:
      * platform/network/mac/AuthenticationMac.h:
      * platform/network/mac/AuthenticationMac.mm:
      
      Change ResourceHandleCFNet to try to use stored credentials on new connections, if appropriate:
      * platform/network/cf/ResourceHandleCFNet.cpp:
      (WebCore::ResourceHandle::start):
      (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Only try the ProtectionSpace key'ed
        Credential if it does not match the initially used Credential.
      (WebCore::ResourceHandle::receivedCredential):
      (WebCore::WebCoreSynchronousLoader::didReceiveChallenge): Only try the ProtectionSpace key'ed
        Credential if it does not match the initially used Credential.
      (WebCore::WebCoreSynchronousLoader::load):
      
      Change ResourceHandleMac to try to use stored credentials on new connections, if appropriate:
      * platform/network/mac/ResourceHandleMac.mm:
      (WebCore::ResourceHandle::start):
      (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Only try the ProtectionSpace key'ed
        Credential if it does not match the initially used Credential.
      (WebCore::ResourceHandle::receivedCredential):
      (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Only try the 
        ProtectionSpace key'ed Credential if it does not match the initially used Credential.
      (+[WebCoreSynchronousLoader loadRequest:allowStoredCredentials:returningResponse:error:]):
      
      Add base64-ability to CString:
      * platform/text/CString.cpp:
      (WebCore::CStringBuffer::base64Encode):
      (WebCore::CString::base64Encode):
      * platform/text/CString.h:
      (WebCore::CStringBuffer::create):
      (WebCore::CStringBuffer::CStringBuffer):
      
      WebKit/mac: 
      
      Adopt the new WebCore::CredentialStorage in WebKit/Mac.
      
      * Misc/WebDownload.mm:
      (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):
      * Plugins/WebBaseNetscapePluginView.mm:
      (WebKit::getAuthenticationInfo):
      
      WebKit/win: 
      
      Adopt the new WebCore::CredentialStorage in WebKit/Win.
      
      * WebDownloadCFNet.cpp:
      (WebDownload::didReceiveAuthenticationChallenge):
      
      WebKitTools: 
      
      Add the ability for DRT to handle authentication challenges.
      
      * DumpRenderTree/LayoutTestController.cpp:
      (setAuthenticationPasswordCallback):
      (setAuthenticationUsernameCallback):
      (setHandlesAuthenticationChallengesCallback):
      (LayoutTestController::staticFunctions):
      
      * DumpRenderTree/LayoutTestController.h:
      (LayoutTestController::handlesAuthenticationChallenges):
      (LayoutTestController::setHandlesAuthenticationChallenges):
      (LayoutTestController::authenticationUsername):
      (LayoutTestController::setAuthenticationUsername):
      (LayoutTestController::authenticationPassword):
      (LayoutTestController::setAuthenticationPassword):
      
      * DumpRenderTree/mac/ResourceLoadDelegate.mm:
      (-[ResourceLoadDelegate webView:resource:didReceiveAuthenticationChallenge:fromDataSource:]):
      
      * DumpRenderTree/win/ResourceLoadDelegate.cpp:
      (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
      * DumpRenderTree/win/ResourceLoadDelegate.h:
      
      LayoutTests: 
      
      * http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt: Added.
      * http/tests/loading/basic-auth-resend-wrong-credentials.html: Added.
      * http/tests/loading/basic-credentials-sent-automatically-expected.txt: Added.
      * http/tests/loading/basic-credentials-sent-automatically.html: Added.
      * http/tests/loading/resources/basic-auth-testing.php: Added.
      * http/tests/loading/resources/othersubresources: Added.
      * http/tests/loading/resources/othersubresources/protected-resource.php: Added.
      * http/tests/loading/resources/protected-resource.php: Added.
      * http/tests/loading/resources/subresources: Added.
      * http/tests/loading/resources/subresources/protected-resource.php: Added.
      * http/tests/loading/resources/test2: Added.
      * http/tests/loading/resources/test2/basic-auth-testing.php: Added.
      * http/tests/loading/resources/test2/protected-resource.php: Added.
      * platform/gtk/Skipped:
      * platform/qt/Skipped:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48363 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      29c8b21b
    • kov@webkit.org's avatar
      2009-09-14 Zan Dobersek <zandobersek@gmail.com> · 832ec425
      kov@webkit.org authored
              Reviewed by Gustavo Noronha.
      
              Add some tests that fail to the skipped list and rebaseline two tests
              to pass them.
      
              * platform/gtk/Skipped: Populate with more failing tests.
              * platform/gtk/fast/dom/Window/window-properties-expected.txt: Rebaseline.
              * platform/gtk/fast/dom/prototype-inheritance-2-expected.txt: Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48362 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      832ec425
    • mrowe@apple.com's avatar
      Test for <rdar://problem/6954546> and <rdar://problem/7090444>. · 2104aa76
      mrowe@apple.com authored
      Reviewed by Dan Bernstein.
      
      WebKitTools:
      
      Add a flag on the test plug-in that asks it to clear the document during the call to NPP_New.
      This is the trigger for both <rdar://problem/6954546> and <rdar://problem/7090444>.
      
      * DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp:
      (NPP_New):
      
      LayoutTests:
      
      * plugins/destroy-during-npp-new-expected.txt: Added.
      * plugins/destroy-during-npp-new.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48361 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2104aa76
  3. 12 Sep, 2009 3 commits
    • oliver@apple.com's avatar
      [ES5] Implement Object.keys · d1f19755
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=29170
      
      Reviewed by Maciej Stachowiak.
      
      This patch basically requires two separate steps, the first is to split getPropertyNames
      into two functions -- getOwnPropertyNames and getPropertyNames, basically making them behave
      in the same way as getOwnPropertySlot and getPropertySlot.  In essence getOwnPropertyNames
      produces the list of properties on an object excluding its prototype chain and getPropertyNames
      just iterates the the object and its prototype chain calling getOwnPropertyNames at each level.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48336 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d1f19755
    • weinig@apple.com's avatar
      WebCore: Fix for https://bugs.webkit.org/show_bug.cgi?id=29219 · d2427961
      weinig@apple.com authored
      Document.elementFromPoint() should take page scroll into consideration
      
      Reviewed by Anders Carlsson.
      
      Test: fast/dom/elementFromPoint-relative-to-viewport.html
      
      * dom/Document.cpp:
      (WebCore::Document::elementFromPoint):
      (WebCore::Document::caretRangeFromPoint):
      
      LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=29219
      Document.elementFromPoint() should take page scroll into consideration
      
      Reviewed by Anders Carlsson.
      
      * fast/dom/elementFromPoint-relative-to-viewport-expected.txt: Added.
      * fast/dom/elementFromPoint-relative-to-viewport.html: Added.
      * fast/events/offsetX-offsetY.html: Change to use clientX/Y instead of pageX/Y.
      * fast/forms/slider-transformed.html: Ditto.
      * fast/forms/slider-zoomed.html: Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48334 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d2427961
    • weinig@apple.com's avatar
      WebCore: Fix for https://bugs.webkit.org/show_bug.cgi?id=29217 · 4ff6c71c
      weinig@apple.com authored
      Document.caretRangeFromPoint should take the scroll offset into account before hit testing
      
      Reviewed by Maciej Stachowiak.
      
      In accordance with the CSSOM View Module spec, Document.caretRangeFromPoint should interpret
      the point passed to it as relative to the viewport, not the document.
      
      Test: fast/dom/Document/CaretRangeFromPoint/hittest-relative-to-viewport.html
      
      * dom/Document.cpp:
      (WebCore::Document::caretRangeFromPoint):
      
      LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=29217
      Document.caretRangeFromPoint should take the scroll offset into account before hit testing
      
      Reviewed by Maciej Stachowiak.
      
      * fast/dom/Document/CaretRangeFromPoint/hittest-relative-to-viewport-expected.txt: Added.
      * fast/dom/Document/CaretRangeFromPoint/hittest-relative-to-viewport.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48333 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4ff6c71c
  4. 11 Sep, 2009 8 commits
  5. 10 Sep, 2009 9 commits
    • abarth@webkit.org's avatar
      2009-09-10 Adam Barth <abarth@webkit.org> · 0f9b3026
      abarth@webkit.org authored
              Reviewed by Sam Weinig.
      
              Detect mixed content
              https://bugs.webkit.org/show_bug.cgi?id=29003
      
              Add some tests for mixed content.  All but one of these tests pass
              currently.  The one that fails is pretty tricky, but I wanted to get it
              into the tree with a FIXME so we won't forget it.  I'll file a followup
              bug about fixing it.
      
              * http/tests/security/mixedContent/about-blank-iframe-in-main-frame-expected.txt: Added.
              * http/tests/security/mixedContent/about-blank-iframe-in-main-frame.html: Added.
              * http/tests/security/mixedContent/data-url-iframe-in-main-frame-expected.txt: Added.
              * http/tests/security/mixedContent/data-url-iframe-in-main-frame.html: Added.
              * http/tests/security/mixedContent/data-url-script-in-iframe-expected.txt: Added.
              * http/tests/security/mixedContent/data-url-script-in-iframe.html: Added.
              * http/tests/security/mixedContent/insecure-css-in-iframe-expected.txt: Added.
              * http/tests/security/mixedContent/insecure-css-in-iframe.html: Added.
              * http/tests/security/mixedContent/insecure-css-in-main-frame-expected.txt: Added.
              * http/tests/security/mixedContent/insecure-css-in-main-frame.html: Added.
              * http/tests/security/mixedContent/insecure-iframe-in-iframe-expected.txt: Added.
              * http/tests/security/mixedContent/insecure-iframe-in-iframe.html: Added.
              * http/tests/security/mixedContent/insecure-iframe-in-main-frame-expected.txt: Added.
              * http/tests/security/mixedContent/insecure-iframe-in-main-frame.html: Added.
              * http/tests/security/mixedContent/insecure-image-in-iframe-expected.txt: Added.
              * http/tests/security/mixedContent/insecure-image-in-iframe.html: Added.
              * http/tests/security/mixedContent/insecure-image-in-main-frame-expected.txt: Added.
              * http/tests/security/mixedContent/insecure-image-in-main-frame.html: Added.
              * http/tests/security/mixedContent/insecure-script-in-iframe-expected.txt: Added.
              * http/tests/security/mixedContent/insecure-script-in-iframe.html: Added.
              * http/tests/security/mixedContent/redirect-http-to-https-iframe-in-main-frame-expected.txt: Added.
              * http/tests/security/mixedContent/redirect-http-to-https-iframe-in-main-frame.html: Added.
              * http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe-expected.txt: Added.
              * http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe.html: Added.
              * http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame-expected.txt: Added.
              * http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame.html: Added.
              * http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe-expected.txt: Added.
              * http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe.html: Added.
              * http/tests/security/mixedContent/resources/boring.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-about-blank-frame.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-data-url-frame.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-data-url-script.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-insecure-css.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-insecure-frame.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-insecure-image.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-insecure-script.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-redirect-http-to-https-frame.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-redirect-http-to-https-script.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-redirect-https-to-http-frame.html: Added.
              * http/tests/security/mixedContent/resources/frame-with-redirect-https-to-http-script.html: Added.
              * http/tests/security/mixedContent/resources/script.js: Added.
              * http/tests/security/mixedContent/resources/style.css: Added.
      2009-09-10  Adam Barth  <abarth@webkit.org>
      
              Reviewed by Sam Weinig.
      
              Detect mixed content
              https://bugs.webkit.org/show_bug.cgi?id=29003
      
              Detect some basic kinds of mixed content (HTTP content loaded into an
              HTTPS context).  This new detection logic isn't perfect, but it's a
              place to start.
      
              Tests: http/tests/security/mixedContent/about-blank-iframe-in-main-frame.html
                     http/tests/security/mixedContent/data-url-iframe-in-main-frame.html
                     http/tests/security/mixedContent/data-url-script-in-iframe.html
                     http/tests/security/mixedContent/insecure-css-in-iframe.html
                     http/tests/security/mixedContent/insecure-css-in-main-frame.html
                     http/tests/security/mixedContent/insecure-iframe-in-iframe.html
                     http/tests/security/mixedContent/insecure-iframe-in-main-frame.html
                     http/tests/security/mixedContent/insecure-image-in-iframe.html
                     http/tests/security/mixedContent/insecure-image-in-main-frame.html
                     http/tests/security/mixedContent/insecure-script-in-iframe.html
                     http/tests/security/mixedContent/redirect-http-to-https-iframe-in-main-frame.html
                     http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe.html
                     http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame.html
                     http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe.html
      
              * loader/DocLoader.cpp:
              (WebCore::DocLoader::canRequest):
              (WebCore::DocLoader::requestResource):
              (WebCore::DocLoader::checkCacheObjectStatus):
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::isMixedContent):
              (WebCore::FrameLoader::checkIfDisplayInsecureContent):
              (WebCore::FrameLoader::checkIfRunInsecureContent):
              * loader/FrameLoader.h:
              * loader/MainResourceLoader.cpp:
              (WebCore::MainResourceLoader::willSendRequest):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0f9b3026
    • eric@webkit.org's avatar
      2009-09-10 Xiaomei Ji <xji@chromium.org> · 4561e21d
      eric@webkit.org authored
              Reviewed by Eric Seidel.
      
              Implement Range.expand().
              https://bugs.webkit.org/show_bug.cgi?id=27632
      
              * fast/dom/Range/range-expand-expected.txt: Added.
              * fast/dom/Range/range-expand.html: Added.
              * fast/dom/Window/window-properties-expected.txt:
      2009-09-10  Xiaomei Ji  <xji@chromium.org>
      
              Reviewed by Eric Seidel.
      
              Implment Range.expand().
              https://bugs.webkit.org/show_bug.cgi?id=27632
      
              Test: fast/dom/Range/range-expand.html
      
              * dom/Range.cpp:
              (WebCore::Range::expand):
              * dom/Range.h:
              * dom/Range.idl:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48271 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4561e21d
    • ap@apple.com's avatar
      Reviewed by Alexey Proskuryakov. · 9f86bb1c
      ap@apple.com authored
              WebSocket API implementation.
              https://bugs.webkit.org/show_bug.cgi?id=28038
              
              Add build systems for GNUmakefile.am, WebCore.xcodeproj and
              WebCore.vcproj.
              Add websockets directory and WebSocket.idl in qt build system.
              Tests will be landed once the code is completed and functional.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48270 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9f86bb1c
    • jianli@chromium.org's avatar
      WebCore: [V8] Make XMLHttpRequest.send handle File object. · 3e7420ff
      jianli@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=28924
      
      Reviewed by Eric Seidel.
      
      Test: http/tests/local/send-dragged-file.html
      
      * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
      (WebCore::CALLBACK_FUNC_DECL):
      
      LayoutTests: [V8] Make XMLHttpRequest.send handle File object.
      https://bugs.webkit.org/show_bug.cgi?id=28924
      
      Reviewed by Eric Seidel.
      
      Add a new layout test.
      
      * http/tests/local/resources/file-for-drag-to-send.txt: Added.
      * http/tests/local/resources/send-dragged-file.js: Added.
      * http/tests/local/send-dragged-file-expected.txt: Added.
      * http/tests/local/send-dragged-file.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48260 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3e7420ff
    • benm@google.com's avatar
      WebCore: Geolocation does not correctly handle reentrant calls from callbacks. · ae2f76a0
      benm@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=29040
      
      Patch by Steve Block <steveblock@google.com> on 2009-09-10
      Reviewed by Darin Adler.
      
      Tests: fast/dom/Geolocation/reentrant-error.html
             fast/dom/Geolocation/reentrant-success.html
      
      * page/Geolocation.cpp: Modified.
      (WebCore::Geolocation::handleError): Modified. Call sendError directly, clearing notifier lists before making callback.
      (WebCore::Geolocation::makeSuccessCallbacks): Modified. Call sendPosition directly, clearing notifier lists before making callback.
      * page/Geolocation.h: Modified. Deleted sendErrorToXX and sendPositionToXXX methods.
      
      LayoutTests: Geolocation does not correctly handle reentrant calls from callbacks.
      https://bugs.webkit.org/show_bug.cgi?id=29040
      
      Patch by Steve Block <steveblock@google.com> on 2009-09-09
      Reviewed by Darin Adler.
      
      * fast/dom/Geolocation/resources/reentrant-error.js: Added. Tests that reentrant calls from the error callback are OK.
      * fast/dom/Geolocation/reentrant-error.html: Added. Wrapper for above test.
      * fast/dom/Geolocation/reentrant-error-expected.txt: Added. Expected result for above test.
      * fast/dom/Geolocation/resources/reentrant-success.js: Added. Tests that reentrant calls from the success callback are OK.
      * fast/dom/Geolocation/reentrant-success.html: Added. Wrapper for above test.
      * fast/dom/Geolocation/reentrant-success-expected.txt: Added. Expected result for above test.
      * platform/gtk/Skipped: Modified. Skips above tests.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48258 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ae2f76a0
    • eric@webkit.org's avatar
      2009-09-10 Erik Arvidsson <arv@chromium.org> · 39266058
      eric@webkit.org authored
              Reviewed by Eric Seidel.
      
              Fixes issue where focused elements did not get blur and focus events when the window was blurred and focused.
              https://bugs.webkit.org/show_bug.cgi?id=27105
      
              * fast/events/blur-focus-window-should-blur-focus-element-expected.txt: Added.
              * fast/events/blur-focus-window-should-blur-focus-element.html: Added.
              * fast/events/resources/blur-focus-window-should-blur-focus-element.js: Added.
              (divElement.onfocus.divElement.onblur.window.onfocus.window.onblur.innerDiv.onfocus.innerDiv.onblur.iframe.onfocus.iframe.onblur):
              (testNextEvent):
              * fast/events/resources/tabindex-focus-blur-all.js:
              (test):
              * fast/events/tabindex-focus-blur-all-expected.txt:
      2009-09-10  Erik Arvidsson  <arv@chromium.org>
      
              Reviewed by Eric Seidel.
      
              Fixes issue where focused elements did not get blur and focus events when the window was blurred and focused.
              https://bugs.webkit.org/show_bug.cgi?id=27105
      
              Test: fast/events/blur-focus-window-should-blur-focus-element.html
      
              * page/FocusController.cpp:
              (WebCore::dispatchEventsOnWindowAndFocusedNode):
              (WebCore::FocusController::setFocused):
              (WebCore::FocusController::setActive):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48257 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      39266058
    • abarth@webkit.org's avatar
      2009-09-10 Adam Barth <abarth@webkit.org> · a3541615
      abarth@webkit.org authored
              Reviewed by Alexey Proskuryakov.
      
              https://bugs.webkit.org/show_bug.cgi?id=24205
      
              Added a test case for inserting a new line character into the
              request-uri.
      
              * http/tests/xmlhttprequest/newline-in-request-uri-expected.txt: Added.
              * http/tests/xmlhttprequest/newline-in-request-uri.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48256 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a3541615
    • benm@google.com's avatar
      WebCore: Geolocation Coordinates::toString() prints bogus values for unspecified properties. · cfc5433f
      benm@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=29080
      
      Patch by Steve Block <steveblock@google.com> on 2009-09-09
      Reviewed by Maciej Stachowiak.
      
      Test: fast/dom/Geolocation/position-string.html
      
      * GNUmakefile.am: Modified. Removes Geoposition.cpp and Coordinates.cpp.
      * WebCore.gypi: Modified. Removes Geoposition.cpp and Coordinates.cpp.
      * WebCore.pro: Modified. Removes Geoposition.cpp and Coordinates.cpp.
      * WebCore.vcproj/WebCore.vcproj: Modified. Removes Geoposition.cpp and Coordinates.cpp.
      * WebCore.xcodeproj/project.pbxproj: Modified. Removes Geoposition.cpp and Coordinates.cpp.
      * WebCoreSources.bkl: Modified. Removes Geoposition.cpp and Coordinates.cpp.
      * page/Coordinates.cpp: Removed.
      * page/Coordinates.h: Modified. Removes toString method.
      * page/Coordinates.idl: Modified. Removes toString method.
      * page/Geoposition.cpp: Removed.
      * page/Geoposition.h: Modified. Removes toString method.
      * page/Geoposition.idl: Modified. Removes toString method.
      
      WebKitTools: Geolocation Coordinates::toString() prints bogus values for unspecified properties.
      https://bugs.webkit.org/show_bug.cgi?id=29080
      
      Patch by Steve Block <steveblock@google.com> on 2009-09-09
      Reviewed by Maciej Stachowiak.
      
      * Scripts/make-script-test-wrappers: Modified. Adds asynchronous Geolocation tests to exclusion list.
      
      LayoutTests: Geolocation Coordinates::toString() prints bogus values for unspecified properties.
      https://bugs.webkit.org/show_bug.cgi?id=29080
      
      Patch by Steve Block <steveblock@google.com> on 2009-09-09
      Reviewed by Maciej Stachowiak.
      
      * fast/dom/Geolocation/resources/position-string.js: Added. Tests output of position.toString().
      * fast/dom/Geolocation/position-string.html: Added. Wrapper for above test.
      * fast/dom/Geolocation/position-string-expected.txt: Added. Expected result for above test.
      * platform/gtk/Skipped: Modified. Skips above test.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48252 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cfc5433f
    • benm@google.com's avatar
      WebCore: Correctly applies the Geolocation timeout property. · 78f6f537
      benm@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=27256
      
      Patch by Steve Block <steveblock@google.com> on 2009-09-09
      Reviewed by Adam Barth.
      
      If a timeout is specified, the timer is started as soon as the location acquistion process starts.
      If a position fix is not obtained within the timeout interval, the position request is cancelled
      and the error callback (if specified) is invoked. If a position fix is obtained within the timeout
      interval, the timer is stopped. Permissions are then requested from the user if required. See
      http://www.w3.org/TR/geolocation-API/#position-options.
      
      Note that this logic means that the time required to obtain permissions from the user is not
      included in the timeout interval.
      
      Tests: fast/dom/Geolocation/timeout.html
             fast/dom/Geolocation/timeout-zero.html
      
      * page/Geolocation.cpp: Modified.
      (WebCore::Geolocation::GeoNotifier::GeoNotifier): Modified. Takes Geolocation object as parameter.
      (WebCore::Geolocation::GeoNotifier::hasZeroTimeout): Added. Determines whether this request has a zero timeout.
      (WebCore::Geolocation::GeoNotifier::startTimerIfNeeded): Renamed from startTimer. Starts the timer if a timeout was specified.
      (WebCore::Geolocation::GeoNotifier::timerFired): Modified. Calls the error callback if specified, and reports the timeout to the Geolocation object.
      (WebCore::Geolocation::getCurrentPosition): Modified. Calls maybeStartTimer when starting the location acquisition process.
      (WebCore::Geolocation::watchPosition): Modified. Calls maybeStartTimer when starting the location acquisition process.
      (WebCore::Geolocation::requestTimedOut): Added. Cancels a request when it times out.
      (WebCore::Geolocation::setIsAllowed): Modified. No longer starts timers.
      (WebCore::Geolocation::sendPosition): Modified. No longer stops timers.
      (WebCore::Geolocation::stopTimer): Added. Stops the timers for a vector of notifiers.
      (WebCore::Geolocation::stopTimersForOneShots): Added. Stops the timers for all one-shots.
      (WebCore::Geolocation::stopTimersForWatchers): Added. Stops the timers for all watchers.
      (WebCore::Geolocation::stopTimers): Added. Stops the timers for all requests.
      (WebCore::Geolocation::geolocationServicePositionChanged): Modfified. Stops the timers for all requests.
      * page/Geolocation.h: Modified.
      (WebCore::Geolocation::GeoNotifier::create): Modified. Takes Geolocation object as parameter.
      
      LayoutTests: Correctly applies the Geolocation timeout property.
      https://bugs.webkit.org/show_bug.cgi?id=27256
      
      Patch by Steve Block <steveblock@google.com> on 2009-09-09
      Reviewed by Adam Barth.
      
      * fast/dom/Geolocation/resources/timeout.js: Added. Tests that when a non-zero timeout is used, the success callback is invoked as expected.
      * fast/dom/Geolocation/timeout.html: Added. Wrapper for above test.
      * fast/dom/Geolocation/timeout-expected.txt: Added. Expected result for above test.
      * fast/dom/Geolocation/resources/timeout-zero.js: Added. Tests that when a zero timeout is used, the error callback is invoked with code TIMEOUT.
      * fast/dom/Geolocation/timeout-zero.html: Added. Wrapper for above test.
      * fast/dom/Geolocation/timeout-zero-expected.txt: Added. Expected result for above test.
      * platform/gtk/Skipped: Modified. Skips the above tests.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48249 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      78f6f537
  6. 09 Sep, 2009 8 commits
    • abarth@webkit.org's avatar
      2009-09-08 Adam Barth <abarth@webkit.org> · 4d0c286a
      abarth@webkit.org authored
              Reviewed by Eric Seidel.
      
              Missing checkout for getSVGDocument()
              https://bugs.webkit.org/show_bug.cgi?id=29064
      
              The V8 code generator didn't understand SVGCheckSecurityDocument.
      
              Tests: http/tests/security/xss-DENIED-getSVGDocument-iframe.html
                     http/tests/security/xss-DENIED-getSVGDocument-object.html
      
              * bindings/scripts/CodeGeneratorV8.pm:
      2009-09-08  Adam Barth  <abarth@webkit.org>
      
              Reviewed by Eric Seidel.
      
              Missing checkout for getSVGDocument()
              https://bugs.webkit.org/show_bug.cgi?id=29064
      
              Add tests that getSVGDocument() has the proper checks.
      
              * http/tests/security/resources/flag.php: Added.
              * http/tests/security/xss-DENIED-getSVGDocument-iframe-expected.txt: Added.
              * http/tests/security/xss-DENIED-getSVGDocument-iframe.html: Added.
              * http/tests/security/xss-DENIED-getSVGDocument-object-expected.txt: Added.
              * http/tests/security/xss-DENIED-getSVGDocument-object.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48240 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4d0c286a
    • eric@webkit.org's avatar
      2009-09-09 Cameron McCormack <cam@mcc.id.au> · 3268943a
      eric@webkit.org authored
              Reviewed by Eric Seidel.
      
              Make SVGStyleElement inherit from SVGLangSpace
              https://bugs.webkit.org/show_bug.cgi?id=29058
      
              Required by SVG 1.1 Second Edition:
              http://dev.w3.org/SVG/profiles/1.1F2/publish/styling.html#InterfaceSVGStyleElement
      
              * svg/dom/SVGStyleElement: Added.
              * svg/dom/SVGStyleElement/resources: Added.
              * svg/dom/SVGStyleElement/resources/TEMPLATE.html: Copied from
              LayoutTests/svg/dom/resources/TEMPLATE.html with some "../"s added.
              * svg/dom/SVGStyleElement/resources/style-langspace.js: Added.
              * svg/dom/SVGStyleElement/style-langspace-expected.txt: Added.
              * svg/dom/SVGStyleElement/style-langspace.html: Added.
      2009-09-09  Cameron McCormack  <cam@mcc.id.au>
      
              Reviewed by Eric Seidel.
      
              Make SVGStyleElement inherit from SVGLangSpace
              https://bugs.webkit.org/show_bug.cgi?id=29058
      
              Required by SVG 1.1 Second Edition:
              http://dev.w3.org/SVG/profiles/1.1F2/publish/styling.html#InterfaceSVGStyleElement
      
              Test: svg/dom/SVGStyleElement/style-langspace.html
      
              * svg/SVGStyleElement.cpp: Drop methods xmlspace and setXmlspace.
              (WebCore::SVGStyleElement::SVGStyleElement): Add SVGLangSpace()
              initializer.
              (WebCore::SVGStyleElement::parseMappedAttribute): Call
              parseMappedAttribute on SVGLangSpace.
              * svg/SVGStyleElement.h: Drop xmlspace and setXmlspace declarations.
              * svg/SVGStyleElement.idl: Drop xmlspace attribute and add SVGLangSpace
              as a superinterface.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48239 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3268943a
    • eric@webkit.org's avatar
      2009-09-09 Alpha Lam <hclam@chromium.org> · 0b03bb14
      eric@webkit.org authored
              Reviewed by Eric Carlson.
      
              Media layout tests should have a way to provide test files in different formats
              https://bugs.webkit.org/show_bug.cgi?id=28327
      
              Added media-file.js which has a findMediaFile(type, name) method
              to find a proper media file to load according to supported codecs.
      
              Also changed 10 layout tests to use above method to locate the test file.
      
              * media/controls-strict.html: Use findMediaFile(type, name).
              * media/controls-styling.html: ditto.
              * media/media-file.js: Added. Provide findMediaFile(type, name).
              * media/video-append-source.html: Use findMediaFile(type, name).
              * media/video-aspect-ratio.html: ditto.
              * media/video-autoplay.html: ditto.
              * media/video-buffered.html: ditto.
              * media/video-controls-rendering.html: ditto.
              * media/video-layer-crash.html: ditto.
              * media/video-transformed.html: Use findMediaFile(type, name).
              * media/video-zoom-controls.html: ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48237 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0b03bb14
    • eric@webkit.org's avatar
      2009-09-09 Jens Alfke <snej@chromium.org> · 99e6cded
      eric@webkit.org authored
              Reviewed by Eric Seidel.
      
              Initialize DataTransfer's effectAllowed and dropEffect properties correctly
              according to HTML5 spec (sec. 7.9.2-7.9.3).
              https://bugs.webkit.org/show_bug.cgi?id=26700
      
              * fast/events/drag-dropeffect-expected.txt: Added.
              * fast/events/drag-dropeffect.html: Added.
      2009-09-09  Jens Alfke  <snej@chromium.org>
      
              Reviewed by Eric Seidel.
      
              Initialize DataTransfer's effectAllowed and dropEffect properties correctly
              according to HTML5 spec (sec. 7.9.2-7.9.3).
              https://bugs.webkit.org/show_bug.cgi?id=26700
              - At the start of a drag operation, the value of effectAllowed should be
                the string "uninitialized".
              - At end of dragstart handler, if effectAllowed hasn't been set yet, it
                should be set to "copy".
              - on dragenter and dragover event, dropEffect should be initialized to a
                default value based on the value of effectAllowed.
              - at end of dragenter and dragover the dropEffect should be set to "none"
                if the value set by the handler doesn't match the effectAllowed.
              - on dragleave event, dropEffect should be "none".
              - on drop event, dropEffect should be the previously negotiated value.
      
              Test: fast/events/drag-dropeffect.html
      
              * WebCore.base.exp:
                  Added a parameter to EventHandler::dragSourceMovedTo.
              * dom/Clipboard.cpp:
              (WebCore::Clipboard::Clipboard):
                  Initialize m_effectAllowed to "uninitialized".
              (WebCore::Clipboard::sourceOperation):
                  Treat "uninitialized" as meaning no value has been set.
              * page/DragController.cpp:
              (WebCore::DragController::DragController):
                  Initialize new member m_destinationDragOperation.
              (WebCore::DragController::dragExited):
                  Set m_destinationDragOperation to none on dragExit.
              (WebCore::DragController::performDrag):
                  Set m_destinationDragOperation to current dropEffect.
              (WebCore::DragController::dragEnteredOrUpdated):
                  Make sure to clear the operation if drag source doesn't allow it.
              (WebCore::DragController::tryDHTMLDrag):
                  Set a default value for the dst drag op before sending dragEnter/Over.
              (WebCore::DragController::startDrag):
                  Clear m_destinationDragOperation at start of drag.
              * page/DragController.h:
              (WebCore::DragController::destinationDragOperation):
                  Added new member m_destinationDragOperation, and its public getter.
              * page/EventHandler.cpp:
              (WebCore::EventHandler::updateDragAndDrop):
                  dropEffect should be 'none' during dropleave handler, per spec.
              (WebCore::EventHandler::dragSourceMovedTo):
                  Added DragOperation parameter, so the handler sees the current dropEffect.
              (WebCore::EventHandler::handleDrag):
                  Assume DragOperationEvery for non-DHTML drags.
              * page/EventHandler.h:
                  Added DragOperation parameter to dragSourceMovedTo().
      2009-09-09  Jens Alfke  <snej@chromium.org>
      
              Reviewed by Eric Seidel.
      
              Initialize DataTransfer's effectAllowed and dropEffect properties correctly
              according to HTML5 spec (sec. 7.9.2-7.9.3).
              https://bugs.webkit.org/show_bug.cgi?id=26700
      
              * WebView/WebFrame.mm:
              (-[WebFrame _dragSourceMovedTo:]):
                  Pass current drag operation (if known) to EventHandler::dragSourceMovedTo().
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48229 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      99e6cded
    • eric@webkit.org's avatar
      2009-09-09 Zan Dobersek <zandobersek@gmail.com> · ea4725c1
      eric@webkit.org authored
              Reviewed by Gustavo Noronha.
      
              [GTK] DumpRenderTree needs eventSender object and implementation
              https://bugs.webkit.org/show_bug.cgi?id=25990
      
              Enable plenty of tests that now pass thanks to (only) partial
              EventSender implementation.
      
              * platform/gtk/Skipped:
      2009-09-09  Zan Dobersek  <zandobersek@gmail.com>
      
              Reviewed by Gustavo Noronha.
      
              [GTK] DumpRenderTree needs eventSender object and implementation
              https://bugs.webkit.org/show_bug.cgi?id=25990
      
              Creates a function that is accessible from the DumpRenderTree tool
              and calls the layout method on the frame view.
      
              * webkit/webkitprivate.h:
              * webkit/webkitwebframe.cpp:
              (webkit_web_frame_layout):
      2009-09-09  Zan Dobersek  <zandobersek@gmail.com>
      
              Reviewed by Gustavo Noronha.
      
              [GTK] DumpRenderTree needs eventSender object and implementation
              https://bugs.webkit.org/show_bug.cgi?id=25990
      
              Implements most of the EventSender object's functionality for
              the DumpRenderTree tool. Implementation still lacks support
              for drag and drop tests and forward leaps.
      
              Based on work by Holger Hans Peter Freyther.
      
              * DumpRenderTree/gtk/DumpRenderTree.cpp:
              (runTest): Focus on the view before loading a new test.
              (webViewWindowObjectCleared):
              * DumpRenderTree/gtk/EventSender.cpp: Added.
              (getDragModeCallback):
              (setDragModeCallback):
              (leapForwardCallback):
              (contextClickCallback):
              (updateClickCount):
              (mouseDownCallback):
              (mouseUpCallback):
              (mouseMoveToCallback):
              (beginDragWithFilesCallback):
              (replaySavedEvents):
              (keyDownCallback):
              (textZoomInCallback):
              (textZoomOutCallback):
              (zoomPageInCallback):
              (zoomPageOutCallback):
              (getClass):
              (makeEventSender):
              * DumpRenderTree/gtk/EventSender.h: Added.
              * GNUmakefile.am: Add build rules for EventSender.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48228 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ea4725c1
    • eric@webkit.org's avatar
      2009-09-09 Dumitru Daniliuc <dumi@chromium.org> · 2767844f
      eric@webkit.org authored
              Reviewed by Dimitri Glazkov.
      
              Adding a test for the database authorizer.
      
              https://bugs.webkit.org/show_bug.cgi?id=28918
      
              * storage/test-authorizer-expected.txt: Added.
              * storage/test-authorizer.html: Added.
      2009-09-09  Dumitru Daniliuc  <dumi@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              1. Adding support/bindings for read-only transactions.
              2. Disallowing the SQLITE_*_VIEW and REINDEX operations in the
              private browsing mode.
              3. Adding an authorizer test.
      
              https://bugs.webkit.org/show_bug.cgi?id=28918
      
              Test: storage/test-authorizer.html
      
              * bindings/js/JSDatabaseCustom.cpp:
              (WebCore::createTransaction): Parses all arguments and executes a
              transaction.
              (WebCore::JSDatabase::transaction): Refactored to use
              createTransaction().
              (WebCore::JSDatabase::readTransaction): Added to execute read-only
              transactions using createTransaction().
              * bindings/v8/custom/V8CustomBinding.h: Added the binding for
              Database::readTransaction().
              * bindings/v8/custom/V8DatabaseCustom.cpp:
              (WebCore::createTransaction): Parses all arguments and executes a
              transaction.
              (WebCore::transaction): Refactored to use createTransaction().
              (WebCore::readTransaction): Added to execute read-only
              transactions using createTransaction().
              * storage/Database.cpp:
              (WebCore::Database::transaction): Added support for read-only
              transactions.
              * storage/Database.h: Added support for read-only transactions.
              * storage/Database.idl: Added support for read-only transactions.
              * storage/DatabaseAuthorizer.cpp:
              (WebCore::DatabaseAuthorizer::createTempTable): Make it obvious
              that the statement will be denied in private browsing mode and
              read-only transactions.
              (WebCore::DatabaseAuthorizer::dropTempTable): Same.
              (WebCore::DatabaseAuthorizer::createTempIndex): Same.
              (WebCore::DatabaseAuthorizer::dropTempIndex): Same.
              (WebCore::DatabaseAuthorizer::createTempTrigger): Same.
              (WebCore::DatabaseAuthorizer::dropTempTrigger): Same.
              (WebCore::DatabaseAuthorizer::createView): Deny in private
              browsing mode and read-only transactions.
              (WebCore::DatabaseAuthorizer::createTempView): Same.
              (WebCore::DatabaseAuthorizer::dropView): Same.
              (WebCore::DatabaseAuthorizer::dropTempView): Same.
              (WebCore::DatabaseAuthorizer::allowReindex): Same.
              * storage/DatabaseAuthorizer.h:
              * storage/SQLTransaction.cpp: Added support for read-only
              transactions.
              (WebCore::SQLTransaction::create):
              (WebCore::SQLTransaction::SQLTransaction):
              (WebCore::SQLTransaction::executeSQL):
              (WebCore::SQLTransaction::acquireLock):
              * storage/SQLTransaction.h:
              * storage/SQLTransactionCoordinator.cpp:
              (WebCore::SQLTransactionCoordinator::acquireLock): Added a new
              parameter in preparation for a change that will allow multiple
              read-only transactions on the same DB to run concurrently.
              * storage/SQLTransactionCoordinator.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2767844f
    • hyatt@apple.com's avatar
      WebCore: https://bugs.webkit.org/show_bug.cgi?id=29102, add support for user... · 63e0ac2f
      hyatt@apple.com authored
      WebCore: https://bugs.webkit.org/show_bug.cgi?id=29102, add support for user stylesheet injection.  This is similar
      to user script injection but allows for user stylesheets to be added.  The stylesheets are applied immediately
      to all Frames in the PageGroup.
      
      Reviewed by Adam Roben.
      
      Added userscripts/simple-stylesheet.html test case.
      
      * WebCore.base.exp:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * css/CSSStyleSelector.cpp:
      (WebCore::CSSStyleSelector::CSSStyleSelector):
      * css/CSSStyleSelector.h:
      * dom/Document.cpp:
      (WebCore::Document::Document):
      (WebCore::Document::attach):
      (WebCore::Document::pageGroupUserSheets):
      (WebCore::Document::clearPageGroupUserSheets):
      (WebCore::Document::recalcStyleSelector):
      * dom/Document.h:
      * loader/PlaceholderDocument.cpp:
      (WebCore::PlaceholderDocument::attach):
      * page/PageGroup.cpp:
      (WebCore::PageGroup::addUserStyleSheet):
      (WebCore::PageGroup::removeUserContentForWorld):
      (WebCore::PageGroup::removeAllUserContent):
      * page/PageGroup.h:
      (WebCore::PageGroup::userStyleSheets):
      * page/UserStyleSheet.h: Added.
      (WebCore::UserStyleSheet::UserStyleSheet):
      (WebCore::UserStyleSheet::source):
      (WebCore::UserStyleSheet::url):
      (WebCore::UserStyleSheet::patterns):
      (WebCore::UserStyleSheet::worldID):
      * page/UserStyleSheetTypes.h: Added.
      
      WebKit/mac: https://bugs.webkit.org/show_bug.cgi?id=29102, add support for user stylesheet injection.  This is similar
      to user script injection but allows for user stylesheets to be added.  The stylesheets are applied immediately
      to all Frames in the PageGroup.
      
      Reviewed by Adam Roben.
      
      Added userscripts/simple-stylesheet.html test case.
      
      * WebView/WebView.mm:
      (+[WebView _addUserStyleSheetToGroup:source:url:worldID:patterns:]):
      * WebView/WebViewPrivate.h:
      
      LayoutTests: https://bugs.webkit.org/show_bug.cgi?id=29102, add support for user stylesheet injection.  This is similar
      to user script injection but allows for user stylesheets to be added.  The stylesheets are applied immediately
      to all Frames in the PageGroup.
      
      Reviewed by Adam Roben.
      
      Added userscripts/simple-stylesheet.html test case.
      
      * platform/mac/userscripts/simple-stylesheet-expected.checksum: Added.
      * platform/mac/userscripts/simple-stylesheet-expected.png: Added.
      * platform/mac/userscripts/simple-stylesheet-expected.txt: Added.
      * userscripts/simple-stylesheet.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48222 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      63e0ac2f
    • laszlo.1.gombos@nokia.com's avatar
      2009-09-09 Carol Szabo <carol.szabo@nokia.com> · 0b53d2f5
      laszlo.1.gombos@nokia.com authored
              Reviewed by Ariya Hidayat.
      
              [Qt] CSS Style -webkit-box-shadow is not rendered correctly on
              Qt platform
              https://bugs.webkit.org/show_bug.cgi?id=23291
      
              * platform/graphics/qt/GraphicsContextQt.cpp:
              (WebCore::GraphicsContext::drawRect):
              (WebCore::GraphicsContext::strokeArc):
              (WebCore::GraphicsContext::drawConvexPolygon):
              (WebCore::GraphicsContext::fillPath):
              (WebCore::GraphicsContext::strokePath):
              (WebCore::GraphicsContext::fillRect):
              (WebCore::GraphicsContext::fillRoundedRect):
               Added the ability to draw shadows for all these curves.
      
      
      2009-09-09  Carol Szabo  <carol.szabo@nokia.com>
      
              Reviewed by Ariya Hidayat.
      
              [Qt] -webkit-box-shadow CSS Style is not rendered correctly on
              Qt platform
              https://bugs.webkit.org/show_bug.cgi?id=23291
      
              * platform/qt/fast/box-shadow/basic-shadows-expected.checksum:
              * platform/qt/fast/box-shadow/basic-shadows-expected.png:
              * platform/qt/fast/box-shadow/inset-expected.checksum:
              * platform/qt/fast/box-shadow/inset-expected.png:
              * platform/qt/fast/box-shadow/spread-expected.checksum:
              * platform/qt/fast/box-shadow/spread-expected.png:
                Updated to show the new shadows.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0b53d2f5