I have investigated this problem and found that the bug is in the
tooltip code in gtk. When compiz switches workspace it performs a
pointer grab and gtk tooltips don't handle this correctly. The following
sequence of events will trigger the bug:

1) While a tooltip is displayed another program performs a pointer grab (e.g. 
using XGrabPointer).
2) The pointer grab triggers a LeaveNotify event and the tooltip is hidden.
3) The tooltip text is updated by the program and as the pointer still hovers 
the widget gtk displays the new updated tooltip.
4) The user moves the pointer away from the gtk widget while the pointer grab 
is still active. As the window has already received a LeaveNotify event it will 
not receive another one and the tooltip will stay on the screen.

I have modified the gtk tooltip code so that a tooltip is not displayed
if the widget window is not the same one as the one gdk thinks is the
current window under the pointer. This appears to have solved the
problem for me at least.

** Patch added: "gtk-fix-sticking-tooltips.patch"
   http://launchpadlibrarian.net/43785770/gtk-fix-sticking-tooltips.patch

-- 
Tooltips stick when switching desktops (Compiz)
https://bugs.launchpad.net/bugs/356702
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to