| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 // IE browser helper object implementation. | 5 // IE browser helper object implementation. |
| 6 #ifndef CEEE_IE_PLUGIN_BHO_BROWSER_HELPER_OBJECT_H_ | 6 #ifndef CEEE_IE_PLUGIN_BHO_BROWSER_HELPER_OBJECT_H_ |
| 7 #define CEEE_IE_PLUGIN_BHO_BROWSER_HELPER_OBJECT_H_ | 7 #define CEEE_IE_PLUGIN_BHO_BROWSER_HELPER_OBJECT_H_ |
| 8 | 8 |
| 9 #include <atlbase.h> | 9 #include <atlbase.h> |
| 10 #include <atlcom.h> | 10 #include <atlcom.h> |
| (...skipping 20 matching lines...) Expand all Loading... |
| 31 #include "ceee/ie/plugin/bho/tool_band_visibility.h" | 31 #include "ceee/ie/plugin/bho/tool_band_visibility.h" |
| 32 #include "ceee/ie/plugin/bho/web_browser_events_source.h" | 32 #include "ceee/ie/plugin/bho/web_browser_events_source.h" |
| 33 #include "ceee/ie/plugin/bho/web_progress_notifier.h" | 33 #include "ceee/ie/plugin/bho/web_progress_notifier.h" |
| 34 #include "ceee/ie/plugin/scripting/userscripts_librarian.h" | 34 #include "ceee/ie/plugin/scripting/userscripts_librarian.h" |
| 35 #include "ceee/ie/plugin/scripting/content_script_native_api.h" | 35 #include "ceee/ie/plugin/scripting/content_script_native_api.h" |
| 36 #include "ceee/ie/plugin/toolband/resource.h" | 36 #include "ceee/ie/plugin/toolband/resource.h" |
| 37 | 37 |
| 38 #include "broker_lib.h" // NOLINT | 38 #include "broker_lib.h" // NOLINT |
| 39 #include "toolband.h" // NOLINT | 39 #include "toolband.h" // NOLINT |
| 40 | 40 |
| 41 struct IObjectWithSite; |
| 42 |
| 41 // Implementation of an IE browser helper object. | 43 // Implementation of an IE browser helper object. |
| 42 class ATL_NO_VTABLE BrowserHelperObject | 44 class ATL_NO_VTABLE BrowserHelperObject |
| 43 : public CComObjectRootEx<CComSingleThreadModel>, | 45 : public CComObjectRootEx<CComSingleThreadModel>, |
| 44 public CComCoClass<BrowserHelperObject, &CLSID_BrowserHelperObject>, | 46 public CComCoClass<BrowserHelperObject, &CLSID_BrowserHelperObject>, |
| 45 public IObjectWithSiteImpl<BrowserHelperObject>, | 47 public IObjectWithSiteImpl<BrowserHelperObject>, |
| 46 public IDispEventSimpleImpl<0, | 48 public IDispEventSimpleImpl<0, |
| 47 BrowserHelperObject, | 49 BrowserHelperObject, |
| 48 &DIID_DWebBrowserEvents2>, | 50 &DIID_DWebBrowserEvents2>, |
| 49 public IPersistImpl<BrowserHelperObject>, | 51 public IPersistImpl<BrowserHelperObject>, |
| 50 public IFrameEventHandlerHost, | 52 public IFrameEventHandlerHost, |
| (...skipping 406 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 457 | 459 |
| 458 // List of calls to send to the broker. | 460 // List of calls to send to the broker. |
| 459 typedef std::deque<Task*> DeferredCallListType; | 461 typedef std::deque<Task*> DeferredCallListType; |
| 460 DeferredCallListType deferred_events_call_; | 462 DeferredCallListType deferred_events_call_; |
| 461 | 463 |
| 462 // This is passed to every funnel so they use the queue for sending events. | 464 // This is passed to every funnel so they use the queue for sending events. |
| 463 BrokerEventQueue broker_client_queue_; | 465 BrokerEventQueue broker_client_queue_; |
| 464 | 466 |
| 465 // Used to dispatch tab events back to Chrome. | 467 // Used to dispatch tab events back to Chrome. |
| 466 TabEventsFunnel tab_events_funnel_; | 468 TabEventsFunnel tab_events_funnel_; |
| 469 |
| 470 // List of BHOs which could be unregistered from IE and loaded by |
| 471 // CEEE instead. |
| 472 std::vector<base::win::ScopedComPtr<IObjectWithSite> > nested_bho_; |
| 467 }; | 473 }; |
| 468 | 474 |
| 469 #endif // CEEE_IE_PLUGIN_BHO_BROWSER_HELPER_OBJECT_H_ | 475 #endif // CEEE_IE_PLUGIN_BHO_BROWSER_HELPER_OBJECT_H_ |
| OLD | NEW |