User interface navigation using hand gestures

Optical sensor-based hand gesture detection methods improve user interface navigation efficiency and conserve power by allowing faster and more intuitive selection of interface objects, addressing the inefficiencies of existing techniques.

JP2026009933AActive Publication Date: 2026-01-21APPLE INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2025157234
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-05-18
Filing Date
2025-09-22
Publication Date
2026-01-21
Estimated Expiration
2042-05-19

AI Technical Summary

Technical Problem

Existing techniques for navigating user interfaces using hand gestures on electronic devices are cumbersome and inefficient, often requiring multiple key presses or keystrokes, wasting user time and device energy, particularly in battery-operated devices.

Method used

Implementing methods and interfaces that utilize optical sensors to detect hand gestures for navigating user interfaces, allowing for faster and more efficient selection of user interface objects through different types of gestures.

Benefits of technology

Enhances user interface navigation efficiency, reduces cognitive burden, conserves power, and increases battery life in computing devices by enabling quicker and more intuitive hand gesture interactions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026009933000001_ABST
    Figure 2026009933000001_ABST
Patent Text Reader

Abstract

To provide a method for navigating a user interface using hand gestures.SOLUTION: Displaying, via a display generation component, a selectable user interface object and a cursor, detecting a request to move the cursor to a second location, displaying an animation that provides a visual indication of a length of time the cursor needs to be placed at the second location, and in accordance with a determination that the cursor has been displayed at the second location for longer than a threshold period of time, performing a first operation. In accordance with a determination that the setting is in a first state, activating the user interface object; and in accordance with a determination that the setting is in a second state different from the first state, displaying, without activation and via the display generation component, the menu. The menu includes an option for performing a selection action, causing it to be performed at the second location, changing from the first state to the second state.SELECTED DRAWING: Figure 7M
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] (CROSS-REFERENCE TO RELATED APPLICATIONS) This application claims priority to U.S. Provisional Patent Application No. 63 / 190,783, filed May 19, 2021, entitled "NAVIGATING USER INTERFACES USING HAND GESTURES," U.S. Provisional Patent Application No. 63 / 221,331, filed July 13, 2021, entitled "NAVIGATING USER INTERFACES USING HAND GESTURES," and U.S. Provisional Patent Application No. 17 / 747,613, filed May 18, 2022, entitled "NAVIGATING USER INTERFACES USING HAND GESTURES," the contents of which are incorporated herein by reference in their entireties.

[0002] The present disclosure relates generally to computer user interfaces, and more particularly to techniques for navigating user interfaces using hand gestures. [Background technology]

[0003] Users of smartphones and other personal electronic devices are using their devices more frequently, and several existing techniques allow users to navigate the user interface on their devices. Summary of the Invention

[0004] However, some techniques for navigating user interfaces using hand gestures with electronic devices are generally cumbersome and inefficient. For example, some existing techniques use complex and time-consuming user interfaces that may involve multiple key presses or keystrokes. Existing techniques are time-consuming and waste the user's time and the device's energy. This latter consideration is particularly important in battery-operated devices.

[0005] The present technology thus provides users of electronic devices with faster, more efficient methods and interfaces for navigating user interfaces using hand gestures. Such methods and interfaces, optionally, complement or replace other methods for navigating user interfaces using hand gestures. Such methods and interfaces reduce the cognitive burden on users and create more efficient human-machine interfaces. For battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges.

[0006] According to some embodiments, a method is described. The method is executed on a computer system in communication with a display generating component and an optical sensor. The method includes: displaying, via the display generating component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object has been selected; in response to detecting the hand gesture via the at least the optical sensor, displaying, via the display generating component, an indication that the second user interface object has been selected in accordance with a determination that the hand gesture is a first type of gesture; and displaying, via the display generating component, an indication that the third user interface object has been selected in accordance with a determination that the hand gesture is a second type of gesture different from the first type of gesture.

[0007] According to some embodiments, a non-transitory computer-readable storage medium is described. A non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display generating component and an optical sensor, the one or more programs including instructions for displaying, via the display generating component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object has been selected; in response to detecting the hand gesture via the at least the optical sensor, in accordance with a determination that the hand gesture is a first type gesture, displaying, via the display generating component, an indication that the second user interface object has been selected; and in accordance with a determination that the hand gesture is a second type gesture different from the first type gesture, displaying, via the display generating component, an indication that the third user interface object has been selected.

[0008] According to some embodiments, a temporary computer-readable storage medium is described. A temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display generating component and an optical sensor, the one or more programs including instructions for displaying, via the display generating component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object has been selected; in response to detecting the hand gesture via the at least the optical sensor, in accordance with a determination that the hand gesture is a first type gesture, displaying, via the display generating component, an indication that the second user interface object has been selected; and in accordance with a determination that the hand gesture is a second type gesture different from the first type gesture, displaying, via the display generating component, an indication that the third user interface object has been selected.

[0009] According to some embodiments, a computer system is described comprising: a display generating component, an optical sensor, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: displaying, via the display generating component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; detecting, via at least the optical sensor, a hand gesture while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object has been selected; in response to detecting the hand gesture via at least the optical sensor, in accordance with a determination that the hand gesture is a first type of gesture, displaying, via the display generating component, an indication that the second user interface object has been selected; and in accordance with a determination that the hand gesture is a second type of gesture different from the first type of gesture, displaying, via the display generating component, an indication that the third user interface object has been selected.

[0010] According to some embodiments, a computer system is described. The computer system comprises a display generating component, an optical sensor, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including: means for displaying, via the display generating component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; means for detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object has been selected; and means for, in response to detecting the hand gesture via the at least the optical sensor, displaying, via the display generating component, an indication that the second user interface object has been selected in accordance with a determination that the hand gesture is a first type of gesture, and displaying, via the display generating component, an indication that the third user interface object has been selected in accordance with a determination that the hand gesture is a second type of gesture different from the first type of gesture.

[0011] According to some embodiments, a computer program product is described that stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display generating component and an optical sensor, the one or more programs including instructions for: displaying, via the display generating component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object has been selected; in response to detecting the hand gesture via the at least the optical sensor, in accordance with a determination that the hand gesture is a first type of gesture, displaying, via the display generating component, an indication that the second user interface object has been selected; and in accordance with a determination that the hand gesture is a second type of gesture different from the first type of gesture, displaying, via the display generating component, an indication that the third user interface object has been selected.

[0012] According to some embodiments, a method is described. The method is executed on a computer system in communication with a display generation component. The method includes: displaying, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first position on the user interface; detecting, while displaying the selectable user interface object and the cursor at the first position on the user interface, a request to move the cursor from the first position to a second position on the user interface; in response to detecting the request to move the cursor from the first position to the second position, displaying the cursor at the second position; in accordance with a determination that the second position corresponds to a position of the selectable user interface object, displaying an animation that provides a visual indication of an amount of time the cursor needs to be at the second position to perform an action, the visual indication being updated over a period of time; and in accordance with a determination that the second position does not correspond to a position of the selectable user interface object, ceasing to display the animation.

[0013] According to some embodiments, a non-transitory computer-readable storage medium is described, the non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component, the one or more programs including instructions to: display, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first position on the user interface; while displaying the selectable user interface object and the cursor at the first position on the user interface, detect a request to move the cursor from the first position to a second position on the user interface; in response to detecting the request to move the cursor from the first position to the second position, display the cursor at the second position; in accordance with a determination that the second position corresponds to a position of the selectable user interface object, display an animation that provides a visual indication of an amount of time the cursor needs to be at the second position to perform an action, the visual indication being updated over a period of time; and in accordance with a determination that the second position does not correspond to a position of the selectable user interface object, cease displaying the animation.

[0014] According to some embodiments, a temporary computer-readable storage medium is described, the temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component, the one or more programs including instructions to: display, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first position on the user interface; while displaying the selectable user interface object and the cursor at the first position on the user interface, detect a request to move the cursor from the first position to a second position on the user interface; in response to detecting the request to move the cursor from the first position to the second position, display the cursor at the second position; in accordance with a determination that the second position corresponds to a position of the selectable user interface object, display an animation that provides a visual indication of an amount of time the cursor needs to be at the second position to perform an action, the visual indication being updated over a period of time; and in accordance with a determination that the second position does not correspond to a position of the selectable user interface object, cease displaying the animation.

[0015] According to some embodiments, a computer system is described that includes a display generation component, one or more processors, and a memory that stores one or more programs configured to be executed by the one or more processors, the one or more programs including instructions to: display, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first position on the user interface; detect, while displaying the selectable user interface object and the cursor at the first position on the user interface, a request to move the cursor from the first position to a second position on the user interface; in response to detecting the request to move the cursor from the first position to the second position, display the cursor at the second position; in accordance with a determination that the second position corresponds to a position of the selectable user interface object, display an animation that provides a visual indication of an amount of time the cursor needs to be at the second position to perform an action, the visual indication being updated over a period of time; and in accordance with a determination that the second position does not correspond to a position of the selectable user interface object, cease displaying the animation.

[0016] According to some embodiments, a computer system is described that includes a display generating component, one or more processors, and a memory that stores one or more programs configured to be executed by the one or more processors, the one or more programs including: means for displaying, via the display generating component, a user interface that includes a selectable user interface object and a cursor that is displayed at a first position on the user interface; means for detecting, while displaying the selectable user interface object and the cursor at the first position on the user interface, a request to move the cursor from the first position to a second position on the user interface; means for displaying the cursor at the second position in response to detecting the request to move the cursor from the first position to the second position; and, in accordance with a determination that the second position corresponds to a position of the selectable user interface object, displaying an animation that provides a visual indication of an amount of time the cursor needs to be at the second position to perform an action, the visual indication being updated over a period of time; and, in accordance with a determination that the second position does not correspond to a position of the selectable user interface object, ceasing to display the animation.

[0017] According to some embodiments, a computer program product is described that stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component, the one or more programs including instructions for: displaying, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first position on the user interface; detecting a request to move the cursor from the first position to a second position on the user interface while displaying the selectable user interface object and the cursor at the first position on the user interface; in response to detecting the request to move the cursor from the first position to the second position, displaying the cursor at the second position; in accordance with a determination that the second position corresponds to a position of the selectable user interface object, displaying an animation that provides a visual indication of an amount of time the cursor needs to be at the second position to perform an action, the visual indication being updated over a period of time; and in accordance with a determination that the second position does not correspond to a position of the selectable user interface object, ceasing to display the animation.

[0018] Executable instructions to perform these functions are optionally contained in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors. Executable instructions to perform these functions are optionally contained in a transitory computer-readable storage medium or other computer program product configured for execution by one or more processors.

[0019] This provides devices with faster, more efficient methods and interfaces for navigating user interfaces using hand gestures, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces can complement or replace other methods for navigating user interfaces using hand gestures. [Brief explanation of the drawings]

[0020] For a better understanding of the various described embodiments, reference should be made to the following Detailed Description of the Invention in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout:

[0021] [Figure 1A] FIG. 1 is a block diagram illustrating a portable multifunction device with a touch-sensitive display in accordance with some embodiments.

[0022] [Figure 1B] FIG. 2 is a block diagram illustrating exemplary components for event processing according to some embodiments.

[0023] [Figure 2] FIG. 1 illustrates a portable multifunction device with a touch screen in accordance with some embodiments.

[0024] [Figure 3] FIG. 1 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface in accordance with some embodiments.

[0025] [Figure 4A] 1 illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments.

[0026] [Figure 4B]1 illustrates an exemplary user interface for a multifunction device having a touch-sensitive surface that is separate from the display in accordance with some embodiments.

[0027] [Figure 5A] 1 illustrates a personal electronic device according to some embodiments.

[0028] [Figure 5B] FIG. 1 is a block diagram illustrating a personal electronic device according to some embodiments.

[0029] [Figure 6] 1 illustrates an exemplary set of hand gestures according to some embodiments.

[0030] [Figure 7A] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7B] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7C] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7D] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7E] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7F] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7G]1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7H] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7I] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7J] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7K] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7L] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7M] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7N] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7O] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7P] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7Q] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7R]1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7S] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7T] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7U] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7V] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7W] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7X] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7Y] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7Z] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 7AA] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments.

[0031] [Figure 8A]1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 8B] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 8C] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 8D] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 8E] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 8F] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 8G] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 8H] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 8I] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 8J] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments.

[0032] [Figure 9A]1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 9B] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 9C] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 9D] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 9E] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 9F] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 9G] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 9H] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments.

[0033] [Figure 10A] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 10B] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 10C]1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 10D] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 10E] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 10F] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments.

[0034] [Figure 11A] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 11B] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 11C] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 11D] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 11E] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 11F] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 11G]1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 11H] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments.

[0035] [Figure 12A] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 12B] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 12C] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 12D] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 12E] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 12F] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 12G] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 12H] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 12I]1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 12J] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments.

[0036] [Figure 13A] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 13B] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 13C] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 13D] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 13E] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 13F] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments. [Figure 13G] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments.

[0037] [Figure 14] 1 illustrates an exemplary user interface for navigating a user interface using hand gestures according to some embodiments.

[0038] [Figure 15] FIG. 1 is a flow diagram illustrating a method for navigating a user interface using hand gestures, according to some embodiments.

[0039] [Figure 16] FIG. 1 is a flow diagram illustrating a method for navigating a user interface using hand gestures, according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION

[0040] The following description sets forth example methods, parameters, etc. However, it should be recognized that such description is not intended as a limitation on the scope of the present disclosure, but rather is provided as a description of example embodiments.

[0041] There is a need for electronic devices that provide efficient methods and interfaces for navigating a user interface using hand gestures. For example, users may want to navigate a user interface without touching the display of their device. Such techniques can reduce the cognitive and / or physical strain on users navigating a user interface, thereby increasing productivity. Furthermore, such techniques can reduce processor and battery power that would otherwise be wasted on redundant user input.

[0042] 1A-1B, 2, 3, 4A-4B, and 5A-5B below provide a description of an exemplary device implementing techniques for navigating a user interface using hand gestures. FIG. 6 illustrates an exemplary set of hand gestures, according to some embodiments. FIGS. 7A-7AA illustrate an exemplary user interface for navigating a user interface using hand gestures, according to some embodiments. FIGS. 8A-8J illustrate an exemplary user interface for navigating a user interface using hand gestures, according to some embodiments. FIGS. 9A-9H illustrate an exemplary user interface for navigating a user interface using hand gestures, according to some embodiments. FIGS. 10A-10F illustrate an exemplary user interface for navigating a user interface using hand gestures, according to some embodiments. FIGS. 11A-11H illustrate an exemplary user interface for navigating a user interface using hand gestures, according to some embodiments. FIGS. 12A-12J illustrate an exemplary user interface for navigating a user interface using hand gestures, according to some embodiments. 13A-13G illustrate exemplary user interfaces for navigating a user interface using hand gestures, according to some embodiments. FIG. 14 illustrates an exemplary user interface for navigating a user interface using hand gestures, according to some embodiments. FIG. 15 is a flow diagram illustrating a method for navigating a user interface using hand gestures, according to some embodiments. FIG. 16 is a flow diagram illustrating a method for navigating a user interface using hand gestures, according to some embodiments. The user interfaces of FIGS. 6, 7A-7AA, 8A-8J, 9A-9H, 10A-10F, 11A-11H, 12A-12J, 13A-13G, and 14 are used to illustrate processes described below, including the processes of FIGS. 15 and 16.

[0043] It should also be understood that for methods described herein that are contingent on one or more steps being satisfied, the described method can be repeated any number of times, such that, over the course of the iterations, all of the conditions that are a prerequisite to the steps in the method are satisfied in various iterations of the method. For example, if a method requires performing a first step if a condition is satisfied and a second step if the condition is not satisfied, one skilled in the art will understand that the claimed steps can be repeated in any order until both the satisfied and unsatisfied conditions are met. Thus, a method described with one or more steps that are contingent on one or more conditions being satisfied can be replaced with a method that is repeated until each condition described in the method is satisfied. However, this is not required for system or computer-readable medium claims in which the system or computer-readable medium includes instructions that perform a conditional action based on the corresponding one or more conditions being satisfied, and thus can determine whether a contingency is satisfied without explicitly repeating the steps in the method until all of the conditions that are a prerequisite to the steps in the method are satisfied. Those skilled in the art will also understand that, as with methods with conditional steps, the system or computer-readable storage medium may repeat the method steps as many times as necessary to ensure that all conditional steps have been performed.

[0044] In the following description, terms such as "first" and "second" are used to describe various elements, but these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first touch can be referred to as a second touch, and similarly, a second touch can be referred to as a first touch, without departing from the scope of the various embodiments described. Although a first touch and a second touch are both touches, they are not the same touch.

[0045] The terminology used in the description of the various embodiments set forth herein is for the purpose of describing particular embodiments only and is not intended to be limiting. In the description of the various embodiments set forth and in the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. Also, as used herein, the term "and / or" should be understood to refer to and include any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms "includes," "including," "comprises," and / or "comprising," as used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0046] The term "if" is interpreted, optionally, depending on the context, to mean "when" or "upon," or "in response to determining" or "in response to detecting." Similarly, the phrases "if it is determined" or "if [a stated condition or event] is detected" are interpreted, optionally, depending on the context, to mean "upon determining" or "in response to determining," or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]."

[0047] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, but are not limited to, iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. Optionally, other portable electronic devices, such as laptop or tablet computers with touch-sensitive surfaces (e.g., touchscreen displays and / or touchpads), are also used. It should also be understood that in some embodiments, the device is not a portable communication device, but rather a desktop computer with a touch-sensitive surface (e.g., touchscreen displays and / or touchpads). In some embodiments, the electronic device is a computer system in communication (e.g., via wired communication, via wireless communication) with a display generation component. The display generation component is configured to provide a visual output, such as a display via a CRT display, a display via an LED display, or a display via image projection. In some embodiments, the display generation component is integrated with the computer system. In some embodiments, the display generation component is separate from the computer system. As used herein, "displaying" content includes displaying content (e.g., video data rendered or decoded by display controller 156) by transmitting data (e.g., image data or video data) over a wired or wireless connection to an integrated or external display generation component to visually generate the content.

[0048] In the following discussion, electronic devices are described that include a display and a touch-sensitive surface. However, it should be understood that the electronic device optionally includes one or more other physical user-interface devices, such as a physical keyboard, a mouse, and / or a joystick.

[0049] The device typically supports a variety of applications such as one or more of a drawing application, a presentation application, a word processing application, a website creation application, a disc authoring application, a spreadsheet application, a gaming application, a telephone application, a video conferencing application, an email application, an instant messaging application, a training support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital video player application.

[0050] Various applications running on the device optionally use at least one common physical user-interface device, such as a touch-sensitive surface. One or more features of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and / or changed for each application and / or within a particular application. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports various applications with user interfaces that are intuitive and transparent to the user.

[0051] Attention now turns to embodiments of portable devices with touch-sensitive displays. FIG. 1A is a block diagram illustrating portable multifunction device 100 having touch-sensitive display system 112, according to some embodiments. Touch-sensitive display 112 may conveniently be referred to as a "touch screen" and may also be known or referred to as a "touch-sensitive display system." Device 100 includes memory 102 (optionally including one or more computer-readable storage media), memory controller 122, one or more processing units (CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, input / output (I / O) subsystem 106, other input control devices 116, and external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact intensity sensors 165 that detect the intensity of a contact on device 100 (e.g., a touch-sensitive surface, such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more haptic output generators 167 that generate haptic output on device 100 (e.g., generate haptic output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.

[0052] As used herein and in the claims, the term “intensity” of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or a proxy for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values ​​that includes at least four distinct values ​​and more typically includes hundreds (e.g., at least 256) distinct values. The intensity of a contact is optionally determined (or measured) using various techniques and various sensors or combinations of sensors. For example, one or more force sensors under or adjacent to the touch-sensitive surface are optionally used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted averaged) to determine an estimated force of the contact. Similarly, a pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size and / or change in the contact area detected on the touch-sensitive surface, the capacitance and / or change in the capacitance of the touch-sensitive surface proximate the contact, and / or the resistance and / or change in the capacitance of the touch-sensitive surface proximate the contact are optionally used as a surrogate for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the surrogate measure of the force or pressure of the contact is used directly to determine whether an intensity threshold is exceeded (e.g., the intensity threshold is described in units corresponding to the surrogate measure). In some implementations, the surrogate measure of the contact force or pressure is converted to an estimate of the force or pressure, and the estimate of the force or pressure is used to determine whether an intensity threshold is exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using contact intensity as an attribute of user input allows users to access additional device functionality (e.g., on a touch-sensitive display) and / or receive user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls such as knobs or buttons) that may not otherwise be accessible to users on devices of reduced size that have limited footprint for displaying affordances.

[0053] As used herein and in the claims, the term “haptic output” refers to a physical displacement of a device relative to a previous position of the device, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device, that will be detected by a user with the user's sense of touch. For example, in a situation where a device or a component of a device is in contact with a touch-sensitive surface of a user (e.g., the fingers, palm, or other part of the user's hand), the haptic output produced by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in a physical property of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a “downclick” or “upclick” of a physical actuator button. In some cases, a user feels a tactile sensation such as a “downclick” or “upclick” even when there is no movement of a physical actuator button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's action. As another example, movement of a touch-sensitive surface is optionally interpreted or perceived by a user as "roughness" of the touch-sensitive surface, even when there is no change in the smoothness of the touch-sensitive surface. While such user interpretation of touch depends on the user's personal sensory perception, there are many sensory perceptions of touch that are common to the majority of users. Thus, when a haptic output is described as corresponding to a particular sensory perception of a user (e.g., "upclick," "downclick," "roughness"), unless otherwise specified, the generated haptic output corresponds to a physical displacement of the device, or a component of the device, that produces the described sensory perception for a typical (or average) user.

[0054] It should be understood that device 100 is only one example of a portable multifunction device, and that device 100 optionally has more or fewer components than those shown, optionally combines two or more components, or optionally has a different configuration or arrangement of its components. The various components shown in Figure 1A are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and / or application specific integrated circuits.

[0055] Memory 102 optionally includes high-speed random access memory, and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.

[0056] Peripheral interface 118 may be used to couple input and output peripherals of the device to CPU 120 and memory 102. One or more processors 120 operate or execute various software programs (e.g., computer programs (e.g., including instructions)) and / or instruction sets stored in memory 102 to perform various functions and process data for device 100. In some embodiments, peripheral interface 118, CPU 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.

[0057] RF (radio frequency) circuitry 108 transmits and receives RF signals, also called electromagnetic signals. RF circuitry 108 converts electrical signals to electromagnetic signals or electromagnetic signals to electrical signals and communicates with communication networks and other communication devices via electromagnetic signals. RF circuitry 108 optionally includes well-known circuitry for performing these functions, including, but not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, etc. RF circuitry 108 optionally communicates via wireless communication with networks, such as the Internet, also called the World Wide Web (WWW), an intranet, and / or wireless networks, such as cellular telephone networks, wireless local area networks (LANs) and / or metropolitan area networks (MANs), and with other devices. RF circuitry 108 optionally includes well-known circuitry for detecting near field communication (NFC) fields, such as by short-range radios. Wireless communication optionally includes, but is not limited to, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPA), Long Term Evolution (LTE), and other standards.evolution (LTE), near field communications (NFC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and / or IEEE 802.11ac), voice over Internet Protocol (VoIP), Wi-MAX, protocols for email (e.g., Internet message access protocol (IMAP) and / or post office protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol), The present invention may use any of a number of communication standards, protocols, and technologies, including the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (XMPP), the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), the Instant Messaging and Presence Service (IMPS), and / or the Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this application.

[0058] Audio circuit 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. Audio circuit 110 receives audio data from peripherals interface 118, converts the audio data into electrical signals, and transmits the electrical signals to speaker 111. Speaker 111 converts the electrical signals into sound waves audible to humans. Audio circuit 110 also receives electrical signals converted from sound waves by microphone 113. Audio circuit 110 converts the electrical signals into audio data and transmits the audio data to peripherals interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to memory 102 and / or RF circuit 108 by peripherals interface 118. In some embodiments, audio circuit 110 also includes a headset jack (e.g., 212 in FIG. 2 ). The headset jack provides an interface between audio circuitry 110 and a detachable audio input / output peripheral, such as an output-only headphone or a headset with both an output (e.g., single or double ear headphones) and an input (e.g., a microphone).

[0059] I / O subsystem 106 couples input / output peripherals on device 100, such as touchscreen 112 and other input control devices 116, to peripheral interface 118. I / O subsystem 106 optionally includes display controller 156, optical sensor controller 158, depth camera controller 169, intensity sensor controller 159, haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive / send electrical signals from / to other input control devices 116. Other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, etc. In some embodiments, input controller(s) 160 are optionally coupled to any (or none) of a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. The one or more buttons (e.g., 208 in FIG. 2 ) optionally include up / down buttons for volume control of speaker 111 and / or microphone 113. The one or more buttons optionally include push buttons (e.g., 206 in FIG. 2 ). In some embodiments, the electronic device is a computer system in communication with one or more input devices (e.g., via wireless communication over wired communication). In some embodiments, the one or more input devices include a touch-sensitive surface (e.g., a trackpad as part of a touch-sensitive display). In some embodiments, the one or more input devices include one or more camera sensors (e.g., one or more optical sensors 164 and / or one or more depth camera sensors 175), such as for tracking a user's gestures (e.g., hand gestures and / or air gestures) as input. In some embodiments, the one or more input devices are integrated with the computer system. In some embodiments, the one or more input devices are separate from the computer system.In some embodiments, an air gesture is a gesture that is detected without the user touching an input element that is part of the device (or independent of an input element that is part of the device) and is based on detected movement of a part of the user's body, including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground or the distance of the user's hand relative to the ground), movement of the user's body relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of the user's other hand relative to one of the user's hands, and / or movement of the user's fingers relative to another finger or part of the user's hand), and / or absolute movement of a part of the user's body (e.g., a tap gesture that includes movement of the hand in a predetermined pose by a predetermined amount and / or speed, or a shake gesture that includes rotation of a part of the user's body at a predetermined speed or amount).

[0060] A quick press of a push button optionally unlocks the touchscreen 112 or optionally initiates the process of unlocking the device using gestures on the touchscreen, as described in U.S. Patent Application Serial No. 11 / 322,549, filed December 23, 2005, "Unlocking a Device by Performing Gestures on an Unlock Image," U.S. Patent No. 7,657,849, which is incorporated herein by reference in its entirety. A longer press of a push button (e.g., 206) optionally turns power on or off to the device 100. The functionality of one or more of the buttons is optionally customizable by the user. The touchscreen 112 is used to implement virtual or soft buttons and one or more soft keyboards.

[0061] Touch-sensitive display 112 provides an input and output interface between the device and a user. Display controller 156 receives and / or sends electrical signals to touchscreen 112. Touchscreen 112 displays visual output to the user. This visual output optionally includes graphics, text, icons, animation, and any combination thereof (collectively "graphics"). In some embodiments, some or all of the visual output optionally corresponds to user interface objects.

[0062] Touchscreen 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on haptic and / or tactile contact. Touchscreen 112 and display controller 156 (along with any associated modules and / or instruction sets in memory 102) detects contacts (and any movement or cessation of contact) on touchscreen 112 and translates the detected contacts into interactions with user interface objects (e.g., one or more softkeys, icons, web pages, or images) displayed on touchscreen 112. In an exemplary embodiment, the point of contact between touchscreen 112 and the user corresponds to the user's finger.

[0063] Touchscreen 112 optionally uses LCD (liquid crystal display), LPD (light emitting polymer display), or LED (light emitting diode) technology, although other display technologies are used in other embodiments. Touchscreen 112 and display controller 156 optionally use any of a number of now known or later developed touch sensing technologies to detect contact and any movement or disruption thereof, including, but not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements that determine one or more points of contact with touchscreen 112. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as that found in the iPhone® and iPod Touch® from Apple Inc. of Cupertino, California.

[0064] The touch-sensitive display in some embodiments of touchscreen 112 is optionally similar to the multi-touch-sensing touchpad described in U.S. Patent Nos. 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman), and / or U.S. Patent Application Publication No. 2002 / 0015024 A1, each of which is incorporated by reference herein in its entirety. However, touchscreen 112 displays visual output from device 100, whereas touch-sensitive touchpads do not provide visual output.

[0065] The touch-sensitive display in some embodiments of touch screen 112 is described in the following applications: (1) U.S. patent application Ser. No. 11 / 381,313, filed May 2, 2006, entitled "Multipoint Touch Surface Controller," (2) U.S. patent application Ser. No. 10 / 840,862, filed May 6, 2004, entitled "Multipoint Touchscreen," (3) U.S. patent application Ser. No. 10 / 903,964, filed July 30, 2004, entitled "Gestures For Touch Sensitive Input Devices," (4) U.S. patent application Ser. No. 11 / 048,264, filed January 31, 2005, entitled "Gestures For Touch Sensitive Input Devices," and (5) U.S. patent application Ser. No. 11 / 038,590, filed January 18, 2005, entitled "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices." No. 11 / 228,758, filed September 16, 2005, entitled "Virtual Input Device Placement On A Touch Screen User Interface," (7) U.S. Patent Application No. 11 / 228,700, filed September 16, 2005, entitled "Operation Of A Computer With A Touch Screen Interface," (8) U.S. Patent Application No. 11 / 228,737, filed September 16, 2005, entitled "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard," and (9) U.S. Patent Application No. 11 / 367,749, filed March 3, 2006, entitled "Multi-Functional Hand-Held Device," all of which are incorporated herein by reference in their entireties.

[0066] Touchscreen 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touchscreen has a video resolution of approximately 160 dpi. A user optionally contacts touchscreen 112 using any suitable object or accessory, such as a stylus, a finger, or the like. In some embodiments, the user interface is designed to operate primarily using finger-based contact and gestures, which may not be as precise as stylus-based input due to the larger contact area of ​​a finger on the touchscreen. In some embodiments, the device translates the coarse finger input into precise pointer / cursor positions or commands to perform the action desired by the user.

[0067] In some embodiments, in addition to the touchscreen, device 100 optionally includes a touchpad for activating or deactivating certain functions. In some embodiments, the touchpad is a touch-sensitive area of ​​the device that, unlike the touchscreen, does not display visual output. The touchpad is optionally a touch-sensitive surface separate from touchscreen 112 or an extension of the touch-sensitive surface formed by the touchscreen.

[0068] Device 100 also includes a power system 162 that provides power to the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharging system, power failure detection circuitry, power converters or inverters, power status indicators (e.g., light emitting diodes (LEDs)), and any other components associated with generating, managing, and distributing electrical power within a portable device.

[0069] Device 100 also optionally includes one or more optical sensors 164. FIG. 1A shows an optical sensor coupled to optical sensor controller 158 in I / O subsystem 106. Optical sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Optical sensor 164 receives light from the environment projected through one or more lenses and converts the light into data representing an image. Optical sensor 164 optionally works in conjunction with imaging module 143 (also called a camera module) to capture still images or video. In some embodiments, the optical sensor is located on the back side of device 100 opposite touchscreen display 112 on the front of the device, so that the touchscreen display can be used as a viewfinder for capturing still images and / or video. In some embodiments, the optical sensor is located on the front of the device so that an image of the user is optionally acquired for a videoconference while the user views other videoconference participants on the touchscreen display. In some embodiments, the position of the optical sensor 164 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that a single optical sensor 164 is used for both video conferencing and capturing still images and / or video, along with a touchscreen display.

[0070] Device 100 also optionally includes one or more depth camera sensors 175. FIG. 1A shows a depth camera sensor coupled to depth camera controller 169 in I / O subsystem 106. Depth camera sensor 175 receives data from the environment and creates a three-dimensional model of an object (e.g., a face) in a scene from a viewpoint (e.g., the depth camera sensor). In some embodiments, in conjunction with imaging module 143 (also referred to as a camera module), depth camera sensor 175 is optionally used to determine a depth map of different portions of an image captured by imaging module 143. In some embodiments, a depth camera sensor is located on the front of device 100 to obtain images of the user with depth information for videoconferences and to capture selfie images with depth map data while the user views other videoconference participants on a touchscreen display. In some embodiments, depth camera sensor 175 is located on the back of the device, or on both the back and front of device 100. In some embodiments, the position of the depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that the depth camera sensor 175 is used for both video conferencing and capturing still images and / or video, along with a touchscreen display.

[0071] Device 100 also optionally includes one or more contact intensity sensors 165. FIG. 1A shows a contact intensity sensor coupled to intensity sensor controller 159 in I / O subsystem 106. Contact intensity sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electric force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensor 165 receives contact intensity information (e.g., pressure information, or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is juxtaposed with or proximate to the touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact intensity sensor is located on the back of device 100, opposite touchscreen display 112, which is located on the front of device 100.

[0072] Device 100 also optionally includes one or more proximity sensors 166. Figure 1A shows proximity sensor 166 coupled to peripherals interface 118. Alternatively, proximity sensor 166 is optionally coupled to input controller 160 within I / O subsystem 106. Proximity sensor 166 optionally functions as described in U.S. patent application Ser. Nos. 11 / 241,839, "Proximity Detector In Handheld Device," 11 / 240,788, "Proximity Detector In Handheld Device," 11 / 620,702, "Using Ambient Light Sensor To Augment Proximity Sensor Output," 11 / 586,862, "Automated Response To And Sensing Of User Activity In Portable Devices," and 11 / 638,251, "Methods And Systems For Automatic Configuration Of Peripherals," which are incorporated herein by reference in their entireties. In some embodiments, the proximity sensor turns off and disables touchscreen 112 when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call).

[0073] Device 100 also optionally includes one or more haptic output generators 167. FIG. 1A shows haptic output generators coupled to haptic feedback controller 161 in I / O subsystem 106. Haptic output generator 167 optionally includes one or more electroacoustic devices, such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion, such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other haptic output generating components (e.g., components that convert electrical signals into haptic output on the device). Contact intensity sensor 165 receives tactile feedback generation instructions from haptic feedback module 133 and generates a haptic output on device 100 that can be sensed by a user of device 100. In some embodiments, at least one haptic output generator is juxtaposed with or proximate to a touch-sensitive surface (e.g., touch-sensitive display system 112) and generates haptic output, optionally by moving the touch-sensitive surface vertically (e.g., in / out of the surface of device 100) or horizontally (e.g., back and forth in the same plane as the surface of device 100). In some embodiments, at least one haptic output generator sensor is located on the back of device 100, opposite touchscreen display 112, which is located on the front of device 100.

[0074] Device 100 also optionally includes one or more accelerometers 168. FIG. 1A shows accelerometer 168 coupled to peripherals interface 118. Alternatively, accelerometer 168 is optionally coupled to input controller 160 in I / O subsystem 106. Accelerometer 168 optionally functions as described in U.S. Patent Application Publication No. 20050190059, "Acceleration-based Theft Detection System for Portable Electronic Devices," and U.S. Patent Application Publication No. 20060017692, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer," both of which are incorporated herein by reference in their entireties. In some embodiments, information is displayed on the touchscreen display in portrait or landscape orientation based on an analysis of data received from the one or more accelerometers. In addition to accelerometer(s) 168, device 100 optionally includes a magnetometer and a GPS (or GLONASS or other global navigation system) receiver for obtaining information about the position and orientation (e.g., vertical or horizontal) of device 100.

[0075] In some embodiments, software components stored in memory 102 include operating system 126, communications module (or instruction set) 128, touch / motion module (or instruction set) 130, graphics module (or instruction set) 132, text input module (or instruction set) 134, Global Positioning System (GPS) module (or instruction set) 135, and applications (or instruction sets) 136. Additionally, in some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) stores device / global internal state 157, as shown in FIGS. 1A and 3. Device / global internal state 157 includes one or more of: active application state indicating which applications, if any, are currently active; display state indicating which applications, views, or other information occupy various regions of touchscreen display 112; sensor state including information obtained from the device's various sensors and input control devices 116; and location information regarding the device's position and / or orientation.

[0076] Operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and / or drivers that control and manage general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitate communication between various hardware and software components.

[0077] Communications module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by RF circuitry 108 and / or external port 124. External port 124 (e.g., Universal Serial Bus (USB), FIREWIRE®, etc.) is adapted to couple to other devices directly or indirectly via a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, similar to, and / or compatible with the 30-pin connector used on iPod® (trademark of Apple Inc.) devices.

[0078] Contact / motion module 130, optionally in conjunction with display controller 156, detects contact with touchscreen 112 and other touch-sensing devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes various software components for performing various operations related to detecting contact, such as determining whether contact occurs (e.g., detecting a finger-down event), determining the intensity of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there is movement of the contact and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-drag events), and determining whether the contact has stopped (e.g., detecting a finger-up event or an interruption of the contact). Contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point, as represented by the series of contact data, optionally includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point. These actions are optionally applied to a single contact (e.g., a single finger contact) or multiple simultaneous contacts (e.g., "multi-touch" / multiple finger contacts). In some embodiments, contact / motion module 130 and display controller 156 detect contacts on the touchpad.

[0079] In some embodiments, contact / motion module 130 uses one or more sets of intensity thresholds to determine whether an action has been performed by a user (e.g., to determine whether a user has “clicked” on an icon). In some embodiments, at least a subset of the intensity thresholds are determined according to software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a particular physical actuator, but can be adjusted without modifying the physical hardware of device 100). For example, the mouse “click” threshold of a trackpad or touchscreen display can be set to any of a wide range of pre-defined thresholds without modifying the trackpad or touchscreen display hardware. Additionally, in some implementations, a user of the device is provided with a software setting to adjust one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by adjusting multiple intensity thresholds at once via a system-level click “intensity” parameter).

[0080] Contact / motion module 130 optionally detects gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different movements, timing, and / or intensities of detected contacts). Thus, gestures are optionally detected by detecting particular contact patterns. For example, detecting a finger tap gesture includes detecting a finger down event, followed by detecting a finger up (lift off) event at the same location (or substantially the same location) as the finger down event (e.g., the location of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger down event, followed by one or more finger drag events, followed by detecting a finger up (lift off) event.

[0081] Graphics module 132 includes various known software components that render and display graphics on touchscreen 112 or other display, including components that vary the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual characteristics) of the displayed graphics. As used herein, the term "graphic" includes any object that can be displayed to a user, including, but not limited to, text, web pages, icons (such as user interface objects including soft keys), digital images, video, animation, etc.

[0082] In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. Graphics module 132 receives one or more codes specifying the graphics to be displayed, including coordinate data and other graphic characteristic data, as needed, from an application or the like, and then generates screen image data to output to display controller 156.

[0083] The haptic feedback module 133 includes various software components for generating instructions used by the haptic output generator(s) 167 to generate haptic outputs at one or more locations on the device 100 in response to a user's interaction with the device 100.

[0084] Text input module 134 is optionally a component of graphics module 132 and provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application requiring text input).

[0085] The GPS module 135 determines the location of the device and provides this information for use within various applications (e.g., to the phone 138 for use in location-based dialing, to the camera 143 as picture / video metadata, and to applications that provide location-based services such as a weather widget, a local yellow pages widget, and a maps / navigation widget).

[0086] Application 136 optionally includes the following modules (or sets of instructions), or a subset or superset thereof: • a contacts module 137 (sometimes called an address book or contact list); ●Telephone module 138, ●Videoconferencing module 139, ● an email client module 140; ● Instant messaging (IM) module 141, ●Training support module 142, camera module 143 for still images and / or video; ● Image management module 144; ●Video player module, ●Music player module, ● Browser module 147, ●Calendar module 148, • A widget module 149 optionally including one or more of a weather widget 149-1, a stock price widget 149-2, a calculator widget 149-3, an alarm clock widget 149-4, a dictionary widget 149-5, and other widgets obtained by the user, and a user-created widget 149-6; a widget creator module 150 for creating user-created widgets 149-6; ● Search module 151, A video and music player module 152 that integrates a video player module and a music player module; ● Memo module 153, Map module 154, and / or ●Online video module 155.

[0087] Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-enabled applications, encryption, digital rights management, voice recognition, and voice duplication.

[0088] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contacts module 137 optionally includes functions such as adding name(s) to an address book, deleting name(s) from an address book, associating phone number(s), email address(es), street address(es), or other information with names, associating images with names, categorizing and sorting names, providing phone numbers or email addresses to initiate and / or facilitate communication by phone 138, videoconferencing module 139, email 140, or IM 141, etc., used to manage the address book or contact list (e.g., stored in application internal state 192 of contacts module 137 in memory 102 or memory 370).

[0089] Telephone module 138, in conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, is optionally used to enter a series of characters corresponding to a telephone number, access one or more telephone numbers in contacts module 137, modify an entered telephone number, dial a particular telephone number, place a call, and disconnect and hang up when the call is complete. As previously mentioned, wireless communication optionally uses any of a number of communication standards, protocols, and technologies.

[0090] Videoconferencing module 139 includes executable instructions to cooperate with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, optical sensor 164, optical sensor controller 158, touch / motion module 130, graphics module 132, text input module 134, contacts module 137, and telephone module 138 to initiate, conduct, and end a videoconference between a user and one or more other participants according to the user's commands.

[0091] Email client module 140, in conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contains executable instructions for composing, sending, receiving, and managing emails in response to user commands. In conjunction with image management module 144, email client module 140 greatly facilitates the creation and sending of emails with still or video images captured by camera module 143.

[0092] Instant messaging module 141, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, includes executable instructions for entering a series of characters corresponding to an instant message, modifying previously entered characters, sending a particular instant message (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephony-based instant messaging, or XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, sent and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments, such as those supported by MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).

[0093] The training support module 142 includes executable instructions to cooperate with the RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and music player module to create workouts (e.g., with time, distance, and / or calorie burn goals), communicate with training sensors (sports devices), receive training sensor data, calibrate sensors used to monitor workouts, select and play music for workouts, and display, store, and transmit workout data.

[0094] Camera module 143, in conjunction with touchscreen 112, display controller 156, optical sensor(s) 164, optical sensor controller 158, contact / motion module 130, graphics module 132, and image management module 144, contains executable instructions for capturing and storing still images or video (including video streams) in memory 102, modifying the characteristics of the still images or video, or deleting the still images or video from memory 102.

[0095] Image management module 144 includes executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slideshow or album), and storing still and / or video images in conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, and camera module 143.

[0096] Browser module 147, in conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contains executable instructions for browsing the Internet according to user commands, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.

[0097] The calendar module 148 includes executable instructions to cooperate with the RF circuitry 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, the email client module 140, and the browser module 147 to create, display, modify, and store calendars and data associated with the calendars (e.g., calendar items, to-do lists, etc.) according to user instructions.

[0098] Widget module 149, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and browser module 147, optionally provides mini-applications (e.g., weather widget 149-1, stock price widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5) downloaded and used by a user, or mini-applications created by a user (e.g., user-created widget 149-6). In some embodiments, a widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, a widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! Widgets).

[0099] The widget creator module 150, in conjunction with the RF circuitry 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, and the browser module 147, is optionally used by a user to create a widget (e.g., turn a user-specified portion of a web page into a widget).

[0100] The search module 151 includes executable instructions for working in conjunction with the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134 to search for text, music, sound, images, video, and / or other files in the memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with a user's commands.

[0101] Video and music player module 152 includes executable instructions that, in conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, enable a user to download and play pre-recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions for displaying, presenting, or otherwise playing videos (e.g., on touchscreen 112 or on an external display connected via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (a trademark of Apple Inc.).

[0102] The notes module 153 includes executable instructions for working with the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134 to create and manage notes, to-do lists, and the like according to user commands.

[0103] Map module 154, in conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, is used to receive, display, modify, and store maps and data associated with maps (e.g., driving directions, data regarding businesses and other points of interest at or near a particular location, and other location-based data), optionally in accordance with user instructions.

[0104] Online video module 155, in conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, email client module 140, and browser module 147, contains instructions that enable a user to access, browse for, receive (e.g., by streaming and / or downloading), and play (e.g., on the touchscreen or on an external display connected via external port 124) particular online videos, send emails with links to particular online videos, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, instant messaging module 141 is used to send links to particular online videos, rather than email client module 140. For additional description of online video applications, see U.S. Provisional Patent Application No. 60 / 936,562, filed June 20, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," and U.S. Patent Application No. 11 / 968,067, filed December 31, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," the contents of which are incorporated herein by reference in their entireties.

[0105] The above-identified modules and applications each correspond to a set of executable instructions that perform one or more of the functions and methods described herein (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., sets of instructions) need not be implemented as respective software programs (e.g., computer programs (e.g., including instructions)), procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise rearranged. For example, a video player module is optionally combined with a music player module into a single module (e.g., video and music player module 152 of FIG. 1A). In some embodiments, memory 102 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 102 optionally stores additional modules and data structures not described above.

[0106] In some embodiments, device 100 is a device in which operation of a predetermined set of functions on the device is performed solely via a touchscreen and / or touchpad. Using the touchscreen and / or touchpad as the primary input control device for operation of device 100 optionally reduces the number of physical input control devices (push buttons, dials, etc.) on device 100.

[0107] The set of predefined functions performed only through the touchscreen and / or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 to a main menu, home menu, or root menu from any user interface displayed on device 100. In such embodiments, a "menu button" is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device rather than a touchpad.

[0108] 1B is a block diagram illustrating exemplary components for event processing, according to some embodiments. In some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) includes an event sorter 170 (e.g., within operating system 126) and a particular application 136-1 (e.g., any of applications 137-151, 155, 380-390 described above).

[0109] Event sorter 170 receives the event information and determines which application 136-1 to deliver the event information to and application view 191 for application 136-1. Event sorter 170 includes event monitor 171 and event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192 that indicates the current application view(s) that are displayed on touch-sensitive display 112 when the application is active or running. In some embodiments, device / global internal state 157 is used by event sorter 170 to determine which application(s) are currently active, and application internal state 192 is used by event sorter 170 to determine which application(s) are currently active, and application internal state 192 is used by event sorter 170 to determine which application view(s) to deliver the event information to.

[0110] In some embodiments, application internal state 192 includes additional information such as one or more of resume information to be used when application 136-1 resumes execution, user interface state information indicating or ready to display information being displayed by application 136-1, state cues that allow the user to return to a previous state or view of application 136-1, and redo / undo cues of previous actions taken by the user.

[0111] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about sub-events (e.g., a user touch as part of a multi-touch gesture on touch-sensitive display 112). Peripherals interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, accelerometer(s) 168, and / or microphone 113 (via audio circuitry 110). Information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.

[0112] In some embodiments, event monitor 171 sends requests to peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits event information. In other embodiments, peripherals interface 118 transmits event information only when there is a significant event (e.g., receipt of an input above a predetermined noise threshold and / or for more than a predetermined duration).

[0113] In some embodiments, the event sorter 170 also includes a hit view determination module 172 and / or an active event recognizer determination module 173 .

[0114] Hit view determination module 172 provides software procedures that determine where a sub-event occurred within one or more views when touch-sensitive display 112 displays more than one view. A view consists of the controls and other elements that a user can see on the display.

[0115] Another aspect of a user interface associated with an application is the set of views, sometimes referred to herein as application views or user interface windows, within which information is displayed and touch-based gestures occur. The application view (of a particular application) at which a touch is detected optionally corresponds to a programmatic level within the application's programmatic or view hierarchy. For example, the lowest-level view at which a touch is detected is optionally referred to as the hit view, and the set of events that are recognized as suitable inputs is optionally determined based at least in part on the hit view of the initial touch that initiates the touch gesture.

[0116] Hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has multiple views organized hierarchically, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should process the sub-events. In most situations, the hit view is the lowest-level view in which an initiating sub-event occurs (e.g., the first sub-event in a series of sub-events that form an event or potential event). Once a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source as the touch or input source identified as the hit view.

[0117] Active event recognizer determination module 173 determines which view(s) in the view hierarchy should receive a particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that contain the physical location of the sub-event are actively participating views, and therefore determines that all actively participating views should receive a particular sequence of sub-events. In other embodiments, even if a touch sub-event is completely confined to the area associated with one particular view, views higher in the hierarchy still remain actively participating views.

[0118] Event dispatcher module 174 dispatches event information to event recognizers (e.g., event recognizer 180). In embodiments that include active event recognizer determination module 173, event dispatcher module 174 delivers event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores event information obtained by particular event receivers 182 in an event queue.

[0119] In some embodiments, operating system 126 includes event sorter 170. Alternatively, application 136-1 includes event sorter 170. In still other embodiments, event sorter 170 is a stand-alone module or is part of another module stored in memory 102, such as contact / motion module 130.

[0120] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each containing instructions for processing touch events that occur within a particular view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, a particular application view 191 includes multiple event recognizers 180. In other embodiments, one or more of the event recognizers 180 are part of a separate module, such as a user interface kit or a higher-level object from which application 136-1 inherits methods and other properties. In some embodiments, a particular event handler 190 includes one or more of a data updater 176, an object updater 177, a GUI updater 178, and / or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or invokes data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. Alternatively, one or more of the application views 191 include one or more particular event handlers 190. Also, in some embodiments, one or more of the data updater 176, the object updater 177, and the GUI updater 178 are included in a particular application view 191.

[0121] The particular event recognizer 180 receives event information (e.g., event data 179) from the event sorter 170 and identifies an event from the event information. The event recognizer 180 includes an event receiver 182 and an event comparator 184. In some embodiments, the event recognizer 180 also includes at least a subset of metadata 183 and event delivery instructions 188 (optionally including sub-event delivery instructions).

[0122] The event receiver 182 receives event information from the event sorter 170. The event information includes information about a sub-event, e.g., a touch or a movement of a touch. Depending on the sub-event, the event information also includes additional information, such as the position of the sub-event. When the sub-event involves a movement of a touch, the event information also optionally includes the speed and direction of the sub-event. In some embodiments, the event includes a rotation of the device from one orientation to another (e.g., from portrait to landscape or vice versa), and the event information includes corresponding information about the current orientation of the device (also called the device's attitude).

[0123] The event comparator 184 compares the event information with predefined event or sub-event definitions and determines the event or sub-event, or determines or updates the state of the event or sub-event, based on the comparison. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 includes definitions of events (e.g., a predefined set of sub-events), such as Event 1 (187-1) and Event 2 (187-2). In some embodiments, sub-events within an event (187) include, for example, touch start, touch end, touch movement, touch cancellation, and multiple touches. In one example, the definition for Event 1 (187-1) is a double tap on a displayed object. The double tap includes, for example, a first touch on a displayed object relative to a predetermined stage (touch start), a first lift-off (touch end) relative to the predetermined stage, a second touch on a displayed object relative to the predetermined stage (touch start), and a second lift-off (touch end) relative to the predetermined stage. In another example, a definition of event 2 (187-2) is a drag on a displayed object. Drag includes, for example, a touch (or contact) on the displayed object to a predetermined stage, a movement of the touch across the touch-sensitive display 112, and a lift-off of the touch (touch end). In some embodiments, the event also includes information about one or more associated event handlers 190.

[0124] In some embodiments, event definition 187 includes a definition of the event for a particular user interface object. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, if a touch is detected on touch-sensitive display 112 in an application view in which three user interface objects are displayed on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a particular event handler 190, event comparator 184 uses the results of the hit test to determine which event handler 190 to activate. For example, event comparator 184 selects the event handler associated with the sub-event and object that triggers the hit test.

[0125] In some embodiments, the definition of a particular event 187 also includes a delay action that delays transmission of the event information until it is determined whether a set of sub-events corresponds to the event recognizer's event type.

[0126] If the particular event recognizer 180 determines that the sequence of sub-events does not match any of the events in the event definition 186, the particular event recognizer 180 enters an event-disabled, event-failed, or event-ended state, after which it ignores the next sub-event of the touch-based gesture. In this situation, any other event recognizers that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.

[0127] In some embodiments, a particular event recognizer 180 includes metadata 183 with configurable properties, flags, and / or lists that indicate to actively participating event recognizers how the event delivery system should perform sub-event delivery. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact with each other or how event recognizers are enabled to interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how sub-events are delivered to various levels in the view or programmatic hierarchy.

[0128] In some embodiments, a particular event recognizer 180 activates an event handler 190 associated with an event when one or more particular sub-events of the event are recognized. In some embodiments, the particular event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is separate from sending (and postponing sending) sub-events to a particular hit view. In some embodiments, the event recognizer 180 pops a flag associated with the recognized event, and the event handler 190 associated with the flag catches the flag and performs a predetermined process.

[0129] In some embodiments, the event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with a set of sub-events or to an actively participating view. The event handler associated with the set of sub-events or the actively participating view receives the event information and performs a predetermined process.

[0130] In some embodiments, data updater 176 creates and updates data used by application 136-1. For example, data updater 176 updates phone numbers used by contacts module 137 or stores video files used by a video player module. In some embodiments, object updater 177 creates and updates objects used by application 136-1. For example, object updater 177 creates new user interface objects or updates the positions of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on the touch-sensitive display.

[0131] In some embodiments, event handler(s) 190 include or have access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are contained in a single module of a particular application 136-1 or application view 191. In other embodiments, they are contained in two or more software modules.

[0132] It should be understood that the foregoing description of event processing of a user's touch on a touch-sensitive display also applies to other forms of user input for operating multifunction device 100 using input devices, although not all of them are initiated on a touchscreen. For example, mouse movements and mouse button presses, contact movements such as tapping, dragging, scrolling on a touchpad, optionally coordinated with single or multiple keyboard presses or holds, pen stylus input, device movement, verbal commands, detected eye movements, biometric input, and / or any combination thereof, optionally utilize as inputs corresponding to sub-events that define the recognized event.

[0133] FIG. 2 illustrates portable multifunction device 100 having touchscreen 112, according to some embodiments. The touchscreen optionally displays one or more graphics within user interface (UI) 200. In this embodiment, as well as other embodiments described below, a user may select one or more of the graphics by performing a gesture on the graphics, for example, using one or more fingers 202 (not drawn to scale) or one or more styluses 203 (not drawn to scale). In some embodiments, selection of one or more graphics is performed when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (left to right, right to left, upward and / or downward), and / or rolling (right to left, left to right, upward and / or downward) of a finger in contact with device 100. In some implementations or situations, accidental contact with a graphic does not select the graphic, for example, if the gesture corresponding to selection is a tap, a swipe gesture sweeping over an application icon optionally does not select the corresponding application.

[0134] Device 100 also optionally includes one or more physical buttons, such as a "home" button or menu button 204. As previously mentioned, menu button 204 is optionally used to navigate to any application 136 within a set of applications running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key within a GUI displayed on touchscreen 112.

[0135] In some embodiments, device 100 includes touchscreen 112, menu button 204, pushbutton 206 for powering the device on / off and locking the device, volume control button(s) 208, subscriber identity module (SIM) card slot 210, headset jack 212, and external docking / charging port 124. Pushbutton 206 is optionally used to power the device on / off by pressing and holding the button down for a predetermined period of time, to lock the device by pressing and releasing the button before the predetermined time has elapsed, and / or to unlock the device or initiate the unlocking process. In alternative embodiments, device 100 also accepts verbal input via microphone 113 for activating or deactivating certain functions. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of a contact on touchscreen 112 and / or one or more haptic output generators 167 for generating a haptic output to a user of device 100.

[0136] FIG. 3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, according to some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a child's learning toy), a gaming system, or a control device (e.g., a home or commercial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes called a chipset) that interconnects and controls communication between system components. Device 300 includes input / output (I / O) interface 330, including display 340, which is typically a touchscreen display. I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355, a haptic output generator 357 for generating haptic output on device 300 (e.g., similar to haptic output generator(s) 167 described above with reference to FIG. 1A ), and sensors 359 (e.g., light, acceleration, proximity, touch-sensing, and / or contact intensity sensors similar to contact intensity sensor(s) 165 described above with reference to FIG. 1A ). Memory 370 includes high-speed random-access memory such as DRAM, SRAM, DDR RAM, or other random-access solid-state memory devices, and optionally includes non-volatile memory such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 370 optionally includes one or more storage devices located remotely from CPU(s) 310.In some embodiments, memory 370 stores programs, modules, and data structures similar to, or a subset of, programs, modules, and data structures stored in memory 102 of portable multifunction device 100 (FIG. 1A). Additionally, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores drawing module 380, presentation module 382, ​​word processing module 384, website creation module 386, disc authoring module 388, and / or spreadsheet module 390, whereas memory 102 of portable multifunction device 100 (FIG. 1A) optionally does not store these modules.

[0137] Each of the above-identified elements of FIG. 3 is optionally stored in one or more of the memory devices mentioned above. Each of the above-identified modules corresponds to an instruction set that performs the functions described above. The above-identified modules or computer programs (e.g., including an instruction set or instructions) need not be implemented as separate software programs (e.g., computer programs (e.g., including instructions)), procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. In some embodiments, memory 370 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 370 optionally stores additional modules and data structures not described above.

[0138] Attention is now optionally directed to user interface embodiments, for example, as implemented on portable multifunction device 100.

[0139] 4A shows an exemplary user interface for a menu of applications on portable multifunction device 100, according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof: signal strength indicator(s) 402 for wireless communication(s), such as cellular and Wi-Fi signals; ●Time 404, ●Bluetooth indicator 405, ● Battery status indicator 406, Tray 408 with icons of frequently used applications, such as: An icon 416 for the phone module 138, labeled "Phone," optionally including an indicator 414 of the number of missed calls or voicemail messages; icon 418 of the email client module 140, labeled "Mail," optionally including an indicator 410 of the number of unread emails; ○ An icon 420 for the browser module 147, labeled "Browser"; and ○ An icon 422 for the video and music player module 152, also called the iPod (trademark of Apple Inc.) module 152, labeled "iPod"; and ● Icons of other applications, such as: ○ Icon 424 of IM module 141, labeled "Messages"; ○ Icon 426 of the calendar module 148, labeled "Calendar" ○ Icon 428 of the image management module 144, labeled "Photos" ○ An icon 430 of the camera module 143, labeled "camera"; ○ Icon 432 of the online video module 155, labeled "Online Video"; Icon 434 of Stock Price Widget 149-2, labeled "Stock Price" ○ Icon 436 of the map module 154, labeled "Map" Icon 438 of weather widget 149-1, labeled "Weather" ○ Icon 440 of alarm clock widget 149-4, labeled "Clock" ○ Icon 442 of Training Support Module 142, labeled "Training Support"; ○ An icon 444 of the Notes module 153 labeled "Notes," and A settings application or module icon 446 labeled "Settings" that provides access to settings for the device 100 and its various applications 136.

[0140] Note that the icon labels shown in FIG. 4A are merely exemplary. For example, icon 422 of video and music player module 152 is labeled "Music" or "Music Player." Other labels are optionally used for various application icons. In some embodiments, the label for a particular application icon includes the name of the application that corresponds to the particular application icon. In some embodiments, the label for a particular application icon is different from the name of the application that corresponds to the particular application icon.

[0141] 4B shows an example user interface on a device (e.g., device 300 of FIG. 3 ) that has touch-sensitive surface 451 (e.g., tablet or touchpad 355 of FIG. 3 ) that is separate from display 450 (e.g., touchscreen display 112). Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) that detect the intensity of a contact on touch-sensitive surface 451, and / or one or more haptic output generators 357 that generate a haptic output for a user of device 300.

[0142] Although some of the following examples are given with reference to input on touchscreen display 112 (which combines a touch-sensitive surface and a display), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display, as shown in FIG. 4B . In some embodiments, the touch-sensitive surface (e.g., 451 in FIG. 4B ) has a primary axis (e.g., 452 in FIG. 4B ) that corresponds to a primary axis (e.g., 453 in FIG. 4B ) on the display (e.g., 450). According to these embodiments, the device detects contact with touch-sensitive surface 451 (e.g., 460 and 462 in FIG. 4B ) at locations that correspond to respective locations on the display (e.g., in FIG. 4B , 460 corresponds to 468 and 462 corresponds to 470). In this way, user input (e.g., contacts 460 and 462 and their movement) detected by the device on the touch-sensitive surface (e.g., 451 in FIG. 4B ) is used by the device to operate a user interface on the display (e.g., 450 in FIG. 4B ) of the multifunction device when the touch-sensitive surface is separate from the display. It should be understood that similar methods are optionally used for the other user interfaces described herein.

[0143] Additionally, while the following examples are given primarily with reference to finger input (e.g., finger contact, finger tap gesture, finger swipe gesture), it should be understood that in some embodiments, one or more of the finger inputs are replaced with input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of a contact) followed by movement of a cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is optionally replaced by a mouse click (e.g., instead of detecting a contact and then ceasing contact detection) while the cursor is located over the location of the tap gesture. Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice are optionally used simultaneously, or a mouse and finger contacts are optionally used simultaneously.

[0144] FIG. 5A shows an exemplary personal electronic device 500. Device 500 includes a main body 502. In some embodiments, device 500 can include some or all of the features described with respect to devices 100 and 300 (e.g., FIGS. 1A-4B ). In some embodiments, device 500 has a touch-sensitive display screen 504, hereafter touchscreen 504. Alternatively, or in addition to touchscreen 504, device 500 has a display and a touch-sensitive surface. Similar to devices 100 and 300, in some embodiments, touchscreen 504 (or the touch-sensitive surface) optionally includes one or more intensity sensors that detect the intensity of contact (e.g., touches) being applied. The one or more intensity sensors of touchscreen 504 (or the touch-sensitive surface) can provide output data representing the intensity of the touch. The user interface of device 500 can respond to touches based on their intensity, meaning that touches of different intensities can invoke different user interface actions on device 500.

[0145] For exemplary techniques for detecting and processing touch intensity, see, for example, related applications International Patent Application No. PCT / US2013 / 040061, filed May 8, 2013, entitled "Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application," published as International Publication No. WO / 2013 / 169849, and International Patent Application No. PCT / US2013 / 069483, filed November 11, 2013, entitled "Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships," published as International Publication No. WO / 2014 / 105276, each of which is incorporated herein by reference in its entirety.

[0146] In some embodiments, device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508, if included, may be physical. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, device 500 has one or more attachment mechanisms. Such attachment mechanisms, if included, may allow device 500 to be attached to, for example, hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch bands, chains, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow device 500 to be worn by a user.

[0147] FIG. 5B illustrates an exemplary personal electronic device 500. In some embodiments, device 500 can include some or all of the components described with respect to FIGS. 1A, 1B, and 3. Device 500 has a bus 512 operably coupling an I / O section 514 to one or more computer processors 516 and memory 518. I / O section 514 can be connected to a display 504, which can have touch-sensing components 522 and optionally an intensity sensor 524 (e.g., a contact intensity sensor). Additionally, I / O section 514 can be connected to a communication unit 530 that receives application and operating system data using Wi-Fi, Bluetooth, near field communication (NFC), cellular, and / or other wireless communication technologies. Device 500 can include input mechanisms 506 and / or 508. Input mechanism 506 is optionally, for example, a rotatable input device or a depressible and rotatable input device. In some embodiments, input mechanism 508 is optionally a button.

[0148] In some embodiments, input mechanism 508 is optionally a microphone. Personal electronic device 500 optionally includes various sensors, such as a GPS sensor 532, an accelerometer 534, an orientation sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which may be operably connected to I / O section 514.

[0149] The memory 518 of the personal electronic device 500 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by one or more computer processors 516, can cause the computer processors to perform the techniques described below, including process 1500 and process 1600 (FIGS. 15-16), for example. A computer-readable storage medium may be any medium that can tangibly contain or store computer-executable instructions used by or in connection with an instruction execution system, apparatus, or device. In some embodiments, the storage medium is a transient computer-readable storage medium. In some embodiments, the storage medium is a non-transitory computer-readable storage medium. Non-transitory computer-readable storage media may include, but are not limited to, magnetic storage devices, optical storage devices, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, CDs, DVDs, or optical disks based on Blu-ray® technology, as well as persistent solid-state memory such as flash and solid-state drives. Personal electronic device 500 is not limited to the components and configuration of FIG. 5B and may include other or additional components in multiple configurations.

[0150] As used herein, the term "affordance" refers to a user-interactive graphical user interface object, optionally displayed on a display screen of device 100, 300, and / or 500 (FIGS. 1A, 3, and 5A-5B). For example, images (e.g., icons), buttons, and text (e.g., hyperlinks) each, optionally, constitute an affordance.

[0151] As used herein, the term “focus selector” refers to an input element that indicates the current portion of the user interface with which the user is interacting. In some implementations involving a cursor or other position marker, the cursor acts as the “focus selector,” such that when input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 of FIG. 3 or touch-sensitive surface 451 of FIG. 4B) while the cursor is positioned over a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations involving a touchscreen display (e.g., touch-sensitive display system 112 of FIG. 1A or touchscreen 112 of FIG. 4A) that allows direct interaction with user interface elements on the touchscreen display, a detected contact on the touchscreen acts as the “focus selector,” such that when input (e.g., a press input by contact) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touchscreen display, the particular user interface element is adjusted according to the detected input. In some implementations, focus is moved from one region of the user interface to another region of the user interface without a corresponding cursor movement or contact movement on the touchscreen display (e.g., by using the tab key or arrow keys to move focus from one button to another), and in these implementations, the focus selector moves to follow the movement of focus between various regions of the user interface. Regardless of the specific form the focus selector takes, the focus selector is generally a user interface element (or contact on a touchscreen display) that is controlled by the user to communicate the user's intended interaction with the user interface (e.g., by indicating to the device the element of the user interface through which the user intends to interact).For example, the position of a focus selector (e.g., cursor, touch, or selection box) over a particular button while a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen) indicates that the user intends to activate that particular button (and not other user interface elements shown on the device's display).

[0152] As used herein and in the claims, the term "characteristic intensity" of a contact refers to a characteristic of that contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on a plurality of intensity samples. The characteristic intensity is optionally based on a predetermined number of intensity samples, i.e., a set of intensity samples collected during a predetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) associated with a predetermined event (e.g., after detecting the contact, before detecting lift-off of the contact, before or after detecting the start of contact movement, before detecting the end of the contact, before or after detecting an increase in the intensity of the contact, and / or before or after detecting a decrease in the intensity of the contact). The characteristic intensity of the contact is optionally based on one or more of the maximum intensity of the contact, the mean intensity of the contact, the average intensity of the contact, the top 10 percentile intensity of the contact, half the maximum intensity of the contact, 90 percent of the maximum intensity of the contact, etc. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an action is performed by the user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this example, a contact having a characteristic intensity that does not exceed the first threshold results in a first action, a contact having a characteristic intensity above the first intensity threshold but not above the second intensity threshold results in a second action, and a contact having a characteristic intensity above the second threshold results in a third action. In some embodiments, the comparison between the characteristic intensity and the one or more thresholds is not used to determine whether the first action or the second action should be performed, but rather is used to determine whether one or more actions should be performed (e.g., whether to perform a particular action or refrain from performing a particular action).

[0153] 6 shows an example set of hand gestures according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 15-16.

[0154] 6 shows an example set of hand gestures that can be detected by computer system 600. Computer system 600 includes input mechanism 602a (e.g., a watch crown), input mechanism 602b (e.g., a side button), and display screen 602c. In some embodiments, computer system 600 includes one or more components of devices 100, 300, and / or 500. In some embodiments, computer system 600 is a wearable device such as a watch. In some embodiments, input mechanisms 602a and 602b may include one or more components and / or characteristics of input mechanisms 506 and 608 described above in connection with FIG. 5A . In some embodiments, display screen 602c is a touch-sensitive display and includes one or more components and / or characteristics as described above in connection with touchscreen 504.

[0155] As shown in Figure 6, computer system 600 is worn around a user's wrist and is spaced from hand 622. Computer system 600 includes one or more accelerometers, gyroscopes, and / or biometric sensors to detect various hand gestures and / or movements (e.g., tilt, etc.) of computer system 600. In Figure 6, one or more of the biometric sensors include an optical sensor and / or a heart rate sensor that computer system 600 utilizes to detect various hand gestures. In some embodiments, computer system 600 can detect hand gestures using one or more sensors other than the optical / heart rate sensor.

[0156] 6 illustrates exemplary hand gestures that may be detected (e.g., via optical / heart rate sensors) by computer system 600. As shown in FIG. 6, the hand gestures include a neutral gesture / position 610, a clench gesture 620, a double clench gesture 630, a pinch gesture 640, and a double pinch gesture 650. While these hand gestures (e.g., 610, 620, 630, 640, and 650) are discussed throughout this application, hand gestures (e.g., multi-finger tap hand gestures and / or triple (quadruple, quintuple) clench / pinch gestures) and combinations of one or more of these hand gestures are contemplated as being detectable (e.g., via optical / heart rate sensors) by computer system 600 and / or used to perform one or more actions as described below. Accordingly, the hand gestures provided herein are for illustrative purposes only, and the embodiments described herein are not limited to these particular hand gestures. Additionally, the hand gestures described herein are not directed toward (e.g., captured by) one or more cameras of computer system 600. Additionally, the hand gestures described herein do not contact and / or are not performed in front of display screen 602c (e.g., for the hand gestures to be detected by computer system 600).

[0157] 6 , neutral hand gesture / position 610 is a hand gesture / position in which none of the fingertips of hand 622 are touching any part of hand 622. Clench gesture 620 is a hand gesture in which one or more fingers of hand 622 are touching another part of the user's hand, such as when the user's palm touches another part of the user's hand when forming a fist. Double clench gesture 630 is a combination (and / or sequence) of neutral gesture / position 610 and clench gesture 620 in which the fingers of hand 622 are closed to form a first clench gesture (e.g., first portion 630a), opened to form a neutral gesture / position (e.g., second portion 630b), and closed again to form a second clench gesture (e.g., third portion 630c). Thus, a double clench gesture is a gesture that includes multiple (e.g., two) instances of a clench gesture (e.g., first portion 630a and third portion 630c) detected within a predetermined period of time (e.g., 0-2 seconds). Pinch gesture 640 is a hand gesture in which one or more (e.g., two) fingers of hand 622 are touching each other. A pinch gesture differs from a clench gesture because a fist is not formed when performing a pinch gesture, but a fist is formed when performing a clench gesture. A double pinch gesture 650 is a combination (and / or sequence) of a neutral gesture / position 610 and a pinch gesture 640 in which the fingers of a hand 622 touch to form a first pinch gesture (e.g., first portion 650a), open to form a neutral gesture / position (e.g., second portion 650b), and close again to form a second pinch gesture (e.g., third portion 650c). Thus, a double pinch gesture is a gesture that includes multiple (e.g., two) instances of a pinch gesture (e.g., first portion 650a and third portion 650c) detected within a predetermined period of time (e.g., 0-2 seconds).6 , double clench gesture 630 and clench gesture 620 do not include multiple instances of pinch gesture 640, and double pinch gesture 650 and pinch gesture 640 do not include multiple instances of clench gesture 620. In some embodiments, when two pinch gestures are detected within a predetermined period of time, computer system 600 registers (or detects) the two gestures as being a double pinch gesture. In some embodiments, when two pinch gestures are not detected within a predetermined period of time, computer system 600 registers (or detects) the two gestures as two separate pinch gestures (e.g., without registering a double pinch gesture). In some embodiments, when two clench gestures are detected within a predetermined period of time, computer system 600 registers (or detects) the two gestures as being a double clench gesture. In some embodiments, when two clench gestures are not detected within a predetermined period of time, the computer system 600 registers (or detects) the two gestures as two separate clench gestures (e.g., without registering a double clench gesture).

[0158] 7A-7AA show exemplary user interfaces for navigating a user interface using hand gestures, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 15-16.

[0159] 7A-7G illustrate exemplary user interfaces for responding to an incoming call alert (e.g., a timer alert) using hand gestures. FIG. 7A shows computer system 600 displaying a clock user interface 710 on display screen 602c, including the current time (e.g., 10:09). While computer system 600 is displaying clock user interface 710, hand 622 is in a neutral position (e.g., 610 in FIG. 6). In FIG. 7A, computer system 600 receives an incoming call alert from a timer application (e.g., installed on computer system 600). As shown in FIG. 7B, in response to receiving the incoming call alert from the timer application, computer system 600 displays timer user interface 712. The timer user interface 712 includes a stop control 712a (e.g., when activated, causes the computer system 600 to stop outputting an audible sound associated with the incoming call alert), a repeat control 712b (e.g., when activated, causes the computer system 600 to repeat a timer associated with the incoming call alert), and an indication that the timer has expired (e.g., "Timer expired"). In FIG. 7C, the computer system 600 detects a pinch gesture 750c. However, as shown in FIG. 7D, the computer system 600 continues to display the timer user interface 712 and does not perform any action in response to the pinch gesture 750c because the computer system 600 is not operating in a hand gesture navigation mode (e.g., and / or an accessibility mode). In some embodiments, the computer system 600 does not detect the pinch gesture 750c because the computer system 600 is not operating in a hand gesture navigation mode.

[0160] In FIG. 7D, the computer system 600 detects a double clench gesture 750d. In FIG. 7E, in response to detecting the double clench gesture 750d, the computer system 600 begins operating in hand gesture navigation mode. In FIG. 7E, the computer system 600 detects a pinch gesture 750e (e.g., a second pinch gesture). As shown in FIG. 7F, in response to detecting the pinch gesture 750e, the computer system 600 displays a focus indicator around the stop control 712a because the computer system 600 is operating in hand gesture navigation mode. The computer system 600 displays a focus indicator around the stop control 712a to indicate that the computer system 600 can activate the stop control 712a in response to detecting a particular hand gesture. In contrast, the computer system 600 does not display a focus indicator around the repeat control 712b in FIG. 7F. Thus, repeat control 712b may not be activated in response to computer system 600 detecting a particular hand gesture (e.g., before repeat control 712b is displayed with a focus indicator). In Figure 7F, computer system 600 detects clench gesture 750f. In Figure 7G, in response to detecting clench gesture 750f, computer system 600 activates stop control 712a. Activating stop control 712a causes computer system 600 to stop displaying timer user interface 712, stop outputting audible sounds associated with incoming call alerts, and redisplay clock user interface 710 (e.g., as shown in Figure 7G).

