2010-07-20  Osamu Sayama <osamu.sayama@sun.com>

	* iiimp/iiimpIC.c (PutBackXKeyEvent)
	xiiimp.so.2 must reserve XEvent buffer size when it is passed 
	to XPutBackEvent().

2009-04-27  Osamu Sayama <osamu.sayama@sun.com>

	* xfactory.c (GetWMState):
	Add null atom checking before passing it to XGetWindowProperty().
	This caused BadAtom X error unless WM_STATE is set.

2008-11-25  Yong Sun <yong.sun@sun.com>

	* guiIM.c (IsIMStatusAttached):
	Do not return True when current_setting_enabled is False, therefore
	the attached status window would only be mapped when the status
	placement is explicitly set.

2008-10-11  Yong Sun <yong.sun@sun.com>

	* switchIM.c (_SwitchOpenIM):
	* composeIM.c (_XimpLocalOpenIM):
	* iiimpIM.c (_IIIMP_OpenIM):
	* commonIM.c (CommonOpenIM, CommonCloseIM):

	Obsoleted previous fix, and do not set/unset error handler in
	CommonOpenIM/CommonCloseIM, then set error handler when the XOpenIM
	entry (_SwitchOpenIM, _XimpLocalOpenIM, _IIIMP_OpenIM) succeeds.

	We rely on the fact that xiiimp.so would not be unloaded (by libX11)
	in application's life time, if the initialization succeeds.

2008-10-10  Yong Sun <yong.sun@sun.com>

	* iiimp/commonIM.c (CommonCloseIM):
	Restore application's error handler when closing IM.

2008-07-29  Yong Sun <yong.sun@sun.com>

	* iiimp/iiimpSwitcher.c (property_notify_switcher_window):
	Fixed the possible crash problem, and a little refractory about the
	conditional checking of swithcer_info in other functions.

2008-07-08  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/iiimpIC.c
	Fixed: Ctrl+space does not turn off IM in legacy locale
	like ja.

2008-05-30  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
        * iiimp/switchIM.c
        * iiimp/iiimpUtil.c
        * iiimp/iiimpIC.c
        * iiimp/iiimpSwitcher.c
        * iiimp/KeyMap.c
	Modifier only hotkey and Left/Right modifier distinguishable hotkey support

2007-03-05  Osamu Sayama <osamu.sayama@sun.com>
	* iiimp/guiIMPre.c
	There are two XFactoryCreateIMWindow() calls to request
	new XCreateSimpleWindow call(). One is through SetupStatusWindow(),
	the other is through NewPreeditWindow(). A Window ID reqested through
	SetupStatusWindow() is destroyed by DestroyStatus(). However,
	A Window ID reqested through NewPreeditWindow() is not
	destroyed in DestroyPreedit() so that continuing NewPreeditWindow() 
	causes X server memory leak.
	If input_style is not XIMPreeditNothing, XDestroyWindow() is not
	called and the following freed preedit_areas causes this id not to
	be destroyed forever.

2008-02-12  Yong Sun <yong.sun@sun.com>

	* xiiimp.so/iiimp/iiimpIM.c
	* xiiimp.so/iiimp/popupIM.c:
	Reverted the previous quick fixes, and tuned the logic in
	get_IM_language(), i.e., preferring to use im's premary_locale if it's
	set, otherwise to use the canonicalized language name from
	setlocale(3C).

2008-02-07  Naoyuki Ihsimura <naoyuki.ishimura@sun.com>
	* iiimp/popupIM.c:
	additional fix for previous fix.
	This needs to be done for x86 solaris.

2008-02-06  Naoyuki Ishimura <naoyuki.ishimura@sun.com>
	* iiimp/popupIM.c:
	Quick workaround for xcf popup IM selection does not work problem. 
	IsRememberLastLE still does not take with popupIM.
	(hotkey le selection also take no effect about it)
	It seems to be working with only iiim-panel menu. 
	So wait for Yong's real fix later.

2008-01-24  Yong Sun <yong.sun@sun.com>

	* iiimp/popupIM.c (select_menu):
	Set the primary locale of IM after the desktop_lang is updated, since
	we hacked im_canonicalize_langname() to return the last language
	selection when IsRememberLastLE is true.

2007-11-09  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/popupIM.h
	* iiimp/guiIM.h
	* iiimp/switchIM.c
	* iiimp/iiimpUtil.c
	* iiimp/iiimpUtil.h
	* iiimp/iiimpIM.h
	* iiimp/iiimpSwitcher.c
	* iiimp/popupIM.c:
	Client side super hotkey handling support.
	This makes language/script list which is used by
	super hotkey consistent with the list which is contrlled
	by iiim-properties.
	
2007-08-23  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/guiIMSts.c
	* iiimp/guiIMStsNothing.c:
	Fix for the issue which many status window remain
	on screen with some kind of application (like tkl/tk)
	in attached frame status mode

2007-06-18  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/guidIMSts.c
	Solaris8 bug fix port: 
	Atok12: on CDE, a window which has Atok12 status area 
	appears to distination workspace

2007-06-07  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/switchIM.c
	* iiimp/guiIMSts.c
	Fixed firefox causes iiim-panel flicker with the web page 
	which contains flash or java applet

2007-05-31  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/KeyMap.c
	Added dead key's unicode character mapping with XKeysym
	so that layout emulation works for dead keys
	
2007-05-29  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/KeyMap.c
        Added workaround code for multiple defined symbol (EURO_SIGN)

2007-04-23  Yong Sun <yong.sun@sun.com>

	* iiimp/iiimcfFun.c
	* iiimp/keynames.c
	* iiimp/iiimpIC.c
	* iiimp/iiimpIM.h:
	Fixed: AltGraph+Keys with libkbtrans layouts does not work on iiimxcf.

2007-04-20  Yong Sun <yong.sun@sun.com>

	* iiimp/iiimcfFun.c:
	Fixed: shift+digits on Cyrillic, Greek, Arabic keyboard IMEs of unitle
	would still generate digit characters.

2007-04-12  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/iiimpUtil.c
	Added KanaLock ignoring code in isMatchKey()

2007-04-11  Yong Sun <yong.sun@sun.com>

	* iiimp/iiimcfFun.c
	* iiimp/iiimpIC.c
	* iiimp/iiimpIM.h:
	Added saved_keyevent field in _XICIIimpIMRec structure, to fix the application
	will hang if the client window is grabbed.
	
