v0.9.51 β πͺ a window that comes back
πͺ A window that comes back
The chat window could return from a mode switch dead. Go βΆ large, then π‘ feed, then back, and the window resized and moved correctly while the page inside never repainted again β no hover, no new messages, nothing but a restart.
What was removed. Two things this shell did to that window are things WebView2 does not support being hosted through, and both sat in exactly that path:
- the window's resizable style is no longer flipped on every βΆ toggle β the window is born resizable and stays that way. Nothing is lost: the webview covers the frameless window, so the OS resize handles are unreachable either way, and large mode's edge strips are still the only way to drag an edge.
- the feed strip's see-through look is CSS now, not a layered-window alpha (
WS_EX_LAYEREDon Windows,NSWindow.alphaValueon macOS). One look, one implementation, every platform.
Honest caveat. The freeze never reproduced on demand β around 30 scripted mode switches, including toggles while the window sat parked off-screen, all stayed alive. So this removes the hazards rather than a proven cause.
Which is why there's a rescue. Tray β Reload chat window rebuilds the page and puts the window back to its normal size, position and mode β without touching the daemon, so agents that are mid-task keep running. Before this, "Restart office" was the only way back, and it takes the whole stack down.
Also: leaving βΆ large now clears the size floor it had set β mini (390Γ430) and the feed strip (330 wide) are both smaller than a minimum that had no business outliving the mode that set it.
If your window ever freezes again: use the tray rescue, then please open an issue with what you did just before it happened. That's the missing piece.
Windows/macOS/Linux shell binaries are attached below β bagidea update picks them up automatically.