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

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

Issue 2957973003: Automatically fire AX events on Win based on tree changes (Closed)
Patch Set: Audit all events, manually test with JAWS and NVDA Created 3 years, 4 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
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_MANAGER_WIN_H_ 5 #ifndef CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_WIN_H_
6 #define CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_WIN_H_ 6 #define CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_WIN_H_
7 7
8 #include <oleacc.h> 8 #include <oleacc.h>
9 9
10 #include <memory> 10 #include <memory>
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 // Track this object and post a VISIBLE_DATA_CHANGED notification when 59 // Track this object and post a VISIBLE_DATA_CHANGED notification when
60 // its container scrolls. 60 // its container scrolls.
61 // TODO(dmazzoni): remove once http://crbug.com/113483 is fixed. 61 // TODO(dmazzoni): remove once http://crbug.com/113483 is fixed.
62 void TrackScrollingObject(BrowserAccessibilityWin* node); 62 void TrackScrollingObject(BrowserAccessibilityWin* node);
63 63
64 // Called when |accessible_hwnd_| is deleted by its parent. 64 // Called when |accessible_hwnd_| is deleted by its parent.
65 void OnAccessibleHwndDeleted(); 65 void OnAccessibleHwndDeleted();
66 66
67 protected: 67 protected:
68 // AXTreeDelegate methods. 68 // AXTreeDelegate methods.
69 void OnTreeDataChanged(ui::AXTree* tree,
70 const ui::AXTreeData& old_tree_data,
71 const ui::AXTreeData& new_tree_data) override;
69 void OnNodeCreated(ui::AXTree* tree, ui::AXNode* node) override; 72 void OnNodeCreated(ui::AXTree* tree, ui::AXNode* node) override;
73 void OnNodeDataWillChange(ui::AXTree* tree,
74 const ui::AXNodeData& old_node_data,
75 const ui::AXNodeData& new_node_data) override;
76 void OnStateChanged(ui::AXTree* tree,
77 ui::AXNode* node,
78 ui::AXState state,
79 bool new_value) override;
80 void OnIntAttributeChanged(ui::AXTree* tree,
81 ui::AXNode* node,
82 ui::AXIntAttribute attr,
83 int32_t old_value,
84 int32_t new_value) override;
70 void OnAtomicUpdateFinished( 85 void OnAtomicUpdateFinished(
71 ui::AXTree* tree, 86 ui::AXTree* tree,
72 bool root_changed, 87 bool root_changed,
73 const std::vector<ui::AXTreeDelegate::Change>& changes) override; 88 const std::vector<ui::AXTreeDelegate::Change>& changes) override;
74 89
75 private: 90 private:
76 // Give BrowserAccessibilityManager::Create access to our constructor. 91 // Give BrowserAccessibilityManager::Create access to our constructor.
77 friend class BrowserAccessibilityManager; 92 friend class BrowserAccessibilityManager;
78 93
79 // Keep track of if we got a "load complete" event but were unable to fire 94 // Keep track of if we got a "load complete" event but were unable to fire
80 // it because of no HWND, because otherwise JAWS can get very confused. 95 // it because of no HWND, because otherwise JAWS can get very confused.
81 // TODO(dmazzoni): a better fix would be to always have an HWND. 96 // TODO(dmazzoni): a better fix would be to always have an HWND.
82 // http://crbug.com/521877 97 // http://crbug.com/521877
83 bool load_complete_pending_; 98 bool load_complete_pending_;
84 99
85 DISALLOW_COPY_AND_ASSIGN(BrowserAccessibilityManagerWin); 100 DISALLOW_COPY_AND_ASSIGN(BrowserAccessibilityManagerWin);
86 }; 101 };
87 102
88 } // namespace content 103 } // namespace content
89 104
90 #endif // CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_WIN_H_ 105 #endif // CONTENT_BROWSER_ACCESSIBILITY_BROWSER_ACCESSIBILITY_MANAGER_WIN_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698