← Back to team overview

kicad-developers team mailing list archive

Re: Getting Trackpad Support in before feature freeze?

 

Okay, so yes, this code hasn’t been touched in a while but I’ve been merging lp:kicad about once a week.  Here’s where I think things are.

The pinch to zoom stuff, while optional, is both really useful for OS X trackpad users and probably the easiest to get in.  I committed this separately from everything else so it would be easy to make a patch just for that.  It is 100% conditionally compiled and currently guarded by -DUSE_OSX_MAGNIFY_EVENT.  It does require a patch to wxWidgets but, as Bernhard pointed out, that patch (or a version of it) recently landed on trunk there.  So hopefully when it finally does make it into a release it will be straightforward to use in Kicad.  This is my preferred way to zoom in Kicad with a Magic Trackpad as it is much smoother than the default.

The rest of is it is a bit more muddled.  As I mentioned in a recent posting, the basic differences are fairly small, and described here:

http://bazaar.launchpad.net/~gcorral/kicad/osx-trackpad-gestures/revision/5244


The salient points from that are:

  With the preference unchecked, this is now:
  - Unmodified scrollwheel performed zoom in/out
  - Shift modified scrollwheel performed pan left/right
  - Cmd modified scrollwheel performed pan up/down
  - Shift+Cmd modified scrollwheel performed zoom in/out
    with no cursor warp

  It should be noted that for the last case, the behavior has changed.
  This is not arbitrary.  This now matches expected behavior for an OS X
  application.  This also matches what wxWidgets expects on this platform
  as wxWidgets changes the axis of mousewheel events to horizontal when
  the event is shift-modified. <http://bazaar.launchpad.net/~gcorral/kicad/osx-trackpad-gestures/revision/5244>

This means that if you have this in but choose not to use it, the default behavior changes as described, for all platforms.  Nick seems to think it’s not a big deal, and I tend to agree, but folks can get a tad upset about UI changes, no matter how small, and rightly so.

The final thing, an probably the main impediment to committing this is the last part:

The preference is added everwhere that mouse preferences previously
  existed, i.e., eeschema, pcbnew and gerbview.  The 3D Viewer does
  not yet honor this preference, but behaves as if it was checked.
  The pl_editor does not currently have any preferences to honor.
 <http://bazaar.launchpad.net/~gcorral/kicad/osx-trackpad-gestures/revision/5244>

 <http://bazaar.launchpad.net/~gcorral/kicad/osx-trackpad-gestures/revision/5244>
B <http://bazaar.launchpad.net/~gcorral/kicad/osx-trackpad-gestures/revision/5244>asically it does not work in pl_editor and it won’t until I or someone give that application a place to hang the mouse preferences. Not sure if it’s worth doing anything with pl_editor at this piont as I haven’t actually used it for anything.  If someone wanted to go in there and give it a preference dialog and some preferences I s’pose that would help.

The 3D viewer does have support, but it does not honor the preference because there’s no support for them in the 3D canvas.  Probably not a huge deal to fix this but I simply haven’t been back in there.  At the very least this should probably not behave as if it has the preference checked.  I was going to try to give Bernhard commit access to the branch in case he wanted to patch things up, but quite honestly I was too dumb to figure out how.

Most important, as Wayne points out, there absolutely could be hidden Windows or Linux issues lurking in there.  I simply didn’t have a way to test.


Garth


