History log of /external/webkit/Source/WebKit/android/WebCoreSupport/GeolocationClientImpl.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
b80d1c52ad334f34843b52138f0ea684f2683904 21-May-2012 Steve Block <steveblock@google.com> Always call back to new Geolocation requests

This change makes sure we always call back to new Geolocation requests, even
when other requests are ongoing. Note that it requires an Android-specific
change to WebCore to fix https://bugs.webkit.org/show_bug.cgi?id=87030.

Bug: 6511338
Change-Id: If46d2ef0eb8e81925ae51ed2e8f2d16a9fa6c997
/external/webkit/Source/WebKit/android/WebCoreSupport/GeolocationClientImpl.h
5c36c4ca9214cbbe65d12f6b138aef9618d41a99 17-May-2012 Steve Block <steveblock@google.com> Switch to client-based Geolocation

The motivation for this switch is that it is required to enable
PREEMPT_GEOLOCATION_PERMISSION. See b/4500947.

The switch involves changing lots of Android's WebKit plumbing to use a new
GeolocationClientAndroid in WebKit (called from
WebCore::GeolocationController), rather than the existing
GeolocationServiceAndroid in WebCore/platform (called from
WebCore::Geolocation). This is complicated by the need to support mocking for
LayoutTests.

The pattern used is very similar to that used for DeviceOrientation and
DeviceMotion. This patch ...
- Enables CLIENT_BASED_GEOLOCATION
- Leaves PREEMPT_GEOLOCATION_PERMISSION disabled for now
- Removes GeolocationServiceAndroid
- Adds a new GeolocationClientAndroid
- Just a proxy to real client
- Adds a new GeolocationManager
- Manages switching between the real and mock clients
- Provides the appropriate client to GeolocationClientAndroid
- Plumbs to the real client calls for permissions and for suspending/resuming
- Adds a new GeolocationClientImpl
- The real client
- Based heavily on GeolocationServiceAndroid
- Delegates to GeolocationServiceBridge, as GeolocationServiceAndroid did
- Calls back directly to GeolocationController
- Owns the existing GeolocationPermissions
- Updates WebViewCore to call the GeolocationManager for permissions and for
suspending/resuming
- Removes superfluous ChromeClient methods for permissions

Note that support for mocking will be added in a later change. See bug for
details.

Bug: 6511338
Change-Id: I4cdbf55846e76b37c161834b83135b4dc48dbcdc
/external/webkit/Source/WebKit/android/WebCoreSupport/GeolocationClientImpl.h