diff --git a/apps/promenu/ChangeLog b/apps/promenu/ChangeLog
index e06007c98..0cbb4fdba 100644
--- a/apps/promenu/ChangeLog
+++ b/apps/promenu/ChangeLog
@@ -5,3 +5,5 @@
functionality, both via `.back` and `"< Back"` items, displaying an
entry and the `setUI` back widget. Fix `setUI`'s back overwrite. Add
support for scroll.
+0.05: Fix display of final menu item when no options are given and
+ handling of E.showMenu() with no arguments
diff --git a/apps/promenu/bootb2.js b/apps/promenu/bootb2.js
index 87d6e4a54..a41b8cb06 100644
--- a/apps/promenu/bootb2.js
+++ b/apps/promenu/bootb2.js
@@ -12,12 +12,10 @@ E.showMenu = function (items) {
g.fillPoly(RectRnd(x1, y1, x2, y2, r));
g.setColor(255, 255, 255);
};
+ var options = items && items[""] || {};
+ if (items)
+ delete items[""];
var menuItems = Object.keys(items);
- var options = items[""] || {};
- if (!(options instanceof Object))
- options = {};
- if (options)
- menuItems.splice(menuItems.indexOf(""), 1);
var fontHeight = options.fontHeight || 25;
var selected = options.scroll || options.selected || 0;
var ar = Bangle.appRect;
@@ -144,7 +142,7 @@ E.showMenu = function (items) {
l.draw();
var back = options.back;
if (!back) {
- var backItem = items["< Back"];
+ var backItem = items && items["< Back"];
if (typeof backItem === "function")
back = backItem;
else if (backItem && "back" in backItem)
diff --git a/apps/promenu/bootb2.ts b/apps/promenu/bootb2.ts
index c3ec89bea..abc243c45 100644
--- a/apps/promenu/bootb2.ts
+++ b/apps/promenu/bootb2.ts
@@ -1,6 +1,6 @@
type ActualMenuItem = Exclude