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 11 class AcceleratedSurface; 12 13 namespace ash { 14 namespace test { 15 16 class TestMetroViewerProcessHost : public win8::MetroViewerProcessHost { 17 public: 18 TestMetroViewerProcessHost(base::SingleThreadTaskRunner* ipc_task_runner); 19 virtual ~TestMetroViewerProcessHost(); 20 closed_unexpectedly()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 virtual void OnWindowSizeChanged(uint32 width, uint32 height) OVERRIDE; 30 31 scoped_ptr<AcceleratedSurface> backing_surface_; 32 33 bool closed_unexpectedly_; 34 35 DISALLOW_COPY_AND_ASSIGN(TestMetroViewerProcessHost); 36 }; 37 38 39 } // namespace test 40 } // namespace ash 41 42 #endif // ASH_TEST_TEST_METRO_VIEWER_PROCESS_HOST_H_ 43