Fixed the autocomplete crash, root cause: getDocumentSymbols() accessed mDocs from a worker thread while document lifecycle callbacks could concurrently modify the same unordered_set, corrupting its internal state.

Added a synthetic “Working Tree / Index” first row whenever the selected repository has local or staged changes.
Displays separate changed and staged counts.
Updates dynamically from normal status refreshes without reloading commit history.
Selecting it opens the shared details view in “Uncommitted changes” mode.
Shows tracked changes from HEAD through the working tree, plus untracked-file patches.
Supports both sidebar and detached History views.
The History shortcut focuses working changes when present, otherwise the newest commit.
Added the History button beside Refresh.
Added consistent 2dp spacing between the ref dropdown and both buttons.
Added translations for the new labels.
This commit is contained in:
Martín Lucas Golini
2026-08-29 03:12:27 -03:00
parent 61d9d3c7bc
commit b3d72b5acf
14 changed files with 412 additions and 57 deletions

View File

@@ -1248,6 +1248,9 @@ Restart ecode to see the changes.</string>
<string name="git_history_refresh">Refresh</string>
<string name="git_history_load_older">Load older commits</string>
<string name="git_history_empty">No commits yet</string>
<string name="git_working_tree_index">Working Tree / Index</string>
<string name="git_working_tree_summary">%zu changed, %zu staged</string>
<string name="git_uncommitted_changes">Uncommitted changes</string>
<string name="git_history_no_additional_commits">No additional commits</string>
<string name="git_show_in_history">Show in Git History</string>
<string name="git_commit_history_title">Git Commit History - %s</string>