Describe the bug
The behavior of Custom Context Menus doesn't follow the Typescript Definition as defined in the Simple JSON Format docs.
According to the Typescript Definition in the docs, using "type": "separator"
should be supported in Custom Context Menu (NEW).
Steps to reproduce:
-
Create a Show Custom Context Menu (NEW) action.
-
Enable
Retrieve Content Dynamically via Java Script / JSON
. -
Define a menu using a separator:
async function retrieveJSON() { let items = [ { "title": "Section 1" }, { "type": "separator" }, { "title": "Section 2" } ]; return JSON.stringify(items); }
-
Trigger the Custom Context Menu (NEW).
-
Unexpected behavior โ The separator doesn't render correctly. Instead it displays
NSMenuItem
:
This behavior is unexpected because the Typescript Definition includes the following and my version of BTT is ahead of version4.805
:// Represents the possible item types, matching the Swift enum. export type SimpleFormatItemType = | "standard" | "separator" //requires BTT 4.805, in previous versions set the title of an item to --- | "back" //floating menu only | "textField" //floating menu only | "slider"; //floating menu only
-
Defining the separator using the old method (i.e.
"title": "---"
) still works:async function retrieveJSON() { let items = [ { "title": "Section 1" }, { "title": "---" }, { "title": "Section 2" } ]; return JSON.stringify(items); }
Device information:
- Device: MacBook Pro (14-inch, 2021)
- macOS: 15.2 (24C5057p)
- BTT Version: 4.849 (2024103107)
- Alpha: 0 update(s) behind latest Alpha version 4.849 (2024103107).
- Regular: Installed version is ahead of latest Regular version 4.839.
Additional information (e.g. crash logs, related issues, etc.):