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

Unified Diff: chrome/renderer/searchbox.cc

Issue 10732002: Upstream rewrite of Instant. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Extreme nits. Created 8 years, 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/renderer/searchbox.h ('k') | chrome/renderer/searchbox_extension.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/renderer/searchbox.cc
diff --git a/chrome/renderer/searchbox.cc b/chrome/renderer/searchbox.cc
index fc9ee55fc5289d61af8bc23993b92feb40a73711..78bf3ce4604b074f076b39935063859a6c20a6b8 100644
--- a/chrome/renderer/searchbox.cc
+++ b/chrome/renderer/searchbox.cc
@@ -4,6 +4,7 @@
#include "chrome/renderer/searchbox.h"
+#include "base/string16.h"
#include "chrome/common/render_messages.h"
#include "chrome/renderer/searchbox_extension.h"
#include "content/public/renderer/render_view.h"
@@ -22,7 +23,7 @@ SearchBox::SearchBox(content::RenderView* render_view)
SearchBox::~SearchBox() {
}
-void SearchBox::SetSuggestions(const std::vector<std::string>& suggestions,
+void SearchBox::SetSuggestions(const std::vector<string16>& suggestions,
InstantCompleteBehavior behavior) {
// Explicitly allow empty vector to be sent to the browser.
render_view()->Send(new ChromeViewHostMsg_SetSuggestions(
@@ -62,21 +63,22 @@ bool SearchBox::OnMessageReceived(const IPC::Message& message) {
void SearchBox::OnChange(const string16& value,
bool verbatim,
- int selection_start,
- int selection_end) {
+ size_t selection_start,
+ size_t selection_end) {
value_ = value;
verbatim_ = verbatim;
selection_start_ = selection_start;
selection_end_ = selection_end;
- if (!render_view()->GetWebView() || !render_view()->GetWebView()->mainFrame())
- return;
- extensions_v8::SearchBoxExtension::DispatchChange(
- render_view()->GetWebView()->mainFrame());
+ if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
+ extensions_v8::SearchBoxExtension::DispatchChange(
+ render_view()->GetWebView()->mainFrame());
+ }
}
-void SearchBox::OnSubmit(const string16& value, bool verbatim) {
+void SearchBox::OnSubmit(const string16& value) {
value_ = value;
- verbatim_ = verbatim;
+ verbatim_ = true;
+ selection_start_ = selection_end_ = value_.length();
if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
extensions_v8::SearchBoxExtension::DispatchSubmit(
render_view()->GetWebView()->mainFrame());
@@ -84,8 +86,10 @@ void SearchBox::OnSubmit(const string16& value, bool verbatim) {
Reset();
}
-void SearchBox::OnCancel() {
- verbatim_ = false;
+void SearchBox::OnCancel(const string16& value) {
+ value_ = value;
+ verbatim_ = true;
+ selection_start_ = selection_end_ = value_.length();
if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
extensions_v8::SearchBoxExtension::DispatchCancel(
render_view()->GetWebView()->mainFrame());
@@ -101,18 +105,13 @@ void SearchBox::OnResize(const gfx::Rect& bounds) {
render_view()->GetWebView()->mainFrame());
}
-void SearchBox::OnDetermineIfPageSupportsInstant(const string16& value,
- bool verbatim,
- int selection_start,
- int selection_end) {
- value_ = value;
- verbatim_ = verbatim;
- selection_start_ = selection_start;
- selection_end_ = selection_end;
- bool result = extensions_v8::SearchBoxExtension::PageSupportsInstant(
- render_view()->GetWebView()->mainFrame());
- render_view()->Send(new ChromeViewHostMsg_InstantSupportDetermined(
- render_view()->GetRoutingID(), render_view()->GetPageId(), result));
+void SearchBox::OnDetermineIfPageSupportsInstant() {
+ if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
+ bool result = extensions_v8::SearchBoxExtension::PageSupportsInstant(
+ render_view()->GetWebView()->mainFrame());
+ render_view()->Send(new ChromeViewHostMsg_InstantSupportDetermined(
+ render_view()->GetRoutingID(), render_view()->GetPageId(), result));
+ }
}
void SearchBox::Reset() {
« no previous file with comments | « chrome/renderer/searchbox.h ('k') | chrome/renderer/searchbox_extension.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698