esc only closes tags popup if open (#10547)

This commit is contained in:
Isabelle Lavandero
2018-07-30 10:04:35 -04:00
committed by Matteo Pagliazzi
parent 508d832d73
commit 6b8784cf04

View File

@@ -1,6 +1,6 @@
<template lang="pug">
form(v-if="task", @submit.stop.prevent="submit()")
b-modal#task-modal(size="sm", @hidden="onClose()", @show="handleOpen()", @shown="focusInput()")
b-modal#task-modal(v-bind:no-close-on-esc="showTagsSelect", size="sm", @hidden="onClose()", @show="handleOpen()", @shown="focusInput()")
.task-modal-header(slot="modal-header", :class="cssClass('bg')")
.clearfix
h1.float-left {{ title }}
@@ -806,6 +806,12 @@ export default {
return this.selectedTags.slice(this.maxTags);
},
},
created () {
document.addEventListener('keyup', this.handleEsc);
},
destroyed () {
document.removeEventListener('keyup', this.handleEsc);
},
methods: {
...mapActions({saveTask: 'tasks:save', destroyTask: 'tasks:destroy', createTask: 'tasks:create'}),
async syncTask () {
@@ -991,6 +997,11 @@ export default {
focusInput () {
this.$refs.inputToFocus.focus();
},
handleEsc (e) {
if (e.keyCode === 27 && this.showTagsSelect) {
this.closeTagsPopup();
}
},
},
};
</script>