From ccdb122afb8d93217d1f592f85dd7ca84b40a96c Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Thu, 2 Jan 2020 15:14:19 +0100 Subject: rework map view and update leaflet to 1.6.0 --- .../de/pixart/messenger/ui/ShareLocationActivity.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/main/java/de/pixart/messenger/ui/ShareLocationActivity.java') diff --git a/src/main/java/de/pixart/messenger/ui/ShareLocationActivity.java b/src/main/java/de/pixart/messenger/ui/ShareLocationActivity.java index 92ed28ad2..36454d1cb 100644 --- a/src/main/java/de/pixart/messenger/ui/ShareLocationActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ShareLocationActivity.java @@ -104,12 +104,12 @@ public class ShareLocationActivity extends LocationActivity implements LocationL if (snackBarCoordinator != null) { this.snackBar = Snackbar.make(snackBarCoordinator, R.string.location_sharing_disabled, Snackbar.LENGTH_INDEFINITE); snackBar.setAction(R.string.enable, view -> { + showLocation(null, ""); if (isLocationEnabled()) { if (hasLocationPermission(LocationActivity.REQUEST_LOCATION_PERMISSION)) { requestLocationUpdates(); } } else { - showLocation(null, null); setShareButtonEnabled(false); if (hasLocationPermission(LocationActivity.REQUEST_LOCATION_PERMISSION)) { requestLocationUpdates(); @@ -142,7 +142,7 @@ public class ShareLocationActivity extends LocationActivity implements LocationL super.onResume(); if (isLocationEnabled()) { this.snackBar.dismiss(); - showLocation(null, null); + showLocation(null, ""); } else { this.snackBar.show(); } @@ -208,7 +208,7 @@ public class ShareLocationActivity extends LocationActivity implements LocationL } } - private void showLocation(@Nullable Location location, @Nullable String address) { + private void showLocation(@Nullable Location location, String address) { if (location == null && TextUtils.isEmpty(address)) { // no location and no address available final WebView webView = findViewById(R.id.webView); webView.getSettings().setJavaScriptEnabled(true); @@ -217,12 +217,12 @@ public class ShareLocationActivity extends LocationActivity implements LocationL String LocationName = "" + mLocationName + ""; final WebView webView = findViewById(R.id.webView); webView.getSettings().setJavaScriptEnabled(true); - webView.loadUrl("file:///android_asset/map.html?lat=" + mLastLocation.getLatitude() + "&lon=" + mLastLocation.getLongitude() + "&name=" + LocationName); + webView.loadUrl("javascript:toCoordinates(" + mLastLocation.getLatitude() + "," + mLastLocation.getLongitude() + "," + "'" + LocationName + "'" +");"); } else if (location != null && !TextUtils.isEmpty(address)) { // location and address available String LocationName = "" + mLocationName + "
" + address; final WebView webView = findViewById(R.id.webView); webView.getSettings().setJavaScriptEnabled(true); - webView.loadUrl("file:///android_asset/map.html?lat=" + mLastLocation.getLatitude() + "&lon=" + mLastLocation.getLongitude() + "&name=" + LocationName); + webView.loadUrl("javascript:toCoordinates(" + mLastLocation.getLatitude() + "," + mLastLocation.getLongitude() + "," + "'" + LocationName + "'" +");"); } } @@ -238,12 +238,14 @@ public class ShareLocationActivity extends LocationActivity implements LocationL @Override protected void onPreExecute() { super.onPreExecute(); - showLocation(mLastLocation, null); + showLocation(mLastLocation, ""); } @Override protected Void doInBackground(Void... params) { - address = getAddress(ShareLocationActivity.this, mLastLocation); + if (mLastLocation != null) { + address = getAddress(ShareLocationActivity.this, mLastLocation); + } return null; } -- cgit v1.2.3