I hadn’t used Eclipse in Hyprland for a while. It used to work correctly; however, starting from somewhere in version 0.41, something broke, and it’s still broken in the current (at the time of writing) version 0.43.
When I execute Eclipse in Hyprland, i.e., in Wayland mode, the trees in Eclipse, e.g., Package Explorer (but also Project Explorer or the Outline) are displayed correctly until you start expanding the tree or hover with the mouse: the elements of the tree gets corrupted and disappear:
Till the whole tree disappears:
I reported the bug (https://github.com/hyprwm/Hyprland/issues/7829). The bug was closed because it had already been reported: in the beginning, the bug talked about DBeaver, which I didn’t know is an Eclipse-based application: https://github.com/hyprwm/Hyprland/issues/6844. The problem is associated with a previous hack to avoid flickering in the Qt application. Unfortunately, the hack breaks Eclipse-based applications, and it’s still there at the time of writing.
If I want to use Eclipse in Hyprland, I have to run it in X11 mode, i.e., by prefixing its execution with the corresponding environment variable set:
1 |
env GDK_BACKEND=x11 ./eclipse |
Since I have Hyprland with scaling enabled (1.5) Eclipse in X11 mode (Xwayland) gets pixelated:
To avoid that, as documented in Hyprland, I have to disable XWayland scaling by adding this section in “~/.confgi/hyprland/hypr.conf”:
1 2 3 4 |
# unscale XWayland xwayland { force_zero_scaling = true } |
Now, Eclipse runs in Xwayland without flickering but it’s unreadable to me (after all, it is not scaled):
We can scale it with the environment variable “GDK_SCALE”, but that does not support fractional scaling: set it to 2, and then Eclipse gets too big:
However, I can use another environment variable, “GDK_DPI_SCALE”, which scales text only (not icons; better than nothing!);
Here’s how I run Eclipse:
1 |
env GDK_BACKEND=x11 GDK_DPI_SCALE=1.5 ./eclipse |
And here’s the result (readable and not too big):
Let’s hope the Hyprland problem gets fixed soon…