← Back to team overview

kicad-developers team mailing list archive

Re: PATCH: OS X copy/close bug fix

 

the only issue i see with this patch is it seems to be working around
the problem rather than fixing it. Has this been fixed in wxwidgets
3.1 if anyone knows?

Simon

On Thu, May 5, 2016 at 8:38 PM, Collin Anderson <metacollin@xxxxxxxxxxxx> wrote:
> Another little OS X fix.  Most, though not all, of the dialogs in KiCad that have cancel buttons break copy of text on OS X.  If you highlight text (for example, the net of a pad, an operation I find myself doing fairly often) and hit 'Command-C', the dialog is closed and the text is not copied.  Command-C is not ever used in this way under OS X, it should and is always intended to copy whatever is selected.
>
> The problem stems from how many of the dialogues in KiCad are declaring their cancel buttons.  If one declares a button with this constructor:
>
> wxButton( this, wxID_CANCEL )
>
> then the default name is filled in, which is "&Cancel".  The & is what makes a button have a keyboard shortcut with the directly following letter (C) in windows, but wx translates this to command-<letter> on OS X.  This means any button with the name "&C****> will break copy and paste on OS X and simply trigger the button event stead.
>
> I went through and fixed *every single button* in Kicad, such that the code/behavior is completely unchanged on other platforms, but if __APPLE__ is defined, it will explicitly name the button "Cancel" or "Close" as opposed to "&Cancel" or "&Close" (both the automatic fill-ins if not specified).  It's not pretty, but the only other option I can see is remove the keyboard shortcut for the cancel and close buttons entirely, or at least change them to a different letter, but that could potentially break other people's workflows.
>
> Here's the patch!
>
>
>
> --
> "Violence is the last refuge of the incompetent." - Isaac Asimov
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
>


Follow ups

References