Commit Graph

233 Commits

Author SHA1 Message Date
Aldo Cortesi f36a56cdcc Refactor draw.c
This is a big patch that does not change any behaviour. We abstract the data
needed by the draw.c functions into a context object, and pass that around
instead of passing each argument every time. This results in a much cleaner API
- most functions lose 3-4 arguments.

This is a preparatory patch for further work on statusbar.
2007-12-15 09:30:29 +01:00
Julien Danjou df2a8e1b1d add a focus history 2007-12-14 21:51:54 +01:00
Julien Danjou aacb020564 rename statusbar functions 2007-12-14 20:10:52 +01:00
Julien Danjou bb1381abc2 make tags a linked list instead of array 2007-12-14 19:05:30 +01:00
Julien Danjou b03cdbd877 remove nlayouts 2007-12-14 17:57:05 +01:00
Julien Danjou 84bb954004 rename statusbar uicb and add uicb_statusbar_set_position 2007-12-14 15:52:52 +01:00
Julien Danjou 078d224b46 use a linked list for handling tag <-> client relationship 2007-12-14 14:29:32 +01:00
Aldo Cortesi 2b5ba1f16f Improve the call signature of get_current_tag and get_current_layout. 2007-12-14 09:29:42 +01:00
Julien Danjou 5fa67c23df split awesomeconf and screen config
a.k.a the big post-2.0 blind commit
2007-12-11 20:56:51 +01:00
Nathan Hüsken 9524f15478 Adding padding 2007-11-28 11:00:48 +01:00
Julien Danjou ae49735001 use real and smaller surface size to draw statusbar when rotating 2007-11-13 21:23:13 +01:00
Julien Danjou 19e7737ef0 don't draw statusbar if it's off 2007-11-11 23:23:38 +01:00
Julien Danjou 58391a84fa don't move status bar offscreen (fails on Xinerama): unmap it instead 2007-11-11 22:47:56 +01:00
Julien Danjou 651dcc5c9e compute correctly status bar position for left 2007-11-11 22:44:21 +01:00
Julien Danjou 0753ed5fb5 statusbar drawable is no more stored but dynamicaly created; this fix a problem with statusbar on right 2007-11-11 22:27:00 +01:00
Julien Danjou db65104aa2 use M_PI_2 2007-11-11 21:20:02 +01:00
Julien Danjou 84017b9666 inverse rotate and translate and fix bar position on right for Xinerama 2007-11-11 21:13:37 +01:00
Julien Danjou 543899da7c fix statusbar display when on right 2007-11-11 19:49:50 +01:00
Julien Danjou 05dad60786 experimental support for status bar to be on right or left 2007-11-11 18:59:11 +01:00
Julien Danjou 602d92d8b2 move statusbar_default_position in Statusbar struct 2007-11-10 10:17:54 +01:00
Julien Danjou 001f430c0c remove global client_sel, use tag's client_sel 2007-10-26 23:19:13 +02:00
Julien Danjou bd08d8a119 bugfix: don't display window name in statusbar if sel is not on our screen 2007-10-25 13:48:22 +02:00
Julien Danjou 8ad32d29c2 fix information headers 2007-10-17 10:53:32 +02:00
Julien Danjou 842eed01c0 remove current_layout, insert get_current_layout() to get it dynamicly 2007-10-16 22:33:15 +02:00
Nikos Ntarmos 7ecbae334f use Cairo to render fonts 2007-10-16 16:35:28 +02:00
Julien Danjou ccb7e89750 arrange() does not need Display as arg 2007-10-15 18:23:05 +02:00
Julien Danjou 17bc4dc9a7 drawstatusbar does not need display as arg 2007-10-15 18:19:33 +02:00
Julien Danjou a74ca1d1de tabswidth is 4 not 6 2007-10-15 13:56:24 +02:00
Julien Danjou 4e0acfa99a add coding style stuff 2007-10-15 13:40:52 +02:00
Julien Danjou 77609263dc move txtlenwidth initlization in initstatusbar() 2007-10-15 12:06:43 +02:00
Julien Danjou a6781157b6 allow to execute uicb function via awesome control fifo 2007-10-12 17:10:36 +02:00
Julien Danjou 863714f501 use p_delete instead of XFree for our own pointers 2007-10-11 23:44:35 +02:00
Julien Danjou c4e130d7d9 remove Display as param for uicb 2007-10-11 23:32:29 +02:00
Julien Danjou c3986a5937 sel is no more extern 2007-10-11 23:12:05 +02:00
Julien Danjou 12ef66b79a clients list is no more global 2007-10-11 21:50:32 +02:00
Julien Danjou f840f532e3 Fix e22b1e2a73, size was set too late, and fix memory leak with *si 2007-10-11 19:29:34 +02:00
Julien Danjou e22b1e2a73 set statusbar->height in initstatusbar() 2007-10-11 18:43:42 +02:00
Julien Danjou a06674fbe7 add drawcircle() function and use it for floating/max windows instead of drawrectangle 2007-10-11 17:06:55 +02:00
Julien Danjou 1f5a6e918b use drawrectangle to draw background in statusbar, fix coords of rectangles and compute colors correctly 2007-10-11 16:29:20 +02:00
Julien Danjou f6ea98649c drawsquare is now drawrectangle 2007-10-11 15:44:30 +02:00
Julien Danjou c05ed01c1a bugfix: only catch first click to raise if we're floating 2007-10-11 11:33:40 +02:00
Julien Danjou 445479cf8b use Cairo for rendering square instead of Xlib 2007-10-10 19:59:14 +02:00
Julien Danjou e733af41ec remove drawcontext everywhere 2007-10-10 14:09:36 +02:00
Julien Danjou f57d275df1 move font to awesomeconf 2007-10-10 13:34:25 +02:00
Julien Danjou 2d0526696c move cursors in awesome config 2007-10-10 13:29:46 +02:00
Julien Danjou 1a755ff245 simplify color handling 2007-10-10 13:07:12 +02:00
Julien Danjou 0f75c91fe7 remove x and y attributes from DC 2007-10-09 22:35:44 +02:00
Julien Danjou 355d3aad5f remove drawcontext `w' attribute 2007-10-09 22:33:00 +02:00
Julien Danjou c4b1867a4d remove h attribute of drawcontext 2007-10-09 22:29:44 +02:00
Julien Danjou 2887bb8b86 avoid DC in drawsquare() 2007-10-09 21:43:26 +02:00
Julien Danjou aa645b15ab avoid DC in drawtext() 2007-10-09 21:29:19 +02:00
Julien Danjou de45017b5d switch to libconfuse instead of libconfig 2007-10-08 18:45:05 +02:00
Julien Danjou 158b91adaf bugfix: reset correctly default bar position on toggle
Thanks Daniel Brinkers
2007-10-08 13:07:13 +02:00
Julien Danjou d7aac7b811 better fix for font height problem
Thanks to Arnaud Fontaine
2007-10-04 17:35:47 +02:00
Julien Danjou 2e0b2911e3 bugfix: give one more pixel to not cut status text with some fonts 2007-10-04 15:56:20 +02:00
Julien Danjou 1c5cd1ec57 bugfix: add a pixel more for tags drawing, this allows all fonts size to work 2007-10-04 12:55:19 +02:00
Julien Danjou 97a2085705 cosmetic: remove lines with empty spaces at end 2007-10-03 17:26:14 +02:00
Julien Danjou cd46ec6378 remove stack from externs 2007-10-03 00:15:50 +02:00
Julien Danjou 950605b1a0 simplify get_screen_info() 2007-10-01 20:58:29 +02:00
Julien Danjou 272f4b1c2a Xft support 2007-10-01 19:22:57 +02:00
Julien Danjou 8c531e2a81 store phys_screen 2007-10-01 15:23:05 +02:00
Julien Danjou 659adaab5e use get_real_screen() in a lot of places 2007-09-28 11:55:08 +02:00
Julien Danjou 11cbd79c62 make a lot of function in event and statusbar creation/handling Xinerama aware 2007-09-27 21:26:25 +02:00
Julien Danjou 14da15bbc9 make Statusbar optional in get_display_info() 2007-09-27 20:16:20 +02:00
Julien Danjou ecf79693a2 use real_screen for X functions, not logical screen 2007-09-27 17:13:31 +02:00
Julien Danjou 5d06303f48 add mwfact to statusbar printing 2007-09-24 20:23:05 +02:00
Julien Danjou 89fa270bca display layout nmaster/ncols vars in new tags without clients 2007-09-24 17:08:47 +02:00
Julien Danjou 894b341feb simplfiy drawstatus() remove screen useless arg 2007-09-24 16:23:49 +02:00
Julien Danjou 595eba78d7 create a Tag struct type and use it 2007-09-24 15:37:52 +02:00
Julien Danjou 9737185639 simplify drawsquare() 2007-09-20 20:11:33 +02:00
Julien Danjou ce367ebfba simplify drawsquare() 2007-09-19 15:42:40 +02:00
Julien Danjou dcec6aa749 remove screen arg from uicb* 2007-09-18 19:53:52 +02:00
Julien Danjou 30e7cf5b40 simplify arrange and restack 2007-09-18 19:53:46 +02:00
Julien Danjou 82e1c44f85 better proto for drawsquare
the old one was not logical
2007-09-17 12:45:41 +02:00
Julien Danjou 14107bb49f bug fix: correctly check if tag is occupied by checking screen number 2007-09-16 16:58:44 +02:00
Julien Danjou 933b0413ea add screen arg to uicb* 2007-09-16 01:05:43 +02:00
Julien Danjou e91de5bfb9 restack and arrange take screen as arg 2007-09-15 23:17:59 +02:00
Julien Danjou e4e8a2966f get_display_info take screen and screen is stored in statusbar struct 2007-09-15 23:04:04 +02:00
Julien Danjou 53e5630c6c add screen to drawstatusbar 2007-09-15 22:57:37 +02:00
Julien Danjou 48f17aa9f1 add initstatusbar() to init statusbar! 2007-09-15 22:25:49 +02:00
Julien Danjou 3e3f213b72 move uicb_togglebar to statusbar.c 2007-09-15 15:34:28 +02:00
Julien Danjou 56a387ec5c move updatebarpos to statusbar.c 2007-09-15 15:26:51 +02:00
Julien Danjou fe89aa31b0 create statusbar.c and move things from draw.c 2007-09-15 15:16:53 +02:00