diff options
| author | TheScarastic <warabhishek@e.email> | 2022-04-20 20:22:44 +0530 |
|---|---|---|
| committer | TheScarastic <warabhishek@e.email> | 2022-04-21 12:09:37 +0530 |
| commit | 449a87dd92fae4410425515d8191d3be3e3b3938 (patch) | |
| tree | 636a42d876f6115836ea05bb45e2708f73528147 /app/src/main/java/foundation/e/privacycentralapp/features | |
| parent | 5658347ab0099c4f512e19a3807d38758396114a (diff) | |
| download | advanced-privacy-449a87dd92fae4410425515d8191d3be3e3b3938.tar.gz | |
privacycentralapp: Restore location when view is created
* Fix cordinates for chicago and madrid
* Also allow negative cordinates since its possible ;)
Diffstat (limited to 'app/src/main/java/foundation/e/privacycentralapp/features')
| -rw-r--r-- | app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationFragment.kt | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationFragment.kt b/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationFragment.kt index 6821a33..bc35521 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationFragment.kt +++ b/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationFragment.kt @@ -63,7 +63,7 @@ class FakeLocationFragment : NavToolbarFragment(R.layout.fragment_fake_location), MVIView<FakeLocationFeature.State, Action> { - private var isCameraMoved: Boolean = false + private var isFirstLaunch: Boolean = true private val dependencyContainer: DependencyContainer by lazy { (this.requireActivity().application as PrivacyCentralApplication).dependencyContainer @@ -96,8 +96,20 @@ class FakeLocationFragment : is FakeLocationFeature.SingleEvent.ErrorEvent -> { displayToast(event.error) } - is FakeLocationFeature.SingleEvent.LocationUpdatedEvent -> + is FakeLocationFeature.SingleEvent.LocationUpdatedEvent -> { + if (isFirstLaunch && mapboxMap != null) { + mapboxMap?.moveCamera( + CameraUpdateFactory.newLatLng( + LatLng( + event.location?.latitude ?: 0.0, + event.location?.longitude ?: 0.0 + ) + ) + ) + isFirstLaunch = false + } updateLocation(event.location) + } } } } @@ -121,7 +133,7 @@ class FakeLocationFragment : binding.mapView.setup(savedInstanceState) { mapboxMap -> this.mapboxMap = mapboxMap - mapboxMap.getUiSettings().isRotateGesturesEnabled = false + mapboxMap.uiSettings.isRotateGesturesEnabled = false mapboxMap.setStyle(Style.MAPBOX_STREETS) { style -> enableLocationPlugin(style) @@ -149,7 +161,7 @@ class FakeLocationFragment : isLat: Boolean ) = { editable: Editable? -> inputJob?.cancel() - if (editable != null && editable.length > 0 && editText.isEnabled) { + if (editable != null && editable.isNotEmpty() && editText.isEnabled) { inputJob = lifecycleScope.launch { delay(DEBOUNCE_PERIOD) ensureActive() @@ -238,7 +250,6 @@ class FakeLocationFragment : binding.mapView.isEnabled = (state.mode == LocationMode.SPECIFIC_LOCATION) if (state.mode != LocationMode.SPECIFIC_LOCATION) { - isCameraMoved = false binding.centeredMarker.isVisible = false } else { binding.mapLoader.isVisible = false @@ -247,7 +258,10 @@ class FakeLocationFragment : mapboxMap?.moveCamera( CameraUpdateFactory.newLatLng( - LatLng(state.specificLatitude?.toDouble() ?: 0.0, state.specificLongitude?.toDouble() ?: 0.0) + LatLng( + state.specificLatitude?.toDouble() ?: 0.0, + state.specificLongitude?.toDouble() ?: 0.0 + ) ) ) } |
