Wouldn’t it make more sense to have a addIfNotAlreadyThere() in this function? Having the possibility to add the same ChangeListener multiple times doesn’t seem to make much sense here.

I think the ChangeBroadcaster class is using the ListenerList class internally and the add method in ListenerList which the ChangeBroadcaster calls uses addIfNotAlreadyThere.

Ah, I see, thanks!