feat(shell): add mini-pane window mode with hover-to-restore overlay - #1273
Conversation
|
Added a follow-up fix (a2946c8): exiting mini mode while the window is maximized kept the mini-sized normal frame, because |
a2946c8 to
041ce8b
Compare
Add a mini-pane button to the desktop title bar that shrinks the main window to a 380x480 always-on-top pane anchored to the bottom-right of the work area. While active, secondary chrome (sidebar, menu bar) is collapsed and a hover overlay offers one-click restore to the saved bounds and maximized state.
The hover overlay is now a window drag region so the shrunken pane can be moved anywhere by pressing on the dimmed layer; the restore badge opts out with no-drag. Hover visibility is driven by body:hover because pointer-events: none elements never receive :hover themselves.
setBounds() is a no-op on a maximized window, so when the user maximized the window while in mini-pane mode, exiting mini mode kept the mini-sized normal frame and any later restore jumped the window back to the small pane rectangle. Unmaximize before restoring the saved bounds.
041ce8b to
23ca58e
Compare
XingYu-Zhong
left a comment
There was a problem hiding this comment.
Reviewed the mini-window behavior and rebased it onto develop after #1277. Fixed renderer reload state recovery, query/event ordering, original minimum-size and always-on-top restoration, and the CSS line-limit failure. Corrected the unrelated PR description. Typecheck, build, lint, and all 42 combined attachment/mini-window regression tests pass; final shared renderer/preload/main typechecks also pass.
Summary
Add a title-bar mini-pane button that shrinks the desktop window to a 380x480 always-on-top pane. A draggable hover overlay offers a restore button that returns the window to its previous bounds and maximized state.
Changes
developafter merging fix(composer): route dropped document uploads through the desktop bridge #1277 (08d8796fe).Tests
npm run typecheck,npm run build, andnpm run lintpassed.