diff --git a/apps/messagegui/ChangeLog b/apps/messagegui/ChangeLog index 7fa45c496..4fe0584d2 100644 --- a/apps/messagegui/ChangeLog +++ b/apps/messagegui/ChangeLog @@ -99,4 +99,5 @@ 0.71: Cancel buzzing when watch unlocked, or when different messages viewed On 2v18.64+ firmware, 'No Messages' now has a 'back' button 0.72: Nav message updastes don't automatically launch navigation menu unless they're new -0.73: Add sharp left+right nav icons \ No newline at end of file +0.73: Add sharp left+right nav icons +0.74: Add option for driving on left (affects roundabout icons in navigation) \ No newline at end of file diff --git a/apps/messagegui/app.js b/apps/messagegui/app.js index 2df9875a3..7aa4d432a 100644 --- a/apps/messagegui/app.js +++ b/apps/messagegui/app.js @@ -98,6 +98,7 @@ function showMapMessage(msg) { }else target = instr; } + var carIsRHD = !!settings.carIsRHD; switch (msg.action) { case "continue": img = "EBgBAIABwAPgD/Af+D/8f/773/PPY8cDwAPAA8ADwAPAA8AAAAPAA8ADwAAAA8ADwAPA";break; case "left": img = "GhcBAYAAAPAAAHwAAD4AAB8AAA+AAAf//8P///x///+PAAPx4AA8fAAHD4ABwfAAcDwAHAIABwAAAcAAAHAAABwAAAcAAAHAAABwAAAc";break; @@ -111,12 +112,11 @@ function showMapMessage(msg) { case "uturn_left": img = "GRiBAAAH4AAP/AAP/wAPj8APAfAPAHgHgB4DgA8BwAOA4AHAcADsOMB/HPA7zvgd9/gOf/gHH/gDh/gBwfgA4DgAcBgAOAAAHAAADgAABw==";break; case "uturn_right": img = "GRiBAAPwAAf+AAf/gAfj4AfAeAPAHgPADwHgA4DgAcBwAOA4AHAcBjhuB5x/A+57gP99wD/84A/8cAP8OAD8HAA4DgAMBwAAA4AAAcAAAA==";break; case "finish": img = "HhsBAcAAAD/AAAH/wAAPB4AAeA4AAcAcAAYIcAA4cMAA48MAA4cMAAYAcAAcAcAAcA4AAOA4AAOBxjwHBzjwHjj/4Dnn/4B3P/4B+Pj4A8fj8Acfj8AI//8AA//+AA/j+AB/j+AB/j/A";break; - case "roundabout_left": img = "HBaCAAADwAAAAAAAD/AAAVUAAD/wABVVUAD/wABVVVQD/wAAVABUD/wAAVAAFT/////wABX/////8AAF//////AABT/////wABUP/AAD/AAVA/8AA/8AVAD/wAD//VQAP/AAP/1QAA/wAA/9AAADwAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AA=";break; - case "roundabout_right": img = "HRaCAAAAAAAA8AAAP/8AAP8AAD///AA/8AA////AA/8AP/A/8AA/8A/wAP8AA/8P8AA/////8/wAD///////AAD//////8AAP////8P8ABUAAP/A/8AVQAD/wA//1UAA/8AA//VAAP/AAA/9AAA/wAAAPwAAA8AAAA/AAAAAAAAD8AAAAAAAAPwAAAAAAAA/AAAAAAAAD8AAAAAAAAPwAAAAAAA=";break; - case "roundabout_straight": img = "EBuCAAADwAAAD/AAAD/8AAD//wAD///AD///8D/P8/z/D/D//A/wPzAP8AwA//UAA//1QA//9VA/8AFUP8AAVD8AAFQ/AABUPwAAVD8AAFQ/wABUP/ABVA//9VAD//VAAP/1AAAP8AAAD/AAAA/wAA==";break; - case "roundabout_uturn": img = "ICCBAAAAAAAAAAAAAAAAAAAP4AAAH/AAAD/4AAB4fAAA8DwAAPAcAADgHgAA4B4AAPAcAADwPAAAeHwAADz4AAAc8AAABPAAAADwAAAY8YAAPPPAAD73gAAf/4AAD/8AABf8AAAb+AAAHfAAABzwAAAcYAAAAAAAAAAAAAAAAAAAAAAA";break; + case "roundabout_left": img = carIsRHD ? "HBaCAAADwAAAAAAAD/AAAVUAAD/wABVVUAD/wABVVVQD/wAAVABUD/wAAVAAFT/////wABX/////8AAF//////AABT/////wABUP/AAD/AAVA/8AA/8AVAD/wAD//VQAP/AAP/1QAA/wAA/9AAADwAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AA=" : "HRYCAAPAAAAAAAAD/AAD//AAA/8AD///AAP/AA////AD/wAD/wP/A/8AA/wAP8P/////AAP//////8AA///////AAD/P////8AAP8P/AABUAD/AP/AAFUA/8AP/AAFX//AAP/AAFf/wAAP8AAB/8AAAPAAAD8AAAAAAAAPwAAAAAAAA/AAAAAAAAD8AAAAAAAAPwAAAAAAAA/AAAAAAAAD8AAA==";break; + case "roundabout_right": img = carIsRHD ? "HRaCAAAAAAAA8AAAP/8AAP8AAD///AA/8AA////AA/8AP/A/8AA/8A/wAP8AA/8P8AA/////8/wAD///////AAD//////8AAP////8P8ABUAAP/A/8AVQAD/wA//1UAA/8AA//VAAP/AAA/9AAA/wAAAPwAAA8AAAA/AAAAAAAAD8AAAAAAAAPwAAAAAAAA/AAAAAAAAD8AAAAAAAAPwAAAAAAA=" : "HBYCAAAAAAPAAABVQAAP8AAFVVQAD/wAFVVVAAP/ABUAFQAA/8BUAAVAAD/wVAAP/////FAAD/////9QAA//////VAAP/////FQAP8AAP/AVAP/AAP/AFX//AAP/AAV//AAP/AAAf/AAD/AAAD/AAAPAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAA==";break; + case "roundabout_straight": img = carIsRHD ? "EBuCAAADwAAAD/AAAD/8AAD//wAD///AD///8D/P8/z/D/D//A/wPzAP8AwA//UAA//1QA//9VA/8AFUP8AAVD8AAFQ/AABUPwAAVD8AAFQ/wABUP/ABVA//9VAD//VAAP/1AAAP8AAAD/AAAA/wAA==" : "EBsCAAPAAAAP8AAAP/wAAP//AAP//8AP///wP8/z/P8P8P/8D/A/MA/wDABf/wABX//ABV//8BVAD/wVAAP8FQAA/BUAAPwVAAD8FQAA/BUAA/wVQA/8BV//8AFf/8AAX/8AAA/wAAAP8AAAD/AA";break; + case "roundabout_uturn": img = carIsRHD ? "ICCBAAAAAAAAAAAAAAAAAAAP4AAAH/AAAD/4AAB4fAAA8DwAAPAcAADgHgAA4B4AAPAcAADwPAAAeHwAADz4AAAc8AAABPAAAADwAAAY8YAAPPPAAD73gAAf/4AAD/8AABf8AAAb+AAAHfAAABzwAAAcYAAAAAAAAAAAAAAAAAAAAAAA" : "ICABAAAAAAAAAAAAAAAAAAfwAAAP+AAAH/wAAD4eAAA8DwAAOA8AAHgHAAB4BwAAOA8AADwPAAA+HgAAHzwAAA84AAAPIAAADwAAAY8YAAPPPAAB73wAAf/4AAD/8AAAP+gAAB/YAAAPuAAADzgAAAY4AAAAAAAAAAAAAAAAAAAAAAA=";break; } - //FIXME: what about countries where we drive on the right? How will we know to flip the icons? layout = new Layout({ type:"v", c: [ {type:"txt", font:street?fontMedium:fontLarge, label:target, bgCol:g.theme.bg2, col: g.theme.fg2, fillx:1, pad:3 }, diff --git a/apps/messagegui/metadata.json b/apps/messagegui/metadata.json index 31d7fe262..7fa7cee5d 100644 --- a/apps/messagegui/metadata.json +++ b/apps/messagegui/metadata.json @@ -2,7 +2,7 @@ "id": "messagegui", "name": "Message UI", "shortName": "Messages", - "version": "0.73", + "version": "0.74", "description": "Default app to display notifications from iOS and Gadgetbridge/Android", "icon": "app.png", "type": "app", diff --git a/apps/messages/ChangeLog b/apps/messages/ChangeLog index 5f4a81d1f..052916e64 100644 --- a/apps/messages/ChangeLog +++ b/apps/messages/ChangeLog @@ -5,3 +5,4 @@ 0.59: fixes message timeout by using setinterval, as it was intended. So the buzz is triggered every x seconds until the timeout occours. 0.60: Bump version to allow new buzz.js module to be loaded - fixes memory/performance hog when buzz called 0.61: Add repeatCalls option to allow different repeat settings for messages vs calls +0.62: Add option for driving on left (affects roundabout icons in navigation) \ No newline at end of file diff --git a/apps/messages/README.md b/apps/messages/README.md index dce2a26c1..c76555f9e 100644 --- a/apps/messages/README.md +++ b/apps/messages/README.md @@ -43,6 +43,28 @@ with a method called `open` that will cause it to be opened, with the optionally supplied message. See `apps/messagegui/lib.js` for an example. +## Settings + +You can configure settings by going to `Settings -> Apps -> Messages` + +There are several options to choose from: + +* **Vibrate** : Vibration pattern to use for messages +* **Vibrate for calls** : Vibration pattern to use for calls +* **Repeat** : How many times to vibrate for messages +* **Repeat for calls** : How many times to vibrate for calls +* **Vibrate timer** : How many seconds should we vibrate for? +* **Unread timer** : How long should the Messages app show an unread message for before going back to the clock? +* **Min Font** : Minimum font size for messages +* **Auto-Open Music** : Should the messages music screen auto open when music is played? +* **Unlock Watch** : When a message arrives should the watch be unlocked? +* **Flash Icon** : Should the messages icon in the widget flash when a message arrives? +* **Quiet mode disables auto-open** : When in quiet mode, should we not open the messages app for new messages? +* **Disable auto-open** : Should we not open the messages app for new messages? +* **Widget messages** : How many message icons should the widget show? +* **Icon color mode** : Should icons in widgets be coloured? +* **Car driver pos** : What side of the car is the driver on? This affects navigation icons for roundabouts + ## Requests Please file any issues on https://github.com/espruino/BangleApps/issues/new?title=[messages]%20library diff --git a/apps/messages/metadata.json b/apps/messages/metadata.json index 0ae661fd2..8197081bb 100644 --- a/apps/messages/metadata.json +++ b/apps/messages/metadata.json @@ -1,7 +1,7 @@ { "id": "messages", "name": "Messages", - "version": "0.61", + "version": "0.62", "description": "Library to handle, load and store message events received from Android/iOS", "icon": "app.png", "type": "module", diff --git a/apps/messages/settings.js b/apps/messages/settings.js index fa9fbe4f2..1d429580c 100644 --- a/apps/messages/settings.js +++ b/apps/messages/settings.js @@ -89,7 +89,12 @@ min: 0, max: iconColorModes.length - 1, format: v => iconColorModes[v], onchange: v => updateSetting("iconColorMode", iconColorModes[v]) - } + }, + /*LANG*/'Car driver pos': { // used by messagegui + value:!!settings().carIsRHD, + format: v => v ? /*LANG*/"Right" :/*LANG*/"Left", + onchange: v => updateSetting("carIsRHD", v) + }, }; E.showMenu(mainmenu); });