Index: chrome/browser/extensions/api/media_galleries/media_galleries_api.cc |
diff --git a/chrome/browser/extensions/api/media_galleries/media_galleries_api.cc b/chrome/browser/extensions/api/media_galleries/media_galleries_api.cc |
index 2f4edc6014fce183eead92e9fdb3df45025d949b..5099cfea25a21946f5016c69b26d43471d067d8b 100644 |
--- a/chrome/browser/extensions/api/media_galleries/media_galleries_api.cc |
+++ b/chrome/browser/extensions/api/media_galleries/media_galleries_api.cc |
@@ -72,24 +72,34 @@ bool MediaGalleriesGetMediaFileSystemsFunction::RunImpl() { |
scoped_ptr<GetMediaFileSystems::Params> params( |
GetMediaFileSystems::Params::Create(*args_)); |
EXTENSION_FUNCTION_VALIDATE(params.get()); |
- MediaGalleries::GetMediaFileSystemsInteractivity interactive = "no"; |
- if (params->details.get() && params->details->interactive.get()) |
- interactive = *params->details->interactive; |
- |
- if (interactive == "yes") { |
- ShowDialog(); |
- return true; |
- } else if (interactive == "if_needed") { |
- MediaFileSystemRegistry::GetInstance()->GetMediaFileSystemsForExtension( |
- render_view_host(), GetExtension(), base::Bind( |
- &MediaGalleriesGetMediaFileSystemsFunction::ShowDialogIfNoGalleries, |
- this)); |
- return true; |
- } else if (interactive == "no") { |
- GetAndReturnGalleries(); |
- return true; |
+ MediaGalleries::GetMediaFileSystemsInteractivity interactive = |
+ MediaGalleries::MEDIA_GALLERIES_GET_MEDIA_FILE_SYSTEMS_INTERACTIVITY_NO; |
+ if (params->details.get() && params->details->interactive != MediaGalleries:: |
+ MEDIA_GALLERIES_GET_MEDIA_FILE_SYSTEMS_INTERACTIVITY_NONE) { |
+ interactive = params->details->interactive; |
} |
+ switch (interactive) { |
+ case MediaGalleries:: |
+ MEDIA_GALLERIES_GET_MEDIA_FILE_SYSTEMS_INTERACTIVITY_YES: |
+ ShowDialog(); |
+ return true; |
+ case MediaGalleries:: |
+ MEDIA_GALLERIES_GET_MEDIA_FILE_SYSTEMS_INTERACTIVITY_IF_NEEDED: |
+ MediaFileSystemRegistry::GetInstance()->GetMediaFileSystemsForExtension( |
+ render_view_host(), GetExtension(), base::Bind( |
+ &MediaGalleriesGetMediaFileSystemsFunction:: |
+ ShowDialogIfNoGalleries, |
+ this)); |
+ return true; |
+ case MediaGalleries:: |
+ MEDIA_GALLERIES_GET_MEDIA_FILE_SYSTEMS_INTERACTIVITY_NO: |
+ GetAndReturnGalleries(); |
+ return true; |
+ case MediaGalleries:: |
+ MEDIA_GALLERIES_GET_MEDIA_FILE_SYSTEMS_INTERACTIVITY_NONE: |
+ NOTREACHED(); |
+ } |
error_ = kInvalidInteractive; |
return false; |
} |