Repository navigation
Replies: 1 comment
|
Confirmed same behavior on macOS (Apple Silicon), DSH Desktop 0.2.1-rc.5 — the main window always resets to 1280×820 centered after a real quit/relaunch. 👍 for a native fix in the desktop shell. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Version: DSH Desktop
0.2.1-rc.3(bundled dsh buildbe72761e), Windows 11 x64Symptom
After quitting and relaunching DSH Desktop, the main window is always the default 1280x820, centered, non-maximized. The size, position and maximized state from the previous session are lost.
Note: clicking the close button only hides the window to the tray, so geometry survives within one process run - it resets only after a real quit / crash / auto-update / system reboot.
Verified in the shipped
app.asar(lib/main.js)This appears to be an unimplemented feature rather than a regression:
createWindow()hardcodeswidth: 1280, height: 820with no bounds-restore logic;isMaximized/unmaximizecalls anywhere in the main process bundle;resized/movedlisteners on the main window (only aclose-> hide-to-tray handler);userData/desktop/settings.jsoncontains onlyupdates.allowTestAuthPopupWindow- no bounds field;electron-window-state(or similar) dependency;Preferences/Local Storage.Steps to reproduce
Expected / suggested fix
First-class support in the desktop shell: debounce-persist
bounds + maximizedon resize/move/maximize into the desktop settings, restore at startup (clamped to a visible display so detached-monitor geometry never produces an off-screen window), with a toggle similar to VS Code's window-reopen behavior.FYI: the community already ships two renderer-side workarounds (flying4055/dsh-window-bounds, muqing-kg/dsh-window-state) that use
resizeTo/moveTo/polling because the shell exposes no window-geometry IPC today - which tells you how many desktop users hit this. A native implementation would also cover the maximized state and avoid racing the onboardingsetMinimumSize(960)path.All reactions