xdg_popup_listener Struct Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files
- Examples

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Data Fields
xdg_popup_listener Struct Reference

xdg_popup - desktop-style metadata interface : popup interaction is done More...

## Data Fields
void(* | popup_done )(void *data, struct xdg_popup *xdg_popup, uint32_t serial)
| popup_done - popup interaction is done : serial of the implicit grab on the pointer More...

## Detailed Description

xdg_popup - desktop-style metadata interface : popup interaction is done

An interface that may be implemented by a wl_surface, for implementations that provide a desktop-style popups/menus. A popup surface is a transient surface with an added pointer grab.

An existing implicit grab will be changed to owner-events mode, and the popup grab will continue after the implicit grab ends (i.e. releasing the mouse button does not cause the popup to be unmapped).

The popup grab continues until the window is destroyed or a mouse button is pressed in any other clients window. A click in any of the clients surfaces is reported as normal, however, clicks in other clients surfaces will be discarded and trigger the callback.

The x and y arguments specify the locations of the upper left corner of the surface relative to the upper left corner of the parent surface, in surface local coordinates.

xdg_popup surfaces are always transient for another surface.

## Field Documentation

void(* xdg_popup_listener::popup_done) (void *data, struct xdg_popup *xdg_popup, uint32_t serial)

popup_done - popup interaction is done : serial of the implicit grab on the pointer

The popup_done event is sent out when a popup grab is broken, that is, when the users clicks a surface that doesn't belong to the client owning the popup surface.