The following changes have been implemented:
* make sure all standard (eg. $CFLAGS) variables are taken into
account when compiling;
* define default compilation flags in separate $MAINT_* variables
so that user-defined variables can override them;
* split default flags the expected way, eg. $CPPFLAGS instead of
$CFLAGS for C preprocessor flags;
* declare all dependencies, including the ones on header files;
* install localized man pages in the corresponding locale-qualified
directories, so that man(1) can pick them up automatically;
* install .desktop file;
* support $DESTDIR for downstream maintainers' convenience;
* provide uninstall target;
* get rid of symlink hackery.
The improvements fall into three categories:
1. typos / grammar;
2. internal consistency, eg. the format of all options is described
using the same conventions;
3. better semantics, eg. using .Ar instead of .Pa for arguments.
1. Do not hardcode path to coreutils.
2. Do not pass variables to functions where not required.
3. Run top as a batch process to be able to grep its output.
Fix hang in fullscreen layout when a window has multiple transients.
Fix focus_(prev|next) for windows with multiple transients.
Add a missing queue.h macro to Linux util.h.
The depth of the indicator window must match the depth of the allocated
text color. To ensure this is always the case, copy from root instead
of parent.
Focus change requests that are not a result of direct user action are
ignored. Requests from applications that use the old EWMH specification
such as wmctrl(1) are still accepted.
Fixes#28
Grab windows after creating bars.
Fix move floater to max_stack.
Disable floating_toggle on fullscreen layout.
Fix some stacking issues.
Some cleanup.
Fixes#9
Add support for _NET_CURRENT DESKTOP.
Add support for _NET_DESKTOP_NAMES.
Add support for _NET_NUMBER_OF_DESKTOPS.
Add support for _NET_CLIENT_LIST.
Windows are sorted according to _NET_CLIENT_LIST at start.
Change iconify to use _NET_WM_STATE_HIDDEN instead of _SWM_ICONIC.
Add _NET_WM_FULL_PLACEMENT to _NET_SUPPORTED.
Improve handling of _NET_WM_STATE_FULLSCREEN.
Improve general handling of EWMH.
Fix focus issues when a window maps/unmaps on an unfocused region.
Fix calls to get property length that did not adjust for item size.
Fix stacking issues.
Fix segfault.
Disable swapwin on fullscreen layout.
Remove floating property from ws_win struct.
Add new macros for accessing ewmh_flags.
Initialize variables that should be initialized.
Fix some formatting.
Improve debug output.
Closes#1 and closes#20
On 64-bit Linux systems, if LD_PRELOAD isn't a relative/absolute
pathname to libswmhack.so, then ld.so attempts to load a 32-bit version
for 32-bit programs. This produces an error message. The solution is
to either build and install a 32-bit libswmhack.so.0.0 or use an
absolute/relative path so that ld.so only loads libswmhack.so for 64-bit
binaries.
Fix Makefiles to set variables before they are referenced.