Skip to content
  • bolsinga@apple.com's avatar
    2009-03-13 Greg Bolsinga <bolsinga@apple.com> · 1383b8e0
    bolsinga@apple.com authored
            Reviewed by Simon Fraser.
    
            Update Geolocation perimission dialogs to be asynchronous.
            https://bugs.webkit.org/show_bug.cgi?id=24505
    
            WebGeolocation is a wrapper around WebCore::Geolocation. It mimics the
            coding style set by WebSecurityOrigin.
            
            WebChromeClient now calls the private UI delegate method 
            -webView:frame:requestGeolocationPermission:securityOrigin:
    
            * WebCoreSupport/WebChromeClient.h:
            * WebCoreSupport/WebChromeClient.mm:
            (WebChromeClient::requestGeolocationPermissionForFrame):
            * WebCoreSupport/WebGeolocation.mm: Added.
            (WebCore::if):
            (-[WebGeolocation shouldClearCache]):
            (-[WebGeolocation setIsAllowed:]):
            (-[WebGeolocation dealloc]):
            * WebCoreSupport/WebGeolocationInternal.h: Added.
            * WebCoreSupport/WebGeolocationPrivate.h: Added.
            * WebView/WebUIDelegatePrivate.h:
    
    2009-03-13  Greg Bolsinga  <bolsinga@apple.com>
    
            Reviewed by Simon Fraser.
    
            Update Geolocation perimission dialogs to be asynchronous.
            https://bugs.webkit.org/show_bug.cgi?id=24505
    
            Add WebGeolocation, a wrapper around WebCore::Geolocation. It mimics the
            coding style set by WebSecurityOrigin.
    
            * WebKit.xcodeproj/project.pbxproj:
    
    2009-03-13  Greg Bolsinga  <bolsinga@apple.com>
    
            Reviewed by Simon Fraser.
    
            Update Geolocation perimission dialogs to be asynchronous.
            https://bugs.webkit.org/show_bug.cgi?id=24505
    
            Geolocation now requests permission from the Chrome asynchronously.
            The Chrome is passed the Geolocation object, and the Chrome sets the permission
            on the Geolocation. Geolocation also tracks if the Chrome should clear its cache
            of SecurityOrigins with geolocation permission. This is so that the GeolocationService
            can inform the Chrome of its request, and the Chrome is also free to implement its
            own policy.
            
            * WebCore.base.exp:
            * WebCore.xcodeproj/project.pbxproj:
            * page/Chrome.cpp:
            (WebCore::Chrome::requestGeolocationPermissionForFrame):
            * page/Chrome.h:
            * page/ChromeClient.h:
            (WebCore::ChromeClient::requestGeolocationPermissionForFrame):
            * page/Geolocation.cpp:
            (WebCore::Geolocation::Geolocation):
            (WebCore::Geolocation::getCurrentPosition):
            (WebCore::Geolocation::watchPosition):
            (WebCore::Geolocation::setIsAllowed):
            (WebCore::Geolocation::displayChallengeIfNecessary):
            (WebCore::Geolocation::geolocationServicePositionChanged):
            * page/Geolocation.h:
            (WebCore::Geolocation::isAllowed):
            (WebCore::Geolocation::setShouldClearCache):
            (WebCore::Geolocation::shouldClearCache):
            (WebCore::Geolocation::):
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@41675 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    1383b8e0