2004-09-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* changes.immodule
	  - Describe a bugfix
	
2004-09-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/inputmethod/tqinputcontextinterface_p.h
	  - Update UUID of TQInputContextFactory in accordance with API change
	    of TQInputContext to avoid loading old invalid plugins
	
2004-09-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* README.immodule
	  - Add 'About this release' section
	  - Update version information
	  - Update to follow the change of configure options
	  - Modify some English expressions
	
	* changes.immodule
	  - Move release information to README.immodule
	  - Add differences from previous release
	  - Add description about incremental change indication
	
	* ChangeLog.immodule
	  - Update
	
2004-09-09  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqapplication.cpp
	  - (removePostedEvents):
	    * Fix infinite loop condition
	    * delete receiver->postedEvents if the list has been empty
	
2004-09-09  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit backports some code fragments from TQt4 branch to make
	  input method plugins source compatible with TQt4.
	
	* src/kernel/tqinputcontext.cpp
	  - (TQInputContext): Add 'parent' arg
	
	* src/kernel/tqinputcontext.h
	  - Exclude qptrlist.h when compile with TQt4
	  - (struct TQInputContextMenu): Exclude member variables when compile
	    with TQt4
	  - (TQInputContext): Add 'parent' arg
	  - (addActionsTo): New function for TQt4
	
2004-09-08  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit renames input method module from 'input' to 'inputmehod'
	  because the name 'input' is too generic to indicate its function
	
	* configure
	  - Replace configuration options '-im' and '-im-ext' with
	    '-inputmethod' and '-inputmethod-ext' to be consistent with the
	    name of input method module subdirectory 'inputmethod'
	  - Rename the module name 'input' with 'inputmethod'
	
	* src/qt.pro
	  - Rename the module name 'input' with 'inputmethod'
	  - Rename some variable names inaccordance with the renaming of the
	    module
	  - Replace 'qt_input.pri' with 'qt_inputmethod.pri' in accordance
	    with the renaming of the file
	
	* src/inputmethod/tqt_input.pri
	  - Rename to qt_inputmethod.pri
	* src/inputmethod/tqt_input.pri
	  - Renamed from qt_input.pri
	  - Replace module names
	  - Rename some variable names inaccordance with the renaming of the
	    module
	
2004-09-08  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* Rename input module subdirectory from "input" to "inputmethod"
	
2004-09-08  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit contains following issues
	  - An API change. Return type of TQInputContext::identifierName and
	    TQInputContext::language has been changed from TQCString which is
	    deprecated in TQt4 to TQString to make plugins source compatible
	    with TQt4.
	  - Other backports from TQt4 branch
	  - Fix event receiving order inversion between TQKeyEvent and
	    TQIMEvent. The code is implemented based on Cougar's and
	    Kazuki's. Thank you the efforts. See following discussion for
	    further information.
	    http://freedesktop.org/pipermail/immodule-qt/2004-September/000447.html
	    http://freedesktop.org/pipermail/immodule-qt/2004-September/000497.html
	
	* src/kernel/tqinputcontext.h
	  - (identifierName, language): Change return type from TQCString to TQString
	  - (addMenusTo): Make TQt3 specific
	* src/kernel/tqinputcontext.cpp
	  - (identifierName):
	    * Change return type from TQCString to TQString
	    * Modify the function description comment
	  - (language): Change return type from TQCString to TQString
	
	* src/kernel/tqwidget.cpp
	  - (clearFocus): Enclose immodule specific code by #if
	    defined(TQ_WS_X11)
	
	* src/kernel/tqapplication.h
	  - Add 'class TQIMEvent' declaration
	  - (removePostedEvents): New overriding function
	* src/kernel/tqapplication_x11.cpp
	  - Remove redundant 'class TQInputContext' declaration
	  - (postIMEvent): Fix the event receiving order inversion problem
	  - (x11_apply_settings): Replace TQString::find() which is deprecated
	    in TQt4 with TQString::startsWith()
	  - (postEvent): Fix invalid TQIMEvent compression that ignores IMStart
	    boundary
	  - (removePostedEvents): Original version of the function. Replace
	    the implementation with 2-args version. The behavior is not
	    changed
	  - (removePostedEvents): New overriding function. This function only
	    removes events that has specified event type. The implementation
	    is copied from original version of the function and modified to
	    accept event_type. This function is required by postIMEvent()
	  - (setActiveWindow): Enclose immodule specific code by #if
	    defined(TQ_WS_X11)
	
	* src/input/tqinputcontextinterface_p.h
	  - Modify a coding style to follow Trolltech's one for TQt3
	
	* src/input/tqinputcontextplugin.h
	  - Fix typos in comment
	* src/input/tqinputcontextplugin.cpp
	  - (keys, TQInputContextPlugin, ~TQInputContextPlugin): Modify the
	    function description comment
	
	* src/input/tqinputcontextfactory.h
	  - Remove #include "tqinputcontext.h" to reduce compilation dependency
	  - Add 'class TQWidget' declaration
	  - Remove inappropriate #ifndef TQT_NO_STRINGLIST. TQStringList is now
	    required feature for immodule. See also changes of qfeatures.h
	* src/input/tqinputcontextfactory.cpp
	  - Add #include "tqinputcontext.h"
	  - Remove unnecessary #include "tqpopupmenu.h"
	  - Remove inappropriate #ifndef TQT_NO_STRINGLIST. TQStringList is now
	    required feature for immodule. See also changes of qfeatures.h
	
	* src/tools/tqfeatures.h
	  - Define TQT_NO_IM if TQT_NO_STRINGLIST is defined
	  - Define TQT_NO_IM_EXTENSIONS if TQT_NO_IM or TQT_NO_STRINGLIST is
	    defined
	
	* plugins/src/inputmethods/inputmethods.pro
	  - Rename conditional configuration symbol from "im" to "inputmethod"
	    inaccordance with chanege of configure script
	
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.h
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.cpp
	* plugins/src/inputmethods/imsw-multi/tqmultiinputcontext.h
	  - (identifierName, language): Change return type from TQCString to
	    TQString
	
	* plugins/src/inputmethods/imsw-multi/tqmultiinputcontext.cpp
	  - (identifierName, language): Change return type from TQCString to
	    TQString
	  - (createImSelPopup): Replace TQString::find() which is deprecated in
	    TQt4 with TQString::startsWith()
	
	* plugins/src/inputmethods/imsw-none/tqnoneinputcontextplugin.cpp
	  - (create): Replace TQString::find() which is deprecated in TQt4 with
	    TQString::startsWith()
	
	* plugins/src/inputmethods/xim/tqximinputcontext.h
	  - (language): Change return type from TQCString to TQString
	  - (identifierName):
	    * Change return type from TQCString to TQString
	    * Move inline implementation to qximinputcontext_x11.cpp
	* plugins/src/inputmethods/xim/tqximinputcontext_x11.cpp
	  - (language): Change return type from TQCString to TQString
	  - (identifierName):
	    * Change return type from TQCString to TQString
	    * Move implementation from qximinputcontext.h
	  - (language): Replace TQString::find() which is deprecated in TQt4 with
	    TQString::startsWith()
	
2004-08-19  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqinputcontextfactory.cpp
	  - (keys): Modify the function description comment
	
2004-08-18  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqinputcontextfactory.cpp
	  - (create_manager): Fix plugin directory from "/input" to "/inputmethods"
	
2004-08-18  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqapplication_x11.cpp
	  - (KeyTbl): Add translations for Japanese and Korean alias keys
	
2004-08-18  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit disables default IM configuration feature using qtrc and
	  qtconfig in BC mode. See following discussion for further
	  information.
	  http://freedesktop.org/pipermail/immodule-qt/2004-August/000416.html
	
	* src/kernel/tqapplication_x11.cpp
	  - (x11_apply_settings): 
	    * Move immodule handling into #ifndef TQT_NO_IM rather than TQT_NO_XIM
	    * Move qtrc handling into #ifndef TQT_NO_IM_EXTENSIONS
	
	* src/inputmethods/imsw-multi/tqmultiinputcontext.cpp
	  - (TQMultiInputContext): Move qtrc handling into #ifndef
	    TQT_NO_IM_EXTENSIONS
	
	* tools/qtconfig/mainwindow.cpp
	  - (MainWindow): Move qtrc handling into #ifndef TQT_NO_IM_EXTENSIONS
	
	* src/kernel/tqt_x11.pri
	  - Remove unnecessary configuration
	
2004-08-18  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	Merge differences between qt-x11-free-3.3.2 and qt-x11-free-3.3.3
	
2004-08-18  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/imsw-multi/imsw-multi.pro
	* plugins/src/inputmethods/simple/simple.pro
	* plugins/src/inputmethods/imsw-none/imsw-none.pro
	* plugins/src/inputmethods/xim/xim.pro
	  - Remove inappropriate 'thread' from CONFIG. Thanks to Takumi
	    Asaki for reporting
	
2004-08-18  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* tools/qtconfig/mainwindow.cpp
	  - (MainWindow): Modify a comment
	  - (fileSave): Fix inappropriate /qt/DefaultInputMethodSwitcher
	    overwriting. Thanks Takumi Asaki for the reporting
	
2004-08-17  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/imsw-multi/imsw-multi.pro
	* plugins/src/inputmethods/simple/simple.pro
	* plugins/src/inputmethods/imsw-none/imsw-none.pro
	* plugins/src/inputmethods/xim/xim.pro
	  - Change plugin directory from $TQTDIR/plugins/input/ to
	    $TQTDIR/plugins/inputmethods/
	* changes.immodule
	  - Add a description for the change of plugin directory
	
2004-08-17  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqnamespace.h
	  - (TQt::Key) Add a comment about Korean-specific keyboard
	    support based on the information from Choe Hwanjin. Thanks
	    for the information. See following discussion for further
	    information
	    http://freedesktop.org/pipermail/immodule-qt/2004-August/000402.html
	  - (TQt::Key) Comment out some Korean-specific keys that has an
	    equivalent generic key
	
