From 35f0ea062952e2404a4bd15b36174d90e821341a Mon Sep 17 00:00:00 2001
From: Patrizio Bekerle <patrizio@bekerle.com>
Date: Fri, 10 Jul 2020 13:56:59 +0200
Subject: [PATCH] Implement automatic dialog closing after local file upload
 (#6)

---
 packages/file-handling/src/file-source.js | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/packages/file-handling/src/file-source.js b/packages/file-handling/src/file-source.js
index c3c397a8..c6cf5542 100644
--- a/packages/file-handling/src/file-source.js
+++ b/packages/file-handling/src/file-source.js
@@ -82,9 +82,11 @@ export class FileSource extends ScopedElementsMixin(VPULitElement) {
                     break;
                 case "isDialogOpen":
                     if (this.isDialogOpen) {
+                        // this.setAttribute("dialog-open", "");
                         this.openDialog();
                     } else {
                         this.removeAttribute("dialog-open");
+                        // this.closeDialog();
                     }
 
                     break;
@@ -184,6 +186,8 @@ export class FileSource extends ScopedElementsMixin(VPULitElement) {
 
         // this.dispatchEvent(new CustomEvent("vpu-file-source-selection-finished",
         //     { "detail": {}, bubbles: true, composed: true }));
+
+        this.closeDialog();
     }
 
     /**
@@ -292,12 +296,16 @@ export class FileSource extends ScopedElementsMixin(VPULitElement) {
 
     openDialog() {
         console.log("openDialog");
-        console.log(this._('#modal-picker'));
         MicroModal.show(this._('#modal-picker'), {
             onClose: modal => { this.isDialogOpen = false; }
         });
     }
 
+    closeDialog() {
+        console.log("closeDialog");
+        MicroModal.close();
+    }
+
     static get styles() {
         // language=css
         return css`
-- 
GitLab