Add a reason to the broadcast to collapse system dialogs

Test: manual - see other CL in topic
Bug: 218517365
Change-Id: I9aa686bb95f11b4eeab0139833876abaf8b80cad
diff --git a/quickstep/src/com/android/quickstep/inputconsumers/SysUiOverlayInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/SysUiOverlayInputConsumer.java
index 3f833c0..878f132 100644
--- a/quickstep/src/com/android/quickstep/inputconsumers/SysUiOverlayInputConsumer.java
+++ b/quickstep/src/com/android/quickstep/inputconsumers/SysUiOverlayInputConsumer.java
@@ -15,9 +15,11 @@
  */
 package com.android.quickstep.inputconsumers;
 
+import android.app.ActivityManager;
 import android.content.Context;
-import android.content.Intent;
 import android.graphics.PointF;
+import android.os.RemoteException;
+import android.util.Log;
 import android.view.MotionEvent;
 
 import com.android.launcher3.testing.TestLogging;
@@ -36,6 +38,10 @@
  */
 public class SysUiOverlayInputConsumer implements InputConsumer,
         TriggerSwipeUpTouchTracker.OnSwipeUpListener {
+    private static final String TAG = "SysUiOverlayInputConsumer";
+
+    // Should match the values in PhoneWindowManager
+    private static final String SYSTEM_DIALOG_REASON_GESTURE_NAV = "gestureNav";
 
     private final Context mContext;
     private final InputMonitorCompat mInputMonitor;
@@ -76,7 +82,11 @@
     @Override
     public void onSwipeUp(boolean wasFling, PointF finalVelocity) {
         // Close system dialogs when a swipe up is detected.
-        mContext.sendBroadcast(new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));
+        try {
+            ActivityManager.getService().closeSystemDialogs(SYSTEM_DIALOG_REASON_GESTURE_NAV);
+        } catch (RemoteException e) {
+            Log.e(TAG, "Exception calling closeSystemDialogs " + e.getMessage());
+        }
     }
 
     @Override