← Back to team overview

kicad-developers team mailing list archive

Re: Need testers (especially on OSX) for this patch.

 

Le 18/09/2017 à 15:54, Jon Evans a écrit :
> Hi JP, works well for me on macOS 10.12.  Arrow keys do nothing in GerbView and move the cursor
> around in footprint editor as expected.
> 
> Thanks
> Jon
> 

Thanks.
I committed the fix.



> On Mon, Sep 18, 2017 at 7:08 AM, jp charras <jp.charras@xxxxxxxxxx <mailto:jp.charras@xxxxxxxxxx>>
> wrote:
> 
>     Hi All,
> 
>     I am trying to fix an issue in GAL mode.
>     It is related to "special keys":
>     ARROW keys
>     PAGE UP and PAGE DOWN
>     that have a special behavior: if not explicitly used in the a scrolled frame,
>     they have a predefined action: scroll the frame.
> 
>     Until now these keys (managed by a wxEVENT_CHAR_HOOK) were incorrectly managed in GAL mode
>     (this event was not handled, and therefore the default handler was called).
> 
>     Unfortunately it creates an issue (for instance PAGE UP and PAGE DOWN are used to switch active
>     layer from top to bottom or bottom to top)
> 
>     Until now, scroll window commands were not managed in GAL mode by the GAL canvas, and this issue was
>     not really noticeable (although it was existing).
> 
>     Now the scroll window commands are managed and I am trying to fix this issue.
>     (see for instance bug https://bugs.launchpad.net/kicad/+bug/1717270
>     <https://bugs.launchpad.net/kicad/+bug/1717270>)
> 
>     the wxEVENT_CHAR_HOOK is now managed, but it is a especially tricky event:
>     Depending on the OS, what is mandatory on a platform must be avoided on an other platform.
>     The way the 2 events that manage a key ( wxEVENT_CHAR_HOOK and wxEVENT_CHAR ) are fired very
>     differently by platforms.
> 
>     Although the patch to test if small it was really *tricky* to make it working.
> 
>     It works on Windows and Linux, but I need testers at least on OSX before committing this change.
>     (Note also there is less conditionnal code with this patch than the initial code)
> 
>     Note also there is a flaw in key events management in GAL mode because (unless I missed something)
>     there is no way to know if a key was managed or not.
>     On wxWidgets, if a key event is not managed it must be Skipped (send to the GUI, just in case), but
>     not if it is managed.
>     Therefore this fix is not perfect.
> 
>     Thanks.
> 
>     --
>     Jean-Pierre CHARRAS
> 

-- 
Jean-Pierre CHARRAS


References