All pastes #727784 Raw Edit

Unbenannt

public text v1 · immutable
·published 2007-10-06 11:40 UTC
rendered paste body
diff --git a/src/event.c b/src/event.c
index 17dc978..cbf12ba 100644
--- a/src/event.c
+++ b/src/event.c
@@ -1932,10 +1932,20 @@ handleEvent (CompDisplay *d,
 
 	    moveResizeWindow (w, &xwc, event->xconfigurerequest.value_mask, 0);
 
+	    printf("ConfigureRequest for %d (%s), mask %x, coords %d %d %d %d, sibling %d, detail %d\n",
+		   w->id, w->resName, event->xconfigurerequest.value_mask, xwc.x, xwc.y, xwc.width,
+		   xwc.height, event->xconfigurerequest.above, event->xconfigurerequest.detail);
+
 	    if (event->xconfigurerequest.value_mask & CWStackMode)
 	    {
-		Window     above = event->xconfigure.above;
-		CompWindow *sibling = findWindowAtDisplay (d, above);
+		Window     above = None;
+		CompWindow *sibling = NULL;
+
+		if (event->xconfigurerequest.value_mask & CWSibling)
+		{
+		    above   = event->xconfigurerequest.above;
+		    sibling = findTopLevelWindowAtDisplay (d, above);
+		}
 
 		switch (event->xconfigurerequest.detail) {
 		case Above:
diff --git a/src/window.c b/src/window.c
index bbcdbeb..96a1297 100644
--- a/src/window.c
+++ b/src/window.c
@@ -3166,6 +3166,7 @@ findLowestSiblingBelow (CompWindow *w)
 	switch (type) {
 	case CompWindowTypeDesktopMask:
 	    /* desktop window layer */
+	    return NULL;
 	    break;
 	case CompWindowTypeFullscreenMask:
 	case CompWindowTypeDockMask: