fixed problem with distort theme
authorvlad <vlad@vlanout.(none)>
Wed, 18 Aug 2010 19:03:53 +0000 (22:03 +0300)
committervlad <vlad@vlanout.(none)>
Wed, 18 Aug 2010 19:03:53 +0000 (22:03 +0300)
xscreensaver/hacks/distort.c
xscreensaver/utils/grabclient.c

index 4e4c809..28110e9 100644 (file)
@@ -105,6 +105,7 @@ static void generic_draw(struct state *st, XImage *, XImage *, int, int, int *);
 
 static void distort_finish_loading (struct state *);
 
+
 static void *
 distort_init (Display *dpy, Window window)
 {
@@ -116,7 +117,6 @@ distort_init (Display *dpy, Window window)
 
     st->dpy = dpy;
     st->window = window;
-
        st->delay = get_integer_resource(st->dpy, "delay", "Integer");
     st->duration = get_integer_resource (st->dpy, "duration", "Seconds");
        st->radius = get_integer_resource(st->dpy, "radius", "Integer");
@@ -278,12 +278,13 @@ distort_init (Display *dpy, Window window)
        gcv.function = GXcopy;
        gcv.subwindow_mode = IncludeInferiors;
        gcflags = GCFunction;
+
        if (use_subwindow_mode_p(st->xgwa.screen, st->window)) /* see grabscreen.c */
                gcflags |= GCSubwindowMode;
-       st->gc = XCreateGC (st->dpy, st->window, gcflags, &gcv);
+       st->gc = XCreateGC (st->dpy, st->window, gcflags, &gcv);
 
     st->img_loader = load_image_async_simple (0, st->xgwa.screen, st->window,
-                                              st->window, 0, 0);
+                                              st->window, 0, 0); 
     st->start_time = time ((time_t) 0);
     return st;
 }
index 54396c7..e70474d 100644 (file)
@@ -450,9 +450,11 @@ load_random_image_1 (Screen *screen, Window window, Drawable drawable,
 {
   Display *dpy = DisplayOfScreen (screen);
   char *grabber = get_string_resource(dpy, "desktopGrabber", "DesktopGrabber");
+  int  view = 1;
   char *cmd;
-  char id[200];
+  char id[400];
 
+  view = get_integer_resource(dpy, "view", "view");
   if (!grabber || !*grabber)
     {
       fprintf (stderr,
@@ -461,7 +463,7 @@ load_random_image_1 (Screen *screen, Window window, Drawable drawable,
       exit (1);
     }
 
-  sprintf (id, "0x%lx 0x%lx",
+  sprintf (id, "-file /home/user/.backgrounds/background-%i.png 0x%lx 0x%lx", view,
            (unsigned long) window,
            (unsigned long) drawable);
   cmd = (char *) malloc (strlen(grabber) + strlen(id) + 1);