| Index: chrome/browser/extensions/api/media_galleries_private/media_galleries_private_api.cc
|
| diff --git a/chrome/browser/extensions/api/media_galleries_private/media_galleries_private_api.cc b/chrome/browser/extensions/api/media_galleries_private/media_galleries_private_api.cc
|
| index 136aeeacb4ede8f4d37e6cf53a18d94d4e561bb3..9350683dcc5999868714271fb80294151b7259ec 100644
|
| --- a/chrome/browser/extensions/api/media_galleries_private/media_galleries_private_api.cc
|
| +++ b/chrome/browser/extensions/api/media_galleries_private/media_galleries_private_api.cc
|
| @@ -194,6 +194,7 @@
|
| return;
|
| }
|
|
|
| +#if defined(OS_WIN) || defined(OS_LINUX)
|
| MediaGalleriesPrivateEventRouter* router =
|
| MediaGalleriesPrivateAPI::Get(GetProfile())->GetEventRouter();
|
| DCHECK(router);
|
| @@ -209,6 +210,11 @@
|
| base::Bind(&MediaGalleriesPrivateAddGalleryWatchFunction::HandleResponse,
|
| this,
|
| gallery_pref_id));
|
| +#else
|
| + // Recursive gallery watch operation is not currently supported on Mac:
|
| + // crbug.com/144491
|
| + HandleResponse(gallery_pref_id, false);
|
| +#endif
|
| }
|
|
|
| void MediaGalleriesPrivateAddGalleryWatchFunction::HandleResponse(
|
| @@ -244,6 +250,8 @@
|
| if (!render_view_host() || !render_view_host()->GetProcess())
|
| return false;
|
|
|
| + // Remove gallery watch operation is currently supported on Mac:
|
| + // crbug.com/144491
|
| scoped_ptr<RemoveGalleryWatch::Params> params(
|
| RemoveGalleryWatch::Params::Create(*args_));
|
| EXTENSION_FUNCTION_VALIDATE(params.get());
|
| @@ -260,6 +268,7 @@
|
|
|
| void MediaGalleriesPrivateRemoveGalleryWatchFunction::OnPreferencesInit(
|
| const std::string& pref_id) {
|
| +#if defined(OS_WIN) || defined(OS_LINUX)
|
| base::FilePath gallery_file_path;
|
| MediaGalleryPrefId gallery_pref_id = 0;
|
| if (!GetGalleryFilePathAndId(pref_id,
|
| @@ -283,6 +292,7 @@
|
| GalleryWatchStateTracker* state_tracker = MediaGalleriesPrivateAPI::Get(
|
| GetProfile())->GetGalleryWatchStateTracker();
|
| state_tracker->OnGalleryWatchRemoved(extension_id(), gallery_pref_id);
|
| +#endif
|
| SendResponse(true);
|
| }
|
|
|
| @@ -310,6 +320,7 @@
|
|
|
| void MediaGalleriesPrivateGetAllGalleryWatchFunction::OnPreferencesInit() {
|
| std::vector<std::string> result;
|
| +#if defined(OS_WIN) || defined(OS_LINUX)
|
| GalleryWatchStateTracker* state_tracker = MediaGalleriesPrivateAPI::Get(
|
| GetProfile())->GetGalleryWatchStateTracker();
|
| MediaGalleryPrefIdSet gallery_ids =
|
| @@ -318,6 +329,7 @@
|
| iter != gallery_ids.end(); ++iter) {
|
| result.push_back(base::Uint64ToString(*iter));
|
| }
|
| +#endif
|
| results_ = GetAllGalleryWatch::Results::Create(result);
|
| SendResponse(true);
|
| }
|
| @@ -345,6 +357,7 @@
|
| }
|
|
|
| void MediaGalleriesPrivateRemoveAllGalleryWatchFunction::OnPreferencesInit() {
|
| +#if defined(OS_WIN) || defined(OS_LINUX)
|
| MediaGalleriesPreferences* preferences =
|
| g_browser_process->media_file_system_registry()->GetPreferences(
|
| GetProfile());
|
| @@ -352,6 +365,7 @@
|
| GetProfile())->GetGalleryWatchStateTracker();
|
| state_tracker->RemoveAllGalleryWatchersForExtension(
|
| extension_id(), preferences);
|
| +#endif
|
| SendResponse(true);
|
| }
|
|
|
|
|