Skip to content

Conversation

@roomote
Copy link
Contributor

@roomote roomote bot commented Jul 21, 2025

This PR implements the feature requested in issue 6006 to add a user setting that controls where new Roo tabs open in VS Code.

Changes:

  • Added openTabsAtEndOfList setting to the global settings schema with default value false
  • Updated ClineProvider to include the setting in state management and pass it to webview
  • Modified DiffViewProvider to use ViewColumn.Beside when the setting is enabled, which opens tabs at the end of the tab list
  • Added test coverage for the new setting

When openTabsAtEndOfList is set to true, the extension will use vscode.ViewColumn.Beside instead of vscode.ViewColumn.Active when opening diff views and showing documents. This causes VS Code to open new tabs at the end of the current tab group rather than next to the active tab.

This is particularly useful for users who have disabled the workbench.editor.focusRecentEditorAfterClose setting and want to maintain their tab order without new tabs disrupting their workflow.

Fixes #6006


Important

Adds openTabsAtEndOfList setting to control tab placement in VS Code, affecting DiffViewProvider and Task behavior.

  • Behavior:
    • Adds openTabsAtEndOfList setting to global settings schema with default false.
    • Modifies DiffViewProvider to use vscode.ViewColumn.Beside when setting is true, opening tabs at the end of the tab list.
    • Updates Task to initialize DiffViewProvider with openTabsAtEndOfList setting.
  • State Management:
    • ClineProvider includes openTabsAtEndOfList in state management and passes it to webview.
  • Testing:
    • Adds test for openTabsAtEndOfList in index.test.ts.
  • Misc:
    • Updates Task.spec.ts to mock onDidChangeWorkspaceFolders and Uri methods.

This description was created by Ellipsis for 94e8d57. You can customize this summary. It will automatically update as commits are pushed.

- Add openTabsAtEndOfList setting to global-settings schema with default value false
- Update ClineProvider to include the setting in state management
- Modify DiffViewProvider to use ViewColumn.Beside when setting is enabled
- Add test coverage for the new setting

Fixes #6006
@roomote roomote bot requested review from cte, jr and mrubens as code owners July 21, 2025 12:47
@dosubot dosubot bot added size:M This PR changes 30-99 lines, ignoring generated files. enhancement New feature or request labels Jul 21, 2025
@hannesrudolph hannesrudolph added the Issue/PR - Triage New issue. Needs quick review to confirm validity and assign labels. label Jul 21, 2025
…ructor

- Added missing vscode.workspace.onDidChangeWorkspaceFolders mock
- Added missing vscode.Uri mock
- Added missing vscode.RelativePattern mock
- Fixed mockProvider.getState to return a Promise in Dynamic Strategy Selection tests

These changes fix the failing tests that were caused by the new async code
added to retrieve the openTabsAtEndOfList setting in the Task constructor.
@daniel-lxs
Copy link
Member

To be implemented by @felixAnhalt, closing

@daniel-lxs daniel-lxs closed this Jul 22, 2025
@github-project-automation github-project-automation bot moved this from Triage to Done in Roo Code Roadmap Jul 22, 2025
@github-project-automation github-project-automation bot moved this from New to Done in Roo Code Roadmap Jul 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request Issue/PR - Triage New issue. Needs quick review to confirm validity and assign labels. size:M This PR changes 30-99 lines, ignoring generated files.

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

Open Tabs at the End of Tab List if Auto Focus Disabled

4 participants