• Sam Lantinga's avatar
    Date: Thu, 17 Apr 2003 23:27:34 -0400 · b28b2bb4
    Sam Lantinga authored
    From: Darrell Walisser
    Subject: Yet another OS X cursor bug
    
    The synopsis:
    
    1. Call SDL_ShowCursor(0);
    2. Call SDL_SetVideoMode();
    3. Call SDL_GetEvent();
    3. Call SDL_ShowCursor(1);
    
    The result: Sometimes the cursor doesn't come back! Ack! Oddly enough,
    it does come back when mousing over the dock or clicking in the menu
    bar. But that's besides the point.
    
    The reason why this is happening is a flaw in the handling of
    activation/deactivation events. The short explanation is that the
    HideCursor() and ShowCursor() calls must be balanced, but if the cursor
    was initially hidden, HideCursor() was called again on the activate
    event - so now the next ShowCursor() fails (as does the next, and the
    next, for some reason).
    
    So, here's the patch. All it does is keep track of the
    HideCursor()/ShowCursor() calls so that they will always be balanced.
    
    --HG--
    extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%40616
    b28b2bb4
Name
Last commit
Last update
..
audio Loading commit data...
cdrom Loading commit data...
endian Loading commit data...
events Loading commit data...
file Loading commit data...
hermes Loading commit data...
joystick Loading commit data...
main Loading commit data...
thread Loading commit data...
timer Loading commit data...
video Loading commit data...
.cvsignore Loading commit data...
Makefile.am Loading commit data...
SDL.c Loading commit data...
SDL_error.c Loading commit data...
SDL_error_c.h Loading commit data...
SDL_fatal.c Loading commit data...
SDL_fatal.h Loading commit data...
SDL_getenv.c Loading commit data...
SDL_loadso.c Loading commit data...
SDL_loadso.h Loading commit data...