I found a Core Graphics function, CGCursorIsVisible, that one can use to determine whether the mouse cursor is shown on screen.
I have a small app that uses a timer to call that function a few times a second to see if the cursor is shown or hidden (as I found no way to get my app notified when the mouse cursor shown/hidden status changes).
The above works correctly except… when the Flash browser plugin plays a video: the mouse cursor gets hidden after a few seconds of mouse inactivity but CGCursorIsVisible() still keeps telling me that the cursor is indeed shown as if nothing happened.
What I need is to be able to tell, at any given moment, whether the mouse cursor is shown to the end user on any screen on Mac OS X 10.5 and up.
Is there any way to do that even in the case of playing video using the Flash plugin?