diff --git a/CLAUDE.md b/CLAUDE.md index a590d4b..3b12314 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -262,6 +262,20 @@ Détails : `TrackPopupMenu`, qui est modal) : le menu déroulant est lui aussi dans la bande `TOPMOST`, et se faisait donc recouvrir par la barrette qui venait de l'ouvrir. +- **Posée SUR la barre des tâches, elle disparaît quand celle-ci est active** + (clic sur Démarrer, clic sur la barre) et revient au premier clic sur une + autre fenêtre. Mesuré le 2026-09-22 : la barrette reste au bon endroit, + au-dessus de `Shell_TrayWnd` dans l'ordre des fenêtres, et n'est pas masquée + par DWM (`DWMWA_CLOAKED` = 0) — elle n'est simplement plus dessinée. La barre + des tâches active occupe une **bande réservée au shell**, au-dessus de tout + `TOPMOST` ordinaire. Deux contournements essayés, tous deux sans effet : + `NOTOPMOST` puis `TOPMOST` (les appels rendent True), et le même avec + `AttachThreadInput` sur le fil de la barre des tâches. Seul `uiAccess=true` + (exe signé, dans `C:\Program Files\`) y accède. **Assumé** : l'utilisateur a + choisi de garder sa position plutôt que d'être remonté automatiquement + (2026-09-22). Le battement ne redemande donc `TOPMOST` que lorsque le centre + de la barrette appartient à une autre fenêtre — utile contre les autres + fenêtres `TOPMOST`, impuissant contre le shell. - **Traîner depuis un bouton** : les boutons sont subclassés (`GWLP_WNDPROC`, une seule proc d'origine — même classe). Sur `WM_LBUTTONDOWN`, **`DragDetect`** tranche entre clic et glissement en respectant le seuil réglé par