excerpts from my local tree, part 1

tree 934f5ca86a1b
parent f7f1e8f8f287
author Tamas TEVESZ <[email protected]> 1230230349 -3600
committer Tamas TEVESZ <[email protected]> 1230230349 -3600
revision 1616
branch ice

Apply http://iain.cx/wm/patches/wmsetbg-xinerama/0.92.0/wmsetbg-xinerama.diff

 Allows wmsetbg to revert to pre-0.90.0 behaviour when choosing a background
 image that is large enough to span several heads in a Xinerama setup. If
 the -X flag is passed to wmsetbg, the background image will be stretched to
 fill the logical screen (as it would be by default in older versions of
 wmsetbg) instead of the new behaviour of being tiled across screens. This
 option only has effect if wmsetbg is compiled with XINERAMA #defined.

the manpage is hopelessly out of date, so no update to that for now
diff --git a/util/wmsetbg.c b/util/wmsetbg.c
--- a/util/wmsetbg.c
+++ b/util/wmsetbg.c
@@ -82,6 +82,9 @@
 WXineramaInfo xineInfo;
 
 Bool smooth = False;
+#ifdef XINERAMA
+Bool xineStretch = False;
+#endif
 
 
 Pixmap CurrentPixmap = None;
@@ -566,7 +569,7 @@
                 texture->height = scrHeight;
 
 #ifdef XINERAMA
-                if (xineInfo.count) {
+                if (xineInfo.count && ! xineStretch) {
                     int i;
                     for (i=0; i<xineInfo.count; ++i) {
                         applyImage(rc, texture, image, type[0],
@@ -1284,6 +1287,9 @@
     P(" -d, --dither                   dither image");
     P(" -m, --match                    match  colors");
     P(" -S, --smooth                   smooth scaled image");
+#ifdef XINERAMA
+    P(" -X, --xinerama                 stretch image across Xinerama heads");
+#endif
     P(" -b, --back-color <color>       background color");
     P(" -t, --tile                     tile   image");
     P(" -e, --center                   center image");
@@ -1401,6 +1407,11 @@
         } else if (strcmp(argv[i], "-S")==0
                    || strcmp(argv[i], "--smooth")==0) {
             smooth = True;
+#ifdef XINERAMA
+        } else if (strcmp(argv[i], "-X")==0
+                   || strcmp(argv[i], "--xinerama")==0) {
+            xineStretch = True;
+#endif
         } else if (strcmp(argv[i], "-u")==0
                    || strcmp(argv[i], "--update-wmaker")==0) {
             update++;

-- 
[-]

mkdir /nonexistent


-- 
To unsubscribe, send mail to [email protected].

Reply via email to