mirror of
https://github.com/labwc/labwc.git
synced 2025-11-04 13:30:07 -05:00
xdg: Implement request_minimize
Signed-off-by: Joshua Ashton <joshua@froggi.es>
This commit is contained in:
parent
295d5172d4
commit
2d98179b31
2 changed files with 13 additions and 0 deletions
|
|
@ -277,6 +277,7 @@ struct view {
|
||||||
struct wl_listener request_move;
|
struct wl_listener request_move;
|
||||||
struct wl_listener request_resize;
|
struct wl_listener request_resize;
|
||||||
struct wl_listener request_configure; /* xwayland only */
|
struct wl_listener request_configure; /* xwayland only */
|
||||||
|
struct wl_listener request_minimize;
|
||||||
struct wl_listener request_maximize;
|
struct wl_listener request_maximize;
|
||||||
struct wl_listener request_fullscreen;
|
struct wl_listener request_fullscreen;
|
||||||
struct wl_listener set_title;
|
struct wl_listener set_title;
|
||||||
|
|
|
||||||
12
src/xdg.c
12
src/xdg.c
|
|
@ -135,6 +135,16 @@ handle_request_resize(struct wl_listener *listener, void *data)
|
||||||
interactive_begin(view, LAB_INPUT_STATE_RESIZE, event->edges);
|
interactive_begin(view, LAB_INPUT_STATE_RESIZE, event->edges);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
handle_request_minimize(struct wl_listener *listener, void *data)
|
||||||
|
{
|
||||||
|
struct view *view = wl_container_of(listener, view, request_minimize);
|
||||||
|
struct wlr_xdg_surface *surface = data;
|
||||||
|
if (view) {
|
||||||
|
view_minimize(view, surface->toplevel->requested.minimized);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
handle_request_maximize(struct wl_listener *listener, void *data)
|
handle_request_maximize(struct wl_listener *listener, void *data)
|
||||||
{
|
{
|
||||||
|
|
@ -423,6 +433,8 @@ xdg_surface_new(struct wl_listener *listener, void *data)
|
||||||
wl_signal_add(&toplevel->events.request_move, &view->request_move);
|
wl_signal_add(&toplevel->events.request_move, &view->request_move);
|
||||||
view->request_resize.notify = handle_request_resize;
|
view->request_resize.notify = handle_request_resize;
|
||||||
wl_signal_add(&toplevel->events.request_resize, &view->request_resize);
|
wl_signal_add(&toplevel->events.request_resize, &view->request_resize);
|
||||||
|
view->request_minimize.notify = handle_request_minimize;
|
||||||
|
wl_signal_add(&toplevel->events.request_minimize, &view->request_minimize);
|
||||||
view->request_maximize.notify = handle_request_maximize;
|
view->request_maximize.notify = handle_request_maximize;
|
||||||
wl_signal_add(&toplevel->events.request_maximize, &view->request_maximize);
|
wl_signal_add(&toplevel->events.request_maximize, &view->request_maximize);
|
||||||
view->request_fullscreen.notify = handle_request_fullscreen;
|
view->request_fullscreen.notify = handle_request_fullscreen;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue