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

Commit dad0d1c5 authored by Riddle Hsu's avatar Riddle Hsu Committed by Android (Google) Code Review
Browse files

Merge "Remove unnecessary configChangeFlags" into main

parents f18df089 0422e8d9
Loading
Loading
Loading
Loading
+9 −12
Original line number Diff line number Diff line
@@ -4565,7 +4565,7 @@ public final class ActivityThread extends ClientTransactionHandler
    private void schedulePauseWithUserLeavingHint(ActivityClientRecord r) {
        final ClientTransaction transaction = ClientTransaction.obtain(mAppThread);
        final PauseActivityItem pauseActivityItem = PauseActivityItem.obtain(r.token,
                r.activity.isFinishing(), /* userLeaving */ true, r.activity.mConfigChangeFlags,
                r.activity.isFinishing(), /* userLeaving */ true,
                /* dontReport */ false, /* autoEnteringPip */ false);
        transaction.addTransactionItem(pauseActivityItem);
        executeTransaction(transaction);
@@ -5439,13 +5439,12 @@ public final class ActivityThread extends ClientTransactionHandler

    @Override
    public void handlePauseActivity(ActivityClientRecord r, boolean finished, boolean userLeaving,
            int configChanges, boolean autoEnteringPip, PendingTransactionActions pendingActions,
            boolean autoEnteringPip, PendingTransactionActions pendingActions,
            String reason) {
        if (userLeaving) {
            performUserLeavingActivity(r);
        }

        r.activity.mConfigChangeFlags |= configChanges;
        if (autoEnteringPip) {
            // Set mIsInPictureInPictureMode earlier in case of auto-enter-pip, see also
            // {@link Activity#enterPictureInPictureMode(PictureInPictureParams)}.
@@ -5694,9 +5693,8 @@ public final class ActivityThread extends ClientTransactionHandler
    }

    @Override
    public void handleStopActivity(ActivityClientRecord r, int configChanges,
    public void handleStopActivity(ActivityClientRecord r,
            PendingTransactionActions pendingActions, boolean finalStateRequest, String reason) {
        r.activity.mConfigChangeFlags |= configChanges;

        final StopInfo stopInfo = new StopInfo();
        performStopActivityInner(r, stopInfo, true /* saveState */, finalStateRequest,
@@ -5866,11 +5864,10 @@ public final class ActivityThread extends ClientTransactionHandler

    /** Core implementation of activity destroy call. */
    void performDestroyActivity(ActivityClientRecord r, boolean finishing,
            int configChanges, boolean getNonConfigInstance, String reason) {
            boolean getNonConfigInstance, String reason) {
        Class<? extends Activity> activityClass;
        if (localLOGV) Slog.v(TAG, "Performing finish of " + r);
        activityClass = r.activity.getClass();
        r.activity.mConfigChangeFlags |= configChanges;
        if (finishing) {
            r.activity.mFinished = true;
        }
@@ -5935,9 +5932,9 @@ public final class ActivityThread extends ClientTransactionHandler
    }

    @Override
    public void handleDestroyActivity(ActivityClientRecord r, boolean finishing, int configChanges,
    public void handleDestroyActivity(ActivityClientRecord r, boolean finishing,
            boolean getNonConfigInstance, String reason) {
        performDestroyActivity(r, finishing, configChanges, getNonConfigInstance, reason);
        performDestroyActivity(r, finishing, getNonConfigInstance, reason);
        cleanUpPendingRemoveWindows(r, finishing);
        WindowManager wm = r.activity.getWindowManager();
        View v = r.activity.mDecor;
@@ -6137,7 +6134,7 @@ public final class ActivityThread extends ClientTransactionHandler

        r.activity.mChangingConfigurations = true;

        handleRelaunchActivityInner(r, configChanges, tmp.pendingResults, tmp.pendingIntents,
        handleRelaunchActivityInner(r, tmp.pendingResults, tmp.pendingIntents,
                pendingActions, tmp.startsNotResumed, tmp.overrideConfig, tmp.mActivityWindowInfo,
                "handleRelaunchActivity");
    }
@@ -6206,7 +6203,7 @@ public final class ActivityThread extends ClientTransactionHandler
        executeTransaction(transaction);
    }

    private void handleRelaunchActivityInner(@NonNull ActivityClientRecord r, int configChanges,
    private void handleRelaunchActivityInner(@NonNull ActivityClientRecord r,
            @Nullable List<ResultInfo> pendingResults,
            @Nullable List<ReferrerIntent> pendingIntents,
            @NonNull PendingTransactionActions pendingActions, boolean startsNotResumed,
@@ -6222,7 +6219,7 @@ public final class ActivityThread extends ClientTransactionHandler
            callActivityOnStop(r, true /* saveState */, reason);
        }

        handleDestroyActivity(r, false, configChanges, true, reason);
        handleDestroyActivity(r, false /* finishing */, true /* getNonConfigInstance */, reason);

        r.activity = null;
        r.window = null;
+3 −4
Original line number Diff line number Diff line
@@ -114,11 +114,11 @@ public abstract class ClientTransactionHandler {

    /** Destroy the activity. */
    public abstract void handleDestroyActivity(@NonNull ActivityClientRecord r, boolean finishing,
            int configChanges, boolean getNonConfigInstance, String reason);
            boolean getNonConfigInstance, String reason);

    /** Pause the activity. */
    public abstract void handlePauseActivity(@NonNull ActivityClientRecord r, boolean finished,
            boolean userLeaving, int configChanges, boolean autoEnteringPip,
            boolean userLeaving, boolean autoEnteringPip,
            PendingTransactionActions pendingActions, String reason);

    /**
@@ -146,14 +146,13 @@ public abstract class ClientTransactionHandler {
    /**
     * Stop the activity.
     * @param r Target activity record.
     * @param configChanges Activity configuration changes.
     * @param pendingActions Pending actions to be used on this or later stages of activity
     *                       transaction.
     * @param finalStateRequest Flag indicating if this call is handling final lifecycle state
     *                          request for a transaction.
     * @param reason Reason for performing this operation.
     */
    public abstract void handleStopActivity(@NonNull ActivityClientRecord r, int configChanges,
    public abstract void handleStopActivity(@NonNull ActivityClientRecord r,
            PendingTransactionActions pendingActions, boolean finalStateRequest, String reason);

    /** Report that activity was stopped to server. */
+2 −2
Original line number Diff line number Diff line
@@ -413,7 +413,7 @@ public class LocalActivityManager {
        if (localLOGV) Log.v(TAG, r.id + ": destroying");
        final ActivityClientRecord clientRecord = mActivityThread.getActivityClient(r);
        if (clientRecord != null) {
            mActivityThread.performDestroyActivity(clientRecord, finish, 0 /* configChanges */,
            mActivityThread.performDestroyActivity(clientRecord, finish,
                    false /* getNonConfigInstance */, "LocalActivityManager::performDestroy");
        }
        r.activity = null;
@@ -684,7 +684,7 @@ public class LocalActivityManager {
                if (localLOGV) Log.v(TAG, r.id + ": no corresponding record");
                continue;
            }
            mActivityThread.performDestroyActivity(clientRecord, finishing, 0 /* configChanges */,
            mActivityThread.performDestroyActivity(clientRecord, finishing,
                    false /* getNonConfigInstance */, "LocalActivityManager::dispatchDestroy");
        }
        mActivities.clear();
+4 −12
Original line number Diff line number Diff line
@@ -33,7 +33,6 @@ import android.os.Trace;
public class DestroyActivityItem extends ActivityLifecycleItem {

    private boolean mFinished;
    private int mConfigChanges;

    @Override
    public void preExecute(@NonNull ClientTransactionHandler client) {
@@ -44,7 +43,7 @@ public class DestroyActivityItem extends ActivityLifecycleItem {
    public void execute(@NonNull ClientTransactionHandler client, @NonNull ActivityClientRecord r,
            @NonNull PendingTransactionActions pendingActions) {
        Trace.traceBegin(TRACE_TAG_ACTIVITY_MANAGER, "activityDestroy");
        client.handleDestroyActivity(r, mFinished, mConfigChanges,
        client.handleDestroyActivity(r, mFinished,
                false /* getNonConfigInstance */, "DestroyActivityItem");
        Trace.traceEnd(TRACE_TAG_ACTIVITY_MANAGER);
    }
@@ -67,15 +66,13 @@ public class DestroyActivityItem extends ActivityLifecycleItem {

    /** Obtain an instance initialized with provided params. */
    @NonNull
    public static DestroyActivityItem obtain(@NonNull IBinder activityToken, boolean finished,
            int configChanges) {
    public static DestroyActivityItem obtain(@NonNull IBinder activityToken, boolean finished) {
        DestroyActivityItem instance = ObjectPool.obtain(DestroyActivityItem.class);
        if (instance == null) {
            instance = new DestroyActivityItem();
        }
        instance.setActivityToken(activityToken);
        instance.mFinished = finished;
        instance.mConfigChanges = configChanges;

        return instance;
    }
@@ -84,7 +81,6 @@ public class DestroyActivityItem extends ActivityLifecycleItem {
    public void recycle() {
        super.recycle();
        mFinished = false;
        mConfigChanges = 0;
        ObjectPool.recycle(this);
    }

@@ -95,14 +91,12 @@ public class DestroyActivityItem extends ActivityLifecycleItem {
    public void writeToParcel(@NonNull Parcel dest, int flags) {
        super.writeToParcel(dest, flags);
        dest.writeBoolean(mFinished);
        dest.writeInt(mConfigChanges);
    }

    /** Read from Parcel. */
    private DestroyActivityItem(@NonNull Parcel in) {
        super(in);
        mFinished = in.readBoolean();
        mConfigChanges = in.readInt();
    }

    public static final @NonNull Creator<DestroyActivityItem> CREATOR = new Creator<>() {
@@ -124,7 +118,7 @@ public class DestroyActivityItem extends ActivityLifecycleItem {
            return false;
        }
        final DestroyActivityItem other = (DestroyActivityItem) o;
        return mFinished == other.mFinished && mConfigChanges == other.mConfigChanges;
        return mFinished == other.mFinished;
    }

    @Override
@@ -132,14 +126,12 @@ public class DestroyActivityItem extends ActivityLifecycleItem {
        int result = 17;
        result = 31 * result + super.hashCode();
        result = 31 * result + (mFinished ? 1 : 0);
        result = 31 * result + mConfigChanges;
        return result;
    }

    @Override
    public String toString() {
        return "DestroyActivityItem{" + super.toString()
                + ",finished=" + mFinished
                + ",mConfigChanges=" + mConfigChanges + "}";
                + ",finished=" + mFinished + "}";
    }
}
+4 −11
Original line number Diff line number Diff line
@@ -37,7 +37,6 @@ public class PauseActivityItem extends ActivityLifecycleItem {

    private boolean mFinished;
    private boolean mUserLeaving;
    private int mConfigChanges;
    private boolean mDontReport;
    private boolean mAutoEnteringPip;

@@ -45,7 +44,7 @@ public class PauseActivityItem extends ActivityLifecycleItem {
    public void execute(@NonNull ClientTransactionHandler client, @NonNull ActivityClientRecord r,
            @NonNull PendingTransactionActions pendingActions) {
        Trace.traceBegin(TRACE_TAG_ACTIVITY_MANAGER, "activityPause");
        client.handlePauseActivity(r, mFinished, mUserLeaving, mConfigChanges, mAutoEnteringPip,
        client.handlePauseActivity(r, mFinished, mUserLeaving, mAutoEnteringPip,
                pendingActions, "PAUSE_ACTIVITY_ITEM");
        Trace.traceEnd(TRACE_TAG_ACTIVITY_MANAGER);
    }
@@ -72,7 +71,7 @@ public class PauseActivityItem extends ActivityLifecycleItem {
    /** Obtain an instance initialized with provided params. */
    @NonNull
    public static PauseActivityItem obtain(@NonNull IBinder activityToken, boolean finished,
            boolean userLeaving, int configChanges, boolean dontReport, boolean autoEnteringPip) {
            boolean userLeaving, boolean dontReport, boolean autoEnteringPip) {
        PauseActivityItem instance = ObjectPool.obtain(PauseActivityItem.class);
        if (instance == null) {
            instance = new PauseActivityItem();
@@ -80,7 +79,6 @@ public class PauseActivityItem extends ActivityLifecycleItem {
        instance.setActivityToken(activityToken);
        instance.mFinished = finished;
        instance.mUserLeaving = userLeaving;
        instance.mConfigChanges = configChanges;
        instance.mDontReport = dontReport;
        instance.mAutoEnteringPip = autoEnteringPip;

@@ -91,7 +89,7 @@ public class PauseActivityItem extends ActivityLifecycleItem {
    @NonNull
    public static PauseActivityItem obtain(@NonNull IBinder activityToken) {
        return obtain(activityToken, false /* finished */, false /* userLeaving */,
                0 /* configChanges */, true /* dontReport */, false /* autoEnteringPip*/);
                true /* dontReport */, false /* autoEnteringPip*/);
    }

    @Override
@@ -99,7 +97,6 @@ public class PauseActivityItem extends ActivityLifecycleItem {
        super.recycle();
        mFinished = false;
        mUserLeaving = false;
        mConfigChanges = 0;
        mDontReport = false;
        mAutoEnteringPip = false;
        ObjectPool.recycle(this);
@@ -113,7 +110,6 @@ public class PauseActivityItem extends ActivityLifecycleItem {
        super.writeToParcel(dest, flags);
        dest.writeBoolean(mFinished);
        dest.writeBoolean(mUserLeaving);
        dest.writeInt(mConfigChanges);
        dest.writeBoolean(mDontReport);
        dest.writeBoolean(mAutoEnteringPip);
    }
@@ -123,7 +119,6 @@ public class PauseActivityItem extends ActivityLifecycleItem {
        super(in);
        mFinished = in.readBoolean();
        mUserLeaving = in.readBoolean();
        mConfigChanges = in.readInt();
        mDontReport = in.readBoolean();
        mAutoEnteringPip = in.readBoolean();
    }
@@ -148,7 +143,7 @@ public class PauseActivityItem extends ActivityLifecycleItem {
        }
        final PauseActivityItem other = (PauseActivityItem) o;
        return mFinished == other.mFinished && mUserLeaving == other.mUserLeaving
                && mConfigChanges == other.mConfigChanges && mDontReport == other.mDontReport
                && mDontReport == other.mDontReport
                && mAutoEnteringPip == other.mAutoEnteringPip;
    }

@@ -158,7 +153,6 @@ public class PauseActivityItem extends ActivityLifecycleItem {
        result = 31 * result + super.hashCode();
        result = 31 * result + (mFinished ? 1 : 0);
        result = 31 * result + (mUserLeaving ? 1 : 0);
        result = 31 * result + mConfigChanges;
        result = 31 * result + (mDontReport ? 1 : 0);
        result = 31 * result + (mAutoEnteringPip ? 1 : 0);
        return result;
@@ -169,7 +163,6 @@ public class PauseActivityItem extends ActivityLifecycleItem {
        return "PauseActivityItem{" + super.toString()
                + ",finished=" + mFinished
                + ",userLeaving=" + mUserLeaving
                + ",configChanges=" + mConfigChanges
                + ",dontReport=" + mDontReport
                + ",autoEnteringPip=" + mAutoEnteringPip + "}";
    }
Loading