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

Commit 8e121e40 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge changes Ie9a63aa2,I5caba0a3

* changes:
  Improve RemoteInputManager dump.
  Replace DumpUtils.withIndenting() with DumpUtils.asIndenting()
parents 54611d91 141d8745
Loading
Loading
Loading
Loading
+13 −1
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ import android.os.UserManager;
import android.service.notification.StatusBarNotification;
import android.text.TextUtils;
import android.util.ArraySet;
import android.util.IndentingPrintWriter;
import android.util.Log;
import android.util.Pair;
import android.view.MotionEvent;
@@ -66,6 +67,7 @@ import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
import com.android.systemui.statusbar.phone.StatusBar;
import com.android.systemui.statusbar.policy.RemoteInputUriController;
import com.android.systemui.statusbar.policy.RemoteInputView;
import com.android.systemui.util.DumpUtilsKt;

import java.io.FileDescriptor;
import java.io.PrintWriter;
@@ -653,9 +655,19 @@ public class NotificationRemoteInputManager implements Dumpable {
    }

    @Override
    public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
    public void dump(FileDescriptor fd, PrintWriter pwOriginal, String[] args) {
        IndentingPrintWriter pw = DumpUtilsKt.asIndenting(pwOriginal);
        if (mRemoteInputController != null) {
            pw.println("mRemoteInputController: " + mRemoteInputController);
            pw.increaseIndent();
            mRemoteInputController.dump(pw);
            pw.decreaseIndent();
        }
        if (mRemoteInputListener instanceof Dumpable) {
            pw.println("mRemoteInputListener: " + mRemoteInputListener.getClass().getSimpleName());
            pw.increaseIndent();
            ((Dumpable) mRemoteInputListener).dump(fd, pw, args);
            pw.decreaseIndent();
        }
    }

+26 −0
Original line number Diff line number Diff line
@@ -23,11 +23,15 @@ import android.net.Uri;
import android.os.SystemProperties;
import android.service.notification.StatusBarNotification;
import android.util.ArrayMap;
import android.util.IndentingPrintWriter;
import android.util.Pair;

import androidx.annotation.NonNull;

import com.android.systemui.statusbar.notification.collection.NotificationEntry;
import com.android.systemui.statusbar.policy.RemoteInputUriController;
import com.android.systemui.statusbar.policy.RemoteInputView;
import com.android.systemui.util.DumpUtilsKt;

