output: wlr_renderer_begin with physical size
The rendered region size is independent on the output transform and scale. Until now, an output with scale > 1 would render only its (1 / scale) part; so with a scale of 2, only the top-left quarter (ie. the left 1/2 of the top 1/2) would be visible. Similarly, a portrait output (constructed as landscape, rotated by 90 degrees) would have an empty area at its bottom. This bug was found while testing the output-management PR (#62).
This commit is contained in:
parent
cf01588a82
commit
fced953bb5
1 changed files with 1 additions and 5 deletions
|
@ -194,11 +194,7 @@ output_frame_notify(struct wl_listener *listener, void *data)
|
||||||
struct kiwmi_server *server = wl_container_of(desktop, server, desktop);
|
struct kiwmi_server *server = wl_container_of(desktop, server, desktop);
|
||||||
struct wlr_renderer *renderer = server->renderer;
|
struct wlr_renderer *renderer = server->renderer;
|
||||||
|
|
||||||
int width;
|
wlr_renderer_begin(renderer, wlr_output->width, wlr_output->height);
|
||||||
int height;
|
|
||||||
wlr_output_effective_resolution(wlr_output, &width, &height);
|
|
||||||
|
|
||||||
wlr_renderer_begin(renderer, width, height);
|
|
||||||
wlr_renderer_clear(renderer, desktop->bg_color);
|
wlr_renderer_clear(renderer, desktop->bg_color);
|
||||||
|
|
||||||
double output_lx = 0;
|
double output_lx = 0;
|
||||||
|
|
Loading…
Reference in a new issue