| Index: chrome_frame/test/perf/silverlight.cc
|
| diff --git a/chrome_frame/test/perf/silverlight.cc b/chrome_frame/test/perf/silverlight.cc
|
| deleted file mode 100644
|
| index 9fb164af2e3d1185ff1bb836b0bb9aec5b5a419d..0000000000000000000000000000000000000000
|
| --- a/chrome_frame/test/perf/silverlight.cc
|
| +++ /dev/null
|
| @@ -1,171 +0,0 @@
|
| -// Copyright (c) 2011 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 <atlbase.h>
|
| -#include <atlwin.h>
|
| -#include <atlhost.h>
|
| -
|
| -#include "base/test/perf_time_logger.h"
|
| -#include "base/win/scoped_comptr.h"
|
| -#include "chrome_frame/test/perf/chrome_frame_perftest.h"
|
| -
|
| -interface IXcpControlDownloadCallback;
|
| -interface __declspec(uuid("1B36028E-B491-4bb2-8584-8A9E0A677D6E"))
|
| -IXcpControlHost : public IUnknown {
|
| - typedef enum {
|
| - XcpHostOption_FreezeOnInitialFrame = 0x001,
|
| - XcpHostOption_DisableFullScreen = 0x002,
|
| - XcpHostOption_DisableManagedExecution = 0x008,
|
| - XcpHostOption_EnableCrossDomainDownloads = 0x010,
|
| - XcpHostOption_UseCustomAppDomain = 0x020,
|
| - XcpHostOption_DisableNetworking = 0x040,
|
| - XcpHostOption_DisableScriptCallouts = 0x080,
|
| - XcpHostOption_EnableHtmlDomAccess = 0x100,
|
| - XcpHostOption_EnableScriptableObjectAccess = 0x200,
|
| - } XcpHostOptions;
|
| -
|
| - STDMETHOD(GetHostOptions)(DWORD* pdwOptions) PURE;
|
| - STDMETHOD(NotifyLoaded()) PURE;
|
| - STDMETHOD(NotifyError)(BSTR bstrError, BSTR bstrSource,
|
| - long nLine, long nColumn) PURE;
|
| - STDMETHOD(InvokeHandler)(BSTR bstrName, VARIANT varArg1, VARIANT varArg2,
|
| - VARIANT* pvarResult) PURE;
|
| - STDMETHOD(GetBaseUrl)(BSTR* pbstrUrl) PURE;
|
| - STDMETHOD(GetNamedSource)(BSTR bstrSourceName, BSTR* pbstrSource) PURE;
|
| - STDMETHOD(DownloadUrl)(BSTR bstrUrl, IXcpControlDownloadCallback* pCallback,
|
| - IStream** ppStream) PURE;
|
| -};
|
| -
|
| -// Not templatized, to trade execution speed vs typing
|
| -class IXcpControlHostImpl : public IXcpControlHost {
|
| - public:
|
| - STDMETHOD(GetHostOptions)(DWORD* pdwOptions) {
|
| - return E_NOTIMPL;
|
| - }
|
| -
|
| - STDMETHOD(NotifyLoaded()) {
|
| - return E_NOTIMPL;
|
| - }
|
| -
|
| - STDMETHOD(NotifyError)(BSTR bstrError, BSTR bstrSource,
|
| - long nLine, long nColumn) {
|
| - return E_NOTIMPL;
|
| - }
|
| -
|
| - STDMETHOD(InvokeHandler)(BSTR bstrName, VARIANT varArg1, VARIANT varArg2,
|
| - VARIANT* pvarResult) {
|
| - return E_NOTIMPL;
|
| - }
|
| -
|
| - STDMETHOD(GetBaseUrl)(BSTR* pbstrUrl) {
|
| - return E_NOTIMPL;
|
| - }
|
| -
|
| - STDMETHOD(GetNamedSource)(BSTR bstrSourceName, BSTR* pbstrSource) {
|
| - return E_NOTIMPL;
|
| - }
|
| -
|
| - STDMETHOD(DownloadUrl)(BSTR bstrUrl, IXcpControlDownloadCallback* pCallback,
|
| - IStream** ppStream) {
|
| - return E_NOTIMPL;
|
| - }
|
| -};
|
| -
|
| -// Silverlight container. Supports do-nothing implementation of IXcpControlHost.
|
| -// Should be extended to do some real movie-or-something download.
|
| -class SilverlightContainer
|
| - : public IServiceProviderImpl<SilverlightContainer>,
|
| - public IXcpControlHostImpl,
|
| - public CWindowImpl<
|
| - SilverlightContainer,
|
| - CWindow,
|
| - CWinTraits<WS_OVERLAPPEDWINDOW | WS_VISIBLE | WS_CLIPCHILDREN |
|
| - WS_CLIPSIBLINGS,
|
| - WS_EX_APPWINDOW | WS_EX_WINDOWEDGE> >,
|
| - public CComObjectRootEx<CComSingleThreadModel> {
|
| - public:
|
| - DECLARE_WND_CLASS_EX(L"Silverlight_container", 0, 0)
|
| - BEGIN_COM_MAP(SilverlightContainer)
|
| - COM_INTERFACE_ENTRY(IServiceProvider)
|
| - COM_INTERFACE_ENTRY(IXcpControlHost)
|
| - END_COM_MAP()
|
| -
|
| - BEGIN_SERVICE_MAP(SilverlightContainer)
|
| - SERVICE_ENTRY(__uuidof(IXcpControlHost))
|
| - END_SERVICE_MAP()
|
| -
|
| - BEGIN_MSG_MAP(ChromeFrameActiveXContainer)
|
| - MESSAGE_HANDLER(WM_DESTROY, OnDestroy)
|
| - END_MSG_MAP()
|
| -
|
| - LRESULT OnDestroy(UINT, WPARAM, LPARAM, BOOL& handled) {
|
| - host_.Release();
|
| - return 0;
|
| - }
|
| -
|
| - virtual void OnFinalMessage(HWND ) {
|
| - }
|
| -
|
| - static const wchar_t* GetWndCaption() {
|
| - return L"Silverlight Container";
|
| - }
|
| -
|
| - HRESULT CreateWndAndHost(RECT* r) {
|
| - Create(NULL, r);
|
| - ShowWindow(SW_SHOWDEFAULT);
|
| -
|
| - CComPtr<IUnknown> spUnkContainer;
|
| - HRESULT hr = CAxHostWindow::_CreatorClass::CreateInstance(NULL,
|
| - __uuidof(IAxWinHostWindow), reinterpret_cast<void**>(&host_));
|
| - if (SUCCEEDED(hr)) {
|
| - CComPtr<IObjectWithSite> p;
|
| - hr = host_.QueryInterface(&p);
|
| - if (SUCCEEDED(hr)) {
|
| - p->SetSite(GetUnknown());
|
| - }
|
| - }
|
| - return hr;
|
| - }
|
| -
|
| - HRESULT CreateControl() {
|
| - HRESULT hr = host_->CreateControl(L"AgControl.AgControl", m_hWnd, NULL);
|
| - EXPECT_HRESULT_SUCCEEDED(hr);
|
| - return hr;
|
| - }
|
| -
|
| - base::win::ScopedComPtr<IAxWinHostWindow> host_;
|
| -};
|
| -
|
| -// Create and in-place Silverlight control. Should be extended to do something
|
| -// more meaningful.
|
| -TEST(ChromeFramePerf, DISABLED_HostSilverlight2) {
|
| - SimpleModule module;
|
| - AtlAxWinInit();
|
| - CComObjectStackEx<SilverlightContainer> wnd;
|
| - RECT rc = {0, 0, 800, 600};
|
| - wnd.CreateWndAndHost(&rc);
|
| - base::PerfTimeLogger perf_create("Create Silverlight Control2");
|
| - wnd.CreateControl();
|
| - perf_create.Done();
|
| - wnd.DestroyWindow();
|
| -}
|
| -
|
| -// Simplest test - creates in-place Silverlight control.
|
| -TEST(ChromeFramePerf, DISABLED_HostSilverlight) {
|
| - SimpleModule module;
|
| - AtlAxWinInit();
|
| - CAxWindow host;
|
| - RECT rc = {0, 0, 800, 600};
|
| - base::PerfTimeLogger perf_create("Create Silverlight Control");
|
| - host.Create(NULL, rc, L"AgControl.AgControl",
|
| - WS_OVERLAPPEDWINDOW | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS,
|
| - WS_EX_APPWINDOW | WS_EX_WINDOWEDGE);
|
| - EXPECT_TRUE(host.m_hWnd != NULL);
|
| - base::win::ScopedComPtr<IDispatch> disp;
|
| - HRESULT hr = host.QueryControl(disp.Receive());
|
| - EXPECT_HRESULT_SUCCEEDED(hr);
|
| - disp.Release();
|
| - perf_create.Done();
|
| -}
|
| -
|
|
|