OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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 VIEWS_FOCUS_FOCUS_UTIL_WIN_H_ | 5 #ifndef VIEWS_FOCUS_FOCUS_UTIL_WIN_H_ |
6 #define VIEWS_FOCUS_FOCUS_UTIL_WIN_H_ | 6 #define VIEWS_FOCUS_FOCUS_UTIL_WIN_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <windows.h> | 9 #include <windows.h> |
10 | 10 |
11 namespace app { | 11 namespace app { |
12 namespace win { | 12 class ViewProp; |
13 class ScopedProp; | |
14 } | |
15 } | 13 } |
16 | 14 |
17 namespace views { | 15 namespace views { |
18 | 16 |
19 // Marks the passed |hwnd| as supporting mouse-wheel message rerouting. | 17 // Marks the passed |hwnd| as supporting mouse-wheel message rerouting. |
20 // We reroute the mouse wheel messages to such HWND when they are under the | 18 // We reroute the mouse wheel messages to such HWND when they are under the |
21 // mouse pointer (but are not the active window). Callers must delete the | 19 // mouse pointer (but are not the active window). Callers own the returned |
22 // returned object before the window is destroyed (see ScopedProp for details). | 20 // object. |
23 app::win::ScopedProp* SetWindowSupportsRerouteMouseWheel(HWND hwnd); | 21 app::ViewProp* SetWindowSupportsRerouteMouseWheel(HWND hwnd); |
24 | 22 |
25 // Forwards mouse wheel messages to the window under it. | 23 // Forwards mouse wheel messages to the window under it. |
26 // Windows sends mouse wheel messages to the currently active window. | 24 // Windows sends mouse wheel messages to the currently active window. |
27 // This causes a window to scroll even if it is not currently under the mouse | 25 // This causes a window to scroll even if it is not currently under the mouse |
28 // wheel. The following code gives mouse wheel messages to the window under the | 26 // wheel. The following code gives mouse wheel messages to the window under the |
29 // mouse wheel in order to scroll that window. This is arguably a better user | 27 // mouse wheel in order to scroll that window. This is arguably a better user |
30 // experience. The returns value says whether the mouse wheel message was | 28 // experience. The returns value says whether the mouse wheel message was |
31 // successfully redirected. | 29 // successfully redirected. |
32 bool RerouteMouseWheel(HWND window, WPARAM w_param, LPARAM l_param); | 30 bool RerouteMouseWheel(HWND window, WPARAM w_param, LPARAM l_param); |
33 | 31 |
34 } // namespace views | 32 } // namespace views |
35 | 33 |
36 #endif // VIEWS_FOCUS_FOCUS_UTIL_WIN_H_ | 34 #endif // VIEWS_FOCUS_FOCUS_UTIL_WIN_H_ |
OLD | NEW |