2004-08-14  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This is preparation for qt-x11-immodule-unified-qt3.3.2-20040814
	
	* ChangeLog.immodule
	  - Update
	
2004-08-14  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* changes.immodule
	  - Add and modify some descriptions
	
	* configure
	  - Rewrite some codes to avoid patch rejection against TQt
	    3.3.3. Logically equivalent.
	* src/widgets/tqtextedit.cpp
	  - Rewrite some codes to avoid patch rejection against TQt
	    3.3.3. Logically equivalent.
	* src/widgets/tqlineedit.cpp
	  - Rewrite some codes to avoid patch rejection against TQt
	    3.3.3. Logically equivalent.
	
2004-08-13  LiuCougar  <liucougar@gmail.com>
	
	cleanup: get rid of some warnings
2004-08-12  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* changes.immodule
	  - New file. This file has been written for both users and
	    developers to inform important changes
	
2004-08-12  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This is preparation for qt-x11-immodule-unified-qt3.3.2-20040812
	
	* ChangeLog.immodule
	  - Update
	
2004-08-12  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqwidget_x11.cpp
	  - (changeInputContext, createInputContext): Fix qic location
	  - (destroyInputContext): Add safety check
	
2004-08-12  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* configure
	  - Fix incomplete qconfig configuratoin about TQT_NO_IM and
	    TQT_NO_IM_EXTENSIONS
	
	* src/kernel/tqwidget_x11.cpp
	  - (changeInputContext, createInputContext, destroyInputContext): Fix
	    invalid pointer reference
	
