← Back to team overview

kicad-developers team mailing list archive

Re: PATCH: OS X Beep Fix

 

Whoops, I'll try to get the coding style right next time.  Glad to be of help!
-- 
"Violence is the last refuge of the incompetent." - Isaac Asimov

> On May 5, 2016, at 9:35 AM, Chris Pavlina <pavlina.chris@xxxxxxxxx> wrote:
> 
> Thank you! I pushed your patch in revision 6775 with coding style fixes.
> 
> On Thu, May 05, 2016 at 01:44:54AM -0600, Collin Anderson 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 :).  
>> 
>> 
> 



References