summaryrefslogtreecommitdiffstats
path: root/chromium/ash/wm/window_positioner_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/ash/wm/window_positioner_unittest.cc')
-rw-r--r--chromium/ash/wm/window_positioner_unittest.cc114
1 files changed, 0 insertions, 114 deletions
diff --git a/chromium/ash/wm/window_positioner_unittest.cc b/chromium/ash/wm/window_positioner_unittest.cc
deleted file mode 100644
index 72ae6302eb4..00000000000
--- a/chromium/ash/wm/window_positioner_unittest.cc
+++ /dev/null
@@ -1,114 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "ash/wm/window_positioner.h"
-
-#include "ash/shell.h"
-#include "ash/shell/toplevel_window.h"
-#include "ash/test/ash_test_base.h"
-#include "ash/wm/window_positioner.h"
-#include "ash/wm/window_state.h"
-#include "ui/aura/root_window.h"
-#include "ui/gfx/screen.h"
-#include "ui/views/widget/widget.h"
-#include "ui/views/widget/widget_delegate.h"
-
-namespace ash {
-
-typedef test::AshTestBase WindowPositionerTest;
-
-TEST_F(WindowPositionerTest, OpenMaximizedWindowOnSecondDisplay) {
- if (!SupportsMultipleDisplays())
- return;
- UpdateDisplay("400x400,500x500");
- Shell::GetInstance()->set_target_root_window(
- Shell::GetAllRootWindows()[1]);
- shell::ToplevelWindow::CreateParams params;
- params.can_resize = true;
- params.can_maximize = true;
- views::Widget* widget =
- shell::ToplevelWindow::CreateToplevelWindow(params);
- EXPECT_EQ("400,0 500x453", widget->GetWindowBoundsInScreen().ToString());
-}
-
-TEST_F(WindowPositionerTest, OpenDefaultWindowOnSecondDisplay) {
- if (!SupportsMultipleDisplays())
- return;
-#if defined(OS_WIN)
- ash::WindowPositioner::SetMaximizeFirstWindow(true);
-#endif
- UpdateDisplay("400x400,1400x900");
- aura::Window* second_root_window = Shell::GetAllRootWindows()[1];
- Shell::GetInstance()->set_target_root_window(
- second_root_window);
- shell::ToplevelWindow::CreateParams params;
- params.can_resize = true;
- params.can_maximize = true;
- views::Widget* widget =
- shell::ToplevelWindow::CreateToplevelWindow(params);
- gfx::Rect bounds = widget->GetWindowBoundsInScreen();
-#if defined(OS_WIN)
- EXPECT_TRUE(widget->IsMaximized());
-#else
- // The window should be in the 2nd display with the default size.
- EXPECT_EQ("300x300", bounds.size().ToString());
-#endif
- EXPECT_TRUE(Shell::GetScreen()->GetDisplayNearestWindow(
- second_root_window).bounds().Contains(bounds));
-}
-
-namespace {
-
-// A WidgetDelegate that returns the out of display saved bounds.
-class OutOfDisplayDelegate : public views::WidgetDelegate {
- public:
- explicit OutOfDisplayDelegate(views::Widget* widget) : widget_(widget) {}
- virtual ~OutOfDisplayDelegate() {}
-
- // Overridden from WidgetDelegate:
- virtual void DeleteDelegate() OVERRIDE {
- delete this;
- }
- virtual views::Widget* GetWidget() OVERRIDE {
- return widget_;
- }
- virtual const views::Widget* GetWidget() const OVERRIDE {
- return widget_;
- }
- virtual bool GetSavedWindowPlacement(
- const views::Widget* widget,
- gfx::Rect* bounds,
- ui::WindowShowState* show_state) const OVERRIDE {
- bounds->SetRect(450, 10, 100, 100);
- *show_state = ui::SHOW_STATE_NORMAL;
- return true;
- }
-
- private:
- views::Widget* widget_;
-
- DISALLOW_COPY_AND_ASSIGN(OutOfDisplayDelegate);
-};
-
-} // namespace
-
-TEST_F(WindowPositionerTest, EnsureMinimumVisibility) {
- if (!SupportsHostWindowResize())
- return;
-
- UpdateDisplay("400x400");
- views::Widget* widget = new views::Widget();
- views::Widget::InitParams params(views::Widget::InitParams::TYPE_WINDOW);
- params.delegate = new OutOfDisplayDelegate(widget);
- params.context = Shell::GetPrimaryRootWindow();
- widget->Init(params);
- widget->SetBounds(gfx::Rect(450,10, 100, 100));
- wm::GetWindowState(widget->GetNativeView())->set_minimum_visibility(true);
- widget->Show();
- // Make sure the bounds is adjusted to be inside the work area.
- EXPECT_EQ("390,10 100x100", widget->GetWindowBoundsInScreen().ToString());
- widget->CloseNow();
-}
-
-} // namespace