Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5444)

Unified Diff: chrome/browser/extensions/api/media_galleries/media_galleries_api.cc

Issue 1695563002: Media Galleries Partial Deprecation: Remove scan functionality. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 3a19e9803abbe03e89d7c3806589d6338eda92d2..39b6c694438a90743e28d848cd0b3f7fa638f24d 100644
--- a/chrome/browser/extensions/api/media_galleries/media_galleries_api.cc
+++ b/chrome/browser/extensions/api/media_galleries/media_galleries_api.cc
@@ -31,8 +31,6 @@
#include "chrome/browser/media_galleries/media_galleries_histograms.h"
#include "chrome/browser/media_galleries/media_galleries_permission_controller.h"
#include "chrome/browser/media_galleries/media_galleries_preferences.h"
-#include "chrome/browser/media_galleries/media_galleries_scan_result_controller.h"
-#include "chrome/browser/media_galleries/media_scan_manager.h"
#include "chrome/browser/platform_util.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/chrome_select_file_policy.h"
@@ -82,7 +80,6 @@ const char kFailedToSetGalleryPermission[] =
const char kInvalidGalleryIdMsg[] = "Invalid gallery id.";
const char kMissingEventListener[] = "Missing event listener registration.";
const char kNonExistentGalleryId[] = "Non-existent gallery id.";
-const char kNoScanPermission[] = "No permission to scan.";
const char kDeviceIdKey[] = "deviceId";
const char kGalleryIdKey[] = "galleryId";
@@ -107,10 +104,6 @@ GalleryWatchManager* gallery_watch_manager() {
return media_file_system_registry()->gallery_watch_manager();
}
-MediaScanManager* media_scan_manager() {
- return media_file_system_registry()->media_scan_manager();
-}
-
// Checks whether the MediaGalleries API is currently accessible (it may be
// disallowed even if an extension has the requisite permission). Then
// initializes the MediaGalleriesPreferences
@@ -217,20 +210,6 @@ base::ListValue* ConstructFileSystemList(
return list.release();
}
-bool CheckScanPermission(const extensions::Extension* extension,
- std::string* error) {
- DCHECK(extension);
- DCHECK(error);
- MediaGalleriesPermission::CheckParam scan_param(
- MediaGalleriesPermission::kScanPermission);
- bool has_scan_permission =
- extension->permissions_data()->CheckAPIPermissionWithParam(
- APIPermission::kMediaGalleries, &scan_param);
- if (!has_scan_permission)
- *error = kNoScanPermission;
- return has_scan_permission;
-}
-
class SelectDirectoryDialog : public ui::SelectFileDialog::Listener,
public base::RefCounted<SelectDirectoryDialog> {
public:
@@ -298,7 +277,6 @@ MediaGalleriesEventRouter::MediaGalleriesEventRouter(
this, MediaGalleries::OnGalleryChanged::kEventName);
gallery_watch_manager()->AddObserver(profile_, this);
- media_scan_manager()->AddObserver(profile_, this);
}
MediaGalleriesEventRouter::~MediaGalleriesEventRouter() {
@@ -311,8 +289,6 @@ void MediaGalleriesEventRouter::Shutdown() {
EventRouter::Get(profile_)->UnregisterObserver(this);
gallery_watch_manager()->RemoveObserver(profile_);
- media_scan_manager()->RemoveObserver(profile_);
- media_scan_manager()->CancelScansForProfile(profile_);
}
static base::LazyInstance<
@@ -340,57 +316,6 @@ bool MediaGalleriesEventRouter::ExtensionHasGalleryChangeListener(
extension_id, MediaGalleries::OnGalleryChanged::kEventName);
}
-bool MediaGalleriesEventRouter::ExtensionHasScanProgressListener(
- const std::string& extension_id) const {
- return EventRouter::Get(profile_)->ExtensionHasEventListener(
- extension_id, MediaGalleries::OnScanProgress::kEventName);
-}
-
-void MediaGalleriesEventRouter::OnScanStarted(const std::string& extension_id) {
- MediaGalleries::ScanProgressDetails details;
- details.type = MediaGalleries::SCAN_PROGRESS_TYPE_START;
- DispatchEventToExtension(extension_id,
- events::MEDIA_GALLERIES_ON_SCAN_PROGRESS,
- MediaGalleries::OnScanProgress::kEventName,
- MediaGalleries::OnScanProgress::Create(details));
-}
-
-void MediaGalleriesEventRouter::OnScanCancelled(
- const std::string& extension_id) {
- MediaGalleries::ScanProgressDetails details;
- details.type = MediaGalleries::SCAN_PROGRESS_TYPE_CANCEL;
- DispatchEventToExtension(extension_id,
- events::MEDIA_GALLERIES_ON_SCAN_PROGRESS,
- MediaGalleries::OnScanProgress::kEventName,
- MediaGalleries::OnScanProgress::Create(details));
-}
-
-void MediaGalleriesEventRouter::OnScanFinished(
- const std::string& extension_id, int gallery_count,
- const MediaGalleryScanResult& file_counts) {
- media_galleries::UsageCount(media_galleries::SCAN_FINISHED);
- MediaGalleries::ScanProgressDetails details;
- details.type = MediaGalleries::SCAN_PROGRESS_TYPE_FINISH;
- details.gallery_count.reset(new int(gallery_count));
- details.audio_count.reset(new int(file_counts.audio_count));
- details.image_count.reset(new int(file_counts.image_count));
- details.video_count.reset(new int(file_counts.video_count));
- DispatchEventToExtension(extension_id,
- events::MEDIA_GALLERIES_ON_SCAN_PROGRESS,
- MediaGalleries::OnScanProgress::kEventName,
- MediaGalleries::OnScanProgress::Create(details));
-}
-
-void MediaGalleriesEventRouter::OnScanError(
- const std::string& extension_id) {
- MediaGalleries::ScanProgressDetails details;
- details.type = MediaGalleries::SCAN_PROGRESS_TYPE_ERROR;
- DispatchEventToExtension(extension_id,
- events::MEDIA_GALLERIES_ON_SCAN_PROGRESS,
- MediaGalleries::OnScanProgress::kEventName,
- MediaGalleries::OnScanProgress::Create(details));
-}
-
void MediaGalleriesEventRouter::DispatchEventToExtension(
const std::string& extension_id,
events::HistogramValue histogram_value,
@@ -765,135 +690,6 @@ void MediaGalleriesDropPermissionForMediaFileSystemFunction::OnPreferencesInit(
}
///////////////////////////////////////////////////////////////////////////////
-// MediaGalleriesStartMediaScanFunction //
-///////////////////////////////////////////////////////////////////////////////
-MediaGalleriesStartMediaScanFunction::~MediaGalleriesStartMediaScanFunction() {}
-
-bool MediaGalleriesStartMediaScanFunction::RunAsync() {
- media_galleries::UsageCount(media_galleries::START_MEDIA_SCAN);
- if (!CheckScanPermission(extension(), &error_)) {
- MediaGalleriesEventRouter::Get(GetProfile())
- ->OnScanError(extension()->id());
- return false;
- }
- return Setup(GetProfile(), &error_, base::Bind(
- &MediaGalleriesStartMediaScanFunction::OnPreferencesInit, this));
-}
-
-void MediaGalleriesStartMediaScanFunction::OnPreferencesInit() {
- DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
- MediaGalleriesEventRouter* api = MediaGalleriesEventRouter::Get(GetProfile());
- if (!api->ExtensionHasScanProgressListener(extension()->id())) {
- error_ = kMissingEventListener;
- SendResponse(false);
- return;
- }
-
- media_scan_manager()->StartScan(GetProfile(), extension(), user_gesture());
- SendResponse(true);
-}
-
-///////////////////////////////////////////////////////////////////////////////
-// MediaGalleriesCancelMediaScanFunction //
-///////////////////////////////////////////////////////////////////////////////
-MediaGalleriesCancelMediaScanFunction::
- ~MediaGalleriesCancelMediaScanFunction() {
-}
-
-bool MediaGalleriesCancelMediaScanFunction::RunAsync() {
- media_galleries::UsageCount(media_galleries::CANCEL_MEDIA_SCAN);
- if (!CheckScanPermission(extension(), &error_)) {
- MediaGalleriesEventRouter::Get(GetProfile())
- ->OnScanError(extension()->id());
- return false;
- }
- return Setup(GetProfile(), &error_, base::Bind(
- &MediaGalleriesCancelMediaScanFunction::OnPreferencesInit, this));
-}
-
-void MediaGalleriesCancelMediaScanFunction::OnPreferencesInit() {
- DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
- media_scan_manager()->CancelScan(GetProfile(), extension());
- SendResponse(true);
-}
-
-///////////////////////////////////////////////////////////////////////////////
-// MediaGalleriesAddScanResultsFunction //
-///////////////////////////////////////////////////////////////////////////////
-MediaGalleriesAddScanResultsFunction::~MediaGalleriesAddScanResultsFunction() {}
-
-bool MediaGalleriesAddScanResultsFunction::RunAsync() {
- media_galleries::UsageCount(media_galleries::ADD_SCAN_RESULTS);
- if (!CheckScanPermission(extension(), &error_)) {
- // We don't fire a scan progress error here, as it would be unintuitive.
- return false;
- }
- if (!user_gesture())
- return false;
-
- return Setup(GetProfile(), &error_, base::Bind(
- &MediaGalleriesAddScanResultsFunction::OnPreferencesInit, this));
-}
-
-MediaGalleriesScanResultController*
-MediaGalleriesAddScanResultsFunction::MakeDialog(
- content::WebContents* web_contents,
- const extensions::Extension& extension,
- const base::Closure& on_finish) {
- // Controller will delete itself.
- return new MediaGalleriesScanResultController(web_contents, extension,
- on_finish);
-}
-
-void MediaGalleriesAddScanResultsFunction::OnPreferencesInit() {
- DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
- MediaGalleriesPreferences* preferences =
- media_file_system_registry()->GetPreferences(GetProfile());
- if (MediaGalleriesScanResultController::ScanResultCountForExtension(
- preferences, extension()) == 0) {
- GetAndReturnGalleries();
- return;
- }
-
- WebContents* contents =
- ChromeExtensionFunctionDetails(this).GetOriginWebContents();
- if (!contents) {
- SendResponse(false);
- return;
- }
-
- base::Closure cb = base::Bind(
- &MediaGalleriesAddScanResultsFunction::GetAndReturnGalleries, this);
- MakeDialog(contents, *extension(), cb);
-}
-
-void MediaGalleriesAddScanResultsFunction::GetAndReturnGalleries() {
- if (!render_frame_host()) {
- ReturnGalleries(std::vector<MediaFileSystemInfo>());
- return;
- }
- MediaFileSystemRegistry* registry = media_file_system_registry();
- DCHECK(registry->GetPreferences(GetProfile())->IsInitialized());
- registry->GetMediaFileSystemsForExtension(
- GetSenderWebContents(), extension(),
- base::Bind(&MediaGalleriesAddScanResultsFunction::ReturnGalleries, this));
-}
-
-void MediaGalleriesAddScanResultsFunction::ReturnGalleries(
- const std::vector<MediaFileSystemInfo>& filesystems) {
- scoped_ptr<base::ListValue> list(
- ConstructFileSystemList(render_frame_host(), extension(), filesystems));
- if (!list.get()) {
- SendResponse(false);
- return;
- }
-
- // The custom JS binding will use this list to create DOMFileSystem objects.
- SetResult(list.release());
- SendResponse(true);
-}
-
-///////////////////////////////////////////////////////////////////////////////
// MediaGalleriesGetMetadataFunction //
///////////////////////////////////////////////////////////////////////////////
MediaGalleriesGetMetadataFunction::~MediaGalleriesGetMetadataFunction() {}

Powered by Google App Engine
This is Rietveld 408576698