Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(107)

Side by Side Diff: ui/window/platform_window.h

Issue 255823009: [WIP] ui/window: Master CL. Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
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.
4
5 #ifndef UI_WINDOW_PLATFORM_WINDOW_H_
6 #define UI_WINDOW_PLATFORM_WINDOW_H_
7
8 #include "base/memory/scoped_ptr.h"
9
10 namespace gfx {
11 class Rect;
12 }
13
14 namespace ui {
15
16 class Event;
17
18 enum PlatformWindowState {
19 PLATFORM_WINDOW_STATE_UNKNOWN,
20 PLATFORM_WINDOW_STATE_MAXIMIZED,
21 PLATFORM_WINDOW_STATE_MINIMIZED,
22 PLATFORM_WINDOW_STATE_NORMAL,
23 PLATFORM_WINDOW_STATE_FULLSCREEN,
24 };
25
26 class PlatformWindowDelegate {
tfarina 2014/04/28 18:22:38 do you mind moving this to platform_window_delegat
27 public:
28 virtual ~PlatformWindowDelegate() {}
29
30 virtual void OnBoundsChanged(const gfx::Rect& new_bounds) = 0;
31
32 virtual void OnDamageRect(const gfx::Rect& damaged_region) = 0;
33
34 virtual void DispatchEvent(ui::Event* event) = 0;
35
36 virtual void OnCloseRequest() = 0;
37 virtual void OnClosed() = 0;
38
39 virtual void OnWindowStateChanged(PlatformWindowState new_state) = 0;
40
41 virtual void OnLostCapture() = 0;
42 };
43
44 class PlatformWindow {
45 public:
46 virtual ~PlatformWindow() {}
47
48 virtual void Show() = 0;
49 virtual void Hide() = 0;
50 virtual void Close() = 0;
51
52 virtual void SetBounds(const gfx::Rect& bounds) = 0;
53
54 virtual void SetCapture() = 0;
55 virtual void ReleaseCapture() = 0;
56
57 virtual void ToggleFullscreen() = 0;
58 virtual void Maximize() = 0;
59 virtual void Minimize() = 0;
60 virtual void Restore() = 0;
61 };
62
63 scoped_ptr<PlatformWindow> CreateDefaultPlatformWindow(
64 PlatformWindowDelegate* delegate);
65
66 } // namespace ui
67
68 #endif // UI_WINDOW_PLATFORM_WINDOW_H_
OLDNEW
« no previous file with comments | « ui/window/DEPS ('k') | ui/window/window.gyp » ('j') | ui/window/window.gyp » ('J')

Powered by Google App Engine
This is Rietveld 408576698