~ruther/dwl

43016bdad80fcd2efe557a43e8db2345ead9b5f4 — Leonardo Hernández Hernández 1 year, 2 months ago b616476
introduce client_set_scale()
2 files changed, 8 insertions(+), 4 deletions(-)

M client.h
M dwl.c
M client.h => client.h +6 -0
@@ 331,6 331,12 @@ client_set_fullscreen(Client *c, int fullscreen)
	wlr_xdg_toplevel_set_fullscreen(c->surface.xdg->toplevel, fullscreen);
}

static inline void
client_set_scale(struct wlr_surface *s, float scale) {
	wlr_fractional_scale_v1_notify_scale(s, scale);
	wlr_surface_set_preferred_buffer_scale(s, (int32_t)ceilf(scale));
}

static inline uint32_t
client_set_size(Client *c, uint32_t width, uint32_t height)
{

M dwl.c => dwl.c +2 -4
@@ 759,8 759,7 @@ commitlayersurfacenotify(struct wl_listener *listener, void *data)
	struct wlr_layer_surface_v1_state old_state;

	if (l->layer_surface->initial_commit) {
		wlr_fractional_scale_v1_notify_scale(layer_surface->surface, l->mon->wlr_output->scale);
		wlr_surface_set_preferred_buffer_scale(layer_surface->surface, (int32_t)ceilf(l->mon->wlr_output->scale));
		client_set_scale(layer_surface->surface, l->mon->wlr_output->scale);

		/* Temporarily set the layer's current state to pending
		 * so that we can easily arrange it */


@@ 800,8 799,7 @@ commitnotify(struct wl_listener *listener, void *data)
		 */
		applyrules(c);
		if (c->mon) {
			wlr_surface_set_preferred_buffer_scale(client_surface(c), (int)ceilf(c->mon->wlr_output->scale));
			wlr_fractional_scale_v1_notify_scale(client_surface(c), c->mon->wlr_output->scale);
			client_set_scale(client_surface(c), c->mon->wlr_output->scale);
		}
		setmon(c, NULL, 0); /* Make sure to reapply rules in mapnotify() */