OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <map> | 5 #include <map> |
6 | 6 |
7 #include "base/memory/scoped_ptr.h" | 7 #include "base/memory/scoped_ptr.h" |
8 #include "base/rand_util.h" | 8 #include "base/rand_util.h" |
9 #include "base/string_util.h" | 9 #include "base/string_util.h" |
10 #include "base/utf_string_conversions.h" | 10 #include "base/utf_string_conversions.h" |
(...skipping 967 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
978 EXPECT_EQ(view->accelerator_count_map_[return_accelerator], 0); | 978 EXPECT_EQ(view->accelerator_count_map_[return_accelerator], 0); |
979 | 979 |
980 // Create a window and add the view as its child. | 980 // Create a window and add the view as its child. |
981 scoped_ptr<Widget> widget(new Widget); | 981 scoped_ptr<Widget> widget(new Widget); |
982 Widget::InitParams params(Widget::InitParams::TYPE_POPUP); | 982 Widget::InitParams params(Widget::InitParams::TYPE_POPUP); |
983 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | 983 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
984 params.bounds = gfx::Rect(0, 0, 100, 100); | 984 params.bounds = gfx::Rect(0, 0, 100, 100); |
985 widget->Init(params); | 985 widget->Init(params); |
986 View* root = widget->GetRootView(); | 986 View* root = widget->GetRootView(); |
987 root->AddChildView(view); | 987 root->AddChildView(view); |
| 988 widget->Show(); |
988 | 989 |
989 // Get the focus manager. | 990 // Get the focus manager. |
990 FocusManager* focus_manager = widget->GetFocusManager(); | 991 FocusManager* focus_manager = widget->GetFocusManager(); |
991 ASSERT_TRUE(focus_manager); | 992 ASSERT_TRUE(focus_manager); |
992 | 993 |
993 // Hit the return key and see if it takes effect. | 994 // Hit the return key and see if it takes effect. |
994 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); | 995 EXPECT_TRUE(focus_manager->ProcessAccelerator(return_accelerator)); |
995 EXPECT_EQ(view->accelerator_count_map_[return_accelerator], 1); | 996 EXPECT_EQ(view->accelerator_count_map_[return_accelerator], 1); |
996 | 997 |
997 // Hit the escape key. Nothing should happen. | 998 // Hit the escape key. Nothing should happen. |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1042 view->AddAccelerator(return_accelerator); | 1043 view->AddAccelerator(return_accelerator); |
1043 EXPECT_EQ(view->accelerator_count_map_[return_accelerator], 0); | 1044 EXPECT_EQ(view->accelerator_count_map_[return_accelerator], 0); |
1044 | 1045 |
1045 scoped_ptr<Widget> widget(new Widget); | 1046 scoped_ptr<Widget> widget(new Widget); |
1046 Widget::InitParams params(Widget::InitParams::TYPE_POPUP); | 1047 Widget::InitParams params(Widget::InitParams::TYPE_POPUP); |
1047 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | 1048 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
1048 params.bounds = gfx::Rect(0, 0, 100, 100); | 1049 params.bounds = gfx::Rect(0, 0, 100, 100); |
1049 widget->Init(params); | 1050 widget->Init(params); |
1050 View* root = widget->GetRootView(); | 1051 View* root = widget->GetRootView(); |
1051 root->AddChildView(view); | 1052 root->AddChildView(view); |
| 1053 widget->Show(); |
1052 | 1054 |
1053 FocusManager* focus_manager = widget->GetFocusManager(); | 1055 FocusManager* focus_manager = widget->GetFocusManager(); |
1054 ASSERT_TRUE(focus_manager); | 1056 ASSERT_TRUE(focus_manager); |
1055 | 1057 |
1056 view->SetVisible(false); | 1058 view->SetVisible(false); |
1057 EXPECT_EQ(NULL, | 1059 EXPECT_EQ(NULL, |
1058 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | 1060 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); |
1059 | 1061 |
1060 view->SetVisible(true); | 1062 view->SetVisible(true); |
1061 EXPECT_EQ(view, | 1063 EXPECT_EQ(view, |
1062 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); | 1064 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); |
1063 | 1065 |
1064 widget->CloseNow(); | 1066 widget->CloseNow(); |
1065 } | 1067 } |
1066 #endif | 1068 #endif |
1067 | 1069 |
1068 #if defined(OS_WIN) && !defined(USE_AURA) | 1070 #if defined(OS_WIN) && !defined(USE_AURA) |
| 1071 TEST_F(ViewTest, ViewInHiddenWidgetWithAccelerator) { |
| 1072 Accelerator return_accelerator(ui::VKEY_RETURN, false, false, false); |
| 1073 TestView* view = new TestView(); |
| 1074 view->Reset(); |
| 1075 view->AddAccelerator(return_accelerator); |
| 1076 EXPECT_EQ(view->accelerator_count_map_[return_accelerator], 0); |
| 1077 |
| 1078 scoped_ptr<Widget> widget(new Widget); |
| 1079 Widget::InitParams params(Widget::InitParams::TYPE_POPUP); |
| 1080 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
| 1081 params.bounds = gfx::Rect(0, 0, 100, 100); |
| 1082 widget->Init(params); |
| 1083 View* root = widget->GetRootView(); |
| 1084 root->AddChildView(view); |
| 1085 |
| 1086 FocusManager* focus_manager = widget->GetFocusManager(); |
| 1087 ASSERT_TRUE(focus_manager); |
| 1088 |
| 1089 EXPECT_EQ(NULL, |
| 1090 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); |
| 1091 |
| 1092 widget->Show(); |
| 1093 EXPECT_EQ(view, |
| 1094 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); |
| 1095 |
| 1096 widget->Hide(); |
| 1097 EXPECT_EQ(NULL, |
| 1098 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); |
| 1099 |
| 1100 widget->CloseNow(); |
| 1101 } |
| 1102 #endif |
| 1103 |
| 1104 #if defined(OS_WIN) && !defined(USE_AURA) |
1069 //////////////////////////////////////////////////////////////////////////////// | 1105 //////////////////////////////////////////////////////////////////////////////// |
1070 // Mouse-wheel message rerouting | 1106 // Mouse-wheel message rerouting |
1071 //////////////////////////////////////////////////////////////////////////////// | 1107 //////////////////////////////////////////////////////////////////////////////// |
1072 class ScrollableTestView : public View { | 1108 class ScrollableTestView : public View { |
1073 public: | 1109 public: |
1074 ScrollableTestView() { } | 1110 ScrollableTestView() { } |
1075 | 1111 |
1076 virtual gfx::Size GetPreferredSize() { | 1112 virtual gfx::Size GetPreferredSize() { |
1077 return gfx::Size(100, 10000); | 1113 return gfx::Size(100, 10000); |
1078 } | 1114 } |
(...skipping 1992 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3071 ScrambleTree(content); | 3107 ScrambleTree(content); |
3072 EXPECT_TRUE(ViewAndLayerTreeAreConsistent(content, content->layer())); | 3108 EXPECT_TRUE(ViewAndLayerTreeAreConsistent(content, content->layer())); |
3073 | 3109 |
3074 ScrambleTree(content); | 3110 ScrambleTree(content); |
3075 EXPECT_TRUE(ViewAndLayerTreeAreConsistent(content, content->layer())); | 3111 EXPECT_TRUE(ViewAndLayerTreeAreConsistent(content, content->layer())); |
3076 } | 3112 } |
3077 | 3113 |
3078 #endif // VIEWS_COMPOSITOR | 3114 #endif // VIEWS_COMPOSITOR |
3079 | 3115 |
3080 } // namespace views | 3116 } // namespace views |
OLD | NEW |