IME Kit Introduction to IME Kit Implementing an Input Method Application Implementing a Custom Text Input Box Switching Between Input Methods Input Method Subtype Development