Chromium Code Reviews| Index: ui/file_manager/file_manager/foreground/js/file_tasks.js |
| diff --git a/ui/file_manager/file_manager/foreground/js/file_tasks.js b/ui/file_manager/file_manager/foreground/js/file_tasks.js |
| index 1096215199a1d6691d7d238adef44fd5e7bc1e8b..db80b2c0d4fcc32034f0865336c52ea1bb2a575b 100644 |
| --- a/ui/file_manager/file_manager/foreground/js/file_tasks.js |
| +++ b/ui/file_manager/file_manager/foreground/js/file_tasks.js |
| @@ -141,19 +141,7 @@ FileTasks.create = function(volumeManager, metadataModel, directoryModel, ui, |
| }); |
| var defaultTaskPromise = tasksPromise.then(function(tasks) { |
| - for (var i = 0; i < tasks.length; i++) { |
| - if (tasks[i].isDefault) { |
| - return tasks[i]; |
| - } |
| - } |
| - // If we haven't picked a default task yet, then just pick the first one |
| - // which is not generic file handler. |
| - for (var i = 0; i < tasks.length; i++) { |
| - if (!tasks[i].isGenericFileHandler) { |
| - return tasks[i]; |
| - } |
| - } |
| - return null; |
| + return FileTasks.getDefaultTask(tasks); |
| }); |
| return Promise.all([tasksPromise, defaultTaskPromise]).then( |
| @@ -380,6 +368,22 @@ FileTasks.annotateTasks_ = function(tasks, entries) { |
| if (!task.iconType && taskParts[1] === 'web-intent') { |
| task.iconType = 'generic'; |
| } |
| + |
| + // Add verb to title. |
| + if (task.verb) { |
| + var verb_button_label = 'OPEN_WITH_VERB_BUTTON_LABEL'; |
| + if (task.verb === 'Add to') { |
|
Devlin
2016/05/16 16:17:32
here, too, this looks like it would benefit from a
cmihail
2016/05/18 02:35:31
Done.
|
| + verb_button_label = 'ADD_TO_VERB_BUTTON_LABEL'; |
| + } else if (task.verb == 'Pack with') { |
| + verb_button_label = 'PACK_WITH_VERB_BUTTON_LABEL'; |
| + } else if (task.verb === "Open with") { |
| + // Nothing to do as same as default option. |
| + } else { |
| + console.error('Invalid task verb: ' + task.verb + '.'); |
| + } |
| + task.title = loadTimeData.getStringF(verb_button_label, task.title); |
| + } |
| + |
| result.push(task); |
| } |
| @@ -720,7 +724,7 @@ FileTasks.prototype.display = function(combobutton) { |
| } else { |
| combobutton.defaultItem = { |
| type: FileTasks.TaskMenuButtonItemType.ShowMenu, |
| - label: str('OPEN_WITH_BUTTON_LABEL') |
| + label: str('MORE_ACTIONS_BUTTON_LABEL') |
| }; |
| } |
| @@ -846,3 +850,31 @@ FileTasks.prototype.showTaskPicker = function(taskDialog, title, message, |
| onSuccess(item.task); |
| }); |
| }; |
| + |
| +/** |
| + * Gets the default task from tasks. In case there is no such task (i.e. all |
| + * tasks are generic file handlers), then return opt_taskToUseIfNoDefault or |
| + * null. |
| + * |
| + * @param {!Array<!Object>} tasks The list of tasks from where to choose the |
| + * default task. |
| + * @param {!Object=} opt_taskToUseIfNoDefault The task to return in case there |
| + * is no default task available in tasks. |
| + * @return {Object} opt_taskToUseIfNoDefault or null in case |
| + * opt_taskToUseIfNoDefault is undefined. |
| + */ |
| +FileTasks.getDefaultTask = function(tasks, opt_taskToUseIfNoDefault) { |
| + for (var i = 0; i < tasks.length; i++) { |
| + if (tasks[i].isDefault) { |
| + return tasks[i]; |
| + } |
| + } |
| + // If we haven't picked a default task yet, then just pick the first one |
| + // which is not generic file handler. |
| + for (var i = 0; i < tasks.length; i++) { |
| + if (!tasks[i].isGenericFileHandler) { |
| + return tasks[i]; |
| + } |
| + } |
| + return opt_taskToUseIfNoDefault ? opt_taskToUseIfNoDefault : null; |
| +}; |