From 850b63bf8258e450a44c7f84d0ada4908cc26551 Mon Sep 17 00:00:00 2001 From: Zedhugh Chen Date: Tue, 26 Aug 2025 01:47:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=98=BE=E7=A4=BA=E7=AA=97=E5=8F=A3=E5=87=BD?= =?UTF-8?q?=E6=95=B0=E6=B7=BB=E5=8A=A0=E6=98=AF=E5=90=A6=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E5=AD=90=E7=AA=97=E5=8F=A3=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/include/xcb.h | 2 +- src/main.c | 4 ++-- src/xcb/window.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/include/xcb.h b/src/include/xcb.h index 30fd372..cb5a2f2 100644 --- a/src/include/xcb.h +++ b/src/include/xcb.h @@ -41,7 +41,7 @@ typedef struct window_geometry_t { * @returns 返回几何信息指针,使用完后记得使用 free 释放内存 */ window_geometry_t *get_window_geometry(xcb_window_t window); -void map_window(xcb_window_t window); +void map_window(xcb_window_t window, bool map_sub_window); /** * @brief 获取窗口名 * @returns 返回窗口名字符串指针,使用完后记得使用 free 释放内存 diff --git a/src/main.c b/src/main.c index f627136..61a8210 100644 --- a/src/main.c +++ b/src/main.c @@ -722,7 +722,7 @@ void manage_window(xcb_window_t window) { } c->monitor->selected_client = c; arrange(c->monitor); - map_window(window); + map_window(window, false); focus(NULL); } @@ -946,7 +946,7 @@ void show_hide_client(client_t *client) { if (CLIENT_VISIBLE(client)) { if (client->fullscreen) { - set_client_fullscreen(client, true); + fullscreen_client(client); } else if (client->maximize) { maximize_client(client); } else if (!client->monitor->layout->arrange || client->floating) { diff --git a/src/xcb/window.c b/src/xcb/window.c index 6b784a9..0b8ad0b 100644 --- a/src/xcb/window.c +++ b/src/xcb/window.c @@ -238,9 +238,9 @@ window_geometry_t *get_window_geometry(xcb_window_t window) { return geometry; } -void map_window(xcb_window_t window) { +void map_window(xcb_window_t window, bool map_sub_window) { xcb_map_window(conn, window); - xcb_map_subwindows(conn, window); + if (map_sub_window) xcb_map_subwindows(conn, window); } char *get_window_name(xcb_window_t window) {