Skip to content
This repository has been archived by the owner on Oct 4, 2018. It is now read-only.

Commit

Permalink
added TODO to updategeom in order to implement a decent version of it…
Browse files Browse the repository at this point in the history
… soon
  • Loading branch information
garbeam committed Sep 19, 2009
1 parent fb559cd commit 2d6b11b
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions dwm.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down

0 comments on commit 2d6b11b

Please sign in to comment.