[0161] 7G-7J illustrate exemplary user interfaces for responding to an incoming call alert (e.g., an incoming call) using hand gestures. As described above, FIG. 7G illustrates computer system 600 displaying watch user interface 710 while operating in hand gesture navigation mode. In FIG. 7G, computer system 600 receives an alert corresponding to an incoming telephone call. As shown in FIG. 7H, in response to receiving the alert, computer system 600 displays telephone user interface 714, which includes call identifier 714a (e.g., "John Appleseed Incoming Call") indicating that computer system 600 is receiving an incoming call from John Appleseed. Telephone user interface 714 also includes a reject control 714b (e.g., which, when activated, causes computer system 600 to reject the telephone call), an answer control 714c (e.g., which, when activated, causes computer system 600 to answer the telephone call), and an additional options control 714d (e.g., which, when activated, causes computer system 600 to display additional options for answering the incoming telephone call). As shown in FIG. 7H , computer system 600 displays hand gesture notification 716, indicating that the user can answer the phone call by providing a double scramble gesture (e.g., instead of providing multiple gestures to answer the phone call (e.g., one or more pinch gestures to navigate to answer control 714c and a clench gesture to navigate to answer control 714c using one or more techniques described in connection with FIGS. 7C-7G )). In some embodiments, computer system 600 displays hand gesture notification 716 because a determination is made that computer system 600 is operating in a hand gesture navigation mode and / or that computer system 600 is operating in a usage context in which a particular type of operation (e.g., answering a phone call, canceling an alarm, and / or responding to a text message) can be completed via a single hand gesture (e.g., a predetermined hand gesture).In some embodiments, computer system 600 displays other and / or different hand gesture notifications (e.g., from hand gesture 716) to inform the user that an action can be performed using one or more other gestures.

[0162] In Figure 7I, computer system 600 detects a double clench gesture 750i. As shown in Figure 7J, in response to detecting double clench gesture 750i, computer system 600 replaces call identifier 714a with elapsed time indicator 714e, indicating that the incoming telephone call has been answered, and displays volume control 714f (e.g., that, when activated, adjusts the volume level of one or more speakers of computer system 600). In other words, in response to detecting double clench gesture 750i, computer system 600 answers the incoming telephone call. In some embodiments, in response to detecting a double clench gesture while an incoming call alert has not been received (and / or has not been received within a predetermined period of time), computer system 600 performs different operations (e.g., as described in connection with Figures 7D-7E and 7L-7M) than the operations performed while an incoming call alert has been received (and / or has been received within a predetermined period of time).

[0163] 7I-7U illustrate an exemplary user interface for navigating a user interface using hand gestures and a moving cursor. In particular, FIGS. 7I-7U illustrate an exemplary scenario for exiting a training tracker using hand gestures and a moving cursor. FIG. 7K illustrates a computer system 600 displaying a training user interface 718 including a list of training metrics. While displaying the training user interface 718, the computer system 600 detects a double clench gesture 750l in FIG. 7L. As shown in FIG. 7M, in response to detecting the double clench gesture 750l, the computer system 600 displays a menu 732 including a digital hardware operation control 732a, a movement cursor control 732b, an interaction control 732c, and an additional options control 732d. The menu 732 includes a control identifier 708 ("DIGITAL CROWN") that identifies the currently focused control (e.g., the black box around the digital hardware operation control 732a in FIG. 7M). In response to detecting activation of digital hardware operation control 732a, computer system 600 begins operating in a digital hardware operation mode (e.g., a different hand gesture navigation mode). In response to detecting activation of interaction control 732c, computer system 600 replaces menu 732 with a menu having controls that, when activated, cause computer system 600 to perform different actions corresponding to various gestures detected at locations on computer system 600 (e.g., as described below in connection with FIG. 7Z). In response to detecting activation of additional options control 732d, computer system 600 replaces menu 732 with a menu including additional controls (e.g., as described below in connection with FIG. 7Z).

[0164] As shown in FIG. 7M, in response to detecting a double clench gesture 750l, the computer system 600 displays a focus indicator around the digital hardware operation control 732a to indicate that the computer system 600 can activate the digital hardware operation control 732a in response to detecting one or more hand gestures. In FIG. 7M, the computer system 600 detects a pinch gesture 750m. As shown in FIG. 7N, in response to detecting the pinch gesture 750m, the computer system 600 moves the focus indicator to the right so that the focus indicator is around the moving cursor control 732b and no longer around the digital hardware operation control 732a. In particular, in response to detecting the pinch gesture 750m, the computer system 600 moves the focus indicator (e.g., in terms of position) from one control to the next on the user interface. In FIG. 7N, the computer system 600 detects a clench gesture 750n while the focus indicator is displayed around the moving cursor control 732b.

[0165] As shown in FIG. 7O, in response to detecting clench gesture 750n, computer system 600 stops displaying menu 732 and displays cursor 742 at a location on training user interface 718. In FIG. 7O, in response to detecting clench gesture 750n, computer system 600 begins operating in a moving cursor operation mode (e.g., another hand gesture operation mode). In FIG. 7P, computer system 600 detects (e.g., via one or more accelerometers and / or gyroscopes, via sensors different from the optical / heart rate sensor, and / or via sensors different from the sensor that detects the one or more hand gestures) that computer system 600 is being tilted (e.g., moved) to the left (e.g., 750p). In FIG. 7P, in response to detecting that computer system 600 is being tilted to the left, computer system 600 moves cursor 742 to the left based on the amount of tilt and / or the rate of tilt detected by computer system 600. As shown in FIG. 7P, cursor 742 is moved toward the left edge of training user interface 718. In FIG. 7P, a determination is made that cursor 742 is located at (e.g., and / or near) the left edge of training user interface 718 (e.g., for a predetermined period of time). As shown in FIGS. 7Q-7R, because cursor 742 has been determined to be located at the left edge of training user interface 718, computer system 600 displays an animation of training user interface 718 sliding off the right edge of display screen 602c and a training control user interface sliding (e.g., to the right) onto display screen 602c from the left edge of the display screen. Thus, because a determination is made that cursor 742 is located at (e.g., and / or near) the left edge of the display screen, computer system 600 replaces the currently displayed user interface with another user interface.

[0166] As shown in FIG. 7R, the training control user interface 720 includes a lock control 720a (e.g., when activated, causes the computer system 600 to ignore touch input detected on the computer system 600), a new control 720b (e.g., when activated, causes the computer system 600 to start a new training tracker), an end control 720c (e.g., when activated, causes the computer system 600 to stop the training tracker that is currently tracking a training activity), and a pause control 730d (e.g., when activated, causes the computer system 600 to pause the training tracker that is currently tracking a training activity). As shown in FIG. 7R, the hand 622 is in a neutral position (e.g., 610 in FIG. 6) and the cursor 742 is positioned over the end control 720c. In FIG. 7S, a period of time has passed since the cursor 742 was first positioned over the end control 720c (and / or at the current position of the cursor 742) (e.g., the hand 622 remains in a neutral position). As shown in FIG. 7S, computer system 600 displays cursor 742 with indication 744. Indication 744 indicates an amount of time before an action corresponding to the position of cursor 742 (e.g., an activation action) is performed, such as activating exit control 720c and / or displaying a menu (e.g., menu 732 in FIG. 7M) including one or more controls for performing the action corresponding to the position of cursor 742. Thus, while cursor 742 is displayed in a position corresponding to a user interface object such as a control, computer system 600 displays an animation of the size of indication 744 and / or occludes cursor 742 for a period of time (e.g., a period of time indicating the time remaining before the action is performed). In FIG. 7S, indication 744 occluding approximately half of cursor 742 indicates that approximately half of the time has elapsed (e.g., since cursor 742 was positioned over exit control 720c) before computer system 600 can perform the action corresponding to the position of cursor 742.7Q-7R, regardless of the length of time that computer system 600 was displayed in a particular position while computer system 600 was not displayed on the user interface and / or at the edge of the display, computer system 600 did not display an indication with cursor 742. Thus, in some embodiments, computer system 600 displays an animation with indication 744 only when moving cursor 742 is over a user interface object (e.g., a selectable and / or (activatable) user interface object, a user interface object that can be activated via one or more gestures detected on display screen 602c).

[0167] In FIG. 7S, more time has passed since cursor 742 was initially positioned over end control 720c (e.g., hand 622 remains in a neutral position). As shown in FIG. 7T, computer system 600 updates indication 744 so that it occupies all of cursor 742. In FIG. 7T, a determination is made that cursor 742 has been positioned over end control 720c for a predetermined period of time (e.g., 1-5 seconds). In FIG. 7U, a determination is made that cursor 742 has been positioned over end control 720c for a predetermined period of time, so computer system 600 activates end control 720c. Once end control 720c is activated, computer system 600 displays completion user interface 770, indicating that the training tracker has finished.

[0168] 7U-7AA illustrate an exemplary user interface for navigating a user interface using hand gestures and a moving cursor. In particular, FIGS. 7U-7AA illustrate an exemplary scenario in which computer system 600 enters a moving cursor operating mode in response to detecting a shake gesture (e.g., instead of activating a moving cursor control 732b on menu 732 via one or more hand gestures, as described above in connection with FIG. 7N). FIG. 7U shows computer system 600 displaying a clock user interface 710 including the current time (e.g., 10:09). In FIG. 7W, computer system 600 detects (e.g., via one or more accelerometers and / or gyroscopes) that it is being shaken (e.g., 750w). In FIG. 7X, in response to detecting that computer system 600 is being shaken (e.g., transitioning from a state in which it is not operating in moving cursor mode to a state in which it is operating in moving cursor mode). In response to detecting that computer system 600 is being shaken (or has been shaken), computer system 600 displays cursor 742. In Figure 7Y, computer system 600 detects that computer system 600 is being tilted (e.g., moved) to the right (e.g., 750y). In Figure 7Y, in response to detecting that computer system 600 is being tilted to the right, computer system 600 moves cursor 742 to the right based on the amount of tilt and / or speed of tilt detected by computer system 600. As shown in Figure 7Y, cursor 742 is moved toward the right edge of watch user interface 710. In Figure 7Y, a determination is made that cursor 742 is positioned at (e.g., and / or near) the right edge of watch user interface 710.As shown in FIGS. 7Z-7AA, because it is determined that cursor 742 is located at the left edge of training user interface 718, computer system 600 displays an animation of the clock user interface sliding from the left edge of display screen 602c (e.g., away from the edge where cursor 742 is located) and displays analog clock user interface 780 sliding from the right of display screen 602c toward the left edge of display screen 602c.

[0169] 8A-8J show exemplary user interfaces for navigating a user interface using hand gestures, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 15-16.

[0170] In particular, Figures 8A-8J illustrate an exemplary scenario in which computer system 600 displays menu 732 in response to cursor 742 being positioned (e.g., displayed) over a user interface object (e.g., instead of activating a user interface object as described above in connection with Figures 7I-7U). Figure 8A shows computer system 600 displaying watch user interface 810 including application controls 810a-810d (e.g., each of which, when activated, causes computer system 600 to launch an application). In Figure 8A, computer system 600 detects (e.g., 850a) that it is being shaken (e.g., using one or more techniques such as those described above in connection with Figures 7U-7AA). In Figure 8B, in response to detecting that computer system 600 is being shaken (e.g., shaken), computer system 600 begins operating in a moving cursor mode and displays cursor 742 over watch user interface 810.

[0171] In FIG. 8C , cursor 742 is displayed in the same position (e.g., the position displayed in FIG. 8B ) for a predetermined period of time. However, because cursor 742 is not positioned (e.g., using one or more techniques described in connection with FIGS. 7I-7U ) in a position corresponding to a user interface object (e.g., a selectable object and / or a user interface object that may be activated when computer system 600 detects one or more inputs on a user interface object, and in some embodiments, a user interface object that may be activated when the computer system is operating in a normal operating mode and / or has not detected a hand gesture) in FIG. 8C , computer system 600 does not display an animation of cursor 742 filling in. In FIG. 8C , computer system 600 detects (e.g., using one or more techniques described in connection with FIGS. 7I-7U ) that it is being tilted downward (e.g., 850c). As shown in FIG. 8D , in response to detecting that computer system 600 is being tilted downward, computer system 600 moves cursor 742 over application icon 810d.

[0172] As shown in Figures 8E-8G, computer system 600 displays an animated cursor indication 744 that fills cursor 742 over a period of time as cursor 742 is displayed over application icon 810d (e.g., a selectable user interface object) (e.g., using one or more of the techniques described above in connection with Figures 7I-7U). As shown in Figure 8G, indication 744 completely fills cursor 742. In Figure 8G, cursor 742 is determined to be displayed after cursor 742 has been positioned over application icon 810d for a predetermined period of time (e.g., 1-5 seconds).

