diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index e64c9d914..5ba22dc4d 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -196,7 +196,7 @@ function showMusicMessage(msg) { msg.new = false; layout = undefined; if (wasNew) checkMessages({clockIfNoMsg:1,clockIfAllRead:1,showMsgIfUnread:0,openMusic:0}); - else checkMessages({clockIfNoMsg:0,clockIfAllRead:0,showMsgIfUnread:0,openMusic:0}); + else returnToMain(); } function updateLabels() { trackName = reduceStringAndPad(msg.track, trackScrollOffset, 13); @@ -304,7 +304,7 @@ function showMessageSettings(msg) { menu = Object.assign(menu, { /*LANG*/"Delete" : () => { MESSAGES = MESSAGES.filter(m=>m.id!=msg.id); - checkMessages({clockIfNoMsg:0,clockIfAllRead:0,showMsgIfUnread:0,openMusic:0}); + returnToMain(); }, }); @@ -315,25 +315,25 @@ function showMessageSettings(msg) { Bangle.messageIgnore(msg); MESSAGES = MESSAGES.filter(m=>m.id!=msg.id); } - checkMessages({clockIfNoMsg:0,clockIfAllRead:0,showMsgIfUnread:0,openMusic:0}); + returnToMain(); }); }; menu = Object.assign(menu, { /*LANG*/"Mark Unread" : () => { msg.new = true; - checkMessages({clockIfNoMsg:0,clockIfAllRead:0,showMsgIfUnread:0,openMusic:0}); + returnToMain(); }, /*LANG*/"Mark all read" : () => { MESSAGES.forEach(msg => msg.new = false); - checkMessages({clockIfNoMsg:0,clockIfAllRead:0,showMsgIfUnread:0,openMusic:0}); + returnToMain(); }, /*LANG*/"Delete all messages" : () => { E.showPrompt(/*LANG*/"Are you sure?", {title:/*LANG*/"Delete All Messages"}).then(isYes => { if (isYes) { MESSAGES = []; } - checkMessages({clockIfNoMsg:0,clockIfAllRead:0,showMsgIfUnread:0,openMusic:0}); + returnToMain(); }); }, }); @@ -349,7 +349,7 @@ function showMessage(msgid, persist) { clearInterval(updateLabelsInterval); updateLabelsInterval=undefined; } - if (!msg) return checkMessages({clockIfNoMsg:1,clockIfAllRead:0,showMsgIfUnread:0,openMusic}); // go home if no message found + if (!msg) return returnToClockIfEmpty(); // go home if no message found if (msg.id=="music") { cancelReloadTimeout(); // don't auto-reload to clock now return showMusicMessage(msg); @@ -399,7 +399,7 @@ function showMessage(msgid, persist) { layout = undefined; msg.new = false; // read mail cancelReloadTimeout(); // don't auto-reload to clock now - checkMessages({clockIfNoMsg:1,clockIfAllRead:0,showMsgIfUnread:0,openMusic}); + returnToClockIfEmpty(); } var negHandler,posHandler,footer = [ ]; if (msg.negative) { @@ -407,7 +407,7 @@ function showMessage(msgid, persist) { msg.new = false; cancelReloadTimeout(); // don't auto-reload to clock now Bangle.messageResponse(msg,false); - checkMessages({clockIfNoMsg:1,clockIfAllRead:1,showMsgIfUnread:settings.showMsgIfUnread,openMusic}); + returnToCheckMessages(); }; footer.push({type:"img",src:atob("PhAB4A8AAAAAAAPAfAMAAAAAD4PwHAAAAAA/H4DwAAAAAH78B8AAAAAA/+A/AAAAAAH/Af//////w/gP//////8P4D///////H/Af//////z/4D8AAAAAB+/AfAAAAAA/H4DwAAAAAPg/AcAAAAADwHwDAAAAAA4A8AAAAAAAA=="),col:"#f00",cb:negHandler}); } footer.push({fillx:1}); // push images to left/right @@ -421,7 +421,7 @@ function showMessage(msgid, persist) { Bluetooth.println(JSON.stringify(result)); replying = false; layout.render(); - checkMessages({clockIfNoMsg:1,clockIfAllRead:1,showMsgIfUnread:settings.showMsgIfUnread,openMusic}); + returnToCheckMessages(); }) .catch(() => { replying = false; @@ -435,7 +435,7 @@ function showMessage(msgid, persist) { msg.new = false; cancelReloadTimeout(); // don't auto-reload to clock now Bangle.messageResponse(msg,true); - checkMessages({clockIfNoMsg:1,clockIfAllRead:1,showMsgIfUnread:settings.showMsgIfUnread,openMusic}); + returnToCheckMessages(); }; footer.push({type:"img",src:atob("QRABAAAAAAAAAAOAAAAABgAAA8AAAAADgAAD4AAAAAHgAAPgAAAAAPgAA+AAAAAAfgAD4///////gAPh///////gA+D///////AD4H//////8cPgAAAAAAPw8+AAAAAAAfB/4AAAAAAA8B/gAAAAAABwB+AAAAAAADAB4AAAAAAAAABgAA=="),col:"#0f0",cb:posHandler}); } @@ -570,6 +570,17 @@ function checkMessages(options) { }); } +function returnToCheckMessages(clock) { + checkMessages({clockIfNoMsg:1,clockIfAllRead:1,showMsgIfUnread:settings.showMsgIfUnread,openMusic}); +} + +function returnToMain() { + checkMessages({clockIfNoMsg:0,clockIfAllRead:0,showMsgIfUnread:0,openMusic:0}); +} + +function returnToClockIfEmpty() { + checkMessages({clockIfNoMsg:1,clockIfAllRead:0,showMsgIfUnread:0,openMusic}); +} function cancelReloadTimeout() { if (!unreadTimeout) return;