There are cases where systemd-logind is not used/running. Result is
that bcklight module will not run.
Add an option that, when set to false, allows backlight module to
work without systemd-logind.
All the mode or visibility changes require `wl_surface_commit` to be
applied. gtk-layer-shell will attempt to force GTK to commit, but may
fail if the surface has stopped receiving frame callbacks[^1].
Thus, we could get stuck in a state where the bar is hidden and unable
to regain visibility.
To address this, a new API has been added to gtk-layer-shell,
`gtk_layer_try_force_commit`, which does `wl_surface_commit` with the
necessary safety checks to avoid corrupting GTK internal state.
Note: this change bumps gtk-layer-shell requirement to 0.9.0.
[^1]: https://github.com/wmww/gtk-layer-shell/issues/185
waybar(5) describes the configuration syntax but doesn't mention how
the stylesheets are handled.
This documentation would have been helpful to me as i figured out how
to configure waybar.
The WP component loader API has changed to be asynchronous, so implement a (GAsyncReadyCallback)-based loader to manage them. Logging integration change was required for 0.5.0 RCs but not for the 0.5.0 release.
Fix clang-tidy and clang-format warnings. Note these are significantly wider than the changes for 0.5.0 so optional beyond the existing patchset.