** Description changed:

  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 (I
- don't know anything about the Vino code, so I'm just making up
- function/variable names):
+ should happen, starting with no one connected and wallpaper enabled
+ (although if a use 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>

-- 
Problems with Vino's "Disable the wallpaper when connected" option
https://bugs.launchpad.net/bugs/266932
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to