mirror of
https://github.com/labwc/labwc.git
synced 2025-11-04 13:30:07 -05:00
xwayland: Implement resize event
Signed-off-by: Joshua Ashton <joshua@froggi.es>
This commit is contained in:
parent
2a18899689
commit
62123dc37e
1 changed files with 20 additions and 0 deletions
|
|
@ -43,6 +43,23 @@ handle_request_move(struct wl_listener *listener, void *data)
|
||||||
interactive_begin(view, LAB_INPUT_STATE_MOVE, 0);
|
interactive_begin(view, LAB_INPUT_STATE_MOVE, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
handle_request_resize(struct wl_listener *listener, void *data)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* This event is raised when a client would like to begin an interactive
|
||||||
|
* resize, typically because the user clicked on their client-side
|
||||||
|
* decorations. Note that a more sophisticated compositor should check
|
||||||
|
* the provied serial against a list of button press serials sent to
|
||||||
|
* this
|
||||||
|
* client, to prevent the client from requesting this whenever they
|
||||||
|
* want.
|
||||||
|
*/
|
||||||
|
struct wlr_xwayland_resize_event *event = data;
|
||||||
|
struct view *view = wl_container_of(listener, view, request_resize);
|
||||||
|
interactive_begin(view, LAB_INPUT_STATE_RESIZE, event->edges);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
handle_map(struct wl_listener *listener, void *data)
|
handle_map(struct wl_listener *listener, void *data)
|
||||||
{
|
{
|
||||||
|
|
@ -329,6 +346,9 @@ xwayland_surface_new(struct wl_listener *listener, void *data)
|
||||||
view->request_move.notify = handle_request_move;
|
view->request_move.notify = handle_request_move;
|
||||||
wl_signal_add(&xsurface->events.request_move,
|
wl_signal_add(&xsurface->events.request_move,
|
||||||
&view->request_move);
|
&view->request_move);
|
||||||
|
view->request_resize.notify = handle_request_resize;
|
||||||
|
wl_signal_add(&xsurface->events.request_resize,
|
||||||
|
&view->request_resize);
|
||||||
|
|
||||||
view->set_title.notify = handle_set_title;
|
view->set_title.notify = handle_set_title;
|
||||||
wl_signal_add(&xsurface->events.set_title, &view->set_title);
|
wl_signal_add(&xsurface->events.set_title, &view->set_title);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue