Andrea Bolognani [Mon, 11 Aug 2014 20:59:21 +0000 (22:59 +0200)]
Improve Linux Makefile.
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.
Andrea Bolognani [Sat, 9 Aug 2014 16:50:16 +0000 (18:50 +0200)]
Improve English man page.
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.
Varun B Patil [Thu, 27 Mar 2014 10:08:49 +0000 (15:38 +0530)]
cleanup baraction.sh
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.
Add new option: warp_pointer.
Centers the mouse pointer on the focused window when using key bindings
to change focus, switch workspaces, change regions, etc.
Reginald Kennedy [Fri, 9 May 2014 06:09:27 +0000 (14:09 +0800)]
Add new quirk IGNOREPID.
Ignore the PID when determining the initial workspace for a new window.
Especially useful for terminal windows that share a process.
Reginald Kennedy [Wed, 26 Feb 2014 02:18:20 +0000 (10:18 +0800)]
Fix text rendering issue in search_win.
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.
Reginald Kennedy [Fri, 13 Dec 2013 22:06:08 +0000 (06:06 +0800)]
Add new OBEYAPPFOCUSREQ quirk.
When an application requests focus on the window via a
_NET_ACTIVE_WINDOW client message (source indication of 1), comply with
the request.
Reginald Kennedy [Thu, 12 Dec 2013 08:10:04 +0000 (16:10 +0800)]
Deny _NET_ACTIVE_WINDOW ClientMessages with a source type of 'normal'.
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.
Reginald Kennedy [Mon, 18 Nov 2013 00:53:38 +0000 (08:53 +0800)]
Add color_focus_maximized and color_unfocus_maximized config options.
Sets border colors on maximized windows. Defaults to the value of
color_focus and color_unfocus, respectively.
Reginald Kennedy [Mon, 2 Dec 2013 15:20:55 +0000 (23:20 +0800)]
Fix LD_PRELOAD error on Linux.
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.
Reginald Kennedy [Tue, 29 Oct 2013 05:33:14 +0000 (13:33 +0800)]
Add quirk POSIX Extended Regular Expression pattern matching.
Note that square brackets [] and colons : in patterns must be
escaped with a backslash \ in addition to any other escaping.
Add 3rd (optional) _NET_WM_NAME/WM_NAME field to quirks.
Quirks can be specified as quirk[<class>], quirk[<class>:<instance>]
or quirk[<class>:<instance>:<name>].
The 'instance' and 'name' fields are optional and will 'match all' if
omitted or 'match empty' if left blank.
Cleanup window property terms; should be 'class', 'instance' and 'name'.
title_class_enabled and title_name_enabled are now aliases for
window_class_enabled and window_instance_enabled, respectively.
Fix uniconify of windows having neither _NET_WM_NAME nor WM_NAME.
John C. Vernaleo [Mon, 10 Jun 2013 20:30:12 +0000 (16:30 -0400)]
Add some help to the OSX makefile if one wants to compile with
homebrew for the dependencies instead of macports. Thanks Kyle Isom
<kyle@tyrfingr.is> for initially doing it.
Add ability to set tile_gap to negative values.
This makes it possible for tiled windows to overlap. If set to the
opposite of border_width, adjacent borders will appear to collapse.
Add details to man page about negative values for tile_gap.
Add ability to move/resize floating windows beyond the region boundary.
Windows will change regions based on the cursor location or, if being
moved by a key binding, window center.
Add 'soft boundary' window containment behavior to region boundaries.
When moving a window past the region boundary, the window will 'snap' to
the region boundary until it is moved more than boundary_width distance
beyond the edge.
Add constraint to ensure windows always have at least 1 pixel in a
region.
Add new boundary_width configuration option.
Disable the window containment behavior by setting this option to 0.
Fix floating window stacking order issue on multiple-region setups.
Eliminate unneeded region parameter on load_float_geom() and
store_float_geom().
Reginald Kennedy [Fri, 22 Mar 2013 19:59:37 +0000 (03:59 +0800)]
Fix input focus fallback issue when running with multiple regions.
When a region is empty, input focus is now set to the invisible input
window in the region. This enables programs (e.g. dmenu) to correctly
determine which monitor has focus.