aboutsummaryrefslogtreecommitdiff
path: root/src/components/popover
diff options
context:
space:
mode:
authorHenry Jameson <me@hjkos.com>2022-10-09 23:42:36 +0300
committerHenry Jameson <me@hjkos.com>2022-10-09 23:42:36 +0300
commit296a6fa4e3d14f0c8ca091870fd4f7e85bc34df8 (patch)
treeac7459b9bfe97e83efe5cf24440dd0e42f7813a2 /src/components/popover
parent518fcf856a63c5b50745a6549e10b228d27c10d3 (diff)
some shitty initial implementation of emoji picker with popover
Diffstat (limited to 'src/components/popover')
-rw-r--r--src/components/popover/popover.js6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/components/popover/popover.js b/src/components/popover/popover.js
index 60c42f0f..3474d354 100644
--- a/src/components/popover/popover.js
+++ b/src/components/popover/popover.js
@@ -63,6 +63,7 @@ const Popover = {
// used to avoid blinking if hovered onto popover
graceTimeout: null,
parentPopover: null,
+ disableClickOutside: false,
childrenShown: new Set()
}
},
@@ -234,6 +235,10 @@ const Popover = {
},
showPopover () {
if (this.disabled) return
+ this.disableClickOutside = true
+ setTimeout(() => {
+ this.disableClickOutside = false
+ }, 0)
const wasHidden = this.hidden
this.hidden = false
this.parentPopover && this.parentPopover.onChildPopoverState(this, true)
@@ -294,6 +299,7 @@ const Popover = {
}
},
onClickOutside (e) {
+ if (this.disableClickOutside) return
if (this.hidden) return
if (this.$refs.content && this.$refs.content.contains(e.target)) return
if (this.$el.contains(e.target)) return