Commit graph

147 commits

Author SHA1 Message Date
Pierre Habouzit
14f4e02e66 Replace tag_t lists with arrays.
This improves lots of code efficiency (we *know* how many tags we have
now, YA'RLY).

Also fix a \todo in client.c: since knowing the number of tags is cheap,
ignore props that don't match it.

Use many p_alloca for things that depends on the number of tags (no sane
user will have *thousands* of tags. This saves a few more mallocs.

Signed-off-by: Pierre Habouzit <madcoder@debian.org>
2008-06-23 17:37:19 +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
Arnaud Fontaine
b9e1ec69d0 Replace xcb_aux_get_screen() by a safer function 2008-06-17 17:14:00 +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
Michael Gehring
59c04890fc [cleanup] random doxygen fixes
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-08 17:13:09 +02:00
Julien Danjou
75cb6b81af [screen] s/move_client_to_screen/screen_client_moveto/
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-08 11:02:34 +02:00
Julien Danjou
24176ba8c7 [screen] s/screen_get_area/screen_area_get/
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 15:35:48 +02:00
Julien Danjou
5f2585d82e [screen] s/get_display_area/display_area_get/
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 15:34:11 +02:00
Julien Danjou
fa08ec5316 [screen] Rename Padding to padding_t
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-06-04 15:30:47 +02:00
Julien Danjou
0c8910d1df [screen] Fix documentation
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-30 16:15:07 +02:00
Julien Danjou
d9dd1fba8e Revert "[client] Remove ismax attribute."
This reverts commit fb822997b3.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-25 17:42:20 +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
fb822997b3 [client] Remove ismax attribute.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-05-23 13:11:47 +02: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
e4d091ab2e [tag] Rename Tag type to tag_t
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
Arnaud Fontaine
71e9100927 Remove useless xutil_root_window() 2008-05-03 12:01:00 +02:00
Julien Danjou
cd42cda9d4 [screen] Use default screen on Xinerama for 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
dafafd077c Port Awesome to XCB 2008-05-03 12:00:59 +02:00
Julien Danjou
40eaa6b997 [doc] Add a bunch of documentation
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-04-08 09:45:48 +02: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
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
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
3c3015fd76 Remove resize_hints args to client_resize(), force usage of client_geometry_hints() 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
0cd969bfb9 Split screen_build_screen() into more generic code and type: screeninfos_new() 2008-03-23 15:52:17 +01:00
Julien Danjou
f3652aaca6 Add a pointer to SLIST struct to store previous element
This will make back cycling faster
2008-03-23 15:52:17 +01:00
Julien Danjou
960d870b0b fix screen_get_bycoord() 2008-02-25 13:40:30 +01:00
Julien Danjou
328e5d0d4e rename screen to phys_screen to avoid confusion 2008-02-25 13:33:29 +01:00
Julien Danjou
72d68b13a3 change focus raising 2008-02-09 23:12:40 +01:00
Julien Danjou
606d157e31 rename some screens function 2008-01-30 09:36:52 +01:00
Julien Danjou
ab8d95f13d rework include 2008-01-29 11:27:14 +01:00
Julien Danjou
ea57fd8fc9 add support for smart windows placement in floating layout 2008-01-28 18:30:23 +01:00
Julien Danjou
95d5fe299e rename focus() to client_focus() 2008-01-27 19:07:39 +01:00
Julien Danjou
c22430a115 fix handling of window raisings 2008-01-25 23:43:16 +01:00
Julien Danjou
3855ced402 remove selscreen arg 2008-01-24 23:48:35 +01:00
Julien Danjou
240ee786d1 rename nscreens to nscreen 2008-01-24 13:48:49 +01:00
Julien Danjou
5922d3a257 realloc smaller if xinerama_screen_number != screen registered 2008-01-24 13:45:20 +01:00
Julien Danjou
1cc5a2a1f8 remove printf()s 2008-01-23 08:33:29 +01:00
Julien Danjou
d17c5c531e detect clone screens (FS#42) 2008-01-22 20:41:10 +01:00
Julien Danjou
668702b777 move list.h and util.[ch] to common/ 2008-01-21 18:14:59 +01:00
Julien Danjou
83a0a4daf8 add a common infra to drop events 2008-01-21 16:31:15 +01:00
Julien Danjou
6e4d13c9dc add a new cache system for arrange()ing 2008-01-21 16:31:15 +01:00
Julien Danjou
9bc67800d2 drop EnterWindow event to keep focus 2008-01-11 18:06:49 +01:00