aboutsummaryrefslogtreecommitdiff
path: root/ext/bg/js/settings/modal.js
diff options
context:
space:
mode:
Diffstat (limited to 'ext/bg/js/settings/modal.js')
-rw-r--r--ext/bg/js/settings/modal.js20
1 files changed, 11 insertions, 9 deletions
diff --git a/ext/bg/js/settings/modal.js b/ext/bg/js/settings/modal.js
index 0cba167d..0b09f6ca 100644
--- a/ext/bg/js/settings/modal.js
+++ b/ext/bg/js/settings/modal.js
@@ -41,7 +41,7 @@ class Modal extends EventDispatcher {
}
}
- setVisible(value) {
+ setVisible(value, animate=true) {
value = !!value;
if (this._useJqueryModal()) {
this._getWrappedNode().modal(value ? 'show' : 'hide');
@@ -55,19 +55,21 @@ class Modal extends EventDispatcher {
}
if (value) {
- classList.add(this._openingClassName);
+ if (animate) { classList.add(this._openingClassName); }
+ classList.remove(this._closingClassName);
getComputedStyle(this._node).getPropertyValue('display'); // Force update of CSS display property, allowing animation
classList.add(this._visibleClassName);
- classList.remove(this._closingClassName);
- classList.remove(this._openingClassName);
+ if (animate) { classList.remove(this._openingClassName); }
this._node.focus();
} else {
- classList.add(this._closingClassName);
+ if (animate) { classList.add(this._closingClassName); }
classList.remove(this._visibleClassName);
- this._closeTimer = setTimeout(() => {
- this._closeTimer = null;
- classList.remove(this._closingClassName);
- }, this._closingAnimationDuration);
+ if (animate) {
+ this._closeTimer = setTimeout(() => {
+ this._closeTimer = null;
+ classList.remove(this._closingClassName);
+ }, this._closingAnimationDuration);
+ }
}
}
}