diff options
author | Kevin <kevhan@google.com> | 2019-02-27 12:16:37 -0800 |
---|---|---|
committer | Kevin <kevhan@google.com> | 2019-02-27 12:16:37 -0800 |
commit | ccbb4f3bf3a84172a1c8da9dc8ef4e00d6e92042 (patch) | |
tree | 47ec85247ebebc187258bb13dcfec6a42171afaa | |
parent | fd6d850d72297aa46bdb1137f52731186dccb98d (diff) | |
download | android_packages_apps_Trebuchet-ccbb4f3bf3a84172a1c8da9dc8ef4e00d6e92042.tar.gz android_packages_apps_Trebuchet-ccbb4f3bf3a84172a1c8da9dc8ef4e00d6e92042.tar.bz2 android_packages_apps_Trebuchet-ccbb4f3bf3a84172a1c8da9dc8ef4e00d6e92042.zip |
Fix RecentTasksList change id incrementing
The change id in RecentTasksList would never actually increment as we
never register it as a TaskStackListener. As a result, we always execute
the result callback immediately when getting a task and the task list is
always valid.
In addition, when the list IS up to date, we still fetch the list again
in the background when we should instead just return early.
This CL addresses both of these issues.
Test: Added logs to see that task loading wasn't happening when lists
are the same
Change-Id: I228f8d7cd3cb22ef88d71e1bee40708c2bcf26d6
-rw-r--r-- | quickstep/src/com/android/quickstep/RecentTasksList.java | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/quickstep/src/com/android/quickstep/RecentTasksList.java b/quickstep/src/com/android/quickstep/RecentTasksList.java index 00b3e9093..e15a3f1ca 100644 --- a/quickstep/src/com/android/quickstep/RecentTasksList.java +++ b/quickstep/src/com/android/quickstep/RecentTasksList.java @@ -60,6 +60,7 @@ public class RecentTasksList extends TaskStackChangeListener { mBgThreadExecutor = BackgroundExecutor.get(); mKeyguardManager = new KeyguardManagerCompat(context); mChangeId = 1; + ActivityManagerWrapper.getInstance().registerTaskStackListener(this); } /** @@ -97,6 +98,7 @@ public class RecentTasksList extends TaskStackChangeListener { if (mLastLoadedId == mChangeId && (!mLastLoadHadKeysOnly || loadKeysOnly)) { // The list is up to date, callback with the same list mMainThreadExecutor.execute(resultCallback); + return requestLoadId; } // Kick off task loading in the background |