OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 <utility> | 5 #include <utility> |
6 #include <vector> | 6 #include <vector> |
7 | 7 |
8 #include "base/strings/utf_string_conversions.h" | 8 #include "base/strings/utf_string_conversions.h" |
9 #include "ui/base/accelerators/accelerator.h" | 9 #include "ui/base/accelerators/accelerator.h" |
10 #include "ui/base/keycodes/keyboard_codes.h" | 10 #include "ui/base/keycodes/keyboard_codes.h" |
(...skipping 811 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
822 EXPECT_TRUE(GetFocusManager()->RestoreFocusedView()); | 822 EXPECT_TRUE(GetFocusManager()->RestoreFocusedView()); |
823 EXPECT_EQ(&view, GetFocusManager()->GetStoredFocusView()); | 823 EXPECT_EQ(&view, GetFocusManager()->GetStoredFocusView()); |
824 | 824 |
825 // Repeat with |true|. | 825 // Repeat with |true|. |
826 GetFocusManager()->SetFocusedView(&view); | 826 GetFocusManager()->SetFocusedView(&view); |
827 GetFocusManager()->StoreFocusedView(true); | 827 GetFocusManager()->StoreFocusedView(true); |
828 EXPECT_TRUE(GetFocusManager()->RestoreFocusedView()); | 828 EXPECT_TRUE(GetFocusManager()->RestoreFocusedView()); |
829 EXPECT_EQ(&view, GetFocusManager()->GetStoredFocusView()); | 829 EXPECT_EQ(&view, GetFocusManager()->GetStoredFocusView()); |
830 } | 830 } |
831 | 831 |
832 // Verifies focus wrapping happens in the same widget. | |
833 TEST_F(FocusManagerTest, AdvanceFocusStaysInWidget) { | |
834 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_WINDOW); | |
835 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | |
836 params.child = true; | |
837 params.bounds = gfx::Rect(10, 10, 100, 100); | |
838 params.parent = GetWidget()->GetNativeView(); | |
839 Widget child_widget; | |
840 child_widget.Init(params); | |
841 | |
842 View* view1 = new View; | |
843 view1->set_focusable(true); | |
844 view1->SetBounds(0, 0, 20, 20); | |
845 View* view2 = new View; | |
846 view2->set_focusable(true); | |
847 view2->SetBounds(20, 0, 20, 20); | |
848 | |
849 child_widget.client_view()->AddChildView(view1); | |
850 child_widget.client_view()->AddChildView(view2); | |
851 | |
852 child_widget.Show(); | |
853 | |
854 // GetFocusManager()->SetFocusedView(view2); | |
855 view2->RequestFocus(); | |
856 EXPECT_EQ(view2, GetFocusManager()->GetFocusedView()); | |
857 GetFocusManager()->AdvanceFocus(false); | |
dmazzoni
2013/09/03 16:33:57
Also cycle in the reverse direction for better tes
sky
2013/09/03 16:48:17
Done.
| |
858 EXPECT_EQ(view1, GetFocusManager()->GetFocusedView()); | |
859 } | |
860 | |
832 } // namespace views | 861 } // namespace views |
OLD | NEW |