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

Unified Diff: ui/views/widget/desktop_aura/desktop_native_widget_aura_unittest.cc

Issue 871813003: Fix popup window repositioning in Desktop Chrome. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added test DesktopAuraWidgetTest.TopLevelOwnedPopupRepositionTest Created 5 years, 11 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
Index: ui/views/widget/desktop_aura/desktop_native_widget_aura_unittest.cc
diff --git a/ui/views/widget/desktop_aura/desktop_native_widget_aura_unittest.cc b/ui/views/widget/desktop_aura/desktop_native_widget_aura_unittest.cc
index 975a2179a5496d0b1da0da700e5cea873659b741..bc1db3917cff8656550d0e7e1ff4176ee6ea5bc3 100644
--- a/ui/views/widget/desktop_aura/desktop_native_widget_aura_unittest.cc
+++ b/ui/views/widget/desktop_aura/desktop_native_widget_aura_unittest.cc
@@ -12,6 +12,7 @@
#include "ui/aura/window.h"
#include "ui/aura/window_tree_host.h"
#include "ui/events/test/event_generator.h"
+#include "ui/gfx/screen.h"
#include "ui/views/test/views_test_base.h"
#include "ui/views/test/widget_test.h"
#include "ui/views/widget/widget.h"
@@ -394,5 +395,26 @@ TEST_F(DesktopAuraWidgetTest, TopLevelOwnedPopupResizeTest) {
RunPendingMessages();
}
+// This test validates that when a top level owned popup Aura window is
+// repositioned, the widget is repositioned as well.
+TEST_F(DesktopAuraWidgetTest, TopLevelOwnedPopupRepositionTest) {
+ ViewsDelegate::views_delegate = NULL;
+ DesktopAuraTopLevelWindowTest popup_window;
+ ASSERT_NO_FATAL_FAILURE(popup_window.CreateTopLevelWindow(
+ gfx::Rect(0, 0, 200, 200), false));
+
+ gfx::Rect new_pos(10, 10, 400, 400);
+ popup_window.owned_window()->SetBoundsInScreen(
+ new_pos,
+ gfx::Screen::GetScreenFor(
+ popup_window.owned_window())->GetDisplayNearestPoint(gfx::Point()));
+
+ EXPECT_EQ(popup_window.top_level_widget()->GetWindowBoundsInScreen(),
sky 2015/01/23 17:38:50 new_pos should be first (argument order is expecte
ananta 2015/01/23 19:37:11 Done.
+ new_pos);
+ RunPendingMessages();
sky 2015/01/23 17:38:50 Why the RunPendingMessages?
ananta 2015/01/23 19:37:11 Stupid cut paste. Removed the first RunPendingMess
sky 2015/01/23 20:29:21 Why do we need to wait for the destruction?
+ ASSERT_NO_FATAL_FAILURE(popup_window.DestroyOwnedWindow());
+ RunPendingMessages();
+}
+
} // namespace test
} // namespace views

Powered by Google App Engine
This is Rietveld 408576698