After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 639377 - Allow mutter to draw the background
Allow mutter to draw the background
Status: RESOLVED INVALID
Product: nautilus
Classification: Core
Component: Desktop
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Nautilus Maintainers
Nautilus Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-01-12 22:31 UTC by Sri Ramkrishna
Modified: 2012-05-04 18:25 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sri Ramkrishna 2011-01-12 22:31:53 UTC
I like to propose that nautilus no longer draw the background but rather let mutter draw it.  One limitation we have is that when we let nautilus draw the background we are not able to have unique wallpaper on a workspace.

I don't know if we want to turn off icons on the desktop.  I'd like to have a discussion on what the correct path forward.
Comment 1 Sri Ramkrishna 2011-01-12 22:39:16 UTC
One more thing:
http://mail.gnome.org/archives/nautilus-list/2010-December/msg00022.html

Referencing that link, I think mutter should draw the desktop background.  I'm not sure what the plans are for things like places or anything like that.  But really, having icons on the desktop probably should still be done by nautilus especially for removable storage devices.  

One could argue that we could use persistent notifications as Marina has blogged about but I think it's already expected that a persistent icon for storage show up on the desktop since that is approximately what every other desktop OS is doing.  It might lead to some confusion.  This doesn't mean that we can't remove it later in favor of robust notifications but I think that is going to require more testing than we have time for.
Comment 2 Tomas Bzatek 2011-01-14 10:59:52 UTC
(In reply to comment #1)
> But really, having icons on the desktop probably should still be done by
> nautilus especially for removable storage devices.
There's a plan to support removable storage devices handling directly in shell's Overview. Also, automount and autorun code now lives in gnome-settings-daemon, only opening nautilus windows for the moment (default folder handler). We're still discussing the design.

Having transparent window for desktop sounds like a good idea, I only fear the performance drawback. It's quite large area, multiplied by number of desktops, imagine doing some animation (crossfade to different background image, switching workspaces).

From the technical point of view, background is drawn by GnomeBG class, living in gnome-desktop. At the moment it's shared between nautilus and gnome-settings-daemon, the latter with lower priority and in case of nautilus not running. 

So would be great to modify the code there and only create empty rgba window when mutter is running. With a runtime check when user decides to go to standard mode or mutter crashes, we still need to think about the fallback mode, no compositing mode. No code change would be needed in nautilus and g-s-d then.
Comment 3 Sri Ramkrishna 2011-01-14 17:58:22 UTC
On Fri, Jan 14, 2011 at 2:59 AM, nautilus <bugzilla@gnome.org> wrote:


    (In reply to comment #1)
    > But really, having icons on the desktop probably should still be done by
    > nautilus especially for removable storage devices.
    There's a plan to support removable storage devices handling directly in
    shell's Overview. Also, automount and autorun code now lives in
    gnome-settings-daemon, only opening nautilus windows for the moment (default
    folder handler). We're still discussing the design.


OK, yes I think Owen mentioned that earlier.  Is there a place where you are discussing it eg a wiki link or bugzilla?
 


    Having transparent window for desktop sounds like a good idea, I only fear the
    performance drawback. It's quite large area, multiplied by number of desktops,
    imagine doing some animation (crossfade to different background image,
    switching workspaces).


How is nautilus doing it today?  (Sorry, I haven't looked at nautilus code in like forever and that too I only looked at gnome-vfs)
 

    So would be great to modify the code there and only create empty rgba window
    when mutter is running. With a runtime check when user decides to go to
    standard mode or mutter crashes, we still need to think about the fallback
    mode, no compositing mode. No code change would be needed in nautilus and g-s-d
    then.


OK, so it looks ilke I need to first check that mutter is running.  Do we check that with dbus call?  Or is it something in gnome-session that I need to look at?
Comment 4 Tomas Bzatek 2011-01-17 11:15:34 UTC
(In reply to comment #3)
> OK, yes I think Owen mentioned that earlier.  Is there a place where you are
> discussing it eg a wiki link or bugzilla?

So far only http://live.gnome.org/GnomeShell/Design/Whiteboards/FindingAndReminding plus some discussion on irc.

> How is nautilus doing it today?  (Sorry, I haven't looked at nautilus code in
> like forever and that too I only looked at gnome-vfs)

Nautilus creates its own window on top of the root window, drawing desktop image and widgets on it. No transparency here.

> OK, so it looks ilke I need to first check that mutter is running.  Do we check
> that with dbus call?  Or is it something in gnome-session that I need to look
> at?

There are several way, requires little investigation. Better to talk to mutter developers I guess. For example in gnome-settings-daemon we look for a window of certain name, through XAtoms.
Comment 5 Sri Ramkrishna 2011-01-20 03:43:07 UTC
OK, I'm going to go ahead and talk with the mutter folks.  I've been struggling a little bit getting my build env working well enough that all the components actually work.  Not having a runnable gnome-shell is putting a damper on things.

I hope I will be able to come up with a patch that somewhat works.
Comment 6 Sri Ramkrishna 2011-02-05 06:04:01 UTC
So it seems that I need to check with gnome-settings-daemon to see if gnome-shell is running (assuming gnome-shell runs before nautilus I guess)  

Are you around IRC?
Comment 7 Sri Ramkrishna 2011-02-17 08:16:50 UTC
So I talked to Alex about this..

It seems there is no need to put in a transparent background at this point.  We can probably close this I suspect.
Comment 8 Cosimo Cecchi 2012-05-04 18:25:07 UTC
Closing then - we draw the BG from gnome-settings-daemon these days. Thanks Sri!