From fc1f1455c104184c62decf785e4da2e56e85d960 Mon Sep 17 00:00:00 2001 From: Zedhugh Chen Date: Tue, 25 Nov 2025 06:11:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=AA=97=E5=8F=A3=E5=B1=9E?= =?UTF-8?q?=E6=80=A7=E8=AE=BE=E7=BD=AE=E5=AE=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/xwindow.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/xwindow.h b/src/xwindow.h index 7d4d820..d0d720b 100644 --- a/src/xwindow.h +++ b/src/xwindow.h @@ -4,6 +4,7 @@ #include #include "action.h" +#include "app.h" #include "xcursor.h" typedef struct visual_t { @@ -17,3 +18,14 @@ void xwindow_grab_keys(xcb_window_t window, const keyboard_t *keys, int keys_length); bool xwindow_send_event(xcb_window_t window, xcb_atom_t atom); void xwindow_focus(xcb_window_t window); + +#define xwindow_set_name_static(window, name) \ + xcb_icccm_set_wm_name(wm.xcb_conn, window, XCB_ATOM_STRING, 8, \ + sizeof(name) - 1, name) +#define xwindow_set_class_instance(window) \ + xwindow_set_class_instance_static(window, APP_NAME, APP_NAME) +#define xwindow_set_class_instance_static(window, class, instance) \ + _xwindow_set_class_instance_static(window, instance "\0" class) +#define _xwindow_set_class_instance_static(window, instance_class) \ + xcb_icccm_set_wm_class(wm.xcb_conn, window, sizeof(instance_class), \ + instance_class)