On Thu, 19 Dec 2019 13:35:27 GMT, Florian Kirmaier <fkirma...@openjdk.org> 
wrote:

>> modules/javafx.controls/src/main/java/javafx/scene/control/skin/ProgressIndicatorSkin.java
>>  line 521:
>> 
>>> 520:             registerChangeListener(text.fontProperty(), 
>>> (Consumer<ObservableValue<?>>) fontListener);
>>> 521: 
>>> 522:             // The circular background for the progress pie piece
>> 
>> wondering why you add a (strong) field reference here? 
>> 
>> Thought that registerChangeListener(observableValue, consumer) takes care of 
>> handling storage/cleanup - provided its counter-method 
>> unregisterChangeListener(observableValue) is called, which is missing, so 
>> seems to be the only part that has to be added. Or not?
> 
> Yes, that doesn't make a lot of sense. It's probably an artifact because I 
> expected a different API do unregister the listener. I'm gonna change it back!

just thinking aloud: actually, it's rather whacky that the indicator (mis-)uses 
the skin's multiplePropertyListener - it's api isn't meant for frequent 
register/unregisters (the unregisters is quite a heavy measure). Maybe it 
should have its own? Or the other way round: skin listening to the property and 
indicator having a method to update based on font which is invoked by skin's 
listener?

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

PR: https://git.openjdk.java.net/jfx/pull/71

Reply via email to