Chromium Code Reviews| Index: ui/file_manager/file_manager/foreground/js/file_manager_commands.js |
| diff --git a/ui/file_manager/file_manager/foreground/js/file_manager_commands.js b/ui/file_manager/file_manager/foreground/js/file_manager_commands.js |
| index 0440716654d090acab39e235d61d5a327794513f..78ba36123992a00233646583447b706c14950987 100644 |
| --- a/ui/file_manager/file_manager/foreground/js/file_manager_commands.js |
| +++ b/ui/file_manager/file_manager/foreground/js/file_manager_commands.js |
| @@ -1488,3 +1488,57 @@ CommandHandler.COMMANDS_['refresh'] = /** @type {Command} */ ({ |
| fileManager.directoryModel.getFileListSelection().getCheckSelectMode()); |
| } |
| }); |
| + |
| +/** |
| + * Refreshes the currently selected directory. |
| + */ |
| +CommandHandler.COMMANDS_['set-wallpaper'] = /** @type {Command} */ ({ |
| + /** |
| + * @param {!Event} event Command event. |
| + * @param {!FileManager} fileManager FileManager to use. |
| + */ |
| + execute: function(event, fileManager) { |
| + var entry = fileManager.getSelection().entries[0]; |
| + new Promise(function(resolve, reject) { |
| + entry.file(resolve, reject); |
| + }).then(function(blob) { |
| + var fileReader = new FileReader(); |
| + return new Promise(function(resolve, reject) { |
| + fileReader.onload = function() { |
| + resolve(this.result); |
| + }; |
| + fileReader.onError = function(err) { |
|
mtomasz
2016/02/12 04:30:51
nit: should it be onerror?
ryoh
2016/02/12 07:37:25
Done.
|
| + reject(err); |
| + }; |
| + fileReader.readAsArrayBuffer(blob); |
| + }) |
| + }).then(function(arrayBuffer) { |
| + chrome.wallpaper.setWallpaper( |
| + { |
| + 'data': arrayBuffer, |
|
mtomasz
2016/02/12 04:30:51
nit: no need for '' for keys.
{
data: ...,
la
ryoh
2016/02/12 07:37:25
Done.
|
| + 'layout': 'CENTER_CROPPED', |
| + 'filename': 'wallpaper' |
| + }, function() {}); |
| + }).catch(function() { |
| + fileManager.ui.alertDialog.showHtml( |
| + '', str('ERROR_INVALID_WALLPAPER'), null, null, null); |
| + }); |
| + }, |
| + canExecute: function(event, fileManager) { |
| + var entries = CommandUtil.getCommandEntries(event.target); |
| + if (entries.length === 0 ) { |
| + event.canExecute = false; |
| + event.command.setHidden(true); |
| + return; |
| + } |
| + var type = FileType.getType(entries[0]); |
| + if (entries.length !== 1 || type.type !== 'image') { |
| + event.canExecute = false; |
| + event.command.setHidden(true); |
| + return; |
| + } |
| + |
| + event.canExecute = type.subtype === 'JPEG' || type.subtype === 'PNG'; |
| + event.command.setHidden(false); |
| + } |
| +}); |