summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOleg Kibirev <olegk@google.com>2023-12-04 21:57:45 +0000
committerOleg Kibirev <olegk@google.com>2023-12-04 22:01:10 +0000
commit940278bee7116cffd17c05ba288808a12117cc37 (patch)
tree5c6101f519a481c4f281ae16a6da5a1fe54eefad
parent8932f1cc5c1c105fbadb715c2a6ccc8adc1a3c62 (diff)
downloadTvSettings-940278bee7116cffd17c05ba288808a12117cc37.tar.gz
Recreate slice preferences when changing between inline and embedded types
This fixes blank/incorrect text when switching custom button between inputs mode (preference provided by axel) and app mode (preference provided by LauncherX) Bug: 301530477 Change-Id: I4824eee2c57650aefbaa6ed7e7f8036e01ded1ff
-rw-r--r--TwoPanelSettingsLib/src/com/android/tv/twopanelsettings/slices/SliceFragment.java6
1 files changed, 3 insertions, 3 deletions
diff --git a/TwoPanelSettingsLib/src/com/android/tv/twopanelsettings/slices/SliceFragment.java b/TwoPanelSettingsLib/src/com/android/tv/twopanelsettings/slices/SliceFragment.java
index 6a8d2929b..ea8ff3538 100644
--- a/TwoPanelSettingsLib/src/com/android/tv/twopanelsettings/slices/SliceFragment.java
+++ b/TwoPanelSettingsLib/src/com/android/tv/twopanelsettings/slices/SliceFragment.java
@@ -18,7 +18,6 @@ package com.android.tv.twopanelsettings.slices;
import static android.app.slice.Slice.EXTRA_TOGGLE_STATE;
import static android.app.slice.Slice.HINT_PARTIAL;
-
import static com.android.tv.twopanelsettings.slices.InstrumentationUtils.logEntrySelected;
import static com.android.tv.twopanelsettings.slices.InstrumentationUtils.logToggleInteracted;
import static com.android.tv.twopanelsettings.slices.SlicesConstants.EXTRA_PREFERENCE_INFO_STATUS;
@@ -38,7 +37,6 @@ import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Parcelable;
-import android.provider.Settings;
import android.text.TextUtils;
import android.util.Log;
import android.util.TypedValue;
@@ -383,7 +381,9 @@ public class SliceFragment extends SettingsPreferenceFragment implements Observe
for (Preference newPref : newPrefs) {
if (newPref.getKey() != null && newPref.getKey().equals(oldPref.getKey())
&& (newPref instanceof HasSliceUri)
- == (oldPref instanceof HasSliceUri)) {
+ == (oldPref instanceof HasSliceUri)
+ && (newPref instanceof EmbeddedSlicePreference)
+ == (oldPref instanceof EmbeddedSlicePreference)) {
needToRemoveCurrentPref = false;
break;
}