diff --git a/apps/messages/ChangeLog b/apps/messages/ChangeLog index 6e0f540bb..59a647b58 100644 --- a/apps/messages/ChangeLog +++ b/apps/messages/ChangeLog @@ -55,3 +55,4 @@ 0.40: Use default Bangle formatter for booleans 0.41: Add notification icons in the widget 0.42: Separate buzz pattern for incoming calls + Fix messages ignoring "Vibrate: Off" setting diff --git a/apps/messages/widget.js b/apps/messages/widget.js index ffca9dab6..c8ae8d570 100644 --- a/apps/messages/widget.js +++ b/apps/messages/widget.js @@ -62,12 +62,15 @@ draw:function(recall) { Bangle.drawWidgets(); },buzz:function(msgSrc) { if ((require('Storage').readJSON('setting.json',1)||{}).quiet) return; // never buzz during Quiet Mode + var pattern; if (msgSrc != undefined && msgSrc.toLowerCase() == "phone") { // special vibration pattern for incoming calls - require("buzz").pattern((require('Storage').readJSON("messages.settings.json", true) || {}).vibrateCalls || ":"); + pattern = (require('Storage').readJSON("messages.settings.json", true) || {}).vibrateCalls; } else { - require("buzz").pattern((require('Storage').readJSON("messages.settings.json", true) || {}).vibrate || ":"); + pattern = (require('Storage').readJSON("messages.settings.json", true) || {}).vibrate; } + if (pattern === undefined) { pattern = ":"; } // pattern may be "", so we can't use || ":" here + require("buzz").pattern(pattern); },touch:function(b,c) { var w=WIDGETS["messages"]; if (!w||!w.width||c.xw.x+w.width||c.yw.y+w.iconwidth) return;