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

Side by Side Diff: ui/views/controls/textfield/textfield_model.cc

Issue 623293004: replace OVERRIDE and FINAL with override and final in ui/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase on master Created 6 years, 2 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "ui/views/controls/textfield/textfield_model.h" 5 #include "ui/views/controls/textfield/textfield_model.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/stl_util.h" 10 #include "base/stl_util.h"
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 at /* old cursor */, 153 at /* old cursor */,
154 base::string16(), 154 base::string16(),
155 at, 155 at,
156 false /* N/A */, 156 false /* N/A */,
157 at + new_text.length() /* new cursor */, 157 at + new_text.length() /* new cursor */,
158 new_text, 158 new_text,
159 at) { 159 at) {
160 } 160 }
161 161
162 // Edit implementation. 162 // Edit implementation.
163 virtual bool DoMerge(const Edit* edit) OVERRIDE { 163 virtual bool DoMerge(const Edit* edit) override {
164 if (edit->type() != INSERT_EDIT || new_text_end() != edit->new_text_start_) 164 if (edit->type() != INSERT_EDIT || new_text_end() != edit->new_text_start_)
165 return false; 165 return false;
166 // If continuous edit, merge it. 166 // If continuous edit, merge it.
167 // TODO(oshima): gtk splits edits between whitespace. Find out what 167 // TODO(oshima): gtk splits edits between whitespace. Find out what
168 // we want to here and implement if necessary. 168 // we want to here and implement if necessary.
169 new_text_ += edit->new_text_; 169 new_text_ += edit->new_text_;
170 new_cursor_pos_ = edit->new_cursor_pos_; 170 new_cursor_pos_ = edit->new_cursor_pos_;
171 return true; 171 return true;
172 } 172 }
173 }; 173 };
(...skipping 12 matching lines...) Expand all
186 old_cursor_pos, 186 old_cursor_pos,
187 old_text, 187 old_text,
188 old_text_start, 188 old_text_start,
189 backward, 189 backward,
190 new_cursor_pos, 190 new_cursor_pos,
191 new_text, 191 new_text,
192 new_text_start) { 192 new_text_start) {
193 } 193 }
194 194
195 // Edit implementation. 195 // Edit implementation.
196 virtual bool DoMerge(const Edit* edit) OVERRIDE { 196 virtual bool DoMerge(const Edit* edit) override {
197 if (edit->type() == DELETE_EDIT || 197 if (edit->type() == DELETE_EDIT ||
198 new_text_end() != edit->old_text_start_ || 198 new_text_end() != edit->old_text_start_ ||
199 edit->old_text_start_ != edit->new_text_start_) 199 edit->old_text_start_ != edit->new_text_start_)
200 return false; 200 return false;
201 old_text_ += edit->old_text_; 201 old_text_ += edit->old_text_;
202 new_text_ += edit->new_text_; 202 new_text_ += edit->new_text_;
203 new_cursor_pos_ = edit->new_cursor_pos_; 203 new_cursor_pos_ = edit->new_cursor_pos_;
204 return true; 204 return true;
205 } 205 }
206 }; 206 };
207 207
208 class DeleteEdit : public Edit { 208 class DeleteEdit : public Edit {
209 public: 209 public:
210 DeleteEdit(bool mergeable, 210 DeleteEdit(bool mergeable,
211 const base::string16& text, 211 const base::string16& text,
212 size_t text_start, 212 size_t text_start,
213 bool backward) 213 bool backward)
214 : Edit(DELETE_EDIT, 214 : Edit(DELETE_EDIT,
215 mergeable ? MERGEABLE : DO_NOT_MERGE, 215 mergeable ? MERGEABLE : DO_NOT_MERGE,
216 (backward ? text_start + text.length() : text_start), 216 (backward ? text_start + text.length() : text_start),
217 text, 217 text,
218 text_start, 218 text_start,
219 backward, 219 backward,
220 text_start, 220 text_start,
221 base::string16(), 221 base::string16(),
222 text_start) { 222 text_start) {
223 } 223 }
224 224
225 // Edit implementation. 225 // Edit implementation.
226 virtual bool DoMerge(const Edit* edit) OVERRIDE { 226 virtual bool DoMerge(const Edit* edit) override {
227 if (edit->type() != DELETE_EDIT) 227 if (edit->type() != DELETE_EDIT)
228 return false; 228 return false;
229 229
230 if (delete_backward_) { 230 if (delete_backward_) {
231 // backspace can be merged only with backspace at the same position. 231 // backspace can be merged only with backspace at the same position.
232 if (!edit->delete_backward_ || old_text_start_ != edit->old_text_end()) 232 if (!edit->delete_backward_ || old_text_start_ != edit->old_text_end())
233 return false; 233 return false;
234 old_text_start_ = edit->old_text_start_; 234 old_text_start_ = edit->old_text_start_;
235 old_text_ = edit->old_text_ + old_text_; 235 old_text_ = edit->old_text_ + old_text_;
236 new_cursor_pos_ = edit->new_cursor_pos_; 236 new_cursor_pos_ = edit->new_cursor_pos_;
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after
760 ClearComposition(); 760 ClearComposition();
761 if (delete_from != delete_to) 761 if (delete_from != delete_to)
762 render_text_->SetText(old_text.erase(delete_from, delete_to - delete_from)); 762 render_text_->SetText(old_text.erase(delete_from, delete_to - delete_from));
763 if (!new_text.empty()) 763 if (!new_text.empty())
764 render_text_->SetText(old_text.insert(new_text_insert_at, new_text)); 764 render_text_->SetText(old_text.insert(new_text_insert_at, new_text));
765 render_text_->SetCursorPosition(new_cursor_pos); 765 render_text_->SetCursorPosition(new_cursor_pos);
766 // TODO(oshima): Select text that was just undone, like Mac (but not GTK). 766 // TODO(oshima): Select text that was just undone, like Mac (but not GTK).
767 } 767 }
768 768
769 } // namespace views 769 } // namespace views
OLDNEW
« no previous file with comments | « ui/views/controls/textfield/textfield.h ('k') | ui/views/controls/textfield/textfield_model_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698