Fix for calling preventDefault on "touchstart" also preventing the related click and for devices with both touch and mouse events and only binding to pointerdown (chromebook). We not bind a hidden, unused "pointerup" listener when you bind pointerdown which ensures that signals and locks are cleaned up on mouseup/touchend events. We properly unbind it on cleanup.