aboutsummaryrefslogtreecommitdiff
path: root/include/wlr
diff options
context:
space:
mode:
authorKirill Primak <vyivel@posteo.net>2021-09-30 20:46:08 +0300
committerSimon Zeni <simon@bl4ckb0ne.ca>2021-10-07 07:27:51 -0600
commitc3e54021f8bbf3ec1c1e5906459be0ae85f5fb8c (patch)
tree685f121d64788ac3c4f1f8d299f67c1f83899172 /include/wlr
parentcdaab820201d6aff7ed44da35595df65b9739bea (diff)
xdg-decoration: refactor configure/state flow
The same logic/motivation as xdg-toplevel.
Diffstat (limited to 'include/wlr')
-rw-r--r--include/wlr/types/wlr_xdg_decoration_v1.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/include/wlr/types/wlr_xdg_decoration_v1.h b/include/wlr/types/wlr_xdg_decoration_v1.h
index eafa05cc..b3651559 100644
--- a/include/wlr/types/wlr_xdg_decoration_v1.h
+++ b/include/wlr/types/wlr_xdg_decoration_v1.h
@@ -30,16 +30,22 @@ struct wlr_xdg_toplevel_decoration_v1_configure {
enum wlr_xdg_toplevel_decoration_v1_mode mode;
};
+struct wlr_xdg_toplevel_decoration_v1_state {
+ enum wlr_xdg_toplevel_decoration_v1_mode mode;
+};
+
struct wlr_xdg_toplevel_decoration_v1 {
struct wl_resource *resource;
struct wlr_xdg_surface *surface;
struct wlr_xdg_decoration_manager_v1 *manager;
struct wl_list link; // wlr_xdg_decoration_manager_v1::link
+ struct wlr_xdg_toplevel_decoration_v1_state current, pending;
+
+ enum wlr_xdg_toplevel_decoration_v1_mode scheduled_mode;
+ enum wlr_xdg_toplevel_decoration_v1_mode requested_mode;
+
bool added;
- enum wlr_xdg_toplevel_decoration_v1_mode current_mode;
- enum wlr_xdg_toplevel_decoration_v1_mode client_pending_mode;
- enum wlr_xdg_toplevel_decoration_v1_mode server_pending_mode;
struct wl_list configure_list; // wlr_xdg_toplevel_decoration_v1_configure::link