mirror of
https://github.com/swaywm/sway.git
synced 2026-04-20 06:47:03 -04:00
scene_graph: Port seat drag icons
This commit is contained in:
parent
9c17cba0b2
commit
c640c3015f
10 changed files with 53 additions and 131 deletions
|
|
@ -259,22 +259,6 @@ void output_unmanaged_for_each_surface(struct sway_output *output,
|
|||
}
|
||||
#endif
|
||||
|
||||
void output_drag_icons_for_each_surface(struct sway_output *output,
|
||||
struct wl_list *drag_icons, sway_surface_iterator_func_t iterator,
|
||||
void *user_data) {
|
||||
struct sway_drag_icon *drag_icon;
|
||||
wl_list_for_each(drag_icon, drag_icons, link) {
|
||||
double ox = drag_icon->x - output->lx;
|
||||
double oy = drag_icon->y - output->ly;
|
||||
|
||||
if (drag_icon->wlr_drag_icon->surface->mapped) {
|
||||
output_surface_for_each_surface(output,
|
||||
drag_icon->wlr_drag_icon->surface, ox, oy,
|
||||
iterator, user_data);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static int scale_length(int length, int offset, float scale) {
|
||||
return roundf((offset + length) * scale) - roundf(offset * scale);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -184,15 +184,6 @@ static void render_unmanaged(struct render_context *ctx, struct wl_list *unmanag
|
|||
}
|
||||
#endif
|
||||
|
||||
static void render_drag_icons(struct render_context *ctx, struct wl_list *drag_icons) {
|
||||
struct render_data data = {
|
||||
.alpha = 1.0f,
|
||||
.ctx = ctx,
|
||||
};
|
||||
output_drag_icons_for_each_surface(ctx->output, drag_icons,
|
||||
render_surface_iterator, &data);
|
||||
}
|
||||
|
||||
// _box.x and .y are expected to be layout-local
|
||||
// _box.width and .height are expected to be output-buffer-local
|
||||
void render_rect(struct render_context *ctx, const struct wlr_box *_box,
|
||||
|
|
@ -1131,7 +1122,6 @@ render_overlay:
|
|||
&output->shell_layers[ZWLR_LAYER_SHELL_V1_LAYER_OVERLAY]);
|
||||
render_layer_popups(ctx,
|
||||
&output->shell_layers[ZWLR_LAYER_SHELL_V1_LAYER_OVERLAY]);
|
||||
render_drag_icons(ctx, &root->drag_icons);
|
||||
|
||||
renderer_end:
|
||||
pixman_region32_fini(&transformed_damage);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue