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

Commit 960982f3 authored by Marco Loaiza's avatar Marco Loaiza Committed by Automerger Merge Worker
Browse files

Merge changes from topics "cherrypick-device_id_activity-jjzdpul0z9",...

Merge changes from topics "cherrypick-device_id_activity-jjzdpul0z9", "cherrypick-recreate-activity" into udc-dev am: a717b6e4

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21468067



Change-Id: Ie3bdbdfd1b5ab0adf57b7f817af7de36dcf84439
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents ca44dbbb a717b6e4
Loading
Loading
Loading
Loading
+4 −8
Original line number Diff line number Diff line
@@ -558,9 +558,6 @@ public final class ActivityThread extends ClientTransactionHandler
        boolean hideForNow;
        Configuration createdConfig;
        Configuration overrideConfig;
        // TODO(b/263402465): pass deviceId directly in LaunchActivityItem#execute
        // The deviceId assigned by the server when this activity was first started.
        int mDeviceId;
        // Used for consolidating configs before sending on to Activity.
        private Configuration tmpConfig = new Configuration();
        // Callback used for updating activity override config and camera compat control state.
@@ -623,7 +620,7 @@ public final class ActivityThread extends ClientTransactionHandler
        }

        public ActivityClientRecord(IBinder token, Intent intent, int ident,
                ActivityInfo info, Configuration overrideConfig, int deviceId,
                ActivityInfo info, Configuration overrideConfig,
                String referrer, IVoiceInteractor voiceInteractor, Bundle state,
                PersistableBundle persistentState, List<ResultInfo> pendingResults,
                List<ReferrerIntent> pendingNewIntents, ActivityOptions activityOptions,
@@ -645,7 +642,6 @@ public final class ActivityThread extends ClientTransactionHandler
            this.isForward = isForward;
            this.profilerInfo = profilerInfo;
            this.overrideConfig = overrideConfig;
            this.mDeviceId = deviceId;
            this.packageInfo = client.getPackageInfoNoCheck(activityInfo.applicationInfo);
            mActivityOptions = activityOptions;
            mLaunchedFromBubble = launchedFromBubble;
@@ -3876,7 +3872,7 @@ public final class ActivityThread extends ClientTransactionHandler
     */
    @Override
    public Activity handleLaunchActivity(ActivityClientRecord r,
            PendingTransactionActions pendingActions, Intent customIntent) {
            PendingTransactionActions pendingActions, int deviceId, Intent customIntent) {
        // If we are getting ready to gc after going to the background, well
        // we are back active so skip it.
        unscheduleGcIdler();
@@ -3889,7 +3885,7 @@ public final class ActivityThread extends ClientTransactionHandler

        // Make sure we are running with the most recent config.
        mConfigurationController.handleConfigurationChanged(null, null);
        updateDeviceIdForNonUIContexts(r.mDeviceId);
        updateDeviceIdForNonUIContexts(deviceId);

        if (localLOGV) Slog.v(
            TAG, "Handling launch of " + r);
@@ -5946,7 +5942,7 @@ public final class ActivityThread extends ClientTransactionHandler
        r.startsNotResumed = startsNotResumed;
        r.overrideConfig = overrideConfig;

        handleLaunchActivity(r, pendingActions, customIntent);
        handleLaunchActivity(r, pendingActions, mLastReportedDeviceId, customIntent);
    }

    @Override
+1 −1
Original line number Diff line number Diff line
@@ -188,7 +188,7 @@ public abstract class ClientTransactionHandler {

    /** Perform activity launch. */
    public abstract Activity handleLaunchActivity(@NonNull ActivityClientRecord r,
            PendingTransactionActions pendingActions, Intent customIntent);
            PendingTransactionActions pendingActions, int deviceId, Intent customIntent);

    /** Perform activity start. */
    public abstract void handleStartActivity(@NonNull ActivityClientRecord r,
+2 −2
Original line number Diff line number Diff line
@@ -96,11 +96,11 @@ public class LaunchActivityItem extends ClientTransactionItem {
            PendingTransactionActions pendingActions) {
        Trace.traceBegin(TRACE_TAG_ACTIVITY_MANAGER, "activityStart");
        ActivityClientRecord r = new ActivityClientRecord(token, mIntent, mIdent, mInfo,
                mOverrideConfig, mDeviceId, mReferrer, mVoiceInteractor, mState, mPersistentState,
                mOverrideConfig, mReferrer, mVoiceInteractor, mState, mPersistentState,
                mPendingResults, mPendingNewIntents, mActivityOptions, mIsForward, mProfilerInfo,
                client, mAssistToken, mShareableActivityToken, mLaunchedFromBubble,
                mTaskFragmentToken);
        client.handleLaunchActivity(r, pendingActions, null /* customIntent */);
        client.handleLaunchActivity(r, pendingActions, mDeviceId, null /* customIntent */);
        Trace.traceEnd(TRACE_TAG_ACTIVITY_MANAGER);
    }

+2 −1
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@ import static android.app.servertransaction.TransactionExecutorHelper.transactio

import android.app.ActivityThread.ActivityClientRecord;
import android.app.ClientTransactionHandler;
import android.content.Context;
import android.os.IBinder;
import android.util.IntArray;
import android.util.Slog;
@@ -218,7 +219,7 @@ public class TransactionExecutor {
            switch (state) {
                case ON_CREATE:
                    mTransactionHandler.handleLaunchActivity(r, mPendingActions,
                            null /* customIntent */);
                            Context.DEVICE_ID_INVALID, null /* customIntent */);
                    break;
                case ON_START:
                    mTransactionHandler.handleStartActivity(r, mPendingActions,
+3 −2
Original line number Diff line number Diff line
@@ -51,6 +51,7 @@ import android.app.ActivityThread.ActivityClientRecord;
import android.app.LoadedApk;
import android.app.servertransaction.PendingTransactionActions;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.ApplicationInfo;
@@ -293,7 +294,7 @@ public class ActivityThreadClientTest {

        private Activity launchActivity(ActivityClientRecord r) {
            return mThread.handleLaunchActivity(r, null /* pendingActions */,
                    null /* customIntent */);
                    Context.DEVICE_ID_DEFAULT, null /* customIntent */);
        }

        private void startActivity(ActivityClientRecord r) {
@@ -347,7 +348,7 @@ public class ActivityThreadClientTest {
            doNothing().when(packageInfo).updateApplicationInfo(any(), any());

            return new ActivityClientRecord(mock(IBinder.class), Intent.makeMainActivity(component),
                    0 /* ident */, info, new Configuration(), 0 /*deviceId */, null /* referrer */,
                    0 /* ident */, info, new Configuration(), null /* referrer */,
                    null /* voiceInteractor */, null /* state */, null /* persistentState */,
                    null /* pendingResults */, null /* pendingNewIntents */,
                    null /* activityOptions */, true /* isForward */, null /* profilerInfo */,
Loading