1// Copyright (c) 2013 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef ASH_TEST_TEST_METRO_VIEWER_PROCESS_HOST_H_ 6#define ASH_TEST_TEST_METRO_VIEWER_PROCESS_HOST_H_ 7 8#include "base/memory/scoped_ptr.h" 9#include "win8/viewer/metro_viewer_process_host.h" 10 11class AcceleratedSurface; 12 13namespace ash { 14namespace test { 15 16class TestMetroViewerProcessHost : public win8::MetroViewerProcessHost { 17 public: 18 TestMetroViewerProcessHost(base::SingleThreadTaskRunner* ipc_task_runner); 19 virtual ~TestMetroViewerProcessHost(); 20 21 bool closed_unexpectedly() { return closed_unexpectedly_; } 22 23 private: 24 // win8::MetroViewerProcessHost implementation 25 virtual void OnChannelError() OVERRIDE; 26 virtual void OnSetTargetSurface(gfx::NativeViewId target_surface) OVERRIDE; 27 virtual void OnOpenURL(const string16& url) OVERRIDE; 28 virtual void OnHandleSearchRequest(const string16& search_string) OVERRIDE; 29 30 scoped_ptr<AcceleratedSurface> backing_surface_; 31 32 bool closed_unexpectedly_; 33 34 DISALLOW_COPY_AND_ASSIGN(TestMetroViewerProcessHost); 35}; 36 37 38} // namespace test 39} // namespace ash 40 41#endif // ASH_TEST_TEST_METRO_VIEWER_PROCESS_HOST_H_ 42