Bug 229113

Summary: compiz session management conflicts with desktop-effects
Product: [Fedora] Fedora Reporter: drago01
Component: compizAssignee: Kristian Høgsberg <krh>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 6CC: rstrode, sandmann
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-10-27 10:07:01 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
patch from gandalfn none

Description drago01 2007-02-17 09:45:09 UTC
Description of problem:

When I switch between compiz <> metacity more than 2 times its not possible to
start metacity without a X restart because compiz keeps getting started from
gnome-session (replaces metacity).

The patch from gandalfn fixes this for me. 

Is it possible to include this in the fedora rpms?
(works fine for me)

Comment 1 drago01 2007-02-17 09:45:10 UTC
Created attachment 148266 [details]
patch from gandalfn

Comment 2 Matthias Clasen 2007-03-25 13:04:14 UTC
Does this work correctly ? We do want compiz to be restarted immediately if it
crashes...



Comment 3 Ray Strode [halfline] 2007-03-26 14:20:57 UTC
So this probably broke from fixing bug 200280.

The fix doesn't look right though.  The desktop-effects capplet should invoke
metacity and compiz with the --replace arguments.  Compiz should notice that
it's getting replaced when the capplet does "metacity --replace" and then
unregister itself with the session-manager before exiting.

Comment 4 Matthias Clasen 2007-03-26 16:15:00 UTC
yeah, thats the right fix.

Comment 5 drago01 2007-03-26 19:24:28 UTC
how is this done in metacity? (where in the code / which file)

Comment 6 Ray Strode [halfline] 2007-03-26 19:47:54 UTC
The window manager that's currently running for a screen takes ownership over a
well known named selection (WM_Sn where n is a screen number).

When it gets a SelectionClear event for that selection it's responsible for exiting.

If you look in display.c in the event_callback function it handles the
SelectionClear event by calling process_selection_clear which calls
meta_display_unmanage_screen.  After all the screens are no longer managed by
metacity (which would happen when compiz --replace is called) then metacity
calls meta_quit () (from the meta_display_close function).   meta_quit makes the
event loop that's run in main() return, so then meta_session_shutdown () gets
called.  meta_session_shutdown tells the sesion manager not to restart metacity
after it exits.

Comment 7 Kristian Høgsberg 2007-03-29 02:05:07 UTC
I added this patch to the RPM:

  http://lists.freedesktop.org/archives/compiz/2007-March/001748.html

I believe it's the right fix, but please give it a spin.


Comment 8 drago01 2007-04-05 13:36:44 UTC
(In reply to comment #7)
> I added this patch to the RPM:
> 
>   http://lists.freedesktop.org/archives/compiz/2007-March/001748.html
> 
> I believe it's the right fix, but please give it a spin.
> 

Is it possible to update the compiz to 0.5.0 ?
http://xorg.freedesktop.org/archive/individual/app/compiz-0.5.0.tar.bz2
(there is no link on the hp yet but its released) , should include the session
fix + others.


Comment 9 Matthias Clasen 2007-04-05 18:55:44 UTC
We are already in feature freeze, and 0.5.0 does not look like a bugfix-only
release. So we are probably going to wait until after F7 and put it out as an
update with sufficient time in updates-testing.

Comment 10 drago01 2007-04-06 09:56:28 UTC
(In reply to comment #9)
> We are already in feature freeze, and 0.5.0 does not look like a bugfix-only
> release. So we are probably going to wait until after F7 and put it out as an
> update with sufficient time in updates-testing.
ok

the session fix in head does not work (same bug ) ....

Comment 11 Kristian Høgsberg 2007-09-20 20:18:12 UTC
Hey, this one is fixed, right?


Comment 12 drago01 2007-09-21 11:42:27 UTC
yes confirmed it works fine with the current version in rawhide.