Commit graph

237 commits

Author SHA1 Message Date
Bastien Dejean
41ce28dd3c Still trying to minimize the calls to arrange 2013-05-29 21:44:10 +02:00
Bastien Dejean
ef3913e302 Only call arrange when needed 2013-05-29 21:20:30 +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
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
c41110efd0 Don't try to focus windows in an empty desktop 2013-05-29 08:33:24 +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
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
Bastien Dejean
06065f0cf5 Merge branch 'master' into history
Conflicts:
	messages.c
	tree.c
2013-05-06 11:36:12 +02:00
Bastien Dejean
8e57511b50 Particularize swap_nodes 2013-05-06 11:28:32 +02:00
Bastien Dejean
a12e43f528 New message: put_status 2013-04-07 11:27:24 +02:00
Bastien Dejean
d533b704e4 New setting: split_ratio 2013-04-03 12:19:01 +02:00
Bastien Dejean
f97d35cd96 New arguments for swap: biggest and smallest 2013-04-02 15:02:45 +02:00
Bastien Dejean
afab0f66a4 New setting: auto_alternate 2013-03-22 19:17:03 +01:00
Bastien Dejean
25b21321d3 Remove trailing spaces 2013-03-16 19:20:20 +01:00
Bastien Dejean
f7e38e44a7 Remove useless reload_* messages 2013-03-12 21:43:44 +01:00
Bastien Dejean
b273b9c9bd New argument for the rule message: follow 2013-03-12 10:56:45 +01:00
Bastien Dejean
45cb3efd44 New message: balance 2013-03-10 18:28:30 +01:00
Bastien Dejean
6057feed61 Generalize swap_nodes
The `swap_nodes` function was not written to handle nodes from different
desktops. We need to be able to do that in order to move tiled windows
across monitors.
2013-03-07 21:34:33 +01:00
Bastien Dejean
944cbbd3e3 Merge branch 'master' into history 2013-03-06 14:00:33 +01:00
Bastien Dejean
829bc9b91f New setting: 'focus_follows_pointer' 2013-03-04 11:25:12 +01:00
Bastien Dejean
0acdab744c Remove setting: 'focus_follows_pointer'
It is impossible to make the feature work in every cases without
unwanted side effects, therefore it will only exists as a branch.
2013-03-04 11:19:24 +01:00
Bastien Dejean
6ea50d94a6 Make ffp reacts immediately 2013-03-04 10:41:35 +01:00
Bastien Dejean
ce0091c9ef Optional desktop name for list_history 2013-03-03 13:10:52 +01:00
Bastien Dejean
fbd397b986 Remove all references in history_remove 2013-03-03 12:41:29 +01:00
Bastien Dejean
409aad038f Merge branch 'master' into focus-history 2013-03-03 10:44:13 +01:00
Bastien Dejean
0f6f533a87 Unify tiled and floating pointer actions
The following 'grab_pointer' arguments are removed: 'move_tiled',
'resize_tiled'. The regular 'move' and 'resize_*' arguments shall be
used instead. The 'fence_grip' parameter is no longer meaningful and
has been removed. Moving and resizing now behaves the same for tiled and
floating windows.
2013-02-28 15:04:14 +01:00
Bastien Dejean
2d860de977 New 'grab_pointer' argument: 'resize_side'
The 'resize' argument is now called 'resize_corner'.
2013-02-28 12:27:26 +01:00
Bastien Dejean
df928c7053 New message: 'flip' 2013-02-26 12:54:01 +01:00
Bastien Dejean
5438f49c94 Quick desktop preview
If two identical *use* messages are received, the last one will be
equivalent to *alternate_desktop*.
2013-02-12 17:25:23 +01:00
Bastien Dejean
3b77dd4316 Remove the inner and outer borders
The concept of triple border was initially introduced to solve the
visibility problem occurring when the border's environment is similar to
the border itself. In practice however, it doesn't help much and has no
redeeming aesthetic value.
2013-02-06 22:23:49 +01:00
Bastien Dejean
7741295902 Add tiled move/resize pointer actions
New arguments for `grab_pointer`: `{move,resize}_tiled`.
New setting: `fence_grip`.
2013-02-04 14:22:41 +01:00
Bastien Dejean
890c4a1f3b Merge branch 'master' into focus-history 2013-01-19 21:45:05 +01:00
Bastien Dejean
030adea1fd New setting: 'apply_shadow_property'
Will not have any effect unless `compton` is started with the
`--respect-prop-shadow` option.
2013-01-19 20:53:46 +01:00
Bastien Dejean
6873053bbb New messages: 'drop_to{,monitor}'
'send_to' was broken, '--next' and '--prev' can't be options, and I
don't want to restrain the name of the desktops with 'send_to
DESKTOP_NAME|next|prev [--follow]' or handle multiple options: 'send_to
(DESKTOP_NAME|(next|prev --relative)) [--follow]' so I just created new
messages.
2013-01-13 11:10:15 +01:00
Bastien Dejean
5d3d5c5338 Don't start actions via unmanaged windows 2013-01-10 20:26:00 +01:00
Bastien Dejean
5f1fa05518 New message: 'swap' 2013-01-09 21:45:18 +01:00
Bastien Dejean
240b6798b0 New messages: '{grab,track,ungrab}_pointer' 2013-01-08 15:52:20 +01:00
Bastien Dejean
04f8334ba8 Make small style alterations to "send_to_monitor" 2013-01-07 11:48:04 +01:00
Bastien Dejean
ee633beda8 Merge pull request #21 from ThomasAdam/ta/send-to-monitor
Add --next/--prev options to 'send_to_monitor'
2013-01-07 02:38:32 -08:00
Thomas Adam
b6d70deff4 Add --next/--prev options to 'send_to_monitor'
This teaches the send_to_monitor command to send a client to either the
next/prev monitor rather than having to always specify a named monitor.
Such options are useful to be able to send clients to monitors relative to
their own position.
2013-01-07 09:18:41 +00:00
Bastien Dejean
45ef3b78cc New message: 'mouse'
The code related to mouse buttons handling is gone.
Mouse bindings must now be created via sxhkd.
2013-01-06 18:04:55 +01:00
Bastien Dejean
6526e56b8c Remove settings: '{numlock,capslock}_modifier'
The lock keys (num, caps, scroll) are now handled internally and the
aforementioned settings are obsolete.
2013-01-02 12:36:54 +01:00
Bastien Dejean
85c2983df2 New message: 'restore' 2012-12-27 22:36:06 +01:00
Bastien Dejean
b693e7dda9 Cleanup before leaving 2012-12-26 14:39:46 +01:00
Bastien Dejean
f7120e3e77 Make function name concur with message name 2012-12-25 23:13:11 +01:00
Bastien Dejean
164db4b6c2 New message: 'remove_rule' 2012-12-25 19:28:24 +01:00
Bastien Dejean
6b2d8152ca New message: 'list_rules' 2012-12-25 19:03:35 +01:00
Bastien Dejean
62f32bc655 New optional EXIT_STATUS argument for 'quit'
Also removed the 'reload' message because of its uselessness.
2012-12-24 12:02:35 +01:00