Sophie

Sophie

distrib > Fedora > 13 > i386 > media > updates-src > by-pkgid > 0cdec56639f2a904ef05176fefb93723 > files > 3

python-virtinst-0.500.4-2.fc13.src.rpm

diff -rup virtinst-0.500.4/virtinst/cli.py new/virtinst/cli.py
--- virtinst-0.500.4/virtinst/cli.py	2011-03-29 17:28:44.519612002 -0400
+++ new/virtinst/cli.py	2011-03-29 17:27:49.611612002 -0400
@@ -769,11 +769,13 @@ def get_graphics(vnc, vncport, vnclisten
         guest.add_device(VirtualVideoDevice(conn=guest.conn))
 
     if sdl is not None:
-        guest.graphics_dev = VirtualGraphics(type=VirtualGraphics.TYPE_SDL)
+        guest.graphics_dev = VirtualGraphics(conn=guest.conn,
+                                             type=VirtualGraphics.TYPE_SDL)
         return
 
     if vnc is not None:
-        guest.graphics_dev = VirtualGraphics(type=VirtualGraphics.TYPE_VNC)
+        guest.graphics_dev = VirtualGraphics(conn=guest.conn,
+                                             type=VirtualGraphics.TYPE_VNC)
         if vncport:
             guest.graphics_dev.port = vncport
         if vnclisten:
diff -rup virtinst-0.500.4/virtinst/VirtualGraphics.py new/virtinst/VirtualGraphics.py
--- virtinst-0.500.4/virtinst/VirtualGraphics.py	2010-08-23 15:24:44.000000000 -0400
+++ new/virtinst/VirtualGraphics.py	2011-03-29 17:28:27.291611998 -0400
@@ -33,9 +33,11 @@ class VirtualGraphics(VirtualDevice.Virt
     TYPE_VNC = "vnc"
 
     KEYMAP_LOCAL = "local"
+    KEYMAP_DEFAULT = "default"
+    _special_keymaps = [KEYMAP_LOCAL, KEYMAP_DEFAULT]
 
     def __init__(self, type=TYPE_VNC, port=-1, listen=None, passwd=None,
-                 keymap=None, conn=None):
+                 keymap=KEYMAP_DEFAULT, conn=None):
 
         VirtualDevice.VirtualDevice.__init__(self, conn=conn)
 
@@ -66,19 +68,23 @@ class VirtualGraphics(VirtualDevice.Virt
     type = property(get_type)
 
     def get_keymap(self):
+        if self._keymap == self.KEYMAP_DEFAULT:
+            return self._default_keymap()
+        if self._keymap == self.KEYMAP_LOCAL:
+            return _util.default_keymap()
         return self._keymap
     def set_keymap(self, val):
-        if not val:
-            val = self._default_keymap()
-
+        # At this point, 'None' is a valid value
         if val == None:
-            # At this point, 'None' is a valid value
+            self._keymap = None
+            return
+
+        if val in self._special_keymaps:
             self._keymap = val
             return
 
-        if type(val) != type("string"):
+        if type(val) is not str:
             raise ValueError, _("Keymap must be a string")
-
         if val.lower() == self.KEYMAP_LOCAL:
             val = _util.default_keymap()
         elif len(val) > 16:
@@ -145,7 +151,7 @@ class VirtualGraphics(VirtualDevice.Virt
         listenxml = ""
         passwdxml = ""
         if self.keymap:
-            keymapxml = " keymap='%s'" % self._keymap
+            keymapxml = " keymap='%s'" % self.keymap
         if self.listen:
             listenxml = " listen='%s'" % self._listen
         if self.passwd: