{"json_modified": "2016-06-27T03:21:03.110646", "uuid": "e6a5efb4-1748-41a6-9d31-9f9d34f733d4", "title": "nsITextInputProcessor", "url": "/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsITextInputProcessor", "tags": ["Interface", "Reference", "XPCOM Interface Reference", "R\u00e9f\u00e9rence", "Interface:Scriptable", "DOM"], "translations": [], "modified": "2016-06-27T03:21:03", "label": "nsITextInputProcessor", "localization_tags": [], "locale": "en-US", "id": 135053, "last_edit": "2016-06-27T03:20:55", "summary": "The motivation of this interface is to provide better API than nsIDOMWindowUtils to dispatch key events and create, modify, and commit composition in higher level. nsIDOMWindowUtils has provided the methods which dispatched keyboard events and composition events almost directly. Therefore they sometimes caused impossible scenarios in automated tests (what's tested with such events?) and JS-IME and/or JS-Keyboard on Firefox OS or add-ons may dispatch events with wrong rules. For solving that issue, methods of this interface have been designed for performing a key operation or representing a change of composition state.", "sections": [{"id": "Method_overview", "title": "Method overview"}, {"id": "Attributes", "title": "Attributes"}, {"id": "Constants", "title": "Constants"}, {"id": "Methods", "title": "Methods"}, {"id": "appendClauseToPendingComposition()", "title": "appendClauseToPendingComposition()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "beginInputTransaction()", "title": "beginInputTransaction()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "Parameters", "title": "Return value"}, {"id": "beginInputTransactionForTests()", "title": "beginInputTransactionForTests()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "Parameters", "title": "Return value"}, {"id": "cancelComposition()", "title": "cancelComposition()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "commitComposition()", "title": "commitComposition()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "commitCompositionWith()", "title": "commitCompositionWith()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "Parameters", "title": "Return value"}, {"id": "flushPendingComposition()", "title": "flushPendingComposition()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "Parameters", "title": "Return value"}, {"id": "getModifierState()", "title": "getModifierState()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "Parameters", "title": "Return value"}, {"id": "keydown()", "title": "keydown()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "Parameters", "title": "Return value"}, {"id": "keyup()", "title": "keyup()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "Parameters", "title": "Return value"}, {"id": "setCaretInPendingComposition()", "title": "setCaretInPendingComposition()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "setPendingCompositionString()", "title": "setPendingCompositionString()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "shareModifierStateOf()", "title": "shareModifierStateOf()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "startComposition()", "title": "startComposition()"}, {"id": "Parameters", "title": "Parameters"}, {"id": "Parameters", "title": "Return value"}, {"id": "How_to_create_KeyboardEvent_instance_for_nsITextInputProcessor", "title": "How to create KeyboardEvent instance for nsITextInputProcessor"}, {"id": "Modifier_state_management", "title": "Modifier state management"}, {"id": "Activating_normal_modifier_state", "title": "Activating normal modifier state"}, {"id": "Inactivating_normal_modifier_state", "title": "Inactivating normal modifier state"}, {"id": "Toggling_lockable_modifier_state", "title": "Toggling lockable modifier state"}, {"id": "Examples_of_modifier_state_management", "title": "Examples of modifier state management"}, {"id": "Examples_of_lockable_modifier_state_management", "title": "Examples of lockable modifier state management"}, {"id": "Sharing_modifier_state_during_multiple_instances", "title": "Sharing modifier state during multiple instances"}], "slug": "Mozilla/Tech/XPCOM/Reference/Interface/nsITextInputProcessor", "review_tags": ["technical"]}