diff options
author | Jan-Arve Sæther <jan-arve.saether@nokia.com> | 2009-04-17 16:59:17 (GMT) |
---|---|---|
committer | Jan-Arve Sæther <jan-arve.saether@nokia.com> | 2009-04-17 16:59:17 (GMT) |
commit | 2c762f3b8b284a7c6dc0c499b7052013bad5b707 (patch) | |
tree | 82389f7115010af87389f0c19a5cf2c40f83efd8 /src/declarative/qml/qmlrefcount_p.h | |
parent | 50e29dc095eaab396848f6640a59bba77ae28943 (diff) | |
download | Qt-2c762f3b8b284a7c6dc0c499b7052013bad5b707.zip Qt-2c762f3b8b284a7c6dc0c499b7052013bad5b707.tar.gz Qt-2c762f3b8b284a7c6dc0c499b7052013bad5b707.tar.bz2 |
Make sure tooltips are shown properly in popups.
The problem was that if you had child widgets of a popup, only child
widgets that had hasMouseTracking() == true received the ToolTip
event. This was because in order for a widget to receive a ToolTip,
it relied on the MouseMove event.
It still relies on the MouseMove event, but the problem with the
previous code was that it did not even *try* to deliver the MouseMove
event to the widget that did not have mousetracking. And it was
the code that "tried" to deliver (QApplication::notify()) the event
that also was responsible of finding which widget it should get the
tooltip from. Unfortunately the previous code did not even enter
QApplication::notify() because of that early cut-off.
The result was that the event was propagated up to the parent widget
(which was the popup) and consumed by the popup. (Nothing would happen
unless the popup itself had a tooltip). This is also how
translateMouseEvent() is implemented in qapplication_x11.cpp.
Diffstat (limited to 'src/declarative/qml/qmlrefcount_p.h')
0 files changed, 0 insertions, 0 deletions