2007-04-10  Yong Sun <yong.sun@sun.com>

	* iiimp/KeyMap.c:
	Enable AltGraph modifier mask to be sent to server.

2007-03-16  Yong Sun <yong.sun@sun.com>

	* iiimp/KeyMap.c:
	Fix bug: Control+[a-z] are not processed by ATOK

2007-03-14  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/iiimpSwitcher.c
	Fixed: language indicator on iiim-panel sometimes does not
	sync with client input language
	
2007-03-05  Osamu Sayama <osamu.sayama@sun.com>
	* iiimp/iiimpIC.c
	Corrected to return needed buffer size instead of 0 
	in IIIMP_MbLookupString() if XBufferOverflow is set.
	Also fixed memory leaks.

2006-12-29  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/iiimcfFun.c
	* iiimp/guiIM.c
	* iiimp/switchIM.c
	* iiimp/iiimpIC.c
	* iiimp/iiimpIC.h
	* iiimp/iiimpIM.h
	Added IM activation synchronization for all application
	property handling
	
2006-12-14  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/iiimcfFun.c
	when keyevent is passed through from LE, then Caps Lock must
	be refleced to keychar

2006-12-14  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/iiimpIM.c
	Added searching keyboard layout type of language in get_IM_language()	
	
2006-12-07  Osamu Sayama <osamu.sayama@sun.com>
	* xiiimp.so/iiimp/commonIM.h
	* xiiimp.so/iiimp/guiIM.c
	* xiiimp.so/iiimp/guiIMStsNothing.c
	* xiiimp.so/iiimp/iiimpIC.c
	Fixed iiim-xbe random crash problem.
	This issue occurs only when XIMStatusNothing is used with ximp40.so.
	The problem is that a filter which was registered by 
	_XRegisterFilterByType() at create() in guiIMStsNothing.c was 
	not often unregistered. So unexpted track_client_window_move() call 
	with a broken ic was sent to set_window(). Then iiim-xbe crashed. 
	The reason why a filter was not unregistered is that XQueryTree() 
	in XFactoryGetToplevelWindow() returns null when it is called at 
	DestroyGUI(). Since DestroyGUI() in iiim-xbe is invoked by a client 
	XDestroyIC() call and XDestroyWindow() call is also called if 
	a client exits. So sometimes a client window is already closed 
	when DestroyGUI() in iiim-xbe is executing.

2006-12-01  Naoyuki Ishimura  <naoyuki.ishimura@sun.com>
	* iiimp/iiimcfFun.c
	* iiimp/guiIM.c
	* iiimp/guiIM.h
	* iiimp/iiimpIC.c
	* iiimp/commonIM.h
	* iiimp/KeyMap.c
	* iiimp/Makefile.am
	added kbd_layout info to IC attribute

2006-07-19  Osamu Sayama <osamu.sayama@sun.com>

	* iiimp/iiimpAuxProxy.c : Add return value as NULL
	for service_client_compose and service_proxy_compose.

2006-05-08  Takeshi Asano <Takeshi.Asano@sun.com>

	* iiimp/iiimpIM.c (IIIMP_GetIMValues): malloc separately for
	  styles and styles->supported_styles

2006-04-20  Naoyuki Ishimura <Naoyuki.Ishimura@Sun.COM>
	* iiimp/iiimcfFun.c
	use size_t for iconv argument so that it does not crash in 64 bit env

2006-03-31  Yong Sun <yong.sun@sun.com>

	* iiimp/KeyMap.c:
	Add the missing mapping between X keysym and iiim keycode.

2006-03-29  Phill Zhang <phill.zhang@sun.com>

	* iiimp/guiIMLookup.c (SetupLookupWindow):
	add basic title support to the lookup window

2006-03-28  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimpAuxProxyClient.c (xaux_proxy_window_self_filter):
	return if pending messages exist.
	correct return values.
	* iiimp/iiimpAuxProxy.c (xaux_proxy_ic_new): fix typo.  this
	function is not used anyway.

2006-03-28  Phill Zhang <phill.zhang@sun.com>

	* iiimp/guiIMLookup.c (SetupLookupWindow): change the attribute of lookup 
	  window to override redirect in order to make it impossible to get focus.	
	  (UpdateLookup): add basic decoration to the lookup window
	  (SetLookupColor): new

2006-03-27  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimpAuxProxyClient.c (xaux_proxy_ic_new): fix typo.  this
	typo caused clients not to register an event filter which is used
	to communicate xaux proxy.

2006-03-22  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimpAux.c (IIimpFreeAllAuxData): better mimic aux_t
	structure.

2006-03-17  Yong Sun <yong.sun@sun.com>

	* iiimp/iiimpIC.c (SwitchFilter, IIIMP_SetFocus):
	Fixed the enable_input_method property handling in xcf.

2006-03-03  Osamu Sayama <osamu.sayama@sun.com>

	* iiimp/KeyMap.c (modify_Event): If keyChar = 0 and keyCode is
	  NumLock, KanaLockMask is turned on because the keysym of
	  NumLock is 0xff7f. So added to check whether keysym == keyChar
	  to avoid this situation.

2006-03-07  Naoyuki Ishimura  <Naoyuki.Ishimura@Sun.COM>
	* iiimp/iiimcfFun.c
	* iiimp/switchIM.c
	* iiimp/iiimpIC.c
	* iiimp/iiimpSwitcher.c
	* iiimp/commonIM.h
	fixed : changing focus causes iiimd memory growing with the following condition
	- lang swithing mode is 'per desktop'
	- select the language which has plural engines
	
	
2006-03-06 Osamu Sayama <osamu.sayama@sun.com>
	* iiimp/{guiIMClbk.c,iiimcfFun.c,switchIM.c,guiIMSts.c, 
	  iiimpSwitcher.c,popupIM.c}
	  Add the function declaration before use external function.
	  Without this, these functions are assumed to return int value.
	  This causes 64bit pointer to be broken.
	  
2006-03-03 Osamu Sayama <osamu.sayama@sun.com>

	* iiimp/KeyMap.c: Add Xorg keysyms used in ten-key

2006-02-27  Yong Sun <yong.sun@sun.com>

	* iiimp/popupIM.c (select_menu): trigger off the current LE before
	the IC is corrupted.

