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

Side by Side Diff: chrome/renderer/searchbox/searchbox.cc

Issue 12895007: Send onsubmit query down to the instant extended overlay page when a navigation is performed from t… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Check return value of UpdateSearchState. Created 7 years, 8 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/renderer/searchbox/searchbox.h" 5 #include "chrome/renderer/searchbox/searchbox.h"
6 6
7 #include "base/metrics/field_trial.h" 7 #include "base/metrics/field_trial.h"
8 #include "base/string_number_conversions.h" 8 #include "base/string_number_conversions.h"
9 #include "base/utf_string_conversions.h" 9 #include "base/utf_string_conversions.h"
10 #include "chrome/common/chrome_switches.h" 10 #include "chrome/common/chrome_switches.h"
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 selection_start_ = selection_start; 223 selection_start_ = selection_start;
224 selection_end_ = selection_end; 224 selection_end_ = selection_end;
225 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) { 225 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
226 DVLOG(1) << render_view() << " OnChange"; 226 DVLOG(1) << render_view() << " OnChange";
227 extensions_v8::SearchBoxExtension::DispatchChange( 227 extensions_v8::SearchBoxExtension::DispatchChange(
228 render_view()->GetWebView()->mainFrame()); 228 render_view()->GetWebView()->mainFrame());
229 } 229 }
230 } 230 }
231 231
232 void SearchBox::OnSubmit(const string16& query) { 232 void SearchBox::OnSubmit(const string16& query) {
233 query_ = query; 233 // Submit() is called when the user hits Enter to commit the omnibox text.
234 verbatim_ = true; 234 // If |query| is non-blank, the user committed a search. If it's blank, the
235 selection_start_ = selection_end_ = query_.size(); 235 // omnibox text was a URL, and the user is navigating to it, in which case
236 // we shouldn't update the |query_| or associated state.
237 if (!query.empty()) {
238 query_ = query;
239 verbatim_ = true;
240 selection_start_ = selection_end_ = query_.size();
241 }
242
236 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) { 243 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
237 DVLOG(1) << render_view() << " OnSubmit"; 244 DVLOG(1) << render_view() << " OnSubmit";
238 extensions_v8::SearchBoxExtension::DispatchSubmit( 245 extensions_v8::SearchBoxExtension::DispatchSubmit(
239 render_view()->GetWebView()->mainFrame()); 246 render_view()->GetWebView()->mainFrame());
240 } 247 }
241 Reset(); 248
249 if (!query.empty())
250 Reset();
242 } 251 }
243 252
244 void SearchBox::OnCancel(const string16& query) { 253 void SearchBox::OnCancel(const string16& query) {
245 query_ = query; 254 query_ = query;
246 verbatim_ = true; 255 verbatim_ = true;
247 selection_start_ = selection_end_ = query_.size(); 256 selection_start_ = selection_end_ = query_.size();
248 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) { 257 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
249 DVLOG(1) << render_view() << " OnCancel"; 258 DVLOG(1) << render_view() << " OnCancel";
250 extensions_v8::SearchBoxExtension::DispatchCancel( 259 extensions_v8::SearchBoxExtension::DispatchCancel(
251 render_view()->GetWebView()->mainFrame()); 260 render_view()->GetWebView()->mainFrame());
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
501 std::string trial_flags = 510 std::string trial_flags =
502 base::FieldTrialList::FindFullName(kInstantExtendedFieldTrialName); 511 base::FieldTrialList::FindFullName(kInstantExtendedFieldTrialName);
503 std::vector<std::string> flags; 512 std::vector<std::string> flags;
504 Tokenize(trial_flags, " ", &flags); 513 Tokenize(trial_flags, " ", &flags);
505 for (size_t i = 0; i < flags.size(); ++i) { 514 for (size_t i = 0; i < flags.size(); ++i) {
506 if (flags[i] == kIframesEnabledFlagWithValue) 515 if (flags[i] == kIframesEnabledFlagWithValue)
507 return true; 516 return true;
508 } 517 }
509 return false; 518 return false;
510 } 519 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/search/instant_extended_browsertest.cc ('k') | chrome/test/data/instant_extended.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698