Julien Danjou
6178417b61
event: leave_notify: handle titlebar correctly
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-12 14:32:36 +02:00
Julien Danjou
9f34d20f08
event: titlebar are parts of client
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-12 14:29:53 +02:00
Uli Schlachter
95457c5ab7
Move the definition of globalconf into a header file
...
Pretty much every single source file needs this struct, so it makes sense to
define it in a common header instead of in every single .c file.
Signed-off-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-10 16:32:42 +02:00
Mariusz Ceier
904502552f
Focus events handlers
...
- We are tracking focus, using FocusIn/FocusOut events handlers, so user
should never be confused about which client has focus
- window_setfocus function generates focus change requests to the X server
- client_focus uses window_setfocus to set input focus
- revert_to when setting input focus set to Parent, compliant with
ICCCM convention ([1])
- DEBUG flag for those who want to debug focus handlers
Most of the changes, are compliant with X11 handbook ([0]), but some
where obtained experimentally.
Kudos to Maarten Maathuis who helped a lot with this.
[0]
http://cgit.freedesktop.org/xorg/doc/xorg-docs/plain/hardcopy/X11/xlib.PS.gz
[1] http://tronche.com/gui/x/icccm/sec-4.html#s-4.2.7
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Mariusz Ceier <mceier@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-07 15:42:25 +02:00
Julien Danjou
4d6bf949a8
Revert "event: add FocusOut handler"
...
This reverts commit 31ba962065
.
2009-04-06 13:27:53 +02:00
Maarten Maathuis
97fb463e76
event: also filter leave notify events
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-04 16:32:54 +02:00
Maarten Maathuis
31ba962065
event: add FocusOut handler
...
- I don't see why we should guess about what we recieved and whatnot.
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-04 16:32:46 +02:00
Mariusz Ceier
c40609642b
Fix for FocusIn event handler
...
10.7.1 chapter of X11 ([0]) describes many cases when FocusIn event is
generated. We are interested only in one FocusIn event type - the one
that is sent to window that gains focus.
Previous 'if' failed in some cases ([1]), this one should be better.
[0]
http://cgit.freedesktop.org/xorg/doc/xorg-docs/plain/hardcopy/X11/xlib.PS.gz
page 211
[1] http://www.mail-archive.com/awesome-devel@naquadah.org/msg01958.html
Signed-off-by: Mariusz Ceier <mceier@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-03 13:10:02 +02:00
Alex Cornejo
106e6ed5ab
Styling inconsistencies
...
Cheers,
Alex
From b5816ec55073507d4527ad3a77eae1878adb30d3 Mon Sep 17 00:00:00 2001
From: Alex Cornejo <acornejo@gmail.com>
Date: Sun, 29 Mar 2009 14:24:27 -0400
Subject: [PATCH] Fixed some styling issues.
Noticed in the latest pull that a commit introduced a lot of styling
inconsistencies, decided to remove those and others found by a simple
grep.
Signed-off-by: Alex Cornejo <acornejo@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-03-30 12:53:12 +02:00
Julien Danjou
84ee8f1f92
event: implements Bob Marley version 2
...
Version 1 was supposed to store somehow the mouse coordinates to drop
spurious EnterNotify.
Now, we use a simpler way: we just tell the X server we do not want to
receive this events while we are arranging, since we would get spurious
ones.
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-03-12 11:49:58 +01:00
Julien Danjou
8745d691fe
buttons: change grabbing method
...
We stop grabbing buttons on root windows. We select button press and
release events, and then we check that we have a bindings for them.
This allow to simply grab buttons on client once, and not redo such
things on arrange or mouse-over-window changes.
Most window managers do like this, anyway.
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-03-12 11:49:58 +01:00
Mariusz Ceier
926f458331
event: FocusIn and FocusOut events handlers
...
We need to handle FocusIn event to update focused client, when client
with GAIM sends SetInputFocus message (that is FocusIn event for WM).
Signed-off-by: Mariusz Ceier <mceier@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-03-03 17:24:50 +01:00
Maarten Maathuis
3d0a7e205a
event: small code harmonisation.
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-16 10:30:55 +01:00
Maarten Maathuis
e11bc9e553
event: block stacking related changes in configurerequest.
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-16 10:30:42 +01:00
Maarten Maathuis
04df061aa0
event: handle border size changes in configurerequest
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-16 10:30:23 +01:00
Maarten Maathuis
71bd32bcb1
event: Actually modify ev->x and ev->y for banned clients.
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-16 10:29:56 +01:00
Gregor Best
10bfb36d4b
wibox: add mouse_enter and mouse_leave for wibox
...
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-13 22:54:36 +01:00
Maarten Maathuis
bd6e568083
event: fix configurerequest
...
- We have to be careful with geometry around protocol code.
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-08 14:10:17 +01:00
Maarten Maathuis
88713851ab
event: Prevent seeing banned clients on the visible screen.
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-03 10:30:23 +01:00
Julien Danjou
f45cdee4eb
event: do not store resize events of banned clients
...
This should fix the problem seen with Firefox. When clicking on a
file that will launch a "Save as" dialog, and switching tag quickly,
the client is banned and move off of the viewport.
Then FF send a ConfigureRequest to re-move it to this negative
coordinates, which we did handle and set as its geometries.
Now we just honor the (bad and useless) move but we do not use
client_resize()
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-30 15:29:33 +01:00
Julien Danjou
d02403e6b9
event: fix ConfigureRequest handling (FS#424)
...
ConfigureRequest are sent with real X windows size, not fake size with
border and titlebar.
So we need to re-add size of borders and titlebar before calling
client_resize(), otherwise we set a X size the client can considers wrong
and then we start loopin forever since we do not handle its request to
be sized correctly.
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-10 10:03:41 +01:00
Julien Danjou
d9c868b627
client: implements per-client key bindings
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-05 16:59:20 +01:00
Julien Danjou
d779aa6c40
client: client screen change at manage is done in Lua
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-29 12:26:01 +01:00
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
Julien Danjou
7d79509df9
[keygrabber] Fix key mapping
...
- Use Mod5 to enter group 2 and 3
- Do not call the function is key not recognized
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 22:37:45 +02:00
Julien Danjou
13a96b6edd
[keygrab] Add keygrabbing infrastructure
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-10 17:22:36 +02:00
Julien Danjou
1049393840
Revert "Replace tags by workspaces"
...
This reverts commit 00f966ea04
.
Revert "[focus] Fix bogus arguments"
This reverts commit 816b5d16bc
.
Revert "[mouse] Fix bug with floating"
This reverts commit 89daa72790
.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-09 21:56:03 +02:00
Julien Danjou
00f966ea04
Replace tags by workspaces
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-09 16:30:46 +02:00
Julien Danjou
2b4ffb4b74
[event] Simplify event_handle_maprequest()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-05 18:13:11 +02:00
Julien Danjou
6ba90facb0
[client] Various documentation update and fixes
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-05 09:27:16 +02:00
Julien Danjou
4c41361d6c
[lua] Add object as argument to mouse click function
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 19:21:21 +02:00
Julien Danjou
2742318f16
[common] Use pixmap instead of drawable type
...
It's just more clear.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 16:13:41 +02:00
Julien Danjou
aecc3c0e45
[titlebar] Store titlebar inside client
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 11:50:21 +02:00
Julien Danjou
1e08a992b8
[titlebar] Rewrote titlebar based on widgets
...
This is the new titlebar handling code, based on widgets.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-03 18:41:54 +02:00
Julien Danjou
34cd5504a7
[widget] Make button press event statusbar indep
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-03 11:40:50 +02:00
Julien Danjou
05bb1d3833
[statusbar] Fix potential error if statusbar is Off on start
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-27 15:21:27 +02:00
Julien Danjou
0e3531d3a3
[client] Rework raise and mouse stuff
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-26 18:08:29 +02:00
Julien Danjou
083a4f13f7
[statusbar] Fix event handling on child window
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-25 14:01:09 +02:00
Julien Danjou
0bbd2d4b3e
Rename AwesomeConf to awesome_t
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-24 08:59:27 +02:00
Julien Danjou
db5430420d
[client] Create luaA_client_userdata_new() function
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 22:56:03 +02:00
Julien Danjou
a04417494b
[mouse] Rename Button to button_t
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 15:12:01 +02:00
Arnaud Fontaine
d662c66526
[event] Optimize xcb pointer and geometry queries.
2008-05-20 19:44:08 +01:00
Julien Danjou
1f046b3c9f
[everything] Switch from libconfuse to Lua
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-20 18:01:15 +02:00
Julien Danjou
4966c46d60
[event] Remove useless arguments to event_handle_mouse_button_press()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-11 16:56:18 +02:00
Arnaud Fontaine
162b8a690c
[all] Implement an atom cache in xutil as an ordered linked-list
2008-05-11 01:10:37 +02:00
Julien Danjou
effaa99b91
[awesome] Remove useless includes
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:35 +02:00
Julien Danjou
fb5b227214
[config] Rename Key to keybinding_t
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:05 +02:00
Arnaud Fontaine
6d1cb32837
[client] Fix regression (closed windows still mapped on the screen)
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:03 +02:00
Julien Danjou
d1635db59f
[client] Rename Client type to client_t
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:03 +02:00
Julien Danjou
a73b07f5d3
[statusbar] Rename Statusbar type to statusbar_t
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:03 +02:00
Julien Danjou
0cd46ab6b1
[widgets] Rename Widget type to widget_t
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:03 +02:00
Arnaud Fontaine
20442adfa0
Cosmetic
2008-05-03 12:01:03 +02:00
Julien Danjou
f31517817c
[statusbar] Remove statusbar_display
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:02 +02:00
Julien Danjou
a04395ddc9
[swindow] Store gc
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:02 +02:00
Julien Danjou
8f069ceb9b
[event] Cosmetic and manage enhancement
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-03 12:01:02 +02:00
Arnaud Fontaine
2f9409ba74
Desallocate replies and events properly
2008-05-03 12:01:01 +02:00
Arnaud Fontaine
1309287ead
Cleanup of TODO messages
2008-05-03 12:01:01 +02:00
Arnaud Fontaine
71e9100927
Remove useless xutil_root_window()
2008-05-03 12:01:00 +02:00
Arnaud Fontaine
02c99fccb8
Prefix xutil functions properly
2008-05-03 12:01:00 +02:00
Arnaud Fontaine
1eab0e44e7
* Make key symbols table, NumLock, ShiftLock and CapsLock global variables.
...
* Get CapsLock and ShiftLock masks properly and fix XLookupString() XCB equivalent.
2008-05-03 12:01:00 +02:00
Arnaud Fontaine
970d2e7bd9
When handling a ConfigureRequest, send a ConfigureWindow according to
...
the event value mask.
2008-05-03 12:01:00 +02:00
Arnaud Fontaine
163c1240d8
Fix incorrect call of xcb_configure_window()
2008-05-03 12:01:00 +02:00
Arnaud Fontaine
dafafd077c
Port Awesome to XCB
2008-05-03 12:00:59 +02:00
Jan Niehusmann
78dd0b8620
[event] Fix handling of keysym/keycode in event_handle_keypress.
...
Only compare the configured one of these two properties for any
given key.
Signed-off-by: Jan Niehusmann <jan@gondor.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-02 14:23:58 +02:00
Julien Danjou
6623668b6f
[config] Store keysym or keycode (FS#64)
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-02 11:12:53 +02:00
Julien Danjou
bbb1b233ca
[keys] Store KeySym, not KeyCode
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-04-18 14:57:52 +02:00
Julien Danjou
a09e6180bb
[mouse] Allow multiple bindings for mouse events
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-04-09 18:03:25 +02:00
Julien Danjou
2f513459e2
[titlebar] Give focus when clicking with Button1
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-04-08 16:11:13 +02:00
Julien Danjou
68c14355af
[events] Stop handling LeaveNotify events
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-04-03 13:17:33 +02:00
Julien Danjou
680555a317
[bobmarley] Stop grabbing Motion events
...
That fails in GTK+ apps anyway
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-04-02 11:39:11 +02:00
Julien Danjou
6ee23de391
[event] Only record mouse position on real button grabbing
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-28 17:49:11 +01:00
Julien Danjou
553af0db03
[event] Add more comment about the Bob Marley algorithm
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-26 16:57:50 +01:00
Julien Danjou
3fa15dd272
[core] Fix ConfigureRequest handling for non-floating windows
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-26 09:52:54 +01:00
Julien Danjou
536700b674
If the window did not received focus, restack it
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-25 11:28:56 +01:00
Julien Danjou
c5afa7753b
Split restack function out of focus, and fix click-to-raise
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-24 16:34:41 +01:00
Julien Danjou
7fae889888
Remove unused variable
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-24 15:26:13 +01:00
Julien Danjou
2045c811e2
Enhance configurerequest handling a bit
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-24 14:37:57 +01:00
Julien Danjou
8ba54194de
Switch from uicb_exec(0, globalconf.argv) to uicb_restart()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 21:57:07 +01:00
Julien Danjou
904cd4e06a
Normalize some window functions protos
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:22 +01:00
Julien Danjou
0a6c6e017b
Store physical screen id in statusbar and client, change get_phys_s() to screen_virttophys()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:22 +01:00
Julien Danjou
c496df9fc6
Add support for mouse bindings on titlebars
2008-03-23 15:52:22 +01:00
Julien Danjou
e22d57a0ca
Change the way to do resize
...
Go back to old school
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:20 +01:00
Julien Danjou
e5fbbcb612
Update titlebar on configure requests
2008-03-23 15:52:20 +01:00
Julien Danjou
b2261160b4
Enable multiple keys bindings to be executed with the same key press event
2008-03-23 15:52:19 +01:00
Julien Danjou
b51e352ed8
Fix errors with windows without titlebar
2008-03-23 15:52:19 +01:00
Julien Danjou
8b217359e9
Rename Auto to Maybe in Fuzzy; add Auto as Position; add support for titlebar as rule
2008-03-23 15:52:19 +01:00
Julien Danjou
f29b0660fa
Make sloppy focus work on titlebars
2008-03-23 15:52:19 +01:00
Julien Danjou
2c43fd6a69
Split titlebar properties into a struct with a SW and a Position
2008-03-23 15:52:18 +01:00
Julien Danjou
3c3015fd76
Remove resize_hints args to client_resize(), force usage of client_geometry_hints()
2008-03-23 15:52:18 +01:00
Julien Danjou
ea88e324a0
First titlebar support
2008-03-23 15:52:18 +01:00
Julien Danjou
c6eec955c8
Rename Area to area_t
2008-03-23 15:52:18 +01:00
Julien Danjou
eee37d063c
Use xinerama_is_active attribute and drop XineramaIsActive() usage
2008-03-23 15:52:17 +01:00
Julien Danjou
355b7d67b3
Change screen_get_bycoord() proto to take ScreensInfo as arg, and speed up things
2008-03-23 15:52:17 +01:00
Julien Danjou
0bde5c9e29
Move some screen functions from screen.c to new common/xscreen.c
2008-03-23 15:52:17 +01:00
Julien Danjou
867b2f0775
first version of awesome-menu
2008-03-23 15:52:15 +01:00
Julien Danjou
bd2f4a212e
Move grabkeys() out of event, and move it into window; clean and remove setup() function in awesome.c
2008-03-06 16:18:01 +01:00
Julien Danjou
d10036a366
Remove useless call to get_phys_screen() in grabkeys()
...
screen is already a physical screen since we use ScreenCount()
2008-03-06 16:09:38 +01:00
Julien Danjou
dd9a1b99c4
Rename events functions from handle_event... to event_handle
2008-03-06 09:09:59 +01:00
Julien Danjou
edb865a070
Simplify grabkeys() function
2008-03-06 09:07:33 +01:00
Julien Danjou
c1b503af1a
Comment event.c functions
2008-03-06 09:05:15 +01:00
Julien Danjou
de8dcbb724
replace drop_events arch by x,y pointer coordinates saving
2008-03-04 10:14:13 +01:00