2004-08-12  LiuCougar  <liucougar@gmail.com>
	
	fixed a compile issue in my gentoo box (gcc 3.3.3, glibc 2.3.3
2004-08-12  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* configure
	  - Fix option consistency handling between '-im' and '-im-ext'
	
	* README.immodule
	  - Fix a typo
	
2004-08-11  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* README.immodule
	  - Modify a little
	
2004-08-11  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* README.immodule
	  - New file. Some explanation has been described
	
	* ChangeLog.immodule
	  - New file
	
2004-08-11  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/xim/tqximinputcontext_x11.cpp
	  - (language): Remove TQLocale dependency to be compiled on TQt 3.2.x
	    or earlier
	
2004-08-11  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit merges 'Binary Compatible branch' into the trunk to
	  reduce maintenance cost. Now binary compatibility is
	  configurable. Binary incompatible features are surrounded by
	  #ifndef TQT_NO_IM_EXTENSIONS
	
	* configure
	  - Add '-im' option to enable immodule feature (default yes).
	  - Add '-im-ext' option to enable more immodule extensions (default
	    no). Specify this option 'no' to keep binary compatibility with
	    standard TQt3
	
	* src/kernel/tqt_x11.pri
	  - Add conditional TQT_NO_IM and TQT_NO_IM_EXTENSIONS definition in
	    accordance with '-im' and '-im-ext' options
	
	* src/kernel/tqwidget.h
	  - (icHolderWidget): New function for TQT_NO_IM_EXTENSIONS
	  - (ic): Add #ifndef TQT_NO_IM_EXTENSIONS for binary incompatible
	    variable
	  - (xic): Add #ifdef TQT_NO_IM_EXTENSIONS for binary compatible
	    variable
	* src/kernel/tqwidget_x11.cpp
	  - (create): Add #ifndef TQT_NO_IM_EXTENSIONS
	  - (destroy): Make some codes TQT_NO_IM_EXTENSIONS independent
	  - (createTLSysExtra): Add a code fragment for TQT_NO_IM_EXTENSIONS
	  - (deleteTLSysExtra): Modify a comment
	  - (getInputContext, changeInputContext, createInputContext,
	    destroyInputContext): Merge code fragments for TQT_NO_IM_EXTENSIONS
	  - (deleteExtra): Merge a comment for TQT_NO_IM_EXTENSIONS
	
	* src/kernel/tqapplication.h
	  - (locateICHolderWidget, icHolderWidgets, create_xim, close_xim):
	    New functions for TQT_NO_IM_EXTENSIONS
	* src/kernel/tqapplication_x11.cpp
	  - (create_im, close_im): Add #ifndef TQT_NO_IM_EXTENSIONS
	  - (create_xim, close_xim): Merge functions for TQT_NO_IM_EXTENSIONS
	  - (qt_init_internal, qt_cleanup): Merge code fragments for
	    TQT_NO_IM_EXTENSIONS
	
	* plugins/src/inputmethods/inputmethods.pro
	  - Make plugin compilations configurable with '-im' option
	
2004-08-11  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/xim/tqximinputcontext.h
	  - Replace TQXIMINPUTCONTEXT_P_H with TQXIMINPUTCONTEXT_H
	
	* src/widgets/tqlineedit.cpp
	  - (TQLineEditPrivate::updateMicroFocusHint): Modify the comment a
	    little
	
2004-08-11  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit is participating with recent 'keyword static of C++'
	  discussion.  See
	  http://freedesktop.org/pipermail/immodule-qt/2004-August/000344.html
	  for further information
	
	* src/kernel/tqapplication_x11.cpp
	  - (TQETWidget::translateKeyEventInternal): Prevent interwidget key
	    state transition about RTL extensions. This code had been written
	    by Daisuke Kameda in qt-x11-immodule-all-qt3.3.1-20040316.diff
	
	* src/widgets/tqlineedit.cpp
	  - (TQLineEditPrivate::updateMicroFocusHint): Add a comment that
	    explains that old rect variable is intentionally static
	
2004-08-11  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit turns the argument of TQInputContext::filterEvent() into
	  const. See
	  http://freedesktop.org/pipermail/immodule-qt/2004-August/000335.html
	  for further information
	
	* src/kernel/tqinputcontext.h
	  - (filterEvent): Follow the API change
	* src/kernel/tqinputcontext.cpp
	  - (filterEvent): Follow the API change
	
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.h
	  - (filterEvent): Follow the API change
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.cpp
	  - (filterEvent): Follow the API change
	* plugins/src/inputmethods/imsw-multi/tqmultiinputcontext.h
	  - (filterEvent): Follow the API change
	* plugins/src/inputmethods/imsw-multi/tqmultiinputcontext.cpp
	  - (filterEvent): Follow the API change
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/simple/xcompose2q.rb
	  - Update to accept Compose flie of X.org's X11R6.7.0
	  - Accept 'XCOMM' as comment sign to accept raw source file
	  - Accept both " " and "\"" as valid RHS
	* plugins/src/inputmethods/simple/composetable.cpp
	  - Update Compose table from XFree86 4.3.0 to X.org's X11R6.7.0
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit replaces the invalid header words 'This file is
	  part of the kernel module' of following files with 'This file
	  is part of the input method module'
	
	* plugins/src/inputmethods/imsw-multi/tqmultiinputcontextplugin.cpp
	* plugins/src/inputmethods/imsw-multi/tqmultiinputcontext.cpp
	* plugins/src/inputmethods/imsw-multi/tqmultiinputcontextplugin.h
	* plugins/src/inputmethods/imsw-multi/tqmultiinputcontext.h
	* plugins/src/inputmethods/simple/tqsimpleinputcontextplugin.cpp
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.cpp
	* plugins/src/inputmethods/simple/tqsimpleinputcontextplugin.h
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.h
	* plugins/src/inputmethods/simple/composetable.cpp
	* plugins/src/inputmethods/imsw-none/tqnoneinputcontextplugin.cpp
	* plugins/src/inputmethods/imsw-none/tqnoneinputcontextplugin.h
	* plugins/src/inputmethods/xim/tqximinputcontextplugin.cpp
	* plugins/src/inputmethods/xim/tqximinputcontextplugin.h
	* plugins/src/inputmethods/xim/tqximinputcontext.h
	* plugins/src/inputmethods/xim/tqximinputcontext_x11.cpp
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/simple/xcompose2q.rb
	  - Fix broken translation entries for most ASCII characters
	* plugins/src/inputmethods/simple/composetable.cpp
	  - Translate again with fixed xcompose2q.rb. This fixes many
	    translation entries involving ascii character such as
	    "<Multi_key> <space> <minus>"
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/simple/xcompose2q.rb
	  - New file. This script is used for translating X's Compose
	    table into TQSimpleInputContext's table
	  - Some bugs included
	  - Although I had released previous versions of this script
	    under GPL, I have released this version under another
	    license. See header
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.h
	  - Follow Trolltech's coding style for TQt3
	  - Remove unnecessary headers
	  - (UNITIZE): Moved from qsimpleinputcontext.cpp. TQT_ prefix is not
	    required since a macro does not pollute symbol space
	  - (struct _ComposeTableElement): Rename to TQComposeTableElement
	  - (struct TQComposeTableElement): Renamed from _ComposeTableElement
	  - (struct _ComposeTable): Rename to TQComposeTable
	  - (struct TQComposeTable): Renamed from _ComposeTable
	  - (isPreeditRelocationEnabled): Remove unnecessary overloading
	    function
	  - (isPreeditPreservationEnabled): Remove unnecessary function
	  - (checkComposeTable): Follow the renaming of the types of args
	  - (defaultComposeTable): New static member variable
	
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.cpp
	  - Separate composing table definition to composetable.cpp
	  - Remove unnecessary headers
	  - Replace 'true' and 'false' with 'TRUE' and 'FALSE' to follow
	    Trolltech's coding style for TQt3
	  - Replace _ComposeTableElement with TQComposeTableElement to follow
	    the renaming
	  - Replace ComposeTable with TQComposeTable to follow the renaming
	  - (UNITIZE): Move to qsimpleinputcontext.h
	  - (defaultTable): Move to composetable.cpp
	  - (qtComposeTable): Move to composetable.cpp as defaultComposeTable
	  - (filterEvent):
	    * Clean up
	    * Add a comment about key compression
	    * replace qtComposeTable with defaultComposeTable to follow the
	      renaming
	  - (unsetFocus): Remove unnecessary isPreeditPreservationEnabled()
	    check
	  - (identifierName): Remove 'FIXME' comment
	  - (isPreeditRelocationEnabled): Remove unnecessary overloading
	    function
	  - (isPreeditPreservationEnabled): Remove unnecessary function
	
	* plugins/src/inputmethods/simple/composetable.cpp
	  - New file. This file has been separated from
	    qsimpleinputcontext.cpp to achieve following issues
	    * increase table maintenance ability
	    * ease editing code part of TQSimpleInputContext
	    * ease development log tracking
	    * ease copyright tracking
	    * enclose UTF-8 comments into this file only
	  - Add original header from Compose file of XFree86 4.3.0
	  - (defaultTable) Moved from qsimpleinputcontext.cpp
	  - (defaultComposeTable): New variable definition
	
	* plugins/src/inputmethods/simple/simple.pro
	  - Add composetable.cpp to SOURCES
	
	* plugins/src/inputmethods/simple/tqsimpleinputcontextplugin.cpp
	  - (displayName, description): Modify the descriptions appropriately
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/xim/tqximinputcontext_x11.cpp
	  - Replace #include "tqximinputcontext_p.h" with
	    "tqximinputcontext.h". XIM plugin is now working properly
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit changes the XIM input method into plugin. A little
	  modification is still required to work. See next commit information
	
	* src/input/tqinputcontextfactory.cpp
	  - Remove XIM dependency
	  - (create, keys): Remove XIM dependent codes
	
	* src/input/tqt_input.pri
	  - Remove TQXIMInputContext entries
	* src/input/tqximinputcontext_p.h
	  - Moved to plugins/src/inputmethods/xim/tqximinputcontext.h
	* src/input/tqximinputcontext_x11.cpp
	  - Moved to plugins/src/inputmethods/xim/tqximinputcontext_x11.cpp
	
	* plugins/src/inputmethods/inputmethods.pro
	  - Add xim to SUBDIRS
	* plugins/src/inputmethods/xim
	  - New directory
	* plugins/src/inputmethods/xim/xim.pro
	  - New file
	* plugins/src/inputmethods/xim/tqximinputcontextplugin.h
	  - New file
	  - (class TQXIMInputContextPlugin): New class
	  - (TQXIMInputContextPlugin, ~TQXIMInputContextPlugin, keys, create,
	    languages, displayName, description): New function
	* plugins/src/inputmethods/xim/tqximinputcontextplugin.cpp
	  - New file
	* plugins/src/inputmethods/xim/tqximinputcontext.h
	  - Moved from src/input/tqximinputcontext_p.h. No code changes have
	    been applied. A little modification is required to work. See next
	    commit information
	* plugins/src/inputmethods/xim/tqximinputcontext_x11.cpp
	  - Moved from src/input/tqximinputcontext_x11.cpp. No code changes have
	    been applied
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqximinputcontext_p.h
	  - (TQXIMInputContext): Remove the arg 'widget' to conform to standard
	    TQInputContext API
	* src/input/tqximinputcontext_x11.cpp
	  - (TQXIMInputContext): Remove the arg 'widget' to conform to standard
	    TQInputContext API
	  - (setHolderWidget): Add TQInputContext::setHolderWidget() to fix
	    inproper overriding
	* src/input/tqinputcontextfactory.cpp
	  - (create): Remove the arg from TQXIMInputContext()
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqximinputcontext_p.h
	  - (setHolderWidget): New override function
	* src/input/tqximinputcontext_x11.cpp
	  - (TQXIMInputContext): Split most part of the initialization code
	    into setHolderWidget() to allow null widget. This is required to
	    make imsw-none working properly
	  - (setHolderWidget): New function
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqapplication_x11.cpp
	  - (x11_apply_settings): Restrict defaultIM to be an IM-switcher. An
	    IM-switcher has a 'imsw-' prefix
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit adds imsw-none IM-switcher plugin according to
	  following discussion with Takumi Asaki. Thanks for the opinion.
	  http://freedesktop.org/pipermail/immodule-qt/2004-August/000320.html
	
	* plugins/src/inputmethods/inputmethods.pro
	  - Add imsw-none to SUBDIRS
	* plugins/src/inputmethods/imsw-none/imsw-none.pro
	  - New file
	* plugins/src/inputmethods/imsw-none/tqnoneinputcontextplugin.h
	  - New file
	  - (class TQNoneInputContextPlugin): New class
	* plugins/src/inputmethods/imsw-none/tqnoneinputcontextplugin.cpp
	  - New file
	  - (TQNoneInputContextPlugin, ~TQNoneInputContextPlugin, keys,
	    languages, displayName, description): New function
	  - (create): New function. Read key from TQT_IM_MODULE or
	    /qt/DefaultInputMethod of qtrc and creates input context with the
	    key
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* Rename input method plugin names to accord with other plugin names
	
	* plugins/src/inputmethods/imsw-multi/imsw-multi.pro
	  - Rename plugin name to qimsw-multi from qmultiinputcontextplugin
	* plugins/src/inputmethods/simple/simple.pro
	  - Rename plugin name to qsimple from qsimpleinputcontextplugin
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/imsw-multi/multi.pro
	  - Move to imsw-multi.pro
	* plugins/src/inputmethods/imsw-multi/imsw-multi.pro
	  - Move from multi.pro
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* plugins/src/inputmethods/multi
	  - Move to imsw-multi
	* plugins/src/inputmethods/imsw-multi
	  - Move from multi
	* plugins/src/inputmethods/inputmethods.pro
	  - Replace 'multi' with 'imsw-multi' in SUBDIRS
	
2004-08-10  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.cpp
	  - add full dead/multi key entries
	  - fix some bugs
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit changes pluggable popup menu API in accordance with
	  following discussion with Lars Knoll. Thanks for the advice.
	  http://freedesktop.org/pipermail/immodule-qt/2004-August/000300.html
	
	* src/kernel/tqinputcontext.cpp
	  - (actions): New function
	  - (exportMenusInto): Remove to rename to addMenusTo()
	  - (addMenusTo):
	    * New function. Renamed from exportMenusInto()
	    * Follow introduction of enum TQInputContextMenu::Action
	    * Add an explanation for this utility function to the function
	      description
	
	* src/kernel/tqinputcontext.h
	  - (TQInputContextMenu::Action): New enum
	  - (menus): Restrict to use with TQt3 only
	  - (qt4menus): Remove to replace with actions()
	  - (actions): New function for TQt4
	
	* src/widgets/tqtextedit.cpp
	  - (createPopupMenu): Replace exportMenusInto() with addMenusTo()
	* src/widgets/tqlineedit.cpp
	  - (createPopupMenu): Replace exportMenusInto() with addMenusTo()
	
2004-08-10  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit changes the two input methods into plugin
	
	* src/input/tqt_input.pri
	  - Remove TQSimpleInputContext and TQMultiInputContext entries
	* src/input/tqmultiinputcontext.h
	  - Moved to plugins/src/inputmethods/multi/tqmultiinputcontext.h
	* src/input/tqmultiinputcontext.cpp
	  - Moved to plugins/src/inputmethods/multi/tqmultiinputcontext.cpp
	* src/input/tqsimpleinputcontext.h
	  - Moved to plugins/src/inputmethods/simple/tqsimpleinputcontext.h
	* src/input/tqsimpleinputcontext.cpp
	  - Moved to plugins/src/inputmethods/simple/tqsimpleinputcontext.cpp
	
	* plugins/src/src.pro
	  - Add 'inputmethods' to SUBDIRS. The directory name 'inputmethods'
	    is intended to be compatible with TQt/Embedded. Install directory
	    name is still kept as 'input' for backward compatibility
	* plugins/src/inputmethods/inputmethods.pro
	  - New file
	
	* plugins/src/inputmethods/multi/multi.pro
	  - New file
	* plugins/src/inputmethods/multi/tqmultiinputcontextplugin.h
	  - New file
	* plugins/src/inputmethods/multi/tqmultiinputcontextplugin.cpp
	  - New file
	* plugins/src/inputmethods/multi/tqmultiinputcontext.h
	  - Moved from src/input/tqmultiinputcontext.h. No code changes have
	    been applied
	* plugins/src/inputmethods/multi/tqmultiinputcontext.cpp
	  - Moved from src/input/tqmultiinputcontext.cpp. No code changes have
	    been applied
	
	* plugins/src/inputmethods/simple/simple.pro
	  - New file
	* plugins/src/inputmethods/simple/tqsimpleinputcontextplugin.h
	  - New file
	* plugins/src/inputmethods/simple/tqsimpleinputcontextplugin.cpp
	  - New file
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.h
	  - Moved from src/input/tqsimpleinputcontext.h. No code changes have
	    been applied
	* plugins/src/inputmethods/simple/tqsimpleinputcontext.cpp
	  - Moved from src/input/tqsimpleinputcontext.cpp. No code changes have
	    been applied
	
	* src/input/tqinputcontextfactory.cpp
	  - (create): Remove dedicated instantiation handling for
	    TQSimpleInputContext and TQMultiInputContext
	
	* tools/qtconfig/mainwindow.h
	  - (inputMethodIdentifiers): New member variable
	* tools/qtconfig/mainwindow.cpp
	  - (MainWindow):
	    * Replace identifier name of input methods with displaynames
	    * Add filtering out process for IM-switchers that has "imsw-"
	      prefix
	    * Disable sorting for input method names
	    * Modify some comments
	    * Simplify setCurrentItem() handling for inputMethodCombo widget
	    * Add recorded input method name to the display name of unknown
	      input method
	    * Save recorded input method name even if unknown input method
	  - (fileSave):
	    * Save /qt/DefaultInputMethodSwitcher with default value
	      "imsw-multi"
	    * Save identifier name of the input method rather than display name
	
	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContext): Update the class description comment
	
	* src/input/tqinputcontextplugin.cpp
	  - (class TQInputContextPlugin): Update the class description comment
	  - (keys): Update the function description comment
	  - (languages, displayName, description): Add the function
	    description comment
	
	
2004-08-05  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit adds generic pluggable popup menu feature. See
	  http://freedesktop.org/pipermail/immodule-qt/2004-August/000266.html
	  for further information. The implementation may be altered in
	  accordance with discussion in the list.
	
	* src/kernel/tqinputcontext.h
	  - (struct TQInputContextMenu): New struct
	  - (qt4menus): New function. Just a placeholder for now
	  - (menus): New function
	  - (exportMenusInto): New function
	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContext): Add 'Text widget implementor's guide'
	    section to the class description comment
	  - (menus): New function
	  - (exportMenusInto): New function
	
	* src/input/tqmultiinputcontext.h
	  - (qt4menus): New function. Just a placeholder for now
	  - (menus): New function
	* src/input/tqmultiinputcontext.cpp
	  - (menus):
	    * New function to follow new API. The function merges slave menus
	      and TQMultiInputContext's own 'Select Input Method' menu
	    * The functionality is ported from TQLineEdit::createPopupMenu()
	    * An accelerator has been added as 'Select Input &Method'
	
	* src/widgets/tqtextedit.cpp
	  - Remove TQMultiInputContext dependency
	  - (createPopupMenu): Replace TQMultiInputContext dependent submenu
	    handling with the pluggable popup menu
	* src/widgets/tqlineedit.cpp
	  - Remove TQMultiInputContext dependency
	  - (createPopupMenu): Replace TQMultiInputContext dependent submenu
	    handling with the pluggable popup menu
	
	* src/kernel/tqwidget.h
	  - Remove #include "tqinputcontext.h" to reduce compile time when we
	    hacked qinputcontext.h
	
2004-08-04  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* src/input/tqmultiinputcontext.cpp
	  - use TQInputContextFactory::description and set whatsthis help
	
2004-08-03  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit adds TQInputContextFactory::description() feature
	
	* src/input/tqinputcontextinterface_p.h
	  - Update the UUID because the interface has been changed
	  - (description): New function
	
	* src/input/tqinputcontextplugin.h
	  - (description): New function
	
	* src/input/tqinputcontextfactory.h
	  - (description): New function
	  - (TQInputContextPluginPrivate::description): New function
	* src/input/tqinputcontextfactory.cpp
	  - (description): New function
	  - (displayName): Replace fallback value with empty string instead of
	    null
	
2004-08-03  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit alters the configuration convention about
	  IM-switcher. See
	  http://freedesktop.org/pipermail/immodule-qt/2004-August/000232.html
	  for further information. The implementation may be altered in
	  accordance with discussion in the list.
	
	* src/kernel/tqapplication_x11.cpp
	  - (defaultIM): Replace "xim" with "imsw-multi"
	  - (x11_apply_settings):
	    * Replace the environment variable name TQT_IM_MODULE with
	      TQT_IM_SWITCHER
	    * Replace the qtrc variable name /qt/DefaultInputMethod with
	      /qt/DefaultInputMethodSwitcher
	    * Replace "xim" with "imsw-multi" for default plugin
	
	* src/input/tqmultiinputcontext.h
	  - (lastCreatedIMKey): Remove to rename to currentIMKey
	  - (currentIMKey): New member variable. Renamed from lastCreatedIMKey
	    because the semantics of the variable has been changed by
	    introduction of TQT_IM_SWITCHER
	
	* src/input/tqmultiinputcontext.cpp
	  - Replace lastCreatedIMKey with currentIMKey
	  - (TQMultiInputContext): Add default input method specification
	    feature using TQT_IM_MODULE and /qt/DefaultInputMethod
	  - (createImSelPopup):
	    * Add IM-switcher plugin elimination feature using "imsw-" prefix
	    * Add dispName.isNull() checking
	    * Apply some rewriting without altering logic for human readability
	
	* src/input/tqinputcontextfactory.cpp
	  - (create): Replace the identifier name "multi" with "imsw-multi"
	
2004-08-03  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* This commit implements table searching suite
	
	- TQKeyEvent::text() is restricted to only one character,
	  so qsimpleic use TQChar::tqunicode() value in case keys are
	  pressed otherwise composing keys are pressed.
	
	- Composing Table is temporally deleted for testing.
	  Need to prepare proper entries.
	  Now qsimpleic can deal with capital letter more cleaner way
	
	* Next, I introduce X's composing parser to qsimpleic
	
2004-08-02  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqapplication_x11.cpp
	  - (x11_apply_settings): Merge the comment about defaultIM
	    overwritten by r52 from r45
	
2004-07-31  LiuCougar  <liucougar@gmail.com>
	
	new environment variable TQT_IM_MODULE to overwrite the default inputmethod plugin
2004-07-31  LiuCougar  <liucougar@gmail.com>
	
	"deleteLater" is safer then "delete" TQObject directly
2004-07-30  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqnamespace.h
	  - (TQt::Key):
	    * Replace dead key values with new one to avoid keycode conflict
	    * Add a comment about the latin 1 keycodes
	    * Add some comments about the offset for keycode from X keycode
	* src/kernel/tqevent.cpp
	  - (key): Add a comment about latin 1 keycodes to the function
	    description.
	
	* src/kernel/tqapplication_x11.cpp
	  - Define define XK_XKB_KEYS to include dead key definitions from
	    keysymdef.h
	   - Remove XK_dead_ keys definition
	
2004-07-29  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* Change to use displayName() in IM-Switch Popupmenu
	
	* src/input/tqmultiinputcontext.h
	  - (keyDict): new variable
	* src/input/tqmultiinputcontext.cpp
	  - (createImSelPopup): use displanName() on popup and store key in keyDict
	  - (changeInputMethodWithMenuId): find key from using keyDict
	
	* Problem *
	  - if key=="XIM", displayName(key) is TQString()
	* Wish *
	  - add "virtual TQString description( const TQString &key ) = 0;" for showing the description of IM on PopupMenu as a whatsthis help
	
2004-07-28  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqinputcontextinterface_p.h
	  - Update the UUID because the interface has been changed
	  - (languages): New function
	  - (displayName): New function
	
	* src/input/tqinputcontextplugin.h
	  - (languages): New function
	  - (displayName): New function
	* src/input/tqinputcontextplugin.cpp
	  - (TQInputContextPluginPrivate::languages): New function
	  - (TQInputContextPluginPrivate::displayName): New function
	
	* src/input/tqinputcontextfactory.h
	  - (languages): New function
	  - (displayName): New function
	* src/input/tqinputcontextfactory.cpp
	  - (languages): New function
	  - (displayName): New function
	
2004-07-27  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqinputcontext.h
	  - (deletionRequested): New signal. Added for fatal error handling
	* src/kernel/tqinputcontext.cpp
	  - (deletionRequested): Add the function description comment
	* src/kernel/tqwidget.h
	  - (destroyInputContext): Change ordinary function to slot to receive
	    the signal TQInputContext::deletionRequested()
	* src/kernel/tqwidget_x11.cpp
	  - (changeInputContext, createInputContext):
	    * Connect deletionRequested() signal of qic to destroyInputContext()
	    * Follow renaming of TQApplication::imEventReceived() to postIMEvent()
	  - (destroyInputContext): Modify the function description comment
	
	* src/input/tqximinputcontext_p.h
	  - (close): New function
	* src/input/tqximinputcontext_x11.cpp
	  - (close_xim):
	    * Remove invalid TQApplication::close_im() invocation
	    * Add proper finalization using deletionRequested() signal
	  - (close): New function
	
	* src/kernel/tqapplication.h
	  - (imEventReceived): Remove this inappropriate name to rename to
	    postIMEvent()
	  - (postIMEvent): New slot. Renamed from imEventReceived()
	* src/kernel/tqapplication_x11.cpp
	  - (imEventReceived): Remove this inappropriate name to rename to
	    postIMEvent()
	  - (postIMEvent): New slot. Renamed from imEventReceived()
	  - (close_im): Remove unused commented out code. The code had already
	    been moved to qximinputcontext.cpp
	
	* src/input/tqmultiinputcontext.h
	  - (destroyInputContext): New slot
	  - (imEventReceived): Remove this inappropriate name to rename to
	    postIMEvent()
	  - (postIMEvent): New slot. Renamed from imEventReceived()
	* src/input/tqmultiinputcontext.cpp
	  - (TQT_NO_IM_TQMULTIINPUTCONTEXT_IMINDEX): New macro. Defined as default
	  - (filterEvent): Insert #ifdef TQT_NO_IM_TQMULTIINPUTCONTEXT_IMINDEX
	  - (destroyInputContext): New slot. Processes deletionRequested from slave
	  - (imEventReceived): Remove this inappropriate name to rename to
	    postIMEvent()
	  - (postIMEvent): New slot. Renamed from imEventReceived()
	  - (slave):
	    * Add proper instanciation code for popup menu mode
	    * Insert #ifdef TQT_NO_IM_TQMULTIINPUTCONTEXT_IMINDEX
	  - (changeInputMethod(int)):
	    * Add error handling for no available input methods
	    * Insert #ifdef TQT_NO_IM_TQMULTIINPUTCONTEXT_IMINDEX
	  - (changeInputMethod(TQString)):
	    * Add error handling for no available input methods
	    * Add default selection for null key
	    * Connect deletionRequested() signal
	    * Fix debug message
	* src/widgets/tqtextedit.cpp
	  - (createPopupMenu):
	    * Add NULL check for input context
	    * Replace the label "SelectInputMethod" with "Select Input Method"
	* src/widgets/tqlineedit.cpp
	  - (createPopupMenu):
	    * Add NULL check for input context
	    * Replace the label "SelectInputMethod" with "Select Input Method"
	
