OLD | NEW |
1 // Copyright (c) 2014 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2014 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_RENDERER_HOST_LEGACY_RENDER_WIDGET_HOST_WIN_H_ | 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_LEGACY_RENDER_WIDGET_HOST_WIN_H_ |
6 #define CONTENT_BROWSER_RENDERER_HOST_LEGACY_RENDER_WIDGET_HOST_WIN_H_ | 6 #define CONTENT_BROWSER_RENDERER_HOST_LEGACY_RENDER_WIDGET_HOST_WIN_H_ |
7 | 7 |
8 #include <atlbase.h> | 8 #include <atlbase.h> |
9 #include <atlwin.h> | 9 #include <atlwin.h> |
10 #include <atlcrack.h> | 10 #include <atlcrack.h> |
11 #include <oleacc.h> | 11 #include <oleacc.h> |
12 | 12 |
13 #include "base/basictypes.h" | 13 #include "base/basictypes.h" |
| 14 #include "base/memory/scoped_ptr.h" |
14 #include "base/win/scoped_comptr.h" | 15 #include "base/win/scoped_comptr.h" |
15 #include "content/common/content_export.h" | 16 #include "content/common/content_export.h" |
16 #include "ui/gfx/geometry/rect.h" | 17 #include "ui/gfx/geometry/rect.h" |
17 | 18 |
18 namespace ui { | 19 namespace ui { |
19 class WindowEventTarget; | 20 class WindowEventTarget; |
20 } | 21 } |
21 | 22 |
22 namespace content { | 23 namespace content { |
| 24 class DirectManipulationHelper; |
23 class RenderWidgetHostViewAura; | 25 class RenderWidgetHostViewAura; |
24 | 26 |
25 // Reasons for the existence of this class outlined below:- | 27 // Reasons for the existence of this class outlined below:- |
26 // 1. Some screen readers expect every tab / every unique web content container | 28 // 1. Some screen readers expect every tab / every unique web content container |
27 // to be in its own HWND with class name Chrome_RenderWidgetHostHWND. | 29 // to be in its own HWND with class name Chrome_RenderWidgetHostHWND. |
28 // With Aura there is one main HWND which comprises the whole browser window | 30 // With Aura there is one main HWND which comprises the whole browser window |
29 // or the whole desktop. So, we need a fake HWND with the window class as | 31 // or the whole desktop. So, we need a fake HWND with the window class as |
30 // Chrome_RenderWidgetHostHWND as the root of the accessibility tree for | 32 // Chrome_RenderWidgetHostHWND as the root of the accessibility tree for |
31 // each tab. | 33 // each tab. |
32 // 2. There are legacy drivers for trackpads/trackpoints which have special | 34 // 2. There are legacy drivers for trackpads/trackpoints which have special |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 LRESULT OnNCCalcSize(UINT message, WPARAM w_param, LPARAM l_param); | 138 LRESULT OnNCCalcSize(UINT message, WPARAM w_param, LPARAM l_param); |
137 LRESULT OnSize(UINT message, WPARAM w_param, LPARAM l_param); | 139 LRESULT OnSize(UINT message, WPARAM w_param, LPARAM l_param); |
138 | 140 |
139 base::win::ScopedComPtr<IAccessible> window_accessible_; | 141 base::win::ScopedComPtr<IAccessible> window_accessible_; |
140 | 142 |
141 // Set to true if we turned on mouse tracking. | 143 // Set to true if we turned on mouse tracking. |
142 bool mouse_tracking_enabled_; | 144 bool mouse_tracking_enabled_; |
143 | 145 |
144 RenderWidgetHostViewAura* host_; | 146 RenderWidgetHostViewAura* host_; |
145 | 147 |
| 148 // This class provides functionality to register the legacy window as a |
| 149 // Direct Manipulation consumer. This allows us to support smooth scroll |
| 150 // in Chrome on Windows 10. |
| 151 scoped_ptr<DirectManipulationHelper> direct_manipulation_helper_; |
| 152 |
146 DISALLOW_COPY_AND_ASSIGN(LegacyRenderWidgetHostHWND); | 153 DISALLOW_COPY_AND_ASSIGN(LegacyRenderWidgetHostHWND); |
147 }; | 154 }; |
148 | 155 |
149 } // namespace content | 156 } // namespace content |
150 | 157 |
151 #endif // CONTENT_BROWSER_RENDERER_HOST_LEGACY_RENDER_WIDGET_HOST_WIN_H_ | 158 #endif // CONTENT_BROWSER_RENDERER_HOST_LEGACY_RENDER_WIDGET_HOST_WIN_H_ |
152 | 159 |
OLD | NEW |