Move the Location time zone detection setting
Move the Location time zone detection setting to Date & Time as per
UI review / product request.
This initial commit just moves the existing MVP setting behavior to a
different screen. Still invisible by default.
Enable with:
$ adb shell setprop persist.sys.location_time_zone_detection_feature_enabled 1
.. plus a reboot.
Bug: 152746236
Test: Manual: build / boot / toggle switch in SettingsUI / inspect output of adb shell dumpsys time_zone_detector
Test: m -j30 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.datetime.LocationTimeZoneDetectionPreferenceControllerTest"
Test: m -j30 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.datetime.locationtimezone.TimeZoneDetectionTogglePreferenceControllerTest"
Test: m -j30 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.datetime.locationtimezone.TimeZoneDetectionSettingsTest"
Change-Id: I9ecfa853014a9f92086a9cb2d34e1517474ceb93
diff --git a/res/xml/date_time_prefs.xml b/res/xml/date_time_prefs.xml
index 20fac45..43a797a 100644
--- a/res/xml/date_time_prefs.xml
+++ b/res/xml/date_time_prefs.xml
@@ -52,6 +52,14 @@
settings:userRestriction="no_config_date_time"
settings:keywords="@string/keywords_time_zone"/>
+ <!-- This preference gets removed if location-based time zone detection is not supported -->
+ <com.android.settingslib.RestrictedPreference
+ android:key="location_time_zone_detection"
+ android:title="@string/location_time_zone_detection_screen_title"
+ settings:controller="com.android.settings.datetime.LocationTimeZoneDetectionPreferenceController"
+ android:fragment="com.android.settings.datetime.locationtimezone.TimeZoneDetectionSettings"
+ settings:userRestriction="no_config_date_time"/>
+
<PreferenceCategory
android:key="time_format_preference_category"
android:title="@string/time_format_category_title"
diff --git a/res/xml/location_settings.xml b/res/xml/location_settings.xml
index 80f4973..fb03f4c 100644
--- a/res/xml/location_settings.xml
+++ b/res/xml/location_settings.xml
@@ -65,13 +65,6 @@
settings:forWork="true"
settings:useAdminDisabledSummary="true"/>
- <!-- This preference gets removed if location-based time zone detection is not supported -->
- <Preference
- android:key="location_time_zone_detection"
- android:title="@string/location_time_zone_detection_screen_title"
- settings:controller="com.android.settings.location.LocationTimeZoneDetectionPreferenceController"
- android:fragment="com.android.settings.location.TimeZoneDetectionSettings" />
-
<PreferenceCategory
android:key="location_services"
android:layout="@layout/preference_category_no_label"
diff --git a/res/xml/location_settings_personal.xml b/res/xml/location_settings_personal.xml
index 3bd7b6e..de8ed81 100644
--- a/res/xml/location_settings_personal.xml
+++ b/res/xml/location_settings_personal.xml
@@ -51,13 +51,6 @@
android:fragment="com.android.settings.location.ScanningSettings"
settings:controller="com.android.settings.location.LocationScanningPreferenceController"/>
- <!-- This preference gets removed if location-based time zone detection is not supported -->
- <Preference
- android:key="location_time_zone_detection"
- android:title="@string/location_time_zone_detection_screen_title"
- settings:controller="com.android.settings.location.LocationTimeZoneDetectionPreferenceController"
- android:fragment="com.android.settings.location.TimeZoneDetectionSettings" />
-
<PreferenceCategory
android:key="location_services"
android:layout="@layout/preference_category_no_label"
diff --git a/res/xml/location_time_zone_detection.xml b/res/xml/location_time_zone_detection.xml
index 7f0c248..9f5e775 100644
--- a/res/xml/location_time_zone_detection.xml
+++ b/res/xml/location_time_zone_detection.xml
@@ -22,7 +22,7 @@
<SwitchPreference
android:title="@string/location_time_zone_detection_enabled_title"
android:summary="@string/location_time_zone_detection_enabled_description"
- settings:controller="com.android.settings.location.TimeZoneDetectionTogglePreferenceController"
+ settings:controller="com.android.settings.datetime.locationtimezone.TimeZoneDetectionTogglePreferenceController"
android:key="location_time_zone_detection_enabled" />
</PreferenceScreen>
diff --git a/src/com/android/settings/location/LocationTimeZoneDetectionPreferenceController.java b/src/com/android/settings/datetime/LocationTimeZoneDetectionPreferenceController.java
similarity index 99%
rename from src/com/android/settings/location/LocationTimeZoneDetectionPreferenceController.java
rename to src/com/android/settings/datetime/LocationTimeZoneDetectionPreferenceController.java
index a16c9bb..bbfbb19 100644
--- a/src/com/android/settings/location/LocationTimeZoneDetectionPreferenceController.java
+++ b/src/com/android/settings/datetime/LocationTimeZoneDetectionPreferenceController.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.location;
+package com.android.settings.datetime;
import static android.app.time.TimeZoneCapabilities.CAPABILITY_NOT_ALLOWED;
import static android.app.time.TimeZoneCapabilities.CAPABILITY_NOT_APPLICABLE;
diff --git a/src/com/android/settings/location/TimeZoneDetectionSettings.java b/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionSettings.java
similarity index 96%
rename from src/com/android/settings/location/TimeZoneDetectionSettings.java
rename to src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionSettings.java
index 66e2f9a..db6ffc4 100644
--- a/src/com/android/settings/location/TimeZoneDetectionSettings.java
+++ b/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionSettings.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.location;
+package com.android.settings.datetime.locationtimezone;
import android.app.settings.SettingsEnums;
diff --git a/src/com/android/settings/location/TimeZoneDetectionTogglePreferenceController.java b/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionTogglePreferenceController.java
similarity index 96%
rename from src/com/android/settings/location/TimeZoneDetectionTogglePreferenceController.java
rename to src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionTogglePreferenceController.java
index f23c9f9..c91be7f 100644
--- a/src/com/android/settings/location/TimeZoneDetectionTogglePreferenceController.java
+++ b/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionTogglePreferenceController.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings.location;
+package com.android.settings.datetime.locationtimezone;
import android.app.time.TimeManager;
import android.app.time.TimeZoneCapabilitiesAndConfig;
diff --git a/tests/robotests/src/com/android/settings/location/LocationTimeZoneDetectionPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/datetime/LocationTimeZoneDetectionPreferenceControllerTest.java
similarity index 98%
rename from tests/robotests/src/com/android/settings/location/LocationTimeZoneDetectionPreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/datetime/LocationTimeZoneDetectionPreferenceControllerTest.java
index 03e684b..0758869 100644
--- a/tests/robotests/src/com/android/settings/location/LocationTimeZoneDetectionPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/datetime/LocationTimeZoneDetectionPreferenceControllerTest.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings.location;
+package com.android.settings.datetime;
import static android.app.time.TimeZoneCapabilities.CAPABILITY_NOT_APPLICABLE;
import static android.app.time.TimeZoneCapabilities.CAPABILITY_NOT_SUPPORTED;
diff --git a/tests/robotests/src/com/android/settings/location/TimeZoneDetectionSettingsTest.java b/tests/robotests/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionSettingsTest.java
similarity index 96%
rename from tests/robotests/src/com/android/settings/location/TimeZoneDetectionSettingsTest.java
rename to tests/robotests/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionSettingsTest.java
index a8104bd..9f16492 100644
--- a/tests/robotests/src/com/android/settings/location/TimeZoneDetectionSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionSettingsTest.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings.location;
+package com.android.settings.datetime.locationtimezone;
import static com.google.common.truth.Truth.assertThat;
diff --git a/tests/robotests/src/com/android/settings/location/TimeZoneDetectionTogglePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionTogglePreferenceControllerTest.java
similarity index 98%
rename from tests/robotests/src/com/android/settings/location/TimeZoneDetectionTogglePreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionTogglePreferenceControllerTest.java
index a78499c..27a9859 100644
--- a/tests/robotests/src/com/android/settings/location/TimeZoneDetectionTogglePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/datetime/locationtimezone/TimeZoneDetectionTogglePreferenceControllerTest.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.location;
+package com.android.settings.datetime.locationtimezone;
import static android.app.time.TimeZoneCapabilities.CAPABILITY_NOT_APPLICABLE;
import static android.app.time.TimeZoneCapabilities.CAPABILITY_POSSESSED;