2006-02-15  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimpAuxProxy.c	(xaux_proxy_setup_server): initialize
	xaux_proxy_role_val with XAUX_PROXY_ROLE_SERVER.
	* iiimp/iiimpAuxProxy.c (xaux_proxy_ic_delete_alone): check
	ic->window_self is None or not, to avoid XDestroyWindow() cause
	BadWindow.  if IIIM_XAUX_PROXY atom is not created yet,
	ic->window_self can be None.
	* iiimp/iiimpAuxProxyClient.c (xaux_proxy_ic_delete_alone): check
	ic->window_self is None or not, to avoid XDestroyWindow() cause
	BadWindow.  if IIIM_XAUX_PROXY atom is not created yet,
	ic->window_self can be None.
	* iiimp/iiimcfFun.c (IMChangeClientType): call
	xaux_proxy_setup_server() if iiim-xbe.

2006-02-10  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimpAuxProxyClient.c (xaux_proxy_window_self_filter):
	when receipt message arrives, delete the ic.  tentative
	implementation.
	(iiimxcf_xaux_proxy_aux_start) do not call xaux_proxy_ic_delete()
	as it's too early to delete the ic.

2006-02-09  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	partial implementation of xaux proxy feature.  when xiiimp.so
	receives IM_AUX_START message, if the xiiimp.so is loaded by
	applications (i.e. not iiim-xbe), xiiimp.so forwards the message
	to iiim-xbe.  then xaux.so attached to iiim-xbe starts xaux
	external process, if necessary.  note that xaux.so which is loaded
	by xiiimp.so which is loaded by non iiim-xbe program must not
	start any external processes.

	TODO: cleanup obsolete code in iiimpAuxProxy.c.  refactoring.
	full implementation of xaux proxy.

	* iiimp/iiimpAux.c: include "iiimpAuxProxy.h"
	(IIimpAuxStart): call xaux_proxy_setup().
	(IIimpDestroryAuxData): call xaux_proxy_ic_destroy().
	(IIimpFreeAllAuxData): call xaux_proxy_destroy().
	(get_aux_dir_from_aux_info): call register_service() with
	xaux_proxy_service_proxy.
	(create_aux_im_data): add argument ev.
	call iiimxcf_xaux_proxy_aux_start().
	(aux_get): call create_aux_im_data() with ev.
	(xaux_proxy_setup): new.
	* iiimp/iiimpAux.h (xaux_proxy_xaux_so_start): new prototype.
	* iiimp/iiimpAuxProxy.c: new.
	* iiimp/iiimpAuxProxy.h: new.
	* iiimp/iiimpAuxProxyClient.c: new.
	* iiimp/iiimpAuxProxyClient.h: new.
	* iiimp/Makefile.am (xiiimp_la_SOURCES): add iiimpAuxProxy.c,
	iiimpAuxProxy.h, iiimpAuxProxyClient.c, iiimpAuxProxyClient.h.
	* iiimp/xiiimp.sym (iiimxcf_xaux_proxy_aux_start): new external
	symbol.

2006-02-07 Osamu Sayama <osamu.sayama@sun.com>

	* iiimp/composeIM.c : Add to check im->ximp_impart is null or not,
	  otherwize im->ximp_impart->im_styles is freed twice.
	* iiimp/commonIM.c : Initialize to null after these are closed by
	  each close functions.

2006-02-03  Naoyuki Ishimura  <Naoyuki.Ishimura@Sun.COM>

	*iiimp/xiiimp.h
	*iiimp/iiimpSwitcher.c : added "LE SWITCH", "CYCLE LE SWITH" hotkeys support
	(IIIMSetHotkey())
	
2006-01-24  Federic Zhang <federic.zhang@sun.com>

	* iiimp/switchIM.c (MbReset): don't unregister Switch_KeyFilter,
	  otherwise IM couldn't be activated once UTF-8 client is reset
	  and focus keeps unchanged where Switcher_KeyFilter will be 
	  registered.
	  (WcReset): likewise
	
2006-01-23  Yong Sun <yong.sun@sun.com>

	* iiimp/iiimcfFun.c (process_keyevent):
	Support XIC's commit callback. 

	* iiimp/iiimpIC.c (IIIMP_MbLookupString):
	Use UTF16ToString to get the mbstring.

	* iiimp/iiimpConv.c (UTF16ToString):
	Remove the static modifier of UTF16ToString.

2006-01-23  Naoyuki Ishimura  <Naoyuki.Ishimura@Sun.COM.

	* iiimp/iiimcfFun.c : check iiimp_icpart is not NULL in language
	switching related functions (ic_initialize_with_input_language,
	ic_change_conversion_mode) to prevent non local im application
	crash with language switcher.
	
2006-01-20  Yong Sun <yong.sun@sun.com>

	* iiimp/iiimcfFun.c (process_keyevent):
	* iiimp/keynames.c (keysym_to_unicode_tab[], 
			    keysym_to_unicode, unicode_to_utf8):
	* iiimp/iiimpIC.c (IIIMP_MbLookupString):
	When the key is returned as unused key from server, check if
	it's corresponding to an unicode character, if so, try to 
	commit it.

2006-01-19  AShiZaWa KaZuNoRi  <kasha@sun.co.cp>

	* iiimp/KeyMap.c (IIIMCF_keyevent_To_XKeyEvent): handle key
	release event.

2006-01-12 Osamu Sayama <osamu.sayama@sun.com>

	* iiimp/KeyMap.c : Set awt_KanaLockMask with using the other way
	if xkb enabled kana lock is used.

2006-01-12  Yong Sun <yong.sun@sun.cOM.

	* iiimp/KeyMap.c:
	Added keycode for Euro sign.

2006-01-10  Naoyuki Ishimura <Naoyuki.Ishimura@Sun.COM>
	* iiimp/switchIM.c, iiimp/iiimpSwitcher.c, iiimp/popupIM.c
	implemented per IC or Desktop lanuage switching
	- set _IIIM_SWITCHER_DESKTOP_LANGUAGE property to root window
	and get it at focus in timing if language switching mode is per Desktop
	- same mechanism is implemented in iiimgcf and gnome-im-switcher-applet
	
2005-12-29  Osamu Sayama <osamu.sayama@sun.com>

	* iiimp/iiimpSwitcher.c : Revised 2969. Instead of XGetWindowProperty,
	use ic_switcher_get_hotkey no matter im_switcher is active or not.