[0173] 8H, a determination is made that cursor 742 has been positioned over application icon 810d for a predetermined period of time, so that computer system 600 displays menu 732 (e.g., in some embodiments, selects application icon 810d and / or a location of application icon 810d (e.g., such that application icon 810d and / or the location of application icon 810d can be used to perform an operation) without activating application icon 810d. Also in FIG. 8H, computer system 600 displays cursor 742 positioned over interaction control 732c. In some embodiments, one or more settings control whether computer system 600 activates a particular user interface object when cursor 742 is determined to have been positioned over the particular user interface object for a predetermined period of time, whether computer system 600 displays a menu when cursor 742 is determined to have been positioned over the particular user interface object for a predetermined period of time, or both. In some embodiments, computer system 600 displays menu 732 at a location on the display further away from where cursor 742 was positioned over application icon 810d (so as not to obscure the user interface object that cursor 742 was hovering over).

[0174] As shown in FIG. 8I, computer system 600 displays indication 744 of cursor 742 (e.g., using one or more techniques such as those described in connection with FIGS. 8E-8G). In FIG. 8I, a determination is made that cursor 742 is detected over interaction control 732c for a predetermined period of time. In FIG. 8J, a determination is made that cursor 742 is detected over cursor 742 for a predetermined period of time, and therefore computer system 600 activates interaction control 732c. In response to the activation of interaction control 732c, computer system 600 displays additional controls, including tap control 832a. In particular, upon determining that cursor 742 is detected over a selectable user interface object for a predetermined period of time while menu 732 is displayed, computer system 600 activates the user interface object (and does not re-display menu 732, regardless of one or more settings of computer system 600).

[0175] In Figure 8J, computer system 600 displays a cursor over tap control 832a. In some embodiments, when it is determined that cursor 742 is detected over tap control 832a, computer system 600 activates tap control 832a. In some embodiments, in response to detecting activation of tap control 832a, computer system 600 detects and / or performs an action that would have been performed if a tap gesture had been detected at the location where cursor 742, which caused menu 732 to be displayed, was displayed (e.g., in Figures 8G-8I). For example, in Figure 8J, in response to detecting activation of tap control 832a, computer system 600 launches the application corresponding to application icon 810d (e.g., the user interface of Figure 10F). In some embodiments, other gesture controls may be displayed and activated when the computer system 600 performs an action (e.g., an action different from that which would have been performed if a particular gesture (e.g., a press and hold gesture, a drag gesture) had been detected at the position where the cursor 742 was displayed that caused the menu 732 to be displayed (e.g., a gesture that displays a clock face menu, a gesture that moves an application icon from one position to another on the clock user interface 810, a gesture that removes an application icon from the clock user interface 810).

[0176] 9A-9H show exemplary user interfaces for navigating a user interface using hand gestures, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 15-16.

[0177] 9A-9H illustrate exemplary scenarios in which computer system 600 navigates through a user interface in response to detecting hand gestures (e.g., using techniques similar to those described above in connection with FIGS. 7A-7G). FIG. 9A illustrates computer system 600 displaying media user interface 910 while not operating in hand gesture navigation mode. The media user interface 910 includes a back control 910a (e.g., when activated, causes the computer system 600 to display a previously displayed user interface), a reverse control 910b (e.g., when activated, causes the computer system 600 to play a previous media item in a list of media items), a pause control 910c (e.g., when activated, causes the computer system 600 to pause playback of a media item), a forward control 910d (e.g., when activated, causes the computer system 600 to play the next media item in a list of media items), an more options control 910e (e.g., when activated, causes the computer system 600 to display one or more additional controls not currently displayed in FIG. 9A ), a queue control 910f (e.g., when activated, causes the computer system 600 to display a list of queued media items), and a connect control 910g (e.g., when activated, causes the computer system 600 to display a user interface for connecting the computer system 600 to one or more external computer systems). In FIG. 9A, computer system 600 detects a double clench gesture 950a.

[0178] 9B, in response to detecting double clench gesture 950a, computer system 600 begins operating in a hand gesture navigation mode (e.g., using one or more techniques such as those described above in connection with FIGS. 7D-7E). As shown in FIG. 9B, in response to detecting double clench gesture 950a, computer system 600 displays a focus indicator around forward control 910d (e.g., using one or more techniques such as those described above in connection with FIG. 7D). In some embodiments, in response to detecting double clench gesture 950a, computer system 600 displays a focus indicator around a control on media user interface 910 that is different from and / or is not a forward control (e.g., controls 910a-910d or 910e-910g).

[0179] In Figure 9B, computer system 600 detects double pinch gesture 950b. As shown in Figure 9C, in response to detecting double pinch gesture 950b, computer system 600 moves the focus indicator to the left so that the focus indicator is displayed around pause control 910c and not around forward control 910d. In Figure 9C, in response to detecting double pinch gesture 950b, computer system 600 moves the focus indicator around the control that computer system 600 determined to be the previous control on media user interface 910 for forward control 910d. In some embodiments, computer system 600 determines the previous control by identifying controls on media user interface 910 in a direction from the location of forward control 910d (e.g., the previous control around which the focus indicator was located) toward the starting row on media user interface 910 (e.g., a location near the top of media user interface 910 and / or on the top row, and / or a location on the row having selectable user interface objects (e.g., controls) furthest to the left / right of media user interface 910 and near the top). In some embodiments, in FIG. 9C , pause control 910c is determined to be the control previous to forward control 910d because it is adjacent to forward control 910d (e.g., adjacent with no other control between the two controls) and closer to the starting row of media user interface 910 than forward control 910d (or, in some embodiments, other adjacent controls (e.g., queue control 910f, more options control 910e)). In FIG. 9C , computer system 600 detects clench gesture 950c.

[0180] In FIG. 9D , in response to detecting a clench gesture 950c, the computer system 600 activates a pause control 910c, pausing playback of the media (e.g., "The Important Thing" by "Pop Star"). As shown in FIG. 9D , in response to detecting a clench gesture 950c, the pause control 910c is replaced with a play control 910h (e.g., which, when activated, begins playback of the media item). As shown in FIG. 9D , in response to detecting a clench gesture 950c, the computer system 600 maintains the focus indicator in the same position on the media user interface 910. Thus, in some embodiments, the computer system 600 does not move the focus control when it detects the clench gesture 950c and / or when it activates a control in response to detecting a hand gesture, regardless of whether the control is replaced with another control. In FIG. 9E , the computer system 600 detects a pinch gesture 950e.

[0181] 9F, in response to detecting pinch gesture 950e, computer system 600 moves the focus indicator to the right so that the focus indicator is displayed around forward control 910d and not around playback control 910h. In FIG. 9F, in response to detecting pinch gesture 950e, computer system 600 moves the focus indicator around the control that computer system 600 determines to be the next control on media user interface 910 in relation to playback control 910h. In some embodiments, computer system 600 determines the next control by identifying controls in a direction on media user interface 910 proceeding from the location of forward control 910d (e.g., the previous control around which the focus indicator was located) toward an ending row on media user interface 910 (e.g., a location near the bottom and / or on a bottom row of media user interface 910 and / or a location on a row having selectable user interface objects (e.g., controls) furthest to the left / right and near the top of media user interface 910). In some embodiments, in FIG. 9F, forward control 910d is determined to be the next control after playback control 910h because forward control 910d is adjacent to forward control 910d (e.g., adjacent with no other controls between the two controls) and is closer to the starting row of media user interface 910 than playback control 910h.

[0182] In particular, double pinch gesture 950b of Figure 9B includes multiple instances of pinch gesture 950e of Figure 9E. Furthermore, computer system 600 performs an opposite action (e.g., navigation to a previous control) in response to detecting double pinch gesture 950b relative to the action computer system 600 performed in response to detecting pinch gesture 950e. Thus, in some embodiments, computer system 600 performs an opposite action in response to detecting gestures that include multiple instances of each other. In some embodiments, the opposite gestures help a user navigate a user interface more easily due to the connection between the different gestures (e.g., the similarity between them). Returning to Figure 9F, computer system 600 detects pinch gesture 950f.

[0183] As shown in FIG. 9G, in response to detecting pinch gesture 950f, computer system 600 moves the focus indicator downward so that the focus indicator is displayed around more options control 910e and not around forward control 910d. Here, computer system 600 moves the focus indicator downward because more options control 910e is the next control. In FIG. 9G, computer system 600 does not display a focus indicator around connection control 910g because connection control 910g is not adjacent to forward control 910d (e.g., connection control 910g is not determined to be the next control). In some embodiments, computer system 600 moves focus around a user interface in a pattern based on the particular layout of controls on a particular user interface. Returning to FIG. 9A , in some embodiments, the computer system 600 moves a focus indicator around the media user interface 910 in the identification order of the controls (910a, 910b, 910c, 910d, 910e, 910f, and 910g sequentially (or vice versa). In some embodiments, when the focus indicator is around the last control (e.g., 910g), the computer system 600 moves the focus indicator around the first control (e.g., 910a) in response to detecting a pinch gesture (or a gesture that moves the next control). In some embodiments, when the focus indicator is around the first control (e.g., 910a), the computer system 600 moves the focus indicator around the last control (e.g., 910g) in response to detecting a double pinch gesture (or a gesture that moves the previous control). Returning to FIG. 9G , the computer system 600 detects a clench gesture 950g while the focus indicator is around the additional options control 910e.

[0184] 9H, in response to detecting a clench gesture 950g, computer system 600 displays an add options user interface 920 and stops displaying media user interface 910. As shown in FIG. 9H, in response to detecting a clench gesture 950g, computer system 600 displays a focus indicator around a control of add options user interface 920 (e.g., a start line position control). In some embodiments, in response to detecting one or more hand gestures (e.g., a pinch gesture and / or a double pinch gesture) for moving the focus indicator around the add options user interface 920, computer system 600 moves the focus indicator around different controls included in add options user interface 920. In some embodiments, computer system 600 moves the focus indicator around different controls included in add options user interface 920 in a pattern (e.g., a vertical pattern) that differs from the pattern (e.g., a serpentine pattern) in which computer system 600 moved the focus indicator around controls included in media user interface 910 (e.g., as described above in connection with FIGS. 9A-9G).

[0185] 10A-10F show exemplary user interfaces for navigating a user interface using hand gestures, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 15-16.

[0186] In particular, FIGS. 10A-10F illustrate exemplary scenarios in which computer system 600 navigates through a user interface in response to detecting a hand gesture (e.g., using techniques similar to those described above in connection with FIGS. 7A-7G). FIG. 10A illustrates computer system 600 displaying a media user interface 1010 while not operating in a hand gesture navigation mode. Media user interface 1010 includes application icons 1010a-1010d (e.g., which, when activated, cause computer system 600 to display a user interface for the particular application icon that was activated). In FIG. 10A, computer system 600 is operating in a hand navigation mode of operation (e.g., as described above in connection with FIGS. 7A-7G and 9A-9H). In some embodiments, computer system 600 navigates through media user interface 1010 using one or more of the techniques described above in connection with FIGS. 7A-7G and 9A-9H. In FIG. 10B, computer system 600 detects a double clench gesture 1050b.

[0187] As shown in FIG. 10C , in response to detecting a double clench gesture 1050b, the computer system 600 displays a menu 732 including controls 732a-732d (e.g., as described above in connection with FIG. 7D ). The menu 732 includes a control identifier 708 (“DIGITAL CROWN”) that identifies the currently focused control (e.g., the black box around the digital hardware operation control 732a in FIG. 10C ). As shown in FIG. 10C , the computer system 600 displays focus indicators around both the digital hardware operation control 732a and the application icon 1010c because the application icon 1010c was selected before the double clench gesture 1050b was detected and / or because the computer system 600 can perform an action at the location of the application icon 1010c (e.g., activating the application icon 1010c as described above in connection with FIG. 8J ). In FIG. 10C , the computer system detects the double clench gesture 1050c.

[0188] As shown in FIG. 10D, in response to detecting double clench gesture 1050c, computer system 600 stops displaying menu 732 (e.g., while computer system 600 continues to operate in hand gesture navigation mode). In FIG. 10D, computer system 600 detects pinch gesture 1050d. As shown in FIG. 10E, in response to detecting pinch gesture 1050d, computer system 600 moves the focus indicator downward and to the left so that the focus indicator is displayed around application icon 1010d and not around application icon 1010c. Computer system 600 displays the focus indicator around application icon 1010d because a determination was made (e.g., in response to detecting pinch gesture 1050d) that application icon 1010d was the next control. In some embodiments, this determination was made using one or more of the techniques described above in connection with FIGS. 9A-9H. In FIG. 10E, computer system 600 detects clench gesture 1050e. In FIG. 10F, in response to detecting clench gesture 1050e, computer system 600 activates application icon 1010d and displays an application (eg, a breathing application) corresponding to application icon 1010d (eg, a breathing application icon).

[0189] 11A-11H illustrate exemplary user interfaces for navigating a user interface using hand gestures, according to some embodiments. The user interfaces in these figures are used to illustrate processes described below, including the processes of FIGS. 15-16. In particular, FIGS. 11A-11H illustrate exemplary scenarios in which computer system 600 automatically scrolls a user interface and performs different actions in response to detecting one or more hand gestures. In some embodiments, computer system 600 automatically scrolls a user interface using one or more techniques such as those described in connection with FIGS. 11A-11H when the computer system is operating in a digital hardware operation mode (e.g., a hand gesture navigation mode). In some embodiments, computer system 600 begins operating in a digital hardware operation mode in response to activation of digital hardware operation control 732a. In some embodiments, computer system 600 automatically scrolls a user interface with similar action(s) and / or performs the same action(s) as the action(s) performed in response to computer system 600 detecting an input (e.g., a rotatable input) on an input mechanism. In some embodiments, the computer system 600 automatically scrolls the user interface when the computer system is operating in an autoscroll mode (eg, as described below in connection with 1412).

[0190] 11A shows computer system 600 displaying a text message user interface 1110. Text message user interface 1110 includes a text message area 1120 and one or more controls, including an animated image control 1110a. As shown in FIG. 11A, text message area 1120 includes a text message 1120a ("Where are you?"). As shown in FIG. 11A, computer system 600 displays a focus indicator around animated image control 1110a, which is displayed at the bottom of text message user interface 1110. In FIG. 11A, computer system 600 detects a double clench gesture 1150a.

[0191] 11B, in response to detecting a double clench gesture 1150a, computer system 600 displays menu 732 including digital hardware operation control 732a. In FIG. 11B, computer system 600 displays menu 732 at the top of text message user interface 1110. In some embodiments, computer system 600 displays menu 732 at the top of text message user interface 1110 because a focus indicator is displayed around animated image control 1110a and animated image control 1110a is displayed at the bottom of text message user interface 1110. In some embodiments, computer system 600 displays menu 732 at the bottom (or another area of ​​the user interface) in response to determining that the selected control (e.g., the control having a focus indicator around it) is not displayed at the bottom of media user interface 1110. In FIG. 11B, computer system 600 detects a double clench gesture 1150b while a focus indicator is displayed around digital hardware operation control 732a.

[0192] As shown in FIG. 11C , in response to detecting double clench gesture 1150b, computer system 600 begins operating in a digital hardware operating mode (e.g., and / or auto-scroll mode). While operating in the digital hardware operating mode, computer system 600 performs actions as if one or more inputs (e.g., a rotate input, a press input, a slide input) were received on an input mechanism of computer system 600. Sometime after displaying the user interface of FIG. 11C , computer system 600 performs actions consistent with one or more inputs detected on input mechanism 602a, without detecting any input and / or hand gestures (e.g., hand 622 is in a neutral position). As shown in FIG. 11D , when performing an action, computer system 600 moves the focus indicator from around animated image control 1110a to around language control 1110b (e.g., without any input detected on input mechanism 602a), an action consistent with the input detected on input mechanism 602a. 11D , computer system 600 performs another action consistent with one or more inputs detected by input mechanism 602a without detecting any input and / or hand gestures (e.g., hand 622 is in a neutral position). As shown in FIG. 11E , when performing the action, computer system 600 scrolls text message user interface 1110 and moves the focus indicator from around language control 1110b to around response control 1110c. Sometime after displaying the user interface of FIG. 11E , computer system 600 performs another action consistent with one or more inputs detected by input mechanism 602a without detecting any input and / or hand gestures (e.g., hand 622 is in a neutral position), computer system 600 scrolls text message user interface 1110 (e.g., a new control is displayed) and moves the focus indicator from around response control 1110c to around response control 1110e.In Figure 11F, computer system 600 detects pinch gesture 1150f while a focus indicator is displayed around responsive control 1110e. As shown in Figure 11G, in response to detecting pinch gesture 1150f, computer system 600 stops automatically performing actions (e.g., and / or pauses scrolling) that correspond to the one or more inputs detected by input mechanism 602a. In some embodiments, in response to detecting additional pinch gestures, computer system 600 resumes performing actions that correspond to the one or more inputs detected by input mechanism 602a.

[0193] 11G, computer system 600 detects clench gesture 1150g while a focus indicator is displayed around reply control 1110e. As shown in FIG. 11G, in response to detecting clench gesture 1150g, reply control 1110e is activated. In FIG. 11G, in response to detecting clench gesture 1150g, computer system 600 inserts reply message 1120b ("On my way") corresponding to reply control 1110e in text message area 1120. In some embodiments, computer system 600 sends reply message 1120b, which is part of the text message conversation, to one or more external computer systems.

[0194] 12A-12J show exemplary user interfaces for navigating a user interface using hand gestures, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 15-16.

[0195] In particular, FIGS. 12A-12J illustrate exemplary scenarios in which computer system 600 automatically scrolls a user interface and performs different actions in response to detecting one or more hand gestures. In some embodiments, computer system 600 automatically scrolls a user interface using one or more techniques such as those described in connection with FIGS. 12A-12J when the computer system is operating in a digital hardware operation mode (e.g., a hand gesture navigation mode). In some embodiments, computer system 600 begins operating in a digital hardware operation mode in response to activation of digital hardware operation control 732a. In some embodiments, computer system 600 automatically scrolls a user interface with similar action(s) and / or performs the same action(s) as the action(s) performed in response to computer system 600 detecting an input (e.g., a rotatable input) on an input mechanism. In some embodiments, computer system 600 automatically scrolls a user interface when the computer system is operating in an auto-scroll mode (e.g., as described below in connection with 1412).

[0196] FIG. 12A shows computer system 600 displaying clock face user interface 1210. Clock face user interface 1210 includes selectable controls 1210a-1210e. In FIG. 12A, computer system 600 is operating in an auto-scroll mode. As shown in FIGS. 12A-12C, computer system 600 automatically (e.g., as indicated by hand 622 in a neutral position) moves a focus indicator (e.g., at a first speed) between selectable controls 1210a-1210c (e.g., without computer system 600 detecting any input). In FIG. 12C, computer system 600 detects a pinch gesture 1250c while a focus indicator is displayed around selectable control 1210c. As shown in Figure 12D, in response to detecting pinch gesture 1250c, computer system 600 ceases automatically moving the focus indicator between selectable controls and continues to display the focus indicator around selectable control 1210c (e.g., as indicated by hand 622 in a neutral position). In Figure 12E, computer system 600 detects pinch gesture 1250e while the focus indicator is displayed around selectable control 1210c. As shown in Figures 12F-12G, in response to detecting pinch gesture 1250e, computer system 600 resumes moving the focus indicator (e.g., displaying the focus indicator around selectable control 1210d and then around selectable control 1210e).

[0197] In Figure 12H, computer system 600 moves the focus indicator to the left so that the focus indicator is displayed around selectable control 1210d and not around 1210e. In Figure 12H, computer system 600 moves the focus indicator from selectable control 1210e to selectable control 1210d because 1210e is determined to be the last selectable control on clock face user interface 1210. Thus, in Figure 12H, computer system 600 reverses the direction of movement of the focus indicator around the selectable user interface objects of clock face user interface 1210. In some embodiments, computer system 600 displays a focus indicator around selectable control 1210c when a predetermined time has elapsed. In Figure 12H, computer system 600 detects double pinch gesture 1250h. In Figure 12G, in response to detecting double pinch gesture 1250h, computer system 600 reverses the direction of movement of a focus indicator around the selectable user interface object of clock face user interface 1210. As shown in Figure 12I, in response to detecting double pinch gesture 1250h, computer system 600 displays a focus indicator around selectable control 1210e (e.g., instead of displaying a focus indicator around selectable control 1210c, where computer system 600 would have displayed a focus indicator if double pinch gesture 1250h had not been detected). In Figure 12I, computer system 600 detects clench gesture 1250i while the focus indicator is displayed around selectable control 1210e. As shown in Figure 12J, in response to detecting clench gesture 1250j, computer system 600 activates selectable control 1210e.As shown in FIG. 12J, in response to detecting clench gesture 1250j, computer system 600 displays calendar application user interface 1220, which is the user interface of the application corresponding to selectable control 1210e.

[0198] 13A-13G show exemplary user interfaces for navigating a user interface using hand gestures, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 15-16.

[0199] 13A-13G illustrate one or more example settings for controlling one or more hand gesture navigation modes (e.g., as described above in connection with FIGS. 7A-7AA, 8A-8J, 9A-9H, 10A-10F, 11A-11H, and 12A-12J). FIG. 13A illustrates computer system 600 displaying one or more settings including accessibility settings controls 1312a, 1312b, and 1312c. In some embodiments, in response to detecting an input on accessibility settings control 1312a, computer system 600 displays one or more of accessibility settings 1322a-1322f (e.g., as shown in FIG. 13B).

[0200] As shown in Figure 13B, accessibility settings 1312a-1312f include hand gesture navigation control 1322h. In some embodiments, when hand gesture navigation control 1322h is off (e.g., inactive), computer system 600 does not perform an action in response to detecting a hand gesture. In some embodiments, when hand gesture navigation control 1322h is on (e.g., active), computer system 600 performs an action in response to detecting a hand gesture. In some embodiments, in response to detecting a gesture for hand gesture navigation control 1322h, computer system 600 displays the user interface of Figure 13C.

[0201] 13C , the computer system 600 displays hand gesture navigation controls 1314a-1314h. The hand gesture navigation controls include a main settings control 1314a, a hand gesture control 1314b, a movement cursor control 1314c, a movement style control 1314d, one or more appearance settings controls 1314e-1314g, and a hand gesture confirmation control 1314h. In response to detecting an input to the main settings control 1314a, the computer system 600 turns the hand gesture navigation mode on / off (e.g., as described above in connection with the hand gesture navigation control 1322h). In response to detecting an input to the hand gesture control 1314b, the computer system 600 switches the hand gesture control 1314b on / off. When the hand gesture control 1314b is on, the computer system 600 is configured to perform one or more actions in response to detecting a hand gesture. When the hand gesture control 1314b is off, the computer system 600 is not configured to perform one or more actions in response to detecting a hand gesture. In response to detecting input on the movement cursor control 1314c, the computer system 600 toggles the movement cursor control on / off. When the movement cursor control 1314c is on, the computer system 600 can be configured to operate in a movement cursor mode (e.g., as described above in connection with FIGS. 7I-7U and 8A-8J). When the movement cursor control 1314c is off, the computer system 600 cannot be configured to operate in a movement cursor mode (e.g., in response to a shake gesture and / or in response to detecting input on the movement cursor control 732b of the menu 732 of FIG. 7N). In response to detecting input on the movement style control 1314d, the computer system 600 toggles the movement style control 1314d between different movement options. The different movement options include one or more of automatic movement and manual movement (e.g., of a focus indicator on a displayed user interface).In response to detecting input to one or more appearance setting controls 1314e-1314g, the computer system 600 changes the appearance of one or more of the menu 732 (e.g., as described in connection with FIG. 7N), the cursor 742 (e.g., as described in connection with FIGS. 7A-7AA), and the indication 744 (e.g., as described in connection with FIGS. 7A-7AA), such as the color and / or control of one or more displayed user interface objects. In response to detecting input to the hand gesture confirmation control 1314h, the computer system 600 toggles the hand gesture confirmation control 1314h on / off. When the hand gesture confirmation control 1314h is on, the computer system 600 is configured to confirm one or more actions (e.g., payment transactions) in response to detecting one or more hand gestures. When the hand gesture confirmation control 1314h is off, the computer system 600 is not configured to confirm one or more actions in response to detecting one or more hand gestures.

[0202] 13D, computer system 600 displays one or more settings controls (e.g., settings controls 1316a-1316e) for modifying one or more actions performed by computer system 600 in response to detecting particular hand gestures. In some embodiments, in response to detecting one or more gestures for learning control 1316e, computer system 600 displays the user interface of FIG. 13E.

[0203] As shown in Figure 13E, computer system 600 displays user interface 1318. User interface 1318 may include one or more instructions (e.g., accompanied by graphical representations) that indicate how a user can perform one or more gestures. In some embodiments, in Figure 13C, computer system 600 displays the user interface of Figure 13F in response to detecting a gesture for movement cursor control 1314c. In some embodiments, while displaying user interface 1318, computer system 600 provides feedback regarding whether the user performed gestures correctly and / or incorrectly during the learning mode session.

[0204] As shown in FIG. 13F, computer system 1300 displays one or more controls for controlling one or more aspects of the move cursor mode, such as sensitivity (e.g., 1322b) (e.g., how and / or how far the move cursor moves in response to detected movement (e.g., tilt) of computer system 600), active time (e.g., 1322c) (e.g., a predetermined amount of time and / or the amount of time represented by an indication (e.g., indication 744 in FIG. 7N) that the move cursor must be over a user interface object to perform an action), movement tolerance (e.g., 1322d) (e.g., an amount of time that an action must be performed after the move cursor is moved from a position corresponding to the user interface object before indication 744 is reset and / or the display of animation stops), and dwell control (e.g., 1322e) (e.g., a predetermined amount of time that a move user must be over a user interface object to perform an action and / or whether the computer system can initiate an action in move cursor mode via one or more shake inputs). In FIG. 13G, the computer system 600 displays one or more settings for changing the color (eg, 1324a-1324c) of the moving cursor.

[0205] 14 illustrates multiple menu controls that may be displayed on menu 732 (e.g., as described above in connection with FIG. 7N). Menu 732 may include a hierarchy of controls, such as the hierarchy of controls described in connection with FIG. 14. In some embodiments, in response to detecting an input to interaction control 1410, computer system 600 displays one or more of a tap control gesture 1410a (e.g., as described above in connection with 832a), a move cursor control 1410b (e.g., as described above in connection with move cursor control 732b), or a digital hardware action control 1410 (e.g., as described above in connection with digital hardware action 732a). In some embodiments, in response to detecting an input to system controls 1414, computer system 600 displays one or more of icon grid 1414a (e.g., when activated, displays a grid including a plurality of application icons), control center 1414b (e.g., when activated, displays one or more device controls, such as a Wi-Fi control for toggling Wi-Fi settings, a Bluetooth control for toggling Bluetooth settings, a mute control for toggling sound output, etc.), settings 1414c (e.g., when activated, displays one or more settings for a computer system configured as described above in connection with FIGS. 13A-13G), and dock controls 1414d (e.g., when activated, displays one or more controls for navigating to one or more applications (e.g., open applications and / or applications running in the background)).In some embodiments, in response to detecting input to the additional options control 1416 (e.g., 732d), the computer system 600 displays a wallet control 1416a (e.g., when activated, causes the computer system 600 to display one or more user interface objects for initiating a payment transaction), a side button 1416b (e.g., when activated, causes the computer system 600 to perform one or more actions consistent with the input mechanism 602b being pressed, such as turning the computer system 600 off), and a gesture mode 1416c (e.g., when activated, causes the computer system 600 to begin operating in gesture mode). In some embodiments, in response to detecting input to the auto-scroll control 1412, the computer system 600 begins operating in auto-scroll mode (e.g., as described above in connection with FIGS. 11A-11H and 12A-12J). In some embodiments, in response to detecting input to the exit control 1418, the computer system 600 stops displaying the menu 732 (as described above in connection with FIG. 7N). In some embodiments, menu 732 includes one or more controls not shown in Figure 14. In some embodiments, the controls in menu 732 are in a different hierarchy than that described in Figure 14.

[0206] 15 is a flow diagram illustrating a method 1500 of using a computer system, according to some embodiments. Method 1500 is performed in a computer system (e.g., 100, 300, 500) (e.g., a wearable device (e.g., a smart watch)) that is in communication with a display generation component (e.g., a display controller, a touch-sensitive display system) and an optical sensor (e.g., an auditory velocity sensor). In some embodiments, the computer system is in communication with one or more sensors (e.g., one or more biometric sensors (e.g., optical sensors (e.g., heart rate sensors), cameras), gyroscopes, accelerometers)). In some embodiments, the computer system is in communication with one or more input devices (e.g., a touch-sensitive surface, a microphone). In some embodiments, the computer system is in communication with one or more output devices (e.g., one or more speakers, one or more microphones). Some operations of method 1500 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0207] As described below, method 1500 provides an intuitive way to navigate a user interface using hand gestures. The method reduces the cognitive burden on a user when navigating a user interface using hand gestures, thereby creating a more efficient human-machine interface. For battery-operated computing devices, allowing a user to navigate a user interface more quickly and efficiently conserves power and extends the time between battery charges.

[0208] The computer system, via the display generation component, may display a first user interface object (e.g., 712a-712b, 910a-910h, or 1010a-1010d), a second user interface object (e.g., 712a-712b, 910a-910h, or 1010a-1010d), and a third user interface object (e.g., 712a-712b, 910a-910h, or 1010a-1010d), and an indication (e.g., a visual indication (e.g., a border of) the first user interface object (e.g., 712a-712b, 910a-910h, or 1010a-1010d) has been selected (e.g., without indicating that the second and third user interface objects have been selected). A user interface is displayed (1502) including a focus indicator (e.g., highlighting, text display, magnification) (e.g., focus indicators illustrated as surrounding 712a-712b, 910a-910h, or 1010a-1010d). In some embodiments, the first user interface object, the second user interface object, and the third user interface object are distinct from one another. In some embodiments, the first user interface object is displayed between the second and third user interface objects. In some embodiments, the first user interface object, the second user interface object, and the third user interface object are distinct user interface objects.

[0209] In some embodiments, the computer system may use at least an optical sensor to detect a selection of a first user interface object (e.g., 712a-712b, 910a-910h, or 1010a-1010d) (e.g., while the computer system is in a first operational mode (e.g., a first accessibility mode)), a second user interface object (e.g., 712a-712b, 910a-910h, or 1010a-1010d), a third user interface object (e.g., 712a-712b, 910a-910h, or 1010a-1010d), and an indication that the first user interface object has been selected (e.g., a focus indicator described as being near 712a-712b, 910a-910h, or 1010a-1010d). Detect (1504) a hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) (e.g., a first hand gesture), (e.g., not in contact with the device (e.g., not directed toward an object on the user interface and / or any device communicating with the device)), (e.g., a hand gesture not detected by one or more cameras of the device), (e.g., a hand gesture that occurs while the user's wrist is located in a single position and / or not moving), or a hand gesture that is detected while the computer system is worn on the wrist (e.g., the user's wrist) (e.g., via (e.g., using) one or more other sensors, such as a gyroscope, an accelerometer, etc.).

[0210] In some embodiments, a hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) (and while displaying a user interface including a first user interface object, a second user interface object, and a third user interface object) (e.g., while the computer system is in a first operating mode) via at least the optical sensor. While operating) and pursuant to a determination that the hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) is a first type of gesture (e.g., 610, 620, 630, 640, 650), (e.g., a type of hand gesture) (e.g., a finger tap / pinch gesture (e.g., a gesture in which two or more fingers touch each other) (and in some embodiments In response to (1506), the first type of gesture may be a non-finger tap / pinch gesture (e.g., a clench gesture (e.g., a fist gesture), a multiple clench gesture (e.g., a gesture including multiple clench gestures), a finger spread gesture (e.g., a gesture in which one or more fingers do not touch a portion of the hand), a multiple finger spread gesture (e.g., a gesture including multiple spread gestures), and / or any combination thereof), the computer system, via the display generation component, may display a second user interface.

[0032] In the example shown, the user interface object (e.g., 712a-712b, 910a-910h, or 1010a-1010d) is selected (e.g., a focus indicator, which may be described as being around 712a-712b, 910a-910h, or 1010a-1010d) and a visual indication (e.g., highlighting (e.g., its border), text display, magnification) (1508) (e.g., the selected new user interface object) (e.g.,ceasing the indication that the first user interface object has been selected and / or displaying an indication that the third user interface object has been selected (e.g., without indicating that the first user interface object and the third user interface object have been selected). In some embodiments, the indication that the second user interface object was not previously displayed occurs before the first indication that the first user interface object was displayed. In some embodiments, pursuant to determining that the hand gesture is a first type of gesture, the computer system moves the indication from the first user interface object (e.g., an indication that the first user interface object has been selected) (e.g., from being displayed around, next to (e.g., above, below, next to) the first user interface object) to the second user interface object (e.g., an indication that the second user interface object has been selected) (e.g., from being displayed around, next to (e.g., above, below, next to) the second user interface object).

[0211] In some embodiments, a hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) (and while displaying a user interface including a first user interface object, a second user interface object, and a third user interface object) (e.g., while the computer system is operating in a first operating mode) via at least the optical sensor. 610, 620, 630, 640, 650) and pursuant to a determination that the hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) is a second type of gesture (e.g., 610, 620, 630, 640, 650) that is different from the first type of gesture (e.g., a type of hand gesture) (e.g., a multi-finger tap / pinch gesture (e.g., a gesture in which two or more fingers touch each other multiple times) (and In some embodiments, in response to (1506) the first type of gesture being a non-finger tap / pinch gesture (e.g., a clench gesture (e.g., a fist gesture), a multiple clench gesture (e.g., a gesture including multiple clench gestures), a finger spread gesture (e.g., a gesture in which one or more fingers do not touch a portion of the hand), a multiple finger spread gesture (e.g., a gesture including multiple spread gestures), and / or any combination thereof), the computer system, via the display generation component, and display (1510) an indication (e.g., a visual indication (e.g., highlighting (e.g., its border), text display, magnification) (e.g., of the selected previous user interface object) that a third user interface object (e.g., 712a-712b, 910a-910h, or 1010a-1010d) has been selected (e.g., a focus indicator described as being around 712a-712b, 910a-910h, or 1010a-1010d).In some embodiments, the indication that the third user interface object was previously displayed occurs before the first indication that the first user interface object was displayed. In some embodiments, in accordance with determining that the hand gesture is a second type of gesture, the computer system moves the indication from the first user interface object (e.g., an indication that the first user interface object has been selected) (e.g., from being displayed around, next to (e.g., above, below, next to) the first user interface object) to the third user interface object (e.g., an indication that the second user interface object has been selected) (e.g., from being displayed around, next to (e.g., above, below, next to) the third user interface object). In some embodiments, at least two of the indication that the first user interface object is selected, the indication that the second user interface object is selected, and / or the indication that the third user interface object is selected are different sizes. Selecting whether to display the indication that the second user interface object is selected or the indication that the third user interface object is selected based on the type of hand gesture detected provides the user with more control of the system and helps the user navigate the user interface without touching the computer system, which may lead to more efficient control of the user interface for some users.

[0212] In some embodiments, the hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) is detected based on heart rate data determined using data detected via an optical sensor. In some embodiments, the second type gesture (e.g., 630 or 650) is a type of gesture that is multiple instances of the first type gesture (e.g., 620 or 640), such as a multiple finger tap / pinch, a multiple finger spread gesture, and / or a multiple clench gesture. In some embodiments, the second type gesture includes at least one instance of the first type gesture. Selecting whether to display an indication that a second user interface object is selected or an indication that a third user interface object is selected based on the type of hand gesture detected when the second type gesture is a type gesture that is multiple instances of a first type gesture provides the user with more control of the system and helps the user navigate the user interface to perform similar actions differently (e.g., selecting an object to the right versus selecting an object to the left) using similar hand gestures (e.g., when one hand gesture includes the other hand gesture) without touching the computer system, which may lead to more efficient control of the user interface for some users.

[0213] In some embodiments, in response to detecting a hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) via at least the optical sensor, and in accordance with a determination that the hand gesture is a third type of gesture (e.g., 620, 630, 640, or 650) (e.g., a type of hand gesture) different from the first type of gesture and the second type of gesture, the computer system (e.g., via a display generation component) performs an operation (e.g., an action) corresponding to selecting a first user interface object (e.g., selecting a play / pause button, selecting an interaction on a menu, selecting a cancel button, selecting an answer / reject button for an incoming telephone call) (e.g., without displaying a menu including one or more selectable options). In some embodiments, in response to detecting a hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) via at least the optical sensor, and in accordance with a determination that the hand gesture is a fourth type gesture (e.g., 620, 630, 640, or 650) different from the first type gesture, the second type gesture, and the third type gesture (e.g., a type of hand gesture), the computer system, via the display generation component, displays a menu (e.g., without executing an option corresponding to the selection of the first user interface object) including one or more selectable options (e.g., as described below in connection with method 1600).Selecting whether to perform an action corresponding to selecting a first user interface object or to display a menu containing one or more selectable options based on the type of hand gesture detected provides the user with more control of the system and helps the user navigate the user interface without touching the computer system, which may lead to more efficient control of the user interface for some users.

