| // 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. |
| |
| [JavaPackage="org.chromium.components.content_settings"] |
| module content_settings.mojom; |
| |
| // TODO(http://b/324406007): The enum is currently specific to the TPCD (Third |
| // Party Cookies Deprecation) Metadata Source and is expected to be cleaned up |
| // with the mitigation cleanup. |
| enum TpcdMetadataRuleSource { |
| SOURCE_UNSPECIFIED = 0, |
| SOURCE_TEST, |
| SOURCE_1P_DT, |
| SOURCE_3P_DT, |
| SOURCE_DOGFOOD, |
| SOURCE_CRITICAL_SECTOR, |
| SOURCE_CUJ, |
| SOURCE_GOV_EDU_TLD, |
| }; |
| |
| // TODO(http://b/324406007): The enum is currently specific to the TPCD (Third |
| // Party Cookies Deprecation) Metadata DTRP (Deprecation Trial Rollout |
| // Percentage) and is expected to be cleaned up with the mitigation cleanup. |
| enum TpcdMetadataCohort { |
| // Attributed to any entry not participating in any staged control of the TPCD |
| // Metadata. |
| DEFAULT = 0, |
| // Attributed to any entry participating in the staged rollback of the |
| // deprecation trial grace period that should consider the deprecation trial |
| // token over the TPCD Metadata equivalent entry. |
| GRACE_PERIOD_FORCED_OFF, |
| // Attributed to any entry participating in the staged rollback of the |
| // deprecation trial grace period that should not consider the deprecation |
| // trial token over the TPCD Metadata equivalent entry. |
| GRACE_PERIOD_FORCED_ON, |
| }; |
| |
| // Options to restrict the scope of a content setting. These specify the |
| // lifetime model of a given setting and how it may become invalidated or |
| // expired. |
| // |
| // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.components.content_settings |
| // GENERATED_JAVA_CLASS_NAME_OVERRIDE: SessionModel |
| enum SessionModel { |
| // Settings persist forever and are bounded only by an expiry date, if set. |
| DURABLE = 0, |
| // Settings will persist no longer than the user session regardless of expiry |
| // date, if set. |
| USER_SESSION, |
| // Same as UserSession, except this session-based setting will be reset when |
| // the user session ends regardless the restore setting. These settings will |
| // not be restored e.g. when the user selected "continue where you left off" |
| // or after a crash or update related restart. |
| NON_RESTORABLE_USER_SESSION, |
| // Settings will persist for the current "tab session", meaning until the last |
| // tab from the origin is closed. |
| ONE_TIME, |
| }; |
| |
| // Identifies the content settings provider of a content setting. |
| enum ProviderType { |
| kWebuiAllowlistProvider = 0, |
| kPolicyProvider, |
| kSupervisedProvider, |
| kCustomExtensionProvider, |
| kInstalledWebappProvider, |
| kNotificationAndroidProvider, |
| kOneTimePermissionProvider, |
| kPrefProvider, |
| kDefaultProvider, |
| |
| // The following providers are for tests only. |
| kProviderForTests, |
| kOtherProviderForTests, |
| }; |