- 
        Couldn't load subscription status. 
- Fork 35.8k
Closed
Labels
apiapi-finalizationfeature-requestRequest for new features or functionalityRequest for new features or functionalityon-testplanworkbench-viewsWorkbench view issuesWorkbench view issues
Milestone
Description
Problem
The need to have meaningful and actionable content rendered on empty views has been arising across the workbench:
- SCM: SCM: Viewlet should improve "no repositories" messaging #61491
- Debug: Make run and debug welcome view extensible #85548
- Custom Views: Remote Containers: Guide users to create the first container when non exists vscode-remote-release#1349
Proposal
Let's enable the following in the core:
- Add an overridable isEmpty(): booleanmethod toViewPanewhich would let view panes dictate when they are empty, as well asonDidChangeEmptyevent
- Create a core contribution point for empty view content, supporting very simple Markdown (links only)
- Enhance the simple Markdown to be able to detect isolated command links and render them as buttons
- Render all empty view contributions in a ViewPanewhenisEmpty() === true
We can then update our API by exposing an extension contribution point for the same core contribution point created above. Here's a couple of proposals:
contributes.documentation.VIEWID
"contributes": {
  "documentation": {
    "VIEWID": [{
       "label": "MARKDOWN",
       "when": "CONDITION"
    }]
  }
}Alternatives for documentation: viewhelp, emptyview.
Alternatives for label: text, markdown, description.
contributes.documentation.view
"contributes": {
  "documentation": {
    "view": [{
       "label": "MARKDOWN",
       "when": "VIEWID && CONDITION"
    }]
  }
}cc @sbatten for views
cc @isidorn for debug
cc @sandy081, @alexr00 for custom views
cc @bowdenk7 for scm
cc @jrieken for input on API conventions
alefragnani
Metadata
Metadata
Assignees
Labels
apiapi-finalizationfeature-requestRequest for new features or functionalityRequest for new features or functionalityon-testplanworkbench-viewsWorkbench view issuesWorkbench view issues