diff options
author | Winson Chung <winsonc@google.com> | 2019-05-14 20:48:47 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2019-05-14 20:48:47 +0000 |
commit | 3658d9fa0cf5c3629dd7e65494b4d2fbe7aab2e6 (patch) | |
tree | a145674af8df08578dcff1129fc886cef05d7bdd /quickstep/src | |
parent | 348b0ad3cb20331b105cc167d0e72b2f6219d0c0 (diff) | |
parent | cb554473c742967f95a36c9be83f6ec7ef1ac247 (diff) | |
download | android_packages_apps_Trebuchet-3658d9fa0cf5c3629dd7e65494b4d2fbe7aab2e6.tar.gz android_packages_apps_Trebuchet-3658d9fa0cf5c3629dd7e65494b4d2fbe7aab2e6.tar.bz2 android_packages_apps_Trebuchet-3658d9fa0cf5c3629dd7e65494b4d2fbe7aab2e6.zip |
Merge "Preemptively clear the thumbnail cache as tasks are removed" into ub-launcher3-qt-dev
Diffstat (limited to 'quickstep/src')
3 files changed, 23 insertions, 0 deletions
diff --git a/quickstep/src/com/android/quickstep/RecentTasksList.java b/quickstep/src/com/android/quickstep/RecentTasksList.java index 06a36c9f0..353837312 100644 --- a/quickstep/src/com/android/quickstep/RecentTasksList.java +++ b/quickstep/src/com/android/quickstep/RecentTasksList.java @@ -120,6 +120,16 @@ public class RecentTasksList extends TaskStackChangeListener { } @Override + public void onTaskRemoved(int taskId) { + for (int i = mTasks.size() - 1; i >= 0; i--) { + if (mTasks.get(i).key.id == taskId) { + mTasks.remove(i); + return; + } + } + } + + @Override public synchronized void onActivityPinned(String packageName, int userId, int taskId, int stackId) { mChangeId++; diff --git a/quickstep/src/com/android/quickstep/RecentsModel.java b/quickstep/src/com/android/quickstep/RecentsModel.java index 675cfe2ef..9f1248458 100644 --- a/quickstep/src/com/android/quickstep/RecentsModel.java +++ b/quickstep/src/com/android/quickstep/RecentsModel.java @@ -166,6 +166,12 @@ public class RecentsModel extends TaskStackChangeListener { } } + @Override + public void onTaskRemoved(int taskId) { + Task.TaskKey dummyKey = new Task.TaskKey(taskId, 0, null, null, 0, 0); + mThumbnailCache.remove(dummyKey); + } + public void setSystemUiProxy(ISystemUiProxy systemUiProxy) { mSystemUiProxy = systemUiProxy; } diff --git a/quickstep/src/com/android/quickstep/TaskThumbnailCache.java b/quickstep/src/com/android/quickstep/TaskThumbnailCache.java index d05196bc8..57c5a2783 100644 --- a/quickstep/src/com/android/quickstep/TaskThumbnailCache.java +++ b/quickstep/src/com/android/quickstep/TaskThumbnailCache.java @@ -187,6 +187,13 @@ public class TaskThumbnailCache { } /** + * Removes the cached thumbnail for the given task. + */ + public void remove(Task.TaskKey key) { + mCache.remove(key); + } + + /** * @return The cache size. */ public int getCacheSize() { |