From 4ba5e6046fea22699f9608c6fc644dcec477dcbe Mon Sep 17 00:00:00 2001 From: Vadim Tryshev Date: Fri, 23 Mar 2018 18:04:52 -0700 Subject: [PATCH] Making task view accessibility-stoppable This is done by associating an accessibility description with it. Bug: 72409756 Test: Touch-explore a task in Overview Change-Id: I988cdc167599406a36c0a3a9bbd0a2ac766ec333 --- quickstep/src/com/android/quickstep/RecentsModel.java | 7 +++++-- quickstep/src/com/android/quickstep/views/TaskView.java | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/quickstep/src/com/android/quickstep/RecentsModel.java b/quickstep/src/com/android/quickstep/RecentsModel.java index 392b73fc63..1e43202a1f 100644 --- a/quickstep/src/com/android/quickstep/RecentsModel.java +++ b/quickstep/src/com/android/quickstep/RecentsModel.java @@ -30,6 +30,7 @@ import android.os.UserHandle; import android.support.annotation.WorkerThread; import android.util.LruCache; import android.util.SparseArray; +import android.view.accessibility.AccessibilityManager; import com.android.launcher3.MainThreadExecutor; import com.android.launcher3.R; @@ -85,6 +86,7 @@ public class RecentsModel extends TaskStackChangeListener { private ISystemUiProxy mSystemUiProxy; private boolean mClearAssistCacheOnStackChange = true; private final boolean mPreloadTasksInBackground; + private final AccessibilityManager mAccessibilityManager; private RecentsModel(Context context) { mContext = context; @@ -111,6 +113,7 @@ public class RecentsModel extends TaskStackChangeListener { mTaskChangeId = 1; loadTasks(-1, null); + mAccessibilityManager = context.getSystemService(AccessibilityManager.class); } public RecentsTaskLoader getRecentsTaskLoader() { @@ -140,7 +143,7 @@ public class RecentsModel extends TaskStackChangeListener { // Preload the plan RecentsTaskLoadPlan loadPlan = new RecentsTaskLoadPlan(mContext); PreloadOptions opts = new PreloadOptions(); - opts.loadTitles = false; + opts.loadTitles = mAccessibilityManager.isEnabled(); loadPlan.preloadPlan(opts, mRecentsTaskLoader, taskId, UserHandle.myUserId()); // Set the load plan on UI thread mMainThreadExecutor.execute(() -> { @@ -187,7 +190,7 @@ public class RecentsModel extends TaskStackChangeListener { launchOpts.onlyLoadPausedActivities = true; launchOpts.loadThumbnails = true; PreloadOptions preloadOpts = new PreloadOptions(); - preloadOpts.loadTitles = false; + preloadOpts.loadTitles = mAccessibilityManager.isEnabled(); plan.preloadPlan(preloadOpts, mRecentsTaskLoader, -1, userId); mRecentsTaskLoader.loadTasks(plan, launchOpts); } diff --git a/quickstep/src/com/android/quickstep/views/TaskView.java b/quickstep/src/com/android/quickstep/views/TaskView.java index 7de1600aef..f474dd6953 100644 --- a/quickstep/src/com/android/quickstep/views/TaskView.java +++ b/quickstep/src/com/android/quickstep/views/TaskView.java @@ -96,6 +96,7 @@ public class TaskView extends FrameLayout implements TaskCallbacks, PageCallback mTask = task; mSnapshotView.bind(); task.addCallback(this); + setContentDescription(task.titleDescription); } public Task getTask() {