summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Bennett <lukeeeebennettplus@gmail.com>2018-03-23 19:13:54 +0000
committerLuke Bennett <lukeeeebennettplus@gmail.com>2018-03-23 19:13:54 +0000
commite829c39d51d1d4b6b057307049764f7a1146f242 (patch)
tree04d3762cc6b089fe8c8c4d54d4906990ec339455
parent2bb3e4c6e389915d2702ffcfaff5d31b6a41f582 (diff)
downloadgitlab-ce-e829c39d51d1d4b6b057307049764f7a1146f242.tar.gz
Tidy timeout and add jquery
-rw-r--r--app/assets/javascripts/shared/popover.js20
1 files changed, 12 insertions, 8 deletions
diff --git a/app/assets/javascripts/shared/popover.js b/app/assets/javascripts/shared/popover.js
index 48894c2b100..ae4bfa1c916 100644
--- a/app/assets/javascripts/shared/popover.js
+++ b/app/assets/javascripts/shared/popover.js
@@ -1,3 +1,5 @@
+import $ from 'jquery';
+
export default class Popover {
constructor(trigger, content) {
this.isOpen = false;
@@ -41,13 +43,15 @@ export default class Popover {
}
closePopoverMouseleave() {
- setTimeout(() => {
- if (this.$popover.is(':hover') ||
- (this.$popover.siblings('.popover').length > 0 &&
- this.$popover.siblings('.popover').is(':hover'))) return;
+ if (this.$popover.is(':hover') ||
+ (this.$popover.siblings('.popover').length > 0 &&
+ this.$popover.siblings('.popover').is(':hover'))) return;
+
+ this.closePopover();
+ }
- this.closePopover();
- }, 1500);
+ closePopoverMouseleaveDelayed() {
+ setTimeout(this.closePopoverMouseleave.bind(this), 1500);
}
registerClickOpenListener() {
@@ -59,8 +63,8 @@ export default class Popover {
}
registerMouseleaveCloseListener() {
- this.$popover.on('mouseleave.glPopover.close', this.closePopoverMouseleave.bind(this));
- this.$popover.siblings('.popover').on('mouseleave.glPopover.close', this.closePopoverMouseleave.bind(this));
+ this.$popover.on('mouseleave.glPopover.close', this.closePopoverMouseleaveDelayed.bind(this));
+ this.$popover.siblings('.popover').on('mouseleave.glPopover.close', this.closePopoverMouseleaveDelayed.bind(this));
}
destroyMouseleaveCloseListener() {