diff options
author | 2025-03-21 10:28:16 +0900 | |
---|---|---|
committer | 2025-03-24 09:07:18 +0900 | |
commit | b7828728856bdf59608ebfc1c86e399d138d00d7 (patch) | |
tree | fbf6fa4bddc785c6c3d9bb5f453a87d5b8dd6c57 /libs | |
parent | 7e2ebfcd40833f1cd28a40e341bbd665676803c9 (diff) |
Add dump for FocusTransitionObserver
Bug: 405229639
Flag: com.android.window.flags.enable_display_focus_in_shell_transitions
Test: None
Change-Id: I59436ecea041dfdae46fbe75db1dacd7613377c0
Diffstat (limited to 'libs')
2 files changed, 20 insertions, 0 deletions
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt index 6214f329e0fd..9878831c7d6c 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt @@ -3601,6 +3601,7 @@ class DesktopTasksController( pw.println("${prefix}DesktopTasksController") DesktopModeStatus.dump(pw, innerPrefix, context) userRepositories.dump(pw, innerPrefix) + focusTransitionObserver.dump(pw, innerPrefix) } /** The interface for calls from outside the shell, within the host process. */ diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/FocusTransitionObserver.java b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/FocusTransitionObserver.java index f0f1ad05008b..b91fb048dc09 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/transition/FocusTransitionObserver.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/transition/FocusTransitionObserver.java @@ -31,6 +31,7 @@ import android.annotation.NonNull; import android.app.ActivityManager.RunningTaskInfo; import android.os.RemoteException; import android.util.ArraySet; +import android.util.IndentingPrintWriter; import android.util.Slog; import android.util.SparseArray; import android.window.TransitionInfo; @@ -38,6 +39,7 @@ import android.window.TransitionInfo; import com.android.wm.shell.shared.FocusTransitionListener; import com.android.wm.shell.shared.IFocusTransitionListener; +import java.io.PrintWriter; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -237,4 +239,21 @@ public class FocusTransitionObserver { } return task.displayId == mFocusedDisplayId && isFocusedOnDisplay(task); } + + /** Dumps focused display and tasks. */ + public void dump(PrintWriter originalWriter, String prefix) { + final IndentingPrintWriter writer = + new IndentingPrintWriter(originalWriter, " ", prefix); + writer.println("FocusTransitionObserver:"); + writer.increaseIndent(); + writer.printf("currentFocusedDisplayId=%d\n", mFocusedDisplayId); + writer.println("currentFocusedTaskOnDisplay:"); + writer.increaseIndent(); + for (int i = 0; i < mFocusedTaskOnDisplay.size(); i++) { + writer.printf("Display #%d: taskId=%d topActivity=%s\n", + mFocusedTaskOnDisplay.keyAt(i), + mFocusedTaskOnDisplay.valueAt(i).taskId, + mFocusedTaskOnDisplay.valueAt(i).topActivity); + } + } } |