svoid stackWindowsUpwardsInBottomRightCorner(L l) { L windows = map getWindow(l); if (empty(windows)) ret; moveToBottomRightCorner(first(windows)); int yGap = 20; for (Pair p : listToOverlappingPairs(windows)) { Rect ra = toRect(getBounds(p.a)); Rect rb = toRect(getBounds(p.b)); setBounds(p.b, ra.x2()-rb.w, ra.y-yGap-rb.h, rb.w, rb.h); } }