use real and smaller surface size to draw statusbar when rotating
This commit is contained in:
parent
8741fdba69
commit
ae49735001
6
draw.c
6
draw.c
|
@ -134,10 +134,10 @@ draw_rotate(Display *disp, int screen, Drawable drawable, int dw, int dh, double
|
|||
|
||||
newdrawable = XCreatePixmap(disp,
|
||||
RootWindow(disp, screen),
|
||||
dw, dw,
|
||||
dh, dw,
|
||||
DefaultDepth(disp, screen));
|
||||
surface = cairo_xlib_surface_create(disp, newdrawable, DefaultVisual(disp, screen), dw, dw);
|
||||
source = cairo_xlib_surface_create(disp, drawable, DefaultVisual(disp, screen), dw, dw);
|
||||
surface = cairo_xlib_surface_create(disp, newdrawable, DefaultVisual(disp, screen), dh, dw);
|
||||
source = cairo_xlib_surface_create(disp, drawable, DefaultVisual(disp, screen), dw, dh);
|
||||
cr = cairo_create (surface);
|
||||
|
||||
cairo_translate(cr, tx, ty);
|
||||
|
|
16
statusbar.c
16
statusbar.c
|
@ -60,7 +60,7 @@ drawstatusbar(awesome_config *awesomeconf)
|
|||
drawable = XCreatePixmap(awesomeconf->display,
|
||||
RootWindow(awesomeconf->display, awesomeconf->phys_screen),
|
||||
awesomeconf->statusbar.width,
|
||||
awesomeconf->statusbar.width,
|
||||
awesomeconf->statusbar.height,
|
||||
DefaultDepth(awesomeconf->display, awesomeconf->phys_screen));
|
||||
|
||||
for(i = 0; i < awesomeconf->ntags; i++)
|
||||
|
@ -174,15 +174,13 @@ drawstatusbar(awesome_config *awesomeconf)
|
|||
{
|
||||
Drawable d;
|
||||
if(awesomeconf->statusbar.position == BarRight)
|
||||
d = draw_rotate(awesomeconf->display, awesomeconf->phys_screen,
|
||||
drawable, awesomeconf->statusbar.width,
|
||||
awesomeconf->statusbar.height, M_PI_2,
|
||||
awesomeconf->statusbar.height, 0);
|
||||
d = draw_rotate(awesomeconf->display, awesomeconf->phys_screen, drawable,
|
||||
awesomeconf->statusbar.width, awesomeconf->statusbar.height,
|
||||
M_PI_2, awesomeconf->statusbar.height, 0);
|
||||
else
|
||||
d = draw_rotate(awesomeconf->display, awesomeconf->phys_screen,
|
||||
drawable, awesomeconf->statusbar.width,
|
||||
awesomeconf->statusbar.height, - M_PI_2,
|
||||
0, awesomeconf->statusbar.width);
|
||||
d = draw_rotate(awesomeconf->display, awesomeconf->phys_screen, drawable,
|
||||
awesomeconf->statusbar.width, awesomeconf->statusbar.height,
|
||||
- M_PI_2, 0, awesomeconf->statusbar.width);
|
||||
XCopyArea(awesomeconf->display, d,
|
||||
awesomeconf->statusbar.window,
|
||||
DefaultGC(awesomeconf->display, awesomeconf->phys_screen), 0, 0,
|
||||
|
|
Loading…
Reference in New Issue