diff options
Diffstat (limited to 'mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java')
-rw-r--r-- | mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java b/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java index f8f7f858e3..85b3abf9a9 100644 --- a/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java +++ b/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java @@ -685,7 +685,11 @@ public class GeckoSession { final GeckoBundle[] perms = message.getBundleArray("permissions"); final List<PermissionDelegate.ContentPermission> permList = PermissionDelegate.ContentPermission.fromBundleArray(perms); - delegate.onLocationChange(GeckoSession.this, message.getString("uri"), permList); + delegate.onLocationChange( + GeckoSession.this, + message.getString("uri"), + permList, + message.getBoolean("hasUserGesture")); } delegate.onCanGoBack(GeckoSession.this, message.getBoolean("canGoBack")); delegate.onCanGoForward(GeckoSession.this, message.getBoolean("canGoForward")); @@ -1928,7 +1932,7 @@ public class GeckoSession { // https://searchfox.org/mozilla-central/source/docshell/base/nsIWebNavigation.idl // // We do not use the same values directly in order to insulate ourselves from - // changes in Gecko. Instead, the flags are converted in GeckoViewNavigation.jsm. + // changes in Gecko. Instead, the flags are converted in GeckoViewNavigation.sys.mjs. /** Default load flag, no special considerations. */ public static final int LOAD_FLAGS_NONE = 0; @@ -4935,17 +4939,39 @@ public class GeckoSession { /** * A view has started loading content from the network. * + * @deprecated use {@link #onLocationChange(GeckoSession, String, + * List<PermissionDelegate.ContentPermission>, Boolean) onLocationChange} instead * @param session The GeckoSession that initiated the callback. * @param url The resource being loaded. * @param perms The permissions currently associated with this url. */ @UiThread + @Deprecated + @DeprecationSchedule(id = "geckoview-onlocationchange", version = 127) default void onLocationChange( @NonNull GeckoSession session, @Nullable String url, final @NonNull List<PermissionDelegate.ContentPermission> perms) {} /** + * A view has started loading content from the network. + * + * @param session The GeckoSession that initiated the callback. + * @param url The resource being loaded. + * @param perms The permissions currently associated with this url. + * @param hasUserGesture Whether or not there was an active user gesture when the location + * change was requested. + */ + @UiThread + default void onLocationChange( + @NonNull GeckoSession session, + @Nullable String url, + final @NonNull List<PermissionDelegate.ContentPermission> perms, + final @NonNull Boolean hasUserGesture) { + session.getNavigationDelegate().onLocationChange(session, url, perms); + } + + /** * The view's ability to go back has changed. * * @param session The GeckoSession that initiated the callback. |