| Index: chrome/browser/about_flags.cc
|
| diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
| index 22fe278c36f7baac34a39fc2173afaa636646eda..79ca1f120037f19f43515b47e8084aa4a6a222d5 100644
|
| --- a/chrome/browser/about_flags.cc
|
| +++ b/chrome/browser/about_flags.cc
|
| @@ -86,6 +86,7 @@ void AddOsStrings(unsigned bitmask, ListValue* list) {
|
| {kOsLinux, "Linux"},
|
| {kOsCrOS, "Chrome OS"},
|
| {kOsAndroid, "Android"},
|
| + {kOsCrOSOwnerOnly, "Chrome OS (owner only)"},
|
| };
|
| for (size_t i = 0; i < ARRAYSIZE_UNSAFE(kBitsToOs); ++i)
|
| if (bitmask & kBitsToOs[i].bit)
|
| @@ -326,7 +327,7 @@ const Experiment kExperiments[] = {
|
| "threaded-compositing-mode",
|
| IDS_FLAGS_THREADED_COMPOSITING_MODE_NAME,
|
| IDS_FLAGS_THREADED_COMPOSITING_MODE_DESCRIPTION,
|
| - kOsDesktop & ~kOsCrOS,
|
| + kOsMac | kOsWin | kOsLinux,
|
| ENABLE_DISABLE_VALUE_TYPE(switches::kEnableThreadedCompositing,
|
| switches::kDisableThreadedCompositing)
|
| },
|
| @@ -725,7 +726,7 @@ const Experiment kExperiments[] = {
|
| "enable-managed-users",
|
| IDS_FLAGS_ENABLE_LOCALLY_MANAGED_USERS_NAME,
|
| IDS_FLAGS_ENABLE_LOCALLY_MANAGED_USERS_DESCRIPTION,
|
| - kOsAll,
|
| + kOsMac | kOsWin | kOsLinux | kOsAndroid | kOsCrOSOwnerOnly,
|
| SINGLE_VALUE_TYPE(switches::kEnableManagedUsers)
|
| },
|
| #if defined(USE_ASH)
|
| @@ -1008,28 +1009,28 @@ const Experiment kExperiments[] = {
|
| "disable-boot-animation",
|
| IDS_FLAGS_DISABLE_BOOT_ANIMATION,
|
| IDS_FLAGS_DISABLE_BOOT_ANIMATION_DESCRIPTION,
|
| - kOsCrOS,
|
| + kOsCrOSOwnerOnly,
|
| SINGLE_VALUE_TYPE(switches::kDisableBootAnimation),
|
| },
|
| {
|
| "disable-boot-animation2",
|
| IDS_FLAGS_DISABLE_BOOT_ANIMATION2,
|
| IDS_FLAGS_DISABLE_BOOT_ANIMATION2_DESCRIPTION,
|
| - kOsCrOS,
|
| + kOsCrOSOwnerOnly,
|
| SINGLE_VALUE_TYPE(ash::switches::kAshDisableBootAnimation2),
|
| },
|
| {
|
| "boot-animation-fucntion",
|
| IDS_FLAGS_ASH_BOOT_ANIMATION_FUNCTION,
|
| IDS_FLAGS_ASH_BOOT_ANIMATION_FUNCTION_DESCRIPTION,
|
| - kOsCrOS,
|
| + kOsCrOSOwnerOnly,
|
| MULTI_VALUE_TYPE(kAshBootAnimationFunction),
|
| },
|
| {
|
| "captive-portal-detector",
|
| IDS_FLAGS_CAPTIVE_PORTAL_DETECTOR_NAME,
|
| IDS_FLAGS_CAPTIVE_PORTAL_DETECTOR_DESCRIPTION,
|
| - kOsCrOS,
|
| + kOsCrOSOwnerOnly,
|
| MULTI_VALUE_TYPE(kChromeCaptivePortalDetectionChoices),
|
| },
|
| {
|
| @@ -1057,7 +1058,7 @@ const Experiment kExperiments[] = {
|
| "disable-app-mode",
|
| IDS_FLAGS_DISABLE_KIOSK_APPS_NAME,
|
| IDS_FLAGS_DISABLE_KIOSK_APPS_DESCRIPTION,
|
| - kOsCrOS,
|
| + kOsCrOSOwnerOnly,
|
| SINGLE_VALUE_TYPE(switches::kDisableAppMode),
|
| },
|
| {
|
| @@ -1498,6 +1499,10 @@ void GetSanitizedEnabledFlagsForCurrentPlatform(
|
| for (size_t i = 0; i < num_experiments; ++i) {
|
| if (experiments[i].supported_platforms & current_platform)
|
| AddInternalName(experiments[i], &platform_experiments);
|
| +#if defined(OS_CHROMEOS)
|
| + if (experiments[i].supported_platforms & kOsCrOSOwnerOnly)
|
| + AddInternalName(experiments[i], &platform_experiments);
|
| +#endif
|
| }
|
|
|
| std::set<std::string> new_enabled_experiments;
|
| @@ -1558,7 +1563,7 @@ void ConvertFlagsToSwitches(PrefService* prefs, CommandLine* command_line) {
|
| FlagsState::GetInstance()->ConvertFlagsToSwitches(prefs, command_line);
|
| }
|
|
|
| -ListValue* GetFlagsExperimentsData(PrefService* prefs) {
|
| +ListValue* GetFlagsExperimentsData(PrefService* prefs, FlagAccess access) {
|
| std::set<std::string> enabled_experiments;
|
| GetSanitizedEnabledFlags(prefs, &enabled_experiments);
|
|
|
| @@ -1584,7 +1589,12 @@ ListValue* GetFlagsExperimentsData(PrefService* prefs) {
|
| data->SetString("description",
|
| l10n_util::GetStringUTF16(
|
| experiment.visible_description_id));
|
| - bool supported = !!(experiment.supported_platforms & current_platform);
|
| + bool supported = (experiment.supported_platforms & current_platform) != 0;
|
| +#if defined(OS_CHROMEOS)
|
| + if (access == kOwnerAccessToFlags &&
|
| + (experiment.supported_platforms & kOsCrOSOwnerOnly) != 0)
|
| + supported = true;
|
| +#endif
|
| data->SetBoolean("supported", supported);
|
|
|
| ListValue* supported_platforms = new ListValue();
|
|
|