diff options
author | Android Build Merger (Role) <noreply-android-build-merger@google.com> | 2018-05-07 20:27:58 +0000 |
---|---|---|
committer | Android Build Merger (Role) <noreply-android-build-merger@google.com> | 2018-05-07 20:27:58 +0000 |
commit | 9cfbb0086753494511de42230a64017618a6d445 (patch) | |
tree | 00a14cebad7a616cdb3743796f81ac6a29f5026b | |
parent | 3fad69c33da01e25e6522632ec5ed23c48fd7eae (diff) | |
parent | a50d99f1c14ef42aa55a1765a1f3084cb342c55a (diff) | |
download | android_packages_apps_Trebuchet-9cfbb0086753494511de42230a64017618a6d445.tar.gz android_packages_apps_Trebuchet-9cfbb0086753494511de42230a64017618a6d445.tar.bz2 android_packages_apps_Trebuchet-9cfbb0086753494511de42230a64017618a6d445.zip |
[automerger] Improving "shortcuts" window for TalkBack users am: a50d99f1c1
Change-Id: I976a0bac56d18c7e832b6f89473182d817eacb28
-rw-r--r-- | res/values/config.xml | 1 | ||||
-rw-r--r-- | res/values/strings.xml | 8 | ||||
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 3 | ||||
-rw-r--r-- | src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java | 11 | ||||
-rw-r--r-- | src/com/android/launcher3/popup/ArrowPopup.java | 7 | ||||
-rw-r--r-- | src/com/android/launcher3/popup/PopupContainerWithArrow.java | 13 |
6 files changed, 19 insertions, 24 deletions
diff --git a/res/values/config.xml b/res/values/config.xml index 9d1bb4110..6158f29b3 100644 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -139,6 +139,7 @@ <item type="id" name="action_move_screen_forwards" /> <item type="id" name="action_resize" /> <item type="id" name="action_deep_shortcuts" /> + <item type="id" name="action_shortcuts_and_notifications"/> <item type="id" name="action_dismiss_notification" /> <!-- QSB IDs. DO not change --> diff --git a/res/values/strings.xml b/res/values/strings.xml index 4fbd806ab..5dc784493 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -310,11 +310,9 @@ <!-- Accessibility action to show quick actions menu for an icon. [CHAR_LIMIT=30] --> <string name="action_deep_shortcut">Shortcuts</string> - - <!-- Accessibility description for the shortcuts menu shown for an app. --> - <string name="shortcuts_menu_description"><xliff:g id="number_of_shortcuts" example="3">%1$d</xliff:g> shortcuts for <xliff:g id="app_name" example="Messenger">%2$s</xliff:g></string> - <!-- Accessibility description when the shortcuts menu has notifications as well as shortcuts. --> - <string name="shortcuts_menu_with_notifications_description"><xliff:g id="number_of_shortcuts" example="3">%1$d</xliff:g> shortcuts and <xliff:g id="number_of_notifications" example="3">%2$d</xliff:g> notifications for <xliff:g id="app_name" example="Messenger">%3$s</xliff:g></string> + <!-- Accessibility description when the shortcuts menu has notifications as well as shortcuts. [CHAR_LIMIT=50] --> + <string name="shortcuts_menu_with_notifications_description">Shortcuts and notifications + </string> <!-- Accessibility action to dismiss a notification in the shortcuts menu for an icon. [CHAR_LIMIT=30] --> <string name="action_dismiss_notification">Dismiss</string> diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 9a9e001c3..d8bb90a71 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -2338,7 +2338,8 @@ public class Launcher extends BaseDraggingActivity } if (currentFocus.getTag() instanceof ItemInfo && DeepShortcutManager.supportsShortcuts((ItemInfo) currentFocus.getTag())) { - shortcutInfos.add(new KeyboardShortcutInfo(getString(R.string.action_deep_shortcut), + shortcutInfos.add(new KeyboardShortcutInfo( + getString(R.string.shortcuts_menu_with_notifications_description), KeyEvent.KEYCODE_S, KeyEvent.META_CTRL_ON)); } if (!shortcutInfos.isEmpty()) { diff --git a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java index e1cb4b8dc..81a0e1d5d 100644 --- a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java +++ b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java @@ -25,8 +25,6 @@ import com.android.launcher3.DropTarget.DragObject; import com.android.launcher3.FolderInfo; import com.android.launcher3.ItemInfo; import com.android.launcher3.Launcher; -import com.android.launcher3.touch.ItemLongClickListener; -import com.android.launcher3.widget.LauncherAppWidgetHostView; import com.android.launcher3.LauncherAppWidgetInfo; import com.android.launcher3.LauncherSettings; import com.android.launcher3.LauncherSettings.Favorites; @@ -37,9 +35,12 @@ import com.android.launcher3.Workspace; import com.android.launcher3.dragndrop.DragController.DragListener; import com.android.launcher3.dragndrop.DragOptions; import com.android.launcher3.folder.Folder; +import com.android.launcher3.notification.NotificationListener; import com.android.launcher3.popup.PopupContainerWithArrow; import com.android.launcher3.shortcuts.DeepShortcutManager; +import com.android.launcher3.touch.ItemLongClickListener; import com.android.launcher3.util.Thunk; +import com.android.launcher3.widget.LauncherAppWidgetHostView; import java.util.ArrayList; @@ -55,6 +56,7 @@ public class LauncherAccessibilityDelegate extends AccessibilityDelegate impleme protected static final int MOVE_TO_WORKSPACE = R.id.action_move_to_workspace; protected static final int RESIZE = R.id.action_resize; public static final int DEEP_SHORTCUTS = R.id.action_deep_shortcuts; + public static final int SHORTCUTS_AND_NOTIFICATIONS = R.id.action_shortcuts_and_notifications; public enum DragType { ICON, @@ -92,6 +94,8 @@ public class LauncherAccessibilityDelegate extends AccessibilityDelegate impleme launcher.getText(R.string.action_resize))); mActions.put(DEEP_SHORTCUTS, new AccessibilityAction(DEEP_SHORTCUTS, launcher.getText(R.string.action_deep_shortcut))); + mActions.put(SHORTCUTS_AND_NOTIFICATIONS, new AccessibilityAction(DEEP_SHORTCUTS, + launcher.getText(R.string.shortcuts_menu_with_notifications_description))); } public void addAccessibilityAction(int action, int actionLabel) { @@ -111,7 +115,8 @@ public class LauncherAccessibilityDelegate extends AccessibilityDelegate impleme // If the request came from keyboard, do not add custom shortcuts as that is already // exposed as a direct shortcut if (!fromKeyboard && DeepShortcutManager.supportsShortcuts(item)) { - info.addAction(mActions.get(DEEP_SHORTCUTS)); + info.addAction(mActions.get(NotificationListener.getInstanceIfConnected() != null + ? SHORTCUTS_AND_NOTIFICATIONS : DEEP_SHORTCUTS)); } for (ButtonDropTarget target : mLauncher.getDropTargetBar().getDropTargets()) { diff --git a/src/com/android/launcher3/popup/ArrowPopup.java b/src/com/android/launcher3/popup/ArrowPopup.java index bd08aaa0e..5589f1714 100644 --- a/src/com/android/launcher3/popup/ArrowPopup.java +++ b/src/com/android/launcher3/popup/ArrowPopup.java @@ -35,7 +35,6 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.ViewOutlineProvider; -import android.view.accessibility.AccessibilityEvent; import android.view.animation.AccelerateDecelerateInterpolator; import com.android.launcher3.AbstractFloatingView; @@ -52,8 +51,6 @@ import com.android.launcher3.util.Themes; import java.util.ArrayList; import java.util.Collections; -import static com.android.launcher3.compat.AccessibilityManagerCompat.sendCustomAccessibilityEvent; - /** * A container for shortcuts to deep links and notifications associated with an app. */ @@ -371,10 +368,6 @@ public abstract class ArrowPopup extends AbstractFloatingView { @Override public void onAnimationEnd(Animator animation) { mOpenCloseAnimator = null; - sendCustomAccessibilityEvent( - ArrowPopup.this, - AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED, - getContext().getString(R.string.action_deep_shortcut)); } }); diff --git a/src/com/android/launcher3/popup/PopupContainerWithArrow.java b/src/com/android/launcher3/popup/PopupContainerWithArrow.java index b522b5513..763eb6fb6 100644 --- a/src/com/android/launcher3/popup/PopupContainerWithArrow.java +++ b/src/com/android/launcher3/popup/PopupContainerWithArrow.java @@ -213,6 +213,7 @@ public class PopupContainerWithArrow extends ArrowPopup implements DragSource, } } + @TargetApi(Build.VERSION_CODES.P) private void populateAndShow(final BubbleTextView originalIcon, final List<String> shortcutIds, final List<NotificationKeyData> notificationKeys, List<SystemShortcut> systemShortcuts) { mNumNotifications = notificationKeys.size(); @@ -261,14 +262,10 @@ public class PopupContainerWithArrow extends ArrowPopup implements DragSource, reorderAndShow(viewsToFlip); ItemInfo originalItemInfo = (ItemInfo) originalIcon.getTag(); - int numShortcuts = mShortcuts.size() + systemShortcuts.size(); - if (mNumNotifications == 0) { - setContentDescription(getContext().getString(R.string.shortcuts_menu_description, - numShortcuts, originalIcon.getContentDescription().toString())); - } else { - setContentDescription(getContext().getString( - R.string.shortcuts_menu_with_notifications_description, numShortcuts, - mNumNotifications, originalIcon.getContentDescription().toString())); + if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { + setAccessibilityPaneTitle(getContext().getString(mNumNotifications == 0 ? + R.string.action_deep_shortcut : + R.string.shortcuts_menu_with_notifications_description)); } mLauncher.getDragController().addDragListener(this); |