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

Commit a844927c authored by Felipe Leme's avatar Felipe Leme
Browse files

Improved debug to diagnose Save issues.

Test: manual verification
Bug: 62272098

Change-Id: Id7a6765fbe4228fcabb6cc0df37c5fde102d7077
parent 373ab721
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -1370,10 +1370,16 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState
        }
    }

    @Override
    public String toString() {
        return "Session: [id=" + id + ", pkg=" + mPackageName + "]";
    }

    void dumpLocked(String prefix, PrintWriter pw) {
        final String prefix2 = prefix + "  ";
        pw.print(prefix); pw.print("id: "); pw.println(id);
        pw.print(prefix); pw.print("uid: "); pw.println(uid);
        pw.print(prefix); pw.print("mPackagename: "); pw.println(mPackageName);
        pw.print(prefix); pw.print("mActivityToken: "); pw.println(mActivityToken);
        pw.print(prefix); pw.print("mResponses: ");
        if (mResponses == null) {
+4 −0
Original line number Diff line number Diff line
@@ -332,6 +332,10 @@ public final class AutoFillUI {

    @android.annotation.UiThread
    private void hideSaveUiUiThread(@Nullable AutoFillUiCallback callback) {
        if (sVerbose) {
            Slog.v(TAG, "hideSaveUiUiThread(): mSaveUi=" + mSaveUi + ", callback=" + callback
                    + ", mCallback=" + mCallback);
        }
        if (mSaveUi != null && (callback == null || callback == mCallback)) {
            mSaveUi.destroy();
            mSaveUi = null;
+17 −9
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.server.autofill.ui;

import static com.android.server.autofill.Helper.sDebug;
import static com.android.server.autofill.Helper.sVerbose;

import android.annotation.NonNull;
import android.app.Dialog;
@@ -63,7 +64,7 @@ final class SaveUi {

        @Override
        public void onSave() {
            if (sDebug) Slog.d(TAG, "onSave(): " + mDone);
            if (sDebug) Slog.d(TAG, "OneTimeListener.onSave(): " + mDone);
            if (mDone) {
                return;
            }
@@ -73,7 +74,7 @@ final class SaveUi {

        @Override
        public void onCancel(IntentSender listener) {
            if (sDebug) Slog.d(TAG, "onCancel(): " + mDone);
            if (sDebug) Slog.d(TAG, "OneTimeListener.onCancel(): " + mDone);
            if (mDone) {
                return;
            }
@@ -83,7 +84,7 @@ final class SaveUi {

        @Override
        public void onDestroy() {
            if (sDebug) Slog.d(TAG, "onDestroy(): " + mDone);
            if (sDebug) Slog.d(TAG, "OneTimeListener.onDestroy(): " + mDone);
            if (mDone) {
                return;
            }
@@ -158,9 +159,8 @@ final class SaveUi {
            subTitleView.setVisibility(View.VISIBLE);
        }

        Slog.i(TAG, "Showing save dialog: " + mTitle);
        if (sDebug) {
            Slog.d(TAG, "SubTitle: " + mSubTitle);
            Slog.d(TAG, "on constructor: title=" + mTitle + ", subTitle=" + mSubTitle);
        }

        final TextView noButton = view.findViewById(R.id.autofill_save_no);
@@ -169,15 +169,15 @@ final class SaveUi {
        } else {
            noButton.setText(R.string.autofill_save_no);
        }
        noButton.setOnClickListener((v) -> mListener.onCancel(
                info.getNegativeActionListener()));
        View.OnClickListener cancelListener =
                (v) -> mListener.onCancel(info.getNegativeActionListener());
        noButton.setOnClickListener(cancelListener);

        final View yesButton = view.findViewById(R.id.autofill_save_yes);
        yesButton.setOnClickListener((v) -> mListener.onSave());

        final View closeButton = view.findViewById(R.id.autofill_save_close);
        closeButton.setOnClickListener((v) -> mListener.onCancel(
                info.getNegativeActionListener()));
        closeButton.setOnClickListener(cancelListener);

        mDialog = new Dialog(context, R.style.Theme_DeviceDefault_Light_Panel);
        mDialog.setContentView(view);
@@ -195,13 +195,16 @@ final class SaveUi {
        params.width = WindowManager.LayoutParams.MATCH_PARENT;
        params.accessibilityTitle = context.getString(R.string.autofill_save_accessibility_title);

        Slog.i(TAG, "Showing save dialog: " + mTitle);
        mDialog.show();
    }

    void destroy() {
        if (sDebug) Slog.d(TAG, "destroy()");
        throwIfDestroyed();
        mListener.onDestroy();
        mHandler.removeCallbacksAndMessages(mListener);
        if (sVerbose) Slog.v(TAG, "destroy(): dismissing dialog");
        mDialog.dismiss();
        mDestroyed = true;
    }
@@ -212,6 +215,11 @@ final class SaveUi {
        }
    }

    @Override
    public String toString() {
        return mTitle == null ? "NO TITLE" : mTitle.toString();
    }

    void dump(PrintWriter pw, String prefix) {
        pw.print(prefix); pw.print("title: "); pw.println(mTitle);
        pw.print(prefix); pw.print("subtitle: "); pw.println(mSubTitle);