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

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

Issue 2759463002: aura-mus: create an interactive ui test for drag and drop. (Closed)
Patch Set: Merge with master 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_test_impl.cc ('k') | ui/aura/env.h » ('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 "services/ui/ws/window_tree.h" 5 #include "services/ui/ws/window_tree.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 1342 matching lines...) Expand 10 before | Expand all | Expand 10 after
1353 pointer_watcher_want_moves_ = false; 1353 pointer_watcher_want_moves_ = false;
1354 } 1354 }
1355 1355
1356 void WindowTree::SetWindowBounds( 1356 void WindowTree::SetWindowBounds(
1357 uint32_t change_id, 1357 uint32_t change_id,
1358 Id window_id, 1358 Id window_id,
1359 const gfx::Rect& bounds, 1359 const gfx::Rect& bounds,
1360 const base::Optional<cc::LocalSurfaceId>& local_surface_id) { 1360 const base::Optional<cc::LocalSurfaceId>& local_surface_id) {
1361 ServerWindow* window = GetWindowByClientId(ClientWindowId(window_id)); 1361 ServerWindow* window = GetWindowByClientId(ClientWindowId(window_id));
1362 if (window && ShouldRouteToWindowManager(window)) { 1362 if (window && ShouldRouteToWindowManager(window)) {
1363 DVLOG(3) << "Redirecting request to change bounds for "
1364 << (window ? WindowIdToTransportId(window->id()) : 0)
1365 << " to window manager...";
1363 const uint32_t wm_change_id = 1366 const uint32_t wm_change_id =
1364 window_server_->GenerateWindowManagerChangeId(this, change_id); 1367 window_server_->GenerateWindowManagerChangeId(this, change_id);
1365 // |window_id| may be a client id, use the id from the window to ensure 1368 // |window_id| may be a client id, use the id from the window to ensure
1366 // the windowmanager doesn't get an id it doesn't know about. 1369 // the windowmanager doesn't get an id it doesn't know about.
1367 WindowManagerDisplayRoot* display_root = 1370 WindowManagerDisplayRoot* display_root =
1368 GetWindowManagerDisplayRoot(window); 1371 GetWindowManagerDisplayRoot(window);
1369 WindowTree* wm_tree = display_root->window_manager_state()->window_tree(); 1372 WindowTree* wm_tree = display_root->window_manager_state()->window_tree();
1370 wm_tree->window_manager_internal_->WmSetBounds( 1373 wm_tree->window_manager_internal_->WmSetBounds(
1371 wm_change_id, wm_tree->ClientWindowIdForWindow(window).id, 1374 wm_change_id, wm_tree->ClientWindowIdForWindow(window).id,
1372 std::move(bounds)); 1375 std::move(bounds));
1373 return; 1376 return;
1374 } 1377 }
1375 1378
1376 DVLOG(3) << "set window bounds client window_id=" << window_id 1379 DVLOG(3) << "set window bounds client window_id=" << window_id
1377 << " global window_id=" 1380 << " global window_id="
1378 << (window ? WindowIdToTransportId(window->id()) : 0) 1381 << (window ? WindowIdToTransportId(window->id()) : 0)
1379 << " bounds=" << bounds.ToString(); 1382 << " bounds=" << bounds.ToString();
1380 // Only the owner of the window can change the bounds. 1383 // Only the owner of the window can change the bounds.
1381 bool success = window && access_policy_->CanSetWindowBounds(window); 1384 bool success = window && access_policy_->CanSetWindowBounds(window);
1382 if (success) { 1385 if (success) {
1383 Operation op(this, window_server_, OperationType::SET_WINDOW_BOUNDS); 1386 Operation op(this, window_server_, OperationType::SET_WINDOW_BOUNDS);
1384 window->SetBounds(bounds, local_surface_id); 1387 window->SetBounds(bounds, local_surface_id);
1388 } else {
1389 DVLOG(1) << "Failed to set bounds on window.";
1385 } 1390 }
1386 client()->OnChangeCompleted(change_id, success); 1391 client()->OnChangeCompleted(change_id, success);
1387 } 1392 }
1388 1393
1389 void WindowTree::SetWindowVisibility(uint32_t change_id, 1394 void WindowTree::SetWindowVisibility(uint32_t change_id,
1390 Id transport_window_id, 1395 Id transport_window_id,
1391 bool visible) { 1396 bool visible) {
1392 client()->OnChangeCompleted( 1397 client()->OnChangeCompleted(
1393 change_id, 1398 change_id,
1394 SetWindowVisibility(ClientWindowId(transport_window_id), visible)); 1399 SetWindowVisibility(ClientWindowId(transport_window_id), visible));
(...skipping 784 matching lines...) Expand 10 before | Expand all | Expand 10 after
2179 client()->OnCompleteDrop(client_window_id.id, event_flags, cursor_offset, 2184 client()->OnCompleteDrop(client_window_id.id, event_flags, cursor_offset,
2180 effect_bitmask, callback); 2185 effect_bitmask, callback);
2181 } 2186 }
2182 2187
2183 void WindowTree::PerformOnDragDropDone() { 2188 void WindowTree::PerformOnDragDropDone() {
2184 client()->OnDragDropDone(); 2189 client()->OnDragDropDone();
2185 } 2190 }
2186 2191
2187 } // namespace ws 2192 } // namespace ws
2188 } // namespace ui 2193 } // namespace ui
OLDNEW
« no previous file with comments | « services/ui/ws/window_server_test_impl.cc ('k') | ui/aura/env.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698