2023-03-30 22:19:05 +01:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
2023-05-13 16:10:33 +03:00
|
|
|
#ifndef LABWC_SESSION_LOCK_H
|
|
|
|
|
#define LABWC_SESSION_LOCK_H
|
2023-03-30 22:19:05 +01:00
|
|
|
|
|
|
|
|
#include <wlr/types/wlr_session_lock_v1.h>
|
|
|
|
|
|
2023-10-04 23:54:27 -04:00
|
|
|
struct output;
|
|
|
|
|
struct server;
|
|
|
|
|
|
2023-03-30 22:19:05 +01:00
|
|
|
struct session_lock {
|
|
|
|
|
struct wlr_session_lock_v1 *lock;
|
|
|
|
|
struct wlr_surface *focused;
|
|
|
|
|
bool abandoned;
|
|
|
|
|
|
|
|
|
|
struct wl_list session_lock_outputs;
|
|
|
|
|
|
|
|
|
|
struct wl_listener new_surface;
|
|
|
|
|
struct wl_listener unlock;
|
|
|
|
|
struct wl_listener destroy;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
void session_lock_init(struct server *server);
|
|
|
|
|
void session_lock_output_create(struct session_lock *lock, struct output *output);
|
2023-10-04 23:54:27 -04:00
|
|
|
void session_lock_update_for_layout_change(void);
|
2023-03-30 22:19:05 +01:00
|
|
|
|
2023-05-13 16:10:33 +03:00
|
|
|
#endif /* LABWC_SESSION_LOCK_H */
|