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 648c9d61bc70b66657ad1beab0e8be5b5cd7f421..143096434049f2dd0f0a93cd83661e98d0f8056c 100644 |
--- a/chrome/browser/extensions/api/media_galleries/media_galleries_api.cc |
+++ b/chrome/browser/extensions/api/media_galleries/media_galleries_api.cc |
@@ -73,24 +73,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; |
} |