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

Side by Side Diff: components/mus/ws/server_window.h

Issue 1759523002: mus: Server-side implementation of modal windows (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 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
OLDNEW
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 COMPONENTS_MUS_WS_SERVER_WINDOW_H_ 5 #ifndef COMPONENTS_MUS_WS_SERVER_WINDOW_H_
6 #define COMPONENTS_MUS_WS_SERVER_WINDOW_H_ 6 #define COMPONENTS_MUS_WS_SERVER_WINDOW_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <vector> 10 #include <vector>
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 101
102 // Transient window management. 102 // Transient window management.
103 void AddTransientWindow(ServerWindow* child); 103 void AddTransientWindow(ServerWindow* child);
104 void RemoveTransientWindow(ServerWindow* child); 104 void RemoveTransientWindow(ServerWindow* child);
105 105
106 ServerWindow* transient_parent() { return transient_parent_; } 106 ServerWindow* transient_parent() { return transient_parent_; }
107 const ServerWindow* transient_parent() const { return transient_parent_; } 107 const ServerWindow* transient_parent() const { return transient_parent_; }
108 108
109 const Windows& transient_children() const { return transient_children_; } 109 const Windows& transient_children() const { return transient_children_; }
110 110
111 bool is_modal() const { return is_modal_; }
112 void SetAsModal();
113
111 // Returns true if this contains |window| or is |window|. 114 // Returns true if this contains |window| or is |window|.
112 bool Contains(const ServerWindow* window) const; 115 bool Contains(const ServerWindow* window) const;
113 116
114 // Returns the visibility requested by this window. IsDrawn() returns whether 117 // Returns the visibility requested by this window. IsDrawn() returns whether
115 // the window is actually visible on screen. 118 // the window is actually visible on screen.
116 bool visible() const { return visible_; } 119 bool visible() const { return visible_; }
117 void SetVisible(bool value); 120 void SetVisible(bool value);
118 121
119 float opacity() const { return opacity_; } 122 float opacity() const { return opacity_; }
120 void SetOpacity(float value); 123 void SetOpacity(float value);
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 ServerWindow* parent_; 193 ServerWindow* parent_;
191 Windows children_; 194 Windows children_;
192 195
193 // Transient window management. 196 // Transient window management.
194 // If non-null we're actively restacking transient as the result of a 197 // If non-null we're actively restacking transient as the result of a
195 // transient ancestor changing. 198 // transient ancestor changing.
196 ServerWindow* stacking_target_; 199 ServerWindow* stacking_target_;
197 ServerWindow* transient_parent_; 200 ServerWindow* transient_parent_;
198 Windows transient_children_; 201 Windows transient_children_;
199 202
203 bool is_modal_;
200 bool visible_; 204 bool visible_;
201 gfx::Rect bounds_; 205 gfx::Rect bounds_;
202 gfx::Insets client_area_; 206 gfx::Insets client_area_;
203 std::vector<gfx::Rect> additional_client_areas_; 207 std::vector<gfx::Rect> additional_client_areas_;
204 scoped_ptr<ServerWindowSurfaceManager> surface_manager_; 208 scoped_ptr<ServerWindowSurfaceManager> surface_manager_;
205 mojom::Cursor cursor_id_; 209 mojom::Cursor cursor_id_;
206 float opacity_; 210 float opacity_;
207 bool can_focus_; 211 bool can_focus_;
208 gfx::Transform transform_; 212 gfx::Transform transform_;
209 ui::TextInputState text_input_state_; 213 ui::TextInputState text_input_state_;
210 214
211 Properties properties_; 215 Properties properties_;
212 216
213 gfx::Vector2d underlay_offset_; 217 gfx::Vector2d underlay_offset_;
214 218
215 // The hit test for windows extends outside the bounds of the window by this 219 // The hit test for windows extends outside the bounds of the window by this
216 // amount. 220 // amount.
217 gfx::Insets extended_hit_test_region_; 221 gfx::Insets extended_hit_test_region_;
218 222
219 base::ObserverList<ServerWindowObserver> observers_; 223 base::ObserverList<ServerWindowObserver> observers_;
220 224
221 DISALLOW_COPY_AND_ASSIGN(ServerWindow); 225 DISALLOW_COPY_AND_ASSIGN(ServerWindow);
222 }; 226 };
223 227
224 } // namespace ws 228 } // namespace ws
225 } // namespace mus 229 } // namespace mus
226 230
227 #endif // COMPONENTS_MUS_WS_SERVER_WINDOW_H_ 231 #endif // COMPONENTS_MUS_WS_SERVER_WINDOW_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698