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

Side by Side Diff: chrome/browser/ui/omnibox/omnibox_edit_model.cc

Issue 12623029: Upstreaming mechanism to add query refinement to omnibox searches. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed ChromeOS. Created 7 years, 9 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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 "chrome/browser/ui/omnibox/omnibox_edit_model.h" 5 #include "chrome/browser/ui/omnibox/omnibox_edit_model.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/auto_reset.h" 9 #include "base/auto_reset.h"
10 #include "base/format_macros.h" 10 #include "base/format_macros.h"
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after
493 // inline autocomplete text. 493 // inline autocomplete text.
494 // TODO: Rethink how we are going to handle this case to avoid 494 // TODO: Rethink how we are going to handle this case to avoid
495 // inconsistent behavior when user presses Ctrl key. 495 // inconsistent behavior when user presses Ctrl key.
496 // See http://crbug.com/165961 and http://crbug.com/165968 for more details. 496 // See http://crbug.com/165961 and http://crbug.com/165968 for more details.
497 cursor_position = user_text_.length(); 497 cursor_position = user_text_.length();
498 } 498 }
499 499
500 // We don't explicitly clear OmniboxPopupModel::manually_selected_match, as 500 // We don't explicitly clear OmniboxPopupModel::manually_selected_match, as
501 // Start ends up invoking OmniboxPopupModel::OnResultChanged which clears it. 501 // Start ends up invoking OmniboxPopupModel::OnResultChanged which clears it.
502 autocomplete_controller_->Start(AutocompleteInput( 502 autocomplete_controller_->Start(AutocompleteInput(
503 user_text_, cursor_position, string16(), 503 user_text_, cursor_position, string16(), GURL(),
504 prevent_inline_autocomplete || just_deleted_text_ || 504 prevent_inline_autocomplete || just_deleted_text_ ||
505 (has_selected_text && inline_autocomplete_text_.empty()) || 505 (has_selected_text && inline_autocomplete_text_.empty()) ||
506 (paste_state_ != NONE), keyword_is_selected, 506 (paste_state_ != NONE), keyword_is_selected,
507 keyword_is_selected || allow_exact_keyword_match_, 507 keyword_is_selected || allow_exact_keyword_match_,
508 AutocompleteInput::ALL_MATCHES)); 508 AutocompleteInput::ALL_MATCHES));
509 } 509 }
510 510
511 void OmniboxEditModel::StopAutocomplete() { 511 void OmniboxEditModel::StopAutocomplete() {
512 autocomplete_controller_->Stop(true); 512 autocomplete_controller_->Stop(true);
513 } 513 }
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
552 // as the desired TLD. Then use this autocomplete input to generate a 552 // as the desired TLD. Then use this autocomplete input to generate a
553 // URL_WHAT_YOU_TYPED AutocompleteMatch. Note that using the most recent 553 // URL_WHAT_YOU_TYPED AutocompleteMatch. Note that using the most recent
554 // input instead of the currently visible text means we'll ignore any 554 // input instead of the currently visible text means we'll ignore any
555 // visible inline autocompletion: if a user types "foo" and is autocompleted 555 // visible inline autocompletion: if a user types "foo" and is autocompleted
556 // to "foodnetwork.com", ctrl-enter will navigate to "foo.com", not 556 // to "foodnetwork.com", ctrl-enter will navigate to "foo.com", not
557 // "foodnetwork.com". At the time of writing, this behavior matches 557 // "foodnetwork.com". At the time of writing, this behavior matches
558 // Internet Explorer, but not Firefox. 558 // Internet Explorer, but not Firefox.
559 const AutocompleteInput& old_input = autocomplete_controller_->input(); 559 const AutocompleteInput& old_input = autocomplete_controller_->input();
560 AutocompleteInput input( 560 AutocompleteInput input(
561 old_input.text(), old_input.cursor_position(), ASCIIToUTF16("com"), 561 old_input.text(), old_input.cursor_position(), ASCIIToUTF16("com"),
562 old_input.prevent_inline_autocomplete(), 562 GURL(), old_input.prevent_inline_autocomplete(),
563 old_input.prefer_keyword(), 563 old_input.prefer_keyword(), old_input.allow_exact_keyword_match(),
564 old_input.allow_exact_keyword_match(),
565 old_input.matches_requested()); 564 old_input.matches_requested());
566 AutocompleteMatch url_match = 565 AutocompleteMatch url_match =
567 HistoryURLProvider::SuggestExactInput(match.provider, input, true); 566 HistoryURLProvider::SuggestExactInput(match.provider, input, true);
568 567
569 if (url_match.destination_url.is_valid()) { 568 if (url_match.destination_url.is_valid()) {
570 // We have a valid URL, we use this newly generated AutocompleteMatch. 569 // We have a valid URL, we use this newly generated AutocompleteMatch.
571 match = url_match; 570 match = url_match;
572 alternate_nav_url = GURL(); 571 alternate_nav_url = GURL();
573 } 572 }
574 } 573 }
(...skipping 804 matching lines...) Expand 10 before | Expand all | Expand 10 after
1379 instant->OmniboxFocusChanged(state, reason, NULL); 1378 instant->OmniboxFocusChanged(state, reason, NULL);
1380 1379
1381 // Update state and notify view if the omnibox has focus and the caret 1380 // Update state and notify view if the omnibox has focus and the caret
1382 // visibility changed. 1381 // visibility changed.
1383 const bool was_caret_visible = is_caret_visible(); 1382 const bool was_caret_visible = is_caret_visible();
1384 focus_state_ = state; 1383 focus_state_ = state;
1385 if (focus_state_ != OMNIBOX_FOCUS_NONE && 1384 if (focus_state_ != OMNIBOX_FOCUS_NONE &&
1386 is_caret_visible() != was_caret_visible) 1385 is_caret_visible() != was_caret_visible)
1387 view_->ApplyCaretVisibility(); 1386 view_->ApplyCaretVisibility();
1388 } 1387 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698