| Index: chrome/browser/extensions/external_provider_impl.cc
|
| diff --git a/chrome/browser/extensions/external_provider_impl.cc b/chrome/browser/extensions/external_provider_impl.cc
|
| index ed1a417b4a6e72ae87f6782412eb48f0fd3d3156..a4a5e5d426f961bae55b606343abe9e3d8996715 100644
|
| --- a/chrome/browser/extensions/external_provider_impl.cc
|
| +++ b/chrome/browser/extensions/external_provider_impl.cc
|
| @@ -34,6 +34,7 @@
|
| #include "ui/base/l10n/l10n_util.h"
|
|
|
| #if defined(OS_CHROMEOS)
|
| +#include "chrome/browser/chromeos/app_mode/kiosk_app_manager.h"
|
| #include "chrome/browser/chromeos/customization_document.h"
|
| #include "chrome/browser/chromeos/extensions/device_local_account_external_policy_loader.h"
|
| #include "chrome/browser/chromeos/login/users/user.h"
|
| @@ -398,16 +399,31 @@ void ExternalProviderImpl::CreateExternalProviders(
|
| Extension::NO_FLAGS)));
|
| }
|
|
|
| + // Load the KioskAppExternalProvider when running in kiosk mode.
|
| + if (chrome::IsRunningInForcedAppMode()) {
|
| +#if defined(OS_CHROMEOS)
|
| + chromeos::KioskAppManager* kiosk_app_manager =
|
| + chromeos::KioskAppManager::Get();
|
| + DCHECK(kiosk_app_manager);
|
| + if (kiosk_app_manager && !kiosk_app_manager->external_loader_created()) {
|
| + provider_list->push_back(linked_ptr<ExternalProviderInterface>(
|
| + new ExternalProviderImpl(service,
|
| + kiosk_app_manager->CreateExternalLoader(),
|
| + profile,
|
| + Manifest::EXTERNAL_PREF,
|
| + Manifest::INVALID_LOCATION,
|
| + Extension::NO_FLAGS)));
|
| + }
|
| +#endif
|
| + return;
|
| + }
|
| +
|
| // In tests don't install extensions from default external sources.
|
| // It would only slowdown tests and make them flaky.
|
| if (CommandLine::ForCurrentProcess()->HasSwitch(
|
| switches::kDisableDefaultApps))
|
| return;
|
|
|
| - // No external app install in app mode.
|
| - if (chrome::IsRunningInForcedAppMode())
|
| - return;
|
| -
|
| // On Mac OS, items in /Library/... should be written by the superuser.
|
| // Check that all components of the path are writable by root only.
|
| ExternalPrefLoader::Options check_admin_permissions_on_mac;
|
|
|