Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b7828728 authored by Daichi Hirono's avatar Daichi Hirono
Browse files

Add dump for FocusTransitionObserver

Bug: 405229639
Flag: com.android.window.flags.enable_display_focus_in_shell_transitions
Test: None
Change-Id: I59436ecea041dfdae46fbe75db1dacd7613377c0
parent 7e2ebfcd
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -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. */
+19 −0
Original line number Diff line number Diff line
@@ -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);
        }
    }
}