diff --git a/app/javascript/elements/download_button.js b/app/javascript/elements/download_button.js index 07145f506..09ac52fa6 100644 --- a/app/javascript/elements/download_button.js +++ b/app/javascript/elements/download_button.js @@ -23,7 +23,13 @@ export default targetable(class extends HTMLElement { const download = window.webkit?.messageHandlers?.download - if (download) return download.postMessage({ src: this.dataset.src }) + if (download) { + this.toggleState() + + document.addEventListener('native:download-end', () => this.toggleState(), { once: true }) + + return download.postMessage({ src: this.dataset.src }) + } this.toggleState()