Add atom and logging for app overlay
Test: will add cts test
Change-Id: I8573abd8ec920467047fd0db9d9ce22173d84960
diff --git a/services/core/java/com/android/server/wm/Session.java b/services/core/java/com/android/server/wm/Session.java
index f09a294..2c3c5d2 100644
--- a/services/core/java/com/android/server/wm/Session.java
+++ b/services/core/java/com/android/server/wm/Session.java
@@ -55,6 +55,7 @@
import android.view.SurfaceSession;
import android.view.WindowManager;
+import com.android.internal.os.logging.MetricsLoggerWrapper;
import com.android.internal.view.IInputContext;
import com.android.internal.view.IInputMethodClient;
import com.android.internal.view.IInputMethodManager;
@@ -508,8 +509,14 @@
// on-going notification for the user to control their visibility.
if (visible) {
changed = mAlertWindowSurfaces.add(surfaceController);
+ if (changed) {
+ MetricsLoggerWrapper.logAppOverlayEnter(mUid, mPackageName, true);
+ }
} else {
changed = mAlertWindowSurfaces.remove(surfaceController);
+ if (changed) {
+ MetricsLoggerWrapper.logAppOverlayExit(mUid, mPackageName, true);
+ }
}
if (changed) {
@@ -530,8 +537,14 @@
if (visible) {
changed = mAppOverlaySurfaces.add(surfaceController);
+ if (changed) {
+ MetricsLoggerWrapper.logAppOverlayEnter(mUid, mPackageName, false);
+ }
} else {
changed = mAppOverlaySurfaces.remove(surfaceController);
+ if (changed) {
+ MetricsLoggerWrapper.logAppOverlayExit(mUid, mPackageName, false);
+ }
}
if (changed) {