1 // Copyright 2014 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.
5 #ifndef UI_OZONE_PLATFORM_TEST_TEST_WINDOW_H_
6 #define UI_OZONE_PLATFORM_TEST_TEST_WINDOW_H_
8 #include "base/files/file_path.h"
9 #include "ui/gfx/geometry/rect.h"
10 #include "ui/gfx/native_widget_types.h"
11 #include "ui/platform_window/platform_window.h"
15 class PlatformWindowDelegate
;
16 class TestWindowManager
;
18 class TestWindow
: public PlatformWindow
{
20 TestWindow(PlatformWindowDelegate
* delegate
,
21 TestWindowManager
* manager
,
22 const gfx::Rect
& bounds
);
23 ~TestWindow() override
;
25 // Path for image file for this window.
26 base::FilePath
path();
29 gfx::Rect
GetBounds() override
;
30 void SetBounds(const gfx::Rect
& bounds
) override
;
31 void SetTitle(const base::string16
& title
) override
;
34 void Close() override
;
35 void SetCapture() override
;
36 void ReleaseCapture() override
;
37 void ToggleFullscreen() override
;
38 void Maximize() override
;
39 void Minimize() override
;
40 void Restore() override
;
41 void SetCursor(PlatformCursor cursor
) override
;
42 void MoveCursorTo(const gfx::Point
& location
) override
;
43 void ConfineCursorToBounds(const gfx::Rect
& bounds
) override
;
44 PlatformImeController
* GetPlatformImeController() override
;
47 PlatformWindowDelegate
* delegate_
;
48 TestWindowManager
* manager_
;
50 gfx::AcceleratedWidget widget_
;
52 DISALLOW_COPY_AND_ASSIGN(TestWindow
);
57 #endif // UI_OZONE_PLATFORM_TEST_TEST_WINDOW_H_