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.
Reginald Kennedy [Tue, 4 Dec 2012 05:18:38 +0000 (13:18 +0800)]
Fix setkeymapping to call expand_tilde for proper expansion of ~ in path.
Change validation behavior for default 'optional' applications.
Overriding the binding will no longer cause validation.
Validation will only occur when the program call is overridden.
Add details in spectrwm.conf on how to disable the default programs.
Improve man page PROGRAMS section.
Added details on default program validation and how to disable/override.