Index: chrome_frame/chrome_frame_activex.h |
diff --git a/chrome_frame/chrome_frame_activex.h b/chrome_frame/chrome_frame_activex.h |
deleted file mode 100644 |
index 20432da3c0b2145e9fe1c04a094577d02e31da2f..0000000000000000000000000000000000000000 |
--- a/chrome_frame/chrome_frame_activex.h |
+++ /dev/null |
@@ -1,139 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#ifndef CHROME_FRAME_CHROME_FRAME_ACTIVEX_H_ |
-#define CHROME_FRAME_CHROME_FRAME_ACTIVEX_H_ |
- |
-#include <atlbase.h> |
-#include <atlcom.h> |
-#include <atlctl.h> |
- |
-#include <set> |
-#include <string> |
-#include <vector> |
- |
-#include "chrome_frame/chrome_frame_activex_base.h" |
-#include "chrome_frame/chrome_tab.h" |
-#include "chrome_frame/com_type_info_holder.h" |
-#include "grit/chrome_frame_resources.h" |
- |
-// ChromeFrameActivex: Implementation of the ActiveX control that is |
-// responsible for hosting a chrome frame, i.e. an iframe like widget which |
-// hosts the the chrome window. This object delegates to Chrome.exe |
-// (via the Chrome IPC-based automation mechanism) for the actual rendering. |
-class ATL_NO_VTABLE ChromeFrameActivex |
- : public ChromeFrameActivexBase<ChromeFrameActivex, CLSID_ChromeFrame>, |
- public IObjectSafetyImpl<ChromeFrameActivex, |
- INTERFACESAFE_FOR_UNTRUSTED_CALLER | |
- INTERFACESAFE_FOR_UNTRUSTED_DATA>, |
- public IObjectWithSiteImpl<ChromeFrameActivex>, |
- public IPersistPropertyBag { |
- public: |
- typedef ChromeFrameActivexBase<ChromeFrameActivex, CLSID_ChromeFrame> Base; |
- ChromeFrameActivex(); |
- ~ChromeFrameActivex(); |
- |
-DECLARE_REGISTRY_RESOURCEID(IDR_CHROMEFRAME_ACTIVEX) |
- |
-BEGIN_COM_MAP(ChromeFrameActivex) |
- COM_INTERFACE_ENTRY(IObjectWithSite) |
- COM_INTERFACE_ENTRY(IObjectSafety) |
- COM_INTERFACE_ENTRY(IPersist) |
- COM_INTERFACE_ENTRY(IPersistPropertyBag) |
- COM_INTERFACE_ENTRY_CHAIN(Base) |
-END_COM_MAP() |
- |
-BEGIN_MSG_MAP(ChromeFrameActivex) |
- MESSAGE_HANDLER(WM_CREATE, OnCreate) |
- CHAIN_MSG_MAP(Base) |
-END_MSG_MAP() |
- |
- HRESULT FinalConstruct(); |
- |
- virtual HRESULT OnDraw(ATL_DRAWINFO& draw_info); // NOLINT |
- |
- // IPersistPropertyBag implementation |
- STDMETHOD(GetClassID)(CLSID* class_id) { |
- if (class_id != NULL) |
- *class_id = GetObjectCLSID(); |
- return S_OK; |
- } |
- |
- STDMETHOD(InitNew)() { |
- return S_OK; |
- } |
- |
- STDMETHOD(Load)(IPropertyBag* bag, IErrorLog* error_log); |
- |
- STDMETHOD(Save)(IPropertyBag* bag, BOOL clear_dirty, BOOL save_all) { |
- return E_NOTIMPL; |
- } |
- |
- // Used to setup the document_url_ member needed for completing navigation. |
- // Create external tab (possibly in incognito mode). |
- HRESULT IOleObject_SetClientSite(IOleClientSite* client_site); |
- |
- // Overridden to perform security checks. |
- STDMETHOD(put_src)(BSTR src); |
- |
- // IChromeFrame |
- // On a fresh install of ChromeFrame the BHO will not be loaded in existing |
- // IE tabs/windows. This function instantiates the BHO and registers it |
- // explicitly. |
- STDMETHOD(registerBhoIfNeeded)(); |
- |
- protected: |
- // ChromeFrameDelegate overrides |
- virtual void OnLoadFailed(int error_code, const std::string& url); |
- virtual void OnAutomationServerLaunchFailed( |
- AutomationLaunchResult reason, const std::string& server_version); |
- virtual void OnChannelError(); |
- |
- // Separated to static function for unit testing this logic more easily. |
- static bool ShouldShowVersionMismatchDialog(bool is_privileged, |
- IOleClientSite* client_site); |
- |
- private: |
- LRESULT OnCreate(UINT message, WPARAM wparam, LPARAM lparam, |
- BOOL& handled); // NO_LINT |
- |
- HRESULT GetContainingDocument(IHTMLDocument2** doc); |
- HRESULT GetDocumentWindow(IHTMLWindow2** window); |
- |
- // Gets the value of the 'id' attribute of the object element. |
- HRESULT GetObjectScriptId(IHTMLObjectElement* object_elem, BSTR* id); |
- |
- // Returns the object element in the HTML page. |
- // Note that if we're not being hosted inside an HTML |
- // document, then this call will fail. |
- HRESULT GetObjectElement(IHTMLObjectElement** element); |
- |
- HRESULT CreateScriptBlockForEvent(IHTMLElement2* insert_after, |
- BSTR instance_id, BSTR script, |
- BSTR event_name); |
- |
- // Utility function that checks the size of the vector and if > 0 creates |
- // a variant for the string argument and forwards the call to the other |
- // FireEvent method. |
- void FireEvent(const EventHandlers& handlers, const std::string& arg); |
- |
- // Invokes all registered handlers in a vector of event handlers. |
- void FireEvent(const EventHandlers& handlers, IDispatch* event); |
- |
- // This variant is used for the privatemessage handler only. |
- void FireEvent(const EventHandlers& handlers, IDispatch* event, |
- BSTR target); |
- |
- // Installs a hook on the top-level window hosting the control. |
- HRESULT InstallTopLevelHook(IOleClientSite* client_site); |
- |
- // A hook attached to the top-level window containing the ActiveX control. |
- HHOOK chrome_wndproc_hook_; |
- |
- // Set to true if the current instance is attaching to an existing Chrome |
- // tab. This occurs when a window.open request is performed by Chrome. |
- bool attaching_to_existing_cf_tab_; |
-}; |
- |
-#endif // CHROME_FRAME_CHROME_FRAME_ACTIVEX_H_ |