Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(483)

Side by Side Diff: chrome/browser/policy/configuration_policy_handler_list.cc

Issue 12217068: Add policies to control Chrome OS power management (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix copy&paste mistake. Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/policy/configuration_policy_handler_list.h" 5 #include "chrome/browser/policy/configuration_policy_handler_list.h"
6 6
7 #include <limits>
8
7 #include "base/prefs/pref_value_map.h" 9 #include "base/prefs/pref_value_map.h"
8 #include "base/stl_util.h" 10 #include "base/stl_util.h"
9 #include "base/values.h" 11 #include "base/values.h"
10 #include "chrome/browser/policy/configuration_policy_handler.h" 12 #include "chrome/browser/policy/configuration_policy_handler.h"
11 #include "chrome/browser/policy/policy_error_map.h" 13 #include "chrome/browser/policy/policy_error_map.h"
12 #include "chrome/browser/policy/policy_map.h" 14 #include "chrome/browser/policy/policy_map.h"
13 #include "chrome/common/extensions/manifest.h" 15 #include "chrome/common/extensions/manifest.h"
14 #include "chrome/common/pref_names.h" 16 #include "chrome/common/pref_names.h"
15 #include "chromeos/network/onc/onc_constants.h" 17 #include "chromeos/network/onc/onc_constants.h"
16 #include "grit/generated_resources.h" 18 #include "grit/generated_resources.h"
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after
339 Value::TYPE_BOOLEAN }, 341 Value::TYPE_BOOLEAN },
340 { key::kShowLogoutButtonInTray, 342 { key::kShowLogoutButtonInTray,
341 prefs::kShowLogoutButtonInTray, 343 prefs::kShowLogoutButtonInTray,
342 Value::TYPE_BOOLEAN }, 344 Value::TYPE_BOOLEAN },
343 { key::kShelfAutoHideBehavior, 345 { key::kShelfAutoHideBehavior,
344 prefs::kShelfAutoHideBehaviorLocal, 346 prefs::kShelfAutoHideBehaviorLocal,
345 Value::TYPE_STRING }, 347 Value::TYPE_STRING },
346 { key::kSessionLengthLimit, 348 { key::kSessionLengthLimit,
347 prefs::kSessionLengthLimit, 349 prefs::kSessionLengthLimit,
348 Value::TYPE_INTEGER }, 350 Value::TYPE_INTEGER },
351 { key::kPowerManagementUsesAudioActivity,
352 prefs::kPowerUseAudioActivity,
353 Value::TYPE_BOOLEAN },
354 { key::kPowerManagementUsesVideoActivity,
355 prefs::kPowerUseVideoActivity,
356 Value::TYPE_BOOLEAN },
349 #endif // defined(OS_CHROMEOS) 357 #endif // defined(OS_CHROMEOS)
350 358
351 #if !defined(OS_MACOSX) && !defined(OS_CHROMEOS) 359 #if !defined(OS_MACOSX) && !defined(OS_CHROMEOS)
352 { key::kBackgroundModeEnabled, 360 { key::kBackgroundModeEnabled,
353 prefs::kBackgroundModeEnabled, 361 prefs::kBackgroundModeEnabled,
354 Value::TYPE_BOOLEAN }, 362 Value::TYPE_BOOLEAN },
355 #endif // !defined(OS_MACOSX) && !defined(OS_CHROMEOS) 363 #endif // !defined(OS_MACOSX) && !defined(OS_CHROMEOS)
356 }; 364 };
357 365
358 // Mapping from extension type names to Manifest::Type. 366 // Mapping from extension type names to Manifest::Type.
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 #if defined(OS_CHROMEOS) 420 #if defined(OS_CHROMEOS)
413 handlers_.push_back( 421 handlers_.push_back(
414 new NetworkConfigurationPolicyHandler( 422 new NetworkConfigurationPolicyHandler(
415 key::kDeviceOpenNetworkConfiguration, 423 key::kDeviceOpenNetworkConfiguration,
416 chromeos::onc::ONC_SOURCE_DEVICE_POLICY)); 424 chromeos::onc::ONC_SOURCE_DEVICE_POLICY));
417 handlers_.push_back( 425 handlers_.push_back(
418 new NetworkConfigurationPolicyHandler( 426 new NetworkConfigurationPolicyHandler(
419 key::kOpenNetworkConfiguration, 427 key::kOpenNetworkConfiguration,
420 chromeos::onc::ONC_SOURCE_USER_POLICY)); 428 chromeos::onc::ONC_SOURCE_USER_POLICY));
421 handlers_.push_back(new PinnedLauncherAppsPolicyHandler()); 429 handlers_.push_back(new PinnedLauncherAppsPolicyHandler());
430
431 handlers_.push_back(
432 new IntRangePolicyHandler(
433 key::kScreenDimDelayAC,
434 prefs::kPowerAcScreenDimDelayMs,
435 0, INT_MAX));
436 handlers_.push_back(
437 new IntRangePolicyHandler(
438 key::kScreenOffDelayAC,
439 prefs::kPowerAcScreenOffDelayMs,
440 0, INT_MAX));
441 handlers_.push_back(
442 new IntRangePolicyHandler(
443 key::kScreenLockDelayAC,
444 prefs::kPowerAcScreenLockDelayMs,
445 0, INT_MAX));
446 handlers_.push_back(
447 new IntRangePolicyHandler(
448 key::kIdleDelayAC,
449 prefs::kPowerAcIdleDelayMs,
450 0, INT_MAX));
451 handlers_.push_back(
452 new IntRangePolicyHandler(
453 key::kScreenDimDelayBattery,
454 prefs::kPowerBatteryScreenDimDelayMs,
455 0, INT_MAX));
456 handlers_.push_back(
457 new IntRangePolicyHandler(
458 key::kScreenOffDelayBattery,
459 prefs::kPowerBatteryScreenOffDelayMs,
460 0, INT_MAX));
461 handlers_.push_back(
462 new IntRangePolicyHandler(
463 key::kScreenLockDelayBattery,
464 prefs::kPowerBatteryScreenLockDelayMs,
465 0, INT_MAX));
466 handlers_.push_back(
467 new IntRangePolicyHandler(
468 key::kIdleDelayBattery,
469 prefs::kPowerBatteryIdleDelayMs,
470 0, INT_MAX));
471 handlers_.push_back(
472 new IntRangePolicyHandler(
473 key::kIdleAction,
474 prefs::kPowerIdleAction,
475 0, 3));
476 handlers_.push_back(
477 new IntRangePolicyHandler(
478 key::kLidCloseAction,
479 prefs::kPowerLidClosedAction,
480 0, 3));
481 handlers_.push_back(
482 new IntPercentageToDoublePolicyHandler(
483 key::kPresentationIdleDelayScale,
484 prefs::kPowerPresentationIdleDelayFactor,
485 100, INT_MAX));
422 #endif // defined(OS_CHROMEOS) 486 #endif // defined(OS_CHROMEOS)
423 } 487 }
424 488
425 ConfigurationPolicyHandlerList::~ConfigurationPolicyHandlerList() { 489 ConfigurationPolicyHandlerList::~ConfigurationPolicyHandlerList() {
426 STLDeleteElements(&handlers_); 490 STLDeleteElements(&handlers_);
427 } 491 }
428 492
429 void ConfigurationPolicyHandlerList::ApplyPolicySettings( 493 void ConfigurationPolicyHandlerList::ApplyPolicySettings(
430 const PolicyMap& policies, 494 const PolicyMap& policies,
431 PrefValueMap* prefs, 495 PrefValueMap* prefs,
(...skipping 17 matching lines...) Expand all
449 } 513 }
450 514
451 void ConfigurationPolicyHandlerList::PrepareForDisplaying( 515 void ConfigurationPolicyHandlerList::PrepareForDisplaying(
452 PolicyMap* policies) const { 516 PolicyMap* policies) const {
453 std::vector<ConfigurationPolicyHandler*>::const_iterator handler; 517 std::vector<ConfigurationPolicyHandler*>::const_iterator handler;
454 for (handler = handlers_.begin(); handler != handlers_.end(); ++handler) 518 for (handler = handlers_.begin(); handler != handlers_.end(); ++handler)
455 (*handler)->PrepareForDisplaying(policies); 519 (*handler)->PrepareForDisplaying(policies);
456 } 520 }
457 521
458 } // namespace policy 522 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698