* feat: save/restore window state
* cleanup
* remove constructor option
* refactor: apply suggestions from code review
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* refactor: forward declare prefservice
* refactor: remove constructor option
* refactor: save window state on move/resize instead of moved/resized
* feat: resave window state after construction
* test: add basic window save tests
* test: add work area tests
* test: asynchronous batching behavior
* docs: add windowStateRestoreOptions to BaseWindowConstructorOptions
* chore: move includes to main block
* Update spec/api-browser-window-spec.ts
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
* docs: update docs/api/structures/base-window-options.md
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* fix: preserve original bounds during window state save in special modes
* feat: save kiosk state in window preferences
* chore: remove ts-expect-error
* test: check hasCapturableScreen before running tests
* test: remove multimonitor tests
* test: add missing hasCapturableScreen checks before tests
* docs: add blurb on saving mechanism
* feat: add debounce window of 200ms to saveWindowState
* docs: remove blurb until finalized
* style: convert constants from snake_case to camelCase
* refactor: initialize prefs_ only if window state is configured to be saved/restored
* refactor: rename window states key
* refactor: store in application-level Local State instead of browser context
* refactor: switch to more accurate function names
* fix: add dcheck for browser_process
* fix: flush window state to avoid race condition
* refactor: change stateId to name
* refactor: change windowStateRestoreOptions to windowStatePersistence
* Update docs/api/structures/base-window-options.md
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
* fix: add warning when window state persistence enabled without window name
* docs: lowercase capital B for consistency
---------
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
Co-authored-by: Erick Zhao <erick@hotmail.ca>