Jump to: navigation, search

Platform UI/Plan/4.6

Planning page for Neon

You find all bugs targeted for this release in our Eclipse Neon milestone wiki. The note and newsworthy of all Eclipse top-level projects can be found under Eclipse Neon Note and Newsworthy.

Themes

Performance and stability

The Eclipse Platform UI team need to continue to improve stability and performance of the user interface. This includes regressions but also improvements compared to 3.x. The UI freeze monitoring and the reports created by the automatic error reporting tooling will also be used for this activity.

Items for improvements are improved performance in the the rendering of the SWT based components, the option to disable CSS styling via preferences and improve handling of background jobs.

Simplify and improve the user experience

The Eclipse Platform UI team plans to simplify the user workflow. For example, by adding the smart import wizard to platform, the user experience for importing project should be improved. We also plan to provide user enhancements like shortcuts for increasing the font size in an editor.

It is also planned to finish the support of HDPI screens (bug 382972) which was started in Eclipse 4.4. but unfortunately not finished due to some late discovered issues.

We will also provide a full screen mode in which the user can hide the currently displayed trimbars and toolbars to maximize his work area.

Code cleanup

The Eclipse Platform UI team plans to reduce references to internal API from the code. We also work on removing dead internal code and to remove references to deprecated API. We will also investigate if we can use @Nullable and @NotNullable annotations. We will also retire outdated examples and put them on Github.

In case several options exists in our API and one option should be preferred, we will provide clearer guidanceto the platform API adapters which API should be used by using the @Deprecated annotation.

Improvements in the Jobs API and usage

The Eclipse Platform UI team plans to improve the performance of the Jobs framework, focusing on the usage of SubMonitor and its performance. For this we will cooperate with Equinox and other project to replace the usage of SubProgressMonitor.

Consistent usage of adapters

The Eclipse Platform UI team plans to work with Equinox to improve the handling of adapters in platform.ui. The target is to replace isolated adapter solutions in the platform.ui code, simplify the usage of the adapter pattern and provide a consistent API.

Simplify platform API

The Eclipse Platform UI team plans to simplify their API for platform clients. It also plans to evaluate and, if possible, implement generics and varargs in its API. This journey started in 4.4 but needs to continue. Generics are planned to be evaluated at for JFace Dialogs, the JFace Viewers and JFace Databinding.

Simplify committer and contributor workflow

The Eclipse Platform UI team will continue to simplify the workflow of existing and new committers and contributors. This includes the activation of more test suites during the Gerrit build trigger, code cleanup, migration of the tests to modern constructs (JUnit4, modern Assert frameworks, etc). It also includes the update of the code to remove compiler warnings. To be more inviting to other Open Source contributors we also need to update our code with constructs of modern Java versions.

Also the Eclipse Platform UI team plans to clean-up the bug database. Currently the bug database is full of outdated an already solved bugs, which makes finding real problems in the bug database complex.

For the platform UI work see bug 468000 and for the general work together with the Eclipse foundation see bug 435599.

Rework platform ui tests

The team plans to migrate all existing tests to JUnit 4 and evaluate the usage of better matching frameworks to simplify the tests. As far as possible, all tests should be configured to run via the Gerrit build trigger to ensure stability of the code contributions.

Enhance Eclipse RCP programming model

The Eclipse model should be improved. For example, enhancements are planned for modeling wizards and dialogs as well as handling of core expressions. Core expressions are currently only evaluated for tool and menu items but should also be evaluated for toolbars. It is planned to evaluate if the additional dependency to javax.annotation can be removed in platform without breaking existing clients.

Java 8 support in JFace Databinding

The Eclipse Platform UI team plans to support the new Date and Time API from Java 8 in JFace Databinding.

Migrate Mylyn notifications framework to platform UI

The Eclipse Platform UI team plans to migrate the Mylyn notification framework to platform UI. This change has been discussed with the Mylyn team and was well received.

CSS Enhancements and better support for the dark theme

The Eclipse Platform UI team plans to enhance CSS support. A new CSS parser will be evaluated to support CSS 3.0 and to improve performance. The Eclipse Platform UI team will continue to cooperate with other teams like JDT and SWT to improve the styling capabilities in general and the dark theme as a special use case of the CSS styling.