From baa7a8c2c8c18cd24b78e10781ff01c39e5502b8 Mon Sep 17 00:00:00 2001 From: Olivier Nshimiye Date: Thu, 7 Mar 2024 16:53:57 +0000 Subject: [PATCH 01/14] Add enable_private_space_features flag check for Private Space implementation Bug: 326060689 Test: Manual Change-Id: I82105714e74789394a3d46b852aaa3e7b93e5877 --- .../credentials/DefaultCombinedPickerPrivate.java | 4 +++- .../android/settings/datausage/lib/AppDataUsageRepository.kt | 1 + .../LocationForPrivateProfilePreferenceController.java | 1 + .../privatespace/PrivateSpaceGaiaEducationFragment.java | 3 ++- 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/applications/credentials/DefaultCombinedPickerPrivate.java b/src/com/android/settings/applications/credentials/DefaultCombinedPickerPrivate.java index 52adc4de2a3..f1aaa531a50 100644 --- a/src/com/android/settings/applications/credentials/DefaultCombinedPickerPrivate.java +++ b/src/com/android/settings/applications/credentials/DefaultCombinedPickerPrivate.java @@ -32,6 +32,8 @@ public class DefaultCombinedPickerPrivate extends DefaultCombinedPicker { /** Returns whether the user is handled by this fragment. */ public static boolean isUserHandledByFragment(UserManager userManager) { - return android.os.Flags.allowPrivateProfile() && userManager.isPrivateProfile(); + return android.os.Flags.allowPrivateProfile() + && android.multiuser.Flags.enablePrivateSpaceFeatures() + && userManager.isPrivateProfile(); } } diff --git a/src/com/android/settings/datausage/lib/AppDataUsageRepository.kt b/src/com/android/settings/datausage/lib/AppDataUsageRepository.kt index 5abde318c52..0055463fb27 100644 --- a/src/com/android/settings/datausage/lib/AppDataUsageRepository.kt +++ b/src/com/android/settings/datausage/lib/AppDataUsageRepository.kt @@ -164,6 +164,7 @@ class AppDataUsageRepository( private fun shouldSkipProfile(userManager : UserManager, userHandle: UserHandle): Boolean { if (android.os.Flags.allowPrivateProfile() + && android.multiuser.Flags.enablePrivateSpaceFeatures() && android.multiuser.Flags.handleInterleavedSettingsForPrivateSpace()) { return (userManager.isQuietModeEnabled(userHandle) && userManager.getUserProperties(userHandle).showInQuietMode diff --git a/src/com/android/settings/location/LocationForPrivateProfilePreferenceController.java b/src/com/android/settings/location/LocationForPrivateProfilePreferenceController.java index a7be7a50ade..d68cf7275a2 100644 --- a/src/com/android/settings/location/LocationForPrivateProfilePreferenceController.java +++ b/src/com/android/settings/location/LocationForPrivateProfilePreferenceController.java @@ -68,6 +68,7 @@ public class LocationForPrivateProfilePreferenceController @Override public int getAvailabilityStatus() { if (!android.os.Flags.allowPrivateProfile() + || !android.multiuser.Flags.enablePrivateSpaceFeatures() || !android.multiuser.Flags.handleInterleavedSettingsForPrivateSpace() || !isPrivateProfileAvailable()) { return CONDITIONALLY_UNAVAILABLE; diff --git a/src/com/android/settings/privatespace/PrivateSpaceGaiaEducationFragment.java b/src/com/android/settings/privatespace/PrivateSpaceGaiaEducationFragment.java index 0fa04834537..6c26186f982 100644 --- a/src/com/android/settings/privatespace/PrivateSpaceGaiaEducationFragment.java +++ b/src/com/android/settings/privatespace/PrivateSpaceGaiaEducationFragment.java @@ -46,7 +46,8 @@ public class PrivateSpaceGaiaEducationFragment extends InstrumentedFragment { @Override public void onCreate(@Nullable Bundle savedInstanceState) { - if (android.os.Flags.allowPrivateProfile()) { + if (android.os.Flags.allowPrivateProfile() + && android.multiuser.Flags.enablePrivateSpaceFeatures()) { super.onCreate(savedInstanceState); } } From 1c1366e9681d633188b4bea62ec296a71b39af4c Mon Sep 17 00:00:00 2001 From: Pawan Wagh Date: Fri, 23 Feb 2024 21:10:26 +0000 Subject: [PATCH 02/14] Show dialog to OEM unlock the device for 16k dev option Device should be OEM unlocked before using dev option. Show dialog to user to perform OEM unlock. This also checks if user has permission to do OEM unlock and it is allowed by carrier. Test: m Settings && adb install -r $ANDROID_PRODUCT_OUT/system_ext/priv-app/Settings/Settings.apk Bug: 295035851 Bug: 320705365 Change-Id: I6470bf7d02424a26621ed67f19f2cd14fa9eea50 --- res/values/strings.xml | 3 + .../development/Enable16KOemUnlockDialog.java | 77 +++++++++++++++++++ .../Enable16kPagesPreferenceController.java | 35 +++++++++ 3 files changed, 115 insertions(+) create mode 100644 src/com/android/settings/development/Enable16KOemUnlockDialog.java diff --git a/res/values/strings.xml b/res/values/strings.xml index f0794dd197f..1212aca855f 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -11345,6 +11345,9 @@ 16K developer option is supported with ext4 filesystem. Device will be wiped and filesystem will be changed to ext4 after confirmation. Failed to reformat and wipe the data partiton to ext4. + + OEM unlock required + Device needs to be OEM unlocked before using 16K developer option. OEM unlock will also require formatting userdata. Please OEM unlock the device and try again. diff --git a/src/com/android/settings/development/Enable16KOemUnlockDialog.java b/src/com/android/settings/development/Enable16KOemUnlockDialog.java new file mode 100644 index 00000000000..65690df7ab4 --- /dev/null +++ b/src/com/android/settings/development/Enable16KOemUnlockDialog.java @@ -0,0 +1,77 @@ +/* + * Copyright (C) 2024 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. + */ + +package com.android.settings.development; + +import android.app.Dialog; +import android.app.settings.SettingsEnums; +import android.content.DialogInterface; +import android.os.Bundle; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AlertDialog; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentManager; + +import com.android.settings.R; +import com.android.settings.core.instrumentation.InstrumentedDialogFragment; + +/** Dialog when user interacts 16K pages developer option and device is not OEM unlocked */ +public class Enable16KOemUnlockDialog extends InstrumentedDialogFragment + implements DialogInterface.OnClickListener, DialogInterface.OnDismissListener { + + public static final String TAG = "Enable16KOemUnlockDialog"; + + /** This method is used to prompt user to do OEM unlock before using 16k */ + public static void show(@NonNull Fragment hostFragment) { + final FragmentManager manager = hostFragment.getActivity().getSupportFragmentManager(); + Fragment existingFragment = manager.findFragmentByTag(TAG); + if (existingFragment == null) { + existingFragment = new Enable16KOemUnlockDialog(); + } + + if (existingFragment instanceof Enable16KOemUnlockDialog) { + existingFragment.setTargetFragment(hostFragment, 0 /* requestCode */); + ((Enable16KOemUnlockDialog) existingFragment).show(manager, TAG); + } + } + + @Override + public int getMetricsCategory() { + return SettingsEnums.DIALOG_ENABLE_16K_PAGES; + } + + @NonNull + @Override + public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { + return new AlertDialog.Builder(getActivity()) + .setTitle(R.string.confirm_oem_unlock_for_16k_title) + .setMessage(R.string.confirm_oem_unlock_for_16k_text) + .setPositiveButton(android.R.string.ok, this /* onClickListener */) + .create(); + } + + @Override + public void onClick(@NonNull DialogInterface dialog, int buttonId) { + // Do nothing. OEM unlock has to be done by user + } + + @Override + public void onDismiss(@NonNull DialogInterface dialog) { + super.onDismiss(dialog); + } +} diff --git a/src/com/android/settings/development/Enable16kPagesPreferenceController.java b/src/com/android/settings/development/Enable16kPagesPreferenceController.java index 7049e79e5d4..bed5c0439cd 100644 --- a/src/com/android/settings/development/Enable16kPagesPreferenceController.java +++ b/src/com/android/settings/development/Enable16kPagesPreferenceController.java @@ -28,7 +28,10 @@ import android.os.SystemUpdateManager; import android.os.UpdateEngine; import android.os.UpdateEngineStable; import android.os.UpdateEngineStableCallback; +import android.os.UserHandle; +import android.os.UserManager; import android.provider.Settings; +import android.service.oemlock.OemLockManager; import android.util.Log; import android.widget.LinearLayout; import android.widget.ProgressBar; @@ -116,6 +119,12 @@ public class Enable16kPagesPreferenceController extends DeveloperOptionsPreferen @Override public boolean onPreferenceChange(Preference preference, Object newValue) { mEnable16k = (Boolean) newValue; + // Prompt user to do oem unlock first + if (!isDeviceOEMUnlocked()) { + Enable16KOemUnlockDialog.show(mFragment); + return false; + } + if (isDataf2fs()) { EnableExt4WarningDialog.show(mFragment, this); return false; @@ -418,4 +427,30 @@ public class Enable16kPagesPreferenceController extends DeveloperOptionsPreferen return false; } + + private boolean isDeviceOEMUnlocked() { + // OEM unlock is checked for bootloader, carrier and user. Check all three to ensure + // that device is unlocked and it is also allowed by user as well as carrier + final OemLockManager oemLockManager = mContext.getSystemService(OemLockManager.class); + final UserManager userManager = mContext.getSystemService(UserManager.class); + if (oemLockManager == null || userManager == null) { + Log.e(TAG, "Required services not found on device to check for OEM unlock state."); + return false; + } + + // If either of device or carrier is not allowed to unlock, return false + if (!oemLockManager.isDeviceOemUnlocked() + || !oemLockManager.isOemUnlockAllowedByCarrier()) { + Log.e(TAG, "Device is not OEM unlocked or it is not allowed by carrier"); + return false; + } + + final UserHandle userHandle = UserHandle.of(UserHandle.myUserId()); + if (userManager.hasBaseUserRestriction(UserManager.DISALLOW_FACTORY_RESET, userHandle)) { + Log.e(TAG, "Factory reset is not allowed for user."); + return false; + } + + return true; + } } From a9338903b2f903923ffaa5c817ee01bdfd26d479 Mon Sep 17 00:00:00 2001 From: Haijie Hong Date: Wed, 13 Dec 2023 08:03:13 +0000 Subject: [PATCH 03/14] Remove volume plus flag in Settings Bug: 322279959 Change-Id: I87797ea5decec9419d40277d8937030a7b47c307 --- aconfig/settings_panel_flag_declarations.aconfig | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 aconfig/settings_panel_flag_declarations.aconfig diff --git a/aconfig/settings_panel_flag_declarations.aconfig b/aconfig/settings_panel_flag_declarations.aconfig deleted file mode 100644 index efab83e5547..00000000000 --- a/aconfig/settings_panel_flag_declarations.aconfig +++ /dev/null @@ -1,9 +0,0 @@ -package: "com.android.settings.flags" -container: "system" - -flag { - name: "enable_volume_plus_quick_settings" - namespace: "pixel_cross_device_control" - description: "Gates whether to enable VolumePlus quick settings panel." - bug: "309052662" -} From 753a5565cb00f7eb7abb0c10d96ff9fc29043283 Mon Sep 17 00:00:00 2001 From: sunnyshao Date: Wed, 13 Mar 2024 14:45:00 +0800 Subject: [PATCH 04/14] Fix the flicker in the Lock screen page - Add the summary_placeholder in the shortcuts item. Fixes: 325989849 Test: manual test Change-Id: Icb7714c19ae73d15bccc9b6976a10cf343a16f53 --- res/xml/security_lockscreen_settings.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/res/xml/security_lockscreen_settings.xml b/res/xml/security_lockscreen_settings.xml index cb1ce4401d2..15d530357d9 100644 --- a/res/xml/security_lockscreen_settings.xml +++ b/res/xml/security_lockscreen_settings.xml @@ -69,9 +69,11 @@ android:summary="@string/lockscreen_trivial_controls_summary" settings:controller="com.android.settings.display.ControlsTrivialPrivacyPreferenceController"/> + Date: Wed, 13 Mar 2024 18:14:25 +0800 Subject: [PATCH 05/14] [Thread] use dedicated flag for Thread settings a larger THREAD_ENABLED_PLATFORM flag which guards all Thread-related platform changes is used for the Thread settings change. But we need more flexible control of the UX release timeline. So use a dedicated THREAD_SETTINGS_ENABLED flag here. Bug: 329384658 Change-Id: Ib5b3ae3c71ccc890fc46af982b021858774938f3 --- aconfig/settings_threadnetwork_flag_declarations.aconfig | 8 ++++++++ .../threadnetwork/ThreadNetworkPreferenceController.kt | 4 ++-- .../ThreadNetworkPreferenceControllerTest.kt | 6 +++--- 3 files changed, 13 insertions(+), 5 deletions(-) create mode 100644 aconfig/settings_threadnetwork_flag_declarations.aconfig diff --git a/aconfig/settings_threadnetwork_flag_declarations.aconfig b/aconfig/settings_threadnetwork_flag_declarations.aconfig new file mode 100644 index 00000000000..70945d34775 --- /dev/null +++ b/aconfig/settings_threadnetwork_flag_declarations.aconfig @@ -0,0 +1,8 @@ +package: "com.android.settings.flags" + +flag { + name: "thread_settings_enabled" + namespace: "thread_network" + description: "Controls whether the Thread Settings UX is displayed" + bug: "329384658" +} diff --git a/src/com/android/settings/connecteddevice/threadnetwork/ThreadNetworkPreferenceController.kt b/src/com/android/settings/connecteddevice/threadnetwork/ThreadNetworkPreferenceController.kt index f5c0a87fde2..1c0175036d5 100644 --- a/src/com/android/settings/connecteddevice/threadnetwork/ThreadNetworkPreferenceController.kt +++ b/src/com/android/settings/connecteddevice/threadnetwork/ThreadNetworkPreferenceController.kt @@ -34,9 +34,9 @@ import androidx.lifecycle.LifecycleEventObserver import androidx.lifecycle.LifecycleOwner import androidx.preference.Preference import androidx.preference.PreferenceScreen -import com.android.net.thread.platform.flags.Flags import com.android.settings.R import com.android.settings.core.TogglePreferenceController +import com.android.settings.flags.Flags import java.util.concurrent.Executor /** Controller for the "Thread" toggle in "Connected devices > Connection preferences". */ @@ -110,7 +110,7 @@ class ThreadNetworkPreferenceController @VisibleForTesting constructor( } override fun getAvailabilityStatus(): Int { - return if (!Flags.threadEnabledPlatform()) { + return if (!Flags.threadSettingsEnabled()) { CONDITIONALLY_UNAVAILABLE } else if (!isThreadSupportedOnDevice) { UNSUPPORTED_ON_DEVICE diff --git a/tests/unit/src/com/android/settings/conecteddevice/threadnetwork/ThreadNetworkPreferenceControllerTest.kt b/tests/unit/src/com/android/settings/conecteddevice/threadnetwork/ThreadNetworkPreferenceControllerTest.kt index 644095d1294..976096c7cc4 100644 --- a/tests/unit/src/com/android/settings/conecteddevice/threadnetwork/ThreadNetworkPreferenceControllerTest.kt +++ b/tests/unit/src/com/android/settings/conecteddevice/threadnetwork/ThreadNetworkPreferenceControllerTest.kt @@ -33,13 +33,13 @@ import androidx.preference.PreferenceManager import androidx.preference.SwitchPreference import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 -import com.android.net.thread.platform.flags.Flags import com.android.settings.R import com.android.settings.core.BasePreferenceController.AVAILABLE import com.android.settings.core.BasePreferenceController.CONDITIONALLY_UNAVAILABLE import com.android.settings.core.BasePreferenceController.DISABLED_DEPENDENT_SETTING import com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_DEVICE import com.android.settings.connecteddevice.threadnetwork.ThreadNetworkPreferenceController.BaseThreadNetworkController +import com.android.settings.flags.Flags import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Rule @@ -68,7 +68,7 @@ class ThreadNetworkPreferenceControllerTest { @Before fun setUp() { - mSetFlagsRule.enableFlags(Flags.FLAG_THREAD_ENABLED_PLATFORM) + mSetFlagsRule.enableFlags(Flags.FLAG_THREAD_SETTINGS_ENABLED) context = spy(ApplicationProvider.getApplicationContext()) executor = ContextCompat.getMainExecutor(context) fakeThreadNetworkController = FakeThreadNetworkController(executor) @@ -96,7 +96,7 @@ class ThreadNetworkPreferenceControllerTest { @Test fun availabilityStatus_flagDisabled_returnsConditionallyUnavailable() { - mSetFlagsRule.disableFlags(Flags.FLAG_THREAD_ENABLED_PLATFORM) + mSetFlagsRule.disableFlags(Flags.FLAG_THREAD_SETTINGS_ENABLED) assertThat(controller.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE) } From a95f2d37456cce6cb4d41bc3bfee6b0541d346a1 Mon Sep 17 00:00:00 2001 From: Isaac Chai Date: Tue, 12 Mar 2024 19:33:00 +0000 Subject: [PATCH 06/14] Fix test for MagnificationOneFinger preference test Test: Locally ran and passed Bug: 329189635, 329188827 Change-Id: I2c4948cb47aac28d403edfc94aa3b8dfe766f6f8 --- ...FingerPanningPreferenceControllerTest.java | 27 ++++++++----------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/tests/robotests/src/com/android/settings/accessibility/MagnificationOneFingerPanningPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accessibility/MagnificationOneFingerPanningPreferenceControllerTest.java index 326a7a04a20..4501d273bcd 100644 --- a/tests/robotests/src/com/android/settings/accessibility/MagnificationOneFingerPanningPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/accessibility/MagnificationOneFingerPanningPreferenceControllerTest.java @@ -16,7 +16,6 @@ package com.android.settings.accessibility; -import static com.android.server.accessibility.Flags.enableMagnificationOneFingerPanningGesture; import static com.android.settings.accessibility.AccessibilityUtil.State.OFF; import static com.android.settings.accessibility.AccessibilityUtil.State.ON; import static com.android.settings.core.BasePreferenceController.AVAILABLE; @@ -28,7 +27,10 @@ import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import android.content.Context; -import android.platform.test.flag.junit.SetFlagsRule; +import android.platform.test.annotations.RequiresFlagsDisabled; +import android.platform.test.annotations.RequiresFlagsEnabled; +import android.platform.test.flag.junit.CheckFlagsRule; +import android.platform.test.flag.junit.DeviceFlagsValueProvider; import android.provider.Settings; import androidx.preference.PreferenceManager; @@ -51,8 +53,9 @@ public class MagnificationOneFingerPanningPreferenceControllerTest { private static final String ONE_FINGER_PANNING_KEY = Settings.Secure.ACCESSIBILITY_SINGLE_FINGER_PANNING_ENABLED; - @Rule public final SetFlagsRule mSetFlagsRule = - new SetFlagsRule(SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT); + @Rule + public final CheckFlagsRule mCheckFlagsRule = + DeviceFlagsValueProvider.createCheckFlagsRule(); private final Context mContext = ApplicationProvider.getApplicationContext(); private final SwitchPreference mSwitchPreference = spy(new SwitchPreference(mContext)); @@ -88,16 +91,16 @@ public class MagnificationOneFingerPanningPreferenceControllerTest { } @Test - public void getAvailabilityStatus_defaultState_disabled() { + @RequiresFlagsDisabled(Flags.FLAG_ENABLE_MAGNIFICATION_ONE_FINGER_PANNING_GESTURE) + public void getAvailabilityStatus_flagDisabled_disabled() { int status = mController.getAvailabilityStatus(); assertThat(status).isEqualTo(DISABLED_FOR_USER); } @Test + @RequiresFlagsEnabled(Flags.FLAG_ENABLE_MAGNIFICATION_ONE_FINGER_PANNING_GESTURE) public void getAvailabilityStatus_featureFlagEnabled_enabled() { - enableFlag(); - int status = mController.getAvailabilityStatus(); assertThat(status).isEqualTo(AVAILABLE); @@ -158,9 +161,8 @@ public class MagnificationOneFingerPanningPreferenceControllerTest { } @Test + @RequiresFlagsEnabled(Flags.FLAG_ENABLE_MAGNIFICATION_ONE_FINGER_PANNING_GESTURE) public void performClick_switchDefaultState_shouldReturnTrue() { - enableFlag(); - mSwitchPreference.performClick(); verify(mSwitchPreference).setChecked(true); @@ -168,13 +170,6 @@ public class MagnificationOneFingerPanningPreferenceControllerTest { assertThat(mSwitchPreference.isChecked()).isTrue(); } - private void enableFlag() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_MAGNIFICATION_ONE_FINGER_PANNING_GESTURE); - assertThat(enableMagnificationOneFingerPanningGesture()).isTrue(); - // This ensures that preference change listeners are added correctly. - mController.displayPreference(mScreen); - } - private String enabledSummary() { return mContext.getString( R.string.accessibility_magnification_one_finger_panning_summary_on); From ea76c296d365b2385f96970123a1180865870260 Mon Sep 17 00:00:00 2001 From: Randy Pfohl Date: Wed, 28 Feb 2024 23:23:14 +0000 Subject: [PATCH 07/14] Setting content description when illustration is clickable Test: Built and tested with other cls in topic and verified talkback works properly. Flag: None Bug: 319747547 Change-Id: I37cbcc9bc4c830c73913cdad0734a874bd0eac7c --- res/values/strings.xml | 3 +++ .../settings/gestures/SystemNavigationGestureSettings.java | 1 + 2 files changed, 4 insertions(+) diff --git a/res/values/strings.xml b/res/values/strings.xml index d5fd6214b1e..939bba2043e 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -10479,6 +10479,9 @@ Go back, Home, and switch apps with buttons at the bottom of your screen. + + Start gesture navigation tutorial + system navigation, 2 button navigation, 3 button navigation, gesture navigation, swipe diff --git a/src/com/android/settings/gestures/SystemNavigationGestureSettings.java b/src/com/android/settings/gestures/SystemNavigationGestureSettings.java index c40212b7e01..c38be949760 100644 --- a/src/com/android/settings/gestures/SystemNavigationGestureSettings.java +++ b/src/com/android/settings/gestures/SystemNavigationGestureSettings.java @@ -247,6 +247,7 @@ public class SystemNavigationGestureSettings extends RadioButtonPickerFragment i switch (systemNavKey) { case KEY_SYSTEM_NAV_GESTURAL: if (isGestureTutorialAvailable()){ + videoPref.setContentDescription(R.string.nav_tutorial_button_description); videoPref.setOnPreferenceClickListener(preference -> { startActivity(mLaunchSandboxIntent); return true; From b6b1acc55d6ec04e328078a29ff7cb9129a1d6d3 Mon Sep 17 00:00:00 2001 From: Alex Li Date: Wed, 13 Mar 2024 05:58:26 +0000 Subject: [PATCH 08/14] [Seamless] Adjust background color for wifi dialog in SUW flow. This fix that makes the background color of the dialog will be consistent during the SUW flow. Dark mode - WifiDialog: https://hsv.googleplex.com/6050138159054848 - Set up Offline: https://hsv.googleplex.com/5449263784919040 Light mode - WifiDialog: https://hsv.googleplex.com/5350517514436608 - Set up Offline: https://hsv.googleplex.com/5245039291662336 Bug:298326674 Test: manual Change-Id: Ifb507a5f3ba8ae3360552117b086e864a1145468 --- res/values/themes_suw.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/res/values/themes_suw.xml b/res/values/themes_suw.xml index 71d9fcb6ec1..9efac286487 100644 --- a/res/values/themes_suw.xml +++ b/res/values/themes_suw.xml @@ -231,7 +231,7 @@