2004-07-27  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqwidget_x11.cpp
	  - (changeInputContext):
	    * Remove unnecessary createInputContext()
	    * Reorder the code fragments to reduce temporal memory consumption
	
2004-07-27  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit is a comment and variable name update. No actual code is
	  modified.
	
	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContext): Modify the class description comment
	  - (filterEvent): Mark the argument as /* const */ to make it const
	    in future
	  - (reset): Add a requirement to the function description comment for
	    reimplementation
	
	* src/kernel/tqapplication_x11.cpp
	  - (locateICHolderWidget, icHolderWidgets, changeAllInputContext):
	    Modify the function description comment
	
	* src/kernel/tqwidget_x11.cpp
	  - (changeInputContext):
	    * Rename 'name' with 'identifierName' to eliminate the ambiguity
	    * Modify the function description comment
	    * Modify a comment
	    * Follow Trolltech's coding style
	  - (createInputContext):
	    * Modify the function description comment
	    * Modify a comment
	  - (resetInputContext): Modify the function description comment
	
	* src/kernel/tqapplication_x11.cpp
	  - (defaultIM): Modify the comment
	  - (changeAllInputContext):
	    * Rename 'name' with 'identifierName' to eliminate the ambiguity
	    * Follow Trolltech's coding style
	  - (defaultInputMethod): Modify the function description comment
	  - (x11_apply_settings): Modify a comment
	
	* src/input/tqinputcontextplugin.cpp
	  - (class TQInputContextPlugin): Modify the class description comment
	  - (create): Modify the function description comment
	
	* src/input/tqinputcontextfactory.cpp
	  - (create): Modify the function description comment
	
2004-07-24  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqinputcontext.cpp
	  - Add #if defined(TQ_WS_X11) around X11 platform specific
	    functions. these functions cannot be moved to
	    qinputcontext_x11.cpp at now since the TQInputContextPrivate is
	    defined in qinputcontext.cpp. This will be fixed in porting to
	    TQt4.
	  - (filterEvent): Add the function description comment according
	    with the Simplified API (filtering precedence, key compression)
	
	* src/kernel/tqapplication_x11.cpp
	  - (locateICHolderWidget, icHolderWidgets, changeAllInputContext):
	    Modify the function description comment
	
2004-07-24  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit is a comment update. No code is modified.
	
	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContext): Add the class description comment according
	    with the Simplified API (preedit relocation is done, not entirely
	    completed yet)
	
2004-07-24  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit contains the fixes in response to Lars Knoll's
	  advice. Thanks for the advice.
	
	* src/kernel/tqapplication_x11.cpp
	  - (x11_apply_settings): Remove trUtf8() from "xim" to specify the
	    default input method
	
	* src/kernel/qapplication_x11.cpp, src/input/tqximinputcontext_x11.cpp
	  - (ximServer, xim_preferred_style, composingKeycode, input_mapper):
	    Add qt_ prefix to avoid symbol space pollution
	  - (qt_ximServer, qt_xim_preferred_style, qt_ximComposingKeycode,
	    qt_input_mapper): Renamed from above one
	
2004-07-24  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit is a comment update. No code is modified.
	
	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContext): Modify several expressions
	
2004-07-23  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit is a comment update. No code is modified.
	
	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContext): Add the class description comment according
	    with the Simplified API (preedit preservation is done, not
	    entirely completed yet)
	  - (TQInputContext, tqfocusWidget, setFocusWidget, isComposing,
	    setFocus, unsetFocus): Modify a typo in the function description
	    comment
	
2004-07-23  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqsimpleinputcontext.cpp
	  - Modify the file header description
	* src/input/tqmultiinputcontext.cpp
	  - Modify the file header description
	* src/input/tqsimpleinputcontext.h
	  - Modify the file header description
	* src/input/tqmultiinputcontext.h
	  - Modify the file header description
	
2004-07-23  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqsimpleinputcontext.h
	  - Add a copyright and license header
	
	* src/input/tqsimpleinputcontext.cpp
	  - Add a copyright and license header
	
2004-07-23  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit is a comment update. No code is modified.
	
	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContext): Add the class description comment according
	    with the Simplified API (not completed yet)
	  - (TQInputContext): Modify a expression in the function description
	    comment
	  - (sendIMEventInternal, font): Modify a typo in the function
	    description comment
	
2004-07-23  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* src/input/tqsimpleinputcontext.cpp
	  - OOps. fix typo.
	
2004-07-23  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* src/input/tqsimpleinputcontext.cpp
	  - follow TQt coding rule
	  - more valid capitalize case 
	
2004-07-23  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* src/input/tqinputcontextfactory.cpp
	  - enable TQSimpleInputContext by specifying in qtrc "DefaultInputMethod=simple"
	
2004-07-23  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* This commit add simple table based InputContext for dead/multi key support
	
	* src/input/qsimpleinputcontext.h, src/input/tqsimpleinputcontext.cpp
	  - simple table based InputContext
	
2004-07-22  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* kernel/qapplication_x11.cpp, kernel/qnamespace.h
	  - add dead key entries
	
2004-07-22  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit is a comment update. No code is modified.
	
	* src/kernel/tqinputcontext.cpp
	  - (holderWidget, setHolderWidget, tqfocusWidget, setFocusWidget,
	    releaseComposingWidget, isPreeditRelocationEnabled, isComposing,
	    sendIMEventInternal, sendIMEvent): Add the function description comment
	    according with the Simplified API
	  - (TQInputContext, setFocus, unsetFocus): Update the function
	    description comment according with the Simplified API
	  - (~TQInputContext, imEventGenerated): Add the function description
	    comment
	  - (reset, identifierName, language, filterEvent): Update the
	    function description comment
	  - (setMicroFocus, mouseHandler, reset, identifierName, language):
	    Modify a expression in the function description comment
	
	* src/kernel/tqwidget_x11.cpp
	  - (icHolderWidget, resetInputContext, focusInputContext,
	    unfocusInputContext, sendMouseEventToInputContext): Update the
	    function description comment
	
	* src/kernel/tqapplication_x11.cpp
	  - (imEventReceived): Update the function description comment
	
2004-07-21  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* src/input/tqmultiinputcontext.h
	  - (createImSelPopup): new function
	  - (changeInputMethodWithMenuId): new slot
	  - (changeInputMethod(TQString)): new function
	  - (popup): new variable
	  - (lastCreatedIMKey): new variable
	
	* src/input/tqmultiinputcontext.cpp
	  - add #ifndef TQT_NO_IM
	  - (createImSelPopup): create TQPopupMenu object which can switch IM.
	    Currently selected IM is marked as checked.
	
	* src/input/tqinputcontextfactory.h
	  - remove "class TQPopupMenu"
	
	* src/widget/tqtextedit.cpp
	  - add im-switch popup to the menu which is shown when widget is right-clicked.
	
	* src/widget/tqlineedit.cpp
	  - add im-switch popup to the menu which is shown when widget is right-clicked.
	
2004-07-21  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqinputcontext.cpp
	  - (filterEvent, setMicroFocus, mouseHandler): Update the function
	    description comment according with the Simplified API
	  - (reset, identifierName, language): Update the function description
	    comment
	
2004-07-20  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqmultiinputcontext.cpp
	  - (changeInputMethod): Fix invalid imIndex circulation. Thanks
	    to Kazuki for reporting
	
2004-07-20  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit enables a flexible signal connection
	  configuration. Default behavior is based on Cougar's
	  suggestion. Thanks.
	
	* src/input/tqmultiinputcontext.h
	  - (beIndirectlyConnected): New instance variable
	
	* src/input/tqmultiinputcontext.cpp
	  - (TQMultiInputContext): Add beIndirectlyConnected to initializer list
	  - (imEventReceived): Add a function description comment
	  - (changeInputMethod): Connect imEventGenerated signal of slave
	    according with beIndirectlyConnected. The default behavior is
	    changed as directly connected to imEventGenerated signal of this
	
2004-07-20  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqwidget_x11.cpp
	  - (setMicroFocusHint): Update the comment about XIM handling
	  - (focusInputContextunfocusInputContext,
	    sendMouseEventToInputContext): Add the function description comment
	
	* src/kernel/tqinputcontext_x11.cpp
	  - (x11FilterEvent): Update the function description comment
	    according with the Simplified API
	
2004-07-20  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqmultiinputcontext.cpp
	  - (changeInputMethod): Fix the conversion to const char * from
	    identifierName()
	
2004-07-20  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/input/tqximinputcontext_p.h
	  - (identifierName): Replace the result "XIM" with "xim" to be
	    consistent with corresponding immodule of GTK+
	
	* src/kernel/tqapplication_x11.cpp
	  - (defaultIM, x11_apply_settings): Replace "XIM" with "xim"
	
	* src/input/tqinputcontextfactory.cpp
	  - (create, keys): Replace "XIM" with "xim"
	
	* tools/qtconfig/mainwindow.cpp
	  - (MainWindow): Replace "XIM" with "xim"
	
