Processing user input events in a web browser
First Claim
1. A method, comprising:
- receiving a user event input at a touchscreen of an electronic device during display of a document by the touchscreen;
dispatching the user event for processing in a plurality of threads, a first thread of the plurality of threads being configured to process the user event in accordance with a first handling action determined by a user command associated with the user event input, and a second thread of the plurality of threads being configured to process the user event in accordance with a second handling action defined specifically for the user input event by the document, wherein the first thread is further configured to process queued tasks such that processing of the user event input by the first thread may be delayed until processing of other previously queued tasks completes and processing of the user event input by the second thread may begin before processing of the user event input by the first thread; and
upon a first one of the first thread and the second thread completing processing of the user event, updating the display of the document according to the processing completed by that first one of the first thread and the second thread,wherein the first handling action is a default handling action configured for an execution environment executing on the electronic device, the execution environment being configured to output the document for display on the touchscreen and wherein the default handing action is not defined by the document.
6 Assignments
0 Petitions
Accused Products
Abstract
A method and computing device are provided for processing user events received via a user interface, such as a touchscreen, in multiple threads. When a user event is received for a target element in a webpage, the user event is dispatched to both a main browser thread and a secondary thread. The secondary thread processes user events in accordance with established default actions defined within the browser, while the main thread processes the user events in accordance with any event handlers defined for that target element. The main thread processing may be delayed by other interleaved task, and the secondary thread may be given priority over the main thread. When the secondary thread completes processing, an updated webpage is displayed. When the main thread subsequently completes processing, its updated rendering of the webpage is displayed. The secondary thread thus provides an early user interface response to the user event.
-
Citations
18 Claims
-
1. A method, comprising:
-
receiving a user event input at a touchscreen of an electronic device during display of a document by the touchscreen; dispatching the user event for processing in a plurality of threads, a first thread of the plurality of threads being configured to process the user event in accordance with a first handling action determined by a user command associated with the user event input, and a second thread of the plurality of threads being configured to process the user event in accordance with a second handling action defined specifically for the user input event by the document, wherein the first thread is further configured to process queued tasks such that processing of the user event input by the first thread may be delayed until processing of other previously queued tasks completes and processing of the user event input by the second thread may begin before processing of the user event input by the first thread; and upon a first one of the first thread and the second thread completing processing of the user event, updating the display of the document according to the processing completed by that first one of the first thread and the second thread, wherein the first handling action is a default handling action configured for an execution environment executing on the electronic device, the execution environment being configured to output the document for display on the touchscreen and wherein the default handing action is not defined by the document. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An electronic device, including:
-
a touchscreen comprising a display; at least one processor in communication with the touchscreen, the at least one processor being configured to; receive a user event input detected at the touchscreen during display of a document by the touchscreen; dispatch the user event for processing in a plurality of threads, a first thread of the plurality of threads being configured to process the user event in accordance with a first handling action determined by a user command associated with the user event input, and a second thread of the plurality of threads being configured to process the user event in accordance with a second handling action defined specifically for the user input event by the document, wherein the first thread is further configured to process queued tasks such that processing of the user event input by the first thread may be delayed until processing of other previously queued tasks completes and processing of the user event input by the second thread may begin before processing of the user event input by the first thread; and upon a first one of the first thread and the second thread completing processing of the user event, updating the display of the document according to the processing completed by that first one of the first thread and the second thread, wherein the first handling action is a default handling action configured for an execution environment executing on the electronic device, the execution environment being configured to output the document for display on the touchscreen and wherein the default handing action is not defined by the document. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. Code stored on a non-transitory computer-readable medium which, when executed by at least one processor of a computing device, causes the computing device to implement the method of:
-
receiving a user event input at a touchscreen of an electronic device during display of a document by the touchscreen; dispatching the user event for processing in a plurality of threads, a first thread of the plurality of threads being configured to process the user event in accordance with a first handling action determined by a user command associated with the user event input, and a second thread of the plurality of threads being configured to process the user event in accordance with a second handling action defined specifically for the user event input by the document, wherein the first thread is further configured to process queued tasks such that processing of the user event input by the first thread may be delayed until processing of other previously queued tasks completes and processing of the user event input by the second thread may begin before processing of the user event input by the first thread; and upon a first one of the first thread and the second thread completing processing of the user event, updating the display of the document according to the processing completed by that first one of the first thread and the second thread, wherein the first handling action is a default handling action configured for an execution environment executing on the electronic device, the execution environment being configured to output the document for display on the touchscreen and wherein the default handing action is not defined by the document.
-
Specification