Methods and systems for providing input to a computing device based on a toggle gesture performed during a drag gesture are provided. A drag gesture can be performed on a touch screen to manipulate a user interface object. For example, the drag gesture can move the user interface object or resize the user interface object. Such manipulation commands may have alternate modes or options. For example, a user may want to place a copy of the user interface object rather than simply moving it. Accordingly, a toggle gesture can be performed during the drag gesture to choose an alternate manipulation command. For example, a drag gesture can be performed to move an object, and a toggle gesture can be performed during the drag gesture to copy the object instead of moving it.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer-implemented method, comprising: at a computing device including a touch-sensitive surface: detecting a first touch input by a first contact on the touch-sensitive surface; in response to detecting the first touch input, selecting a first command based on the first touch input; after detecting the first touch input by the first contact, detecting a second touch input by a second contact, different from the first contact, on the touch-sensitive surface; in response to detecting the second touch input, modifying the selection of the first command based on the second touch input; detecting liftoff of a contact from the touch-sensitive surface; and in response to detecting liftoff of a contact from the touch-sensitive surface: in accordance with detecting liftoff of the first contact, executing the selected first command as modified based on the second touch input; in accordance with detecting liftoff of the second contact, undoing the modifying the selection of the first command.
2. The method of claim 1 , further comprising: detecting a liftoff of the first contact after undoing the modifying the selection of the first command; and in response to detecting liftoff of the first contact after undoing, executing the first command based on the liftoff of the first contact.
3. The method of claim 1 , wherein modifying the selection of the first command includes selecting a second command, and executing the selected first command as modified based on the second touch input includes executing the second command.
4. The method of claim 3 , further comprising: while continuing to detect the first touch input, detecting a third touch input by a third contact on the touch-sensitive surface; and modifying the selection of the first command based on the third touch input.
5. The method of claim 1 , wherein modifying the selection of the first command includes changing a parameter of the first command from a first value to a second value, and executing the selected first command as modified based on the second touch input includes executing the first command with the second value as a parameter.
6. The method of claim 1 , further comprising: determining a distance between the second touch input and the first touch input; and determining that the distance is less than a predetermined threshold distance; wherein modifying the selection of the first command is further based on the determining that the distance is less than the predetermined threshold distance.
7. The method of claim 1 , further comprising: determining that the second touch input is within a predefined location on the touch-sensitive surface; wherein modifying the selection of the first command is further based on the determining that the second touch input is within the predefined location on the touch-sensitive surface.
8. The method of claim 1 , further comprising: detecting a liftoff of the first contact at a first liftoff time; detecting a liftoff of the second contact at a second liftoff time; determining that the first liftoff time is within a predetermined temporal threshold after the second liftoff time; and in response to the determining that the first liftoff time is within the predetermined temporal threshold after the second liftoff time, executing a command based on the modifying the selection of the first command.
9. The method of claim 1 , wherein the first command includes one of move, copy, resize, rotate, sort, and insert.
10. A non-transitory computer readable storage medium having stored therein instructions, which when executed by a device having a touch-sensitive surface, cause the device to perform a method comprising: detecting a first touch input by a first contact on the touch-sensitive surface; in response to detecting the first touch input, selecting a first command based on the first touch input; after detecting the first touch input by the first contact, detecting a second touch input by a second contact, different from the first contact, on the touch-sensitive surface; in response to detecting the second touch input, modifying the selection of the first command based on the second touch input; detecting liftoff of a contact from the touch-sensitive surface; and in response to detecting liftoff of a contact from the touch-sensitive surface: in accordance with detecting liftoff of the first contact, executing the selected first command as modified based on the second touch input; in accordance with detecting liftoff of the second contact, undoing the modifying the selection of the first command.
11. The non-transitory computer readable storage medium of claim 10 , further comprising: detecting a liftoff of the first contact after undoing the modifying the selection of the first command; and in response to detecting liftoff of the first contact after undoing, executing the first command based on the liftoff of the first contact.
12. The non-transitory computer readable storage medium of claim 10 , wherein modifying the selection of the first command includes selecting a second command, and executing the selected first command as modified based on the second touch input includes executing the second command.
13. The non-transitory computer readable storage medium of claim 12 , further comprising: while continuing to detect the first touch input, detecting a third touch input by a third contact on the touch-sensitive surface; and modifying the selection of the first command based on the third touch input.
14. The non-transitory computer readable storage medium of claim 10 , wherein modifying the selection of the first command includes changing a parameter of the first command from a first value to a second value, and executing the selected first command as modified based on the second touch input includes executing the first command with the second value as a parameter.
15. The non-transitory computer readable storage medium of claim 10 , further comprising: determining a distance between the second touch input and the first touch input; and determining that the distance is less than a predetermined threshold distance; wherein modifying the selection of the first command is further based on the determining that the distance is less than the predetermined threshold distance.
16. The non-transitory computer readable storage medium of claim 10 , further comprising: determining that the second touch input is within a predefined location on the touch-sensitive surface; wherein modifying the selection of the first command is further based on the determining that the second touch input is within the predefined location on the touch-sensitive surface.
17. The non-transitory computer readable storage medium of claim 10 , further comprising: detecting a liftoff of the first contact at a first liftoff time; detecting a liftoff of the second contact at a second liftoff time; determining that the first liftoff time is within a predetermined temporal threshold after the second liftoff time; and in response to the determining that the first liftoff time is within the predetermined temporal threshold after the second liftoff time, executing a command based on the modifying the selection of the first command.
18. The non-transitory computer readable storage medium of claim 10 , wherein the first command includes one of move, copy, resize, rotate, sort, and insert.
19. An electronic device, comprising: a touch-sensitive surface for receiving touch input; a processor to execute instructions; and a memory coupled with the processor to store instructions, which when executed by the processor, cause the processor to perform a method comprising: detecting a first touch input by a first contact on the touch-sensitive surface; in response to detecting the first touch input, selecting a first command based on the first touch input; after detecting the first touch input by the first contact, detecting a second touch input by a second contact, different from the first contact, on the touch-sensitive surface; in response to detecting the second touch input, modifying the selection of the first command based on the second touch input; detecting liftoff of a contact from the touch-sensitive surface; and in response to detecting liftoff of a contact from the touch-sensitive surface: in accordance with detecting liftoff of the first contact, executing the selected first command as modified based on the second touch input; in accordance with detecting liftoff of the second contact, undoing the modifying the selection of the first command.
20. The electronic device of claim 19 , the method further comprising: detecting a liftoff of the first contact after undoing the modifying the selection of the first command; and in response to detecting liftoff of the first contact after undoing, executing the first command based on the liftoff of the first contact.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
December 22, 2015
December 18, 2018
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.