From 6ca9e2743860b56152931c0fb8d96745db51d942 Mon Sep 17 00:00:00 2001 From: Vincent Petry Date: Thu, 4 Sep 2014 12:33:38 +0200 Subject: [PATCH] Scroll to new file/folder after adding When creating a new file from the menu, the list now scrolls to that file. --- apps/files/js/file-upload.js | 4 ++-- apps/files/js/filelist.js | 11 ++++++++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/apps/files/js/file-upload.js b/apps/files/js/file-upload.js index 310799b951..460c243564 100644 --- a/apps/files/js/file-upload.js +++ b/apps/files/js/file-upload.js @@ -629,7 +629,7 @@ OC.Upload = { }, function(result) { if (result.status === 'success') { - FileList.add(result.data, {hidden: hidden, animate: true}); + FileList.add(result.data, {hidden: hidden, animate: true, scrollTo: true}); } else { OC.dialogs.alert(result.data.message, t('core', 'Could not create file')); } @@ -645,7 +645,7 @@ OC.Upload = { }, function(result) { if (result.status === 'success') { - FileList.add(result.data, {hidden: hidden, animate: true}); + FileList.add(result.data, {hidden: hidden, animate: true, scrollTo: true}); } else { OC.dialogs.alert(result.data.message, t('core', 'Could not create folder')); } diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js index 7b9811d50b..44f035fed1 100644 --- a/apps/files/js/filelist.js +++ b/apps/files/js/filelist.js @@ -722,9 +722,10 @@ * * @param fileData map of file attributes * @param options map of attributes: - * - "updateSummary": true to update the summary after adding (default), false otherwise - * - "silent": true to prevent firing events like "fileActionsReady" - * - "animate": true to animate preview loading (defaults to true here) + * @param options.updateSummary true to update the summary after adding (default), false otherwise + * @param options.silent true to prevent firing events like "fileActionsReady" + * @param options.animate true to animate preview loading (defaults to true here) + * @param options.scrollTo true to automatically scroll to the file's location * @return new tr element (not appended to the table) */ add: function(fileData, options) { @@ -773,6 +774,10 @@ }); } + if (options.scrollTo) { + this.scrollTo(fileData.name); + } + // defaults to true if not defined if (typeof(options.updateSummary) === 'undefined' || !!options.updateSummary) { this.fileSummary.add(fileData, true);