RFR: 8311895: CSS Transitions [v22]

Michael Strauß mstrauss at openjdk.org
Fri May 31 15:09:38 UTC 2024


> Implementation of [CSS Transitions](https://gist.github.com/mstr2/c72f8c9faa87de14926978f517a6018a).
> 
> ### Future enhancements
> CSS transitions requires all participating objects to implement the `Interpolatable` interface. For example, targeting `-fx-background-color` only works if all background-related objects are interpolatable: `Color`, `BackgroundFill`, and `Background`.
> 
> In a follow-up PR, the following types will implement the `Interpolatable` interface:
> `LinearGradient`, `RadialGradient`, `Stop`, `Background`, `BackgroundFill`, `BackgroundImage`, `BackgroundPosition`, `BackgroundSize`, `BackgroundStroke`, `BorderWidths`, `CornerRadii`, `Insets`.
> 
> ### Limitations
> This implementation supports both shorthand and longhand notations for the `transition` property. However, due to limitations of JavaFX CSS, mixing both notations doesn't work:
> 
> .button {
>     transition: -fx-background-color 1s;
>     transition-easing-function: linear;
> }
> 
> This issue should be addressed in a follow-up enhancement.

Michael Strauß has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 62 commits:

 - Merge branch 'refs/heads/master' into feature/css-transitions
 - document css parser limitation
 - documentation change
 - added documentation
 - address review comments
 - Merge branch 'refs/heads/master' into feature/css-transitions
 - extract magic string to named constant
 - use existing property in test
 - fixed documentation
 - Merge branch 'master' into feature/css-transitions
 - ... and 52 more: https://git.openjdk.org/jfx/compare/cf09d6f1...10c06a97

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

Changes: https://git.openjdk.org/jfx/pull/870/files
  Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=870&range=21
  Stats: 4786 lines in 47 files changed: 4743 ins; 4 del; 39 mod
  Patch: https://git.openjdk.org/jfx/pull/870.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/870/head:pull/870

PR: https://git.openjdk.org/jfx/pull/870


More information about the openjfx-dev mailing list