Skip to content

[e4] provide injection for IDialogSettingsProvider #2482

Open
@laeubi

Description

@laeubi

Currently the only way to obtain a IDialogSettingsProvider seem to be by calling org.eclipse.ui.PlatformUI.getDialogSettingsProvider(Bundle) but this is E3 API and require a running workbench.

This actually already calls into E4 land by using org.eclipse.e4.ui.internal.workbench.swt.DialogSettingsProviderService but that's all internal.

To make this usable outside E3 also in plain E4 RCP applications the following should be done:

  1. Have an IDialogSettingsProviderService that has method IDialogSettingsProviderService#getDialogSettingsProvider and is published in the OSGi-Service Factory, this then would also allow to handel all the currently static parts with proper OSGi-DS injections, e.g currently tracked bundles and the event listeners are never cleaned up!
  2. Allow to @Inject IDialogSettingsProvider provider into E4 Components by having a context function. Such context function should then be implemented as a ServiceFactory so it supply a proper object per bundle if used in an E4 component.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions