| 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/stringprintf.h" | 7 #include "base/stringprintf.h" |
| 8 #include "chrome/renderer/searchbox/searchbox.h" | 8 #include "chrome/renderer/searchbox/searchbox.h" |
| 9 #include "content/public/renderer/render_view.h" | 9 #include "content/public/renderer/render_view.h" |
| 10 #include "grit/renderer_resources.h" | 10 #include "grit/renderer_resources.h" |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 163 static v8::Handle<v8::Value> GetAutocompleteResults( | 163 static v8::Handle<v8::Value> GetAutocompleteResults( |
| 164 const v8::Arguments& args); | 164 const v8::Arguments& args); |
| 165 | 165 |
| 166 // Gets the current session context. | 166 // Gets the current session context. |
| 167 static v8::Handle<v8::Value> GetContext(const v8::Arguments& args); | 167 static v8::Handle<v8::Value> GetContext(const v8::Arguments& args); |
| 168 | 168 |
| 169 // Navigates the window to a URL represented by either a URL string or a | 169 // Navigates the window to a URL represented by either a URL string or a |
| 170 // restricted ID. | 170 // restricted ID. |
| 171 static v8::Handle<v8::Value> NavigateContentWindow(const v8::Arguments& args); | 171 static v8::Handle<v8::Value> NavigateContentWindow(const v8::Arguments& args); |
| 172 | 172 |
| 173 // Handle a focus or blur event in the web searchbox. |
| 174 static v8::Handle<v8::Value> WebSearchBoxFocusChange(const v8::Arguments& args
); |
| 175 |
| 173 // Sets ordered suggestions. Valid for current |value|. | 176 // Sets ordered suggestions. Valid for current |value|. |
| 174 static v8::Handle<v8::Value> SetSuggestions(const v8::Arguments& args); | 177 static v8::Handle<v8::Value> SetSuggestions(const v8::Arguments& args); |
| 175 | 178 |
| 176 // Sets the text to be autocompleted into the search box. | 179 // Sets the text to be autocompleted into the search box. |
| 177 static v8::Handle<v8::Value> SetQuerySuggestion(const v8::Arguments& args); | 180 static v8::Handle<v8::Value> SetQuerySuggestion(const v8::Arguments& args); |
| 178 | 181 |
| 179 // Like |SetQuerySuggestion| but uses a restricted ID to identify the text. | 182 // Like |SetQuerySuggestion| but uses a restricted ID to identify the text. |
| 180 static v8::Handle<v8::Value> SetQuerySuggestionFromAutocompleteResult( | 183 static v8::Handle<v8::Value> SetQuerySuggestionFromAutocompleteResult( |
| 181 const v8::Arguments& args); | 184 const v8::Arguments& args); |
| 182 | 185 |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 216 if (name->Equals(v8::String::New("GetWidth"))) | 219 if (name->Equals(v8::String::New("GetWidth"))) |
| 217 return v8::FunctionTemplate::New(GetWidth); | 220 return v8::FunctionTemplate::New(GetWidth); |
| 218 if (name->Equals(v8::String::New("GetHeight"))) | 221 if (name->Equals(v8::String::New("GetHeight"))) |
| 219 return v8::FunctionTemplate::New(GetHeight); | 222 return v8::FunctionTemplate::New(GetHeight); |
| 220 if (name->Equals(v8::String::New("GetAutocompleteResults"))) | 223 if (name->Equals(v8::String::New("GetAutocompleteResults"))) |
| 221 return v8::FunctionTemplate::New(GetAutocompleteResults); | 224 return v8::FunctionTemplate::New(GetAutocompleteResults); |
| 222 if (name->Equals(v8::String::New("GetContext"))) | 225 if (name->Equals(v8::String::New("GetContext"))) |
| 223 return v8::FunctionTemplate::New(GetContext); | 226 return v8::FunctionTemplate::New(GetContext); |
| 224 if (name->Equals(v8::String::New("NavigateContentWindow"))) | 227 if (name->Equals(v8::String::New("NavigateContentWindow"))) |
| 225 return v8::FunctionTemplate::New(NavigateContentWindow); | 228 return v8::FunctionTemplate::New(NavigateContentWindow); |
| 229 if (name->Equals(v8::String::New("WebSearchBoxFocusChange"))) |
| 230 return v8::FunctionTemplate::New(WebSearchBoxFocusChange); |
| 226 if (name->Equals(v8::String::New("SetSuggestions"))) | 231 if (name->Equals(v8::String::New("SetSuggestions"))) |
| 227 return v8::FunctionTemplate::New(SetSuggestions); | 232 return v8::FunctionTemplate::New(SetSuggestions); |
| 228 if (name->Equals(v8::String::New("SetQuerySuggestion"))) | 233 if (name->Equals(v8::String::New("SetQuerySuggestion"))) |
| 229 return v8::FunctionTemplate::New(SetQuerySuggestion); | 234 return v8::FunctionTemplate::New(SetQuerySuggestion); |
| 230 if (name->Equals(v8::String::New("SetQuerySuggestionFromAutocompleteResult"))) | 235 if (name->Equals(v8::String::New("SetQuerySuggestionFromAutocompleteResult"))) |
| 231 return v8::FunctionTemplate::New(SetQuerySuggestionFromAutocompleteResult); | 236 return v8::FunctionTemplate::New(SetQuerySuggestionFromAutocompleteResult); |
| 232 if (name->Equals(v8::String::New("SetQuery"))) | 237 if (name->Equals(v8::String::New("SetQuery"))) |
| 233 return v8::FunctionTemplate::New(SetQuery); | 238 return v8::FunctionTemplate::New(SetQuery); |
| 234 if (name->Equals(v8::String::New("SetQueryFromAutocompleteResult"))) | 239 if (name->Equals(v8::String::New("SetQueryFromAutocompleteResult"))) |
| 235 return v8::FunctionTemplate::New(SetQueryFromAutocompleteResult); | 240 return v8::FunctionTemplate::New(SetQueryFromAutocompleteResult); |
| (...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 390 // Navigate the main frame. | 395 // Navigate the main frame. |
| 391 if (destination_url.is_valid()) { | 396 if (destination_url.is_valid()) { |
| 392 WebKit::WebURLRequest request(destination_url); | 397 WebKit::WebURLRequest request(destination_url); |
| 393 render_view->GetWebView()->mainFrame()->loadRequest(request); | 398 render_view->GetWebView()->mainFrame()->loadRequest(request); |
| 394 } | 399 } |
| 395 | 400 |
| 396 return v8::Undefined(); | 401 return v8::Undefined(); |
| 397 } | 402 } |
| 398 | 403 |
| 399 // static | 404 // static |
| 405 v8::Handle<v8::Value> SearchBoxExtensionWrapper::WebSearchBoxFocusChange( |
| 406 const v8::Arguments& args) { |
| 407 content::RenderView* render_view = GetRenderView(); |
| 408 if (render_view && args.Length() == 1) { |
| 409 SearchBox::Get(render_view)->OnWebSearchBoxFocusChange( |
| 410 args[0]->BooleanValue()); |
| 411 } |
| 412 return v8::Undefined(); |
| 413 } |
| 414 |
| 415 // static |
| 400 v8::Handle<v8::Value> SearchBoxExtensionWrapper::SetSuggestions( | 416 v8::Handle<v8::Value> SearchBoxExtensionWrapper::SetSuggestions( |
| 401 const v8::Arguments& args) { | 417 const v8::Arguments& args) { |
| 402 DVLOG(1) << "SetSuggestions"; | 418 DVLOG(1) << "SetSuggestions"; |
| 403 content::RenderView* render_view = GetRenderView(); | 419 content::RenderView* render_view = GetRenderView(); |
| 404 if (!render_view || !args.Length()) return v8::Undefined(); | 420 if (!render_view || !args.Length()) return v8::Undefined(); |
| 405 | 421 |
| 406 v8::Handle<v8::Object> suggestion_json = args[0]->ToObject(); | 422 v8::Handle<v8::Object> suggestion_json = args[0]->ToObject(); |
| 407 | 423 |
| 408 InstantCompleteBehavior behavior = INSTANT_COMPLETE_NOW; | 424 InstantCompleteBehavior behavior = INSTANT_COMPLETE_NOW; |
| 409 InstantSuggestionType type = INSTANT_SUGGESTION_SEARCH; | 425 InstantSuggestionType type = INSTANT_SUGGESTION_SEARCH; |
| (...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 613 Dispatch(frame, kDispatchContextChangeEventScript); | 629 Dispatch(frame, kDispatchContextChangeEventScript); |
| 614 } | 630 } |
| 615 | 631 |
| 616 // static | 632 // static |
| 617 v8::Extension* SearchBoxExtension::Get() { | 633 v8::Extension* SearchBoxExtension::Get() { |
| 618 return new SearchBoxExtensionWrapper(ResourceBundle::GetSharedInstance(). | 634 return new SearchBoxExtensionWrapper(ResourceBundle::GetSharedInstance(). |
| 619 GetRawDataResource(IDR_SEARCHBOX_API)); | 635 GetRawDataResource(IDR_SEARCHBOX_API)); |
| 620 } | 636 } |
| 621 | 637 |
| 622 } // namespace extensions_v8 | 638 } // namespace extensions_v8 |
| OLD | NEW |