diff options
| author | Abhishek Aggarwal <warabhishek@e.email> | 2022-04-21 07:58:48 +0000 |
|---|---|---|
| committer | Abhishek Aggarwal <warabhishek@e.email> | 2022-04-21 07:58:48 +0000 |
| commit | 5618e3f4307c8755372e743f2052375f5318a251 (patch) | |
| tree | 60e94af278c7d952177965a5380d69354227429f /app/src/main/java/foundation/e/privacycentralapp/features | |
| parent | 5658347ab0099c4f512e19a3807d38758396114a (diff) | |
| parent | 5ad1edb01ee3e3775f93727c52245ad2a9b423a2 (diff) | |
| download | advanced-privacy-5618e3f4307c8755372e743f2052375f5318a251.tar.gz | |
Merge branch '5295_location-restore' into 'main'
privacycentralapp: Restore location when view is created
See merge request e/privacy-central/privacycentralapp!42
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 + ) ) ) } |
