Index: webkit/default_plugin/activex_installer.cc |
=================================================================== |
--- webkit/default_plugin/activex_installer.cc (revision 25626) |
+++ webkit/default_plugin/activex_installer.cc (working copy) |
@@ -1,117 +0,0 @@ |
-// Copyright (c) 2006-2008 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. |
- |
-#include "webkit/default_plugin/activex_installer.h" |
-#include "base/string_util.h" |
- |
-ActiveXInstaller::ActiveXInstaller() |
- : wnd_(NULL), |
- notification_msg_(0) { |
-} |
- |
-void ActiveXInstaller::Cleanup() { |
- if (bind_ctx_ != NULL) { |
- RevokeBindStatusCallback(bind_ctx_, this); |
- bind_ctx_.Release(); |
- } |
-} |
- |
-HRESULT ActiveXInstaller::StartDownload(const std::string& clsid, |
- const std::string& codebase, |
- HWND wnd, |
- UINT notification_msg) { |
- wnd_ = wnd; |
- notification_msg_ = notification_msg; |
- |
- HRESULT hr = E_FAIL; |
- do { |
- CLSID id; |
- hr = CLSIDFromString(const_cast<LPOLESTR>(ASCIIToWide(clsid).c_str()), &id); |
- if (FAILED(hr)) |
- break; |
- |
- // Create the bind context, register it with myself (status callback). |
- hr = CreateBindCtx(0, bind_ctx_.Receive()); |
- if (FAILED(hr)) |
- break; |
- BIND_OPTS opts; |
- opts.cbStruct = sizeof(opts); |
- bind_ctx_->GetBindOptions(&opts); |
- opts.grfFlags |= BIND_MAYBOTHERUSER; |
- bind_ctx_->SetBindOptions(&opts); |
- |
- hr = RegisterBindStatusCallback(bind_ctx_, this, 0, 0); |
- if (FAILED(hr)) |
- break; |
- CComPtr<IClassFactory> class_factory; |
- hr = CoGetClassObjectFromURL(id, ASCIIToWide(codebase).c_str(), 0xffffffff, |
- 0xffffffff, NULL, bind_ctx_, |
- CLSCTX_INPROC_HANDLER | CLSCTX_INPROC_SERVER, |
- 0, IID_IClassFactory, (void**)&class_factory); |
- } while(false); |
- |
- switch (hr) { |
- case S_OK: |
- PostMessage(wnd_, notification_msg_, hr, 0); |
- break; |
- case MK_S_ASYNCHRONOUS: |
- // Still need to wait until IBindStatusCallback is updated. |
- break; |
- default: |
- PostMessage(wnd_, notification_msg_, hr, 0); |
- break; |
- } |
- return hr; |
-} |
- |
-HRESULT STDMETHODCALLTYPE ActiveXInstaller::OnStartBinding(DWORD dw_reserved, |
- IBinding* pib) { |
- return S_OK; |
-} |
- |
-HRESULT STDMETHODCALLTYPE ActiveXInstaller::GetPriority(LONG* pn_priority) { |
- return E_NOTIMPL; |
-} |
- |
-HRESULT STDMETHODCALLTYPE ActiveXInstaller::OnLowResource(DWORD reserved) { |
- return E_NOTIMPL; |
-} |
- |
-HRESULT STDMETHODCALLTYPE ActiveXInstaller::OnProgress(ULONG ul_progress, |
- ULONG ul_progress_max, |
- ULONG ul_status_code, |
- LPCWSTR sz_status_text) { |
- return S_OK; |
-} |
- |
-HRESULT STDMETHODCALLTYPE ActiveXInstaller::OnStopBinding(HRESULT hresult, |
- LPCWSTR sz_error) { |
- if (wnd_) |
- PostMessage(wnd_, notification_msg_, hresult, 0); |
- return S_OK; |
-} |
- |
-HRESULT STDMETHODCALLTYPE ActiveXInstaller::GetBindInfo(DWORD* grf_bindf, |
- BINDINFO* pbindinfo) { |
- return S_OK; |
-} |
- |
-HRESULT STDMETHODCALLTYPE ActiveXInstaller::OnDataAvailable( |
- DWORD grf_bscf, |
- DWORD dw_size, |
- FORMATETC* pformatetc, |
- STGMEDIUM* pstgmed) { |
- return S_OK; |
-} |
- |
-HRESULT STDMETHODCALLTYPE ActiveXInstaller::OnObjectAvailable(REFIID riid, |
- IUnknown* punk) { |
- return S_OK; |
-} |
- |
-HRESULT STDMETHODCALLTYPE ActiveXInstaller::GetWindow(REFGUID rguid_reason, |
- HWND* phwnd) { |
- *phwnd = wnd_; |
- return S_OK; |
-} |