[openi18n-im:01452] Re: key release issue with iiimxcf

AShiZaWa KaZuNoRi <[email protected]> Tue, 05 Jul 2005 14:13:32 +0900
Newsgroups gmane.comp.internationalization.input-methods
Message-ID <[email protected]>
Hi all,

I've discussed Federic how compatibility can be maintained.  So
here are my ideas how the implementation can be enhanced to be
compatible with previous versions.


- Add Capability attribute to IMATTRIBUTE.

  This attribute will be used to negotiate supported
  capabilities, including the support of key release event,
  between clients and the server.


- Revert KEYEVENT data type to (INT32 * 4).

  Highest bit of key modifier will determine key release event.
  if (0 == (0x80000000 & key_modifier)), then the event is a key
  press event.
  if (0 != (0x80000000 & key_modifier)), then the event is a key
  release event.
  The client uses the bit only when the server declares that the
  capability is supported.


- Make libiiimp.so compatible with previous version.

  Affected APIs:
    iiimp_inputmethod_descriptor_new()
    iiimp_inputmethod_descriptor_create()

  New APIs:
    iiimp_inputmethod_descriptor2_new()
    iiimp_inputmethod_descriptor2_create()


Any comments are appreciated.  I'll start implementing the
changes in a few days.

Regards,
-- 
kasha