polybar-dwm/include/modules
Tim Schumacher 281fdf6382
The xworkspaces module should wait for EWMH to become available (#2429)
* The xworkspaces module should wait for EWMH to become available

Before this change if EWMH wasn't available the xworkspaces module was
permanently disabled. When polybar was started alongside the window
manager e.g. from .xinitrc this caused a race condition between polybar
and the window manager and the xworkspaces module may or may not be
displayed. After this change polybar will wait for EWMH to become
available. This change closes #1915, see that issue for more details.

Curiously this only required the removal of the error condition which
used the be raised when EWMH wasn't available. The xworkspaces module
will show up on the bar as soon as the first EWMH event is processed by
the existing event handling code. I can't argue much about the
correctness of this patch but it seems to work flawlessly in my testing
with xmonad. I didn't test any other window managers. Note that removing
the error condition below which checks that _NET_DESKTOP_VIEWPORT is
available might make this work with pin-workspaces=true. I couldn't test
the effects of that change because I only tested with xmonad and xmonad
doesn't support _NET_DESKTOP_VIEWPORT, so I didn't make that change.

* xworkspaces: Remove check fo _NET_DESKTOP_VIEWPORT

Implementations that don't support it will just return an empty list for
get_desktop_viewports and pin-workspaces won't do anything.

* Update changelog

Fixes #1915

Co-authored-by: Tim Schumacher <tim@timakro.de>
Co-authored-by: patrick96 <p.ziegler96@gmail.com>
2021-10-11 14:40:14 +02:00
..
meta fix(modules): move join in a new method 2021-10-03 12:00:41 +02:00
alsa.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
backlight.hpp feat(backlight): add use-actual-brightness option (#2380) 2021-02-16 10:02:33 +01:00
battery.hpp Add compiler warning for missing override specifier (#2341) 2021-01-04 10:38:43 +01:00
bspwm.hpp feat(bspwm): Option to scroll through occupied desktops only (#2428) 2021-05-13 12:59:13 +02:00
counter.hpp refactor: Move module type string into modules 2020-11-26 20:53:53 +01:00
cpu.hpp feat: Warn state for cpu, memory, fs, battery modules (#2199) 2020-12-02 15:55:13 +01:00
date.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
fs.hpp Remove undefined behaviors and clean code (#1769) 2021-02-15 23:32:56 +01:00
github.hpp refactor: Move module type string into modules 2020-11-26 20:53:53 +01:00
i3.hpp feat(conf): Option to always show urgent workspaces in i3 (#2378) 2021-02-15 21:31:34 +01:00
ipc.hpp feat(ipc): hook, prev, next, reset module actions (#2528) 2021-10-10 20:22:24 +02:00
memory.hpp feat: Warn state for cpu, memory, fs, battery modules (#2199) 2020-12-02 15:55:13 +01:00
menu.hpp Remove atomic members from static modules 2021-09-30 15:38:18 +02:00
mpd.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
network.hpp feat(network): Ability to change speed unit text (B/s) (#2068) 2020-11-29 14:15:27 +01:00
pulseaudio.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
script.hpp script: Fix concurrency issues (#2518) 2021-10-03 01:27:11 +02:00
systray.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
temperature.hpp feat: Warn state for cpu, memory, fs, battery modules (#2199) 2020-12-02 15:55:13 +01:00
text.hpp refactor: Move module type string into modules 2020-11-26 20:53:53 +01:00
unsupported.hpp fix(modules): move join in a new method 2021-10-03 12:00:41 +02:00
xbacklight.hpp Remove atomic members from static modules 2021-09-30 15:38:18 +02:00
xkeyboard.hpp feat(xkeyboard): Icon matching using variant (#2521) 2021-10-05 12:12:47 +02:00
xwindow.hpp Add compiler warning for missing override specifier (#2341) 2021-01-04 10:38:43 +01:00
xworkspaces.hpp The xworkspaces module should wait for EWMH to become available (#2429) 2021-10-11 14:40:14 +02:00