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

Side by Side Diff: services/ui/ws/window_tree.h

Issue 2712203002: c++ / mojo changes for 'external window mode'
Patch Set: rebased Created 3 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
« no previous file with comments | « services/ui/ws/window_server.cc ('k') | services/ui/ws/window_tree.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 #ifndef SERVICES_UI_WS_WINDOW_TREE_H_ 5 #ifndef SERVICES_UI_WS_WINDOW_TREE_H_
6 #define SERVICES_UI_WS_WINDOW_TREE_H_ 6 #define SERVICES_UI_WS_WINDOW_TREE_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <map> 10 #include <map>
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 WindowManagerState* window_manager_state() { 142 WindowManagerState* window_manager_state() {
143 return window_manager_state_.get(); 143 return window_manager_state_.get();
144 } 144 }
145 145
146 DisplayManager* display_manager(); 146 DisplayManager* display_manager();
147 const DisplayManager* display_manager() const; 147 const DisplayManager* display_manager() const;
148 148
149 WindowServer* window_server() { return window_server_; } 149 WindowServer* window_server() { return window_server_; }
150 const WindowServer* window_server() const { return window_server_; } 150 const WindowServer* window_server() const { return window_server_; }
151 151
152 void WillCreateRootDisplay(uint32_t transport_window_id) {
153 pending_client_id_ = transport_window_id;
154 }
155
156 // Calls WindowTreeClient::OnEmbed.
157 void DoOnEmbed(mojom::WindowTreePtr tree, ServerWindow* root);
158
152 // Called from ~WindowServer. Reset WindowTreeClient so that it no longer gets 159 // Called from ~WindowServer. Reset WindowTreeClient so that it no longer gets
153 // any messages. 160 // any messages.
154 void PrepareForWindowServerShutdown(); 161 void PrepareForWindowServerShutdown();
155 162
163 // Adds a new root to this tree.
164 void AddRoot(const ServerWindow* root);
165
156 // Adds a new root to this tree. This is only valid for window managers. 166 // Adds a new root to this tree. This is only valid for window managers.
157 void AddRootForWindowManager(const ServerWindow* root); 167 void AddRootForWindowManager(const ServerWindow* root);
158 168
159 // Invoked when a tree is about to be destroyed. 169 // Invoked when a tree is about to be destroyed.
160 void OnWindowDestroyingTreeImpl(WindowTree* tree); 170 void OnWindowDestroyingTreeImpl(WindowTree* tree);
161 171
162 // Sends updated display information. 172 // Sends updated display information.
163 void OnWmDisplayModified(const display::Display& display); 173 void OnWmDisplayModified(const display::Display& display);
164 174
165 // These functions are synchronous variants of those defined in the mojom. The 175 // These functions are synchronous variants of those defined in the mojom. The
(...skipping 409 matching lines...) Expand 10 before | Expand all | Expand 10 after
575 585
576 std::unique_ptr<mojo::AssociatedBinding<mojom::WindowManagerClient>> 586 std::unique_ptr<mojo::AssociatedBinding<mojom::WindowManagerClient>>
577 window_manager_internal_client_binding_; 587 window_manager_internal_client_binding_;
578 mojom::WindowManager* window_manager_internal_; 588 mojom::WindowManager* window_manager_internal_;
579 std::unique_ptr<WindowManagerState> window_manager_state_; 589 std::unique_ptr<WindowManagerState> window_manager_state_;
580 590
581 std::unique_ptr<WaitingForTopLevelWindowInfo> 591 std::unique_ptr<WaitingForTopLevelWindowInfo>
582 waiting_for_top_level_window_info_; 592 waiting_for_top_level_window_info_;
583 bool embedder_intercepts_events_ = false; 593 bool embedder_intercepts_events_ = false;
584 594
595 uint32_t pending_client_id_ = kInvalidClientId;
596
585 DISALLOW_COPY_AND_ASSIGN(WindowTree); 597 DISALLOW_COPY_AND_ASSIGN(WindowTree);
586 }; 598 };
587 599
588 } // namespace ws 600 } // namespace ws
589 } // namespace ui 601 } // namespace ui
590 602
591 #endif // SERVICES_UI_WS_WINDOW_TREE_H_ 603 #endif // SERVICES_UI_WS_WINDOW_TREE_H_
OLDNEW
« no previous file with comments | « services/ui/ws/window_server.cc ('k') | services/ui/ws/window_tree.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698