Для 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.