Merge "Fix extra dim turns on failed in setting search bar" into tm-qpr-dev am: 299057e294

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19880529

Change-Id: I0e107181ccbf59fc80d1b429768f8281128092cf
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Menghan Li
2022-09-08 02:31:25 +00:00
committed by Automerger Merge Worker
2 changed files with 18 additions and 1 deletions

View File

@@ -102,6 +102,11 @@ public abstract class AccessibilityQuickSettingsPrimarySwitchPreferenceControlle
} }
private void showQuickSettingsTooltipIfNeeded() { private void showQuickSettingsTooltipIfNeeded() {
if (mPreference == null) {
// Returns if no preference found by slice highlight menu.
return;
}
final ComponentName tileComponentName = getTileComponentName(); final ComponentName tileComponentName = getTileComponentName();
if (tileComponentName == null) { if (tileComponentName == null) {
// Returns if no tile service assigned. // Returns if no tile service assigned.

View File

@@ -118,18 +118,29 @@ public class AccessibilityQuickSettingsPrimarySwitchPreferenceControllerTest {
mController = new TestAccessibilityQuickSettingsPrimarySwitchPreferenceController(mContext, mController = new TestAccessibilityQuickSettingsPrimarySwitchPreferenceController(mContext,
TEST_KEY); TEST_KEY);
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference); when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
mController.displayPreference(mScreen);
} }
@Test @Test
public void setChecked_showTooltipView() { public void setChecked_showTooltipView() {
mController.displayPreference(mScreen);
mController.setChecked(true); mController.setChecked(true);
assertThat(getLatestPopupWindow().isShowing()).isTrue(); assertThat(getLatestPopupWindow().isShowing()).isTrue();
} }
@Test
public void setChecked_notCallDisplayPreference_notShowTooltipView() {
// Simulates the slice highlight menu that does not call {@link #displayPreference} before
// {@link #setChecked} called.
mController.setChecked(true);
assertThat(getLatestPopupWindow()).isNull();
}
@Test @Test
public void setChecked_tooltipViewShown_notShowTooltipView() { public void setChecked_tooltipViewShown_notShowTooltipView() {
mController.displayPreference(mScreen);
mController.setChecked(true); mController.setChecked(true);
getLatestPopupWindow().dismiss(); getLatestPopupWindow().dismiss();
mController.setChecked(false); mController.setChecked(false);
@@ -142,6 +153,7 @@ public class AccessibilityQuickSettingsPrimarySwitchPreferenceControllerTest {
@Test @Test
@Config(shadows = ShadowFragment.class) @Config(shadows = ShadowFragment.class)
public void restoreValueFromSavedInstanceState_showTooltipView() { public void restoreValueFromSavedInstanceState_showTooltipView() {
mController.displayPreference(mScreen);
mController.setChecked(true); mController.setChecked(true);
final Bundle savedInstanceState = new Bundle(); final Bundle savedInstanceState = new Bundle();
savedInstanceState.putBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW, /* value= */ true); savedInstanceState.putBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW, /* value= */ true);