Merge "Fix transparency seekbar is enabled while fade feature is disabled." into tm-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
fbaa9f3faa
@@ -51,9 +51,7 @@ public class FloatingMenuTransparencyPreferenceController extends SliderPreferen
|
||||
private final ContentResolver mContentResolver;
|
||||
@VisibleForTesting
|
||||
final ContentObserver mContentObserver;
|
||||
|
||||
@VisibleForTesting
|
||||
SeekBarPreference mPreference;
|
||||
private SeekBarPreference mPreference;
|
||||
|
||||
public FloatingMenuTransparencyPreferenceController(Context context,
|
||||
String preferenceKey) {
|
||||
@@ -83,6 +81,7 @@ public class FloatingMenuTransparencyPreferenceController extends SliderPreferen
|
||||
mPreference.setMin(getMin());
|
||||
mPreference.setHapticFeedbackMode(SeekBarPreference.HAPTIC_FEEDBACK_MODE_ON_ENDS);
|
||||
|
||||
updateAvailabilityStatus();
|
||||
updateState(mPreference);
|
||||
}
|
||||
|
||||
|
@@ -27,6 +27,7 @@ import static com.android.settings.core.BasePreferenceController.DISABLED_DEPEND
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
@@ -34,6 +35,7 @@ import android.content.ContentResolver;
|
||||
import android.content.Context;
|
||||
import android.provider.Settings;
|
||||
|
||||
import androidx.preference.PreferenceScreen;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
|
||||
import com.android.settings.widget.SeekBarPreference;
|
||||
@@ -60,11 +62,18 @@ public class FloatingMenuTransparencyPreferenceControllerTest {
|
||||
@Mock
|
||||
private ContentResolver mContentResolver;
|
||||
private FloatingMenuTransparencyPreferenceController mController;
|
||||
private SeekBarPreference mSeekBarPreference;
|
||||
|
||||
@Mock
|
||||
private PreferenceScreen mScreen;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
when(mContext.getContentResolver()).thenReturn(mContentResolver);
|
||||
mController = new FloatingMenuTransparencyPreferenceController(mContext, "test_key");
|
||||
|
||||
mSeekBarPreference = new SeekBarPreference(mContext);
|
||||
doReturn(mSeekBarPreference).when(mScreen).findPreference("test_key");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -84,14 +93,67 @@ public class FloatingMenuTransparencyPreferenceControllerTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onChange_a11yBtnModeChangeToNavigationBar_preferenceDisabled() {
|
||||
mController.mPreference = new SeekBarPreference(mContext);
|
||||
public void displayPreference_floatingMenuMode_fadeEnabled_preferenceEnabled() {
|
||||
Settings.Secure.putInt(mContentResolver, Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
|
||||
ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);
|
||||
Settings.Secure.putInt(mContentResolver,
|
||||
Settings.Secure.ACCESSIBILITY_FLOATING_MENU_FADE_ENABLED, /* ON */ 1);
|
||||
|
||||
mController.displayPreference(mScreen);
|
||||
|
||||
assertThat(mSeekBarPreference.isEnabled()).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void displayPreference_floatingMenuMode_fadeDisabled_preferenceDisabled() {
|
||||
Settings.Secure.putInt(mContentResolver, Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
|
||||
ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);
|
||||
Settings.Secure.putInt(mContentResolver,
|
||||
Settings.Secure.ACCESSIBILITY_FLOATING_MENU_FADE_ENABLED, /* OFF */ 0);
|
||||
|
||||
mController.displayPreference(mScreen);
|
||||
|
||||
assertThat(mSeekBarPreference.isEnabled()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void displayPreference_navigationBarMode_preferenceDisabled() {
|
||||
Settings.Secure.putInt(mContentResolver, Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
|
||||
ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR);
|
||||
|
||||
mController.displayPreference(mScreen);
|
||||
|
||||
assertThat(mSeekBarPreference.isEnabled()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onChange_floatingMenuModeChangeToNavigationBar_preferenceDisabled() {
|
||||
Settings.Secure.putInt(mContentResolver, Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
|
||||
ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);
|
||||
Settings.Secure.putInt(mContentResolver,
|
||||
Settings.Secure.ACCESSIBILITY_FLOATING_MENU_FADE_ENABLED, /* ON */ 1);
|
||||
mController.displayPreference(mScreen);
|
||||
|
||||
Settings.Secure.putInt(mContentResolver, Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
|
||||
ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR);
|
||||
mController.mContentObserver.onChange(false);
|
||||
|
||||
assertThat(mController.mPreference.isEnabled()).isFalse();
|
||||
assertThat(mSeekBarPreference.isEnabled()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onChange_navigationBarModeChangeToFloatingMenu_preferenceDisabled() {
|
||||
Settings.Secure.putInt(mContentResolver, Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
|
||||
ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR);
|
||||
Settings.Secure.putInt(mContentResolver,
|
||||
Settings.Secure.ACCESSIBILITY_FLOATING_MENU_FADE_ENABLED, /* ON */ 1);
|
||||
mController.displayPreference(mScreen);
|
||||
|
||||
Settings.Secure.putInt(mContentResolver, Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
|
||||
ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);
|
||||
mController.mContentObserver.onChange(false);
|
||||
|
||||
assertThat(mSeekBarPreference.isEnabled()).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
|
Reference in New Issue
Block a user