Index: chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerDocument.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerDocument.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerDocument.java |
index c65a3d1a349a6ab9f68c8b77753a5359a6b2d4ed..3cc891bd43b60a61d2f64be3a4a3ce8cc6c0e38f 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerDocument.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerDocument.java |
@@ -15,6 +15,7 @@ import android.view.ViewGroup; |
import org.chromium.chrome.browser.ChromeApplication; |
import org.chromium.chrome.browser.UrlConstants; |
import org.chromium.chrome.browser.compositor.bottombar.OverlayPanelContentViewDelegate; |
+import org.chromium.chrome.browser.compositor.bottombar.OverlayPanelManager; |
import org.chromium.chrome.browser.compositor.bottombar.contextualsearch.ContextualSearchPanel; |
import org.chromium.chrome.browser.compositor.layouts.components.LayoutTab; |
import org.chromium.chrome.browser.compositor.layouts.components.VirtualView; |
@@ -80,6 +81,7 @@ public class LayoutManagerDocument extends LayoutManager |
// Internal State |
private final SparseArray<LayoutTab> mTabCache = new SparseArray<LayoutTab>(); |
private final ContextualSearchPanel mContextualSearchPanel; |
+ private final OverlayPanelManager mOverlayPanelManager; |
/** A delegate for interacting with the Contextual Search manager. */ |
protected ContextualSearchManagementDelegate mContextualSearchDelegate; |
@@ -95,7 +97,8 @@ public class LayoutManagerDocument extends LayoutManager |
Context context = host.getContext(); |
LayoutRenderHost renderHost = host.getLayoutRenderHost(); |
- mContextualSearchPanel = new ContextualSearchPanel(context, this); |
+ mOverlayPanelManager = new OverlayPanelManager(); |
+ mContextualSearchPanel = new ContextualSearchPanel(context, this, mOverlayPanelManager); |
mReaderModePanelSelector = new ReaderModePanelSelector() { |
@Override |
@@ -119,9 +122,9 @@ public class LayoutManagerDocument extends LayoutManager |
mStaticEdgeEventFilter = |
new EdgeSwipeEventFilter(context, this, new StaticEdgeSwipeHandler()); |
mContextualSearchEventFilter = new ContextualSearchEventFilter( |
- context, this, mGestureHandler, mContextualSearchPanel); |
+ context, this, mGestureHandler, mOverlayPanelManager); |
EventFilter contextualSearchStaticEventFilter = new ContextualSearchStaticEventFilter( |
- context, this, mContextualSearchPanel, mContextualSearchEdgeSwipeHandler, this); |
+ context, this, mOverlayPanelManager, mContextualSearchEdgeSwipeHandler, this); |
EventFilter readerModeStaticEventFilter = new ReaderModeStaticEventFilter( |
context, this, mReaderModePanelSelector, mReaderModeEdgeSwipeHandler, this); |
EventFilter staticCascadeEventFilter = new CascadeEventFilter(context, this, |
@@ -130,9 +133,9 @@ public class LayoutManagerDocument extends LayoutManager |
// Build Layouts |
mStaticLayout = new StaticLayout( |
- context, this, renderHost, staticCascadeEventFilter, mContextualSearchPanel); |
+ context, this, renderHost, staticCascadeEventFilter, mOverlayPanelManager); |
mContextualSearchLayout = new ContextualSearchLayout( |
- context, this, renderHost, mContextualSearchEventFilter, mContextualSearchPanel); |
+ context, this, renderHost, mContextualSearchEventFilter, mOverlayPanelManager); |
// Set up layout parameters |
mStaticLayout.setLayoutHandlesTabLifecycles(true); |
@@ -191,7 +194,7 @@ public class LayoutManagerDocument extends LayoutManager |
if (mStaticLayout != null) mStaticLayout.destroy(); |
if (mContextualSearchLayout != null) mContextualSearchLayout.destroy(); |
- if (mContextualSearchPanel != null) mContextualSearchPanel.destroy(); |
+ if (mOverlayPanelManager != null) mOverlayPanelManager.destroy(); |
if (mTabModelSelectorTabObserver != null) mTabModelSelectorTabObserver.destroy(); |
} |
@@ -327,7 +330,7 @@ public class LayoutManagerDocument extends LayoutManager |
showContextualSearchLayout(true); |
} |
- mContextualSearchPanel.handleClick(time, x, y); |
+ mOverlayPanelManager.getActivePanel().handleClick(time, x, y); |
} |
@Override |