Commit graph

1248 commits

Author SHA1 Message Date
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
Nathan Isom
828c93fb29 leaf_monocle --> single_monocle completion. 2016-04-15 19:20:23 -05:00
Bastien Dejean
2b2ed4eb56 Implement focus_follows_pointer via enter_notify
I found a simple fix for #268.
2016-04-15 19:11:30 +02:00
Bastien Dejean
c997408920 Fix infinite loop in closest_monitor 2016-04-15 17:53:21 +02:00
Bastien Dejean
9adc0348ae Try not to freeze the server
Otherwise, we might end up with a frozen server when trying to perform
pointer actions on an unmanaged window.
2016-04-15 17:11:07 +02:00
Bastien Dejean
e2ea3c0254 Rely on precomputed rectangles whenever possible 2016-04-15 16:34:45 +02:00
Bastien Dejean
71a2fb91b0 Allow multiple constraints for the *query* domain
Example:
    bspc query -N -d '^3' -n .window

The above command will list the IDs of the windows of the third desktop.
2016-04-14 23:15:58 +02:00
Bastien Dejean
789cb8a504 Don't restrict node --flag to windows
This fixes a regression introduced by e8aa679.
2016-04-14 16:56:14 +02:00
Campbell Barton
73e402e49a Fix missing NULL check
could crash when windows were unmapped within a script.
2016-04-12 06:09:15 +10:00
Bastien Dejean
0042db16f4 Only grab what needs to be grabbed 2016-04-11 20:26:48 +02:00
Bastien Dejean
867b427356 Use the proper type for the return value of getopt 2016-04-11 18:37:49 +02:00
Bastien Dejean
0a09f5e4fa Don't return a freed node from insert_node 2016-04-11 18:13:05 +02:00
Bastien Dejean
5d01b48a04 Remove hard-wired node DIR fallback 2016-04-11 17:58:05 +02:00
Bastien Dejean
74f78ccd17 Remove obsolete descriptor 2016-04-11 17:51:24 +02:00
Campbell Barton
3eca593ef9 Cleanup: indentation
Mixing tabs/spaces
2016-04-11 07:27:28 +10:00