As APIs Keyboard Lock e Pointer Lock exigem a permissão do Chrome 131.

A API Keyboard Lock permite que os desenvolvedores ofereçam uma experiência imersiva em tela cheia para vários casos de uso, incluindo sites interativos, jogos e streaming de aplicativos ou de área de trabalho remota. Isso é feito permitindo que os sites usem todas as chaves disponíveis permitidas pelo sistema operacional do host.

A API Pointer Lock permite que um aplicativo para computador oculte o ícone do cursor e interprete o movimento do mouse para outra coisa, como olhar ao redor em um mundo 3D.

No Chrome 131 e versões mais recentes, o uso de qualquer uma dessas duas APIs exige uma permissão. É possível verificar a permissão, conforme mostrado nos snippets abaixo:

const {state} = await navigator.permissions.query({name: 'pointer-lock'});
if (state === 'granted') {
  // The Pointer Lock API can be used.
}
const {state} = await navigator.permissions.query({name: 'keyboard-lock'});
if (state === 'granted') {
  // The Keyboard Lock API can be used.
}

Não é necessário pedir permissão. Se a permissão não tiver sido concedida antes, o navegador vai mostrar uma solicitação de permissão na primeira solicitação para bloquear o ponteiro ou o teclado.

Solicitação de permissão da API Keyboard Lock.

Solicitação de permissão da API Pointer Lock.