Loading packages/SystemUI/src/com/android/systemui/recents/RecentsImpl.java +6 −3 Original line number Diff line number Diff line Loading @@ -745,7 +745,11 @@ public class RecentsImpl implements ActivityOptions.OnAnimationFinishedListener Task toTask = new Task(); TaskViewTransform toTransform = getThumbnailTransitionTransform(stackView, toTask, windowOverrideRect); Bitmap thumbnail = drawThumbnailTransitionBitmap(toTask, toTransform, // When using a grid layout, the header is already visible on screen at the target // location, making it unnecessary to draw it in the transition thumbnail. Bitmap thumbnail = stackView.useGridLayout() ? mThumbTransitionBitmapCache.createAshmemBitmap() : drawThumbnailTransitionBitmap(toTask, toTransform, mThumbTransitionBitmapCache); if (thumbnail != null) { RectF toTaskRect = toTransform.rect; Loading Loading @@ -777,7 +781,6 @@ public class RecentsImpl implements ActivityOptions.OnAnimationFinishedListener // Get the transform for the running task stackView.updateLayoutAlgorithm(true /* boundScroll */); stackView.updateToInitialState(); boolean isInSplitScreen = Recents.getSystemServices().hasDockedTask(); stackView.getStackAlgorithm().getStackTransformScreenCoordinates(launchTask, stackView.getScroller().getStackScroll(), mTmpTransform, null, windowOverrideRect); return mTmpTransform; Loading packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java +17 −1 Original line number Diff line number Diff line Loading @@ -291,6 +291,9 @@ public class TaskStackLayoutAlgorithm { @ViewDebug.ExportedProperty(category="recents") private int mStackBottomOffset; /** The height, in pixels, of each task view's title bar. */ private int mTitleBarHeight; // The paths defining the motion of the tasks when the stack is focused and unfocused private Path mUnfocusedCurve; private Path mFocusedCurve; Loading Loading @@ -403,6 +406,14 @@ public class TaskStackLayoutAlgorithm { mBaseBottomMargin = res.getDimensionPixelSize(R.dimen.recents_layout_bottom_margin); mFreeformStackGap = res.getDimensionPixelSize(R.dimen.recents_freeform_layout_bottom_margin); mTitleBarHeight = getDimensionForDevice(mContext, R.dimen.recents_task_view_header_height, R.dimen.recents_task_view_header_height, R.dimen.recents_task_view_header_height, R.dimen.recents_task_view_header_height_tablet_land, R.dimen.recents_task_view_header_height, R.dimen.recents_task_view_header_height_tablet_land, R.dimen.recents_grid_task_view_header_height); } /** Loading Loading @@ -903,12 +914,17 @@ public class TaskStackLayoutAlgorithm { * Transforms the given {@param transformOut} to the screen coordinates, overriding the current * window rectangle with {@param windowOverrideRect} if non-null. */ public TaskViewTransform transformToScreenCoordinates(TaskViewTransform transformOut, TaskViewTransform transformToScreenCoordinates(TaskViewTransform transformOut, Rect windowOverrideRect) { Rect windowRect = windowOverrideRect != null ? windowOverrideRect : Recents.getSystemServices().getWindowRect(); transformOut.rect.offset(windowRect.left, windowRect.top); if (useGridLayout()) { // Draw the thumbnail a little lower to perfectly coincide with the view we are // transitioning to, where the header bar has already been drawn. transformOut.rect.offset(0, mTitleBarHeight); } return transformOut; } Loading Loading
packages/SystemUI/src/com/android/systemui/recents/RecentsImpl.java +6 −3 Original line number Diff line number Diff line Loading @@ -745,7 +745,11 @@ public class RecentsImpl implements ActivityOptions.OnAnimationFinishedListener Task toTask = new Task(); TaskViewTransform toTransform = getThumbnailTransitionTransform(stackView, toTask, windowOverrideRect); Bitmap thumbnail = drawThumbnailTransitionBitmap(toTask, toTransform, // When using a grid layout, the header is already visible on screen at the target // location, making it unnecessary to draw it in the transition thumbnail. Bitmap thumbnail = stackView.useGridLayout() ? mThumbTransitionBitmapCache.createAshmemBitmap() : drawThumbnailTransitionBitmap(toTask, toTransform, mThumbTransitionBitmapCache); if (thumbnail != null) { RectF toTaskRect = toTransform.rect; Loading Loading @@ -777,7 +781,6 @@ public class RecentsImpl implements ActivityOptions.OnAnimationFinishedListener // Get the transform for the running task stackView.updateLayoutAlgorithm(true /* boundScroll */); stackView.updateToInitialState(); boolean isInSplitScreen = Recents.getSystemServices().hasDockedTask(); stackView.getStackAlgorithm().getStackTransformScreenCoordinates(launchTask, stackView.getScroller().getStackScroll(), mTmpTransform, null, windowOverrideRect); return mTmpTransform; Loading
packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java +17 −1 Original line number Diff line number Diff line Loading @@ -291,6 +291,9 @@ public class TaskStackLayoutAlgorithm { @ViewDebug.ExportedProperty(category="recents") private int mStackBottomOffset; /** The height, in pixels, of each task view's title bar. */ private int mTitleBarHeight; // The paths defining the motion of the tasks when the stack is focused and unfocused private Path mUnfocusedCurve; private Path mFocusedCurve; Loading Loading @@ -403,6 +406,14 @@ public class TaskStackLayoutAlgorithm { mBaseBottomMargin = res.getDimensionPixelSize(R.dimen.recents_layout_bottom_margin); mFreeformStackGap = res.getDimensionPixelSize(R.dimen.recents_freeform_layout_bottom_margin); mTitleBarHeight = getDimensionForDevice(mContext, R.dimen.recents_task_view_header_height, R.dimen.recents_task_view_header_height, R.dimen.recents_task_view_header_height, R.dimen.recents_task_view_header_height_tablet_land, R.dimen.recents_task_view_header_height, R.dimen.recents_task_view_header_height_tablet_land, R.dimen.recents_grid_task_view_header_height); } /** Loading Loading @@ -903,12 +914,17 @@ public class TaskStackLayoutAlgorithm { * Transforms the given {@param transformOut} to the screen coordinates, overriding the current * window rectangle with {@param windowOverrideRect} if non-null. */ public TaskViewTransform transformToScreenCoordinates(TaskViewTransform transformOut, TaskViewTransform transformToScreenCoordinates(TaskViewTransform transformOut, Rect windowOverrideRect) { Rect windowRect = windowOverrideRect != null ? windowOverrideRect : Recents.getSystemServices().getWindowRect(); transformOut.rect.offset(windowRect.left, windowRect.top); if (useGridLayout()) { // Draw the thumbnail a little lower to perfectly coincide with the view we are // transitioning to, where the header bar has already been drawn. transformOut.rect.offset(0, mTitleBarHeight); } return transformOut; } Loading