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

Commit f283fec0 authored by Chris Li's avatar Chris Li Committed by Android (Google) Code Review
Browse files

Merge "Synchronize window config updates (8/n)" into main

parents e59b0e4d 37a77dfd
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -71,17 +71,13 @@ public class ActivityConfigurationChangeItem extends ActivityTransactionItem {
    @NonNull
    public static ActivityConfigurationChangeItem obtain(@NonNull IBinder activityToken,
            @NonNull Configuration config) {
        if (config == null) {
            throw new IllegalArgumentException("Config must not be null.");
        }

        ActivityConfigurationChangeItem instance =
                ObjectPool.obtain(ActivityConfigurationChangeItem.class);
        if (instance == null) {
            instance = new ActivityConfigurationChangeItem();
        }
        instance.setActivityToken(activityToken);
        instance.mConfiguration = config;
        instance.mConfiguration = new Configuration(config);

        return instance;
    }
@@ -89,7 +85,7 @@ public class ActivityConfigurationChangeItem extends ActivityTransactionItem {
    @Override
    public void recycle() {
        super.recycle();
        mConfiguration = Configuration.EMPTY;
        mConfiguration = null;
        ObjectPool.recycle(this);
    }

+6 −4
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@ import android.util.Slog;

import com.android.internal.content.ReferrerIntent;

import java.util.ArrayList;
import java.util.List;
import java.util.Objects;

@@ -51,7 +52,7 @@ public class ActivityRelaunchItem extends ActivityTransactionItem {

    /**
     * A record that was properly configured for relaunch. Execution will be cancelled if not
     * initialized after {@link #preExecute(ClientTransactionHandler, IBinder)}.
     * initialized after {@link #preExecute(ClientTransactionHandler)}.
     */
    private ActivityClientRecord mActivityClientRecord;

@@ -99,10 +100,11 @@ public class ActivityRelaunchItem extends ActivityTransactionItem {
            instance = new ActivityRelaunchItem();
        }
        instance.setActivityToken(activityToken);
        instance.mPendingResults = pendingResults;
        instance.mPendingNewIntents = pendingNewIntents;
        instance.mPendingResults = pendingResults != null ? new ArrayList<>(pendingResults) : null;
        instance.mPendingNewIntents =
                pendingNewIntents != null ? new ArrayList<>(pendingNewIntents) : null;
        instance.mConfigChanges = configChanges;
        instance.mConfig = config;
        instance.mConfig = new MergedConfiguration(config);
        instance.mPreserveWindow = preserveWindow;

        return instance;
+2 −1
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.os.Trace;

import java.util.ArrayList;
import java.util.List;
import java.util.Objects;

@@ -82,7 +83,7 @@ public class ActivityResultItem extends ActivityTransactionItem {
            instance = new ActivityResultItem();
        }
        instance.setActivityToken(activityToken);
        instance.mResultInfoList = resultInfoList;
        instance.mResultInfoList = new ArrayList<>(resultInfoList);

        return instance;
    }
+3 −1
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@ import static android.app.servertransaction.TransactionExecutorHelper.getActivit

import static com.android.internal.annotations.VisibleForTesting.Visibility.PACKAGE;

import static java.util.Objects.requireNonNull;

import android.annotation.CallSuper;
import android.annotation.NonNull;
import android.annotation.Nullable;
@@ -93,7 +95,7 @@ public abstract class ActivityTransactionItem extends ClientTransactionItem {
    }

    void setActivityToken(@NonNull IBinder activityToken) {
        mActivityToken = activityToken;
        mActivityToken = requireNonNull(activityToken);
    }

    // To be overridden
+4 −1
Original line number Diff line number Diff line
@@ -54,12 +54,14 @@ public class ClientTransaction implements Parcelable, ObjectPoolItem {

    /** A list of individual callbacks to a client. */
    @UnsupportedAppUsage
    @Nullable
    private List<ClientTransactionItem> mActivityCallbacks;

    /**
     * Final lifecycle state in which the client activity should be after the transaction is
     * executed.
     */
    @Nullable
    private ActivityLifecycleItem mLifecycleStateRequest;

    /** Target client. */
@@ -123,6 +125,7 @@ public class ClientTransaction implements Parcelable, ObjectPoolItem {
    @VisibleForTesting(visibility = PACKAGE)
    @UnsupportedAppUsage
    @Deprecated
    @Nullable
    public ActivityLifecycleItem getLifecycleStateRequest() {
        return mLifecycleStateRequest;
    }
@@ -207,7 +210,7 @@ public class ClientTransaction implements Parcelable, ObjectPoolItem {
            for (int i = 0; i < size; i++) {
                mActivityCallbacks.get(i).recycle();
            }
            mActivityCallbacks.clear();
            mActivityCallbacks = null;
        }
        if (mLifecycleStateRequest != null) {
            mLifecycleStateRequest.recycle();
Loading