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

Side by Side Diff: ash/test/ash_test_base.cc

Issue 1114383002: Show overview mode button in TouchView with open modal window (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: use SetBoundsInScreen() Created 5 years, 7 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 | « ash/test/ash_test_base.h ('k') | ash/wm/dock/docked_window_resizer_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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "ash/test/ash_test_base.h" 5 #include "ash/test/ash_test_base.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "ash/ash_switches.h" 10 #include "ash/ash_switches.h"
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
267 window->Init(ui::LAYER_TEXTURED); 267 window->Init(ui::LAYER_TEXTURED);
268 window->Show(); 268 window->Show();
269 269
270 if (bounds.IsEmpty()) { 270 if (bounds.IsEmpty()) {
271 ParentWindowInPrimaryRootWindow(window); 271 ParentWindowInPrimaryRootWindow(window);
272 } else { 272 } else {
273 gfx::Display display = 273 gfx::Display display =
274 Shell::GetScreen()->GetDisplayMatching(bounds); 274 Shell::GetScreen()->GetDisplayMatching(bounds);
275 aura::Window* root = ash::Shell::GetInstance()->display_controller()-> 275 aura::Window* root = ash::Shell::GetInstance()->display_controller()->
276 GetRootWindowForDisplayId(display.id()); 276 GetRootWindowForDisplayId(display.id());
277 gfx::Point origin = bounds.origin(); 277 window->SetBoundsInScreen(bounds, Shell::GetScreen()->GetPrimaryDisplay());
278 ::wm::ConvertPointFromScreen(root, &origin);
279 window->SetBounds(gfx::Rect(origin, bounds.size()));
280 aura::client::ParentWindowWithContext(window, root, bounds); 278 aura::client::ParentWindowWithContext(window, root, bounds);
281 } 279 }
282 window->SetProperty(aura::client::kCanMaximizeKey, true); 280 window->SetProperty(aura::client::kCanMaximizeKey, true);
283 window->SetProperty(aura::client::kCanMinimizeKey, true); 281 window->SetProperty(aura::client::kCanMinimizeKey, true);
284 return window; 282 return window;
285 } 283 }
286 284
285 aura::Window* AshTestBase::CreateTestModalWindowInShellWithBounds(
286 const gfx::Rect& bounds) {
287 return CreateTestModalWindowInShellWithDelegateAndType(
288 nullptr, ui::wm::WINDOW_TYPE_NORMAL, 0, bounds);
289 }
290
291 aura::Window* AshTestBase::CreateTestModalWindowInShellWithDelegateAndType(
292 aura::WindowDelegate* delegate,
293 ui::wm::WindowType type,
294 int id,
295 const gfx::Rect& bounds) {
296 aura::Window* window = new aura::Window(delegate);
297
298 // Note that the system modal property must be set on |window| prior to
299 // calling ParentWindowWithContext(), otherwise it will not be attached
300 // as a descendant of the modal container window.
301 window->SetProperty(aura::client::kModalKey, ui::MODAL_TYPE_SYSTEM);
302 window->SetType(ui::wm::WINDOW_TYPE_NORMAL);
303 window->Init(ui::LAYER_TEXTURED);
304 window->Show();
305
306 if (bounds.IsEmpty()) {
307 ParentWindowInPrimaryRootWindow(window);
308 } else {
309 gfx::Display display = Shell::GetScreen()->GetDisplayMatching(bounds);
310 aura::Window* root = ash::Shell::GetInstance()
311 ->display_controller()
312 ->GetRootWindowForDisplayId(display.id());
313 window->SetBoundsInScreen(bounds, Shell::GetScreen()->GetPrimaryDisplay());
314 aura::client::ParentWindowWithContext(window, root, bounds);
315 }
316 return window;
317 }
318
287 void AshTestBase::ParentWindowInPrimaryRootWindow(aura::Window* window) { 319 void AshTestBase::ParentWindowInPrimaryRootWindow(aura::Window* window) {
288 aura::client::ParentWindowWithContext( 320 aura::client::ParentWindowWithContext(
289 window, Shell::GetPrimaryRootWindow(), gfx::Rect()); 321 window, Shell::GetPrimaryRootWindow(), gfx::Rect());
290 } 322 }
291 323
292 void AshTestBase::RunAllPendingInMessageLoop() { 324 void AshTestBase::RunAllPendingInMessageLoop() {
293 ash_test_helper_->RunAllPendingInMessageLoop(); 325 ash_test_helper_->RunAllPendingInMessageLoop();
294 } 326 }
295 327
296 TestScreenshotDelegate* AshTestBase::GetScreenshotDelegate() { 328 TestScreenshotDelegate* AshTestBase::GetScreenshotDelegate() {
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
356 388
357 void AshTestBase::UnblockUserSession() { 389 void AshTestBase::UnblockUserSession() {
358 Shell::GetInstance()->session_state_delegate()->UnlockScreen(); 390 Shell::GetInstance()->session_state_delegate()->UnlockScreen();
359 SetSessionStarted(true); 391 SetSessionStarted(true);
360 SetUserAddingScreenRunning(false); 392 SetUserAddingScreenRunning(false);
361 } 393 }
362 394
363 395
364 } // namespace test 396 } // namespace test
365 } // namespace ash 397 } // namespace ash
OLDNEW
« no previous file with comments | « ash/test/ash_test_base.h ('k') | ash/wm/dock/docked_window_resizer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698