I can't remember exactly but don't we only get notification of button press and then button release? If so then holding down the button wouldn't work unless you hit it at exactly the right point where the kernel is watching.