AbstractView vs FrontendApplication vs CommonFrontend Contributions

What is the intended use of each of these? I notice the preview widget does not use the AbstractView

[original thread by shortwavedave]

FrontendApplication is responsible for a application lifecycle, i.e. when contributions are loaded in which order, when the shell should restore the layout, when it should be attached and so on

FrontendApplicationContribution allows an extension to hook into the lifecycle, it has set of optional app lifecycle callbacks

1 Like

CommonFrontendContribution is an implementation of FrontendApplicationContribution by the core extension, it is not supposed to be implemented by other extensions, but can be used to access core commands or menu constants

the view is a singleton widget, like Explorer, Debug, SCM and so on

AbstractViewContribution is for convenience to implement such views. Notice that it does not extend FrontendApplicationContribution, but only command, keybindins and menu contributions to contribute a new view to UI

[shortwavedave]

Thank you!