diff --git a/packages/SystemUI/res/layout/preference_widget_switch_compat.xml b/packages/SystemUI/res/layout/preference_widget_switch_compat.xml new file mode 100644 index 0000000000000000000000000000000000000000..a749107ac6331656f7fc50941af2c2faaf3f41ab --- /dev/null +++ b/packages/SystemUI/res/layout/preference_widget_switch_compat.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2023 The Android Open Source Project + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> +<com.google.android.material.materialswitch.MaterialSwitch + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/switchWidget" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:background="@null" + android:clickable="false" + android:focusable="false" + android:theme="@style/Theme.Material3.DynamicColors.DayNight" /> diff --git a/packages/SystemUI/src/com/android/systemui/tuner/DemoModeFragment.java b/packages/SystemUI/src/com/android/systemui/tuner/DemoModeFragment.java index 97dcfeca0a9b89e33db8639e33df9fb08b5f2e45..8a208fec96889795c2623d40d7e0d0c83430d00b 100644 --- a/packages/SystemUI/src/com/android/systemui/tuner/DemoModeFragment.java +++ b/packages/SystemUI/src/com/android/systemui/tuner/DemoModeFragment.java @@ -24,7 +24,7 @@ import androidx.preference.Preference; import androidx.preference.Preference.OnPreferenceChangeListener; import androidx.preference.PreferenceFragment; import androidx.preference.PreferenceScreen; -import androidx.preference.SwitchPreference; +import androidx.preference.SwitchPreferenceCompat; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; @@ -50,8 +50,8 @@ public class DemoModeFragment extends PreferenceFragment implements OnPreference "managed_profile", }; - private SwitchPreference mEnabledSwitch; - private SwitchPreference mOnSwitch; + private SwitchPreferenceCompat mEnabledSwitch; + private SwitchPreferenceCompat mOnSwitch; private DemoModeController mDemoModeController; private GlobalSettings mGlobalSettings; @@ -69,10 +69,10 @@ public class DemoModeFragment extends PreferenceFragment implements OnPreference @Override public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { Context context = getContext(); - mEnabledSwitch = new SwitchPreference(context); + mEnabledSwitch = new SwitchPreferenceCompat(context); mEnabledSwitch.setTitle(R.string.enable_demo_mode); mEnabledSwitch.setOnPreferenceChangeListener(this); - mOnSwitch = new SwitchPreference(context); + mOnSwitch = new SwitchPreferenceCompat(context); mOnSwitch.setTitle(R.string.show_demo_mode); mOnSwitch.setEnabled(false); mOnSwitch.setOnPreferenceChangeListener(this); diff --git a/packages/SystemUI/src/com/android/systemui/tuner/LockscreenFragment.java b/packages/SystemUI/src/com/android/systemui/tuner/LockscreenFragment.java index 799e5af7e01d8d3878c69099116181d9e5fcafa6..94fdf4825766b8bdd538366a458cfdca5df44eef 100644 --- a/packages/SystemUI/src/com/android/systemui/tuner/LockscreenFragment.java +++ b/packages/SystemUI/src/com/android/systemui/tuner/LockscreenFragment.java @@ -35,7 +35,7 @@ import android.widget.TextView; import androidx.preference.Preference; import androidx.preference.PreferenceFragment; -import androidx.preference.SwitchPreference; +import androidx.preference.SwitchPreferenceCompat; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView.ViewHolder; @@ -91,7 +91,7 @@ public class LockscreenFragment extends PreferenceFragment { private void setupGroup(String buttonSetting, String unlockKey) { Preference shortcut = findPreference(buttonSetting); - SwitchPreference unlock = (SwitchPreference) findPreference(unlockKey); + SwitchPreferenceCompat unlock = (SwitchPreferenceCompat) findPreference(unlockKey); addTunable((k, v) -> { boolean visible = !TextUtils.isEmpty(v); unlock.setVisible(visible); diff --git a/packages/SystemUI/src/com/android/systemui/tuner/PluginFragment.java b/packages/SystemUI/src/com/android/systemui/tuner/PluginFragment.java index 7635a84539ca8b27911391621b11c6a751f210b4..ba48a79f2e492e3d5922cf0c49af0eab6f1d68c2 100644 --- a/packages/SystemUI/src/com/android/systemui/tuner/PluginFragment.java +++ b/packages/SystemUI/src/com/android/systemui/tuner/PluginFragment.java @@ -32,7 +32,7 @@ import android.view.View; import androidx.preference.PreferenceFragment; import androidx.preference.PreferenceScreen; import androidx.preference.PreferenceViewHolder; -import androidx.preference.SwitchPreference; +import androidx.preference.SwitchPreferenceCompat; import com.android.internal.util.ArrayUtils; import com.android.systemui.Dependency; @@ -110,7 +110,7 @@ public class PluginFragment extends PreferenceFragment { // Don't manage privileged plugins, they are part of the OS. return; } - SwitchPreference pref = new PluginPreference(prefContext, app, mPluginEnabler); + SwitchPreferenceCompat pref = new PluginPreference(prefContext, app, mPluginEnabler); pref.setSummary("Plugins: " + toString(plugins.get(app.packageName))); screen.addPreference(pref); }); @@ -148,7 +148,7 @@ public class PluginFragment extends PreferenceFragment { } }; - private static class PluginPreference extends SwitchPreference { + private static class PluginPreference extends SwitchPreferenceCompat { private final boolean mHasSettings; private final PackageInfo mInfo; private final PluginEnabler mPluginEnabler; diff --git a/packages/SystemUI/src/com/android/systemui/tuner/StatusBarSwitch.java b/packages/SystemUI/src/com/android/systemui/tuner/StatusBarSwitch.java index cc0050b64d605ec3883a13d704f1bfe2ab2bf576..12992d981c7141e788ad730ed515f3d873d2e9d1 100644 --- a/packages/SystemUI/src/com/android/systemui/tuner/StatusBarSwitch.java +++ b/packages/SystemUI/src/com/android/systemui/tuner/StatusBarSwitch.java @@ -22,7 +22,7 @@ import android.provider.Settings; import android.text.TextUtils; import android.util.AttributeSet; -import androidx.preference.SwitchPreference; +import androidx.preference.SwitchPreferenceCompat; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; @@ -32,7 +32,7 @@ import com.android.systemui.tuner.TunerService.Tunable; import java.util.Set; -public class StatusBarSwitch extends SwitchPreference implements Tunable { +public class StatusBarSwitch extends SwitchPreferenceCompat implements Tunable { private Set<String> mHideList; diff --git a/packages/SystemUI/src/com/android/systemui/tuner/TunerSwitch.java b/packages/SystemUI/src/com/android/systemui/tuner/TunerSwitch.java index 1c441b39cc641fc9b23222db87c8dec60536ed7a..97ac97a23a27306947e26823f7bd9131cab26a43 100644 --- a/packages/SystemUI/src/com/android/systemui/tuner/TunerSwitch.java +++ b/packages/SystemUI/src/com/android/systemui/tuner/TunerSwitch.java @@ -5,14 +5,14 @@ import android.content.res.TypedArray; import android.provider.Settings; import android.util.AttributeSet; -import androidx.preference.SwitchPreference; +import androidx.preference.SwitchPreferenceCompat; import com.android.internal.logging.MetricsLogger; import com.android.systemui.Dependency; import com.android.systemui.res.R; import com.android.systemui.tuner.TunerService.Tunable; -public class TunerSwitch extends SwitchPreference implements Tunable { +public class TunerSwitch extends SwitchPreferenceCompat implements Tunable { private final boolean mDefault; private final int mAction;