Qual a diferença entre button e buttons no PointerEvent?
button é um único número que descreve qual botão disparou aquele evento específico, útil no momento do clique; buttons é uma máscara de bits que soma todos os botões pressionados naquele instante, então serve para saber combinações, como botão esquerdo e direito segurados juntos.
Este teste serve para medir o DPI do meu mouse?
Não diretamente: o PointerEvent entrega coordenadas em pixels CSS na tela, já convertidas pelo driver e pelo sistema operacional, então esta página mostra posição, botão e pressão, mas não consegue isolar a contagem bruta de contadores por polegada do sensor físico.
Por que o campo pressure mostra 0.5 mesmo sem eu apertar com força?
Porque a maioria dos mouses não tem sensor de pressão físico, então o navegador preenche pressure com 0.5 enquanto um botão está pressionado e 0 quando nenhum botão está pressionado, um valor padrão fixo em vez de uma medição real de força.
Por que a taxa de polling do mouse não bate com o que eu vejo na tela?
Porque o hardware pode amostrar a 500 Hz ou 1000 Hz, mas a tela normalmente repinta a 60 Hz; o navegador entrega um evento por quadro visível e reserva os pontos extras para getCoalescedEvents(), que esta página também pode expor.