Implement two intents or shortcuts to active split

Implement two intents or shortcuts to active split with shell
transition.

Fix: 259368992
Test: manual
Test: pass existing tests
Change-Id: I13522531022b635dc8508a3213b6f414a6b50ce9
This commit is contained in:
Tony Huang
2023-03-30 10:16:26 +00:00
parent 93f20cc2d5
commit e1826dbdc7
2 changed files with 10 additions and 8 deletions
@@ -621,14 +621,15 @@ public class SystemUiProxy implements ISystemUiProxy {
}
}
public void startIntents(PendingIntent pendingIntent1, Bundle options1,
PendingIntent pendingIntent2, Bundle options2,
@SplitConfigurationOptions.StagePosition int splitPosition,
public void startIntents(PendingIntent pendingIntent1, @Nullable ShortcutInfo shortcutInfo1,
Bundle options1, PendingIntent pendingIntent2, @Nullable ShortcutInfo shortcutInfo2,
Bundle options2, @SplitConfigurationOptions.StagePosition int splitPosition,
float splitRatio, RemoteTransition remoteTransition, InstanceId instanceId) {
if (mSystemUiProxy != null) {
try {
mSplitScreen.startIntents(pendingIntent1, options1, pendingIntent2, options2,
splitPosition, splitRatio, remoteTransition, instanceId);
mSplitScreen.startIntents(pendingIntent1, shortcutInfo1, options1, pendingIntent2,
shortcutInfo2, options2, splitPosition, splitRatio, remoteTransition,
instanceId);
} catch (RemoteException e) {
Log.w(TAG, "Failed call startIntents");
}
@@ -298,9 +298,10 @@ public class SplitSelectStateController {
getOppositeStagePosition(stagePosition), splitRatio, remoteTransition,
shellInstanceId);
} else {
mSystemUiProxy.startIntents(getPendingIntent(intent1), options1.toBundle(),
getPendingIntent(intent2), null /* options2 */, stagePosition,
splitRatio, remoteTransition, shellInstanceId);
mSystemUiProxy.startIntents(getPendingIntent(intent1), getShortcutInfo(intent1),
options1.toBundle(), getPendingIntent(intent2), getShortcutInfo(intent2),
null /* options2 */, stagePosition, splitRatio, remoteTransition,
shellInstanceId);
}
} else {
final RemoteSplitLaunchAnimationRunner animationRunner =