On Fri, 11 Jul 2025 15:47:33 GMT, Alexander Zvegintsev <azveg...@openjdk.org> wrote:
> On Linux, we are currently use XRRSetScreenConfigAndRate to change the > display mode. This works in most cases, except for some VNC-configured hosts, > where the display change may not occur. > One of the conformance tests fails on these hosts. > > It was discovered, that the xrandr utility app works fine on these hosts and > uses the Crtc and Output Randr APIs, which provide more fine-grained control > over display settings. > > This changeset utilizes the Crtc and Output Randr APIs to change the display > mode. > > Currently, changing the display mode is only [available when running a single > screen](https://github.com/openjdk/jdk/blob/a86dd56de34f730b42593236f17118ef5ce4985a/src/java.desktop/unix/classes/sun/awt/X11GraphicsDevice.java#L365). > This limitation remains, but we may remove it in the future. A separate issue > [has been filed](https://bugs.openjdk.org/browse/JDK-8361968) for this > purpose. > > The `awt.x11useOldConfigDisplayMode` system property enables the old > behavior. Perhaps there's a better name for it. > > Testing looks good on VNC and local machines. Fix LGTM. It works as expected on VNC hosts. No regressions observed with existing java/awt/FullScreen tests on VNC hosts and on local. src/java.desktop/unix/native/common/awt/awt_GraphicsEnv.h line 65: > 63: }; > 64: > 65: #define MAX_DISPLAY_MODES 256 File requires copyright year update ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/26268#pullrequestreview-3018514281 PR Review Comment: https://git.openjdk.org/jdk/pull/26268#discussion_r2206302142