]> git.lizzy.rs Git - bspwm.git/log
bspwm.git
8 years agoFix missing NULL check
Campbell Barton [Mon, 11 Apr 2016 20:09:15 +0000 (06:09 +1000)]
Fix missing NULL check

could crash when windows were unmapped within a script.

8 years agoOnly grab what needs to be grabbed
Bastien Dejean [Mon, 11 Apr 2016 18:26:48 +0000 (20:26 +0200)]
Only grab what needs to be grabbed

8 years agoUse the proper type for the return value of getopt
Bastien Dejean [Mon, 11 Apr 2016 16:37:49 +0000 (18:37 +0200)]
Use the proper type for the return value of getopt

8 years agoDon't return a freed node from insert_node
Bastien Dejean [Mon, 11 Apr 2016 16:13:05 +0000 (18:13 +0200)]
Don't return a freed node from insert_node

8 years agoRemove hard-wired node DIR fallback
Bastien Dejean [Mon, 11 Apr 2016 15:58:05 +0000 (17:58 +0200)]
Remove hard-wired node DIR fallback

8 years agoRemove obsolete descriptor
Bastien Dejean [Mon, 11 Apr 2016 15:51:24 +0000 (17:51 +0200)]
Remove obsolete descriptor

8 years agoCleanup: indentation
Campbell Barton [Sun, 10 Apr 2016 20:07:48 +0000 (06:07 +1000)]
Cleanup: indentation

Mixing tabs/spaces

8 years agoAdd getter for pointer_action<n>
Bastien Dejean [Sun, 10 Apr 2016 20:33:02 +0000 (22:33 +0200)]
Add getter for pointer_action<n>

8 years agoMention pointer_action<n> where it makes sense
Bastien Dejean [Sun, 10 Apr 2016 20:24:25 +0000 (22:24 +0200)]
Mention pointer_action<n> where it makes sense

8 years agoDon't needlessly ungrab/grab the buttons
Bastien Dejean [Sun, 10 Apr 2016 20:12:22 +0000 (22:12 +0200)]
Don't needlessly ungrab/grab the buttons

8 years agoMake mouse button actions configurable
Campbell Barton [Sun, 10 Apr 2016 16:53:05 +0000 (02:53 +1000)]
Make mouse button actions configurable

Previously this was possible via key bindings, since this operation was removed,
its useful to be able to configure which mouse keys do what.

This example swaps LMB/RMB

```
bspc config pointer_action1 resize_corner
bspc config pointer_action3 move
```

8 years agoFix default ICCCM input hint value
Bastien Dejean [Sun, 10 Apr 2016 12:34:24 +0000 (14:34 +0200)]
Fix default ICCCM input hint value

8 years agoFix typo
Bastien Dejean [Sat, 9 Apr 2016 12:08:54 +0000 (14:08 +0200)]
Fix typo

8 years agoReinstate built-in pointer bindings
Bastien Dejean [Thu, 7 Apr 2016 16:08:32 +0000 (18:08 +0200)]
Reinstate built-in pointer bindings

8 years agoFix ID format in test window
Bastien Dejean [Tue, 29 Mar 2016 10:33:28 +0000 (12:33 +0200)]
Fix ID format in test window

8 years agoOnly allow null nodes for the PATH descriptor
Bastien Dejean [Sun, 27 Mar 2016 08:48:57 +0000 (10:48 +0200)]
Only allow null nodes for the PATH descriptor

Fixes #434.

8 years agoTransfer nodes moved via configure requests
Bastien Dejean [Sat, 26 Mar 2016 13:25:40 +0000 (14:25 +0100)]
Transfer nodes moved via configure requests

Fixes #431.

8 years agoIntroduce receptacles
Bastien Dejean [Sat, 26 Mar 2016 10:47:17 +0000 (11:47 +0100)]
Introduce receptacles

A receptacle is an unfocusable empty leaf node.

Receptacles are used for building a tree without creating windows.

Example:

    bspc node -i
    bspc node @/ -p east -i
    bspc node @/2 -p north -i

    bspc rule -a Abc:abc -o node=@/1
    bspc rule -a Ijk:ijk -o node=@/2/1
    bspc rule -a Xyz:xyz -o node=@/2/2

Fixes #259.

8 years agoUpdate domain list in Bash and ZSH completions
Bastien Dejean [Wed, 23 Mar 2016 10:42:33 +0000 (11:42 +0100)]
Update domain list in Bash and ZSH completions

8 years agoZero-pad printed IDs
Bastien Dejean [Wed, 23 Mar 2016 10:24:47 +0000 (11:24 +0100)]
Zero-pad printed IDs

