Merge branch 'output-auto-buffer' into 'master'

output: Remove output_ensure_buffer

See merge request wlroots/wlroots!4484
This commit is contained in:
Alexander Orzechowski 2025-03-25 12:35:37 +00:00
commit c289b8e462
21 changed files with 215 additions and 268 deletions

View file

@ -339,7 +339,7 @@ static void logical_to_buffer_coords(pixman_region32_t *region, const struct ren
static void output_to_buffer_coords(pixman_region32_t *damage, struct wlr_output *output) {
int width, height;
wlr_output_transformed_resolution(output, &width, &height);
wlr_output_transformed_resolution(output, NULL, &width, &height);
wlr_region_transform(damage, damage,
wlr_output_transform_invert(output->transform), width, height);
@ -445,7 +445,7 @@ static void update_node_update_outputs(struct wlr_scene_node *node,
.x = scene_output->x,
.y = scene_output->y,
};
wlr_output_effective_resolution(scene_output->output,
wlr_output_effective_resolution(scene_output->output, NULL,
&output_box.width, &output_box.height);
pixman_region32_t intersection;
@ -1579,7 +1579,7 @@ static void scene_output_handle_damage(struct wl_listener *listener, void *data)
struct wlr_output_event_damage *event = data;
int width, height;
wlr_output_transformed_resolution(output, &width, &height);
wlr_output_transformed_resolution(output, NULL, &width, &height);
pixman_region32_t damage;
pixman_region32_init(&damage);
@ -2337,7 +2337,7 @@ static void scene_output_for_each_scene_buffer(const struct wlr_box *output_box,
void wlr_scene_output_for_each_buffer(struct wlr_scene_output *scene_output,
wlr_scene_buffer_iterator_func_t iterator, void *user_data) {
struct wlr_box box = { .x = scene_output->x, .y = scene_output->y };
wlr_output_effective_resolution(scene_output->output,
wlr_output_effective_resolution(scene_output->output, NULL,
&box.width, &box.height);
scene_output_for_each_scene_buffer(&box, &scene_output->scene->tree.node, 0, 0,
iterator, user_data);