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

Commit 57b99a29 authored by Evan Rosky's avatar Evan Rosky
Browse files

Plumb the animation info from convertToTranslucent to transition

convertToTranslucent is currently its own sort-of startActivity.
Because it doesn't go through normal startActivity flow, the
activity-options used for it's transition weren't being plumbed
into the transition system. This adds that for the only current
use-case (shared-element transitions).

Bug: 283213473
Test: Open messages, search, click back out of search.
Change-Id: I12befccffc198ab73ef8038527c0dea416a6f3ca
parent 413bb027
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.server.wm;

import static android.Manifest.permission.CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS;
import static android.app.Activity.FULLSCREEN_MODE_REQUEST_ENTER;
import static android.app.ActivityOptions.ANIM_SCENE_TRANSITION;
import static android.app.ActivityTaskManager.INVALID_TASK_ID;
import static android.app.ActivityTaskManager.INVALID_WINDOWING_MODE;
import static android.app.FullscreenRequestHandler.REMOTE_CALLBACK_RESULT_KEY;
@@ -818,6 +819,13 @@ class ActivityClientController extends IActivityClientController.Stub {
                                null /*startTask */, null /* remoteTransition */,
                                null /* displayChange */);
                        r.mTransitionController.setReady(r.getDisplayContent());
                        if (under != null && under.returningOptions != null
                                && under.returningOptions.getAnimationType()
                                        == ANIM_SCENE_TRANSITION) {
                            // Pass along the scene-transition animation-type
                            transition.setOverrideAnimation(TransitionInfo.AnimationOptions
                                    .makeSceneTransitionAnimOptions(), null, null);
                        }
                    } else {
                        transition.abort();
                    }