On Mon, 28 Oct 2024 23:01:39 GMT, Andy Goryachev <ango...@openjdk.org> wrote:
>> Incubating a new feature - rich text control, **RichTextArea**, intended to >> bridge the functional gap with Swing and its StyledEditorKit/JEditorPane. >> The main design goal is to provide a control that is complete enough to be >> useful out-of-the box, as well as open to extension by the application >> developers. >> >> This is a complex feature with a large API surface that would be nearly >> impossible to get right the first time, even after an extensive review. We >> are, therefore, introducing this in an incubating module, >> **jfx.incubator.richtext**. This will allow us to evolve the API in future >> releases without the strict compatibility constraints that other JavaFX >> modules have. >> >> Please check out two manual test applications - one for RichTextArea >> (**RichTextAreaDemoApp**) and one for the CodeArea (**CodeAreaDemoApp**). >> Also, a small example provides a standalone rich text editor, see >> **RichEditorDemoApp**. >> >> Because it's an incubating module, please focus on the public APIs rather >> than implementation. There **will be** changes to the implementation >> once/if the module is promoted to the core by popular demand. The goal of >> the incubator is to let the app developers try the new feature out. >> >> **References** >> >> - Proposal: >> https://github.com/andy-goryachev-oracle/Test/blob/main/doc/RichTextArea/RichTextArea.md >> - Discussion points: >> https://github.com/andy-goryachev-oracle/Test/blob/main/doc/RichTextArea/RichTextAreaDiscussion.md >> - API specification (javadoc): >> https://cr.openjdk.org/~angorya/RichTextArea/javadoc >> - RichTextArea RFE: https://bugs.openjdk.org/browse/JDK-8301121 >> - Behavior doc: >> https://github.com/andy-goryachev-oracle/jfx/blob/8301121.RichTextArea/doc-files/behavior/RichTextAreaBehavior.md >> - CSS Reference: >> https://cr.openjdk.org/~angorya/RichTextArea/javadoc/javafx.graphics/javafx/scene/doc-files/cssref.html >> - InputMap (v3): >> https://github.com/andy-goryachev-oracle/Test/blob/main/doc/InputMap/InputMapV3.md >> - Previous Draft PR: https://github.com/openjdk/jfx/pull/1374 > > Andy Goryachev has updated the pull request with a new target base due to a > merge or a rebase. The pull request now contains 41 commits: > > - Merge remote-tracking branch 'origin/master' into 8301121.RichTextArea > - break iterator > - consume conditionally > - Merge remote-tracking branch 'origin/master' into 8301121.RichTextArea > - Merge remote-tracking branch 'origin/master' into 8301121.RichTextArea > - ask to save on closing window > - line numbers, highlight paragraph menus > - Merge remote-tracking branch 'origin/master' into 8301121.RichTextArea > - whitespace > - Merge remote-tracking branch 'origin/master' into 8301121.RichTextArea > - ... and 31 more: https://git.openjdk.org/jfx/compare/dc5df6c1...faabd11e I'm still not convinced having an RTA control inside the same repository as the core components on OpenJFX is a good idea. I'd rather like to see more collaboration in e.g. https://github.com/gluonhq/rich-text-area where it is easier to experiment, fork/modify/release etc without having to pollute the project and commit history of the OpenJFX core project. When doing the work on JPMS, the OpenJDK removed some functionality from its core and focused on the real core. I'm not sure going the opposite way with OpenJFX is the best approach. At the very least, if we want to have incubator modules in the very same repository, I believe the required changes for this need to be part of a separate issue (e.g. the ModuleUtil.java) ------------- PR Comment: https://git.openjdk.org/jfx/pull/1524#issuecomment-2443970627