2004-07-20  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit enables TQInputContext proxying, and provide an
	  experimental immodule-switcher TQMultiInputContext as its
	  examples. The changes is following.
	
	  1. Use signal to deliver TQIMEvent instead of explicit
	     postEvent(). This enables TQIMEvent proxying and better platform
	     abstraction. Corresponding slot is created as
	     TQApplication::imEventReceived().
	
	  2. Move some methods of TQInputContext to public from protected or
	     private. This enables that proxy-IM can access slave methods.
	
	  3. Make some methods of TQInputContext virtual. This enables
	     overriding the methods as proxy
	
	  4. Rename TQInputContext::name() to identifierName() to avoid
	     conflicting with TQObject::name()
	
	  This patch does not break binary compatibility from vanilla TQt3.
	  But it costs immodule developer small modification.
	
	* src/kernel/tqinputcontext.h
	  - (class TQInputContext): Inherit TQObject and add TQ_OBJECT macro
	  - (name): Remove to rename to identifierName() to avoid conflicting
	    with TQObject::name()
	  - (identifierName): New function. Renamed from name()
	  - (isComposing, isPreeditRelocationEnabled): Move to public from
	    protected to allow proxying
	  - (setFocusWidget,setHolderWidget, releaseComposingWidget): Move to
	    public from private to allow proxying
	  - (tqfocusWidget, holderWidget):
	    * Make public from protected
	    * Make virtual to allow overriding the method as proxy
	  - (imEventGenerated): New signal
	
	* src/kernel/tqinputcontext.cpp
	  - (TQInputContext): Add TQObject() to initializer list
	  - (sendIMEventInternal): Replace TQApplication::postEvent with signal
	    emitting according to the change
	  - (name): Remove to rename to identifierName() to avoid conflicting
	    with TQObject::name()
	  - (identifierName):
	    * New function. Renamed from name()
	    * Return type has changed to TQCString from TQString to avoid using
	      of i18n string and confusing this with display name for endusers
	
	* src/kernel/tqwidget_x11.cpp
	  - (changeInputContext): Add TQObject::connect() to follow the change
	    of IMEvent flow
	  - (createInputContext): Add TQObject::connect() to follow the change
	    of IMEvent flow
	
	* src/kernel/tqapplication.h
	  - (imEventReceived): New slot
	* src/kernel/tqapplication_x11.cpp
	  - (imEventReceived): New slot to relay TQIMEvent to event queue using
	    postEvent()
	
	* src/input/tqmultiinputcontext.h
	  - New file. Copyright and licensing information is temporarily
	    adapted to our cirmumstances
	  - (TQMultiInputContext): New class
	  - (TQMultiInputContext): New function
	  - (~TQMultiInputContext): New function
	  - (identifierName): New function
	  - (language): New function
	  - (x11FilterEvent): New function. Added based on Cougar's
	    advice. Thanks
	  - (filterEvent): New function
	  - (reset): New function
	  - (setFocus): New function
	  - (unsetFocus): New function
	  - (setMicroFocus): New function
	  - (mouseHandler): New function
	  - (font): New function
	  - (isComposing): New function
	  - (isPreeditRelocationEnabled): New function
	  - (tqfocusWidget): New function
	  - (holderWidget): New function
	  - (setFocusWidget): New function
	  - (setHolderWidget): New function
	  - (releaseComposingWidget): New function
	  - (slave): New function
	  - (slave): New function (const TQInputContext *slave() const)
	  - (changeInputMethod): New function
	  - (imEventReceived): New slot
	* src/input/tqmultiinputcontext.cpp
	  - New file. Copyright and licensing information is temporarily
	    adapted to our cirmumstances
	  - (TQMultiInputContext): New function
	  - (~TQMultiInputContext): New function
	  - (identifierName): New function
	  - (language): New function
	  - (x11FilterEvent): New function. Added based on Cougar's
	    advice. Thanks
	  - (filterEvent): New function. Filters Control+Alt+Key_Down and
	    Control+Alt+Key_Up as IM selection keys as temporary
	    implementation. We should show popup menu
	  - (reset): New function
	  - (setFocus): New function
	  - (unsetFocus): New function
	  - (setMicroFocus): New function
	  - (mouseHandler): New function
	  - (font): New function
	  - (isComposing): New function
	  - (isPreeditRelocationEnabled): New function
	  - (tqfocusWidget): New function
	  - (holderWidget): New function
	  - (setFocusWidget): New function
	  - (setHolderWidget): New function
	  - (releaseComposingWidget): New function
	  - (slave): New function
	  - (slave): New function (const TQInputContext *slave() const)
	  - (changeInputMethod): New function
	  - (imEventReceived): New slot
	* src/input/tqinputcontextfactory.cpp
	  - (create): Add TQMultiInputContext instanciation. Use the name
	    "multi" to specify it
	* src/input/tqinputcontextfactory.h
	  - Add #include "tqinputcontext.h" to avoid compilation error
	
	* src/input/tqximinputcontext_p.h
	  - (class TQXIMInputContext): Add TQ_OBJECT macro to follow the API change
	  - (name): Remove to follow the API change
	  - (identifierName):
	    * New function. Renamed from name()
	    * Return type has changed to TQCString from TQString to follow the
	      API change
	  - (isPreeditRelocationEnabled): Move to public from protected to
	    follow the API change
	  - (isComposing): Remove unnecessary access permission breaker
	    because TQInputContext::isComposing() have made public
	* src/input/tqximinputcontext_x11.cpp
	  - (isComposing): Remove unnecessary access permission breaker
	    because TQInputContext::isComposing() have made public
	
	* src/input/tqt_input.pri
	  - Add qmultiinputcontext.h and multiinputcontext.cpp
	
2004-07-18  LiuCougar  <liucougar@gmail.com>
	
	use virtual insert version to make subclasses work as expected (merged from bc-branch r19)
2004-07-16  Kazuki Ohta  <mover@hct.zaq.ne.jp>
	
	* src/input/tqinputcontextfactory.h: not the definition of TQInputContextPlugin
	
2004-07-13  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqapplication_x11.cpp
	  - (x11ProcessEvent): Add comment for key event filtering considerations
	  - (TQETWidget::translateKeyEvent): Add comment for key compression
	    considerations
	
2004-07-11  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* src/kernel/tqwidget.h
	  - (sendMouseEventToInputContext): Move into #if defined(TQ_WS_X11)
	    because it is not implemented in other platforms
	
2004-07-11  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* This commit fixes a mismerge with my Simplified API patches
	
	* src/kernel/tqwidget_x11.cpp
	  - (destroyInputContext): Replace the code with original Simplified
	    API patch. See the comment to recognize the original intention
	  - (focusInputContext): Fix a condition to call qic->setFocus() as
	    originally written. See added comment to recognize the original
	    intention
	
	* src/kernel/tqwidget.h
	  - (changeInputContext): Move into #if defined(TQ_WS_X11) as
	    originally written because it is not implemented in other
	    platforms
	
	* src/input/tqximinputcontext_p.h
	  - (mouseHandler): Fix a typo as originally written
	
	* src/input/tqximinputcontext_x11.cpp
	  - Fix a comment location to express original intention
	
2004-07-08  LiuCougar  <liucougar@gmail.com>
	
	replace sendEvent with postEvent in qinputcontext to improve the process performance of IMCompose events
2004-07-08  YamaKen  <yamaken@bp.iij4u.or.jp>
	
	* Insert the comment 'UPDATED COMMENT RETQUIRED' into some places for future
	  modifications
	* Modify some comments
	* Replace 'InputMethod' in some comments with 'input method'
	* Replace 'InputContext' in some comments with 'input context'
	
	* src/kernel/tqinputcontext.h
	  - Move description of TQInputContext to qinputcontext.cpp
	* src/kernel/tqinputcontext.cpp
	  - Move description of TQInputContext from qinputcontext.h
	
2004-07-07  Daisuke Kameda  <kaminmat@cc.rim.or.jp>
	
	Adding the function which realize mapping arbitrary input context and widget:
	TQApplication::locateICHolderWidget()
	TQApplication::icHolderWidgets()
	TQWidget::icHolderWidget()
	TQWidget::getInputContext()
	
	Adding the function which changes input method:
	TQApplication::changeAllInputContext()
	TQWidget::changeInputContext()
	TQApplication::defaultInputMethod()
	
	change TQApplication::create_xim() to TQApplication::create_im()
	change TQApplication::close_xim() to TQApplication::close_im()
	
	
2004-07-06  Daisuke Kameda  <kaminmat@cc.rim.or.jp>
	
	"TQLineEdit should only setMicroFocus if the cursorRect has changed" by cougar
	
2004-07-06  Daisuke Kameda  <kaminmat@cc.rim.or.jp>
	
	Re-Creating immodule for TQt/X11 trunk

2004-06-22  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqinputcontext.h
	  - (sendIMEvent): Private version of sendIMEvent(). Remove to
	    rename to sendIMEventInternal
	  - (sendIMEventInternal): Rename from sendIMEvent and accept
	    discrete variables rather than TQEvent *e to be adaptable
	    to TQt/Embedded
	* src/kernel/tqinputcontext.cpp
	  - (sendIMEvent): Protected version of sendIMEvent(). Move
	    TQEvent construction to sendIMEventInternal()
	  - (sendIMEvent): Private version of sendIMEvent(). Remove to
	    rename to sendIMEventInternal
	  - (sendIMEventInternal):
	    * Rename from sendIMEvent
	    * accept discrete variables rather than TQEvent *e to be
	      adaptable to TQt/Embedded
	    * Add placeholder for TQt/Embedded
	  - (setFocusWidget): Follow specification change of sendIMEvent()

2004-06-20  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqevent.h
	  - (class TQIMError): Remove to rename to TQIMErrorEvent
	  - (class TQIMErrorEvent): Rename from TQIMError
	  - (TQIMErrorEvent::isDeleteIC): Remove to rename to isDeletionRequest
	  - (TQIMErrorEvent::isDeletionRequest): Rename from isDelete

	* src/kernel/tqwidget.h
	  - (imErrorEvent): Follow renaming of TQIMError
	* src/kernel/tqwidget.cpp
	  - (imErrorEvent): Follow renaming of TQIMError and
	    TQIMError::isDeleteIC()
	  - (event): Follow renaming of TQIMError

	* src/kernel/tqinputcontext.h
	  - (ownerWidget): Remove to rename to holderWidget
	  - (holderWidget): Rename from ownerWidget
	  - (setOwnerWidget): Remove to rename to setHolderWidget
	  - (setHolderWidget): Rename from setOwnerWidget
	  - (releaseComposingWidget): New function.
	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContextPrivate): Rename ownerWidget to holderWidget
	  - (ownerWidget): Remove to rename to holderWidget
	  - (holderWidget): Rename from ownerWidget
	  - (setOwnerWidget): Remove to rename to setHolderWidget
	  - (setHolderWidget): Rename from setOwnerWidget
	  - (sendIMError): Follow renaming of TQIMError and
	    TQIMError::isDeleteIC()
	  - (releaseComposingWidget): New function.

	* src/input/tqinputcontextfactory.cpp
	  - (create): Follow renaming of TQInputContext::setOwnerWidget()

	* src/kernel/tqwidget_x11.cpp
	  - (destroy): Add qic->releaseComposingWidget() to reset
	    preserved composing information involving this widget

2004-06-15  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqwidget_x11.cpp
	  - (setMicroFocusHint): Replace relative coordinate with
	    global one for qic->setMicroFocus(). This is required to
	    share particular IM plugin code with TQt/Embedded

	* src/widgets/tqlineedit.cpp
	  - (sendMouseEventToInputContext): Add button event sending
	    when clicking on out of preedit

	* src/widgets/tqtextedit.cpp
	  - (sendMouseEventToInputContext): Add button event sending
	    when clicking on out of preedit

	* src/input/tqximinputcontext_p.h
	  - (isComposing): New function
	  - (composing, cpos, sellen): Remove to follow API change
	  - (isPreeditRelocationEnabled): New overriding function to
	    follow API change
	  - (isPreeditPreservationEnabled): New function

	* src/input/tqximinputcontext_x11.cpp
	  - (xic_start_callback, xic_draw_callback, xic_done_callback,
	    x11FilterEvent, reset): Replace qic->composing with
	    qic->isComposing() to use automatic compose state tracking
	    of TQInputContext
	  - (TQXIMInputContext): Remove composing, cpos, sellen from
	    initializer list
	  - (sendIMEvent): Remove remembering of cpos, sellen
	  - (reset): Replace IMEnd event sending with
	    TQInputContext::reset()
	  - (resetClientState): Remove cpos, sellen, composing
	  - (isComposing): Exported interface for xic callbacks to
	    access protected TQInputContext::isComposing()
	  - (setMicroFocus): Follow API change that replaces relative
	    coordinate with global one
	  - (mouseHandler): Add approprate reset on clicking
	  - (setFocus, unsetFocus): Remove preedit preservation and
	    relocation to follow API change. They are moved to
	    TQInputContext as generarization
	  - (isPreeditRelocationEnabled): New function to follow API
	    change.
	  - (isPreeditPreservationEnabled): New function. This
	    indicates that whether preedit state should be preserved
	    or not when focusing out the widget

2004-06-14  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqinputcontext.h
	  - (setFocus): Remove hasPreservedPreedit arg
	  - (unsetFocus): Remove preservePreedit arg
	  - (isPreeditRelocationEnabled): New function
	  - (isComposing): New function

	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContextPrivate): Reorganize variables for
	    preedit relocation
	  - (TQInputContextPrivate::resetComposingState): New function
	  - (TQInputContextPrivate::updateComposingState): New function
	  - (setFocusWidget): Add preedit relocation support. Preedit
	    state is relocated to another text widget when the shared
	    context has focused on the another text widget. This
	    feature is mainly used by Japanese input methods
	  - (isPreeditRelocationEnabled): New function. Preedit
	    relocation is enabled only if this function returned TRUE.
	  - (isComposing): New function. Returns current composing
	    state as result of automatic compose state tracking
	    through sendIMEvent(). The function is for used by
	    subclass of TQInputContext to know preedit state of the
	    widget. Although TQWidget and TQInputContextFactory can
	    access to the function as friend, they must not use the
	    function to know composing state of contexts. Keep less
	    relationship to simplify input method development
	  - (sendIMEvent): New 1-arg overloaded function. The function
	    encupsulates platform-dependent IMEvent sending. Only
	    TQ_WS_X11 is supported for now. TQ_WS_TQWS should be supported
	  - (sendIMEvent):
	    * 4-args version of the overloaded function
	    * Isolate platform-dependent event sending process to
	      separated function
	    * Add preedit relocation support
	    * Add compose state tracking support
	  - (unsetFocus): Add reset() for simple ephemeral input
	    contexts
	  - (mouseHandler): Add reset() when clicking for simple
	    ephemeral input contexts
	  - (reset): Add preedit finalization code. Overriding
	    function should call this function to ensure proper
	    preedit state

2004-06-11  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqlineedit.cpp
	  - (TQLineEditPrivate::xToPosInternal, TQLineEditPrivate::xToPos):
	    Fix loose placement to tail when clicking beyond the string

2004-06-10  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqinputcontext.h
	  - Remove several pointers to TQWidget to share concrete IM
	    implementation code with TQt/Embedded. The IM model of
	    TQt/Embedded requires that widgets and input contexts are
	    existing in another process
	  - (TQInputContext): Remove the TQWidget * arg
	  - (tqfocusWidget, ownerWidget):
	    * Move to protected and unrecommended
	    * Move the inline function definition to qinputcontext.cpp
	  - (filterEvent): Remove unnecessary keywidget
	  - (setFocus):
	    * Remove newFocusWidget arg
	    * Add hasPreservedPreedit arg
	  - (unsetFocus): Add preservePreedit arg
	  - (sendIMError): New function to hide ownerWidget from
	    derived TQInputContext
	  - (composingWidget, setComposingWidget): New function to support
	    preedit relocation of shared context on focus transition
	  - (setFocusWidget, setOwnerWidget): New function to
	    implement internal functionality on TQt/X11 platform
	  - (d): New variable to hide ABI change
	  - (TQInputContext, operator=): New function to disable copy
	    constructor and operator=

	* src/kernel/tqinputcontext.cpp
	  - (class TQInputContextPrivate): New class to hide ABI change
	  - (TQInputContext):
	    * Follow API change
	    * Follow introducing TQInputContextPrivate
	  - (~TQInputContext): Follow introducing TQInputContextPrivate
	  - (ownerWidget):
	    * Move from qinputcontext.h
	    * Follow introducing TQInputContextPrivate
	  - (setOwnerWidget): New function to complement removal of
	    the arg of TQInputContext constructor
	  - (composingWidget, setComposingWidget): New function. These
	    functions are participating with preedit relocation of shared
	    context on focus transition
	  - (tqfocusWidget):
	    * Move from qinputcontext.h
	    * Follow introducing TQInputContextPrivate
	    * Follow introducing composingWidget
	  - (setFocusWidget): New function to complement removal of
	    the TQWidget * arg of setFocus()
	  - (filterEvent): Follow API change of removal of keywidget
	  - (sendIMEvent): Add #ifdef to isolate TQt/X11 dependent code
	  - (sendIMError): New function to hide ownerWidget() from
	    derived TQInputContext. This is required to share particular
	    IM plugin code with TQt/Embedded
	  - (setFocus, unsetFocus): Follow API change

	* src/input/tqinputcontextfactory.cpp
	  - (create): Add ownerWidget initialization for new context

	* src/kernel/tqwidget.cpp
	  - (setFocus): Remove unnecessary shared input context
	    checking

	* src/kernel/tqwidget_x11.cpp
	  - (setActiveWindow): Replace duplicated code with
	    focusInputContext()
	  - (getInputContext): Return input context only if
	    isInputMethodEnabled() widget, otherwise returns 0. This
	    is required for proper focus transition handling
	  - (unfocusInputContext): Follow API change of
	    TQInputContext::unsetFocus()

	* src/kernel/tqapplication.cpp
	  - (setActiveWindow): Follow change of TQWidget::unfocusInputContext()

	* src/kernel/tqapplication_x11.cpp
	  - (x11ProcessEvent): Follow API change of
	    TQInputContext::filterEvent()

	* src/input/tqximinputcontext_p.h
	  - (setFocus, unsetFocus): Follow API Change
	  - (hasFocus): New function
	  - (close): New function

	* src/input/tqximinputcontext.cpp
	  - Remove unrecommended tqfocusWidget() and ownerWidget()
	  - (ximWidgetList): Remove to replace with ximContextList
	  - (ximContextList): New variable
	  - (xic_draw_callback): Replace tqfocusWidget() with hasFocus()
	    to follow API Change
	  - (TQXIMInputContext):
	    * Follow API change
	    * Follow replacing to ximContextList
	  - (~TQXIMInputContext):
	    * Follow replacing to ximContextList
	    * Remove unnecessary TQInputContext::unsetFocus()
	  - (close_xim):
	    * Follow replacing to ximContextList
	    * Follow API change 
	  - (close, hasFocus): New function. Exported interface for
	    xic_draw_callback to access protected features
	  - (setFocus, unsetFocus): Follow API change

2004-06-09  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqwidget.cpp

	  - (hide): Remove unfocusInputContext(). This caused
	    excessive invalid TQInputContext::unsetFocus().
	    TQWidget::deactivateWidgetCleanup() handles
	    unfocusInputContext() appropriately via
	    tqApp->setActiveWindow( 0 ).

2004-06-08  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqrichtext_p.h
	  - (TQTextCursor::place): New 5-args overloaded function
	  - (TQTextCursor::place): 3-args version of the function is
	    reimplemented as inline function using new 5-args one.
	* src/kernel/tqrichtext.cpp
	  - (TQTextCursor::place): Remove 3-args version of the function
	  - (TQTextCursor::place): New 5-args overloaded function. This
	    is copied from 3-args one and added new args loosePlacing
	    and matchBetweenCharacters

	* src/widgets/tqtextedit.cpp
	  - (sendMouseEventToInputContext): Send mouse event when only
	    mouse cursor is placed within preedit area. This is
	    accomplished by new 5-args TQTextCursor::place()
	  - (contentsContextMenuEvent): Disable context menu when in
	    IM composing state
	  - (drawContents): Add updateMicroFocusHint() to follow
	    dragging of active window by the showed candidate window
	  - (contentsMouseMoveEvent): Fix cursor vanishing on IM
	    composing state

	* src/kernel/tqlineedit.cpp
	  - (sendMouseEventToInputContext): Exclude character at
	    preedit[preeditLength] from being handled as preedit
	  - (contextMenuEvent): Disable context menu when in IM
	    composing state
	  - (focusInEvent): Fix invalid MicroFocusHint position which
	    caused that candidate window is always showed at end of
	    the preedit when active window is show() back

