I noticed UIEvents seem to be timer based. More specifically, that events are sent after a validation, which gets triggered on a timer. That could cause some weird workarounds.
In V1/openfl you could write for example:
slider.removeEventListener(Event.CHANGE, onSliderChange); slider.pos = newPos;//update slider position, change stuff etc. slider.addEventListener(Event.CHANGE, onSliderChange);
And as expected the CHANGE event would not trigger. In V2 I guess it would look like:
slider.unregisterEvent(UIEvent.CHANGE, onSliderChange); slider.pos = newPos; slider.registerEvent(UIEvent.CHANGE,onSliderChange);
But now it does trigger the CHANGE event because the event triggers way after this code, based on the validation/timer.
That seems a bit counterintuitive. What is the recommended way of ignoring a single specific CHANGE event?
I definitely don’t want to hack in a timer that re-registers an event in order to make sure. I’ll probably hack in a counter that ignores the first CHANGE event, but that’s still very icky code imho.