| Index: android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| diff --git a/android_webview/java/src/org/chromium/android_webview/AwContents.java b/android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| index 63080a6479ed9cd23526ec38be2b905a9af4270f..817e3594617c7cfd6d047225f583c1f20519ad85 100644
|
| --- a/android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| +++ b/android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| @@ -37,11 +37,11 @@ import android.view.accessibility.AccessibilityNodeProvider;
|
| import android.view.animation.AnimationUtils;
|
| import android.view.inputmethod.EditorInfo;
|
| import android.view.inputmethod.InputConnection;
|
| -import android.webkit.GeolocationPermissions;
|
| import android.webkit.JavascriptInterface;
|
| import android.webkit.ValueCallback;
|
| import android.widget.OverScroller;
|
|
|
| +import org.chromium.android_webview.permission.AwGeolocationCallback;
|
| import org.chromium.android_webview.permission.AwPermissionRequest;
|
| import org.chromium.base.CalledByNative;
|
| import org.chromium.base.JNINamespace;
|
| @@ -2410,25 +2410,13 @@ public class AwContents implements SmartClipProvider,
|
| mContentsClient.onReceivedHttpAuthRequest(handler, host, realm);
|
| }
|
|
|
| - private class AwGeolocationCallback implements GeolocationPermissions.Callback {
|
| + public AwGeolocationPermissions getGeolocationPermissions() {
|
| + return mBrowserContext.getGeolocationPermissions();
|
| + }
|
|
|
| - @Override
|
| - public void invoke(final String origin, final boolean allow, final boolean retain) {
|
| - ThreadUtils.runOnUiThread(new Runnable() {
|
| - @Override
|
| - public void run() {
|
| - if (retain) {
|
| - if (allow) {
|
| - mBrowserContext.getGeolocationPermissions().allow(origin);
|
| - } else {
|
| - mBrowserContext.getGeolocationPermissions().deny(origin);
|
| - }
|
| - }
|
| - if (isDestroyed()) return;
|
| - nativeInvokeGeolocationCallback(mNativeAwContents, allow, origin);
|
| - }
|
| - });
|
| - }
|
| + public void invokeGeolocationCallback(boolean value, String requestingFrame) {
|
| + if (isDestroyed()) return;
|
| + nativeInvokeGeolocationCallback(mNativeAwContents, value, requestingFrame);
|
| }
|
|
|
| @CalledByNative
|
| @@ -2447,7 +2435,7 @@ public class AwContents implements SmartClipProvider,
|
| return;
|
| }
|
| mContentsClient.onGeolocationPermissionsShowPrompt(
|
| - origin, new AwGeolocationCallback());
|
| + origin, new AwGeolocationCallback(origin, this));
|
| }
|
|
|
| @CalledByNative
|
|
|