Commit 82545f80 authored by Mugdha Lakhani's avatar Mugdha Lakhani Committed by Commit Bot

[PageInfo] updatePermissionDisplay should consider PageInfo v2.

Bug: 1077766
Change-Id: I8079081f01ac1c69b28b169d0b159dedf121a783
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2199288
Commit-Queue: Mugdha Lakhani <nator@chromium.org>
Reviewed-by: default avatarAndrew Grieve <agrieve@chromium.org>
Reviewed-by: default avatarTed Choc <tedchoc@chromium.org>
Reviewed-by: default avatarEhimare Okoyomon <eokoyomon@chromium.org>
Auto-Submit: Mugdha Lakhani <nator@chromium.org>
Cr-Commit-Position: refs/heads/master@{#768990}
parent 2b3db2d4
......@@ -23,7 +23,9 @@ import org.chromium.chrome.browser.offlinepages.OfflinePageUtils;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.test.ChromeActivityTestRule;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.chrome.test.util.browser.Features.DisableFeatures;
import org.chromium.components.page_info.PageInfoController;
import org.chromium.components.page_info.PageInfoFeatureList;
import org.chromium.components.page_info.PageInfoView;
import org.chromium.components.security_state.ConnectionSecurityLevel;
import org.chromium.content_public.browser.test.util.TestThreadUtils;
......@@ -83,6 +85,7 @@ public class PageInfoControllerTest {
@MediumTest
@Feature({"PageInfoController"})
@RetryOnFailure
@DisableFeatures(PageInfoFeatureList.PAGE_INFO_V2)
public void testPageInfoUrl() {
String testUrl = mTestServer.getURLWithHostName("xn--allestrungen-9ib.ch", "/");
mActivityTestRule.loadUrlInTab(
......@@ -102,7 +105,7 @@ public class PageInfoControllerTest {
PageInfoController pageInfo =
new PageInfoController(tab.getWebContents(), ConnectionSecurityLevel.NONE,
/*publisher=*/null, chromePageInfoControllerDelegate,
/*isV2Enabled=*/false, chromePermissionParamsListBuilderDelegate);
chromePermissionParamsListBuilderDelegate);
PageInfoView pageInfoView = pageInfo.getPageInfoViewForTesting();
// Test that the title contains the Unicode hostname rather than strict equality, as
// the test server will be bound to a random port.
......
......@@ -131,12 +131,12 @@ public class PageInfoController implements ModalDialogProperties.Controller,
*/
@VisibleForTesting(otherwise = VisibleForTesting.PROTECTED)
public PageInfoController(WebContents webContents, int securityLevel, String publisher,
PageInfoControllerDelegate delegate, boolean isV2Enabled,
PageInfoControllerDelegate delegate,
PermissionParamsListBuilderDelegate permissionParamsListBuilderDelegate) {
mWebContents = webContents;
mSecurityLevel = securityLevel;
mDelegate = delegate;
mIsV2Enabled = isV2Enabled;
mIsV2Enabled = PageInfoFeatureList.isEnabled(PageInfoFeatureList.PAGE_INFO_V2);
mPermissionParamsListBuilderDelegate = permissionParamsListBuilderDelegate;
mRunAfterDismissConsumer = new Consumer<Runnable>() {
@Override
......@@ -333,7 +333,17 @@ public class PageInfoController implements ModalDialogProperties.Controller,
@CalledByNative
private void updatePermissionDisplay() {
assert (mPermissionParamsListBuilder != null);
mView.setPermissions(mPermissionParamsListBuilder.build());
PageInfoView.PermissionParams params = mPermissionParamsListBuilder.build();
if (mIsV2Enabled) {
PageInfoRowView.ViewParams rowParams = new PageInfoRowView.ViewParams();
rowParams.visible = true;
rowParams.title = mContext.getString(R.string.page_info_permissions_title);
// TODO(crbug.com/1077766): Create a permissions subtitle string that represents
// the state, potentially using R.plurals.
((PageInfoViewV2) mView).getPermissionsRowView().setParams(rowParams);
} else {
mView.setPermissions(params);
}
}
/**
......@@ -495,8 +505,7 @@ public class PageInfoController implements ModalDialogProperties.Controller,
sLastPageInfoControllerForTesting = new WeakReference<>(new PageInfoController(webContents,
SecurityStateModel.getSecurityLevelForWebContents(webContents), contentPublisher,
delegate, PageInfoFeatureList.isEnabled(PageInfoFeatureList.PAGE_INFO_V2),
permissionParamsListBuilderDelegate));
delegate, permissionParamsListBuilderDelegate));
}
@VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment