[openi18n-im:01526] Re: CommonAux framework design/implementation

Phill Zhang <[email protected]> Mon, 29 Aug 2005 11:52:00 +0800
Newsgroups gmane.comp.internationalization.input-methods
Message-ID <[email protected]>
Thanks for the advice! See below.

Motonobu Ichimura 写道:

Hi,

On Wed, 2005-08-24 at 17:48 +0800, Phill Zhang wrote:

How about the Common Aux framework? Below is what I am thinking
about this issue:

1. IIIMP event content:

typedef struct {
int32 event_type
int32 param
int32 ic_id
const char* aux_name
const char* im_name
uint32 sz
uchar* buffer
} CommonAuxEvent;

Don't we need im_id ?

Yes, im_id or im_name are of same meaning here. If we could make it

really represent IM, not only the LE.

3. All Common Aux event comes to CommonAuxManager on the client desktop,
I hope this CommonAuxManager's functionality could be integrated into
the iiim-xbe, or another process
started with X server.
All CommonAux are started and monitored by CommonAuxManager.
CommonAuxManager forward
the message to the real CommonAux identified by the name. The
communication between them
is not iiimp related.

I hope when we prepare AUX communication framework, it doesn't depend on
some system archtecture like X propery.

Agree! when you check the attachment picture, the interface is for
CommonAux

Communication is not related with X. I'd like to treat the CommonAux
communication

module a derived class which implements those API, so in X env, maybe
it is

implemented using X property.

But currently, maybe some CommonAuxObj.so is needed, which is
responsible for:
1) locat/start (if not started yet) CommonAuxManager on client desktop.
2) forward commonAux messages from client to CommonAuxManager
3) receive messages from CommonAux and send it back to client.

We have to make sure that the starter client is of the same user who
start the X server.

Maybe we have another option for handling this event that

IIIMSF treats the Manager as a special client, and AUX related events
are sent to this Manager by IIIMSF.

Great idea, it is possible definitly.

Under this framework, the packed CommonAuxEvent need not to be unpacked
at CF level, neither
need not to be unpacked by CommonAuxManager.

Regards,