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

Unified Diff: ui/views/controls/textfield/textfield_unittest.cc

Issue 2273263002: MacViewsBrowser: Fix omnibox crash due to failed DCHECK. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address review, make Textfield::OnKeyPressed/Released final. Created 4 years, 4 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
« no previous file with comments | « ui/views/controls/textfield/textfield_test_api.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/controls/textfield/textfield_unittest.cc
diff --git a/ui/views/controls/textfield/textfield_unittest.cc b/ui/views/controls/textfield/textfield_unittest.cc
index affd8dc47159c6d0273660df2bac6fd74e2163d5..391337ea124d8a75dd854acdcdbe0326a9dc3b9b 100644
--- a/ui/views/controls/textfield/textfield_unittest.cc
+++ b/ui/views/controls/textfield/textfield_unittest.cc
@@ -265,29 +265,6 @@ class TestTextfield : public views::Textfield {
key_received_(false),
weak_ptr_factory_(this) {}
- bool OnKeyPressed(const ui::KeyEvent& e) override {
- key_received_ = true;
-
- // Since OnKeyPressed() might destroy |this|, get a weak pointer and
- // verify it isn't null before writing the bool value to key_handled_.
- base::WeakPtr<TestTextfield> textfield(weak_ptr_factory_.GetWeakPtr());
- bool key = views::Textfield::OnKeyPressed(e);
-
- if (!textfield)
- return key;
-
- key_handled_ = key;
-
- return key_handled_;
- }
-
- bool OnKeyReleased(const ui::KeyEvent& e) override {
- key_received_ = true;
- key_handled_ = views::Textfield::OnKeyReleased(e);
- EXPECT_FALSE(key_handled_); // Textfield doesn't override OnKeyReleased.
- return key_handled_;
- }
-
// ui::TextInputClient overrides:
void InsertChar(const ui::KeyEvent& e) override {
views::Textfield::InsertChar(e);
@@ -304,6 +281,25 @@ class TestTextfield : public views::Textfield {
void clear() { key_received_ = key_handled_ = false; }
private:
+ // views::View override:
+ void OnKeyEvent(ui::KeyEvent* event) override {
+ key_received_ = true;
+
+ // Since Textfield::OnKeyPressed() might destroy |this|, get a weak pointer
+ // and verify it isn't null before writing the bool value to key_handled_.
+ base::WeakPtr<TestTextfield> textfield(weak_ptr_factory_.GetWeakPtr());
+ views::View::OnKeyEvent(event);
+
+ if (!textfield)
+ return;
+
+ key_handled_ = event->handled();
+
+ // Currently, Textfield::OnKeyReleased always returns false.
+ if (event->type() == ui::ET_KEY_RELEASED)
+ EXPECT_FALSE(key_handled_);
+ }
+
bool key_handled_;
bool key_received_;
« no previous file with comments | « ui/views/controls/textfield/textfield_test_api.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698