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

Commit fabc5670 authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Merge cherrypicks of [3478238, 3478653, 3478239c, 3478580, 3478612, 3478240,...

Merge cherrypicks of [3478238, 3478653, 3478239c, 3478580, 3478612, 3478240, 3478654, 3478655, 3478656, 3479494, 3479495, 3478933, 3478934, 3479496, 3479497, 3479498, 3478160, 3478161, 3478162, 3478876, 3478877, 3478878, 3478241, 3478163, 3478164, 3478165, 3478166, 3478167, 3478168, 3478169, 3479990, 3479991, 3479992, 3480010, 3480011, 3480012] into oc-m2-release

Change-Id: Ia25b4308ed0e59b88d02d2b7388addb421cb99c2
parents 0fd8d887 2d2ca97f
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -268,4 +268,9 @@ public abstract class ActivityManagerInternal {
     * @param token The IApplicationToken for the activity
     */
    public abstract void setFocusedActivity(IBinder token);

    /**
     * Returns {@code true} if {@code uid} is running an activity from {@code packageName}.
     */
    public abstract boolean hasRunningActivity(int uid, @Nullable String packageName);
}
+10 −0
Original line number Diff line number Diff line
@@ -2058,6 +2058,16 @@ public class AssistStructure implements Parcelable {
        return mActivityComponent;
    }

    /**
     * Called by Autofill server when app forged a different value.
     *
     * @hide
     */
    public void setActivityComponent(ComponentName componentName) {
        ensureData();
        mActivityComponent = componentName;
    }

    /** @hide */
    public int getFlags() {
        return mFlags;
+22 −4
Original line number Diff line number Diff line
@@ -286,8 +286,26 @@ public class PackageInfo implements Parcelable {
    /** @hide */
    public int overlayPriority;

    /** @hide */
    public boolean isStaticOverlay;

    /**
     * Flag for use with {@link #overlayFlags}. Marks the overlay as static, meaning it cannot
     * be enabled/disabled at runtime.
     * @hide
     */
    public static final int FLAG_OVERLAY_STATIC = 1 << 1;

    /**
     * Flag for use with {@link #overlayFlags}. Marks the overlay as trusted (not 3rd party).
     * @hide
     */
    public static final int FLAG_OVERLAY_TRUSTED = 1 << 2;

    /**
     * Modifiers that affect the state of this overlay. See {@link #FLAG_OVERLAY_STATIC},
     * {@link #FLAG_OVERLAY_TRUSTED}.
     * @hide
     */
    public int overlayFlags;

    public PackageInfo() {
    }
@@ -342,8 +360,8 @@ public class PackageInfo implements Parcelable {
        dest.writeString(restrictedAccountType);
        dest.writeString(requiredAccountType);
        dest.writeString(overlayTarget);
        dest.writeInt(isStaticOverlay ? 1 : 0);
        dest.writeInt(overlayPriority);
        dest.writeInt(overlayFlags);
    }

    public static final Parcelable.Creator<PackageInfo> CREATOR
@@ -394,8 +412,8 @@ public class PackageInfo implements Parcelable {
        restrictedAccountType = source.readString();
        requiredAccountType = source.readString();
        overlayTarget = source.readString();
        isStaticOverlay = source.readInt() != 0;
        overlayPriority = source.readInt();
        overlayFlags = source.readInt();

        // The component lists were flattened with the redundant ApplicationInfo
        // instances omitted.  Distribute the canonical one here as appropriate.
+9 −1
Original line number Diff line number Diff line
@@ -678,7 +678,15 @@ public class PackageParser {
        pi.requiredAccountType = p.mRequiredAccountType;
        pi.overlayTarget = p.mOverlayTarget;
        pi.overlayPriority = p.mOverlayPriority;
        pi.isStaticOverlay = p.mIsStaticOverlay;

        if (p.mIsStaticOverlay) {
            pi.overlayFlags |= PackageInfo.FLAG_OVERLAY_STATIC;
        }

        if (p.mTrustedOverlay) {
            pi.overlayFlags |= PackageInfo.FLAG_OVERLAY_TRUSTED;
        }

        pi.firstInstallTime = firstInstallTime;
        pi.lastUpdateTime = lastUpdateTime;
        if ((flags&PackageManager.GET_GIDS) != 0) {
+23 −3
Original line number Diff line number Diff line
@@ -24,6 +24,8 @@ import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.SystemService;
import android.app.Activity;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.IntentSender;
@@ -44,6 +46,7 @@ import android.view.View;
import com.android.internal.annotations.GuardedBy;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.internal.util.Preconditions;

import java.io.PrintWriter;
import java.lang.annotation.Retention;
@@ -390,7 +393,7 @@ public final class AutofillManager {
     * @hide
     */
    public AutofillManager(Context context, IAutoFillManager service) {
        mContext = context;
        mContext = Preconditions.checkNotNull(context, "context cannot be null");
        mService = service;
    }

@@ -940,6 +943,13 @@ public final class AutofillManager {
        return mContext.getAutofillClient();
    }

    private ComponentName getComponentNameFromContext() {
        if (mContext instanceof Activity) {
            return ((Activity) mContext).getComponentName();
        }
        return null;
    }

    /** @hide */
    public void onAuthenticationResult(int authenticationId, Intent data) {
        if (!hasAutofillFeature()) {
@@ -990,9 +1000,14 @@ public final class AutofillManager {
            return;
        }
        try {
            final ComponentName componentName = getComponentNameFromContext();
            if (componentName == null) {
                Log.w(TAG, "startSessionLocked(): context is not activity: " + mContext);
                return;
            }
            mSessionId = mService.startSession(mContext.getActivityToken(),
                    mServiceClient.asBinder(), id, bounds, value, mContext.getUserId(),
                    mCallback != null, flags, mContext.getOpPackageName());
                    mCallback != null, flags, componentName);
            if (mSessionId != NO_SESSION) {
                mState = STATE_ACTIVE;
            }
@@ -1050,9 +1065,14 @@ public final class AutofillManager {

        try {
            if (restartIfNecessary) {
                final ComponentName componentName = getComponentNameFromContext();
                if (componentName == null) {
                    Log.w(TAG, "startSessionLocked(): context is not activity: " + mContext);
                    return;
                }
                final int newId = mService.updateOrRestartSession(mContext.getActivityToken(),
                        mServiceClient.asBinder(), id, bounds, value, mContext.getUserId(),
                        mCallback != null, flags, mContext.getOpPackageName(), mSessionId, action);
                        mCallback != null, flags, componentName, mSessionId, action);
                if (newId != mSessionId) {
                    if (sDebug) Log.d(TAG, "Session restarted: " + mSessionId + "=>" + newId);
                    mSessionId = newId;
Loading