diff --git a/src/events.c b/src/events.c index 38d16638..57d6066f 100644 --- a/src/events.c +++ b/src/events.c @@ -276,7 +276,7 @@ HandleEvent(XEvent * ev) Mode.events.time = ev->xbutton.time; ModeGetXY(ev->xbutton.root, ev->xbutton.x_root, ev->xbutton.y_root); Mode.events.on_screen = ev->xbutton.same_screen; - TooltipsSetPending(0, NULL, NULL); + TooltipsHide(); goto do_stuff; case MotionNotify: @@ -300,7 +300,7 @@ HandleEvent(XEvent * ev) } ModeGetXY(ev->xcrossing.root, ev->xcrossing.x_root, ev->xcrossing.y_root); - TooltipsSetPending(0, NULL, NULL); + TooltipsHide(); goto do_stuff; case LeaveNotify: @@ -314,7 +314,7 @@ HandleEvent(XEvent * ev) } ModeGetXY(ev->xcrossing.root, ev->xcrossing.x_root, ev->xcrossing.y_root); - TooltipsSetPending(0, NULL, NULL); + TooltipsHide(); goto do_stuff; case PropertyNotify: diff --git a/src/tooltips.c b/src/tooltips.c index 3f0ec33d..1e51d0fd 100644 --- a/src/tooltips.c +++ b/src/tooltips.c @@ -699,6 +699,8 @@ TooltipsHide(void) { ToolTip *tt; + TooltipsSetPending(0, NULL, NULL); + ECORE_LIST_FOR_EACH(tt_list, tt) TooltipHide(tt); } @@ -713,6 +715,7 @@ TooltipsEnable(int enable) else { Mode_tooltips.inhibit++; + TooltipsHide(); } } @@ -771,8 +774,7 @@ TooltipsSetPending(int type, CB_GetAclass * func, void *data) Mode_tooltips.ac_func = func; Mode_tooltips.ac_data = data; - if (ttip) - TooltipHide(ttip); + TooltipHide(ttip); RemoveTimerEvent("TOOLTIP_TIMEOUT"); @@ -818,6 +820,7 @@ TooltipsSighan(int sig, void *prm __UNUSED__) break; case ESIGNAL_AREA_SWITCH_START: case ESIGNAL_DESK_SWITCH_START: + case ESIGNAL_EWIN_CHANGE: TooltipsHide(); break; }