В Mozilla есть исправление для Flash, из-за которого окно Firefox теряет фокус

В середине 2012 года была обнаружена ошибка, из-за которой окно браузера Firefox теряло фокус при определенных обстоятельствах, когда в нем воспроизводилось содержимое Flash.

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

Система, на которой была обнаружена ошибка, изначально представляла собой операционную систему x86 Windows 7 с Flash 11.3, но, по сообщениям пользователей, она также затрагивает другие системы, такие как Windows 8.1.

Согласно Mozilla, это ошибка во Flash, а не в Firefox, которая вызывает проблему у пользователей браузера.

Проблема была быстро связана с защищенным режимом Flash. Пользователи, которые отключили режим или запустили операционные системы, когда он был недоступен, не столкнулись с проблемой.

Воспроизвести проблему

ошибка flash player firefox

Чтобы воспроизвести проблему, вам необходимо посетить веб-страницу, на которой выполняется содержимое Flash, например http://www.adobe.com/software/flash/about.

Вы заметите, что процессы Flash загружаются, когда вы открываете диспетчер задач системы с помощью Ctrl-Shift-Esc.

Затем необходимо закрыть все окна, которые воспроизводят содержимое Flash, и дождаться автоматического завершения процесса Flash.

Когда вы снова откроете веб-страницу с помощью Flash, Firefox потеряет фокус.

Другие ошибки могут быть связаны с проблемой, например, что новые окна открываются в фоновом режиме, а не на переднем плане в системе.

Устранение проблемы

Mozilla сотрудничала с Adobe в устранении ошибки, но решения не было видно.

Вчера, Аарон Клотц опубликовал комментарий к Bugzilla, но отчет, подтверждающий, что найден возможный патч для этой проблемы.

Возможный патч с использованием LockSetForegroundWindow

Этот патч завершает вызовы процесса NP_Initialize с помощью LockSetForegroundWindow. Кажется, это правильно.

Реализация в настоящее время тестируется, но пока выглядит многообещающей. Если во время тестирования проблем не обнаружено, он может быстро найти свой путь в Firefox Nightly, а оттуда вплоть до стабильной версии браузера.

Обновить : Похоже, что Adobe исправила ошибку и в Flash Player 15.

Firefox теперь будет сохранять фокус при запуске процессов Flash Player (3223393)