Loading core/java/android/app/ActivityThread.java +5 −23 Original line number Diff line number Diff line Loading @@ -237,7 +237,6 @@ import com.android.internal.util.Preconditions; import com.android.internal.util.function.pooled.PooledLambda; import com.android.org.conscrypt.TrustedCertificateStore; import com.android.server.am.MemInfoDumpProto; import com.android.window.flags.Flags; import dalvik.annotation.optimization.NeverCompile; import dalvik.system.AppSpecializationHooks; Loading Loading @@ -3762,11 +3761,7 @@ public final class ActivityThread extends ClientTransactionHandler final ClientTransaction clientTransaction = ClientTransaction.obtain(mAppThread); final ActivityResultItem activityResultItem = ActivityResultItem.obtain( activityToken, list); if (Flags.bundleClientTransactionFlag()) { clientTransaction.addTransactionItem(activityResultItem); } else { clientTransaction.addCallback(activityResultItem); } try { mAppThread.scheduleTransaction(clientTransaction); } catch (RemoteException e) { Loading Loading @@ -4553,11 +4548,7 @@ public final class ActivityThread extends ClientTransactionHandler final PauseActivityItem pauseActivityItem = PauseActivityItem.obtain(r.token, r.activity.isFinishing(), /* userLeaving */ true, r.activity.mConfigChangeFlags, /* dontReport */ false, /* autoEnteringPip */ false); if (Flags.bundleClientTransactionFlag()) { transaction.addTransactionItem(pauseActivityItem); } else { transaction.setLifecycleStateRequest(pauseActivityItem); } executeTransaction(transaction); } Loading @@ -4565,11 +4556,7 @@ public final class ActivityThread extends ClientTransactionHandler final ClientTransaction transaction = ClientTransaction.obtain(mAppThread); final ResumeActivityItem resumeActivityItem = ResumeActivityItem.obtain(r.token, /* isForward */ false, /* shouldSendCompatFakeFocus */ false); if (Flags.bundleClientTransactionFlag()) { transaction.addTransactionItem(resumeActivityItem); } else { transaction.setLifecycleStateRequest(resumeActivityItem); } executeTransaction(transaction); } Loading Loading @@ -6189,13 +6176,8 @@ public final class ActivityThread extends ClientTransactionHandler TransactionExecutorHelper.getLifecycleRequestForCurrentState(r); // Schedule the transaction. final ClientTransaction transaction = ClientTransaction.obtain(mAppThread); if (Flags.bundleClientTransactionFlag()) { transaction.addTransactionItem(activityRelaunchItem); transaction.addTransactionItem(lifecycleRequest); } else { transaction.addCallback(activityRelaunchItem); transaction.setLifecycleStateRequest(lifecycleRequest); } executeTransaction(transaction); } Loading core/java/android/app/servertransaction/ClientTransaction.java +9 −5 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.os.Parcelable; import android.os.RemoteException; import com.android.internal.annotations.VisibleForTesting; import com.android.window.flags.Flags; import java.io.PrintWriter; import java.util.ArrayList; Loading Loading @@ -85,12 +86,15 @@ public class ClientTransaction implements Parcelable, ObjectPoolItem { * @param item A single message that can contain a client activity/window request/callback. */ public void addTransactionItem(@NonNull ClientTransactionItem item) { if (Flags.bundleClientTransactionFlag()) { if (mTransactionItems == null) { mTransactionItems = new ArrayList<>(); } mTransactionItems.add(item); } // TODO(b/324203798): cleanup after remove UnsupportedAppUsage // Populate even if mTransactionItems is set to support the UnsupportedAppUsage. if (item.isActivityLifecycleItem()) { setLifecycleStateRequest((ActivityLifecycleItem) item); } else { Loading @@ -114,7 +118,7 @@ public class ClientTransaction implements Parcelable, ObjectPoolItem { */ // TODO(b/324203798): cleanup after remove UnsupportedAppUsage @Deprecated public void addCallback(@NonNull ClientTransactionItem activityCallback) { private void addCallback(@NonNull ClientTransactionItem activityCallback) { if (mActivityCallbacks == null) { mActivityCallbacks = new ArrayList<>(); } Loading Loading @@ -169,7 +173,7 @@ public class ClientTransaction implements Parcelable, ObjectPoolItem { */ // TODO(b/324203798): cleanup after remove UnsupportedAppUsage @Deprecated public void setLifecycleStateRequest(@NonNull ActivityLifecycleItem stateRequest) { private void setLifecycleStateRequest(@NonNull ActivityLifecycleItem stateRequest) { if (mLifecycleStateRequest != null) { return; } Loading core/java/android/app/servertransaction/ClientTransactionListenerController.java +1 −8 Original line number Diff line number Diff line Loading @@ -23,7 +23,6 @@ import static java.util.Objects.requireNonNull; import android.annotation.NonNull; import android.app.ActivityThread; import android.hardware.display.DisplayManagerGlobal; import android.os.Process; import com.android.internal.annotations.VisibleForTesting; Loading Loading @@ -67,7 +66,7 @@ public class ClientTransactionListenerController { * window configuration. */ public void onDisplayChanged(int displayId) { if (!isBundleClientTransactionFlagEnabled()) { if (!bundleClientTransactionFlag()) { return; } if (ActivityThread.isSystem()) { Loading @@ -76,10 +75,4 @@ public class ClientTransactionListenerController { } mDisplayManager.handleDisplayChangeFromWindowManager(displayId); } /** Whether {@link #bundleClientTransactionFlag} feature flag is enabled. */ public boolean isBundleClientTransactionFlagEnabled() { // Can't read flag from isolated process. return !Process.isIsolated() && bundleClientTransactionFlag(); } } core/java/android/app/servertransaction/TransactionExecutor.java +0 −3 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ import android.app.ClientTransactionHandler; import android.content.Context; import android.content.res.Configuration; import android.os.IBinder; import android.os.Process; import android.os.Trace; import android.util.ArrayMap; import android.util.ArraySet; Loading Loading @@ -218,8 +217,6 @@ public class TransactionExecutor { final boolean shouldTrackConfigUpdatedContext = // No configuration change for local transaction. !mTransactionHandler.isExecutingLocalTransaction() // Can't read flag from isolated process. && !Process.isIsolated() && bundleClientTransactionFlag(); final Context configUpdatedContext = shouldTrackConfigUpdatedContext ? item.getContextToUpdate(mTransactionHandler) Loading core/tests/coretests/src/android/app/activity/ActivityThreadTest.java +12 −25 Original line number Diff line number Diff line Loading @@ -43,7 +43,6 @@ import android.app.PictureInPictureParams; import android.app.PictureInPictureUiState; import android.app.ResourcesManager; import android.app.servertransaction.ActivityConfigurationChangeItem; import android.app.servertransaction.ActivityLifecycleItem; import android.app.servertransaction.ActivityRelaunchItem; import android.app.servertransaction.ClientTransaction; import android.app.servertransaction.ClientTransactionItem; Loading Loading @@ -75,7 +74,6 @@ import androidx.test.rule.ActivityTestRule; import androidx.test.runner.AndroidJUnit4; import com.android.internal.content.ReferrerIntent; import com.android.window.flags.Flags; import org.junit.After; import org.junit.Before; Loading Loading @@ -230,7 +228,7 @@ public class ActivityThreadTest { try { // Send process level config change. ClientTransaction transaction = newTransaction(activityThread); addClientTransactionItem(transaction, ConfigurationChangeItem.obtain( transaction.addTransactionItem(ConfigurationChangeItem.obtain( newConfig, DEVICE_ID_INVALID)); appThread.scheduleTransaction(transaction); InstrumentationRegistry.getInstrumentation().waitForIdleSync(); Loading @@ -247,7 +245,7 @@ public class ActivityThreadTest { newConfig.seq++; newConfig.smallestScreenWidthDp++; transaction = newTransaction(activityThread); addClientTransactionItem(transaction, ActivityConfigurationChangeItem.obtain( transaction.addTransactionItem(ActivityConfigurationChangeItem.obtain( activity.getActivityToken(), newConfig)); appThread.scheduleTransaction(transaction); InstrumentationRegistry.getInstrumentation().waitForIdleSync(); Loading Loading @@ -448,16 +446,16 @@ public class ActivityThreadTest { activity.mTestLatch = new CountDownLatch(1); ClientTransaction transaction = newTransaction(activityThread); addClientTransactionItem(transaction, ConfigurationChangeItem.obtain( transaction.addTransactionItem(ConfigurationChangeItem.obtain( processConfigLandscape, DEVICE_ID_INVALID)); appThread.scheduleTransaction(transaction); transaction = newTransaction(activityThread); addClientTransactionItem(transaction, ActivityConfigurationChangeItem.obtain( transaction.addTransactionItem(ActivityConfigurationChangeItem.obtain( activity.getActivityToken(), activityConfigLandscape)); addClientTransactionItem(transaction, ConfigurationChangeItem.obtain( transaction.addTransactionItem(ConfigurationChangeItem.obtain( processConfigPortrait, DEVICE_ID_INVALID)); addClientTransactionItem(transaction, ActivityConfigurationChangeItem.obtain( transaction.addTransactionItem(ActivityConfigurationChangeItem.obtain( activity.getActivityToken(), activityConfigPortrait)); appThread.scheduleTransaction(transaction); Loading Loading @@ -847,8 +845,8 @@ public class ActivityThreadTest { false /* shouldSendCompatFakeFocus*/); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, callbackItem); addClientTransactionItem(transaction, resumeStateRequest); transaction.addTransactionItem(callbackItem); transaction.addTransactionItem(resumeStateRequest); return transaction; } Loading @@ -860,7 +858,7 @@ public class ActivityThreadTest { false /* shouldSendCompatFakeFocus */); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, resumeStateRequest); transaction.addTransactionItem(resumeStateRequest); return transaction; } Loading @@ -871,7 +869,7 @@ public class ActivityThreadTest { activity.getActivityToken(), 0 /* configChanges */); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, stopStateRequest); transaction.addTransactionItem(stopStateRequest); return transaction; } Loading @@ -883,7 +881,7 @@ public class ActivityThreadTest { activity.getActivityToken(), config); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, item); transaction.addTransactionItem(item); return transaction; } Loading @@ -895,7 +893,7 @@ public class ActivityThreadTest { resume); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, item); transaction.addTransactionItem(item); return transaction; } Loading @@ -910,17 +908,6 @@ public class ActivityThreadTest { return ClientTransaction.obtain(activityThread.getApplicationThread()); } private static void addClientTransactionItem(@NonNull ClientTransaction transaction, @NonNull ClientTransactionItem item) { if (Flags.bundleClientTransactionFlag()) { transaction.addTransactionItem(item); } else if (item.isActivityLifecycleItem()) { transaction.setLifecycleStateRequest((ActivityLifecycleItem) item); } else { transaction.addCallback(item); } } // Test activity public static class TestActivity extends Activity { static final String PIP_REQUESTED_OVERRIDE_ENTER = "pip_requested_override_enter"; Loading Loading
core/java/android/app/ActivityThread.java +5 −23 Original line number Diff line number Diff line Loading @@ -237,7 +237,6 @@ import com.android.internal.util.Preconditions; import com.android.internal.util.function.pooled.PooledLambda; import com.android.org.conscrypt.TrustedCertificateStore; import com.android.server.am.MemInfoDumpProto; import com.android.window.flags.Flags; import dalvik.annotation.optimization.NeverCompile; import dalvik.system.AppSpecializationHooks; Loading Loading @@ -3762,11 +3761,7 @@ public final class ActivityThread extends ClientTransactionHandler final ClientTransaction clientTransaction = ClientTransaction.obtain(mAppThread); final ActivityResultItem activityResultItem = ActivityResultItem.obtain( activityToken, list); if (Flags.bundleClientTransactionFlag()) { clientTransaction.addTransactionItem(activityResultItem); } else { clientTransaction.addCallback(activityResultItem); } try { mAppThread.scheduleTransaction(clientTransaction); } catch (RemoteException e) { Loading Loading @@ -4553,11 +4548,7 @@ public final class ActivityThread extends ClientTransactionHandler final PauseActivityItem pauseActivityItem = PauseActivityItem.obtain(r.token, r.activity.isFinishing(), /* userLeaving */ true, r.activity.mConfigChangeFlags, /* dontReport */ false, /* autoEnteringPip */ false); if (Flags.bundleClientTransactionFlag()) { transaction.addTransactionItem(pauseActivityItem); } else { transaction.setLifecycleStateRequest(pauseActivityItem); } executeTransaction(transaction); } Loading @@ -4565,11 +4556,7 @@ public final class ActivityThread extends ClientTransactionHandler final ClientTransaction transaction = ClientTransaction.obtain(mAppThread); final ResumeActivityItem resumeActivityItem = ResumeActivityItem.obtain(r.token, /* isForward */ false, /* shouldSendCompatFakeFocus */ false); if (Flags.bundleClientTransactionFlag()) { transaction.addTransactionItem(resumeActivityItem); } else { transaction.setLifecycleStateRequest(resumeActivityItem); } executeTransaction(transaction); } Loading Loading @@ -6189,13 +6176,8 @@ public final class ActivityThread extends ClientTransactionHandler TransactionExecutorHelper.getLifecycleRequestForCurrentState(r); // Schedule the transaction. final ClientTransaction transaction = ClientTransaction.obtain(mAppThread); if (Flags.bundleClientTransactionFlag()) { transaction.addTransactionItem(activityRelaunchItem); transaction.addTransactionItem(lifecycleRequest); } else { transaction.addCallback(activityRelaunchItem); transaction.setLifecycleStateRequest(lifecycleRequest); } executeTransaction(transaction); } Loading
core/java/android/app/servertransaction/ClientTransaction.java +9 −5 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.os.Parcelable; import android.os.RemoteException; import com.android.internal.annotations.VisibleForTesting; import com.android.window.flags.Flags; import java.io.PrintWriter; import java.util.ArrayList; Loading Loading @@ -85,12 +86,15 @@ public class ClientTransaction implements Parcelable, ObjectPoolItem { * @param item A single message that can contain a client activity/window request/callback. */ public void addTransactionItem(@NonNull ClientTransactionItem item) { if (Flags.bundleClientTransactionFlag()) { if (mTransactionItems == null) { mTransactionItems = new ArrayList<>(); } mTransactionItems.add(item); } // TODO(b/324203798): cleanup after remove UnsupportedAppUsage // Populate even if mTransactionItems is set to support the UnsupportedAppUsage. if (item.isActivityLifecycleItem()) { setLifecycleStateRequest((ActivityLifecycleItem) item); } else { Loading @@ -114,7 +118,7 @@ public class ClientTransaction implements Parcelable, ObjectPoolItem { */ // TODO(b/324203798): cleanup after remove UnsupportedAppUsage @Deprecated public void addCallback(@NonNull ClientTransactionItem activityCallback) { private void addCallback(@NonNull ClientTransactionItem activityCallback) { if (mActivityCallbacks == null) { mActivityCallbacks = new ArrayList<>(); } Loading Loading @@ -169,7 +173,7 @@ public class ClientTransaction implements Parcelable, ObjectPoolItem { */ // TODO(b/324203798): cleanup after remove UnsupportedAppUsage @Deprecated public void setLifecycleStateRequest(@NonNull ActivityLifecycleItem stateRequest) { private void setLifecycleStateRequest(@NonNull ActivityLifecycleItem stateRequest) { if (mLifecycleStateRequest != null) { return; } Loading
core/java/android/app/servertransaction/ClientTransactionListenerController.java +1 −8 Original line number Diff line number Diff line Loading @@ -23,7 +23,6 @@ import static java.util.Objects.requireNonNull; import android.annotation.NonNull; import android.app.ActivityThread; import android.hardware.display.DisplayManagerGlobal; import android.os.Process; import com.android.internal.annotations.VisibleForTesting; Loading Loading @@ -67,7 +66,7 @@ public class ClientTransactionListenerController { * window configuration. */ public void onDisplayChanged(int displayId) { if (!isBundleClientTransactionFlagEnabled()) { if (!bundleClientTransactionFlag()) { return; } if (ActivityThread.isSystem()) { Loading @@ -76,10 +75,4 @@ public class ClientTransactionListenerController { } mDisplayManager.handleDisplayChangeFromWindowManager(displayId); } /** Whether {@link #bundleClientTransactionFlag} feature flag is enabled. */ public boolean isBundleClientTransactionFlagEnabled() { // Can't read flag from isolated process. return !Process.isIsolated() && bundleClientTransactionFlag(); } }
core/java/android/app/servertransaction/TransactionExecutor.java +0 −3 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ import android.app.ClientTransactionHandler; import android.content.Context; import android.content.res.Configuration; import android.os.IBinder; import android.os.Process; import android.os.Trace; import android.util.ArrayMap; import android.util.ArraySet; Loading Loading @@ -218,8 +217,6 @@ public class TransactionExecutor { final boolean shouldTrackConfigUpdatedContext = // No configuration change for local transaction. !mTransactionHandler.isExecutingLocalTransaction() // Can't read flag from isolated process. && !Process.isIsolated() && bundleClientTransactionFlag(); final Context configUpdatedContext = shouldTrackConfigUpdatedContext ? item.getContextToUpdate(mTransactionHandler) Loading
core/tests/coretests/src/android/app/activity/ActivityThreadTest.java +12 −25 Original line number Diff line number Diff line Loading @@ -43,7 +43,6 @@ import android.app.PictureInPictureParams; import android.app.PictureInPictureUiState; import android.app.ResourcesManager; import android.app.servertransaction.ActivityConfigurationChangeItem; import android.app.servertransaction.ActivityLifecycleItem; import android.app.servertransaction.ActivityRelaunchItem; import android.app.servertransaction.ClientTransaction; import android.app.servertransaction.ClientTransactionItem; Loading Loading @@ -75,7 +74,6 @@ import androidx.test.rule.ActivityTestRule; import androidx.test.runner.AndroidJUnit4; import com.android.internal.content.ReferrerIntent; import com.android.window.flags.Flags; import org.junit.After; import org.junit.Before; Loading Loading @@ -230,7 +228,7 @@ public class ActivityThreadTest { try { // Send process level config change. ClientTransaction transaction = newTransaction(activityThread); addClientTransactionItem(transaction, ConfigurationChangeItem.obtain( transaction.addTransactionItem(ConfigurationChangeItem.obtain( newConfig, DEVICE_ID_INVALID)); appThread.scheduleTransaction(transaction); InstrumentationRegistry.getInstrumentation().waitForIdleSync(); Loading @@ -247,7 +245,7 @@ public class ActivityThreadTest { newConfig.seq++; newConfig.smallestScreenWidthDp++; transaction = newTransaction(activityThread); addClientTransactionItem(transaction, ActivityConfigurationChangeItem.obtain( transaction.addTransactionItem(ActivityConfigurationChangeItem.obtain( activity.getActivityToken(), newConfig)); appThread.scheduleTransaction(transaction); InstrumentationRegistry.getInstrumentation().waitForIdleSync(); Loading Loading @@ -448,16 +446,16 @@ public class ActivityThreadTest { activity.mTestLatch = new CountDownLatch(1); ClientTransaction transaction = newTransaction(activityThread); addClientTransactionItem(transaction, ConfigurationChangeItem.obtain( transaction.addTransactionItem(ConfigurationChangeItem.obtain( processConfigLandscape, DEVICE_ID_INVALID)); appThread.scheduleTransaction(transaction); transaction = newTransaction(activityThread); addClientTransactionItem(transaction, ActivityConfigurationChangeItem.obtain( transaction.addTransactionItem(ActivityConfigurationChangeItem.obtain( activity.getActivityToken(), activityConfigLandscape)); addClientTransactionItem(transaction, ConfigurationChangeItem.obtain( transaction.addTransactionItem(ConfigurationChangeItem.obtain( processConfigPortrait, DEVICE_ID_INVALID)); addClientTransactionItem(transaction, ActivityConfigurationChangeItem.obtain( transaction.addTransactionItem(ActivityConfigurationChangeItem.obtain( activity.getActivityToken(), activityConfigPortrait)); appThread.scheduleTransaction(transaction); Loading Loading @@ -847,8 +845,8 @@ public class ActivityThreadTest { false /* shouldSendCompatFakeFocus*/); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, callbackItem); addClientTransactionItem(transaction, resumeStateRequest); transaction.addTransactionItem(callbackItem); transaction.addTransactionItem(resumeStateRequest); return transaction; } Loading @@ -860,7 +858,7 @@ public class ActivityThreadTest { false /* shouldSendCompatFakeFocus */); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, resumeStateRequest); transaction.addTransactionItem(resumeStateRequest); return transaction; } Loading @@ -871,7 +869,7 @@ public class ActivityThreadTest { activity.getActivityToken(), 0 /* configChanges */); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, stopStateRequest); transaction.addTransactionItem(stopStateRequest); return transaction; } Loading @@ -883,7 +881,7 @@ public class ActivityThreadTest { activity.getActivityToken(), config); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, item); transaction.addTransactionItem(item); return transaction; } Loading @@ -895,7 +893,7 @@ public class ActivityThreadTest { resume); final ClientTransaction transaction = newTransaction(activity); addClientTransactionItem(transaction, item); transaction.addTransactionItem(item); return transaction; } Loading @@ -910,17 +908,6 @@ public class ActivityThreadTest { return ClientTransaction.obtain(activityThread.getApplicationThread()); } private static void addClientTransactionItem(@NonNull ClientTransaction transaction, @NonNull ClientTransactionItem item) { if (Flags.bundleClientTransactionFlag()) { transaction.addTransactionItem(item); } else if (item.isActivityLifecycleItem()) { transaction.setLifecycleStateRequest((ActivityLifecycleItem) item); } else { transaction.addCallback(item); } } // Test activity public static class TestActivity extends Activity { static final String PIP_REQUESTED_OVERRIDE_ENTER = "pip_requested_override_enter"; Loading