theia icon indicating copy to clipboard operation
theia copied to clipboard

VS Code declarative API compatibility

Open tortmayr opened this issue 1 year ago • 8 comments

Due to recent efforts Theia's plugin API is mostly compatible with the programmatic VS Code API. However, looking at the declarative API (i.e. contribution points in the package.json) there are still many contribution points which are not (or only partly) supported.

I had a more detailed look on the menu contribution points (https://code.visualstudio.com/api/references/contribution-points#contributes.menus) and did a quick reference check in Theia repo do identify which contributions points are currently not supported:

  • [ ] comments/commentThread/title: Only referenced in ts-doc, no actual implementation
  • [ ] extension/context: not supported (verified with ms.python extension)
  • [ ] interactive/toolbar: not mentioned/supported
  • [ ] interactive/cell/title: not mentioned/supported
  • [ ] timeline/title: not mentioned/supported
  • [ ] scm/change/title: not mentioned/supported
  • [ ] scm/sourceControl: not mentioned/supported
  • [ ] scm/history/title: not supported
  • [ ] scm/historyItemChanges/title: not supported
  • [ ] scm/historyItem/context: not supported
  • [ ] terminal/context: not mentioned/supported
  • [ ] terminal/title/context: not mentioned/supported
  • [ ] testing/item/gutter: not mentioned/supported
  • [ ] touchbar: not supported (only mentioned in i18n) [mac only feature]
  • [ ] webview/context: not supported (tested with small custom extension)

Support for other contribution points, like walkthrough, will be done in separate issues:

  • [ ] #13879
  • [ ] #14309

tortmayr avatar Nov 02 '23 13:11 tortmayr

@rschnekenbu @planger

tortmayr avatar Nov 02 '23 13:11 tortmayr

I checked VS code walkthrough and it is not supported in Theia. https://community.theia-ide.org/t/vs-code-walkthrough-contribution-point-in-theia/3312

umar-shabbir avatar Dec 05 '23 16:12 umar-shabbir

As a follow up of #13145, we are missing also 'testing/message/content' introduced with vscode 1.84. This menu contribution is not yet relevant given the current test UI.

rschnekenbu avatar Dec 20 '23 14:12 rschnekenbu

Some of these contribution points can't be implemented because the associated feature is missing in theia

  • timeline/title: needs the timeline feature
  • scm/sourceControl: needs multi repository support
  • scm/change/title: needs review comment support i think. See here
  • interactive/toolbar and interactive/cell/title: Should be somewhere in the notebook support, but i havn't been able to find them in vscode yet.

jonah-iden avatar Jan 03 '24 09:01 jonah-iden

vscode.git extension contributes to a currently proposed menu extension, editor/content. This menu is not tracked by this issue obviously, as it is a proposed API and not in the stable list yet. But it may be required for the adoption of the vscode.git extension. see https://github.com/microsoft/vscode/blob/main/src/vscode-dts/vscode.proposed.contribEditorContentMenu.d.ts

rschnekenbu avatar Jan 17 '24 16:01 rschnekenbu

Some added menu extensions as proposed for scm in 1.86 and 1.87 (see evaluation task for proposed APIs here: #13444):

  • scm/incomingChanges-menu contribution point
  • scm/incomingChanges/context-menu contribution point
  • scm/outgoingChanges-menu contribution point
  • scm/outgoingChanges/context-menu contribution point
  • scm/sourceControl/title menu

rschnekenbu avatar Mar 04 '24 11:03 rschnekenbu

proposed API introduced in version 1.92 (contribSourceControlHistoryItemChangesMenu - see #14006)

  • scm/historyItemChanges/title menu contribution point
  • scm/historyItem/context contextual menu

rschnekenbu avatar Aug 05 '24 14:08 rschnekenbu