From c3e494fa47fad92d05a09f4dc7f2bcb88f4e5495 Mon Sep 17 00:00:00 2001 From: Juho Heikka Date: Fri, 31 Dec 2021 13:13:47 +0200 Subject: [PATCH] Update trayMenus Extension API documentation Signed-off-by: Juho Heikka --- docs/extensions/guides/main-extension.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/extensions/guides/main-extension.md b/docs/extensions/guides/main-extension.md index bad8e448c0..a0e20880bf 100644 --- a/docs/extensions/guides/main-extension.md +++ b/docs/extensions/guides/main-extension.md @@ -97,7 +97,19 @@ This page would be defined in your extension's `Renderer.LensExtension` implemen ### `trayMenus` -`trayMenus` is a subset of Electron's [`MenuItemConstructorOptions`](https://www.electronjs.org/docs/v14-x-y/api/menu-item). Most importantly you can define a `label` and a `click` handler. Other properties are `submenu`, `enabled`, `visible`, `toolTip`, `id` and `type`. +`trayMenus` is an array of `TrayMenuRegistration` objects. Most importantly you can define a `label` and a `click` handler. Other properties are `submenu`, `enabled`, `toolTip`, `id` and `type`. + +``` typescript +interface TrayMenuRegistration { + label?: string; + click?: (menuItem: TrayMenuRegistration) => void; + id?: string; + type?: "normal" | "separator" | "submenu" + toolTip?: string; + enabled?: boolean; + submenu?: TrayMenuRegistration[] +} +``` The following example demonstrates how tray menus can be added from extension: