0

Add new policies

This includes:
- ClassroomIntegrationEnabled,
- TasksIntegrationEnabled.

https://docs.google.com/document/d/1r3z2-a5DQXFtA-tiT2puNnK9ax8A-z1yzK6ut9UNA-0/edit?tab=t.0#heading=h.wrvfadawnn4h

Bug: b/319251265, b/296286730
Change-Id: I95b257ebf46a579689ae0ca1b27cdfbff2ea53d8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5366757
Reviewed-by: James Cook <jamescook@chromium.org>
Reviewed-by: Yann Dago <ydago@chromium.org>
Reviewed-by: Ana Salazar <anasalazar@chromium.org>
Reviewed-by: Igor Ruvinov <igorruvinov@chromium.org>
Commit-Queue: Artsiom Mitrokhin <amitrokhin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1277646}
This commit is contained in:
Artsiom Mitrokhin
2024-03-25 15:02:09 +00:00
committed by Chromium LUCI CQ
parent b2389bb3de
commit e92fbde1db
10 changed files with 108 additions and 5 deletions
ash
chrome/browser/policy
components/policy
docs/enterprise
tools/metrics/histograms/metadata/enterprise

@ -26,6 +26,14 @@ inline constexpr char kAssistPredictiveWritingEnabled[] =
inline constexpr char kCalendarIntegrationEnabled[] =
"ash.calendar_integration_enabled";
// A boolean pref of whether Google Classroom integration is enabled.
inline constexpr char kClassroomIntegrationEnabled[] =
"ash.classroom_integration_enabled";
// A boolean pref of whether Google Tasks integration is enabled.
inline constexpr char kTasksIntegrationEnabled[] =
"ash.tasks_integration_enabled";
// A boolean pref of whether emoji suggestion is enabled.
inline constexpr char kEmojiSuggestionEnabled[] =
"assistive_input.emoji_suggestion_enabled";

