Hi there,
a classic topic that just came up again...
In a GeUserArea, we try to catch a double click. It used to work fine, the code has worked for years. But recently, I find it very difficult to trigger a double click event. That even happens in old builds of the plugin that used to work as expected (I tested back to R16).
Bool MyImageArea::InputEvent(const BaseContainer& msg)
{
if (msg.GetInt32(BFM_INPUT_DEVICE) == BFM_INPUT_MOUSE)
{
if (msg.GetInt32(BFM_INPUT_CHANNEL) == BFM_INPUT_MOUSELEFT)
{
if (msg.GetBool(BFM_INPUT_DOUBLECLICK))
{
// Do stuff here...
EventAdd();
return TRUE;
}
}
}
return FALSE;
}
Things I noticed:
- I have to take care the mouse does not move at all during the double click
- I often have to click three or four times
Debugging, I can see that if (msg.GetBool(BFM_INPUT_DOUBLECLICK))
is called, but rarely returns true, however fast I try to click.
It seems that the problem is not present on Windows, but it is on macOS. Maybe something with the mouse handling in macOS changed in recent OS updates?
What might be the reason? And how can I improve responsiveness to double clicks?
Thanks for advice!
Cheers,
Frank