// Copyright 2024 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CHROME_BROWSER_SSL_CHROME_SECURITY_STATE_TAB_HELPER_H_ #define CHROME_BROWSER_SSL_CHROME_SECURITY_STATE_TAB_HELPER_H_ #include <memory> #include "base/functional/callback.h" #include "components/security_state/content/security_state_tab_helper.h" #include "components/security_state/core/security_state.h" #include "content/public/browser/web_contents_observer.h" #include "content/public/browser/web_contents_user_data.h" #include "third_party/blink/public/common/security/security_style.h" namespace content { class NavigationHandle; class WebContents; } // namespace content // This class extends the SecurityStateTabHelper with functionality that is // available in Chrome. In addition to using the `VisibleSecurityState` of the // base class, it considers: // - the SafeBrowsingService to identify potentially malicious sites, // - the PolicyCertService on ChromeOs to check for cached content from an // untrusted source, // - the SafeTipInfo that is provided for the current page, // - the profile prefs to change how mixed forms are treated, and // - the HttpsOnlyModeTabHelper providing HTTPS-Only Mode data. // // Furthermove, it logs console warnings for private data on insecure pages. class ChromeSecurityStateTabHelper : public SecurityStateTabHelper, public content::WebContentsObserver { … }; #endif // CHROME_BROWSER_SSL_CHROME_SECURITY_STATE_TAB_HELPER_H_