OLD | NEW |
1 | 1 |
2 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 2 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
3 // Use of this source code is governed by a BSD-style license that can be | 3 // Use of this source code is governed by a BSD-style license that can be |
4 // found in the LICENSE file. | 4 // found in the LICENSE file. |
5 | 5 |
6 #ifndef CHROME_BROWSER_RENDEDER_HOST_RENDER_WIDGET_HELPER_H_ | 6 #ifndef CHROME_BROWSER_RENDEDER_HOST_RENDER_WIDGET_HELPER_H_ |
7 #define CHROME_BROWSER_RENDEDER_HOST_RENDER_WIDGET_HELPER_H_ | 7 #define CHROME_BROWSER_RENDEDER_HOST_RENDER_WIDGET_HELPER_H_ |
8 | 8 |
9 #include "base/atomic_sequence_num.h" | 9 #include "base/atomic_sequence_num.h" |
10 #include "base/hash_tables.h" | 10 #include "base/hash_tables.h" |
11 #include "base/process.h" | 11 #include "base/process.h" |
12 #include "base/ref_counted.h" | 12 #include "base/ref_counted.h" |
13 #include "base/lock.h" | 13 #include "base/lock.h" |
14 #include "base/waitable_event.h" | 14 #include "base/waitable_event.h" |
| 15 #include "chrome/common/modal_dialog_event.h" |
15 | 16 |
16 namespace IPC { | 17 namespace IPC { |
17 class Message; | 18 class Message; |
18 } | 19 } |
19 | 20 |
20 namespace base { | 21 namespace base { |
21 class TimeDelta; | 22 class TimeDelta; |
22 } | 23 } |
23 | 24 |
24 class MessageLoop; | 25 class MessageLoop; |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 // IO THREAD ONLY ----------------------------------------------------------- | 103 // IO THREAD ONLY ----------------------------------------------------------- |
103 | 104 |
104 // Called on the IO thread when a PaintRect message is received. | 105 // Called on the IO thread when a PaintRect message is received. |
105 void DidReceivePaintMsg(const IPC::Message& msg); | 106 void DidReceivePaintMsg(const IPC::Message& msg); |
106 | 107 |
107 MessageLoop* ui_loop() { return ui_loop_; } | 108 MessageLoop* ui_loop() { return ui_loop_; } |
108 | 109 |
109 void CreateNewWindow(int opener_id, | 110 void CreateNewWindow(int opener_id, |
110 bool user_gesture, | 111 bool user_gesture, |
111 base::ProcessHandle render_process, | 112 base::ProcessHandle render_process, |
112 int* route_id | 113 int* route_id, |
113 #if defined(OS_WIN) | 114 ModalDialogEvent* modal_dialog_event); |
114 , HANDLE* modal_dialog_event | |
115 #endif | |
116 ); | |
117 void CreateNewWidget(int opener_id, bool activatable, int* route_id); | 115 void CreateNewWidget(int opener_id, bool activatable, int* route_id); |
118 | 116 |
119 private: | 117 private: |
120 // A class used to proxy a paint message. PaintMsgProxy objects are created | 118 // A class used to proxy a paint message. PaintMsgProxy objects are created |
121 // on the IO thread and destroyed on the UI thread. | 119 // on the IO thread and destroyed on the UI thread. |
122 class PaintMsgProxy; | 120 class PaintMsgProxy; |
123 friend class PaintMsgProxy; | 121 friend class PaintMsgProxy; |
124 | 122 |
125 // Map from render_widget_id to live PaintMsgProxy instance. | 123 // Map from render_widget_id to live PaintMsgProxy instance. |
126 typedef base::hash_map<int, PaintMsgProxy*> PaintMsgProxyMap; | 124 typedef base::hash_map<int, PaintMsgProxy*> PaintMsgProxyMap; |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 // The next routing id to use. | 156 // The next routing id to use. |
159 base::AtomicSequenceNumber next_routing_id_; | 157 base::AtomicSequenceNumber next_routing_id_; |
160 | 158 |
161 // Whether popup blocking is enabled or not. | 159 // Whether popup blocking is enabled or not. |
162 bool block_popups_; | 160 bool block_popups_; |
163 | 161 |
164 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHelper); | 162 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHelper); |
165 }; | 163 }; |
166 | 164 |
167 #endif // CHROME_BROWSER_RENDEDER_HOST_RENDER_WIDGET_HELPER_H_ | 165 #endif // CHROME_BROWSER_RENDEDER_HOST_RENDER_WIDGET_HELPER_H_ |
OLD | NEW |