inverse rotate and translate and fix bar position on right for Xinerama

This commit is contained in:
Julien Danjou 2007-11-11 21:13:37 +01:00
parent 543899da7c
commit 84017b9666
2 changed files with 3 additions and 3 deletions

2
draw.c
View File

@ -135,8 +135,8 @@ draw_rotate(Display *disp, int screen, Drawable drawable, int dw, int dh, double
source = cairo_xlib_surface_create(disp, drawable, DefaultVisual(disp, screen), dw, dw); source = cairo_xlib_surface_create(disp, drawable, DefaultVisual(disp, screen), dw, dw);
cr = cairo_create (surface); cr = cairo_create (surface);
cairo_rotate(cr, angle);
cairo_translate(cr, tx, ty); cairo_translate(cr, tx, ty);
cairo_rotate(cr, angle);
cairo_set_source_surface(cr, source, 0.0, 0.0); cairo_set_source_surface(cr, source, 0.0, 0.0);
cairo_paint(cr); cairo_paint(cr);

View File

@ -165,7 +165,7 @@ drawstatusbar(awesome_config *awesomeconf)
draw_rotate(awesomeconf->display, awesomeconf->phys_screen, draw_rotate(awesomeconf->display, awesomeconf->phys_screen,
awesomeconf->statusbar.drawable, awesomeconf->statusbar.width, awesomeconf->statusbar.drawable, awesomeconf->statusbar.width,
awesomeconf->statusbar.height, M_PI * 0.5, awesomeconf->statusbar.height, M_PI * 0.5,
0, -awesomeconf->statusbar.height); awesomeconf->statusbar.height, 0);
else else
draw_rotate(awesomeconf->display, awesomeconf->phys_screen, draw_rotate(awesomeconf->display, awesomeconf->phys_screen,
awesomeconf->statusbar.drawable, awesomeconf->statusbar.width, awesomeconf->statusbar.drawable, awesomeconf->statusbar.width,
@ -257,7 +257,7 @@ updatebarpos(Display *disp, Statusbar statusbar)
XMoveWindow(disp, statusbar.window, si[statusbar.screen].x_org, si[statusbar.screen].y_org); XMoveWindow(disp, statusbar.window, si[statusbar.screen].x_org, si[statusbar.screen].y_org);
break; break;
case BarRight: case BarRight:
XMoveWindow(disp, statusbar.window, si[statusbar.screen].width - statusbar.height, si[statusbar.screen].y_org); XMoveWindow(disp, statusbar.window, si[statusbar.screen].x_org + (si[statusbar.screen].width - statusbar.height), si[statusbar.screen].y_org);
break; break;
case BarBot: case BarBot:
XMoveWindow(disp, statusbar.window, si[statusbar.screen].x_org, si[statusbar.screen].height - statusbar.height); XMoveWindow(disp, statusbar.window, si[statusbar.screen].x_org, si[statusbar.screen].height - statusbar.height);