def __update(self): self.__lookup_table.clean() self.__lookup_table.show_cursor(False) if len(self.__preedit_string) > 0: suggestions = Db.suggest(self.__preedit_string) if suggestions: self.__preedit_word = suggestions[0] else: self.__preedit_word = self.__preedit_string for text in suggestions[1:]: self.__lookup_table.append_candidate(ibus.Text(text)) else: self.__preedit_word = u"" self.update_auxiliary_text(ibus.Text(self.__preedit_string), len(self.__preedit_string) > 0) self.__update_preedit_text(self.__preedit_word) self.__is_invalidate = False