From dc65a7819df772c930fd871c69c383d047f1ab5c Mon Sep 17 00:00:00 2001 From: Akos Kitta Date: Fri, 3 Jun 2022 14:43:51 +0200 Subject: [PATCH] Disabled `MenuItem` `roles` on macOS. Closes #969 Upstream-ref: eclipse-theia/theia#11217 Signed-off-by: Akos Kitta --- .../theia/core/electron-main-menu-factory.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/arduino-ide-extension/src/electron-browser/theia/core/electron-main-menu-factory.ts b/arduino-ide-extension/src/electron-browser/theia/core/electron-main-menu-factory.ts index f18b07df8..98f8b76e0 100644 --- a/arduino-ide-extension/src/electron-browser/theia/core/electron-main-menu-factory.ts +++ b/arduino-ide-extension/src/electron-browser/theia/core/electron-main-menu-factory.ts @@ -8,6 +8,7 @@ import { } from '@theia/core/lib/common/menu'; import { ElectronMainMenuFactory as TheiaElectronMainMenuFactory, + ElectronMenuItemRole, ElectronMenuOptions, } from '@theia/core/lib/electron-browser/menu/electron-main-menu-factory'; import { @@ -123,6 +124,15 @@ export class ElectronMainMenuFactory extends TheiaElectronMainMenuFactory { return { label, submenu }; } + // eslint-disable-next-line @typescript-eslint/no-unused-vars + protected override roleFor(id: string): ElectronMenuItemRole | undefined { + // MenuItem `roles` are completely broken on macOS: + // - https://github.com/eclipse-theia/theia/issues/11217, + // - https://github.com/arduino/arduino-ide/issues/969 + // IDE2 uses commands instead. + return undefined; + } + protected override handleElectronDefault( menuNode: CompositeMenuNode, args: any[] = [],