Bug 730377

Summary: [NV98] compiz interferes with xscreensaver (screensaver flashes, etc.)
Product: [Fedora] Fedora Reporter: David A. Wheeler <dwheeler>
Component: compizAssignee: leigh scott <leigh123linux>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 15CC: airlied, ajax, leigh123linux, mcepl, mtasaka
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-09-15 11:02:21 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
/var/log/Xorg.0.log none

Description David A. Wheeler 2011-08-12 17:02:34 UTC
Created attachment 518062 [details]
/var/log/Xorg.0.log

Description of problem:

Xscreensaver does not work when using the "compiz" window manager; Xscreensaver works find when another window manager is used (e.g., twm, metacity, xfwm4).

This is especially important when running XFCE, as gnome-screensaver doesn't work from within XFCE.


Version-Release number of selected component (if applicable):
0.9.4

How reproducible:  Always reproduceable.

Steps to Reproduce:
1. Log in using XFCE
2. Start up compiz, e.g., by running "compiz-manager &" (You can make this happen every time through "Preference/Session and Startup/Application Autostart")
3. Lock screen (e.g., by typing "xflock4" or pressing a "lock screen" action button).
  
Actual results:
XScreensaver behaves very badly: lots of flashes, lower speed, etc.  This is especially obvious for the screensavers is rss-glx-xscreensaver.

Expected results:
Clean screen saver.

Additional info:
If you run the another window manager, e.g., "xfwm4 --replace &", or "twm --replace &", the screensaver works just fine.

As a hack, I have created the following shell script as "fixscreensaver", and have this run as part of my startup session.  It basically notices when xscreensaver is blanking the screen, and switches to another window manager when that happens.  It then switches back to compiz when it unblanks.   It's a nasty hack, but it temporarily solves the problem.  But this shouldn't be necessary, the screensaver should "just work" from compiz.

########################
#!/bin/sh
# Switch from the compiz window manager when xscreensaver is blanking,
# to work around a bug in compiz.
# Inspired by http://jsilva.komodoopenlab.com/blog/archives/187

# Find a working window manager
if [ -z "$OTHER_WM" ] ; then
  for wm in twm metacity xfwm4 ; do
    if which "$wm" > /dev/null ; then
      OTHER_WM="$wm"
    fi
  done
fi

if [ -z "$OTHER_WM" ] ; then
  echo "FAIL! Couldn't find another window manager!"
fi

(
xscreensaver-command -watch | \
while read command; do
  echo "COMMAND=$command"
  case "$command" in
    UNBLANK*)
      # compiz –replace –sm-disable –ignore-desktop-hints ccp –loose-binding &
      compiz-manager &
      ;;
    BLANK*)
      $OTHER_WM --replace &
      # Force restart, so that xscreensaver will run on top of new wm.
      # This is racey, but there's no obvious way to do it otherwise;
      # window managers don't "return" when ready, and there are many to
      # choose from.
      sleep 2
      xscreensaver-command -restart
       ;;
  esac
done
) &
########################


I've attached the contents of /var/log/Xorg.0.log.  I actually don't think this matters, but I'm adding it just in case.

Comment 1 leigh scott 2011-08-12 20:16:13 UTC
Reassigned to xscreensaver

Comment 2 Mamoru TASAKA 2011-08-13 05:56:13 UTC
Switching to X driver.

Comment 3 Matěj Cepl 2011-09-04 00:51:37 UTC
(In reply to comment #2)
> Switching to X driver.

Why? I don't see anything which makes this into Xorg bug. Nor I see the reason to switch it to xscreensaver to be frank.

Reassigning back to compiz.

Comment 4 Matěj Cepl 2011-09-04 00:52:31 UTC
What I mean, is that you have some reasons to reassign, it would be awfully nice, if you write them down here.

Thank you

Comment 5 Mamoru TASAKA 2011-09-04 04:43:33 UTC
Judging to what component I should assign this type of bugs is usually difficult for me. So unless I am very sure that such reported bugs are actually due to xscreensaver bugs I usually once switch the component to X related ones (usually first mesa, next some X drivers, and finally xorg-x11-server if I have no idea) to expect that X maintainers will re-triage such bugs (maybe triage-needed flags or so is useful if available).

Anyway I don't this this is xscreensaver bug, either.

Comment 6 David A. Wheeler 2011-09-05 01:46:51 UTC
I'm guessing that it's a compiz error, since switching from compiz to any other window manager makes the problem go away.  But I don't know exactly what the problem is.

Comment 7 leigh scott 2011-09-14 16:48:24 UTC
Please test compiz-0.9.5.0 from updates-testing as I have no intention of fixing 0.9.4

Comment 8 leigh scott 2011-09-14 17:01:17 UTC
(In reply to comment #6)
> I'm guessing that it's a compiz error, since switching from compiz to any other
> window manager makes the problem go away.  But I don't know exactly what the
> problem is.

IMO you report this to compiz upstream as there support of XFCE has always been poor.

Have you tried enabling gnome intergration in XFCE settings?.
You also neglect to mention which compiz backend you are using i.e gconf or flat-file.

Comment 9 leigh scott 2011-09-15 11:02:21 UTC
(In reply to comment #6)
> I'm guessing that it's a compiz error, since switching from compiz to any other
> window manager makes the problem go away.  But I don't know exactly what the
> problem is.

I can't replicate this issue in F16 so I'm going to close this bug as I suspect it's a configuration issue.


Installed Packages
ccsm.noarch                                0.9.5.0-1.fc16                @fedora
compiz.x86_64                              0.9.5.0-2.fc16                @fedora
compiz-gconf.x86_64                        0.9.5.0-2.fc16                @fedora
compiz-gnome.x86_64                        0.9.5.0-2.fc16                @fedora
compiz-gtk.x86_64                          0.9.5.0-2.fc16                @fedora
compiz-plugins-main.x86_64                 0.9.5.0-2.fc16                @fedora
compizconfig-backend-gconf.x86_64          0.9.5.0-1.fc16                @fedora
compizconfig-python.x86_64                 0.9.5.0-1.fc16                @fedora
fusion-icon.noarch                         0.1.0-0.10.5e2dc9git.fc15     @fedora
fusion-icon-gtk.noarch                     0.1.0-0.10.5e2dc9git.fc15     @fedora
libcompizconfig.x86_64                     0.9.5.0-2.fc16                @fedora
Available Packages