New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mac TurboVNC Viewer: Full-screen multi-screen spanning is unreliable under Java 11 #186
Comments
Further info: The new issue (whereby full-screen multi-screen spanning doesn't work if the TurboVNC Viewer is launched from an app bundle) is not specific to Java 11. This gist demonstrates how to reproduce it with Java 8 as well: Make sure the appropriate version of I verified that:
|
TurboVNC 2.1.2 doesn't exhibit the problem, so it may be a by-product of the Xinerama feature. Investigating ... |
It does in fact appear to be due to JavaAppLauncher, but it's due to how that application was built, not due to the code itself. JavaAppLauncher in TurboVNC 2.1.x was built with Xcode 4.5.x, whereas JavaAppLauncher in TurboVNC 2.2.x is built with Xcode 7.x or 8.x. I'm not sure why that matters, because |
Removing |
I first observed this issue with OpenJDK 11.0.2, with which I couldn't make the TurboVNC Viewer span multiple screens in full-screen mode at all. After upgrading to OpenJDK 11.0.4, full-screen multi-screen spanning seems to always work when I run the viewer from my build directory using the
bin/vncviewer
script, but oddly, it seems to never work when I run the viewer from the Mac app bundle. In all cases, when full-screen multi-screen spanning doesn't work, the geometry is being set correctly inViewport.setGeometry()
, but (for reasons unexplained) the window is constrained to one screen or the other. I spent about 10 hours trying to debug this without success. I looked at whether the difference in behavior in the app bundle vs. the raw TurboVNC Viewer might be due to a particular key in the app bundle's Info.plist file, but I couldn't find one that had any effect on the problem. I tried offsetting the full-screen window within the multi-screen space, but the O/S refused to do that. It's as if it's clamping the window to one screen, despite the fact that "Displays have separate spaces" is turned off.Needless to say, everything works fine with Java 8.
The text was updated successfully, but these errors were encountered: