Merge "Filling in holes in shade touch handling logging" into udc-dev
diff --git a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
index 3316ca0..5e65cdd 100644
--- a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
+++ b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
@@ -4936,6 +4936,7 @@
}
handled |= handleTouch(event);
+ mShadeLog.logOnTouchEventLastReturn(event, !mDozing, handled);
return !mDozing || handled;
}
@@ -5118,6 +5119,7 @@
}
break;
}
+ mShadeLog.logHandleTouchLastReturn(event, !mGestureWaitForTouchSlop, mTracking);
return !mGestureWaitForTouchSlop || mTracking;
}
diff --git a/packages/SystemUI/src/com/android/systemui/shade/ShadeLogger.kt b/packages/SystemUI/src/com/android/systemui/shade/ShadeLogger.kt
index da4944c..a931838 100644
--- a/packages/SystemUI/src/com/android/systemui/shade/ShadeLogger.kt
+++ b/packages/SystemUI/src/com/android/systemui/shade/ShadeLogger.kt
@@ -316,4 +316,80 @@
{ "QSC NotificationsClippingTopBound set to $int1 - $int2" }
)
}
+
+ fun logOnTouchEventLastReturn(
+ event: MotionEvent,
+ dozing: Boolean,
+ handled: Boolean,
+ ) {
+ buffer.log(
+ TAG,
+ LogLevel.VERBOSE,
+ {
+ bool1 = dozing
+ bool2 = handled
+ long1 = event.eventTime
+ long2 = event.downTime
+ int1 = event.action
+ int2 = event.classification
+ double1 = event.y.toDouble()
+ },
+ {
+ "NPVC onTouchEvent last return: !mDozing: $bool1 || handled: $bool2 " +
+ "\neventTime=$long1,downTime=$long2,y=$double1,action=$int1,class=$int2"
+ }
+ )
+ }
+
+ fun logHandleTouchLastReturn(
+ event: MotionEvent,
+ gestureWaitForTouchSlop: Boolean,
+ tracking: Boolean,
+ ) {
+ buffer.log(
+ TAG,
+ LogLevel.VERBOSE,
+ {
+ bool1 = gestureWaitForTouchSlop
+ bool2 = tracking
+ long1 = event.eventTime
+ long2 = event.downTime
+ int1 = event.action
+ int2 = event.classification
+ double1 = event.y.toDouble()
+ },
+ {
+ "NPVC handleTouch last return: !mGestureWaitForTouchSlop: $bool1 " +
+ "|| mTracking: $bool2 " +
+ "\neventTime=$long1,downTime=$long2,y=$double1,action=$int1,class=$int2"
+ }
+ )
+ }
+
+ fun logUpdateNotificationPanelTouchState(
+ disabled: Boolean,
+ isGoingToSleep: Boolean,
+ shouldControlScreenOff: Boolean,
+ deviceInteractive: Boolean,
+ isPulsing: Boolean,
+ isFrpActive: Boolean,
+ ) {
+ buffer.log(
+ TAG,
+ LogLevel.VERBOSE,
+ {
+ bool1 = disabled
+ bool2 = isGoingToSleep
+ bool3 = shouldControlScreenOff
+ bool4 = deviceInteractive
+ str1 = isPulsing.toString()
+ str2 = isFrpActive.toString()
+ },
+ {
+ "CentralSurfaces updateNotificationPanelTouchState set disabled to: $bool1\n" +
+ "isGoingToSleep: $bool2, !shouldControlScreenOff: $bool3," +
+ "!mDeviceInteractive: $bool4, !isPulsing: $str1, isFrpActive: $str2"
+ }
+ )
+ }
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java
index 0c8e9e56..7596ce0 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java
@@ -192,6 +192,7 @@
import com.android.systemui.shade.ShadeExpansionChangeEvent;
import com.android.systemui.shade.ShadeExpansionStateManager;
import com.android.systemui.shared.recents.utilities.Utilities;
+import com.android.systemui.shade.ShadeLogger;
import com.android.systemui.statusbar.AutoHideUiElement;
import com.android.systemui.statusbar.BackDropView;
import com.android.systemui.statusbar.CircleReveal;
@@ -505,6 +506,7 @@
/** Controller for the Shade. */
@VisibleForTesting
NotificationPanelViewController mNotificationPanelViewController;
+ private final ShadeLogger mShadeLogger;
// settings
private QSPanelController mQSPanelController;
@@ -738,6 +740,7 @@
KeyguardViewMediator keyguardViewMediator,
DisplayMetrics displayMetrics,
MetricsLogger metricsLogger,
+ ShadeLogger shadeLogger,
@UiBackground Executor uiBgExecutor,
NotificationMediaManager notificationMediaManager,
NotificationLockscreenUserManager lockScreenUserManager,
@@ -830,6 +833,7 @@
mKeyguardViewMediator = keyguardViewMediator;
mDisplayMetrics = displayMetrics;
mMetricsLogger = metricsLogger;
+ mShadeLogger = shadeLogger;
mUiBgExecutor = uiBgExecutor;
mMediaManager = notificationMediaManager;
mLockscreenUserManager = lockScreenUserManager;
@@ -3672,6 +3676,10 @@
boolean disabled = (!mDeviceInteractive && !mDozeServiceHost.isPulsing())
|| goingToSleepWithoutAnimation
|| mDeviceProvisionedController.isFrpActive();
+ mShadeLogger.logUpdateNotificationPanelTouchState(disabled, isGoingToSleep(),
+ !mDozeParameters.shouldControlScreenOff(), !mDeviceInteractive,
+ !mDozeServiceHost.isPulsing(), mDeviceProvisionedController.isFrpActive());
+
mNotificationPanelViewController.setTouchAndAnimationDisabled(disabled);
mNotificationIconAreaController.setAnimationsEnabled(!disabled);
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CentralSurfacesImplTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CentralSurfacesImplTest.java
index 32f0adf..48710a4 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CentralSurfacesImplTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/CentralSurfacesImplTest.java
@@ -133,6 +133,7 @@
import com.android.systemui.shade.ShadeController;
import com.android.systemui.shade.ShadeControllerImpl;
import com.android.systemui.shade.ShadeExpansionStateManager;
+import com.android.systemui.shade.ShadeLogger;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.KeyguardIndicationController;
import com.android.systemui.statusbar.LockscreenShadeTransitionController;
@@ -221,6 +222,7 @@
@Mock private NotificationListContainer mNotificationListContainer;
@Mock private HeadsUpManagerPhone mHeadsUpManager;
@Mock private NotificationPanelViewController mNotificationPanelViewController;
+ @Mock private ShadeLogger mShadeLogger;
@Mock private NotificationPanelView mNotificationPanelView;
@Mock private QuickSettingsController mQuickSettingsController;
@Mock private IStatusBarService mBarService;
@@ -469,6 +471,7 @@
mKeyguardViewMediator,
new DisplayMetrics(),
mMetricsLogger,
+ mShadeLogger,
mUiBgExecutor,
mNotificationMediaManager,
mLockscreenUserManager,