diff options
Diffstat (limited to 'main.js')
-rw-r--r-- | main.js | 20 |
1 files changed, 18 insertions, 2 deletions
@@ -97,7 +97,8 @@ function upload_image() { img.onload = () => draw(true); } -function save_image() { +function save_image(event) { + event.preventDefault(); draw(false); const dataUrl = canvas.toDataURL("image/png"); @@ -108,8 +109,23 @@ function save_image() { link.click(); } -function share_image() { +function share_image(event) { + event.preventDefault(); + if (!navigator.share) { + console.log("navigator.share does not exist"); + return; + } + + canvas.toBlob(async (blob) => { + if (!blob) return; + const file = new File([blob], 'imagine.png', {type: 'image/png'}); + try { + await navigator.share({files: [file]}); + } catch (error) { + console.log('Error sharing:', error); + } + }, 'image/png'); } function settings_apply(event) { |