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
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
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
506e453a2f
remove deprecated functions
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-12 16:51:40 +01:00
Julien Danjou
3ebcc1aa5a
luaa: add more deprecation information
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-14 12:12:01 +01:00
Julien Danjou
15f1200f66
titlebar: wipe simplewindow before unrefing wibox (FS#373)
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-14 10:02:10 +01:00
Julien Danjou
207df8e2b0
luaa: change deprecate() with more useful info
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-05 11:54:08 +01:00
Julien Danjou
dfd380dde6
titlebar: fix border color setting
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-29 17:29:34 +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
2dfde8c181
util: remove off position
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-26 15:00:27 +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
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
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
fcc93e5f88
draw: merge draw context into swindow
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:56 +02:00
Julien Danjou
6a5ad6af9b
common: move draw, xscreen and swindow out
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:55 +02:00
Julien Danjou
b44a1fea35
titlebar: restack clients on titlebar add
...
This is mandatory since we do not know where the client is on stack.
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
87a89b6aa1
use xcb_flush; move refresh stuff in common function
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-26 19:35:37 +02:00
Julien Danjou
d261f9a3cc
widgets: generic set/get for list
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-19 19:13:46 +02:00
Julien Danjou
c5dfc8a40a
titlebar: set to NULL after unref()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-19 14:41:12 +02:00
Arnaud Fontaine
193a73c5d9
draw: make xcolor_init() asynchronous.
2008-08-12 14:53:57 +02:00
Julien Danjou
cde948bd61
titlebar: add position in __newindex
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-08 17:15:23 +02:00
Julien Danjou
bfad5a0d0d
titlebar: add position in __index
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-08 17:10:29 +02:00
Julien Danjou
56b42a7878
titlebar: widgets are now returned/set as array
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-08 16:49:26 +02:00
Julien Danjou
874e62d849
titlebar: replace client_get() by client attribute
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-08 16:04:18 +02:00
Julien Danjou
063bf2083d
titlebar: use need_update system (like statusbar, …)
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-31 14:11:07 +02:00
Julien Danjou
3db9f29453
appicon: new widget, used in titlebar
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-29 16:51:21 +02:00
Julien Danjou
4ba2e22bae
widget: add detach callbacks
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-29 11:50:40 +02:00
Julien Danjou
80b79717ba
various documentation update for _index()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-28 16:03:38 +02:00
Julien Danjou
909b55db2e
titlebar: fix color initialization
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-24 18:18:18 +02:00
Julien Danjou
36fd44d1a0
draw: add char len as arg of xcolor_init()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-10 15:30:16 +02:00
Julien Danjou
015f529928
documentation update and disallow tag name change
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-10 11:02:10 +02:00
Pierre Habouzit
46ea7c45aa
Get rid of the color name, and generate a #RGBA value on the fly if needed.
...
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-02 11:09:10 +02:00
Pierre Habouzit
924078c898
Streamline xcolor_t.
...
Do not have a ->name char * field, but a char[32] instead. This isn't a
big problem, the longest color in /etc/X11/rgb.txt is 23 chars long, and
if it becomes a problem one day, one could just strip the name and
generate an hexadecimal representation on the fly instead. But allocating
the name is asking for a lot of trouble.
Since we do not allocate anything anymore, just don't allocate anything
anymore at all, it avoids the mess of xcolor_copy/_wipe and fixes a lot of
sleeping bugs (p_dup were used e.g., which is wrong).
Pass xcolor_t *, xcolor_t becomes too big to be passed by value. Add
consts at some places.
xcolor_new allocates nothing, hence is renamed xcolor_init, has xcolor_t
as a first argument (OO-style, this is self), and doesn't touch the
structure at all if it returns false, which allow us to skip a lot of
intermediates values.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-02 10:36:46 +02:00
Julien Danjou
3e9cf64123
titlebar: fix memory leak on error, add widget_remove
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-01 22:58:59 +02:00
Julien Danjou
1723cc160a
lua: introduce luaA_usemetatable
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-01 19:25:58 +02:00
Julien Danjou
d9fa6d65c8
titlebar: merge colors_set() into index
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-01 18:33:09 +02:00
Julien Danjou
33a8c1acb7
statusbar: merge border_set() into index
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-01 18:28:17 +02:00
Julien Danjou
1097f506d3
titlebar: add index
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-01 18:19:33 +02:00
Julien Danjou
bdd6b078f2
titlebar: ref widget on get()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-01 16:53:00 +02:00
Julien Danjou
45b0a2df80
lua: replace .new() by __call meth
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-30 14:11:54 +02:00
Julien Danjou
2b8b9fc08f
titlebar: fix index
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-29 13:01:23 +02:00
Julien Danjou
3ebca2181c
draw: really copy colors
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-29 12:14:09 +02:00
Julien Danjou
35e948f53b
draw: xcolor_t store color name
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-28 13:30:17 +02:00
Julien Danjou
013b2afe62
remove useless #include
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-26 18:10:45 +02:00
Julien Danjou
db88877587
lua: split getopt_string/getopt_lstring; fix mouse corner
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 17:33:05 +02:00
Pierre Habouzit
b19aace542
Fix draw_align_fromstr calls.
...
Note that it's undefined to have side effects on an argument and pass this
argument again to another function.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-24 22:40:34 +02:00
Julien Danjou
c1e1083e63
titlebar: fix position init
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-23 20:37:31 +02:00
Julien Danjou
ab5119732d
use more tokenizer, with len
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-23 14:01:33 +02:00