From tg at freigmbh.de Mon Aug 11 07:30:50 2025 From: tg at freigmbh.de (tg at freigmbh.de) Date: Mon, 11 Aug 2025 07:30:50 +0000 Subject: Gradle Plugin Message-ID: <07c5a433ebac46f3a17900d7bb601749@freigmbh.de> Hello Can I find someone here maintaining the gradle javafx plugin https://github.com/openjfx/javafx-gradle-plugin ? It seems like there is something odd going on, it appears releases of the plugin are available on maven, but not on the gradle plugin repository? See this issue https://github.com/openjfx/javafx-gradle-plugin/issues/179#issuecomment-3168988327 Best regards, Thorten Goetzke -------------- next part -------------- An HTML attachment was scrubbed... URL: From olexyarm at outlook.com Sun Aug 17 17:44:33 2025 From: olexyarm at outlook.com (Oleksandr Yarmolenko) Date: Sun, 17 Aug 2025 13:44:33 -0400 Subject: The method "showSaveDialog" of the JavaFX class "javafx.stage.FileChooser" throws undocumented exception "java.lang.IllegalArgumentException" Message-ID: Hello, I spent a few hours while debugging my JavaFX v.24 home application and I'd like to share my finding. In my application I accidentally set bad value in method "setInitialDirectory" of the JavaFX class "javafx.stage.FileChooser". First time my app was pointing on directory what does not exist. Another time it did it on nonexistent Windows drive. When it called method "showSaveDialog" it got exception "java.lang.IllegalArgumentException: Folder parameter must be a valid folder". The exception is not documented and does not say what parameter is incorrect and what is wrong with it. It would be nice to have the exception documented and it better say something like "setInitialDirectory parameter points on nonexistent folder or drive". Interesting that it didn't get exception while pointing on not accessible directory and "showSaveDialog" showed content of some other directory. For example with "setInitialDirectory" setting "C:\\Documents and Settings" it showed content of directory "C:\Users". Thanks, Alex P.S. I pushed my test JavaFX application on GitHub https://github.com/OlexYarm/JavaFx-test-FileChooser -------------- next part -------------- An HTML attachment was scrubbed... URL: From andy.goryachev at oracle.com Thu Aug 21 15:56:09 2025 From: andy.goryachev at oracle.com (Andy Goryachev) Date: Thu, 21 Aug 2025 15:56:09 +0000 Subject: The method "showSaveDialog" of the JavaFX class "javafx.stage.FileChooser" throws undocumented exception "java.lang.IllegalArgumentException" In-Reply-To: References: Message-ID: Thank you Oleksandr! Created this JBS ticket: https://bugs.openjdk.org/browse/JDK-8365938 -andy From: openjfx-discuss on behalf of Oleksandr Yarmolenko Date: Sunday, August 17, 2025 at 10:44 To: openjfx-discuss at openjdk.org Subject: The method "showSaveDialog" of the JavaFX class "javafx.stage.FileChooser" throws undocumented exception "java.lang.IllegalArgumentException" Hello, I spent a few hours while debugging my JavaFX v.24 home application and I'd like to share my finding. In my application I accidentally set bad value in method "setInitialDirectory" of the JavaFX class "javafx.stage.FileChooser". First time my app was pointing on directory what does not exist. Another time it did it on nonexistent Windows drive. When it called method "showSaveDialog" it got exception "java.lang.IllegalArgumentException: Folder parameter must be a valid folder". The exception is not documented and does not say what parameter is incorrect and what is wrong with it. It would be nice to have the exception documented and it better say something like "setInitialDirectory parameter points on nonexistent folder or drive". Interesting that it didn't get exception while pointing on not accessible directory and "showSaveDialog" showed content of some other directory. For example with "setInitialDirectory" setting "C:\\Documents and Settings" it showed content of directory "C:\Users". Thanks, Alex P.S. I pushed my test JavaFX application on GitHub https://github.com/OlexYarm/JavaFx-test-FileChooser -------------- next part -------------- An HTML attachment was scrubbed... URL: From andy.goryachev at oracle.com Tue Aug 26 18:06:27 2025 From: andy.goryachev at oracle.com (Andy Goryachev) Date: Tue, 26 Aug 2025 18:06:27 +0000 Subject: [External] : RichTextArea styling feedback In-Reply-To: <2EDAA17D-2E79-4374-9E12-001026CCDA5D@getmailspring.com> References: <2EDAA17D-2E79-4374-9E12-001026CCDA5D@getmailspring.com> Message-ID: Dear Jurgen: This is great feedback, thank you very much - for the feedback and for the effort trying out RichTextArea! Let me sort through all the suggestions and I'll respond later with the JBS tickets. For some reason, I could not see your message in the archives https://mail.openjdk.org/pipermail/openjfx-discuss/2025-August/date.html Let's see if this one makes it through. Cheers, -andy From: Jurgen Doll Date: Tuesday, August 26, 2025 at 08:06 To: Andy Goryachev , openjfx-discuss at openjdk.org Subject: [External] : RichTextArea styling feedback Hi Andy I've been looking at the RichTextArea incubator feature and am providing feedback wrt the styling aspect of it. First off though, thank you for all the effort you have put into this so far and I'm looking forward to when this matures. Some background: since I use the RichTextFX library in my real world application I wanted to see how easily I could refactor my application to use RichTextArea instead, and then provide you with feedback. Here I'm focusing just on a simple editor control in my application that has some basic styling options (bold, italic, underline, and text color) available for the user while the editor indicates any misspelled words as they type with a wavy underline. I used a standard RichTextArea with its default RichTextModel and you'll be pleased to hear that without too much fuss I was able to read & write using StyledInput & StyledOutput, as well as convert the styling options part of my text editor control. However styling for spellchecking didn't go as well. So based off my experience with trying various things I recommend the following API enhancements: 1. The following StyleAttributes should be added to StyleAttributeMap: INLINE_STYLE, STYLE_NAMES, TEXT_HIGHLIGHT, and WAVY_UNDERLINE. At the moment none of these are easily or directly available, and I believe from a user perspective that they should be. 2. Consider splitting StyleAttributes into TextAttributes and ParagraphAttributes then INLINE_STYLE and STYLE_NAMES can appear in both. Possibly then also have a DecoratorAttribute if needed for TEXT_HIGHLIGHT and WAVY_UNDERLINE, if that'll make implementation easier but it should I believe from a user perspective still go into/through StyleAttributeMap as all styling should preferably be in one place. 3. The methods applyStyle and setStyle in RichTextArea should have a boolean undo parameter like replaceText. There's also the following issue that I noticed. When typing text, in the middle of a sentence, to extend a word that's styled then the typed text is not being inserted using the styles of the preceding text. There are some other obervations regarding other aspects of RichTextArea that I hope to give feedback on soon as well. Thanks again, regards Jurgen -------------- next part -------------- An HTML attachment was scrubbed... URL: From andy.goryachev at oracle.com Tue Aug 26 18:31:20 2025 From: andy.goryachev at oracle.com (Andy Goryachev) Date: Tue, 26 Aug 2025 18:31:20 +0000 Subject: [External] : RichTextArea styling feedback In-Reply-To: <2EDAA17D-2E79-4374-9E12-001026CCDA5D@getmailspring.com> References: <2EDAA17D-2E79-4374-9E12-001026CCDA5D@getmailspring.com> Message-ID: Dear Jurgen: Thanks again for the feedback, here are the new JBS tickets: JDK-8366198 RichTextArea: consider new attributes in StyleAttributeMap (INLINE_STYLE, STYLE_NAMES, TEXT_HIGHLIGHT, and WAVY_UNDERLINE) JDK-8366201 RichTextArea: add undo parameter to applyStyle/setStyle JDK-8366202 RichTextArea: wrong style used for typed text Question - what exactly do you mean by INLINE_STYLE? I assume STYLE_NAMES are basically the public equivalent of CssStyles.CSS (which I decided to hide as an implementation detail in the first iteration)? Thanks! -andy From: Jurgen Doll Date: Tuesday, August 26, 2025 at 08:06 To: Andy Goryachev , openjfx-discuss at openjdk.org Subject: [External] : RichTextArea styling feedback Hi Andy I've been looking at the RichTextArea incubator feature and am providing feedback wrt the styling aspect of it. First off though, thank you for all the effort you have put into this so far and I'm looking forward to when this matures. Some background: since I use the RichTextFX library in my real world application I wanted to see how easily I could refactor my application to use RichTextArea instead, and then provide you with feedback. Here I'm focusing just on a simple editor control in my application that has some basic styling options (bold, italic, underline, and text color) available for the user while the editor indicates any misspelled words as they type with a wavy underline. I used a standard RichTextArea with its default RichTextModel and you'll be pleased to hear that without too much fuss I was able to read & write using StyledInput & StyledOutput, as well as convert the styling options part of my text editor control. However styling for spellchecking didn't go as well. So based off my experience with trying various things I recommend the following API enhancements: 1. The following StyleAttributes should be added to StyleAttributeMap: INLINE_STYLE, STYLE_NAMES, TEXT_HIGHLIGHT, and WAVY_UNDERLINE. At the moment none of these are easily or directly available, and I believe from a user perspective that they should be. 2. Consider splitting StyleAttributes into TextAttributes and ParagraphAttributes then INLINE_STYLE and STYLE_NAMES can appear in both. Possibly then also have a DecoratorAttribute if needed for TEXT_HIGHLIGHT and WAVY_UNDERLINE, if that'll make implementation easier but it should I believe from a user perspective still go into/through StyleAttributeMap as all styling should preferably be in one place. 3. The methods applyStyle and setStyle in RichTextArea should have a boolean undo parameter like replaceText. There's also the following issue that I noticed. When typing text, in the middle of a sentence, to extend a word that's styled then the typed text is not being inserted using the styles of the preceding text. There are some other obervations regarding other aspects of RichTextArea that I hope to give feedback on soon as well. Thanks again, regards Jurgen -------------- next part -------------- An HTML attachment was scrubbed... URL: From jurgen at ivoryemr.co.za Tue Aug 26 19:34:15 2025 From: jurgen at ivoryemr.co.za (Jurgen Doll) Date: Tue, 26 Aug 2025 21:34:15 +0200 Subject: [External] : RichTextArea styling feedback In-Reply-To: References: Message-ID: <012A8897-8765-4BB4-8D44-CF4D4705B7BC@getmailspring.com> Hi Andy I think they should both be allowed at the same time, with a reminder in the JavaDoc that the same rules apply as usual styling using setStyle and getStyleClass. In my own application I generally use the latter by default but I do also sometimes mix it with setStyle. If I remember correctly the rule is that CSS attributes set via setStyle overrides any of those attributes that were specified via a style class. So I don't think there's a need to make them mutually exclusive. Regards Jurgen On Aug 26 2025, at 9:01 pm, Andy Goryachev wrote: > Thanks! A though was nagging at me to basically fold the CSS style names into an attribute like you suggested. The main reason I decided to hide it was that the two styling methods (css vs embedded attributes) are two separate, almost mutually exclusive modes. > > In fact, the embedded styles end up as inline styles, so it makes little sense to allow both to be active at the same time, as there is no way to guarantee the end result. > > Nevertheless, it's a good opportunity to give it another thought. > > Thanks! > -andy > > > From: Jurgen Doll > Date: Tuesday, August 26, 2025 at 11:46 > To: Andy Goryachev > Subject: Re: [External] : RichTextArea styling feedback > > Hi Andy > > In RichParagraph.Builder there is addWithInlineStyle which maps to Node.setStyle( String ), and then also addWithStyleNames which maps to Node.getStyleClass().add( String ). > > Yes, they're mapped to CssStyles and can stay a hidden implementation detail. > > Regards > Jurgen > > On Aug 26 2025, at 8:31 pm, Andy Goryachev wrote: > > Dear Jurgen: > > > > Thanks again for the feedback, here are the new JBS tickets: > > > > JDK-8366198 (https://bugs.openjdk.org/browse/JDK-8366198) RichTextArea: consider new attributes in StyleAttributeMap (INLINE_STYLE, STYLE_NAMES, TEXT_HIGHLIGHT, and WAVY_UNDERLINE) > > JDK-8366201 (https://bugs.openjdk.org/browse/JDK-8366201) RichTextArea: add undo parameter to applyStyle/setStyle > > JDK-8366202 (https://bugs.openjdk.org/browse/JDK-8366202) RichTextArea: wrong style used for typed text > > > > Question - what exactly do you mean by INLINE_STYLE? > > > > I assume STYLE_NAMES are basically the public equivalent of CssStyles.CSS (which I decided to hide as an implementation detail in the first iteration)? > > > > Thanks! > > -andy > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From andy.goryachev at oracle.com Tue Aug 26 19:41:39 2025 From: andy.goryachev at oracle.com (Andy Goryachev) Date: Tue, 26 Aug 2025 19:41:39 +0000 Subject: [External] : RichTextArea styling feedback In-Reply-To: <012A8897-8765-4BB4-8D44-CF4D4705B7BC@getmailspring.com> References: <012A8897-8765-4BB4-8D44-CF4D4705B7BC@getmailspring.com> Message-ID: What I meant is if you try to mix embedded styles (such as StyleAttributeMap.BOLD for instance) and explicit inline styles (such as "-fx-font-weight"), the result is unpredictable because they both try to set inline style when rendering paragraphs. So the model must either provide embedded attributes (BOLD), or inline styles, but not both. Style names can be used in both cases, since inline styles have higher priority. -andy From: Jurgen Doll Date: Tuesday, August 26, 2025 at 12:34 To: Andy Goryachev , openjfx-discuss at openjdk.org Subject: Re: [External] : RichTextArea styling feedback Hi Andy I think they should both be allowed at the same time, with a reminder in the JavaDoc that the same rules apply as usual styling using setStyle and getStyleClass. In my own application I generally use the latter by default but I do also sometimes mix it with setStyle. If I remember correctly the rule is that CSS attributes set via setStyle overrides any of those attributes that were specified via a style class. So I don't think there's a need to make them mutually exclusive. Regards Jurgen On Aug 26 2025, at 9:01 pm, Andy Goryachev wrote: Thanks! A though was nagging at me to basically fold the CSS style names into an attribute like you suggested. The main reason I decided to hide it was that the two styling methods (css vs embedded attributes) are two separate, almost mutually exclusive modes. In fact, the embedded styles end up as inline styles, so it makes little sense to allow both to be active at the same time, as there is no way to guarantee the end result. Nevertheless, it's a good opportunity to give it another thought. Thanks! -andy From: Jurgen Doll Date: Tuesday, August 26, 2025 at 11:46 To: Andy Goryachev Subject: Re: [External] : RichTextArea styling feedback Hi Andy In RichParagraph.Builder there is addWithInlineStyle which maps to Node.setStyle( String ), and then also addWithStyleNames which maps to Node.getStyleClass().add( String ). Yes, they're mapped to CssStyles and can stay a hidden implementation detail. Regards Jurgen On Aug 26 2025, at 8:31 pm, Andy Goryachev wrote: Dear Jurgen: Thanks again for the feedback, here are the new JBS tickets: JDK-8366198 RichTextArea: consider new attributes in StyleAttributeMap (INLINE_STYLE, STYLE_NAMES, TEXT_HIGHLIGHT, and WAVY_UNDERLINE) JDK-8366201 RichTextArea: add undo parameter to applyStyle/setStyle JDK-8366202 RichTextArea: wrong style used for typed text Question - what exactly do you mean by INLINE_STYLE? I assume STYLE_NAMES are basically the public equivalent of CssStyles.CSS (which I decided to hide as an implementation detail in the first iteration)? Thanks! -andy -------------- next part -------------- An HTML attachment was scrubbed... URL: From jurgen at ivoryemr.co.za Wed Aug 27 06:52:15 2025 From: jurgen at ivoryemr.co.za (Jurgen Doll) Date: Wed, 27 Aug 2025 08:52:15 +0200 Subject: [External] : RichTextArea styling feedback In-Reply-To: References: Message-ID: Whoops, my bad - trying to respond quickly before going to sleep. However even here both embedded attributes and inline styles should be allowed as the embedded attributes don't cover all possible CSS attributes. I actually used a "-fx-effect" style in my experimentation with RichTextArea to indicate misspelled words. Another benefit to allowing this is that if it would enable the use of any future CSS attributes that may be added without having to change RichTextArea. Granted attribute duplication is possible so maybe throwing an exception is an option or just noting it in the JavDoc ? Btw if I'm not mistaken adding INLINE_STYLE and STYLE_NAMES would probably do way with the need for the CssStyles class. Regards Jurgen On Aug 26 2025, at 9:41 pm, Andy Goryachev wrote: > What I meant is if you try to mix embedded styles (such as StyleAttributeMap.BOLD for instance) and explicit inline styles (such as "-fx-font-weight"), the result is unpredictable because they both try to set inline style when rendering paragraphs. > > So the model must either provide embedded attributes (BOLD), or inline styles, but not both. Style names can be used in both cases, since inline styles have higher priority. > > -andy > > > > From: Jurgen Doll > Date: Tuesday, August 26, 2025 at 12:34 > To: Andy Goryachev , openjfx-discuss at openjdk.org > Subject: Re: [External] : RichTextArea styling feedback > > Hi Andy > > I think they should both be allowed at the same time, with a reminder in the JavaDoc that the same rules apply as usual styling using setStyle and getStyleClass. In my own application I generally use the latter by default but I do also sometimes mix it with setStyle. If I remember correctly the rule is that CSS attributes set via setStyle overrides any of those attributes that were specified via a style class. So I don't think there's a need to make them mutually exclusive. > > Regards > Jurgen > > On Aug 26 2025, at 9:01 pm, Andy Goryachev wrote: > > > Thanks! A though was nagging at me to basically fold the CSS style names into an attribute like you suggested. The main reason I decided to hide it was that the two styling methods (css vs embedded attributes) are two separate, almost mutually exclusive modes. > > > > In fact, the embedded styles end up as inline styles, so it makes little sense to allow both to be active at the same time, as there is no way to guarantee the end result. > > > > Nevertheless, it's a good opportunity to give it another thought. > > > > Thanks! > > -andy > > > > > > From: Jurgen Doll > > Date: Tuesday, August 26, 2025 at 11:46 > > To: Andy Goryachev > > Subject: Re: [External] : RichTextArea styling feedback > > > > Hi Andy > > > > In RichParagraph.Builder there is addWithInlineStyle which maps to Node.setStyle( String ), and then also addWithStyleNames which maps to Node.getStyleClass().add( String ). > > > > Yes, they're mapped to CssStyles and can stay a hidden implementation detail. > > > > Regards > > Jurgen > > > > On Aug 26 2025, at 8:31 pm, Andy Goryachev wrote: > > > Dear Jurgen: > > > > > > Thanks again for the feedback, here are the new JBS tickets: > > > > > > JDK-8366198 (https://bugs.openjdk.org/browse/JDK-8366198) RichTextArea: consider new attributes in StyleAttributeMap (INLINE_STYLE, STYLE_NAMES, TEXT_HIGHLIGHT, and WAVY_UNDERLINE) > > > JDK-8366201 (https://bugs.openjdk.org/browse/JDK-8366201) RichTextArea: add undo parameter to applyStyle/setStyle > > > JDK-8366202 (https://bugs.openjdk.org/browse/JDK-8366202) RichTextArea: wrong style used for typed text > > > > > > Question - what exactly do you mean by INLINE_STYLE? > > > > > > I assume STYLE_NAMES are basically the public equivalent of CssStyles.CSS (which I decided to hide as an implementation detail in the first iteration)? > > > > > > Thanks! > > > -andy > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: