|
Lines 89-105
Link Here
|
| 89 |
#define BAR_X(FRAME, GRDATA) ((GRDATA)->bar_off.x) |
89 |
#define BAR_X(FRAME, GRDATA) ((GRDATA)->bar_off.x) |
| 90 |
#define BAR_Y(FRAME, GRDATA) ((GRDATA)->bar_off.y) |
90 |
#define BAR_Y(FRAME, GRDATA) ((GRDATA)->bar_off.y) |
| 91 |
#define BAR_W(FRAME, GRDATA) (REGION_GEOM(FRAME).w+(GRDATA)->bar_off.w) |
91 |
#define BAR_W(FRAME, GRDATA) (REGION_GEOM(FRAME).w+(GRDATA)->bar_off.w) |
| 92 |
#define BAR_H(FRAME, GRDATA) ((GRDATA)->bar_h) |
92 |
#define BAR_H(FRAME, GRDATA) ((FRAME->draw_tab)?((GRDATA)->bar_h):0) |
| 93 |
|
93 |
|
| 94 |
#define FRAME_TO_CLIENT_W(W, GRDATA) ((W)+(GRDATA)->client_off.w) |
94 |
#define FRAME_TO_CLIENT_W(W, GRDATA) ((W)+(GRDATA)->client_off.w) |
| 95 |
#define FRAME_TO_CLIENT_H(H, GRDATA) ((H)+(GRDATA)->client_off.h) |
95 |
#define FRAME_TO_CLIENT_H(H, GRDATA,FRAME) ((FRAME->draw_tab)?((H)+(GRDATA)->client_off.h):(H + GRDATA->client_off.h + GRDATA->bar_h + 1)) |
| 96 |
#define CLIENT_TO_FRAME_W(W, GRDATA) ((W)-(GRDATA)->client_off.w) |
96 |
#define CLIENT_TO_FRAME_W(W, GRDATA) ((W)-(GRDATA)->client_off.w) |
| 97 |
#define CLIENT_TO_FRAME_H(H, GRDATA) ((H)-(GRDATA)->client_off.h) |
97 |
#define CLIENT_TO_FRAME_H(H, GRDATA,FRAME) ((FRAME->draw_tab)?((H)-(GRDATA)->client_off.h):(H) |
| 98 |
|
98 |
|
| 99 |
#define CLIENT_X(FRAME, GRDATA) ((GRDATA)->client_off.x) |
99 |
#define CLIENT_X(FRAME, GRDATA) ((GRDATA)->client_off.x) |
| 100 |
#define CLIENT_Y(FRAME, GRDATA) ((GRDATA)->client_off.y) |
100 |
#define CLIENT_Y(FRAME, GRDATA) (((FRAME)->draw_tab)?((GRDATA)->client_off.y):(GRDATA->bar_off.y)) |
| 101 |
#define CLIENT_W(FRAME, GRDATA) FRAME_TO_CLIENT_W(FRAME_W(FRAME), GRDATA) |
101 |
#define CLIENT_W(FRAME, GRDATA) FRAME_TO_CLIENT_W(FRAME_W(FRAME), GRDATA) |
| 102 |
#define CLIENT_H(FRAME, GRDATA) FRAME_TO_CLIENT_H(FRAME_H(FRAME), GRDATA) |
102 |
#define CLIENT_H(FRAME, GRDATA) FRAME_TO_CLIENT_H(FRAME_H(FRAME), GRDATA, FRAME) |
| 103 |
|
103 |
|
| 104 |
|
104 |
|
| 105 |
static WRegion *firstreg_ni(const WFrame *frame) |
105 |
static WRegion *firstreg_ni(const WFrame *frame) |
|
Lines 180-185
Link Here
|
| 180 |
frame->saved_x=FRAME_NO_SAVED_WH; |
180 |
frame->saved_x=FRAME_NO_SAVED_WH; |
| 181 |
frame->saved_y=FRAME_NO_SAVED_WH; |
181 |
frame->saved_y=FRAME_NO_SAVED_WH; |
| 182 |
frame->tab_pressed_sub=NULL; |
182 |
frame->tab_pressed_sub=NULL; |
|
|
183 |
|
| 184 |
frame->draw_tab = 1; |
| 183 |
|
185 |
|
| 184 |
if(grdata->transparent_background){ |
186 |
if(grdata->transparent_background){ |
| 185 |
attr.background_pixmap=ParentRelative; |
187 |
attr.background_pixmap=ParentRelative; |
|
Lines 268-273
Link Here
|
| 268 |
|
270 |
|
| 269 |
/*{{{ Draw */ |
271 |
/*{{{ Draw */ |
| 270 |
|
272 |
|
|
|
273 |
void frame_toggle_tab(WFrame *frame) { |
| 274 |
frame->draw_tab = !frame->draw_tab; |
| 275 |
|
| 276 |
XClearWindow(wglobal.dpy, FRAME_WIN(frame)); |
| 277 |
frame_fit_subs(frame); |
| 278 |
draw_frame(frame, TRUE); |
| 279 |
} |
| 271 |
|
280 |
|
| 272 |
void frame_recalc_bar(WFrame *frame) |
281 |
void frame_recalc_bar(WFrame *frame) |
| 273 |
{ |
282 |
{ |
|
Lines 328-335
Link Here
|
| 328 |
XSetForeground(wglobal.dpy, XGC, grdata->frame_bgcolor); |
337 |
XSetForeground(wglobal.dpy, XGC, grdata->frame_bgcolor); |
| 329 |
XFillRectangle(wglobal.dpy, WIN, XGC, C_X, C_Y, C_W, C_H); |
338 |
XFillRectangle(wglobal.dpy, WIN, XGC, C_X, C_Y, C_W, C_H); |
| 330 |
*/ |
339 |
*/ |
| 331 |
|
340 |
|
| 332 |
draw_frame_bar(frame, !complete || !grdata->bar_inside_frame); |
341 |
if(frame->draw_tab) |
|
|
342 |
draw_frame_bar(frame, !complete || !grdata->bar_inside_frame); |
| 333 |
} |
343 |
} |
| 334 |
|
344 |
|
| 335 |
|
345 |
|
|
Lines 341-346
Link Here
|
| 341 |
WGRData *grdata=&(scr->grdata); |
351 |
WGRData *grdata=&(scr->grdata); |
| 342 |
WRectangle bg; |
352 |
WRectangle bg; |
| 343 |
|
353 |
|
|
|
354 |
if(!frame->draw_tab) |
| 355 |
return; |
| 356 |
|
| 344 |
frame_bar_geom(frame, &bg); |
357 |
frame_bar_geom(frame, &bg); |
| 345 |
|
358 |
|
| 346 |
dinfo->win=FRAME_WIN(frame); |
359 |
dinfo->win=FRAME_WIN(frame); |