summaryrefslogtreecommitdiffstats
path: root/ash/default_accessibility_delegate.cc
diff options
context:
space:
mode:
authorabodenha@chromium.org <abodenha@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-22 19:37:21 +0000
committerabodenha@chromium.org <abodenha@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-22 19:37:21 +0000
commitc69ed2f46fc00694dd2e939241ef7b1a4831cdb2 (patch)
treef03d3266fdfff57abc246dc928c2ddfbca950bb4 /ash/default_accessibility_delegate.cc
parentd225048e30b2b4783c2f98d5aba27fa6df54fc0f (diff)
downloadchromium_src-c69ed2f46fc00694dd2e939241ef7b1a4831cdb2.zip
chromium_src-c69ed2f46fc00694dd2e939241ef7b1a4831cdb2.tar.gz
chromium_src-c69ed2f46fc00694dd2e939241ef7b1a4831cdb2.tar.bz2
Add an accessibility alert for incorrect use of some accelerators.
Some accelerators don't make sense if no windows exist on the desktop. ChromeVox users can end up in this state and not know it. If a window-needing accelerator is issued and there is no window we fire off an accessibiliy event to let the user know there is no window. This CL: Extends Ash's AcceleratorController to intercept these accelerators. Adds the concept of triggering an alert to AccessibilityDelegate. Adds handling in Chrome's AccessibilityDelegate to generate an alert. BUG=217571 TEST=All automated tests pass. Activate ChromeVox and hit ctrl-m with no window open on Chrome OS. You should get an alert telling you to open a window. Review URL: https://codereview.chromium.org/77453013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@236812 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/default_accessibility_delegate.cc')
-rw-r--r--ash/default_accessibility_delegate.cc12
1 files changed, 11 insertions, 1 deletions
diff --git a/ash/default_accessibility_delegate.cc b/ash/default_accessibility_delegate.cc
index bfc6b50..5bce4a5 100644
--- a/ash/default_accessibility_delegate.cc
+++ b/ash/default_accessibility_delegate.cc
@@ -15,7 +15,8 @@ DefaultAccessibilityDelegate::DefaultAccessibilityDelegate()
screen_magnifier_enabled_(false),
screen_magnifier_type_(kDefaultMagnifierType),
large_cursor_enabled_(false),
- autoclick_enabled_(false) {
+ autoclick_enabled_(false),
+ accessibility_alert_(A11Y_ALERT_NONE) {
}
DefaultAccessibilityDelegate::~DefaultAccessibilityDelegate() {}
@@ -83,5 +84,14 @@ double DefaultAccessibilityDelegate::GetSavedScreenMagnifierScale() {
return std::numeric_limits<double>::min();
}
+void DefaultAccessibilityDelegate::TriggerAccessibilityAlert(
+ AccessibilityAlert alert) {
+ accessibility_alert_ = alert;
+}
+
+AccessibilityAlert DefaultAccessibilityDelegate::GetLastAccessibilityAlert() {
+ return accessibility_alert_;
+}
+
} // namespace internal
} // namespace ash