on develop help sign in
Merge pull request #331 from reflex-frp/dn-add-geoloc-android

Enable geolocation permissions on android

commitd2c55a70ea43c545ca64b935280ec3d0ec1ca2fc authorJohn Ericson <John.Ericson@Obsidian.Systems> dateThu 12 Dec 2019, 17:25 (7 years ago) parent4c0e8c772f387d
2 files changed+12
reflex-dom/ChangeLog.md+6 reflex-dom/java/org/reflexfrp/reflexdom/MainWidget.java+6
reflex-dom/ChangeLog.md+6
@@ -1,5 +1,11 @@
11# Revision history for reflex-dom
22
3+## Unreleased
4+* On Android, enable propting the user for geolocation
5+ permissions on demand by default. See
6+ https://developer.android.com/reference/android/webkit/WebChromeClient.html#onGeolocationPermissionsShowPrompt(java.lang.String,%20android.webkit.GeolocationPermissions.Callback)
7+ for details.
8+
39## 0.5.1
410
511* The default jsaddle backend on macOS when built from nix
reflex-dom/java/org/reflexfrp/reflexdom/MainWidget.java+6
@@ -8,6 +8,7 @@ import android.util.Log;
88import android.view.ViewGroup.LayoutParams;
99import android.view.Window;
1010import android.webkit.CookieManager;
11+import android.webkit.GeolocationPermissions;
1112import android.webkit.JavascriptInterface;
1213import android.webkit.MimeTypeMap;
1314import android.webkit.PermissionRequest;
@@ -122,6 +123,11 @@ public class MainWidget {
122123 public Bitmap getDefaultVideoPoster() {
123124 return Bitmap.createBitmap(10, 10, Bitmap.Config.ARGB_8888);
124125 }
126+
127+ @Override
128+ public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
129+ callback.invoke(origin, true, false);
130+ }
125131 });
126132
127133 wv.addJavascriptInterface(new JSaddleCallbacks(jsaddleCallbacks), "jsaddle");