OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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/location_bar/autocomplete_text_field_editor.h" | 5 #import "chrome/browser/ui/cocoa/location_bar/autocomplete_text_field_editor.h" |
6 | 6 |
7 #include "base/string_util.h" | 7 #include "base/string_util.h" |
8 #include "grit/generated_resources.h" | 8 #include "grit/generated_resources.h" |
9 #include "base/sys_string_conversions.h" | 9 #include "base/sys_string_conversions.h" |
10 #include "chrome/app/chrome_command_ids.h" // IDC_* | 10 #include "chrome/app/chrome_command_ids.h" // IDC_* |
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
301 // We're only interested in selection changes directly caused by keyboard | 301 // We're only interested in selection changes directly caused by keyboard |
302 // input from the user. | 302 // input from the user. |
303 if (interpretingKeyEvents_) | 303 if (interpretingKeyEvents_) |
304 textChangedByKeyEvents_ = YES; | 304 textChangedByKeyEvents_ = YES; |
305 } | 305 } |
306 | 306 |
307 - (void)interpretKeyEvents:(NSArray *)eventArray { | 307 - (void)interpretKeyEvents:(NSArray *)eventArray { |
308 DCHECK(!interpretingKeyEvents_); | 308 DCHECK(!interpretingKeyEvents_); |
309 interpretingKeyEvents_ = YES; | 309 interpretingKeyEvents_ = YES; |
310 textChangedByKeyEvents_ = NO; | 310 textChangedByKeyEvents_ = NO; |
| 311 AutocompleteTextFieldObserver* observer = [self observer]; |
| 312 |
| 313 if (observer) |
| 314 observer->OnBeforeChange(); |
| 315 |
311 [super interpretKeyEvents:eventArray]; | 316 [super interpretKeyEvents:eventArray]; |
312 | 317 |
313 AutocompleteTextFieldObserver* observer = [self observer]; | |
314 if (textChangedByKeyEvents_ && observer) | 318 if (textChangedByKeyEvents_ && observer) |
315 observer->OnDidChange(); | 319 observer->OnDidChange(); |
316 | 320 |
317 DCHECK(interpretingKeyEvents_); | 321 DCHECK(interpretingKeyEvents_); |
318 interpretingKeyEvents_ = NO; | 322 interpretingKeyEvents_ = NO; |
319 } | 323 } |
320 | 324 |
| 325 - (BOOL)shouldChangeTextInRange:(NSRange)affectedCharRange |
| 326 replacementString:(NSString *)replacementString { |
| 327 BOOL ret = [super shouldChangeTextInRange:affectedCharRange |
| 328 replacementString:replacementString]; |
| 329 |
| 330 if (ret && !interpretingKeyEvents_) { |
| 331 AutocompleteTextFieldObserver* observer = [self observer]; |
| 332 if (observer) |
| 333 observer->OnBeforeChange(); |
| 334 } |
| 335 return ret; |
| 336 } |
| 337 |
321 - (void)didChangeText { | 338 - (void)didChangeText { |
322 [super didChangeText]; | 339 [super didChangeText]; |
323 | 340 |
324 AutocompleteTextFieldObserver* observer = [self observer]; | 341 AutocompleteTextFieldObserver* observer = [self observer]; |
325 if (observer) { | 342 if (observer) { |
326 if (!interpretingKeyEvents_) | 343 if (!interpretingKeyEvents_) |
327 observer->OnDidChange(); | 344 observer->OnDidChange(); |
328 else | 345 else |
329 textChangedByKeyEvents_ = YES; | 346 textChangedByKeyEvents_ = YES; |
330 } | 347 } |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
371 - (void)mouseDown:(NSEvent*)theEvent { | 388 - (void)mouseDown:(NSEvent*)theEvent { |
372 // Close the popup before processing the event. | 389 // Close the popup before processing the event. |
373 AutocompleteTextFieldObserver* observer = [self observer]; | 390 AutocompleteTextFieldObserver* observer = [self observer]; |
374 if (observer) | 391 if (observer) |
375 observer->ClosePopup(); | 392 observer->ClosePopup(); |
376 | 393 |
377 [super mouseDown:theEvent]; | 394 [super mouseDown:theEvent]; |
378 } | 395 } |
379 | 396 |
380 @end | 397 @end |
OLD | NEW |