Feature/restore#84
Merged
Merged
Conversation
Persist and restore complete workspace state across sessions and hard kills: - Window geometry (x, y, width, height, maximized, fullscreen) saved to config via debounced property listeners — survives SIGKILL because state is written on every change, not only at shutdown - Active tab per project stored in [active_file] section of .marknote - ProjectSessionService: new SessionData record (openFiles + activeFile); loadSession() returns SessionData instead of List<File> - Auto-restore on startup via handleStartupRestore(): when restoreWorkspaceOnStart=true (default), the last project + session are reopened automatically without a confirmation dialog - ShutdownHook registered for SIGTERM / unexpected JVM exit - geometryDebouncer shut down cleanly in Application.stop() Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
In reading mode the window is fullscreen and panels are rearranged. Persisting that state (fullscreen=true, resized dimensions) would cause the workspace to restore into a broken fullscreen layout on next launch. All six geometry listeners (x, y, width, height, maximized, fullscreen) now guard on !readingModeActive so only the pre-reading-mode geometry is kept in config. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Show an elegant semi-transparent overlay during startup workspace restoration so the user gets visual feedback while files are loaded. - WorkspaceRestoreOverlay: StackPane with 50% dark backdrop, centered card (white/rounded/drop-shadow), app logo, title label, determinate ProgressBar and per-file status label - Scene root changed to StackPane(root, overlay) so the overlay can cover the full window without disrupting existing layout - openSessionFilesSequentially(): opens session files one-by-one via Platform.runLater chain so the FX thread can repaint the progress bar between each file; hides overlay once all files are open - setupProjectDirectory() extracted from openProjectDirectory() to allow the restore path to call setup + sequential open separately - i18n keys restore.overlay.title / restore.overlay.file added to all 6 language files (fr, en, de, es, it, default) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Replace StackPane with AnchorPane as scene root so the overlay is pinned to all 4 edges and always covers the full window - Replace programmatic setBackground() with a Rectangle child whose width/height are bound to the overlay, making it immune to CSS theme overrides - Fix geometry debouncer bug: all 4 listeners (x, y, width, height) now share a single saveGeometry Runnable so a resize cannot cause one property to silently overwrite the others mid-debounce - Apply macOS fullscreen restoration via showingProperty listener instead of bare Platform.runLater (fires too early before stage show) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Owner
…reopen project dialog
Owner
|
La taille des panels n'est plus sauvegardée. |
Collaborator
Author
|
Je reprendrais la feature. Il y a visiblement quelque chose que j’ai loupé |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Restore workspace when reopen