Merge "Add SmartspaceView.setUiSurface and set it for lockscreen Smartspace." into tm-qpr-dev
This commit is contained in:
@@ -40,6 +40,11 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
@ProvidesInterface(action = BcSmartspaceDataPlugin.ACTION, version = BcSmartspaceDataPlugin.VERSION)
|
@ProvidesInterface(action = BcSmartspaceDataPlugin.ACTION, version = BcSmartspaceDataPlugin.VERSION)
|
||||||
public interface BcSmartspaceDataPlugin extends Plugin {
|
public interface BcSmartspaceDataPlugin extends Plugin {
|
||||||
|
String UI_SURFACE_LOCK_SCREEN_AOD = "lockscreen";
|
||||||
|
String UI_SURFACE_HOME_SCREEN = "home";
|
||||||
|
String UI_SURFACE_MEDIA = "media_data_manager";
|
||||||
|
String UI_SURFACE_DREAM = "dream";
|
||||||
|
|
||||||
String ACTION = "com.android.systemui.action.PLUGIN_BC_SMARTSPACE_DATA";
|
String ACTION = "com.android.systemui.action.PLUGIN_BC_SMARTSPACE_DATA";
|
||||||
int VERSION = 1;
|
int VERSION = 1;
|
||||||
String TAG = "BcSmartspaceDataPlugin";
|
String TAG = "BcSmartspaceDataPlugin";
|
||||||
@@ -99,6 +104,11 @@ public interface BcSmartspaceDataPlugin extends Plugin {
|
|||||||
*/
|
*/
|
||||||
void setIsDreaming(boolean isDreaming);
|
void setIsDreaming(boolean isDreaming);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the UI surface for the cards. Should be called immediately after the view is created.
|
||||||
|
*/
|
||||||
|
void setUiSurface(String uiSurface);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Range [0.0 - 1.0] when transitioning from Lockscreen to/from AOD
|
* Range [0.0 - 1.0] when transitioning from Lockscreen to/from AOD
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -238,6 +238,7 @@ class LockscreenSmartspaceController @Inject constructor(
|
|||||||
}
|
}
|
||||||
|
|
||||||
val ssView = plugin.getView(parent)
|
val ssView = plugin.getView(parent)
|
||||||
|
ssView.setUiSurface(BcSmartspaceDataPlugin.UI_SURFACE_LOCK_SCREEN_AOD)
|
||||||
ssView.registerDataProvider(plugin)
|
ssView.registerDataProvider(plugin)
|
||||||
|
|
||||||
ssView.setIntentStarter(object : BcSmartspaceDataPlugin.IntentStarter {
|
ssView.setIntentStarter(object : BcSmartspaceDataPlugin.IntentStarter {
|
||||||
@@ -281,8 +282,10 @@ class LockscreenSmartspaceController @Inject constructor(
|
|||||||
}
|
}
|
||||||
|
|
||||||
val newSession = smartspaceManager.createSmartspaceSession(
|
val newSession = smartspaceManager.createSmartspaceSession(
|
||||||
SmartspaceConfig.Builder(context, "lockscreen").build())
|
SmartspaceConfig.Builder(
|
||||||
Log.d(TAG, "Starting smartspace session for lockscreen")
|
context, BcSmartspaceDataPlugin.UI_SURFACE_LOCK_SCREEN_AOD).build())
|
||||||
|
Log.d(TAG, "Starting smartspace session for " +
|
||||||
|
BcSmartspaceDataPlugin.UI_SURFACE_LOCK_SCREEN_AOD)
|
||||||
newSession.addOnTargetsAvailableListener(uiExecutor, sessionListener)
|
newSession.addOnTargetsAvailableListener(uiExecutor, sessionListener)
|
||||||
this.session = newSession
|
this.session = newSession
|
||||||
|
|
||||||
|
|||||||
@@ -98,6 +98,8 @@ class DreamSmartspaceControllerTest : SysuiTestCase() {
|
|||||||
|
|
||||||
override fun setIsDreaming(isDreaming: Boolean) {}
|
override fun setIsDreaming(isDreaming: Boolean) {}
|
||||||
|
|
||||||
|
override fun setUiSurface(uiSurface: String) {}
|
||||||
|
|
||||||
override fun setDozeAmount(amount: Float) {}
|
override fun setDozeAmount(amount: Float) {}
|
||||||
|
|
||||||
override fun setIntentStarter(intentStarter: BcSmartspaceDataPlugin.IntentStarter?) {}
|
override fun setIntentStarter(intentStarter: BcSmartspaceDataPlugin.IntentStarter?) {}
|
||||||
|
|||||||
@@ -55,21 +55,21 @@ import com.android.systemui.util.mockito.capture
|
|||||||
import com.android.systemui.util.mockito.eq
|
import com.android.systemui.util.mockito.eq
|
||||||
import com.android.systemui.util.settings.SecureSettings
|
import com.android.systemui.util.settings.SecureSettings
|
||||||
import com.android.systemui.util.time.FakeSystemClock
|
import com.android.systemui.util.time.FakeSystemClock
|
||||||
import java.util.Optional
|
|
||||||
import java.util.concurrent.Executor
|
|
||||||
import org.junit.Before
|
import org.junit.Before
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
import org.mockito.ArgumentCaptor
|
import org.mockito.ArgumentCaptor
|
||||||
import org.mockito.Captor
|
import org.mockito.Captor
|
||||||
import org.mockito.Mock
|
import org.mockito.Mock
|
||||||
|
import org.mockito.Mockito.`when`
|
||||||
import org.mockito.Mockito.anyInt
|
import org.mockito.Mockito.anyInt
|
||||||
import org.mockito.Mockito.clearInvocations
|
import org.mockito.Mockito.clearInvocations
|
||||||
import org.mockito.Mockito.mock
|
import org.mockito.Mockito.mock
|
||||||
import org.mockito.Mockito.never
|
import org.mockito.Mockito.never
|
||||||
import org.mockito.Mockito.spy
|
import org.mockito.Mockito.spy
|
||||||
import org.mockito.Mockito.verify
|
import org.mockito.Mockito.verify
|
||||||
import org.mockito.Mockito.`when`
|
|
||||||
import org.mockito.MockitoAnnotations
|
import org.mockito.MockitoAnnotations
|
||||||
|
import java.util.Optional
|
||||||
|
import java.util.concurrent.Executor
|
||||||
|
|
||||||
@SmallTest
|
@SmallTest
|
||||||
class LockscreenSmartspaceControllerTest : SysuiTestCase() {
|
class LockscreenSmartspaceControllerTest : SysuiTestCase() {
|
||||||
@@ -518,6 +518,7 @@ class LockscreenSmartspaceControllerTest : SysuiTestCase() {
|
|||||||
|
|
||||||
// THEN the existing session is reused and views are registered
|
// THEN the existing session is reused and views are registered
|
||||||
verify(smartspaceManager, never()).createSmartspaceSession(any())
|
verify(smartspaceManager, never()).createSmartspaceSession(any())
|
||||||
|
verify(smartspaceView2).setUiSurface(BcSmartspaceDataPlugin.UI_SURFACE_LOCK_SCREEN_AOD)
|
||||||
verify(smartspaceView2).registerDataProvider(plugin)
|
verify(smartspaceView2).registerDataProvider(plugin)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -554,6 +555,7 @@ class LockscreenSmartspaceControllerTest : SysuiTestCase() {
|
|||||||
|
|
||||||
controller.stateChangeListener.onViewAttachedToWindow(view)
|
controller.stateChangeListener.onViewAttachedToWindow(view)
|
||||||
|
|
||||||
|
verify(smartspaceView).setUiSurface(BcSmartspaceDataPlugin.UI_SURFACE_LOCK_SCREEN_AOD)
|
||||||
verify(smartspaceView).registerDataProvider(plugin)
|
verify(smartspaceView).registerDataProvider(plugin)
|
||||||
verify(smartspaceSession)
|
verify(smartspaceSession)
|
||||||
.addOnTargetsAvailableListener(any(), capture(sessionListenerCaptor))
|
.addOnTargetsAvailableListener(any(), capture(sessionListenerCaptor))
|
||||||
@@ -642,6 +644,9 @@ class LockscreenSmartspaceControllerTest : SysuiTestCase() {
|
|||||||
override fun setIsDreaming(isDreaming: Boolean) {
|
override fun setIsDreaming(isDreaming: Boolean) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun setUiSurface(uiSurface: String) {
|
||||||
|
}
|
||||||
|
|
||||||
override fun setDozeAmount(amount: Float) {
|
override fun setDozeAmount(amount: Float) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user