2005-12-28  Federic Zhang <federic.zhang@sun.com>

	* iiimp/iiimpSwitcher.c (change_hotkey_with_type): num_keys is referenced
	  in the following change made to pkev_on and pkev_off, don't change it.
	
2005-12-27  Osamu Sayama <osamu.sayama@sun.com>

	* If hotkey_list_atom is null, use XGetWindowProperty
   	  just like before HAS_IIIM_PROPERTIES is enabled, otherwise
	  Kanji key cannot be used as a trigger key in iiimxcf again.

2005-12-27  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/Makefile.am (xiiimp_la_LDFLAGS): add $(top_srcdir)/iiimp
	to xiiimp.sym as a workaround for build problem.

2005-12-26  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/Makefile.am (xiiimp_la_LDFLAGS): add -export-symbols xiiimp.sym.
	* iiimp/xiiimp.sym: new.
	This change resolves conflict of symbols that are defined in
	xiiimp.so.  The conflict is found on Solaris, which crash
	mozilla/firefox with flash player.

2005-12-23  Yong Sun <yong.sun@sun.com>

	* iiimp/keynames.c: Revert the previous "strcasecmp" change, since
	the string representation of keysyms are really case sensitive.
	E.g., "a" and "A". I only considered the function keys :(
	
	* iiimp/iiimpSwitcher.c (ic_switcher_set_input_language):
	If im_switcher (i.e., gimlet) is not active, the sw_info could also 
	be allocated, but sw_info->switcher_window is None.

2005-12-23  Yong Sun <yong.sun@sun.com>

	* iiimp/keynames.c:
	x11_key_compare_by_name (): To use strcasecmp instead of strcmp to 
	                            qsorting and bsearching.
	g2icode (), i2gcode ()    : Added support for Hangul and Hanja keys.

2005-12-22  Yong Sun <yong.sun@sun.com>

	* iiimp/KeyMap.c:
	Align the Hangul and Hanja keycodes with new difinitions.

2005-12-21  Federic Zhang <federic.zhang@sun.com>

	support trigger key setting via iiim-properties
	
	* iiimp/composeIM.c (_Ximp_Local_SetFocus): put hotkey handling
	  code into IIIMSetHotkey.
	* iiimp/iiimpIC.c (IIIMP_SetFocus): likewise
	* iiimp/iiimpSwitcher.c (ic_switcher_get_hotkey_with_atom):
	  get the hotkey list with _IIIM_SWITCHER_HOTKEY_LIST atom instead,
	  which can be set by iiim-properties.
	  (IIIMSetHotkey): new
	* iiimp/iiimpSwitcher.h: updated
	
2005-12-15  Osamu Sayama <osamu.sayama@sun.com>

	* Since im_canonicalize_language() is not implemented yet, 
	add hack code until this is added.

2005-12-13  Federic Zhang <federic.zhang@sun.com>

	* iiimp/composeIM.c (_Ximp_Local_SetFocus): ensure the change made to pkev_on
	on 2005-12-07 happens in CDE environment where im switcher isn't active.
	
2005-12-12  Federic Zhang <federic.zhang@Sun.COM>

	* iiimp/switchIM.c (_SwitchOpenIM): don't check whether im switcher is active 
	or not to make call to COMPOSE_OpenIM_SWITCH.
	(SwitchCreateIC): likewise.
	Fix the dtterm crash on Solaris UTF-8 locale in JDS env, the im->local_impart
	should be initialized.
	
2005-12-12  Naoyuki Ishimura  <Naoyuki.Ishimura@Sun.COM>

	* iiimp/guiIM.c, iiimp/guiIM.h, iiimp/switchIM.c and iiimp/popupIM.c
	Implemented On/off policy at language switching.
	
2005-12-12  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/switchIM.c (_SwitchOpenIM): increment active_im_count.
	(SwitchCloseIM): decrement active_im_count.
	* iiimp/iiimpAux.c (IIimpFreeAllAuxData): refer active_im_count to
	know if there are active IMs.
	When there are multiple IMs in a single process, and if one IM is
	closed, IIimpFreeAllAuxData() will be called even if other IMs are
	active.  THis scenario is the suspected cause of Mozilla crash
	with flash plugin.  This change is to work around the problem.

2005-12-09  Naoyuki Ishimura   <Naoyuki.Ishimura@Sun.COM>

	* iiimp/guiIM.c : fixed - status is displayed even if
	status is disabled when placement is attached frame.
	
	
2005-12-08  Naoyuki Ishimura   <Naoyuki.Ishimura@Sun.COM>

	* iiimp/iiimcfFun.c, iiimp/iiimpIC.c, iiimp/iiimpSwitcher.c and
	iiimp/popupIM.c:
	Fixed StarSuite7 language menu swiching result is not reflected to gimle
	
2005-12-08  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/guiIMClbk.c (CallStatusDrawCallback): revert 2893
	(2005-11-22) because it assigns "" (literal) to pointer to
	XIMText, i.e. type mismatch.  New fix initializes XIMText data and
	uses it.

2005-12-07  Yong Sun <Yong.Sun@Sun.COM>

	* iiimp/iiimpswitcher.c (change_hotkey_with_type):
	when the 1st focus-in within composeIM, the default trigger 
	key is just ctrl+space, we still need update the pkev_on data 
	structure even the hotkeys are not changed.

2005-12-06  Naoyuki Ishimura <Naoyuki.Ishimura@Sun.COM>

	* iiimp/guiIMClbk.c : reset status with " " when it's NULL
	fixed StarSuite7/UNITLE status is not updated problem
	
2005-12-06  Naoyuki Ishimura <Naoyuki.Ishimura@Sun.COM>

	* iiimp/guiIMSts.c : added free() to the return 
	value of locale_to_utf8()

2005-12-05  Naoyuki Ishimura <Naoyuki.Ishimura@Sun.COM>

	* iiimp/guiIMClbk.c, iiimp/guiIMSts.c, iiimp/popupIM.c
	- added COMPOSE_IM status handling
	- added COMPOSE_IM langlist handling

2005-12-05  Yong Sun <yong.sun@sun.com>

	* iiimp/KeyMap.c: added Sun special deadkey symbols in keymapTable [].

2005-12-02  Naoyuki Ishimura <Naoyuki.Ishimura@Sun.COM>

	* iiimp/popupIM.c : Adapt UpdateIMCharacterSubsets()
	to iiim-properties (#ifdef HAS_IIIM_PROPERTIES)
	* iiimp/guiIM.h, iiimp/guiIMClbk.c, iiimp/iiimcfFun.c :
	Use useUnicode flag in CallStatusDrawCallback() for converting
	UTF16 to UTF-8 when Unicode client uses non attached status.
	Otherwise, StarSuite7 status string become garbage in gimlet window.

2005-12-02  Osamu Sayama <osamu.sayama@sun.com>

	* iiimp/iiimpConv.c (UTF16ToString): fix for 64bit iiimxcf.

2005-12-02 Naoyuki Ishimura <Naoyuki.Ishimura@Sun.COM>

	* added default LE handling for primary locale
	(iiimcfFun.c)
	
2005-12-01  Naoyuki Ishimura <Naoyuki.Ishimura@Sun.COM>
	* fixed StarSuite7 does not up problem
	Got rid of make_ui_from_element call and use lang_ui of LangElement
	in UpdateIMCharacterSubset()
	
2005-12-01  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* configure.ac: add --enable-iiim-properties option.  this option
	will be removed when iiim-properties is fully implemented and be
	stable enough.

2005-11-30  Naoyuki Ishimura <Naoyuki.Ishimura@Sun.COM>

	All of modifications are enclosed with #ifdef HAS_IIIM_PROPERTIES		
	* iiimp/popupIM.c : use iiim-properties language UI name. 
	It makes language menu consistent with gimlet lanuage menu.
	* iiimp/iiimcfFun.c : make init_langlist () to use iiim-properties
	user listricted language list not all of available languages.
	And made IMSetPrimaryLocaleWithEngine function.
	* iiimp/iiimpIM.h : added LangElement structure and
	IMSetPrimaryLocaleWithEngine function.
	
2005-11-25  Federic Zhang <federic.zhang@sun.com>

	* iiimp/iiimpSwitcher.c (change_hotkey_with_type): return if the hotkey setting
	remain unchanged to avoid that new memory is malloced.
	
2005-11-25  Yong Sun <Yong.Sun@Sun.COM>

	* iiimp/KeyMap.c: Added compose key entry in keymapTable []
	to enable forwarding compose key event to server.
	
2005-11-25  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/guiIM.c (GetIMSettings): XGetWindowProperty() 64 bit issue.

2005-11-24  Federic Zhang <federic.zhang@sun.com>

	* iiimp/composeIM.c (_Ximp_Local_SetFocus): ensure ic->iiimp_icpart isn't null
	before making call to IMChangeFocus and changing hotkey profile.
	
	(_Ximp_Local_UnSetFocus): likewise.
	
2005-11-23  Federic Zhang <federic.zhang@sun.com>

	Modify all hotkey profile and trigger data in both _Ximp_Local_SetFocus and
	IIIMP_SetFocus to ensure customized trigger key works in Solaris UTF-8 locale.
	
	* iiimp/iiimpSwitcher.c (change_hotkey_with_type): Besides the hotkey profile
	and trigger data in client framework, also modify the pkev_on and pkev_off
	in the XIMIIimIMRec struct, SwitchFilter uses the data to check whether key
	event is trigger or not which switch filter from compose IM to IIIM in 
	Solaris UTF-8 locale.
	
	* iiimp/composeIM.c (_Ximp_Local_SetFocus): call IMChangeFocus to guarantee the
	client receives REGISTER HOTKEY and hotkey profile is created.
	
	Change client's hotkey profile and trigger data with ic_switcher_change_hotkey_with_type
	if im switcher is running.
	
	(_Ximp_Local_UnsetFocus): likewise
	
2005-11-22  Yong Sun <Yong.Sun@Sun.COM>

	Fix bug "XFilterEvent returns False only when first IM turn off on UTF-8 locale"

	* iiimp/switchIM.c (Switch_KeyFilter): in case of "Switch_OFF" (in fact, only 
	the first turn off will fall into this branch, dueto the incompleted 
	hotkey_state_notify protocol implementation in iiim), the current 
	active_filter of ic is IIIMP_Local_KeyFilter, after the key event is sent 
	to iiim server and the ic is reset, we could simply return true.

2005-11-22  Federic Zhang <federic.zhang@sun.com>

	* iiimp/guiIMClbk.c (CallStatusDrawCallback): set call_data->data.text with ""
	if status is set to display on Panel to fix staroffice crash in Solaris.
	
2005-11-21  Federic Zhang <federic.zhang@sun.com>

	* iiimp/switchIM.c (switch_KeyFilter): don't call to IIIMP_Local_KeyFilter
	in order to properly change status text for dtterm in Solaris UTF-8 locale.
	
2005-11-21  Federic Zhang <federic.zhang@sun.com>

	* iiimp/composeIM.c (_Ximp_Local_SetFocus): call ic_switcher_set_focus and
	GetIMSettings to initialize the im_switcher and current_setting if needed
	to fix wrong status text display problem in Solaris UTF-8 locale.
	
2005-11-17  Naoyuki.Ishimura <naoyuki.ishimura@sun.com>

	* iiimp/iiimcfFunc.c (make_strlist_with_alloc): initialize the *count
	
2005-11-16  Federic Zhang <federic.zhang>

	Fix client crash when IIIM server fails to be started.
	
	* iiimp/guiIMSts.c (SetStatusFont): use DEFAULT_FONT_NAME if im->iiimp_impart is null.
	* iiimp/guiIMLookup.c (SetupLookupWindow): Likewise
	* iiimp/guiIMPre.c (SetPreeditFont): Likewise
	
2005-11-16  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/commonIM.c (CommonIM_Error_Handler): if appl_error_handler
	is set to CommonIM_Error_Handler (self), application crashes due
	to infinite recursive call.

2005-11-16  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	This change intends XAUX destroy() to be able to call
	service_server().

	* iiimp/iiimpAuxP.h(IIimpFreeAllAuxData): new argument im.
	* iiimp/iiimpAux.c (IIimpFreeAllAuxData): new argument im.
	create fake aux_t data and pass it to destroy().
	(service_server): test aux->ic, aux->im, then aux->im_list.
	* iiimp/iiimpIM.c (SWITCH_CloseIM): call IIimpFreeAllAuxData()
	with im.

2005-11-14  Federic Zhang <federic.zhang@sun.com>

	With the HAS_IIIM_PROPERTIES if directive, display lang list from user's 
	preference in status window by Naoyuki.Ishimura@Sun.COM
	
	* iiimp/iiimcfFun.c (make_strlist_with_alloc): create one array of XIMText
	  with one string of langlist.
	  (init_langlist): get lang list from user's preference.	  
	* iiimp/popupIM.c (lang_pair_displayLanguage): add more lang entries.
	  (update_menu): don't use ComposeIM with the if directive
	  (get_menu_size): likewise
	  (select_menu): likewise
	  
2005-11-14  Yong Sun <Yong.Sun@Sun.COM>

	* iiimp/guiIMStsNothing.c: export track_client_window_move ()
	* iiimp/guiIM.c (DestroyGUI): unregister the callback filter when 
	IC is destroied.

2005-11-11  Yong Sun <Yong.Sun@Sun.COM>

	Since IIIM uses hotkey mechanism to trigger on/off LEs, 
	the client will depend on hotkey_state_notify event to 
	update its status. But currently, the implementation of 
	hotkey_state_notify either in server or in iiimcf have
	problem. Refer to:

	  iiimsf/src/IIIMP_hotkey.cpp:IIIMP_hotkey::process_hotkey()
	  lib/iiimcf/trigger.c:iiimcf_receive_trigger_notify().

	The quick and simple fix (work around) is to trick the 
	status update in xiiimp

	* iiimp/guiIMClbk.c (CallStatusDrawCallback): change the condition
	* iiimp/switchIM.c (Switch_KeyFilter): remove the SetConverisonMode
	call since its side-effect. 

2005-11-04  Federic Zhang <Federic.Zhang@Sun.COM>

	Take out the patch made by Jens Petersen at April 21, 2005, which
	cause serious partial commit regression problem in Java application.
	
	* iiimp/iiimcfFun.c (commit): don't erase preedit text.
	* iiimp/iiimpIC.c (IIIMP_MbReset, IIIMP_WcReset): don't return preedit string.
	
2005-11-04  Federic Zhang <Federic.Zhang@Sun.COM>
        
	* iiimp/iiimpIM.c (initialize, uninitialize): remove the static variable, inited,
	  just directly use iiimcf_initialize and iiimcf_finalize. Otherwise, would fail to
	  create EIMIL struct when switch from IIIM to XIM in Solaris UTF-8 locale.
	
2005-11-01  Federic Zhang <Federic.Zhang@Sun.COM>

	The NULL point checking is necessary because ic->local_icpart will be freed
	in _Ximp_Local_DestroyIC and it still will be refered when client gets one
	status update message from server and try to update status window in IIIMP_DestroyIC.
	
	* iiimp/status.c (setup_local_status_ext, Ximp_Local_Status_Start,
	  Ximp_Local_Status_Draw, Ximp_Local_Status_Destroy, Ximp_Local_Status_Set):
	  check whether ic->local_icpart is NULL before refering it (Osamu.Sayama@Sun.COM)
	 
2005-10-28  Yong Sun <Yong.Sun@Sun.COM>

	* iiimp/guiIM.c (DestroyGUI): Unregister the property notification
	filter when IC is destroying.
	
2005-10-28  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/KeyMap.c (XKeyEvent_To_IIIMCF_keyevent): Tentative
	solution for Solaris.  Checking of HTT_IGNORES_LOCK_MASK is
	disabled and enclosed code segment will always be executed.  It's
	silly to require environment variable HTT_IGNORES_LOCK_MASK
	always.

2005-10-25  Yong Sun <Yong.Sun@Sun.COM>

	* iiimp/switchIM.c (Switch_KeyFilter): Since SetConversionMode () may 
	change ic's active filter, which makes compose does not work in X env, 
	move it up to the to the top of Switch_ON branch.

2005-10-11  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimpAux.c: add 64 support for AMD64
	* iiimp/iiimpDL.c: add 64 support for AMD64

2005-10-06  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/KeyMap.c (KanaMode): this variable is passed as data to
	XChangeProperty() with format 32, so it must be long.
	(CreateKanaWindow): XChangeProperty() nelements argument is a
	number of data, not byte length.
	(XKeyEvent_To_IIIMCF_keyevent): XChangeProperty() nelements
	argument is a number of data, not byte length.
	* iiimp/iiimpSwitcher.c (ic_switcher_set_conversion_mode):
	XChangeProperty() data argument must be `long *' if format is 32.

2005-10-05  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimpAux.c (ROUNDUP): fix for 64 bit environment.
	Commit on behalf of <osamu.sayama@sun.com>.

2005-09-27  Federic Zhang <federic.zhang@sun.com>
	
	* iiimp/iiimpAUX.c (IIimpAuxDownload): add missing local variables
	  for sparcv9 arch.
	
2005-09-27  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimcfFun.c (IMCreateHandle): add client_group support

2005-09-20  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/switchIM.c (Switch_KeyFilter): call
	SetConversionMode(ic, CONV_ON)
	Commit on behalf of <naoyuki.ishimura@sun.com>.

2005-09-12  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/keynames.c: fix platform dependent keycode problem

2005-08-16  Federic Zhang <federic.zhang@sun.com>

	enable input method engine switching
	
	* iiimp/iiimpIC.c
	  (format_iiimcf_string): new
	  (format_utf8_string): new
	  (ic_initialize_with_input_language): 
	  - delete wrong statement that declares input language switch
	    isn't supported in non-UTF-8 locale.
	  - check whether new_lang contains the name of input method engine,
	    change original input method name and create new ICAttribute
	    message for it to enable input method engine switching at server
	    side.
	
2005-08-11  Federic Zhang <federic.zhang@sun.com>

        support hotkey configuration at client side

        * iiimp/xiiimp.h:  add the IIIMF_MODIFIERS add TRIGGER_KEY_LABEL.
        * iiimp/iiimpIC.c (IIIMP_SetFocus): handle hotkey configuration, client
          check the _IIIM_SWITCHER_SET_HOTKEY atom, change it with hotkey info
          from server to notify gimlet if the atom contains nothing. Otherwise
          change hotkey with the new trigger value from gimlet if the atom property
          gets changed.
        * iiimp/iiimpSwitcher.c:
          add set_hotkey_atom to struct _SwitcherInfo.
          (im_switcher_new): create the new atom, _IIIM_SWITCHER_SET_HOTKEY,
          (ic_switcher_set_hotkey): new
          (my_strfreev): new
          (my_str_length): new
          (my_strsplit): new
          (ic_switcher_get_hotkey_with_type): new
          (ic_switcher_get_hotkey): new
          (change_hotkey_with_type): new
          (convert_hotkey_to_IIIMCF_keyevent): new
          (ic_switcher_change_hotkey_with_type): new
          (ic_switcher_get_hotkey_with_atom): new
        * iiimp/Makeile.am: add keynames.c and keysyms.c into xiiimp_la_SOURCES
        * iiimp/keynames.c, keysyms.h: new
            copy from gdkkeynames.c and gdkkeysyms.h
            copy g2icode and i2gcode from IIIMGCF/IIIMGdkEventKey.c

2005-08-08  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimpIC.c (IIIMP_Local_KeyFilter): call
	iiimcf_is_capability_supported() to determine whether the server
	supports IIIMP_CAPABILITY_KEY_RELEASE.

2005-07-27  Federic Zhang <federic.zhang@sun.com>

	Add support for key release event.

	* iiimp/iiimpIC.c (IIIMP_Local_KeyFilter): don't use ic->forward_event_callback
	  to handle key release event, which should be forwarded with IMForwaredEvent to server.
	* iiimp/KeyMap.c (XKeyEvent_To_IIIMCF_keyevent): mask pkev->modifier with
	  0x80000000 for key release event which will be sent to server.

2005-07-21  Makoto Fujiyoshi <makoto_fujiyoshi@justsystem.co.jp>

	* iiimp/iiimpIM.c (get_IM_language): fix memory leak.

2005-06-07  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/iiimcfFun.c (ic_initialize_with_input_language): don't call
	ic_switcher_set_input_language here. it causes the infinite loop of
	PropertyNotify event between xiiimp.so and gimlet.

2005-04-26  Akira TAGOH  <tagoh@redhat.com>

	* configure.ac (IIIMLIBDIR): Use IMDIR instead of the hardcoded path. (#71)
	(IIIMLEDIR): Use IM_LEIFDIR instead of the hardcoded path.

2005-04-21  Jens Petersen  <petersen@redhat.com>

    A collection of patches from Kohji Sanpei <ksampei@jp.ibm.com>:
	
	* iiimp/iiimpIC.c (IIIMP_MbReset): Close preedit window after reset.
	Return preedit string correctly not empty string.
	(IIIMP_WcReset): Ditto.

	* iiimp/iiimcfFun.c (IMTriggerNotify): Close lookup window after
	XmbReset.
	(draw_preedit): Initial carat to 0 to avoid segfault
	(commit): Fix XIMPreeditCallbacks on Motif clients.

2005-04-18  Jens Petersen  <petersen@redhat.com>

	* iiimp/guiIMLookup.c (DrawLookupString2, CompareLookupData,
	CopyXIMText,CopyLookupData): Patch from Kohji Sanpei
	<ksampei@jp.ibm.com> to fix null pointer segfault when accessing
	aux window.

    Patch from Kohji Sanpei <ksampei@jp.ibm.com> fixing preedit area:

	* iiimp/guiIMPreArea.c (set_window): Lots of preedit area fixes.

	* iiimp/guiIMPre.c (UpdatePreeditAll): For XIMPreeditArea clear
	and update preedit areas.

	* iiimp/guiIMStsArea.c (set_window): Make sure status->y is set
	non-negative with fontset.

2005-04-16  Sriram Swaminathan  <sriram.swaminathan@sun.com>

	* iiimp/KeyMap.c

	Introduced the environment variable HTT_IGNORES_LOCK_MASK inorder
	to make the EURO_SYMBOL composition (using the keyboard shortcuts
	such as <AltGraph>+'e' possible for XIM clients. By default 
	HTT_IGNORES_LOCK_MASK willnot be set.

2005-04-16  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/iiimpIM.c (im_canonicalize_langname): Fixed a typo.

2005-04-14  Jens Petersen  <petersen@redhat.com>

	* autogen.sh: Run libtoolize.  Pass --copy to automake.

2005-04-13  Jens Petersen  <petersen@redhat.com>

	* Makefile.am (ACLOCAL_AMFLAGS): Include toplevel acfiles.

	* configure.ac: Name package iiimf-lib-x, bump version, and update
	project mail address.  Do not call AC_CONFIG_AUX_DIR.  Do not
	override PACKAGE and VERSION.  	Call AM_INIT_AUTOMAKE without
	arguments.

2005-04-06  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimcfFun.c: include limits.h

2005-04-04  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/iiimpIM.c (get_IM_language): try to find the en LEs too like
	iiimgcf does.

	* iiimp/iiimcfFun.c (ic_initialize_with_input_language): check NULL.
	(get_input_language): return a proper language only. otherwise NULL.

2005-04-01  Motonobu Ichimura  <famao@openi18n.org>

	* iiimp/iiimpIM.c (getIMLangName): fix memory leak.
	* iiimp/iiimpIC.c (IIIMP_DestroyIC): ditto.

2005-03-31  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* iiimp/iiimcfFun.c (IMCreateHandle): Create an atom IIIM_SERVER
	to pass IIIM clients the unix domain socket file name.

2005-03-22  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/csconv.h: removed. use lib/CSConv/csconv.h instead of.

	* iiimp/iiimcfFun.c (IMCreateIC): compare the client type with "IIIMX XIM Server".

	* iiimp/iiimpAux.c (service_server): likewise.

	* iiimp/guiIMStsNothing.c (create): likewise.

2005-03-21  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/iiimpAux.c (IIimpAuxDownload): ensure that there is a directory
	separator after the base path.

2005-03-17  AShiZaWa KaZuNoRi  <kasha@sun.co.jp>

	* configure.ac: path name changes.
	* iiimp/csconv.h: path name changes.
	* iiimp/guiIMLookup.c: path name changes.
	* iiimp/guiIMPre.c: path name changes.
	* iiimp/guiIMSts.c: path name changes.
	* iiimp/iiimpAux.c: path name changes.
	* iiimp/iiimpConv.c: path name changes.
	* iiimp/iiimpDL.c: path name changes.
	* iiimp/iiimpIM.c: path name changes.

2005-03-15  Sriram Swaminathan  <sriram.swaminathan@sun.com>

	* iiimp/iiimcfFun.c

	Instead of destroying and creating input context everytime when
	switching language, iiimcf_context_set_attr() is used to change
	the language attribute for the IC using IM_SETICVALUES protocol.

2005-03-11  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/KeyMap.c: for backward-compatiblity of Kanji and 
	Zenkaku_Hankaku keys. Remove unofficial HTT_USES_LINUX_XKEYSYM environ
	use, but the behaviour will be as if it was set.
	Assuming no one will need the else case(without HTT_USES_LINUX_XKEYSYM).
	What if HTT_GENERATES_KANAKEY? Should we want to remove this, or
	document?

	* iiimp/XimpConv.c (XLookupString): set XkbLC_ForceLatin1Lookup.
	Should we want availabilty check of XKB yet?

2005-03-07  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/iiimcfFun.c
	* iiimp/iiimpAux.c
	* iiimp/iiimpIM.c
	* iiimp/iiimpConv.c
	* iiimp/guiIMLookup.c
	* iiimp/iiimpSwitcher.c:
	applied some compiler warning fixes patch from Dan Williams <dcbw@redhat.com>

2005-03-03  Jens Petersen  <petersen@redhat.com>

	* iiimp/Makefile.am (xiiimp_la_SOURCES): sync the filelist.
	All the header files were missing.

	* iiimp/iiimpDL.c: don't raise a cpp error when _LP64 is defined
	on non sparcv9 architectures
	(lc_path): test for _MACH64_NAME instead of _LP64

	* iiimp/popupIM.c: cast ic with XIM instead for callback to avoid
	gcc warning

	* iiimp/lookup.c: cast ic with XIM for callback to avoid gcc warning

	* iiimp/KeyMap.c (GetKanaFlag): init tmp to NULL and cast it void*
	to avoid gcc warning

2005-02-10  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/KeyMap.c: use Zenkaku_Hankaku for conversion on/off

2005-01-25  Sriram Swaminathan  <sriram.swaminathan@sun.com>

	* iiimp/KeyMap.c
	Support DEAD_KEYS for XIM clients
	
2004-12-22  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/KeyMap.c: use Henkan and Kanji keys to perform conversion
	and start conversion mode

2004-12-21  Makoto Fujiyoshi  <makoto_fujiyoshi@justsystem.co.jp>

	* iiimp/KeyMap.c (modify_Event):
	Correct the calculation mistake of the keysym.
	Unless this correction is done, Ctrl + Shift + '1' is converted
	to Ctrl + Shift + 'A'.
	
2004-12-14  Makoto Fujiyoshi  <makoto_fujiyoshi@justsystem.co.jp>

	* iiimp/iiimpUtil.c (isMatchKey):
	increment of 'pkev' addition.
	
2004-12-13  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* iiimp/guiIMLookup.h: 
	* iiimp/guiIMLookup.c:
	adjust the width of candidate list window according to the sum
	of each candidate text width when the candidates are listed in
	a single row.

2004-12-01  Makoto Fujiyoshi  <makoto_fujiyoshi@justsystem.co.jp>

	* iiimp/KeyMap.c: bug fix for Japanese Kana mode.
	
2004-12-01  Makoto Fujiyoshi  <makoto_fujiyoshi@justsystem.co.jp>

	* iiimp/KeyMap.c
	* iiimp/KeyMap.h
	* iiimp/iiimcfFun.c:
	
	1. avoid crash when the window of other process is destroyed.
	2. added implementation for Japanese Kana mode.
	
2004-11-29  Hidetoshi Tajima  <tajima@red.iplanet.com>

	* iiimp/iiimcfFun.c: don't set DISABLE_AUTOMATIC_TRIGGER_NOTIFY
	nor use own trigger key handlers, but use hotkeys.
	(patch from Roger So <roger.so@sw-linux.com>)
	* iiimp/KeyMap.c: support F11 and F12 keys at non-Sun X11 environments.

2004-11-05  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/trace_message.c
	* iiimp/XimpConv.c
	* iiimp/trace_message.h
	* iiimp/XimpRm.c
	* iiimp/XimpParser.c
	* iiimp/guiIM.h
	* iiimp/iiimpAux.c
	* iiimp/switchIM.c
	* iiimp/iiimpDL.c
	* iiimp/iiimpAux.h
	* iiimp/guiIMSts.c
	* iiimp/iiimpUtil.h
	* iiimp/iiimpAuxP.h
	* iiimp/iiimpIC.c
	* iiimp/ximp40.h
	* iiimp/iiimpIC.h
	* iiimp/iiimpAuth.c
	* iiimp/iiimpIM.c
	* iiimp/iiimpAuth.h
	* iiimp/iiimpICG.h
	* iiimp/csconv.h
	* iiimp/xfactory.h
	* iiimp/iiimpColor.h
	* iiimp/guiIMPre.c
	* iiimp/iiimpTr.h
	* iiimp/iiimpReq.h
	* iiimp/KeyMap.h: clean up to silence the compiler warnings.

2004-11-02  Jens Petersen  <petersen@redhat.com>

	* configure.ac: Don't override CFLAGS, CXXFLAGS and LDFLAGS.

2004-09-10  Makoto Fujiyoshi <makoto_fujiyoshi@justsystem.co.jp>

	* iiimp/iiimpAux.c (IIimpDestroryAuxData)
	* iiimp/iiimpIC.c  (IIIMP_DestroyIC):
	call IIimpDestroryAuxData() when IC is destroyed.

2004-08-25  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/guiIMSts.c (SetupStatusWindow): remove the all of the window
	decoration.

	* iiimp/iiimpIM.c (get_IM_language): try to find the supported
	language with ll_cc and ll if ll_cc.charset was not found.

2004-08-24  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/guiIMSts.c (StatusDrawText): unmap the status window if the
	status string is nothing.

2004-08-24  Akira TAGOH  <tagoh@redhat.com>

	* iiimp/xfactory.c (remove_decoration): add _NET_WM_STATE_SKIP_TASKBAR
	atom into _NET_WM_STATE in order to hide the status window from the
	taskbar.

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.

