in the win_ntk.c code make destroy_window() cause cleanup of the wgl context. add support for cleanup when an interp is deleted via Tcl_CallWhenDeleted(). All of the windows should be destroyed. We should also probably send a message to trigger cleanup if possible, though if the interp is cleaned up it seems like that's not needed. ntk-raise-sys-window setup WM_CLOSE to send a message to the Tcl-side, as well as the ClientMessage WM_DELETE_WINDOW. MOST IMPORTANT: build a good app that needs keyboard input for Win32. Win32 keyboard events aren't quite right yet in ntk. We need a way to set the icon, iconname, and the WM_DELETE_WINDOW protocol. The selection commands should be completed eventually. We need to handle the SelectionRequest. The ICCCM has the details. Perhaps: ntk-set-icon $winid $megaimage-data $iconname Test the XSHM-less paths well. Make sure that if SHM works one minute, and after a resize_image it doesn't, that we fallback correctly. Set some of the EWM hints from freedesktop.org Add Win/X cursor handling, or make the cursor be drawn by NexTk. Possibly add a way to make a window a transient.