Skip to content

UI refresh: a modern light and dark theme #2114

Open
@thomasritter

Description

@thomasritter

Known issues

First version has been submitted. Here the list of already known issues we will work on.

Status quo

A lot of Eclipse users are asking for a more modern look&feel. If you search the internet you will find a lot of such posts.

https://www.reddit.com/r/eclipse/comments/i4hlpw/make_eclipse_look_modern/
https://www.reddit.com/r/eclipse/comments/jvfyv8/will_eclipse_get_amajor_ui_upgrade_to_look_modern/
...

There is quite some progress in this area with simplified tab view options (available), sticky scrolling (in progress), modernized find integration (in progress) and many other small and bigger fixes which are currently being worked on in the Eclipse community.

This issue focuses on the default themes. The default light theme has not been updated in years. It is not state of the art anymore. All major IDEs have shifted to a different light theme style. Here is an overview how the other most commonly used IDEs look like out of the box.

VS Code
image

IntelliJ
image

Visual Studio
image

XCode
image

What design styles follows a theme in 2024?

When comparing the different IDEs it is easy to pick out the design decisions they all share. These are:

  1. Lightweight view tab design.
  2. Flat look. No use of 3D gradiants.
  3. Views use a darker background color. This naturally focuses the eye on the editor area which is where most of the work happens. We like to call editors the main actors and views the supporting actors.

Especially, point 3) is important. When looking at other UIs outside the IDE space it becomes clear that this is the standard. The navigation sidebar is usually using a darker background color than the main content area (e.g. MacOS finder, Apple Music, Powerpoint, OneNote, MacOS notes, MS teams, ...). That's probably the biggest reason why Eclipse feels so outdated.

Proposal for the updated default light theme

The updated theme addresses all three points mentioned above. Here are some before/after screenshots.

Current theme:
image

Modernized theme:
image

Details
Views tabs. Same minimalist design you can find in the other IDEs.

image
image

Editor tabs. Same design as in the other IDEs. The active tab has a white background which blends in nicely with the white background of the editor area.

image
image

Proposal for the updated dark theme

The updated theme follows in the footsteps of the light theme. From a design perspective it simply inverts the colors. This means the most important part is the darkest and the less important parts are brighter. When working on the dark theme we noticed that it was already in a much better shape. Our proposal simply cleans up same aspects of the current design.

Here is a screenshot of the IntelliJ dark theme as a reference.
image

Current theme:
image

Modernized theme:
dark_theme_java

Summary

We have been working hard on these proposals and were pleasantly surprised how good Eclipse can look like with the updated themes. Our in house developers have been using them already for months and do not want to go back to the old ones. While we tested them extensively there is still a chance that we missed some small details. Please report any issues you find and we will look into them. We decided to split the changes into three changes for easier review:

At the Eclipse Community Day we asked whether to immediately replace the existing themes or add them as new ones. All committers (@merks , @HeikoKlare , @marcushoepfner , @BeckerWdf , @HannesWell , @sratz , @fedejeanne ) we talked to asked us to replace the existing themes. We can always rollback the changes if there are issues.

As a final note, we focused on Windows and Mac first. This is already a lot of work. If these changes get accepted we will also look into applying the visual refresh to the Linux themes.

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