|
Split out the MSCOM pieces of BrowserAccessibilityWin into a seperate class.
This CL splits out all of the MSCOM stuff in BrowserAccessibilityWin into to a
new class BrowserAccessibilityComWin. This allows us to more easily to reuse
the AXPlatformNodeWin.
The way this works is that BrowserAccessibilityWin creates and owns a COM
object named |browser_accessibility_com_|. BrowserAccessibilityWin continues
to implement BrowserAccessibility but all interactions with Windows is done
through the BrowserAccessibilityComWin object.
BrowserAccessibilityComWin is created with both a delegate for
AXPlatformNodeWin usage as well as a backpointer to BrowserAccessibilityWin so
it can call back into BrowserAccessibility. Ownership is such that:
BrowserAccessibilityWin owns one reference on BrowserAccessibilityComWin. When
BrowserAccessibilityWin goes away, it nulls out the backpointer and delegate
pointer rendering the BrowserAccessibilityComWin potentially still alive but
basically useless.
Note that this split is similar to how MacOS is implemented.
BUG= 703369
Review-Url: https://codereview.chromium.org/2864953002
Cr-Commit-Position: refs/heads/master@{#470493}
Committed: https://chromium.googlesource.com/chromium/src/+/6b5b4cd8b3f76c0c4ad01e69b3f137604a9a21ee
Total comments: 21
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+1550 lines, -8078 lines) |
Patch |
 |
M |
content/browser/BUILD.gn
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
content/browser/accessibility/accessibility_event_recorder_win.cc
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
content/browser/accessibility/accessibility_tree_formatter_win.cc
|
View
|
|
5 chunks |
+53 lines, -45 lines |
0 comments
|
Download
|
 |
M |
content/browser/accessibility/accessibility_win_browsertest.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
A + |
content/browser/accessibility/browser_accessibility_com_win.h
|
View
|
1
|
30 chunks |
+159 lines, -165 lines |
0 comments
|
Download
|
 |
A + |
content/browser/accessibility/browser_accessibility_com_win.cc
|
View
|
1
2
|
212 chunks |
+1109 lines, -1029 lines |
0 comments
|
Download
|
 |
M |
content/browser/accessibility/browser_accessibility_manager_unittest.cc
|
View
|
|
1 chunk |
+0 lines, -9 lines |
0 comments
|
Download
|
 |
M |
content/browser/accessibility/browser_accessibility_manager_win.cc
|
View
|
|
3 chunks |
+5 lines, -3 lines |
0 comments
|
Download
|
 |
M |
content/browser/accessibility/browser_accessibility_win.h
|
View
|
|
1 chunk |
+12 lines, -945 lines |
0 comments
|
Download
|
 |
M |
content/browser/accessibility/browser_accessibility_win.cc
|
View
|
|
1 chunk |
+36 lines, -5608 lines |
0 comments
|
Download
|
 |
M |
content/browser/accessibility/browser_accessibility_win_unittest.cc
|
View
|
|
65 chunks |
+167 lines, -267 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/legacy_render_widget_host_win.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/render_widget_host_view_aura.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
ui/accessibility/platform/ax_platform_node_base.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
ui/accessibility/platform/ax_platform_node_win.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
Dependent Patchsets:
Total messages: 27 (16 generated)
|