К обсуждениям

Gamepad input приходит рывками в Edge 152: проверка raw event без polling

Редакция VOne Технологии

Gamepad input приходит рывками в Edge 152: проверка raw event без polling. People-first инструкция: отдельный baseline, один обратимый тест, лента «input frame × event timestamp × changed controls × snapshot delta × handler cost» и стоп-линия без персональных данных.

Граница пользовательской боли

Материал решает один вопрос: как проверить gamepadrawinputchanged origin trial Edge 152. Наблюдаемая боль сформулирована отдельно: частый polling getGamepads либо пропускает короткое изменение, либо создаёт лишнюю работу в каждом frame. Совпадение со временем обновления не доказывает причину. До настроек запишите expected и actual одним предложением, точную версию браузера и gamepad index, timestamp, mapping, event sequence number, изменённые axes/buttons, animation frame marker и polling control. Не добавляйте соседние проблемы сети, аккаунта, расширений или устройства, если они не меняют этот контроль. Цель — получить лента «input frame × event timestamp × changed controls × snapshot delta × handler cost», а не объявить Edge виновным по одному случаю. Неизвестное значение помечается unknown; память пользователя о прежнем поведении не заменяет зафиксированное состояние.

Версионный контракт Edge 152

Официальные web platform release notes указывают: Edge 152 перечисляет Gamepad raw input event trial: страницы могут слушать gamepadrawinputchanged при изменениях между input frames одного устройства вместо постоянного polling navigator.getGamepads(). Это origin trial, а не стабильное обещание платформы: требуются регистрация origin, действующий token, feature detection и рабочая деградация. Документ подтверждает область функции, но не популярность запроса, частоту ошибки, поддержку каждым сайтом или выигрыш производительности. Второй первичный источник — «Microsoft Edge Gamepad raw input trial» — задаёт независимую модель проверки: Прямая trial-страница задаёт event-driven модель и experimental registration; событие сообщает изменение, но не гарантирует поддержку каждого контроллера. Форумный пост или поисковый сниппет может быть лишь поводом открыть документацию; здесь он не используется как доказательство причины.

Контрольная точка A

Контрольный снимок включает: gamepad index, timestamp, mapping, event sequence number, изменённые axes/buttons, animation frame marker и polling control. Снимайте его до воздействия и сразу после, с одинаковой тестовой страницей и одним профилем. Запишите время, канал и полный номер версии, но не профиль пользователя, историю, IP, cookie, токены или содержимое рабочих полей. Для сценария «частый polling getGamepads либо пропускает короткое изменение, либо создаёт лишнюю работу в каждом frame» отдельно отметьте вход, который реально наблюдается, и ожидаемый безопасный fallback. Если обязательный вход недоступен или нельзя очистить данные, не продолжайте: статус остаётся unknown, а не превращается в догадку.

Изолированная проверка B

Выполните одно воздействие: на тестовом контроллере выполнить одну кнопку и одно плавное движение оси, сопоставляя события с редким контрольным snapshot без записи идентификатора устройства. Порядок фиксированный: A — исходное состояние, B — единственное изменение, затем A2 — возврат. Между шагами не обновляйте ОС, браузер, драйвер, framework и тестовый код одновременно. Наблюдайте только поля baseline и заранее определённый outcome. Практическая запись идёт в лента «input frame × event timestamp × changed controls × snapshot delta × handler cost». Если возврат не восстанавливает исходное поведение, связь не подтверждена; остановитесь вместо добавления новых вмешательств. Само нажатие rollback не считается возвратом, пока A2 не проверено тем же наблюдением.

Возврат к A и классификация

Сведите результат в лента «input frame × event timestamp × changed controls × snapshot delta × handler cost». Для каждой строки используйте reproduced, not reproduced, stopped или unknown. Reproduced означает лишь локальное повторение при записанных входах; not reproduced означает, что именно этот контроль не повторил симптом. Stopped нужен, если нарушена стоп-линия или rollback. Для боли «частый polling getGamepads либо пропускает короткое изменение, либо создаёт лишнюю работу в каждом frame» сравнивайте точное наблюдение, а не название возможности. Различайте unsupported, policy/token unavailable, invalid input и runtime failure: эти ветви требуют разных владельцев и не должны сливаться в общее «не работает».

Безопасный итоговый артефакт

Критерий остановки: не собирать аппаратные идентификаторы и не удалять polling fallback до проверки browser support и disconnect. Для обращения сохраните точную версию, короткие expected/actual, минимальные шаги A–B–A2, статус rollback и лента «input frame × event timestamp × changed controls × snapshot delta × handler cost». Перед отправкой удалите имена, адреса, пути профиля, идентификаторы устройств, сетевые адреса, содержимое форм, ключи и полные логи. Укажите, что проверялся конкретный intent «как проверить gamepadrawinputchanged origin trial Edge 152», а массовость и поисковый спрос не измерялись. Не обещайте исправление или межбраузерную поддержку: пакет должен позволить владельцу воспроизвести границу с минимальным раскрытием данных.

Материал подготовлен редакцией VOne с помощью ИИ; технические утверждения, статус stable/origin trial, источники и границы вывода постатейно сверены с указанными первичными документами 29 августа 2026 года.

Источники и проверка

Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.

Ответы

0 опубликовано
Ответов пока нет. Вы можете начать обсуждение.

Ваш ответ

Добавьте свой опыт или уточнение по теме.

Вы публикуете как Аноним Аватар отличает разговоры, но не раскрывает личные данные.

Ответ появится сразу. Не публикуйте личные данные, ключи и приватные ссылки.