Multi-threaded conditional processing of user interactions for gesture processing using rendering thread or gesture processing thread based on threshold latency
First Claim
1. A system for separating gesture processing from rendering processing, said system comprising:
- a memory area associated with a mobile computing device, said memory area storing at least a portion of a web page and one or more of a plurality of scrollable elements associated therewith, said memory area further storing a threshold latency, the threshold latency being based upon a noticeable delay in interaction with the mobile computing device;
a processor programmed to;
detect, by a gesture processing thread via a touch sensor associated with the mobile computing device, a request to scroll the web page stored in the memory area;
request, from a rendering thread, touch point data associated with the detected request, said touch point data identifying one of the scrollable elements associated with the detected request;
calculate an elapsed time since requesting the touch point data and receipt of the touch point data;
scroll, by the rendering thread, said one of the scrollable elements when the calculated elapsed time is within the threshold latency stored in the memory area; and
scroll, by the gesture processing thread, the web page when the calculated elapsed time is not within the threshold latency stored in the memory area, wherein the rendering thread corresponds to a slow response thread and the gesture processing thread corresponds to a fast response thread.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments isolate gesture processing for improved user interactivity with content. A first thread detects user interaction with a document via a touch sensor associated with a computing device. A latency associated with a second thread is calculated. The calculated latency is compared to a threshold latency. Based on the comparison, the first thread determines whether to transfer processing of the detected user interaction from the first thread to the second thread. The detected user interaction is processed by the first thread or by the second thread based on the determination. In some embodiments, users are provided with smooth interactivity such as panning and scrolling when browsing web content with a browser executing on a mobile computing device.
16 Citations
20 Claims
-
1. A system for separating gesture processing from rendering processing, said system comprising:
-
a memory area associated with a mobile computing device, said memory area storing at least a portion of a web page and one or more of a plurality of scrollable elements associated therewith, said memory area further storing a threshold latency, the threshold latency being based upon a noticeable delay in interaction with the mobile computing device; a processor programmed to; detect, by a gesture processing thread via a touch sensor associated with the mobile computing device, a request to scroll the web page stored in the memory area; request, from a rendering thread, touch point data associated with the detected request, said touch point data identifying one of the scrollable elements associated with the detected request; calculate an elapsed time since requesting the touch point data and receipt of the touch point data; scroll, by the rendering thread, said one of the scrollable elements when the calculated elapsed time is within the threshold latency stored in the memory area; and scroll, by the gesture processing thread, the web page when the calculated elapsed time is not within the threshold latency stored in the memory area, wherein the rendering thread corresponds to a slow response thread and the gesture processing thread corresponds to a fast response thread. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
detecting, by a first thread, user interaction with a document via a touch sensor associated with a computing device, said first thread handling gesture processing; calculating a latency associated with a second thread, said second thread handling rendering of the document, wherein calculating the latency comprises requesting, from the second thread, touch point data associated with the detected user interaction, calculating an elapsed time since said requesting, and determining the latency based at least on the calculated elapsed time; comparing the calculated latency to a threshold latency, the threshold latency being based on a perceivable delay in the user interaction; determining, based on the comparison, whether to transfer processing of the detected user interaction from the first thread to the second thread; processing the detected user interaction by the second thread by scrolling a portion of the document when the calculated latency is less than the threshold latency and the second thread provides the requested touch point data; and processing the detected user interaction by the first thread by scrolling the entire document when the calculated latency is greater than the threshold latency and the second thread fails to provide the requested touch point data. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. One or more computer readable storage media having computer-executable components, said components comprising:
-
a user interface component that when executed causes at least one processor to detect, by a fast response thread, user interaction with a document via a touch sensor associated with a computing device, said fast response thread handling gesture processing; a touch point component that when executed causes at least one processor to request, from a slow response thread by the fast response thread, touch point data corresponding to the user interaction detected by the user interface component, said slow response thread handling display of the document, said requested touch point data being associated with an operation to be applied to at least a portion of the document; a measurement component that when executed causes at least one processor to compare, by the fast response thread, a latency associated with the slow response thread to a threshold latency, the threshold latency being based on a perceivable delay in the user interaction; and an overlay component that when executed causes at least one processor to apply, based on the comparison performed by the measurement component, the operation by the fast response thread to the entire document or by the slow response thread to only said portion of the document, wherein the overlay component applies the operation by the fast response thread to the entire document when the latency violates the threshold latency and applies the operation by the slow response thread to only said portion of the document when the latency satisfies the threshold latency. - View Dependent Claims (18, 19, 20)
-
Specification