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

Unified Diff: chrome/renderer/searchbox/searchbox.cc

Issue 2086223002: Convert instant search messages to Mojo (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Merge Created 4 years, 2 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
Index: chrome/renderer/searchbox/searchbox.cc
diff --git a/chrome/renderer/searchbox/searchbox.cc b/chrome/renderer/searchbox/searchbox.cc
index 53d21e9ff37d2bbd9734e72f15bc8ead014b075c..632b0bfbaa6b2cff2bc04206f878c47561acc45c 100644
--- a/chrome/renderer/searchbox/searchbox.cc
+++ b/chrome/renderer/searchbox/searchbox.cc
@@ -16,6 +16,7 @@
#include "base/strings/utf_string_conversions.h"
#include "base/time/time.h"
#include "chrome/common/chrome_switches.h"
+#include "chrome/common/instant.mojom.h"
#include "chrome/common/render_messages.h"
#include "chrome/common/url_constants.h"
#include "chrome/renderer/searchbox/searchbox_extension.h"
@@ -24,6 +25,8 @@
#include "components/favicon_base/favicon_url_parser.h"
#include "components/favicon_base/large_icon_url_parser.h"
#include "components/omnibox/common/omnibox_focus_state.h"
+#include "content/public/common/associated_interface_provider.h"
+#include "content/public/common/associated_interface_registry.h"
#include "content/public/renderer/render_frame.h"
#include "content/public/renderer/render_view.h"
#include "net/base/escape.h"
@@ -234,12 +237,19 @@ SearchBox::IconURLHelper::~IconURLHelper() {
SearchBox::SearchBox(content::RenderView* render_view)
: content::RenderViewObserver(render_view),
content::RenderViewObserverTracker<SearchBox>(render_view),
- page_seq_no_(0),
- is_focused_(false),
- is_input_in_progress_(false),
- is_key_capture_enabled_(false),
- most_visited_items_cache_(kMaxInstantMostVisitedItemCacheSize),
- query_() {
+ page_seq_no_(0),
+ is_focused_(false),
+ is_input_in_progress_(false),
+ is_key_capture_enabled_(false),
+ most_visited_items_cache_(kMaxInstantMostVisitedItemCacheSize),
+ query_(),
+ binding_(this) {
+ render_view->GetMainRenderFrame()
+ ->GetRemoteAssociatedInterfaces()
+ ->GetInterface(&instant_service_);
+ render_view->GetMainRenderFrame()
+ ->GetAssociatedInterfaceRegistry()
+ ->AddInterface(base::Bind(&SearchBox::Bind, base::Unretained(this)));
}
SearchBox::~SearchBox() {
@@ -262,38 +272,33 @@ void SearchBox::LogEvent(NTPLoggingEventType event) {
DCHECK(now >= start);
delta = base::TimeDelta::FromMilliseconds(now - start);
}
- render_view()->Send(new ChromeViewHostMsg_LogEvent(
- render_view()->GetRoutingID(), page_seq_no_, event, delta));
+ instant_service_->LogEvent(page_seq_no_, event, delta);
}
void SearchBox::LogMostVisitedImpression(int position,
NTPLoggingTileSource tile_source) {
- render_view()->Send(new ChromeViewHostMsg_LogMostVisitedImpression(
- render_view()->GetRoutingID(), page_seq_no_, position, tile_source));
+ instant_service_->LogMostVisitedImpression(page_seq_no_, position,
+ tile_source);
}
void SearchBox::LogMostVisitedNavigation(int position,
NTPLoggingTileSource tile_source) {
- render_view()->Send(new ChromeViewHostMsg_LogMostVisitedNavigation(
- render_view()->GetRoutingID(), page_seq_no_, position, tile_source));
+ instant_service_->LogMostVisitedNavigation(page_seq_no_, position,
+ tile_source);
}
void SearchBox::CheckIsUserSignedInToChromeAs(const base::string16& identity) {
- render_view()->Send(new ChromeViewHostMsg_ChromeIdentityCheck(
- render_view()->GetRoutingID(), page_seq_no_, identity));
+ instant_service_->ChromeIdentityCheck(page_seq_no_, identity);
}
void SearchBox::CheckIsUserSyncingHistory() {
- render_view()->Send(new ChromeViewHostMsg_HistorySyncCheck(
- render_view()->GetRoutingID(), page_seq_no_));
+ instant_service_->HistorySyncCheck(page_seq_no_);
}
void SearchBox::DeleteMostVisitedItem(
InstantRestrictedID most_visited_item_id) {
- render_view()->Send(new ChromeViewHostMsg_SearchBoxDeleteMostVisitedItem(
- render_view()->GetRoutingID(),
- page_seq_no_,
- GetURLForMostVisitedItem(most_visited_item_id)));
+ instant_service_->SearchBoxDeleteMostVisitedItem(
+ page_seq_no_, GetURLForMostVisitedItem(most_visited_item_id));
}
bool SearchBox::GenerateImageURLFromTransientURL(const GURL& transient_url,
@@ -324,83 +329,50 @@ const EmbeddedSearchRequestParams& SearchBox::GetEmbeddedSearchRequestParams() {
}
void SearchBox::Paste(const base::string16& text) {
- render_view()->Send(new ChromeViewHostMsg_PasteAndOpenDropdown(
- render_view()->GetRoutingID(), page_seq_no_, text));
+ instant_service_->PasteAndOpenDropdown(page_seq_no_, text);
}
void SearchBox::StartCapturingKeyStrokes() {
- render_view()->Send(new ChromeViewHostMsg_FocusOmnibox(
- render_view()->GetRoutingID(), page_seq_no_, OMNIBOX_FOCUS_INVISIBLE));
+ instant_service_->FocusOmnibox(page_seq_no_, OMNIBOX_FOCUS_INVISIBLE);
}
void SearchBox::StopCapturingKeyStrokes() {
- render_view()->Send(new ChromeViewHostMsg_FocusOmnibox(
- render_view()->GetRoutingID(), page_seq_no_, OMNIBOX_FOCUS_NONE));
+ instant_service_->FocusOmnibox(page_seq_no_, OMNIBOX_FOCUS_NONE);
}
void SearchBox::UndoAllMostVisitedDeletions() {
- render_view()->Send(
- new ChromeViewHostMsg_SearchBoxUndoAllMostVisitedDeletions(
- render_view()->GetRoutingID(), page_seq_no_));
+ instant_service_->SearchBoxUndoAllMostVisitedDeletions(page_seq_no_);
}
void SearchBox::UndoMostVisitedDeletion(
InstantRestrictedID most_visited_item_id) {
- render_view()->Send(new ChromeViewHostMsg_SearchBoxUndoMostVisitedDeletion(
- render_view()->GetRoutingID(), page_seq_no_,
- GetURLForMostVisitedItem(most_visited_item_id)));
-}
-
-bool SearchBox::OnMessageReceived(const IPC::Message& message) {
- bool handled = true;
- IPC_BEGIN_MESSAGE_MAP(SearchBox, message)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_SetPageSequenceNumber,
- OnSetPageSequenceNumber)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_ChromeIdentityCheckResult,
- OnChromeIdentityCheckResult)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_DetermineIfPageSupportsInstant,
- OnDetermineIfPageSupportsInstant)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_HistorySyncCheckResult,
- OnHistorySyncCheckResult)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxFocusChanged, OnFocusChanged)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxMostVisitedItemsChanged,
- OnMostVisitedChanged)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxSetInputInProgress,
- OnSetInputInProgress)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxSetSuggestionToPrefetch,
- OnSetSuggestionToPrefetch)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxSubmit, OnSubmit)
- IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxThemeChanged,
- OnThemeChanged)
- IPC_MESSAGE_UNHANDLED(handled = false)
- IPC_END_MESSAGE_MAP()
- return handled;
-}
-
-void SearchBox::OnSetPageSequenceNumber(int page_seq_no) {
+ instant_service_->SearchBoxUndoMostVisitedDeletion(
+ page_seq_no_, GetURLForMostVisitedItem(most_visited_item_id));
+}
+
+void SearchBox::SetPageSequenceNumber(int page_seq_no) {
page_seq_no_ = page_seq_no;
}
-void SearchBox::OnChromeIdentityCheckResult(const base::string16& identity,
- bool identity_match) {
+void SearchBox::ChromeIdentityCheckResult(const base::string16& identity,
+ bool identity_match) {
if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
extensions_v8::SearchBoxExtension::DispatchChromeIdentityCheckResult(
render_view()->GetWebView()->mainFrame(), identity, identity_match);
}
}
-void SearchBox::OnDetermineIfPageSupportsInstant() {
+void SearchBox::DetermineIfPageSupportsInstant() {
if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
bool result = extensions_v8::SearchBoxExtension::PageSupportsInstant(
render_view()->GetWebView()->mainFrame());
DVLOG(1) << render_view() << " PageSupportsInstant: " << result;
- render_view()->Send(new ChromeViewHostMsg_InstantSupportDetermined(
- render_view()->GetRoutingID(), page_seq_no_, result));
+ instant_service_->InstantSupportDetermined(page_seq_no_, result);
}
}
-void SearchBox::OnFocusChanged(OmniboxFocusState new_focus_state,
- OmniboxFocusChangeReason reason) {
+void SearchBox::FocusChanged(OmniboxFocusState new_focus_state,
+ OmniboxFocusChangeReason reason) {
bool key_capture_enabled = new_focus_state == OMNIBOX_FOCUS_INVISIBLE;
if (key_capture_enabled != is_key_capture_enabled_) {
// Tell the page if the key capture mode changed unless the focus state
@@ -415,7 +387,7 @@ void SearchBox::OnFocusChanged(OmniboxFocusState new_focus_state,
render_view()->GetWebView() &&
render_view()->GetWebView()->mainFrame()) {
is_key_capture_enabled_ = key_capture_enabled;
- DVLOG(1) << render_view() << " OnKeyCaptureChange";
+ DVLOG(1) << render_view() << " KeyCaptureChange";
extensions_v8::SearchBoxExtension::DispatchKeyCaptureChange(
render_view()->GetWebView()->mainFrame());
}
@@ -423,7 +395,7 @@ void SearchBox::OnFocusChanged(OmniboxFocusState new_focus_state,
bool is_focused = new_focus_state == OMNIBOX_FOCUS_VISIBLE;
if (is_focused != is_focused_) {
is_focused_ = is_focused;
- DVLOG(1) << render_view() << " OnFocusChange";
+ DVLOG(1) << render_view() << " FocusChange";
if (render_view()->GetWebView() &&
render_view()->GetWebView()->mainFrame()) {
extensions_v8::SearchBoxExtension::DispatchFocusChange(
@@ -432,14 +404,14 @@ void SearchBox::OnFocusChanged(OmniboxFocusState new_focus_state,
}
}
-void SearchBox::OnHistorySyncCheckResult(bool sync_history) {
+void SearchBox::HistorySyncCheckResult(bool sync_history) {
if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
extensions_v8::SearchBoxExtension::DispatchHistorySyncCheckResult(
render_view()->GetWebView()->mainFrame(), sync_history);
}
}
-void SearchBox::OnMostVisitedChanged(
+void SearchBox::MostVisitedChanged(
const std::vector<InstantMostVisitedItem>& items) {
std::vector<InstantMostVisitedItemIDPair> last_known_items;
GetMostVisitedItems(&last_known_items);
@@ -454,10 +426,10 @@ void SearchBox::OnMostVisitedChanged(
}
}
-void SearchBox::OnSetInputInProgress(bool is_input_in_progress) {
+void SearchBox::SetInputInProgress(bool is_input_in_progress) {
if (is_input_in_progress_ != is_input_in_progress) {
is_input_in_progress_ = is_input_in_progress;
- DVLOG(1) << render_view() << " OnSetInputInProgress";
+ DVLOG(1) << render_view() << " SetInputInProgress";
if (render_view()->GetWebView() &&
render_view()->GetWebView()->mainFrame()) {
if (is_input_in_progress_) {
@@ -471,21 +443,21 @@ void SearchBox::OnSetInputInProgress(bool is_input_in_progress) {
}
}
-void SearchBox::OnSetSuggestionToPrefetch(const InstantSuggestion& suggestion) {
+void SearchBox::SetSuggestionToPrefetch(const InstantSuggestion& suggestion) {
suggestion_ = suggestion;
if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
- DVLOG(1) << render_view() << " OnSetSuggestionToPrefetch";
+ DVLOG(1) << render_view() << " SetSuggestionToPrefetch";
extensions_v8::SearchBoxExtension::DispatchSuggestionChange(
render_view()->GetWebView()->mainFrame());
}
}
-void SearchBox::OnSubmit(const base::string16& query,
- const EmbeddedSearchRequestParams& params) {
+void SearchBox::Submit(const base::string16& query,
+ const EmbeddedSearchRequestParams& params) {
query_ = query;
embedded_search_request_params_ = params;
if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) {
- DVLOG(1) << render_view() << " OnSubmit";
+ DVLOG(1) << render_view() << " Submit";
extensions_v8::SearchBoxExtension::DispatchSubmit(
render_view()->GetWebView()->mainFrame());
}
@@ -493,7 +465,7 @@ void SearchBox::OnSubmit(const base::string16& query,
Reset();
}
-void SearchBox::OnThemeChanged(const ThemeBackgroundInfo& theme_info) {
+void SearchBox::ThemeChanged(const ThemeBackgroundInfo& theme_info) {
// Do not send duplicate notifications.
if (theme_info_ == theme_info)
return;
@@ -510,6 +482,10 @@ GURL SearchBox::GetURLForMostVisitedItem(InstantRestrictedID item_id) const {
return GetMostVisitedItemWithID(item_id, &item) ? item.url : GURL();
}
+void SearchBox::Bind(chrome::mojom::SearchBoxAssociatedRequest request) {
+ binding_.Bind(std::move(request));
+}
+
void SearchBox::Reset() {
query_.clear();
embedded_search_request_params_ = EmbeddedSearchRequestParams();

Powered by Google App Engine
This is Rietveld 408576698