handle mouse buttons with blocks

Seems to work more reliably.