From 1586fd2d3c3e936d17d253d42b6a13fed5b8ba87 Mon Sep 17 00:00:00 2001 From: Neil Fuller Date: Thu, 8 Oct 2020 18:53:15 +0100 Subject: [PATCH] Tweak capabilities when auto tz detection is off Tweak user capabilities when automatic tz detection is off. The capability to alter "geo detection enabled" can be "not applicable" as it doesn't matter what the "geo detection enabled" setting is if automatic detection is off. Bug: 152746236 Test: atest services/tests/servicestests/src/com/android/server/timezonedetector/ConfigurationInternalTest.java Change-Id: Ie8594cd1b96841421571bf6bdf43fa56b5e31d73 --- .../android/server/timezonedetector/ConfigurationInternal.java | 2 +- .../server/timezonedetector/ConfigurationInternalTest.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/timezonedetector/ConfigurationInternal.java b/services/core/java/com/android/server/timezonedetector/ConfigurationInternal.java index 9e76bc19360f4..08eaa29253085 100644 --- a/services/core/java/com/android/server/timezonedetector/ConfigurationInternal.java +++ b/services/core/java/com/android/server/timezonedetector/ConfigurationInternal.java @@ -138,7 +138,7 @@ public final class ConfigurationInternal { configureGeolocationDetectionEnabledCapability = CAPABILITY_NOT_SUPPORTED; } else if (!allowConfigDateTime) { configureGeolocationDetectionEnabledCapability = CAPABILITY_NOT_ALLOWED; - } else if (!isLocationEnabled()) { + } else if (!mAutoDetectionEnabled || !isLocationEnabled()) { configureGeolocationDetectionEnabledCapability = CAPABILITY_NOT_APPLICABLE; } else { configureGeolocationDetectionEnabledCapability = CAPABILITY_POSSESSED; diff --git a/services/tests/servicestests/src/com/android/server/timezonedetector/ConfigurationInternalTest.java b/services/tests/servicestests/src/com/android/server/timezonedetector/ConfigurationInternalTest.java index 54b5bee9a6abc..3fc294d6ea897 100644 --- a/services/tests/servicestests/src/com/android/server/timezonedetector/ConfigurationInternalTest.java +++ b/services/tests/servicestests/src/com/android/server/timezonedetector/ConfigurationInternalTest.java @@ -91,7 +91,7 @@ public class ConfigurationInternalTest { TimeZoneCapabilities capabilities = capabilitiesAndConfig.getCapabilities(); assertEquals(CAPABILITY_POSSESSED, capabilities.getConfigureAutoDetectionEnabledCapability()); - assertEquals(CAPABILITY_POSSESSED, + assertEquals(CAPABILITY_NOT_APPLICABLE, capabilities.getConfigureGeoDetectionEnabledCapability()); assertEquals(CAPABILITY_POSSESSED, capabilities.getSuggestManualTimeZoneCapability());