X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=hacks%2Fslidescreen.c;h=ff5a29603097fec4669fe722d9888c7d9afb5a8d;hb=2d04c4f22466851aedb6ed0f2919d148f726b889;hp=69f67df6a51174671f943ebf83cd3ab3c58e6f82;hpb=585e1a6717d1dd9b90fbb53acaaae82106354d33;p=xscreensaver diff --git a/hacks/slidescreen.c b/hacks/slidescreen.c index 69f67df6..ff5a2960 100644 --- a/hacks/slidescreen.c +++ b/hacks/slidescreen.c @@ -1,5 +1,4 @@ -/* xscreensaver, Copyright (c) 1992, 1993, 1994, 1996, 1997, 1998 - * Jamie Zawinski +/* xscreensaver, Copyright (c) 1992-2005 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -36,7 +35,7 @@ init_slide (Display *dpy, Window window) Visual *visual; XGetWindowAttributes (dpy, window, &xgwa); - grab_screen_image (xgwa.screen, window); + load_random_image (xgwa.screen, window, window, NULL, NULL); cmap = xgwa.colormap; visual = xgwa.visual; max_width = xgwa.width; @@ -48,6 +47,12 @@ init_slide (Display *dpy, Window window) pix_inc = get_integer_resource ("pixelIncrement", "Integer"); border = get_integer_resource ("internalBorderWidth", "InternalBorderWidth"); + /* Don't let the grid be smaller than 3x3 */ + if (grid_size > xgwa.width / 3) + grid_size = xgwa.width / 3; + if (grid_size > xgwa.height / 3) + grid_size = xgwa.height / 3; + { XColor fgc, bgc; char *fgs = get_string_resource("background", "Background"); @@ -92,7 +97,7 @@ init_slide (Display *dpy, Window window) for(i = 0; i < max; i++) { long rd, gd, bd; - unsigned long d; + unsigned long dd; if (!fg_ok) { rd = (all[i].red >> 8) - (fgc.red >> 8); @@ -101,12 +106,12 @@ init_slide (Display *dpy, Window window) if (rd < 0) rd = -rd; if (gd < 0) gd = -gd; if (bd < 0) bd = -bd; - d = (rd << 1) + (gd << 2) + bd; - if (d < fgd) + dd = (rd << 1) + (gd << 2) + bd; + if (dd < fgd) { - fgd = d; + fgd = dd; fg = all[i].pixel; - if (d == 0) + if (dd == 0) fg_ok = True; } } @@ -119,12 +124,12 @@ init_slide (Display *dpy, Window window) if (rd < 0) rd = -rd; if (gd < 0) gd = -gd; if (bd < 0) bd = -bd; - d = (rd << 1) + (gd << 2) + bd; - if (d < bgd) + dd = (rd << 1) + (gd << 2) + bd; + if (dd < bgd) { - bgd = d; + bgd = dd; bg = all[i].pixel; - if (d == 0) + if (dd == 0) bg_ok = True; } }