Allow multiple views to show at the same time
Problem
Would be nice to be able to have both a left and right sidebar i,e file tree in left and VSC in right. Kinda vibing off the multi panel layout of atom with github / git integration Something like this
Unverified for your environment
Select your OS to check compatibility.
1 Fix
Implement Multi-Panel Layout for Sidebars in VSCode
The current layout of Visual Studio Code (VSCode) restricts users to a single sidebar configuration, limiting the ability to view multiple panels simultaneously. This is due to the existing design architecture that does not support multiple instances of sidebar views, which can hinder productivity for users who require simultaneous access to various tools, such as a file tree and a version control panel.
Awaiting Verification
Be the first to verify this fix
- 1
Modify Workbench Layout Configuration
Update the workbench configuration to allow multiple sidebars. This involves modifying the layout settings in the VSCode source code to support additional sidebar instances.
typescriptconst workbenchConfig = { sidebars: [ 'left', 'right' ] }; - 2
Create Sidebar View Components
Develop the necessary UI components for the new sidebar views. This includes creating React components for the left and right sidebars, ensuring they can be independently managed and rendered.
typescriptfunction Sidebar({ position }) { return <div className={`sidebar ${position}`}>...</div>; } - 3
Implement State Management for Sidebars
Integrate state management to handle the visibility and content of each sidebar. This will ensure that users can toggle and customize the content displayed in both sidebars without conflicts.
typescriptconst [leftSidebarVisible, setLeftSidebarVisible] = useState(true); const [rightSidebarVisible, setRightSidebarVisible] = useState(true); - 4
Update User Settings for Sidebar Preferences
Allow users to configure their sidebar preferences through the settings menu. This includes options to enable or disable each sidebar and select which tools to display.
json{ "workbench.sidebars": { "left": true, "right": true } } - 5
Test Multi-Panel Functionality
Conduct thorough testing to ensure that both sidebars function correctly and independently. Verify that users can interact with both sidebars without any UI glitches or performance issues.
typescript// Example test case expect(sidebarLeft.isVisible()).toBe(true); expect(sidebarRight.isVisible()).toBe(true);
Validation
To confirm the fix worked, launch VSCode and check if both the left and right sidebars are visible simultaneously. Ensure that each sidebar can be toggled independently and that the correct tools are displayed as per user settings. Additionally, verify that there are no performance issues or UI conflicts when interacting with both sidebars.
Sign in to verify this fix
Environment
Submitted by
Alex Chen
2450 rep