Хитрость меню на Маке

Меню на Маке всегда живёт сверху (см. на любой картинке), а не в текущем окне. Это кажется странным многим виндоусникам: окно отдельно, а меню отдельно, как же так. Но на самом деле меню относится не к окну, а к текущему приложению. Как соотносятся окна и приложения на Маке — отдельная тема, на которую мне лень пока писать.

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

Вот, например, в окне обновлятора есть всего лишь одна кнопка: Install 3 Items (ну, или сколько там айтемсов нужно обновить). А в меню можно выбрать Download only (например, если установка требует перезагрузки, а сейчас это некстати); там же можно настроить частоту проверки обновлений и другие мелочи.

Дальше
22 комментария
Юрко 2009

это крутая штука, я давно мечтал о таком на линуксе. и оно уже почти появилось в GNOME: https://wiki.ubuntu.com/global_menu?action=AttachFile&do=get&target=globalmenusmallScreenshot.png

но есть один нюанс: меню в панели отображается только для текущего активного окна. т. е. если на рабочем столе несколько окон, отображается меню только одного окна. плюс я использую функцию «focuse on raise», т. е. у меня окно становится активным автоматически, когда курсор мыши находится в пределах окна (в Windows надо дополнительно щелкать на него). Представим ситуацию, когда окно развернуто не на весь экран. Тогда когда я мышью тянусь к меню, окно становится неактивным, и меню изменяется на меню совсем другой программы.

Впрочем, это теория, ибо еще не тестировал, как оно на практике работает.

Илья Бирман 2009

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

Сергей Киселев 2009

В MacOS есть правильная функция по работе с неактивными окнами. Можно скроллить документы на заднем плане наведя на них курсор ,) Правильный компромисс между активацией и неактивацией окна при наведении мышкой.

Юрко 2009

Ну, значит, я извращенец :), спорить не буду: просто не могу жить без этой функции.

smmurf 2009

Сергей Киселев, именно для этого окно и делается активным, просто на маке ,получается, действительно решение лучше.
Впрочем, я и в Гноме обычно это не включал, никто же не заставляет :-)

Алисей Лебедев 2009

@Сергей Киселев
А можно ещё поднимать файлы из фонового окна и перетаскивать в текущее.

Некрутось расположения окна сверху проявляется в том, что неочевидна связь меню c окном, которое перед собой видишь. Из-за таких мелочей коэффициент WTF/min на Маке выше, чем на Windows.

cleanest 2009

Присоединяюсь к комментарию выше (про «неочевидна связь меню c окном»). Вообразите, скажем, уборную, в которой все элементы управления — от освещения до спуска воды — вынесены на единый пульт, расположенный где-нибудь у входа.

Вот так окна на Маке и выглядят — как унитаз без ручки.)

FEALIK 2009

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

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

Илья Бирман 2009

Я как человек, имеющий возможность сравнивать, утверждаю, что маковские удобнее.

У них есть другие недостатки, не связанные с их расположением: чрезвычайная хрупкость, отсутствие подчёркнутых буковок для быстрой навигации.

Вовка Соловьёв 2009

Есть минус при использовании нескольких мониторов:
http://themacsucks.com/2007/10/fitts-law-mac-os-x-windows-and-linux/

Алисей Лебедев 2009

Илья, вы считаете оправданным решенением то, что клик по фоновому окну приводит _только_ к его активации?
Если, например, я пытаюсь выделить текст в фоновом окне, то нужно сначала кликнуть по окну, отпустить кнопку, и только потом выделять.

Илья Бирман 2009

Я считаю такое решение не очень удачным. Отстой ещё и в том, что в разных программах это работает по-разному.

Родион Жабрев 2009

В дополнение ко второму комментарию. Большинство программ понимают не только скролл неактивных окон. Зажав «cmd» можно их так же перемещать, сворачивать, растягивать без перевода в активное состояние.

Павел 2009

Если честно, вообще никогда не сталкивался с проблемой непопадания в меню мышкой и не замечал хотя бы какие-нибудь неудобства по этому поводу (вообще). В Windows 95, помню, была такая неприятность, когда загоняешь курсор в левый нижний угол, а потом нужно на пару пикселей его сдвинуть, чтобы на Пуск нажать. А с меню, мне кажется, эта чистой воды меряние ОСями. Это как Кока-кола с Ментосом — эффект производит, а на самом деле ничего такого. Вот скажешь человеку: «Вот посмотри, как удобно в меню на Макинтошах попадать, и как неудобно в Windows», а тот почешет затылок и ответит: «И вправду, как я раньше не замечал, что Windows такой неудобный».

Илья Бирман 2009