> On Feb 24, 2015, at 2:33 PM, Garth Corral <gcorral@xxxxxxxxx> wrote:
> 
> Sorry for being so silent, folks.  I'll try to send a summary later tonight with my take on these changes and the impediments to getting them in.
> 
> Garth
> 
>> On Feb 24, 2015, at 11:17 AM, Nick Østergaard <oe.nick@xxxxxxxxx> wrote:
>> 
>> True, but it is quite some time ago, although not a first
>> announcement. I have not seen if any new changes has been made after
>> that. Also the patch adds an alternative pan/zoom mode, and still has
>> the old style (almost unaffected). In the old mode, I think he swapped
>> the actions of the ctrl+scroll and shift+scroll buttons. That is all
>> as I understand it for the old mode.
>> 
>> The new mode addes better trimming for those wierdass-magic input
>> devices and thereby gives an option for people who like default
>> horizontal and verticall scroll is panning.
>> 
>> 2015-02-24 20:13 GMT+01:00 Adam Wolf <adamwolf@xxxxxxxxxxxxxxxxxxxx>:
>>> Hi Wayne,
>>> 
>>> The Waynelight worked! :)
>>> 
>>> I believe there is a minor change to scrolling behavior on all platforms.
>>> Garth has the details.  I am not sure if it's something we care about--I
>>> need to go back and re-read the details.
>>> 
>>> Nick has merged this into a linux build, and used it there, and didn't have
>>> any disastrous issues in what he did.
>>> 
>>> Adam Wolf
>>> Cofounder and Engineer
>>> W&L
>>> 
>>> On Tue, Feb 24, 2015 at 1:04 PM, Bernhard Stegmaier
>>> <stegmaier@xxxxxxxxxxxxx> wrote:
>>>> 
>>>> I normally just do a
>>>> bzr merge lp:~gcorral/kicad/osx-trackpad-gestures
>>>> into the current head I am building and that’s it…
>>>> 
>>>> 
>>>> Regards
>>>> Bernhard
>>>> 
>>>>> On 24 Feb 2015, at 19:56, Wayne Stambaugh <stambaughw@xxxxxxxxx> wrote:
>>>>> 
>>>>> As far as the wx patch goes, I don't have any issues with that.  We have
>>>>> other OSX specific wxWidgets patches so I don't see why one more would
>>>>> hurt.  However, the kicad patch must be thoroughly tested on Linux and
>>>>> Windows to make sure the default behavior is not changed for mouse wheel
>>>>> zooming and panning and any track pad behavior is not broken.  Has
>>>>> anyone tested this?  Is there a patch that I can apply against the
>>>>> latest product branch so I can do some testing and make sure the patch
>>>>> makes sense?
>>>>> 
>>>>>> On 2/24/2015 1:22 PM, Adam Wolf wrote:
>>>>>> Bernhard, that is a good point.  If Wayne et al are reluctant to patch
>>>>>> wx for pinch-to-zoom, we can pull in just the panning changes.
>>>>>> 
>>>>>> I have had Nick test on Linux--I seem to remember he said there wasn't
>>>>>> an impact to him, but I am not sure if the changes are too subtle to
>>>>>> notice.
>>>>>> 
>>>>>> Basically, at this point I am shining the Waynelight up into the
>>>>>> clouds.  Wayne--what do you need to make the call on this?  A branch to
>>>>>> make a build on your own tree?  A quick summary of how it impacts
>>>>>> non-OS X?
>>>>>> 
>>>>>> Adam Wolf
>>>>>> Cofounder and Engineer
>>>>>> W&L
>>>>>> 
>>>>>> On Tue, Feb 24, 2015 at 12:18 PM, Bernhard Stegmaier
>>>>>> <stegmaier@xxxxxxxxxxxxx <mailto:stegmaier@xxxxxxxxxxxxx>> wrote:
>>>>>> 
>>>>>>  Hi,
>>>>>> 
>>>>>>  would be really great.
>>>>>>  I use it since Garth provided his branch and merge it regularly into
>>>>>>  my builds.
>>>>>>  Currently I only use the panning part, because you still have to
>>>>>>  patch wxWidgets for the pinch-to-zoom.
>>>>>> 
>>>>>>  I didn’t see any showstopper on my MacBook (TouchPad) and my desktop
>>>>>>  (Mighty and Magic Mouse).
>>>>>>  So, in my opinion question is only about non-OSX impacts.
>>>>>> 
>>>>>>  Wrt to pinch-to-zoom there seem to be changes in wxWidgets trunk.
>>>>>>  I don’t know if we would like to patch until it has completely
>>>>>>  landed (wxWidgets needs to be patched anyway for OS X), or just wait
>>>>>>  with that until it has arrived in official versions.
>>>>>> 
>>>>>> 
>>>>>>  Regards,
>>>>>>  Bernhard
>>>>>> 
>>>>>>>  On 24 Feb 2015, at 18:25, Bob Gustafson <bobgus@xxxxxxx
>>>>>>>  <mailto:bobgus@xxxxxxx>> wrote:
>>>>>>> 
>>>>>>>  I locally merged Garth's code a week or so ago and had
>>>>>>>  difficulties - don't know if it was his files, my dependencies, or
>>>>>>>  something else. Attached is the log of my merge - it was against
>>>>>>>  r5431 and shows the names of the merged files.
>>>>>>> 
>>>>>>>  One of my problems was that after I built KiCad,  after awhile it
>>>>>>>  did not respond to clicks on the red go-way button (top left of
>>>>>>>  window). I had to Force Quit.
>>>>>>> 
>>>>>>>  FWIW
>>>>>>>  Bob G
>>>>>>> 
>>>>>>>>  On 02/24/2015 10:30 AM, Bob Gustafson wrote:
>>>>>>>>  Super!!!
>>>>>>>> 
>>>>>>>>  I can do testing as needed. I have magic mouse and MacAir with
>>>>>>>>  trackpad - running 10.10.2
>>>>>>>>  Bob G
>>>>>>>> 
>>>>>>>>>  On 02/24/2015 09:51 AM, Adam Wolf wrote:
>>>>>>>>>  Hi folks,
>>>>>>>>> 
>>>>>>>>>  Can we start a discussion on if it would be appropriate to get
>>>>>>>>>  Garth's trackpad support in before the feature freeze?  If it is
>>>>>>>>>  possible, what needs to be done, and who can do it?
>>>>>>>>> 
>>>>>>>>>  (Please, folks, this is not a thread for bug reports or
>>>>>>>>>  debugging builds.  If we're going to have any chance to get this
>>>>>>>>>  in, it'll be a focussed effort!)
>>>>>>>>> 
>>>>>>>>>  Thanks!
>>>>>>>>> 
>>>>>>>>>  Adam Wolf
>>>>>>>>>  Cofounder and Engineer
>>>>>>>>>  Wayne and Layne, LLC
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>  _______________________________________________
>>>>>>>>>  Mailing list: https://launchpad.net/~kicad-developers
>>>>>>>>> <https://launchpad.net/%7Ekicad-developers>
>>>>>>>>>  Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>>>>>> <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>>>>>>>  Unsubscribe : https://launchpad.net/~kicad-developers
>>>>>>>>> <https://launchpad.net/%7Ekicad-developers>
>>>>>>>>>  More help   : https://help.launchpad.net/ListHelp
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>  _______________________________________________
>>>>>>>>  Mailing list: https://launchpad.net/~kicad-developers
>>>>>>>>  Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>>>>> <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>>>>>>  Unsubscribe : https://launchpad.net/~kicad-developers
>>>>>>>>  More help   : https://help.launchpad.net/ListHelp
>>>>>>> 
>>>>>>> 
>>>>>>> <Ki-localMergeLog.rtf>_______________________________________________
>>>>>>>  Mailing list: https://launchpad.net/~kicad-developers
>>>>>>>  Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>>>>  <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>>>>>  Unsubscribe : https://launchpad.net/~kicad-developers
>>>>>>>  More help   : https://help.launchpad.net/ListHelp
>>>>>> 
>>>>>> 
>>>>>>  _______________________________________________
>>>>>>  Mailing list: https://launchpad.net/~kicad-developers
>>>>>>  Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>>>  <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>>>>  Unsubscribe : https://launchpad.net/~kicad-developers
>>>>>>  More help   : https://help.launchpad.net/ListHelp
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> _______________________________________________
>>>>>> 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
>>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> 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
>>>> 
>>>> 
>>>> _______________________________________________
>>>> 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
>>> 
>>> 
>> 
>> _______________________________________________
>> 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
> 
> _______________________________________________
> 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

Attachment: smime.p7s
Description: S/MIME cryptographic signature


Follow ups

References