Emmanuel Lepage Vallee
89edc92110
awful.rules: Add the 'tags' property
...
Due to recent changes, it was no longer possible to disable the
default tag selection handler. This commit extend the already
existing request::tag mechanism to let handlers select the tags.
2016-04-20 00:11:04 -04:00
Emmanuel Lepage Vallee
f72dcce4bd
titlebars: Use the request system rather than 'manage'.
...
As awesomerc.lua "manage" section is executed after the rules, using
a 'geometry' or 'placement' property in the rules was broken.
2016-04-20 00:11:04 -04:00
Emmanuel Lepage Vallee
299e155acc
client: Extend request::tag instead of awful.tag.withcurrent
...
There was a regression when refactoring the API. It was no longer
possible to disable the automatic tag selection.
Due to recent changes, it was no longer possible to disable the
default tag selection handler. This commit extend the already
existing request::tag mechanism to let handlers select the tags.
2016-04-20 00:11:04 -04:00
Emmanuel Lepage Vallee
7cd76e0529
awful.rules: Add 'placement' property
2016-04-20 00:11:04 -04:00
Emmanuel Lepage Vallee
b0aedcda67
awful.rules: Add `new_tag` property
...
Create a new dynamic tag for the client.
2016-04-20 00:11:04 -04:00
Emmanuel Lepage Vallee
090f2b83ac
awful.rules: Avoid trying to set some properties
...
This avoid unwanted signals or properties being set twice.
2016-04-20 00:10:42 -04:00
Emmanuel Lepage Vallee
ddf14a3ffc
awful.rules: Refactor the code to avoid many race conditions.
...
Testing demonstrated that many rule properties were broken when used
together. This commit try to address this by forcing an execution order
that doesn't trigger the problems.
It is still possible to write broken rules, but it should not happen by
accident anymore. Users should not try to assign the client a tag on
screen 2 and also use screen=screen[1].
2016-04-20 00:08:28 -04:00
Emmanuel Lepage Vallee
a2a5448442
awful.rules: Remove dead code
...
Also change the focus callback signature to match the others
2016-04-20 00:02:38 -04:00
Emmanuel Lepage Vallee
2a8cc08ca1
awful.rules: Make adding new properties easier.
...
This commit also add a 3 step process to apply rules.
Testing showed that many rules are currently broken because
of execution races.
Create a new dynamic tag for the client.
2016-04-20 00:02:01 -04:00
Emmanuel Lepage Vallee
fe8beaeaac
placement: Fix incorect use of the border_width
...
The code and tests assumed the border was equaly applied around
the geometry while the {x,y} pair of the geometry include the
border.
2016-04-18 23:56:23 -04:00
Emmanuel Lepage Vallee
bfc8f35fb9
placement: Support composition.
...
Multiple placement function can now be daisy chained like
in gears.matrix. This is useful for building rules.
2016-04-18 23:55:52 -04:00
Emmanuel Lepage Vallee
2b5d918a8d
awful.placement: Add a memento system.
...
It is used by the ewmh methods.
2016-04-18 23:55:52 -04:00
Emmanuel Lepage Vallee
fcd320c7f6
Make awful.rules mandatory
...
There was many unfixable race conditions that could only be
solved by better integrating the request:: system and
awful.rules. This has the side effect to make rules mandatory.
2016-04-18 23:55:52 -04:00
Emmanuel Lepage Vallée
bc2ddfe82d
Merge pull request #820 from Elv13/layout_tests
...
tests: Test all client layouts
2016-04-18 04:27:11 -04:00
Emmanuel Lepage Vallee
7654abcedc
layout.tile: Avoid negative geometries
2016-04-18 04:20:23 -04:00
Emmanuel Lepage Vallee
b938a99e1e
layout: Avoid creating negative geometries when adding gaps
2016-04-18 04:20:22 -04:00
Abdo Roig-Maranges
3c3e2daeb2
fix deprecation warning
2016-04-17 16:35:08 +02:00
Uli Schlachter
79e16cf950
awful.rules.execute: Make for loop easier to read
...
Signed-off-by: Uli Schlachter <uli.schlachter@informatik.uni-oldenburg.de>
2016-04-12 09:33:39 +02:00
Uli Schlachter
fb8c70b07d
awful.rules: Fix switchtotag with tag names
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-12 09:32:32 +02:00
Uli Schlachter
65fa565cef
Update awful.rules tag-related examples
...
Fixes: https://github.com/awesomeWM/awesome/issues/799
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-12 09:31:46 +02:00
Uli Schlachter
9cc28a8da5
awful.rules: Allow specifying tags by name
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-12 09:31:46 +02:00
Uli Schlachter
7d5e80a8ee
Add awful.tag.find_by_name
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-12 09:30:52 +02:00
Uli Schlachter
53bebfde02
awful.rules: Add support for screen names
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-12 09:27:37 +02:00
Uli Schlachter
2fe9a6dfdf
awful.rules: Fix a typo in the docs
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-12 09:26:21 +02:00
Emmanuel Lepage Vallee
f9add1c49a
awful.tag: Rename nmaster to master_count
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
e8908e2c62
awful.tag: Rename mwfact to master_width_factor
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
ff9e74ac0b
awful.tag: Remove the old dynamic property system
...
It is no longer relevant.
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
dd52f1ce86
awful.tag: Move functions to awful.client and screen
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
493684a5c0
awful.tag: Merge API documentation with tag
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
eb133175ba
awful.screen: Add some client getter properties
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
00d782f3d3
awful.screen: Deprecate functions, add methods
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
a4bc49b540
awful.screen: Merge screen and awful.screen API doc
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
16fe91d5f3
awful.client: Add a new section for layout related functions
...
The new stateful layout system try to avoid coupling and therefor
doesn't use these methods. It is not planned to deprecate the
stateless layout API, so these functions are just kept as-is with
the old naming convention.
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
d44d83fdb6
awful.client: Refactor all marked function into a property
...
This is unused internally since Awesome 3.2. There is probably 0 users
of this left, but I don't want to break the API.
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
43f1561f26
awful.client: Convert all remaining functions to methods.
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee
e15fea6a46
awful.client: Use the explicit @function tag for each helpers
...
This allow them to be placed in the right category.
2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee
0c1e4e3a2b
awful.client: Move `urgent` in their own submodule
2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee
587fc1fbb4
awful.client.shape: Turn into a client submodule.
2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee
608f3eb7cf
awful.client: Add an is_fixed property
2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee
dfdb6aedf7
awful.client: Document the new signals.
2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee
9027cabd8c
awful.client: Move `dockable` to the property system
...
Note that the setter is no longer necessary and is implicitly
generated.
2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee
fad55a868b
awful.client: Move the focus related methods into a submodule
2016-04-11 23:54:22 -04:00
Emmanuel Lepage Vallee
29feceb80d
documentation: Merge awful.client and client pages
...
ldoc doesn't allow to specify fields from class "A" into class "B",
so the only solution is to merge the 2.
Also, one of the most common complain on IRC since Awesome 3.0 is
that the client API doc is confusing since it is in 2 different files.
Also restore the `awful.client` doc link, point to `client`
This will avoid broken links.
2016-04-11 23:46:10 -04:00
Emmanuel Lepage Vallee
82342f055c
awful.client: Deprecate .floating.get/set
...
Begin to formalize the getter/setter syntax into a coherent one
2016-04-11 23:46:10 -04:00
Emmanuel Lepage Vallee
11f0620d7c
awful.key: Add a function to execute keybindings
2016-04-11 23:46:10 -04:00
Emmanuel Lepage Vallee
8d95610363
placement: Fix a minor issue with closest_corner
...
It was using the wrong matrix in 2x2 mode.
2016-04-10 03:27:20 -04:00
Emmanuel Lepage Vallee
8a0738a4bc
gears.screen: Merge into awful.screen
...
gears modules usually don't depend on Awesome C-API. This code has
been placed there for unclear reasons.
Also, there is ongoing work to unify each "concepts" API into one
single page. Having `gears.screen` go against this effort.
2016-04-06 23:32:44 -04:00
Daniel Hahler
742717ec22
doc: improve doc for awful.screen.focused
2016-04-04 23:49:43 +02:00
Daniel Hahler
c86c873779
minor: clarify mod-ctrl-shift-X comment; fix typo
2016-04-04 20:30:48 +02:00
Daniel Hahler
df21a85a9a
doc: fixes for spawn.with_line_callback
2016-04-04 20:30:48 +02:00