RFR: 8354077: Get rid of offscreenSharingEnabled windows flag
Sergey Bylokhov
serb at openjdk.org
Thu Apr 10 03:34:35 UTC 2025
Another unused obsoleted flag removed (offscreenSharingEnabled) from WindowsFlags. Its last usage was eliminated by [JDK-6725214](https://bugs.openjdk.org/browse/JDk-6725214) ("D3D: forward-port the new pipeline from 6u10"), see [commit](https://github.com/openjdk/jdk/commit/e4c9db984fe1a3a9d06fb60e333e92df3b165454#diff-c27da1eb4bdc7e69158f38ab3e7a1aa02b074c131c18ad15d04d0f88f169febeL319).
Interestingly, the original JDK 6u10 changes marked many options as "Obsoleted" (see [System Properties for Java 2D Technology](https://docs.oracle.com/javase/8/docs/technotes/guides/2d/flags.html)). Some of them later were removed in JDK 9 via [JDK-8155682](https://bugs.openjdk.org/browse/JDK-8155682) ("Get rid of legacy Windows Flags for DX").
However, two obsoleted flags remain:
- **sun.java2d.noddraw**: Obsoleted in: Java SE 6 Update 10, which contains a new implementation of D3D support. Setting sun.java2d.noddraw=true is now interpreted exactly the same as disabling that via sun.java2d.d3d=false.
Intended use: To turn off the Java 2D system's use of DirectDraw and Direct3D completely.
Introduced: 1.2
Default value: false
How to use: Setting this flag to true turns off DirectDraw usage, which sometimes helps to get rid of rendering problems on Win32.
- **sun.java2d.ddoffscreen**: Obsoleted in: Java SE 6 Update 10
Intended use: To turn on hardware-accelerated scaling when the DirectDraw/Direct3D pipeline is in use.
Introduced: 1.2
Default value: false
How to use: Setting this flag to true enables hardware-accelerated scaling if the DirectDraw/Direct3D pipeline is in use. DirectDraw/Direct3D hardware scaling is disabled by default to avoid rendering artifacts in existing applications. These rendering artifacts are caused by possible inconsistencies between the scale method that the software scaling operation uses (nearest neighbor) and the different scale methods that video cards use. Certain events that occur while an application is running might cause a scaled image to be rendered partially with hardware scaling operations and partially with software scaling operations, resulting in an inconsistent appearance. For now, you can enable acceleration by setting the ddscale flag to true.
Should we:
- Continue supporting these indefinitely, or
- Mark them as deprecated for removal in some upcoming release?
-------------
Commit messages:
- 8354077: Get rid of offscreenSharingEnabled windows flag
Changes: https://git.openjdk.org/jdk/pull/24534/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=24534&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8354077
Stats: 41 lines in 3 files changed: 0 ins; 37 del; 4 mod
Patch: https://git.openjdk.org/jdk/pull/24534.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/24534/head:pull/24534
PR: https://git.openjdk.org/jdk/pull/24534
More information about the client-libs-dev
mailing list