import java.lang.ref.WeakReference;
import java.util.ArrayList;
@@ -293,6 +297,28 @@ public class RemoteInputController {
        mRemoteInputUriController.grantInlineReplyUriPermission(sbn, data);
    }

    /** dump debug info; called by {@link NotificationRemoteInputManager} */
    public void dump(@NonNull IndentingPrintWriter pw) {
        pw.print("isRemoteInputActive: ");
        pw.println(isRemoteInputActive()); // Note that this prunes the mOpen list, printed later.
        pw.println("mOpen: " + mOpen.size());
        DumpUtilsKt.withIncreasedIndent(pw, () -> {
            for (Pair<WeakReference<NotificationEntry>, Object> open : mOpen) {
                NotificationEntry entry = open.first.get();
                pw.println(entry == null ? "???" : entry.getKey());
            }
        });
        pw.println("mSpinning: " + mSpinning.size());
        DumpUtilsKt.withIncreasedIndent(pw, () -> {
            for (String key : mSpinning.keySet()) {
                pw.println(key);
            }
        });
        pw.println(mSpinning);
        pw.print("mDelegate: ");
        pw.println(mDelegate);
    }

    public interface Callback {
        default void onRemoteInputActive(boolean active) {}

+29 −27
Original line number Diff line number Diff line
@@ -54,6 +54,7 @@ import android.service.notification.StatusBarNotification;
import android.util.ArraySet;
import android.util.AttributeSet;
import android.util.FloatProperty;
import android.util.IndentingPrintWriter;
import android.util.Log;
import android.util.MathUtils;
import android.util.Pair;
@@ -3431,46 +3432,47 @@ public class ExpandableNotificationRow extends ActivatableNotificationView
    }

    @Override
    public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
    public void dump(FileDescriptor fd, PrintWriter pwOriginal, String[] args) {
        IndentingPrintWriter pw = DumpUtilsKt.asIndenting(pwOriginal);
        // Skip super call; dump viewState ourselves
        pw.println("Notification: " + mEntry.getKey());
        DumpUtilsKt.withIndenting(pw, ipw -> {
            ipw.print("visibility: " + getVisibility());
            ipw.print(", alpha: " + getAlpha());
            ipw.print(", translation: " + getTranslation());
            ipw.print(", removed: " + isRemoved());
            ipw.print(", expandAnimationRunning: " + mExpandAnimationRunning);
        DumpUtilsKt.withIncreasedIndent(pw, () -> {
            pw.print("visibility: " + getVisibility());
            pw.print(", alpha: " + getAlpha());
            pw.print(", translation: " + getTranslation());
            pw.print(", removed: " + isRemoved());
            pw.print(", expandAnimationRunning: " + mExpandAnimationRunning);
            NotificationContentView showingLayout = getShowingLayout();
            ipw.print(", privateShowing: " + (showingLayout == mPrivateLayout));
            ipw.println();
            showingLayout.dump(fd, ipw, args);
            pw.print(", privateShowing: " + (showingLayout == mPrivateLayout));
            pw.println();
            showingLayout.dump(fd, pw, args);

            if (getViewState() != null) {
                getViewState().dump(fd, ipw, args);
                ipw.println();
                getViewState().dump(fd, pw, args);
                pw.println();
            } else {
                ipw.println("no viewState!!!");
                pw.println("no viewState!!!");
            }

            if (mIsSummaryWithChildren) {
                ipw.println();
                ipw.print("ChildrenContainer");
                ipw.print(" visibility: " + mChildrenContainer.getVisibility());
                ipw.print(", alpha: " + mChildrenContainer.getAlpha());
                ipw.print(", translationY: " + mChildrenContainer.getTranslationY());
                ipw.println();
                pw.println();
                pw.print("ChildrenContainer");
                pw.print(" visibility: " + mChildrenContainer.getVisibility());
                pw.print(", alpha: " + mChildrenContainer.getAlpha());
                pw.print(", translationY: " + mChildrenContainer.getTranslationY());
                pw.println();
                List<ExpandableNotificationRow> notificationChildren = getAttachedChildren();
                ipw.println("Children: " + notificationChildren.size());
                ipw.print("{");
                ipw.increaseIndent();
                pw.println("Children: " + notificationChildren.size());
                pw.print("{");
                pw.increaseIndent();
                for (ExpandableNotificationRow child : notificationChildren) {
                    ipw.println();
                    child.dump(fd, ipw, args);
                    pw.println();
                    child.dump(fd, pw, args);
                }
                ipw.decreaseIndent();
                ipw.println("}");
                pw.decreaseIndent();
                pw.println("}");
            } else if (mPrivateLayout != null) {
                mPrivateLayout.dumpSmartReplies(ipw);
                mPrivateLayout.dumpSmartReplies(pw);
            }
        });
    }
+7 −5
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import android.content.res.Configuration;
import android.graphics.Paint;
import android.graphics.Rect;
import android.util.AttributeSet;
import android.util.IndentingPrintWriter;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
@@ -743,15 +744,16 @@ public abstract class ExpandableView extends FrameLayout implements Dumpable {
    }

    @Override
    public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
    public void dump(FileDescriptor fd, PrintWriter pwOriginal, String[] args) {
        IndentingPrintWriter pw = DumpUtilsKt.asIndenting(pwOriginal);
        pw.println(getClass().getSimpleName());
        DumpUtilsKt.withIndenting(pw, ipw -> {
        DumpUtilsKt.withIncreasedIndent(pw, () -> {
            ExpandableViewState viewState = getViewState();
            if (viewState == null) {
                ipw.println("no viewState!!!");
                pw.println("no viewState!!!");
            } else {
                viewState.dump(fd, ipw, args);
                ipw.println();
                viewState.dump(fd, pw, args);
                pw.println();
            }
        });
    }
+8 −6
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.content.Context;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.util.AttributeSet;
import android.util.IndentingPrintWriter;
import android.view.View;

import com.android.systemui.R;
@@ -49,14 +50,15 @@ public class FooterView extends StackScrollerDecorView {
    }

    @Override
    public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
    public void dump(FileDescriptor fd, PrintWriter pwOriginal, String[] args) {
        IndentingPrintWriter pw = DumpUtilsKt.asIndenting(pwOriginal);
        super.dump(fd, pw, args);
        DumpUtilsKt.withIndenting(pw, ipw -> {
            ipw.println("visibility: " + DumpUtilsKt.visibilityString(getVisibility()));
            ipw.println("manageButton showHistory: " + mShowHistory);
            ipw.println("manageButton visibility: "
        DumpUtilsKt.withIncreasedIndent(pw, () -> {
            pw.println("visibility: " + DumpUtilsKt.visibilityString(getVisibility()));
            pw.println("manageButton showHistory: " + mShowHistory);
            pw.println("manageButton visibility: "
                    + DumpUtilsKt.visibilityString(mDismissButton.getVisibility()));
            ipw.println("dismissButton visibility: "
            pw.println("dismissButton visibility: "
                    + DumpUtilsKt.visibilityString(mDismissButton.getVisibility()));
        });
    }
Loading