| Index: chrome/browser/ui/views/location_bar/location_bar_view.cc
|
| diff --git a/chrome/browser/ui/views/location_bar/location_bar_view.cc b/chrome/browser/ui/views/location_bar/location_bar_view.cc
|
| index d66b51ace098a22efa48dd6b9153aa493439ab60..8dc3a257b1b255f1b7bbbd9d0fe271c084518748 100644
|
| --- a/chrome/browser/ui/views/location_bar/location_bar_view.cc
|
| +++ b/chrome/browser/ui/views/location_bar/location_bar_view.cc
|
| @@ -399,15 +399,6 @@ gfx::Point LocationBarView::GetLocationEntryOrigin() const {
|
| return origin;
|
| }
|
|
|
| -#if defined(OS_WIN)
|
| -void LocationBarView::OnCommitSuggestedText() {
|
| - InstantController* instant = delegate_->GetInstant();
|
| - DCHECK(instant);
|
| - DCHECK(suggested_text_view_);
|
| - OnCommitSuggestedText(location_entry_->GetText());
|
| -}
|
| -#endif
|
| -
|
| gfx::Size LocationBarView::GetPreferredSize() {
|
| return gfx::Size(0, GetThemeProvider()->GetBitmapNamed(mode_ == POPUP ?
|
| IDR_LOCATIONBG_POPUPMODE_CENTER : IDR_LOCATIONBG_C)->height());
|
| @@ -768,17 +759,24 @@ void LocationBarView::OnAutocompleteWillAccept() {
|
| update_instant_ = false;
|
| }
|
|
|
| -bool LocationBarView::OnCommitSuggestedText(const string16& typed_text) {
|
| - InstantController* instant = delegate_->GetInstant();
|
| - if (!instant)
|
| +bool LocationBarView::OnCommitSuggestedText(bool skip_inline_autocomplete) {
|
| + if (!delegate_->GetInstant())
|
| return false;
|
| +
|
| string16 suggestion;
|
| #if defined(OS_WIN)
|
| - if (!HasValidSuggestText())
|
| - return false;
|
| - suggestion = suggested_text_view_->GetText();
|
| + if (HasValidSuggestText())
|
| + suggestion = suggested_text_view_->GetText();
|
| +#else
|
| + suggestion = location_entry_->GetInstantSuggestion();
|
| #endif
|
| - return location_entry_->CommitInstantSuggestion(typed_text, suggestion);
|
| +
|
| + if (suggestion.empty())
|
| + return false;
|
| +
|
| + location_entry_->model()->FinalizeInstantQuery(
|
| + location_entry_->GetText(), suggestion, skip_inline_autocomplete);
|
| + return true;
|
| }
|
|
|
| bool LocationBarView::AcceptCurrentInstantPreview() {
|
| @@ -852,13 +850,13 @@ void LocationBarView::OnChanged() {
|
| location_entry_->model()->UseVerbatimInstant(),
|
| &suggested_text);
|
| if (!instant->MightSupportInstant()) {
|
| - location_entry_->model()->FinalizeInstantQuery(string16(),
|
| - string16());
|
| + location_entry_->model()->FinalizeInstantQuery(
|
| + string16(), string16(), false);
|
| }
|
| } else {
|
| instant->DestroyPreviewContents();
|
| - location_entry_->model()->FinalizeInstantQuery(string16(),
|
| - string16());
|
| + location_entry_->model()->FinalizeInstantQuery(
|
| + string16(), string16(), false);
|
| }
|
| }
|
|
|
| @@ -1058,6 +1056,10 @@ bool LocationBarView::SkipDefaultKeyEventProcessing(const views::KeyEvent& e) {
|
| return true;
|
| }
|
|
|
| + // If the caret is not at the end, then tab moves the caret to the end.
|
| + if (!location_entry_->IsCaretAtEnd())
|
| + return true;
|
| +
|
| // Tab while showing instant commits instant immediately.
|
| // Return true so that focus traversal isn't attempted. The edit ends
|
| // up doing nothing in this case.
|
| @@ -1128,8 +1130,8 @@ void LocationBarView::SetSuggestedText(const string16& input) {
|
| // TODO: if we keep autocomplete, make it so this isn't invoked with empty
|
| // text.
|
| if (!input.empty()) {
|
| - location_entry_->model()->FinalizeInstantQuery(location_entry_->GetText(),
|
| - input);
|
| + location_entry_->model()->FinalizeInstantQuery(
|
| + location_entry_->GetText(), input, false);
|
| }
|
| return;
|
| }
|
|
|