| Index: chrome/browser/extensions/chrome_process_manager_delegate.cc
|
| diff --git a/chrome/browser/extensions/chrome_process_manager_delegate.cc b/chrome/browser/extensions/chrome_process_manager_delegate.cc
|
| index 9e983ef02c50b43e1403cf82acec08e78694bffc..b5590eae7b4f0421c80cd14099bbce5c8be1f4b6 100644
|
| --- a/chrome/browser/extensions/chrome_process_manager_delegate.cc
|
| +++ b/chrome/browser/extensions/chrome_process_manager_delegate.cc
|
| @@ -22,9 +22,12 @@
|
| #include "extensions/browser/process_manager_factory.h"
|
| #include "extensions/common/extension.h"
|
| #include "extensions/common/one_shot_event.h"
|
| +#include "extensions/common/permissions/api_permission.h"
|
| +#include "extensions/common/permissions/permissions_data.h"
|
|
|
| #if defined(OS_CHROMEOS)
|
| #include "chrome/browser/chromeos/profiles/profile_helper.h"
|
| +#include "chromeos/chromeos_switches.h"
|
| #endif
|
|
|
| namespace extensions {
|
| @@ -69,6 +72,13 @@ bool ChromeProcessManagerDelegate::IsExtensionBackgroundPageAllowed(
|
| !profile->IsOffTheRecord();
|
|
|
| if (is_signin_profile) {
|
| + if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| + chromeos::switches::kEnableLockScreenApps) &&
|
| + extension.permissions_data()->HasAPIPermission(
|
| + APIPermission::kLockScreen)) {
|
| + return true;
|
| + }
|
| +
|
| // Check for flag.
|
| if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| switches::kDisableLoginScreenApps)) {
|
|
|