[GH-ISSUE #1491] Bar for disabled output can appear on another active monitor under niri #8880

Open
opened 2026-05-23 03:54:51 +01:00 by JakeStanger · 0 comments
Owner

Originally created by @jdksjfisdf on GitHub (May 16, 2026).
Original GitHub issue: https://github.com/JakeStanger/ironbar/issues/1491

Describe the bug
When running under niri with one active external monitor and one disabled internal panel, ironbar sometimes creates two bars on startup. The extra bar is not kept on the disabled output; instead, it appears on the active monitor, so two bars end up rendered on the same physical screen.
This looks like an output-binding issue rather than just an extra-output detection issue.
To reproduce
Steps to reproduce the behavior:

  1. Use niri as the compositor.
  2. Have two outputs available:
    • internal laptop panel (eDP-1)
    • one external monitor
  3. Make the external monitor active and the internal panel disabled.
  4. Start ironbar.
  5. Observe that sometimes two bars are rendered on the active monitor.
    Expected behavior
    If a disabled output is still reported by the compositor, ironbar should either:
  • bind the bar strictly to that output, or
  • not create/show a bar for that output at all
    It should never render that extra bar onto another active monitor.
    System information:
  • Distro: Arch Linux
  • Compositor: niri
  • Ironbar version: 0.18.0
    Configuration
Config ```toml position = "top" end type = "clock"
Styles /* default / irrelevant */
```
Originally created by @jdksjfisdf on GitHub (May 16, 2026). Original GitHub issue: https://github.com/JakeStanger/ironbar/issues/1491 **Describe the bug** When running under niri with one active external monitor and one disabled internal panel, ironbar sometimes creates two bars on startup. The extra bar is not kept on the disabled output; instead, it appears on the active monitor, so two bars end up rendered on the same physical screen. This looks like an output-binding issue rather than just an extra-output detection issue. **To reproduce** Steps to reproduce the behavior: 1. Use `niri` as the compositor. 2. Have two outputs available: - internal laptop panel (`eDP-1`) - one external monitor 3. Make the external monitor active and the internal panel disabled. 4. Start `ironbar`. 5. Observe that sometimes two bars are rendered on the active monitor. **Expected behavior** If a disabled output is still reported by the compositor, ironbar should either: - bind the bar strictly to that output, or - not create/show a bar for that output at all It should never render that extra bar onto another active monitor. **System information:** - Distro: Arch Linux - Compositor: niri - Ironbar version: 0.18.0 **Configuration** <!-- Share your bar configuration and stylesheet as applicable: --> <details><summary>Config</summary> ```toml position = "top" [[end]] type = "clock" </details> <details><summary>Styles</summary> /* default / irrelevant */ </details> ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
JakeStanger/ironbar#8880
No description provided.