Keystrokes / Keyboard Input in Cubase 7 64bit

Hi. I'm not a developer but rather a consumer who has recently purchased two plugins from two different companies that are built with the Juce Framework. Both plugins have a bug where typing in values does not work in Cubase 7. A quick search of this forum shows this issue being brought up repeatedly from at least as far back as 8 years ago. I would really like to see this fixed, and certainly won't make the mistake of purchasing another plugin built with Juce until it is.

Regards,

Greg Houston

Judging by the fact that I've not heard anything about this recently, I assumed it was all working ok. Perhaps your plugins were built with an older version of juce?

And please understand this before you make any sweeping judgements: For someone to correctly identify the cause of a bug as being the same thing that was discussed in some old forum thread, it'd require deep knowledge of both juce and the plugin itself. This stuff is compex, even for those of us who do it professionally. I couldn't look at someone else's plugin and say for sure what's causing a bug in it - I'd need to discuss it with the plugin developer before being able to draw any conclusions. So as a non-developer, probably the best use of your time/energy would be to chase the devs whose plugins have the problem, and get them to discuss any issues with me directly.

When editing a Label object's text in a plugin UI, there are several keys captured by the host (tested on Cubase and Reaper) that are not received by the TextEdit component. For example space and enter are two very important keys that apparently can not be entered into a editable Label. I don't recall having this issue on any host with VSTGUI, so i believe JUCE handles key input differently. I have to admit that not all hosts intercept these keys. For example, JUCE plugin works fine on VstHost.

To summarise what i've tested so far:

Space is intercepted on Reaper both Win and OS X.

Both Enter and Space is intercepted on Cubase on Windows.

Ableton Live and Logic Pro work fine on OS X.

VstHost and FLStudio work fine on Windows.

 

I just built the JUCE demo audio plugin and in Ableton Live 9.0.6, keystrokes are not arriving correctly at the plugin: typing a value in one of the numeric text fields next to the knobs does not work.
Repository version: pulled just 20 min. ago (SHA-1: cd95d5c59fdc2353f85822f4be29d432a5b55ba8).

This was with Live 9.0.6 32-bit on WindowsXP SP3.
In VSTHost and FLStudio 11 I didn't notice problems: keystrokes are captured fine.

Suggestion:
It may be good to add 1 (editable) Label and 1 TextEditor component to the demo plugin: this way, we have a small and well-known plugin in the repository to test with when new versions of different hosts com out, and a simple common base to debug from if problems like this arise.

 

Sorry, Jules. I found several threads on the topic, most much more recent than the one from 2007, and none of them appeared to end in resolution. It's just a frustrating bug requiring that I type the value I want into Wordpad, copy it, and then right click the value fields in these two plugins and select paste. One of the developers was going to look into it soon, and the other I think gave up being sufficiently happy that it worked in "most" DAW, but I will see if he will contact you directly.

Hi, I'm a developer of Ample Guitar. The module version we currently use is 2.0.40.  Below is our implementation of editorShown. Any suggestions to fix the input problem?


void SliderAndKnobLabel::editorShown(TextEditor *editorComponent)
{
    editorComponent->setText(String(owner->getValue(), log10(1 / owner->getInterval())), false);
    editorComponent->setInputRestrictions(0, "-0123456789.");
    Label::editorShown(editorComponent);
    editorComponent->setWantsKeyboardFocus(true);
}
 

Just for clarification. I can right-click a text field and it will highlight the value. Backspace, delete, and no character inputs work. The only way that I seem to be able to change the value in any way is by writing it in Notepad, copying it, right-clicking on the text value and choosing paste.

I have a TextEditor object in my plugin and in Cubase 7.5 x64 I can enter text fine….

Rail

Rail, while we're waiting for Jules to reply to 200gaga, do you have a demo of your plugin I could test on my system?

TextEditor just works fine for us too. However, we don't use it because the border always exists, even we set it to 0 or -1, e.g., setBorder(BorderSize<int>(-1, -1, -1, -1)) .

I don’t have a copy of my plugin which I can share at this stage… but the JUCE demo uses Label objects… and it would be simple to add a TextEditor object as well for testing purposes… Here’s a video showing the demo in Cubase 7.5 x64 on OSX:

If you don’t want a border around your TextEditor. create an L&F and override drawTextEditorOutline()

Rail

Your code snippet looks fine, but 2.0.40 is a year old - there have been many thousands of changes since then.

