diff options
author | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-09 07:05:20 +0000 |
---|---|---|
committer | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-09 07:05:20 +0000 |
commit | cd3e2d90d3030ad3e271098b15d2f60db13ba09a (patch) | |
tree | d3333f31da08d07237d6a1f1f66fd14fc2fdec55 /content/browser/accessibility/browser_accessibility.h | |
parent | 45056077ba7064c4b539d95111d0f62b3755deb3 (diff) | |
download | chromium_src-cd3e2d90d3030ad3e271098b15d2f60db13ba09a.zip chromium_src-cd3e2d90d3030ad3e271098b15d2f60db13ba09a.tar.gz chromium_src-cd3e2d90d3030ad3e271098b15d2f60db13ba09a.tar.bz2 |
Add initial GTK web accessibility framework (third attempt).
Previous attempts to land this patch:
1. http://codereview.chromium.org/9839069/
2. http://codereview.chromium.org/10382013/
The previous attempts failed to land due to test failures and problems
depending on libatk with the official Linux build. The build is now resolved,
and the test failures have been fixed by adding an IsNative method to
BrowserAccessibility. Please look carefully at the IsNative calls in the
code; the rest is the same.
Original description:
This enables Linux desktop assistive technology such as the Orca screen
reader to access the web contents. Builds on the same accessibility stack
used by Mac & Windows already.
This change works with Orca now, but it's minimal: all that works is getting
the correct feedback when you tab through focusable links and controls in
a webpage. Future changes will add the rest of the support.
BUG=24585
TEST=Run Chrome on desktop Linux with Orca turned on, tab through links.
Review URL: https://chromiumcodereview.appspot.com/10382051
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@135998 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/accessibility/browser_accessibility.h')
-rw-r--r-- | content/browser/accessibility/browser_accessibility.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/content/browser/accessibility/browser_accessibility.h b/content/browser/accessibility/browser_accessibility.h index 0fbb3eb..0589410 100644 --- a/content/browser/accessibility/browser_accessibility.h +++ b/content/browser/accessibility/browser_accessibility.h @@ -20,6 +20,8 @@ class BrowserAccessibilityManager; @class BrowserAccessibilityCocoa; #elif defined(OS_WIN) class BrowserAccessibilityWin; +#elif defined(TOOLKIT_GTK) +class BrowserAccessibilityGtk; #endif using webkit_glue::WebAccessibility; @@ -58,6 +60,10 @@ class CONTENT_EXPORT BrowserAccessibility { // Child dependent initialization can be done here. virtual void PostInitialize() {} + // Returns true if this is a native platform-specific object, vs a + // cross-platform generic object. + virtual bool IsNative() const; + // Initialize this object, reading attributes from |src|. Does not // recurse into children of |src| and build the whole subtree. void PreInitialize(BrowserAccessibilityManager* manager, @@ -188,9 +194,11 @@ class CONTENT_EXPORT BrowserAccessibility { int32 ref_count() const { return ref_count_; } #if defined(OS_MACOSX) && __OBJC__ - BrowserAccessibilityCocoa* toBrowserAccessibilityCocoa(); + BrowserAccessibilityCocoa* ToBrowserAccessibilityCocoa(); #elif defined(OS_WIN) - BrowserAccessibilityWin* toBrowserAccessibilityWin(); + BrowserAccessibilityWin* ToBrowserAccessibilityWin(); +#elif defined(TOOLKIT_GTK) + BrowserAccessibilityGtk* ToBrowserAccessibilityGtk(); #endif // Retrieve the value of a bool attribute from the bool attribute |