implement messageBox.close()
This commit is contained in:
parent
8f1e8c8e47
commit
adfd94001b
|
@ -12,6 +12,19 @@ window.messageBox = {
|
|||
_resolve: null,
|
||||
};
|
||||
|
||||
messageBox.close = async isAnimated => {
|
||||
window.off('keydown', messageBox.listeners.key, true);
|
||||
window.off('scroll', messageBox.listeners.scroll);
|
||||
window.off('mouseup', messageBox.listeners.mouseUp);
|
||||
window.off('mousemove', messageBox.listeners.mouseMove);
|
||||
if (isAnimated) {
|
||||
await animateElement(messageBox.element, 'fadeout');
|
||||
}
|
||||
messageBox.element.remove();
|
||||
messageBox.element = null;
|
||||
messageBox._resolve = null;
|
||||
};
|
||||
|
||||
/**
|
||||
* @param {Object} params
|
||||
* @param {String} params.title
|
||||
|
@ -143,9 +156,7 @@ messageBox.show = async ({
|
|||
|
||||
function resolveWith(value) {
|
||||
setTimeout(messageBox._resolve, 0, value);
|
||||
unbindGlobalListeners();
|
||||
animateElement(messageBox.element, 'fadeout')
|
||||
.then(removeSelf);
|
||||
messageBox.close(true);
|
||||
if (messageBox.element.contains(document.activeElement)) {
|
||||
messageBox._originalFocus.focus();
|
||||
}
|
||||
|
@ -153,8 +164,7 @@ messageBox.show = async ({
|
|||
|
||||
function createElement() {
|
||||
if (messageBox.element) {
|
||||
unbindGlobalListeners();
|
||||
removeSelf();
|
||||
messageBox.close();
|
||||
}
|
||||
const id = 'message-box';
|
||||
messageBox.element =
|
||||
|
@ -186,19 +196,6 @@ messageBox.show = async ({
|
|||
}
|
||||
window.on('keydown', messageBox.listeners.key, true);
|
||||
}
|
||||
|
||||
function unbindGlobalListeners() {
|
||||
window.off('keydown', messageBox.listeners.key, true);
|
||||
window.off('scroll', messageBox.listeners.scroll);
|
||||
window.off('mouseup', messageBox.listeners.mouseUp);
|
||||
window.off('mousemove', messageBox.listeners.mouseMove);
|
||||
}
|
||||
|
||||
function removeSelf() {
|
||||
messageBox.element.remove();
|
||||
messageBox.element = null;
|
||||
messageBox._resolve = null;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
@ -159,8 +159,7 @@ function EmbedDialog(create) {
|
|||
});
|
||||
shown = true;
|
||||
} else if (!state && shown) {
|
||||
// FIXME: close the dialog
|
||||
// messageBoxProxy.close();
|
||||
messageBoxProxy.close();
|
||||
shown = false;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user