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

Side by Side Diff: components/mus/ws/window_manager_state.cc

Issue 2008193002: Change mojo geometry structs from using type converters to StructTraits. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 6 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #include "components/mus/ws/window_manager_state.h" 5 #include "components/mus/ws/window_manager_state.h"
6 6
7 #include <queue> 7 #include <queue>
8 8
9 #include "base/memory/weak_ptr.h" 9 #include "base/memory/weak_ptr.h"
10 #include "components/mus/common/event_matcher_util.h" 10 #include "components/mus/common/event_matcher_util.h"
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 } 138 }
139 139
140 void WindowManagerState::AddSystemModalWindow(ServerWindow* window) { 140 void WindowManagerState::AddSystemModalWindow(ServerWindow* window) {
141 DCHECK(!window->transient_parent()); 141 DCHECK(!window->transient_parent());
142 event_dispatcher_.AddSystemModalWindow(window); 142 event_dispatcher_.AddSystemModalWindow(window);
143 } 143 }
144 144
145 mojom::DisplayPtr WindowManagerState::ToMojomDisplay() const { 145 mojom::DisplayPtr WindowManagerState::ToMojomDisplay() const {
146 mojom::DisplayPtr display_ptr = display_->ToMojomDisplay(); 146 mojom::DisplayPtr display_ptr = display_->ToMojomDisplay();
147 // TODO(sky): set work area. 147 // TODO(sky): set work area.
148 display_ptr->work_area = display_ptr->bounds.Clone(); 148 display_ptr->work_area = display_ptr->bounds;
149 display_ptr->frame_decoration_values = frame_decoration_values_.Clone(); 149 display_ptr->frame_decoration_values = frame_decoration_values_.Clone();
150 return display_ptr; 150 return display_ptr;
151 } 151 }
152 152
153 void WindowManagerState::OnWillDestroyTree(WindowTree* tree) { 153 void WindowManagerState::OnWillDestroyTree(WindowTree* tree) {
154 if (tree_awaiting_input_ack_ != tree) 154 if (tree_awaiting_input_ack_ != tree)
155 return; 155 return;
156 // The WindowTree is dying. So it's not going to ack the event. 156 // The WindowTree is dying. So it's not going to ack the event.
157 // If the dying tree matches the root |tree_| marked as handled so we don't 157 // If the dying tree matches the root |tree_| marked as handled so we don't
158 // notify it of accelerators. 158 // notify it of accelerators.
159 OnEventAck(tree_awaiting_input_ack_, tree == tree_ 159 OnEventAck(tree_awaiting_input_ack_, tree == tree_
160 ? mojom::EventResult::HANDLED 160 ? mojom::EventResult::HANDLED
161 : mojom::EventResult::UNHANDLED); 161 : mojom::EventResult::UNHANDLED);
162 } 162 }
163 163
164 WindowManagerState::WindowManagerState(Display* display, 164 WindowManagerState::WindowManagerState(Display* display,
165 PlatformDisplay* platform_display, 165 PlatformDisplay* platform_display,
166 bool is_user_id_valid, 166 bool is_user_id_valid,
167 const UserId& user_id) 167 const UserId& user_id)
168 : display_(display), 168 : display_(display),
169 platform_display_(platform_display), 169 platform_display_(platform_display),
170 is_user_id_valid_(is_user_id_valid), 170 is_user_id_valid_(is_user_id_valid),
171 user_id_(user_id), 171 user_id_(user_id),
172 event_dispatcher_(this), 172 event_dispatcher_(this),
173 weak_factory_(this) { 173 weak_factory_(this) {
174 frame_decoration_values_ = mojom::FrameDecorationValues::New(); 174 frame_decoration_values_ = mojom::FrameDecorationValues::New();
175 frame_decoration_values_->normal_client_area_insets = mojo::Insets::New();
176 frame_decoration_values_->maximized_client_area_insets = mojo::Insets::New();
177 frame_decoration_values_->max_title_bar_button_width = 0u; 175 frame_decoration_values_->max_title_bar_button_width = 0u;
178 176
179 root_.reset(window_server()->CreateServerWindow( 177 root_.reset(window_server()->CreateServerWindow(
180 window_server()->display_manager()->GetAndAdvanceNextRootId(), 178 window_server()->display_manager()->GetAndAdvanceNextRootId(),
181 ServerWindow::Properties())); 179 ServerWindow::Properties()));
182 // Our root is always a child of the Display's root. Do this 180 // Our root is always a child of the Display's root. Do this
183 // before the WindowTree has been created so that the client doesn't get 181 // before the WindowTree has been created so that the client doesn't get
184 // notified of the add, bounds change and visibility change. 182 // notified of the add, bounds change and visibility change.
185 root_->SetBounds(gfx::Rect(display->root_window()->bounds().size())); 183 root_->SetBounds(gfx::Rect(display->root_window()->bounds().size()));
186 root_->SetVisible(true); 184 root_->SetVisible(true);
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after
422 weak_accelerator); 420 weak_accelerator);
423 } 421 }
424 422
425 void WindowManagerState::OnEventTargetNotFound(const ui::Event& event) { 423 void WindowManagerState::OnEventTargetNotFound(const ui::Event& event) {
426 window_server()->SendToEventObservers(event, user_id_, 424 window_server()->SendToEventObservers(event, user_id_,
427 nullptr /* ignore_tree */); 425 nullptr /* ignore_tree */);
428 } 426 }
429 427
430 } // namespace ws 428 } // namespace ws
431 } // namespace mus 429 } // namespace mus
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698