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

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

Issue 741593003: Merge: Propagate the search request params from the browser to the Instant search base page to fix … (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2214
Patch Set: Created 6 years, 1 month 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
« no previous file with comments | « chrome/renderer/searchbox/searchbox.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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_extension.h" 5 #include "chrome/renderer/searchbox/searchbox_extension.h"
6 6
7 #include "base/i18n/rtl.h" 7 #include "base/i18n/rtl.h"
8 #include "base/json/string_escape.h" 8 #include "base/json/string_escape.h"
9 #include "base/strings/string_number_conversions.h" 9 #include "base/strings/string_number_conversions.h"
10 #include "base/strings/string_util.h" 10 #include "base/strings/string_util.h"
(...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 // chrome-search://most-visited can call this function. 376 // chrome-search://most-visited can call this function.
377 static void GetMostVisitedItemData( 377 static void GetMostVisitedItemData(
378 const v8::FunctionCallbackInfo<v8::Value>& args); 378 const v8::FunctionCallbackInfo<v8::Value>& args);
379 379
380 // Gets the submitted value of the user's search query. 380 // Gets the submitted value of the user's search query.
381 static void GetQuery(const v8::FunctionCallbackInfo<v8::Value>& args); 381 static void GetQuery(const v8::FunctionCallbackInfo<v8::Value>& args);
382 382
383 // Returns true if the Searchbox itself is oriented right-to-left. 383 // Returns true if the Searchbox itself is oriented right-to-left.
384 static void GetRightToLeft(const v8::FunctionCallbackInfo<v8::Value>& args); 384 static void GetRightToLeft(const v8::FunctionCallbackInfo<v8::Value>& args);
385 385
386 // Gets the Embedded Search request params. Used for logging purposes.
387 static void GetSearchRequestParams(
388 const v8::FunctionCallbackInfo<v8::Value>& args);
389
386 // Gets the start-edge margin to use with extended Instant. 390 // Gets the start-edge margin to use with extended Instant.
387 static void GetStartMargin(const v8::FunctionCallbackInfo<v8::Value>& args); 391 static void GetStartMargin(const v8::FunctionCallbackInfo<v8::Value>& args);
388 392
389 // Gets the current top suggestion to prefetch search results. 393 // Gets the current top suggestion to prefetch search results.
390 static void GetSuggestionToPrefetch( 394 static void GetSuggestionToPrefetch(
391 const v8::FunctionCallbackInfo<v8::Value>& args); 395 const v8::FunctionCallbackInfo<v8::Value>& args);
392 396
393 // Gets the background info of the theme currently adopted by browser. 397 // Gets the background info of the theme currently adopted by browser.
394 // Call only when overlay is showing NTP page. 398 // Call only when overlay is showing NTP page.
395 static void GetThemeBackgroundInfo( 399 static void GetThemeBackgroundInfo(
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
554 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetDispositionFromClick"))) 558 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetDispositionFromClick")))
555 return v8::FunctionTemplate::New(isolate, GetDispositionFromClick); 559 return v8::FunctionTemplate::New(isolate, GetDispositionFromClick);
556 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetMostVisitedItems"))) 560 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetMostVisitedItems")))
557 return v8::FunctionTemplate::New(isolate, GetMostVisitedItems); 561 return v8::FunctionTemplate::New(isolate, GetMostVisitedItems);
558 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetMostVisitedItemData"))) 562 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetMostVisitedItemData")))
559 return v8::FunctionTemplate::New(isolate, GetMostVisitedItemData); 563 return v8::FunctionTemplate::New(isolate, GetMostVisitedItemData);
560 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetQuery"))) 564 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetQuery")))
561 return v8::FunctionTemplate::New(isolate, GetQuery); 565 return v8::FunctionTemplate::New(isolate, GetQuery);
562 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetRightToLeft"))) 566 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetRightToLeft")))
563 return v8::FunctionTemplate::New(isolate, GetRightToLeft); 567 return v8::FunctionTemplate::New(isolate, GetRightToLeft);
568 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetSearchRequestParams")))
569 return v8::FunctionTemplate::New(isolate, GetSearchRequestParams);
564 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetStartMargin"))) 570 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetStartMargin")))
565 return v8::FunctionTemplate::New(isolate, GetStartMargin); 571 return v8::FunctionTemplate::New(isolate, GetStartMargin);
566 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetSuggestionToPrefetch"))) 572 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetSuggestionToPrefetch")))
567 return v8::FunctionTemplate::New(isolate, GetSuggestionToPrefetch); 573 return v8::FunctionTemplate::New(isolate, GetSuggestionToPrefetch);
568 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetThemeBackgroundInfo"))) 574 if (name->Equals(v8::String::NewFromUtf8(isolate, "GetThemeBackgroundInfo")))
569 return v8::FunctionTemplate::New(isolate, GetThemeBackgroundInfo); 575 return v8::FunctionTemplate::New(isolate, GetThemeBackgroundInfo);
570 if (name->Equals(v8::String::NewFromUtf8(isolate, "IsFocused"))) 576 if (name->Equals(v8::String::NewFromUtf8(isolate, "IsFocused")))
571 return v8::FunctionTemplate::New(isolate, IsFocused); 577 return v8::FunctionTemplate::New(isolate, IsFocused);
572 if (name->Equals(v8::String::NewFromUtf8(isolate, "IsInputInProgress"))) 578 if (name->Equals(v8::String::NewFromUtf8(isolate, "IsInputInProgress")))
573 return v8::FunctionTemplate::New(isolate, IsInputInProgress); 579 return v8::FunctionTemplate::New(isolate, IsInputInProgress);
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
739 args.GetReturnValue().Set(UTF16ToV8String(isolate, query)); 745 args.GetReturnValue().Set(UTF16ToV8String(isolate, query));
740 } 746 }
741 747
742 // static 748 // static
743 void SearchBoxExtensionWrapper::GetRightToLeft( 749 void SearchBoxExtensionWrapper::GetRightToLeft(
744 const v8::FunctionCallbackInfo<v8::Value>& args) { 750 const v8::FunctionCallbackInfo<v8::Value>& args) {
745 args.GetReturnValue().Set(base::i18n::IsRTL()); 751 args.GetReturnValue().Set(base::i18n::IsRTL());
746 } 752 }
747 753
748 // static 754 // static
755 void SearchBoxExtensionWrapper::GetSearchRequestParams(
756 const v8::FunctionCallbackInfo<v8::Value>& args) {
757 content::RenderView* render_view = GetRenderView();
758 if (!render_view) return;
759
760 const EmbeddedSearchRequestParams& params =
761 SearchBox::Get(render_view)->GetEmbeddedSearchRequestParams();
762 v8::Isolate* isolate = args.GetIsolate();
763 v8::Handle<v8::Object> data = v8::Object::New(isolate);
764 if (!params.search_query.empty()) {
765 data->Set(v8::String::NewFromUtf8(isolate, kSearchQueryKey),
766 UTF16ToV8String(isolate, params.search_query));
767 }
768 if (!params.original_query.empty()) {
769 data->Set(v8::String::NewFromUtf8(isolate, kOriginalQueryKey),
770 UTF16ToV8String(isolate, params.original_query));
771 }
772 if (!params.rlz_parameter_value.empty()) {
773 data->Set(v8::String::NewFromUtf8(isolate, kRLZParameterKey),
774 UTF16ToV8String(isolate, params.rlz_parameter_value));
775 }
776 if (!params.input_encoding.empty()) {
777 data->Set(v8::String::NewFromUtf8(isolate, kInputEncodingKey),
778 UTF16ToV8String(isolate, params.input_encoding));
779 }
780 if (!params.assisted_query_stats.empty()) {
781 data->Set(v8::String::NewFromUtf8(isolate, kAssistedQueryStatsKey),
782 UTF16ToV8String(isolate, params.assisted_query_stats));
783 }
784 args.GetReturnValue().Set(data);
785 }
786
787 // static
749 void SearchBoxExtensionWrapper::GetStartMargin( 788 void SearchBoxExtensionWrapper::GetStartMargin(
750 const v8::FunctionCallbackInfo<v8::Value>& args) { 789 const v8::FunctionCallbackInfo<v8::Value>& args) {
751 content::RenderView* render_view = GetRenderView(); 790 content::RenderView* render_view = GetRenderView();
752 if (!render_view) return; 791 if (!render_view) return;
753 args.GetReturnValue().Set(static_cast<int32_t>( 792 args.GetReturnValue().Set(static_cast<int32_t>(
754 SearchBox::Get(render_view)->start_margin())); 793 SearchBox::Get(render_view)->start_margin()));
755 } 794 }
756 795
757 // static 796 // static
758 void SearchBoxExtensionWrapper::GetSuggestionToPrefetch( 797 void SearchBoxExtensionWrapper::GetSuggestionToPrefetch(
(...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after
1118 if (!render_view) return; 1157 if (!render_view) return;
1119 1158
1120 bool display_instant_results = 1159 bool display_instant_results =
1121 SearchBox::Get(render_view)->display_instant_results(); 1160 SearchBox::Get(render_view)->display_instant_results();
1122 DVLOG(1) << render_view << " GetDisplayInstantResults" << 1161 DVLOG(1) << render_view << " GetDisplayInstantResults" <<
1123 display_instant_results; 1162 display_instant_results;
1124 args.GetReturnValue().Set(display_instant_results); 1163 args.GetReturnValue().Set(display_instant_results);
1125 } 1164 }
1126 1165
1127 } // namespace extensions_v8 1166 } // namespace extensions_v8
OLDNEW
« no previous file with comments | « chrome/renderer/searchbox/searchbox.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698