diff options
author | fujiwarat <takao.fujiwara1@gmail.com> | 2014-06-24 11:24:40 +0900 |
---|---|---|
committer | fujiwarat <takao.fujiwara1@gmail.com> | 2014-06-24 11:24:40 +0900 |
commit | a5300750e38b5327bdd255d777544d0c0ebcb4d9 (patch) | |
tree | b530d86850274c3bf9447e5c0a2d73d77a2f1a82 | |
parent | 38fa3e8a57262e4d76afe9bc348d14cc37af5cfc (diff) | |
download | ibus-a5300750e38b5327bdd255d777544d0c0ebcb4d9.tar.gz |
Do not sort ibus engines when they are saved by ibus-setup.
ibus 1.5 changes the engine order with Super+space shortcut key
and now ibus-setup shows the sorted engines by longname on UI.
This fixes not to save the sorted order with ibus-setup.
TEST=setup
Review URL: https://codereview.appspot.com/102610044
-rw-r--r-- | setup/enginetreeview.py | 13 | ||||
-rw-r--r-- | setup/main.py | 3 |
2 files changed, 10 insertions, 6 deletions
diff --git a/setup/enginetreeview.py b/setup/enginetreeview.py index b116c54f..3ab81b77 100644 --- a/setup/enginetreeview.py +++ b/setup/enginetreeview.py @@ -47,7 +47,7 @@ class EngineTreeView(Gtk.TreeView): def __init__(self): super(EngineTreeView, self).__init__() - self.__engines = set([]) + self.__engines = [] self.__changed = False # self.set_headers_visible(True) @@ -186,13 +186,13 @@ class EngineTreeView(Gtk.TreeView): def set_engines(self, engines): self.__model.clear() - self.__engines = set([]) + self.__engines = [] for e in engines: if e in self.__engines: continue it = self.__model.append(None) self.__model.set(it, 0, e) - self.__engines.add(e) + self.__engines.append(e) self.__emit_changed() def get_selected_iter(self): @@ -201,6 +201,9 @@ class EngineTreeView(Gtk.TreeView): return selection.get_selected()[1] def get_engines(self): + return self.__engines + + def get_sorted_engines(self): return self.get_property("engines") def get_active_engine(self): @@ -211,7 +214,7 @@ class EngineTreeView(Gtk.TreeView): return it = self.__model.prepend(None) self.__model.set(it, 0, engine) - self.__engines.add(engine) + self.__engines = [engine] + self.__engines self.scroll_to_cell(self.__model[0].path, None) def append_engine(self, engine): @@ -219,7 +222,7 @@ class EngineTreeView(Gtk.TreeView): return it = self.__model.append(None) self.__model.set(it, 0, engine) - self.__engines.add(engine) + self.__engines.append(engine) self.scroll_to_cell(self.__model[-1].path, None) def remove_engine(self): diff --git a/setup/main.py b/setup/main.py index dee7be4d..1d89f3dd 100644 --- a/setup/main.py +++ b/setup/main.py @@ -274,7 +274,7 @@ class Setup(object): if prop.name not in ("active-engine", "engines"): return - engines = self.__treeview.get_engines() + engines = self.__treeview.get_sorted_engines() engine = self.__treeview.get_active_engine() self.__builder.get_object("button_engine_remove").set_sensitive(engine != None) @@ -289,6 +289,7 @@ class Setup(object): obj.set_sensitive(False) if prop.name == "engines": + engines = self.__treeview.get_engines() engine_names = [e.get_name() for e in engines] self.__settings_general.set_strv('preload-engines', engine_names) |