Как не дать приложениям украсть фокус при запуске в Mac OS X?

13

Вот пример использования:

  1. Откройте Firefox
  2. Поместите курсор куда-нибудь, где вы можете напечатать
  3. Откройте что-то еще (eclipse - мой текущий пример ..)
  4. Начните вводить в Firefox, пока затмение не украдет фокус и не прервет то, что вы печатали

Как я могу предотвратить кражу приложений и прерывание набора текста?

Обновить:

Ответы, которые я получаю, говорят о том, что этого нельзя сделать, однако это можно сделать в Windows, поэтому мне трудно представить, что этого нельзя сделать в OSX, что было бы огромным недостатком юзабилити, если бы это было так. ,

erikvold
источник
Можете ли вы дать ссылку на свой источник для этого в Windows?
Bwerks

Ответы:

1

Я думаю, что вы не можете: D Вы всегда можете запустить Eclipse на другом рабочем столе, хотя;)

aouaou
источник
переключение рабочих столов на моем macbook - это слишком много работы imo (две клавиши далеко друг от друга, нет клавиатуры с подсветкой ..), я предпочитаю сбросить 4 пальца.
Эрикволд
Кстати, Windows может сделать это, и мне трудно поверить, что osx не может этого сделать, потому что это было бы огромным недостатком юзабилити.
Эрикволд
1
«Мне это не нравится», «неудача в юзабилити».
Лоуренс Веласкес
правда .. но это не то, что я сказал. Моя точка зрения заключается в том, что предоставление приложениям возможности сфокусировать внимание, не предоставляя пользователю возможность отключить его, является ошибкой удобства использования.
Эрикволд
особенно когда windows-xp предлагает решение для той же проблемы ..
erikvold
6

Если кто-то все еще ищет ответ на этот вопрос, я недавно нашел эту статью, которая должна пролить некоторый свет на возможные решения:

http://reviews.cnet.com/8301-13727_7-20085680-263/keep-applications-from-stealing-focus-when-opening-in-os-x/

Конечно, прошло чуть больше года после того, как был задан первоначальный вопрос, но, похоже, люди все еще ищут ответы на сложные жизненные вопросы.

TL; DR: вы можете потенциально изменить само приложение и добавить набор параметров в «info.plist» приложения, или вы можете написать скрипт, который будет запускать приложение за другими окнами. Существует третий «вариант», который в основном говорит о том, что приложение может оставаться выше других, даже когда они запускаются, но это не обязательно мешает вновь запущенному приложению сфокусировать внимание.

Джефф Колбат
источник
Примечание: не тратьте свое время ... CNet удалила контент, который был в конце ссылки, указанной в этом ответе. Прошло уже почти 7 лет с тех пор, как этот ответ был опубликован ... Слишком плохие ответы, подобные этому, нельзя исключать из архива; они тратят много времени.
Симус
0

Эти качества определяются как в приложении, которое вы запускаете, так и в приложении, которое в данный момент находится в фокусе. Видите ли, Finder, из которого вы запускаете Eclipse, тоже является приложением - если Eclipse не украл фокус у Finder, это не выглядело бы так, будто запуск приложения что-то сделал. Таким образом, по умолчанию стоит сфокусироваться на запуске приложения. Может быть, есть плагин Firefox, который делает его "автократическим"? Вы всегда можете добавить ключ LSUIElement в Info.plist запущенного приложения (внутри пакета приложения), который забирает элементы пользовательского интерфейса всего приложения, но это может несколько снизить его полезность для вас.

Запуск нового приложения в другом пространстве и последующее переключение назад не сработало для меня; запущенное приложение вернет вас в это пространство только после завершения загрузки.

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

NReilingh
источник
Я открываю затмение из дока, но если это то же самое, что и случай с Finder в вашем ответе, то вот что не так с вашим ответом: не имеет значения, что затмение крадет фокус из Finder или дока, потому что после того, как оно украло фокус из этого когда я переключаюсь на Firefox и начинаю печатать.
Эрикволд
Подводя итог, то, что я хочу сделать, не может быть сделано афайк?
Эрикволд
Правильно - любое приложение может украсть фокус в любое время, если ваше текущее приложение не запрещает это. Некоторые приложения могут сделать это несколько раз в своем цикле запуска, прежде чем они успокоятся - я, конечно, испытал это. На самом деле, это функция приложения, и единственный способ обойти это - редактировать приложения, как я описал выше, или использовать другие.
NReilingh
поэтому окна позволят вам предотвратить кражу фокуса приложениями, а osx - нет .. Мне трудно в это поверить.
Эрикволд
Это странно - здесь довольно много опубликованных вопросов о предотвращении кражи фокуса приложениями Windows, и обходной путь кажется сторонним программным обеспечением.
NReilingh