The issue is definitely the Tk that coms with OSX. I built the latest 8.5.19 into an embedded Wish (aka has the Tcl & Tk frameworks within the app bundle) and used that to create the Pd app. Now pretty much all of the main issues I was seeing before have been resolved.

So it seems like going to Pd-extended route of including tcl & tk within the app bundle is the way to go. I’ll write a script that automates building tcl/tk and we could also think about updating the included Wish tar. This would also make it relatively easy to transition to Tcl/Tk 8.6 now, instead of having to wait for Apple, at the cost of doing a custom build (although it’s fast and easy).

The tk docs say if you compile ahead for a system on OSX aka compile on 10.11, it should run fine on earlier systems. That, of course, should be tested.

--------
Dan Wilcox
@danomatika
danomatika.com

On May 1, 2016, at 10:21 AM, Dan Wilcox <danomatika@gmail.com> wrote:

Ok, judging from the following, there seems to be a bug related to accelrators with Shift not being ignored in the Cocoa tk layer: https://mail.python.org/pipermail/python-bugs-list/2011-March/132059.html

We’re not crazy. I’ll look for a workaround. In the meantime, none of this needs to be included in the 0.47 release. I’m aiming more for a followup when I can get the retina menu & font resolution, etc working well in Mac.


On May 1, 2016, at 10:17 AM, Dan Wilcox <danomatika@gmail.com> wrote:

Right. Something weird is going on.

Digging into the man page, it says the accelerator string is just to *display* the key bindings and the -command invoaction is for when the menu is clicked. In that light, we obviously need both the key binding *and* the menu command.

I’ll do some more digging.


On May 1, 2016, at 9:41 AM, Miller Puckette <msp@ucsd.edu> wrote:

Interesting... in my experience the "-accelerator" option (as used
in ::pd_menus::build_put_menu) has never actually bound the menu selection
to the associated keyboard event (so that I've also had to put a key binding
in).  Maybe this is because I wasn't using the feature right somehow.
Anyhow on my linux box (with tcl 8.5) I'm not getting double events so
the difference isn't the tcl/tk version.  I don't know what's going on but
clearly there's something wrong in the original code that manifests itself
in your installation of Pd but not on most peoples'.

cheers
M
On Sat, Apr 30, 2016 at 10:59:55PM -0600, Dan Wilcox wrote:
On a related note to the zoom bindings, I’m wondering why we have keybindings for the canvas window in two places: pd_menus.tcl & pd_bindings.tcl?

When switching to tk 8.5 on Mac, I noticed that the iem gui creation hot keys (Shift+Command+B for bng, etc) result in 2 objects being created. This was not the case with Tk 8.4 and might be related to how the shift key was being handled.

Also, this is happening with *anything* that has a shift binding such as “Save As” opening 2 dialogs and “Redo” bing called twice.

Anyway, commenting out the -command settings for each men item that uses shift in ::pd::menus::build_put_menu fixes the issue as far as I can tell as the global key bindings catch it. This is something I’ll throw up into a branch when I lock down updates for tk 8.5 on OSX soon. It will need to be tested on other platforms.

--------
Dan Wilcox
@danomatika <https://twitter.com/danomatika>
danomatika.com <http://danomatika.com/>
robotcowboy.com <http://robotcowboy.com/>

_______________________________________________
Pd-dev mailing list
Pd-dev@lists.iem.at
https://lists.puredata.info/listinfo/pd-dev