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 CHROME_FRAME_CHROME_FRAME_ACTIVEX_BASE_H_ | 5 #ifndef CHROME_FRAME_CHROME_FRAME_ACTIVEX_BASE_H_ |
6 #define CHROME_FRAME_CHROME_FRAME_ACTIVEX_BASE_H_ | 6 #define CHROME_FRAME_CHROME_FRAME_ACTIVEX_BASE_H_ |
7 | 7 |
8 #include <atlbase.h> | 8 #include <atlbase.h> |
9 #include <atlcom.h> | 9 #include <atlcom.h> |
10 #include <atlctl.h> | 10 #include <atlctl.h> |
(...skipping 487 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
498 // Only fire the 'interactive' ready state if we aren't there already. | 498 // Only fire the 'interactive' ready state if we aren't there already. |
499 if (ready_state_ < READYSTATE_INTERACTIVE) { | 499 if (ready_state_ < READYSTATE_INTERACTIVE) { |
500 ready_state_ = READYSTATE_INTERACTIVE; | 500 ready_state_ = READYSTATE_INTERACTIVE; |
501 FireOnChanged(DISPID_READYSTATE); | 501 FireOnChanged(DISPID_READYSTATE); |
502 } | 502 } |
503 return 0; | 503 return 0; |
504 } | 504 } |
505 | 505 |
506 LRESULT OnDestroy(UINT message, WPARAM wparam, LPARAM lparam, | 506 LRESULT OnDestroy(UINT message, WPARAM wparam, LPARAM lparam, |
507 BOOL& handled) { // NO_LINT | 507 BOOL& handled) { // NO_LINT |
508 worker_thread_.message_loop()->PostTask( | 508 if (worker_thread_.message_loop()) { |
509 FROM_HERE, NewRunnableMethod(this, &Base::OnWorkerStop)); | 509 worker_thread_.message_loop()->PostTask( |
510 if (automation_client_.get()) | 510 FROM_HERE, NewRunnableMethod(this, &Base::OnWorkerStop)); |
511 automation_client_->CleanupRequests(); | 511 if (automation_client_.get()) |
512 worker_thread_.Stop(); | 512 automation_client_->CleanupAsyncRequests(); |
| 513 worker_thread_.Stop(); |
| 514 } |
513 return 0; | 515 return 0; |
514 } | 516 } |
515 | 517 |
516 // ChromeFrameDelegate override | 518 // ChromeFrameDelegate override |
517 virtual void OnAutomationServerReady() { | 519 virtual void OnAutomationServerReady() { |
518 ChromeFramePlugin<T>::OnAutomationServerReady(); | 520 ChromeFramePlugin<T>::OnAutomationServerReady(); |
519 | 521 |
520 ready_state_ = READYSTATE_COMPLETE; | 522 ready_state_ = READYSTATE_COMPLETE; |
521 FireOnChanged(DISPID_READYSTATE); | 523 FireOnChanged(DISPID_READYSTATE); |
522 } | 524 } |
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1005 EventHandlers onprivatemessage_; | 1007 EventHandlers onprivatemessage_; |
1006 EventHandlers onextensionready_; | 1008 EventHandlers onextensionready_; |
1007 | 1009 |
1008 // The UrlmonUrlRequest instance instantiated for downloading the base URL. | 1010 // The UrlmonUrlRequest instance instantiated for downloading the base URL. |
1009 scoped_refptr<CComObject<UrlmonUrlRequest> > base_url_request_; | 1011 scoped_refptr<CComObject<UrlmonUrlRequest> > base_url_request_; |
1010 | 1012 |
1011 base::Thread worker_thread_; | 1013 base::Thread worker_thread_; |
1012 }; | 1014 }; |
1013 | 1015 |
1014 #endif // CHROME_FRAME_CHROME_FRAME_ACTIVEX_BASE_H_ | 1016 #endif // CHROME_FRAME_CHROME_FRAME_ACTIVEX_BASE_H_ |
OLD | NEW |