diff --git a/app/src/dialog/message.ts b/app/src/dialog/message.ts
index 18d22f3b2..8691b0339 100644
--- a/app/src/dialog/message.ts
+++ b/app/src/dialog/message.ts
@@ -55,9 +55,7 @@ export const showMessage = (message: string, timeout = 6000, type = "info", mess
}, timeout);
messageHTML = messageHTML.replace("
");
setTimeout(() => {
messagesElement.querySelectorAll(".b3-snackbar--hide").forEach(item => {
@@ -83,9 +81,21 @@ export const hideMessage = (id?: string) => {
messageElement.classList.add("b3-snackbar--hide");
setTimeout(() => {
messageElement.remove();
+ if (messagesElement.childElementCount === 0) {
+ hideMessage();
+ }
}, Constants.TIMEOUT_INPUT);
}
- if (messagesElement.childElementCount < 2) {
+ let hasShowItem = false
+ Array.from(messagesElement.children).find(item => {
+ if (!item.classList.contains("b3-snackbar--hide")) {
+ hasShowItem = true
+ return true;
+ }
+ })
+ if (hasShowItem) {
+ messagesElement.parentElement.classList.add("b3-snackbars--show");
+ } else {
messagesElement.parentElement.classList.remove("b3-snackbars--show");
}
} else {
diff --git a/app/src/protyle/upload/index.ts b/app/src/protyle/upload/index.ts
index 09e7c4168..2b13cd6ec 100644
--- a/app/src/protyle/upload/index.ts
+++ b/app/src/protyle/upload/index.ts
@@ -68,7 +68,7 @@ const validateFile = (protyle: IProtyle, files: File[]) => {
}
let msgId;
if (errorTip !== "" || uploadingStr !== "") {
- msgId = showMessage(`
${errorTip}${uploadingStr}
`);
+ msgId = showMessage(`
${errorTip}${uploadingStr}
`, -1);
}
return {files: uploadFileList, msgId};