Chromium Code Reviews| Index: chrome/browser/resources/file_manager/foreground/js/file_tasks.js |
| diff --git a/chrome/browser/resources/file_manager/foreground/js/file_tasks.js b/chrome/browser/resources/file_manager/foreground/js/file_tasks.js |
| index 63e460ee8b81d753eb049763233266cf0f154340..cdcb9a3f90f070692fb63804c9f4a896b7b0222e 100644 |
| --- a/chrome/browser/resources/file_manager/foreground/js/file_tasks.js |
| +++ b/chrome/browser/resources/file_manager/foreground/js/file_tasks.js |
| @@ -46,6 +46,14 @@ FileTasks.CHROME_WEB_STORE_URL = 'https://chrome.google.com/webstore'; |
| FileTasks.WEB_STORE_HANDLER_BASE_URL = |
| 'https://chrome.google.com/webstore/category/collection/file_handlers'; |
| + |
| +/** |
| + * The app ID of the video player app. |
| + * @const |
| + * @type {string} |
| + */ |
| +FileTasks.VIDEO_PLAYER_ID = 'jcgeabjmjgoblfofpppfkcoakmfobdko'; |
| + |
| /** |
| * Returns URL of the Chrome Web Store which show apps supporting the given |
| * file-extension and mime-type. |
| @@ -189,7 +197,8 @@ FileTasks.isInternalTask_ = function(taskId) { |
| taskType === 'file' && |
| (actionId === 'play' || |
| actionId === 'mount-archive' || |
| - actionId === 'gallery')); |
| + actionId === 'gallery' || |
| + actionId === 'gallery-video')); |
| }; |
| /** |
| @@ -203,6 +212,7 @@ FileTasks.prototype.processTasks_ = function(tasks) { |
| var id = chrome.runtime.id; |
| var isOnDrive = false; |
| var fm = this.fileManager_; |
| + var isMultiple = (this.entries_.length > 1); |
| for (var index = 0; index < this.entries_.length; ++index) { |
| var locationInfo = fm.volumeManager.getLocationInfo(this.entries_[index]); |
| if (locationInfo && locationInfo.isDriveBased) { |
| @@ -221,6 +231,22 @@ FileTasks.prototype.processTasks_ = function(tasks) { |
| continue; |
| } |
| + // Skip video player app if multiple files are selected. |
|
hirono
2014/03/28 05:35:22
Not so strong opinion.
How about filtering the tas
yoshiki
2014/03/28 06:53:10
Done.
|
| + if (isMultiple && |
| + taskParts[0] === FileTasks.VIDEO_PLAYER_ID && |
| + taskParts[1] === 'app' && |
| + taskParts[2] === 'video') { |
| + continue; |
| + } |
| + |
| + // Skip gallaly (video mode) if a single files is selected. |
| + if (!isMultiple && |
| + taskParts[0] === id && |
| + taskParts[1] === 'file' && |
| + taskParts[2] === 'gallery-video') { |
| + continue; |
| + } |
| + |
| // Tweak images, titles of internal tasks. |
| if (taskParts[0] === id && taskParts[1] === 'file') { |
| if (taskParts[2] === 'play') { |
| @@ -231,7 +257,8 @@ FileTasks.prototype.processTasks_ = function(tasks) { |
| } else if (taskParts[2] === 'mount-archive') { |
| task.iconType = 'archive'; |
| task.title = loadTimeData.getString('MOUNT_ARCHIVE'); |
| - } else if (taskParts[2] === 'gallery') { |
| + } else if (taskParts[2] === 'gallery' || |
| + taskParts[2] === 'gallery-video') { |
| task.iconType = 'image'; |
| task.title = loadTimeData.getString('ACTION_OPEN'); |
| } else if (taskParts[2] === 'open-hosted-generic') { |
| @@ -552,7 +579,7 @@ FileTasks.prototype.executeInternalTask_ = function(id, entries) { |
| return; |
| } |
| - if (id === 'gallery') { |
| + if (id === 'gallery' || id === 'gallery-video') { |
| this.openGalleryInternal_(entries); |
| return; |
| } |