| Index: ui/file_manager/file_manager/common/js/importer_common.js
|
| diff --git a/ui/file_manager/file_manager/common/js/importer_common.js b/ui/file_manager/file_manager/common/js/importer_common.js
|
| index f65c5d21f67d4868773ad64225541aa4726a78c3..ea6faa2a75434a4b01675b081b757e1764ddfb25 100644
|
| --- a/ui/file_manager/file_manager/common/js/importer_common.js
|
| +++ b/ui/file_manager/file_manager/common/js/importer_common.js
|
| @@ -6,43 +6,10 @@
|
| var importer = importer || {};
|
|
|
| /**
|
| - * Volume types eligible for the affections of Cloud Import.
|
| - * @private @const {!Array.<!VolumeManagerCommon.VolumeType>}
|
| - */
|
| -importer.ELIGIBLE_VOLUME_TYPES_ = [
|
| - VolumeManagerCommon.VolumeType.MTP,
|
| - VolumeManagerCommon.VolumeType.REMOVABLE
|
| -];
|
| -
|
| -/**
|
| * @enum {string}
|
| */
|
| importer.Destination = {
|
| GOOGLE_DRIVE: 'google-drive'
|
| -};
|
| -
|
| -/**
|
| - * Returns true if the entry is a media file (and a descendant of a DCIM dir).
|
| - *
|
| - * @param {Entry} entry
|
| - * @return {boolean}
|
| - */
|
| -importer.isMediaEntry = function(entry) {
|
| - return !!entry &&
|
| - entry.isFile &&
|
| - FileType.isImageOrVideo(entry) &&
|
| - entry.fullPath.toUpperCase().indexOf('/DCIM/') === 0;
|
| -};
|
| -
|
| -/**
|
| - * Returns true if the volume is eligible for Cloud Import.
|
| - *
|
| - * @param {VolumeInfo} volumeInfo
|
| - * @return {boolean}
|
| - */
|
| -importer.isEligibleVolume = function(volumeInfo) {
|
| - return !!volumeInfo &&
|
| - importer.ELIGIBLE_VOLUME_TYPES_.indexOf(volumeInfo.volumeType) !== -1;
|
| };
|
|
|
| /**
|
| @@ -53,17 +20,20 @@
|
| * @return {boolean}
|
| */
|
| importer.isEligibleEntry = function(volumeInfoProvider, entry) {
|
| - console.assert(volumeInfoProvider !== null);
|
| - if (importer.isMediaEntry(entry)) {
|
| + assert(volumeInfoProvider != null);
|
| + if (entry && entry.isFile && FileType.isImageOrVideo(entry)) {
|
| var volumeInfo = volumeInfoProvider.getVolumeInfo(entry);
|
| - return importer.isEligibleVolume(volumeInfo);
|
| + if (volumeInfo &&
|
| + volumeInfo.volumeType == VolumeManagerCommon.VolumeType.REMOVABLE) {
|
| + return entry.fullPath.indexOf('/DCIM/') === 0;
|
| + }
|
| }
|
| return false;
|
| };
|
|
|
| /**
|
| * Returns true if the entry represents a media directory for the purposes
|
| - * of Cloud Import.
|
| + * of cloud import.
|
| *
|
| * @param {Entry} entry
|
| * @param {VolumeManagerCommon.VolumeInfoProvider} volumeInfoProvider
|
| @@ -74,14 +44,15 @@
|
| return false;
|
| }
|
|
|
| - var fullPath = entry.fullPath.toUpperCase();
|
| - if (fullPath !== '/DCIM' && fullPath !== '/DCIM/') {
|
| + if (entry.fullPath !== '/DCIM') {
|
| return false;
|
| }
|
|
|
| - console.assert(volumeInfoProvider !== null);
|
| + assert(volumeInfoProvider != null);
|
| var volumeInfo = volumeInfoProvider.getVolumeInfo(entry);
|
| - return importer.isEligibleVolume(volumeInfo);
|
| + return !!volumeInfo &&
|
| + volumeInfo.isType(VolumeManagerCommon.VolumeType.REMOVABLE) &&
|
| + volumeInfo.hasMedia;
|
| };
|
|
|
| /**
|
| @@ -89,11 +60,15 @@
|
| * is enabled.
|
| */
|
| importer.importEnabled = function() {
|
| + // TODO(smckay): Also verify that Drive is enabled and we're
|
| + // not running in guest mode.
|
| return new Promise(
|
| function(resolve, reject) {
|
| chrome.commandLinePrivate.hasSwitch(
|
| 'enable-cloud-backup',
|
| - /** @param {boolean} enabled */
|
| + /**
|
| + * @param {boolean} enabled
|
| + */
|
| function(enabled) {
|
| importer.lastKnownImportEnabled = enabled;
|
| resolve(enabled);
|
|
|