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

Commit be7698d6 authored by Kevin Chyn's avatar Kevin Chyn Committed by Android (Google) Code Review
Browse files

Merge "Add ability to listen to LockTask state changes" into sc-dev

parents 7fbade08 f18b2721
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -209,4 +209,10 @@ oneway interface ITaskStackListener {
     * @param taskInfo info about the task which moved
     */
    void onTaskMovedToBack(in ActivityManager.RunningTaskInfo taskInfo);

    /**
     * Called when the lock task mode changes. See ActivityManager#LOCK_TASK_MODE_* and
     * LockTaskController.
     */
    void onLockTaskModeChanged(int mode);
}
+4 −0
Original line number Diff line number Diff line
@@ -193,4 +193,8 @@ public abstract class TaskStackListener extends ITaskStackListener.Stub {
    @Override
    public void onTaskMovedToBack(RunningTaskInfo taskInfo) {
    }

    @Override
    public void onLockTaskModeChanged(int mode) {
    }
}
+6 −0
Original line number Diff line number Diff line
@@ -100,4 +100,10 @@ public abstract class TaskStackChangeListener {

    /** @see ITaskStackListener#onActivityRotation(int)*/
    public void onActivityRotation(int displayId) { }

    /**
     * Called when the lock task mode changes. See ActivityManager#LOCK_TASK_MODE_* and
     * LockTaskController.
     */
    public void onLockTaskModeChanged(int mode) { }
}
+12 −0
Original line number Diff line number Diff line
@@ -93,6 +93,7 @@ public class TaskStackChangeListeners {
        private static final int ON_TASK_LIST_FROZEN_UNFROZEN = 20;
        private static final int ON_TASK_DESCRIPTION_CHANGED = 21;
        private static final int ON_ACTIVITY_ROTATION = 22;
        private static final int ON_LOCK_TASK_MODE_CHANGED = 23;

        /**
         * List of {@link TaskStackChangeListener} registered from {@link #addListener}.
@@ -272,6 +273,11 @@ public class TaskStackChangeListeners {
                    .sendToTarget();
        }

        @Override
        public void onLockTaskModeChanged(int mode) {
            mHandler.obtainMessage(ON_LOCK_TASK_MODE_CHANGED, mode, 0 /* unused */).sendToTarget();
        }

        @Override
        public boolean handleMessage(Message msg) {
            synchronized (mTaskStackListeners) {
@@ -421,6 +427,12 @@ public class TaskStackChangeListeners {
                        }
                        break;
                    }
                    case ON_LOCK_TASK_MODE_CHANGED: {
                        for (int i = mTaskStackListeners.size() - 1; i >= 0; i--) {
                            mTaskStackListeners.get(i).onLockTaskModeChanged(msg.arg1);
                        }
                        break;
                    }
                }
            }
            if (msg.obj instanceof SomeArgs) {
+2 −1
Original line number Diff line number Diff line
@@ -864,7 +864,8 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {

        mTaskChangeNotificationController =
                new TaskChangeNotificationController(mGlobalLock, mTaskSupervisor, mH);
        mLockTaskController = new LockTaskController(mContext, mTaskSupervisor, mH);
        mLockTaskController = new LockTaskController(mContext, mTaskSupervisor, mH,
                mTaskChangeNotificationController);
        mActivityStartController = new ActivityStartController(this);
        setRecentTasks(new RecentTasks(this, mTaskSupervisor));
        mVrController = new VrController(mGlobalLock);
Loading