Adding accessibility controls
> Adding 'Remove' option to workspace items
> Adding 'Add to workspace' to all apps and widget list items, which
adds the item to the first available space, giving preference to
the current workspace screen
> Adding 'App info' and 'Uninstall' options to appropriate items
Bug: 18482913
Change-Id: Ifab7423af2d9ba502b5a2771b37bb5436b3df937
diff --git a/src/com/android/launcher3/LauncherAppState.java b/src/com/android/launcher3/LauncherAppState.java
index b7c45a3..87e9aae 100644
--- a/src/com/android/launcher3/LauncherAppState.java
+++ b/src/com/android/launcher3/LauncherAppState.java
@@ -32,10 +32,13 @@
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.Display;
+import android.view.View.AccessibilityDelegate;
import android.view.WindowManager;
+
import com.android.launcher3.compat.LauncherAppsCompat;
import com.android.launcher3.compat.PackageInstallerCompat;
import com.android.launcher3.compat.PackageInstallerCompat.PackageInstallInfo;
+
import java.lang.ref.WeakReference;
import java.util.ArrayList;
@@ -62,6 +65,7 @@
private static LauncherAppState INSTANCE;
private DynamicGrid mDynamicGrid;
+ private AccessibilityDelegate mAccessibilityDelegate;
public static LauncherAppState getInstance() {
if (INSTANCE == null) {
@@ -162,9 +166,15 @@
LauncherModel setLauncher(Launcher launcher) {
mModel.initialize(launcher);
+ mAccessibilityDelegate = ((launcher != null) && Utilities.isLmpOrAbove()) ?
+ new LauncherAccessibilityDelegate(launcher) : null;
return mModel;
}
+ AccessibilityDelegate getAccessibilityDelegate() {
+ return mAccessibilityDelegate;
+ }
+
public IconCache getIconCache() {
return mIconCache;
}