Package: xscreensaver
Version: 5.03-2
Followup-For: Bug #428797

    I have also an xscreensaver showing hacks only on part of the
    screen. The cause is the following: when xscreensaver looks for the
    Xinerama screen, it does not check whether the screen is on or off.
    It should check for that information using RandR when available. It
    is too difficult for me. I propose the following hack to solve the
    problem, even though I know that this is not the best. I think it
    should not break anything and it is rather clear that it is not the
    best possible fix. Aaaaanyway.

----8<-------8<-------8<-------8<-------8<----
diff -c xscreensaver-5.03/driver/windows.c 
xscreensaver-5.03-perso/driver/windows.c
*** xscreensaver-5.03/driver/windows.c  Mon Apr  2 00:02:31 2007
--- xscreensaver-5.03-perso/driver/windows.c    Fri Nov  2 16:27:30 2007
***************
*** 1044,1060 ****
          {
            target_x = ssi->x;
            target_y = ssi->y;
          }
  
        /* Find the Xinerama rectangle that contains the mouse position. */
!       for (i = 0; i < si->nscreens; i++)
!         {
!           if (target_x >= si->screens[i].x &&
!               target_y >= si->screens[i].y &&
!               target_x <  si->screens[i].x + si->screens[i].width &&
!               target_y <  si->screens[i].y + si->screens[i].height)
!             which = i;
!         }
        if (which == -1) which = 0;  /* didn't find it?  Use the first. */
        *x_ret = si->screens[which].x;
        *y_ret = si->screens[which].y;
--- 1044,1070 ----
          {
            target_x = ssi->x;
            target_y = ssi->y;
+         /* Look if a screen is exactly our ssi */
+         for (i = 0; i < si->nscreens; i++)
+           {
+             if (target_x == si->screens[i].x &&
+                 target_y == si->screens[i].y &&
+                 w == si->screens[i].width &&
+                 h == si->screens[i].height)
+               which = i;
+           }
          }
  
        /* Find the Xinerama rectangle that contains the mouse position. */
!       if (which == -1)
!         for (i = 0; i < si->nscreens; i++)
!           {
!             if (target_x >= si->screens[i].x &&
!                 target_y >= si->screens[i].y &&
!                 target_x <  si->screens[i].x + si->screens[i].width &&
!                 target_y <  si->screens[i].y + si->screens[i].height)
!               which = i;
!           }
        if (which == -1) which = 0;  /* didn't find it?  Use the first. */
        *x_ret = si->screens[which].x;
        *y_ret = si->screens[which].y;
----8<-------8<-------8<-------8<-------8<----

-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.22.1 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages xscreensaver depends on:
ii  libatk1.0-0                1.20.0-1      The ATK accessibility toolkit
ii  libc6                      2.6.1-1       GNU C Library: Shared libraries
ii  libcairo2                  1.4.10-1+b2   The Cairo 2D vector graphics libra
ii  libfontconfig1             2.4.2-1.2     generic font configuration library
ii  libglade2-0                1:2.6.2-1     library to load .glade files at ru
ii  libglib2.0-0               2.14.1-5      The GLib library of C routines
ii  libgtk2.0-0                2.10.13-1     The GTK+ graphical user interface 
ii  libice6                    2:1.0.4-1     X11 Inter-Client Exchange library
ii  libjpeg62                  6b-14         The Independent JPEG Group's JPEG 
ii  libpam0g                   0.99.7.1-5    Pluggable Authentication Modules l
ii  libpango1.0-0              1.18.2-1      Layout and rendering of internatio
ii  libsm6                     2:1.0.3-1+b1  X11 Session Management library
ii  libx11-6                   2:1.0.3-7     X11 client-side library
ii  libxcursor1                1:1.1.9-1     X cursor management library
ii  libxext6                   1:1.0.3-2     X11 miscellaneous extension librar
ii  libxfixes3                 1:4.0.3-2     X11 miscellaneous 'fixes' extensio
ii  libxi6                     2:1.1.3-1     X11 Input extension library
ii  libxinerama1               1:1.0.2-1     X11 Xinerama extension library
ii  libxml2                    2.6.30.dfsg-2 GNOME XML library
ii  libxmu6                    1:1.0.3-1     X11 miscellaneous utility library
ii  libxpm4                    1:3.5.7-1     X11 pixmap library
ii  libxrandr2                 2:1.2.2-1     X11 RandR extension library
ii  libxrender1                1:0.9.4-1     X Rendering Extension client libra
ii  libxt6                     1:1.0.5-3     X11 toolkit intrinsics library
ii  libxxf86misc1              1:1.0.1-2     X11 XFree86 miscellaneous extensio
ii  libxxf86vm1                1:1.0.1-2     X11 XFree86 video mode extension l
ii  netpbm                     2:10.0-11     Graphics conversion tools

Versions of packages xscreensaver recommends:
ii  libjpeg-progs          6b-14             Programs for manipulating JPEG fil
ii  perl [perl5]           5.8.8-11.1        Larry Wall's Practical Extraction 
ii  wamerican [wordlist]   6-2.1             American English dictionary words 
ii  wfrench [wordlist]     1.2.3-1           French dictionary words for /usr/s
ii  xli                    1.17.0+20061110-1 command line tool for viewing imag

-- no debconf information



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to