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

Unified Diff: ui/views/widget/widget_interactive_uitest.cc

Issue 154783002: Honor can_activate flag in ShowWindowWithState (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased Created 6 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
« ui/views/widget/widget.cc ('K') | « ui/views/widget/widget.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/widget/widget_interactive_uitest.cc
diff --git a/ui/views/widget/widget_interactive_uitest.cc b/ui/views/widget/widget_interactive_uitest.cc
index ae547ad61d74c98f78ebac29920d15f72022df0e..0a2ddac50b4cc58d1b5d6d78fd7fdff80b86c25a 100644
--- a/ui/views/widget/widget_interactive_uitest.cc
+++ b/ui/views/widget/widget_interactive_uitest.cc
@@ -4,19 +4,25 @@
#include "base/basictypes.h"
#include "base/bind.h"
+#include "base/command_line.h"
#include "base/path_service.h"
#include "base/run_loop.h"
#include "base/strings/stringprintf.h"
+#include "base/strings/utf_string_conversions.h"
#include "ui/aura/client/focus_client.h"
#include "ui/aura/env.h"
+#include "ui/aura/test/event_generator.h"
#include "ui/aura/window.h"
#include "ui/aura/window_tree_host.h"
#include "ui/base/resource/resource_bundle.h"
#include "ui/base/ui_base_paths.h"
+#include "ui/base/ui_base_switches.h"
#include "ui/events/event_processor.h"
#include "ui/gfx/native_widget_types.h"
#include "ui/gl/gl_surface.h"
+#include "ui/views/controls/textfield/textfield.h"
#include "ui/views/test/widget_test.h"
+#include "ui/views/touchui/touch_selection_controller_impl.h"
#include "ui/views/widget/widget.h"
#include "ui/views/window/dialog_delegate.h"
#include "ui/wm/public/activation_client.h"
@@ -702,6 +708,55 @@ TEST_F(WidgetTestInteractive, SystemModalWindowReleasesCapture) {
#endif
+TEST_F(WidgetTestInteractive, CanActivateFlagIsHonored) {
+ Widget widget;
+ Widget::InitParams init_params =
+ CreateParams(Widget::InitParams::TYPE_WINDOW);
+ init_params.bounds = gfx::Rect(0, 0, 200, 200);
+ init_params.ownership = Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
+ init_params.can_activate = false;
+#if !defined(OS_CHROMEOS)
+ init_params.native_widget = new DesktopNativeWidgetAura(&widget);
+#endif // !defined(OS_CHROMEOS)
+ widget.Init(init_params);
+
+ widget.Show();
+ EXPECT_FALSE(widget.IsActive());
+}
+
+// Test that touch selection quick menu is not activated when opened.
+TEST_F(WidgetTestInteractive, TouchSelectionQuickMenuIsNotActivated) {
+ CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnableTouchEditing);
+ TouchSelectionControllerImpl::SetOpenQuickMenuImmediatelyForTest(true);
+#if defined(OS_WIN)
+ views_delegate().SetUseDesktopNativeWidgets(true);
+#endif // !defined(OS_WIN)
+
+ Widget widget;
+ Widget::InitParams init_params =
+ CreateParams(Widget::InitParams::TYPE_WINDOW_FRAMELESS);
+ init_params.bounds = gfx::Rect(0, 0, 200, 200);
+ init_params.ownership = Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
+ widget.Init(init_params);
+
+ Textfield* textfield = new Textfield;
+ textfield->SetBounds(0, 0, 200, 20);
+ textfield->SetText(base::ASCIIToUTF16("some text"));
+ widget.GetRootView()->AddChildView(textfield);
+
+ widget.Show();
+ textfield->RequestFocus();
+ textfield->SelectAll(true);
+
+ RunPendingMessages();
+
+ aura::test::EventGenerator generator(widget.GetNativeView()->GetRootWindow());
+ generator.GestureTapAt(gfx::Point(10, 10));
+
+ EXPECT_TRUE(textfield->HasFocus());
+ EXPECT_TRUE(widget.IsActive());
sadrul 2014/05/15 12:52:02 Do you want to verify that the touch-selection men
mohsen 2014/05/16 15:56:09 Done.
+}
+
namespace {
// Used to veirfy OnMouseCaptureLost() has been invoked.
« ui/views/widget/widget.cc ('K') | « ui/views/widget/widget.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698