summaryrefslogtreecommitdiffstats
path: root/content/browser/accessibility/browser_accessibility_manager_android.cc
diff options
context:
space:
mode:
authordmazzoni <dmazzoni@chromium.org>2015-06-19 11:21:33 -0700
committerCommit bot <commit-bot@chromium.org>2015-06-19 18:22:11 +0000
commit9fb23b32cdc2864c1ec142e307343abfb1dbdf91 (patch)
tree1ac3dbe6ecdb4a213a48ed70d423c6e5cef900e0 /content/browser/accessibility/browser_accessibility_manager_android.cc
parentaa0a6946ec4d465cc5fbfd4b983b2409fb340c37 (diff)
downloadchromium_src-9fb23b32cdc2864c1ec142e307343abfb1dbdf91.zip
chromium_src-9fb23b32cdc2864c1ec142e307343abfb1dbdf91.tar.gz
chromium_src-9fb23b32cdc2864c1ec142e307343abfb1dbdf91.tar.bz2
Implement accessible scroll actions on Android.
Previously we only exposed scroll information for the main frame, now we expose scroll information and support scrolling actions on all scrollable objects. Depends on: https://codereview.chromium.org/1121473004/ BUG=483653 Review URL: https://codereview.chromium.org/1136523007 Cr-Commit-Position: refs/heads/master@{#335299}
Diffstat (limited to 'content/browser/accessibility/browser_accessibility_manager_android.cc')
-rw-r--r--content/browser/accessibility/browser_accessibility_manager_android.cc24
1 files changed, 24 insertions, 0 deletions
diff --git a/content/browser/accessibility/browser_accessibility_manager_android.cc b/content/browser/accessibility/browser_accessibility_manager_android.cc
index 79f2b1c..703d800 100644
--- a/content/browser/accessibility/browser_accessibility_manager_android.cc
+++ b/content/browser/accessibility/browser_accessibility_manager_android.cc
@@ -269,6 +269,10 @@ jboolean BrowserAccessibilityManagerAndroid::PopulateAccessibilityNodeInfo(
id,
node->CanScrollForward(),
node->CanScrollBackward(),
+ node->CanScrollUp(),
+ node->CanScrollDown(),
+ node->CanScrollLeft(),
+ node->CanScrollRight(),
node->IsClickable(),
node->IsEditableText(),
node->IsEnabled(),
@@ -735,6 +739,26 @@ void BrowserAccessibilityManagerAndroid::SetAccessibilityFocus(
delegate_->AccessibilitySetAccessibilityFocus(id);
}
+bool BrowserAccessibilityManagerAndroid::IsSlider(
+ JNIEnv* env, jobject obj, jint id) {
+ BrowserAccessibilityAndroid* node = static_cast<BrowserAccessibilityAndroid*>(
+ GetFromID(id));
+ if (!node)
+ return false;
+
+ return node->GetRole() == ui::AX_ROLE_SLIDER;
+}
+
+bool BrowserAccessibilityManagerAndroid::Scroll(
+ JNIEnv* env, jobject obj, jint id, int direction) {
+ BrowserAccessibilityAndroid* node = static_cast<BrowserAccessibilityAndroid*>(
+ GetFromID(id));
+ if (!node)
+ return false;
+
+ return node->Scroll(direction);
+}
+
void BrowserAccessibilityManagerAndroid::OnAtomicUpdateFinished(
ui::AXTree* tree,
bool root_changed,