Skip to content

Latest commit

 

History

History
51 lines (38 loc) · 5.11 KB

PLATFORMS.md

File metadata and controls

51 lines (38 loc) · 5.11 KB

Platforms where menubar is known to work

Continuously verified by E2E smoke tests.

Platform Status
macOS 15 (Sequoia) ✅ Pass
macOS 26 (Tahoe) ✅ Pass
macOS 27 (Golden Gate) ✅ Pass
Ubuntu 22.04 (Jammy Jellyfish) ✅ Pass
Ubuntu 24.04 (Noble Numbat) ✅ Pass
Ubuntu 26.04 (Resolute Raccoon) ✅ Pass
Windows Server 2022 ✅ Pass
Windows Server 2025 ✅ Pass

Continuously verified by visual tray rendering tests. Each run boots the menubar fixture, screenshots the OS panel, and asserts both the tray icon and the popover window are painted. These checks confirm rendering, not tray-anchored placement. See Window positioning on Linux.

Platform Tray + Window Screenshot
Linux (Budgie) ✅ Pass
viewlinux-budgie screenshot
Linux (Cinnamon) ✅ Pass
viewlinux-cinnamon screenshot
Linux (GNOME) ✅ Pass
viewlinux-gnome screenshot
Linux (KDE Plasma) ✅ Pass
viewlinux-kde screenshot
Linux (LXQt) ✅ Pass
viewlinux-lxqt screenshot
Linux (MATE) ✅ Pass
viewlinux-mate screenshot
Linux (Sway/Waybar) ✅ Pass
viewlinux-sway screenshot
Linux (Tint2) ✅ Pass
viewlinux-tint2 screenshot
Linux (Xfce) ✅ Pass
viewlinux-xfce screenshot
macOS 15 (Sequoia) ✅ Pass
viewmacos-15 screenshot
macOS 26 (Tahoe) ✅ Pass
viewmacos-26 screenshot
macOS 27 (Golden Gate) ✅ Pass
viewmacos-27 screenshot
Windows Server 2022 ✅ Pass
viewwindows-2022 screenshot
Windows Server 2025 ✅ Pass
viewwindows-2025 screenshot

Window positioning on Linux

The checks above confirm that the tray icon and popover window render. They do not assert that the popover is positioned next to the tray icon.

On native Wayland, tray-anchored positioning is not possible, and there is nothing the library can do about it. Two protocol limitations stack up: an application cannot set the position of its own window (setPosition is a no-op, getPosition reads back [0, 0]), and the tray icon, hosted by the panel via StatusNotifierItem, reports no coordinates. The compositor decides where the popover appears, which is usually the center of the screen. menubar logs a one-time warning when it detects the window could not be positioned.

Under X11 / XWayland, an application can position its own window, so the popover is placed where menubar computes it. (Some Linux panels still report no tray-icon coordinates over StatusNotifierItem, in which case the window falls back to a screen corner rather than sitting exactly under the icon.)

If a Wayland session places the popover in the wrong spot, running under XWayland with --ozone-platform=x11 restores positioning.