Emmanuel Lepage Vallee
a4e463fd55
awful.mouse: Move more code into submodules.
...
Just like 5 years ago, the dependency mess caused by the giant
`awful.client`, `awful.tag` and `awful.placement` requires to
split the code into small files with less dependencies and include
those.
In this case, the goal is to use the `awful.mouse.client` functions
from `awful.client`.
2019-12-06 01:25:08 -05:00
Emmanuel Lepage Vallee
44cdde57a9
awful.mouse: Do not depend on awful.layout.
...
It was only used to check if its the floating layout, there is a
less intrusive dependency to check that.
2019-12-06 00:51:54 -05:00
Emmanuel Lepage Vallee
d6568993e2
awful.mouse: Add a "request::default_mousebindings" signal.
...
`rc.lua` and the module must attach to this signal to add buttons
to the default set.
2019-12-05 22:48:52 -05:00
Emmanuel Lepage Vallee
8b6ea8243a
awful.mouse: Add a function to remove a default client button.
2019-12-05 22:45:05 -05:00
Emmanuel Lepage Vallee
80c65c5175
awful.mouse: Add a `append_mousebindings` function.
...
To preserve the symetry between the `button` and `key` API.
2019-12-05 22:44:13 -05:00
Emmanuel Lepage Vallee
370e754006
awful.mouse: Add a function to add a new `awful.button`s to clients.
2019-12-05 22:38:14 -05:00
Emmanuel Lepage Vallee
4501f0e768
Allow to add and remove keys and buttons.
...
Another step in moving these APIs toward the common object oriented and
declarative paradigms used by other APIs.
This commit introduces the `awful.keyboard` module. It currenly only
exists as a placeholder for the first few append/remove function, but
will grow in scope in another pull request to expose the currently
private modifier APIs and to provide keybindings collision detection
and replace some of `awful.hotkey_popup` business logic.
The `keygrabber` tests which uses root keybindings are disabled for
now to keep the commit size small. This is necessary since the shims
will need many iterations of changes before this work again with the
new syntax.
2019-11-09 16:42:06 -05:00
Emmanuel Lepage Vallee
b4ece0f053
doc: Use an explicit tag for all static functions.
...
This way their name doesn't get mangle by the broken magic. It will also
eventually allow to `error()` in the template when the implicit
`@function` is used.
This commit also fixes a large number of issues found while
proof-reading everything.
2019-06-08 18:14:13 -04:00
ma9e
bed7abf5d1
Add support for gaps between snapped contents ( #2208 )
2018-04-22 02:02:52 -04:00
Emmanuel Lepage Vallee
2303e31355
mouse: Fix a bad refactoring
...
The `wibox_under_mouse` property was renamed `current_wibox` but
a call wasn't updated.
2017-08-19 22:50:17 -04:00
Kevin Zander
7687275607
Move awful.util.deprecate and awful.util.deprecate_class to gears.debug
...
Change all awful.util function calls to gears.debug function calls
Update all old deprecate calls to have deprecated_in=4
2017-03-15 20:08:22 -05:00
Emmanuel Lepage Vallee
51ddb5639e
mouse: Handle `maximized` client like `fullscreen` ones.
...
There is already a way to prevent them from moving them, but the
next few commits will remove it. There is no reasons to handle
this differently from fullscreen clients.
2017-02-07 11:12:40 -05:00
Holger Schurig
bf2c1993db
doc: fix signals ( #1455 )
...
- rule reordering was mentioned twice in the NEWS
- fix all shown luadoc errors
- add missing descriptions for signals in module "awesome"
2017-01-28 15:03:56 +01:00
Uli Schlachter
259c4f716f
Remove @release @AWESOME_VERSION@ everywhere ( #1157 )
...
It does not provide much value. The version number is already known to
ldoc globally in the "description" variable.
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-10-09 22:36:20 +02:00
Emmanuel Lepage Vallee
9b96b4b448
resize: Use the right mouse cursor
...
Fix #1018
2016-09-10 23:56:10 -04:00
Emmanuel Lepage Vallee
ce5cdb49ed
mouse: Add the current_widget_geometry property
...
Apparently, __index cannot return multiple values, so the previous
code wasn't working.
2016-08-20 16:21:48 -04:00
Emmanuel Lepage Vallee
f20053bb33
awful.mouse: Fix 4 invalid function names
2016-07-30 15:49:46 -04:00
Emmanuel Lepage Vallee
722879bcf7
mouse.resize: Handle when there is no selected tag
...
This should be very rare, but _is_ possible.
2016-06-27 02:44:07 -04:00
Uli Schlachter
cdf16d4660
awful.mouse: Implement read-only properties
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-06-08 20:28:30 +02:00
Emmanuel Lepage Vallee
4b395bea81
mouse: Port wibox.move to the placement API
2016-05-15 17:17:12 -04:00
Emmanuel Lepage Vallee
dafd29f2a3
awful.wibox: Rename to awful.wibar
...
Why:
* Two different (but related) concepts had the same name
* Users were confused for years on IRC
* The wibar name was already in use in some doc to avoid confusion
2016-05-15 17:17:12 -04:00
Emmanuel Lepage Vallee
21c9766aa6
placement: Fix under_mouse
...
The function stopped actually setting the geometry...
This was missed by tests because of an oversaw elsewhere.
2016-05-15 17:17:12 -04:00
Emmanuel Lepage Vallée
504018343b
Merge pull request #873 from Elv13/geometry_overhaul_p3.01
...
Geometry overhaul p3.01
2016-05-05 16:23:11 -04:00
Emmanuel Lepage Vallee
58ecc69af8
mouse: Add 'current_widget'
2016-05-04 17:25:05 -04:00
Emmanuel Lepage Vallee
cf0a4b42b4
mouse: Add `current_widgets`
2016-05-04 17:25:05 -04:00
Emmanuel Lepage Vallee
c1fc222d89
mouse: Fix `current_wibox`
2016-05-04 17:25:05 -04:00
Daniel Hahler
7bd9cd7fd1
doc: fix usage of "mouse.move" as a string ( #871 )
...
Ref: https://github.com/awesomeWM/awesome/issues/834#issuecomment-216141389 .
2016-05-03 12:06:50 +02:00
Emmanuel Lepage Vallee
3dab42e6a2
mouse: Restore support for layouts with their own mousegrabber
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
cd632e4a84
mouse.dragtotag: Fix and port to the new move API
...
It wasn't really working as it would in other WM. It might have
been a feature, but I got the behavior in line with KDE and Gnome.
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
a62e749216
mouse.snap: Add some configuration options
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
e31563b056
mouse.move: Return the corner
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
a39b93f2e3
mouse: Add is_*_mouse_button_pressed helper properties.
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
e78ad709e7
doc: Move request:: handler to their own documentation section
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
47fffb5eee
mouse: Add current_client property
...
It is called wibox instead of drawin because from the user
point of view, it will be a wibox anyway.
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
fc2d359722
doc: Add a coords example
...
This forced the `coords()` documentation to be moved to Lua.
Keeping it in the C file caused yet another example CMake hack.
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
800b8c7d4a
doc: Merge awful.mouse and mouse documentation pages
...
Just like client, tag and screen, this is to avoid new users some
confusing implementation details.
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
0b6cd90dce
mouse: Implement the Lua custom property handler
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
80ee4e9f5d
awful.mouse.snap: Add a visual cue
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
baec2efe2d
awful.mouse.move: Fix snapping support
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
86ca6222e2
awful.mouse.snap: Add a configurable default distance
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
2624370cc0
awful.mouse: Move snap into a submodule
2016-04-30 04:27:34 -04:00
Emmanuel Lepage Vallee
cdcfb913f1
awful.mouse: Move clients using request::geometry
2016-04-30 04:27:33 -04:00
Emmanuel Lepage Vallee
be455cb140
awful.mouse: Add a request::geometry handler.
2016-04-30 04:27:33 -04:00
Emmanuel Lepage Vallee
f8f57fb6b7
awful.mouse: Add a generic mousegrabber
...
Previously, all layouts had their own mouse grabbing logic. The
new one is based on the client request::geometry feature.
2016-04-30 04:27:33 -04:00
Emmanuel Lepage Vallee
7242b30c01
awful.mouse: Deprecate awful.mouse.client.corner
2016-04-30 04:27:33 -04:00
Emmanuel Lepage Vallee
693a87ef2e
mouse: Avoid an error when the client is killed while moving
...
to reproduce:
1) spawn an xterm
2) enter 'sleep 10 && killall xterm'
3) start moving the terminal
There will be an error
(found by a yet to be commited integration test)
2016-04-27 19:55:39 -04:00
Emmanuel Lepage Vallee
2ccc7c88d6
awful.mouse.snap: Fix invalid fallback
2016-04-23 22:12: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
43f1561f26
awful.client: Convert all remaining functions to methods.
2016-04-11 23:54:28 -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