Loading libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/TvPipBoundsController.java +4 −2 Original line number Original line Diff line number Diff line Loading @@ -125,7 +125,9 @@ public class TvPipBoundsController { cancelScheduledPlacement(); cancelScheduledPlacement(); applyPlacement(placement, shouldStash, animationDuration); applyPlacement(placement, shouldStash, animationDuration); } else { } else { if (mCurrentPlacementBounds != null) { applyPlacementBounds(mCurrentPlacementBounds, animationDuration); applyPlacementBounds(mCurrentPlacementBounds, animationDuration); } schedulePinnedStackPlacement(placement, animationDuration); schedulePinnedStackPlacement(placement, animationDuration); } } } } Loading Loading @@ -188,7 +190,7 @@ public class TvPipBoundsController { applyPlacementBounds(bounds, animationDuration); applyPlacementBounds(bounds, animationDuration); } } void onPipDismissed() { void reset() { mCurrentPlacementBounds = null; mCurrentPlacementBounds = null; mPipTargetBounds = null; mPipTargetBounds = null; cancelScheduledPlacement(); cancelScheduledPlacement(); Loading libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/TvPipController.java +11 −14 Original line number Original line Diff line number Diff line Loading @@ -450,18 +450,6 @@ public class TvPipController implements PipTransitionController.PipTransitionCal mPipMediaController.registerSessionListenerForCurrentUser(); mPipMediaController.registerSessionListenerForCurrentUser(); } } private void checkIfPinnedTaskAppeared() { final TaskInfo pinnedTask = getPinnedTaskInfo(); ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: checkIfPinnedTaskAppeared(), task=%s", TAG, pinnedTask); if (pinnedTask == null || pinnedTask.topActivity == null) return; mPinnedTaskId = pinnedTask.taskId; mPipMediaController.onActivityPinned(); mActionBroadcastReceiver.register(); mPipNotificationController.show(pinnedTask.topActivity.getPackageName()); } private void checkIfPinnedTaskIsGone() { private void checkIfPinnedTaskIsGone() { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: onTaskStackChanged()", TAG); "%s: onTaskStackChanged()", TAG); Loading @@ -482,7 +470,7 @@ public class TvPipController implements PipTransitionController.PipTransitionCal mTvPipMenuController.closeMenu(); mTvPipMenuController.closeMenu(); mTvPipBoundsState.resetTvPipState(); mTvPipBoundsState.resetTvPipState(); mTvPipBoundsController.onPipDismissed(); mTvPipBoundsController.reset(); setState(STATE_NO_PIP); setState(STATE_NO_PIP); mPinnedTaskId = NONEXISTENT_TASK_ID; mPinnedTaskId = NONEXISTENT_TASK_ID; } } Loading Loading @@ -537,7 +525,16 @@ public class TvPipController implements PipTransitionController.PipTransitionCal taskStackListener.addListener(new TaskStackListenerCallback() { taskStackListener.addListener(new TaskStackListenerCallback() { @Override @Override public void onActivityPinned(String packageName, int userId, int taskId, int stackId) { public void onActivityPinned(String packageName, int userId, int taskId, int stackId) { checkIfPinnedTaskAppeared(); final TaskInfo pinnedTask = getPinnedTaskInfo(); ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: onActivityPinned(), task=%s", TAG, pinnedTask); if (pinnedTask == null || pinnedTask.topActivity == null) return; mPinnedTaskId = pinnedTask.taskId; mPipMediaController.onActivityPinned(); mActionBroadcastReceiver.register(); mPipNotificationController.show(pinnedTask.topActivity.getPackageName()); mTvPipBoundsController.reset(); mAppOpsListener.onActivityPinned(packageName); mAppOpsListener.onActivityPinned(packageName); } } Loading Loading
libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/TvPipBoundsController.java +4 −2 Original line number Original line Diff line number Diff line Loading @@ -125,7 +125,9 @@ public class TvPipBoundsController { cancelScheduledPlacement(); cancelScheduledPlacement(); applyPlacement(placement, shouldStash, animationDuration); applyPlacement(placement, shouldStash, animationDuration); } else { } else { if (mCurrentPlacementBounds != null) { applyPlacementBounds(mCurrentPlacementBounds, animationDuration); applyPlacementBounds(mCurrentPlacementBounds, animationDuration); } schedulePinnedStackPlacement(placement, animationDuration); schedulePinnedStackPlacement(placement, animationDuration); } } } } Loading Loading @@ -188,7 +190,7 @@ public class TvPipBoundsController { applyPlacementBounds(bounds, animationDuration); applyPlacementBounds(bounds, animationDuration); } } void onPipDismissed() { void reset() { mCurrentPlacementBounds = null; mCurrentPlacementBounds = null; mPipTargetBounds = null; mPipTargetBounds = null; cancelScheduledPlacement(); cancelScheduledPlacement(); Loading
libs/WindowManager/Shell/src/com/android/wm/shell/pip/tv/TvPipController.java +11 −14 Original line number Original line Diff line number Diff line Loading @@ -450,18 +450,6 @@ public class TvPipController implements PipTransitionController.PipTransitionCal mPipMediaController.registerSessionListenerForCurrentUser(); mPipMediaController.registerSessionListenerForCurrentUser(); } } private void checkIfPinnedTaskAppeared() { final TaskInfo pinnedTask = getPinnedTaskInfo(); ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: checkIfPinnedTaskAppeared(), task=%s", TAG, pinnedTask); if (pinnedTask == null || pinnedTask.topActivity == null) return; mPinnedTaskId = pinnedTask.taskId; mPipMediaController.onActivityPinned(); mActionBroadcastReceiver.register(); mPipNotificationController.show(pinnedTask.topActivity.getPackageName()); } private void checkIfPinnedTaskIsGone() { private void checkIfPinnedTaskIsGone() { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: onTaskStackChanged()", TAG); "%s: onTaskStackChanged()", TAG); Loading @@ -482,7 +470,7 @@ public class TvPipController implements PipTransitionController.PipTransitionCal mTvPipMenuController.closeMenu(); mTvPipMenuController.closeMenu(); mTvPipBoundsState.resetTvPipState(); mTvPipBoundsState.resetTvPipState(); mTvPipBoundsController.onPipDismissed(); mTvPipBoundsController.reset(); setState(STATE_NO_PIP); setState(STATE_NO_PIP); mPinnedTaskId = NONEXISTENT_TASK_ID; mPinnedTaskId = NONEXISTENT_TASK_ID; } } Loading Loading @@ -537,7 +525,16 @@ public class TvPipController implements PipTransitionController.PipTransitionCal taskStackListener.addListener(new TaskStackListenerCallback() { taskStackListener.addListener(new TaskStackListenerCallback() { @Override @Override public void onActivityPinned(String packageName, int userId, int taskId, int stackId) { public void onActivityPinned(String packageName, int userId, int taskId, int stackId) { checkIfPinnedTaskAppeared(); final TaskInfo pinnedTask = getPinnedTaskInfo(); ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: onActivityPinned(), task=%s", TAG, pinnedTask); if (pinnedTask == null || pinnedTask.topActivity == null) return; mPinnedTaskId = pinnedTask.taskId; mPipMediaController.onActivityPinned(); mActionBroadcastReceiver.register(); mPipNotificationController.show(pinnedTask.topActivity.getPackageName()); mTvPipBoundsController.reset(); mAppOpsListener.onActivityPinned(packageName); mAppOpsListener.onActivityPinned(packageName); } } Loading