Problems with Vino's "Disable the wallpaper when connected" option

Bug #266932 reported by Cyphase on 2008-09-05
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
vino (Ubuntu)
Undecided
Unassigned

Bug Description

Binary package hint: vino

Vino 2.23.91-0ubuntu1 on Intrepid

As far as I can tell, this isn't a programming error, it's a logic error. I have a separate computer running Intrepid, on which Vino is configured to disable the wallpaper if someone is connected. I VNC'ed into it, and the wallpaper was disabled. Then, to try out the latest Vinagre, I VNC'ed from the Intrepid system to the Intrepid system. At this point both my main system and the Intrepid system are VNC'ed into the Intrepid system. When I closed Vinagre on the Intrepid system, Vino restored the wallpaper. Obviously, this isn't the preferred behavior. It should keep it disabled as long as anyone is connected. I tried disabling the "Disable the wallpaper when connected" option, then re-enabling it, but the wallpaper still showed. When I disconnected then reconnected, it hid the wallpaper, and would not show it if I disabled the hide wallpaper option. Also, if I connect, which causes the wallpaper to be disabled, then disable the hide wallpaper option and disconnect, it doesn't re-enable the wallpaper. Here's how I think it should happen, starting with no one connected and wallpaper enabled (although if a user has manually disabled their wallpaper, the below "code" would handle it) (I don't know anything about the Vino code, so I'm just making up function/variable names):

<code>

vinoDisabledWallpaper = false # default value

def ConnectionEstablished(...):
 ...
 if GConf("/desktop/gnome/remote_access/disable_background") == true: # If Vino is set to disable the background
  if IsWallpaperAlreadyDisabled() == true: # If wallpaper is already disabled by the user
   return # Than it's already disabled
  else:
   DisableWallpaper()
   vinoDisabledWallpaper = true # So you know it was disabled by Vino, and not by the user.
         # You wouldn't want to enable the wallpaper if the user had manually disabled it.

def ConnectionTerminated(...):
 ...
 if IsAnyoneConnected() == false && isWallpaperDisabled = true: # If no one is still connected and
              # Vino disabled the wallpaper
  EnableWallpaper() # Even if (especially if) someone disabled the hide wallpaper option, it should enable the wallpaper

def EnableHideWallpaperOption(...): # Enabling the "Disable the wallpaper when connected" option
 ...
 if IsAnyoneConnected() == true: # If someone is connected
  if IsWallpaperAlreadyDisabled() == true: # If wallpaper is already disabled by the user
   return # Than it's already disabled
  else:
   DisableWallpaper()
   vinoDisabledWallpaper = true # So you know it was disabled by Vino, and not by the user.
         # You wouldn't want to enable the wallpaper if the user had manually disabled it.

def DisableHideWallpaperOption(...): # Disabling the "Disable the wallpaper when connected" option
 ...
 if vinoDisabledWallpaper == true:
  EnableWallpaper()
  vinoDisabledWallpaper = false

</code>

Related branches

Cyphase (cyphase) on 2008-09-05
description: updated
Cyphase (cyphase) on 2008-09-05
description: updated
Jonh Wendell (wendell) wrote :

Thanks for point this out. I just committed the fix upstream. It will be available in 2.24.1 tarball.

Changed in vino:
status: New → Fix Committed
Didier Roche (didrocks) wrote :

Update in progress :)

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package vino - 2.24.1-0ubuntu1

---------------
vino (2.24.1-0ubuntu1) intrepid; urgency=low

  * New upstream version (LP: #286555)
    - Propagates port changes via avahi. (LP: #264315)
    - Update label in vino-preferences when the port changes.
    - Hopefully fix an window empty bug
    - Only restore the wallpaper when the last client disconnects.
      (LP: #266932)
    - Updated translations: ar, be@latin, bg, it

 -- Didier Roche <email address hidden> Mon, 20 Oct 2008 20:40:59 +0200

Changed in vino:
status: Fix Committed → Fix Released
Florin Ivan (florica76) wrote :

I has the same problem with vino

realG187 (gamesharkmike) wrote :

I used that option and my wallpaper is gone! I cannot get it back, even after disabling that option!

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers