diff options
| author | Kristian Høgsberg <krh@bitplanet.net> | 2011-01-18 09:17:57 -0500 |
|---|---|---|
| committer | Kristian Høgsberg <krh@bitplanet.net> | 2011-01-19 14:25:12 -0500 |
| commit | b46df05fa82578a24949a63909d23c650af92305 (patch) | |
| tree | f6845ab56c12f8e6a455e09648c7b17c8a4e5bdd /clients/window.c | |
| parent | First attempt at selection support (diff) | |
| download | wayland-b46df05fa82578a24949a63909d23c650af92305.tar wayland-b46df05fa82578a24949a63909d23c650af92305.tar.gz wayland-b46df05fa82578a24949a63909d23c650af92305.tar.bz2 wayland-b46df05fa82578a24949a63909d23c650af92305.tar.lz wayland-b46df05fa82578a24949a63909d23c650af92305.tar.xz wayland-b46df05fa82578a24949a63909d23c650af92305.tar.zst wayland-b46df05fa82578a24949a63909d23c650af92305.zip | |
window: Add a catch-all global handler hook
Diffstat (limited to 'clients/window.c')
| -rw-r--r-- | clients/window.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/clients/window.c b/clients/window.c index 84d0418..9d5c9d1 100644 --- a/clients/window.c +++ b/clients/window.c @@ -80,6 +80,7 @@ struct display { cairo_surface_t **pointer_surfaces; display_drag_offer_handler_t drag_offer_handler; + display_global_handler_t global_handler; }; struct window { @@ -1338,6 +1339,8 @@ display_handle_global(struct wl_display *display, uint32_t id, offer = wl_drag_offer_create(display, id); d->drag_offer_handler(offer, d); } + } else if (d->global_handler) { + d->global_handler(d, interface, version); } } @@ -1544,3 +1547,10 @@ display_set_drag_offer_handler(struct display *display, { display->drag_offer_handler = handler; } + +void +display_set_global_handler(struct display *display, + display_global_handler_t handler) +{ + display->global_handler = handler; +} |
