xwm: supply wlr_xwayland pointer to user_event_handler callback

Previously it was supplying a pointer to private struct wlr_xwm
which was useless for compositors. The wlr_xwayland pointer in
contrast does have a generic data field and thus can be used by
compositors to attach their own pointer.

Additionally change the return value from int to bool.
This commit is contained in:
Consolatis 2024-04-29 10:57:08 +02:00 committed by Kirill Primak
parent 20997df416
commit 0a388a14f1
2 changed files with 4 additions and 4 deletions

View File

@ -57,11 +57,11 @@ struct wlr_xwayland {
} events;
/**
* Add a custom event handler to xwayland. Return 1 if the event was
* handled or 0 to use the default wlr-xwayland handler. wlr-xwayland will
* Add a custom event handler to xwayland. Return true if the event was
* handled or false to use the default wlr-xwayland handler. wlr-xwayland will
* free the event.
*/
int (*user_event_handler)(struct wlr_xwm *xwm, xcb_generic_event_t *event);
bool (*user_event_handler)(struct wlr_xwayland *wlr_xwayland, xcb_generic_event_t *event);
void *data;

View File

@ -1747,7 +1747,7 @@ static int x11_event_handler(int fd, uint32_t mask, void *data) {
count++;
if (xwm->xwayland->user_event_handler &&
xwm->xwayland->user_event_handler(xwm, event)) {
xwm->xwayland->user_event_handler(xwm->xwayland, event)) {
free(event);
continue;
}