chromium/tools/metrics/histograms/metadata/settings/histograms.xml

<!--
Copyright 2020 The Chromium Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->

<!--
This file is used to generate a comprehensive list of Settings histograms
along with a detailed description for each histogram.

For best practices on writing histogram descriptions, see
https://chromium.googlesource.com/chromium/src.git/+/HEAD/tools/metrics/histograms/README.md

Please follow the instructions in the OWNERS file in this directory to find a
reviewer. If no OWNERS file exists, please consider signing up at
go/reviewing-metrics (Googlers only), as all subdirectories are expected to
have an OWNERS file. As a last resort you can send the CL to
[email protected].
-->

<histogram-configuration>

<histograms>

<variants name="SafetyHubDashboardModuleType">
  <variant name="BrowserState"/>
  <variant name="NotificationReview"/>
  <variant name="Passwords"/>
  <variant name="RevokedPermissions"/>
  <variant name="SafeBrowsing"/>
  <variant name="UpdateCheck"/>
</variants>

<variants name="SafetyHubLifecycleEvent">
  <variant name="OnExit"/>
  <variant name="OnImpression"/>
</variants>

<!-- LINT.IfChange(AllPermissionTypes) -->

<variants name="SettingsAllPermissionTypes">
  <variant name="AR"/>
  <variant name="AudioAndVideoCapture"/>
  <variant name="AudioCapture"/>
  <variant name="CameraPanTiltZoom"/>
  <variant name="ClipboardReadWrite"/>
  <variant name="Geolocation"/>
  <variant name="IdleDetection"/>
  <variant name="LocalFonts"/>
  <variant name="MidiSysEx"/>
  <variant name="MultipleDownload"/>
  <variant name="Nfc"/>
  <variant name="Notifications"/>
  <variant name="PaymentHandler"/>
  <variant name="ProtectedMedia"/>
  <variant name="Quota"/>
  <variant name="RegisterProtocolHandler"/>
  <variant name="SecurityKeyAttestation"/>
  <variant name="StorageAccess"/>
  <variant name="TopLevelStorageAccess"/>
  <variant name="U2fApiRequest"/>
  <variant name="VideoCapture"/>
  <variant name="VR"/>
  <variant name="WindowPlacement"/>
</variants>

