mirror of
https://github.com/Alexays/Waybar.git
synced 2026-08-18 11:07:06 +00:00
hide_if_duplicate() unconditionally re-ran handle_output_enter() with the bar's own wl_output for every non-squashed task, so any app_id or title event made the task visible on all bars and "all-outputs": false was effectively ignored. The un-squash path in handle_closed() showed the replacement task unconditionally, with the same effect. Track whether the toplevel is actually on the bar's output from the protocol's output_enter/output_leave events, split the button show/hide logic out of the protocol handlers, and gate every synthetic re-show on all-outputs or the tracked output membership. Fixes #5178