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

Commit 3621c70c authored by Yabin Huang's avatar Yabin Huang Committed by Android (Google) Code Review
Browse files

Merge "Disallow autofill session for visible background users" into main

parents d4473d8f bc78ceb1
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -92,6 +92,7 @@ import com.android.server.autofill.ui.AutoFillUI;
import com.android.server.contentcapture.ContentCaptureManagerInternal;
import com.android.server.infra.AbstractPerUserSystemService;
import com.android.server.inputmethod.InputMethodManagerInternal;
import com.android.server.pm.UserManagerInternal;
import com.android.server.wm.ActivityTaskManagerInternal;

import java.io.PrintWriter;
@@ -192,6 +193,8 @@ final class AutofillManagerServiceImpl

    private final ContentCaptureManagerInternal mContentCaptureManagerInternal;

    private final UserManagerInternal mUserManagerInternal;

    private final DisabledInfoCache mDisabledInfoCache;

    AutofillManagerServiceImpl(AutofillManagerService master, Object lock,
@@ -208,6 +211,7 @@ final class AutofillManagerServiceImpl
        mInputMethodManagerInternal = LocalServices.getService(InputMethodManagerInternal.class);
        mContentCaptureManagerInternal = LocalServices.getService(
                ContentCaptureManagerInternal.class);
        mUserManagerInternal = LocalServices.getService(UserManagerInternal.class);
        mDisabledInfoCache = disableCache;
        updateLocked(disabled);
    }
@@ -379,6 +383,13 @@ final class AutofillManagerServiceImpl
            return 0;
        }

        // TODO(b/376482880): remove this check once autofill service supports visible
        // background users.
        if (mUserManagerInternal.isVisibleBackgroundFullUser(mUserId)) {
            Slog.d(TAG, "Currently, autofill service does not support visible background users.");
            return 0;
        }

        if (!forAugmentedAutofillOnly && isAutofillDisabledLocked(clientActivity)) {
            // Standard autofill is enabled, but service disabled autofill for this activity; that
            // means no session, unless the activity is allowlisted for augmented autofill