On Wed, 9 Apr 2025 03:16:38 GMT, Sergey Bylokhov <s...@openjdk.org> wrote:

> 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?

This is fine.
But much worse than these being in the code is that we still document them !
https://docs.oracle.com/en/java/javase/17/troubleshoot/java-2d-pipeline-rendering-and-properties.html#GUID-DEA4F3FC-87F5-4196-A295-30A559982B10
I have it on my to-do list to re-write that entire out of date doc.

-------------

Marked as reviewed by prr (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/24534#pullrequestreview-2773582047

Reply via email to