В вычислениях, кража фокуса - это ошибка режима , возникающая, когда программа не в фокусе (например, свернута или работает в фоновом режиме) помещает окно на передний план и перенаправляет весь ввод с клавиатуры в это окно. Это считается раздражением или опасностью для некоторых пользователей, потому что программа может перехватить фокус, пока их внимание не находится на экране компьютера, например, при вводе текста во время чтения копии. Это приведет к тому, что все, что было набрано после того, как окно казалось, будет потеряно - или, что еще хуже, напечатанный ввод может вызвать непреднамеренный эффект во вновь сфокусированном окне. На медленных компьютерах пользователи иногда даже не вовремя предупреждаются об этом поведении, потому что соответствующее окно фактически отображается только через несколько секунд после фактического изменения фокуса.
Похищение фокуса может нанести ущерб, как это могут сделать пользователи, когда внимание отвлечено от экрана, непреднамеренно согласиться с тем, что программа делает что-то, что может нанести ущерб. Например, когда Microsoft Windows открывает мастер очистки диска, пользователь может «согласиться» на удаление файлов, не подозревая, что мастер ждал ввода. Кража фокуса также может вызвать нарушения безопасности, например, когда пользователь вводит пароль, а набранный пароль появляется вместо этого в новом окне обмена мгновенными сообщениями в немаскированном поле ввода.
Существует ряд альтернативных методов для привлечения внимания пользователя, которые можно использовать вместо кражи фокуса:
Следующие системы оконных менеджеров допускают кражу фокуса:
Системы на базе Microsoft Windows используют всплывающие диалоговые окна, которые могут отвлекать внимание от текущего приложения. В версиях Microsoft Windows до Windows 7 есть пользовательская настройка, которая по умолчанию предотвращает кражу фокуса кооперативным приложением при запуске другой программы или открытии нового окна или диалогового окна. Этот же метод не работает в Windows 7 или новее.
Системы Apple MacOS X также переключают приложения с фона на передний план, когда фоновые приложения используют всплывающие модальные диалоговые окна. Примером такого поведения является Google Chrome с использованием диалогового окна предупреждения, как описано в
Следующие веб-браузеры позволяют кражу фокуса с помощью функции this.focus () JavaScript :
Были написаны программы для определения того, что крадет фокус.