X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=slock.c;h=61fe9ee2c5009d948ffa74fd7ba54cd4399856ba;hb=7a604ec1fae1eda36f210a28a2cf466583a9cb87;hp=ad539dc123c169e46a43322104fd38cee0d14b48;hpb=597469541c10fdb8920ed190b72763b0719e5cb5;p=slock.git diff --git a/slock.c b/slock.c index ad539dc..61fe9ee 100644 --- a/slock.c +++ b/slock.c @@ -31,8 +31,6 @@ enum { NUMCOLS }; -#include "config.h" - struct lock { int screen; Window root, win; @@ -46,6 +44,8 @@ struct xrandr { int errbase; }; +#include "config.h" + static void die(const char *errstr, ...) { @@ -201,8 +201,13 @@ readpw(Display *dpy, struct xrandr *rr, struct lock **locks, int nscreens, rre = (XRRScreenChangeNotifyEvent*)&ev; for (screen = 0; screen < nscreens; screen++) { if (locks[screen]->win == rre->window) { - XResizeWindow(dpy, locks[screen]->win, - rre->width, rre->height); + if (rre->rotation == RR_Rotate_90 || + rre->rotation == RR_Rotate_270) + XResizeWindow(dpy, locks[screen]->win, + rre->height, rre->width); + else + XResizeWindow(dpy, locks[screen]->win, + rre->width, rre->height); XClearWindow(dpy, locks[screen]->win); } }