summaryrefslogtreecommitdiff
path: root/app/src
diff options
context:
space:
mode:
authorTheScarastic <warabhishek@e.email>2022-05-13 14:33:20 +0530
committerTheScarastic <warabhishek@e.email>2022-05-13 14:34:00 +0530
commit9e1c091ed7611b9536eeb92c47da38caa9b20b00 (patch)
tree31a83e4108c301f1c6e7597081a4425c8dd7ce64 /app/src
parent7be179d6c4c8889eef755ff11d1b0af69ee20b8a (diff)
privacycentralapp: properly set specific location
Diffstat (limited to 'app/src')
-rw-r--r--app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt14
1 files changed, 7 insertions, 7 deletions
diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt
index fb773b2..bf4dfa4 100644
--- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt
+++ b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt
@@ -68,8 +68,8 @@ class FakeLocationStateUseCase(
)
}
- private fun applySettings(isQuickPrivacyEnabled: Boolean, fakeLocation: Pair<Float, Float>?) {
- _configuredLocationMode.value = computeLocationMode(fakeLocation)
+ private fun applySettings(isQuickPrivacyEnabled: Boolean, fakeLocation: Pair<Float, Float>?, isSpecificLocation: Boolean = false) {
+ _configuredLocationMode.value = computeLocationMode(fakeLocation, isSpecificLocation)
if (isQuickPrivacyEnabled && fakeLocation != null) {
if (permissionsModule.getAppOpMode(appDesc, AppOpsManager.OPSTR_MOCK_LOCATION) != AppOpModes.ALLOWED) {
@@ -89,7 +89,7 @@ class FakeLocationStateUseCase(
localStateRepository.setShowQuickPrivacyDisabledMessage(true)
}
- setFakeLocation(latitude to longitude)
+ setFakeLocation(latitude to longitude, true)
}
fun setRandomLocation() {
@@ -103,9 +103,9 @@ class FakeLocationStateUseCase(
setFakeLocation(location)
}
- private fun setFakeLocation(location: Pair<Float, Float>) {
+ private fun setFakeLocation(location: Pair<Float, Float>, isSpecificLocation: Boolean = false) {
localStateRepository.fakeLocation = location
- applySettings(localStateRepository.isQuickPrivacyEnabled, location)
+ applySettings(localStateRepository.isQuickPrivacyEnabled, location ,isSpecificLocation)
}
fun stopFakeLocation() {
@@ -117,11 +117,11 @@ class FakeLocationStateUseCase(
applySettings(localStateRepository.isQuickPrivacyEnabled, null)
}
- private fun computeLocationMode(fakeLocation: Pair<Float, Float>?): Triple<LocationMode, Float?, Float?> {
+ private fun computeLocationMode(fakeLocation: Pair<Float, Float>?, isSpecificLocation: Boolean = false): Triple<LocationMode, Float?, Float?> {
return Triple(
when {
fakeLocation == null -> LocationMode.REAL_LOCATION
- fakeLocation in citiesRepository.citiesLocationsList -> LocationMode.RANDOM_LOCATION
+ fakeLocation in citiesRepository.citiesLocationsList && !isSpecificLocation -> LocationMode.RANDOM_LOCATION
else -> LocationMode.SPECIFIC_LOCATION
},
fakeLocation?.first, fakeLocation?.second