Implement rendering of window control buttons in CSD

They still need to be wired up
This commit is contained in:
Kovid Goyal
2024-04-06 08:23:07 +05:30
parent 416d52bdac
commit 4f6faddbab
9 changed files with 93 additions and 20 deletions

10
glfw/wl_platform.h vendored
View File

@@ -166,6 +166,7 @@ typedef struct _GLFWwindowWayland
struct xdg_surface* surface;
struct xdg_toplevel* toplevel;
struct zxdg_toplevel_decoration_v1* decoration;
struct { int width, height; } top_level_bounds;
} xdg;
struct wp_fractional_scale_v1 *wp_fractional_scale_v1;
struct wp_viewport *wp_viewport;
@@ -224,6 +225,10 @@ typedef struct _GLFWwindowWayland
int32_t x, y, width, height;
} geometry;
struct {
bool hovered;
int width, left;
} minimize, maximize, close;
struct {
uint32_t *data;
size_t for_decoration_size, stride, segments, corner_size;
@@ -244,6 +249,11 @@ typedef struct _GLFWwindowWayland
int32_t width, height;
} user_requested_content_size;
struct {
bool minimize, maximize, fullscreen, window_menu;
} wm_capabilities;
bool maximize_on_first_show;
// counters for ignoring axis events following axis_discrete events in the
// same frame along the same axis