Sets a simple locus id when Overview is enabled
Bug: 189968849
Test: Ran with logcat to check correct locus is set
Change-Id: I5253d83b4cf5862e49c3183a843bf8f26dce149e
diff --git a/quickstep/src/com/android/quickstep/RecentsActivity.java b/quickstep/src/com/android/quickstep/RecentsActivity.java
index 3d66823..412ff60 100644
--- a/quickstep/src/com/android/quickstep/RecentsActivity.java
+++ b/quickstep/src/com/android/quickstep/RecentsActivity.java
@@ -263,6 +263,7 @@
// onActivityStart callback.
mFallbackRecentsView.setContentAlpha(1);
super.onStart();
+ mFallbackRecentsView.updateLocusId();
}
@Override
@@ -271,6 +272,7 @@
// Workaround for b/78520668, explicitly trim memory once UI is hidden
onTrimMemory(TRIM_MEMORY_UI_HIDDEN);
+ mFallbackRecentsView.updateLocusId();
}
@Override
diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java
index df7f8b5..428a886 100644
--- a/quickstep/src/com/android/quickstep/views/RecentsView.java
+++ b/quickstep/src/com/android/quickstep/views/RecentsView.java
@@ -63,6 +63,7 @@
import android.annotation.TargetApi;
import android.app.ActivityManager.RunningTaskInfo;
import android.content.Context;
+import android.content.LocusId;
import android.content.res.Configuration;
import android.graphics.BlendMode;
import android.graphics.Canvas;
@@ -75,6 +76,7 @@
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.os.Build;
+import android.os.Bundle;
import android.os.UserHandle;
import android.text.Layout;
import android.text.StaticLayout;
@@ -943,6 +945,7 @@
cancelSplitSelect(false);
}
}
+ updateLocusId();
}
/**
@@ -3859,4 +3862,19 @@
public RecentsAnimationController getRecentsAnimationController() {
return mRecentsAnimationController;
}
+
+ /** Update the current activity locus id to show the enabled state of Overview */
+ public void updateLocusId() {
+ String locusId = "Overview";
+
+ if (mOverviewStateEnabled && mActivity.isStarted()) {
+ locusId += "|ENABLED";
+ } else {
+ locusId += "|DISABLED";
+ }
+
+ final LocusId id = new LocusId(locusId);
+ // Set locus context is a binder call, don't want it to happen during a transition
+ UI_HELPER_EXECUTOR.post(() -> mActivity.setLocusContext(id, Bundle.EMPTY));
+ }
}