From 0fc8cc7eff39a8fe7f1689affa47fdc779570df5 Mon Sep 17 00:00:00 2001 From: fujiwarat Date: Fri, 18 Sep 2015 17:23:14 +0900 Subject: Implement "Automatically commit" with periods. --- engine/python2/engine.py | 23 +++++++++++++++++------ engine/python3/engine.py | 22 ++++++++++++++++------ 2 files changed, 33 insertions(+), 12 deletions(-) (limited to 'engine') diff --git a/engine/python2/engine.py b/engine/python2/engine.py index 032e386..fd1dc00 100644 --- a/engine/python2/engine.py +++ b/engine/python2/engine.py @@ -1753,9 +1753,14 @@ class Engine(IBus.EngineSimple): try: self._MM = self._SS = 0 ret = self.__on_key_common(ord(keyval)) - if (keyval in u',.、。' and - self.__prefs.get_value('common', 'behavior_on_period')): - return self.__cmd_convert(keyval, state) + if (keyval in + UN(self.__prefs.get_value('common', 'trigger_periods'))): + behavior = self.__prefs.get_value('common', + 'behavior_on_period') + if behavior == 1: + return self.__cmd_convert(keyval, state) + elif behavior == 2: + return self.__cmd_commit(keyval, state) return ret except: pass @@ -1919,9 +1924,15 @@ class Engine(IBus.EngineSimple): keyval = IBus.KEY_yen ret = self.__on_key_common(keyval, state) if (Engine.__input_mode != INPUT_MODE_LATIN and - unichr(keyval) in u',.' and - self.__prefs.get_value('common', 'behavior_on_period')): - return self.__cmd_convert(keyval, state) + unichr(keyval) in + UN(self.__prefs.get_value('common', 'trigger_periods'))): + behavior = self.__prefs.get_value('common', + 'behavior_on_period') + if behavior == 1: + return self.__cmd_convert(keyval, state) + elif behavior == 2: + return self.__cmd_commit(keyval, state) + return ret else: if not self.__preedit_ja_string.is_empty(): diff --git a/engine/python3/engine.py b/engine/python3/engine.py index 3c0072a..523e246 100644 --- a/engine/python3/engine.py +++ b/engine/python3/engine.py @@ -1747,9 +1747,14 @@ class Engine(IBus.EngineSimple): try: self._MM = self._SS = 0 ret = self.__on_key_common(ord(keyval)) - if (keyval in ',.、。' and - self.__prefs.get_value('common', 'behavior_on_period')): - return self.__cmd_convert(keyval, state) + if (keyval in + self.__prefs.get_value('common', 'trigger_periods')): + behavior = self.__prefs.get_value('common', + 'behavior_on_period') + if behavior == 1: + return self.__cmd_convert(keyval, state) + elif behavior == 2: + return self.__cmd_commit(keyval, state) return ret except: pass @@ -1913,9 +1918,14 @@ class Engine(IBus.EngineSimple): keyval = IBus.KEY_yen ret = self.__on_key_common(keyval, state) if (Engine.__input_mode != INPUT_MODE_LATIN and - chr(keyval) in ',.' and - self.__prefs.get_value('common', 'behavior_on_period')): - return self.__cmd_convert(keyval, state) + chr(keyval) in + self.__prefs.get_value('common', 'trigger_periods')): + behavior = self.__prefs.get_value('common', + 'behavior_on_period') + if behavior == 1: + return self.__cmd_convert(keyval, state) + elif behavior == 2: + return self.__cmd_commit(keyval, state) return ret else: if not self.__preedit_ja_string.is_empty(): -- cgit v1.2.1