| Index: chrome/browser/policy/configuration_policy_handler_list.cc
|
| diff --git a/chrome/browser/policy/configuration_policy_handler_list.cc b/chrome/browser/policy/configuration_policy_handler_list.cc
|
| index 0becee35368839500d89fb66bbaac4202aca11c1..ffe9699bb180c7584c1e507d7b89d1dd3e7ece08 100644
|
| --- a/chrome/browser/policy/configuration_policy_handler_list.cc
|
| +++ b/chrome/browser/policy/configuration_policy_handler_list.cc
|
| @@ -20,6 +20,7 @@
|
| #if defined(OS_CHROMEOS)
|
| #include "ash/magnifier/magnifier_constants.h"
|
| #include "chrome/browser/chromeos/policy/configuration_policy_handler_chromeos.h"
|
| +#include "chromeos/dbus/power_policy_controller.h"
|
| #endif // defined(OS_CHROMEOS)
|
|
|
| namespace policy {
|
| @@ -418,6 +419,15 @@ StringToIntEnumListPolicyHandler::MappingEntry kExtensionAllowedTypesMap[] = {
|
| { "platform_app", extensions::Manifest::TYPE_PLATFORM_APP },
|
| };
|
|
|
| +#if defined (OS_CHROMEOS)
|
| +// Idle and lid close actions allowed on the login screen.
|
| +int kLoginScreenAllowedIdleAndLidCloseActions[] = {
|
| + chromeos::PowerPolicyController::ACTION_SUSPEND,
|
| + chromeos::PowerPolicyController::ACTION_SHUT_DOWN,
|
| + chromeos::PowerPolicyController::ACTION_DO_NOTHING,
|
| +};
|
| +#endif
|
| +
|
| } // namespace
|
|
|
| ConfigurationPolicyHandlerList::ConfigurationPolicyHandlerList() {
|
| @@ -529,17 +539,23 @@ ConfigurationPolicyHandlerList::ConfigurationPolicyHandlerList() {
|
| new IntRangePolicyHandler(
|
| key::kIdleActionAC,
|
| prefs::kPowerAcIdleAction,
|
| - 0, 3, false));
|
| + chromeos::PowerPolicyController::ACTION_SUSPEND,
|
| + chromeos::PowerPolicyController::ACTION_DO_NOTHING,
|
| + false));
|
| handlers_.push_back(
|
| new IntRangePolicyHandler(
|
| key::kIdleActionBattery,
|
| prefs::kPowerBatteryIdleAction,
|
| - 0, 3, false));
|
| + chromeos::PowerPolicyController::ACTION_SUSPEND,
|
| + chromeos::PowerPolicyController::ACTION_DO_NOTHING,
|
| + false));
|
| handlers_.push_back(
|
| new IntRangePolicyHandler(
|
| key::kLidCloseAction,
|
| prefs::kPowerLidClosedAction,
|
| - 0, 3, false));
|
| + chromeos::PowerPolicyController::ACTION_SUSPEND,
|
| + chromeos::PowerPolicyController::ACTION_DO_NOTHING,
|
| + false));
|
| handlers_.push_back(
|
| new IntPercentageToDoublePolicyHandler(
|
| key::kPresentationScreenDimDelayScale,
|
| @@ -550,6 +566,62 @@ ConfigurationPolicyHandlerList::ConfigurationPolicyHandlerList() {
|
| key::kUserActivityScreenDimDelayScale,
|
| prefs::kPowerUserActivityScreenDimDelayFactor,
|
| 100, INT_MAX, true));
|
| + handlers_.push_back(
|
| + new IntRangePolicyHandler(
|
| + key::kDeviceLoginScreenScreenDimDelayAC,
|
| + NULL,
|
| + 0, INT_MAX, true));
|
| + handlers_.push_back(
|
| + new IntRangePolicyHandler(
|
| + key::kDeviceLoginScreenScreenOffDelayAC,
|
| + NULL,
|
| + 0, INT_MAX, true));
|
| + handlers_.push_back(
|
| + new IntRangePolicyHandler(
|
| + key::kDeviceLoginScreenIdleDelayAC,
|
| + NULL,
|
| + 0, INT_MAX, true));
|
| + handlers_.push_back(
|
| + new IntRangePolicyHandler(
|
| + key::kDeviceLoginScreenScreenDimDelayBattery,
|
| + NULL,
|
| + 0, INT_MAX, true));
|
| + handlers_.push_back(
|
| + new IntRangePolicyHandler(
|
| + key::kDeviceLoginScreenScreenOffDelayBattery,
|
| + NULL,
|
| + 0, INT_MAX, true));
|
| + handlers_.push_back(
|
| + new IntRangePolicyHandler(
|
| + key::kDeviceLoginScreenIdleDelayBattery,
|
| + NULL,
|
| + 0, INT_MAX, true));
|
| + handlers_.push_back(
|
| + new IntSetPolicyHandler(
|
| + key::kDeviceLoginScreenIdleActionAC,
|
| + NULL,
|
| + kLoginScreenAllowedIdleAndLidCloseActions,
|
| + kLoginScreenAllowedIdleAndLidCloseActions +
|
| + arraysize(kLoginScreenAllowedIdleAndLidCloseActions)));
|
| + handlers_.push_back(
|
| + new IntSetPolicyHandler(
|
| + key::kDeviceLoginScreenIdleActionBattery,
|
| + NULL,
|
| + kLoginScreenAllowedIdleAndLidCloseActions,
|
| + kLoginScreenAllowedIdleAndLidCloseActions +
|
| + arraysize(kLoginScreenAllowedIdleAndLidCloseActions)));
|
| + handlers_.push_back(
|
| + new IntSetPolicyHandler(
|
| + key::kDeviceLoginScreenLidCloseAction,
|
| + NULL,
|
| + kLoginScreenAllowedIdleAndLidCloseActions,
|
| + kLoginScreenAllowedIdleAndLidCloseActions +
|
| + arraysize(kLoginScreenAllowedIdleAndLidCloseActions)));
|
| + handlers_.push_back(
|
| + new IntPercentageToDoublePolicyHandler(
|
| + key::kDeviceLoginScreenUserActivityScreenDimDelayScale,
|
| + NULL,
|
| + 100, INT_MAX, true));
|
| handlers_.push_back(new IntRangePolicyHandler(key::kUptimeLimit,
|
| prefs::kUptimeLimit,
|
| 3600, INT_MAX, true));
|
|
|