support button-up events

Unify the button-up handler function and support button-up events. This will make some gaming and interaction possibilities. It shouldn't break anything as the old events behave the same. I provided a sample.