Open Boxap opened 5 months ago
Thank you for your detailed bug report.
Unfortunately, we cannot implement a preview mode for SemanticDiff tabs due to limitations of the VS Code extension API.
In an ideal world, SemanticDiff would simply integrate its diff visualization into the regular editor. This is not possible, however, as it provides very limited ways to modify the rendering for extensions. Instead, we have to resort to using webview panels and implement all the text rendering ourselves. Webview panels offer the most flexibility, but they are also not very well integrated into VS Code and many features are not available. One of them is creating preview tabs. There is a feature request open since 2020 to allow creating preview tabs, but there doesn't seem to be much progress.
Describe the Bug The only possibility to compare two branches (for example changes in Merge Request) is to consequently open file by file and check diffs per file (from what I could find). So in this process when selecting multiple files one by one, when using the default diff created tab is reused (preview used, workbench.editor.enablePreview setting is "true"), which means that for any amount of open diffs only one tab is created. (20 diffs clicked -> only one tab opened in the window in the end)
However SemanticDiff extension creates a permanent tab for every diff (20 diffs clicked -> 20 tabs opened in the window in the end)
To Reproduce Steps to reproduce the behavior (GitLens example):
Expected Behavior Only 1 original diff tab and 1 SemanticDiff tab should be opened
Actual Behavior 1 original diff and n SemanticDiff tabs are opened
SemanticDiff Version 0.8.10
VS Code Information