2004-06-07  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqwidget_x11.cpp
	  - (reparentSys): Fix an invalid assumption about input
	    context location involving destroyInputContext()
	  - (deleteTLSysExtra): Remove destroyInputContext() because
	    the input context is not a extra data and should be
	    destroyed in TQWidget::destroy()
	  - (destroyInputContext): Remove icHolderWidget() because
	    this function is called to destroy the input context that
	    belongs to the widget itself
	  - (destroy): Replace 'this->ic' with 'ic'
	  - (create): Replace 'this->ic' with 'ic'

	* src/kernel/tqwidget.cpp
	  - (hide): Add unfocusInputContext()

	* src/kernel/tqapplication.cpp
	  - (setActiveWindow): Add unfocusInputContext()

	* src/kernel/tqlineedit.cpp
	  - (TQLineEditPrivate::xToPosInternal): New function. Copied
	      from xToPos and Remove the safety limiter.
	  - (TQLineEditPrivate::xToPos): Reimprement using xToPosInternal
	  - (sendMouseEventToInputContext):
	    * Fix position boundary as matching with character
	      boundary rather than center of character
	    * Send mouse event when only mouse cursor is placed within
	      preedit area. This is accomplished by replacing xToPos()
	      with xToPosInternal()

2004-06-04  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqinputcontext.h
	  - (font): New function. Returns the font of tqfocusWidget()
	* src/kernel/tqinputcontext.cpp
	  - (font): New function

	* src/kernel/tqwidget_x11.cpp
	  - (setActiveWindow, focusInputContext): Avoid calling
	     qic->setFocus() if the target is identical widget
	  - (setMicroFocusHint, setActiveWindow, createInputContext,
	     destroyInputContext, resetInputContext,
	     focusInputContext): Remove obsolete comment around qic
	     retrieving

	* src/input/tqximinputcontext_x11.cpp
	  - (language): Return Chinese languages appropriately (such
	     as "zh_CN")

2004-06-03  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/kernel/tqinputcontext.h
	- (getOwnerWidget): Remove to rename to ownerWidget
	- (ownerWidget): New function. Rename from getOwnerWidget to
	  be consistent with the name tqfocusWidget
	- (tqfocusWidget): New function. Add to make IM-related
	  communication with tqfocusWidget easy. The name is imported
	  from TQApplication::tqfocusWidget to be supposed same role
	- (language): Change return type to TQCString from const char *
	- (filterEvent): Change args. Passes TQEvent *event rather than
	  preexpanded key event values. This is intended to pass other
	  IM-related events in future. The IM-related events are
	  supposed as TQWheelEvent, TQTabletEvent and so on
	- (setFocusHint): Remove to be appropriate name
	- (setMicroFocus):
	  * Rename from setFocusHint to be appropriate name. This
	    function instructs 'MicroFocus' rect within a widget that
	    is different to normal focus for widgets, so the name
	    'setFocus' is invalid. And 'Hint' is a concept for the
	    manager of this class and loses the meaning when passed to
	    this class. The passed values are not a hint but have
	    well-defined actual effect, so the name 'Hint' is
	    invalid. Finally, TQt/Embedded 2.3.7 has a samely named
	    method in TQWSInputMethod
	  * Remove the arg 'widget' to consistent with the new
	    tqfocusWidget() method
	- (mouseHandler): New function. The method interface is
	  imported from TQWSInputMethod::mouseHandler() of TQt/Embedded
	  2.3.7 and extended for desktop system
	- (sendIMEvent): New function. Conventional function to send
	  TQIMEvent to appropriate widget using tqfocusWidget(). IM
	  developers can send IMEvents without tracking focuswidget by
	  themself
	- (ownerWidget): Remove to Rename to _ownerWidget
	- (_ownerWidget): New variable. Renamed from ownerWidget to
	  avoid name conflict with ownerWidget()
	- (_tqfocusWidget): New variable.
	* src/kernel/tqinputcontext.cpp
	  - (TQInputContext): Follow API change
	  - (~TQInputContext): Clean up
	  - (filterEvent): Follow API change
	  - (sendIMEvent): New function.
	  - (setFocusHint): Remove to follow new API
	  - (setMicroFocus): copied from setFocusHint and reimplement to
	    follow new API
	  - (mouseHandler): New function
	  - (language): Follow API change

	* src/kernel/tqwidget.h
	  - (sendMouseEventToInputContext): New function
	  - (unfocusInputContext): New function

	* src/kernel/tqwidget.cpp
	  - (setFocus): Invoke unfocusInputContext() with previous
	    focus widget to delegate reset responsibility to input
	    context instead of resetInputContext() directly. See also
	    comment for further information
	  - (clearFocus): Add unfocusInputContext();
	  - (event): Delegate reset responsibility to input context
	    instead of resetInputContext() directly. See also comment
	    for further information

	* src/kernel/tqwidget_x11.cpp
	  - (setMicroFocusHint): Modify to follow API change
	  - (setActiveWindow): Modify to follow API change
	  - (focusInputContext): Modify to follow API change
	  - (unfocusInputContext): New function
	  - (sendMouseEventToInputContext): New function

	* src/kernel/tqapplication_x11.cpp
	  - (class TQETWidget): Change translateKeyEventInternal definition
	  - (x11ProcessEvent): Change TQInputContext::filterEvent()
	    invocation to follow API change
	  - (translateKeyEventInternal):
	    * Add new arg statefulTranslation to enable duplicate call
	    within single event loop. This is required to support both
	    TQInputContext::filterEvent() and RTL extensions
	    * Restore accidencially omitted qt_mode_switch_remove_mask
	    handling

	* src/input/tqximinputcontext_p.h
	  - (class TQXIMInputContext): Follow API change of TQInputContext
	  - (language): Change return type to follow new API
	  - (setFocus): Change arg to follow new API
	  - (setFocusHint): Remove to follow new API
	  - (setMicroFocus): New method to follow new API
	  - (mouseHandler): New method to follow new API
	  - (sendIMEvent): New method (reimp)
	  - (tqfocusWidget): Remove to follow new API
	  - (cpos): New variable
	  - (sellen): New variable
	* src/input/tqximinputcontext_x11.cpp
	  - (qt_compose_emptied): Remove as result of optimization. It
	    has become unnecessary now
	  - (xic_start_callback): Add IMStart event sending as
	    result of optimization
	  - (xic_draw_callback): Optimize state management for IMEvent
	    sending, and simplify using sendIMEvent()
	  - (xic_done_callback): Simplify using sendIMEvent()
	  - (TQXIMInputContext):
	    * Follow class definition change
	    * Follow API change
	  - (~TQXIMInputContext): Modify to follow API change
	  - (x11FilterEvent): Optimize state management for IMEvent
	    sending, and simplify using sendIMEvent()
	  - (sendIMEvent): New function. Implement to remember last
	    IMEvent information
	  - (reset): Simplify using sendIMEvent()
	  - (resetClientState): Follow class definition change
	  - (setFocusHint): Remove to follow new API
	  - (setMicroFocus): copied from setFocusHint and modified to
	    follow new API
	  - (mouseHandler): New function. Implemented to reset the
	    context on MouseButtonPress except for Japanese IM. See
	    also comment for further information
	  - (setFocus): Reimplement to follow new API. Automatically
	    handles appropriate IMEvent sending on focus transition
	  - (unsetFocus): Reimplement to follow new API. Implemented to
	    reset the context on FocusOut except for Japanese IM. See
	    also comment for further information

	* src/widgets/tqlineedit.h
	  - (sendMouseEventToInputContext): New function
	* src/widgets/tqlineedit.cpp
	  - (TQLineEditPrivate::composeMode): New function
	  - (TQLineEditPrivate::hasIMSelection): New function
	  - (TQLineEditPrivate::preeditLength): New function
	  - (TQLineEditPrivate::imSelectionLength): New function
	  - (mousePressEvent, mouseMoveEvent, mouseReleaseEvent,
	     mouseDoubleClickEvent): Support TQInputContext::mouseHandler()
	  - (sendMouseEventToInputContext): New function. Retrieve the
	    position and call TQWidget::sendMouseEventToInputContext()
	  - (drawContents): Follow API change

	* src/widgets/tqtextedit.h
	  - (sendMouseEventToInputContext): New function
	* src/widgets/tqtextedit.cpp
	  - (TQTextEditPrivate::composeMode): New function
	  - (sendMouseEventToInputContext): New function. Retrieve the
	    position and call TQWidget::sendMouseEventToInputContext()
	  - (imComposeEvent, imEndEvent): Clean up with composeMode()
	  - (contentsMousePressEvent, contentsMouseMoveEvent,
	     contentsMouseReleaseEvent, contentsMouseDoubleClickEvent):
	    Support TQInputContext::mouseHandler()

2004-06-01  YamaKen  <yamaken@bp.iij4u.or.jp>

	* src/input/tqximinputcontext_x11.cpp (x11FilterEvent): Fix
	  commit problem except for on-the-spot style

2004-05-31  YamaKen  <yamaken@bp.iij4u.or.jp>

	* First 'Simplified API' patch. A lot of changes to be described

2004-03-16  Daisuke Kameda  <kaminmat@cc.rim.or.jp>

	* A lot of changes to be described before this date. Almost
	  of code are written by Daisuke Kameda
