Add "Use location" state to TimeZoneCapabilities

Add the user's "Use location" state to TimeZoneCapabilities. This
information is available anyway and saves the SettingsUI needing to call
LocationManager directly (with the small possibility it would get an
inconsistent answer).

Bug: 262407244
Test: atest tests/robotests/src/com/android/settings/datetime/
Change-Id: I49d4e41b27f9817b3189a7643c24237603e36396
This commit is contained in:
Neil Fuller
2023-01-17 17:36:59 +00:00
parent 7bde01aba9
commit 85327e0ed8
6 changed files with 150 additions and 92 deletions

View File

@@ -112,8 +112,10 @@ public class TimeZonePreferenceControllerTest {
PROVIDER_STATUS_NOT_PRESENT, null));
int suggestManualCapability = suggestManualAllowed ? Capabilities.CAPABILITY_POSSESSED
: Capabilities.CAPABILITY_NOT_SUPPORTED;
boolean useLocationEnabled = true;
TimeZoneCapabilities capabilities = new TimeZoneCapabilities.Builder(UserHandle.SYSTEM)
.setConfigureAutoDetectionEnabledCapability(Capabilities.CAPABILITY_POSSESSED)
.setUseLocationEnabled(useLocationEnabled)
.setConfigureGeoDetectionEnabledCapability(Capabilities.CAPABILITY_NOT_SUPPORTED)
.setSetManualTimeZoneCapability(suggestManualCapability)
.build();