2004-07-29  Makoto Fujiyoshi  <makoto_fujiyoshi@justsystem.co.jp>

        * iiimp/iiimpAux.c:
         - struct name aux_ic_data_t was changed into aux_ic_info_t.
         - using iiimcf_get_im_id() to get correct im_id.

        * iiimp/guiIMPrePos.c:
         - TRACE_MESSAGE was changed.

2004-06-03  Hidetoshi Tajima  <tajima@SFBay.Sun.COM>

	* iiimp/iiimpAux.c (get_aux_dir_from_aux_info):
	Added new aux interface
	 - use new aux interface if "aux_info" symbol is found in an 
	   aux module.
	 - aux_info replaces aux_dir, and should hold aux_info_t
	   structure instance:
	     if_version : aux interface version, 0x00020000 or greater
	     register_service: register service methods to aux modules
	     aux_dir : aux_dir symbol, same as the previous aux interface
	 - aux modules must implement three new methods in aux_method_t
	   to be compiliant to the new aux interface.
		Bool (* destroy_ic)(aux_t *);
		Bool (* set_icforcus)(aux_t *);
		Bool (* unset_icforcus)(aux_t *);

2004-05-17  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/guiIM.c: should enable input method by default when there
	is no _IM_SETTINGS.

2004-05-14  Hidetoshi Tajima  <tajima@SFBay.Sun.COM>

	* iiimp/guiIMClbk.c: wrongly reset XIMText pointer to "", instead
	of NULL, which causes a crash on some distos. Fixed.

2004-05-04  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	code cleanup.
		removed unused variables
		cast fuction arguments properly
		declare function prototypes
	In iiimp subdirectory, the following files are cleaned.
		XimpParser.c guiIMStsNothing.c  XeIMWrap.c
		guiIM.c	iiimpAux.c switchIM.c
		iiimpDL.c composeIM.c guiIMPrePos.c
		guiIMSts.c tableinput.c	status.c
		iiimpIC.c iiimpIM.c guiIMLookup.c
		iiimpColor.c lookup.c commonIM.c
		guiIMPre.c KeyMap.c popupIM.c codeinput.c

2004-05-03  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/iiimpAux.h:
	added
		AUX_DATA_GETVALUE = 5,
		AUX_DATA_GETVALUE_REPLY = 6,
	to aux_data_type_t structure.

2004-04-29  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/iiimpSwitcher.c (my_stpcpy): fix shaming errors in string
	comparison logic.
	(im_switcher_new): memory initialization
	(ic_switcher_new): memory initialization
	(ic_switcher_set_language_list): memory initialization

2004-04-28  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/iiimpSwitcher.c : implement methods for GIMLET
	* iiimp/guiIMClbk.c : send status_text to GIMLET
	* iiimp/iiimcfFun.c, iiimp/iiimpIC.c : set GIMLET focus
	* iiimp/iiimpConv.c : add IMConvertToUTF8()
	* iiimp/iiimpIM.c :
	* iiimp/iiimpIM.h :
	* iiimp/commonIM.h : add data for GIMLET
	* iiimp/guiIM.c, iiimp/switchIM.c : code cleanup

	IIIMXCF works with GIMLET - should fully functional in UTF-8
	locales, partially in non-UTF8 locales(except input language
	switching).

2004-04-26  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/guiIM.c:
	* iiimp/guiIMSts.c:
	* iiimp/guiIMClbk.c:
	* iiimp/guiIM.c, iiimp/guiIM.h
	* iiimp/iiiimpIC.c:
	use _IM_SETTINGS to change lookup & status style.

2004-04-21  Motonobu Ichimura <famao@openi18n.org>

	* iiimp/guiIMLookup.c (moveLookupWindow):
	handle the case of on-the-spot style.

2004-03-31  Hidetoshi Tajima  <tajima@SFBay.Sun.COM>

	* iiimp/iiimpAux.h, iiimp/iiimpAux.c: 
	new aux_getvalues methods must be added at the end of structures.

2004-03-29  Hidetoshi Tajima  <tajima@SFBay.Sun.COM>

	* iiimp/iiimcfFun.c, iiimp/iiimpAux.c, iiimp/iiimpAux.h: 
	changes to receive and handle aux_getvalues_reply messages from server.

	* iiimp/iiimpData.h : added IM_AUX_GETVALUES/IM_AUX_GETVALUES_REPLY
	* iiimp/iiimpAux.h, iiimp/iiimpAux.c: added service_aux_getvalue()
	* iiimp/iiimpIM.h, iiimp/iiimcfFun.c: added IMAuxGetValues()

	added IM_AUX_GETVALUES/IM_AUX_GETVALUES_REPLY	

