diff --git a/types/wlr_wl_shell.c b/types/wlr_wl_shell.c index 3543b287..e0514708 100644 --- a/types/wlr_wl_shell.c +++ b/types/wlr_wl_shell.c @@ -98,12 +98,17 @@ static void shell_pointer_grab_axis(struct wlr_seat_pointer_grab *grab, value_discrete, source); } +static void shell_pointer_grab_frame(struct wlr_seat_pointer_grab *grab) { + wlr_seat_pointer_send_frame(grab->seat); +} + static const struct wlr_pointer_grab_interface shell_pointer_grab_impl = { .enter = shell_pointer_grab_enter, .motion = shell_pointer_grab_motion, .button = shell_pointer_grab_button, .cancel = shell_pointer_grab_cancel, .axis = shell_pointer_grab_axis, + .frame = shell_pointer_grab_frame, }; static const struct wl_shell_surface_interface shell_surface_impl; diff --git a/types/xdg_shell/wlr_xdg_popup.c b/types/xdg_shell/wlr_xdg_popup.c index 02dbec73..598c14ef 100644 --- a/types/xdg_shell/wlr_xdg_popup.c +++ b/types/xdg_shell/wlr_xdg_popup.c @@ -50,6 +50,10 @@ static void xdg_pointer_grab_axis(struct wlr_seat_pointer_grab *grab, value_discrete, source); } +static void xdg_pointer_grab_frame(struct wlr_seat_pointer_grab *grab) { + wlr_seat_pointer_send_frame(grab->seat); +} + static void xdg_pointer_grab_cancel(struct wlr_seat_pointer_grab *grab) { xdg_pointer_grab_end(grab); } @@ -60,6 +64,7 @@ static const struct wlr_pointer_grab_interface xdg_pointer_grab_impl = { .button = xdg_pointer_grab_button, .cancel = xdg_pointer_grab_cancel, .axis = xdg_pointer_grab_axis, + .frame = xdg_pointer_grab_frame, }; static void xdg_keyboard_grab_enter(struct wlr_seat_keyboard_grab *grab, diff --git a/types/xdg_shell_v6/wlr_xdg_popup_v6.c b/types/xdg_shell_v6/wlr_xdg_popup_v6.c index 097e0253..f79464d3 100644 --- a/types/xdg_shell_v6/wlr_xdg_popup_v6.c +++ b/types/xdg_shell_v6/wlr_xdg_popup_v6.c @@ -60,6 +60,10 @@ static void xdg_pointer_grab_axis(struct wlr_seat_pointer_grab *grab, value_discrete, source); } +static void xdg_pointer_grab_frame(struct wlr_seat_pointer_grab *grab) { + wlr_seat_pointer_send_frame(grab->seat); +} + static void xdg_pointer_grab_cancel(struct wlr_seat_pointer_grab *grab) { xdg_pointer_grab_end(grab); } @@ -70,6 +74,7 @@ static const struct wlr_pointer_grab_interface xdg_pointer_grab_impl = { .button = xdg_pointer_grab_button, .cancel = xdg_pointer_grab_cancel, .axis = xdg_pointer_grab_axis, + .frame = xdg_pointer_grab_frame, }; static void xdg_keyboard_grab_enter(struct wlr_seat_keyboard_grab *grab,