@ -32,6 +32,8 @@ GlanceablesController::~GlanceablesController() {
void GlanceablesController::RegisterUserProfilePrefs(
PrefRegistrySimple* registry) {
registry->RegisterBooleanPref(prefs::kGlanceablesEnabled, true);
registry->RegisterBooleanPref(prefs::kClassroomIntegrationEnabled, true);
registry->RegisterBooleanPref(prefs::kTasksIntegrationEnabled, true);
ClassroomBubbleStudentView::RegisterUserProfilePrefs(registry);
TasksComboboxModel::RegisterUserProfilePrefs(registry);
}

@ -1644,16 +1644,21 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = {
{ key::kPageUpAndPageDownKeysModifier,
ash::prefs::kPageUpAndPageDownKeysModifier,
base::Value::Type::INTEGER },
{ key::kInsertKeyModifier,
{ key::kInsertKeyModifier,
ash::prefs::kInsertKeyModifier,
base::Value::Type::INTEGER },
{key::kGoogleLocationServicesEnabled,
{ key::kGoogleLocationServicesEnabled,
ash::prefs::kUserGeolocationAccessLevel,
base::Value::Type::INTEGER},
base::Value::Type::INTEGER },
{ key::kLocalUserFilesAllowed,
prefs::kLocalUserFilesAllowed,
base::Value::Type::BOOLEAN
},
base::Value::Type::BOOLEAN },
{ key::kClassroomIntegrationEnabled,
ash::prefs::kClassroomIntegrationEnabled,
base::Value::Type::BOOLEAN },
{ key::kTasksIntegrationEnabled,
ash::prefs::kTasksIntegrationEnabled,
base::Value::Type::BOOLEAN },
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
#if BUILDFLAG(IS_LINUX)

@ -1240,6 +1240,8 @@ policies:
1239: ProfileLabel
1240: PrivacySandboxFingerprintingProtectionEnabled
1241: MultiScreenCaptureAllowedForUrls
1242: ClassroomIntegrationEnabled
1243: TasksIntegrationEnabled
atomic_groups:
1: Homepage
2: RemoteAccess

@ -0,0 +1,26 @@
caption: Enable <ph name="GOOGLE_CLASSROOM_NAME">Google Classroom</ph> integration
default: true
desc: |-
Enables <ph name="GOOGLE_CLASSROOM_NAME">Google Classroom</ph> integration on <ph name="PRODUCT_OS_NAME">$2<ex>Google ChromeOS</ex></ph>.
If this policy is enabled or left unset, the <ph name="GOOGLE_CLASSROOM_NAME">Google Classroom</ph> integration is enabled for enterprise users.
If this policy is disabled, the <ph name="GOOGLE_CLASSROOM_NAME">Google Classroom</ph> integration is disabled for enterprise users.
example_value: true
features:
dynamic_refresh: true
per_profile: true
items:
- caption: Enable <ph name="GOOGLE_CLASSROOM_NAME">Google Classroom</ph> integration.
value: true
- caption: Disable <ph name="GOOGLE_CLASSROOM_NAME">Google Classroom</ph> integration.
value: false
owners:
- amitrokhin@google.com
- file://ash/glanceables/OWNERS
schema:
type: boolean
future_on:
- chrome_os
tags: []
type: main

@ -0,0 +1,26 @@
caption: Enable <ph name="GOOGLE_TASKS_NAME">Google Tasks</ph> integration
default: true
desc: |-
Enables <ph name="GOOGLE_TASKS_NAME">Google Tasks</ph> integration on <ph name="PRODUCT_OS_NAME">$2<ex>Google ChromeOS</ex></ph>.
If this policy is enabled or left unset, the <ph name="GOOGLE_TASKS_NAME">Google Tasks</ph> integration is enabled for enterprise users.
If this policy is disabled, the <ph name="GOOGLE_TASKS_NAME">Google Tasks</ph> integration is disabled for enterprise users.
example_value: true
features:
dynamic_refresh: true
per_profile: true
items:
- caption: Enable <ph name="GOOGLE_TASKS_NAME">Google Tasks</ph> integration.
value: true
- caption: Disable <ph name="GOOGLE_TASKS_NAME">Google Tasks</ph> integration.
value: false
owners:
- amitrokhin@google.com
- file://ash/glanceables/OWNERS
schema:
type: boolean
future_on:
- chrome_os
tags: []
type: main

@ -0,0 +1,15 @@
[
{
"os": [
"chromeos_ash"
],
"simple_policy_pref_mapping_test": {
"pref_name": "ash.classroom_integration_enabled",
"default_value": true,
"values_to_test": [
true,
false
]
}
}
]

@ -0,0 +1,15 @@
[
{
"os": [
"chromeos_ash"
],
"simple_policy_pref_mapping_test": {
"pref_name": "ash.tasks_integration_enabled",
"default_value": true,
"values_to_test": [
true,
false
]
}
}
]

@ -23,9 +23,11 @@ tags must be opened and closed on the same line to avoid validation errors.
* Google Admin console: `<ph name="GOOGLE_ADMIN_CONSOLE_PRODUCT_NAME">Google Admin console</ph>`
* Google Calendar: `<ph name="GOOGLE_CALENDAR_NAME">Google Calendar</ph>`
* Google Cast: `<ph name="PRODUCT_NAME">Google Cast</ph>`
* Google Classroom: `<ph name="GOOGLE_CLASSROOM_NAME">Google Classroom</ph>`
* Google Cloud Print: `<ph name="CLOUD_PRINT_NAME">Google Cloud Print</ph>`
* Google Drive: `<ph name="GOOGLE_DRIVE_NAME">Google Drive</ph>`
* Google Photos: `<ph name="GOOGLE_PHOTOS_PRODUCT_NAME">Google Photos</ph>`
* Google Tasks: `<ph name="GOOGLE_TASKS_NAME">Google Tasks</ph>`
* Google Update: `<ph name="GOOGLE_UPDATE_NAME">Google Update</ph>`
* Google Workspace: `<ph name="GOOGLE_WORKSPACE_PRODUCT_NAME">Google Workspace</ph>`
* Lacros: `<ph name="LACROS_NAME">Lacros</ph>`

@ -2081,6 +2081,8 @@ chromium-metrics-reviews@google.com.
<int value="1239" label="ProfileLabel"/>
<int value="1240" label="PrivacySandboxFingerprintingProtectionEnabled"/>
<int value="1241" label="MultiScreenCaptureAllowedForUrls"/>
<int value="1242" label="ClassroomIntegrationEnabled"/>
<int value="1243" label="TasksIntegrationEnabled"/>
</enum>
<enum name="EnterprisePoliciesSources">