2004-03-22  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

        * iiimp/KeyMap.c: two places - allow Ctrl+shift keyevents to
        be filtered to the server and to be used as conversion start
        keys. (#5006109)

        * iiimp/KeyMap.c: unfiltered Ctrl-<lower-alphabet> events should
        be lowered when returning back to applications (#5003579).

        * iiimp/iiimpSwitcher.c (is_im_switcher):
        minimum preparion to make xiiimp.so working with GIMLET,
        and then to make StarSuite7 working in direct-xiiimp.so loading
        mode.

        * iiimp/iiimpIM.c: add a new XIM attribute to query
        multilingual extension version.

        * iiimp/iiimpAux.c:
        * iiimp/iiimpAux.h:
        added two new aux services to set/get conversion mode.

        * iiimp/iiimpConv.c: fix wrong return value which prevents
        staroffice's showing preedit/status when multi-lingual input mode.

        * iiimp/xfactory.c
        * iiimp/xfactory.h
        * iiimp/guiIMLookup.c
        * iiimp/guiIMSts.c
        * iiimp/guiIMPre.c
        * iiimp/iiimpIM.c
        * iiimp/iiimpIM.h
        add "defaultFontName" IM attribute as an extenstion, which is
        set when xiiimp.so is used by htt_xbe.

        * iiimp/iiimpConv.c:
        fix memory trash.
        * iiimp/guiIM.h (DEFAULT_FONT_NAME):
        change the default font name.

2004-01-23  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/KeyMap.c: fix a memory trash.

2003-12-11  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* autogen.sh (have_automake): add -I ../../acfiles
	* acinclude.m4, aclocal.m4, configure, Makefile.in: removed
	* config.h.in, iiimp/Makefile.in: removed

2003-12-09  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* acinclude.m4: added - A lack of this has caused build failure
	since 11/02/03...till Hideki found just a few days ago.

2003-10-30  Motonobu Ichimura <famao@openi18n.org>

	* iiimp/iiimcfFun.c (status_draw): use status_attr,
	XIMStatusDrawCallbackStruct instead of preedit_attr,
	XIMPreeditDrawCallbackStruct.

2003-10-27  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/codeinput.c (Ximp_Local_Preedit_Draw, Ximp_Local_Preedit_Start,
	Ximp_Local_Preedit_Done) : call preedit start/draw/done callback 
	functions in XIMPreeditCallbacks style case.

2003-08-16  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimpAux.c (aux_so_load): Output derror() as well
	if dlopen() fails.
	(service_aux_setvalue): Show pac->pad for debugging if
	ENABLE_TRACE is defined.

	* iiimp/iiimcfFun.c (IMProcessIncomingEvent): Now we don't
	have to do iiimcf_peek_next_event() to check if it can be
	processed by the dispatched component.  Simply do
	iiimcf_ignore_event after using it.

2003-07-31  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/composeIM.c (_Ximp_StatusGetAttributes):should not
	create own status fontset here, but should share the one 
	used in other places.

	* iiimp/iiimpConv.c: put visual feedbacks only to XIMText
	feedbacks, and make sure to leave IMFeedback lists to NULL
	unless there is non visual(such as color) feedback.

2003-07-30  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimcfFun.c (process_keyevent): New function.
	(IMProcessIncomingEvent<IIIMCF_EVENT_TYPE_TRIGGER_NOTIFY>):
	call process_trigger_notify().

2003-07-24  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimpConv.c (IIimpConvertToXIMText): Initialize
	ximfb after allocating it.  (Report from Tajima-san.)

	* iiimp/Makefile.am (xiiimp_la_LDFLAGS): Added
	-no-undefined, and also added an comment on
	GNU/Linux system.

	* iiimp/iiimpUtil.c (setICAttribute): Removed.
	Never is it used now.
	(add_conversion_keys_from_resource): Removed the
	unused argument, "filename"
	(register_conversion_keys_from_resource): Call
	add_conversion_keys_from_resorce, not
	add_conversion_keys_from_file, which is not
	implemented.

2003-07-01  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimcfFun.c (draw_status): When iiimcf_get_status_text()
	returns IIIMF_STATUS_NO_STATUS_TEXT, clear status text.

2003-06-12  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/guiIMPre.c (PreeditDrawText): In TRACE_MESSAGE,
	output caret position as well.

	* iiimp/Makefile.am (xiiimp_la_CFLAGS): Used -g instead of -Wl,-g.

2003-06-09  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimpIM.c (g_locale_list): Added EUC-* locales, which are
	authorized by OpenI18N locale name guideline.
	(canonicalize_langname): Made canonicalize_langname() return a
	new string allocated in heap memory.  And unless canonical_name is
	found by getIMLangName(), return the language part of the localename.
	(get_IM_language): Free lang before exitting.

	* iiimp/iiimcfFun.c (draw_preedit): When iiimcf_get_preedit_text returns
	to IIIMF_STATUS_NO_PREEDIT, set call_data.text to NULL and len to 0.

2003-05-27  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/composeIM.c (COMPOSE_CreateIC_SWITCH): When top_state is
	empty, output an error message and exit.

2003-05-07  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/Makefile.am (xiiimp_la_CFLAGS): Added
	-I$(X_PRIVATEINC) instead of -I$(IM_INCLUDEDIR)/X11.

	* configure.ac (IM_CHECK_XUTF8API): Added.

2003-05-06  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/Makefile.am (xiiimp_la_LIBADD): Correct the
	macro expression.

2003-05-05  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/Makefile.am: Remove the comments on the below files.
	* iiimp/iiimpHandler.c: Removed.
	* iiimp/iiimpClientDescripter.c: Removed.
	* iiimp/iiimpTr.c: Removed.

	* iiimp/iiimpIM.h (IIimpConvertFromUTF16): 
	Declared "from_buf" as const char*.

	* iiimp/iiimpConv.c (IIimpConvertFromUTF16):
	Declared "from_buf" as const char*.
	(IMStringToXIMText, IMTextlen, IMTextToXIMText, IMTextListToXIMTextList):
	Removed.

	* iiimp/guiIMPre.c (PreeditReplaceString): Bug fix.
	Update feedback_list of preedit_chars from "feedback_list"
	not from the feedback_list of preedit_chars_backup.
	(PreeditReplaceString): Bug fix.  Corrected the expression of
	cur_fb and chg_fb.

	* iiimp/iiimpIM.h (XIMIIimpIMRec): Added a new member,
	"counter".
	(XICIIimpIMRec): Added a new member, "id".
	(IMAuxSetValues): New declaration.

	* iiimp/iiimpConv.c (UTF16ToString): New function.
	(IIimpUTF16ToString): Ditto.
	(IIimpConvertToString): Made it use UTF16ToString.

	* iiimp/iiimpIM.c: Include iiimpAuxP.h instead of iiimpAux.h.
	(SWITCH_CloseIM): Call IIimpFreeAllAuxData() instead of AuxChange.

	* iiimp/iiimpIC.c (IIIMP_CreateIC_SWITCH): Set
	XIC_IIIMP(ic, id).

	* iiimp/iiimpAuxP.h: Don't include Xmd.h and Xlib.h at here.
	(IIimpAuxDownload, IIimpAuxStart, IIimpAuxDraw, IIimpAuxDone)
	(IIimpDestroryAuxData,IIimpFreeAllAuxData): Declared.

	* iiimp/iiimpAux.h (AuxChangeReason, AuxChange): Removed.

	* iiimp/iiimpAux.c (download, start, draw, done, switched, destroy)
	(aux_method): Removed.
	(AUXComposed): New structure.
	(create_composed_from_event): New function.
	(create_composed_from_aux_data): Ditto.
	(IIimpAuxDownload): New function.  It replaces "download" AuxCB method.
	(IIimpAuxStart): Likewise.
	(IIimpAuxDraw): Likewise.
	(IIimpAuxDone): Likewise.
	(IIimpDestroryAuxData): New function.
	(AuxChange): Removed.
	(auxname_strncmp): New function.
	(service_compose): Only return the result of
	create_composed_from_aux_data().
	(service_compose_size): Always return 0.
	(show_string, show_AC): New functions to output debugging message.
	(service_decompose): Rewritten.  Only returns (aux_data_t) part in
	AUXComposed.
	(service_decompose_free): Free pad->string_ptr.
	(service_aux_setvalue): Rewritten.
	(create_aux_im_data): New function.
	(aux_get): Call create_aux_im_data() when we need to create aux_im.
	(aux_entry_get): It takes only name.  Use auxname_strncmp to match
	it with ah->aux_name.
	(aux_string_length): New function.
	(padding): Removed.

	* iiimp/trace_message.h (ENABLE_TRACE): When DEBUG is defined,
	define ENABLE_TRACE as well.

	* iiimp/iiimcfFun.c: Include iiimpAuxP.h instead
	of iiimpAux.h.
	(IMProcessIncomingEvent): Output trace messages about
	what event comes.
	(IMCreateHandle): Call IMSetupAuxObject(im).
	(IMSetupAuxObject): New function.
	(IMAuxSetValues): New function.

2003-04-29  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimpAux.c: Normalized the style.

	* iiimp/Makefile.am (xiiimp_la_LIBADD): Specify the path of
	libtool archive to link with libiiimp and libiiimcf.

	* configure.ac (COMMON_INCLUDE): New variable.
	(CFLAGS, CXXFLAGS): Add ${COMMON_INCLUDE}.

2003-04-26  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimpIM.h (XIMIIimpIMRec): Add inited.
	(get_IM_language, IMChangeClientType, IM_free_langlist):
	New function declarations.

	* iiimp/iiimpIM.c (free_langlist, init_langlist): Moved to iiimcfFun.c
	(IIIMP_SetIMValues): When arg has "applicationType", call
	IMChangeClientType().
	(IIIMP_OpenIM_SWITCH): Call IMCreateHandle() instead of directly
	creating IIIMCF_handle.
	(SWITCH_CloseIM): Call IM_free_langlist(), which is renamed from
	free_langlist().

	* iiimp/iiimcfFun.c (IM_free_langlist, init_langlist):
	moved from free_langlist@iiimpIM.c.
	(IMCreateIC): Set IIIMCF_ATTR_INPUT_METHOD_NAME.  and Set inited to True
	at the tail.
	(IMChangeClientType): New function.
	(IMCreateHandle): New function.

2003-04-25  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimpIC.c (IIIMP_SetFocus, IIIMP_UnSetFocus): Call IMChangeFocus().
	(IIIMP_MbReset, IIIMP_WcReset): Call iiimcf_reset_context().
	(IIIMP_MbLookupString, IIIMP_WcLookupString): When committed_text_consumed
	is True, immediately return 0.  When returned committed text, set
	committed_text_consumed is True.

	* iiimp/iiimcfFun.c (commit): Set committed_text_consumed to False.
	(IMChangeFocus): New function.

	* iiimp/iiimpIM.h (XICIIimpIMRec): Added committed_text_consumed.
	(IMChangeFocus): New function declaration.

	* iiimp/KeyMap.c (IIIMCF_keyevent_To_XKeyEvent): Disable the debugging message.

	* iiimp/iiimpIM.h (IMCreateIC, IMSetPrimaryLocale): Declared.

	* iiimp/iiimpIC.c (IIIMP_CreateIC_SWITCH): Call IMCreateIC() instead of createic().
	(createic): Define the equivalent function in iiimcfFun.c as IMCreateIC().

	* iiimp/iiimcfFun.c (draw_lookup_choice): Correct the function name
	of IIimpConvertToXIMText().
	(commit): Ditto.
	(IMForwardEvent): Disable the debugging message.
	(IMCreateIC): Moved from iiimpIC.c.
	(IMSetPrimaryLocale): New function.

2003-04-24  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/Makefile.am (xiiimp_la_LIBADD): Add -liiimcf and -liiimp.
	(xiiimp_la_SOURCES): Removed iiimpHandler.c,
	iiimpClientDescripter.c, and iiimpTr.c.

	* iiimp/KeyMap.c (setup_modifier_map): Casted KanaMode in
	XChangeProperty's argument list.
	(IIIMCF_keyevent_To_XKeyEvent): Rewrite VirtualKeyToXKeyEvent
	to support IIIMCF_keyevent.
	(XKeyEvent_To_IIIMCF_keyevent): Likewise.
	(XKeysym_To_IIIMCF_keyevent): New function.

	* iiimp/commonIM.c: Normalized the style.

	* iiimp/iiimpIM.h (XIMIIimpIMRec, XICIIimpIMRec):
	Totally redesigned.
	(XICConversionMode): Renumbered it.  Now CONV_ON is 1,
	CONV_OFF is 0.

	* iiimp/iiimpIM.c: Normalized the style.
	(getIMLangName): New function.
	(canonicalize_langname): Ditto.
	(get_IM_language): Ditto.
	(initialize, uninitialize): New functions.
	(IIIMP_OpenIM_SWITCH): Made it call initialize() at startup
	and create IIIMCF_handle.
	(SWITCH_CloseIM): Made it call unititialize at the tail and
	destroy IIIMCF_handle.

	* iiimp/iiimpConv.c (IIimpConvertToString): New function.
	(IIimpConvertToXIMText): Ditto.

	* iiimp/iiimpIC.c: Normalized the style.
	(isConversionOnKey, isConversionOffKey): Removed.
	Defined them in iiimpUtil.c
	(IIIMP_Local_KeyFilter): Totally rewritten.  In principle,
	made all events forward to IMForwardEvent.
	(createic): New function.
	(IIIMP_CreateIC_SWITCH): Simply create IIIMCF_context.
	(IIIMP_DestroyIC): Destroy IIIMCF_context.
	(IIIMP_SetFocus, IIIMP_UnSetFocus): Currently, practically disabled.
	(IIIMP_MbReset, IIIMP_WcReset): Ditto.
	(IIIMP_MbLookupString, IIIMP_WcLookupString): Made it use 
	iiimcf_get_committed_text() to obtain committed text.

	* iiimp/iiimpUtil.h (AddConvKeysFromFile): Removed.
	(isConversionOnKey, isConversionOffKey)
	(RegisterTriggerKeys): New declarations.

	* iiimp/iiimpUtil.c: Include KeyMap.h.
	(AddConvKeysFromFile): Removed.
	(add_conversion_keys_from_resource): New function.
	(register_conversion_keys_from_resource): Ditto.
	(RegisterTriggerKeys): Ditto.
	(isMatchKey): Ditto.
	(isConversionOnKey): Ditto.
	(isConversionOffKey): Ditto.

	* iiimp/guiIMSts.c (FilterKeyPress): Remove the cast at IMForwardEvent.

	* iiimp/switchIM.c: Normalized the style.

	* iiimp/guiIM.h (IMForwardEvent): Made it take XicCommon instead of XIC.

	* iiimp/iiimcfFun.c: New file.

	* iiimp/xiiimp.h: Renamed from iiimp.h, which conflicts with libiiimp.
	* iiimp/guiIMClbk.c: Include xiiimp.h instead of iiimp.h.
	* iiimp/guiIMStsNothing.c: Ditto.
	* iiimp/iiimpHandler.c: Ditto.
	* iiimp/guiIMPreNothing.c: Ditto.
	* iiimp/guiIMPreArea.c: Ditto.
	* iiimp/guiIM.h: Ditto.
	* iiimp/composeIM.c: Ditto.
	* iiimp/guiIMPrePos.c: Ditto.
	* iiimp/guiIMSts.c: Ditto.
	* iiimp/tableinput.c: Ditto.
	* iiimp/status.c: Ditto.
	* iiimp/iiimpConv.c: Ditto.
	* iiimp/iiimpIM.h: Ditto.
	* iiimp/guiIMLookup.c: Ditto.
	* iiimp/iiimpColor.c: Ditto.
	* iiimp/lookup.c: Ditto.
	* iiimp/iiimpColor.h: Ditto.
	* iiimp/guiIMPre.c: Ditto.
	* iiimp/popupIM.c: Ditto.
	* iiimp/codeinput.c: Ditto.
	* iiimp/guiIMStsArea.c: Ditto.

2002-11-08  MIYASHITA Hisashi  <himi@li18nux.org>

	* .cvsignore: Removed.  Subversion never require it.
	* iiimp/.cvsignore: Ditto.

	* config.guess: Removed.  New autoconf scritp moved it to acfiles.
	* config.sub: Ditto.
	* depcomp: Ditto.
	* install-sh: Ditto.
	* ltmain.sh: Ditto.
	* missing: Ditto.
	* mkinstalldirs: Ditto.

	* svn:ignore in ./ and iiimp/: Ignore generated files.

	* iiimp/Makefile.am (xiiimp_la_CFLAGS): Use the new autoconf and
	automake macro variables.
	(xiiimp_la_LIBADD): New macro. It has $(X_LIBS) and $(THREAD_LIBS).

	* configure.ac: Rename configure.in to configure.ac.
	Use the common acfiles library.
	* acconfig.h: Removed.  Now configure.ac contains the equivalent
	information.
	* Makefile.am (AUTOMAKE_OPTIONS): Set it to foreign.

2002-10-14  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/guiIMStsNothing.c (create): Before checking client_type,
	we have to check XIM_IS_IIIMP(im) because XIM_IIIMP(im) is invalid if
	it is false.

2002-10-03  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/switchIM.c (get_switch_im_methods): New function.
	This function replaces switch_im_methods.
	(switch_im_methods): Revoked.
	(get_switch_ic_methods): New function.	This function
	replaces switch_ic_methods.
	(switch_ic_methods): Revoked.
	(_SwitchOpenIM): Use get_switch_im_methods() instead of
	switch_im_methods.
	(ResetSwitchFilter): Use get_local_ic_methods() instead of
	local_ic_methods.
	(SwitchCreateIC): Use get_switch_ic_methods() instead of
	switch_ic_methods.
	(SwitchUpdateStatus): Use get_local_ic_methods() instead of
	local_ic_methods.

	* iiimp/iiimpIM.c: Include stdio.h for fopen, fgets, fclose, etc.
	(get_iiimp_im_methods): New function.  This function replace
	iiimp_im_methods.
	(iiimp_im_methods): Revoked.
	(get_switch_im_methods): New function.  This function replace
	switch_im_methods.
	(swtich_im_methods): Revoked.
	(_IIIMP_OpenIM): Use get_iiimp_im_methods() instead of
	iiimp_im_methods.
	(IIIMP_OpenIM_SWITCH): Use get_switch_im_methods() instead of
	switch_im_methods.

	* iiimp/iiimpIC.c (get_iiimp_ic_methods): New function.
	This function replaces iiimp_ic_methods.
	(iiimp_ic_methods): Revoked.
	(get_switch_ic_methods): New function.  This function
	replaces switch_ic_methods.
	(switch_ic_methods): Revoked.
	(SetConversionMode): Use get_iiimp_ic_methods() instead of
	iiimp_ic_methods.
	(CreateIC): Ditto.
	(IIIMP_CreateIC_SWITCH): Use get_switch_ic_methods()
	and get_iiimp_ic_methods() instead of switch_ic_methods
	and iiimp_ic_methods.
	(SWITCH_DestroyIC): Use get_iiimp_ic_methods() instead of
	iiimp_ic_methods.

	* iiimp/composeIM.h: Add new function declaration for
	get_local_im_methods().

	* iiimp/composeIM.c (get_local_im_methods): New function.
	This function replaces local_im_methods.
	(local_im_methods): Revoked.
	(get_switch_im_methods): Likewise.  This function replaces
	switch_im_methods.
	(switch_im_methods): Revoked.
	(get_local_ic_methods): New function.
	This function replaces local_ic_methods.
	(local_ic_methods): Revoked;
	(get_switch_ic_methods): New function.  This function replaces
	swtich_ic_methods.
	(switch_ic_methods): Revoked.
	(_XimpLocalOpenIM): Use get_local_im_methods() instead of
	local_im_methods.
	(COMPOSE_OpenIM_SWITCH): Use get_switch_im_methods() instead of
	switch_im_methods.
	(_Ximp_Local_CreateIC): Use get_local_ic_methods() instead of
	local_ic_methods.
	(COMPOSE_CreateIC_SWITCH): Use get_switch_ic_methods() and
	get_local_ic_methods() instead of switch_ic_methods and
	local_ic_methods.

	* iiimp/XeIMWrap.c (XimInstaCallbackRec, XimInstCallback):
	New structure, which is derived from imInsClbk.c.
	(callback_list, lock): New variables.
	(MakeLocale): New function.
	(_XimFilterPropertyNotify, _XimRegisterIMInstantiateCallback) 
	(_XimUnRegisterIMInstantiateCallback) 
	(_XimResetIMInstantiateCallback): New functions.

2002-09-28  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimpDL.c (OpenDynamicObject): Bug fix.
	Init. lc_name.

2002-09-27  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/switchIM.c (Switch_KeyFilter): Before turning off
	switch filter by Switch_OFF key, pass the event to
	active_filter because it may need to process the event to
	finalize operations.

	* iiimp/xfactory.h (XFactoryCreateDefaultFontSet)
	(XFactoryFreeDefaultFontSet): New declarations.
	(XFactoryValidateCoordinates): Introduce the correct
	declaration.

	* iiimp/xfactory.c (XFactoryCreateDefaultFontSet)
	(XFactoryFreeDefaultFontSet): New functions.

	* iiimp/switchIM.c (RegisterSwitchFilter): Set rec to
	the head of ic->switch_filters.
	(Switch_KeyFilter): Updated.  Read the diff.
	(MbReset, WcReset): Unregister Switch_KeyFilter.
	(SetFocus, SwitchKeyEventFilter): Register Filter type for both
	KeyPress and KeyRelease	event types.

	* iiimp/status.c (Ximp_Local_Status_Draw): The current ic
	does not have client window, do nothing.

	* iiimp/lookup.c: Include iiimpIM.h.
	(FillLookup): Correctly return False if it fails.
	(lookup_commit): Updated.  Read the diff.

	* iiimp/iiimpTr.c (TransConnect): Change how to obtain the server
	address.  For detail, read the diff.

	* iiimp/iiimpIM.h (IIIMMessageList): Add message and message_len
	instead of p.
	(im_locale_pair): new structure.

	* iiimp/iiimpIM.c: Include iiimpAux.h.
	(IIIMP_DEFAULT_ADDRESS): Make it static.
	(IIIMP_SetIMValues): Deal with XNDestroyCallback.
	(SWITCH_CloseIM): Call AuxChange(NULL, AUX_DESTROY, (XPointer)NULL),
	and free `lang_alias'.

	* iiimp/iiimpICS.c (DoThisAction): Remove the comma at the tail.
	(SetICValueData): When IMCheckIMWindow fails, return p->name as
	an error.  And make the part of "linux" effective in all sorts of
	environments.

	* iiimp/iiimpIC.c (ChangePreeditState, IIIMP_Local_KeyFilter):
	Regardless of the result of IMTriggerNotify(), do SetConversionMode().
	(IIIMP_Local_KeyFilter): Return the current conversion mode.
	For detail, read the diff.

	* iiimp/iiimpHandler.c: Include genutil.h and xfactory.h
	Now convertToInputLanguage() has im as its argument.
	(ReadMessage): This function takes a new argument, message_len.
	And set the message length to it.  When error is raised, call
	destroy callback, and AuxChange(NULL, AUX_DESTROY, (XPointer)NULL).
	For detail, read the diff.
	(CallIMDestroyCallback): New func.
	(SendMessage): Pass &message_len when calling ReadMessage() to take
	message length.  And set reply to m->message, not m->p.
	(Free_iiim_object): New func.
	(IMCommitStringCB): When the previous commited string has not been effective,
	concatinate it with the current one and commit the connected one.

	* iiimp/iiimpDL.c: Include unistd.h and genutil.h.
	(OpenDynamicObject): Updated. (for detail, read the diff).

	* iiimp/iiimpConv.c (IIimpConvertFromUTF16, ConvertToUTF16):
	Pass "UTF-16" to iconv_open().

	* iiimp/iiimp.h (IIIMP_DEFAULT_ADDRESS): Removed the decl.
	Now, it is not a public symbol at all.

	* iiimp/guiIMStsNothing.c: include iiimpIM.h.
	(track_client_window_move): New func.
	(create): When DISABLE_IMSTATUS_FOR_NON_UTF8_LOCALES is defined
	and client_type is Htt XIM Server, do nothing.
	(create): Track the top level window's configuration.
	(set_window): Remove width and height arguments of
	XFactoryValidateCoordinates.

	* iiimp/guiIMSts.c (SetStatusFont): 
	Use XFactoryFreeDefaultFontSet() and XFactoryCreateDefaultFontSet().
	(SetStatusForeground, SetStatusBackground): Enabled.

	* iiimp/guiIMPre.c (SetPreeditFont, DestroyPreedit):
	Use XFactoryFreeDefaultFontSet().

	* iiimp/guiIMLookup.c (boundValue): New func.
	(getChoiceIndex): Set currentCol and currentRow to bounded value.
	(moveLookupWindow): Use XFactoryCreateDefaultFontSet().
	(DestroyLookup): Use XFactoryFreeDefaultFontSet().

	* iiimp/guiIMClbk.c: Do reset state only when XIMStatusCallbacks
	is not effective.

	* iiimp/guiIM.h (DEFAULT_FONT_NAME_CDE): New macro.
	(MAX_STATUS_CHARNUM): Increased to 20.

	* iiimp/composeIM.c (SwitchRemoteIMState): New decl.
	(Ximp_Local_KeyFilter): When calling IMConvertFromUTF8ToUTF16(),
	cast &cbtext.string.utf16_char to char**.
	(_Ximp_Local_CreateIC, _Ximp_Local_SetFocus): Register Filter
	type for both KeyPress and KeyRelease event types.
	(ComposeKeyEventFilter): New decl.
	(_Ximp_Local_SetICValueData): When the current client_window of ic is
	the same as specified, simply ignore it.

	* iiimp/XimpParser.c (parseline): Cast im when calling create_state().

2002-04-07  MIYASHITA Hisashi  <himi@m17n.org>

	* aclocal.m4: Updated.

	* configure: Updated.

	* iiimp/Makefile.am (xiiimp_la_SOURCES): Add genutil.c.
	* iiimp/Makefile.in: Updated.

	* iiimp/XeIMWrap.c (__XOpenIM): Use _genutil_strlcat() and
	_genutil_strlcpy() instead of strlcat() and strlcpy() because
	they are not standard functions.

	* iiimp/XimpRm.c: Include genutil.h.
	(_private_strlcat, _private_strlcpy):
	Rename _genutil_strl* and move them to genutil.c.
	(_Ximp_Get_resource_name): Rename _private_strl*
	to _genutil_strl*.

	* iiimp/genutil.c: New file.
	* iiimp/genutil.h: New file.

2001-12-18  MIYASHITA Hisashi  <himi@m17n.org>

	* .cvsignore: Add some files generated by autotools.
	* iiimp/.cvsignore: Add *.la and *.lo, which is generated by libtool.

2001-12-11  MIYASHITA Hisashi  <himi@m17n.org>

	* iiimp/iiimpIM.c (_IIIMP_Error_Handler): When error_code is BadWindow,
	always ignore the error for any opcodes.

2001-11-30  MIYASHITA Hisashi  <himi@m17n.org>

	* iiimp/iiimpIM.c (_IIIMP_Error_Handler): When X cause BadWindow error
	in the dispatch handler, ignore the error also in case that it is from
	X_ClearArea and X_DestroyWindow opcode.

	* configure: Updated.
	* configure.in: Reorder automake/autoconf directives accoding to
	the functional categories.
	(XIIIMP_SOX18N_VERSION): New variable.  It is for specifying
	the shared object version.
	(AC_PATH_XTRA): Use it instead of AC_PATH_X.
	(XICCallback): When checking the existence of XICCallback, we
	have to prepare CFLAGS for X environment temporarily.
	(x_includes): do AC_SUBST.

	* iiimp/Makefile.am (xiiimp_la_LDFLAGS): Add -Wl,-g for debugging.
	And add -version-info option.
	(moduledir): Change to /usr/lib/im.
	* iiimp/Makefile.in: new file generated by automake.

2001-11-29  MIYASHITA Hisashi  <himi@m17n.org>

	* aclocal.m4: new file generated by aclocal.

	* config.h.in: new file generated by autoheader.

	* configure: new file generated by autoconf.

	* Makefile.in: new file generated by automake.

	* ltmain.sh: New file for libtool.

	* stamp-h.in: New file for automake and autoconf.
	* mkinstalldirs: Ditto.
	* missing: Ditto.
	* config.sub: Ditto
	* config.guess: Ditto.
	* depcomp: Ditto

2001-11-05  HideToshi Tajima  <tajima@eng.sun.com>

	* iiimp/Makefile.am : add two missing '\' in SOURCES macro
	
	* iiimp/*.c and *.h : made lots of bug fixes

2001-11-02  HideToshi Tajima  <tajima@eng.sun.com>

	* autogen.sh : no need to check libtool version

2001-11-02  HideToshi Tajima  <tajima@eng.sun.com>

	* autogen.sh : initial version
	* configure.in: initial version
	* Makefile.am and the rest of related files to automake and
	autoconf
	* Makefile.in : removed
	* configure : removed
	* iiimp/Makefile.in : moved to Makefile.in.temp
	* config.guss : removed
	* config.sub : removed

	They are still problematic, wanting test & input from xlib-i18n
	team. File bug reports to bugzilla if it is up and live.

2001-08-20  MIYASHITA Hisashi  <himi@m17n.org>

	* iiimp/popupIM.c (displayLanguage):
	Add a new entry in case that we cannot find out any entry that
	corresponds to the input langage.
	(convertToDisplayLanguage): If p->input_language is NULL,
	use p->display_language forcibly.
	(popdown_menu): If the popup menu window has already been unmapped,
	return immediately.
	(popup_button_press): When the incomming event is ButtonRelease and
	ic->popup_icpart is not initialized, return immediately because
	the correspoinding ButtonPress event has not been occured.

	* iiimp/iiimpICG.c (GetICValueData):
	Correct the cast of p->value.  Set the type of
	ic->core.geometry_callback, XICCallback*.

	* iiimp/composeIM.c (_Ximp_Local_GetICValues):
	Correct the cast of p->value.  ic->core.geometry_callback is
	XICCallback* not XIMCallback*.
	(_Ximp_Local_SetICValueData): 
	Correct the cast of p->value.  When p->name is XNGeometryCallback,
	p->value must be XICCallback*, not XIMCallback*.

2001-03-18  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/iiimpAux.c (IS_PREEDIT_POSITION):
	Apply the patch of 4390740.  Pass spot location also the case
	the input_style has XIMPreeditCallbacks attribute, i.e.,
	it is from AUX clients.

	* iiimp/guiIMLookup.c (SetupLookupWindow):
	Apply the patch of 4390730.  Set class name for its
	own window.
	* iiimp/guiIMPre.c (NewPreeditWindow): Likewise.
	* iiimp/guiIMSts.c (SetupStatusWindow): Likewise.

2001-03-17  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/XimpRm.c: Apply the patch of 4409148.
	Fix buffer overflow.
	(_private_strlcat): New function.
	(_private_strlcpy): New function.
	(_Ximp_Get_resource_name): Change the interface.
	Set res_name and res_class propery.
	(_Ximp_InputServerMode): Don't directly edit res_name and res_class.
	Instead, use the result of _Ximp_Get_resource_name().

	* iiimp/iiimpICS.c (SetICValueData):
	Need to check client_window is valid or not before creating
        status, preedit and lookup.  Apply the patch of 4378199.

	* iiimp/iiimpIM.c (_IIIMP_Error_Handler):
	Need to check client_window is valid or not before creating
        status, preedit and lookup.  Apply the patch of 4378199.

	* iiimp/xfactory.c (XFactoryCheckIMWindow):
	Apply the patch of 4378199.  New function.

	* iiimp/xfactory.c (remove_decoration): Apply the patch of 4390729.
	Window should not grab any input focus.

	* iiimp/guiIMLookup.c: Apply the patch of 4390729.
	(FilterButtonRelease): New function, which is split from
	FilterButtonPress().
	(SetupLookupWindow): add the filter of FilterButtonRelease
	to filters.

2001-03-15  MIYASHITA Hisashi  <himi@li18nux.org>

	* iiimp/KeyMap.c:
	* iiimp/KeyMap.h:
	* iiimp/XimpConv.c:
	* iiimp/XimpParser.c:
	* iiimp/codeinput.c:
	* iiimp/codeinput.h:
	* iiimp/commonIM.c:
	* iiimp/commonIM.h:
	* iiimp/composeIM.c:
	* iiimp/composeIM.h:
	* iiimp/csconv.h:
	* iiimp/guiIM.c:
	* iiimp/guiIM.h:
	* iiimp/guiIMClbk.c:
	* iiimp/guiIMLookup.c:
	* iiimp/guiIMLookup.h:
	* iiimp/guiIMPre.c:
	* iiimp/guiIMPre.h:
	* iiimp/guiIMPreArea.c:
	* iiimp/guiIMPreNothing.c:
	* iiimp/guiIMPrePos.c:
	* iiimp/guiIMSts.c:
	* iiimp/guiIMSts.h:
	* iiimp/guiIMStsArea.c:
	* iiimp/guiIMStsNothing.c:
	* iiimp/iiimp.h:
	* iiimp/iiimpAuth.c:
	* iiimp/iiimpAuth.h:
	* iiimp/iiimpAux.c:
	* iiimp/iiimpAux.h:
	* iiimp/iiimpAuxP.h:
	* iiimp/iiimpClientDescripter.c:
	* iiimp/iiimpColor.c:
	* iiimp/iiimpColor.h:
	* iiimp/iiimpConv.c:
	* iiimp/iiimpDL.c:
	* iiimp/iiimpDL.h:
	* iiimp/iiimpData.h:
	* iiimp/iiimpHandler.c:
	* iiimp/iiimpIC.c:
	* iiimp/iiimpIC.h:
	* iiimp/iiimpICG.c:
	* iiimp/iiimpICG.h:
	* iiimp/iiimpICS.c:
	* iiimp/iiimpIM.c:
	* iiimp/iiimpIM.h:
	* iiimp/iiimpReq.h:
	* iiimp/iiimpTr.c:
	* iiimp/iiimpTr.h:
	* iiimp/iiimpUtil.c:
	* iiimp/iiimpUtil.h:
	* iiimp/lookup.c:
	* iiimp/lookup.h:
	* iiimp/popupIM.c:
	* iiimp/popupIM.h:
	* iiimp/status.c:
	* iiimp/status.h:
	* iiimp/switchIM.c:
	* iiimp/switchIM.h:
	* iiimp/tableinput.c:
	* iiimp/tableinput.h:
	* iiimp/trace_message.c:
	* iiimp/trace_message.h:
	* iiimp/xfactory.c: 
	* iiimp/xfactory.h: 
	* README:
	Change copyright notice.

2000-11-20  MIYASHITA Hisashi  <himi@m17n.org>

	* iiimp/Makefile.in (INCLUDES): Trancate the part of ../src in the pathnames.
	(SOURCE_DIR): Likewise.

	* ChangeLog: For CVS development, put this ChangeLog.

