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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java

Issue 1385663002: [Contextual Search] Add Mojo-enabled API component. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Changed the CS API controller to not be a notification observer. Created 5 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/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java
index 6ee72c4d7ddf173911a4f9a53bb5cd7cdf9612ab..d7af7793ac65a74b513d8196e5c44bbb086c111a 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java
@@ -47,7 +47,6 @@ import org.chromium.content.browser.ContextualSearchClient;
import org.chromium.content_public.browser.GestureStateListener;
import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.content_public.browser.NavigationEntry;
-import org.chromium.content_public.browser.WebContentsObserver;
import org.chromium.content_public.common.TopControlsState;
import org.chromium.ui.base.WindowAndroid;
@@ -88,7 +87,6 @@ public class ContextualSearchManager extends ContextualSearchObservable
private final ViewTreeObserver.OnGlobalFocusChangeListener mOnFocusChangeListener;
private final WindowAndroid mWindowAndroid;
- private WebContentsObserver mSearchWebContentsObserver;
private ContextualSearchContentViewDelegate mSearchContentViewDelegate;
private final ContextualSearchTabPromotionDelegate mTabPromotionDelegate;
private TabModelSelectorTabObserver mTabModelSelectorTabObserver;
@@ -866,12 +864,25 @@ public class ContextualSearchManager extends ContextualSearchObservable
@Override
public void onContentViewCreated(ContentViewCore contentViewCore) {
+ // TODO(donnd): move to OverlayPanelContent
+ if (mPolicy.shouldEnableOverlayApi()) {
+ // Enable a JavaScript communication channel between our service and the new view.
+ nativeAddViewForContextualSearchApi(
+ mNativeContextualSearchManagerPtr, contentViewCore);
+ }
+
// TODO(mdjones): Move SearchContentViewDelegate ownership to panel.
mSearchContentViewDelegate.setContextualSearchContentViewCore(contentViewCore);
}
@Override
- public void onContentViewDestroyed() {
+ public void onContentViewDestroyed(int renderProcessHostId) {
+ if (mPolicy.shouldEnableOverlayApi()) {
+ // Enable a JavaScript communication channel between our service and the new view.
+ nativeRemoveViewForContextualSearchApi(
+ mNativeContextualSearchManagerPtr, renderProcessHostId);
+ }
+
if (mSearchContentViewDelegate != null) {
mSearchContentViewDelegate.releaseContextualSearchContentViewCore();
}
@@ -1228,4 +1239,8 @@ public class ContextualSearchManager extends ContextualSearchObservable
private native void nativeGatherSurroundingText(long nativeContextualSearchManager,
String selection, boolean useResolvedSearchTerm, ContentViewCore baseContentViewCore,
boolean maySendBasePageUrl);
+ private native void nativeAddViewForContextualSearchApi(
+ long nativeContextualSearchManager, ContentViewCore overlayContentViewCore);
+ private native void nativeRemoveViewForContextualSearchApi(
+ long nativeContextualSearchManager, int renderProcessHostId);
}

Powered by Google App Engine
This is Rietveld 408576698