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

Side by Side Diff: views/controls/textfield/native_textfield_views_unittest.cc

Issue 7057014: Variety of tweaks to View API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « views/controls/tabbed_pane/tabbed_pane.cc ('k') | views/controls/textfield/textfield.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "base/auto_reset.h" 5 #include "base/auto_reset.h"
6 #include "base/bind.h" 6 #include "base/bind.h"
7 #include "base/bind_helpers.h" 7 #include "base/bind_helpers.h"
8 #include "base/callback.h" 8 #include "base/callback.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/pickle.h" 10 #include "base/pickle.h"
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 widget_ = new Widget; 160 widget_ = new Widget;
161 Widget::InitParams params(Widget::InitParams::TYPE_POPUP); 161 Widget::InitParams params(Widget::InitParams::TYPE_POPUP);
162 params.bounds = gfx::Rect(100, 100, 100, 100); 162 params.bounds = gfx::Rect(100, 100, 100, 100);
163 widget_->Init(params); 163 widget_->Init(params);
164 View* container = new View(); 164 View* container = new View();
165 widget_->SetContentsView(container); 165 widget_->SetContentsView(container);
166 container->AddChildView(textfield_); 166 container->AddChildView(textfield_);
167 167
168 textfield_view_ 168 textfield_view_
169 = static_cast<NativeTextfieldViews*>(textfield_->native_wrapper()); 169 = static_cast<NativeTextfieldViews*>(textfield_->native_wrapper());
170 textfield_->SetID(1); 170 textfield_->set_id(1);
171 171
172 for (int i = 1; i < count; i++) { 172 for (int i = 1; i < count; i++) {
173 Textfield* textfield = new Textfield(style); 173 Textfield* textfield = new Textfield(style);
174 container->AddChildView(textfield); 174 container->AddChildView(textfield);
175 textfield->SetID(i + 1); 175 textfield->set_id(i + 1);
176 } 176 }
177 177
178 DCHECK(textfield_view_); 178 DCHECK(textfield_view_);
179 model_ = textfield_view_->model_.get(); 179 model_ = textfield_view_->model_.get();
180 model_->ClearEditHistory(); 180 model_->ClearEditHistory();
181 181
182 input_method_ = new MockInputMethod(); 182 input_method_ = new MockInputMethod();
183 widget_->native_widget()->ReplaceInputMethod(input_method_); 183 widget_->native_widget()->ReplaceInputMethod(input_method_);
184 184
185 // Assumes the Widget is always focused. 185 // Assumes the Widget is always focused.
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after
483 SendKeyEvent(ui::VKEY_LEFT, false, true); 483 SendKeyEvent(ui::VKEY_LEFT, false, true);
484 SendKeyEvent(ui::VKEY_DELETE); 484 SendKeyEvent(ui::VKEY_DELETE);
485 EXPECT_STR_EQ("one two", textfield_->text()); 485 EXPECT_STR_EQ("one two", textfield_->text());
486 EXPECT_STR_EQ("one two", last_contents_); 486 EXPECT_STR_EQ("one two", last_contents_);
487 } 487 }
488 488
489 TEST_F(NativeTextfieldViewsTest, FocusTraversalTest) { 489 TEST_F(NativeTextfieldViewsTest, FocusTraversalTest) {
490 InitTextfields(Textfield::STYLE_DEFAULT, 3); 490 InitTextfields(Textfield::STYLE_DEFAULT, 3);
491 textfield_->RequestFocus(); 491 textfield_->RequestFocus();
492 492
493 EXPECT_EQ(1, GetFocusedView()->GetID()); 493 EXPECT_EQ(1, GetFocusedView()->id());
494 widget_->GetFocusManager()->AdvanceFocus(false); 494 widget_->GetFocusManager()->AdvanceFocus(false);
495 EXPECT_EQ(2, GetFocusedView()->GetID()); 495 EXPECT_EQ(2, GetFocusedView()->id());
496 widget_->GetFocusManager()->AdvanceFocus(false); 496 widget_->GetFocusManager()->AdvanceFocus(false);
497 EXPECT_EQ(3, GetFocusedView()->GetID()); 497 EXPECT_EQ(3, GetFocusedView()->id());
498 // Cycle back to the first textfield. 498 // Cycle back to the first textfield.
499 widget_->GetFocusManager()->AdvanceFocus(false); 499 widget_->GetFocusManager()->AdvanceFocus(false);
500 EXPECT_EQ(1, GetFocusedView()->GetID()); 500 EXPECT_EQ(1, GetFocusedView()->id());
501 501
502 widget_->GetFocusManager()->AdvanceFocus(true); 502 widget_->GetFocusManager()->AdvanceFocus(true);
503 EXPECT_EQ(3, GetFocusedView()->GetID()); 503 EXPECT_EQ(3, GetFocusedView()->id());
504 widget_->GetFocusManager()->AdvanceFocus(true); 504 widget_->GetFocusManager()->AdvanceFocus(true);
505 EXPECT_EQ(2, GetFocusedView()->GetID()); 505 EXPECT_EQ(2, GetFocusedView()->id());
506 widget_->GetFocusManager()->AdvanceFocus(true); 506 widget_->GetFocusManager()->AdvanceFocus(true);
507 EXPECT_EQ(1, GetFocusedView()->GetID()); 507 EXPECT_EQ(1, GetFocusedView()->id());
508 // Cycle back to the last textfield. 508 // Cycle back to the last textfield.
509 widget_->GetFocusManager()->AdvanceFocus(true); 509 widget_->GetFocusManager()->AdvanceFocus(true);
510 EXPECT_EQ(3, GetFocusedView()->GetID()); 510 EXPECT_EQ(3, GetFocusedView()->id());
511 511
512 // Request focus should still work. 512 // Request focus should still work.
513 textfield_->RequestFocus(); 513 textfield_->RequestFocus();
514 EXPECT_EQ(1, GetFocusedView()->GetID()); 514 EXPECT_EQ(1, GetFocusedView()->id());
515 515
516 // Test if clicking on textfield view sets the focus to textfield_. 516 // Test if clicking on textfield view sets the focus to textfield_.
517 widget_->GetFocusManager()->AdvanceFocus(true); 517 widget_->GetFocusManager()->AdvanceFocus(true);
518 EXPECT_EQ(3, GetFocusedView()->GetID()); 518 EXPECT_EQ(3, GetFocusedView()->id());
519 MouseEvent click(ui::ET_MOUSE_PRESSED, 0, 0, ui::EF_LEFT_BUTTON_DOWN); 519 MouseEvent click(ui::ET_MOUSE_PRESSED, 0, 0, ui::EF_LEFT_BUTTON_DOWN);
520 textfield_view_->OnMousePressed(click); 520 textfield_view_->OnMousePressed(click);
521 EXPECT_EQ(1, GetFocusedView()->GetID()); 521 EXPECT_EQ(1, GetFocusedView()->id());
522 } 522 }
523 523
524 void VerifyTextfieldContextMenuContents(bool textfield_has_selection, 524 void VerifyTextfieldContextMenuContents(bool textfield_has_selection,
525 ui::MenuModel* menu_model) { 525 ui::MenuModel* menu_model) {
526 EXPECT_TRUE(menu_model->IsEnabledAt(4 /* Separator */)); 526 EXPECT_TRUE(menu_model->IsEnabledAt(4 /* Separator */));
527 EXPECT_TRUE(menu_model->IsEnabledAt(5 /* SELECT ALL */)); 527 EXPECT_TRUE(menu_model->IsEnabledAt(5 /* SELECT ALL */));
528 EXPECT_EQ(textfield_has_selection, menu_model->IsEnabledAt(0 /* CUT */)); 528 EXPECT_EQ(textfield_has_selection, menu_model->IsEnabledAt(0 /* CUT */));
529 EXPECT_EQ(textfield_has_selection, menu_model->IsEnabledAt(1 /* COPY */)); 529 EXPECT_EQ(textfield_has_selection, menu_model->IsEnabledAt(1 /* COPY */));
530 EXPECT_EQ(textfield_has_selection, menu_model->IsEnabledAt(3 /* DELETE */)); 530 EXPECT_EQ(textfield_has_selection, menu_model->IsEnabledAt(3 /* DELETE */));
531 string16 str; 531 string16 str;
(...skipping 542 matching lines...) Expand 10 before | Expand all | Expand 10 after
1074 EXPECT_STR_EQ("a23", textfield_->text()); 1074 EXPECT_STR_EQ("a23", textfield_->text());
1075 SendKeyEvent(ui::VKEY_B); 1075 SendKeyEvent(ui::VKEY_B);
1076 EXPECT_STR_EQ("ab3", textfield_->text()); 1076 EXPECT_STR_EQ("ab3", textfield_->text());
1077 SendKeyEvent(ui::VKEY_Z, false, true); 1077 SendKeyEvent(ui::VKEY_Z, false, true);
1078 EXPECT_STR_EQ("123", textfield_->text()); 1078 EXPECT_STR_EQ("123", textfield_->text());
1079 SendKeyEvent(ui::VKEY_Y, false, true); 1079 SendKeyEvent(ui::VKEY_Y, false, true);
1080 EXPECT_STR_EQ("ab3", textfield_->text()); 1080 EXPECT_STR_EQ("ab3", textfield_->text());
1081 } 1081 }
1082 1082
1083 } // namespace views 1083 } // namespace views
OLDNEW
« no previous file with comments | « views/controls/tabbed_pane/tabbed_pane.cc ('k') | views/controls/textfield/textfield.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698