It has dawned on me that as designed debounce can't work properly. I was attempting to apply it independently to each event type but you fundamentally can't do that. To debounce pointerover you have to look at and debounce pointerout. Same for pointerup and pointerdown. All sorts of strange behavior can result from trying to apply the separately.
I'm going to need to rethink the Methods interface.
It has dawned on me that as designed debounce can't work properly. I was attempting to apply it independently to each event type but you fundamentally can't do that. To debounce pointerover you have to look at and debounce pointerout. Same for pointerup and pointerdown. All sorts of strange behavior can result from trying to apply the separately.
I'm going to need to rethink the Methods interface.