Skip to content

Commit

Permalink
Use correct width for narrow panel in Reader Mode
Browse files Browse the repository at this point in the history
The ContentViewClient responsible for setting the width of the
panel content in Contextual Search is now set is the OverlayPanel.

BUG=568616, 560130

Review URL: https://codereview.chromium.org/1514603007

Cr-Commit-Position: refs/heads/master@{#365420}
  • Loading branch information
iotitan authored and Commit bot committed Dec 16, 2015
1 parent 6e5b8cb commit 37c3add
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 28 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

import android.app.Activity;
import android.content.Context;
import android.view.View.MeasureSpec;

import org.chromium.base.ActivityState;
import org.chromium.base.ApplicationStatus;
Expand All @@ -17,6 +18,7 @@
import org.chromium.chrome.browser.compositor.layouts.LayoutUpdateHost;
import org.chromium.chrome.browser.compositor.scene_layer.SceneLayer;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.content.browser.ContentViewClient;
import org.chromium.content.browser.ContentViewCore;
import org.chromium.content_public.common.TopControlsState;
import org.chromium.ui.base.LocalizationUtils;
Expand Down Expand Up @@ -307,13 +309,37 @@ public OverlayPanelContent createNewOverlayPanelContent() {
new OverlayContentProgressObserver(), mActivity);
}

/**
* Add any other objects that depend on the OverlayPanelContent having already been created.
*/
private OverlayPanelContent createNewOverlayPanelContentInternal() {
OverlayPanelContent content = mContentFactory.createNewOverlayPanelContent();
// Adds a ContentViewClient to override the default fullscreen size.
content.setContentViewClient(new ContentViewClient() {
@Override
public int getDesiredWidthMeasureSpec() {
return MeasureSpec.makeMeasureSpec(
getSearchContentViewWidthPx(),
MeasureSpec.EXACTLY);
}

@Override
public int getDesiredHeightMeasureSpec() {
return MeasureSpec.makeMeasureSpec(
getSearchContentViewHeightPx(),
MeasureSpec.EXACTLY);
}
});
return content;
}

/**
* @return A new OverlayPanelContent if the instance was null or the existing one.
*/
protected OverlayPanelContent getOverlayPanelContent() {
// Only create the content when necessary
if (mContent == null) {
mContent = mContentFactory.createNewOverlayPanelContent();
mContent = createNewOverlayPanelContentInternal();
}
return mContent;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
import android.app.Activity;
import android.content.Context;
import android.os.Handler;
import android.view.View.MeasureSpec;

import org.chromium.base.ActivityState;
import org.chromium.base.VisibleForTesting;
Expand All @@ -21,7 +20,6 @@
import org.chromium.chrome.browser.compositor.scene_layer.SceneLayer;
import org.chromium.chrome.browser.contextualsearch.ContextualSearchManagementDelegate;
import org.chromium.chrome.browser.preferences.PrefServiceBridge;
import org.chromium.content.browser.ContentViewClient;
import org.chromium.ui.resources.ResourceManager;

/**
Expand Down Expand Up @@ -77,31 +75,8 @@ public ContextualSearchPanel(Context context, LayoutUpdateHost updateHost,

@Override
public OverlayPanelContent createNewOverlayPanelContent() {
OverlayPanelContent overlayPanelContent = new OverlayPanelContent(
mManagementDelegate.getOverlayContentDelegate(),
new PanelProgressObserver(),
mActivity);

// Adds a ContentViewClient to override the default fullscreen size.
if (!isFullscreenSizePanel()) {
overlayPanelContent.setContentViewClient(new ContentViewClient() {
@Override
public int getDesiredWidthMeasureSpec() {
return MeasureSpec.makeMeasureSpec(
getSearchContentViewWidthPx(),
MeasureSpec.EXACTLY);
}

@Override
public int getDesiredHeightMeasureSpec() {
return MeasureSpec.makeMeasureSpec(
getSearchContentViewHeightPx(),
MeasureSpec.EXACTLY);
}
});
}

return overlayPanelContent;
return new OverlayPanelContent(mManagementDelegate.getOverlayContentDelegate(),
new PanelProgressObserver(), mActivity);
}

/**
Expand Down

0 comments on commit 37c3add

Please sign in to comment.