Touch event model
First Claim
1. A non-transitory computer readable storage medium, storing one or more programs for execution by a multi-touch device with a display and a touch-sensitive surface, the one or more programs including instructions that when executed by the multi-touch device cause the multi-touch device to:
- display a user interface including a plurality of views, each view corresponding to a respective portion of the user interface, the plurality of views including a first view and a second view;
execute one or more software elements, each software element being associated with a particular view;
receive at least one touch in the first view, wherein the first view is associated with a software element of said one or more software elements; and
in response to receiving the at least one touch in the first view, send at least one touch event describing a touch received in the first view to the software element associated with the first view;
while receiving the at least one touch in the first view;
receive at least one touch in the second view; and
in response to receiving the at least one touch in the second view;
in accordance with a determination that the first view is an exclusive-touch view in the sense that the first view does not allow software elements associated with other views to receive touch events while the first view is receiving a touch, ignore, with respect to the second view, the at least one touch received in the second view; and
in accordance with a determination that the first view is not an exclusive-touch view in the sense that the first view allows software elements associated with other views to receive touch events while the first view is receiving a touch, provide at least one touch event describing a touch received in the second view to a software element associated with the second view.
0 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the present invention are directed to methods, software, devices and APIs for defining touch events for application level software. Furthermore, some embodiments are directed to simplifying the recognition of single and multiple touch events for applications running in multi-touch enabled devices. To simplify the recognition of single and multiple touch events, each view within a particular window can be configured as either a multi-touch view or a single touch view. Furthermore, each view can be configured as either an exclusive or a non-exclusive view. Depending on the configuration of a view, touch events in that and other views can be either ignored or recognized. Ignored touches need not be sent to the application. Selectively ignoring touches can allow for simpler software elements that do not take advantage of advanced multi touch features to be executed at the same device and time as more complex software elements.
-
Citations
24 Claims
-
1. A non-transitory computer readable storage medium, storing one or more programs for execution by a multi-touch device with a display and a touch-sensitive surface, the one or more programs including instructions that when executed by the multi-touch device cause the multi-touch device to:
-
display a user interface including a plurality of views, each view corresponding to a respective portion of the user interface, the plurality of views including a first view and a second view; execute one or more software elements, each software element being associated with a particular view; receive at least one touch in the first view, wherein the first view is associated with a software element of said one or more software elements; and in response to receiving the at least one touch in the first view, send at least one touch event describing a touch received in the first view to the software element associated with the first view; while receiving the at least one touch in the first view; receive at least one touch in the second view; and in response to receiving the at least one touch in the second view; in accordance with a determination that the first view is an exclusive-touch view in the sense that the first view does not allow software elements associated with other views to receive touch events while the first view is receiving a touch, ignore, with respect to the second view, the at least one touch received in the second view; and in accordance with a determination that the first view is not an exclusive-touch view in the sense that the first view allows software elements associated with other views to receive touch events while the first view is receiving a touch, provide at least one touch event describing a touch received in the second view to a software element associated with the second view. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for handling touch events at a multi-touch device, comprising:
-
displaying a user interface including a plurality of views, each view corresponding to a respective portion of the user interface, the plurality of views including a first view and a second view; executing one or more software elements, each software element being associated with a particular view; receiving at least one touch in the first view, wherein the first view is associated with a software element of said one or more software elements; and in response to receiving the at least one touch in the first view, sending at least one touch event describing a touch received in the first view to the software element associated with the first view; while receiving the at least one touch in the first view; receiving at least one touch in the second view; and in response to receiving the at least one touch in the second view; in accordance with a determination that the first view is an exclusive-touch view in the sense that the first view does not allow software elements associated with other views to receive touch events while the first view is receiving a touch, ignoring, with respect to the second view, the at least one touch received in the second view; and in accordance with a determination that the first view is not an exclusive-touch view in the sense that the first view allows software elements associated with other views to receive touch events while the first view is receiving a touch, providing at least one touch event describing a touch received in the second view to a software element associated with the second view. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A multi-touch device, comprising
one or more processors; -
memory; a display; and a touch-sensitive surface; the memory storing one or more programs for execution by the one or more processors, the one or more programs including instructions that when executed by the one or more processors cause the multi-touch device to; display, on the display, a user interface including a plurality of views, each view corresponding to a respective portion of the user interface, the plurality of views including a first view and a second view; execute one or more software elements, each software element being associated with a particular view; receive, with the touch-sensitive surface, at least one touch in the first view, wherein the first view is associated with a software element of said one or more software elements; and in response to receiving the at least one touch in the first view, send at least one touch event describing a touch received in the first view to the software element associated with the first view; while receiving the at least one touch in the first view; receive at least one touch in the second view; and in response to receiving the at least one touch in the second view; in accordance with a determination that the first view is an exclusive-touch view in the sense that the first view does not allow software elements associated with other views to receive touch events while the first view is receiving a touch, ignore, with respect to the second view, the at least one touch received in the second view; and in accordance with a determination that the first view is not an exclusive-touch view in the sense that the first view allows software elements associated with other views to receive touch events while the first view is receiving a touch, provide at least one touch event describing a touch received in the second view to a software element associated with the second view. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification