rework Makefile
- allow user to use a different pkg-config binary
- restore almost all (and add other ones) warning flags (-Werror is not set)
- $(XWAYLAND) is added to our CPPFLAGS
- remove useless comments
- don't generate idle-protocol.h (not used)
make more permissive exclusive focus
now you can call focusstack() while a layer surface is focused and when it gets
unmapped the newly focused clients will be actually focused
now really fix clients not being focused after unmapping a layer surface
fix clients not being focused after destroy a layer surface
Revert "remove useless check of `m` in arrangelayers()"
This partially reverts commit d14ee99661e420c8e3d8fcc6791429a0e08bd915.
Checking if the output is enabled is necessary to avoid a segfault later
change the default term to `foot`
it is closer to the suckless philosophy (foot implements things that the suckless
guys would say that should be done by tmux or something else, but I have no
desire to create a new terminal emulator, and the best fit is foot)
also alacritty uses +100Mb of memory, more that dwl itself (~90Mb)
and foot only ~20Mb
remove useless check of `m` in arrangelayers()
it is supossed to avoid a crash when we pass m=NULL as argument
however it would crash anyway and also because we should not pass m=NULL
fix use of loop initial declaration
forbidden by the suckless style
fix unmanaged clients not being unlinked from the commit listener
don't try to move outputs when its x,y hasn't change
when using wlr_output_layout_move() wlroots internally
change the state of the output to manually configured and
when updating the layout these outputs aren't ignored by
wlroots, leaving us at our own
prior run the startup command start the backend
this allow use clients like wlr-randr in the startup command
make sure the parent is mapped prior set monitor and tags
use wl_container_of() instead of data in some functions
inline input_device in virtualkeyboard()
fix idle inhibitor check
previously we tried to get a client from the surface and then compare it with
the excluded surface, if we cannot get a client from the surface (e.g: a layer
surface) it just ignored all the next idle inhibitors no matter what
What I have should done is just checking if the excluded surface is equal to
the current idle inhibitor's surface and continue in case it is.