<!-- LINT.ThenChange(//tools/metrics/histograms/metadata/permissions/histograms.xml:AllPermissionTypes) -->

<histogram name="Settings.AdvancedSpellcheck.OnStartup2" enum="BooleanEnabled"
    expires_after="2024-10-13">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The state of the advanced spellcheck setting, recorded on profile open for
    regular profiles (not Incognito, Guest, etc.).

    Expired in M109, re-instated in M118.
  </summary>
</histogram>

<histogram name="Settings.AllSites.DeprecatedRedirect" enum="BooleanRedirected"
    expires_after="M101">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Whether or not navigations to the All Sites page occured because the user
    was redirected from the deprecated Site Data page.
  </summary>
</histogram>

<histogram name="Settings.AutocompleteSearches.OnStartup2"
    enum="BooleanEnabled" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The state of the autocomplete searches setting, recorded on profile open,
    only for regular profiles (not Incognito, Guest, etc.).
  </summary>
</histogram>

<histogram name="Settings.ClearBrowsingData.Advanced.TimePeriod"
    enum="SettingsClearBrowsingDataTimePeriod" expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the time period that users cleared from the Clear Browsing Data
    dialog advanced tab. Users in the CbdTimeframeRequired experiment record
    this only for the first deletion.
  </summary>
</histogram>

<histogram name="Settings.ClearBrowsingData.Basic.TimePeriod"
    enum="SettingsClearBrowsingDataTimePeriod" expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the time period that users cleared from the Clear Browsing Data
    dialog basic tab. Users in the CbdTimeframeRequired experiment record this
    only for the first deletion.
  </summary>
</histogram>

<histogram name="Settings.ClearBrowsingData.OpenMyActivity"
    enum="ClearBrowsingDataMyActivityNavigation" expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records which MyActivity URLs the user clicked in Clear Browsing Data.
  </summary>
</histogram>

<histogram name="Settings.DefaultBrowserFromSource"
    enum="IOSDefaultBrowserSettingsPageSource" expires_after="2025-01-12">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The source surface that requested displaying the default browser system
    settings. Logged when the user actually opens the iOS system settings (IOS
    only).
  </summary>
</histogram>

<histogram name="Settings.FingerprintingProtection.Enabled"
    enum="BooleanEnabled" expires_after="2025-02-16">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the state of the pref that represents whether the user has chosen to
    enable Fingerprinting Protection via the Tracking Protection settings page.
    Logged on profile startup.
  </summary>
</histogram>

<histogram name="Settings.FirstPartySets.State" enum="FirstPartySetsState"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records either the state of first party sets (FPS) or not relevant,
    depending on the user's cookie settings. This is logged on startup.
  </summary>
</histogram>

<histogram name="Settings.FragmentAttached"
    enum="AndroidSettingsFragmentHashes" expires_after="M140">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the classname of a Fragment when it is attached to a
    SettingsActivity. For evaluating popularity and priorities for Android
    settings GUI. The name is hashed using String.hashCode.

    For Desktop settings usage check WebUI.Settings.PathVisited.
  </summary>
</histogram>

<histogram name="Settings.GivenShowHomeButton_HomePageIsNewTabPage2"
    enum="Boolean" expires_after="2024-12-30">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Whether or not the home page user preference is set to the default NTP value
    when a regular profile is loaded. This is only logged if the home button is
    shown.

    To be explicit: not logged when an Incognito profile is opened because that
    inherits the settings from its parent profile. As such, it's not necessary
    to log the Incognito profile's settings.
  </summary>
</histogram>

<histogram name="Settings.Homepage.LocationType" enum="HomepageLocationType"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The location type for the homepage if the homepage is enabled. Recorded on
    deferred startup iff the homepage is enabled. Android only.
  </summary>
</histogram>

<histogram name="Settings.HomePageEngineType2" enum="OmniboxSearchEngineType"
    expires_after="2024-04-30">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Tries to pretend the home page URL is a search URL, and records the search
    engine type of that URL by comparing the TLD+1 of the home page URL with
    those of the different known search engines. Recorded when a regular profile
    is opened, if a home page URL has been set. Note that at least one profile
    is opened on startup.

    To be explicit: not logged when an Incognito profile is opened because that
    inherits the settings from its parent profile. As such, it's not necessary
    to log the Incognito profile's settings.
  </summary>
</histogram>

<histogram name="Settings.HoverCards.ImagePreview.Enabled"
    enum="BooleanEnabled" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Logged whether the hover card preview images setting is enabled or disabled
    when it is toggled in chrome://settings/appearance.
  </summary>
</histogram>

<histogram name="Settings.IpProtection.Enabled" enum="BooleanEnabled"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the state of the pref that represents whether the user has chosen to
    enable IP Protection via the Tracking Protection settings page. Logged on
    profile startup.
  </summary>
</histogram>

<histogram name="Settings.OpenSettingsFromMenu.PerProfileType"
    enum="BrowserProfileType" expires_after="2024-04-28">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the profile type for opening the Settings page from menu.
  </summary>
</histogram>

<histogram name="Settings.OverscrollHistoryNavigation.Enabled"
    enum="BooleanEnabled" expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Logs whether the overscroll history navigation setting is enabled or
    disabled when it is toggled in chrome://settings/accessibility. Compare to
    the histogram
    &quot;ChromeOS.Settings.OverscrollHistoryNavigation.Enabled&quot; on Chrome
    OS.
  </summary>
</histogram>

<histogram name="Settings.PinUnlockSetup" enum="LockScreenProgress"
    expires_after="2025-04-24">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The users progress through the pin unlock setup wizard. Each type
    corresponds to the user completing a different stage of the setup wizard.
  </summary>
</histogram>

<histogram name="Settings.PreloadStatus.OnStartup3" enum="PreloadPagesState"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The status of the preload setting, recorded on regular profile open (not
    Incognito, Guest, etc.). Not recorded for iOS where the setting does not
    exist.
  </summary>
</histogram>

<histogram name="Settings.PrivacyElementInteractions"
    enum="SettingsPrivacyElementInteractions" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Which privacy related settings elements a user interacted with. Recorded
    every time a user interacts with an element of interest.
  </summary>
</histogram>

<histogram name="Settings.PrivacyGuide.EntryExit"
    enum="SettingsPrivacyGuideInteractions" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    How the users navigated into the Privacy guide as well as links out of the
    privacy guide.
  </summary>
</histogram>

<histogram name="Settings.PrivacyGuide.FlowLength" units="steps"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The number of settings steps that can be shown in the Privacy Guide flow.
    This number varies based on the users' setting states. Recorded when the
    user clicks 'Next' in the Privacy Guide welcome card.
  </summary>
</histogram>

<histogram name="Settings.PrivacyGuide.NextNavigation"
    enum="SettingsPrivacyGuideInteractions" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The step in the Privacy guide from which a user clicked the 'next' button.
  </summary>
</histogram>

<histogram name="Settings.PrivacyGuide.SettingsStates"
    enum="SettingsPrivacyGuideSettingsStates" expires_after="2025-04-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records whether or not the user kept the same settings or changed it, and
    the corresponding value, on every |Next| or |Back| button click inside of
    Privacy guide.
  </summary>
</histogram>

<histogram name="Settings.PrivacyGuide.StepsEligibleAndReached"
    enum="SettingsPrivacyGuideStepsEligibleAndReached"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records which steps were set to be eligible to be shown when user clicks
    'Next' button in the Welcome step. Records which steps were reached when
    user reaches the individual step in the flow.
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.AdMeasurement.Enabled"
    enum="BooleanEnabled" expires_after="2025-01-26">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the startup state of the ad measurement API for Privacy Sandbox GA
    M1. This is recorded during the profile start up.
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.ConsentCheckIsMismatched"
    enum="Boolean" expires_after="2024-12-30">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records mismatches between the calculated consent requirement and any
    overrides applied to the Privacy Sandbox consent param.
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.DialogDisplayHost"
    enum="SettingsPrivacySandboxDialogDisplayHostHash"
    expires_after="2024-09-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the host portion of the URL of the tab that the Privacy Sandbox
    dialog was displayed over. As the Privacy Sandbox dialog is only shown over
    chrome:// URLs (or about:blank), and we only record the host portion, this
    will never include the user's browsing information (which may be present in
    query parameters of chrome:// urls).
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.DialogLoadTime" units="ms"
    expires_after="2024-09-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the load time of the Privacy Sandbox Dialog. The load time is the
    time between the dialog view created and HTML loaded (DOMContentLoaded).
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.Fledge.Enabled" enum="BooleanEnabled"
    expires_after="2025-01-26">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the startup state of the fledge API for Privacy Sandbox GA M1. This
    is recorded during the profile start up.
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.NoticeCheckIsMismatched"
    enum="Boolean" expires_after="2024-12-30">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records mismatches between the calculated notice requirement and any
    overrides applied to the Privacy Sandbox notice param.
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.PrivacySandboxReferrer"
    enum="PrivacySandboxReferrer" expires_after="2023-02-12">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Referrer of a navigation to the Privacy Sandbox UI Settings view. Recorded
    when the user enters the view.

    Warning: This histogram was expired after M95 and restored M99. Data may be
    missing M96-98.
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.PromptHelperEvent"
    enum="SettingsPrivacySandboxPromptHelperEvent" expires_after="2024-11-03">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records each event that occurs when the Privacy Sandbox prompt helper is
    attempting to find a suitable location to show any pending Privacy Sandbox
    prompt.

    The helper is only created and attached to the tab when a prompt is
    required, and so these metrics are only recorded when a prompt is required.
    Value 1 is recorded on navigations that occur while the helper still exists,
    but after the prompt has been shown (as the tab that created the helper can
    outlive the prompt)
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.PromptStartupState"
    enum="SettingsPrivacySandboxPromptStartupState" expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the startup state of the privacy sandbox prompt for Privacy Sandbox
    GA M1. This is recorded during the profile start up.
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.RestrictedNoticeCheckIsMismatched"
    enum="Boolean" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records mismatches between the calculated restricted notice requirement and
    any overrides applied to the Privacy Sandbox restricted notice param.
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.StartupState"
    enum="SettingsPrivacySandboxStartupStates" expires_after="2024-09-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the startup state of user prefs controlling Privacy Sandbox.
  </summary>
</histogram>

<histogram name="Settings.PrivacySandbox.Topics.Enabled" enum="BooleanEnabled"
    expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the startup state of the topics API for Privacy Sandbox GA M1. This
    is recorded during the profile start up.
  </summary>
</histogram>

<histogram name="Settings.SafetyCheck.Interactions"
    enum="SettingsSafetyCheckInteractions" expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Which user actions were taken in safety check. Recorded every time a user
    does an interaction in safety check. Value 5 and 6 got added with M86, 7-9
    with M87, 10 with M88, and 11 with M89.
  </summary>
</histogram>

<histogram name="Settings.SafetyCheck.NotificationsListCount"
    units="suggestions" expires_after="2024-11-03">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The number of suggestions of notification permissions to revoke, recorded
    when the notification permission list is initialized for the SafetyCheck
    notifications module.
  </summary>
</histogram>

<histogram name="Settings.SafetyCheck.NotificationsModuleEntryPointShown"
    enum="BooleanVisible" expires_after="2024-12-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures whether the entry point for the notification module of Safety Check
    is shown to the user, i.e. whether it is enabled and at least one
    notification permission met the criteria for review. Recorded whenever the
    user visits the Safety Check page in Chrome Settings.
  </summary>
</histogram>

<histogram name="Settings.SafetyCheck.NotificationsModuleInteractions"
    enum="SafetyCheckNotificationsModuleInteractions"
    expires_after="2024-11-03">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The user actions taken on the notifications module in safety check in Chrome
    settings. Recorded every time the user interacts with the respective UI
    element.
  </summary>
</histogram>

<histogram name="Settings.SafetyCheck.PasswordsResult2"
    enum="SafetyCheckPasswordsStatus" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Resulting state of the safety check password check. Replaced
    Settings.SafetyCheck.PasswordsResult in M116 after fixing a bug on Safety
    Check on iOS that was recording password results multiple times for the same
    password check.
  </summary>
</histogram>

<histogram name="Settings.SafetyCheck.SafeBrowsingResult"
    enum="SafetyCheckSafeBrowsingStatus" expires_after="2023-12-24">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>Resulting state of the safety check Safe Browsing check.</summary>
</histogram>

<histogram name="Settings.SafetyCheck.UnusedSitePermissionsAllowAgainDays"
    units="days" expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The number of days between the revocation of the permissions for an unused
    site and when the user reverts this revocation through the unused site
    permissions module of safety check in Chrome settings. Emitted when the user
    clicks regrants permissions through the permissions review interface in
    Chrome settings.
  </summary>
</histogram>

<histogram name="Settings.SafetyCheck.UnusedSitePermissionsListCount"
    units="suggestions" expires_after="2024-11-03">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The number of suggestions of unused site permissions to revoke, recorded
    when the list of sites with revoked permissions is initialized when the user
    opens the SafetyCheck unused site permissions module.
  </summary>
</histogram>

<histogram name="Settings.SafetyCheck.UnusedSitePermissionsMigrationFail"
    units="type" expires_after="2025-01-26">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The number of the failed type which could not be migrated to the SafetyCheck
    new unused site permissions module with string name IDs. Recorded on profile
    startup if the integer value ID in prefs doesn't match any
    ContentSettingsType.
  </summary>
</histogram>

<histogram
    name="Settings.SafetyCheck.UnusedSitePermissionsModuleEntryPointShown"
    enum="BooleanVisible" expires_after="2024-11-03">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures whether the entry point for the unused site permissions module of
    Safety Check is shown to the user, i.e. whether it is enabled and at least
    one site permission has been revoked. Recorded whenever the user visits the
    Safety Check page in Chrome Settings.
  </summary>
</histogram>

<histogram name="Settings.SafetyCheck.UnusedSitePermissionsModuleInteractions"
    enum="SafetyCheckUnusedSitePermissionsModuleInteractions"
    expires_after="2024-11-03">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The user actions taken on the unused site permissions module in safety check
    in Chrome settings. Recorded every time the user interacts with the
    respective UI element.
  </summary>
</histogram>

<histogram
    name="Settings.SafetyCheck.UnusedSitePermissionsRegrantDays{SourceUI}.All"
    units="days" expires_after="2024-12-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the number of days since the permission was revoked for any
    permission type, up until the cleanup threshold for revoked permissions has
    been reached. The metric is recorded when the user regrants a permission
    that was previously revoked by the unused site permission module of
    SafetyCheck.
  </summary>
  <token key="SourceUI">
    <variant name="Prompt"/>
    <variant name="Settings"/>
  </token>
</histogram>

<histogram
    name="Settings.SafetyCheck.UnusedSitePermissionsRegrantDays{SourceUI}.{PermissionType}"
    units="days" expires_after="2024-12-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the number of days since the permission was revoked for the
    {PermissionType} permission type, up until the cleanup threshold for revoked
    permissions has been reached. The metric is recorded when the user regrants
    a permission that was previously revoked by the unused site permission
    module of SafetyCheck.
  </summary>
  <token key="PermissionType" variants="SettingsAllPermissionTypes"/>
  <token key="SourceUI">
    <variant name="Prompt"/>
    <variant name="Settings"/>
  </token>
</histogram>

<histogram name="Settings.SafetyCheck.UpdatesResult"
    enum="SafetyCheckUpdateStatus" expires_after="2023-04-23">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>Resulting state of the safety check updates check.</summary>
</histogram>

<histogram
    name="Settings.SafetyHub.AbusiveNotificationPermissionRevocation.Interactions"
    enum="SafetyCheckUnusedSitePermissionsModuleInteractions"
    expires_after="2025-06-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The user actions taken on revoked abusive notifications in the revoked
    permissions module of the Safety Hub page in settings. Recorded every time
    the user interacts with the respective UI element for abusive notifications
    - this does not include interactions with revoked unused permissions.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.AutorevokeUnusedSitePermissions.Changed"
    enum="BooleanEnabled" expires_after="2025-02-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the state of the unused site permissions auto-revocation pref.
    Recorded when the user changes the preference via the toggle on the Site
    Settings page.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.Dashboard.Interactions"
    enum="SafetyHubDashboardInteractions" expires_after="2025-02-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures actions taken on the Safety Hub dashboard, except those taken on
    the notifications review and revoked permissions module. Emitted for all
    relevant click events on the Safety Hub dashboard.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.DashboardWarning"
    enum="SafetyHubModuleType" expires_after="2025-01-12">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the impressions of the different modules that have some warnings in
    Safety Check page. Recorded whenever Safety Check page is loaded.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.EntryPointImpression"
    enum="SafetyHubEntryPoint" expires_after="2025-01-12">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the impressions of the different entry points of Safety Hub.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.EntryPointInteraction"
    enum="SafetyHubEntryPoint" expires_after="2025-01-12">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the interaction with an entry point of Safety Hub, that will
    eventually lead to the Safety Check page, password manager checkup page or
    the extensions page.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.ExternalInteractions"
    enum="SafetyHubExternalInteractions" expires_after="2025-02-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the interaction with an entry point of Safety Hub. Emitted when the
    user click on the entry point.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.HasDashboardShowAnyWarning"
    enum="BooleanVisible" expires_after="2025-01-12">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures whether the Safety Check dashboard has any warning. Recorded
    whenever Safety Check page is loaded.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.Impression" enum="SafetyHubSurfaces"
    expires_after="2024-11-11">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures Safety Hub page visits and three dot menu impressions for any
    Safety Hub module.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.Interaction" enum="SafetyHubSurfaces"
    expires_after="2025-01-12">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures Safety Hub page visits and three dot menu clicks for any Safety Hub
    module.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.MenuNotificationClicked"
    enum="SafetyHubModuleType" expires_after="2025-01-12">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the Safety Hub module of which the three-dot menu notification was
    clicked.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.MenuNotificationImpression"
    enum="SafetyHubModuleType" expires_after="2025-01-12">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the Safety Hub module for which a notification was shown in the
    three-dot menu.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.NotificationPermissionsModule.Interactions"
    enum="SafetyCheckNotificationsModuleInteractions"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The user actions taken on the notification permissions module in Safety
    Check page in settings. Recorded every time the user interacts with the
    respective UI element.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.NotificationPermissionsModule.ListCount"
    units="suggestions" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The number of notification permissions suggested to be removed. Recorded
    when Safety Check page in Settings is opened.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.PasswordsCard.StatusOnClick"
    enum="SafetyHubCardState" expires_after="2025-02-23">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Passwords Card is located on Safety Check page in settings and can be in one
    of the multiple states. This is the Passwords Card state recorded on click.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.SafeBrowsingCard.StatusOnClick"
    enum="SafetyHubCardState" expires_after="2025-02-23">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Safe Browsing Card is located on Safety Check page in settings and can be in
    one of the multiple states. This is the Safe Browsing Card state recorded on
    click.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.UnusedSitePermissionsModule.AutoRevoked2"
    enum="ContentType" expires_after="2024-11-14">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The type of permission auto-revoked by the unused site permissions module of
    Safety Hub. Recorded during the auto-revocation run.

    Updated to use the default content settings enum in M128.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.UnusedSitePermissionsModule.Interactions"
    enum="SafetyCheckUnusedSitePermissionsModuleInteractions"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The user actions taken on the unused site permissions module in Safety Check
    page in settings. Recorded every time the user interacts with the respective
    UI element.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.UnusedSitePermissionsModule.ListCount"
    units="suggestions" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The number of unused site permissions suggested to be removed. Recorded when
    Safety Check page in Settings is opened.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.VersionCard.StatusOnClick"
    enum="SafetyHubCardState" expires_after="2025-02-23">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Version Card is located on Safety Check page in settings and can be in one
    of the multiple states. This is the Version Card state recorded on click.
  </summary>
</histogram>

<histogram name="Settings.SafetyHub.{ModuleType}.{LifecycleEvent}"
    enum="SafetyHubModuleState" expires_after="2025-02-01">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Captures the state of Safety Hub dashboard modules on impression or exit.
  </summary>
  <token key="ModuleType" variants="SafetyHubDashboardModuleType"/>
  <token key="LifecycleEvent" variants="SafetyHubLifecycleEvent"/>
</histogram>

<histogram name="Settings.SearchEngines.Interactions"
    enum="SettingsSearchEnginesInteractions" expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Which Search Engines settings page elements a user interacted with. Recorded
    every time a user interacts with an element of interest.
  </summary>
</histogram>

<histogram name="Settings.ShowHomeButton2" enum="BooleanEnabled"
    expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Whether or not the home button is enabled in user preferences when a regular
    profile is loaded.

    To be explicit: not logged when an Incognito profile is opened because that
    inherits the settings from its parent profile. As such, it's not necessary
    to log the Incognito profile's settings.
  </summary>
</histogram>

<histogram name="Settings.StartSetAsDefault" enum="BooleanHit"
    expires_after="2025-01-05">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The user clicked &quot;Make Google Chrome the default browser&quot; on the
    settings page.
  </summary>
</histogram>

<histogram name="Settings.StartupPageEngineTypes2"
    enum="OmniboxSearchEngineType" expires_after="2024-11-03">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Tries to pretend the startup page URLs are search URLs, and records the
    search engine types of those URLs by comparing the TLD+1s of the URLs with
    those of the different known search engines. Recorded when a regular profile
    is opened, if startup page URLs have been set. Note that at least one
    profile is opened on startup.

    To be explicit: not logged when an Incognito profile is opened because that
    inherits the settings from its parent profile. As such, it's not necessary
    to log the Incognito profile's settings.
  </summary>
</histogram>

<histogram name="Settings.StartupPageLoadSettings2" enum="SessionStartupPref"
    expires_after="2025-01-26">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The startup page settings when a regular profile is loaded.

    To be explicit: not logged when an Incognito profile is opened because that
    inherits the settings from its parent profile. As such, it's not necessary
    to log the Incognito profile's settings.
  </summary>
</histogram>

<histogram name="Settings.TimeToFirstSearch" units="ms" expires_after="M85">
  <owner>[email protected]</owner>
  <summary>
    The time between when the chrome://settings page is opened to the first time
    a search is done within that page. This is intended to evaluate how long a
    user looks for a setting before giving up and searching for it.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceChanged" enum="TrackedPreference"
    expires_after="2025-01-26">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The id of a tracked preference whose value has been changed since the last
    time Chrome set it. Without a suffix, this histogram stands for preference
    validation using MACs in the JSON pref files.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceCleared" enum="TrackedPreference"
    expires_after="2022-12-22">
  <expired_intentionally>
    Kept as test chrome/browser/prefs/tracked/pref_hash_browsertest.cc depends
    on this histogram.
  </expired_intentionally>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The id of a tracked preference whose value has been cleared since the last
    time Chrome set it. Without a suffix, this histogram stands for preference
    validation using MACs in the JSON pref files.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceInitialized"
    enum="TrackedPreference" expires_after="2022-12-22">
  <expired_intentionally>
    Kept as test chrome/browser/prefs/tracked/pref_hash_browsertest.cc depends
    on this histogram.
  </expired_intentionally>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The id of a tracked preference whose last value isn't known. We may be just
    starting to track the preference, or local state may have been changed
    outside of Chrome. This should only happen once per pref per profile.
    Without a suffix, this histogram stands for preference validation using MACs
    in the JSON pref files.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceMigratedLegacyDeviceId"
    enum="TrackedPreference" expires_after="2022-12-22">
  <expired_intentionally>
    Kept as test chrome/browser/prefs/tracked/pref_hash_browsertest.cc depends
    on this histogram.
  </expired_intentionally>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The id of a tracked preference whose value has not changed since the last
    time Chrome set it, but which was last set using a legacy device ID. Each
    user should report this at most once per preference id and immediately be
    migrated to the latest hashing model. Without a suffix, this histogram
    stands for preference validation using MACs in the JSON pref files.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceNullInitialized"
    enum="TrackedPreference" expires_after="2022-12-22">
  <expired_intentionally>
    Kept as test chrome/browser/prefs/tracked/pref_hash_browsertest.cc depends
    on this histogram.
  </expired_intentionally>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The id of a tracked preference which was initialized despite the absence of
    a MAC as its value was NULL. Without a suffix, this histogram stands for
    preference validation using MACs in the JSON pref files.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceReset" enum="TrackedPreference"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>The id of a tracked preference which was reset by Chrome.</summary>
</histogram>

<histogram name="Settings.TrackedPreferenceTrustedInitialized"
    enum="TrackedPreference" expires_after="2022-12-22">
  <expired_intentionally>
    Kept as test chrome/browser/prefs/tracked/pref_hash_browsertest.cc depends
    on this histogram.
  </expired_intentionally>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The id of a tracked preference which was initialized despite the absence of
    a MAC as the current MACs are trusted, inferring that this is a newly
    tracked pref. Without a suffix, this histogram stands for preference
    validation using MACs in the JSON pref files.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceUnchanged" enum="TrackedPreference"
    expires_after="2022-12-22">
  <expired_intentionally>
    Kept as test chrome/browser/prefs/tracked/pref_hash_browsertest.cc depends
    on this histogram.
  </expired_intentionally>
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The id of a tracked preference whose value has not changed since the last
    time Chrome set it. Without a suffix, this histogram stands for preference
    validation using MACs in the JSON pref files.
  </summary>
</histogram>

<histogram name="Settings.TrackedPreferenceWantedReset"
    enum="TrackedPreference" expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    The id of a tracked preference which Chrome would have reset had the config
    allowed it.
  </summary>
</histogram>

<histogram name="Settings.TrackingProtection.BlockAllThirdParty" enum="Boolean"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the state of the pref that represents whether the user has chosen to
    block all third-party cookies on the Tracking Protection settings page.
    Logged on startup.
  </summary>
</histogram>

<histogram name="Settings.TrackingProtection.Enabled" enum="BooleanEnabled"
    expires_after="2025-02-10">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Records the state of the pref that represents whether the user has the new
    Tracking Protection prefs and UX. Logged on startup.
  </summary>
</histogram>

<histogram name="Settings.TrackingProtection.Redirect" enum="BooleanRedirected"
    expires_after="2024-12-30">
  <owner>[email protected]</owner>
  <owner>[email protected]</owner>
  <summary>
    Whether or not navigations to the tracking protection page occured because
    the user was redirected from the cookies page. Records true on redirect from
    chrome://settings/cookies to chrome://settings/trackingProtection. Records
    false on standard navigation to chrome://settings/trackingProtection.
  </summary>
</histogram>

</histograms>

</histogram-configuration>