ui/win32/toolkit.c

changeset 1035
86d3a45dc928
parent 956
4cdfbfd2038d
child 1036
24677835f298
--- a/ui/win32/toolkit.c	Wed Dec 31 09:16:02 2025 +0100
+++ b/ui/win32/toolkit.c	Wed Dec 31 10:06:15 2025 +0100
@@ -117,6 +117,16 @@
             break;
         }
         case WM_COMMAND: {
+            UiWindow *win = ui_widget2window(widget);
+            if (win) {
+                uint64_t id = LOWORD(wParam);
+                UiCommand *cmd = cxMapGet(win->obj->ctx->command_map, id);
+                if (cmd) {
+                    cmd->callback(win->obj, cmd->userdata);
+                    break;
+                }
+            }
+
             HWND hwndCtrl = (HWND)lParam;
             W32Widget *cmdWidget = (W32Widget*)GetWindowLongPtr(hwndCtrl, GWLP_USERDATA);
             if (cmdWidget && cmdWidget->wclass->eventproc) {

mercurial