summaryrefslogtreecommitdiffstats
path: root/content/browser/accessibility/browser_accessibility.h
diff options
context:
space:
mode:
authordmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-05-09 07:05:20 +0000
committerdmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-05-09 07:05:20 +0000
commitcd3e2d90d3030ad3e271098b15d2f60db13ba09a (patch)
treed3333f31da08d07237d6a1f1f66fd14fc2fdec55 /content/browser/accessibility/browser_accessibility.h
parent45056077ba7064c4b539d95111d0f62b3755deb3 (diff)
downloadchromium_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.h12
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