summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorallenlin <allenlin@realtek.com>2024-01-09 16:56:53 +0800
committerallenlin <allenlin@realtek.com>2024-03-11 15:47:40 +0800
commitfd0b4d3c5fa683767b842664a8164ae765ce8d42 (patch)
treebd16d68e34b7960b337747b38b4b592c71a00a95
parentb8ddabad7b473a9e53663a302b5d731eaa99f9a8 (diff)
downloadTvSettings-fd0b4d3c5fa683767b842664a8164ae765ce8d42.tar.gz
Add system_tv_slice_uri
Bug: 299055949 Change-Id: I3e0f479d7207b5e69a68543bbeef33f8849a2341
-rw-r--r--Settings/res/values/strings.xml4
-rw-r--r--Settings/res/xml/device_vendor.xml7
-rw-r--r--Settings/src/com/android/tv/settings/device/DevicePrefFragment.java11
3 files changed, 22 insertions, 0 deletions
diff --git a/Settings/res/values/strings.xml b/Settings/res/values/strings.xml
index d847d2419..11a63ed25 100644
--- a/Settings/res/values/strings.xml
+++ b/Settings/res/values/strings.xml
@@ -2845,6 +2845,10 @@
<string name="power_boot_resume_slice_uri" translatable="false" />
<!-- Title of the Reset section, which lets user select from factory reset or other reset related operations. [CHAR LIMIT=60] -->
<string name="reset_options_title">Reset</string>
+ <!-- Slice uri for "Television" settings -->
+ <string name="system_tv_slice_uri" translatable="false"></string>
+ <!-- Title for "Television" settings [CHAR LIMIT=60] -->
+ <string name="system_tv_title">Television</string>
<string name="font_sans_serif" translatable="false">sans-serif</string>
<string name="font_sans_serif_light" translatable="false">sans-serif-light</string>
diff --git a/Settings/res/xml/device_vendor.xml b/Settings/res/xml/device_vendor.xml
index f1872d75b..53b26b34f 100644
--- a/Settings/res/xml/device_vendor.xml
+++ b/Settings/res/xml/device_vendor.xml
@@ -98,6 +98,13 @@
android:icon="@drawable/ic_system_sound"
android:persistent="true"
android:title="@string/device_sound_effects"/>
+ <com.android.tv.twopanelsettings.slices.SlicePreference
+ android:icon="@drawable/ic_device_prefs"
+ android:key="menu_system_tv"
+ android:title="@string/system_tv_title"
+ android:fragment="com.android.tv.twopanelsettings.slices.SliceFragment"
+ custom:isPreferenceVisible="false"
+ custom:uri="@string/system_tv_slice_uri"/>
<com.android.tv.settings.LongClickPreference
android:fragment="com.android.tv.settings.about.RebootConfirmFragment"
android:icon="@drawable/ic_restart_alt"
diff --git a/Settings/src/com/android/tv/settings/device/DevicePrefFragment.java b/Settings/src/com/android/tv/settings/device/DevicePrefFragment.java
index fde8385bb..e6f12488b 100644
--- a/Settings/src/com/android/tv/settings/device/DevicePrefFragment.java
+++ b/Settings/src/com/android/tv/settings/device/DevicePrefFragment.java
@@ -102,6 +102,7 @@ public class DevicePrefFragment extends SettingsPreferenceFragment implements
private static final String KEY_ENERGY_SAVER = "energysaver";
private static final String KEY_POWER_AND_ENERGY = "power_and_energy";
private static final String RES_TOP_LEVEL_ASSISTANT_SLICE_URI = "top_level_assistant_slice_uri";
+ private static final String KEY_SYSTEM_TV_SLICE = "menu_system_tv";
private Preference mSoundsPref;
private TwoStatePreference mSoundsSwitchPref;
@@ -199,6 +200,7 @@ public class DevicePrefFragment extends SettingsPreferenceFragment implements
updateKeyboardAutofillSettings();
updateAmbientSettings();
updatePowerAndEnergySettings();
+ updateSystemTvSettings();
hideIfIntentUnhandled(findPreference(KEY_HOME_SETTINGS));
hideIfIntentUnhandled(findPreference(KEY_CAST_SETTINGS));
hideIfIntentUnhandled(findPreference(KEY_USAGE));
@@ -425,6 +427,15 @@ public class DevicePrefFragment extends SettingsPreferenceFragment implements
energySaverPref.setVisible(!showPowerAndEnergy);
}
+ private void updateSystemTvSettings() {
+ final SlicePreference systemTvSlicePref = findPreference(KEY_SYSTEM_TV_SLICE);
+ if (systemTvSlicePref != null) {
+ if (SliceUtils.isSliceProviderValid(getContext(), systemTvSlicePref.getUri())) {
+ systemTvSlicePref.setVisible(true);
+ }
+ }
+ }
+
@Override
protected int getPageId() {
return TvSettingsEnums.SYSTEM;