Merge changes from topic "expose_slices"

* changes:
  Make some display related slices public.
  Make all TogglePreferenceController slice-able.
This commit is contained in:
TreeHugger Robot
2019-11-28 08:12:01 +00:00
committed by Android (Google) Code Review
17 changed files with 156 additions and 74 deletions

View File

@@ -70,4 +70,13 @@ public abstract class TogglePreferenceController extends BasePreferenceControlle
return SliceData.SliceType.SWITCH;
}
@Override
public boolean isSliceable() {
return true;
}
@Override
public boolean isPublicSlice() {
return false;
}
}

View File

@@ -36,7 +36,7 @@ public class AdaptiveSleepDetailPreferenceController extends AdaptiveSleepPrefer
}
@Override
public boolean isSliceable() {
public boolean isPublicSlice() {
return true;
}

View File

@@ -55,6 +55,11 @@ public class AmbientDisplayAlwaysOnPreferenceController extends TogglePreference
return TextUtils.equals(getPreferenceKey(), "ambient_display_always_on");
}
@Override
public boolean isPublicSlice() {
return true;
}
@Override
public boolean isChecked() {
return getConfig().alwaysOnEnabled(MY_USER);

View File

@@ -88,6 +88,11 @@ public class AmbientDisplayNotificationsPreferenceController extends
return TextUtils.equals(getPreferenceKey(), "ambient_display_notification");
}
@Override
public boolean isPublicSlice() {
return true;
}
private AmbientDisplayConfiguration getAmbientConfig() {
if (mConfig == null) {
mConfig = new AmbientDisplayConfiguration(mContext);

View File

@@ -33,7 +33,7 @@ public class AutoBrightnessDetailPreferenceController extends AutoBrightnessPref
}
@Override
public boolean isSliceable() {
public boolean isPublicSlice() {
return true;
}
}

View File

@@ -81,6 +81,11 @@ public class AutoRotatePreferenceController extends TogglePreferenceController i
return TextUtils.equals(getPreferenceKey(), "auto_rotate");
}
@Override
public boolean isPublicSlice() {
return true;
}
@Override
public boolean isChecked() {
return !RotationPolicy.isRotationLocked(mContext);

View File

@@ -63,6 +63,11 @@ public class NightDisplayActivationPreferenceController extends TogglePreference
return TextUtils.equals(getPreferenceKey(), "night_display_activated");
}
@Override
public boolean isPublicSlice() {
return true;
}
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);

View File

@@ -50,6 +50,11 @@ public class NightDisplayIntensityPreferenceController extends SliderPreferenceC
return TextUtils.equals(getPreferenceKey(), "night_display_temperature");
}
@Override
public boolean isPublicSlice() {
return true;
}
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);

View File

