summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorJun Mukai <mukai@google.com>2015-05-27 00:41:28 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-05-27 00:41:29 +0000
commitbbcf5ac7aa73a3ce07215d77a0b496cf7fb00f29 (patch)
tree8a104ec5cb7c62fe9789dfbaa3c42274dd3e153f /src/com
parentd70ad0d09519975927697604ba38d50883a4d3bf (diff)
parent8af0cd808e62973889cd43e2c989220f27d70dd4 (diff)
downloadandroid_packages_apps_Trebuchet-bbcf5ac7aa73a3ce07215d77a0b496cf7fb00f29.tar.gz
android_packages_apps_Trebuchet-bbcf5ac7aa73a3ce07215d77a0b496cf7fb00f29.tar.bz2
android_packages_apps_Trebuchet-bbcf5ac7aa73a3ce07215d77a0b496cf7fb00f29.zip
Merge "Introduce LauncherSearchCallback to handle search overlay status." into ub-launcher3-burnaby
Diffstat (limited to 'src/com')
-rw-r--r--src/com/android/launcher3/Launcher.java41
-rw-r--r--src/com/android/launcher3/LauncherCallbacks.java7
-rw-r--r--src/com/android/launcher3/LauncherExtension.java5
3 files changed, 53 insertions, 0 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index 13f7343c9..105dde6e3 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -558,6 +558,35 @@ public class Launcher extends Activity
}
}
});
+ mLauncherCallbacks.setLauncherSearchCallback(new Launcher.LauncherSearchCallbacks() {
+ private boolean mImportanceStored = false;
+ private int mWorkspaceImportanceForAccessibility =
+ View.IMPORTANT_FOR_ACCESSIBILITY_AUTO;
+ private int mHotseatImportanceForAccessibility = View.IMPORTANT_FOR_ACCESSIBILITY_AUTO;
+
+ @Override
+ public void onSearchOverlayOpened() {
+ if (mImportanceStored) {
+ return;
+ }
+ // The underlying workspace and hotseat are temporarily suppressed by the search
+ // overlay. So they sholudn't be accessible.
+ mWorkspaceImportanceForAccessibility = mWorkspace.getImportantForAccessibility();
+ mHotseatImportanceForAccessibility = mHotseat.getImportantForAccessibility();
+ mWorkspace.setImportantForAccessibility(
+ View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS);
+ mHotseat.setImportantForAccessibility(
+ View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS);
+ mImportanceStored = true;
+ }
+
+ @Override
+ public void onSearchOverlayClosed() {
+ mWorkspace.setImportantForAccessibility(mWorkspaceImportanceForAccessibility);
+ mHotseat.setImportantForAccessibility(mHotseatImportanceForAccessibility);
+ mImportanceStored = false;
+ }
+ });
return true;
}
@@ -1207,6 +1236,18 @@ public class Launcher extends Activity
public void dismissAllApps();
}
+ public interface LauncherSearchCallbacks {
+ /**
+ * Called when the search overlay is shown.
+ */
+ public void onSearchOverlayOpened();
+
+ /**
+ * Called when the search overlay is dismissed.
+ */
+ public void onSearchOverlayClosed();
+ }
+
public interface LauncherOverlayCallbacks {
/**
* This method indicates whether a call to {@link #enterFullImmersion()} will succeed,
diff --git a/src/com/android/launcher3/LauncherCallbacks.java b/src/com/android/launcher3/LauncherCallbacks.java
index 0124d1f28..a5f36ba93 100644
--- a/src/com/android/launcher3/LauncherCallbacks.java
+++ b/src/com/android/launcher3/LauncherCallbacks.java
@@ -119,4 +119,11 @@ public interface LauncherCallbacks {
*/
public void setLauncherAppsCallback(Object callbacks);
+ /**
+ * Sets the callbacks to allow reacting the actions of search overlays of the launcher.
+ *
+ * @param callbacks A set of callbacks to the Launcher, is actually a LauncherSearchCallback,
+ * but for implementation purposes is passed around as an object.
+ */
+ public void setLauncherSearchCallback(Object callbacks);
}
diff --git a/src/com/android/launcher3/LauncherExtension.java b/src/com/android/launcher3/LauncherExtension.java
index 14ad6016c..09a105bcc 100644
--- a/src/com/android/launcher3/LauncherExtension.java
+++ b/src/com/android/launcher3/LauncherExtension.java
@@ -289,6 +289,11 @@ public class LauncherExtension extends Launcher {
// Do nothing
}
+ @Override
+ public void setLauncherSearchCallback(Object callbacks) {
+ // Do nothing
+ }
+
class LauncherExtensionOverlay implements LauncherOverlay {
LauncherOverlayCallbacks mLauncherOverlayCallbacks;
ViewGroup mOverlayView;