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