@@ -90,6 +90,16 @@ public class TogglePreferenceControllerTest {
SliceData.SliceType.SWITCH);
}
@Test
public void isSliceable_returnTrue() {
assertThat(mToggleController.isSliceable()).isTrue();
}
@Test
public void isPublicSlice_returnFalse() {
assertThat(mToggleController.isPublicSlice()).isFalse();
}
private static class FakeToggle extends TogglePreferenceController {
private boolean checkedFlag;

View File

@@ -61,6 +61,11 @@ public class AdaptiveSleepDetailPreferenceControllerTest {
assertThat(mController.isSliceable()).isTrue();
}
@Test
public void isPublicSlice_returnTrue() {
assertThat(mController.isPublicSlice()).isTrue();
}
@Test
public void getAvailabilityStatus_configTrueSet_shouldReturnAvailable() {
SettingsShadowResources.overrideResource(R.bool.config_adaptive_sleep_available, true);

View File

@@ -133,10 +133,10 @@ public class AdaptiveSleepPreferenceControllerTest {
}
@Test
public void isSliceable_returnsFalse() {
public void isSliceable_returnsTrue() {
final AdaptiveSleepPreferenceController controller =
new AdaptiveSleepPreferenceController(mContext, "any_key");
assertThat(controller.isSliceable()).isFalse();
assertThat(controller.isSliceable()).isTrue();
}
@Test

View File

@@ -128,4 +128,9 @@ public class AmbientDisplayAlwaysOnPreferenceControllerTest {
new AmbientDisplayAlwaysOnPreferenceController(mContext, "bad_key");
assertThat(controller.isSliceable()).isFalse();
}
@Test
public void isPublicSlice_returnTrue() {
assertThat(mController.isPublicSlice()).isTrue();
}
}

View File

@@ -171,4 +171,9 @@ public class AmbientDisplayNotificationsPreferenceControllerTest {
new AmbientDisplayNotificationsPreferenceController(mContext, "bad_key");
assertThat(controller.isSliceable()).isFalse();
}
@Test
public void isPublicSlice_returnTrue() {
assertThat(mController.isPublicSlice()).isTrue();
}
}

View File

@@ -51,6 +51,11 @@ public class AutoBrightnessDetailPreferenceControllerTest {
assertThat(mController.isSliceable()).isTrue();
}
@Test
public void isPublicSlice_returnTrue() {
assertThat(mController.isPublicSlice()).isTrue();
}
@Test
public void getAvailabilityStatus_configTrueSet_shouldReturnAvailable() {
SettingsShadowResources.overrideResource(

View File

@@ -35,7 +35,6 @@ import com.android.settings.core.BasePreferenceController;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowRotationPolicy;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -153,6 +152,11 @@ public class AutoRotatePreferenceControllerTest {
assertThat(controller.isSliceable()).isFalse();
}
@Test
public void isPublicSlice_returnTrue() {
assertThat(mController.isPublicSlice()).isTrue();
}
private void enableAutoRotationPreference() {
when(mPackageManager.hasSystemFeature(anyString())).thenReturn(true);
when(mContext.getResources().getBoolean(anyInt())).thenReturn(true);

View File

@@ -15,6 +15,7 @@
package com.android.settings.display;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.when;
@@ -83,7 +84,7 @@ public class NightDisplayActivationPreferenceControllerTest {
@Test
public void isSliceableCorrectKey_returnsTrue() {
final NightDisplayActivationPreferenceController controller =
new NightDisplayActivationPreferenceController(mContext,"night_display_activated");
new NightDisplayActivationPreferenceController(mContext, "night_display_activated");
assertThat(controller.isSliceable()).isTrue();
}
@@ -94,6 +95,11 @@ public class NightDisplayActivationPreferenceControllerTest {
assertThat(controller.isSliceable()).isFalse();
}
@Test
public void isPublicSlice_returnTrue() {
assertThat(mPreferenceController.isPublicSlice()).isTrue();
}
@Test
public void onClick_activates() {
mColorDisplayManager.setNightDisplayActivated(false);

View File

@@ -19,7 +19,9 @@ import static com.google.common.truth.Truth.assertThat;
import android.content.Context;
import android.hardware.display.ColorDisplayManager;
import android.provider.Settings.Secure;
import com.android.settings.testutils.shadow.SettingsShadowResources;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -80,7 +82,8 @@ public class NightDisplayIntensityPreferenceControllerTest {
mPreferenceController.onPreferenceChange(null, 20);
assertThat(
mContext.getSystemService(ColorDisplayManager.class).getNightDisplayColorTemperature())
mContext.getSystemService(
ColorDisplayManager.class).getNightDisplayColorTemperature())
.isEqualTo(3030);
}
@@ -111,4 +114,9 @@ public class NightDisplayIntensityPreferenceControllerTest {
new NightDisplayIntensityPreferenceController(mContext, "bad_key");
assertThat(controller.isSliceable()).isFalse();
}
@Test
public void isPublicSlice_returnTrue() {
assertThat(mPreferenceController.isPublicSlice()).isTrue();
}
}