Linux VST - ctrl, shift, alt


#1

Hello.

I have a problem with getting pressed keyboard modifiers:
(isCtrlDown(), isAltDown(), isShiftDown()) on mouseDown(), mouseUp() and paint() (this methods checked by me) methods on Linux in Jost and Juce`s host.

Juce 1.46(with 1.45 it doesn’t work too).

If i use

static const ModifierKeys ModifierKeys::getCurrentModifiersRealtime ( ) throw () [static] in paint() method
i got broken plugin GUI(without windows header, inactive) after pressing close button on GUI(not every time). With Ctrl+F4 - all works. If I press Ctrl+F4 after pressing mouse on the plugin`s UI(make mouseDown()) - GUI broken.
After closing broken GUI with Ctrl+F4 - all works.

In MacOS and Windows all works without problems.
Thanks.

PS.
(JucePlugin_EditorRequiresKeyboardFocus = 1)
PPS.
If you need screenshots or minimal code - let me know.
PPPS.
Sorry for bad English


#2

I can’t see how getting the modifier keys would have any effect on the window. Are you sure it’s not just a different bug that you’re seeing?


#3

Hello.

I tested it with EnergyXT2 in Linux. All works perfect(window and modifiers).
Also, after changing

to

problems with window in “Juce Plugin host” and “Jost” are very rare.
But sometimes it happens.

Maybe it`s a bug, but it works in Windows, Mac and EnergyXT2 in Linux.
Thanks.


#4

Ok, but I’m stumped by that… As you can see in the linux code, the getCurrentModifiersRealtime call does almost nothing - I can’t think of any way it could affect the window.