Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(185)

Side by Side Diff: content/browser/accessibility/browser_accessibility_win.h

Issue 10544099: Refactor all accessibility code out of webkit/glue. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More Mac compile errors Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_WIN_H_ 5 #ifndef CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_WIN_H_
6 #define CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_WIN_H_ 6 #define CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_WIN_H_
7 #pragma once 7 #pragma once
8 8
9 #include <atlbase.h> 9 #include <atlbase.h>
10 #include <atlcom.h> 10 #include <atlcom.h>
11 #include <oleacc.h> 11 #include <oleacc.h>
12 #include <UIAutomationCore.h> 12 #include <UIAutomationCore.h>
13 13
14 #include <vector> 14 #include <vector>
15 15
16 #include "base/compiler_specific.h" 16 #include "base/compiler_specific.h"
17 #include "content/browser/accessibility/browser_accessibility.h" 17 #include "content/browser/accessibility/browser_accessibility.h"
18 #include "content/common/content_export.h" 18 #include "content/common/content_export.h"
19 #include "third_party/iaccessible2/ia2_api_all.h" 19 #include "third_party/iaccessible2/ia2_api_all.h"
20 #include "third_party/isimpledom/ISimpleDOMDocument.h" 20 #include "third_party/isimpledom/ISimpleDOMDocument.h"
21 #include "third_party/isimpledom/ISimpleDOMNode.h" 21 #include "third_party/isimpledom/ISimpleDOMNode.h"
22 #include "third_party/isimpledom/ISimpleDOMText.h" 22 #include "third_party/isimpledom/ISimpleDOMText.h"
23 #include "webkit/glue/webaccessibility.h"
24 23
25 class BrowserAccessibilityRelation; 24 class BrowserAccessibilityRelation;
26 25
27 namespace ui { 26 namespace ui {
28 enum TextBoundaryDirection; 27 enum TextBoundaryDirection;
29 enum TextBoundaryType; 28 enum TextBoundaryType;
30 } 29 }
31 30
32 using webkit_glue::WebAccessibility;
33
34 //////////////////////////////////////////////////////////////////////////////// 31 ////////////////////////////////////////////////////////////////////////////////
35 // 32 //
36 // BrowserAccessibilityWin 33 // BrowserAccessibilityWin
37 // 34 //
38 // Class implementing the windows accessible interface for the Browser-Renderer 35 // Class implementing the windows accessible interface for the Browser-Renderer
39 // communication of accessibility information, providing accessibility 36 // communication of accessibility information, providing accessibility
40 // to be used by screen readers and other assistive technology (AT). 37 // to be used by screen readers and other assistive technology (AT).
41 // 38 //
42 //////////////////////////////////////////////////////////////////////////////// 39 ////////////////////////////////////////////////////////////////////////////////
43 class __declspec(uuid("562072fe-3390-43b1-9e2c-dd4118f5ac79")) 40 class __declspec(uuid("562072fe-3390-43b1-9e2c-dd4118f5ac79"))
(...skipping 718 matching lines...) Expand 10 before | Expand all | Expand 10 after
762 BrowserAccessibilityWin* NewReference(); 759 BrowserAccessibilityWin* NewReference();
763 760
764 // Many MSAA methods take a var_id parameter indicating that the operation 761 // Many MSAA methods take a var_id parameter indicating that the operation
765 // should be performed on a particular child ID, rather than this object. 762 // should be performed on a particular child ID, rather than this object.
766 // This method tries to figure out the target object from |var_id| and 763 // This method tries to figure out the target object from |var_id| and
767 // returns a pointer to the target object if it exists, otherwise NULL. 764 // returns a pointer to the target object if it exists, otherwise NULL.
768 // Does not return a new reference. 765 // Does not return a new reference.
769 BrowserAccessibilityWin* GetTargetFromChildID(const VARIANT& var_id); 766 BrowserAccessibilityWin* GetTargetFromChildID(const VARIANT& var_id);
770 767
771 // Initialize the role and state metadata from the role enum and state 768 // Initialize the role and state metadata from the role enum and state
772 // bitmasks defined in webkit/glue/webaccessibility.h. 769 // bitmasks defined in AccessibilityNodeData.
773 void InitRoleAndState(); 770 void InitRoleAndState();
774 771
775 // Retrieve the value of an attribute from the string attribute map and 772 // Retrieve the value of an attribute from the string attribute map and
776 // if found and nonempty, allocate a new BSTR (with SysAllocString) 773 // if found and nonempty, allocate a new BSTR (with SysAllocString)
777 // and return S_OK. If not found or empty, return S_FALSE. 774 // and return S_OK. If not found or empty, return S_FALSE.
778 HRESULT GetStringAttributeAsBstr( 775 HRESULT GetStringAttributeAsBstr(
779 WebAccessibility::StringAttribute attribute, BSTR* value_bstr); 776 content::AccessibilityNodeData::StringAttribute attribute,
777 BSTR* value_bstr);
780 778
781 // If the string attribute |attribute| is present, add its value as an 779 // If the string attribute |attribute| is present, add its value as an
782 // IAccessible2 attribute with the name |ia2_attr|. 780 // IAccessible2 attribute with the name |ia2_attr|.
783 void StringAttributeToIA2( 781 void StringAttributeToIA2(
784 WebAccessibility::StringAttribute attribute, const char* ia2_attr); 782 content::AccessibilityNodeData::StringAttribute attribute,
783 const char* ia2_attr);
785 784
786 // If the bool attribute |attribute| is present, add its value as an 785 // If the bool attribute |attribute| is present, add its value as an
787 // IAccessible2 attribute with the name |ia2_attr|. 786 // IAccessible2 attribute with the name |ia2_attr|.
788 void BoolAttributeToIA2( 787 void BoolAttributeToIA2(
789 WebAccessibility::BoolAttribute attribute, const char* ia2_attr); 788 content::AccessibilityNodeData::BoolAttribute attribute,
789 const char* ia2_attr);
790 790
791 // If the int attribute |attribute| is present, add its value as an 791 // If the int attribute |attribute| is present, add its value as an
792 // IAccessible2 attribute with the name |ia2_attr|. 792 // IAccessible2 attribute with the name |ia2_attr|.
793 void IntAttributeToIA2( 793 void IntAttributeToIA2(
794 WebAccessibility::IntAttribute attribute, const char* ia2_attr); 794 content::AccessibilityNodeData::IntAttribute attribute,
795 const char* ia2_attr);
795 796
796 // Get the text of this node for the purposes of IAccessibleText - it may 797 // Get the text of this node for the purposes of IAccessibleText - it may
797 // be the name, it may be the value, etc. depending on the role. 798 // be the name, it may be the value, etc. depending on the role.
798 const string16& TextForIAccessibleText(); 799 const string16& TextForIAccessibleText();
799 800
800 // If offset is a member of IA2TextSpecialOffsets this function updates the 801 // If offset is a member of IA2TextSpecialOffsets this function updates the
801 // value of offset and returns, otherwise offset remains unchanged. 802 // value of offset and returns, otherwise offset remains unchanged.
802 void HandleSpecialTextOffset(const string16& text, LONG* offset); 803 void HandleSpecialTextOffset(const string16& text, LONG* offset);
803 804
804 // Convert from a IA2TextBoundaryType to a ui::TextBoundaryType. 805 // Convert from a IA2TextBoundaryType to a ui::TextBoundaryType.
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
857 std::vector<int32> hyperlinks_; 858 std::vector<int32> hyperlinks_;
858 859
859 // Give BrowserAccessibility::Create access to our constructor. 860 // Give BrowserAccessibility::Create access to our constructor.
860 friend class BrowserAccessibility; 861 friend class BrowserAccessibility;
861 friend class BrowserAccessibilityRelation; 862 friend class BrowserAccessibilityRelation;
862 863
863 DISALLOW_COPY_AND_ASSIGN(BrowserAccessibilityWin); 864 DISALLOW_COPY_AND_ASSIGN(BrowserAccessibilityWin);
864 }; 865 };
865 866
866 #endif // CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_WIN_H_ 867 #endif // CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_WIN_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698