Let ActivityStacks inherit windowing mode from parent

Create ActivityStacks with UNDEFINED override by default.

Added "memory" of previous override mode during transient modes
(split-screen/pip) and restore that instead of hard-coding
fullscreen upon leaving one of those modes.

Added override mode to containers dump output.

Bug: 113900640
Test: go/wm-smoke
      relevant com.android.server.am tests (ActivityStack, TaskRecord,
      ActivityStarter, ActivityRecord, ActivityManagerService).
      Added test to explicitly check override mode.

Change-Id: I4ab51b4b14604b4953fdab6632cb507b8a39d45a
diff --git a/services/core/java/com/android/server/am/ActivityTaskManagerService.java b/services/core/java/com/android/server/am/ActivityTaskManagerService.java
index 7eadcb3..212844a 100644
--- a/services/core/java/com/android/server/am/ActivityTaskManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityTaskManagerService.java
@@ -3338,7 +3338,7 @@
                     }
                 }
 
-                stack.setWindowingMode(WINDOWING_MODE_FULLSCREEN);
+                stack.setWindowingMode(WINDOWING_MODE_UNDEFINED);
             }
         } finally {
             Binder.restoreCallingIdentity(ident);