1

Как я могу остановить скрытие окон на моем Mac (Mac OS Snow Leopard), когда приложение, которое владеет окном, теряет фокус.

Не все приложения на Mac делают это, но Photoshop и Transmission являются прекрасными примерами приложений, которые демонстрируют такое поведение.

Это печально, когда вы хотите печатать заметки в другом приложении (например, в текстовом редакторе), но обращаетесь к содержимому окна, которое скрывается, когда вы фокусируете текстовый процессор, чтобы начать печатать ваши заметки!

Должна быть опция (или хак) чтобы отключить это?

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

2 ответа2

4

Вы, вероятно, говорите о служебных окнах или панелях.

Из Руководства Apple по человеческому интерфейсу:

(все выделены жирным шрифтом мной)

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

[...]

Пользователь может открыть несколько панелей одновременно; они плавают поверх окон документов. Когда пользователь делает документ активным, все панели приложения должны быть выведены вперед, независимо от того, какой документ был активным, когда пользователь открыл панель. Когда ваше приложение неактивно, его панели должны быть скрыты. Панели не должны быть перечислены в меню «Окно» как документы, но вы можете поместить команды, чтобы показать или скрыть все панели в меню «Окно». На рисунке 14-38 показаны примеры разных стилей панелей.

Эта статья объясняет, кто несет ответственность за их поведение:

Пример окна утилиты от Apple

Окна служебных программ Mac OS X отличаются от своих Windows-аналогов несколькими существенными отличиями:

  • У них есть полоса перетаскивания, которая позволяет пользователям перемещать их на рабочий стол, но полоса перетаскивания обычно не имеет текстового заголовка.
  • Когда ваше приложение находится в фоновом режиме (то есть его окна неактивны, но видимы), его служебные окна должны быть скрыты от просмотра. (Вы несете ответственность за реализацию этого поведения.)
  • В дополнение к окнам служебных программ для конкретных приложений Mac OS X также поддерживает общесистемные служебные окна, которые остаются видимыми, даже если родительское приложение скрыто от просмотра.

Подчеркивая снова мной.


Видя, что разработчикам приложений необходимо реализовать это поведение самостоятельно, я не вижу разумного способа обойти это поведение (разумное значение, ни изменение кода приложений во время выполнения, ни изменение структур Какао каким-либо образом). Вы, конечно, можете обратиться к людям из Transmission с просьбой использовать обычное окно без этого поведения (например, переключиться с Show Inspector в Finder на Get Info).

Если бы мне пришлось угадывать, вы хотите сделать что-то необычное, например, создать программную документацию. Наверное, поэтому это поведение не работает для вас.

Как обходной путь, быстро сделайте скриншоты этих панелей и просмотрите их, работая в другом приложении.

0

В некоторых случаях альтернативный обходной путь к созданию снимков экрана состоит в том, чтобы переключиться непосредственно на окно, которое вы хотите сфокусировать (т. Е. На свой текстовый редактор или еще много чего), из окна, которое вы хотите оставить видимым, без использования формы переключения приложений (док-станция , cmd+ вкладка и т. д.).

Вы можете сделать это как минимум двумя способами:

(1) Расположите окна так, чтобы вы могли щелкнуть в окне, которое вы хотите сфокусировать, в то время как окно, которое вы хотите оставить видимым, имеет фокус.

(2) Используйте Exposé (F3), чтобы переключиться непосредственно на окно, которое вы хотите сфокусировать, в то время как окно, которое вы хотите оставить видимым, имеет фокус.

Это работает, по крайней мере, для окон документов Photoshop, и может очень хорошо работать в других обстоятельствах. Обратите внимание, что это не будет работать, например, для более традиционно «похожих на палитру» окон Photoshop (слои, панели инструментов и т.д.).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .