From e3f624d2bb3e53beddc84129f8e906d5b0e7de32 Mon Sep 17 00:00:00 2001 From: deepend Date: Wed, 18 Feb 2026 13:11:04 -0700 Subject: [PATCH] Fixed the GTK3 window-state handler so minimizing via taskbar no longer immediately deiconifies the window again. Specifically, I removed the conflicting gtk_window_deiconify(wid) call from the iconify path in mg_windowstate_cb, while preserving the existing tray-hide behavior and window state bookkeeping. This restores expected toggle behavior when clicking the taskbar icon on a maximized window. --- src/fe-gtk/maingui.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/fe-gtk/maingui.c b/src/fe-gtk/maingui.c index 522bf769..685725f8 100644 --- a/src/fe-gtk/maingui.c +++ b/src/fe-gtk/maingui.c @@ -663,14 +663,13 @@ fe_set_title (session *sess) static gboolean mg_windowstate_cb (GtkWindow *wid, GdkEventWindowState *event, gpointer userdata) { - if ((event->changed_mask & GDK_WINDOW_STATE_ICONIFIED) && - (event->new_window_state & GDK_WINDOW_STATE_ICONIFIED) && - prefs.hex_gui_tray_minimize && prefs.hex_gui_tray && - gtkutil_tray_icon_supported (wid)) - { - tray_toggle_visibility (TRUE); - gtk_window_deiconify (wid); - } + if ((event->changed_mask & GDK_WINDOW_STATE_ICONIFIED) && + (event->new_window_state & GDK_WINDOW_STATE_ICONIFIED) && + prefs.hex_gui_tray_minimize && prefs.hex_gui_tray && + gtkutil_tray_icon_supported (wid)) + { + tray_toggle_visibility (TRUE); + } prefs.hex_gui_win_state = 0; if (event->new_window_state & GDK_WINDOW_STATE_MAXIMIZED)