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

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

Merge "Add debug log for failing to start activity in TaskFragment" into main

parents 4adfb542 93d8bf02
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ import android.graphics.Rect;
import android.os.Binder;
import android.os.Bundle;
import android.os.IBinder;
import android.util.Log;
import android.util.Size;
import android.window.TaskFragmentAnimationParams;
import android.window.TaskFragmentInfo;
@@ -540,6 +541,8 @@ class TaskFragmentContainer {
            if (mPendingAppearedIntent != null || !mPendingAppearedActivities.isEmpty()) {
                mAppearEmptyTimeout = () -> {
                    synchronized (mController.mLock) {
                        Log.w(SplitController.TAG,
                                "Fail to wait for activity start in TaskFragment=" + this);
                        mAppearEmptyTimeout = null;
                        // Call without the pass-in wct when timeout. We need to applyWct directly
                        // in this case.
+12 −7
Original line number Diff line number Diff line
@@ -2826,9 +2826,13 @@ class ActivityStarter {
            mTargetRootTask = Task.fromWindowContainerToken(mOptions.getLaunchRootTask());

            if (inTaskFragment == null) {
                inTaskFragment = TaskFragment.fromTaskFragmentToken(
                        mOptions.getLaunchTaskFragmentToken(), mService);
                if (inTaskFragment != null && inTaskFragment.isEmbeddedTaskFragmentInPip()) {
                final IBinder launchTfToken = mOptions.getLaunchTaskFragmentToken();
                if (launchTfToken != null) {
                    inTaskFragment = TaskFragment.fromTaskFragmentToken(launchTfToken, mService);
                    if (inTaskFragment == null) {
                        Slog.e(TAG, "Can not find requested launch TaskFragment: "
                                + launchTfToken);
                    } else if (inTaskFragment.isEmbeddedTaskFragmentInPip()) {
                        // Do not start activity in TaskFragment in a PIP Task.
                        Slog.w(TAG, "Can not start activity in TaskFragment in PIP: "
                                + inTaskFragment);
@@ -2836,6 +2840,7 @@ class ActivityStarter {
                    }
                }
            }
        }

        mNotTop = (mLaunchFlags & FLAG_ACTIVITY_PREVIOUS_IS_TOP) != 0 ? sourceRecord : null;

+1 −1
Original line number Diff line number Diff line
@@ -445,7 +445,7 @@ class TaskFragment extends WindowContainer<WindowContainer> {
        mRemoteToken = new RemoteToken(this);
    }

    @NonNull
    @Nullable
    static TaskFragment fromTaskFragmentToken(@Nullable IBinder token,
            @NonNull ActivityTaskManagerService service) {
        if (token == null) return null;