diff options
author | 2020-02-09 11:41:00 -0800 | |
---|---|---|
committer | 2020-02-09 11:57:34 -0800 | |
commit | dc4240e7026c6918d1043fd77ac62ecd0e00a69b (patch) | |
tree | 01df6807cb91c0c7c1e75b4136e66418dc93e4e9 /ui/static/js | |
parent | 997e9422eb26385f59190bee4dcdd996bd7b4982 (diff) | |
download | v2-dc4240e7026c6918d1043fd77ac62ecd0e00a69b.tar.gz v2-dc4240e7026c6918d1043fd77ac62ecd0e00a69b.tar.zst v2-dc4240e7026c6918d1043fd77ac62ecd0e00a69b.zip |
Add button to add to Home screen
Diffstat (limited to 'ui/static/js')
-rw-r--r-- | ui/static/js/bootstrap.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/ui/static/js/bootstrap.js b/ui/static/js/bootstrap.js index 7b9e94d3..a124da1e 100644 --- a/ui/static/js/bootstrap.js +++ b/ui/static/js/bootstrap.js @@ -69,4 +69,27 @@ document.addEventListener("DOMContentLoaded", function () { navigator.serviceWorker.register(scriptElement.src); } } + + window.addEventListener('beforeinstallprompt', (e) => { + // Prevent Chrome 67 and earlier from automatically showing the prompt. + e.preventDefault(); + + let deferredPrompt = e; + const promptHomeScreen = document.getElementById('prompt-home-screen'); + if (promptHomeScreen) { + promptHomeScreen.style.display = "block"; + + const btnAddToHomeScreen = document.getElementById('btn-add-to-home-screen'); + if (btnAddToHomeScreen) { + btnAddToHomeScreen.addEventListener('click', (e) => { + e.preventDefault(); + deferredPrompt.prompt(); + deferredPrompt.userChoice.then(() => { + deferredPrompt = null; + promptHomeScreen.style.display = "none"; + }); + }); + } + } + }); }); |