summaryrefslogtreecommitdiffstats
path: root/views/view.h
diff options
context:
space:
mode:
authordmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-24 18:36:03 +0000
committerdmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-24 18:36:03 +0000
commit84e8bdeaaf5c35c0e55dd9eca21422e7bfdc588f (patch)
treef6acb0420c94ea6a6990cedf68ef563bab0445a3 /views/view.h
parent55098791c5380e4cc3a9be4de11c1b5fa23c8140 (diff)
downloadchromium_src-84e8bdeaaf5c35c0e55dd9eca21422e7bfdc588f.zip
chromium_src-84e8bdeaaf5c35c0e55dd9eca21422e7bfdc588f.tar.gz
chromium_src-84e8bdeaaf5c35c0e55dd9eca21422e7bfdc588f.tar.bz2
Keyboard accessibility for the page and app menus.
Works on Windows, and on Linux with toolkit_views. The goal is to make Chrome behave more like a standard Windows application, for users who rely on the keyboard and expect standard keyboard accelerators to work. Pressing F10, or pressing and releasing Alt, will set focus to the Page menu, as if it was the first item in a menu bar. Pressing enter, space, up arrow, or down arrow will open the focused menu. Once a menu is opened, pressing left and right arrows will switch between the two menus. Pressing escape will return focus to the title of the previously open menu. A new UI test attempts to select something from the menus using only the keyboard. It works on Linux (with toolkit_views) and on Windows. BUG=none TEST=New keyboard accessibility interactive ui test. Review URL: http://codereview.chromium.org/660323 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42498 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/view.h')
-rw-r--r--views/view.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/views/view.h b/views/view.h
index f83793b..f2469f7 100644
--- a/views/view.h
+++ b/views/view.h
@@ -609,6 +609,12 @@ class View : public AcceleratorTarget {
// accessibility focus.
virtual View* GetAccFocusedChildView() { return NULL; }
+ // Try to give accessibility focus to a given child view. Returns true on
+ // success. Returns false if this view isn't already focused, if it doesn't
+ // support accessibility focus for children, or if the given view isn't a
+ // valid child view that can receive accessibility focus.
+ virtual bool SetAccFocusedChildView(View* child_view) { return false; }
+
// Utility functions
// Note that the utility coordinate conversions functions always operate on