diff options
| author | Anselm R Garbe <anselm@garbe.us> | 2009-09-19 11:52:16 +0100 | 
|---|---|---|
| committer | Anselm R Garbe <anselm@garbe.us> | 2009-09-19 11:52:16 +0100 | 
| commit | f0a4845e7dec3a4c7316311fcf1108148bb29730 (patch) | |
| tree | b055a57a06759c7d959b0a7a17e8c23e18397bab | |
| parent | 82ec7a7ed4f3ba376faadfc2aca783b24618575f (diff) | |
| download | dwm-f0a4845e7dec3a4c7316311fcf1108148bb29730.tar.gz | |
added TODO to updategeom in order to implement a decent version of it soon
| -rw-r--r-- | dwm.c | 34 | 
1 files changed, 34 insertions, 0 deletions
| @@ -1699,6 +1699,40 @@ updategeom(void) {  	Client *c;  	Monitor *newmons = NULL, *m = NULL, *tm; +	/* TODO: +	 * This function needs to be seriously re-designed: +	 * +	 * #ifdef XINERAMA +	 * 1. Determine number of already existing monitors n +	 * 2. Determine number of monitors Xinerama reports nn +	 * 3. if(n <= nn) { +	 *       if(n < nn) { +	 *          append nn-n monitors to current struct +	 *          flag dirty +	 *       } +	 *       for(i = 0; i < nn; i++) { +	 *           if(oldgeom != newgeom) { +	 *               apply newgeom; +	 *               flag dirty; +	 *           } +	 *       } +	 *    } +	 *    else { +	 *       detach all clients +	 *       destroy current monitor struct +	 *       create new monitor struct  +	 *       attach all clients to first monitor +	 *       flag dirty; +	 *    } +	 *    return dirty flag to caller +	 *        if dirty is seen by caller: +	 *           re-arrange bars/pixmaps +	 *           arrange() +	 * #else +	 *    don't share between XINERAMA and non-XINERAMA handling if it gets +	 *    too ugly +	 * #endif +	 */  #ifdef XINERAMA  	XineramaScreenInfo *info = NULL;  	Bool *flags = NULL; | 
