fix stats text animation not resetting properly

This commit is contained in:
Nolshine 2021-09-19 10:22:27 +01:00
parent 6f20b0bc30
commit db31b70efc

@ -10,21 +10,27 @@ let x: number | undefined;
* @param text The status text to display * @param text The status text to display
*/ */
export function createStatusText(text: string): void { export function createStatusText(text: string): void {
if (x !== undefined) {
clearTimeout(x);
// Likely not needed due to clearTimeout, but just in case...
x = undefined;
}
const statusElement: HTMLElement = getElementById("status-text"); const statusElement: HTMLElement = getElementById("status-text");
statusElement.style.display = "block";
statusElement.classList.add("status-text");
statusElement.innerText = text;
const handler: Action = () => { const handler: Action = () => {
statusElement.innerText = ""; statusElement.innerText = "";
statusElement.style.display = "none"; statusElement.style.display = "none";
statusElement.classList.remove("status-text"); statusElement.classList.remove("status-text");
}; };
if (x !== undefined) {
clearTimeout(x);
// Likely not needed due to clearTimeout, but just in case...
x = undefined;
// reset the element's animation
statusElement.style.animation = 'none';
setTimeout(function() {
statusElement.style.animation = '';
}, 10);
}
statusElement.style.display = "block";
statusElement.classList.add("status-text");
statusElement.innerText = text;
x = setTimeoutRef(handler, threeSeconds); x = setTimeoutRef(handler, threeSeconds);
} }