Commit graph

756 commits

Author SHA1 Message Date
Gregor Best
050a6bbb61 client: add client_seturgent() and remove urgent hint on focus
According to EWMH, the window manager is responsible for removing the
urgent state of a client. Also, this commit adds a new
client_seturgent(client_t *, bool) function to set the urgent state if
needed.

Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-11 19:04:09 +01:00
Mariusz Ceier
01eff69bf4 client: fix focus subsystem
We don't need to unfocus currently selected client.
Added WM_TAKE_FOCUS atom, so we can implement correct ICCCM,
focus behavior, in relation to Input Models ( sections 4.1.7 [1],
4.2.7 [2] ).
Currently correctly implemented are, "No Input", and "Passive"
models, and additionally works "Locally Active".
To test focus-in and focus-out events I used program from [3].

[1] http://tronche.com/gui/x/icccm/sec-4.html#s-4.1.7
[2] http://tronche.com/gui/x/icccm/sec-4.html#s-4.2.7
[3] http://mail.gnome.org/archives/gtk-devel-list/2001-November/msg00334.html

Signed-off-by: Mariusz Ceier <mceier@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-11 18:54:02 +01:00
Maarten Maathuis
fdee06fe31 client: fix titlebar stacking
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-11 01:56:57 +01:00
Maarten Maathuis
8e58460109 client: add above and below to capi + related fixes
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-09 12:30:19 +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
0626d42396 client: change border handling slightly + remove some old cruft
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-08 14:07:18 +01:00
Julien Danjou
21e6db0049 client: reset transient_for on unmanage
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-08 14:00:30 +01:00
Maarten Maathuis
41b892291d client: implement client struts in the capi.
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-08 13:21:20 +01:00
Julien Danjou
2c6dc1048d titlebar: correctly ban/unban (FS#443)
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-05 17:55:59 +01:00
Julien Danjou
a13f3fe553 client: handle tags assignment in awful (FS#441)
This also deactivate group management. This can be done in Lua now.

Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-03 12:20:17 +01:00
Maarten Maathuis
b8a371864b client, titlebar: fix some issues involving titlbars and dialogs.
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-03 10:32:00 +01:00
Julien Danjou
6c963a6eed client: check tags even after transient/group tag copy (FS#434)
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-03 10:24:04 +01:00
Julien Danjou
2a2ce6e83e client: switch to xcb-icccm 0.3.3
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-31 16:03:06 +01:00
Julien Danjou
b878e1491f client: reset height and width on unbanning
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-30 15:07:49 +01:00
Julien Danjou
9e89753018 client: change stacking order
We had:
ontop clients -> ontop wiboxes -> fs clients
Now:
fs clients -> ontop clients -> ontop wiboxes

Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-30 12:46:37 +01:00
Julien Danjou
f82ac1972f client: make `ontop' windows under fullscreen
`ontop' wiboxes will also be on top of `ontop' clients.

Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-30 10:47:54 +01:00
Julien Danjou
d08b04ce9d client: move client to screen correctly if belonging to a group
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-23 15:34:00 +01:00
Julien Danjou
33d3aeb7d0 client: do not honor groups if physical screen are different
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-23 11:11:26 +01:00
Julien Danjou
1d759531c4 client: add explicit braces
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-18 11:01:48 +01:00
Gregor Best
51d6df2483 client.c: fix deprecation of honorsizehints
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-11 19:11:48 +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
Mariusz Ceier
2e345fbcda client: allow selection of nofocus windows
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-02 11:24:48 +01:00
Julien Danjou
d6dbb00f10 client: add support for input faking
This is done using XTest extension.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-29 17:03:17 +01:00
Julien Danjou
9f47cb4d01 client: document content property
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-29 15:28:24 +01:00
Julien Danjou
bdbcd9352d client: add content property
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-29 15:21:00 +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
Arnaud VALLAT
ba6f5e42bb ewmh: add suport for _NET_ACTIVE_WINDOW message
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-15 10:47:07 +01:00
Maarten Maathuis
6e199bbd76 client, swindow: switch to a more convient definition of geometry
- In many places i see people correcting for border width and titlebars.
- This new definition is the equivilant of what used to be fullgeometry.
- The internal geometry is now contained to a few functions that few people ever touch.
- This should avoid confusion and make code easier.
- Also protect against several unsigned overflows.

Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:24 +01:00
Julien Danjou
7fb4d40e43 client: export size hints completely
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:24 +01:00
Julien Danjou
9d175377b8 client: stop duplicating size hints data
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:24 +01:00
Julien Danjou
f6917a2288 client: rename oldborder and stop reseting on unmanage
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:24 +01:00
Gregor Best
bc246c8b84 screen.c: fix movetoscreen for different sized screens
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:23 +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
Maarten Maathuis
0aba4013e9 client: Improve handling of transient windows.
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:23 +01:00
Julien Danjou
26da80f90a draw: remove custom markup support
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:23 +01:00
Maarten Maathuis
8442bb10ca client: Use window groups to improve initial tag placement.
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:22 +01:00
Maarten Maathuis
81f460ed76 client: Remove a line of incorrect comment.
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:22 +01:00
Maarten Maathuis
fbf28cc80d client: Expose leader_id.
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:22 +01:00
Maarten Maathuis
40c208a422 client: Expose group windows.
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
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
Maarten Maathuis
d7f92fdf9f ewmh: Support all known non-override redirect window types.
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 19:19:29 +01:00
Julien Danjou
e0de3b153e client: deprecate minimize in favor of minimized
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 19:19:29 +01:00
Julien Danjou
576a1e85fc client: maximize belongs to client internal
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 19:19:29 +01:00
Julien Danjou
dc6583c3e0 client: rename geometries
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 19:19:29 +01:00
Maarten Maathuis
f9c2ee62a3 client: reimplement client_{ban,unban} for more performance
- From now on clients shall remain mapped for their entire lifetime.
- This should seriously boost tag switching speed with composite active.
- A lesser improvement may be noticed in non-composite situations.
- Titlebars that are set to invisble are still unmapped.
  Since it would clutter the implementation and titlebars are cheap to render.
  Not to mention that invisible titlebars are pretty rare.
- It's safe to attach titlebars while the client is banned.
- Titlebars are explicitly removed at exit.

Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 19:19:28 +01:00
Julien Danjou
53a830aea1 mouse: move resize code to awful.mouse
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 16:51:41 +01:00