OS X Trackpad gesture support

Hi everyone,

I have been looking at KiCad on and off for quite some time and it is really shaping up to be a nice piece of EDA software!

The main positive point for me is proper OS X support, apart from Eagle basically no one else provide this.

The only issue is I find the trackpad to not function very well and it’s quite awkward to use. My suggestion is that it work more like Eagle does, pinch to zoom and two fingers to pan around the schematic / board.

If that was added, I’d ditch diptrace in an instant :smile:

I did find some blog posts here and there about enabling support for this, but for older versions (building from source). I gave it a try but didn’t work for me.

There was some work being done but it required a patch to wxWidgets:

https://lists.launchpad.net/kicad-developers/msg15584.html

I have been able to get this working at least once, and have used that build for all of my work in KiCad. Without this patch, it is nearly impossible to use on a MacBook unless there’s a click wheel mouse attached. With the patch, it is a pleasure. But it is quite a hassle to get it working, and I have failed many more times than I’ve succeeded. The guide I usedmost recently is now a few months out of date, and reportedly broken, but have a look:
http://nonninz.com/building-kicad-for-osx-yosemite-with-trackpad-support/

Thanks guys. Yes, that was the guide I tried to use and it was indeed broken. If I get chance I will take a detailed look into what the patches are actually doing, could be they need just minor tweaks. I’m no expert, but it can’t be too difficult :smile:

This is pretty much the only thing stopping me from giving kicad serious consideration as my eda package as I use a MacBook pretty much most of the time now. It would be great to have the native experience and not to have to use a virtual machine :wink:

@cbonsig Would you be able to share your patched build at all?

I zip’ed up the build that I’ve been using, and linked it below. I have no idea if this will work for you, but give it a try and let me know. In this build, the two-finger swipe gesture pans the canvas when you are zoomed in using Eeschema or Pcbnew. I was never able to get the pinch-to-zoom gesture to work.

Awesome thanks! Forgive my ignorance, but how do I build that?

Right - I should have explained that… I grabbed the source (BZR 5621) and applied the patches for wxwidgets as described by the link above. The .ZIP’ed folder is the result of that build process. Inside the “kicad” folder, you’ll find an executable called “kicad.app”. I just launch from that, and everything (mostly) works. In every session, at least once, I get a “wxWidgets Debug Alert” modal dialog box, to which I answer “no” or “cancel” and continue. I haven’t noticed any problematic side effects.

Ah, gotcha. I did actually try that, but I just get an error:

Process: kicad [593]
Path: /Users/USER/Downloads/*/kicad.app/Contents/MacOS/kicad
Identifier: org.kicad-eda.kicad
Version: ???
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: kicad [593]
User ID: 501

Date/Time: 2015-08-16 18:07:41.392 +0100
OS Version: Mac OS X 10.10.5 (14F27)
Report Version: 11
Anonymous UUID: C95CF84D-B44A-71A1-D997-1EFD723168A6

Time Awake Since Boot: 150 seconds

Crashed Thread: 0

Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000

Application Specific Information:
dyld: launch, loading dependent libraries

Dyld Error Message:
Library not loaded: /Users/cbonsignore/dev/KiCad/wx-bin/lib/libwx_osx_cocoau_gl-3.0.0.dylib
Referenced from: /Users/USER/Downloads/*/kicad.app/Contents/MacOS/kicad
Reason: image not found

Binary Images:
0x7fff686b4000 - 0x7fff686ea887 dyld (353.2.3) /usr/lib/dyld
0x7fff8b378000 - 0x7fff8b379ff3 libSystem.B.dylib (1213) <1866C519-C5F3-3D09-8C17-A8F703664521> /usr/lib/libSystem.B.dylib
0x7fff8cd81000 - 0x7fff8cd81fff com.apple.Cocoa (6.8 - 21) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
0x7fff8effd000 - 0x7fff8f164ffb com.apple.audio.toolbox.AudioToolbox (1.12 - 1.12) <5678FC94-456A-3F5F-BA9A-10EB6E462997> /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox
0x7fff93b98000 - 0x7fff93c0afff com.apple.framework.IOKit (2.0.2 - 1050.20.2) <09C0518C-90DF-3FC3-96D6-34D35F72C8EF> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
0x7fff945d5000 - 0x7fff945e3ff7 com.apple.opengl (11.1.2 - 11.1.2) <5F355713-4637-33CD-9CBA-4B4CA43FB0FE> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
0x7fff94e72000 - 0x7fff94e72fff com.apple.Carbon (154 - 157) <9BF51672-1684-3FDE-A561-FC59A2864EF8> /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon

Model: MacBookPro12,1, BootROM MBP121.0167.B07, 2 processors, Intel Core i5, 2.9 GHz, 8 GB, SMC 2.28f7
Graphics: Intel Iris Graphics 6100, Intel Iris Graphics 6100, Built-In
Memory Module: BANK 0/DIMM0, 4 GB, DDR3, 1867 MHz, 0x80AD, 0x483943434E4E4E424C54414C41522D4E5544
Memory Module: BANK 1/DIMM0, 4 GB, DDR3, 1867 MHz, 0x80AD, 0x483943434E4E4E424C54414C41522D4E5544
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x133), Broadcom BCM43xx 1.0 (7.15.166.24.3)
Bluetooth: Version 4.3.6f3 16238, 3 services, 18 devices, 1 incoming serial ports
Network Service: Wi-Fi, AirPort, en0
Serial ATA Device: APPLE SSD SM0512G, 500.28 GB
USB Device: Internal Memory Card Reader
USB Device: Bluetooth USB Host Controller
Thunderbolt Bus: MacBook Pro, Apple Inc., 27.1

I will download a fresh copy and try again, maybe something has become corrupted somewhere

It looks like it isn’t finding one (or more) of the required wxwidgets libraries. My guess is that they are contained outside of the directory structure that I zip’ed. You’ll probably need to figure out how to patch, compile, and install wxwidgets. Next time I’m at my machine, I will try zip’ing my wx-bin folder and I’ll post that, but you’ll still probably need to get it added to the PATH so it will be found by KiCad.

Here is a link to a ZIP of my wx-bin folder. I believe the wxWidgets dependancies are all located in there.

FYI, in case it matters, the KiCad and wx-bin folders that I ZIP’ed and posted here live at these locations on my machine:

/Users/cbonsignore/dev/KiCad/build-20150106
/Users/cbonsignore/dev/KiCad/wx-bin

Thanks :thumbsup:

I’ll give it a go this evening and get back to you :slight_smile: