backdrop click to close dialog

Massimo Melina committed Jan 10, 2022 at 20:05 UTC 2bc572e701a95d56c72f95f5398997c116ec7028
2 files changed +13 -3
frontend/src/dialog.ts
+13 -2
@@ -31,8 +31,19 @@ function Dialog(d:DialogOptions) {
31 }, [])
32 const ref = useRef<HTMLElement>()
33 d = { ...dialogsDefaults, ...d }
34 - return h('div', { ref, className:'dialog-backdrop', tabIndex:0, onKeyDown },
35 - h('div', { className:'dialog '+(d.className||'') },
34 + return h('div', {
35 + ref,
36 + className: 'dialog-backdrop',
37 + tabIndex: 0,
38 + onKeyDown,
39 + onClick: ()=> closeDialog()
40 + },
41 + h('div', {
42 + className:'dialog '+(d.className||''),
43 + onClick(ev:any){
44 + ev.stopPropagation()
45 + }
46 + },
47 d.closable || d.closable===undefined && h('button', { className:'dialog-icon dialog-closer', onClick:()=> closeDialog() }, d.closableContent),
48 d.icon && h('div', { className:'dialog-icon dialog-type' }, d.icon),
49 h('div', { className:'dialog-content' }, h(d.Content || 'div'))
todo.md
-1
@@ -1,5 +1,4 @@
1 # To do
2 -- backdrop click to close dialog
2 - inverted order
3 - download counter
4 - update tests to SRP login