Window-close leak + tooltip regression fixes
Two targeted fixes to the lister window machinery, unrelated to each other but worth shipping together.
Fixes
-
Zoom-gadget memory leak on lister window close.
lister_open_windowhijacks the screen's system zoom gadget by clearingGTYP_SYSGADGET | GTYP_SYSTYPEMASKand settingGadgetID = GAD_ZOOMso our IDCMP handler can route it. Intuition only frees gadgets it still recognises as system gadgets, so after this mutation the storage leaked on every open/close cycle. The originalGadgetTypeandGadgetIDare now saved on open and restored immediately beforeCloseWindow, so Intuition cleans up normally; custom IDCMP routing stays intact for the window's lifetime. -
Tooltips silently disappearing after any gadget click. The
IDCMP_GADGETUPhandler was strippingIDCMP_INTUITICKSfrom the window's IDCMP mask on every release, which turned off the toolbar tooltip hover timer for the remaining lifetime of the lister. A freshly opened Name-mode lister showed tooltips (INTUITICKS is in the initial IDCMP mask), but the moment the user clicked anything — including the menu-driven Icon↔Name mode switch — they stopped.GADGETUPnow keepsINTUITICKSsubscribed, matching the intent already documented in the neighbouringIDCMP_MOUSEBUTTONSpath.
Version bumps
- Program: 5.96 → 5.97
- Library / dopus5.module: 73.1 (unchanged)
- Commands (viewfont, dopusrt5, LoadDB): 65.1 (unchanged)
No API, IPC or on-disk format changes — safe drop-in over 5.96.
Full Changelog: 5.96...5.97