Commit graph

511 commits

Author SHA1 Message Date
Bastien Dejean
311fbc06d5 New setting: pointer_follows_monitor 2013-06-05 21:21:12 +02:00
Bastien Dejean
6296eebd13 Only emit one call to put_status in focus_node 2013-06-05 16:14:53 +02:00
Bastien Dejean
fee7d5146c Fix silly mistakes in send_desktop_to 2013-06-05 11:35:43 +02:00
Bastien Dejean
412fa576f9 Add --follow option to send_desktop_to 2013-06-04 13:45:18 +02:00
Bastien Dejean
25136fc9b5 Add debug outputs for the motion recorder 2013-06-03 20:59:27 +02:00
Bastien Dejean
2e2564c1e4 Remove obsolete debug message 2013-06-03 11:50:31 +02:00
Bastien Dejean
23d392e49f When unlinking a desktop clear the prev/next links 2013-06-03 10:18:06 +02:00
Bastien Dejean
ffea1b6f52 Synchronize the motion recorder and the root window 2013-06-02 22:03:51 +02:00
Bastien Dejean
1432226ab6 When transferring a desktop, hide it 2013-06-02 21:20:11 +02:00
Bastien Dejean
a46f09650b Set split mode before drawing borders 2013-06-02 21:04:24 +02:00
Bastien Dejean
34d4014648 Remove unnecessary --verbose option 2013-06-02 14:24:31 +02:00
Bastien Dejean
85176e363e Only keep one option for swap 2013-06-02 14:18:30 +02:00
Bastien Dejean
962280b72d New message: send_desktop_to 2013-06-02 11:15:19 +02:00
Bastien Dejean
36a21d8858 Update and enhance documentation 2013-06-02 11:00:15 +02:00
Bastien Dejean
0eed40d2f8 Fix stacking of window moved via send_to
When a window is moved to the active desktop of another monitor, we must
reinforce the correct z-order.
2013-06-01 14:27:18 +02:00
Bastien Dejean
d9ffb7050f New message: remove_desktop 2013-06-01 12:00:26 +02:00
Bastien Dejean
e01130f5d1 Fix put_status crash on cleanup 2013-05-31 21:24:39 +02:00
Bastien Dejean
44534985ea Consolidate monitor disconnection handling 2013-05-31 16:10:54 +02:00
Bastien Dejean
12aaca4628 Don't arrange after biggest 2013-05-30 13:40:22 +02:00
Bastien Dejean
60bffe22a6 Create bspc manual symbolic link 2013-05-30 13:28:40 +02:00
Bastien Dejean
896e220e48 New options for swap: --{keep,swap}-focus 2013-05-30 13:20:34 +02:00
Bastien Dejean
eafc112ca2 New message: biggest 2013-05-30 12:14:22 +02:00
Bastien Dejean
82984cf0d5 Fix focus_node regression 2013-05-30 09:54:17 +02:00
Bastien Dejean
eecc8291b9 Handle desk and last_desk in remove_desktop 2013-05-29 21:58:25 +02:00
Bastien Dejean
41ce28dd3c Still trying to minimize the calls to arrange 2013-05-29 21:44:10 +02:00
Bastien Dejean
e401efd2b4 Add a few debug messages 2013-05-29 21:25:38 +02:00
Bastien Dejean
7de037f459 Don't try to arrange empty desktops 2013-05-29 21:23:34 +02:00
Bastien Dejean
ef3913e302 Only call arrange when needed 2013-05-29 21:20:30 +02:00
Bastien Dejean
b87737565b Fit windows in their updated monitors 2013-05-29 21:19:11 +02:00
Bastien Dejean
26c84e8221 Avoid NULL node and non-NULL root in focus_node 2013-05-29 20:30:01 +02:00
Bastien Dejean
1e064aa723 Handle remote focus corner case in transfer_node 2013-05-29 20:21:51 +02:00
Bastien Dejean
687c9962f1 Always update focus and history when inserting 2013-05-29 15:24:48 +02:00
Bastien Dejean
6dfff24ce8 Set focus pointer when inserting nodes 2013-05-29 15:13:34 +02:00
Bastien Dejean
3b0d482f41 Refactor focus_node and select_*
The select_* and focus_node where initially made independent as to
observe the --follow option. But this is in fact not necessary.
2013-05-29 14:34:27 +02:00
Bastien Dejean
ff9db2a94a Three arguments is enough for focus_node
The fourth argument of `focus_node` was introduced to avoid calling
unneeded functions from `manage_window`: the reason is not good enough
to justify the existence of that extra argument.
2013-05-29 11:36:01 +02:00
Bastien Dejean
c7f3d1a695 Handle removal of focused monitor 2013-05-29 10:37:52 +02:00
Bastien Dejean
d8f54f3e3e Select focused desktop when selecting monitor
Also:
- Observe `auto_alternate` with `use_monitor`.
- Update `last_mon` when a monitor is removed.
2013-05-29 10:00:25 +02:00
Bastien Dejean
82e5a6dc55 Set ID of monitor when adding it 2013-05-29 08:35:13 +02:00
Bastien Dejean
e108e11167 Consolidate RandR fallback 2013-05-29 08:35:13 +02:00
Bastien Dejean
38b3f3531a Handle monitors via RandR 2013-05-29 08:35:13 +02:00
Bastien Dejean
c41110efd0 Don't try to focus windows in an empty desktop 2013-05-29 08:33:24 +02:00
Bastien Dejean
402f7d6cf3 Prevent flickering of grab_pointer focus
`stack_tiled` can generate flickering when monocle windows are involved,
so we shall try to avoid triggering it whenever possible.
2013-05-26 22:57:32 +02:00
Bastien Dejean
789697360c Refresh TODO list 2013-05-08 15:13:06 +02:00
Bastien Dejean
5676458548 New message: 'restore_history'
In addition, the message previously known as 'restore' is now called
'restore_layout'.
2013-05-08 15:10:09 +02:00
Bastien Dejean
82bd5644cb The birth_rotation attribute replaces birth_mode
The `birth_mode` was not sufficient for properly unrotate the brother of
a removed node. The `birth_rotation` stores the rotation applied to the
brother subtree when the node was inserted.

This should help to enforce that (L + n) - n = L in every possible
cases. Which means that adding a node and removing it should leave the
layout unchanged.
2013-05-08 14:10:53 +02:00
Bastien Dejean
365c17b429 Handle birth mode when toggling the floating state 2013-05-08 11:28:42 +02:00
Bastien Dejean
a56e5ddfe6 Handle the node's birth mode consistently 2013-05-08 11:05:48 +02:00
Bastien Dejean
bb34c26052 Fix removal of vacant node
When vacant node are removed we mustn't rotate any subtree since the
node is already out of the tiled layout.
2013-05-07 23:15:18 +02:00
Bastien Dejean
962f007d85 Update TODO 2013-05-07 22:57:20 +02:00
Bastien Dejean
e6da88fa1c New setting: focus_by_distance
The aforementioned setting, when set, makes the focus movements based on
the distances between the window sides.

The `{prev,next}_leaf` functions were taught not to climb above their
roofs.
2013-05-07 22:45:14 +02:00