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

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

Issue 1554783002: Removes WindowTreeImpl::creator_id_ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix compile Created 4 years, 11 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
« no previous file with comments | « components/mus/ws/window_tree_impl.h ('k') | components/mus/ws/window_tree_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 #include "components/mus/ws/window_tree_impl.h" 5 #include "components/mus/ws/window_tree_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 target_ = nullptr; 57 target_ = nullptr;
58 } 58 }
59 59
60 ServerWindow* target_; 60 ServerWindow* target_;
61 mojom::EventPtr event_; 61 mojom::EventPtr event_;
62 62
63 DISALLOW_COPY_AND_ASSIGN(TargetedEvent); 63 DISALLOW_COPY_AND_ASSIGN(TargetedEvent);
64 }; 64 };
65 65
66 WindowTreeImpl::WindowTreeImpl(ConnectionManager* connection_manager, 66 WindowTreeImpl::WindowTreeImpl(ConnectionManager* connection_manager,
67 ConnectionSpecificId creator_id,
68 const WindowId& root_id, 67 const WindowId& root_id,
69 uint32_t policy_bitmask) 68 uint32_t policy_bitmask)
70 : connection_manager_(connection_manager), 69 : connection_manager_(connection_manager),
71 id_(connection_manager_->GetAndAdvanceNextConnectionId()), 70 id_(connection_manager_->GetAndAdvanceNextConnectionId()),
72 creator_id_(creator_id),
73 client_(nullptr), 71 client_(nullptr),
74 event_ack_id_(0), 72 event_ack_id_(0),
75 is_embed_root_(false), 73 is_embed_root_(false),
76 window_manager_internal_(nullptr) { 74 window_manager_internal_(nullptr) {
77 ServerWindow* window = GetWindow(root_id); 75 ServerWindow* window = GetWindow(root_id);
78 CHECK(window); 76 CHECK(window);
79 root_.reset(new WindowId(root_id)); 77 root_.reset(new WindowId(root_id));
80 if (window->GetRoot() == window) { 78 if (window->GetRoot() == window) {
81 access_policy_.reset(new WindowManagerAccessPolicy(id_, this)); 79 access_policy_.reset(new WindowManagerAccessPolicy(id_, this));
82 is_embed_root_ = true; 80 is_embed_root_ = true;
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 return root_.get() && *root_ == id; 124 return root_.get() && *root_ == id;
127 } 125 }
128 126
129 WindowTreeHostImpl* WindowTreeImpl::GetHost() const { 127 WindowTreeHostImpl* WindowTreeImpl::GetHost() const {
130 return root_.get() 128 return root_.get()
131 ? connection_manager_->GetWindowTreeHostByWindow(GetWindow(*root_)) 129 ? connection_manager_->GetWindowTreeHostByWindow(GetWindow(*root_))
132 : nullptr; 130 : nullptr;
133 } 131 }
134 132
135 void WindowTreeImpl::OnWillDestroyWindowTreeImpl(WindowTreeImpl* connection) { 133 void WindowTreeImpl::OnWillDestroyWindowTreeImpl(WindowTreeImpl* connection) {
136 if (creator_id_ == connection->id())
137 creator_id_ = kInvalidConnectionId;
138 const ServerWindow* connection_root = 134 const ServerWindow* connection_root =
139 connection->root_ ? connection->GetWindow(*connection->root_) : nullptr; 135 connection->root_ ? connection->GetWindow(*connection->root_) : nullptr;
140 if (connection_root && 136 if (connection_root &&
141 ((connection_root->id().connection_id == id_ && 137 ((connection_root->id().connection_id == id_ &&
142 window_map_.count(connection_root->id().window_id) > 0) || 138 window_map_.count(connection_root->id().window_id) > 0) ||
143 (is_embed_root_ && IsWindowKnown(connection_root)))) { 139 (is_embed_root_ && IsWindowKnown(connection_root)))) {
144 client()->OnEmbeddedAppDisconnected( 140 client()->OnEmbeddedAppDisconnected(
145 WindowIdToTransportId(*connection->root_)); 141 WindowIdToTransportId(*connection->root_));
146 } 142 }
147 if (root_.get() && root_->connection_id == connection->id()) 143 if (root_.get() && root_->connection_id == connection->id())
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 214
219 bool WindowTreeImpl::Embed(const WindowId& window_id, 215 bool WindowTreeImpl::Embed(const WindowId& window_id,
220 mojom::WindowTreeClientPtr client, 216 mojom::WindowTreeClientPtr client,
221 uint32_t policy_bitmask, 217 uint32_t policy_bitmask,
222 ConnectionSpecificId* connection_id) { 218 ConnectionSpecificId* connection_id) {
223 *connection_id = kInvalidConnectionId; 219 *connection_id = kInvalidConnectionId;
224 if (!client.get() || !CanEmbed(window_id, policy_bitmask)) 220 if (!client.get() || !CanEmbed(window_id, policy_bitmask))
225 return false; 221 return false;
226 PrepareForEmbed(window_id); 222 PrepareForEmbed(window_id);
227 WindowTreeImpl* new_connection = connection_manager_->EmbedAtWindow( 223 WindowTreeImpl* new_connection = connection_manager_->EmbedAtWindow(
228 id_, window_id, policy_bitmask, std::move(client)); 224 window_id, policy_bitmask, std::move(client));
229 if (is_embed_root_) 225 if (is_embed_root_)
230 *connection_id = new_connection->id(); 226 *connection_id = new_connection->id();
231 return true; 227 return true;
232 } 228 }
233 229
234 void WindowTreeImpl::DispatchInputEvent(ServerWindow* target, 230 void WindowTreeImpl::DispatchInputEvent(ServerWindow* target,
235 mojom::EventPtr event) { 231 mojom::EventPtr event) {
236 if (event_ack_id_) { 232 if (event_ack_id_) {
237 // This is currently waiting for an event ack. Add it to the queue. 233 // This is currently waiting for an event ack. Add it to the queue.
238 event_queue_.push( 234 event_queue_.push(
(...skipping 769 matching lines...) Expand 10 before | Expand all | Expand 10 after
1008 return connection && connection != this; 1004 return connection && connection != this;
1009 } 1005 }
1010 1006
1011 bool WindowTreeImpl::IsDescendantOfEmbedRoot(const ServerWindow* window) { 1007 bool WindowTreeImpl::IsDescendantOfEmbedRoot(const ServerWindow* window) {
1012 return is_embed_root_ && root_ && GetWindow(*root_)->Contains(window); 1008 return is_embed_root_ && root_ && GetWindow(*root_)->Contains(window);
1013 } 1009 }
1014 1010
1015 } // namespace ws 1011 } // namespace ws
1016 1012
1017 } // namespace mus 1013 } // namespace mus
OLDNEW
« no previous file with comments | « components/mus/ws/window_tree_impl.h ('k') | components/mus/ws/window_tree_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698