diff options
author | Jun Mukai <mukai@google.com> | 2015-05-27 00:41:28 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-05-27 00:41:29 +0000 |
commit | bbcf5ac7aa73a3ce07215d77a0b496cf7fb00f29 (patch) | |
tree | 8a104ec5cb7c62fe9789dfbaa3c42274dd3e153f /src | |
parent | d70ad0d09519975927697604ba38d50883a4d3bf (diff) | |
parent | 8af0cd808e62973889cd43e2c989220f27d70dd4 (diff) | |
download | android_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')
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 41 | ||||
-rw-r--r-- | src/com/android/launcher3/LauncherCallbacks.java | 7 | ||||
-rw-r--r-- | src/com/android/launcher3/LauncherExtension.java | 5 |
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; |