summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/wm/ActivityTaskManagerService.java2
-rw-r--r--services/core/java/com/android/server/wm/ConfigurationContainer.java40
-rw-r--r--services/core/java/com/android/server/wm/WindowManagerService.java2
3 files changed, 36 insertions, 8 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
index 91f45a7f0ae3..a04513f407b8 100644
--- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
+++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
@@ -4259,7 +4259,7 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
void dumpActivityContainersLocked(PrintWriter pw) {
pw.println("ACTIVITY MANAGER CONTAINERS (dumpsys activity containers)");
- mRootWindowContainer.dumpChildrenNames(pw, " ");
+ mRootWindowContainer.dumpChildrenNames(pw, "");
pw.println(" ");
}
diff --git a/services/core/java/com/android/server/wm/ConfigurationContainer.java b/services/core/java/com/android/server/wm/ConfigurationContainer.java
index 794711262a75..be7c18c49373 100644
--- a/services/core/java/com/android/server/wm/ConfigurationContainer.java
+++ b/services/core/java/com/android/server/wm/ConfigurationContainer.java
@@ -23,7 +23,9 @@ import static android.app.WindowConfiguration.ACTIVITY_TYPE_RECENTS;
import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD;
import static android.app.WindowConfiguration.ACTIVITY_TYPE_UNDEFINED;
import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM;
+import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN;
import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED;
+import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED;
import static android.app.WindowConfiguration.activityTypeToString;
import static android.app.WindowConfiguration.windowingModeToString;
import static android.app.WindowConfigurationProto.WINDOWING_MODE;
@@ -739,17 +741,43 @@ public abstract class ConfigurationContainer<E extends ConfigurationContainer> {
* level with the input prefix.
*/
public void dumpChildrenNames(PrintWriter pw, String prefix) {
- final String childPrefix = prefix + " ";
+ dumpChildrenNames(pw, prefix, true /* isLastChild */);
+ }
+
+ /**
+ * Dumps the names of this container children in the input print writer indenting each
+ * level with the input prefix.
+ */
+ public void dumpChildrenNames(PrintWriter pw, String prefix, boolean isLastChild) {
+ int curWinMode = getWindowingMode();
+ String winMode = windowingModeToString(curWinMode);
+ if (curWinMode != WINDOWING_MODE_UNDEFINED &&
+ curWinMode != WINDOWING_MODE_FULLSCREEN) {
+ winMode = winMode.toUpperCase();
+ }
+ int requestedWinMode = getRequestedOverrideWindowingMode();
+ String overrideWinMode = windowingModeToString(requestedWinMode);
+ if (requestedWinMode != WINDOWING_MODE_UNDEFINED &&
+ requestedWinMode != WINDOWING_MODE_FULLSCREEN) {
+ overrideWinMode = overrideWinMode.toUpperCase();
+ }
+ String actType = activityTypeToString(getActivityType());
+ if (getActivityType() != ACTIVITY_TYPE_UNDEFINED
+ && getActivityType() != ACTIVITY_TYPE_STANDARD) {
+ actType = actType.toUpperCase();
+ }
+ pw.print(prefix + (isLastChild ? "└─ " : "├─ "));
pw.println(getName()
- + " type=" + activityTypeToString(getActivityType())
- + " mode=" + windowingModeToString(getWindowingMode())
- + " override-mode=" + windowingModeToString(getRequestedOverrideWindowingMode())
+ + " type=" + actType
+ + " mode=" + winMode
+ + " override-mode=" + overrideWinMode
+ " requested-bounds=" + getRequestedOverrideBounds().toShortString()
+ " bounds=" + getBounds().toShortString());
+
+ String childPrefix = prefix + (isLastChild ? " " : "│ ");
for (int i = getChildCount() - 1; i >= 0; --i) {
final E cc = getChildAt(i);
- pw.print(childPrefix + "#" + i + " ");
- cc.dumpChildrenNames(pw, childPrefix);
+ cc.dumpChildrenNames(pw, childPrefix, i == 0 /* isLastChild */);
}
}
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java
index 0d2c94d103fb..72632dce2507 100644
--- a/services/core/java/com/android/server/wm/WindowManagerService.java
+++ b/services/core/java/com/android/server/wm/WindowManagerService.java
@@ -7076,7 +7076,7 @@ public class WindowManagerService extends IWindowManager.Stub
return;
} else if ("containers".equals(cmd)) {
synchronized (mGlobalLock) {
- mRoot.dumpChildrenNames(pw, " ");
+ mRoot.dumpChildrenNames(pw, "");
pw.println(" ");
mRoot.forAllWindows(w -> {pw.println(w);}, true /* traverseTopToBottom */);
}