mirror of
https://github.com/microsoft/vscode.git
synced 2026-07-05 22:36:01 +01:00
558503ae2c
After adopting the sessions grid we lost the previous "restore on reload" behaviour. Restore the full visible grid (order, sticky/pinned state and the active session, including the empty new-session slot) from persisted workspace state instead of only the last active session. - Snapshot the live visibility model on save and rebuild it atomically via VisibleSessions.restoreGrid so multiple restored sessions appear in one shot without flicker; late-arriving sessions are inserted into their persisted position incrementally. - Suppress the empty new-session view while restore runs (view-owned restoring flag + grid hide) so the composer does not flash before sessions are laid out. - Show per-leaf load progress on each chat view's own ProgressBar (mirroring editor-group ScopedProgressIndicator) while its chat model loads. - Move keyboard focus into the active session by observing ISessionsManagementService.activeSession from the part, guarded so it never steals focus from another surface (e.g. the sessions list). - Use a dedicated restore cancellation token that is actually cancelled when the user opens a session, and bound provider waits with a timeout so a deleted session cannot keep restore (and its listeners) pending forever. - Add a coding guideline forbidding lazy invokeFunction/accessor.get service resolution. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>