https://bugs.openjdk.java.net/browse/JDK-8212700

On 10/18/2018 02:50 PM, Roger Riggs wrote:
Hi Phil,

Thanks for filing the issues and clarifications.
I agree that removal is a great option to reduce clutter and maintenance.

I forgot to include 'sun.desktop' which seems to be only ever set to 'gnome' on linux
and 'windows' on windows.


Near as I can tell that may mainly have been used to select between a gnome & CDE/Motif desktop
Setting it to windows on windows didn't tell you anything new.
I've filed https://bugs.openjdk.java.net/browse/JDK-8212701

Also I've filed one for the AWT toolkit :
https://bugs.openjdk.java.net/browse/JDK-8212700
and another for fontpath : https://bugs.openjdk.java.net/browse/JDK-8212703

-phil.

Thanks, Roger



On 10/18/2018 05:39 PM, Phil Race wrote:
Adding 2d-dev .. as most of these are actually for 2D, not AWT, despite the names.

I have bugs filed to get rid of these two 2D properties :

https://bugs.openjdk.java.net/browse/JDK-8130264 : java.awt.printerjob
https://bugs.openjdk.java.net/browse/JDK-8130266 : java.awt.graphicsenv
Probably I could file another for "awt.toolkit", which is AWT.

The potential external use of these to inject replacments was made moot by jigsaw.

So I don't think I'd bother "moving" them, more like replacing them & then deleting this code.

fontpath used to be used as a workaround for failure by 2D to locate the system fonts which probably is no longer needed due to better ways we have of doing this these days.
We probably could remove that along with the code which reads it.

I'd have to think about where we could put the isInAquaSession() logic.

-phil.


On 10/18/2018 07:22 AM, Roger Riggs wrote:
Hi,

There are a few java.awt.* properties that have support in the system.c native code based on the operating system.   Most do not need to be in native code and decoupling the code
would be a good cleanup.

I'd like to look at the properties and move the initializations to a more appropriate place. Since they are not used in the java.base module it would be more appropriate for them to be handled in the java.desktop module and the appropriate package.

At the moment, they all can be overridden by command line arguments though
in some cases, that seems to be unintentional and perhaps undesirable.
Most could dispatch on the os_name system property to select the appropriate implementation class.

I'd like to work through this issues and see if there are any special considerations.
Thanks for any comments and advice.

Roger


java.awt.graphicsenv:  java.awt.GraphicsEnvironment.java

"sun.awt.CGraphicsEnvironment" "sun.awt.X11GraphicsEnvironment" "sun.awt.Win32GraphicsEnvironment"

awt.toolkit : java.awt.Toolkit.java

"sun.awt.X11.XToolkit" "sun.lwawt.macosx.LWCToolkit" "sun.awt.windows.WToolkit"

java.awt.printerjob: java.awt.print.PrinterJob.java

"sun.print.PSPrinterJob""sun.lwawt.macosx.CPrinterJob" "sun.awt.windows.WPrinterJob"

awt.headless:  This may need native code specific to the Mac.

isInAquaSession() ? NULL :"true";


sun.java2d.fontpath: sun.font.SunFontManager
The native initialization is hooked to an environment variable "JAVA2D_FONTPATH".
Is that initialization from the environment still used or needed?



--
Thanks, Roger

Reply via email to