Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Tab State, Add Window Restoration #1368

Merged
merged 4 commits into from
Jul 7, 2023

Conversation

thecoolwinter
Copy link
Collaborator

Description

Fixes tab state restoration and adds window size and position restoration. Adds Codable conformance to TabGroup, TabGroupData, and SplitViewData and stores them in the workspace state on window close. They are then retrieved from the workspace state on open and used to restore tab state.

Adds window position restoration. Remembers window size and position and attempts to restore both properties when the window is opened. This applies to both workspace and single file windows. Also updates the default window sizes to match the Figma design.

Adds some state restoration code to DebugAreaViewModel for a future PR restoring the debug area view model state. And updates the workspace state API to use an enum instead of raw keys.

Related Issues

Checklist

  • I read and understood the contributing guide as well as the code of conduct
  • The issues this PR addresses are related to each other
  • My changes generate no new warnings
  • My code builds and runs on my machine
  • My changes are all related to the related issue above
  • I documented my code

Screenshots

Screen.Recording.2023-07-07.at.11.42.05.AM.720p.mov

Copy link
Collaborator

@austincondiff austincondiff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Great work!

@thecoolwinter thecoolwinter merged commit 0200c87 into CodeEditApp:main Jul 7, 2023
2 checks passed
@thecoolwinter thecoolwinter deleted the fix/tab-state-restore branch July 7, 2023 19:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants