| OLD | NEW |
| 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 Loading... |
| 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 Loading... |
| 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 Loading... |
| 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 Loading... |
| 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 |
| OLD | NEW |