diff options
author | Evan Rosky <erosky@google.com> | 2019-11-05 10:26:24 -0800 |
---|---|---|
committer | Evan Rosky <erosky@google.com> | 2020-01-31 10:26:45 -0800 |
commit | 0037e5f9011ab8e56fdcd4bf1d1702f57ab20b21 (patch) | |
tree | c02eda80f5cc2e858fc76ab4e01ada35d9d83120 /tests/TaskOrganizerTest/src | |
parent | 39df263cc5e2bde767709e158baa4d145c60384e (diff) |
Add TaskTile concept to Window Manager
This adds the concept of a TaskTile to the WM. Due to
complexities in the current Stack/Task relationship, tiles
can't actually be part of the hierarchy, so the Stack
level has to internally resolve configurations as if they
were.
The TaskTiles themselves *are* ActivityStacks though from
the client/sysui perspective, though.
Bug: 133381284
Test: Added TaskTileTests
Change-Id: I9baad5ec899b4fab323a36c1533a40081727a2f7
Diffstat (limited to 'tests/TaskOrganizerTest/src')
3 files changed, 14 insertions, 12 deletions
diff --git a/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskOrganizerMultiWindowTest.java b/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskOrganizerMultiWindowTest.java index bc8d3c349f9d..3fb0050d0c55 100644 --- a/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskOrganizerMultiWindowTest.java +++ b/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskOrganizerMultiWindowTest.java @@ -25,6 +25,7 @@ import android.content.Context; import android.content.Intent; import android.graphics.Rect; import android.os.Bundle; +import android.os.RemoteException; import android.view.ITaskOrganizer; import android.view.IWindowContainer; import android.view.SurfaceControl; @@ -47,13 +48,16 @@ public class TaskOrganizerMultiWindowTest extends Activity { class Organizer extends ITaskOrganizer.Stub { @Override - public void taskAppeared(IWindowContainer wc, ActivityManager.RunningTaskInfo ti) { - mView.reparentTask(wc); + public void taskAppeared(ActivityManager.RunningTaskInfo ti) { + mView.reparentTask(ti.token); } public void taskVanished(IWindowContainer wc) { } public void transactionReady(int id, SurfaceControl.Transaction t) { } + @Override + public void onTaskInfoChanged(ActivityManager.RunningTaskInfo info) { + } } Organizer mOrganizer = new Organizer(); diff --git a/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskOrganizerPipTest.java b/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskOrganizerPipTest.java index fc1be28d2b8f..8f3cb3442f5a 100644 --- a/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskOrganizerPipTest.java +++ b/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskOrganizerPipTest.java @@ -21,18 +21,14 @@ import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import android.app.ActivityManager; import android.app.ActivityTaskManager; import android.app.Service; -import android.app.WindowConfiguration; -import android.content.Context; import android.content.Intent; import android.graphics.Rect; import android.os.IBinder; import android.view.ITaskOrganizer; import android.view.IWindowContainer; -import android.view.WindowContainerTransaction; import android.view.SurfaceControl; -import android.view.SurfaceHolder; -import android.view.SurfaceView; import android.view.ViewGroup; +import android.view.WindowContainerTransaction; import android.view.WindowManager; import android.widget.FrameLayout; @@ -43,13 +39,13 @@ public class TaskOrganizerPipTest extends Service { TaskView mTaskView; class Organizer extends ITaskOrganizer.Stub { - public void taskAppeared(IWindowContainer wc, ActivityManager.RunningTaskInfo ti) { - mTaskView.reparentTask(wc); + public void taskAppeared(ActivityManager.RunningTaskInfo ti) { + mTaskView.reparentTask(ti.token); final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.scheduleFinishEnterPip(wc, new Rect(0, 0, PIP_WIDTH, PIP_HEIGHT)); + wct.scheduleFinishEnterPip(ti.token, new Rect(0, 0, PIP_WIDTH, PIP_HEIGHT)); try { - ActivityTaskManager.getService().applyContainerTransaction(wct); + ActivityTaskManager.getTaskOrganizerController().applyContainerTransaction(wct); } catch (Exception e) { } } @@ -57,6 +53,8 @@ public class TaskOrganizerPipTest extends Service { } public void transactionReady(int id, SurfaceControl.Transaction t) { } + public void onTaskInfoChanged(ActivityManager.RunningTaskInfo info) { + } } Organizer mOrganizer = new Organizer(); diff --git a/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskView.java b/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskView.java index ff73340fc947..9f32bb8a0bf7 100644 --- a/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskView.java +++ b/tests/TaskOrganizerTest/src/com/android/test/taskembed/TaskView.java @@ -44,7 +44,7 @@ class TaskView extends SurfaceView implements SurfaceHolder.Callback { @Override public void surfaceCreated(SurfaceHolder holder) { try { - ActivityTaskManager.getService().registerTaskOrganizer(mTaskOrganizer, + ActivityTaskManager.getTaskOrganizerController().registerTaskOrganizer(mTaskOrganizer, mWindowingMode); } catch (Exception e) { } |