перехват фокуса

Jul 01, 2011 13:40

Ломаю голову, зачем существует принудительный перехват фокуса программой. Для чего это может быть нужно, кроме как бесить пользователя? Вот ни разу в жизни мне это не пригождалось, зато матерюсь на такое безобразное поведение постоянно. Будь моя воля - запретила бы окнам на уровне системы вообще так себя вести ( Read more... )

мысли, непонятное, программы

Leave a comment

Comments 15

vedomyr July 1 2011, 09:38:30 UTC
В одной из предыдущих версий скайпа для мака он в процессе загрузки раза три перехватывал на себя фокус, заставляя даже переключать виртуальный рабочий стол с нужного мне. Это было ужасно. Сейчас или я чего-то не замечал, или такого уже нет. В общем, проблема однозначно в головах разработчиков.

Reply

olimo July 1 2011, 09:40:14 UTC
Как мне сказал один знакомый программист, это функция API в Windows. Т.е. предусмотрено системой. Мне интересно - зачем?

Ведь если грамотно делать API, можно защититься от тараканов в головах разработчиков.

Reply

vedomyr July 1 2011, 09:53:34 UTC
Неа, правильно не так =) Правильно выпускать руководства по разработке интерфейсов для конкретной операционной системы, какие есть для Windows Vista, 7 и Mac OS X, и просить разработчиков им следовать. Ну а остальное - на совести последних.

Reply

olimo July 1 2011, 09:57:32 UTC
Я думаю, в первую очередь надо делать защиту от дурака. Чтобы запредельной глупости не делали. Поэтому я и интересуюсь - может ли в принципе быть польза от перехвата фокуса или это исключительно лишняя функция?

А уже после защиты от дурака делать гайдлайны.

Reply


ext_68340 July 1 2011, 10:06:32 UTC
Досадно то, что эта практика и в Ubuntu перебирается. Время от времени некторые программы так и норовят помешать работе. Не помню точно что это было, update, что ли.

Reply


+1 overquantum July 1 2011, 10:12:33 UTC
Помимо прочего, так пароль можно засветить - после перехвата ты наберёшь его в неэкранированном поле.

Меня лично gajim бесит своим перехватом.
Сначала выбрасывает окно ввода пароля поверх всего, а потом его убирает если ты не успел за какое-то время набрать, даже если ты вот сейчас последние буквы набираешь.

Reply


А что касается пользы... overquantum July 1 2011, 10:29:57 UTC
Польза от перехвата ровно одна - программистам так проще переставить фокус на окно, которое не является основным окном программы.
Т.е. если после запуска программы пользователя нужно попросить ввести пароль - вводится отдельное окно ввода пароля, по умолчанию фокуса на нём нет, т.к. фокус либо на основном окне проге, либо уже на чём-то ещё. В коде ставится жёсткая установка фокуса на окно ввода пароля, в итоге в большинстве случаев пользователь экономит 1 клик (по окну ввода пароля), а в меньшинстве - получает неудобство от перехвата фокуса.
А надо бы сначала проверять, остался ли фокус на основном окне программы. Или делать окно модальным, но это тоже неудобно - нельзя, например, в настройки проги слазить, не закрывая окно ввода пароля.

Reply

Re: А что касается пользы... ext_68340 July 1 2011, 11:31:55 UTC
Можно сделать, чтобы окно для ввода пароля появлялось не поверх всех окон, а именно поверх родительского.

Reply

Re: А что касается пользы... overquantum July 1 2011, 12:32:08 UTC
Не-не-не, вопрос не в поверх/не поверх, вопрос в фокусе. Task Manager может быть поверх всего, но не в фокусе - перехвата ввода он не делает.

Reply

Re: А что касается пользы... ext_68340 July 1 2011, 13:20:46 UTC
> А надо бы сначала проверять, остался ли фокус на основном окне программы. Или делать окно модальным, но это тоже неудобно - нельзя, например, в настройки проги слазить, не закрывая окно ввода пароля.

Да, согласен.

> не закрывая окно ввода пароля
Модальным его делать да, неудобно, но хорошо бы его делать всегда поверх этого приложения, т.к. встречался с обоими "злами". Либо модальное, либо прячется за родителя при alt+tab.

Reply


ritishcha July 2 2011, 22:55:57 UTC
я счастливый человек - впервые слышу о такой штуке как перехват фокуса

Reply

olimo July 3 2011, 02:16:09 UTC
Может, просто название впервые слышите. А когда какое-то окошко программы не в тему вперед вылезает неожиданно, не бывало такого?

Reply

ritishcha July 3 2011, 08:15:16 UTC
ну я почитала комменты)) незнакомое название тут ни при чём:)

нет, такого не бывает.
мало того - никогда не видела, чтоб у кого-то было.
и я так и не поняла - зачем это придумано))

Reply


Leave a comment

Up