On Fri, 29 May 2026 02:03:54 GMT, Alexander Zvegintsev <[email protected]> wrote:
>> src/java.desktop/windows/native/libawt/windows/awt_Toolkit.cpp line 160: >> >>> 158: >>> 159: #define IDT_AWT_MOUSECHECK 0x101 >>> 160: #define IDT_AWT_DISPLAYCHANGE 0x102 >> >> Why can’t all these steps be done in the Java layer? Can we track new, >> replaced, and old devices in a similar way to how we do it on macOS and >> Linux? Taking into account that old/new can be completely unrelated but >> still has same/similar bounds/props so we can match one to another. > > This will require a larger refactoring and additional testing, so it can be > done as a separate fix. > > Given that there is less than a week before RDP1, I prefer a tested solution. not sure that this version with timers/retries is actually safer. Considering that JDK-8185862 was backout from JDK 17 and 21 it might be better to do the same here. BTW, there were two different patches for JDK-8185862: 1. https://github.com/openjdk/jdk/pull/17197/changes - tries to ignore the assertion and use a default bitmap 2. https://github.com/openjdk/jdk/pull/17614/changes - excludes virtual displays and filters out all cases where CreateDC fails Based on how many regressions this caused, should we reconsider that fix and allow virtual displays again? What was the actual point to block it? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/31238#discussion_r3321969888
