RFR: 8320796: CssMetaData.combine() [v4]

Michael Strauß mstrauss at openjdk.org
Tue Nov 28 18:10:22 UTC 2023


On Tue, 28 Nov 2023 15:29:06 GMT, Andy Goryachev <angorya at openjdk.org> wrote:

> > 1. A derived class must include the metadata of its base class.
> > 2. The inherited metadata must come before the new metadata in the list.
> 
> 1. what if the intent is to disallow certain parent properties from being modified by CSS?  I know it's highly unlikely, but what is the reason we should impose this requirement?
> 2. What is the reason for this particular requirement?  Does SceneView or any other tools rely somehow on the order of properties?
> 
> Absent specific reasons, I'd rather leave these as is.

1. If this is really a feature (hiding inherited properties from the CSS system), then it should be specified and tested. I don't think this was ever intended to be a feature, and if it was, it's a rather pointless feature. I wouldn't frame this as introducing a new requirement, but merely clarifying the specification.
2. Not that I know, but there's nothing to be gained from allowing controls to mix up the order of their properties. This is performance-critical code, and we might want to benefit from a stable and predictable order at some point in time.

I'd wager a bet that 99,999% of all controls ever created just copy the pattern of extending the list as shown in the core framework, so they're automatically compliant with this proposed spec.

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

PR Comment: https://git.openjdk.org/jfx/pull/1296#issuecomment-1830409858


More information about the openjfx-dev mailing list