Дело в том, что я и раньше «замечал», какой Виндоус неудобный. А сейчас замечаю, какой неудобный Мак. Мне по работе положено замечать. Так вот степень неудобства Мака меньше, чем степень неудобства Виндоуса.

Чтобы говорить о меню, вам стоит получить опыт работы в обеих ОС. У меня тоже не было проблем с попаданием в меню в Виндоусе, потому, что была привычка в него целиться. Мак эту привычку уничтожил очень быстро, поэтому сейчас мне попадать в виндовое меню намного сложнее.

Andrew Marcus 2009

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

Угу, зато в кнопку Закрыть бесконечно труднее.

Илья Бирман 2009

Да, но этой кнопкой я как на Винде не пользовался, предпочитая Ctrl+W, так и сейчас не пользуюсь на Маке, предпочитая W.

Олег Французов 2009

Кстати о прокрутке в неактивных окнах. Этому можно научить и «винду», если воспользоваться утилитой KatMouse.

http://ehiti.de/katmouse/

smmurf 2009

Меню с клавиатурными шоткатами (Alt+буква) не имеет никаких преимуществ перед меню без шткатов на системах, в которых используются языки с набором символов, отличным от латиницы.
Все эти шоткаты теряют ценность, когда необходимо постоянно помнить о том, на каком языке у вас меню в текцщей программе, и какой язык ввода активирован в настоящий момент.

Виктор Чернявский 2009

Удивлен. На мой взгляд выпадающие меню атавизм пригодный только как хинт для шорткатов типа <ALT, I, C> (Canvas в фотошопе).

Очень туманно представляю себе софт, UI которого невозможно разработать без применения этих атавизмов. Видимо что-то монстроузное и мало понятное даже разработчикам.

Виктор Чернявский 2009

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

Фактически свисающее меню — аналог переключателя «/?» в командной строке. Это кому-то необходимо в графическом интерфейсе?

Виктор Чернявский 2009

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

smmurf 2009

Ну как уже было отмечено, выпадающие меню играют роль подсказок по фунциональности программы, уже хотя бы поэтому от них отказываться нельзя, все равно пользователь справку читать не будет.
Давайте проанализируем, для чего еще нужны меню. Они помогают разгрузить интерфейс, как уже было замечено. Трудно представить себе программу, которая бы обладала досаточной функциональностью и не требовала меню.
Что касается попыток микрософта от меню избавляться, то они похвальны, но результат все равно далек от идеала. Да, в локусе внимания пользователя остается меньше элементов, и это только те элементы, которые могут потребоваться при выполнении текущего действия. то лучше панели инструментов с десятками кнопок, но при этом теряется очень много экранного пространства, когда часто работаешь за не очень большими мониторами, это весьма раздражает. Меню компактнее.
Часто выполняемые действия так или иначе со временем будут использоваться по горячим клавишам, а вот редко выполняемые действия как нельзя лучше можно вызвать из меню, потому что выносить их на панель инструментов нецелесообразно, а комбинацию клавиш легко забыть.
Впрочем, и тут у майкрософта есть решение, реализованное в новых версиях виндовс — меню скрыты по умолчанию, и отображаются только по нажатию клавиши альт. Хотя такое поведение по умолчанию должно быть отключено, тем не менее это выглядит разумным компроиссом между сохранением доступа к любым возможным действиям и отказом от меню.

homm 2009

Опять про неактивные окна:
У меня когда-то была мышь от А4 и с ней был драйвер, который вызывал меню по средней кнопке (тогда она практчески не использовалась в приложениях) и фиксил скролл для любых окон. Потом у меня были другие мыши, но на них тоже можно было поставить этот драйвер. Потом почему-то я этот драйвер перестал ставить. С тех пор не удобно скроллить.

Виктор Чернявский 2009

Проверил у себя — скролл неактивного окна прекрасно работает.
Драйвер Logitech SetPoint 4.70.213

Николай Гурьянов 2009

А еще очень, просто очень удобно, что перетаскивая окно на Маке, всегда знаешь, что оно, родное, всегда упрется в верхнее меню. Ненавижу нечаянно затащить окно в Виндоусе за край экрана.

Денис Комарицких 2009

Хочется справедливости ради поправить первых двух комментаторов, внеся ясность в ситуацию. В Виндоус есть такая же (как и в Линукс и Мак ОС) возможность активировать и прокручивать окна под курсором (при наведении), называемая X-Мouse (надеюсь, понятно, почему „X“?). Учитывая нацеленность продуктов Микрософт на ламерские массы, эта возможность нигде в явном виде не упоминается, но легко включается твикерами или редактированием реестра вручную.
[HKEY_CURRENT_USER\Control Panel\Mouse]
«ActiveWindowTracking»=dword:00000001

Мои книги