Commit c59c8403 authored by Mugdha Lakhani's avatar Mugdha Lakhani Committed by Commit Bot

[WebLayer] Componentize more page info UI logic.

Bug: 1052375
Change-Id: Ie9e503f3f492d35b4dfac92e0b6718d0fcd4e014
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2066721
Commit-Queue: Mugdha Lakhani <nator@chromium.org>
Reviewed-by: default avatarJohn Abd-El-Malek <jam@chromium.org>
Reviewed-by: default avatarBo <boliu@chromium.org>
Reviewed-by: default avatarDavid Benjamin <davidben@chromium.org>
Reviewed-by: default avatarColin Blundell <blundell@chromium.org>
Reviewed-by: default avatarAndrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#744621}
parent 6515802b
......@@ -2757,7 +2757,6 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/omnibox/OmniboxViewUtil.java",
"java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java",
"java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteController.java",
"java/src/org/chromium/chrome/browser/page_info/CertificateChainHelper.java",
"java/src/org/chromium/chrome/browser/page_info/ConnectionInfoPopup.java",
"java/src/org/chromium/chrome/browser/page_info/PageInfoController.java",
"java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksReader.java",
......
......@@ -1202,13 +1202,10 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/omnibox/suggestions/tail/TailSuggestionViewProperties.java",
"java/src/org/chromium/chrome/browser/omnibox/voice/AssistantVoiceSearchService.java",
"java/src/org/chromium/chrome/browser/omnibox/voice/VoiceRecognitionHandler.java",
"java/src/org/chromium/chrome/browser/page_info/CertificateChainHelper.java",
"java/src/org/chromium/chrome/browser/page_info/ConnectionInfoPopup.java",
"java/src/org/chromium/chrome/browser/page_info/PageInfoController.java",
"java/src/org/chromium/chrome/browser/page_info/PageInfoDialog.java",
"java/src/org/chromium/chrome/browser/page_info/PermissionParamsListBuilder.java",
"java/src/org/chromium/chrome/browser/page_info/SiteSettingsHelper.java",
"java/src/org/chromium/chrome/browser/page_info/SystemSettingsActivityRequiredListener.java",
"java/src/org/chromium/chrome/browser/paint_preview/PaintPreviewExperiments.java",
"java/src/org/chromium/chrome/browser/paint_preview/PaintPreviewTabHelper.java",
"java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmark.java",
......
......@@ -27,6 +27,7 @@ import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.ResourceId;
import org.chromium.chrome.browser.vr.UiUnsupportedMode;
import org.chromium.chrome.browser.vr.VrModuleProvider;
import org.chromium.components.page_info.CertificateChainHelper;
import org.chromium.components.page_info.CertificateViewer;
import org.chromium.content_public.browser.WebContents;
import org.chromium.content_public.browser.WebContentsObserver;
......
......@@ -47,9 +47,11 @@ import org.chromium.components.feature_engagement.EventConstants;
import org.chromium.components.feature_engagement.Tracker;
import org.chromium.components.page_info.CookieControlsStatus;
import org.chromium.components.page_info.CookieControlsView;
import org.chromium.components.page_info.PageInfoDialog;
import org.chromium.components.page_info.PageInfoView;
import org.chromium.components.page_info.PageInfoView.ConnectionInfoParams;
import org.chromium.components.page_info.PageInfoView.PageInfoViewParams;
import org.chromium.components.page_info.SystemSettingsActivityRequiredListener;
import org.chromium.components.security_state.ConnectionSecurityLevel;
import org.chromium.components.url_formatter.UrlFormatter;
import org.chromium.content_public.browser.WebContents;
......
......@@ -26,6 +26,7 @@ import org.chromium.chrome.browser.settings.website.WebsitePreferenceBridge;
import org.chromium.components.content_settings.ContentSettingsType;
import org.chromium.components.location.LocationUtils;
import org.chromium.components.page_info.PageInfoView;
import org.chromium.components.page_info.SystemSettingsActivityRequiredListener;
import org.chromium.ui.base.AndroidPermissionDelegate;
import org.chromium.ui.base.PermissionCallback;
......
......@@ -29,7 +29,6 @@ import org.chromium.chrome.browser.compositor.layouts.OverviewModeBehavior;
import org.chromium.chrome.browser.compositor.layouts.OverviewModeBehavior.OverviewModeObserver;
import org.chromium.chrome.browser.favicon.FaviconHelper;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.page_info.CertificateChainHelper;
import org.chromium.chrome.browser.payments.handler.PaymentHandlerCoordinator;
import org.chromium.chrome.browser.payments.handler.PaymentHandlerCoordinator.PaymentHandlerUiObserver;
import org.chromium.chrome.browser.payments.handler.PaymentHandlerCoordinator.PaymentHandlerWebContentsObserver;
......@@ -56,6 +55,7 @@ import org.chromium.chrome.browser.util.UrlConstants;
import org.chromium.chrome.browser.widget.ScrimView;
import org.chromium.chrome.browser.widget.ScrimView.EmptyScrimObserver;
import org.chromium.chrome.browser.widget.ScrimView.ScrimParams;
import org.chromium.components.page_info.CertificateChainHelper;
import org.chromium.components.payments.CurrencyFormatter;
import org.chromium.components.payments.ErrorStrings;
import org.chromium.components.payments.MethodStrings;
......
......@@ -43,6 +43,7 @@ import org.chromium.chrome.test.util.browser.Features;
import org.chromium.chrome.test.util.browser.LocationSettingsTestUtil;
import org.chromium.components.content_settings.ContentSettingsType;
import org.chromium.components.page_info.PageInfoView;
import org.chromium.components.page_info.SystemSettingsActivityRequiredListener;
import org.chromium.ui.base.AndroidPermissionDelegate;
import org.chromium.ui.base.PermissionCallback;
......
......@@ -734,7 +734,6 @@ jumbo_static_library("ui") {
"android/omnibox/omnibox_view_util.h",
"android/overlay/overlay_window_android.cc",
"android/overlay/overlay_window_android.h",
"android/page_info/certificate_chain_helper.cc",
"android/page_info/connection_info_popup_android.cc",
"android/page_info/connection_info_popup_android.h",
"android/page_info/page_info_controller_android.cc",
......
file://chrome/browser/ui/page_info/OWNERS
# COMPONENT: UI>Browser>Bubbles>PageInfo
# TEAM: security-enamel@chromium.org
# Page Info Component
Page Info is a component providing necessary APIs for showing Page Info UI. This
UI is accesssed by clicking on the security status icon from the omnibox and
related toolbars.
......@@ -6,6 +6,7 @@ import("//build/config/android/rules.gni")
static_library("android") {
sources = [
"certificate_chain_helper.cc",
"certificate_viewer_android.cc",
"cookie_controls_status.h",
]
......@@ -13,6 +14,7 @@ static_library("android") {
"//base",
"//components/page_info/android:jni_headers",
"//components/strings:components_strings_grit",
"//content/public/browser:browser",
"//net:net",
"//third_party/boringssl",
"//ui/base:base",
......@@ -40,9 +42,12 @@ android_resources("java_resources") {
android_library("java") {
sources = [
"java/src/org/chromium/components/page_info/CertificateChainHelper.java",
"java/src/org/chromium/components/page_info/CertificateViewer.java",
"java/src/org/chromium/components/page_info/CookieControlsView.java",
"java/src/org/chromium/components/page_info/PageInfoDialog.java",
"java/src/org/chromium/components/page_info/PageInfoView.java",
"java/src/org/chromium/components/page_info/SystemSettingsActivityRequiredListener.java",
]
deps = [
......@@ -60,6 +65,8 @@ android_library("java") {
}
generate_jni("jni_headers") {
sources =
[ "java/src/org/chromium/components/page_info/CertificateViewer.java" ]
sources = [
"java/src/org/chromium/components/page_info/CertificateChainHelper.java",
"java/src/org/chromium/components/page_info/CertificateViewer.java",
]
}
include_rules = [
"+components/strings/grit/components_strings.h",
"-content/public/android",
"+content/public/android/java/src/org/chromium/content_public",
"+content/public/browser",
"+net/cert",
"+ui/android",
"+ui/base/l10n/l10n_util.h",
]
......@@ -5,7 +5,7 @@
#include "base/android/jni_android.h"
#include "base/android/jni_array.h"
#include "base/android/jni_string.h"
#include "chrome/android/chrome_jni_headers/CertificateChainHelper_jni.h"
#include "components/page_info/android/jni_headers/CertificateChainHelper_jni.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/navigation_entry.h"
#include "content/public/browser/ssl_status.h"
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.chrome.browser.page_info;
package org.chromium.components.page_info;
import org.chromium.base.annotations.NativeMethods;
import org.chromium.content_public.browser.WebContents;
......@@ -11,7 +11,6 @@ import org.chromium.content_public.browser.WebContents;
* Helper class for obtaining site certificate chain from WebContents.
*/
public class CertificateChainHelper {
public static byte[][] getCertificateChain(WebContents webContents) {
return CertificateChainHelperJni.get().getCertificateChain(webContents);
}
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.chrome.browser.page_info;
package org.chromium.components.page_info;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
......@@ -22,7 +22,6 @@ import android.widget.ScrollView;
import androidx.annotation.NonNull;
import org.chromium.components.page_info.PageInfoView;
import org.chromium.ui.interpolators.BakedBezierInterpolator;
import org.chromium.ui.modaldialog.DialogDismissalCause;
import org.chromium.ui.modaldialog.ModalDialogManager;
......@@ -32,7 +31,7 @@ import org.chromium.ui.modelutil.PropertyModel;
/**
* Represents the dialog containing the page info view.
*/
class PageInfoDialog {
public class PageInfoDialog {
private static final int ENTER_START_DELAY_MS = 100;
private static final int ENTER_EXIT_DURATION_MS = 200;
private static final int CLOSE_CLEANUP_DELAY_MS = 10;
......@@ -146,7 +145,7 @@ class PageInfoDialog {
// onAnimationEnd is called during the final frame of the animation.
// Delay the cleanup by a tiny amount to give this frame a chance to
// be displayed before we destroy the dialog.
mView.postDelayed(this ::superDismiss, CLOSE_CLEANUP_DELAY_MS);
mView.postDelayed(this::superDismiss, CLOSE_CLEANUP_DELAY_MS);
}).start();
}
}
......
......@@ -2,13 +2,13 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.chrome.browser.page_info;
package org.chromium.components.page_info;
import android.content.Intent;
/**
* Extracted to allow testing of PermissionParamsListBuilder.
*/
interface SystemSettingsActivityRequiredListener {
public interface SystemSettingsActivityRequiredListener {
void onSystemSettingsActivityRequired(Intent intentOverride);
}
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