[0214] In some embodiments, prior to detecting a hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e), the computer system (e.g., 600) is in a first operational mode (e.g., an operational mode in which the computer system performs an action (i.e., an operation) described above in response to detecting one or more of a first type, second type, third type, and / or fourth type gesture) (e.g., as described above in connection with FIGS. 7A-7I). In some embodiments, as part of performing an operation (e.g., as described above in connection with FIGS. 11A-11H and 12A-12J) corresponding to selection of a first user interface object (e.g., 1412 or 736a), the computer system transitions the computer system (e.g., 600) from a first operating mode to a second operating mode (e.g., as described above in connection with FIGS. 7I-7U) (e.g., a mode in which a cursor automatically moves across a display, a mode in which a user interface is automatically scrolled in a direction (e.g., up, down, right, left, diagonally), a mode in which detection of one or more of a first type, second type, third type, and / or fourth type gestures causes the computer system to perform an operation that is different from the operation the computer system performs when operating in the first operating mode, etc.).

[0215] In some embodiments, while the computer system (e.g., 600) is in the second operating mode, the computer system detects a second hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) via at least the optical sensor. In some embodiments, in response to detecting a second hand gesture via at least the optical sensor (e.g., while the computer system is in the second operating mode and not in the first operating mode), and in response to determining that the second hand gesture is a first type of gesture (e.g., 620, 630, 640, or 650), the computer system switches the first auto-scrolling operation between an active state (e.g., a resume state) and an inactive state (e.g., a pause state) (e.g., as described above in connection with FIGS. 12C-12E ) (e.g., without reversing the direction of the auto-scrolling operation) (e.g., an operation in which one or more user interface objects are automatically (e.g., without user input) sequentially selected) (e.g., switching the auto-scrolling operation between an active state and an inactive state is a different operation from displaying an indication that the second user interface object is selected). In some embodiments, in accordance with a determination that the hand gesture is a first type gesture and in accordance with a determination that the scrolling operation is in an inactive state (e.g., a paused state, a scroll paused state, a scroll off state), the computer system transitions the automatic scrolling operation from an inactive state to an active state (e.g., resumes the scrolling operation). In some embodiments, in accordance with a determination that the hand gesture is a second type gesture and in accordance with a determination that the scrolling operation is in an active state (e.g., a scroll on state, a resumed state), the computer system transitions the automatic scrolling operation from an active state to an inactive state (e.g., pauses the scrolling operation).In some embodiments, in response to determining that the auto-scrolling operation is active, the computer system displays a notification indicating that the auto-scrolling operation is active. In some embodiments, in response to determining that the auto-scrolling operation is inactive, the computer system displays a notification indicating that the auto-scrolling operation is inactive and / or stops displaying a notification indicating that the auto-scrolling operation is active. In some embodiments, in response to detecting a second hand gesture via at least the optical sensor (e.g., while the computer system is in the second operating mode and not in the first operating mode), in response to determining that the second hand gesture is a second type of gesture, the computer system reverses a first direction of the first auto-scrolling operation (e.g., without switching the auto-scrolling operation between an active and an inactive state) (e.g., reversing the first direction of the auto-scrolling operation is a different operation than displaying an indication that a third user interface object is selected). In some embodiments, as part of reversing the direction of the auto-scrolling operation, the computer system selects user interface objects in a reverse order from the order in which the user interface objects were previously selected and / or reverses an interface scrolling in a direction. Selecting whether to toggle the first auto-scrolling operation between an active and an inactive state or reverse the first direction of the auto-scrolling operation based on the type of hand gesture detected provides the user with more control of the system and helps the user navigate the user interface without touching the computer system, which may lead to more efficient control of the user interface for some users.

[0216] In some embodiments, in response to detecting a second hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) via at least the optical sensor, and in accordance with a determination that the second hand gesture is a third type of gesture (e.g., 610, 620, 630, 640, or 650), the computer system performs a second action, e.g., changing the speed of the auto-scrolling action. In accordance with determining that the second hand gesture is a fourth type of gesture (e.g., 610, 620, 630, 640, or 650), the computer system performs a third action different from the second action (e.g., select a user interface at the current location of the user interface object highlighted by the scrolling action when the second hand gesture was detected and exit the auto-scroll mode). Selecting whether to perform the first action or the second action based on the type of hand gesture detected provides the user with more control of the system and helps the user navigate the user interface without touching the computer system, which may lead to more efficient control of the user interface for some users.

[0217] In some embodiments, while the computer system (e.g., 600) is in the second operating mode, the computer system performs a second auto-scrolling operation that scrolls the sequence of interface objects in a second direction (e.g., as described above in connection with FIGS. 12G-12H). In some embodiments, while performing the second auto-scrolling operation, the computer system detects the end of the sequence of user interface objects (e.g., detects that the scroll position is at or near the last user interface object in the sequence and / or detects a boundary of the user interface) (e.g., as described above in connection with FIGS. 12G-12H). In some embodiments, in response to detecting the end of the sequence of user interface objects, the computer system performs a third auto-scrolling operation that scrolls the sequence of interface objects in a third direction that is different (e.g., opposite) from the second direction (e.g., as described above in connection with FIGS. 12G-12H). By automatically performing a third automatic scrolling operation that scrolls the sequence of the plurality of interface objects in a third direction different from the second direction in response to detecting an end of the sequence of the plurality of user interface objects, the computer system can provide a user with a method of automatically navigating the user interface without the user having to provide additional input to restart / reset the automatic navigation when the automatic navigation has cycled through user interface objects on the user interface.

[0218] In some embodiments, in response to detecting, via at least the optical sensor, a second hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e), and in accordance with determining that the second hand gesture is a fourth type gesture (e.g., 610, 620, 630, 640, or 650), the computer system transitions the computer system from the second operating mode to a third operating mode (and / or terminates / exits the second operating mode). In some embodiments, the third operating mode is the first operating mode. Transitioning the computer system from the second operating mode to the third operating mode in accordance with a determination that the second hand gesture is a fourth type gesture provides the user with more control of the system and helps the user navigate the user interface without touching the computer system, which may lead to more efficient control of the user interface for some users.

[0219] In some embodiments, in accordance with a determination that the second hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) is a first type gesture (e.g., 610, 620, 630, 640, or 650), the computer system displays a notification (e.g., 716) indicating a status of the auto-scrolling operation (e.g., scrolling paused, scrolling stopped). Displaying a notification indicating the status of the auto-scrolling operation in accordance with a determination that the second hand gesture is a first type gesture provides visual feedback to the user that an operation was performed in accordance with the detected hand gesture, which can prevent the user from accidentally performing multiple gestures that may cause the computer system to perform unwanted and / or unintended operations.

[0220] In some embodiments, a third type gesture (e.g., 610, 620, 630, 640, or 650) is a type of gesture that is multiple instances (e.g., multiple finger taps / pinches, multiple finger spread gestures, and / or multiple clench gestures) of a fourth type gesture (e.g., 610, 620, 630, 640, or 650). In some embodiments, a third type gesture includes at least one instance of a fourth type gesture. In some embodiments, a fourth type gesture (e.g., 610, 620, 630, 640, or 650) does not include multiple instances of a first type gesture (e.g., 610, 620, 630, 640, or 650) (and / or a second type gesture), and a third type gesture (e.g., 610, 620, 630, 640, or 650) does not include multiple instances of a second type gesture (e.g., 610, 620, 630, 640, or 650) (and / or a first type gesture) (e.g., as described above in connection with FIG. 6 ). In some embodiments, a fourth type gesture does not include a first type gesture and / or a second type gesture. In some embodiments, a third type gesture does not include a first type gesture and / or a second type gesture.

[0221] In some embodiments, in response to detecting a second hand gesture (e.g., 750e, 750f, 750i, 750l, 750m, 750n, 950a, 950b, 950c, 950e, 950f, 950g, 1050b, 1050c, 1050d, or 1050e) via at least the optical sensor, and in accordance with a determination that a notification (e.g., a notification corresponding to a phone call, an email, a text message, a voicemail message) has been received within a threshold period, and in accordance with a determination that the second hand gesture is a fourth type of gesture, the computer system performs an action associated with the notification (e.g., answering the phone call, responding to / opening the text message and / or email corresponding to the notification, playing the voicemail message) (e.g., as described above in connection with FIG. 7H ). Performing an action associated with a notification in accordance with a determination that the notification was received within a threshold period and in accordance with a determination that the second hand gesture is of a fourth type provides the user with more control of the system and helps the user navigate the user interface without touching the computer system (e.g., having the computer system perform an action associated with the notification), which may lead to more efficient control of the user interface for some users.

[0222] In some embodiments, one or more selectable options (e.g., 732a-732d, 832a, or 1410-1418) include a first selectable user interface object (e.g., 732a-732d, 832a, or 1410-1418) for changing the actions that one or more hand gestures can cause the computer system to perform. In some embodiments, selection of the first selectable user interface object causes the computer system to display multiple settings. In some embodiments, each setting controls the actions that one or more hand gestures can cause the computer system to perform when the one or more hand gestures are detected by the computer system (e.g., as described above in connection with FIGS. 8A-8J). Displaying a menu including a first selectable user interface object for changing the actions that one or more hand gestures can cause the computer system to perform allows the computer system to provide a user with options to perform actions without requiring more complex hand gestures, which reduces the number of hand gestures used to perform actions and allows the user to customize the hand gestures that cause actions to be performed.

[0223] In some embodiments, one or more selectable options (e.g., 732a-732d, 832a, or 1410-1418) include a second selectable option for transitioning the computer system to a fourth operating mode and a third selectable option for transitioning the computer system to a fifth operating mode different from the fourth operating mode. In some embodiments, selection of the second selectable option (e.g., 732a-732d, 832a, or 1410-1418) transitions the computer system to a fourth operating mode (e.g., autoscroll mode, cursor mode (e.g., as described herein in connection with method 1600)). In some embodiments, selection of the third selectable option (e.g., 732a-732d, 832a, or 1410-1418) transitions the computer system to a fifth operating mode (e.g., autoscroll mode, cursor mode (e.g., as described herein in connection with method 1600)). Displaying a menu including the second selectable option for transitioning the computer system to the fourth operating mode and the third selectable option for transitioning the computer system to a fifth operating mode that is different from the fourth operating mode provides the user with more control over the computer system by allowing the user to transition the computer system to different operating modes (e.g., without providing more complex hand gestures) and also reduces the number of hand gestures used to perform actions.

[0224] In some embodiments, one or more selectable options (e.g., 732a-732d, 832a, or 1410-1418) include a fourth selectable option (e.g., 1416) for displaying one or more additional selectable options (e.g., options corresponding to options that perform an action corresponding to an action that is performed when input is detected at the location (e.g., the second location) of the selectable user interface object, options for performing an action such as turning the computer system on / off, displaying a different menu and / or user interface, options corresponding to an action that is performed in response to detecting input via one or more input devices in communication with the computer system). In some embodiments, selection of the fourth selectable option causes the computer system (e.g., 600) to display one or more additional selectable options (e.g., each that, when selected, causes the computer system to perform one or more actions (e.g., different actions)) that were not previously displayed before selection of the fourth selectable option. In some embodiments, in response to detecting the fourth selectable option, the computer system ceases displaying one or more selectable options that were displayed before selection of the fourth selectable option was detected. Displaying a menu that includes a fourth selectable option to display one or more additional options provides the user with more control over the computer system by allowing the user to select to display additional selectable options that were not previously displayed, reduces the number of hand gestures used to perform additional actions, and reduces the number of selectable user interface options that are displayed when the menu is initially displayed, which creates a cleaner user interface.

[0225] In some embodiments, a menu is displayed pursuant to a determination that a particular user interface object (e.g., a selected user interface object, a user interface object surrounded by a focus indicator) is at a first position on the user interface (e.g., as described above in connection with FIG. 11B ) and pursuant to a determination that the particular user interface object is not at the first position on the user interface but is at a second position different from the first position (e.g., as described above in connection with FIG. 11B ). Automatically selecting a position to display a menu based on where the particular user interface object is displayed allows the computer system to avoid displaying a menu at a position of a user interface object that may be of interest to the user (e.g., a selected user interface object) and also reduces the number of inputs that a user would need to make to move a menu from affecting the display of the user interface object.

[0226] In some embodiments, while displaying a third menu (e.g., 732) including one or more selectable options (e.g., 732a-732d, 832a, or 1410-1418) (e.g., a menu including one or more selectable options, a second menu including one or more selectable options), the computer system detects a third hand gesture (e.g., as described above in connection with FIGS. 10A-10E) at least via an optical sensor. In some embodiments, in response to detecting the third hand gesture (e.g., as described above in connection with FIGS. 10A-10E) at least via an optical sensor and in accordance with a determination that the third hand gesture is a fourth type gesture, the computer system stops displaying the third menu including the one or more selectable options. Stopping displaying the menu including the one or more selectable options in accordance with a determination that the third hand gesture is a fourth type gesture provides the user with more control of the system and helps the user navigate the user interface without touching the computer system, which may lead to more efficient control of the user interface for some users.

[0227] In some embodiments, after displaying a user interface including a first user interface object (e.g., 732a-732d, 832a, or 1410-1418), the computer system detects, at least via an optical sensor, a fourth hand gesture. In some embodiments, in response to detecting the fourth hand gesture via at least the optical sensor, and in accordance with determining that the fourth hand gesture is a fifth type gesture that is different from the first type gesture and the second type gesture (and / or the first type gesture) (e.g., in some embodiments, the fifth type gesture is the same as the fourth type gesture), the computer system transitions the computer system from an inactive state (e.g., a sleep state, a hibernate state, a low power mode state, a state in which display generating components are at a lower brightness than display generating components in an active state) to an active (e.g., a wake state, a full power state) state (or transitions the computer system from an active state to an inactive state) (e.g., as described above in connection with FIG. 14 (e.g., 1416b)). Transitioning the computer system from an inactive state to an active state pursuant to a determination that the fourth hand gesture is a fifth type gesture provides the user with more control of the system without touching the computer system, which may lead to more efficient control of the user interface for some users.

[0228] In some embodiments, the computer system detects, via at least the optical sensor, a fifth hand gesture while displaying, via the display generating component, an indication that the second user interface object has been selected. In some embodiments, in response to detecting the fourth hand gesture via at least the optical sensor, in accordance with a determination that the fifth hand gesture is a first type gesture, the computer system displays, via the display generating component, an indication that the fourth first user interface object (e.g., the selected next user interface object) has been selected, and in accordance with a determination that the fifth hand gesture is a second type gesture, the computer system displays, via the display generating component, an indication that the first user interface object (e.g., the selected previous user interface object) has been selected. In some embodiments, the computer system detects, via at least the optical sensor, a particular hand gesture while displaying, via the display generating component, an indication that the third user interface object has been selected. In some embodiments, in response to detecting the particular hand gesture and in accordance with a determination that the particular hand gesture is a gesture of the first type, the computer system displays an indication that a fourth user interface object, different from the first, second, and third user interface objects, has been selected. In some embodiments, in response to detecting the particular hand gesture and in accordance with a determination that the particular hand gesture is a gesture of the second type, the computer system displays an indication that the first user interface object has been selected.Selecting whether to display an indication that a fourth first user interface object is selected or an indication that a first user interface object is selected based on the type of hand gesture detected while there is an indication that a second user interface object is selected provides the user with more control of the system and helps the user navigate the user interface without touching the computer system (e.g., consistently navigate the user interface in the same way), which may lead to more efficient control of the user interface for some users.

[0229] In some embodiments, while displaying a user interface including the first user interface object, the computer system detects a request to transition the computer system from the first operational mode to a fourth operational mode (e.g., as described above in connection with FIGS. 13A-13G and 14 ) (e.g., an operational mode in which the computer system does not perform an action in response to detecting a hand gesture and / or a mode in which the computer system does not detect one or more hand gestures). In some embodiments, in response to detecting the request to transition the computer system from the first operational mode to the fourth operational mode, the computer system transitions the computer system from the first operational mode to the fourth operational mode (e.g., as described above in connection with FIGS. 7A-7C ). In some embodiments, while the computer system is in the fourth operational mode and displaying a user interface including the first user interface object, the second user interface object, the third user interface object, and an indication that the first user interface object has been selected, the computer system detects, via at least an optical sensor, a sixth hand gesture (e.g., as described above in connection with FIGS. 7A-7C ).In some embodiments, in response to detecting a sixth hand gesture via at least the optical sensor (e.g., while the computer system is in the fourth operational mode), following a determination that the hand gesture is a first type gesture (e.g., as described above in connection with FIGS. 7A-7C), the computer system continues to display an indication that the first user interface object has been selected (without displaying, via the display generating component, an indication that the second user interface object has been selected and / or an indication that the third user interface object has been selected and / or without performing an action) (e.g., as described above in connection with FIGS. 7A-7C). Following a determination that the hand gesture is a second type gesture, the computer system continues to display an indication that the first user interface object has been selected (without displaying, via the display generating component, an indication that the third user interface object has been selected and / or an indication that the second user interface object has been selected and / or without performing an action) (e.g., as described above in connection with FIGS. 7A-7C). Continuing to display an indication that the first user interface object is selected pursuant to a determination that the hand gesture is a first type gesture, and pursuant to a determination that the hand gesture is a first type gesture (e.g., while the computer system is in the fourth operating mode), provides the user with further control of the system to control the computer system's detection of the hand gesture and / or performance of an action in response to the detection of the hand gesture.

[0230] It should be noted that the process details described above with respect to method 1500 (e.g., FIG. 15) are also applicable in a similar manner to the methods described herein. For example, method 1500 optionally includes one or more of the characteristics of the various methods described herein with reference to method 1600. For example, method 1500 may be performed when the computer system is switched from operating in an operational mode in which the computer system operates using the techniques of method 1600. For the sake of brevity, these details will not be repeated below.

[0231] 16 is a flow diagram illustrating a method of navigating using a computer system, according to some embodiments. Method 1600 is performed in a computer system (e.g., 100, 300, 500) (e.g., a wearable device (e.g., a smart watch)) that communicates with a display generation component (e.g., a display controller, a touch-sensitive display system). In some embodiments, the computer system communicates with one or more sensors (e.g., one or more biometric sensors (e.g., heart rate sensor, camera), gyroscope, accelerometer). In some embodiments, the computer system communicates with one or more input devices (e.g., a touch-sensitive surface, a microphone). In some embodiments, the computer system communicates with one or more output devices (e.g., one or more speakers, one or more microphones). Some operations of method 1500 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0232] As described below, method 1600 provides an intuitive way to navigate a user interface using hand gestures. The method reduces the cognitive burden on a user when navigating a user interface using hand gestures, thereby creating a more efficient human-machine interface. For battery-operated computing devices, allowing a user to navigate a user interface more quickly and efficiently conserves power and extends the time between battery charges.

[0233] The computer system, via a display generation component, displays (1602) a user interface (e.g., 710, 720, 810, or 780) including a selectable user interface object (e.g., 720c, 732c, 810d, or 832a) and a cursor (e.g., 742) (e.g., a user interface object, a non-selectable user interface object) displayed at a first position on the user interface (e.g., a position different from the position of the user interface object).

