Keep same order of shortcut keys list. 1.1.0.20090508
authorPeng Huang <shawn.p.huang@gmail.com>
Fri, 8 May 2009 06:25:12 +0000 (14:25 +0800)
committerPeng Huang <shawn.p.huang@gmail.com>
Fri, 8 May 2009 06:25:12 +0000 (14:25 +0800)
setup/keyboardshortcut.py
setup/main.py

index 7d190ac..d0ba855 100644 (file)
@@ -127,12 +127,16 @@ class KeyboardShortcutSelection(gtk.VBox):
             shortcuts = []
         model = self.__shortcut_view.get_model()
         model.clear()
+
+        added = []
         for shortcut in shortcuts:
-            model.insert(0, (shortcut,))
+            if shortcut not in added:
+                model.insert(-1, (shortcut,))
+                added.append(shortcut)
 
     def get_shortcuts(self):
         model = self.__shortcut_view.get_model()
-        return map(lambda i:i[0] , model)
+        return [i[0] for i in model]
 
     def add_shortcut(self, shortcut):
         model = self.__shortcut_view.get_model()
index 879e861..3e6db39 100644 (file)
@@ -240,7 +240,7 @@ class Setup(object):
             shortcuts = None
         dialog.set_shortcuts(shortcuts)
         id = dialog.run()
-        shortcuts = list(set(dialog.get_shortcuts()))
+        shortcuts = dialog.get_shortcuts()
         dialog.destroy()
         if id != gtk.RESPONSE_OK:
             return