Method and mechanism for coordinating input of asynchronous data
First Claim
1. In a computer system, a method of handling user input, comprising, placing messages corresponding to user input information into a message queue, differentiating between real time messages in the queue which are to be handled at least in part in real time and ordered messages in the queue which are to be handled in a synchronized order of input, processing the ordered messages in a synchronized order of input by handling each ordered message only after completion of the processing of any previous ordered message, and handling at least in part the real time messages while awaiting completion of processing of an ordered message.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and mechanism for handling user input. Messages corresponding to the user input are placed in a message queue. An input handler differentiates between messages in the queue, such as handwritten character strokes, which are to be handled in real time, and ordered messages, such as characters, cursor movement and editing commands, which are to be handled in a synchronized order of input. The input handler handles each ordered message only after completion of any previous ordered message, while real time messages are handled regardless of the completion status of the ordered messages. In this manner, handwritten character strokes are immediately written to the display area. Ordered messages, which may correspond to handwritten characters having a recognition delay time associated therewith, are handled in the same order as input by the user regardless of any recognition delay time.
81 Citations
24 Claims
- 1. In a computer system, a method of handling user input, comprising, placing messages corresponding to user input information into a message queue, differentiating between real time messages in the queue which are to be handled at least in part in real time and ordered messages in the queue which are to be handled in a synchronized order of input, processing the ordered messages in a synchronized order of input by handling each ordered message only after completion of the processing of any previous ordered message, and handling at least in part the real time messages while awaiting completion of processing of an ordered message.
- 12. In a computer system, a mechanism for handling user input, comprising means for placing messages corresponding to user input information into a message queue, an input handler for differentiating between real-time messages which are to be handled at least in part in real time and ordered messages which are to be handled in a synchronized order of input, the input handler including means for detecting completion of a previous ordered message, and further including means for causing processing of the ordered messages in a synchronized order of input by handling each ordered message only after completion of processing of any previous ordered message and for handling at least in part the real time messages while awaiting completion of processing of an ordered message.
-
19. In a computer system, a method of handling input from a user, comprising:
-
placing messages corresponding to keystroke input and messages corresponding to pen events, including pen event messages related to handwritten characters, into a message queue;
determining from the messages in the message queue when the user has finished a character, and when the character is finished, sending information corresponding to the character to a handwriting recognition engine;
awaiting a result from the handwriting recognition engine, and while awaiting said result, determining which pen event messages are caused by the writing of a handwritten character stroke and handling those messages by outputting information corresponding to the handwritten character stroke to a display; and
handling any message in the message queue while a result from the handwriting recognition engine is not pending.
-
- 22. A system for providing output from user input, comprising, a message queue for receiving messages corresponding to real time events that are to be handled at least in part in real time and ordered events that are to be handled in a synchronized order of input, a recognition engine, an output mechanism, and an input handler, the input handler examining the message queue to differentiate between the real time events and the ordered events therein to provide at least some events to the recognition engine and to output real-time information corresponding to the real-time events to the output mechanism while awaiting a result of recognition from the recognition engine.
Specification