diff options
Diffstat (limited to 'chrome/browser')
-rw-r--r-- | chrome/browser/autocomplete/autocomplete_edit_view_mac.h | 2 | ||||
-rw-r--r-- | chrome/browser/autocomplete/autocomplete_edit_view_mac.mm | 9 |
2 files changed, 8 insertions, 3 deletions
diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_mac.h b/chrome/browser/autocomplete/autocomplete_edit_view_mac.h index 9b22412..6c7ccfb 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_mac.h +++ b/chrome/browser/autocomplete/autocomplete_edit_view_mac.h @@ -100,7 +100,7 @@ class AutocompleteEditViewMac : public AutocompleteEditView { void AcceptInput(WindowOpenDisposition disposition, bool for_drop); - // Helper for LocationBarViewMac. Selects all in |field_|. + // Helper for LocationBarBridge. void FocusLocation(); private: diff --git a/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm b/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm index 9fe6ab9..6f8f6c8 100644 --- a/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm +++ b/chrome/browser/autocomplete/autocomplete_edit_view_mac.mm @@ -549,8 +549,13 @@ void AutocompleteEditViewMac::AcceptInput( } void AutocompleteEditViewMac::FocusLocation() { - [[field_ window] makeFirstResponder:field_]; - DCHECK_EQ([field_ currentEditor], [[field_ window] firstResponder]); + // -makeFirstResponder: will select the entire field_. If we're + // already firstResponder, it's likely that we want to retain the + // current selection. + if (![field_ currentEditor]) { + [[field_ window] makeFirstResponder:field_]; + DCHECK_EQ([field_ currentEditor], [[field_ window] firstResponder]); + } } @implementation AutocompleteFieldDelegate |