apache / apache/hop

[Bug]: GUI freeze with fractional scaling enable

Open
#6,456 3 comments 0 reactions 0 assignees View on GitHub
awaiting triage Hop Gui P3
Dominant language
Java
Stars
1.5k
Forks
476
Avg merge
18h 32m
Merged PRs (30d)
216

Description

### Apache Hop version?

2.16

### Java version?

OpenJDK Runtime Environment Zulu17.64+15-CA (build 17.0.18+8-LTS)

### Operating system

Linux

### What happened?

It's impossible to use the interface when I launch Hop-GUI on my open laptop with an external screen plugged in.

When I try to visit the settings page, the tabs are invisible and an error message appears in the terminal.

```
Error in the Hop GUI : Argument not valid
java.lang.IllegalArgumentException: Argument not valid
at org.eclipse.swt.SWT.error(SWT.java:4927)
at org.eclipse.swt.SWT.error(SWT.java:4861)
at org.eclipse.swt.SWT.error(SWT.java:4832)
at org.eclipse.swt.graphics.GC.drawImage(GC.java:882)
at org.eclipse.swt.graphics.GC.drawImage(GC.java:865)
at org.eclipse.swt.custom.CTabFolderRenderer.drawUnselected(CTabFolderRenderer.java:1649)
at org.eclipse.swt.custom.CTabFolderRenderer.draw(CTabFolderRenderer.java:647)
at org.eclipse.swt.custom.CTabFolder.onPaint(CTabFolder.java:2101)
at org.eclipse.swt.custom.CTabFolder.lambda$0(CTabFolder.java:338)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5884)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1656)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1682)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1665)
at org.eclipse.swt.widgets.Control.gtk_draw(Control.java:3898)
at org.eclipse.swt.widgets.Scrollable.gtk_draw(Scrollable.java:394)
at org.eclipse.swt.widgets.Composite.gtk_draw(Composite.java:507)
at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:2614)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:6864)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:6191)
at org.eclipse.swt.internal.gtk3.GTK3.gtk_main_do_event(Native Method)
at org.eclipse.swt.widgets.Display.eventProc(Display.java:1619)
at org.eclipse.swt.internal.gtk3.GTK3.gtk_main_iteration_do(Native Method)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4537)
at org.apache.hop.ui.hopgui.HopGui.open(HopGui.java:496)
at org.apache.hop.ui.hopgui.HopGui.main(HopGui.java:374)
```

Image

The GUI freezes whenever I do something on it (for example, trying to change project or create environment).

Switching the software from one screen to another also causes the program to freeze.

Possible workaround :
Close the laptop

### Issue Priority

Priority: 3

### Issue Component

Component: Hop Gui

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue on Linux with fractional scaling, an open laptop, and an external screen by launching Hop-GUI, opening settings, and moving the window between screens. Start at org.apache.hop.ui.hopgui.HopGui.open and the SWT CTabFolder drawing stack shown in the trace. Done means the settings tabs render and GUI actions no longer freeze or raise the reported error.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, linux
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.