RFR: 8332895: Support interpolation for backgrounds and borders [v26]

Michael Strauß mstrauss at openjdk.org
Tue Sep 3 12:37:21 UTC 2024


On Tue, 3 Sep 2024 02:27:10 GMT, John Hendrikx <jhendrikx at openjdk.org> wrote:

>> Michael Strauß has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 48 additional commits since the last revision:
>> 
>>  - Merge branch 'master' into feature/interpolatable
>>  - remove StyleConverter.WithReconstructionSupport
>>  - fix line separators
>>  - StyleableStringProperty should be transitionable
>>  - non-interpolatable values should always transition discretely
>>  - only call get() when necessary
>>  - add more documentation
>>  - replace reconstruction annotation with interface
>>  - interpolate integers in real number space
>>  - replace StyleConverter.SupportsDeconstruction interface with annotation
>>  - ... and 38 more: https://git.openjdk.org/jfx/compare/869f534a...2337ca98
>
> modules/javafx.graphics/src/main/java/javafx/animation/Interpolatable.java line 57:
> 
>> 55:  *             </td>
>> 56:  *         </tr>
>> 57:  *         <tr><td style="white-space: nowrap; vertical-align: top">(see prose)</td>
> 
> This could just be a comment below the table?  Not sure what "(see prose)" means here.

Yes, good idea. I've moved it to a comment below the table.

> modules/javafx.graphics/src/main/java/javafx/css/TransitionEvent.java line 112:
> 
>> 110:         super(Objects.requireNonNull(eventType, "eventType cannot be null"));
>> 111:         this.property = Objects.requireNonNull(property, "property cannot be null");
>> 112:         this.propertyName = Objects.requireNonNull(propertyName, "propertyName cannot be null");
> 
> Can this be different from `property.getCssMetadata().getProperty()`?  What does it mean if it is?

It can be different. For example, a transition targeting `-fx-border-color` will show `property.getCssMetaData().getProperty()` == `-fx-region-border`. I've added a section to the javadoc explaining the difference.

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

PR Review Comment: https://git.openjdk.org/jfx/pull/1522#discussion_r1741976433
PR Review Comment: https://git.openjdk.org/jfx/pull/1522#discussion_r1741982433


More information about the openjfx-dev mailing list