* Small refactor for the get_client_icon_path function
* Try to match first by icon name and then by class
* Formatting
* It's dashes
* Use methods
* Why check it every loop?
* Try to get icon by the retriving the command from the pid
* Split into multiple functions
* No newline at eof
* Remove empty line
* Gets only the process name instead of the full command
* Double quotes everywhere
* I don't need pattern matching
* I want the executable
* Check if pid is nil
* Use client icon if not found
* Class can be nil for some clients too?
* Check for nil values
* Lgi doesn't work with gtk 4.0
* Fix class being nil
* client.icon can be nil as well
* Prevent flashing client when only one is present
* Account for hidden clients and clients across multiple tags
Co-authored-by: SystematicError <systematicerror@users.noreply.github.com>
* Add playerctl v2 backends
* Player should be the last arguement as it's optional
* Make v2 backwards compatible with v1
* Make cli v2 backwards compatible as well
* Delete playerctl and rename playerctl_v2 to playerctl
* Add deprecation for global signals
* Update the docs
* Player should be optional
* Fix image downloading failing on some cases
* Add support for multiple screens
* Add documentation
* Update wallpaper module to use single argument for screen
* Update docs for wallpaper module
* Fix arguments
* Make swallowing more robust
Changed the flags for the pstree command so it is a single line with all
ancestors.
Removed usage of sed, grep and tr so the iopopen call should be faster.
Find and match of parent pid in the ancestors string is done in lua so
should be faster.
* Improved swallow filter
Now you cna filter window swallowing with 2 tables, one for clients that
cannot be swallowed (dont_swallow_classname_list) and one for clients
that cannot swallow their parents (cant_swallow_classname_list).
* remove occurences of res var
* renamed functions and theme vars more descriptive
* updated module documentation
* check functions combined, is_in_table 1 return
* add old theme vars for compatibility
* short swallow logic and robust filter assignment
* ignore splash and dialog parents
this prevents krita and similar missbehaving programs from swallowing their
splash window.
* consistent docs formatting
* convert module to use an async function
* removed undefined error() function call
this was probably an error handling/logging on the code i used as template for
the async function and it's callback.
* deal with corner case: parent exits before client
if the parent is destroyed "on background" then awesome will show a warning.
* added meself to authors
i don't see my additions as substantial enough to justify this but... ¯\_(ツ)_/¯