Commit graph

30 commits

Author SHA1 Message Date
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
0efe4cea32 Don't emit invalid desktop_focus events 2016-05-13 21:27:11 +02:00
Bastien Dejean
83a54fea51 Restore/dump monitors and desktops pointers as IDs 2016-04-16 20:50:53 +02:00
Bastien Dejean
9ae96ebdcd 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.
2016-03-16 15:15:27 +01:00
Bastien Dejean
c895ef0f0e Extract geometric functions from helpers.c 2016-02-26 14:22:03 +01:00
Bastien Dejean
dbaa2b377a Sort monitors by natural visual hierarchy
Fixes #405.
2016-02-23 21:19:12 +01:00
Bastien Dejean
b973353a7d Add event: monitor_swap 2016-02-01 11:46:03 +01:00
Bastien Dejean
eb07d2fc06 Generalize window commands to nodes 2015-12-22 19:25:45 +01:00
Bastien Dejean
d3166dd399 Add *focused* modifier to desktops and monitors 2015-11-26 20:07:46 +01:00
Bastien Dejean
5e9c8e068f 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.
2015-11-22 14:41:00 +01:00
Bastien Dejean
d98c3d17ae Document and homogenize subscriber events 2015-11-09 15:00:47 +01:00
Bastien Dejean
639763c906 Reinstate the motion recorder for FFP
Because many clients (e.g. termite) prevent us (maybe unknowingly) from
capturing motion events on their windows, we're forced to create a
window for this sole purpose.

Grabbing the pointer isn't an option, because it forces us to consider
some of the enter notify events we should be ignoring.
2015-06-12 22:05:22 +02:00
Bastien Dejean
56895ab9ab Implement focus_follows_pointer via enter notify events
The implementation based on a motion recorder had bad side effects.
2015-06-06 18:25:20 +02:00
Bastien Dejean
c49bc92d12 Use generic BSD 2-clause license
Fixes #176
2014-10-22 11:53:03 +02:00
Bastien Dejean
ab6b6c5e36 Use proper function names 2014-05-05 11:35:06 +02:00
Bastien Dejean
b9dcab1900 Remove trailing spaces in headers 2014-01-19 14:41:37 +01:00
Bastien Dejean
c231e8cf41 Indentation: convert spaces to tabs
http://lea.verou.me/2012/01/why-tabs-are-clearly-superior/
2014-01-18 16:30:00 +01:00
Bastien Dejean
7df593f4e8 Handle clients outside of every monitors 2013-11-28 11:32:20 +01:00
Bastien Dejean
c989aa7efc Merge translate_position and translate_client
- Expand `underlying_monitor` into `monitor_from_client` to avoid
  passing a NULL pointer to `translate_client`.
- Remove the `fit_monitor` setting (use the `--center` rule effect
  instead).
- Don't remap a window in it's last location (node invisibility would be
  the proper way to do this).
- Call `translate_client` after configure requests.
2013-10-27 11:25:34 +01:00
Steven Allen
344ab2d269 Relatively translate floating clients to the correct monitor 2013-10-26 15:36:05 -04:00
Bastien Dejean
ae1ed3b795 New setting: fit_monitor 2013-10-23 22:20:34 +02:00
Bastien Dejean
dc805f9a6a Consolidate fit_monitor 2013-10-20 20:33:34 +02:00
Bastien Dejean
15695c066b Add copyright header 2013-10-08 21:05:56 +02:00
Bastien Dejean
607e01e41e Decrease the header guards collision chances 2013-10-08 21:02:33 +02:00
Bastien Dejean
34b8692796 Use compliant header guard 2013-10-08 11:58:54 +02:00
Bastien Dejean
a75979be62 Implement tags 2013-10-05 22:32:40 +02:00
Bastien Dejean
d653f1cb70 Use consistent function names 2013-10-02 11:01:21 +02:00
Bastien Dejean
e60e87b12d Cosmetic improvements 2013-09-23 10:40:53 +02:00
Bastien Dejean
3dda8e7f6f Move a few functions from tree to desktop/monitor 2013-09-20 11:57:09 +02:00
Bastien Dejean
d168e919e3 Split types.c into {monitor,desktop,history}.c 2013-09-19 15:02:49 +02:00