← Back to team overview

kicad-developers team mailing list archive

Re: Can we enable menu icons on OS X?

 

Hello Collin,

As far as I remember, menu icons are disabled on OSX in order to conform with Apple's UI guidelines that favor text-only menus over additional icons.

So while there might be no technical issue with enabling icons for OSX too (I know that it worked years ago, when they were enabled by default), I think that the main reason for disabling them is the "native OSX user" who is used to text-only menus from all other applications and might find icons distractive.

From my point of view, cross-platform should not mean "has to look the same on all platforms", but rather "has to work on all supported platforms, but not violate its standard UI policies".

I understand that menu icons are a rather minor "violation" and I would not mind if they were re-enabled. But if there is a definite decision to make, my vote would go to not enabling them again. Personally, I find icons in menus distractive, if recognizable at all at such small sizes, so I eventually always fall back to reading the text (this also holds true for context menus, where icons are still enabled). Menu icons, for me, are just visual clutter that take away screen space (I am often working on a 13 inch MBP).

Just my .02.


Best,
Johannes


Von Samsung Mobile gesendet

<div>-------- Ursprüngliche Nachricht --------</div><div>Von: Collin Anderson <metacollin@xxxxxxxxxxxx> </div><div>Datum:30.07.2015  12:53  (GMT+01:00) </div><div>An: KiCad Developers <kicad-developers@xxxxxxxxxxxxxxxxxxx> </div><div>Betreff: [Kicad-developers] Can we enable menu icons on OS X? </div><div>
</div>Can anyone explain why menu icons are enabled on all platforms except OS X? I've looked through the menuhelper.h code and the CMake build files, and all I can find is reference to it being disabled on OS X by default, but the reason why is not given anywhere I can find. 

I've been using KiCad for months on OS X and I force the menu icons on every time, and there are no issues.  They are very helpful from a usage standpoint and beyond that, it is the interface I'm used to when I use KiCad in Debian, and my coworkers in in Windows.  It's both annoying and distressing to suddenly lose all those visual cues but only on the OS X platform.  It would be understandable if there was some sort of issue, or they didn't work right on OS X, but that's not the case.

Regardless, as it stands now, KiCad's interface is not platform agnostic, which is something that ought to be a priority for any software claiming to be cross-platform.  

Can we simply comment out, or better, remove, the line in the root CMakeLists file that goes out of its way to disable menus, but only if __APPLE__?  I'll even do it myself and make a merge quest, if its simply a matter of no one having the time.   

I, like many users I suspect, find I rely on icons and visual cues much more than actual text of menu and contextual menu items.  I have no choice but to build KiCad (which takes a long time on my machine) if I want the latest dev build in a usable (and truly cross platform) state.  I DO do his regularly, but sometimes I do need it quick and it would be nice if I could take advantage of Adam Wolf's generously provided nightly builds, but since the default build settings disable menu icons, it largely becomes time spent discovering how much I actually rely on the menu icons, rather than spent on electronic design.  

If I've missed something, and there IS a good reason for breaking KiCad's cross platform consistency, I'd love to know - I'll see if I can fix the issue and file a merge proposal.  And if I can't I'll at least add that reason in the comments around the relevant code, since it requires justification (in my humble opinion, anyway, for what little that is worth ;)   )


-- 
"Violence is the last refuge of the incompetent." - Isaac Asimov


Follow ups