diff options
Diffstat (limited to 'web-ui/app/js/mail_view/ui/attachment_icon.js')
-rw-r--r-- | web-ui/app/js/mail_view/ui/attachment_icon.js | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/web-ui/app/js/mail_view/ui/attachment_icon.js b/web-ui/app/js/mail_view/ui/attachment_icon.js index 478853b0..6b9cb31c 100644 --- a/web-ui/app/js/mail_view/ui/attachment_icon.js +++ b/web-ui/app/js/mail_view/ui/attachment_icon.js @@ -34,12 +34,27 @@ define( this.trigger(document, events.mail.startUploadAttachment); }; + this.uploadInProgress = function (ev, data) { + this.attr.busy = true; + this.$node.addClass('busy'); + }; + + this.uploadFinished = function (ev, data) { + this.attr.busy = false; + this.$node.removeClass('busy'); + }; + this.after('initialize', function () { if (features.isEnabled('attachment')) { this.render(); + this.on(document, events.mail.uploadingAttachment, this.uploadInProgress); + this.on(document, events.mail.uploadedAttachment, this.uploadFinished); } - this.on(this.$node, 'click', this.triggerUploadAttachment); + this.on(this.$node, 'click', function() { + if (!this.attr.busy) { + this.triggerUploadAttachment(); + } + }); }); - }); }); |