Pass displayId to onActivityRotation()

Bug: 154580671
Change-Id: I220e1e9ac1a381c6ebadc3849a393225d1f53e3e
diff --git a/core/java/android/app/ITaskStackListener.aidl b/core/java/android/app/ITaskStackListener.aidl
index b68639e..aec9f3e 100644
--- a/core/java/android/app/ITaskStackListener.aidl
+++ b/core/java/android/app/ITaskStackListener.aidl
@@ -224,6 +224,8 @@
      *   * forced rotation
      *   * rotation settings set through adb command line
      *   * rotation that occurs when rotation tile is toggled in quick settings
+     *
+     * @param displayId id of the display where activity will rotate
      */
-     void onActivityRotation();
+     void onActivityRotation(int displayId);
 }
diff --git a/core/java/android/app/TaskStackListener.java b/core/java/android/app/TaskStackListener.java
index 843d1c7..f137d68 100644
--- a/core/java/android/app/TaskStackListener.java
+++ b/core/java/android/app/TaskStackListener.java
@@ -201,6 +201,6 @@
     }
 
     @Override
-    public void onActivityRotation() {
+    public void onActivityRotation(int displayId) {
     }
 }
diff --git a/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListener.java b/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListener.java
index 796aaee..44372d7 100644
--- a/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListener.java
+++ b/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListener.java
@@ -115,6 +115,6 @@
     /** @see ITaskStackListener#onRecentTaskListFrozenChanged(boolean) */
     public void onRecentTaskListFrozenChanged(boolean frozen) { }
 
-    /** @see ITaskStackListener#onActivityRotation()*/
-    public void onActivityRotation() { }
+    /** @see ITaskStackListener#onActivityRotation(int)*/
+    public void onActivityRotation(int displayId) { }
 }
diff --git a/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListeners.java b/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListeners.java
index 13f7993..f214648 100644
--- a/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListeners.java
+++ b/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListeners.java
@@ -238,8 +238,9 @@
     }
 
     @Override
-    public void onActivityRotation() {
-        mHandler.obtainMessage(H.ON_ACTIVITY_ROTATION).sendToTarget();
+    public void onActivityRotation(int displayId) {
+        mHandler.obtainMessage(H.ON_ACTIVITY_ROTATION, displayId, 0 /* unused */)
+                .sendToTarget();
     }
 
     private final class H extends Handler {
@@ -435,7 +436,7 @@
                     }
                     case ON_ACTIVITY_ROTATION: {
                         for (int i = mTaskStackListeners.size() - 1; i >= 0; i--) {
-                            mTaskStackListeners.get(i).onActivityRotation();
+                            mTaskStackListeners.get(i).onActivityRotation(msg.arg1);
                         }
                         break;
                     }
diff --git a/services/core/java/com/android/server/wm/TaskChangeNotificationController.java b/services/core/java/com/android/server/wm/TaskChangeNotificationController.java
index 6e9428e..2a24118 100644
--- a/services/core/java/com/android/server/wm/TaskChangeNotificationController.java
+++ b/services/core/java/com/android/server/wm/TaskChangeNotificationController.java
@@ -185,7 +185,7 @@
     };
 
     private final TaskStackConsumer mNotifyOnActivityRotation = (l, m) -> {
-        l.onActivityRotation();
+        l.onActivityRotation(m.arg1);
     };
 
     @FunctionalInterface
@@ -583,9 +583,10 @@
         msg.sendToTarget();
     }
 
-    /** @see android.app.ITaskStackListener#onActivityRotation() */
-    void notifyOnActivityRotation() {
-        final Message msg = mHandler.obtainMessage(NOTIFY_ACTIVITY_ROTATED_MSG);
+    /** @see android.app.ITaskStackListener#onActivityRotation(int) */
+    void notifyOnActivityRotation(int displayId) {
+        final Message msg = mHandler.obtainMessage(NOTIFY_ACTIVITY_ROTATED_MSG,
+                displayId, 0 /* unused */);
         forAllLocalListeners(mNotifyOnActivityRotation, msg);
         msg.sendToTarget();
     }
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java
index 8934e8f..d1366bd 100644
--- a/services/core/java/com/android/server/wm/WindowManagerService.java
+++ b/services/core/java/com/android/server/wm/WindowManagerService.java
@@ -3850,7 +3850,7 @@
 
                     if (rotationChanged) {
                         mAtmService.getTaskChangeNotificationController()
-                                .notifyOnActivityRotation();
+                                .notifyOnActivityRotation(displayContent.mDisplayId);
                     }
 
                     if (!rotationChanged || forceRelayout) {