[Uim] Determine the semantic of reset

Kenichi Handa handa at m17n.org
Fri Jun 10 07:42:06 EEST 2005


Sorry for the late response on this matter.

Instead of quating your mails and propose my opinions
against each of them, I'll show, what I think, an ideal
behaviour of an application/IM-engine/IM-module.

When a user moves an input spot or a focus out, an
application calls the corresponding IM-engine function
(API).  The function asks the IM-module to react on that
event.  The IM-module will commit some text to the
IM-engine.  Then the IM-engine commits the text to the
application.  It's up to the IM-module how to change the
internal status on that event.  Some may reset the full
status.  Some may reset the status only partially.

When a user or an application want to reset an input method
to the initial state, an application calls the corresponding
IM-engine function (API), and the function asks the
IM-module to reset the status.  The IM-module silently reset
the status (i.e. without committing anything).

Now I referred to two APIs.  The formar is mandatory.  The
latter is, I think, optional because it should be the same
as destroy the current input context and create a new input
context.  So, it's up to an IM-engine to provide it or not,
but if it is costly to destroy and create an input context,
providing the faster/lighter way is better.

If an IM-engine provides both APIs, I believe the term
"reset" is more suitable for the latter.  Otherwise, calling
the former as "reset" not ideal but acceptable.

---
Kenichi Handa
handa at m17n.org



More information about the uim mailing list