Here are descriptions of some of the changes of interest to plug-in developers made to the Eclipse Platform and SWT for the 4.23 release of Eclipse.
New features oriented towards end-users of the platform can be viewed in the What's New section of the Workbench User Guide.
Platform Changes |
|
Code mining on line end |
The abstract org.eclipse.jface.text.codemining.LineEndCodeMining class was added to create code-minings
that are expected to be displayed as annotations after the line content. Any ICodeMiningProvider can return
on of those LineEndCodeMining additionally to existing ones.
|
New fluent databinding API |
A new fluent API for the databinding framework has been added.
This API is a facade for the traditional databinding API that is based
on
|
Notification builder |
In addition to the Notification API released with Eclipse 4.17, the 4.22 release added a Notification builder .
As the release notes of these releases did not mention this new API, this entry was added to allow users to
discover these new features.
Please see Snippet for the usage of the Notification API.
|
Contribute adapter to display debug value code minings |
In order to make debug values visible inline for users who enabled this feature, your debugger support can contribute
an adapter from ITextSelection to IVariable . The Debug framework will then lookup available
variables for the files being edited and display their value inline.
|
SWT Changes |
|
SWT BorderLayout support |
SWT now supports a new BorderLayout with below layout design:
|
SWT supports native styled dark theme buttons on Windows |
The buttons on Windows OS are now styled:
New look and feel: ![]() Old look and feel:
On Windows 10, all the dark theme tweaks including the dark buttons can be disabled using the
For Example: add this VM argument in eclipse.ini or on the command line after |
Sleak view improvements |
The Sleak view now also lists non-disposed Widget objects, where previously it listed non-disposed Resource objects only.
This can be used to check for widget leaks, e.g. if a view leaks Menu objects or if a view operation results
in adding more and more widgets to the view.
The improvements made to Sleak view UI are:
|
Equinox Changes |
|
Define trusted PGP keys in extensions |
The org.eclipse.p2.engine.pgp extension-point was added to p2. It allows plug-ins
to define some PGP public keys that are to be considered as trusted by default.
Changes to such a contribution when upgrading or removing their contributing plug-ins will directly impact the set of trusted keys without further action. |
Determining a bundle's file location has been improved |
The location of a bundle in the local file system can now be obtained by adapting the bundle to the File class:
org.osgi.framework.Bundle.adapt(java.io.File.class)
A more conventient way is to call the new method getBundleFileLocation(Bundle) in org.eclipse.core.runtime.FileLocator ,
which returns an Optional to reflect the fact that not in all cases the file-system location of a bundle can be determined.
This method is intended as a replacement for FileLocator.getBundleFile(Bundle) and does not throw an IOException .
Both methods now run significantly faster than FileLocator.getBundleFile(Bundle) did before.
|