Skip to content

[Bug] KeyboardAccelerator with Cmd+Shift modifiers breaks entire MenuBarItem on Mac Catalyst #35279

@EQCourtney

Description

@EQCourtney

Description

Adding a KeyboardAccelerator with both Cmd and Shift modifiers to any MenuFlyoutItem inside a MenuBarItem causes that entire menu to stop opening on Mac Catalyst. The menu does not render when clicked and any keyboard shortcuts for items within it also stop working. Other MenuBarItem menus in the same app that do not use Cmd+Shift accelerators are unaffected.

This occurs regardless of modifier order (Cmd,Shift or Shift,Cmd) and whether the accelerator is defined in XAML or in code-behind.

The official documentation (https://learn.microsoft.com/en-us/dotnet/maui/user-interface/keyboard-accelerators) explicitly lists Cmd+Shift+S as a supported format on Mac Catalyst, so this is a regression from documented behaviour.

Steps to Reproduce

  1. Create a new .NET MAUI app targeting Mac Catalyst
  2. Add a MenuBarItem with a MenuFlyoutItem using a Cmd+Shift keyboard accelerator:
xml<ContentPage.MenuBarItems>
    <MenuBarItem Text="File">
        <MenuFlyoutItem Text="Save As" Command="{Binding SaveAsCommand}">
            <MenuFlyoutItem.KeyboardAccelerators>
                <KeyboardAccelerator Modifiers="Shift,Cmd" Key="S" />
            </MenuFlyoutItem.KeyboardAccelerators>
        </MenuFlyoutItem>
    </MenuBarItem>
</ContentPage.MenuBarItems>

  1. Run on Mac Catalyst
  2. Click the "File" menu

Expected behaviour: The File menu opens and displays "Save As" with the ⇧⌘S shortcut hint visible next to it.
Actual behaviour: The File menu does not open at all. The entire MenuBarItem is non-functional. Pressing Cmd+Shift+S also has no effect. Removing the Shift modifier (leaving only Cmd) immediately restores the menu to working order.

Additional notes:

  • The bug affects the entire parent MenuBarItem, not just the individual item with the accelerator
  • Cmd+Alt as a two-modifier combination works correctly on Mac Catalyst
  • The issue does not affect Windows (WinUI), where Ctrl+Shift works as expected

Link to public reproduction project repository

No response

Version with bug

10.0.10

Is this a regression from previous behavior?

Not sure, did not test other versions

Last version that worked well

Unknown/Other

Affected platforms

macOS

Affected platform versions

No response

Did you find any workaround?

Workaround is to use OnPlatform and substitute Alt,Cmd on Mac Catalyst, at the cost of a non-standard shortcut

Relevant log output

Metadata

Metadata

Assignees

No one assigned

    Labels

    partner/syncfusionIssues / PR's with Syncfusion collaborationplatform/macosmacOS / Mac Catalysts/triagedIssue has been revieweds/verifiedVerified / Reproducible Issue ready for Engineering Triaget/bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions