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

Side by Side Diff: chrome/browser/ui/cocoa/omnibox/omnibox_view_mac_unittest.mm

Issue 12221124: Omnibox Mac: Always allow up and down arrow (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: " Created 7 years, 10 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 | « chrome/browser/ui/cocoa/omnibox/omnibox_view_mac.mm ('k') | no next file » | 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) 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 #import "chrome/browser/ui/cocoa/omnibox/omnibox_view_mac.h" 5 #import "chrome/browser/ui/cocoa/omnibox/omnibox_view_mac.h"
6 6
7 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" 7 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h"
8 #include "chrome/browser/ui/omnibox/omnibox_edit_controller.h" 8 #include "chrome/browser/ui/omnibox/omnibox_edit_controller.h"
9 #include "chrome/browser/ui/omnibox/omnibox_popup_model.h" 9 #include "chrome/browser/ui/omnibox/omnibox_popup_model.h"
10 #include "chrome/browser/ui/omnibox/omnibox_popup_view.h" 10 #include "chrome/browser/ui/omnibox/omnibox_popup_view.h"
(...skipping 12 matching lines...) Expand all
23 : OmniboxEditModel(view, controller, profile), 23 : OmniboxEditModel(view, controller, profile),
24 up_or_down_count_(0) { 24 up_or_down_count_(0) {
25 } 25 }
26 26
27 virtual void OnUpOrDownKeyPressed(int count) OVERRIDE { 27 virtual void OnUpOrDownKeyPressed(int count) OVERRIDE {
28 up_or_down_count_ = count; 28 up_or_down_count_ = count;
29 } 29 }
30 30
31 int up_or_down_count() const { return up_or_down_count_; } 31 int up_or_down_count() const { return up_or_down_count_; }
32 32
33 void set_up_or_down_count(int count) {
34 up_or_down_count_ = count;
35 }
36
33 private: 37 private:
34 int up_or_down_count_; 38 int up_or_down_count_;
35 39
36 DISALLOW_COPY_AND_ASSIGN(MockOmniboxEditModel); 40 DISALLOW_COPY_AND_ASSIGN(MockOmniboxEditModel);
37 }; 41 };
38 42
39 class MockOmniboxPopupView : public OmniboxPopupView { 43 class MockOmniboxPopupView : public OmniboxPopupView {
40 public: 44 public:
41 MockOmniboxPopupView() : is_open_(false) {} 45 MockOmniboxPopupView() : is_open_(false) {}
42 virtual ~MockOmniboxPopupView() {} 46 virtual ~MockOmniboxPopupView() {}
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 view.SetUserText(ASCIIToUTF16("Alfred")); 164 view.SetUserText(ASCIIToUTF16("Alfred"));
161 EXPECT_EQ("Alfred", UTF16ToUTF8(view.GetText())); 165 EXPECT_EQ("Alfred", UTF16ToUTF8(view.GetText()));
162 view.SetInstantSuggestion(ASCIIToUTF16(" Hitchcock")); 166 view.SetInstantSuggestion(ASCIIToUTF16(" Hitchcock"));
163 EXPECT_EQ("Alfred", UTF16ToUTF8(view.GetText())); 167 EXPECT_EQ("Alfred", UTF16ToUTF8(view.GetText()));
164 EXPECT_EQ(" Hitchcock", UTF16ToUTF8(view.GetInstantSuggestion())); 168 EXPECT_EQ(" Hitchcock", UTF16ToUTF8(view.GetInstantSuggestion()));
165 169
166 view.SetUserText(string16()); 170 view.SetUserText(string16());
167 EXPECT_EQ(string16(), view.GetText()); 171 EXPECT_EQ(string16(), view.GetText());
168 EXPECT_EQ(string16(), view.GetInstantSuggestion()); 172 EXPECT_EQ(string16(), view.GetInstantSuggestion());
169 } 173 }
174
175 TEST_F(OmniboxViewMacTest, UpDownArrow) {
176 OmniboxViewMac view(NULL, NULL, profile(), NULL, NULL);
177
178 // This is deleted by the omnibox view.
179 MockOmniboxEditModel* model =
180 new MockOmniboxEditModel(&view, NULL, profile());
181 SetModel(&view, model);
182
183 MockOmniboxPopupView popup_view;
184 OmniboxPopupModel popup_model(&popup_view, model);
185
186 // With popup closed verify that pressing up and down arrow works.
187 popup_view.set_is_open(false);
188 model->set_up_or_down_count(0);
189 view.OnDoCommandBySelector(@selector(moveDown:));
190 EXPECT_EQ(1, model->up_or_down_count());
191 model->set_up_or_down_count(0);
192 view.OnDoCommandBySelector(@selector(moveUp:));
193 EXPECT_EQ(-1, model->up_or_down_count());
194
195 // With popup open verify that pressing up and down arrow works.
196 popup_view.set_is_open(true);
197 model->set_up_or_down_count(0);
198 view.OnDoCommandBySelector(@selector(moveDown:));
199 EXPECT_EQ(1, model->up_or_down_count());
200 model->set_up_or_down_count(0);
201 view.OnDoCommandBySelector(@selector(moveUp:));
202 EXPECT_EQ(-1, model->up_or_down_count());
203 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/cocoa/omnibox/omnibox_view_mac.mm ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698