Julien Danjou
cd667802db
hooks: manage gets an extra startup arg
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-29 12:23:37 +01:00
Julien Danjou
53f58aa1a6
keybinding: move to key
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-18 11:33:52 +01:00
Julien Danjou
8193a9cf0c
keygrabber: identify release events
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-16 15:02:54 +01:00
Julien Danjou
67a9f0d302
keybinding: add support for release event
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-16 12:00:51 +01:00
Julien Danjou
59c04ce3dc
wibox: add mouse bindings
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:24 +01:00
Maarten Maathuis
dbbe48898a
client: Also check for struts on client_{ban,unban}
...
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:23 +01:00
Gregor Best
0235d995c2
mouse: add object_under_pointer
...
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:23 +01:00
Julien Danjou
8b88541f0a
xembed: store windows in an array
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:22 +01:00
Julien Danjou
c3c20c4f8e
client: move floating state handling to Lua
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:22 +01:00
Julien Danjou
26de388c4c
client: add mouse_leave hook
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:22 +01:00
Julien Danjou
2037a053a9
layout: move layout code to Lua
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:21 +01:00
Julien Danjou
0e972d4845
mousegrabber: import
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 16:51:41 +01:00
Julien Danjou
ccc6452d49
widget: change widget initialization code
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 16:51:41 +01:00
Julien Danjou
e7abdd5cc0
event: simplify widget_getbycoords() proto
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 16:51:40 +01:00
Julien Danjou
e3f722f024
event: simplify event_handle_widget_motionnotify() proto
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 16:51:40 +01:00
Julien Danjou
a5de5ab48c
widget: remove button property
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 16:51:40 +01:00
Julien Danjou
0716ecb4fd
widget: remove old cache system
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 16:51:40 +01:00
Julien Danjou
d1db6903fa
luaa: check that function is not NIL before pushing and calling
...
Otherwise we may push unused elements because dofunction() checked
_after_ if the function was nil, or not.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-20 17:48:23 +01:00
Julien Danjou
ce99ab2a3a
keygrabber: add stop() method
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-10 17:31:18 +01:00
Julien Danjou
cfac43ecdf
event: regrab keys on keyboard mapping change (FS#365)
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-31 19:22:24 +01:00
Julien Danjou
4f61841f0e
event: save mouse position in wibox events
...
This allow focus to work correctly if wibox disapears.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-25 15:35:14 +02:00
Julien Danjou
25bf12868a
widgets: use a geometry callback
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-22 17:32:17 +02:00
Julien Danjou
248bfb0e95
event: reset wibox widget mouse_over on leave
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-21 17:57:10 +02:00
Julien Danjou
1ddbfaaaf0
event: handle enter widget on window enter
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-21 17:50:35 +02:00
Julien Danjou
569ea75409
wibox: handle widget_node_t as array rather than list
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-21 17:21:59 +02:00
Julien Danjou
0e3ff0bc8f
event: get coordinates of visible widgets only
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-20 19:49:24 +02:00
Julien Danjou
ede5a54355
event: handle background changes
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-10 18:27:43 +02:00
Julien Danjou
0359bb4e4e
event: only grab root if mouse is on root
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-26 17:45:52 +02:00
Julien Danjou
5709435392
wibox: rework, merge titlebar
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-26 15:00:42 +02:00
Julien Danjou
305af484f5
wibox: add full geometry
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-26 15:00:27 +02:00
Julien Danjou
f374210382
client: add property hook
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-26 15:00:27 +02:00
Julien Danjou
0feb7de68e
wibox: merge statusbars and titlebars Lua objects
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 14:34:43 +02:00
Julien Danjou
34fe130307
wibox: merge statusbar and titlebar types
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:56 +02:00
Julien Danjou
24d6341c39
event: add partial redraw
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:56 +02:00
Julien Danjou
669c023ca9
event: fix left/right events
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:56 +02:00
Julien Danjou
2e17f8a662
swindow: do not store phys_screen; store border color
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:56 +02:00
Julien Danjou
44ef511aed
screen: store statusbars as array
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:56 +02:00
Julien Danjou
4193e81fa8
screen: merge with xscreen, remove screens_info
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:56 +02:00
Julien Danjou
8a7e522ba1
ewmh: update window hints
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:55 +02:00
Julien Danjou
6ac0c4130c
image: merge draw_image_t and image_t
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:55 +02:00
Julien Danjou
2be620618b
property: use xcb property handler system
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:55 +02:00
Julien Danjou
856192fa99
client: merge icon_path and netwm icon
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:55 +02:00
Julien Danjou
2fad185fcf
ewmh: store netwm icon as draw_image_t
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:55 +02:00
Julien Danjou
5198f0a7b0
event: unmanage or external reparenting (FS#41)
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:55 +02:00
Julien Danjou
e0d3da455b
client: split minimized out of hidden
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:55 +02:00
Julien Danjou
b4d89eec6c
screen: move screen_getbycoord()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
Julien Danjou
3a45831242
client: manage take phys_screen as arg
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
Julien Danjou
fcde8d229b
ewmh: add support for _NET_WM_STRUT_PARTIAL
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
Julien Danjou
427679b0fa
client: use a type attribute for NET WM window type
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
Julien Danjou
63b5e65ebd
placement: deprecate in favor of awful.placement
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
Julien Danjou
0dde158b5f
hooks: rename mouseover to mouse_over and simplify config
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
Julien Danjou
e871bbfa18
widget: add support for mouse enter and leave events
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
Julien Danjou
b92833274a
event: simplify widget get by coords
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
Julien Danjou
abb497fa56
client: rework all stacking stuff
...
- Stacking is now per attribute
- Fullscreen does not imply isfloating
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
Julien Danjou
5449374e3d
client: check for visibility before arranging
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:53 +02:00
Julien Danjou
3b895d84ed
mouse: rework mouse buttons API, support release events
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:53 +02:00
Julien Danjou
be52f5b047
update to new xcb-event
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-16 15:36:44 +02:00
Arnaud Fontaine
00d8a0cddd
Update to new xcb-util library.
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-15 14:02:23 +02:00
Julien Danjou
c79d9ef991
event: handle mapping notify events
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-07 23:22:53 +02:00
Julien Danjou
11dfa832a8
factorize quit/exec elements, and reparent systray
...
That fixes FS#296.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-02 17:12:10 +02:00
Julien Danjou
da9f6bbceb
xutil: remove XUTIL_ANY_MODIFIER
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-19 10:59:40 +02:00
Arnaud Fontaine
cc367647e7
window: rename functions according to the rest of code
2008-08-13 19:06:20 +02:00
Arnaud Fontaine
73c4415a0a
window: make window_getstate() asynchronous and rename this function
...
according to the rest of code.
2008-08-13 19:01:36 +02:00
Arnaud Fontaine
9e3fbfdb4b
ewmh: make ewmh_window_icon_get() asynchronous
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-13 12:31:12 +02:00
Julien Danjou
1fbe4f0d5e
ewmh: store NET_WM icon
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-11 23:10:02 +02:00
Arnaud Fontaine
b655f6348c
xutil: rename xutil functions according to the rest of code.
2008-08-11 18:05:35 +02:00
Julien Danjou
24fbbd9939
event: mark arrange on map
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-11 12:30:18 +02:00
Julien Danjou
8d1f20c5ad
client: implement maybevisible(), and use it for maprequest
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-11 11:57:57 +02:00
Julien Danjou
db9e50e728
event: fix memory leak on client size hints update
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-06 16:13:42 +02:00
Kanru Chen
cb1de2633d
event: Ungrab root when mouse enters client window.
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-03 19:56:19 +02:00
Julien Danjou
e0abfac892
event: redraw titlebar right after config req
...
This allow more beautiful drawing effect.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-31 17:39:20 +02:00
Julien Danjou
2555a72e63
xutil: use xcb_get_wm_transient_for instead of xutil fct
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-28 17:54:33 +02:00
Julien Danjou
3c32297e07
event: handle iconify request
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-28 17:13:30 +02:00
Julien Danjou
e1fe38289b
event: use ewmh restart
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-23 09:03:52 +02:00
Kanru Chen
df57c34a06
event: remap on restart
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-22 10:27:01 +02:00
Julien Danjou
3f46ec2152
tasklist: use a callback for label
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-09 12:12:52 +02:00
Julien Danjou
00e9af11b8
client: fix title update
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-08 18:04:08 +02:00
Julien Danjou
1d64f8231c
client: use atom name to update title
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-08 08:42:39 +02:00
Pierre Habouzit
3a7dd8c715
Hide keybindings away 1/2
...
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-01 08:12:22 +02:00
Julien Danjou
b584b19104
atoms: add all used atoms
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-30 18:55:14 +02:00
Julien Danjou
14061b4e7a
systray: move KDE handling into client_manage()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-30 13:09:24 +02:00
Julien Danjou
207f06d720
systray: add KDE work around
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-30 13:06:23 +02:00
Julien Danjou
ba63e7e784
systray: do not manage windows twice
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-29 13:38:39 +02:00
Julien Danjou
e1e12f4c0a
event: only map if the client is visible
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-28 11:47:29 +02:00
Julien Danjou
dda116fea0
event: map window if they ask for
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-27 22:50:10 +02:00
Pierre Habouzit
585496b66a
Make event handler setup private to the event module.
...
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-26 22:47:56 +02:00
Julien Danjou
013b2afe62
remove useless #include
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 18:10:45 +02:00
Pierre Habouzit
d45590fbcc
0 may be a valid function, LUA_REFNIL is what we want.
...
Also don't forget to unref the function on deletion.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 14:23:59 +02:00
Pierre Habouzit
5a07ee4946
Put keybindings in binary searchable arrays.
...
This patch sorts keybindings in arrays by keycode or keysym to speed up look
up using binary searches. This is a preliminary work to enable more powerful
keybindings stuff, where keybindings can be cascaded or why not, attached to
specific clients.
Interstingly enough, this patch saves 100ko of initial memory (Heap) usage here.
The underlying idea is that we should be able to define keybindings_t as
trees of keybindings_t which would then define key sequences.
The OO approach kind of make sense in fact, since you create a base
keybinding (e.g. reacting on Mod4-w) and then you will probably (with
appropriate apis) be able to populate new submaps from that point more or
less dynamically.
And if you have two keybindings on Mod4-w, then adding them will replace the
previous one. This means that you can fake per-client bindings with e.g.:
k_default = keybindings.new({"Mod4"}, "w", something);
k_mplayer = keybindings.new({"Mod4"}, "w", something_else);
k_default:add()
and in your focus hook:
if /* code for testing if it's mplayer */ then
k_mplayer:add()
else
k_default:add()
end
This would not work before, it does now.
It will take way more sense with submaps of course.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 11:04:56 +02:00
Pierre Habouzit
8c717622fd
Put keybindings in arrays.
...
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-25 11:04:56 +02:00
Julien Danjou
678c9e3334
event: spurious printf removal
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-24 19:58:24 +02:00
Julien Danjou
ec414ae39b
systray: set orientation
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-24 19:56:10 +02:00
Arnaud Fontaine
452b89d6ec
Always use unchecked xcb functions
2008-06-21 19:56:51 +09:00
Julien Danjou
92f369e3aa
lua: userdata_new is now macro
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-18 18:31:35 +02:00
Arnaud Fontaine
b9e1ec69d0
Replace xcb_aux_get_screen() by a safer function
2008-06-17 17:14:00 +02:00
Julien Danjou
26738c4dab
xshape: remove, nothing prove it's really useful
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-17 15:06:05 +02:00
Julien Danjou
5bae1f0c37
window: rework root_grabbuttons()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-17 14:35:58 +02:00
Julien Danjou
e5e379656a
systray: import widget
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-14 18:12:16 +02:00
Michael Gehring
e8e87c5a85
update event handler documentation.
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-13 20:33:44 +02:00
Julien Danjou
1142c382f7
mouse: make button bindings objects
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-13 15:35:47 +02:00