Commit Graph

202 Commits

Author SHA1 Message Date
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 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
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 e753be131d magnifier: simplify formula
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-23 08:40:07 +02:00
Julien Danjou d4273f4e96 magnifier: implements mwfact as surface factor
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-22 22:09:51 +02:00
Julien Danjou af49f6f8f1 mouse: fix coords() set
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-20 16:25:45 +02:00
Julien Danjou f4872715ce mouse: coords is a function now
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-20 12:10:22 +02:00
Julien Danjou 70d89c4452 mouse: fix client snapping
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-18 11:04:50 +02:00
Julien Danjou f5717587ec mouse: snap also on scren without titlebars
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-18 10:56:40 +02:00
Julien Danjou df79115dd1 zaphod: restore support
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-15 00:31:32 +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 be2bfdcfc5 screen: introduce screen objects
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-11 17:14:02 +02:00
Julien Danjou 9e9b7c1bf3 mouse: refresh titlebars on the fly
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-08 17:38:51 +02:00
Julien Danjou e9adbff429 mouse: fix memory leak on resize
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-06 16:22:48 +02:00
Julien Danjou 6bbbf03c95 mouse: factorize xcb_aux_sync calls
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-08-06 14:11:33 +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 80b79717ba various documentation update for _index()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-28 16:03:38 +02:00
Kanru Chen 700ace5197 length of static string s should be sizeof(s)-1
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-22 10:30:53 +02:00
Julien Danjou 5fc500a861 draw: draw_text takes len as arg
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-10 15:35:19 +02:00
Julien Danjou 750040be68 draw: text extents now gets len as arg
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-10 15:06:09 +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 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 2c5333e9a3 mouse: merge screen_get() into index
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-02 09:14:17 +02:00
Julien Danjou ab72f6f02b mouse: add newindex, merge coords
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-02 09:11:03 +02:00
Julien Danjou 0cbf293e13 mouse: add __index
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-02 09:00:59 +02:00
Julien Danjou a4e12b1ce0 mouse: fix args for mouse.coords_set()
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-07-01 09:27:34 +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 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
Julien Danjou 6ec76c3b97 client: honor size hints is now by client
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-25 15:42:07 +02:00
Michael Gehring cb848e6b1a mouse: move/resize return if grabbing the pointer fails. 2008-06-24 08:58:04 +02:00
Julien Danjou 100f62c4b9 mouse: don't pass parser data, useless
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-23 16:15:24 +02:00
Pierre Habouzit 3116c0d381 Add draw_parser_data_{init,wipe}.
Use it everywhere needed instead of wrong p_clear's, this fixes memory
leaks.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-23 15:23:49 +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
Julien Danjou 723299ff5f mouse: fix uninit var
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-23 13:20:01 +02:00
Julien Danjou 7aab504350 draw: store parser_data made by extents call
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-23 13:09:42 +02:00
Pierre Habouzit f423719bd6 use gperf
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-23 07:41:22 +02:00
Julien Danjou 46f03fd6a6 area_t: make it smaller, use arrays instead of lists.
Make area_t smaller so that it fits in an uint64_t using 4 {u,}int16_t's
for it. Note that xcb uses the very same structure, so we aren't loosing
any information while remaining very small.

This is better to use arrays in term of:
* memory access when iterating over area_t's;
* allocation because area_t's have no *next/*prev members anymore, which
  makes it a tiny structure (8 octets);
* allocation because we allocate area_t's by vector of'em rather than one
  by one.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-22 22:09:48 +02:00
Pierre Habouzit 13cd35f6ba fix unitialized value warnings
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-19 23:00:35 +02:00
Pierre Habouzit a23b9e9771 Let mouse_query_pointer return the current mask as well.
Use that to export the currently pressed buttons from coord_get.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-19 16:51:33 +02:00
Julien Danjou f5cc4a45e0 mouse: fix coords_get() documentation
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-19 12:57:06 +02:00
Pierre Habouzit 4360fc51b2 add mouse.coords_get()
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-19 12:17:30 +02:00
Michael Gehring 41160e4cdf mouse: make float resize work better with sizehints 2008-06-18 18:48:38 +02:00
Michael Gehring 59d09c2731 mouse: resize_floating update cursor/corner 2008-06-18 18:48:38 +02: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
Julien Danjou 694f97e4d7 titlebar: set above client edge border
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-18 17:05:10 +02:00
Arnaud Fontaine b9e1ec69d0 Replace xcb_aux_get_screen() by a safer function 2008-06-17 17:14:00 +02:00
Pierre Habouzit 91f9f468bc fix prototypes
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-16 23:06:11 +02:00
Julien Danjou 16646c86ab lua: __eq methods are not macros
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-16 11:37:55 +02:00