[gnome-boxes] Also save libvirt display config



commit 85909ee4342089c585c8beececd542bbd08ef82e
Author: Marc-Andrà Lureau <marcandre lureau gmail com>
Date:   Thu Nov 3 20:50:50 2011 +0100

    Also save libvirt display config

 src/libvirt-machine.vala |    5 +++--
 src/spice-display.vala   |    4 +++-
 src/vnc-display.vala     |    9 +++++++--
 3 files changed, 13 insertions(+), 5 deletions(-)
---
diff --git a/src/libvirt-machine.vala b/src/libvirt-machine.vala
index beddb25..dc0c13c 100644
--- a/src/libvirt-machine.vala
+++ b/src/libvirt-machine.vala
@@ -66,6 +66,7 @@ private class Boxes.LibvirtMachine: Boxes.Machine {
                            GVir.Connection connection, GVir.Domain domain) {
         base (source, app, domain.get_name ());
 
+        this.config = new DisplayConfig (source, domain.get_uuid ());
         this.connection = connection;
         this.domain = domain;
 
@@ -113,11 +114,11 @@ private class Boxes.LibvirtMachine: Boxes.Machine {
 
         switch (type) {
         case "spice":
-            display = new SpiceDisplay (host, int.parse (port));
+            display = new SpiceDisplay (config, host, int.parse (port));
             break;
 
         case "vnc":
-            display = new VncDisplay (host, int.parse (port));
+            display = new VncDisplay (config, host, int.parse (port));
             break;
 
         default:
diff --git a/src/spice-display.vala b/src/spice-display.vala
index d242b80..e66e13e 100644
--- a/src/spice-display.vala
+++ b/src/spice-display.vala
@@ -32,7 +32,9 @@ private class Boxes.SpiceDisplay: Boxes.Display, Boxes.IProperties {
         });
     }
 
-    public SpiceDisplay (string host, int port) {
+    public SpiceDisplay (DisplayConfig config, string host, int port) {
+        this.config = config;
+
         session.port = port.to_string ();
         session.host = host;
     }
diff --git a/src/vnc-display.vala b/src/vnc-display.vala
index ebf8fb6..f5d0f0c 100644
--- a/src/vnc-display.vala
+++ b/src/vnc-display.vala
@@ -68,16 +68,21 @@ private class Boxes.VncDisplay: Boxes.Display {
 
             display.close ();
         });
+
+        this.notify["config"].connect (() => {
+            sync_config_with_display (display, saved_properties);
+        });
     }
 
-    public VncDisplay (string host, int port) {
+    public VncDisplay (DisplayConfig config, string host, int port) {
+        this.config = config;
+
         this.host = host;
         this.port = port;
     }
 
     public VncDisplay.with_uri (DisplayConfig config, string _uri) throws Boxes.Error {
         this.config = config;
-        sync_config_with_display (display, saved_properties);
 
         var uri = Xml.URI.parse (_uri);
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]