Low resolution switch bug fix

This allows resolutions lower that 32x224 like 256x224 to work
This commit is contained in:
Ben 2020-09-16 13:49:34 +01:00
parent 42fdb30300
commit 382044b5bf
1 changed files with 10 additions and 9 deletions

View File

@ -266,12 +266,12 @@ static bool x11_display_server_set_resolution(void *data,
XRRSetCrtcConfig(dpy, res,res->crtcs[i], CurrentTime,
0, 0, None, RR_Rotate_0, NULL, 0);
XSync(dpy, False);
XRRSetScreenSize(dpy, window, width, height,
(int) ((25.4 * width) / 96.0),
(int) ((25.4 * height) / 96.0));
XRRSetCrtcConfig(dpy, res, res->crtcs[i], CurrentTime,
crtc->x, crtc->y, crtc->mode, crtc->rotation,
crtc->outputs, crtc->noutput);
XRRSetScreenSize(dpy, window, width, height,
(int) ((25.4 * width) / 96.0),
(int) ((25.4 * height) / 96.0));
XSync(dpy, False);
XRRFreeCrtcInfo(crtc);
@ -302,15 +302,16 @@ static bool x11_display_server_set_resolution(void *data,
XRRSetCrtcConfig(dpy, res,res->crtcs[monitor_index], CurrentTime,
0, 0, None, RR_Rotate_0, NULL, 0);
XSync(dpy, False);
XRRSetScreenSize(dpy, window, width, height,
(int) ((25.4 * width) / 96.0),
(int) ((25.4 * height) / 96.0));
XRRSetCrtcConfig(dpy, res, res->crtcs[monitor_index], CurrentTime,
crtc->x, crtc->y, crtc->mode, crtc->rotation,
crtc->outputs, crtc->noutput);
XRRSetScreenSize(dpy, window, width, height,
(int) ((25.4 * width) / 96.0),
(int) ((25.4 * height) / 96.0));
XSync(dpy, False);
XRRFreeCrtcInfo(crtc);
}
XRRFreeOutputInfo(outputs);
@ -573,13 +574,13 @@ static void x11_display_server_destroy(void *data)
XRRSetCrtcConfig(dpy, res,res->crtcs[i],
CurrentTime, 0, 0, None, RR_Rotate_0, NULL, 0);
XSync(dpy, False);
XRRSetCrtcConfig(dpy, res, res->crtcs[i], CurrentTime,
crtc->x, crtc->y, crtc->mode, crtc->rotation,
crtc->outputs, crtc->noutput);
XRRSetScreenSize(dpy, window,
crt_rrmode.width, crt_rrmode.height,
(int) ((25.4 * crt_rrmode.width) / 96.0),
(int) ((25.4 * crt_rrmode.height) / 96.0));
XRRSetCrtcConfig(dpy, res, res->crtcs[i], CurrentTime,
crtc->x, crtc->y, crtc->mode, crtc->rotation,
crtc->outputs, crtc->noutput);
XSync(dpy, False);