Modal operator, MOUSEMOVE, and Tooltips???

Okay so I have a modal operator running and am processing MOUSEMOVE:

  1. I have been returning PASS_THROUGH.
  2. The mouse happens to be hovering over something that spawns a tooltip.
  3. A new condition dictates that the modal operator needs to start capturing MOUSEMOVE and thus returns RUNNING_MODAL.
  4. As a result, the tooltip wont go away until a MOUSEMOVE event passes through again.

Any ideas on how to make said tooltip go away upon the need to return RUNNING_MODAL with MOUSEMOVE? Don’t care how hacky it is since it seems everything I do revolves around hacks of some sort anyway :rolleyes:. I’m probably overlooking something simple. I hope.

I wonder why you want to let a tooltip disappear?! Couldn’t you switch off tooltips in general?

You can’t detect if there is a tooltip, and where it is shown. You could move the cursor (Window.cursor_warp), but it’s not enough to just move it. You seem to need to move it away from an UI element that shows a tooltip and leave it there, at least for a moment.

I don’t want to disable tooltips, as that would interfere with the user. My requirement for closing tooltips is based upon user action and as such when the user takes that action, I don’t want the tooltips getting in their way, which tooltips do, if the user was moving over anything that produces a tooltip.

The fact that the UI has an operator that returned RUNNING_MODAL for a MOUSEMOVE event but still considers the mouse to be hovering in it’s last known position sounds like a bug/oversight.

Turning tooltips off temporarily via user perfs does nothing to tooltips that are already open, but I’ll have to do tests to see if it stops the tooltip hover timeout if it’s already in progress. This would help quite a bit, since the user would be expected to keep the mouse moving (usually), when this happens.
I will give cursor_warp a try as well.

Maybe I should go request a window.clear_tooltips() method for python?