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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanel.java

Issue 1399983004: Remove ContextualSearchPanelDelegate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@extract-contextual-search
Patch Set: fix rebase 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/compositor/bottombar/contextualsearch/ContextualSearchPanel.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanel.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanel.java
index 5848fcbb61bcfb946275d1d455e398b45aec3afd..6482bcbbdf5b95aec30dad9c23d55e1f951b243f 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanel.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanel.java
@@ -8,22 +8,19 @@ import android.content.Context;
import android.os.Handler;
import android.view.View.MeasureSpec;
-import org.chromium.chrome.browser.ChromeActivity;
+import org.chromium.base.VisibleForTesting;
import org.chromium.chrome.browser.compositor.bottombar.OverlayContentProgressObserver;
import org.chromium.chrome.browser.compositor.bottombar.OverlayPanel;
import org.chromium.chrome.browser.compositor.bottombar.OverlayPanelContent;
-import org.chromium.chrome.browser.compositor.layouts.ChromeAnimation;
import org.chromium.chrome.browser.compositor.layouts.LayoutUpdateHost;
import org.chromium.chrome.browser.contextualsearch.ContextualSearchManagementDelegate;
import org.chromium.chrome.browser.preferences.PrefServiceBridge;
import org.chromium.content.browser.ContentViewClient;
-import org.chromium.content.browser.ContentViewCore;
/**
* Controls the Contextual Search Panel.
*/
-public class ContextualSearchPanel extends OverlayPanel
- implements ContextualSearchPanelDelegate {
+public class ContextualSearchPanel extends OverlayPanel {
/**
* The extra dp added around the close button touch target.
@@ -334,83 +331,62 @@ public class ContextualSearchPanel extends OverlayPanel
}
// ============================================================================================
- // Panel Delegate
+ // Contextual Search Panel API
// ============================================================================================
- @Override
+ /**
+ * Notify the panel that the ContentViewCore was seen.
+ */
public void setWasSearchContentViewSeen() {
mPanelMetrics.setWasSearchContentViewSeen();
}
- @Override
+ /**
+ * @param isActive Whether the promo is active.
+ */
public void setIsPromoActive(boolean isActive) {
setPromoVisibility(isActive);
mPanelMetrics.setIsPromoActive(isActive);
}
- @Override
+ /**
+ * Shows the peek promo.
+ */
public void showPeekPromo() {
getPeekPromoControl().show();
}
- @Override
+ /**
+ * @return Whether the Peek Promo is visible.
+ */
+ @VisibleForTesting
public boolean isPeekPromoVisible() {
return getPeekPromoControl().isVisible();
}
- @Override
+ /**
+ * Called when the SERP finishes loading, this records the duration of loading the SERP from
+ * the time the panel was opened until the present.
+ * @param wasPrefetch Whether the request was prefetch-enabled.
+ */
public void onSearchResultsLoaded(boolean wasPrefetch) {
mPanelMetrics.onSearchResultsLoaded(wasPrefetch);
}
- @Override
- public boolean isFullscreenSizePanel() {
- // NOTE(pedrosimonetti): exposing superclass method to the interface.
- return super.isFullscreenSizePanel();
- }
-
- @Override
- public boolean isShowing() {
- // NOTE(pedrosimonetti): exposing superclass method to the interface.
- return super.isShowing();
- }
-
- @Override
- public boolean isPeeking() {
- return super.isPeeking();
- }
-
- @Override
- public int getMaximumWidthPx() {
- // NOTE(pedrosimonetti): exposing superclass method to the interface.
- return super.getMaximumWidthPx();
- }
-
- @Override
- public int getMaximumHeightPx() {
- // NOTE(pedrosimonetti): exposing superclass method to the interface.
- return super.getMaximumHeightPx();
- }
-
- @Override
- public int getSearchContentViewWidthPx() {
- // NOTE(pedrosimonetti): exposing superclass method to the interface.
- return super.getSearchContentViewWidthPx();
- }
-
- @Override
- public int getSearchContentViewHeightPx() {
- // NOTE(pedrosimonetti): exposing superclass method to the interface.
- return super.getSearchContentViewHeightPx();
- }
-
- @Override
+ /**
+ * Maximizes the Contextual Search Panel, then promotes it to a regular Tab.
+ * @param reason The {@code StateChangeReason} behind the maximization and promotion to tab.
+ */
public void maximizePanelThenPromoteToTab(StateChangeReason reason) {
mShouldPromoteToTabAfterMaximizing = true;
maximizePanel(reason);
}
- @Override
+ /**
+ * Maximizes the Contextual Search Panel, then promotes it to a regular Tab.
+ * @param reason The {@code StateChangeReason} behind the maximization and promotion to tab.
+ * @param duration The animation duration in milliseconds.
+ */
public void maximizePanelThenPromoteToTab(StateChangeReason reason, long duration) {
mShouldPromoteToTabAfterMaximizing = true;
animatePanelToState(PanelState.MAXIMIZED, reason, duration);
@@ -441,7 +417,7 @@ public class ContextualSearchPanel extends OverlayPanel
@Override
public void updateBasePageSelectionYPx(float y) {
- // NOTE(pedrosimonetti): exposing superclass method to the interface.
+ // NOTE(pedrosimonetti): exposing superclass method.
super.updateBasePageSelectionYPx(y);
}
@@ -451,74 +427,60 @@ public class ContextualSearchPanel extends OverlayPanel
return super.getPanelState();
}
- @Override
- public boolean didTouchSearchContentView() {
+ /**
+ * Gets whether a touch on the content view has been done yet or not.
+ */
+ public boolean didTouchContent() {
return mHasContentBeenTouched;
}
- @Override
+ /**
+ * @return {@code true} Whether the close animation should run when the the panel is closed
+ * due the panel being promoted to a tab.
+ */
public boolean shouldAnimatePanelCloseOnPromoteToTab() {
// TODO(pedrosimonetti): This is not currently used.
return mActivity.isCustomTab();
}
- @Override
+ /**
+ * Shows the search term in the SearchBar. This should be called when the search term is set
+ * without search term resolution.
+ * @param searchTerm The string that represents the search term.
+ */
public void displaySearchTerm(String searchTerm) {
cancelSearchTermResolutionAnimation();
getSearchBarControl().setSearchTerm(searchTerm);
resetSearchBarTermOpacity();
}
- @Override
+ /**
+ * Shows the search context in the SearchBar.
+ * @param selection The portion of the context that represents the user's selection.
+ * @param end The portion of the context from the selection to its end.
+ */
public void displaySearchContext(String selection, String end) {
cancelSearchTermResolutionAnimation();
getSearchBarControl().setSearchContext(selection, end);
resetSearchBarContextOpacity();
}
- @Override
+ /**
+ * Handles showing the resolved search term in the SearchBar.
+ * @param searchTerm The string that represents the search term.
+ */
public void onSearchTermResolutionResponse(String searchTerm) {
getSearchBarControl().setSearchTerm(searchTerm);
animateSearchTermResolution();
}
- @Override
- public boolean isContentViewShowing() {
- return super.isContentShowing();
- }
-
- @Override
- public void setChromeActivity(ChromeActivity activity) {
- mActivity = activity;
- }
-
- @Override
- public void loadUrlInPanel(String url) {
- super.loadUrlInPanel(url);
- }
-
- @Override
- public boolean isProcessingPendingNavigation() {
- return super.isProcessingPendingNavigation();
- }
-
- @Override
- public void updateTopControlsState() {
- super.updateTopControlsState();
- }
-
- @Override
+ /**
+ * Sets that the contextual search involved the promo.
+ */
public void setDidSearchInvolvePromo() {
mPanelMetrics.setDidSearchInvolvePromo();
}
- @Override
- public <T extends Enum<?>> void addToAnimation(ChromeAnimation.Animatable<T> object, T prop,
- float start, float end, long duration,
- long startTime) {
- super.addToAnimation(object, prop, start, end, duration, startTime);
- }
-
// ============================================================================================
// Panel Rendering
// ============================================================================================
@@ -734,22 +696,18 @@ public class ContextualSearchPanel extends OverlayPanel
mHasContentBeenTouched = true;
}
- @Override
- public ContentViewCore getContentViewCore() {
- return super.getContentViewCore();
- }
-
- @Override
- public void removeLastHistoryEntry(String historyUrl, long urlTimeMs) {
- super.removeLastHistoryEntry(historyUrl, urlTimeMs);
- }
-
- @Override
+ /**
+ * Notify the panel that it's content has been touched.
+ */
public void notifyPanelTouched() {
getOverlayPanelContent().notifyPanelTouched();
}
- @Override
+ /**
+ * Destroy the current content in the panel.
+ * NOTE(mdjones): This should not be exposed. The only use is in ContextualSearchManager for a
+ * bug related to loading new panel content.
+ */
public void destroyContent() {
super.destroyOverlayPanelContent();
}

Powered by Google App Engine
This is Rietveld 408576698