summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2016-06-17 08:43:56 -0700
committerSunny Goyal <sunnygoyal@google.com>2016-06-17 08:44:51 -0700
commitae50284e0a838139c67caf0064a0977c871497fa (patch)
tree45147a676bc32b604a9c64808a3a836de748e3a4
parentbb011dad4e69bec027be1e00d573a3095b318b43 (diff)
downloadandroid_packages_apps_Trebuchet-ae50284e0a838139c67caf0064a0977c871497fa.tar.gz
android_packages_apps_Trebuchet-ae50284e0a838139c67caf0064a0977c871497fa.tar.bz2
android_packages_apps_Trebuchet-ae50284e0a838139c67caf0064a0977c871497fa.zip
Moving LauncherAccessibilityDelegate to Launcher to associate it with
activity lifecycle. Change-Id: Ib815505677fa7ed74bdcfe7141b1d9bea5d7143a
-rw-r--r--src/com/android/launcher3/BubbleTextView.java2
-rw-r--r--src/com/android/launcher3/ButtonDropTarget.java3
-rw-r--r--src/com/android/launcher3/Launcher.java7
-rw-r--r--src/com/android/launcher3/LauncherAppState.java12
-rw-r--r--src/com/android/launcher3/LauncherAppWidgetHostView.java2
-rw-r--r--src/com/android/launcher3/Workspace.java9
-rw-r--r--src/com/android/launcher3/accessibility/DragAndDropAccessibilityDelegate.java4
-rw-r--r--src/com/android/launcher3/allapps/AllAppsGridAdapter.java6
-rw-r--r--src/com/android/launcher3/dragndrop/DragLayer.java4
-rw-r--r--src/com/android/launcher3/folder/FolderIcon.java3
-rw-r--r--src/com/android/launcher3/widget/WidgetCell.java2
11 files changed, 21 insertions, 33 deletions
diff --git a/src/com/android/launcher3/BubbleTextView.java b/src/com/android/launcher3/BubbleTextView.java
index 5d0f78308..be00aec34 100644
--- a/src/com/android/launcher3/BubbleTextView.java
+++ b/src/com/android/launcher3/BubbleTextView.java
@@ -143,7 +143,7 @@ public class BubbleTextView extends TextView
setShadowLayer(SHADOW_LARGE_RADIUS, 0.0f, SHADOW_Y_OFFSET, SHADOW_LARGE_COLOUR);
}
- setAccessibilityDelegate(LauncherAppState.getInstance().getAccessibilityDelegate());
+ setAccessibilityDelegate(mLauncher.getAccessibilityDelegate());
}
public void applyFromShortcutInfo(ShortcutInfo info, IconCache iconCache) {
diff --git a/src/com/android/launcher3/ButtonDropTarget.java b/src/com/android/launcher3/ButtonDropTarget.java
index 61ac713a5..5a4ed2f54 100644
--- a/src/com/android/launcher3/ButtonDropTarget.java
+++ b/src/com/android/launcher3/ButtonDropTarget.java
@@ -312,8 +312,7 @@ public abstract class ButtonDropTarget extends TextView
@Override
public void onClick(View v) {
- LauncherAppState.getInstance().getAccessibilityDelegate()
- .handleAccessibleDrop(this, null, null);
+ mLauncher.getAccessibilityDelegate().handleAccessibleDrop(this, null, null);
}
public int getTextColor() {
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index d768ea87c..156c1b0b0 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -92,6 +92,7 @@ import android.widget.Toast;
import com.android.launcher3.DropTarget.DragObject;
import com.android.launcher3.LauncherSettings.Favorites;
+import com.android.launcher3.accessibility.LauncherAccessibilityDelegate;
import com.android.launcher3.allapps.AllAppsContainerView;
import com.android.launcher3.allapps.AllAppsTransitionController;
import com.android.launcher3.allapps.DefaultAppSearchController;
@@ -286,6 +287,7 @@ public class Launcher extends Activity
private LauncherModel mModel;
private IconCache mIconCache;
private ExtractedColors mExtractedColors;
+ private LauncherAccessibilityDelegate mAccessibilityDelegate;
@Thunk boolean mUserPresent = true;
private boolean mVisible = false;
private boolean mHasFocus = false;
@@ -414,6 +416,7 @@ public class Launcher extends Activity
mIsSafeModeEnabled = getPackageManager().isSafeMode();
mModel = app.setLauncher(this);
mIconCache = app.getIconCache();
+ mAccessibilityDelegate = new LauncherAccessibilityDelegate(this);
mDragController = new DragController(this);
mAllAppsController = new AllAppsTransitionController(this);
@@ -1999,6 +2002,10 @@ public class Launcher extends Activity
}
}
+ public LauncherAccessibilityDelegate getAccessibilityDelegate() {
+ return mAccessibilityDelegate;
+ }
+
public DragController getDragController() {
return mDragController;
}
diff --git a/src/com/android/launcher3/LauncherAppState.java b/src/com/android/launcher3/LauncherAppState.java
index ae3abbf61..c2e7f1aac 100644
--- a/src/com/android/launcher3/LauncherAppState.java
+++ b/src/com/android/launcher3/LauncherAppState.java
@@ -16,20 +16,18 @@
package com.android.launcher3;
-import android.app.SearchManager;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.util.Log;
-import com.android.launcher3.accessibility.LauncherAccessibilityDelegate;
import com.android.launcher3.compat.LauncherAppsCompat;
import com.android.launcher3.compat.PackageInstallerCompat;
import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.dynamicui.ExtractionUtils;
-import com.android.launcher3.util.ConfigMonitor;
import com.android.launcher3.logging.FileLog;
+import com.android.launcher3.util.ConfigMonitor;
import com.android.launcher3.util.TestingUtils;
import com.android.launcher3.util.Thunk;
@@ -51,8 +49,6 @@ public class LauncherAppState {
private InvariantDeviceProfile mInvariantDeviceProfile;
- private LauncherAccessibilityDelegate mAccessibilityDelegate;
-
public static LauncherAppState getInstance() {
if (INSTANCE == null) {
INSTANCE = new LauncherAppState();
@@ -154,15 +150,9 @@ public class LauncherAppState {
LauncherModel setLauncher(Launcher launcher) {
sLauncherProvider.get().setLauncherProviderChangeListener(launcher);
mModel.initialize(launcher);
- mAccessibilityDelegate = ((launcher != null) && Utilities.ATLEAST_LOLLIPOP) ?
- new LauncherAccessibilityDelegate(launcher) : null;
return mModel;
}
- public LauncherAccessibilityDelegate getAccessibilityDelegate() {
- return mAccessibilityDelegate;
- }
-
public IconCache getIconCache() {
return mIconCache;
}
diff --git a/src/com/android/launcher3/LauncherAppWidgetHostView.java b/src/com/android/launcher3/LauncherAppWidgetHostView.java
index 53d9c0455..d371a869c 100644
--- a/src/com/android/launcher3/LauncherAppWidgetHostView.java
+++ b/src/com/android/launcher3/LauncherAppWidgetHostView.java
@@ -63,7 +63,7 @@ public class LauncherAppWidgetHostView extends AppWidgetHostView implements Touc
mStylusEventHelper = new StylusEventHelper(new SimpleOnStylusPressListener(this), this);
mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mDragLayer = ((Launcher) context).getDragLayer();
- setAccessibilityDelegate(LauncherAppState.getInstance().getAccessibilityDelegate());
+ setAccessibilityDelegate(((Launcher) context).getAccessibilityDelegate());
setBackgroundResource(R.drawable.widget_internal_focus_bg);
}
diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java
index cb88fc6bd..0e4fe8b19 100644
--- a/src/com/android/launcher3/Workspace.java
+++ b/src/com/android/launcher3/Workspace.java
@@ -601,9 +601,7 @@ public class Workspace extends PagedView
mScreenOrder.add(insertIndex, screenId);
addView(newScreen, insertIndex);
- LauncherAccessibilityDelegate delegate =
- LauncherAppState.getInstance().getAccessibilityDelegate();
- if (delegate != null && delegate.isInAccessibleDrag()) {
+ if (mLauncher.getAccessibilityDelegate().isInAccessibleDrag()) {
newScreen.enableAccessibleDrag(true, CellLayout.WORKSPACE_ACCESSIBILITY_DRAG);
}
@@ -918,8 +916,7 @@ public class Workspace extends PagedView
}
}
- LauncherAccessibilityDelegate delegate =
- LauncherAppState.getInstance().getAccessibilityDelegate();
+ boolean isInAccessibleDrag = mLauncher.getAccessibilityDelegate().isInAccessibleDrag();
// We enforce at least one page to add new items to. In the case that we remove the last
// such screen, we convert the last screen to the empty screen
@@ -936,7 +933,7 @@ public class Workspace extends PagedView
pageShift++;
}
- if (delegate != null && delegate.isInAccessibleDrag()) {
+ if (isInAccessibleDrag) {
cl.enableAccessibleDrag(false, CellLayout.WORKSPACE_ACCESSIBILITY_DRAG);
}
diff --git a/src/com/android/launcher3/accessibility/DragAndDropAccessibilityDelegate.java b/src/com/android/launcher3/accessibility/DragAndDropAccessibilityDelegate.java
index 78accf720..4efe445f7 100644
--- a/src/com/android/launcher3/accessibility/DragAndDropAccessibilityDelegate.java
+++ b/src/com/android/launcher3/accessibility/DragAndDropAccessibilityDelegate.java
@@ -26,7 +26,7 @@ import android.view.View.OnClickListener;
import android.view.accessibility.AccessibilityEvent;
import com.android.launcher3.CellLayout;
-import com.android.launcher3.LauncherAppState;
+import com.android.launcher3.Launcher;
import com.android.launcher3.R;
import java.util.List;
@@ -50,7 +50,7 @@ public abstract class DragAndDropAccessibilityDelegate extends ExploreByTouchHel
super(forView);
mView = forView;
mContext = mView.getContext();
- mDelegate = LauncherAppState.getInstance().getAccessibilityDelegate();
+ mDelegate = ((Launcher) mContext).getAccessibilityDelegate();
}
@Override
diff --git a/src/com/android/launcher3/allapps/AllAppsGridAdapter.java b/src/com/android/launcher3/allapps/AllAppsGridAdapter.java
index c2a319cc8..c68356ed5 100644
--- a/src/com/android/launcher3/allapps/AllAppsGridAdapter.java
+++ b/src/com/android/launcher3/allapps/AllAppsGridAdapter.java
@@ -490,16 +490,14 @@ public class AllAppsGridAdapter extends RecyclerView.Adapter<AllAppsGridAdapter.
AppInfo info = mApps.getAdapterItems().get(position).appInfo;
BubbleTextView icon = (BubbleTextView) holder.mContent;
icon.applyFromApplicationInfo(info);
- icon.setAccessibilityDelegate(
- LauncherAppState.getInstance().getAccessibilityDelegate());
+ icon.setAccessibilityDelegate(mLauncher.getAccessibilityDelegate());
break;
}
case PREDICTION_ICON_VIEW_TYPE: {
AppInfo info = mApps.getAdapterItems().get(position).appInfo;
BubbleTextView icon = (BubbleTextView) holder.mContent;
icon.applyFromApplicationInfo(info);
- icon.setAccessibilityDelegate(
- LauncherAppState.getInstance().getAccessibilityDelegate());
+ icon.setAccessibilityDelegate(mLauncher.getAccessibilityDelegate());
break;
}
case EMPTY_SEARCH_VIEW_TYPE:
diff --git a/src/com/android/launcher3/dragndrop/DragLayer.java b/src/com/android/launcher3/dragndrop/DragLayer.java
index c62353dfd..496693835 100644
--- a/src/com/android/launcher3/dragndrop/DragLayer.java
+++ b/src/com/android/launcher3/dragndrop/DragLayer.java
@@ -339,9 +339,7 @@ public class DragLayer extends InsettableFrameLayout {
}
private boolean isInAccessibleDrag() {
- LauncherAccessibilityDelegate delegate = LauncherAppState
- .getInstance().getAccessibilityDelegate();
- return delegate != null && delegate.isInAccessibleDrag();
+ return mLauncher.getAccessibilityDelegate().isInAccessibleDrag();
}
@Override
diff --git a/src/com/android/launcher3/folder/FolderIcon.java b/src/com/android/launcher3/folder/FolderIcon.java
index 157a97096..d7952c570 100644
--- a/src/com/android/launcher3/folder/FolderIcon.java
+++ b/src/com/android/launcher3/folder/FolderIcon.java
@@ -144,8 +144,6 @@ public class FolderIcon extends FrameLayout implements FolderListener {
mPreviewLayoutRule = FeatureFlags.LAUNCHER3_LEGACY_FOLDER_ICON ?
new StackFolderIconLayoutRule() :
new ClippedFolderIconLayoutRule();
-
- setAccessibilityDelegate(LauncherAppState.getInstance().getAccessibilityDelegate());
}
public static FolderIcon fromXml(int resId, Launcher launcher, ViewGroup group,
@@ -183,6 +181,7 @@ public class FolderIcon extends FrameLayout implements FolderListener {
folder.setFolderIcon(icon);
folder.bind(folderInfo);
icon.setFolder(folder);
+ icon.setAccessibilityDelegate(launcher.getAccessibilityDelegate());
folderInfo.addListener(icon);
diff --git a/src/com/android/launcher3/widget/WidgetCell.java b/src/com/android/launcher3/widget/WidgetCell.java
index 3ad03ae41..ad32f9240 100644
--- a/src/com/android/launcher3/widget/WidgetCell.java
+++ b/src/com/android/launcher3/widget/WidgetCell.java
@@ -94,7 +94,7 @@ public class WidgetCell extends LinearLayout implements OnLayoutChangeListener {
setContainerWidth();
setWillNotDraw(false);
setClipToPadding(false);
- setAccessibilityDelegate(LauncherAppState.getInstance().getAccessibilityDelegate());
+ setAccessibilityDelegate(mLauncher.getAccessibilityDelegate());
}
private void setContainerWidth() {