From 5825ac50670f4fbfb82c3453b22bb5d48f651527 Mon Sep 17 00:00:00 2001 From: rdipardo <59004801+rdipardo@users.noreply.github.com> Date: Wed, 10 Jun 2026 11:50:38 -0400 Subject: [PATCH] Properly handle the docking panel's X close button --- DlgConsole.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/DlgConsole.cpp b/DlgConsole.cpp index ae8b535..51cb5d9 100644 --- a/DlgConsole.cpp +++ b/DlgConsole.cpp @@ -30,6 +30,7 @@ #include "NPP/PluginInterface.h" #include "NPP/menuCmdID.h" #include "NPP/Docking.h" +#include "NPP/dockingResource.h" #include "NppSnippets.h" #include "Library.h" #include "Snippets.h" @@ -1488,6 +1489,18 @@ static BOOL CALLBACK DlgProcedure(HWND hWnd, UINT message, WPARAM wParam, LPARAM break; } + case WM_NOTIFY: + { + LPNMHDR pnmh = reinterpret_cast(lParam); + if (LOWORD(pnmh->code) == DMN_CLOSE) + { + SendMessage(g_nppData._nppHandle, NPPM_DMMHIDE, 0, (LPARAM) s_hDlg); + SendMessage(g_nppData._nppHandle, NPPM_SETMENUITEMCHECK, (WPARAM) g_funcItem[0]._cmdID, (LPARAM) FALSE); + s_bConsoleVisible = false; + } + break; + } + case WM_CTLCOLORLISTBOX: return (UINT_PTR) OnCtlColorListbox(hWnd, (HWND) lParam, (HDC) wParam);