Qt World Summit: Submit your Presentation

[SOLVED] MainWindow with MouseMoveEvent working on Linux, but not on OSX

  • Hi,

    I have a program which takes heavy usage of the MouseMoveEvent for Mouseover highlighting in a OpenGl scene. The program runs with Qt 4.8 fine on Linux, Windows and OSX. Now, I ported the Linux and the OSX version to Qt5. The Linux version works still as aspected, whereas in the OSX version the MouseMoveEvent is not excuted when moving the mouse without pressing any key.
    I didn't use any Eventfilter, with Qt 4.8 it was enough to simply set Mousetracking to true. When trying it with a simple
    example on Qt5, again the setMouseTracking(true) command is enough to let it work. Therefore, here is my question:

    How can I check if the MouseMouveEvent is spawned and/or why do I see nothing. Properly I would like to have some suggestions for debugging.


    Finally I had some time to spend on this issue here, and was also able to create a simple example reproducing the behaviour. But step by step: first the mousemoveevent is working under certain circumstances. The problem lies in the mainwindow-class of Qt. The example shows that nicely.

    In the example we have a mainwindow with a simple QGLwidget and a statusbar. Now when the QGLWidget is entered with the mouse cursor over the statusbar, then the mousemoveevent is not working. If we enter the widget from any other side, it is working fine. For me it looks like an actual bug of Qt? But maybe I made a mistake.

    The example can be downloaded by: git clone https://github.com/mikenicolai/qt5-mousemoveevent-bug.git

    I would be happy for any suggestion!



  • The bug is solved with the new Qt 5.1 beta 1 version.

    Thanks to the developer :-)


Log in to reply