I’m using the "bidle" message to track the position of the mouse over a ui object but the "active" argument in:
void maxBidle(MaxObj *x, Point pt, short modifiers, short active)
…seems always to be 0 regardless of whether the owning patcher is frontmost or not. I’m using this to hide the mouse pointer over the object in a locked patcher (incidentally the docs say the "bidle" is only sent to your object in a locked patcher but I get it in an unlocked too).
Also "bidleout" seems to be sent correctly when the mouse moves from being over my object to being over another (overlapping) patcher window but not if it’s a non-patcher window e.g. a file dialog. This is resulting in losing the mouse pointer in the file dialog since if the mouse is over my object the mouse pointer gets hidden (and the "active" param doesn’t allow me to know if my owning patcher is not frontmost in which case I could otherwise not hide it) and can’t be re-shown when the mouse moves to an overlapping file dialog (since I don’t get a "bidleout" message in this instance).