Chromium Code Reviews| Index: chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc |
| diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc b/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc |
| index 0b2b7316476759df7392a118551411a653a858c6..25c830a1672f17e1790c3cfab49c90f9702f1cc6 100644 |
| --- a/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc |
| +++ b/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc |
| @@ -15,6 +15,7 @@ |
| #include "chrome/browser/chromeos/file_manager/app_installer.h" |
| #include "chrome/browser/chromeos/file_manager/fileapi_util.h" |
| #include "chrome/browser/chromeos/file_manager/zip_file_creator.h" |
| +#include "chrome/browser/chromeos/file_system_provider/service.h" |
| #include "chrome/browser/chromeos/profiles/profile_helper.h" |
| #include "chrome/browser/chromeos/settings/cros_settings.h" |
| #include "chrome/browser/devtools/devtools_window.h" |
| @@ -463,12 +464,40 @@ void FileManagerPrivateGetMimeTypeFunction::OnGetMimeType( |
| ExtensionFunction::ResponseAction |
| FileManagerPrivateIsPiexLoaderEnabledFunction::Run() { |
| #if defined(OFFICIAL_BUILD) |
| - return RespondNow(OneArgument( |
| - new base::FundamentalValue(true))); |
| + return RespondNow(OneArgument(new base::FundamentalValue(true))); |
|
hirono
2015/04/15 07:44:18
Thank you for fixing this!
|
| #else |
| - return RespondNow(OneArgument( |
| - new base::FundamentalValue(false))); |
| + return RespondNow(OneArgument(new base::FundamentalValue(false))); |
| #endif |
| } |
| +FileManagerPrivateGetProvidingExtensionsFunction:: |
| + FileManagerPrivateGetProvidingExtensionsFunction() |
| + : chrome_details_(this) { |
| +} |
| + |
| +ExtensionFunction::ResponseAction |
| +FileManagerPrivateGetProvidingExtensionsFunction::Run() { |
| + using chromeos::file_system_provider::Service; |
| + using chromeos::file_system_provider::ProvidingExtensionInfo; |
| + const Service* const service = Service::Get(chrome_details_.GetProfile()); |
| + const std::vector<ProvidingExtensionInfo> info_list = |
| + service->GetProvidingExtensionInfoList(); |
| + |
| + using api::file_manager_private::ProvidingExtension; |
| + std::vector<linked_ptr<ProvidingExtension>> providing_extensions; |
| + for (const auto& info : info_list) { |
| + const linked_ptr<ProvidingExtension> providing_extension( |
| + new ProvidingExtension); |
| + providing_extension->extension_id = info.extension_id; |
| + providing_extension->name = info.name; |
| + providing_extension->can_configure = info.can_configure; |
| + providing_extension->can_add = info.can_add; |
| + providing_extensions.push_back(providing_extension); |
| + } |
| + |
| + return RespondNow(ArgumentList( |
| + api::file_manager_private::GetProvidingExtensions::Results::Create( |
| + providing_extensions).Pass())); |
| +} |
| + |
| } // namespace extensions |