Для API-интерфейсов блокировки клавиатуры и блокировки указателя требуется разрешение Chrome 131.

API блокировки клавиатуры позволяет разработчикам предоставлять захватывающий полноэкранный опыт для различных вариантов использования, включая интерактивные веб-сайты, игры и удаленный рабочий стол или потоковую передачу приложений. Это достигается путем предоставления веб-сайтам возможности использовать все доступные клавиши, разрешенные операционной системой хоста.

API Pointer Lock позволяет настольному приложению скрыть значок указателя и интерпретировать движение мыши для чего-то другого, например, для осмотра трехмерного мира.

Начиная с Chrome 131, использование любого из этих двух API требует разрешения. Вы можете проверить наличие разрешения, как показано в следующих фрагментах:

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.
}

Нет необходимости явно запрашивать разрешение. Если разрешение не было предоставлено ранее, браузер покажет запрос на разрешение при первом запросе на блокировку указателя или клавиатуры.

Запрос на разрешение API блокировки клавиатуры.

Запрос на разрешение API Pointer Lock.