[0234] While displaying a selectable user interface object (e.g., 720c, 732c, 810d, or 832a) and a cursor (e.g., 742) at a first position on a user interface (e.g., 710, 720, 810, or 780), the computer system detects (1604) a request to move the cursor (e.g., 742) from the first position to a second position (e.g., a position different from the first position) on the user interface (e.g., via a hand gesture (e.g., a wrist tilt and / or one or more other hand gestures as described above in connection with method 1500). In some embodiments, the request to move the cursor is detected based on movement of the computer system, movement of one or more devices (e.g., a mouse) associated with the computer system, and / or one or more inputs / gestures (e.g., a swipe gesture) detected on a display generating component of the computer system.

[0235] In response to detecting 1606 a request to move the cursor from a first position to a second position (e.g., 750p, 850c, 850d, or tilt in Figures 7Y or 7Z), the computer system displays 1608 the cursor at the second position (e.g., moving the cursor from the first position to the second position). In some embodiments, as part of displaying the cursor at the second position, the computer system moves the cursor from the first position to the second position. In some embodiments, the computer system moves the cursor according to the direction the computer system is moved.

[0236] In response to detecting 1606 a request to move the cursor from a first position to a second position (e.g., 750p, 850c, 850d, or tilting in Figures 7Y or 7Z), the computer system may perform an action (e.g., animation of a visual indication (e.g., of the object), changing color, blinking, counting down / up) in accordance with a determination that the second position corresponds to a location of a selectable user interface object (e.g., 720c, 732c, 810d, or 832a) (and / or corresponds to an area (e.g., an edge) of the display). An animation is displayed (1610) that provides a visual indication (e.g., 744) of the amount of time a cursor (e.g., 742) needs to be placed at the second position to perform a desired action (e.g., flip, increase / decrease in size, fade in / fade out), and the visual indication (e.g., 742) is updated over a period of time (e.g., a period of time equal to or less than a threshold period) (e.g., while the cursor / visual indication is displayed at the second position (e.g., without performing an action including selecting a selectable user interface object)). In some embodiments, while displaying the animation (e.g., for less than the period of time), the computer system detects a request to move the cursor, and in response to detecting the second request, the computer system stops displaying the animation. In some embodiments, after displaying the animation, the computer system re-displays the cursor. In some embodiments, the cursor is and / or includes a visual indication.

[0237] In response to detecting 1606 a request to move the cursor from a first position to a second position (e.g., 750p, 850c, 850d, or tilt in FIG. 7Y or 7Z), the computer system, in accordance with a determination that the second position does not correspond to the position of a selectable user interface object (e.g., 720c, 732c, 810d, or 832a) (and / or does not correspond to an area (e.g., an edge) of the display), the computer system ceases 1612 displaying the animation (e.g., providing an indication (e.g., 744)) (and continues to display the cursor) (e.g., without performing an action that includes selecting the selectable user interface object). In some embodiments, as part of displaying the animation providing the visual indication, the computer system replaces the display of the cursor with the visual indication. In some embodiments, while displaying the animation, the computer system detects a request to move the cursor from the second position to a third position, and in response to detecting the request to move the cursor from the third position to the second position, displays the cursor at the third position (e.g., without displaying and / or replacing a visual indication with the cursor). In some embodiments, the third position is different from the second position and / or the first position.

[0238] In some embodiments, in response to detecting a request (e.g., 750p, 850c, 850d, or tilting in FIG. 7Y or 7Z) to move a cursor (e.g., 742) from a first position to a second position, and in response to determining that the second position corresponds to the position of a selectable user interface object (e.g., 720c, 732c, 810d, or 832a) and that the cursor (e.g., 742) has been displayed at the second position for longer (e.g., a non-zero duration) than a first threshold period (e.g., 1-5 seconds) (e.g., a period equal to or greater than the time for which an animation is displayed), the computer system performs an action (e.g., as described in connection with FIGS. 7I-7U, as described above in connection with FIGS. 8A-8J). In some embodiments, as part of performing the action, the computer system selects the selectable user interface object (e.g., as described in connection with FIGS. 7I-7U, as described above in connection with FIGS. 8A-8J) (e.g., highlighting the selectable user interface object, launching a menu corresponding to the selectable user interface object, launching an application corresponding to the selectable user interface object). Automatically performing an operation including selecting a selectable user interface object in accordance with a determination that the second position corresponds to a position of a selectable user interface object and that the cursor is displayed at the second position for longer than a first threshold period enables the computer system to automatically select a user interface object when a predetermined condition is met. Performing an operation including selecting a selectable user interface object in accordance with a determination that the second position corresponds to a position of a selectable user interface object and that the cursor is displayed at the second position for longer than a first threshold period provides the user with more control over the computer system by giving the user the ability to select a user interface object when the cursor is positioned (e.g., by the user) at a particular position for a particular period.

[0239] In some embodiments, in response to detecting a request to move a cursor (e.g., 742) from a first position to a second position, and in accordance with a determination that the second position corresponds to the position of a selectable user interface object (e.g., 720c, 732c, 810d, or 832a) and the cursor (e.g., 742) is displayed at the second position for longer (e.g., a non-zero duration) (e.g., 1-5 seconds) (e.g., a duration equal to or greater than the time for which an animation is displayed), the computer system performs an operation (e.g., as described in conjunction with FIGS. 7I-7U). In some embodiments, performing the operation includes launching an application corresponding to the selectable user interface object (e.g., as described in conjunction with FIGS. 7I-7U). Automatically performing an operation including launching an application corresponding to the selectable user interface object in accordance with a determination that the second position corresponds to the position of a selectable user interface object and the cursor is displayed at the second position for longer than the first threshold duration enables the computer system to automatically launch the application corresponding to the selectable user interface object when a predetermined condition is met. Performing an operation including launching an application corresponding to the selectable user interface object in accordance with a determination that the second position corresponds to the position of a selectable user interface object and that the cursor is displayed at the second position for longer than the first threshold period provides the user with more control over the computer system by giving the user the ability to launch an application corresponding to the selectable user interface object when the cursor is positioned (e.g., by the user) at a particular position for a particular period of time.

[0240] In some embodiments, in response to detecting a request to move the cursor from the first position to the second position and in accordance with a determination that the second position does not correspond to the position of a selectable user interface object (e.g., 720c, 732c, 810d, or 832a), the computer system refrains from performing an action (e.g., as described above in connection with FIG. 8C ) (e.g., refrain from displaying, via a display generation component, a menu including one or more user interface objects for performing one or more actions at the second position, refrain from launching an application corresponding to the selectable user interface object). In some embodiments, in accordance with a determination that the second position does not correspond to the position of a selectable user interface object and that the cursor has been displayed and / or not been displayed for more than a threshold period, the computer system refrains from performing an action. Choosing not to perform an action in accordance with a determination that the second position does not correspond to the position of a selectable user interface object provides the computer system with the ability to refrain from performing an action when a predetermined condition is not met, helping the computer system avoid performing unnecessary and / or unintended actions.

[0241] In some embodiments, in response to detecting a request to move a cursor (e.g., 742) from a first position to a second position, and in accordance with a determination that the cursor (e.g., 742) has not been displayed at the second position for a period (e.g., a non-zero period) greater than a third threshold period (e.g., 1-5 seconds) (e.g., a period equal to or greater than the time for which an animation is displayed), the computer system refrains from performing an action (e.g., as shown in FIG. 8D ). In some embodiments, in accordance with a determination that the second position corresponds and / or does not correspond to the position of a selectable user interface object and that the cursor has not been displayed at the second position for a period greater than the threshold period, the computer system refrains from performing an action. Choosing not to perform an action in accordance with a determination that the cursor has not been displayed at the second position for a period greater than the third threshold period provides the computer system with the ability to refrain from performing an action when a predetermined condition is not met, helping to prevent the computer system from performing unnecessary and / or unintended actions.

[0242] In some embodiments, in response to detecting a request to move a cursor (e.g., 742) from a first position to a second position, and in accordance with determining that the second position corresponds to (e.g., is at) a position within a region of a display generation component (e.g., 742 of FIG. 7Q or 742 of FIG. 7Y), and that the cursor is displayed at the second position for more than a fourth threshold period (e.g., a non-zero period) (e.g., 1-5 seconds) (e.g., a period equal to or greater than the time for which the animation is displayed), the computer system performs a second operation including displaying (and ceasing to display) a second user interface (e.g., 780 or 720) that is different from the user interface (e.g., 710 or 718) (while continuing to display the cursor) (without displaying a menu) (e.g., different from an operation (e.g., selecting a user interface object)). In some embodiments, as part of displaying the second user interface that is different from the user interface, the computer system displays an animation (e.g., a slide animation, a fade animation, a dissolve animation, and / or a slide animation) of the second user interface replacing the user interface. In some embodiments, the animation includes sliding the user interface off the screen toward the region and / or sliding a second user interface object on the screen toward the region. In some embodiments, pursuant to a determination that the second position corresponds to a position within the region of the display and that the cursor has not been displayed at the second position for longer than a threshold period, the computer system ceases performing a second action, including displaying the second user interface, and / or continues displaying the user interface. In some embodiments, the second threshold period is the same period as the threshold period. In some embodiments, the second threshold period is a different threshold period than the threshold period. In some embodiments, the region does not include one or more selectable user interface objects.In some embodiments, in accordance with a determination that the second position corresponds to a position within the region (e.g., is there), the computer system displays an animation. In some embodiments, in accordance with a determination that the second position corresponds to a position within the region (e.g., is there), the computer system ceases displaying the animation. In some embodiments, in accordance with a determination that the second position does not correspond to a position within the region (e.g., is there), the computer system displays the animation. In some embodiments, in accordance with a determination that the second position does not correspond to a position within the region (e.g., is there), the computer system ceases displaying the animation. In accordance with a determination that the second position corresponds to a position within the region of the display generating component and the cursor is displayed at the second position for longer than a fourth threshold period, automatically performing a second operation including displaying a second user interface different from the user interface enables the computer system to display a different user interface when the cursor is within the particular region of the display generating component. Performing a second operation including displaying a second user interface different from the user interface in accordance with a determination that the second position corresponds to a position within the area of ​​the display generating component and that the cursor is displayed at the second position for longer than a fourth threshold period provides the user with more control over the computer system by giving the user the ability to display a different user interface when a predetermined condition is met.

[0243] In some embodiments, the computer system performs an action pursuant to a determination that the second position corresponds to the position of a selectable user interface object (e.g., 720c, 732c, 810d, or 832a) and that the cursor (e.g., 742) is displayed at the second position for a period (e.g., a non-zero period) greater than a fifth threshold period (e.g., 1-5 seconds) (e.g., while displaying the cursor at the second position) (e.g., a period greater than or equal to the time for which the animation is displayed). In some embodiments, performing the action includes displaying, via the display generation component, a menu (e.g., 732) at the second location including one or more selectable options (e.g., 732a-732d and / or 1410-1418) (e.g., user interface objects) for performing one or more actions (e.g., one or more different actions) (e.g., an action (e.g., an action to launch an application) when a tap input (e.g., and / or a first type of input) (e.g., single-tap input / multi-tap input) is detected at the second location, an action (e.g., an action to delete a user interface object) when a long press input (e.g., and / or a second type of input different from the first type of input) is detected at the second location, an action (e.g., an action to delete a user interface object) when a swipe input (e.g., a third type of input different from the first type of input and the second type of input) is detected at the second location, an action to initiate an auto-scroll action at the second location). In some embodiments, the menu is displayed concurrently with the selectable user interface objects and / or a cursor. In some embodiments, when the menu is displayed, one or more portions of the user interface (e.g., portions that do not include selectable user interface objects and / or the cursor) are stopped from being displayed. In some embodiments, the menu is displayed in a location on the user interface that does not include selectable user interface objects and / or the cursor (e.g., top / bottom).In some embodiments, in accordance with a determination that the selectable user interface object and / or cursor is displayed at the first particular location, the menu is displayed at a second particular location (e.g., different from the first location and on an opposite side of the display from the first particular location) (without being displayed at the first particular location). In some embodiments, in accordance with a determination that the selectable user interface object and / or cursor is not displayed at the first particular location, the menu is displayed at the first particular location (without being displayed at the second particular location). In accordance with a determination that the second location corresponds to the location of the selectable user interface object and that the cursor is displayed at the second location for longer than the first threshold period, automatically performing an operation including displaying a menu including one or more selectable options for performing one or more operations at the second location enables the computer system to automatically display the menu when a predetermined condition is met. Performing an action including displaying a menu including one or more selectable options for performing one or more actions in accordance with a determination that the second position corresponds to the position of a selectable user interface object and that the cursor is displayed at the second position for longer than the first threshold period provides the user with more control over the computer system by giving the user the ability to display a menu for performing one or more actions after the cursor is positioned (e.g., by the user) at a particular position for a particular period of time.

[0244] In some embodiments, one or more selectable options (e.g., 732a-732d) include a first selectable option (e.g., 832a, 1410a, 1410b, 1410c, or 1412) for performing a selection operation, and selection of the first selectable option causes the computer system to perform the selection operation (e.g., an action to be performed when a tap is received at the second location) at a second location (e.g., on a selectable user interface object). In some embodiments, in response to detecting selection of the first selectable option, the computer system performs the selection operation including launching an application associated with the selectable user interface object. In some embodiments, in response to detecting selection of the first selectable option, the computer system performs the selection operation including emphasizing (e.g., highlighting) the selectable user interface object displayed at the second location. Displaying a menu including first selectable options for performing the selection operation provides the user with more control over the computer system by allowing the user to have the computer system perform the selection operation (e.g., without providing more complex hand gestures) and also reduces the number of hand gestures used to perform operations.

[0245] In some embodiments, the one or more selectable options include a second selectable option (e.g., 832a) for performing an action (e.g., launching an application in response to the input (e.g., tap, press, swipe), moving a selectable user interface object displayed at the second location in response to the input (e.g., tap, press, swipe), displaying a notification (e.g., pop-up) corresponding to the selectable user interface object displayed at the second location) that corresponds to (e.g., is) an action that is performed (and / or would be performed) in response to an input (e.g., tap, press, swipe) (and / or gesture) being detected (e.g., by a computer system) at the second location, and selection of the second selectable option causes the computer system to perform the action that corresponds to the action that is performed in response to an input being detected at the second location (e.g., without an input being detected at the second location). Displaying a menu including second selectable options for performing an action corresponding to the action performed in response to the input being detected at the second location provides the user with more control over the computer system (e.g., without providing more complex hand gestures and without the user touching the computer system and / or display generating components) and also reduces the number of hand gestures used to perform the actions by allowing the user to cause the computer system to perform the action performed in response to the input being detected at the second location.

[0246] In some embodiments, the one or more selectable options include a third selectable option (e.g., 732a, 1410c, or 1412) for performing an auto-scroll operation (e.g., as described in connection with method 1500), and selection of the third selectable option causes the computer system to automatically scroll through a plurality of selectable user interface objects that comprise the selectable user interface object. In some embodiments, as part of automatically scrolling through a plurality of selectable user interface objects that comprise the selectable user interface object, the computer system initiates auto-scrolling from a second position (e.g., from a selectable user interface object displayed in the second position). In some embodiments, as part of automatically scrolling through a plurality of selectable user interface objects that comprise the selectable user interface object, the computer system sequentially highlights (e.g., highlights) one or more selectable user interface objects (e.g., as described in connection with method 1500). Displaying a menu that includes a third selectable option for performing an autoscroll operation provides the user with more control over the computer system by allowing the user to have the computer system automatically scroll through multiple selectable user interface objects, including the selectable user interface object (e.g., without providing more complex hand gestures), and also reduces the number of hand gestures used to perform the operation.

[0247] In some embodiments, the one or more selectable options include a fourth selectable option for displaying one or more additional options (e.g., 1416) (e.g., an option corresponding to an option for performing an action corresponding to an action that is performed when input is detected at the location (e.g., the second location) of the selectable user interface object, an option for performing an action such as turning the computer system on / off, displaying a different menu and / or user interface, and / or an option corresponding to an action that is performed in response to detecting input via one or more input devices in communication with the computer system). In some embodiments, selection of the fourth selectable option causes the computer system to display one or more additional options (e.g., 832a and the menus displayed in FIG. 8J) that were not previously displayed before selection of the fourth selectable option was detected. In some embodiments, in response to detecting the fourth selectable option, the computer system stops displaying one or more selectable options that were displayed before selection of the fourth selectable option was detected. Displaying a menu including a fourth selectable option to display additional options of one or more options provides the user with more control over the computer system by allowing the user to select to display additional selectable options that were not previously displayed, reduces the number of hand gestures used to perform additional actions, and reduces the number of selectable user interface options that were not previously displayed before selection of the fourth selectable option is detected.

[0248] In some embodiments, one or more additional options (e.g., 832a and menus displayed in FIG. 8J ) that were not previously displayed before selection of the fourth selectable option (e.g., 1414 or 1416) was detected include specific additional options (e.g., 1414a-1414d or 1416a-1416c), and selection of the specific additional options does not cause the computer system to perform an operation that is not performed in the second location (e.g., an exit operation, an operation that closes a menu). In some embodiments, one or more selectable options do not include a selection operation that, when selected, causes the computer system to perform an operation (e.g., any operation) that is not performed in the second location (e.g., initiated in the second location, performed in the second location, and / or includes the second location). Displaying a menu that includes one or more additional options that were not previously displayed before selection of the fourth selectable option was detected includes providing the user with more control over the computer system and reducing the number of hand gestures used to perform operations that are not performed in the second location by allowing the user to select options where the specific additional options perform operations that are not performed in the second location.

[0249] In some embodiments, a computer system (e.g., 600) communicates with one or more input devices (e.g., 602a-602c). In some embodiments, the one or more selectable options include a fifth selectable option (e.g., 732a, 1410c, or 1416b) for performing an action corresponding to (e.g., is) an action that is performed (and / or will be performed) in response to detecting input via one or more input devices (e.g., a hardware button (e.g., a smartwatch crown, a rotatable hardware button, a press / release hardware button), a hardware slider) (e.g., pressing (e.g., single and / or multiple presses) on a hardware input device to display a menu, initiating a payment operation, initiating powering off the computer system, initiating use of voice assistance, rotating a hardware input device to move a cursor from one position to another, and / or rotating a hardware input device to zoom, scroll, and / or adjust one or more components of a user interface). In some embodiments, selection of the fifth selectable option causes the computer system to perform an action corresponding to an action that was performed in response to detecting input via one or more input devices (e.g., without detecting input on one or more input devices). Displaying a menu including a fifth selectable option for performing an action corresponding to an action that was performed in response to detecting input via one or more input devices provides the user with more control over the computer system and reduces the number of hand gestures used to perform actions by allowing the user to select to perform an action that corresponds to an action that was performed in response to detecting input via one or more input devices (e.g., without providing more complex hand gestures and without the user touching one or more input devices).

[0250] In some embodiments, the one or more selectable options include a sixth selectable option (e.g., 732a-732d or 1410-1418) and a seventh selectable option (e.g., 732a-732d or 1410-1418) (e.g., different from the sixth selectable option). In some embodiments, while displaying the menu (e.g., 732), the computer system detects a request to move a cursor from a second position to a third position on the user interface (e.g., 750p, 850c, 850d, or tilt in FIG. 7Y or 7Z). In some embodiments, the second request to move the cursor is detected based on movement of the computer system, movement of one or more devices (e.g., a mouse) associated with the computer system, and / or one or more inputs / gestures (e.g., a swipe gesture) detected on a display generating component of the computer system. In some embodiments, in response to detecting a request to move the cursor from the second position to the third position on the user interface, the computer system performs a first action corresponding to the sixth selectable option (e.g., without performing a second action) in accordance with a determination that the third position corresponds to the position of a sixth selectable option and the cursor is displayed at the third position for longer than a sixth threshold period (e.g., a non-zero period) (e.g., 1 to 5 seconds) (e.g., a period equal to or longer than the time for which an animation is displayed); and performs a second action different from the first action (e.g., without performing the first action) in accordance with a determination that the third position corresponds to the position of a seventh selectable option and the cursor is displayed at the third position for longer than the sixth threshold period. In some embodiments, in accordance with a determination that the third position corresponds to the position of the sixth selectable option and the cursor has not been displayed at the third position for longer than the third threshold period, the computer system aborts execution of the first action. In some embodiments, in accordance with a determination that the third position corresponds to the position of the seventh selectable option and the cursor has not been displayed at the third position for longer than the third threshold period, the computer system aborts execution of the first action. In some embodiments, the third threshold period is the same period as the threshold period.In some embodiments, the third threshold period is a different threshold period than the threshold period. Performing different actions based on where the cursor is displayed over the threshold period provides the user with more control over the computer system to perform different actions based on the position of the cursor.

[0251] In some embodiments, the one or more actions include causing the computer system (e.g., 600) to display a user interface of the application corresponding to the selectable user interface object (e.g., 720c, 732c, 810d, or 832a) (e.g., as described above in connection with FIG. 8J) (without exiting the first mode) (e.g., while displaying the cursor at a second position, and the second position corresponding to the selectable user interface object).

[0252] In some embodiments, the one or more operations include transitioning the computer system from a first operating mode to a second operating mode (e.g., as described above in connection with 732a and / or 1412) (e.g., an operating mode in which an operation (e.g., auto-scrolling operation, motion pointer operation) is initiated at (and / or initiated from) the second position) (e.g., while displaying a cursor at a second position, the second position corresponding to a selectable user interface object) (without launching an application corresponding to the selectable user interface object).

[0253] In some embodiments, after displaying a menu (e.g., 732) including one or more selectable options (e.g., when the menu is displayed, one or more menu objects are displayed), the computer system detects a request to display a second user interface that is different from the user interface (e.g., as described above in connection with FIGS. 7I-7U and 8A-8J). In some embodiments, in response to detecting the request to display the second user interface, the computer system displays the second user interface (while operating in the first mode of operation). In some embodiments, the second user interface does not include a menu, but includes second selectable user interface objects (e.g., 732a-732d or 1410-1418) (e.g., different from the selectable user interface objects) and a cursor (e.g., 744 (e.g., as described above in connection with FIGS. 7I-7U and 8A-8J)). In some embodiments, while displaying the second selectable user interface object and the cursor, the computer system detects a request to move the cursor from a fourth position on the second user interface to a fifth position on the second user interface (e.g., as described above in connection with FIGS. 7I-7U and 8A-8J). In some embodiments, the third request to move the cursor is detected based on movement of the computer system, movement of one or more devices associated with the computer system (e.g., a mouse), and / or one or more inputs / gestures (e.g., a swipe gesture) detected on a display generating component of the computer system. In some embodiments, in response to detecting the request to move the cursor from the fourth position on the second user interface to the fifth position on the second user interface, the computer system displays the cursor at the fifth position on the second user interface (e.g., as described above in connection with FIGS. 7I-7U and 8A-8J).In some embodiments, in response to detecting a request to move the cursor from a fourth position on the second user interface to a fifth position on the second user interface, the computer system, pursuant to determining that the fifth position corresponds to the position of a second selectable user interface object and that the cursor is displayed at the second position for longer (e.g., a non-zero duration) than a seventh threshold period (e.g., 1-5 seconds) (e.g., a period equal to or greater than the time for which the animation is displayed), causes the computer system, via the display generation component, to re-display (e.g., as described above in connection with Figures 7I-7U and 8A-8J) a menu (e.g., 732) including one or more selectable options (e.g., when the menu is displayed, , one or more menu objects are displayed. In some embodiments, the menu is ceased from being displayed pursuant to a determination that the fifth position does not correspond to the position of a second selectable user interface object and / or the cursor has not been displayed at the second position for more than a seventh threshold period. By automatically selecting to re-display the menu pursuant to a determination that the fifth position corresponds to the position of a second selectable user interface object and the cursor has been displayed at the second position for more than a seventh threshold period, the computer system can provide a consistent menu to the user when the same set of predetermined conditions are met for different selectable user interface objects.

[0254] In some embodiments, a request to move a cursor (e.g., 742) from a first position to a second position is detected when it is determined that the computer system (e.g., 600) is tilted in a particular direction (e.g., 750p, 850c, 850d, or tilt in FIG. 7Y or 7Z) (e.g., one side (e.g., right side, left side) of the computer system is higher / lower than another side of the computer system). In some embodiments, the determination is made using data detected via one or more gyroscopes in communication with the computer system. In some embodiments, the particular direction is from the higher side of the computer system toward the lower side of the computer system. In some embodiments, the cursor (e.g., 742) is moved in a direction corresponding to the particular direction.

[0255] In some embodiments, before displaying the user interface including the selectable user interface object (e.g., 720c, 732c, 810d, or 832a) and the cursor (e.g., 742) displayed at a first position on the user interface, the computer system displays a third user interface. In some embodiments, while displaying the third user interface (e.g., 710, 720, 810, or 780) (and in some embodiments, the user interface includes the selectable user interface object), the computer system detects a request to enter the first operational mode (e.g., 750w, 850a). In some embodiments, in response to detecting the request to enter the first operational mode, the computer system transitions the computer system (e.g., 600) from a second operational mode (e.g., different from the first operational mode) to the first operational mode. In some embodiments, in response to detecting the request to enter the first operational mode, the computer system displays a cursor (e.g., at a first position) (e.g., and / or the user interface including the selectable user interface object and the cursor displayed at a first position on the user interface). Displaying the cursor in response to detecting a request to enter the first operating mode provides visual feedback to the user that the computer system is operating in the first operating mode (e.g., one or more user actions can cause the computer system to perform one or more particular operations because the computer system is in the first operating mode).

[0256] In some embodiments, as part of detecting a request to enter the first operating mode, the computer system detects that the computer system has been shaken (e.g., while the computer system is in the second operating mode) (e.g., 750w, 850a). Transitioning the computer system from the second operating mode to the first operating mode in response to detecting that the computer system has been shaken provides the user with more control over the computer system by allowing the user to switch between modes by shaking the computer system (e.g., without providing input on a display generating component of the device).

[0257] In some embodiments, while the computer system is in the first mode, the computer system detects that the computer system (e.g., 600) has been shaken (e.g., 750w, 850a). In some embodiments, in response to detecting that the computer system has been shaken, the computer system transitions the computer system from the first operating mode to a third operating mode (and in some embodiments, the third operating mode is a second operating mode) (e.g., the first operating mode as described above in connection with method 1500). Transitioning the computer system from the first operating mode to the third operating mode in response to detecting that the computer system has been shaken provides the user with more control over the computer system by allowing the user to switch modes by shaking the computer system (e.g., without providing input on a display generating component of the device).

[0258] In some embodiments, as part of transitioning a computer system (e.g., 600) from a first operating mode to a third operating mode, the computer system stops displaying a cursor (e.g., 742). In some embodiments, in response to detecting that the computer system has been shaken (e.g., while the computer system is in the first mode), the computer system stops displaying the cursor. Stopping displaying the cursor in response to detecting that the computer system has been shaken provides feedback to the user that the computer system is not operating in the first operating mode (and / or that one or more user actions cannot cause the computer system to perform one or more particular operations because the computer system is not in the first operating mode).

[0259] In some embodiments, while the computer system is in the third operating mode and a cursor (e.g., 742) is displayed, the computer system detects a request to move the cursor from the sixth position to the seventh position. In some embodiments, in response to detecting a request to move the cursor from the sixth position to the seventh position (e.g., 750p, 850c, 850d, or a tilt in FIG. 7Y or 7Z) (e.g., while the computer system is in the third operating mode), the computer system displays the cursor at the seventh position. In some embodiments, in response to detecting a request to move the cursor from the sixth position to the seventh position (e.g., 750p, 850c, 850d, or a tilt in FIG. 7Y or 7Z) (e.g., while the computer system is in the third operating mode), and in accordance with a determination that the seventh position corresponds to the position of a selectable user interface object and the cursor is displayed at the seventh position for longer (e.g., a non-zero duration) than an eighth threshold period (e.g., 1 to 5 seconds) (e.g., a period equal to or greater than the time for which the animation is displayed), the computer system ceases execution of the action. Rescinding the execution of an action pursuant to a determination that the seventh position corresponds to the position of a selectable user interface object and that the cursor is displayed at the seventh position for longer than an eighth threshold period provides the user with more control over the computer system to control when a particular hand gesture will execute a particular action (e.g., while the computer system is in the third operating mode).

[0260] In some embodiments, in response to detecting a request to move a cursor (e.g., 742) from a first position to a second position and in accordance with a determination that the second position corresponds to the position of a selectable user interface object (e.g., 720c, 732c, 810d, or 832a) and that the cursor (e.g., 742) has been displayed at the second position for longer (e.g., a non-zero period) than a ninth threshold period (e.g., 1-5 seconds) (e.g., while displaying the cursor at the second position) (e.g., a period longer than an animation is displayed), the computer system performs an action. In some embodiments, as part of performing the action, in accordance with a determination that one or more settings (e.g., user settings) of the computer system are in a first state, the computer system displays a second menu including one or more selectable options (e.g., user interface objects) for performing one or more actions (e.g., one or more different actions) at the second position without launching a second application corresponding to the selectable user interface object. In some embodiments, as part of performing the operation, in accordance with determining that one or more settings (e.g., user settings) of the computer system are in a first state, the computer system launches a second application corresponding to the selectable user interface object to perform one or more operations (e.g., one or more different operations) in a second location without displaying a second menu including one or more selectable options (e.g., user interface objects). Selecting whether to launch the second application and / or display the second menu when a predetermined condition is met provides the user with more control over the computer system to change whether one or more actions cause an application to be launched and / or a menu to be displayed.

[0261] It should be noted that the process details described above with respect to method 1600 (e.g., FIG. 16) are also applicable in a manner similar to the methods described herein. For example, method 1600 optionally includes one or more of the characteristics of the various methods described herein with reference to method 1500. For example, method 1600 may be performed when the computer system is switched from operating in an operational mode in which the computer system operates using the techniques of method 1500. For the sake of brevity, these details will not be repeated below.

[0262] The foregoing has been described with reference to specific embodiments for purposes of explanation. However, the exemplary discussion above is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teachings. The embodiments have been chosen and described to best explain the principles of the technology and its practical applications so that others skilled in the art can best utilize the technology and various embodiments with various modifications as suited to the particular applications intended.

[0263] Although the present disclosure and examples have been fully described with reference to the accompanying drawings, it should be noted that various changes and modifications will be apparent to those skilled in the art, and such changes and modifications are to be understood as being included within the scope of the present disclosure and examples, as defined by the claims.

[0264] As mentioned above, one aspect of the present technology is the collection and use of data available from various sources to improve hand gesture detection. This disclosure contemplates that, in some cases, this collected data may include personal information data that uniquely identifies a particular person or that can be used to contact or locate a particular person. Such personal information data may include demographic data, location-based data, phone numbers, email addresses, Twitter IDs, home addresses, data or records regarding a user's health or fitness level (e.g., vital sign measurements, medication information, exercise information), birth date, or any other identifying or personal information.

[0265] The present disclosure recognizes that the use of such personal information data in the present technology can be used to the benefit of the user. For example, personal information data can be used to improve the detection of the user's hand gestures. Thus, by using such personal information data, the user can have user-controlled control of data that can improve the detection of hand gestures. Furthermore, other uses of personal information data that benefit the user are also contemplated by the present disclosure. For example, health and fitness data can be used to provide insight into the user's overall wellness, or can be used as proactive feedback to individuals using the technology in pursuit of wellness goals.

[0266] This disclosure contemplates that entities involved in the collection, analysis, disclosure, transmission, storage, or other use of such personal information data will adhere to robust privacy policies and / or privacy practices. Specifically, such entities should implement and consistently use privacy policies and practices that are generally recognized as meeting or exceeding industry or government requirements for maintaining the strict confidentiality of personal information data. Such policies should be easily accessible to users and should be updated as data collection and / or use changes. Personal information from users should be collected for the entity's lawful and legitimate use and should not be shared or sold except for those lawful uses. Furthermore, such collection / sharing should be carried out after the user's informed consent is obtained. Furthermore, such entities should consider taking all necessary measures to protect and secure access to such personal information data and to ensure that others with access to the personal information data adhere to their privacy policies and procedures. Furthermore, such entities may be able to undergo third-party assessments to demonstrate their adherence to widely accepted privacy policies and practices. Furthermore, policies and practices should be tailored to the specific types of personal data collected and / or accessed and should comply with applicable laws, regulations, and standards, including jurisdiction-specific considerations. For example, in the United States, the collection of or access to certain health data may be governed by federal and / or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA), while health data in other countries may be subject to other regulations and policies and should be addressed accordingly. Therefore, different privacy practices should be maintained in each country with respect to different types of personal data.

[0267] Notwithstanding the foregoing, the present disclosure also contemplates embodiments in which a user selectively blocks use of or access to personal information data. That is, the present disclosure contemplates that hardware and / or software elements may be provided to prevent or block access to such personal information data. For example, in the case of user interface management (e.g., including navigation), the present disclosure may be configured to allow a user to select "opt-in" or "opt-out" of participating in the collection of personal information data during service registration or at any time thereafter. In another example, a user may choose not to provide heart rate data and / or other data that may be used to improve hand gesture detection. In yet another example, a user may choose to limit the amount of time that heart rate data and / or other data is maintained. In addition to providing "opt-in" and "opt-out" options, the present disclosure contemplates providing notice regarding access or use of personal information. For example, a user may be informed upon downloading an app that will access the user's personal information data, and then again immediately before the app accesses the user's personal information data.

[0268] Furthermore, it is the intent of this disclosure that personal information data should be managed and handled in a manner that minimizes the risk of unintentional or unauthorized access or use. Risk can be minimized by limiting data collection and deleting data when it is no longer needed. Additionally, and where applicable in certain health-related applications, data anonymization can be used to protect user privacy. De-identification can be facilitated, where appropriate, by removing certain identifiers (e.g., date of birth, etc.), controlling the amount or specificity of data stored (e.g., collecting location data at a city level rather than an address level), controlling how data is stored (e.g., aggregating data across users), and / or other methods.

[0269] Thus, while this disclosure broadly encompasses the use of personal information data to implement one or more various disclosed embodiments, this disclosure also contemplates that the various embodiments may be implemented without requiring access to such personal information data. That is, various embodiments of the present technology are not rendered inoperable by the absence of all or a portion of such personal information data. For example, hand gestures may be detected based on non-personal information data such as content requested by a device associated with a user or a minimal amount of personal information, other non-personal information available to a data detection service, or publicly available information.

Claims

1. 1. A method comprising:

1. A computer system in communication with a display generating component and an optical sensor, comprising: displaying, via the display generation component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object is selected; In response to detecting the hand gesture via at least the optical sensor, displaying, via the display generation component, an indication that the second user interface object has been selected in accordance with determining that the hand gesture is a first type gesture; and and displaying, via the display generating component, an indication that the third user interface object has been selected in accordance with a determination that the hand gesture is a second type of gesture that is different from the first type of gesture.

2. The method of claim 1 , wherein the hand gesture is detected based on heart rate data determined using data detected via the optical sensor.

3. The method of claim 1 or 2, wherein the second type of gesture is a type of gesture that is a multiple instance of the first type of gesture.

4. In response to detecting the hand gesture via at least the optical sensor, performing an action corresponding to selecting the first user interface object in accordance with a determination that the hand gesture is a third type gesture that is different from the first type gesture and the second type gesture; 4. The method of claim 1, further comprising: displaying, via the display generation component, a menu including one or more selectable options in accordance with a determination that the hand gesture is a fourth type gesture that is different from the first type gesture, the second type gesture, and the third type gesture.

5. prior to detecting the hand gesture, the computer system is in a first operating mode; 5. The method of claim 4, wherein performing the action corresponding to the selection of the first user interface object comprises transitioning the computer system from the first operating mode to a second operating mode.

6. detecting a second hand gesture via at least the optical sensor while the computer system is in the second operational mode; in response to detecting the second hand gesture via at least the optical sensor; toggle a first automatic scrolling operation between an active state and an inactive state in accordance with determining that the second hand gesture is the first type of gesture; The method of claim 5 , further comprising: reversing a first direction of the first automatic scrolling operation in accordance with determining that the second hand gesture is the second type of gesture.

7. in response to detecting the second hand gesture via at least the optical sensor; performing a second action in accordance with determining that the second hand gesture is the third type of gesture; and The method of claim 6 , further comprising: performing a third action different from the second action in accordance with a determination that the second hand gesture is the fourth type gesture.

8. performing a second automatic scrolling operation to scroll the sequence of interface objects in a second direction while the computer system is in the second operating mode; detecting an end of the sequence of the plurality of user interface objects while performing the second automatic scrolling operation; 8. The method of claim 6, further comprising: in response to detecting an end of the sequence of the plurality of user interface objects, performing a third automatic scrolling operation to scroll the sequence of the plurality of interface objects in a third direction different from the second direction.

9. in response to detecting the second hand gesture via at least the optical sensor; 9. The method of claim 6, further comprising: transitioning the computer system from the second operating mode to a third operating mode in accordance with a determination that the second hand gesture is the fourth type of gesture.

10. The method of claim 6 , further comprising: displaying a notification indicating a status of the automatic scrolling operation in accordance with determining that the second hand gesture is the first type of gesture.

11. The method of claim 4 , wherein the third type of gesture is a type of gesture that is a multiple instance of the fourth type of gesture.

12. 12. The method of claim 4, wherein the fourth type of gesture does not include multiple instances of the first type of gesture, and the third type of gesture does not include multiple instances of the second type of gesture.

13. in response to detecting the second hand gesture via at least the optical sensor; 13. The method of claim 4, further comprising: performing an action associated with the notification in accordance with a determination that the notification is received within a threshold period and in accordance with a determination that the second hand gesture is the fourth type gesture.

14. 14. The method of claim 4, wherein the one or more selectable options include a first selectable user interface object for changing an action that one or more hand gestures can cause the computer system to perform, and selection of the first selectable user interface object causes the computer system to display a plurality of settings, each setting controlling an action that the one or more hand gestures can cause the computer system to perform when the one or more hand gestures are detected by the computer system.

15. the one or more selectable options include a second selectable option for transitioning the computer system to a fourth operating mode and a third selectable option for transitioning the computer system to a fifth operating mode different from the fourth operating mode; selection of the second selectable option transitions the computer system into the fourth operating mode; 15. The method of claim 4, wherein selection of the third selectable option transitions the computer system into the fifth operating mode.

16. 16. The method of any one of claims 1 to 15, wherein the one or more selectable options include a fourth selectable option for displaying one or more additional selectable options, and selection of the fourth selectable option causes the computer system to display the one or more additional selectable options that were not displayed prior to selection of the fourth selectable option.

17. The menu is: pursuant to determining that a particular user interface object is in a first position on the user interface, being displayed at the first position; 17. The method of claim 1, wherein, in accordance with a determination that the particular user interface object is not at the first location on the user interface, the particular user interface object is displayed at a second location that is different from the first location.

18. detecting, via at least the optical sensor, a third hand gesture while displaying the menu including one or more selectable options; in response to detecting the third hand gesture via at least the optical sensor; 18. The method of claim 1, further comprising: ceasing display of the menu including the one or more selectable options in accordance with a determination that the third hand gesture is the fourth type gesture.

19. detecting a fourth hand gesture via at least the optical sensor after displaying the user interface including the first user interface object; in response to detecting the fourth hand gesture via at least the optical sensor; 19. The method of claim 1, further comprising: transitioning the computer system from an inactive state to an active state in accordance with a determination that the fourth hand gesture is a fifth type gesture that is different from the first type gesture and the second type gesture.

20. detecting a fifth hand gesture via at least the optical sensor while displaying the indication that the second user interface object has been selected via the display generating component; and in response to detecting the fourth hand gesture via at least the optical sensor; displaying, via the display generating component, an indication that a fourth first user interface object has been selected in accordance with determining that the fifth hand gesture is the first type gesture; and 20. The method of claim 1, further comprising: displaying, via the display generation component, the indication of the first user interface object in accordance with a determination that the fifth hand gesture is the second type of gesture.

21. detecting a request to transition the computer system from a first operating mode to a fourth operating mode while displaying the user interface including the first user interface object; transitioning the computer system from the first operating mode to the fourth operating mode in response to detecting the request to transition the computer system from the first operating mode to the fourth operating mode; detecting, via at least the optical sensor, a sixth hand gesture while the computer system is in the fourth operational mode and while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object has been selected; in response to detecting the sixth hand gesture via at least the optical sensor; continuing to display the indication that the first user interface object is selected in accordance with determining that the hand gesture is the first type of gesture; and 21. The method of claim 1, further comprising: continuing to display the indication that the first user interface object is selected according to a determination that the hand gesture is the second type of gesture.

22. 22. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with the display generating component and the optical sensor, the one or more programs including instructions for performing the method of any one of claims 1 to 21.

23. a computer system in communication with the display generating component and the optical sensor, one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 1 to 21.

24. a computer system in communication with the display generating component and the optical sensor, A computer system comprising means for carrying out the method of any one of claims 1 to 21.

25. 22. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with the display generating component and the optical sensor, the one or more programs including instructions for performing the method of any one of claims 1 to 21.

26. 1. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generating component and an optical sensor, the one or more programs comprising: displaying, via the display generation component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object is selected; In response to detecting the hand gesture via at least the optical sensor, displaying, via the display generation component, an indication that the second user interface object has been selected in accordance with determining that the hand gesture is a first type of gesture; a display generating component configured to display an indication that the third user interface object has been selected in accordance with a determination that the hand gesture is a second type of gesture that is different from the first type of gesture;

27. a computer system in communication with the display generating component and the optical sensor, one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; wherein the one or more programs: displaying, via the display generation component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object is selected; In response to detecting the hand gesture via at least the optical sensor, displaying, via the display generation component, an indication that the second user interface object has been selected in accordance with determining that the hand gesture is a first type of gesture; and instructions for displaying, via the display generating component, an indication that the third user interface object has been selected in accordance with a determination that the hand gesture is a second type of gesture that is different from the first type of gesture.

28. a computer system in communication with the display generating component and the optical sensor, means for displaying, via the display generation component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; means for detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object has been selected; In response to detecting the hand gesture via at least the optical sensor, displaying, via the display generation component, an indication that the second user interface object has been selected in accordance with determining that the hand gesture is a first type of gesture; means for displaying, via the display generating component, an indication that the third user interface object has been selected in accordance with a determination that the hand gesture is a second type of gesture that is different from the first type of gesture.

29. 1. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with a display generating component and an optical sensor, the one or more programs comprising: displaying, via the display generation component, a user interface including a first user interface object, a second user interface object, a third user interface object, and an indication that the first user interface object has been selected; detecting a hand gesture via at least the optical sensor while displaying the user interface including the first user interface object, the second user interface object, the third user interface object, and the indication that the first user interface object is selected; In response to detecting the hand gesture via at least the optical sensor, displaying, via the display generation component, an indication that the second user interface object has been selected in accordance with determining that the hand gesture is a first type of gesture; and instructions for displaying, via the display generating component, an indication that the third user interface object has been selected, in accordance with a determination that the hand gesture is a second type of gesture that is different from the first type of gesture.

30. 1. A method comprising:

1. A computer system in communication with a display generation component, comprising: displaying, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first location on the user interface; detecting a request to move the cursor from the first position to a second position on the user interface while displaying the selectable user interface object and the cursor at the first position on the user interface; In response to detecting the request to move the cursor from the first position to the second position, displaying the cursor at the second position; displaying an animation that provides a visual indication of an amount of time the cursor needs to be positioned at the second location to perform an action in accordance with determining that the second location corresponds to a location of the selectable user interface object, the visual indication being updated over a period of time; ceasing to display the animation in accordance with a determination that the second position does not correspond to the position of the selectable user interface object.

31. In response to detecting the request to move the cursor from the first position to the second position, 31. The method of claim 30, further comprising: performing the action in accordance with a determination that the second position corresponds to the position of the selectable user interface object and the cursor is displayed at the second position for more than a first threshold period, wherein performing the action comprises selecting the selectable user interface object.

32. In response to detecting the request to move the cursor from the first position to the second position, 32. The method of claim 30 or 31, further comprising: performing the action in accordance with a determination that the second position corresponds to the position of the selectable user interface object and the cursor is displayed at the second position for longer than a second threshold period, wherein performing the action comprises launching an application corresponding to the selectable user interface object.

33. In response to detecting the request to move the cursor from the first position to the second position, 33. The method of any one of claims 30 to 32, further comprising: withdrawing from performing the action in accordance with a determination that the second position does not correspond to the position of the selectable user interface object.

34. In response to detecting the request to move the cursor from the first position to the second position, 34. The method of any one of claims 30 to 33, further comprising: withdrawing from performing the action in accordance with a determination that the cursor has not been displayed at the second position for more than a third threshold period.

35. In response to detecting the request to move the cursor from the first position to the second position, 35. The method of claim 30, further comprising: performing a second operation including displaying a second user interface different from the user interface in accordance with a determination that the second position corresponds to a position within an area of ​​the display generation component and that the cursor is displayed at the second position for more than a fourth threshold period.

36. 36. The method of claim 30, further comprising: performing the action in accordance with a determination that the second position corresponds to a position of the selectable user interface object and that the cursor is displayed at the second position for more than a fifth threshold period; wherein performing the action comprises displaying, via the display generation component, a menu including one or more selectable options for performing one or more actions at the second position.

37. 37. The method of claim 36, wherein the one or more selectable options include a first selectable option for performing a selection action, and selection of the first selectable option causes the computer system to perform the selection action at the second location.

38. 38. The method of claim 3 or 37, wherein the one or more selectable options include a second selectable option for performing an action corresponding to an action performed in response to an input detected at the second location, and selection of the second selectable option causes the computer system to perform the action corresponding to the action performed in response to the input detected at the second location.

39. 39. The method of any one of claims 36 to 38, wherein the one or more selectable options include a third selectable option for performing an auto-scrolling operation, and selection of the third selectable option causes the computer system to automatically scroll through a plurality of selectable user interface objects that include the selectable user interface object.

40. 40. The method of any one of claims 36 to 39, wherein the one or more selectable options include a fourth selectable option for displaying one or more additional options, and selection of the fourth selectable option causes the computer system to display the one or more additional options that were not previously displayed before selection of the fourth selectable option was detected.

41. 41. The method of claim 40, wherein the one or more additional options not previously displayed before selection of the fourth selectable option is detected include a discrete additional option, and selection of the discrete additional option causes the computer system to not perform an operation not performed at the second location.

42. the computer system is in communication with one or more input devices; the one or more selectable options include a fifth selectable option for performing an action corresponding to an action that is performed in response to detecting input via the one or more input devices; 42. The method of any one of claims 36 to 41, wherein selecting the fifth selectable option causes the computer system to perform the action corresponding to the action performed in response to detecting the input via the one or more input devices.

43. the one or more selectable options include a sixth selectable option and a seventh selectable option, and the method further comprises: detecting a request to move the cursor from the second position to a third position on the user interface while displaying the menu; in response to detecting the request to move the cursor from the second position to the third position on the user interface; performing a first action corresponding to the sixth selectable option in response to a determination that the third position corresponds to the position of the sixth selectable option and that the cursor is displayed at the third position for more than a sixth threshold period; and 43. The method of any one of claims 36 to 42, further comprising: performing a second action different from the first action in accordance with a determination that the third position corresponds to the position of the seventh selectable option and that the cursor is displayed at the third position for longer than the sixth threshold period.

44. 44. The method of any one of claims 36 to 43, wherein the one or more actions include an action of causing the computer system to display a user interface for an application corresponding to the selectable user interface object.

45. 45. The method of any one of claims 36 to 44, wherein the one or more actions include an action of transitioning the computer system from a first mode of operation to a second mode of operation.

46. detecting a request to display a second user interface different from the user interface after displaying the menu including the one or more selectable options; In response to detecting the request to display the second user interface, displaying the second user interface, the second user interface not including the menu, and including a second selectable user interface object and the cursor; detecting, while displaying the second selectable user interface object and the cursor, a request to move the cursor from a fourth position on the second user interface to a fifth position on the second user interface; in response to detecting the request to move the cursor from the fourth position on the second user interface to a fifth position on the second user interface; displaying the cursor at the fifth position on the second user interface; and 46. ​​The method of claim 36, further comprising: re-displaying, via the display generation component, the menu including the one or more selectable options in accordance with a determination that the fifth position corresponds to the position of the second selectable user interface object and that the cursor is displayed at the second position for longer than a seventh threshold period.

47. 47. The method of any one of claims 30 to 46, wherein the request to move the cursor from the first position to the second position is detected when the computer system is determined to be tilted in a particular direction.

48. 48. The method of claim 47, wherein the cursor is moved in a direction corresponding to the particular direction.

49. displaying a third user interface prior to displaying the user interface including the selectable user interface object and the cursor displayed at the first location on the user interface; detecting a request to enter a first operational mode while displaying the third user interface; in response to detecting the request to enter the first mode of operation; transitioning the computer system from a second operating mode to the first operating mode; 49. The method of any one of claims 30 to 48, further comprising: displaying the cursor.

50. 50. The method of claim 49, wherein detecting the request to enter the first operational mode comprises detecting that the computer system has been shaken.

51. detecting that the computer system has been shaken while the computer system is in the first mode of operation; 51. The method of claim 49 or 50, further comprising: transitioning the computer system from the first operating mode to a third operating mode in response to detecting that the computer system has been shaken.

52. 52. The method of claim 51, wherein transitioning the computer system from the first operating mode to a third operating mode includes ceasing display of the cursor.

53. detecting a request to move the cursor from a sixth position to a seventh position while the computer system is in the third operating mode and the cursor is displayed; in response to detecting the request to move the cursor from the sixth position to the seventh position, displaying the cursor at the seventh position; 53. The method of claim 51 or 52, further comprising: withdrawing from performing the action in accordance with a determination that the seventh position corresponds to a position of the selectable user interface object and that the cursor is displayed at the seventh position for more than an eighth threshold period.

54. In response to detecting the request to move the cursor from the first position to the second position, performing the action in accordance with a determination that the second position corresponds to the position of the selectable user interface object and the cursor is displayed at the second position for more than a ninth threshold period, wherein performing the action includes: displaying a second menu including one or more selectable options for performing one or more actions at the second location without launching a second application corresponding to the selectable user interface object in accordance with determining that one or more settings of the computer system are in a first state; 54. The method of claim 30, further comprising: in accordance with determining that one or more settings of the computer system are in a first state, launching the second application corresponding to the selectable user interface object to perform one or more actions at the second location without displaying the second menu including one or more selectable options.

55. 55. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component, the one or more programs including instructions for performing the method of any one of claims 30 to 54.

56. a computer system in communication with a display generation component, one or more processors; and a memory storing one or more programs configured to be executed by said one or more processors, said one or more programs including instructions for performing the method of any one of claims 30 to 54.

57. a computer system in communication with a display generation component, A computer system comprising means for carrying out the method of any one of claims 30 to 54.

58. 55. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component, the one or more programs comprising instructions for performing the method of any one of claims 30 to 54.

59. 1. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component, the one or more programs comprising: displaying, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first location on the user interface; detecting, while displaying the selectable user interface object and a cursor at the first location on the user interface, a request to move the cursor from the first location on the user interface to a second location; In response to detecting the request to move the cursor from the first position to the second position, displaying the cursor at the second position; displaying an animation that provides a visual indication of an amount of time the cursor needs to be positioned at the second location to perform an action in accordance with determining that the second location corresponds to a location of the selectable user interface object, the visual indication being updated over a period of time; A non-transitory computer-readable storage medium comprising instructions for ceasing to display the animation in accordance with a determination that the second position does not correspond to the position of the selectable user interface object.

60. a computer system in communication with a display generation component, one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; wherein the one or more programs: displaying, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first location on the user interface; detecting, while displaying the selectable user interface object and a cursor at the first location on the user interface, a request to move the cursor from the first location on the user interface to a second location; In response to detecting the request to move the cursor from the first position to the second position, displaying the cursor at the second position; displaying an animation that provides a visual indication of an amount of time the cursor needs to be positioned at the second location to perform an action in accordance with determining that the second location corresponds to a location of the selectable user interface object, the visual indication being updated over a period of time; The computer system includes instructions for ceasing to display the animation in accordance with a determination that the second position does not correspond to the position of the selectable user interface object.

61. a computer system in communication with a display generation component, means for displaying, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first location on the user interface; means for detecting, while displaying the selectable user interface object and a cursor at the first location on the user interface, a request to move the cursor from the first location on the user interface to a second location; In response to detecting the request to move the cursor from the first position to the second position, displaying the cursor at the second position; displaying an animation that provides a visual indication of an amount of time the cursor needs to be positioned at the second location to perform an action in accordance with determining that the second location corresponds to a location of the selectable user interface object, the visual indication being updated over a period of time; means for ceasing to display the animation in accordance with a determination that the second position does not correspond to the position of the selectable user interface object.

62. 1. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component, the one or more programs comprising: displaying, via the display generation component, a user interface including a selectable user interface object and a cursor displayed at a first location on the user interface; detecting, while displaying the selectable user interface object and a cursor at the first location on the user interface, a request to move the cursor from the first location on the user interface to a second location; In response to detecting the request to move the cursor from the first position to the second position, displaying the cursor at the second position; displaying an animation that provides a visual indication of an amount of time the cursor needs to be positioned at the second location to perform an action in accordance with determining that the second location corresponds to a location of the selectable user interface object, the visual indication being updated over a period of time; a computer program product comprising instructions for ceasing to display the animation in accordance with a determination that the second position does not correspond to the position of the selectable user interface object;

Citation Information

Patent Citations

  • Photographing device

    JP2015158953A

  • Navigating user interface using hand gesture

    JP2024096687A