Commit graph

1462 commits

Author SHA1 Message Date
Bastien Dejean
8587bcd599 Fix missing new line in border_width response 2016-05-28 09:45:40 +02:00
Bastien Dejean
0a98de6624 Add setting: pointer_motion_interval
Fixes #482.
2016-05-28 09:43:05 +02:00
Bastien Dejean
458358723f Add current logo
Fixes #495.
2016-05-27 12:12:41 +02:00
Bastien Dejean
a4a3edae7a Provide computed selectors for the external rules
It might be useful to know what the computed monitor, desktop and node
consequences of the built-in phase are when we enter the external phase
of the rule processing mechanism.
2016-05-24 16:32:40 +02:00
Bastien Dejean
fd6d09058b Fix null pointer dereference in restore_tree 2016-05-22 16:56:07 +02:00
Bastien Dejean
5392a84a40 Provide a way to disable built-in pointer bindings
Fixes #490.
2016-05-21 21:31:14 +02:00
Bastien Dejean
319566e4af Accept an optional reference in all the selectors
Fixes #486.
2016-05-20 11:41:36 +02:00
Bastien Dejean
666af89919 Start with the focused node in @DESKTOP_SEL: 2016-05-20 11:10:19 +02:00
Bastien Dejean
3a27fb66ca Resolve node paths relative to the given reference 2016-05-19 21:26:20 +02:00
Bastien Dejean
cfc69985ea Catch more invalid paths in node_from_desc
For example, `query -N -n @/parent` will now fail.
2016-05-19 21:10:10 +02:00
Bastien Dejean
4d04c0211e Sometimes a break isn't enough
Fixes #488.
2016-05-19 20:18:56 +02:00
Bastien Dejean
bc049c1d5f Make the *focused* modifiers less restrictive
Example: `bspc query -N -d '^3' -n .focused` will return the ID of the
focused node of the third desktop.
2016-05-18 21:29:32 +02:00
Bastien Dejean
fc02698f46 Set the WM_NAME property of each monitor's root
For example, `xdo id -N Bspwm -n root -a LVDS1` now returns the ID of
the root window of the monitor named LVDS1.
2016-05-18 21:13:27 +02:00
Bastien Dejean
0b56bdefa3 Don't show presel feedbacks for the monocle layout
Fixes #367.
2016-05-16 10:33:22 +02:00
Bastien Dejean
dc03ebb850 Close file descriptor in read_string 2016-05-14 17:56:34 +02:00
Bastien Dejean
c79f32540d Fix memory leak in remove_node 2016-05-14 17:43:42 +02:00
Bastien Dejean
0efe4cea32 Don't emit invalid desktop_focus events 2016-05-13 21:27:11 +02:00
Bastien Dejean
f991084c76 Handle sticky nodes in activate_desktop 2016-05-13 18:39:06 +02:00
Nathan Isom
bb54fbf4fe Add fish shell completion.
fixes #459.
2016-05-11 16:59:01 -05:00
Bastien Dejean
f4207c1cef Add links to the Debian guide and packages 2016-05-11 09:57:36 +02:00
Bastien Dejean
de76da4000 Add missing node_geometry events in track_pointer
Fixes #472.
2016-05-10 10:46:14 +02:00
Bastien Dejean
9b07bcbc2a Don't erase the parent too soon in unlink_node
Fixes #476.
2016-05-10 10:21:46 +02:00
Bastien Dejean
99df3374b5 Ignore enter notify events in draw_presel_feedback
Fixes #474.
2016-05-10 09:48:17 +02:00
Bastien Dejean
2aea4bf28b Don't filter desktops in merge_monitors
Fixes #455.
2016-05-09 18:51:41 +02:00
Bastien Dejean
1e98b9116a Don't use a domain target as reference
Otherwise, the behavior of, for example, `desktop prev -s next` is
unexpected.
2016-05-09 18:43:03 +02:00
Bastien Dejean
e471298d0a Add node modifiers: {descendant,ancestor}_of
Fixes #473.
2016-05-09 16:55:31 +02:00
Bastien Dejean
bbc34068e7 Handle failure of activate_desktop 2016-05-09 13:40:31 +02:00
Bastien Dejean
a7821774c5 Mention the default reference 2016-05-09 13:37:45 +02:00
Bastien Dejean
cdc20bbe2a Don't try to skip nodes in query_node_ids_in
Trying to return non-overlapping sub-trees in query_node_ids_in isn't a
good idea after all, because some modifiers aren't compatible with the
idea: if *b* is a descendant of *a*, `a.hidden => b.hidden` is true,
but `a.!automatic => b.!automatic` is false.
2016-05-08 10:21:55 +02:00
Bastien Dejean
28df617346 Update contribution instructions 2016-05-06 14:26:10 +02:00
Bastien Dejean
d7ead94ea0 Fix gcc warnings 2016-05-06 10:10:27 +02:00
Bastien Dejean
c32f30aa7e Remove setting: history_aware_focus
The new implementation of the DIR descriptor is based on
[right-window](https://github.com/ntrrgc/right-window).

Fixes #467.
2016-04-28 10:33:30 +02:00
Bastien Dejean
8f86e93c32 Return early when possible in set_*_local
Fixes #466.
2016-04-27 20:23:07 +02:00
Bastien Dejean
f50f1f9b21 Don't confine the DIR descriptor 2016-04-22 12:32:10 +02:00
Bastien Dejean
3b0fc10531 Remove unnecessary headers 2016-04-21 11:19:11 +02:00
Bastien Dejean
26ef0c252b Remove unused function 2016-04-21 11:16:34 +02:00
Bastien Dejean
57b12d8f47 Remove setting: focus_by_distance
Unfortunately nearest_from_tree is rather useless because it can't skip
vacant or receptacle nodes.

Therefore, *focus_by_distance* is now the default.
2016-04-21 10:45:05 +02:00
Bastien Dejean
09e3d7205e Use the proper reference in find_closest_desktop
Fixes #462.
2016-04-21 10:18:43 +02:00
Bastien Dejean
cd079d2c39 Don't confine the CYCLE_DIR descriptor
Fixes #212.
2016-04-20 21:04:15 +02:00
Bastien Dejean
1b6224485d Avoid accessing freed nodes in cancel_presel
Since cancel_presel is called by destroy_tree, we have to be careful not
to access any node besides n.
2016-04-20 20:25:55 +02:00
Bastien Dejean
7c52a2bd12 Disable enter notify events in cancel_presel
Fixes #461.
2016-04-20 16:59:26 +02:00
Bastien Dejean
4bf21bdf93 Honor FFP in initialize_presel_feedback 2016-04-19 20:55:19 +02:00
Bastien Dejean
be7376964c Add node descriptor: pointed
Fixes #456.
2016-04-19 20:49:22 +02:00
Bastien Dejean
e70f826c94 Consolidate focus_follows_pointer
Fixes #454.
2016-04-18 13:54:00 +02:00
Campbell Barton
4a329419fa Fix using uninitialized value
Currently with bspwm, the urgent member is read before being set.

Valgrind output:

```
==17037== Conditional jump or move depends on uninitialised value(s)
==17037==    at 0x409C06: focus_node (tree.c:503)
==17037==    by 0x40FF89: enter_notify (events.c:355)
==17037==    by 0x40F3C2: handle_event (events.c:61)
==17037==    by 0x404406: main (bspwm.c:180)
==17037==  Uninitialised value was created by a heap allocation
==17037==    at 0x4C2ABD0: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==17037==    by 0x40A0A0: make_client (tree.c:619)
==17037==    by 0x4117E0: manage_window (window.c:131)
==17037==    by 0x41142A: schedule_window (window.c:67)
==17037==    by 0x4124D2: adopt_orphans (window.c:391)
==17037==    by 0x417FC9: cmd_wm (messages.c:1132)
==17037==    by 0x413DAA: process_message (messages.c:100)
==17037==    by 0x413C22: handle_message (messages.c:81)
==17037==    by 0x4043A2: main (bspwm.c:170)
```
2016-04-18 14:36:02 +10:00
Bastien Dejean
0cfe1f344c Only alter the visibility of the shown windows 2016-04-16 21:15:45 +02:00
Bastien Dejean
83a54fea51 Restore/dump monitors and desktops pointers as IDs 2016-04-16 20:50:53 +02:00
Bastien Dejean
fefc9953f5 Catch some of the invalid queries 2016-04-16 18:43:42 +02:00
Bastien Dejean
3a9f8910d7 Update EWMH hidden state 2016-04-16 18:22:49 +02:00
Bastien Dejean
331cc9e2d5 Add node flag: hidden
Fixes #229.
2016-04-16 18:13:31 +02:00