am 815ba2d2: Added accessibility support for the home/all app togle in Launcher2
* commit '815ba2d2eabded5ffee53fba668d63ca9173e6fd':
Added accessibility support for the home/all app togle in Launcher2
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index 83f13aa..1ec326b 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -88,6 +88,7 @@
import android.view.ViewGroup;
import android.view.WindowManager;
import android.view.View.OnLongClickListener;
+import android.view.accessibility.AccessibilityEvent;
import android.view.inputmethod.InputMethodManager;
import android.widget.Advanceable;
import android.widget.EditText;
@@ -416,6 +417,21 @@
}
}
+ @Override
+ public boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event) {
+ super.dispatchPopulateAccessibilityEvent(event);
+
+ // we want to take over text population so it is context dependent
+ event.getText().clear();
+ if (mState == State.ALL_APPS) {
+ event.getText().add(getString(R.string.all_apps_button_label));
+ } else if (mState == State.WORKSPACE) {
+ event.getText().add(getString(R.string.all_apps_home_button_label));
+ }
+
+ return true;
+ }
+
private void checkForLocaleChange() {
if (sLocaleConfiguration == null) {
new AsyncTask<Void, Void, LocaleConfiguration>() {
@@ -2878,8 +2894,10 @@
// Change the state *after* we've called all the transition code
mState = State.ALL_APPS;
- }
+ // send an accessibility event to announce the context change
+ getWindow().getDecorView().sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_SELECTED);
+ }
void showWorkspace(boolean animated) {
showWorkspace(animated, null);
@@ -2901,6 +2919,9 @@
// Change the state *after* we've called all the transition code
mState = State.WORKSPACE;
+
+ // send an accessibility event to announce the context change
+ getWindow().getDecorView().sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_SELECTED);
}
void enterSpringLoadedDragMode(CellLayout layout) {