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

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

Issue 49303007: Moves responsibility of invoking OnNativeWidgetCreated to DesktopRootWindowHost (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge 2 trunk Created 7 years, 1 month 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_root_window_host_win_unittest.cc
diff --git a/ui/views/widget/desktop_aura/desktop_root_window_host_win_unittest.cc b/ui/views/widget/desktop_aura/desktop_root_window_host_win_unittest.cc
new file mode 100644
index 0000000000000000000000000000000000000000..a002f10fdf2219e98fc20be806ba1055c3ada2af
--- /dev/null
+++ b/ui/views/widget/desktop_aura/desktop_root_window_host_win_unittest.cc
@@ -0,0 +1,55 @@
+// 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 "ui/views/widget/desktop_aura/desktop_root_window_host_win.h"
+
+#include "ui/aura/root_window.h"
+#include "ui/views/test/views_test_base.h"
+#include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h"
+#include "ui/views/widget/widget.h"
+
+namespace views {
+
+typedef ViewsTestBase DesktopRootWindowHostWinTest;
+
+namespace {
+
+// See description above SaveFocusOnDeactivateFromHandleCreate.
+class TestDesktopRootWindowHostWin : public DesktopRootWindowHostWin {
+ public:
+ TestDesktopRootWindowHostWin(
+ internal::NativeWidgetDelegate* native_widget_delegate,
+ DesktopNativeWidgetAura* desktop_native_widget_aura)
+ : DesktopRootWindowHostWin(native_widget_delegate,
+ desktop_native_widget_aura) {}
+ virtual ~TestDesktopRootWindowHostWin() {}
+
+ // DesktopRootWindowHostWin overrides:
+ virtual void HandleCreate() OVERRIDE {
+ DesktopRootWindowHostWin::HandleCreate();
+ SaveFocusOnDeactivate();
+ }
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(TestDesktopRootWindowHostWin);
+};
+
+} // namespace
+
+// Verifies if SaveFocusOnDeactivate() is invoked from
+// DesktopRootWindowHostWin::HandleCreate we don't crash.
+TEST_F(DesktopRootWindowHostWinTest, SaveFocusOnDeactivateFromHandleCreate) {
+ Widget widget;
+ Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_WINDOW);
+ params.bounds = gfx::Rect(0, 0, 200, 200);
+ params.ownership = Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
+ DesktopNativeWidgetAura* desktop_native_widget_aura =
+ new DesktopNativeWidgetAura(&widget);
+ params.native_widget = desktop_native_widget_aura;
+ params.desktop_root_window_host = new TestDesktopRootWindowHostWin(
+ &widget, desktop_native_widget_aura);
+ widget.Init(params);
+}
+
+} // namespace views

Powered by Google App Engine
This is Rietveld 408576698