Merge changes from topic "smartspace-on-dream-overlay" into tm-qpr-dev
* changes: Put Smartspace on overlay behind a flag. Add flag to hide Smartspace on dream overlay.
This commit is contained in:
@@ -28,6 +28,8 @@ import android.widget.FrameLayout;
|
|||||||
import com.android.systemui.CoreStartable;
|
import com.android.systemui.CoreStartable;
|
||||||
import com.android.systemui.dreams.DreamOverlayStateController;
|
import com.android.systemui.dreams.DreamOverlayStateController;
|
||||||
import com.android.systemui.dreams.smartspace.DreamSmartspaceController;
|
import com.android.systemui.dreams.smartspace.DreamSmartspaceController;
|
||||||
|
import com.android.systemui.flags.FeatureFlags;
|
||||||
|
import com.android.systemui.flags.Flags;
|
||||||
import com.android.systemui.plugins.BcSmartspaceDataPlugin;
|
import com.android.systemui.plugins.BcSmartspaceDataPlugin;
|
||||||
import com.android.systemui.shared.condition.Monitor;
|
import com.android.systemui.shared.condition.Monitor;
|
||||||
import com.android.systemui.util.condition.ConditionalCoreStartable;
|
import com.android.systemui.util.condition.ConditionalCoreStartable;
|
||||||
@@ -68,6 +70,7 @@ public class SmartSpaceComplication implements Complication {
|
|||||||
private final DreamSmartspaceController mSmartSpaceController;
|
private final DreamSmartspaceController mSmartSpaceController;
|
||||||
private final DreamOverlayStateController mDreamOverlayStateController;
|
private final DreamOverlayStateController mDreamOverlayStateController;
|
||||||
private final SmartSpaceComplication mComplication;
|
private final SmartSpaceComplication mComplication;
|
||||||
|
private final FeatureFlags mFeatureFlags;
|
||||||
|
|
||||||
private final BcSmartspaceDataPlugin.SmartspaceTargetListener mSmartspaceListener =
|
private final BcSmartspaceDataPlugin.SmartspaceTargetListener mSmartspaceListener =
|
||||||
new BcSmartspaceDataPlugin.SmartspaceTargetListener() {
|
new BcSmartspaceDataPlugin.SmartspaceTargetListener() {
|
||||||
@@ -85,15 +88,21 @@ public class SmartSpaceComplication implements Complication {
|
|||||||
DreamOverlayStateController dreamOverlayStateController,
|
DreamOverlayStateController dreamOverlayStateController,
|
||||||
SmartSpaceComplication smartSpaceComplication,
|
SmartSpaceComplication smartSpaceComplication,
|
||||||
DreamSmartspaceController smartSpaceController,
|
DreamSmartspaceController smartSpaceController,
|
||||||
@Named(DREAM_PRETEXT_MONITOR) Monitor monitor) {
|
@Named(DREAM_PRETEXT_MONITOR) Monitor monitor,
|
||||||
|
FeatureFlags featureFlags) {
|
||||||
super(monitor);
|
super(monitor);
|
||||||
mDreamOverlayStateController = dreamOverlayStateController;
|
mDreamOverlayStateController = dreamOverlayStateController;
|
||||||
mComplication = smartSpaceComplication;
|
mComplication = smartSpaceComplication;
|
||||||
mSmartSpaceController = smartSpaceController;
|
mSmartSpaceController = smartSpaceController;
|
||||||
|
mFeatureFlags = featureFlags;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStart() {
|
public void onStart() {
|
||||||
|
if (mFeatureFlags.isEnabled(Flags.HIDE_SMARTSPACE_ON_DREAM_OVERLAY)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
mDreamOverlayStateController.addCallback(new DreamOverlayStateController.Callback() {
|
mDreamOverlayStateController.addCallback(new DreamOverlayStateController.Callback() {
|
||||||
@Override
|
@Override
|
||||||
public void onStateChanged() {
|
public void onStateChanged() {
|
||||||
|
|||||||
@@ -231,6 +231,10 @@ object Flags {
|
|||||||
val SMARTSPACE_DATE_WEATHER_DECOUPLED =
|
val SMARTSPACE_DATE_WEATHER_DECOUPLED =
|
||||||
sysPropBooleanFlag(403, "persist.sysui.ss.dw_decoupled", default = false)
|
sysPropBooleanFlag(403, "persist.sysui.ss.dw_decoupled", default = false)
|
||||||
|
|
||||||
|
// TODO(b/270223352): Tracking Bug
|
||||||
|
@JvmField
|
||||||
|
val HIDE_SMARTSPACE_ON_DREAM_OVERLAY = unreleasedFlag(404, "hide_smartspace_on_dream_overlay")
|
||||||
|
|
||||||
// 500 - quick settings
|
// 500 - quick settings
|
||||||
|
|
||||||
val PEOPLE_TILE = resourceBooleanFlag(502, R.bool.flag_conversations, "people_tile")
|
val PEOPLE_TILE = resourceBooleanFlag(502, R.bool.flag_conversations, "people_tile")
|
||||||
|
|||||||
@@ -33,6 +33,8 @@ import com.android.systemui.SysuiTestCase;
|
|||||||
import com.android.systemui.condition.SelfExecutingMonitor;
|
import com.android.systemui.condition.SelfExecutingMonitor;
|
||||||
import com.android.systemui.dreams.DreamOverlayStateController;
|
import com.android.systemui.dreams.DreamOverlayStateController;
|
||||||
import com.android.systemui.dreams.smartspace.DreamSmartspaceController;
|
import com.android.systemui.dreams.smartspace.DreamSmartspaceController;
|
||||||
|
import com.android.systemui.flags.FeatureFlags;
|
||||||
|
import com.android.systemui.flags.Flags;
|
||||||
import com.android.systemui.plugins.BcSmartspaceDataPlugin;
|
import com.android.systemui.plugins.BcSmartspaceDataPlugin;
|
||||||
import com.android.systemui.shared.condition.Condition;
|
import com.android.systemui.shared.condition.Condition;
|
||||||
import com.android.systemui.shared.condition.Monitor;
|
import com.android.systemui.shared.condition.Monitor;
|
||||||
@@ -65,6 +67,9 @@ public class SmartSpaceComplicationTest extends SysuiTestCase {
|
|||||||
@Mock
|
@Mock
|
||||||
private View mBcSmartspaceView;
|
private View mBcSmartspaceView;
|
||||||
|
|
||||||
|
@Mock
|
||||||
|
private FeatureFlags mFeatureFlags;
|
||||||
|
|
||||||
private Monitor mMonitor;
|
private Monitor mMonitor;
|
||||||
|
|
||||||
private final Set<Condition> mPreconditions = new HashSet<>();
|
private final Set<Condition> mPreconditions = new HashSet<>();
|
||||||
@@ -73,6 +78,8 @@ public class SmartSpaceComplicationTest extends SysuiTestCase {
|
|||||||
public void setup() {
|
public void setup() {
|
||||||
MockitoAnnotations.initMocks(this);
|
MockitoAnnotations.initMocks(this);
|
||||||
mMonitor = SelfExecutingMonitor.createInstance();
|
mMonitor = SelfExecutingMonitor.createInstance();
|
||||||
|
|
||||||
|
when(mFeatureFlags.isEnabled(Flags.HIDE_SMARTSPACE_ON_DREAM_OVERLAY)).thenReturn(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -85,12 +92,22 @@ public class SmartSpaceComplicationTest extends SysuiTestCase {
|
|||||||
verify(mDreamOverlayStateController, never()).addComplication(eq(mComplication));
|
verify(mDreamOverlayStateController, never()).addComplication(eq(mComplication));
|
||||||
}
|
}
|
||||||
|
|
||||||
private SmartSpaceComplication.Registrant getRegistrant() {
|
@Test
|
||||||
return new SmartSpaceComplication.Registrant(
|
public void testRegistrantStart_featureEnabled_addOverlayStateCallback() {
|
||||||
mDreamOverlayStateController,
|
final SmartSpaceComplication.Registrant registrant = getRegistrant();
|
||||||
mComplication,
|
registrant.start();
|
||||||
mSmartspaceController,
|
|
||||||
mMonitor);
|
verify(mDreamOverlayStateController).addCallback(any());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testRegistrantStart_featureDisabled_doesNotAddOverlayStateCallback() {
|
||||||
|
when(mFeatureFlags.isEnabled(Flags.HIDE_SMARTSPACE_ON_DREAM_OVERLAY)).thenReturn(true);
|
||||||
|
|
||||||
|
final SmartSpaceComplication.Registrant registrant = getRegistrant();
|
||||||
|
registrant.start();
|
||||||
|
|
||||||
|
verify(mDreamOverlayStateController, never()).addCallback(any());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -188,4 +205,13 @@ public class SmartSpaceComplicationTest extends SysuiTestCase {
|
|||||||
when(mSmartspaceController.buildAndConnectView(any())).thenReturn(mBcSmartspaceView);
|
when(mSmartspaceController.buildAndConnectView(any())).thenReturn(mBcSmartspaceView);
|
||||||
assertEquals(viewHolder.getView(), viewHolder.getView());
|
assertEquals(viewHolder.getView(), viewHolder.getView());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private SmartSpaceComplication.Registrant getRegistrant() {
|
||||||
|
return new SmartSpaceComplication.Registrant(
|
||||||
|
mDreamOverlayStateController,
|
||||||
|
mComplication,
|
||||||
|
mSmartspaceController,
|
||||||
|
mMonitor,
|
||||||
|
mFeatureFlags);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user