[hackers] [dwm] added TODO to updategeom in order to implement a decent version of it soon || Anselm R Garbe

From: <hg_AT_suckless.org>
Date: Sat, 19 Sep 2009 09:52:18 +0000 (UTC)

changeset: 1493:20bd305fa7aa
tag: tip
user: Anselm R Garbe <anselm_AT_garbe.us>
date: Sat Sep 19 11:52:16 2009 +0100
files: dwm.c
description:
added TODO to updategeom in order to implement a decent version of it soon

diff -r 62a601261c8b -r 20bd305fa7aa dwm.c
--- a/dwm.c Fri Sep 18 21:18:00 2009 +0100
+++ b/dwm.c Sat Sep 19 11:52:16 2009 +0100
@@ -1699,6 +1699,40 @@
         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;
Received on Sat Sep 19 2009 - 09:52:18 UTC

This archive was generated by hypermail 2.2.0 : Sat Sep 19 2009 - 10:00:11 UTC