OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef UI_PLATFORM_WINDOW_PLATFORM_WINDOW_H_ | 5 #ifndef UI_PLATFORM_WINDOW_PLATFORM_WINDOW_H_ |
6 #define UI_PLATFORM_WINDOW_PLATFORM_WINDOW_H_ | 6 #define UI_PLATFORM_WINDOW_PLATFORM_WINDOW_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "base/strings/string16.h" | 10 #include "base/strings/string16.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 // Each instance of PlatformWindow represents a single window in the | 23 // Each instance of PlatformWindow represents a single window in the |
24 // underlying platform windowing system (i.e. X11/Win/OSX). | 24 // underlying platform windowing system (i.e. X11/Win/OSX). |
25 class PlatformWindow { | 25 class PlatformWindow { |
26 public: | 26 public: |
27 virtual ~PlatformWindow() {} | 27 virtual ~PlatformWindow() {} |
28 | 28 |
29 virtual void Show() = 0; | 29 virtual void Show() = 0; |
30 virtual void Hide() = 0; | 30 virtual void Hide() = 0; |
31 virtual void Close() = 0; | 31 virtual void Close() = 0; |
32 | 32 |
| 33 // Informs the window it is going to be destroyed sometime soon. This is only |
| 34 // called for specific code paths, for example by Ash, so it shouldn't be |
| 35 // assumed this will get called before destruction. |
| 36 virtual void PrepareForShutdown() = 0; |
| 37 |
33 // Sets and gets the bounds of the platform-window. Note that the bounds is in | 38 // Sets and gets the bounds of the platform-window. Note that the bounds is in |
34 // physical pixel coordinates. | 39 // physical pixel coordinates. |
35 virtual void SetBounds(const gfx::Rect& bounds) = 0; | 40 virtual void SetBounds(const gfx::Rect& bounds) = 0; |
36 virtual gfx::Rect GetBounds() = 0; | 41 virtual gfx::Rect GetBounds() = 0; |
37 | 42 |
38 virtual void SetTitle(const base::string16& title) = 0; | 43 virtual void SetTitle(const base::string16& title) = 0; |
39 | 44 |
40 virtual void SetCapture() = 0; | 45 virtual void SetCapture() = 0; |
41 virtual void ReleaseCapture() = 0; | 46 virtual void ReleaseCapture() = 0; |
42 | 47 |
(...skipping 12 matching lines...) Expand all Loading... |
55 virtual void ConfineCursorToBounds(const gfx::Rect& bounds) = 0; | 60 virtual void ConfineCursorToBounds(const gfx::Rect& bounds) = 0; |
56 | 61 |
57 // The PlatformImeController is owned by the PlatformWindow, the ownership is | 62 // The PlatformImeController is owned by the PlatformWindow, the ownership is |
58 // not transferred. | 63 // not transferred. |
59 virtual PlatformImeController* GetPlatformImeController() = 0; | 64 virtual PlatformImeController* GetPlatformImeController() = 0; |
60 }; | 65 }; |
61 | 66 |
62 } // namespace ui | 67 } // namespace ui |
63 | 68 |
64 #endif // UI_PLATFORM_WINDOW_PLATFORM_WINDOW_H_ | 69 #endif // UI_PLATFORM_WINDOW_PLATFORM_WINDOW_H_ |
OLD | NEW |