Yes, please don't go interleaving preprocessor statements with fragments of
code like that, it's ugly and very prone to causing mistakes and
misunderstandings.

#ifdef __APPLE__
if( type != wxEVT_CHAR )
    aEvent.Skip();
#else
    aEvent.Skip();
#endif

^ That is much clearer to me, it actually reads like C.

On Thu, May 05, 2016 at 10:39:50PM +1200, Simon Wells wrote:
> In its current state i am not a fan of this patch, as if someone comes
> along and adds a line between the #ifdev and aEvent.skip() is will
> break, Ideally it should probably be
> 
> #ifdef __APPLE__
>     if ( type != wxEVT_CHAR ) aEvent.Skip();
> #else
>     aEvent.Skip();
> #endif
> 
> the comment can still be between the #ifdef and if line but it would
> make the code more obvious at a quick glance
> 
> On Thu, May 5, 2016 at 7:44 PM, Collin Anderson <metacol...@electropi.mp> 
> wrote:
> > Hi, I have attached a patch that fixes an annoyance that is present in the 
> > footprint editor and pcbnew, but only under OS X.  In either of these 
> > editors, any time a hotkey (or any key in the main edit frame) is pressed, 
> > it also triggers OS X's error alert.  This means a system alert sound is 
> > played, and/or (depending on the user's settings) the screen will flash.  
> > This is the normal error cue in OS X, and as you can imagine, it gets 
> > somewhat annoying, especially to us finger-happy types who use lots of 
> > hotkeys.
> >
> > I searched the mail list, and found a prior reference to it.  I can 
> > definitely confirm that it has been an ever-present problem on OS X, to the 
> > point I'm in the habit of turning off my speakers as soon as I open pcbnew 
> > :).  It's minor but annoying.  It was never fixed as the patch broke other 
> > things on other systems.
> >
> > OS X expects key press events to be caught and handled and only get passed 
> > all the way up the GUI chain if there simply is no event handler anywhere 
> > to deal with it.  So a key press event that is passed to the GUI will be 
> > seen as an input error, a key press that was sent nowhere and handled by 
> > nothing.  So I simply corrected this behavior, key events that are handled 
> > are caught, but only on OS X, where NOT passing them to the GUI is the 
> > correct and expected course of action.  It is likely the only platform 
> > where this is true, however.
> >
> > I've attached a very modest patch that contains the fix.  I have been using 
> > a build of KiCad with this patch applied under OS X, and I haven't found 
> > any issues, everything works just as before, only now KiCad is wonderfully 
> > silent :).
> >
> >
> >
> >
> > --
> > "Violence is the last refuge of the incompetent." - Isaac Asimov
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~kicad-developers
> > Post to     : kicad-developers@lists.launchpad.net
> > Unsubscribe : https://launchpad.net/~kicad-developers
> > More help   : https://help.launchpad.net/ListHelp
> >
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp

_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to