diff options
| author | Huang Peng <shawn.p.huang@gmail.com> | 2008-05-30 17:55:14 +0800 |
|---|---|---|
| committer | Huang Peng <shawn.p.huang@gmail.com> | 2008-05-30 17:55:14 +0800 |
| commit | e911456cf2c1f4e17c5ccf909e4fb80e4fccb780 (patch) | |
| tree | 471531291e83f4118074ee6d2374b374070638e0 /engine | |
| parent | aaff3dcec05b80a53e274c05fae04632e93cbde8 (diff) | |
| download | ibus-e911456cf2c1f4e17c5ccf909e4fb80e4fccb780.tar.gz ibus-e911456cf2c1f4e17c5ccf909e4fb80e4fccb780.tar.xz ibus-e911456cf2c1f4e17c5ccf909e4fb80e4fccb780.zip | |
Modifid IPanel and IEngine interfaces.
Diffstat (limited to 'engine')
| -rw-r--r-- | engine/demo/engine.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/engine/demo/engine.py b/engine/demo/engine.py index ff7ea08..467ad4d 100644 --- a/engine/demo/engine.py +++ b/engine/demo/engine.py @@ -37,9 +37,10 @@ class Engine (interface.IEngine): self._update () return True elif keyval == keysyms.space: - self._commit_string (self._preedit_string) - self._preedit_string = "" - self._update () + if self._lookup_table.get_number_of_candidates () > 0: + self._commit_string (self._lookup_table.get_current_candidate ()[0]) + else: + self._commit_string (self._preedit_string) return False elif keyval >= keysyms._1 and keyval <= keysyms._9: index = keyval - keysyms._1 @@ -103,14 +104,14 @@ class Engine (interface.IEngine): attrs.append (ibus.AttributeForeground (0xff0000, 0, preedit_len)) for text in self._dict.suggest (self._preedit_string): self._lookup_table.append_candidate (text) - - self.AuxStringChanged (self._preedit_string, attrs.to_dbus_value ()) + self.UpdateAuxString (self._preedit_string, attrs.to_dbus_value (), preedit_len > 0) attrs.append (ibus.AttributeUnderline (pango.UNDERLINE_SINGLE, 0, preedit_len)) - self.PreeditChanged (self._preedit_string, attrs.to_dbus_value (), dbus.Int32 (preedit_len)) + self.UpdatePreedit (self._preedit_string, attrs.to_dbus_value (), dbus.Int32 (preedit_len), preedit_len > 0) self._update_lookup_table () def _update_lookup_table (self): - self.UpdateLookupTable (self._lookup_table.to_dbus_value ()) + show = self._lookup_table.get_number_of_candidates () > 0 + self.UpdateLookupTable (self._lookup_table.to_dbus_value (), show) def FocusIn (self): |
