eqemu

diff src/main.cc @ 11:2b559dc24c7b

done
author John Tsiombikas <nuclear@member.fsf.org>
date Fri, 18 Jul 2014 05:44:37 +0300
parents fca1f126d23b
children 2656099aff12
line diff
     1.1 --- a/src/main.cc	Fri Jul 18 05:07:40 2014 +0300
     1.2 +++ b/src/main.cc	Fri Jul 18 05:44:37 2014 +0300
     1.3 @@ -19,6 +19,7 @@
     1.4  	GLOW_PASS
     1.5  };
     1.6  
     1.7 +void post_redisplay();
     1.8  static bool init();
     1.9  static void cleanup();
    1.10  static void display();
    1.11 @@ -109,6 +110,11 @@
    1.12  	return 0;
    1.13  }
    1.14  
    1.15 +void post_redisplay()
    1.16 +{
    1.17 +	draw_pending = true;
    1.18 +}
    1.19 +
    1.20  static bool init()
    1.21  {
    1.22  	if(fake_devpath) {
    1.23 @@ -509,7 +515,7 @@
    1.24  
    1.25  	unsigned int evmask = StructureNotifyMask | VisibilityChangeMask | ExposureMask |
    1.26  		KeyPressMask | KeyReleaseMask | ButtonPressMask | ButtonReleaseMask |
    1.27 -		PointerMotionMask;
    1.28 +		PointerMotionMask | LeaveWindowMask;
    1.29  	XSelectInput(dpy, win, evmask);
    1.30  
    1.31  	xa_wm_prot = XInternAtom(dpy, "WM_PROTOCOLS", False);
    1.32 @@ -600,6 +606,13 @@
    1.33  			}
    1.34  			break;
    1.35  
    1.36 +		case LeaveNotify:
    1.37 +			if(ev.xcrossing.mode == NotifyNormal) {
    1.38 +				cam_theta = cam_phi = 0;
    1.39 +				draw_pending = true;
    1.40 +			}
    1.41 +			break;
    1.42 +
    1.43  		default:
    1.44  			break;
    1.45  		}