From 2a53154892a25d7d93208df18eee27e7ef9b0aaf Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 26 Sep 2014 17:06:38 -0400 Subject: [PATCH] end tooltip timeout and display for relevant leave notify events --- libs/canvas/canvas.cc | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/libs/canvas/canvas.cc b/libs/canvas/canvas.cc index 9151c6d906..baced0761c 100644 --- a/libs/canvas/canvas.cc +++ b/libs/canvas/canvas.cc @@ -890,6 +890,17 @@ GtkCanvas::on_enter_notify_event (GdkEventCrossing* ev) bool GtkCanvas::on_leave_notify_event (GdkEventCrossing* ev) { + switch (ev->detail) { + case GDK_NOTIFY_ANCESTOR: + case GDK_NOTIFY_UNKNOWN: + case GDK_NOTIFY_VIRTUAL: + case GDK_NOTIFY_NONLINEAR: + case GDK_NOTIFY_NONLINEAR_VIRTUAL: + /* leaving window, cancel any tooltips */ + stop_tooltip_timeout (); + hide_tooltip (); + break; + } _new_current_item = 0; deliver_enter_leave (Duple (ev->x, ev->y), ev->state); return true;