diff options
author | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-23 21:07:33 +0000 |
---|---|---|
committer | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-23 21:07:33 +0000 |
commit | fc1926184af3507865502a92b5102e12680b7c21 (patch) | |
tree | 129b46aec9b7028f900a7e8e4d3634708a597259 /content/browser/accessibility/browser_accessibility_cocoa.h | |
parent | 6131fb5ed032194875383f386b682cdc38338809 (diff) | |
download | chromium_src-fc1926184af3507865502a92b5102e12680b7c21.zip chromium_src-fc1926184af3507865502a92b5102e12680b7c21.tar.gz chromium_src-fc1926184af3507865502a92b5102e12680b7c21.tar.bz2 |
Move browser accessibility code from chrome to content.
BUG=85932
TEST=none
Review URL: http://codereview.chromium.org/7233022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90265 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/accessibility/browser_accessibility_cocoa.h')
-rw-r--r-- | content/browser/accessibility/browser_accessibility_cocoa.h | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/content/browser/accessibility/browser_accessibility_cocoa.h b/content/browser/accessibility/browser_accessibility_cocoa.h new file mode 100644 index 0000000..ab4044f --- /dev/null +++ b/content/browser/accessibility/browser_accessibility_cocoa.h @@ -0,0 +1,76 @@ +// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_COCOA_H_ +#define CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_COCOA_H_ +#pragma once + +#import <Cocoa/Cocoa.h> + +#import "base/memory/scoped_nsobject.h" +#import "content/browser/accessibility/browser_accessibility_delegate_mac.h" +#include "content/browser/accessibility/browser_accessibility.h" + +// BrowserAccessibilityCocoa is a cocoa wrapper around the BrowserAccessibility +// object. The renderer converts webkit's accessibility tree into a +// WebAccessibility tree and passes it to the browser process over IPC. +// This class converts it into a format Cocoa can query. +// Inheriting from NSView rather than NSObject as clients cannot add +// observers to pure NSObject derived classes. +@interface BrowserAccessibilityCocoa : NSView { + @private + BrowserAccessibility* browserAccessibility_; + scoped_nsobject<NSMutableArray> children_; + id<BrowserAccessibilityDelegateCocoa> delegate_; +} + +// This creates a cocoa browser accessibility object around +// the cross platform BrowserAccessibility object. The delegate is +// used to communicate with the host renderer. None of these +// parameters can be null. +- (id)initWithObject:(BrowserAccessibility*)accessibility + delegate:(id<BrowserAccessibilityDelegateCocoa>)delegate; + +// Invalidate children for a non-ignored ancestor (including self). +- (void)childrenChanged; + +// Children is an array of BrowserAccessibility objects, representing +// the accessibility children of this object. +@property(nonatomic, readonly) NSArray* children; +@property(nonatomic, readonly) NSArray* columns; +@property(nonatomic, readonly) NSString* description; +@property(nonatomic, readonly) NSNumber* enabled; +@property(nonatomic, readonly) NSNumber* focused; +@property(nonatomic, readonly) NSString* help; +// isIgnored returns whether or not the accessibility object +// should be ignored by the accessibility hierarchy. +@property(nonatomic, readonly, getter=isIgnored) BOOL ignored; +// The origin of this object in the page's document. +// This is relative to webkit's top-left origin, not Cocoa's +// bottom-left origin. +@property(nonatomic, readonly) NSPoint origin; +@property(nonatomic, readonly) NSNumber* numberOfCharacters; +@property(nonatomic, readonly) id parent; +@property(nonatomic, readonly) NSValue* position; +// A string indicating the role of this object as far as accessibility +// is concerned. +@property(nonatomic, readonly) NSString* role; +@property(nonatomic, readonly) NSString* roleDescription; +@property(nonatomic, readonly) NSArray* rows; +// The size of this object. +@property(nonatomic, readonly) NSValue* size; +// A string indicating the subrole of this object as far as accessibility +// is concerned. +@property(nonatomic, readonly) NSString* subrole; +// The tabs owned by a tablist. +@property(nonatomic, readonly) NSArray* tabs; +@property(nonatomic, readonly) NSString* title; +@property(nonatomic, readonly) NSString* url; +@property(nonatomic, readonly) NSString* value; +@property(nonatomic, readonly) NSValue* visibleCharacterRange; +@property(nonatomic, readonly) NSNumber* visited; +@property(nonatomic, readonly) id window; +@end + +#endif // CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_COCOA_H_ |