packwiz / packwiz-installer

An installer for packwiz modpacks, with automatic auto-updating and optional mods! Works well with MultiMC and on servers.
https://packwiz.infra.link/
MIT License
54 stars 23 forks source link

Blank windows on some Linux WMs (Sway, BSPWM, Awesome, Xmonad, SteamOS) #33

Open Fxzzi opened 2 years ago

Fxzzi commented 2 years ago

https://uploadi.ng/fazzi/jNScKfQo as you can see here, there are white boxes and I'm unable to see the options. I'm running Arch Linux. Any suggestions?

comp500 commented 2 years ago

Hmm, that's strange... try updating/reinstalling Java? Make sure you're not using the headless JDK/JRE.

Dakedres commented 2 years ago

Same issue here on BSPWM, I've had it before, but it was fixed when I switched from openj9.

Apparently it's a Java bug on non-reparenting window managers (i.e. BSPWM, Xmonad, Awesome, DWM). There's a pretty comprehensive issue for it on some swing library's repo.

I've found two fixes looking around online.

This one's supposed to work if you're using OpenJDK, I just added it to my .profile export _JAVA_AWT_WM_NONREPARENTING=1

There's this fix too, I remember having to use it once to get IntelliJ to work, but iirc those issues manifested a bit differently https://github.com/ThatOneCalculator/bspwm-fix-java

dajix350 commented 1 year ago

This is still a problem for me. I am using Sway (Wayland) on Arch Linux. I tried the environment variables with no joy. Anyone know any current workarounds?

comp500 commented 1 year ago

Other than the aforementioned NONREPARENTING env variable, I don't know. There is an issue on the Sway repository that might be helpful: https://github.com/swaywm/sway/issues/595

comp500 commented 1 year ago

Another user has successfully used _JAVA_AWT_WM_NONREPARENTING=1 on Sway - this workaround seems to still work in modern OpenJDK builds.

comp500 commented 1 year ago

It looks like JetBrains has managed to fix the root cause of this issue in JetBrains Runtime with this patch; you can try this JDK fork at https://github.com/JetBrains/JetBrainsRuntime

I hope this can be upstreamed into OpenJDK in the future, as neither the reparenting environment variable nor a custom JVM are feasible for me to implement as a general solution.

Merith-TK commented 1 year ago

to make this work on the SteamDeck install flatseal and then modify the environment variables for PrismLauncher to include the variable, it works