It seems that people expect all IDs to have the same length (#361).

And the maximum possible ID is 0x1fffffff (cf. the X11 protocol).

8 years agoFail verbosely
Bastien Dejean [Mon, 21 Mar 2016 13:28:04 +0000 (14:28 +0100)]
Fail verbosely

Along the way, we also fixed the handling of the `*_padding`,
`window_gap` and `border_width` settings. The previous behavior was the
result of a bad decision (9fed780), as a response to #141. Many issues
followed: #143, #158, #260, etc. We now handle those settings as
intuitively as possible.

We also fixed a potential segfault in `cmd_node`, triggered by `bspc
node -d`[sic].

Fixes #402 #252.

8 years agoFix handling of ID/name frictions
Bastien Dejean [Sun, 20 Mar 2016 09:38:11 +0000 (10:38 +0100)]
Fix handling of ID/name frictions

It seems that `resource_base_id` isn't the lower bound of the set of
possible IDs.

8 years agoAdd IDs to desktops and monitors
Bastien Dejean [Wed, 16 Mar 2016 14:15:27 +0000 (15:15 +0100)]
Add IDs to desktops and monitors

There's no constraints on desktop and monitor names, therefore, using a
desktop or monitor name as descriptor is ambiguous.

We put an end to this ambiguity by introducing desktop and monitor IDs.

`bspc query -{M,D}` now yields IDs instead of names.

Fixes #397.

8 years agoDon't try to print pointers as strings
Bastien Dejean [Wed, 16 Mar 2016 09:26:38 +0000 (10:26 +0100)]
Don't try to print pointers as strings

8 years agoIntroduce VERCMD in Makefile
Bastien Dejean [Wed, 16 Mar 2016 09:13:45 +0000 (10:13 +0100)]
Introduce VERCMD in Makefile

This is useful when the author has to make a release commit, in which
case `make doc` is required, but, because the tag doesn't exist yet, the
output of VERCMD won't be what we want. Therefore, we need to override
VERCMD for the *doc* target: `make VERCMD=false doc`.

8 years agoFix VERSION definition in Makefile
Bastien Dejean [Tue, 15 Mar 2016 16:06:25 +0000 (17:06 +0100)]
Fix VERSION definition in Makefile

Fixes #414

8 years agoVersion 0.9.1
Bastien Dejean [Tue, 15 Mar 2016 09:14:20 +0000 (10:14 +0100)]
Version 0.9.1

8 years agoUpdate the stacking list when removing a node
Bastien Dejean [Fri, 26 Feb 2016 21:14:26 +0000 (22:14 +0100)]
Update the stacking list when removing a node

Because `stack` isn't called in `focus_node`, when `n == NULL`.

8 years agoFix gcc warning regarding uninitialized variable
Bastien Dejean [Fri, 26 Feb 2016 21:08:59 +0000 (22:08 +0100)]
Fix gcc warning regarding uninitialized variable

8 years agoInitially center the pointer on `mon`
Bastien Dejean [Fri, 26 Feb 2016 14:28:42 +0000 (15:28 +0100)]
Initially center the pointer on `mon`

Fixes #407.

8 years agoExtract geometric functions from helpers.c
Bastien Dejean [Fri, 26 Feb 2016 13:22:03 +0000 (14:22 +0100)]
Extract geometric functions from helpers.c

8 years agoDon't change the index of the primary monitor
Bastien Dejean [Wed, 24 Feb 2016 09:55:24 +0000 (10:55 +0100)]
Don't change the index of the primary monitor

8 years agoSort monitors by natural visual hierarchy
Bastien Dejean [Tue, 23 Feb 2016 20:19:12 +0000 (21:19 +0100)]
Sort monitors by natural visual hierarchy

Fixes #405.

8 years agoDon't add a monitor without desktops
Bastien Dejean [Tue, 23 Feb 2016 20:16:46 +0000 (21:16 +0100)]
Don't add a monitor without desktops

8 years agoUse the term `DESKTOP_SEL` consistently
Bastien Dejean [Mon, 22 Feb 2016 19:47:57 +0000 (20:47 +0100)]
Use the term `DESKTOP_SEL` consistently

8 years agoDon't try to use a pointer after freeing it
Bastien Dejean [Fri, 12 Feb 2016 21:59:37 +0000 (22:59 +0100)]
Don't try to use a pointer after freeing it

8 years agoDon't try to guess the window rectangle
Bastien Dejean [Fri, 12 Feb 2016 21:49:06 +0000 (22:49 +0100)]
Don't try to guess the window rectangle

Fixes #394.

8 years agoDon't generate redundant events in apply_layout
Bastien Dejean [Thu, 11 Feb 2016 17:37:48 +0000 (18:37 +0100)]
Don't generate redundant events in apply_layout

Fixes #393.

8 years agoAdd event: monitor_swap
Bastien Dejean [Mon, 1 Feb 2016 10:46:03 +0000 (11:46 +0100)]
Add event: monitor_swap

8 years agoAdd global setting: *paddingless_monocle*
Bastien Dejean [Sun, 10 Jan 2016 17:29:51 +0000 (18:29 +0100)]
Add global setting: *paddingless_monocle*

Fixes #365.

8 years agoHandle non-leaf nodes in nearest_from_distance
Bastien Dejean [Thu, 7 Jan 2016 09:18:32 +0000 (10:18 +0100)]
Handle non-leaf nodes in nearest_from_distance

Fixes #363.

8 years agoFix comment
Bastien Dejean [Mon, 4 Jan 2016 14:21:03 +0000 (15:21 +0100)]
Fix comment

8 years agoMake the window ID printf format consistent
Bastien Dejean [Mon, 4 Jan 2016 14:17:47 +0000 (15:17 +0100)]
Make the window ID printf format consistent

Fixes #361.

8 years agowindow --> node
Nathan Isom [Sun, 3 Jan 2016 23:57:40 +0000 (17:57 -0600)]
window --> node

8 years agoFix misinterpreted asterisk in rule syntax
Bastien Dejean [Sat, 2 Jan 2016 10:31:46 +0000 (11:31 +0100)]
Fix misinterpreted asterisk in rule syntax

8 years agoOnly use characters from the ASCII charset
Bastien Dejean [Sat, 2 Jan 2016 10:16:59 +0000 (11:16 +0100)]
Only use characters from the ASCII charset

8 years agoDocument the optional tilde character
Bastien Dejean [Sat, 2 Jan 2016 10:13:30 +0000 (11:13 +0100)]
Document the optional tilde character

8 years agoSkip unmapped windows in query_pointer
Bastien Dejean [Thu, 31 Dec 2015 18:08:35 +0000 (19:08 +0100)]
Skip unmapped windows in query_pointer

Fixes #353.

8 years agoRestore primary monitor in restore_tree
Bastien Dejean [Thu, 31 Dec 2015 11:34:24 +0000 (12:34 +0100)]
Restore primary monitor in restore_tree

8 years agoDon't try to restore the state from zero tokens
Bastien Dejean [Thu, 31 Dec 2015 11:06:59 +0000 (12:06 +0100)]
Don't try to restore the state from zero tokens

Fixes #352.

8 years agoAdd the `--rectangle` command the *monitor* domain
Bastien Dejean [Wed, 30 Dec 2015 10:36:14 +0000 (11:36 +0100)]
Add the `--rectangle` command the *monitor* domain

8 years agoUpdate TODO
Bastien Dejean [Tue, 29 Dec 2015 19:21:42 +0000 (20:21 +0100)]
Update TODO

8 years agoDon't needlessly call *cat* in panel example
Bastien Dejean [Mon, 28 Dec 2015 18:59:27 +0000 (19:59 +0100)]
Don't needlessly call *cat* in panel example

Fixes #349.

8 years agoStart parsing modifiers after the last colon
Bastien Dejean [Sat, 26 Dec 2015 20:22:24 +0000 (21:22 +0100)]
Start parsing modifiers after the last colon

Fixes #347.

8 years agoHandle preselection feedbacks in query_pointer
Bastien Dejean [Wed, 23 Dec 2015 21:21:43 +0000 (22:21 +0100)]
Handle preselection feedbacks in query_pointer

Fixes #341.

8 years agoDon't blindly focus monitors in `pointer -g focus`
Bastien Dejean [Wed, 23 Dec 2015 21:19:14 +0000 (22:19 +0100)]
Don't blindly focus monitors in `pointer -g focus`

8 years agoDon't take gaps into account when preselecting a gapless monocle
Steven Allen [Wed, 23 Dec 2015 17:48:52 +0000 (09:48 -0800)]
Don't take gaps into account when preselecting a gapless monocle

8 years agoEnable save-under for the presel feedback window
Bastien Dejean [Wed, 23 Dec 2015 18:05:05 +0000 (19:05 +0100)]
Enable save-under for the presel feedback window

8 years agoAdd clickable areas to the panel example
Bastien Dejean [Wed, 23 Dec 2015 11:41:56 +0000 (12:41 +0100)]
Add clickable areas to the panel example

8 years agoFix preselection cancel binding for desktops
Bastien Dejean [Wed, 23 Dec 2015 10:10:05 +0000 (11:10 +0100)]
Fix preselection cancel binding for desktops

8 years agoGeneralize window commands to nodes
Bastien Dejean [Tue, 22 Dec 2015 18:25:45 +0000 (19:25 +0100)]
Generalize window commands to nodes

8 years agoAvoid rare memory leak.
Steven Allen [Sun, 20 Dec 2015 19:29:55 +0000 (11:29 -0800)]
Avoid rare memory leak.

Technically, a user could pass invalid JSON with duplicate keys to
restore and trigger a memory leak.

8 years agoFix uninitialized member use
Campbell Barton [Mon, 14 Dec 2015 14:46:31 +0000 (01:46 +1100)]
Fix uninitialized member use

update_root is checking m->root with uninitialized memory.

8 years agoFix false positives in keyeq
Bastien Dejean [Sun, 13 Dec 2015 19:46:12 +0000 (20:46 +0100)]
Fix false positives in keyeq

8 years agoHandle EWMH *state* removal more carefully
Bastien Dejean [Sat, 12 Dec 2015 18:13:38 +0000 (19:13 +0100)]
Handle EWMH *state* removal more carefully

8 years agoUse last_{state,layer} more consistently
Bastien Dejean [Wed, 9 Dec 2015 10:07:22 +0000 (11:07 +0100)]
Use last_{state,layer} more consistently

8 years agoRevert "Simplify EWMH state toggling"
Bastien Dejean [Tue, 8 Dec 2015 19:46:54 +0000 (20:46 +0100)]
Revert "Simplify EWMH state toggling"

8 years agoFix off-by-one token pointer in restore_tree
Bastien Dejean [Sat, 5 Dec 2015 18:33:09 +0000 (19:33 +0100)]
Fix off-by-one token pointer in restore_tree

8 years agoReject invalid modifiers
Bastien Dejean [Sun, 29 Nov 2015 17:57:52 +0000 (18:57 +0100)]
Reject invalid modifiers

8 years agoRemove non-significant characters from JSON output
Bastien Dejean [Sat, 28 Nov 2015 09:40:30 +0000 (10:40 +0100)]
Remove non-significant characters from JSON output

8 years agoRemove settings: auto_cancel and auto_alternate
Bastien Dejean [Thu, 26 Nov 2015 19:13:05 +0000 (20:13 +0100)]
Remove settings: auto_cancel and auto_alternate

auto_cancel can be emulated with:

super + ctrl + {h,j,k,l}
dir={left,down,up,right}; \
cur=$(bspc query -T -w focused.!automatic | jshon -e splitDir -u 2>&-); \
[ "$dir" = "$cur" ] && dir=cancel; \
bspc window -p "$dir"

and auto_alternate with:

super + {_,alt + }{1-9,0}
kind={desktop,monitor}; \
item="^{1-9,10}"; \
bspc query --"$kind"s --"$kind" "$\{item\}.focused" > /dev/null && item=last; \
bspc "$kind" -f "$item"

8 years agoAdd *focused* modifier to desktops and monitors
Bastien Dejean [Thu, 26 Nov 2015 19:07:46 +0000 (20:07 +0100)]
Add *focused* modifier to desktops and monitors

8 years agoAllow modifiers on every selector
Bastien Dejean [Wed, 25 Nov 2015 12:59:56 +0000 (13:59 +0100)]
Allow modifiers on every selector

8 years agoPackages: add Manjaro Linux
Bastien Dejean [Mon, 23 Nov 2015 17:08:08 +0000 (18:08 +0100)]
Packages: add Manjaro Linux

8 years agoUpdate TODO
Bastien Dejean [Mon, 23 Nov 2015 11:20:55 +0000 (12:20 +0100)]
Update TODO

8 years agoRegularize the layer modifiers
Bastien Dejean [Mon, 23 Nov 2015 09:40:10 +0000 (10:40 +0100)]
Regularize the layer modifiers

8 years agoUpdate the documentation regarding query/restore
Bastien Dejean [Sun, 22 Nov 2015 21:16:17 +0000 (22:16 +0100)]
Update the documentation regarding query/restore

8 years agoFix num_clients restore format
Bastien Dejean [Sun, 22 Nov 2015 21:01:30 +0000 (22:01 +0100)]
Fix num_clients restore format

8 years agoRemove obsolete variable
Bastien Dejean [Sun, 22 Nov 2015 14:22:49 +0000 (15:22 +0100)]
Remove obsolete variable

8 years agoConsolidate update_monitors
Bastien Dejean [Sun, 22 Nov 2015 14:03:18 +0000 (15:03 +0100)]
Consolidate update_monitors

The two functions are mostly equivalent but the short version is more robust:
https://gitlab.com/pteam/pteam-qtbase/commit/6d858a0fdb896d2c4f9f6411f691f0648c084cd7

Thanks to Jurica Vukadin who submitted this patch.

Fixes #321.

8 years agoUse JSON as the output format of query -T
Bastien Dejean [Sun, 22 Nov 2015 13:41:00 +0000 (14:41 +0100)]
Use JSON as the output format of query -T

It is now easy to access any attribute by piping the output of
`query -T` to a JSON extractor/filter.

E.g.:
bspc query -T -d DESKTOP_SEL | jq -r .layout

And it also makes `restore -T` more robust.

8 years agoFix gcc warnings
Bastien Dejean [Thu, 19 Nov 2015 17:09:29 +0000 (18:09 +0100)]
Fix gcc warnings

8 years agoHandle fullscreen state birth rotation
Bastien Dejean [Thu, 19 Nov 2015 14:08:54 +0000 (15:08 +0100)]
Handle fullscreen state birth rotation

Fixes #319.

8 years agoFix modifier in example sxhkdrc
Bastien Dejean [Wed, 18 Nov 2015 08:36:26 +0000 (09:36 +0100)]
Fix modifier in example sxhkdrc

8 years agoFix *[!]occupied* modifier
Bastien Dejean [Tue, 17 Nov 2015 10:35:40 +0000 (11:35 +0100)]
Fix *[!]occupied* modifier

8 years agoSimplify EWMH state toggling
Bastien Dejean [Tue, 17 Nov 2015 10:24:52 +0000 (11:24 +0100)]
Simplify EWMH state toggling

8 years agoUse field designators when initializing structures
Bastien Dejean [Tue, 17 Nov 2015 10:18:21 +0000 (11:18 +0100)]
Use field designators when initializing structures

8 years agoPrevent potential memory leak
Bastien Dejean [Tue, 17 Nov 2015 10:13:25 +0000 (11:13 +0100)]
Prevent potential memory leak

8 years agoMake the modifier notation compact and uniform
Bastien Dejean [Tue, 17 Nov 2015 10:02:06 +0000 (11:02 +0100)]
Make the modifier notation compact and uniform

We want to avoid irregular notations: STATES and FLAGS should translate
directly into modifiers.

8 years agoMerge pull request #317 from guyhughes/fix-doc
Bastien Dejean [Tue, 17 Nov 2015 07:44:25 +0000 (08:44 +0100)]
Merge pull request #317 from guyhughes/fix-doc

Fix minor typos in docs

8 years agodocs nontiled window selector typo
Guy Hughes [Tue, 17 Nov 2015 01:36:32 +0000 (20:36 -0500)]
docs nontiled window selector typo

8 years agodocs CONTRIBUTING typo
Guy Hughes [Tue, 17 Nov 2015 01:36:04 +0000 (20:36 -0500)]
docs CONTRIBUTING typo

8 years agoExpand INSTALL.md
Bastien Dejean [Mon, 16 Nov 2015 09:57:04 +0000 (10:57 +0100)]
Expand INSTALL.md

8 years agoRemove obsolete vim modeline
Bastien Dejean [Mon, 16 Nov 2015 08:57:00 +0000 (09:57 +0100)]
Remove obsolete vim modeline

8 years agoAdd README.md to Makefile
Bastien Dejean [Mon, 16 Nov 2015 08:54:32 +0000 (09:54 +0100)]
Add README.md to Makefile

8 years agoREADME: use relative links
Bastien Dejean [Sun, 15 Nov 2015 20:21:21 +0000 (21:21 +0100)]
README: use relative links

8 years agoAdd link to the `examples` directory
Bastien Dejean [Sun, 15 Nov 2015 20:16:36 +0000 (21:16 +0100)]
Add link to the `examples` directory

8 years agoRewrite README
Bastien Dejean [Sun, 15 Nov 2015 19:56:17 +0000 (20:56 +0100)]
Rewrite README

8 years agoRemove `apply_floating_atom` setting
Bastien Dejean [Fri, 13 Nov 2015 11:10:39 +0000 (12:10 +0100)]
Remove `apply_floating_atom` setting

It is trivial to emulate this setting by subscribing to events.

8 years agoFix typos in manual
Bastien Dejean [Fri, 13 Nov 2015 11:07:48 +0000 (12:07 +0100)]
Fix typos in manual