diff options
author | Svetoslav Ganov <svetoslavganov@google.com> | 2012-05-15 10:10:00 -0700 |
---|---|---|
committer | Svetoslav Ganov <svetoslavganov@google.com> | 2012-05-15 11:21:32 -0700 |
commit | 48d1586f4065fc9ab97a679da1e4f7c327c943f2 (patch) | |
tree | 561346718f92462f2bb5d8a20f6ca2c8333c10bb /core/java/android/widget/NumberPicker.java | |
parent | 78cb7cf7d1d82834c4405650a17e387370004570 (diff) | |
download | frameworks_base-48d1586f4065fc9ab97a679da1e4f7c327c943f2.zip frameworks_base-48d1586f4065fc9ab97a679da1e4f7c327c943f2.tar.gz frameworks_base-48d1586f4065fc9ab97a679da1e4f7c327c943f2.tar.bz2 |
Add accessibility scroll support to some widgets.
1. Added support for accessibility scroll action to
some widgets that are scrollable.
2. Making the super call when handling an accessibility
action in the views to call super first to allow
an accessibility delegate to intercept the call.
bug:5932640
Change-Id: I5eb37d64bf9fba1d5c596981132e0df717e2a18a
Diffstat (limited to 'core/java/android/widget/NumberPicker.java')
-rw-r--r-- | core/java/android/widget/NumberPicker.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/core/java/android/widget/NumberPicker.java b/core/java/android/widget/NumberPicker.java index 78d570e..b825e1b 100644 --- a/core/java/android/widget/NumberPicker.java +++ b/core/java/android/widget/NumberPicker.java @@ -2172,6 +2172,18 @@ public class NumberPicker extends LinearLayout { } return false; } + case AccessibilityNodeInfo.ACTION_SCROLL_FORWARD: { + if (getWrapSelectorWheel() || getValue() < getMaxValue()) { + changeValueByOne(true); + return true; + } + } return false; + case AccessibilityNodeInfo.ACTION_SCROLL_BACKWARD: { + if (getWrapSelectorWheel() || getValue() > getMinValue()) { + changeValueByOne(false); + return true; + } + } return false; } } break; case VIRTUAL_VIEW_ID_INPUT: { @@ -2497,6 +2509,12 @@ public class NumberPicker extends LinearLayout { if (mAccessibilityFocusedView == View.NO_ID) { info.addAction(AccessibilityNodeInfo.ACTION_CLEAR_ACCESSIBILITY_FOCUS); } + if (getWrapSelectorWheel() || getValue() < getMaxValue()) { + info.addAction(AccessibilityNodeInfo.ACTION_SCROLL_FORWARD); + } + if (getWrapSelectorWheel() || getValue() > getMinValue()) { + info.addAction(AccessibilityNodeInfo.ACTION_SCROLL_BACKWARD); + } return info; } |