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

Commit 8c6e100d authored by Ibrahim Yilmaz's avatar Ibrahim Yilmaz
Browse files

Add Last Applied RemoteInput Active value to dump

As RemoteInputController holds weak reference, isRemoteInputActive in dump may not reflect the last applied value of RemoteInputActive. It will help us directly see its last applied value and have better assumptions when isRemoteInputActive matters.

Fixes: b/279397202
Test: Code Review
Change-Id: I9c33a05a697ac59e2112a37d464f82c0551415bb
parent 66a64d23
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.systemui.statusbar;

import android.annotation.Nullable;
import android.app.Notification;
import android.app.RemoteInput;
import android.content.Context;
@@ -55,6 +56,13 @@ public class RemoteInputController {

    private final RemoteInputControllerLogger mLogger;

    /**
     * RemoteInput Active's last emitted value. It's added for debugging purpose to directly see
     * its last emitted value. As RemoteInputController holds weak reference, isRemoteInputActive
     * in dump may not reflect the last emitted value of  Active.
     */
    @Nullable private Boolean mLastAppliedRemoteInputActive = null;

    public RemoteInputController(Delegate delegate,
            RemoteInputUriController remoteInputUriController,
            RemoteInputControllerLogger logger) {
@@ -217,6 +225,7 @@ public class RemoteInputController {
        for (int i = 0; i < N; i++) {
            mCallbacks.get(i).onRemoteInputActive(remoteInputActive);
        }
        mLastAppliedRemoteInputActive = remoteInputActive;
    }

    /**
@@ -323,6 +332,8 @@ public class RemoteInputController {

    /** dump debug info; called by {@link NotificationRemoteInputManager} */
    public void dump(@NonNull IndentingPrintWriter pw) {
        pw.print("mLastAppliedRemoteInputActive: ");
        pw.println((Object) mLastAppliedRemoteInputActive);
        pw.print("isRemoteInputActive: ");
        pw.println(isRemoteInputActive()); // Note that this prunes the mOpen list, printed later.
        pw.println("mOpen: " + mOpen.size());