Since other people on this thread are building with the latest version and don't have any problems, then it could just be that something got fixed somewhere along the line since you did your build.

Thanks, Rail.


Ample Sound, is this something you can try?

 

"If you don't want a border around your TextEditor. create an L&F and override drawTextEditorOutline()"

I wish Jules had chimed in because it is still not clear if the method Ample Sound is currently using is faulty in some way or if there actually still is a bug in JUCE with Cubase 7.5 64bit. I'm leaning towards there still being a bug in JUCE since Ample Sounds current method works in most every other DAW.

Also, is it a bug that you cannot set the border width to 0 without using the workaround described above?

Jules did respond, look through the thread.

No, it’s not a bug… That’s just the wrong way to try and not have a border… It’s exactly why Jules included the L&F method in the framework.

Rail

Jules,

I am sorry, but that is just too easy and not true... 
Remember I also had (and still) problems with this only about 1 month ago:

http://www.juce.com/forum/topic/text-edit-fields-still-not-working-plugins-added-patch-demo

May I ask: has something been changed in response in the meantime, or are you assuming that it just works?

"Typing text in a TextEditor (or in the text field of a Slider) doesn't work at all in Ableton Live or Cubase on Windows."

Now, if you say you actually made a deliberate change in the last month, I will try (again...), but it doesn't make sense to re-try every few days if we don't know you indeed tried to fix it... I think this only adds to the confusion:

Since other people on this thread are building with the latest version and don't have any problems, then it could just be that something got fixed somewhere along the line since you did your build.

This is a genuine question to obtain some clarity: did you actually try this yourself in Cubase now in the meantime?

I personally just tried this (once again) myself in Cubase 7.0.7 (last update for the Cubase 7.0 version): pulled Juce, built the plugin demo, and tested it on Windows7 in Cubase: it's not working, as before.
It's also not working in Live 9.1.1 (as before).

I understand you have lots of things to do, but please only say that you think it's fixed if you or yourself actually clearly confirmed this. Each time I read something like that, I loose half an hour of my own time to try again and agin, only to see nothing changed. Don't get me wrong: that's OK, if you can confirm you actually had a look at the issue, fixed something (and perhaps also tried it). If you still don't have a Cubase or Live NFR, PM me, and I will send you the contact info of someone at Steinberg and Ableton from whom we received our NFR.

Also, as suggested by someone else: if you could simply make the proposed add-on to the demo plugin, it would at least be very easy to test it for everyone, instead of having to make the change over and over again after each pull of the repository. I supplied the code for that in the thread I linked to above.

It would be helpful to also add a VS2010 project (and perhaps also the newer ones) to the repository, so that we don't have to do the: build Introjucer --> open Introjucer --> add VS2010 project --> save projects cycle each time.

Thanks,

Koen

PS
Sorry if the above sounds a bit harsh, and I highly value your fantastic work (I truly do!), but I think it's really time the existing audio plugin stuff gets a good look at. I hope you are logging postponed issues in a bug tracking system somewhere (github has that I think) to tackle soon when you find a moment. A lot of people depend on it, and some gladly bought a commercial license because of it ;-)

Hi Rail,

just to be clear, some yes/no questions:

- is this on Windows 7 64 bit?

- is this with the latest pull from Juce (30 min. ago) and without any patches?

- can you type values in a fresh build of the Juce demo plugin text boxes of the sliders?

- could you try in Cubase 7.0.7 or Live 9.1.1?

This does not work for me, with the latest pull from Juce.

Koen

(Edited to clarify I meant Windows 7)

Koen, please make your posts shorter! I don't have enough time to spend dealing with huge posts like this! One simple question per post is best if you actually want a reply!

My Cubase NFR expired a while ago and I do need a new one, but since people like Rail Jon Rogut report that it's ok, then I really don't know what could be different between your builds.

But I have tested with Ableton, and couldn't reproduce the problems that people reported with that. I don't even know whether it's the same issue though.

Hi Koen,

As indicated in my post this was on OSX… I’ll install Cubase 7.x on Windows 8 today and test it for you.

The demo was built with JUCE commit e1ebe49 with no additional patches – so updated to the tip at my time of posting.

Rail

OK, sorry, fair enough:

Problem I'm seeing:
Typing text in a TextEditor (or in the text field of a Slider) doesn't work at all in Ableton Live 9.1.1 or Cubase 7.0.7 on Windows7 (latest updates), with latest Juce demo plugin from today.

Which version of Live and Windows did you try on?

Â