From: Huang Peng Date: Wed, 11 Jun 2008 22:01:40 +0000 (+0800) Subject: Handle Delete key. X-Git-Tag: 0.1.0.20080810~415 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c48a5ae2627a78bf67f652d8c3fc4feafc259216;p=platform%2Fupstream%2Fibus.git Handle Delete key. --- diff --git a/engine/anthy/engine.py b/engine/anthy/engine.py index 8654c36..b23ad90 100644 --- a/engine/anthy/engine.py +++ b/engine/anthy/engine.py @@ -221,6 +221,21 @@ class Engine (interface.IEngine): self._invalidate () return True + def _on_key_delete (self): + if not self._input_chars: + return False + + if self._convert_begined: + self._convert_begined = False + self._cursor_pos = len (self._input_chars) + self._lookup_table.clean () + self._lookup_table_visible = False + elif self._cursor_pos < len (self._input_chars): + self._input_chars = self._input_chars[:self._cursor_pos] + self._input_chars [self._cursor_pos + 1:] + + self._invalidate () + return True + def _on_key_space (self): if not self._input_chars: return False @@ -321,6 +336,8 @@ class Engine (interface.IEngine): return self._on_key_escape () elif keyval == keysyms.BackSpace: return self._on_key_back_space () + elif keyval == keysyms.Delete or keyval == keysyms.KP_Delete: + return self._on_key_delete () elif keyval == keysyms.space: return self._on_key_space () elif keyval >= keysyms._1 and keyval <= keysyms._9: