Better tap detection