diff --git a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java index 48fc7d18fb..39b4f77ffe 100644 --- a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java +++ b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java @@ -186,7 +186,7 @@ public class KeyboardQuickSwitchTaskView extends ConstraintLayout { @NonNull ImageView thumbnailView, @ColorInt int backgroundColor, @Nullable ThumbnailData thumbnailData) { - Bitmap bm = thumbnailData == null ? null : thumbnailData.thumbnail; + Bitmap bm = thumbnailData == null ? null : thumbnailData.getThumbnail(); if (thumbnailView.getVisibility() != VISIBLE) { thumbnailView.setVisibility(VISIBLE); diff --git a/quickstep/src/com/android/quickstep/TaskThumbnailCache.java b/quickstep/src/com/android/quickstep/TaskThumbnailCache.java index f6eef626b6..7ebb767f01 100644 --- a/quickstep/src/com/android/quickstep/TaskThumbnailCache.java +++ b/quickstep/src/com/android/quickstep/TaskThumbnailCache.java @@ -153,7 +153,7 @@ public class TaskThumbnailCache { Preconditions.assertUIThread(); boolean lowResolution = !mHighResLoadingState.isEnabled(); - if (task.thumbnail != null && task.thumbnail.thumbnail != null + if (task.thumbnail != null && task.thumbnail.getThumbnail() != null && (!task.thumbnail.reducedResolution || lowResolution)) { // Nothing to load, the thumbnail is already high-resolution or matches what the // request, so just callback @@ -189,7 +189,7 @@ public class TaskThumbnailCache { Preconditions.assertUIThread(); ThumbnailData cachedThumbnail = mCache.getAndInvalidateIfModified(key); - if (cachedThumbnail != null && cachedThumbnail.thumbnail != null + if (cachedThumbnail != null && cachedThumbnail.getThumbnail() != null && (!cachedThumbnail.reducedResolution || lowResolution)) { // Already cached, lets use that thumbnail callback.accept(cachedThumbnail); @@ -200,7 +200,7 @@ public class TaskThumbnailCache { () -> { ThumbnailData thumbnailData = ActivityManagerWrapper.getInstance() .getTaskThumbnail(key.id, lowResolution); - return thumbnailData.thumbnail != null ? thumbnailData + return thumbnailData.getThumbnail() != null ? thumbnailData : ActivityManagerWrapper.getInstance().takeTaskThumbnail(key.id); }, MAIN_EXECUTOR, @@ -210,7 +210,7 @@ public class TaskThumbnailCache { if (enableGridOnlyOverview() && result.reducedResolution && getHighResLoadingState().isEnabled()) { ThumbnailData newCachedThumbnail = mCache.getAndInvalidateIfModified(key); - if (newCachedThumbnail != null && newCachedThumbnail.thumbnail != null + if (newCachedThumbnail != null && newCachedThumbnail.getThumbnail() != null && !newCachedThumbnail.reducedResolution) { return; } diff --git a/quickstep/src/com/android/quickstep/util/SplitWithKeyboardShortcutController.java b/quickstep/src/com/android/quickstep/util/SplitWithKeyboardShortcutController.java index 85d4f4b3ed..5e42b9001b 100644 --- a/quickstep/src/com/android/quickstep/util/SplitWithKeyboardShortcutController.java +++ b/quickstep/src/com/android/quickstep/util/SplitWithKeyboardShortcutController.java @@ -136,7 +136,7 @@ public class SplitWithKeyboardShortcutController { RectF startingTaskRect = new RectF(); final FloatingTaskView floatingTaskView = FloatingTaskView.getFloatingTaskView( mLauncher, mLauncher.getDragLayer(), - controller.screenshotTask(runningTaskInfo.taskId).thumbnail, + controller.screenshotTask(runningTaskInfo.taskId).getThumbnail(), null /* icon */, startingTaskRect); RecentsModel.INSTANCE.get(mLauncher.getApplicationContext()) .getIconCache() diff --git a/quickstep/src/com/android/quickstep/views/TaskThumbnailViewDeprecated.java b/quickstep/src/com/android/quickstep/views/TaskThumbnailViewDeprecated.java index f7b64969d7..9a792e95d9 100644 --- a/quickstep/src/com/android/quickstep/views/TaskThumbnailViewDeprecated.java +++ b/quickstep/src/com/android/quickstep/views/TaskThumbnailViewDeprecated.java @@ -215,8 +215,8 @@ public class TaskThumbnailViewDeprecated extends View implements ViewPool.Reusab boolean refreshNow) { mTask = task; boolean thumbnailWasNull = mThumbnailData == null; - mThumbnailData = - (thumbnailData != null && thumbnailData.thumbnail != null) ? thumbnailData : null; + mThumbnailData = (thumbnailData != null && thumbnailData.getThumbnail() != null) + ? thumbnailData : null; if (mTask != null) { updateSplashView(mTask.icon); } @@ -241,8 +241,8 @@ public class TaskThumbnailViewDeprecated extends View implements ViewPool.Reusab * @param shouldRefreshOverlay whether to re-initialize overlay */ private void refresh(boolean shouldRefreshOverlay) { - if (mThumbnailData != null && mThumbnailData.thumbnail != null) { - Bitmap bm = mThumbnailData.thumbnail; + if (mThumbnailData != null && mThumbnailData.getThumbnail() != null) { + Bitmap bm = mThumbnailData.getThumbnail(); bm.prepareToDraw(); mBitmapShader = new BitmapShader(bm, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP); mPaint.setShader(mBitmapShader); @@ -306,8 +306,10 @@ public class TaskThumbnailViewDeprecated extends View implements ViewPool.Reusab } RectF bitmapRect = new RectF( - 0, 0, - mThumbnailData.thumbnail.getWidth(), mThumbnailData.thumbnail.getHeight()); + 0, + 0, + mThumbnailData.getThumbnail().getWidth(), + mThumbnailData.getThumbnail().getHeight()); RectF viewRect = new RectF(0, 0, getMeasuredWidth(), getMeasuredHeight()); // The position helper matrix tells us how to transform the bitmap to fit the view, the @@ -506,13 +508,13 @@ public class TaskThumbnailViewDeprecated extends View implements ViewPool.Reusab } private boolean isThumbnailAspectRatioDifferentFromThumbnailData() { - if (mThumbnailData == null || mThumbnailData.thumbnail == null) { + if (mThumbnailData == null || mThumbnailData.getThumbnail() == null) { return false; } float thumbnailViewAspect = getWidth() / (float) getHeight(); - float thumbnailDataAspect = - mThumbnailData.thumbnail.getWidth() / (float) mThumbnailData.thumbnail.getHeight(); + float thumbnailDataAspect = mThumbnailData.getThumbnail().getWidth() + / (float) mThumbnailData.getThumbnail().getHeight(); return isRelativePercentDifferenceGreaterThan(thumbnailViewAspect, thumbnailDataAspect, MAX_PCT_BEFORE_ASPECT_RATIOS_CONSIDERED_DIFFERENT); @@ -563,8 +565,8 @@ public class TaskThumbnailViewDeprecated extends View implements ViewPool.Reusab DeviceProfile dp = mContainer.getDeviceProfile(); mPreviewPositionHelper.setOrientationChanged(false); if (mBitmapShader != null && mThumbnailData != null) { - mPreviewRect.set(0, 0, mThumbnailData.thumbnail.getWidth(), - mThumbnailData.thumbnail.getHeight()); + mPreviewRect.set(0, 0, mThumbnailData.getThumbnail().getWidth(), + mThumbnailData.getThumbnail().getHeight()); int currentRotation = getTaskView().getOrientedState().getRecentsActivityRotation(); boolean isRtl = getLayoutDirection() == LAYOUT_DIRECTION_RTL; mPreviewPositionHelper.updateThumbnailMatrix(mPreviewRect, mThumbnailData, @@ -597,7 +599,7 @@ public class TaskThumbnailViewDeprecated extends View implements ViewPool.Reusab if (mThumbnailData == null) { return null; } - return mThumbnailData.thumbnail; + return mThumbnailData.getThumbnail(); } /**