diff options
Diffstat (limited to 'apps/files/js')
-rw-r--r-- | apps/files/js/fileactions.js | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/apps/files/js/fileactions.js b/apps/files/js/fileactions.js index 9f6a77a3786..ec47534de21 100644 --- a/apps/files/js/fileactions.js +++ b/apps/files/js/fileactions.js @@ -479,11 +479,22 @@ var dir = context.dir || context.fileList.getCurrentDirectory(); var url = context.fileList.getDownloadUrl(filename, dir); - var icon = $(context.$file).find('.fileactions .action-download img'); + var downloadFileaction = $(context.$file).find('.fileactions .action-download'); + + // don't allow a second click on the download action + if(downloadFileaction.hasClass('disabled')) { + return; + } + + downloadFileaction.addClass('disabled'); + var icon = downloadFileaction.find('img'); var sourceImage = icon.attr('src'); icon.attr('src', sourceImage.replace('actions/download.svg', 'loading-small.gif')); + + // TODO proper detection of "download has started" setTimeout(function(){ icon.attr('src', sourceImage); + downloadFileaction.removeClass('disabled'); }, 7000); if (url) { |