OLD | NEW |
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 CHROME_FRAME_CHROME_FRAME_AUTOMATION_H_ | 5 #ifndef CHROME_FRAME_CHROME_FRAME_AUTOMATION_H_ |
6 #define CHROME_FRAME_CHROME_FRAME_AUTOMATION_H_ | 6 #define CHROME_FRAME_CHROME_FRAME_AUTOMATION_H_ |
7 | 7 |
8 #include <atlbase.h> | 8 #include <atlbase.h> |
9 #include <atlwin.h> | 9 #include <atlwin.h> |
10 #include <map> | 10 #include <map> |
11 #include <string> | 11 #include <string> |
12 #include <vector> | 12 #include <vector> |
13 | 13 |
| 14 #include "base/containers/stack_container.h" |
14 #include "base/memory/ref_counted.h" | 15 #include "base/memory/ref_counted.h" |
15 #include "base/memory/scoped_handle.h" | 16 #include "base/memory/scoped_handle.h" |
16 #include "base/stack_container.h" | |
17 #include "base/synchronization/lock.h" | 17 #include "base/synchronization/lock.h" |
18 #include "base/threading/thread.h" | 18 #include "base/threading/thread.h" |
19 #include "base/timer.h" | 19 #include "base/timer.h" |
20 #include "chrome/test/automation/automation_proxy.h" | 20 #include "chrome/test/automation/automation_proxy.h" |
21 #include "chrome/test/automation/tab_proxy.h" | 21 #include "chrome/test/automation/tab_proxy.h" |
22 #include "chrome_frame/chrome_frame_delegate.h" | 22 #include "chrome_frame/chrome_frame_delegate.h" |
23 #include "chrome_frame/plugin_url_request.h" | 23 #include "chrome_frame/plugin_url_request.h" |
24 #include "chrome_frame/sync_msg_reply_dispatcher.h" | 24 #include "chrome_frame/sync_msg_reply_dispatcher.h" |
25 #include "content/public/common/page_zoom.h" | 25 #include "content/public/common/page_zoom.h" |
26 | 26 |
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
287 // delegate may be NULL. If non-null, a pointer to the delegate will | 287 // delegate may be NULL. If non-null, a pointer to the delegate will |
288 // be stored for the lifetime of the automation process or until | 288 // be stored for the lifetime of the automation process or until |
289 // ReleaseAutomationServer is called. | 289 // ReleaseAutomationServer is called. |
290 virtual void GetAutomationServer(LaunchDelegate* delegate, | 290 virtual void GetAutomationServer(LaunchDelegate* delegate, |
291 ChromeFrameLaunchParams* params, | 291 ChromeFrameLaunchParams* params, |
292 void** automation_server_id); | 292 void** automation_server_id); |
293 virtual bool ReleaseAutomationServer(void* server_id, | 293 virtual bool ReleaseAutomationServer(void* server_id, |
294 LaunchDelegate* delegate); | 294 LaunchDelegate* delegate); |
295 | 295 |
296 private: | 296 private: |
297 typedef StackVector<scoped_refptr<AutomationProxyCacheEntry>, 4> Vector; | 297 typedef base::StackVector<scoped_refptr<AutomationProxyCacheEntry>, 4> Vector; |
298 Vector proxies_; | 298 Vector proxies_; |
299 // Lock if we are going to call GetAutomationServer from more than one thread. | 299 // Lock if we are going to call GetAutomationServer from more than one thread. |
300 base::Lock lock_; | 300 base::Lock lock_; |
301 }; | 301 }; |
302 | 302 |
303 // Handles all automation requests initiated from the chrome frame objects. | 303 // Handles all automation requests initiated from the chrome frame objects. |
304 // These include the chrome tab/chrome frame activex plugin objects. | 304 // These include the chrome tab/chrome frame activex plugin objects. |
305 class ChromeFrameAutomationClient | 305 class ChromeFrameAutomationClient |
306 : public CWindowImpl<ChromeFrameAutomationClient>, | 306 : public CWindowImpl<ChromeFrameAutomationClient>, |
307 public TaskMarshallerThroughWindowsMessages<ChromeFrameAutomationClient>, | 307 public TaskMarshallerThroughWindowsMessages<ChromeFrameAutomationClient>, |
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
527 | 527 |
528 // Set to true if Chrome Frame should tell Chrome to delay shutdown after | 528 // Set to true if Chrome Frame should tell Chrome to delay shutdown after |
529 // we break a connection. Currently used only as part of a field trial. | 529 // we break a connection. Currently used only as part of a field trial. |
530 bool send_shutdown_delay_switch_; | 530 bool send_shutdown_delay_switch_; |
531 | 531 |
532 friend class BeginNavigateContext; | 532 friend class BeginNavigateContext; |
533 friend class CreateExternalTabContext; | 533 friend class CreateExternalTabContext; |
534 }; | 534 }; |
535 | 535 |
536 #endif // CHROME_FRAME_CHROME_FRAME_AUTOMATION_H_ | 536 #endif // CHROME_FRAME_CHROME_FRAME_AUTOMATION_H_ |
OLD | NEW |