when the module fails to get the pulseaudio device form factor, the
module persists the existing value, resulting in the incorrect
format-icon being used to format the label on device changes.
reset the form factor value so that the icon lookup properly falls back
to "default" when missing
When adding a custom module with a name, e.g.:
```jsonc
{
...,
"custom/foo#bar": { },
...
}
```
The custom module does not retain the `bar` class as it should, because
all the classes are replaced with the runtime output:
1b4a7b02f4/src/modules/custom.cpp (L141-L147)
Avoid removing the module instance name class so css class behavior is
consistent between all modules.
When parseCpuFrequencies returns an empty vector, getCpuFrequency
would attempt to dereference an invalid iterator.
Return early from getCpuFrequency when parseCpuFrequencies returns an
empty vector.
Resolves a segfault when waybar is run within a VM on apple silicon.
1. battery.hpp - added local bool variable. Force to print warnings the
only once in order to warn user about wrong battery configuraion. And
does not bring a mess when the battery is turned off (gamepads, etc.)
2. dir_name is an object which takes a part in comparison. So converted to the string.
Reading brightness value for backlight device can fail intermittently
(particularly when using ddcci-driver-linux). Handle this more
gracefully rather than crashing
Don't set the anchor for certain edges when the width or the height
is not set to a value of 'auto' (1).
When the bar is vertical, the top and bottom edges are not anchored
otherwise the left and right edges are not anchored.
This resolves an issue wherein the width and height set for the
layer-shell were ignored because the layer was set to anchor to all
edges.