We should have means to inject View Parts, Editor Parts, and Workbench Contributions.
We would need an annotation to indicate that these classes can be injected. We cannot inject such objects by default as they may already self-inject using another mechanism, such as Guice. @org.eclipse.e4.di.annotations.Injectable?
I see a couple of possible solutions:
1. Provide some hooks in the Extension Registry to allow some processing an object created by the registry. For example, IConfigurationElement#createExecutableExtension(String attribute, IObjectProcessor processor);
2. Hook in injection in the right places, CompatbilityView, CompatibilityEditor, etc.