Latest tip, no mouseDown events


#1

i tried a clean build (both the Demo and a new Introjucer project) and no buttons or mouseDown events are getting through to the editor, mouseMove/over/Enter seem to get there but no mouseDown

tested on OSX 10.6.6 NI Maschine Live 8 hosts. The AudioPluginHost does not have that issue just other hosts.


#2

…I just tried the demo plugin in Live 8 and it’s fine (?)


#3

i knew you’ll say that :frowning: it’s always just me. i’ll triple check that.


#4

well i agree, if you use the “str8 from git” xcodeproj for the JuceDemoPlugin project it works (i linked my vst path to ~/SDKs and it built and worked).

But since i wanted to change my vstsdk path, i opened it in the Introjucer, changed the path, saved it, and… no mouseDown events (and i built the introjucer from the latest tip too).

I also noticed that a brand new Introjucer project that’s an audioPlugin has the same problem. So i’m leaning towards some build flag that Introjucer sets.


#5

I moved the plugin wrapper files recently - perhaps these different builds are referencing an old or broken copy of the wrapper cpps?


#6

well i did a clean git pull so there is no way that the project would build with bad paths.


#7

Perhaps it’s a keyboard focus issue - in some hosts it might not pass events to an unfocused window or something…?


#8

that does not seem to be the case i tried with both JucePlugin_EditorRequiresKeyboardFocus set to 1 and 0, same behavior


#9

anyone can verify this? i can share a OSX virtual machine through logmein.com if someone is interested in checking this out (xcode installed).


#10

Well i tried once moce,

clean pull from the git, double clicked on the JuceDemoPlugin.xcodeproj, configuration=Debug, build, no errors.

Launch Live8, all ok
Launch Live7, no mouse down events (can’t move any slider, mouse hover works the sliders change alpha)
Launch NI Maschine, no mouse down events (AU/VST versions)

created a new Introjucer audio plugin project added a mouseDown callback to the editor, never happens (works in Live8 and Reaper does not work in Live7 and Maschine).

i’m lost not a line of my code has been used so i don’t know what to do anymore. any help ?


#11

Has anyone else seen this? I don’t have either of those hosts installed to check it myself right now…


#12

jules if you’d like i’ll set tup a virtual OSX with those hosts installed, you’ll be able to log in to it via logmein.com all the stuff will be installed there. but are you willing to do it, i know you don’t have a lot of time.


#13

I can debug it here, I’m just in the middle of some other stuff at the moment and this kind of thing can take a lot of time…


#14

well i’d love to try to help, i just don’t know where to start debugging in the code (where to put the breakpoints) on a event that does not occur ? for a mouseDown event on the MAC where is the entry point in the code, maybe i can try for myself.


#15

Well, juce_mac_NSViewComponentPeer.mm line 350 would be a good place to start!


#16

the debugger never hits a break point at the mouseDown in the ComponentPeer class i got it to hit the drawRect class so the breakpoints are working, but the mouse events are not.

I also added a TextButton and got the mouseEnter and mouseExit events but never the mouseDown


#17

:-\ I feel your pain - it’s happened to me with JUCE but then if you are going to take the tip, you’re going to expect sometimes to get obscure issues and variable response times - if the tip had to be formally reviewed it’d take twice as long to get everything done.

(Previous times weren’t JUCE’s bug, well, almost always weren’t, but things of mine that were broken due to changed interfaces…)

Can you revert to an earlier version for a while, this has worked for me?


#18

i guess i could but i’d like to stay up to date, and this weird bug happens only in some hosts, i’m trying to figure out what’s the difference between the ones that work and the ones that don’t, i’m not a mac user so it’s all black magic and tropical fruit for me (cocoa framework? really?). i’m trying to go deep with dtrace maybe i can get some results this way


#19

Ok so i spent some time on this, got no real results with the debugger or dtrace, but i didn’t give up. What i can say is that revision:
http://juce.git.sourceforge.net/git/gitweb.cgi?p=juce/juce;a=commitdiff;h=9301d072e32194e7c0c046a18bc3237492205afd

is the last working version, the next revision:
http://juce.git.sourceforge.net/git/gitweb.cgi?p=juce/juce;a=commitdiff;h=e159587a9bb1d3e2d00c479834e3087b60884e24

does not accept mouseDown in the mentioned hosts, in the revision diff i see some changes to the setAlwaysOnTop code in the juce_Component.cpp, can this be the cause ?


#20

That’s really odd - I can’t see anything in those changes that looks like it could affect mouse-events! The always-on-top changes certainly don’t look like they’re relevent - have you tried removing them to see if it makes a difference?