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

Unified Diff: ash/display/display_util_unittest.cc

Issue 1132303005: Correctly convert warp bounds from screen to native. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: added SupportsMultipleDisplays check 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/display/display_util.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/display/display_util_unittest.cc
diff --git a/ash/display/display_util_unittest.cc b/ash/display/display_util_unittest.cc
new file mode 100644
index 0000000000000000000000000000000000000000..a104fe065a657e8b430d12deda579c6b6c21ed55
--- /dev/null
+++ b/ash/display/display_util_unittest.cc
@@ -0,0 +1,93 @@
+// Copyright 2014 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/display/display_util.h"
+
+#include "ash/root_window_controller.h"
+#include "ash/shell.h"
+#include "ash/test/ash_test_base.h"
+
+namespace ash {
+
+typedef test::AshTestBase DisplayUtilTest;
+
+TEST_F(DisplayUtilTest, RotatedDisplay) {
+ if (!SupportsMultipleDisplays())
+ return;
+ {
+ UpdateDisplay("10+10-500x400,600+10-1000x600/r");
+ aura::Window::Windows root_windows = Shell::GetAllRootWindows();
+ AshWindowTreeHost* host0 =
+ GetRootWindowController(root_windows[0])->ash_host();
+ AshWindowTreeHost* host1 =
+ GetRootWindowController(root_windows[1])->ash_host();
+ gfx::Rect rect0 = GetNativeEdgeBounds(host0, gfx::Rect(499, 10, 1, 300));
+ gfx::Rect rect1 = GetNativeEdgeBounds(host1, gfx::Rect(500, 10, 1, 300));
+ EXPECT_EQ("509,20 1x300", rect0.ToString());
+ EXPECT_EQ("1289,10 300x1", rect1.ToString());
+ }
+ {
+ UpdateDisplay("10+10-500x400,600+10-1000x600/l");
+ aura::Window::Windows root_windows = Shell::GetAllRootWindows();
+ AshWindowTreeHost* host0 =
+ GetRootWindowController(root_windows[0])->ash_host();
+ AshWindowTreeHost* host1 =
+ GetRootWindowController(root_windows[1])->ash_host();
+ gfx::Rect rect0 = GetNativeEdgeBounds(host0, gfx::Rect(499, 10, 1, 300));
+ gfx::Rect rect1 = GetNativeEdgeBounds(host1, gfx::Rect(500, 10, 1, 300));
+ EXPECT_EQ("509,20 1x300", rect0.ToString());
+ EXPECT_EQ("610,609 300x1", rect1.ToString());
+ }
+ {
+ UpdateDisplay("10+10-500x400,600+10-1000x600/u");
+ aura::Window::Windows root_windows = Shell::GetAllRootWindows();
+ AshWindowTreeHost* host0 =
+ GetRootWindowController(root_windows[0])->ash_host();
+ AshWindowTreeHost* host1 =
+ GetRootWindowController(root_windows[1])->ash_host();
+ gfx::Rect rect0 = GetNativeEdgeBounds(host0, gfx::Rect(499, 10, 1, 300));
+ gfx::Rect rect1 = GetNativeEdgeBounds(host1, gfx::Rect(500, 10, 1, 300));
+ EXPECT_EQ("509,20 1x300", rect0.ToString());
+ EXPECT_EQ("1599,299 1x300", rect1.ToString());
+ }
+
+ {
+ UpdateDisplay("10+10-500x400/r,600+10-1000x600");
+ aura::Window::Windows root_windows = Shell::GetAllRootWindows();
+ AshWindowTreeHost* host0 =
+ GetRootWindowController(root_windows[0])->ash_host();
+ AshWindowTreeHost* host1 =
+ GetRootWindowController(root_windows[1])->ash_host();
+ gfx::Rect rect0 = GetNativeEdgeBounds(host0, gfx::Rect(399, 10, 1, 300));
+ gfx::Rect rect1 = GetNativeEdgeBounds(host1, gfx::Rect(400, 10, 1, 300));
+ EXPECT_EQ("199,409 300x1", rect0.ToString());
+ EXPECT_EQ("600,20 1x300", rect1.ToString());
+ }
+ {
+ UpdateDisplay("10+10-500x400/l,600+10-1000x600");
+ aura::Window::Windows root_windows = Shell::GetAllRootWindows();
+ AshWindowTreeHost* host0 =
+ GetRootWindowController(root_windows[0])->ash_host();
+ AshWindowTreeHost* host1 =
+ GetRootWindowController(root_windows[1])->ash_host();
+ gfx::Rect rect0 = GetNativeEdgeBounds(host0, gfx::Rect(499, 10, 1, 300));
+ gfx::Rect rect1 = GetNativeEdgeBounds(host1, gfx::Rect(500, 10, 1, 300));
+ EXPECT_EQ("20,10 300x1", rect0.ToString());
+ EXPECT_EQ("600,20 1x300", rect1.ToString());
+ }
+ {
+ UpdateDisplay("10+10-500x400/u,600+10-1000x600");
+ aura::Window::Windows root_windows = Shell::GetAllRootWindows();
+ AshWindowTreeHost* host0 =
+ GetRootWindowController(root_windows[0])->ash_host();
+ AshWindowTreeHost* host1 =
+ GetRootWindowController(root_windows[1])->ash_host();
+ gfx::Rect rect0 = GetNativeEdgeBounds(host0, gfx::Rect(499, 10, 1, 300));
+ gfx::Rect rect1 = GetNativeEdgeBounds(host1, gfx::Rect(500, 10, 1, 300));
+ EXPECT_EQ("10,99 1x300", rect0.ToString());
+ EXPECT_EQ("600,20 1x300", rect1.ToString());
+ }
+}
+
+} // namespace
« no previous file with comments | « ash/display/display_util.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698