Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(55)

Side by Side Diff: chrome_frame/chrome_frame_activex_base.h

Issue 6756044: Remove extension automation support that was used only by CEEE. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to head. Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome_frame/chrome_frame_activex.cc ('k') | chrome_frame/chrome_frame_automation.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 // that's what DISPPARAMS requires. 110 // that's what DISPPARAMS requires.
111 VARIANT args[2] = { { VT_BSTR, }, {VT_DISPATCH, } }; 111 VARIANT args[2] = { { VT_BSTR, }, {VT_DISPATCH, } };
112 args[0].bstrVal = target; 112 args[0].bstrVal = target;
113 args[1].pdispVal = event; 113 args[1].pdispVal = event;
114 114
115 FireMethodWithParams(CF_EVENT_DISPID_ONPRIVATEMESSAGE, 115 FireMethodWithParams(CF_EVENT_DISPID_ONPRIVATEMESSAGE,
116 args, 116 args,
117 arraysize(args)); 117 arraysize(args));
118 } 118 }
119 119
120 void Fire_onextensionready(BSTR path, long response) { // NOLINT
121 // Arguments in reverse order to the function declaration, because
122 // that's what DISPPARAMS requires.
123 VARIANT args[2] = { { VT_I4, }, { VT_BSTR, } };
124 args[0].lVal = response;
125 args[1].bstrVal = path;
126
127 FireMethodWithParams(CF_EVENT_DISPID_ONEXTENSIONREADY,
128 args,
129 arraysize(args));
130 }
131
132 void Fire_ongetenabledextensionscomplete(SAFEARRAY* extension_dirs) {
133 VARIANT args[1] = { { VT_ARRAY | VT_BSTR } };
134 args[0].parray = extension_dirs;
135
136 FireMethodWithParams(CF_EVENT_DISPID_ONGETENABLEDEXTENSIONSCOMPLETE,
137 args, arraysize(args));
138 }
139
140 void Fire_onchannelerror() { // NOLINT 120 void Fire_onchannelerror() { // NOLINT
141 FireMethodWithParams(CF_EVENT_DISPID_ONCHANNELERROR, NULL, 0); 121 FireMethodWithParams(CF_EVENT_DISPID_ONCHANNELERROR, NULL, 0);
142 } 122 }
143 123
144 void Fire_onclose() { // NOLINT 124 void Fire_onclose() { // NOLINT
145 FireMethodWithParams(CF_EVENT_DISPID_ONCLOSE, NULL, 0); 125 FireMethodWithParams(CF_EVENT_DISPID_ONCLOSE, NULL, 0);
146 } 126 }
147 }; 127 };
148 128
149 extern bool g_first_launch_by_process_; 129 extern bool g_first_launch_by_process_;
(...skipping 17 matching lines...) Expand all
167 public IOleControlImpl<T>, 147 public IOleControlImpl<T>,
168 public IOleObjectImpl<T>, 148 public IOleObjectImpl<T>,
169 public IOleInPlaceActiveObjectImpl<T>, 149 public IOleInPlaceActiveObjectImpl<T>,
170 public IViewObjectExImpl<T>, 150 public IViewObjectExImpl<T>,
171 public IOleInPlaceObjectWindowlessImpl<T>, 151 public IOleInPlaceObjectWindowlessImpl<T>,
172 public ISupportErrorInfo, 152 public ISupportErrorInfo,
173 public IQuickActivateImpl<T>, 153 public IQuickActivateImpl<T>,
174 public com_util::IProvideClassInfo2Impl<class_id, 154 public com_util::IProvideClassInfo2Impl<class_id,
175 DIID_DIChromeFrameEvents>, 155 DIID_DIChromeFrameEvents>,
176 public com_util::IDispatchImpl<IChromeFrame>, 156 public com_util::IDispatchImpl<IChromeFrame>,
177 public IChromeFrameInternal,
178 public IConnectionPointContainerImpl<T>, 157 public IConnectionPointContainerImpl<T>,
179 public ProxyDIChromeFrameEvents<T>, 158 public ProxyDIChromeFrameEvents<T>,
180 public IPropertyNotifySinkCP<T>, 159 public IPropertyNotifySinkCP<T>,
181 public CComCoClass<T, &class_id>, 160 public CComCoClass<T, &class_id>,
182 public CComControl<T>, 161 public CComControl<T>,
183 public ChromeFramePlugin<T> { 162 public ChromeFramePlugin<T> {
184 protected: 163 protected:
185 typedef std::set<base::win::ScopedComPtr<IDispatch> > EventHandlers; 164 typedef std::set<base::win::ScopedComPtr<IDispatch> > EventHandlers;
186 typedef ChromeFrameActivexBase<T, class_id> BasePlugin; 165 typedef ChromeFrameActivexBase<T, class_id> BasePlugin;
187 166
(...skipping 13 matching lines...) Expand all
201 180
202 DECLARE_OLEMISC_STATUS(OLEMISC_RECOMPOSEONRESIZE | OLEMISC_CANTLINKINSIDE | 181 DECLARE_OLEMISC_STATUS(OLEMISC_RECOMPOSEONRESIZE | OLEMISC_CANTLINKINSIDE |
203 OLEMISC_INSIDEOUT | OLEMISC_ACTIVATEWHENVISIBLE | 182 OLEMISC_INSIDEOUT | OLEMISC_ACTIVATEWHENVISIBLE |
204 OLEMISC_SETCLIENTSITEFIRST) 183 OLEMISC_SETCLIENTSITEFIRST)
205 184
206 DECLARE_NOT_AGGREGATABLE(T) 185 DECLARE_NOT_AGGREGATABLE(T)
207 186
208 BEGIN_COM_MAP(ChromeFrameActivexBase) 187 BEGIN_COM_MAP(ChromeFrameActivexBase)
209 COM_INTERFACE_ENTRY(IChromeFrame) 188 COM_INTERFACE_ENTRY(IChromeFrame)
210 COM_INTERFACE_ENTRY(IDispatch) 189 COM_INTERFACE_ENTRY(IDispatch)
211 COM_INTERFACE_ENTRY(IChromeFrameInternal)
212 COM_INTERFACE_ENTRY(IViewObjectEx) 190 COM_INTERFACE_ENTRY(IViewObjectEx)
213 COM_INTERFACE_ENTRY(IViewObject2) 191 COM_INTERFACE_ENTRY(IViewObject2)
214 COM_INTERFACE_ENTRY(IViewObject) 192 COM_INTERFACE_ENTRY(IViewObject)
215 COM_INTERFACE_ENTRY(IOleInPlaceObjectWindowless) 193 COM_INTERFACE_ENTRY(IOleInPlaceObjectWindowless)
216 COM_INTERFACE_ENTRY(IOleInPlaceObject) 194 COM_INTERFACE_ENTRY(IOleInPlaceObject)
217 COM_INTERFACE_ENTRY2(IOleWindow, IOleInPlaceObjectWindowless) 195 COM_INTERFACE_ENTRY2(IOleWindow, IOleInPlaceObjectWindowless)
218 COM_INTERFACE_ENTRY(IOleInPlaceActiveObject) 196 COM_INTERFACE_ENTRY(IOleInPlaceActiveObject)
219 COM_INTERFACE_ENTRY(IOleControl) 197 COM_INTERFACE_ENTRY(IOleControl)
220 COM_INTERFACE_ENTRY(IOleObject) 198 COM_INTERFACE_ENTRY(IOleObject)
221 COM_INTERFACE_ENTRY(ISupportErrorInfo) 199 COM_INTERFACE_ENTRY(ISupportErrorInfo)
(...skipping 597 matching lines...) Expand 10 before | Expand all | Expand 10 after
819 utf8_origin, 797 utf8_origin,
820 utf8_target)) { 798 utf8_target)) {
821 Error(L"Failed to post message to chrome frame"); 799 Error(L"Failed to post message to chrome frame");
822 return E_FAIL; 800 return E_FAIL;
823 } 801 }
824 802
825 return S_OK; 803 return S_OK;
826 } 804 }
827 805
828 STDMETHOD(installExtension)(BSTR crx_path) { 806 STDMETHOD(installExtension)(BSTR crx_path) {
829 DCHECK(automation_client_.get()); 807 NOTREACHED(); // Deprecated.
830 808 return E_NOTIMPL;
831 if (NULL == crx_path) {
832 NOTREACHED();
833 return E_INVALIDARG;
834 }
835
836 if (!is_privileged()) {
837 DLOG(ERROR) << "Attempt to installExtension in non-privileged mode";
838 return E_ACCESSDENIED;
839 }
840
841 FilePath::StringType crx_path_str(crx_path);
842 FilePath crx_file_path(crx_path_str);
843
844 automation_client_->InstallExtension(crx_file_path, NULL);
845 return S_OK;
846 } 809 }
847 810
848 STDMETHOD(loadExtension)(BSTR path) { 811 STDMETHOD(loadExtension)(BSTR path) {
849 DCHECK(automation_client_.get()); 812 NOTREACHED(); // Deprecated.
850 813 return E_NOTIMPL;
851 if (NULL == path) {
852 NOTREACHED();
853 return E_INVALIDARG;
854 }
855
856 if (!is_privileged()) {
857 DLOG(ERROR) << "Attempt to loadExtension in non-privileged mode";
858 return E_ACCESSDENIED;
859 }
860
861 FilePath::StringType path_str(path);
862 FilePath file_path(path_str);
863
864 automation_client_->LoadExpandedExtension(file_path, NULL);
865 return S_OK;
866 } 814 }
867 815
868 STDMETHOD(getEnabledExtensions)() { 816 STDMETHOD(getEnabledExtensions)() {
869 DCHECK(automation_client_.get()); 817 NOTREACHED(); // Deprecated.
870 818 return E_NOTIMPL;
871 if (!is_privileged()) {
872 DLOG(ERROR) << "Attempt to getEnabledExtensions in non-privileged mode";
873 return E_ACCESSDENIED;
874 }
875
876 automation_client_->GetEnabledExtensions(NULL);
877 return S_OK;
878 }
879
880 STDMETHOD(getSessionId)(int* session_id) {
881 DCHECK(automation_client_.get());
882 DCHECK(session_id);
883
884 if (!is_privileged()) {
885 DLOG(ERROR) << "Attempt to getSessionId in non-privileged mode";
886 return E_ACCESSDENIED;
887 }
888
889 *session_id = automation_client_->GetSessionId();
890 return (*session_id) == -1 ? S_FALSE : S_OK;
891 } 819 }
892 820
893 STDMETHOD(registerBhoIfNeeded)() { 821 STDMETHOD(registerBhoIfNeeded)() {
894 return E_NOTIMPL; 822 return E_NOTIMPL;
895 } 823 }
896 824
897 // Returns the vector of event handlers for a given event (e.g. "load"). 825 // Returns the vector of event handlers for a given event (e.g. "load").
898 // If the event type isn't recognized, the function fills in a descriptive 826 // If the event type isn't recognized, the function fills in a descriptive
899 // error (IErrorInfo) and returns E_INVALIDARG. 827 // error (IErrorInfo) and returns E_INVALIDARG.
900 HRESULT GetHandlersForEvent(BSTR event_type, EventHandlers** handlers) { 828 HRESULT GetHandlersForEvent(BSTR event_type, EventHandlers** handlers) {
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after
1273 EventHandlers onreadystatechanged_; 1201 EventHandlers onreadystatechanged_;
1274 EventHandlers onprivatemessage_; 1202 EventHandlers onprivatemessage_;
1275 EventHandlers onextensionready_; 1203 EventHandlers onextensionready_;
1276 1204
1277 // Handle network requests when host network stack is used. Passed to the 1205 // Handle network requests when host network stack is used. Passed to the
1278 // automation client on initialization. 1206 // automation client on initialization.
1279 scoped_ptr<UrlmonUrlRequestManager> url_fetcher_; 1207 scoped_ptr<UrlmonUrlRequestManager> url_fetcher_;
1280 }; 1208 };
1281 1209
1282 #endif // CHROME_FRAME_CHROME_FRAME_ACTIVEX_BASE_H_ 1210 #endif // CHROME_FRAME_CHROME_FRAME_ACTIVEX_BASE_H_
OLDNEW
« no previous file with comments | « chrome_frame/chrome_frame_activex.cc ('k') | chrome_frame/chrome_frame_automation.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698