From 2d7245943373113cb4bc7e07ee3d46a9efe39d34 Mon Sep 17 00:00:00 2001 From: Jeroen Peters Date: Tue, 4 Jan 2022 00:44:48 +0100 Subject: [PATCH] APP ios: 0.08: Added more app identifiers, added 'cannot display' in case a message goes empty because of replacements --- apps.json | 2 +- apps/messages/ChangeLog | 1 + apps/messages/app.js | 1 + apps/messages/widget.js | 13 +++++++------ 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/apps.json b/apps.json index 609b7e002..179579cb9 100644 --- a/apps.json +++ b/apps.json @@ -77,7 +77,7 @@ { "id": "messages", "name": "Messages", - "version": "0.14", + "version": "0.15", "description": "App to display notifications from iOS and Gadgetbridge", "icon": "app.png", "type": "app", diff --git a/apps/messages/ChangeLog b/apps/messages/ChangeLog index 94848a26c..4049f3724 100644 --- a/apps/messages/ChangeLog +++ b/apps/messages/ChangeLog @@ -21,3 +21,4 @@ Add 'Delete All' option to message options Now update correctly when 'require("messages").clearAll()' is called 0.14: Hide widget when all unread notifications are dismissed from phone +0.15: Fix: Get dynamic dimensions of notify icon, fixed notification font diff --git a/apps/messages/app.js b/apps/messages/app.js index 79009e77e..345d2115a 100644 --- a/apps/messages/app.js +++ b/apps/messages/app.js @@ -243,6 +243,7 @@ function showMessage(msgid) { checkMessages({clockIfNoMsg:1,clockIfAllRead:1,showMsgIfUnread:1}); }}); } + g.setFont(fontMedium); lines = g.wrapString(msg.body, g.getWidth()-10); var body = (lines.length>4) ? lines.slice(0,4).join("\n")+"..." : lines.join("\n"); layout = new Layout({ type:"v", c: [ diff --git a/apps/messages/widget.js b/apps/messages/widget.js index f01d22ec7..05622b162 100644 --- a/apps/messages/widget.js +++ b/apps/messages/widget.js @@ -1,9 +1,10 @@ -WIDGETS["messages"]={area:"tl",width:0,draw:function() { +WIDGETS["messages"]={area:"tl", width:0, ICONS:[atob("GBiBAAAAAAAAAAAAAAAAAAAAAB//+DAADDAADDAADDwAPD8A/DOBzDDn/DA//DAHvDAPvjAPvjAPvjAPvh///gf/vAAD+AAB8AAAAA=="),atob("GBiBAAAAAAAAAAAAAAAAAAAAAB//+D///D///A//8CP/xDj/HD48DD+B8D/D+D/3vD/vvj/vvj/vvj/vvh/v/gfnvAAD+AAB8AAAAA==")], //icons should be equal size or first larger +draw:function() { Bangle.removeListener('touch', this.touch); if (!this.width) return; var c = (Date.now()-this.t)/1000; - g.reset().clearRect(this.x,this.y,this.x+this.width,this.y+23); - g.drawImage((c&1) ? atob("GBiBAAAAAAAAAAAAAAAAAAAAAB//+DAADDAADDAADDwAPD8A/DOBzDDn/DA//DAHvDAPvjAPvjAPvjAPvh///gf/vAAD+AAB8AAAAA==") : atob("GBiBAAAAAAAAAAAAAAAAAAAAAB//+D///D///A//8CP/xDj/HD48DD+B8D/D+D/3vD/vvj/vvj/vvj/vvh/v/gfnvAAD+AAB8AAAAA=="), this.x, this.y); + g.reset().clearRect(this.x, this.y, this.x+this.width, this.y+this.ICONS[0].charCodeAt(1)); + g.drawImage(this.ICONS[c&1], this.x, this.y); //if (c<60) Bangle.setLCDPower(1); // keep LCD on for 1 minute let settings = require('Storage').readJSON("messages.settings.json", true) || {}; if (settings.repeat===undefined) settings.repeat = 4; @@ -17,7 +18,7 @@ WIDGETS["messages"]={area:"tl",width:0,draw:function() { WIDGETS["messages"].t=Date.now(); // first time WIDGETS["messages"].l=Date.now()-10000; // last buzz if (quiet) WIDGETS["messages"].t -= 500000; // if quiet, set last time in the past so there is no buzzing - WIDGETS["messages"].width=64; + WIDGETS["messages"].width=this.ICONS[0].charCodeAt(0); Bangle.drawWidgets(); Bangle.setLCDPower(1);// turns screen on },hide:function() { @@ -36,7 +37,7 @@ WIDGETS["messages"]={area:"tl",width:0,draw:function() { b(); },touch:function(b,c) { var w=WIDGETS["messages"]; - if (!w||!w.width||c.xw.x+w.width||c.yw.y+23) return; + if (!w||!w.width||c.xw.x+w.width||c.yw.y+w.ICONS[0].charCodeAt(1)) return; load("messages.app.js"); }}; /* We might have returned here if we were in the Messages app for a @@ -45,4 +46,4 @@ want to buzz but should still show that there are unread messages. */ if (global.MESSAGES===undefined) (function() { var messages = require("Storage").readJSON("messages.json",1)||[]; if (messages.some(m=>m.new)) WIDGETS["messages"].show(true); -})(); +})(); \ No newline at end of file