App Pairs: Implement save, inflate, launch, and delete

This is the third of several patches implementing the App Pairs feature behind a flag.

This patch includes:
- AppPairIcon and associated XML. Actual icon asset is placeholder for now
- Ability to launch split pair on click
- Icon can be moved around, incl. to Taskbar
- App pair can be deleted by dragging to "Remove" drop zone
- Icon persists on Launcher reload

Change-Id: I88aec6fbc814be98f9ef048bbc5af889d0797970
Flag: ENABLE_APP_PAIRS (set to false)
Bug: 274835596
Test: Not included in this CL, but will follow
This commit is contained in:
Jeremy Sim
2023-04-19 20:56:49 -07:00
parent 2a8a40c4a8
commit 94fd07e5da
16 changed files with 523 additions and 85 deletions

View File

@@ -117,6 +117,7 @@ import com.android.systemui.unfold.updates.RotationChangeProvider;
import com.android.systemui.unfold.util.ScopedUnfoldTransitionProgressProvider;
import java.io.PrintWriter;
import java.util.Collections;
import java.util.Optional;
/**
@@ -992,9 +993,10 @@ public class TaskbarActivityContext extends BaseTaskbarContext {
if (recents == null) {
return;
}
recents.getSplitSelectController().findLastActiveTaskAndRunCallback(
info.getComponentKey(),
foundTask -> {
recents.getSplitSelectController().findLastActiveTasksAndRunCallback(
Collections.singletonList(info.getComponentKey()),
foundTasks -> {
@Nullable Task foundTask = foundTasks.get(0);
if (foundTask != null) {
TaskView foundTaskView =
recents.getTaskViewByTaskId(foundTask.key.id);