diff options
Diffstat (limited to 'src/platform/wayland/drag.c')
| -rw-r--r-- | src/platform/wayland/drag.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/platform/wayland/drag.c b/src/platform/wayland/drag.c index 2cfd432..1f4a78b 100644 --- a/src/platform/wayland/drag.c +++ b/src/platform/wayland/drag.c @@ -228,9 +228,9 @@ void conn_drop_target(struct wayland_display *c, enum yasl_drop_event ev, (void)c; struct wayland_surface *w = on ? (struct wayland_surface *)wl_surface_get_user_data(on) : NULL; - if (!w || w->parent || !w->cbs->drop) + if (!w || w->parent || w->closed) return; - w->cbs->drop(&w->base, ev, drag_device_pos(w, x, y), w->ud); + yasl_surface_notify_drop(&w->base, ev, drag_device_pos(w, x, y)); } void conn_drag_target(struct wayland_display *c, enum yasl_drag_event ev, @@ -239,7 +239,7 @@ void conn_drag_target(struct wayland_display *c, enum yasl_drag_event ev, (void)c; struct wayland_surface *w = on ? (struct wayland_surface *)wl_surface_get_user_data(on) : NULL; - if (!w || w->parent || !w->cbs->drag) + if (!w || w->parent || w->closed) return; - w->cbs->drag(&w->base, ev, drag_device_pos(w, x, y), w->ud); + yasl_surface_notify_drag(&w->base, ev, drag_device_pos(w, x, y)); } |
