From http://www.jwz.org/xscreensaver/xscreensaver-5.22.tar.gz
[xscreensaver] / hacks / kaleidescope.c
index 8c727317e19a63b369e97ae8e74ea6330fd6045e..f260360d251397e1eb93ddae575443e687b72573 100644 (file)
@@ -84,6 +84,7 @@ struct state {
 static const char *kaleidescope_defaults [] = {
   ".background:             black",
   ".foreground:             white",
+  "*fpsSolid:       true",
   "*color_mode:      nice",
   "*symmetry:         11",
   "*ntrails:         100",
@@ -99,6 +100,9 @@ static const char *kaleidescope_defaults [] = {
   "*greenrange:     20000",
   "*bluemin:        30000",
   "*bluerange:      20000",
+#ifdef USE_IPHONE
+  "*ignoreRotation: True",
+#endif
   0
 };
 
@@ -125,14 +129,11 @@ static XrmOptionDescRec kaleidescope_options [] = {
 static void
 krandom_color(GLOBAL *g, XColor *color)
 {
-  int r;
-  r = random() % 3;
-
   if((g->color_mode == 0) || (g->color_mode == 1)) {
 
-    color->blue  = ((r = random()) % g->bluerange) + g->bluemin;
-    color->green = ((r = random()) % g->greenrange) + g->greenmin;
-    color->red   = ((r = random()) % g->redrange) + g->redmin;
+    color->blue  = (random() % g->bluerange)  + g->bluemin;
+    color->green = (random() % g->greenrange) + g->greenmin;
+    color->red   = (random() % g->redrange)   + g->redmin;
 
     if(!XAllocColor(g->dpy, g->cmap, color)) {
       color->pixel = g->default_fg_pixel;
@@ -228,10 +229,10 @@ init_ksegment (GLOBAL *g, OBJECT *obj)
 {
 
   /* Give the segment some random values */
-  ((Ksegment *)obj->cur)->x1 = random() % g->xoff;
-  ((Ksegment *)obj->cur)->y1 = random() % g->yoff;
-  ((Ksegment *)obj->cur)->x2 = random() % g->xoff;
-  ((Ksegment *)obj->cur)->y2 = random() % g->yoff;
+  ((Ksegment *)obj->cur)->x1 = (g->xoff ? random() % g->xoff : 0);
+  ((Ksegment *)obj->cur)->y1 = (g->yoff ? random() % g->yoff : 0);
+  ((Ksegment *)obj->cur)->x2 = (g->xoff ? random() % g->xoff : 0);
+  ((Ksegment *)obj->cur)->y2 = (g->yoff ? random() % g->yoff : 0);
 }