<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
There are some interesting things on this list, and in some of the
follow-on messages. This reply is just looking at the AWT issue.<br>
<br>
It depends on what you mean by "remove AWT". Removing all internal
dependencies (aside from Swing/JavaFX interop of course) on
java.desktop (AWT/Swing/Java2D) and providing replacement API for
the functionality that is missing in JavaFX would be a very large
effort. At a minimum:<br>
<br>
Implementation dependencies:<br>
* Refactor Java Beans implementation in javafx.base such that
java.desktop is optional<br>
* Rewrite implementation of JavaFX printing to use native printing
capability (this is a large effort)<br>
* Any other places where the implementation in javafx.graphics uses
some Java2D utilities (it looks like we might have removed the last
of these)<br>
<br>
New API for missing features to reach parity with java.desktop:<br>
* Image I/O (this is the largest piece)<br>
* Image operators<br>
* Headless support<br>
* Desktop integration (we want to do this anyway at some point)<br>
<br>
If all you need from the list of missing features w.r.t.
java.desktop is a Tray Icon (part of desktop integration), the
largest piece would be the printing dependency. If you don't print,
and can do a custom build of JavaFX to remove it, it might not be
too bad, but still work.<br>
<br>
-- Kevin<br>
<br>
<br>
<div class="moz-cite-prefix">On 11/16/2023 1:08 AM, Dirk Lemmermann
wrote:<br>
</div>
<blockquote type="cite" cite="mid:3B3CE5B8-B772-444B-961E-34FE43E83C8B@gmail.com">
It is mainly an issue when trying to run a JavaFX app natively
(GraalVM, Gluon). You can not have AWT in your classpath when
compiling to native code. It is not supported.
<div> </div>
<div>Dirk<br id="lineBreakAtBeginningOfMessage">
<div><br>
<blockquote type="cite">
<div>Am 15.11.2023 um 20:31 schrieb David Alayachew
<a class="moz-txt-link-rfc2396E" href="mailto:davidalayachew@gmail.com"><davidalayachew@gmail.com></a>:</div>
<br class="Apple-interchange-newline">
<div>
<div dir="ltr">
<div class="gmail_default" style="font-family:monospace">My
bigger question is asking what you lose by having AWT
in JavaFX. Is there something fundamentally
problematic about it that its removal would
solve/alleviate a problem?</div>
<div class="gmail_default" style="font-family:monospace"><br>
</div>
<div class="gmail_default" style="font-family:monospace">Whereas
on the other hand, AWT has some very useful libraries
that are in use by nearly all Java GUI frameworks. For
example, if you want to do anything really complex
with 2D Image work, you will inevitably end up using
java.awt.BufferedImage. It's simple, but very fast.<br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Wed, Nov 15, 2023
at 12:18 PM Dirk Lemmermann <<a href="mailto:dlemmermann@gmail.com" moz-do-not-send="true" class="moz-txt-link-freetext">dlemmermann@gmail.com</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<div>3D: unfortunately that is completely out of my
comfort zone … for this feature request I am
merely the messenger.</div>
AWT: I was thinking that this is mostly a
refactoring and probably code duplication?
<div><br>
</div>
<div>Dirk<br id="m_-1314880096666139834lineBreakAtBeginningOfMessage">
<div><br>
<blockquote type="cite">
<div>Am 15.11.2023 um 14:28 schrieb Nir Lisker
<<a href="mailto:nlisker@gmail.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">nlisker@gmail.com</a>>:</div>
<br>
<div>
<div dir="ltr">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">3D
line and point primitives<br>
</blockquote>
<div><br>
</div>
<div>I filed <a href="https://bugs.openjdk.org/browse/JDK-8316398" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">https://bugs.openjdk.org/browse/JDK-8316398</a>
for this already. As noted, it requires
a somewhat complex computation for
intersections and possibly for contains.
If you would like to write these Mesh
classes, like the current TriangleMesh,
I can write the rest.</div>
<div><br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">removal
of AWT<br>
</blockquote>
<div><br>
</div>
<div>Isn't that *a lot* of work? All the
image IO is AWT, no? </div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Wed,
Nov 15, 2023 at 10:48 AM Dirk Lemmermann
<<a href="mailto:dlemmermann@gmail.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">dlemmermann@gmail.com</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi
guys,<br>
<br>
I already mentioned this at the JavaFX
BOF at DEVOXX and also posted this on
Twitter but wanna make sure it gets the
visibility it deserves:<br>
<br>
All I want for Christmas is … / what I
think is needed for JavaFX going forward
...<br>
<br>
- removal of AWT <br>
- a tray API (tray icon) <br>
- undecorated interactive stage
style <br>
- blur support for stages <br>
- WebP image format support <br>
- native embedded browser
(Chromium) <br>
- 3D line and point primitives <br>
- injection support in FXML for
custom controls <br>
- TableView improvements, aka.
TableView2<br>
<br>
(order of items does not imply priority)<br>
<br>
Dirk<br>
<br>
</blockquote>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</body>
</html>