From 5c89f44ea16667bf18297ccb9fb10aad639dab1f Mon Sep 17 00:00:00 2001 From: Svetoslav Ganov Date: Tue, 15 May 2012 13:28:09 -0700 Subject: [PATCH] Implement the global accessibility action to expand notifications. bug:6468852 Change-Id: Id4494a07b1ed96773e22dcfdd5991afe3ee98004 --- .../accessibility/AccessibilityManagerService.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/services/java/com/android/server/accessibility/AccessibilityManagerService.java b/services/java/com/android/server/accessibility/AccessibilityManagerService.java index 28ce1dfe965d4..1937bad9a3e6f 100644 --- a/services/java/com/android/server/accessibility/AccessibilityManagerService.java +++ b/services/java/com/android/server/accessibility/AccessibilityManagerService.java @@ -25,6 +25,7 @@ import android.accessibilityservice.AccessibilityServiceInfo; import android.accessibilityservice.IAccessibilityServiceClient; import android.accessibilityservice.IAccessibilityServiceConnection; import android.app.PendingIntent; +import android.app.StatusBarManager; import android.content.BroadcastReceiver; import android.content.ComponentName; import android.content.ContentResolver; @@ -1343,7 +1344,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub sendDownAndUpKeyEvents(KeyEvent.KEYCODE_APP_SWITCH); } return true; case AccessibilityService.GLOBAL_ACTION_NOTIFICATIONS: { - // TODO: Implement when 6346026 is fixed. + expandStatusBar(); } return true; } return false; @@ -1413,6 +1414,16 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub Binder.restoreCallingIdentity(token); } + private void expandStatusBar() { + final long token = Binder.clearCallingIdentity(); + + StatusBarManager statusBarManager = (StatusBarManager) mContext.getSystemService( + android.app.Service.STATUS_BAR_SERVICE); + statusBarManager.expand(); + + Binder.restoreCallingIdentity(token); + } + private IAccessibilityInteractionConnection getConnectionLocked(int windowId) { if (DEBUG) { Slog.i(LOG_TAG, "Trying to get interaction connection to windowId: " + windowId);