Navigation user interface

By using a method of display generation component and sensor communication in a computer system of an electronic device, a faster and more efficient navigation interface is provided, solving the complex and time-consuming problem of navigation user interface in the prior art, and achieving more efficient navigation and energy management.

CN119998773APending Publication Date: 2025-05-13APPLE INC
View PDF 17 Cites 0 Cited by

Patent Information

Application Number
CN202380070387.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-09-24
Filing Date
2023-09-23
Publication Date
2025-05-13

AI Technical Summary

Technical Problem

The prior art is particularly important in battery-powered devices when navigating using electronic devices.

Method used

By using a method of display generating components and sensor communication in a computer system, a faster and more efficient navigation method and interface is provided, reducing user cognitive burden and improving human-machine interface efficiency. The method includes displaying a representation of the physical environment, detecting an object, and displaying a navigation path in response to user input.

Benefits of technology

A faster and more efficient navigation process is achieved, reducing the amount of user input and device energy consumption, especially in battery-powered devices to extend battery life.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119998773A_ABST
    Figure CN119998773A_ABST
Patent Text Reader

Abstract

The present disclosure generally relates to navigating user interfaces.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the benefit of U.S. Provisional Application No. 63 / 409,773, filed on September 24, 2022, entitled “NAVIGATION TO OBJECTS,” U.S. Provisional Application No. 63 / 409,774, filed on September 24, 2022, entitled “REPOSITIONING PHYSICAL COMPONENTS,” U.S. Provisional Application No. 63 / 409,776, filed on September 24, 2022, entitled “DETOUR OPTIONS,” and U.S. Provisional Application No. 63 / 409,777, filed on September 24, 2022, entitled “MULTI-STOP DESTINATION,” each of which is incorporated herein by reference in its entirety. Technical Field

[0003] The present disclosure relates generally to computer user interfaces and, more particularly, to techniques for navigation. Background Art

[0004] Map applications provide users with instructions for navigating to different locations. Traditionally, users search for a location in a database of a map application and initiate navigation to the location. Summary of the invention

[0005] However, some techniques for navigating using electronic devices are often cumbersome and inefficient. For example, some prior art techniques use complex and time-consuming user interfaces that may include multiple keystrokes or keystrokes. Prior art techniques require more time than necessary, which results in wasted user time and device energy. This latter consideration is particularly important in battery-powered devices.

[0006] Therefore, the present technology provides a faster and more efficient method and interface for navigation for electronic devices. Such methods and interfaces optionally supplement or replace other methods for navigation. Such methods and interfaces reduce the cognitive burden on users and produce a more effective human-computer interface. For battery-powered computing devices, such methods and interfaces save power and increase the time interval between battery charges.

[0007] In some embodiments, a method is described that is performed at a computer system in communication with a display generation component and one or more sensors. In some embodiments, the method includes: displaying, via the display generation component, a representation of a physical environment, wherein the representation includes one or more objects detected via at least one of the one or more sensors; receiving, via at least one of the one or more sensors, a set of one or more inputs including an input corresponding to a selection of an object in the one or more objects; and in response to receiving the set of one or more user inputs, displaying, via the display generation component, a path to a location corresponding to the object in the representation of the physical environment.

[0008] In some embodiments, a non-transitory computer-readable storage medium is described that stores one or more programs that are configured to be executed by one or more processors of a computer system that communicates with a display generation component and one or more sensors. In some embodiments, the non-transitory computer-readable storage medium storing one or more programs includes: displaying a representation of a physical environment via the display generation component, wherein the representation includes one or more objects detected via at least one of the one or more sensors; receiving a set of one or more inputs including an input corresponding to a selection of an object in the one or more objects via at least one of the one or more sensors; and in response to receiving the set of one or more user inputs, displaying a path to a location corresponding to an object in the representation of the physical environment via the display generation component.

[0009] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs that are configured to be executed by one or more processors of a computer system that communicates with a display generation component and one or more sensors. In some embodiments, a non-transitory computer-readable storage medium storing one or more programs includes: displaying a representation of a physical environment via a display generation component, wherein the representation includes one or more objects detected via at least one of the one or more sensors; receiving a set of one or more inputs including an input corresponding to a selection of an object in the one or more objects via at least one of the one or more sensors; and in response to receiving the set of one or more user inputs, displaying a path to a location corresponding to an object in the representation of the physical environment via the display generation component.

[0010] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensors is described. In some embodiments, the computer system includes 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 the following operations: displaying a representation of a physical environment via the display generation component, wherein the representation includes one or more objects detected via at least one of the one or more sensors; receiving a set of one or more inputs including an input corresponding to a selection of an object in the one or more objects via at least one of the one or more sensors; and in response to receiving the set of one or more user inputs, displaying a path to a location corresponding to an object in the representation of the physical environment via the display generation component.

[0011] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensors is described. In some embodiments, the computer system includes: a component for performing the following operations: displaying a representation of a physical environment via the display generation component, wherein the representation includes one or more objects detected via at least one of the one or more sensors; a component for performing the following operations: receiving a set of one or more inputs including an input corresponding to a selection of an object in the one or more objects via at least one of the one or more sensors; and a component for performing the following operations: in response to receiving the set of one or more user inputs, displaying a path to a location corresponding to an object in the representation of the physical environment via the display generation component.

[0012] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes: displaying a representation of a physical environment via a display generation component, wherein the representation includes one or more objects detected via at least one of the one or more sensors; receiving a set of one or more inputs including an input corresponding to a selection of an object in the one or more objects via at least one of the one or more sensors; and in response to receiving the set of one or more user inputs, displaying a path to a location corresponding to an object in the representation of the physical environment via the display generation component. Other embodiments of this aspect include corresponding computer systems, apparatuses, and computer programs recorded on one or more computer storage devices, each of which is configured to perform the actions of the method.

[0013] In some embodiments, a method is described that is performed at a computer system that communicates with a display generation component and one or more sensors. In some embodiments, the method includes: displaying a representation of a physical environment via the display generation component; while displaying the representation of the physical environment, detecting a first object in the physical environment via at least one of the one or more sensors; and in conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that a path to the first object is a first type of path; and de-emphasizing the first object based on determining that the path to the first object is a second type of path that is different from the first type of path.

[0014] In some embodiments, a non-transitory computer-readable storage medium is described, which stores one or more programs configured to be executed by one or more processors of a computer system that communicates with a display generation component and one or more sensors. In some embodiments, the non-transitory computer-readable storage medium storing one or more programs includes: displaying a representation of a physical environment via a display generation component; while displaying the representation of the physical environment, detecting a first object in the physical environment via at least one of the one or more sensors; and in conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that a path to the first object is a first type of path; and abandoning emphasis on the first object based on determining that the path to the first object is a second type of path different from the first type of path.

[0015] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs that are configured to be executed by one or more processors of a computer system that communicates with a display generation component and one or more sensors. In some embodiments, the transient computer-readable storage medium storing the one or more programs includes: displaying a representation of a physical environment via the display generation component; while displaying the representation of the physical environment, detecting a first object in the physical environment via at least one of the one or more sensors; and in conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that a path to the first object is a first type of path; and abandoning emphasis on the first object based on determining that the path to the first object is a second type of path that is different from the first type of path.

[0016] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensors is described. In some embodiments, the computer system includes 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 the following operations: displaying a representation of a physical environment via the display generation component; while displaying the representation of the physical environment, detecting a first object in the physical environment via at least one of the one or more sensors; and in conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that the path to the first object is a first type of path; and abandoning the emphasis of the first object based on determining that the path to the first object is a second type of path different from the first type of path.

[0017] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensors is described. In some embodiments, the computer system includes: a component for: displaying a representation of a physical environment via the display generation component; a component for: while displaying the representation of the physical environment, detecting a first object in the physical environment via at least one of the one or more sensors; and a component for: in conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that a path to the first object is a first type of path; and de-emphasizing the first object based on determining that the path to the first object is a second type of path different from the first type of path.

[0018] In some embodiments, a computer program product is described. In some embodiments, the computer program product also includes displaying a representation of a physical environment via a display generation component; while displaying the representation of the physical environment, detecting a first object in the physical environment via at least one of the one or more sensors; and in conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that a path to the first object is a first type of path; and de-emphasizing the first object based on determining that the path to the first object is a second type of path different from the first type of path.

[0019] In some embodiments, a method is described that is performed at a computer system that communicates with a display generation component; and one or more sensors. In some embodiments, the method includes: detecting multiple objects in a physical environment via at least one of the one or more sensors; displaying a representation of the physical environment including the multiple objects via the display generation component; after displaying the representation of the physical environment including the multiple objects, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object corresponding to a first object type; and a second user interface object corresponding to a second object type different from the first object type. The method also includes receiving a set of one or more user inputs via at least one of the one or more sensors, the set of one or more user inputs including input pointing to the multiple user interface objects; and when displaying the representation of the physical environment including the multiple objects, and in response to receiving the set of one or more user inputs: based on determining that the input points to the first user interface object, emphasizing a first set of one or more objects in the multiple objects, wherein the first set of one or more objects are of the first object type; and based on determining that the input points to the second user interface object, emphasizing a second set of one or more objects in the multiple objects, wherein the second set of one or more objects are of the second object type.

[0020] In some embodiments, a non-transitory computer-readable storage medium is described, which stores one or more programs configured to be executed by one or more processors of a computer system that communicates with a display generation component and one or more sensors. In some embodiments, the non-transitory computer-readable storage medium storing one or more programs includes: detecting multiple objects in a physical environment via at least one of the one or more sensors; displaying a representation of the physical environment including the multiple objects via the display generation component; after displaying the representation of the physical environment including the multiple objects, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object corresponding to a first object type; and a second user interface object corresponding to a second object type different from the first object type. These programs also include receiving a set of one or more user inputs via at least one of the one or more sensors, the set of one or more user inputs including input directed to the multiple user interface objects; and when displaying a representation of a physical environment including the multiple objects, and in response to receiving the set of one or more user inputs: based on determining that the input is directed to a first user interface object, emphasizing a first group of one or more objects in the multiple objects, wherein the first group of one or more objects are of a first object type; and based on determining that the input is directed to a second user interface object, emphasizing a second group of one or more objects in the multiple objects, wherein the second group of one or more objects are of a second object type.

[0021] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs that are configured to be executed by one or more processors of a computer system that communicates with a display generation component and one or more sensors. In some embodiments, a non-transitory computer-readable storage medium storing one or more programs includes: detecting multiple objects in a physical environment via at least one of the one or more sensors; displaying a representation of the physical environment including the multiple objects via the display generation component; after displaying the representation of the physical environment including the multiple objects, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object corresponding to a first object type; and a second user interface object corresponding to a second object type different from the first object type. These programs also include receiving a set of one or more user inputs via at least one of the one or more sensors, the set of one or more user inputs including input directed to the multiple user interface objects; and when displaying a representation of a physical environment including the multiple objects, and in response to receiving the set of one or more user inputs: based on determining that the input is directed to a first user interface object, emphasizing a first group of one or more objects in the multiple objects, wherein the first group of one or more objects are of a first object type; and based on determining that the input is directed to a second user interface object, emphasizing a second group of one or more objects in the multiple objects, wherein the second group of one or more objects are of a second object type.

[0022] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensors is described. In some embodiments, the computer system includes 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 the following operations: detecting multiple objects in a physical environment via at least one of the one or more sensors; displaying a representation of the physical environment including the multiple objects via the display generation component; after displaying the representation of the physical environment including the multiple objects, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object corresponding to a first object type; and a second user interface object corresponding to a second object type different from the first object type. The system also includes receiving a group of one or more user inputs via at least one of the one or more sensors, the group of one or more user inputs including inputs pointing to the multiple user interface objects; and when displaying a representation of a physical environment including the multiple objects, and in response to receiving the group of one or more user inputs: based on determining that the input points to a first user interface object, emphasizing a first group of one or more objects in the multiple objects, wherein the first group of one or more objects are of a first object type; and based on determining that the input points to a second user interface object, emphasizing a second group of one or more objects in the multiple objects, wherein the second group of one or more objects are of a second object type.

[0023] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensors is described. In some embodiments, the computer system includes a component for the following operations: detecting multiple objects in a physical environment via at least one of the one or more sensors; a component for the following operations: displaying a representation of the physical environment including the multiple objects via the display generation component; a component for the following operations: after displaying the representation of the physical environment including the multiple objects, displaying multiple user interface objects via the display generation component, the multiple user interface objects include: a first user interface object corresponding to a first object type; and a second user interface object corresponding to a second object type different from the first object type. The system also includes a component for the following operations: receiving a set of one or more user inputs via at least one of the one or more sensors, the set of one or more user inputs including input pointing to the multiple user interface objects; and a component for the following operations: when displaying the representation of the physical environment including the multiple objects, and in response to receiving the set of one or more user inputs: according to determining that the input points to the first user interface object, emphasizing the first group of one or more objects in the multiple objects, wherein the first group of one or more objects is the first object type; and according to determining that the input points to the second user interface object, emphasizing the second group of one or more objects in the multiple objects, wherein the second group of one or more objects is the second object type.

[0024] In some embodiments, a computer program product is described. In some embodiments, the computer program product includes: detecting multiple objects in a physical environment via at least one of the one or more sensors; displaying a representation of the physical environment including the multiple objects via a display generation component; after displaying the representation of the physical environment including the multiple objects, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object corresponding to a first object type; and a second user interface object corresponding to a second object type different from the first object type. The product also includes receiving a set of one or more user inputs via at least one of the one or more sensors, the set of one or more user inputs including input pointing to the multiple user interface objects; and when displaying the representation of the physical environment including the multiple objects, and in response to receiving the set of one or more user inputs: based on determining that the input points to the first user interface object, emphasizing a first group of one or more objects in the multiple objects, wherein the first group of one or more objects are of the first object type; and based on determining that the input points to the second user interface object, emphasizing a second group of one or more objects in the multiple objects, wherein the second group of one or more objects are of the second object type.

[0025] Some techniques include a method at a computer system in communication with a display generation component and one or more sensors. The method includes detecting a gesture via the one or more sensors and, in response to detecting the gesture: causing a portion of the computer system to move in a physical environment based on determining that a first set of one or more criteria are satisfied, wherein the set of criteria includes criteria that are satisfied when determining that the gesture is a particular type of gesture; and forgoing causing the portion of the computer system to move in the physical environment based on determining that a second set of one or more criteria are satisfied, wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0026] Some techniques include 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 and one or more sensors. The non-transitory computer-readable storage medium storing the one or more programs includes: detecting a gesture via the one or more sensors, and in response to detecting the gesture: causing a portion of the computer system to move in a physical environment based on determining that a first set of one or more criteria are satisfied, wherein the set of criteria includes criteria that are satisfied when determining that the gesture is a particular type of gesture; and forgoing causing the portion of the computer system to move in the physical environment based on determining that a second set of one or more criteria are satisfied, wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0027] Some techniques include a transient 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 and one or more sensors. The transient computer-readable storage medium storing the one or more programs includes: detecting a gesture via the one or more sensors, and in response to detecting the gesture: causing a portion of the computer system to move in a physical environment based on determining that a first set of one or more criteria is satisfied, wherein the set of criteria includes criteria that are satisfied when determining that the gesture is a particular type of gesture; and forgoing causing the portion of the computer system to move in the physical environment based on determining that a second set of one or more criteria is satisfied, wherein the second set of one or more criteria is different from the first set of one or more criteria.

[0028] Some technologies include a computer system configured to communicate with a display generation component and one or more sensors. The computer system includes one or more processors. The computer system includes 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 the following operations: detecting a gesture via the one or more sensors, and in response to detecting the gesture: causing a portion of the computer system to move in a physical environment based on determining that a first set of one or more criteria are satisfied, wherein the set of criteria includes criteria that are satisfied when determining that the gesture is a particular type of gesture; and abandoning causing the portion of the computer system to move in the physical environment based on determining that a second set of one or more criteria are satisfied, wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0029] Some techniques include a computer system configured to communicate with a display generation component and one or more input devices. The computer system includes components for: detecting a gesture via the one or more sensors; and components for: in response to detecting the gesture: causing a portion of the computer system to move in a physical environment based on determining that a first set of one or more criteria are satisfied, wherein the set of criteria includes criteria that are satisfied when determining that the gesture is a particular type of gesture; and components for: forgoing causing the portion of the computer system to move in the physical environment based on determining that a second set of one or more criteria are satisfied, wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0030] Some techniques include a computer program product configured to communicate with a display generation component and one or more input devices. The computer program product includes detecting a gesture via the one or more sensors and, in response to detecting the gesture: causing a portion of a computer system to move in a physical environment based on determining that a first set of one or more criteria are satisfied, wherein the set of criteria includes criteria that are satisfied when the gesture is determined to be a particular type of gesture; and forgoing causing the portion of the computer system to move in the physical environment based on determining that a second set of one or more criteria are satisfied, wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0031] Some technologies include a method at a computer system in communication with a display generation component and one or more sensors: when the computer system is at a first location in a physical environment, detecting a gesture via the one or more sensors; and in response to detecting the gesture: based on determining that a first set of one or more criteria are satisfied, causing a portion of the computer system to move from the first location to a second location within the physical environment, wherein the second location is different from the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user is detected; and based on determining that a second set of one or more criteria are satisfied, abandoning causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0032] Some technologies include 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 and one or more sensors. The non-transitory computer-readable storage medium storing the one or more programs includes: when the computer system is at a first location in a physical environment, detecting a gesture via the one or more sensors; and in response to detecting the gesture: based on determining that a first set of one or more criteria are satisfied, causing a portion of the computer system to move from the first location to a second location within the physical environment, wherein the second location is different from the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user is detected; and based on determining that a second set of one or more criteria are satisfied, abandoning causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0033] Some technologies include a transient 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 and one or more sensors. The non-transitory computer-readable storage medium storing the one or more programs includes: when the computer system is at a first location in a physical environment, detecting a gesture via the one or more sensors; and in response to detecting the gesture: based on determining that a first set of one or more criteria are satisfied, causing a portion of the computer system to move from the first location to a second location within the physical environment, wherein the second location is different from the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user is detected; and based on determining that a second set of one or more criteria are satisfied, abandoning causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0034] Some technologies include a computer system configured to communicate with a display generation component and one or more sensors. The computer system includes one or more processors. The system includes 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 the following operations: when the computer system is at a first location in a physical environment, detecting a gesture via the one or more sensors; and in response to detecting the gesture: based on determining that a first set of one or more criteria are satisfied, causing a portion of the computer system to move from the first location to a second location within the physical environment, wherein the second location is different from the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user is detected; and based on determining that a second set of one or more criteria are satisfied, abandoning causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0035] Some techniques include a computer system configured to communicate with a display generation component and one or more input devices. The computer system includes components for: detecting a gesture via the one or more sensors when the computer system is at a first location in a physical environment; and components for: in response to detecting the gesture: causing a portion of the computer system to move from the first location to a second location within the physical environment based on determining that a first set of one or more criteria are satisfied, wherein the second location is different from the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user is detected; and components for: abandoning causing the portion of the computer system to move from the first location to the second location based on determining that a second set of one or more criteria are satisfied, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0036] Some technologies include a computer program product configured to communicate with a display generation component and one or more sensors. The computer program product includes: when a computer system is at a first location in a physical environment, detecting a gesture via the one or more sensors; and in response to detecting the gesture: based on determining that a first set of one or more criteria are satisfied, causing a portion of the computer system to move from the first location to a second location within the physical environment, wherein the second location is different from the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user is detected; and based on determining that a second set of one or more criteria are satisfied, forgoing causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

[0037] In some embodiments, a method is performed at a computer system that communicates with a display generation component and one or more sensor components. In some embodiments, the method includes: when navigating to a destination, displaying a first user interface including a representation of a physical environment via the display generation component; when at the destination, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on the current state of the physical environment. The method also includes receiving a set of one or more user inputs via at least one of the one or more sensor components, the set of one or more user inputs including a first input pointing to the multiple user interface objects; and when displaying the representation of the physical environment, and in response to receiving the set of one or more user inputs: based on determining that the first input points to the first user interface object, displaying a path to the predefined location via the display generation component; and based on determining that the first input points to the second user interface object, displaying a path to the non-predefined location via the display generation component.

[0038] In some embodiments, a non-transitory computer-readable storage medium stores one or more programs executed by one or more processors of a computer system that communicates with a display generation component and one or more sensor components. In some embodiments, the one or more programs include displaying a first user interface including a representation of a physical environment via the display generation component when navigating to a destination; when at the destination, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on the current state of the physical environment. These programs also include receiving a set of one or more user inputs via at least one of the one or more sensor components, the set of one or more user inputs including a first input pointing to the multiple user interface objects; and when displaying a representation of the physical environment, and in response to receiving the set of one or more user inputs: based on determining that the first input points to the first user interface object, displaying a path to the predefined location via the display generation component; and based on determining that the first input points to the second user interface object, displaying a path to the non-predefined location via the display generation component.

[0039] In some embodiments, a transient computer-readable storage medium stores one or more programs executed by one or more processors of a computer system configured to communicate with a display generation component and one or more sensor components. In some embodiments, the one or more programs include displaying a first user interface including a representation of a physical environment via the display generation component when navigating to a destination; when at the destination, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on the current state of the physical environment. These programs also include receiving a set of one or more user inputs via at least one of the one or more sensor components, the set of one or more user inputs including a first input pointing to the multiple user interface objects; and when displaying a representation of the physical environment, and in response to receiving the set of one or more user inputs: based on determining that the first input points to the first user interface object, displaying a path to the predefined location via the display generation component; and based on determining that the first input points to the second user interface object, displaying a path to the non-predefined location via the display generation component.

[0040] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensor components is described. In some embodiments, the computer system includes 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 the following operations: when navigating to a destination, displaying a first user interface including a representation of a physical environment via the display generation component; when at the destination, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on the current state of the physical environment. The system also includes receiving a set of one or more user inputs via at least one of the one or more sensor components, the set of one or more user inputs including a first input pointing to the multiple user interface objects; and when displaying a representation of the physical environment, and in response to receiving the set of one or more user inputs: based on determining that the first input points to the first user interface object, displaying a path to the predefined location via the display generation component; and based on determining that the first input points to the second user interface object, displaying a path to the non-predefined location via the display generation component.

[0041] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensor components is described. In some embodiments, the computer system includes a component for the following operations: when navigating to a destination, displaying a first user interface including a representation of a physical environment via the display generation component; a component for the following operations: when at the destination, displaying multiple user interface objects via the display generation component, the multiple user interface objects include: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on the current state of the physical environment. The system also includes a component for the following operations: receiving a set of one or more user inputs via at least one of the one or more sensor components, the set of one or more user inputs including a first input pointing to the multiple user interface objects; and a component for the following operations: when displaying a representation of the physical environment, and in response to receiving the set of one or more user inputs: based on determining that the first input points to the first user interface object, displaying a path to the predefined location via the display generation component; and based on determining that the first input points to the second user interface object, displaying a path to the non-predefined location via the display generation component. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the actions of the method.

[0042] In some embodiments, a computer program product configured to communicate with a display generation component and one or more sensor components is described. In some embodiments, the computer program product includes: when navigating to a destination, displaying a first user interface including a representation of a physical environment via the display generation component; when at the destination, displaying multiple user interface objects via the display generation component, the multiple user interface objects including: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on the current state of the physical environment. The product also includes receiving a set of one or more user inputs via at least one of the one or more sensor components, the set of one or more user inputs including a first input pointing to the multiple user interface objects; and when displaying a representation of the physical environment, and in response to receiving the set of one or more user inputs: based on determining that the first input points to the first user interface object, displaying a path to the predefined location via the display generation component; and based on determining that the first input points to the second user interface object, displaying a path to the non-predefined location via the display generation component.

[0043] In some embodiments, a method is described that is performed at a computer system that communicates with a display generation component and one or more sensor components. In some embodiments, the method includes: when navigating to a destination, displaying a representation of a physical environment via the display generation component; while displaying the representation, detecting an input corresponding to the representation via at least one of the one or more sensor components; and in response to detecting the input: based on determining that a first set of one or more criteria are satisfied, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and based on determining that a second set of one or more criteria are satisfied, wherein the second set of one or more criteria include criteria that are satisfied when it is determined that the first set of one or more criteria are not satisfied, abandoning the change in the lateral positioning within the navigation.

[0044] In some embodiments, a non-transitory computer-readable storage medium is described, which stores one or more programs configured to be executed by one or more processors of a computer system that communicates with a display generation component and one or more sensor components. In some embodiments, the one or more programs include: when navigating to a destination, displaying a representation of the physical environment via the display generation component; when displaying the representation, detecting an input corresponding to the representation via at least one of the one or more sensor components; and in response to detecting the input: based on determining that a first set of one or more criteria are met, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and based on determining that a second set of one or more criteria are met, wherein the second set of one or more criteria include criteria that are met when it is determined that the first set of one or more criteria are not met, abandoning the change in the lateral positioning within the navigation.

[0045] In some embodiments, a transient computer-readable storage medium is described that stores one or more programs that are configured to be executed by one or more processors of a computer system that communicates with a display generation component and one or more sensor components. In some embodiments, the one or more programs include: when navigating to a destination, displaying a representation of a physical environment via a display generation component; when displaying the representation, detecting an input corresponding to the representation via at least one of the one or more sensor components; and in response to detecting the input: based on determining that a first set of one or more criteria are satisfied, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and based on determining that a second set of one or more criteria are satisfied, wherein the second set of one or more criteria include criteria that are satisfied when it is determined that the first set of one or more criteria are not satisfied, abandoning the change in the lateral positioning within the navigation.

[0046] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensor components is described. In some embodiments, the computer system includes 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 the following operations: when navigating to a destination, displaying a representation of the physical environment via the display generation component; when displaying the representation, detecting an input corresponding to the representation via at least one of the one or more sensor components; and in response to detecting the input: based on determining that a first set of one or more criteria are met, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and based on determining that a second set of one or more criteria are met, wherein the second set of one or more criteria include criteria that are met when it is determined that the first set of one or more criteria are not met, abandoning the change of the lateral positioning within the navigation.

[0047] In some embodiments, a computer system configured to communicate with a display generation component and one or more sensor components is described. In some embodiments, the computer system includes a component for the following operations: when navigating to a destination, displaying a representation of a physical environment via the display generation component; a component for the following operations: when displaying the representation, detecting an input corresponding to the representation via at least one of the one or more sensor components; and a component for the following operations: in response to detecting the input: changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area based on determining that a first set of one or more criteria are met; and abandoning the change of the lateral positioning within the navigation based on determining that a second set of one or more criteria are met, wherein the second set of one or more criteria include criteria that are met when it is determined that the first set of one or more criteria are not met.

[0048] In some embodiments, a computer program product configured to communicate with a display generation component and one or more sensor components is described. In some embodiments, the computer program product includes: when navigating to a destination, displaying a representation of a physical environment via the display generation component; when displaying the representation, detecting an input corresponding to the representation via at least one of the one or more sensor components; and in response to detecting the input: based on determining that a first set of one or more criteria are satisfied, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and based on determining that a second set of one or more criteria are satisfied, wherein the second set of one or more criteria include criteria that are satisfied when it is determined that the first set of one or more criteria are not satisfied, abandoning the change in the lateral positioning within the navigation.

[0049] Some technologies include a method at a computer system in communication with a first set of one or more devices and a second set of one or more devices that is different from the first set of one or more devices. The method includes: detecting a request to navigate to a destination that includes a plurality of locations; in response to detecting the request, navigating to the destination; in conjunction with reaching the destination, navigating to a first location in the plurality of locations; in conjunction with navigating to the first location, automatically and without intervening user input, activating the first set of one or more devices without activating the second set of one or more devices; after navigating to the first location, navigating to a second location in the plurality of locations, wherein the second location is different from the first location; and in conjunction with navigating to the second location, automatically and without intervening user input, activating the second set of one or more devices without activating the first set of one or more devices.

[0050] Some technologies include 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 that communicates with a first group of one or more devices and a second group of one or more devices that is different from the first group of one or more devices. The non-transitory computer-readable storage medium includes one or more programs for: detecting a request to navigate to a destination including a plurality of locations; in response to detecting the request, navigating to the destination; in conjunction with reaching the destination, navigating to a first location of the plurality of locations; in conjunction with navigating to the first location, automatically and without intervening user input, activating the first group of one or more devices without activating the second group of one or more devices; after navigating to the first location, navigating to a second location of the plurality of locations, wherein the second location is different from the first location; and in conjunction with navigating to the second location, automatically and without intervening user input, activating the second group of one or more devices without activating the first group of one or more devices.

[0051] Some technologies include a transient computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that communicates with a first group of one or more devices and a second group of one or more devices that is different from the first group of one or more devices. The transient computer-readable storage medium includes one or more programs for: detecting a request to navigate to a destination that includes a plurality of locations; in response to detecting the request, navigating to the destination; in conjunction with reaching the destination, navigating to a first location of the plurality of locations; in conjunction with navigating to the first location, automatically and without intervening user input, activating the first group of one or more devices without activating the second group of one or more devices; after navigating to the first location, navigating to a second location of the plurality of locations, wherein the second location is different from the first location; and in conjunction with navigating to the second location, automatically and without intervening user input, activating the second group of one or more devices without activating the first group of one or more devices.

[0052] Some technologies include a computer system configured to communicate with a first group of one or more devices and a second group of one or more devices that are different from the first group of one or more devices. The computer system includes one or more processors. The system includes 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 for the following operations: detecting a request to navigate to a destination including a plurality of locations; responsive to detecting the request, navigating to the destination; in conjunction with reaching the destination, navigating to a first location in the plurality of locations; in conjunction with navigating to the first location, automatically and without intervening user input, activating the first group of one or more devices without activating the second group of one or more devices; after navigating to the first location, navigating to a second location in the plurality of locations, wherein the second location is different from the first location; and in conjunction with navigating to the second location, automatically and without intervening user input, activating the second group of one or more devices without activating the first group of one or more devices.

[0053] Some technologies include a computer system configured to communicate with a first set of one or more devices and a second set of one or more devices that is different from the first set of one or more devices. The computer system includes components for: detecting a request to navigate to a destination that includes a plurality of locations; components for: responsive to detecting the request, navigating to the destination; components for: in conjunction with reaching the destination, navigating to a first location in the plurality of locations; components for: in conjunction with navigating to the first location, automatically and without intervening user input, activating the first set of one or more devices without activating the second set of one or more devices; components for: after navigating to the first location, navigating to a second location in the plurality of locations, wherein the second location is different from the first location; and components for: in conjunction with navigating to the second location, automatically and without intervening user input, activating the second set of one or more devices without activating the first set of one or more devices.

[0054] Some techniques include a computer program product. The computer program product includes software for detecting a request to navigate to a destination that includes a plurality of locations; in response to detecting the request, navigating to the destination; in conjunction with reaching the destination, navigating to a first location of the plurality of locations; in conjunction with navigating to the first location, automatically and without intervening user input, activating a first set of one or more devices without activating a second set of one or more devices; after navigating to the first location, navigating to a second location of the plurality of locations, wherein the second location is different from the first location; and in conjunction with navigating to the second location, automatically and without intervening user input, activating the second set of one or more devices without activating the first set of one or more devices.

[0055] Some technologies include a method at a computer system that communicates with a first set of one or more devices and a second set of one or more devices that are different from the first set of one or more devices, the method comprising: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; upon navigating to the destination, displaying a plurality of user interface objects, the plurality of user interface objects including: a first user interface object corresponding to a first predefined activity in the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity in the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity. The method also includes receiving a set of one or more user inputs, the set of one or more user inputs including corresponding inputs pointing to the plurality of user interface objects; and in response to receiving the set of one or more user inputs: based on determining that the corresponding input points to the first user interface object: navigating to a first predefined location in the plurality of predefined locations, wherein the first predefined location corresponds to the first predefined activity; and in conjunction with activating the first set of one or more devices at the first predefined location. The method also includes, based on determining that the corresponding input points to a second user interface object: navigating to a second predefined location among the multiple predefined locations, wherein the second predefined location corresponds to a second predefined activity, and wherein the second predefined location is different from the first predefined location; and activating a second group of one or more devices in conjunction with the second predefined location.

[0056] Some technologies include 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 communicating with a first group of one or more devices and a second group of one or more devices different from the first group of one or more devices. The non-transitory computer-readable storage medium storing one or more programs includes: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; when navigating to the destination, displaying a plurality of user interface objects, the plurality of user interface objects including: a first user interface object corresponding to a first predefined activity in the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity in the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity. The programs also include receiving a set of one or more user inputs, the set of one or more user inputs including corresponding inputs pointing to the plurality of user interface objects; and in response to receiving the set of one or more user inputs: according to determining that the corresponding input points to the first user interface object: navigating to a first predefined location in the plurality of predefined locations, wherein the first predefined location corresponds to a first predefined activity; and in conjunction with activating the first group of one or more devices at the first predefined location. These programs also include, based on determining that the corresponding input is pointing to a second user interface object: navigating to a second predefined location among the multiple predefined locations, wherein the second predefined location corresponds to a second predefined activity, and wherein the second predefined location is different from the first predefined location; and, in conjunction with the second predefined location, activating a second group of one or more devices.

[0057] Some technologies include a transient computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system communicating with a first group of one or more devices and a second group of one or more devices different from the first group of one or more devices. The transient computer-readable storage medium storing the one or more programs includes: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; upon navigating to the destination, displaying a plurality of user interface objects, the plurality of user interface objects including: a first user interface object corresponding to a first predefined activity in the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity in the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity. The programs also include receiving a set of one or more user inputs, the set of one or more user inputs including corresponding inputs pointing to the plurality of user interface objects; and in response to receiving the set of one or more user inputs: based on determining that the corresponding input points to the first user interface object: navigating to a first predefined location in the plurality of predefined locations, wherein the first predefined location corresponds to a first predefined activity; and in conjunction with activating the first group of one or more devices at the first predefined location. These programs also include, based on determining that the corresponding input is pointing to a second user interface object: navigating to a second predefined location among the multiple predefined locations, wherein the second predefined location corresponds to a second predefined activity, and wherein the second predefined location is different from the first predefined location; and, in conjunction with the second predefined location, activating a second group of one or more devices.

[0058] Some techniques include a computer system configured to communicate with a first group of one or more devices and a second group of one or more devices that are different from the first group of one or more devices. The computer system also includes one or more processors. The system also includes 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 for the following operations: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; upon navigating to the destination, displaying a plurality of user interface objects, the plurality of user interface objects including: a first user interface object corresponding to a first predefined activity in the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity in the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity. The system also includes receiving a set of one or more user inputs, the set of one or more user inputs including corresponding inputs pointing to the plurality of user interface objects; and in response to receiving the set of one or more user inputs: according to determining that the corresponding input points to the first user interface object: navigating to a first predefined location in the plurality of predefined locations, wherein the first predefined location corresponds to the first predefined activity; and in conjunction with activating the first group of one or more devices at the first predefined location. The system also includes, based on determining that the corresponding input points to a second user interface object: navigating to a second predefined location among the multiple predefined locations, wherein the second predefined location corresponds to a second predefined activity, and wherein the second predefined location is different from the first predefined location; and activating a second group of one or more devices in conjunction with the second predefined location.

[0059] Some techniques include a computer system configured to communicate with a first group of one or more devices and a second group of one or more devices that are different from the first group of one or more devices. The computer system also includes components for: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; components for: while navigating to the destination, displaying a plurality of user interface objects, the plurality of user interface objects including: a first user interface object corresponding to a first predefined activity in the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity in the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity. The system also includes components for: receiving a set of one or more user inputs, the set of one or more user inputs including corresponding inputs pointing to the plurality of user interface objects; and components for: in response to receiving the set of one or more user inputs: based on determining that the corresponding input points to the first user interface object: navigating to a first predefined location in the plurality of predefined locations, wherein the first predefined location corresponds to a first predefined activity; and components for: in conjunction with being at the first predefined location, activating the first group of one or more devices. The system also includes components for: based on determining that the corresponding input points to a second user interface object: navigating to a second predefined location among the multiple predefined locations, wherein the second predefined location corresponds to a second predefined activity, and wherein the second predefined location is different from the first predefined location; and components for: in conjunction with the second predefined location, activating a second group of one or more devices.

[0060] Some technologies include a computer program product. The computer program product includes instructions for the following operations: navigating to a destination, wherein the destination includes multiple predefined activities and multiple predefined locations; when navigating to the destination, displaying multiple user interface objects, the multiple user interface objects including: a first user interface object corresponding to a first predefined activity in the multiple predefined activities; and a second user interface object corresponding to a second predefined activity in the multiple predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity. The product also includes receiving a set of one or more user inputs, the set of one or more user inputs including corresponding inputs pointing to the multiple user interface objects; and in response to receiving the set of one or more user inputs: based on determining that the corresponding input points to the first user interface object: navigating to a first predefined location in the multiple predefined locations, wherein the first predefined location corresponds to a first predefined activity; and in conjunction with activating a first set of one or more devices at the first predefined location. The product also includes, based on determining that the corresponding input points to a second user interface object: navigating to a second predefined location among the multiple predefined locations, wherein the second predefined location corresponds to a second predefined activity, and wherein the second predefined location is different from the first predefined location; and activating a second group of one or more devices in conjunction with the second predefined location.

[0061] Executable instructions for performing these functions are optionally included in a non-transitory computer-readable storage medium or other computer program product configured for execution by one or more processors. Executable instructions for performing these functions are optionally included in a transient computer-readable storage medium or other computer program product configured for execution by one or more processors.

[0062] Thus, a faster, more efficient method and interface for navigating to an object is provided for a device, thereby increasing the effectiveness, efficiency, and user satisfaction of such a device.Such methods and interfaces may supplement or replace other methods for navigating to an object. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] For a better understanding of the various described embodiments, reference should be made to the following detailed description taken in conjunction with the following drawings, in which like reference numerals designate corresponding parts throughout the several views.

[0064] Figure 1A is a block diagram illustrating a portable multifunction device with a touch-sensitive display according to some embodiments.

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

[0066] Figure 2 A portable multifunction device with a touch screen according to some embodiments is illustrated.

[0067] Figure 3 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments.

[0068] Figure 4A An exemplary user interface for a menu of applications on a portable multifunction device according to some embodiments is illustrated.

[0069] Figure 4B An exemplary user interface for a multifunction device having a touch-sensitive surface separate from the display is illustrated according to some embodiments.

[0070] Figure 5A Personal electronic devices according to some embodiments are illustrated.

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

[0072] FIG. 5C to FIG. 5D Example components of a personal electronic device with a touch-sensitive display and an intensity sensor are shown according to some embodiments.

[0073] FIG. 5E to FIG. 5H Exemplary components and user interfaces of a personal electronic device according to some embodiments are shown.

[0074] FIG. 6A to FIG. 6L An exemplary user interface for navigating in a physical environment using a computer system is shown according to some embodiments.

[0075] Figure 7 is a flowchart illustrating a method for displaying a path to an object using a computer system according to some embodiments.

[0076] Figure 8 is a flowchart illustrating a method for emphasizing an object using a computer system according to some embodiments.

[0077] Fig. 9 is a flow chart illustrating a method for emphasizing object types using a computer system according to some embodiments.

[0078] FIG. 10A to FIG. 10C An exemplary user interface for manipulating a physical input mechanism using a computer system is shown according to some embodiments.

[0079] Fig.11 is a flowchart illustrating a method for performing gesture-based repositioning using a computer system according to some embodiments.

[0080] Fig.12 is a flow chart illustrating a method for identity-based relocation using a computer system according to some embodiments.

[0081] FIG. 13A to FIG. 13G An exemplary user interface for navigating in a physical environment using a computer system is shown according to some embodiments.

[0082] Fig.14 is a flow chart illustrating a method for changing a destination using a computer system according to some embodiments.

[0083] Fig.15 is a flow chart illustrating a method for modifying navigation to a destination using a computer system according to some embodiments.

[0084] FIG. 16A to FIG. 16E An exemplary user interface for navigating to a destination using a computer system is shown according to some embodiments.

[0085] Fig.17 is a flow chart illustrating a method for navigating in a physical environment using a computer system according to some embodiments.

[0086] Fig.18 is a flow chart illustrating a method for displaying different predefined activities for a destination using a computer system according to some embodiments. DETAILED DESCRIPTION

[0087] The following description sets forth exemplary methods, parameters, etc. However, it should be appreciated that such description is not intended to limit the scope of the present disclosure, but is provided as a description of exemplary embodiments.

[0088] There is a need for electronic devices that provide efficient methods and interfaces for navigation. Some technologies display paths to objects detected via sensors. Other technologies emphasize certain objects detected via sensors. Other technologies emphasize specific types of objects detected via sensors. Other technologies reposition physical components. Other technologies display different controls for navigating to different locations at a destination. Other technologies allow users to modify navigation to a destination. Other technologies activate different sensors at different locations at a destination. Other technologies display different predefined activities at a destination to navigate to corresponding locations at the destination. Such technologies can reduce the cognitive burden of a user navigating, thereby increasing productivity. In addition, such technologies can reduce processor power and battery power that would otherwise be wasted on redundant user input.

[0089] under, Figure 1A to Figure 1B , Figure 2 , Figure 3 , FIG. 4A to FIG. 4B and FIG. 5A to FIG. 5H A description of an exemplary device for performing techniques for navigating to an object is provided. FIG. 6A to FIG. 6L An exemplary user interface for navigating to an object is shown. Figure 7 is a flowchart illustrating a method of displaying a path to an object according to some embodiments. Figure 8 is a flow chart illustrating a method of emphasizing an object according to some embodiments. Fig. 9 is a flow chart illustrating a method of emphasizing object types according to some embodiments. FIG. 6A to FIG. 6L The user interface in is used to illustrate the process described below, including Figure 7 , Figure 8 and Fig. 9 process. FIG. 10A to FIG. 10C An exemplary user interface for manipulating a physical input mechanism using a computer system is shown according to some embodiments. Fig.11 is a flowchart illustrating a method for performing gesture-based repositioning using a computer system according to some embodiments. Fig.12 is a flow chart illustrating a method for identity-based relocation using a computer system according to some embodiments. FIG. 10A to FIG. 10C The user interface in is used to illustrate the process described below, including Fig.11 and Fig.12 process. FIG. 13A to FIG. 13G An exemplary user interface for navigating in a physical environment is shown. Fig.14 is a flow chart illustrating a method for changing a destination using a computer system according to some embodiments. Fig.15 is a flow chart illustrating a method for modifying navigation to a destination using a computer system according to some embodiments. FIG. 13A to FIG. 13G The user interface in is used to illustrate the process described below, including Fig.14 and Fig.15 process. FIG. 16A to FIG. 16E An exemplary user interface for navigating in a physical environment is shown. Fig.17 is a flow chart illustrating a method for navigating in a physical environment using a computer system according to some embodiments. Fig.18 is a flow chart illustrating a method for displaying different predefined activities for a destination using a computer system according to some embodiments. FIG. 16A to FIG. 16E The user interface in is used to illustrate the process described below, including Fig.17 and Fig.18 process.

[0090] The processes described below enhance the operability of the device and make the user-device interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the device) through various techniques, including by providing improved visual feedback to the user, reducing the number of inputs required to perform an operation, providing additional control options without cluttering the user interface with additional displayed controls, performing an operation without further user input when a set of conditions have been met, and / or additional techniques. These techniques also reduce power usage and extend the battery life of the device by enabling the user to use the device more quickly and efficiently.

[0091] In addition, in the method described herein where one or more steps depend on one or more conditions being met, it should be understood that the method can be repeated in multiple repetitions so that in the process of repetition, all conditions for determining the steps in the method have been met in different repetitions of the method. For example, if the method needs to perform the first step (if the condition is met), and perform the second step (if the condition is not met), then the ordinary technician will know that the steps stated are repeated until both the condition is met and the condition is not met (in no particular order). Therefore, the method described as having one or more steps depending on one or more conditions being met can be rewritten as a method of repeating until each condition described in the method is met. However, this does not require the system or computer-readable medium to declare that the system or computer-readable medium contains instructions for performing a contingent operation based on the satisfaction of the corresponding one or more conditions, and is therefore able to determine whether the possible situation has been met without explicitly repeating the steps of the method until all conditions for determining the steps in the method have been met. It will also be understood by ordinary technicians in the art that, similar to the method with the contingent step, the system or computer-readable storage medium can repeat the steps of the method as many times as needed to ensure that all the contingent steps have been performed.

[0092] Although the following description uses the terms "first", "second", etc. to describe various elements, these elements should not be limited by the terms. In some embodiments, these terms are used to distinguish one element from another element. For example, a first touch can be named a second touch and similarly a second touch can be named a first touch without departing from the scope of the various described embodiments. In some embodiments, the first touch and the second touch are two separate references to the same touch. In some embodiments, both the first touch and the second touch are touches, but they are not the same touch.

[0093] The terms used in the description of various described embodiments herein are only for the purpose of describing specific embodiments, and are not intended to be limiting. As used in the description of various described embodiments and in the appended claims, the singular forms "one" and "the" are intended to also include plural forms, unless the context clearly indicates otherwise. It will also be understood that the term "and / or" used herein refers to and encompasses any and all possible combinations of one or more items in the associated listed items. It will also be understood that the terms "include" and / or "comprising" are used in this specification to specify the presence of stated features, integers, steps, operations, elements and / or parts, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, parts and / or their grouping.

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

[0095] 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 a PDA and / or a music player function. Exemplary embodiments of portable multifunction devices include, but are not limited to, the Apple Watch from Apple Inc. of Cupertino, California. Devices, iPod Equipment and Device. Optionally use other portable electronic devices, such as laptop computers or tablet computers with touch-sensitive surfaces (e.g., touch screen displays and / or touch pads). It should also be understood that in some embodiments, the device is not a portable communication device, but a desktop computer with a touch-sensitive surface (e.g., touch screen displays and / or touch pads). In some embodiments, the electronic device is a computer system that communicates with the display generation component (e.g., via wireless communication, via wired communication). The display generation component is configured to provide visual output, such as display via a CRT display, display via an LED display, or 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 separated from the computer system. As used herein, "display" content includes sending data (e.g., image data or video data) to an integrated or external display generation component via a wired or wireless connection to visually generate content to display content (e.g., video data rendered or decoded by display controller 156).

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

[0097] The device typically supports a variety of applications, such as one or more of the following: a drawing application, a presentation application, a word processing application, a website creation application, a disk editing application, a spreadsheet application, a gaming application, a telephony application, a video conferencing application, an email application, an instant messaging application, a fitness 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.

[0098] Various applications executed on the device optionally use at least one common physical user interface device, such as a touch-sensitive surface. One or more functions of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and / or varied for different applications, and / or adjusted and / or varied within the respective applications. In this way, the common physical architecture of the device (such as a touch-sensitive surface) optionally supports various applications with a user interface that is intuitive and clear to the user.

[0099] Attention is now turned to embodiments of portable devices having touch-sensitive displays. Figure 1A1 is a block diagram illustrating a portable multifunction device 100 with a touch-sensitive display system 112 according to some embodiments. The touch-sensitive display 112 is sometimes referred to as a "touch screen" for convenience, and is sometimes referred to as or referred to as a "touch-sensitive display system." The device 100 includes a memory 102 (which optionally includes one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, a peripheral device interface 118, an RF circuit 108, an audio circuit 110, a speaker 111, a microphone 113, an input / output (I / O) subsystem 106, other input control devices 116, and an external port 124. The device 100 optionally includes one or more optical sensors 164. The device 100 optionally includes one or more contact force sensors 165 for detecting the intensity of contact on the device 100 (e.g., a touch-sensitive surface, such as the touch-sensitive display system 112 of the device 100). Device 100 optionally includes one or more tactile output generators 167 for generating tactile output on device 100 (e.g., generating tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touch pad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.

[0100] As used in this specification and 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 to a surrogate (surrogate) of 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 different values ​​and more typically includes hundreds of different values ​​(e.g., at least 256). The intensity of a contact is optionally determined (or measured) using various methods and various sensors or combinations of sensors. For example, one or more force sensors below or adjacent to the touch-sensitive surface are optionally used to measure the force at different points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted average) to determine an estimated contact force. Similarly, the pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size of the contact area detected on the touch-sensitive surface and / or its change, the capacitance of the touch-sensitive surface near the contact and / or its change, and / or the resistance of the touch-sensitive surface near the contact and / or its change are optionally used as a substitute for the force or pressure of the contact on the touch-sensitive surface. In some embodiments, the substitute measurement of the contact force or pressure is used directly to determine whether the intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the substitute measurement). In some embodiments, the substitute measurement of the contact force or pressure is converted into an estimated force or pressure, and the estimated force or pressure is used to determine whether the intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using the intensity of the contact as an attribute of the user input allows the user to access additional device functions that would otherwise be inaccessible to the user on a smaller device with limited real estate, which is used to display an enable indication (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).

[0101] As used in this specification and claims, the term "tactile 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, which will be detected by a user using the user's sense of touch. For example, in the case where a device or a component of the device is in contact with a user's touch-sensitive surface (e.g., a finger, palm, or other part of the user's hand), the tactile output generated 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 a touchpad) is optionally interpreted by the user as a "press click" or "release click" to a physical actuation button. In some cases, the user will feel a tactile sensation, such as a "press click" or "release click", even when the physical actuation button associated with the touch-sensitive surface that is physically pressed (e.g., displaced) by the user's movement does not move. As another example, movement of a touch-sensitive surface may optionally be interpreted or sensed 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 a user's interpretation of touch will be limited by the user's individualized sensory perceptions, many sensory perceptions of touch are common to most users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., "press click," "release click," "roughness"), unless otherwise stated, the generated tactile output corresponds to a physical displacement of the device or a component thereof that would generate that sensory perception for a typical (or average) user.

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

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

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

[0105] RF (radio frequency) circuit 108 receives and sends RF signals, also referred to as electromagnetic signals. RF circuit 108 converts electrical signals into / converts electromagnetic signals into electrical signals, and communicates with communication networks and other communication devices via electromagnetic signals. RF circuit 108 optionally includes well-known circuits for performing these functions, including but not limited to antenna systems, RF transceivers, one or more amplifiers, tuners, one or more oscillators, digital signal processors, codec chipsets, user identity modules (SIM) cards, memories, and the like. RF circuit 108 optionally communicates with networks and other devices via wireless communications, such as the Internet (also referred to as the World Wide Web (WWW)), intranets, and / or wireless networks (such as cellular telephone networks, wireless local area networks (LANs), and / or metropolitan area networks (MANs)). RF circuit 108 optionally includes well-known circuits for detecting near field communications (NFC) fields, such as through short-range communication radio components. Wireless communication optionally uses any of a variety of communication standards, protocols and techniques, including, but 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-HSPDA), Long Term Evolution (LTE), Near Field Communication (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, IEEE802.11n and / or IEEE 802.11ac), Voice over Internet Protocol (VoIP), Wi-MAX, email protocols (e.g., Internet Message Access Protocol (IMAP) and / or Post Office Protocol (POP)), instant messaging (e.g., Extensible Messaging and Presence Protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Utilizing Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)) and / or Short Message Service (SMS), or any other suitable communication protocol, including communication protocols that have not been developed as of the filing date of this document.

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

[0107] The I / O subsystem 106 couples input / output peripherals on the device 100, such as a touch screen 112 and other input control devices 116, to a peripheral device interface 118. The I / O subsystem 106 optionally includes a display controller 156, an optical sensor controller 158, a depth camera controller 169, an intensity sensor controller 159, a tactile feedback controller 161, and one or more input controllers 160 for other input or control devices. The one or more input controllers 160 receive / send electrical signals from other input control devices 116. The other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slide switches, joysticks, click wheels, etc. In some embodiments, the input controller 160 is optionally coupled to any of the following (or none of the following): a keyboard, an infrared port, a USB port, and a pointing device such as a mouse. One or more buttons (e.g., Figure 2 208) optionally includes an increase / decrease button for volume control of the speaker 111 and / or the microphone 113. The one or more buttons optionally include a push button (e.g., Figure 2206 in). In some embodiments, the electronic device is a computer system that communicates with one or more input devices (e.g., via wireless communication, via wired communication). In some embodiments, the one or more input devices include a touch-sensitive surface (e.g., a touchpad 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 is 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 through the air, including movement of the user's body relative to an absolute reference (for example, the angle of the user's arm relative to the ground or the distance of the user's hand relative to the ground), movement relative to another part of the user's body (for example, movement of the user's hand relative to the user's shoulder, movement of one of the user's hands relative to the user's other hand, 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 (for example, a tap gesture involving a hand moving a predetermined amount and / or speed in a predetermined posture, or a shake gesture involving a predetermined speed or amount of rotation of a part of the user's body).

[0108] A quick press of the push button optionally disengages the lock of the touch screen 112 or optionally begins the process of unlocking the device using gestures on the touch screen, as described in U.S. Patent Application 11 / 322,549, filed on December 23, 2005, entitled "Unlocking a Device by Performing Gestures on an Unlock Image" (i.e., U.S. Patent No. 7,657,849), which is hereby incorporated by reference in its entirety. A long press of the push button (e.g., 206) optionally turns the device 100 on or off. The functions of one or more buttons are optionally user-customizable. The touch screen 112 is used to implement virtual buttons or soft buttons and one or more soft keyboards.

[0109] The touch-sensitive display 112 provides an input interface and an output interface between the device and the user. The display controller 156 receives electrical signals from the touch screen 112 and / or sends electrical signals to the touch screen. The touch screen 112 displays visual output to the user. The visual output optionally includes graphics, text, icons, videos, and any combination thereof (collectively referred to as "graphics"). In some embodiments, some or all of the visual output optionally corresponds to user interface objects.

[0110] The touch screen 112 has a touch-sensitive surface, sensor, or set of sensors that accept input from a user based on haptic and / or tactile contact. The touch screen 112 and display controller 156 (together with any associated modules and / or instruction sets in memory 102) detect contact (and any movement or interruption of the contact) on the touch screen 112 and convert the detected contact into interaction with a user interface object (e.g., one or more soft keys, icons, web pages, or images) displayed on the touch screen 112. In an exemplary embodiment, the point of contact between the touch screen 112 and the user corresponds to the user's finger.

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

[0112] The touch-sensitive display in some embodiments of touch screen 112 is optionally similar to the multi-touch-sensitive touchpad described in the following U.S. Patents: 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman et al.), and / or U.S. Patent Publication 2002 / 0015024A1, each of which is hereby incorporated by reference in its entirety. However, touch screen 112 displays visual output from device 100, while a touch-sensitive touchpad does not provide visual output.

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

[0114] The touch screen 112 optionally has a video resolution of more than 100 dpi. In some embodiments, the touch screen has a video resolution of about 160 dpi. The user optionally uses any suitable object or attachment such as a stylus, a finger, etc. to contact the touch screen 112. In some embodiments, the user interface is designed to work primarily through finger-based contacts and gestures, which may not be as accurate as stylus-based input due to the larger contact area of ​​the finger on the touch screen. In some embodiments, the device converts rough finger-based input into precise pointer / cursor positioning or commands for performing the actions desired by the user.

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

[0116] The device 100 also includes a power system 162 for powering the various components. The power system 162 optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharging system, a power fault detection circuit, a power converter or inverter, a power status indicator (e.g., a light emitting diode (LED)), and any other components associated with the generation, management, and distribution of power in a portable device.

[0117] Device 100 optionally also includes one or more optical sensors 164 . Figure 1AAn optical sensor coupled to an optical sensor controller 158 in the I / O subsystem 106 is shown. The optical sensor 164 optionally includes a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS) phototransistor. The optical sensor 164 receives light projected through one or more lenses from the environment and converts the light into data representing an image. In conjunction with the imaging module 143 (also called a camera module), the optical sensor 164 optionally captures a static image or video. In some embodiments, the optical sensor is located on the rear of the device 100, opposite to the touch screen display 112 on the front of the device, so that the touch screen display can be used as a viewfinder for static images and / or video image acquisition. In some embodiments, the optical sensor is located on the front of the device so that when the user views other video conference participants on the touch screen display, the image of the user is optionally obtained for video conferencing. In some embodiments, the positioning of the optical sensor 164 can be changed by the user (e.g., by rotating the lens and sensor in the device housing) so that a single optical sensor 164 is used with the touch screen display for both video conferencing and static image and / or video image acquisition.

[0118] Device 100 optionally also includes one or more depth camera sensors 175 . Figure 1A A depth camera sensor coupled to a depth camera controller 169 in the I / O subsystem 106 is shown. The depth camera sensor 175 receives data from the environment to create a three-dimensional model of an object (e.g., a face) within the scene from a viewpoint (e.g., a depth camera sensor). In some embodiments, in conjunction with the imaging module 143 (also referred to as a camera module), the depth camera sensor 175 is optionally used to determine a depth map of different portions of an image captured by the imaging module 143. In some embodiments, the depth camera sensor is located at the front of the device 100, so that an image of the user with depth information is optionally obtained for video conferencing while the user is viewing other video conference participants on the touch screen display, and a selfie with depth map data is captured. In some embodiments, the depth camera sensor 175 is located at the rear of the device, or at both the rear and front of the device 100. In some embodiments, the positioning of the depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and sensor in the device housing) so that the depth camera sensor 175 is used with the touch screen display for both video conferencing and still image and / or video image acquisition.

[0119] In some embodiments, a depth map (e.g., a depth map image) contains information (e.g., values) related to the distance of an object in a scene from a viewpoint (e.g., a camera, an optical sensor, a depth camera sensor). In one embodiment of a depth map, each depth pixel defines the location of its corresponding two-dimensional pixel in the Z axis of the viewpoint. In some embodiments, a depth map consists of pixels, each of which is defined by a value (e.g., 0 to 255). For example, a "0" value represents a pixel located farthest from a viewpoint (e.g., a camera, an optical sensor, a depth camera sensor) in a "three-dimensional" scene, and a "255" value represents a pixel located closest to the viewpoint in a "three-dimensional" scene. In other embodiments, a depth map represents the distance between an object in a scene and the plane of the viewpoint. In some embodiments, a depth map includes information about the relative depths of various features of an object of interest in the field of view of a depth camera (e.g., the relative depths of the eyes, nose, mouth, and ears of a user's face). In some embodiments, a depth map includes information that enables a device to determine the contour of an object of interest in the z direction.

[0120] Device 100 optionally also includes one or more contact intensity sensors 165 . Figure 1A A contact force sensor is shown coupled to a force sensor controller 159 in the I / O subsystem 106. Contact force sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electrical force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other force sensors (e.g., sensors for measuring the force (or pressure) of contact on a touch-sensitive surface). Contact force sensor 165 receives contact force information (e.g., pressure information or a surrogate for pressure information) from the environment. In some embodiments, at least one contact force sensor is juxtaposed or adjacent to a touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact force sensor is located on the back of device 100, opposite to touch screen display 112 located on the front of device 100.

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

[0122] Device 100 optionally also includes one or more tactile output generators 167 . Figure 1A A tactile output generator is shown coupled to a tactile feedback controller 161 in the I / O subsystem 106. The tactile output generator 167 optionally includes one or more electroacoustic devices such as a speaker or other audio component; and / or an electromechanical device for converting energy into linear motion such as a motor, solenoid, electroactive polymer, piezoelectric actuator, electrostatic actuator, or other tactile output generating component (e.g., a component for converting an electrical signal into a tactile output on the device). The contact force sensor 165 receives tactile feedback generation instructions from the tactile feedback module 133 and generates a tactile output on the device 100 that can be felt by a user of the device 100. In some embodiments, at least one tactile output generator is arranged in parallel or adjacent to a touch-sensitive surface (e.g., a touch-sensitive display system 112) and optionally generates a tactile output by moving the touch-sensitive surface vertically (e.g., inward / outward of the surface of the device 100) or laterally (e.g., backward and forward in the same plane as the surface of the device 100). In some embodiments, at least one tactile output generator sensor is located on the back of the device 100, opposite the touch screen display 112 located on the front of the device 100.

[0123] Device 100 optionally also includes one or more accelerometers 168 . Figure 1A An accelerometer 168 coupled to the peripheral device interface 118 is shown. Alternatively, the accelerometer 168 is optionally coupled to the input controller 160 in the I / O subsystem 106. The accelerometer 168 is optionally performed as described in the following U.S. Patent Publication Nos.: 20050190059, entitled "Acceleration-based Theft Detection System for Portable Electronic Devices" and 20060017692, entitled "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer", both of which are incorporated herein by reference in their entirety. In some embodiments, information is displayed in a portrait view or a landscape view on the touch screen display based on analysis of data received from one or more accelerometers. The device 100 optionally includes a magnetometer and a GPS (or GLONASS or other global navigation system) receiver in addition to the accelerometer 168 for obtaining information about the position and orientation (e.g., portrait or landscape) of the device 100.

[0124] In some embodiments, the software components stored in memory 102 include an operating system 126, a communication module (or instruction set) 128, a contact / motion module (or instruction set) 130, a graphics module (or instruction set) 132, a text input module (or instruction set) 134, a global positioning system (GPS) module (or instruction set) 135, and an application (or instruction set) 136. In addition, in some embodiments, memory 102 ( Figure 1A ) or 370( Figure 3 ) storage device / global internal state 157, such as Figure 1A and Figure 3 . The device / global internal state 157 includes one or more of the following: active application state, which indicates which applications (if any) are currently active; display state, which indicates what applications, views, or other information occupy various areas of the touch screen display 112; sensor state, including information obtained from the device's various sensors and input control devices 116; and position information about the device's position and / or posture.

[0125] The 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 for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.), and facilitating communication between various hardware components and software components.

[0126] The communication module 128 facilitates communication with other devices through one or more external ports 124, and also includes various software components for processing data received by the RF circuit 108 and / or the external port 124. The external port 124 (e.g., Universal Serial Bus (USB), FireWire, etc.) is suitable for coupling directly to other devices, or indirectly through a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is connected to (trademark of Apple Inc.) devices.

[0127] The contact / motion module 130 optionally detects contact with the touch screen 112 (in conjunction with the display controller 156) and other touch-sensitive devices (e.g., a touchpad or physical click wheel). The contact / motion module 130 includes various software components for performing various operations related to contact detection, such as determining whether contact has occurred (e.g., detecting a finger press event), determining the contact strength (e.g., the force or pressure of the contact, or a substitute for the force or pressure of the contact), determining whether there is movement of the contact and tracking the movement on 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 lift event or contact disconnection). The contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point optionally includes determining the rate (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point, the movement of the contact point being represented by a series of contact data. These operations are optionally applied to a single point of contact (e.g., a single finger contact) or multiple points of simultaneous contact (e.g., "multi-touch" / multiple finger contacts). In some embodiments, the contact / motion module 130 and display controller 156 detect contact on the touch pad.

[0128] In some embodiments, the contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an action has been performed by a user (e.g., to determine whether a user has "clicked" an icon). In some embodiments, at least a subset of the intensity thresholds are determined based on software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a particular physical actuator and can be adjusted without changing the physical hardware of the device 100). For example, without changing the touchpad or touchscreen display hardware, the mouse "click" threshold of a touchpad or touchscreen can be set to any one of a large range of predefined thresholds. Additionally, in some specific implementations, a software setting is provided to the user of the device for adjusting one or more intensity thresholds in a set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by utilizing a system-level click on an "intensity" parameter to adjust multiple intensity thresholds at once).

[0129] The contact / motion module 130 optionally detects gesture input by the user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motions, timings, and / or intensities of the detected contacts). Therefore, gestures are optionally detected by detecting specific contact patterns. For example, detecting a finger tap gesture includes detecting a finger press event, and then detecting a finger lift (lift-off) event at the same location (or substantially the same location) as the finger press event (e.g., at the location of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger press event, then detecting one or more finger drag events, and then detecting a finger lift (lift-off) event.

[0130] The graphics module 132 includes various known software components for rendering and displaying graphics on the touch screen 112 or other display, including components for changing the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual attributes) of the displayed graphics. As used herein, the term "graphics" 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, videos, animations, etc.

[0131] In some embodiments, the graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. The graphics module 132 receives one or more codes for specifying the graphics to be displayed from an application or the like, along with coordinate data and other graphics attribute data if necessary, and then generates screen image data to be output to the display controller 156.

[0132] Haptic feedback module 133 includes various software components for generating instructions used by tactile output generator 167 to produce tactile output at one or more locations on device 100 in response to user interaction with device 100 .

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

[0134] The GPS module 135 determines the location of the device and provides this information for use in 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 map / navigation widget).

[0135] Application 136 optionally includes the following modules (or instruction sets) or a subset or superset thereof:

[0136] Contacts module 137 (sometimes called address book or contact list);

[0137] Telephone module 138;

[0138] Video conferencing module 139;

[0139] Email client module 140;

[0140] Instant messaging (IM) module 141;

[0141] Fitness support module 142;

[0142] A camera module 143 for still images and / or video images;

[0143] Image management module 144;

[0144] Video player module;

[0145] Music player module;

[0146] Browser module 147;

[0147] Calendar module 148;

[0148] A widget module 149, which optionally includes one or more of the following: a weather widget 149-1, a stock market widget 149-2, a calculator widget 149-3, an alarm widget 149-4, a dictionary widget 149-5, and other widgets acquired by the user and a widget 149-6 created by the user;

[0149] A widget creator module 150 for forming a user-created widget 149 - 6 ;

[0150] Search module 151;

[0151] Video and music player module 152, which merges the video player module and the music player module;

[0152] Memo module 153;

[0153] Map module 154; and / or

[0154] Online video module 155.

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

[0156] In combination with the touch screen 112, display controller 156, touch / motion module 130, graphics module 132 and text input module 134, the contact module 137 is optionally used to manage an address book or contact list (for example, stored in the application internal state 192 of the contact module 137 in memory 102 or memory 370), including: adding one or more names to the address book; deleting names from the address book; associating phone numbers, email addresses, physical addresses or other information with names; associating images with names; categorizing and classifying names; providing phone numbers or email addresses to initiate and / or facilitate communications via telephone 138, video conferencing module 139, email 140 or IM 141; and the like.

[0157] In conjunction with RF circuit 108, audio circuit 110, speaker 111, microphone 113, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, phone module 138 is optionally used to enter a character sequence corresponding to a phone number, access one or more phone numbers in contact module 137, modify an entered phone number, dial a corresponding phone number, conduct a conversation, and disconnect or hang up when the conversation is completed. As described above, wireless communication optionally uses any of a variety of communication standards, protocols, and technologies.

[0158] In combination with the RF circuit 108, the audio circuit 110, the speaker 111, the microphone 113, the touch screen 112, the display controller 156, the optical sensor 164, the optical sensor controller 158, the contact / motion module 130, the graphics module 132, the text input module 134, the contact module 137 and the telephone module 138, the video conferencing module 139 includes executable instructions for initiating, conducting and terminating a video conference between a user and one or more other participants in accordance with user instructions.

[0159] In conjunction with RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, email client module 140 includes executable instructions for creating, sending, receiving, and managing emails in response to user instructions. In conjunction with image management module 144, email client module 140 makes it very easy to create and send emails with still images or video images captured by camera module 143.

[0160] In conjunction with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, and the text input module 134, the instant messaging module 141 includes executable instructions for the following operations: entering a character sequence corresponding to an instant message, modifying previously entered characters, transmitting a corresponding instant message (e.g., using a short message service (SMS) or multimedia message service (MMS) protocol for telephone-based instant messaging or using XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, the transmitted and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments supported in MMS and / or enhanced messaging services (EMS). As used herein, "instant messaging" refers to both telephone-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).

[0161] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the contact / motion module 130, the graphics module 132, the text input module 134, the GPS module 135, the map module 154 and the music player module, the fitness support module 142 includes executable instructions for creating a fitness (e.g., with time, distance and / or calorie burn goals); communicating with fitness sensors (sports equipment); receiving fitness sensor data; calibrating sensors for monitoring fitness; selecting and playing music for fitness; and displaying, storing and transmitting fitness data.

[0162] In conjunction with the touch screen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact / motion module 130, graphics module 132 and image management module 144, the camera module 143 includes executable instructions for the following operations: capturing still images or videos (including video streams) and storing them in the memory 102, modifying the characteristics of the still images or videos, or deleting the still images or videos from the memory 102.

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

[0164] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132 and the text input module 134, the browser module 147 includes executable instructions for browsing the Internet in accordance with user instructions, including searching, linking to, receiving and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.

[0165] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132, the text input module 134, the email client module 140 and the browser module 147, the calendar module 148 includes executable instructions for creating, displaying, modifying and storing calendars and data associated with the calendar (e.g., calendar entries, to-do items, etc.) in accordance with user instructions.

[0166] In conjunction with RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, and browser module 147, widget module 149 is a mini-application that is optionally downloaded and used by a user (e.g., weather widget 149-1, stock market widget 149-2, calculator widget 149-3, alarm widget 149-4, and dictionary widget 149-5) or a mini-application created by a user (e.g., user-created widget 149-6). In some embodiments, the widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, the widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! widget).

[0167] In combination with the RF circuit 108, touch screen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134 and browser module 147, the widget creator module 150 is optionally used by a user to create widgets (e.g., converting a user-specified portion of a web page into a widget).

[0168] In combination with the touch screen 112, display controller 156, contact / motion module 130, graphics module 132 and text input module 134, the search module 151 includes executable instructions for searching the memory 102 for text, music, sound, images, videos and / or other files that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user instructions.

[0169] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 includes executable instructions that allow a user to download and play back recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, and executable instructions for displaying, presenting, or otherwise playing back video (e.g., on touch screen 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 (trademark of Apple Inc.).

[0170] In conjunction with the touch screen 112, the display controller 156, the contact / motion module 130, the graphic module 132, and the text input module 134, the memo module 153 includes executable instructions for creating and managing memos, to-do items, etc. according to user instructions.

[0171] In combination with the RF circuit 108, the touch screen 112, the display controller 156, the touch / motion module 130, the graphics module 132, the text input module 134, the GPS module 135 and the browser module 147, the map module 154 is optionally used to receive, display, modify and store maps and data associated with the maps (e.g., driving directions, data relating to stores and other points of interest at or near a particular location, and other location-based data) in accordance with user instructions.

[0172] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuit 110, speaker 111, RF circuit 108, text input module 134, email client module 140, and browser module 147, online video module 155 includes instructions for the following operations: allowing a user to access, browse, receive (e.g., by streaming and / or downloading), playback (e.g., on the touch screen or on an external display connected via external port 124), send an email with a link to a specific online video, and otherwise manage online videos in one or more file formats such as H.264. In some embodiments, instant messaging module 141 is used instead of email client module 140 to send a link to a specific online video. Additional description of online video applications can be found in U.S. Provisional Patent Application No. 60 / 936,562, filed on 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 on December 31, 2007, entitled “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” the contents of which are hereby incorporated by reference in their entirety.

[0173] Each of the modules and applications described above corresponds to an executable instruction set for performing one or more of the functions described above and the methods described in this patent application (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., instruction sets) do not have to be implemented as independent software programs (such as computer programs (e.g., including instructions)), processes, or modules, so various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. For example, a video player module is optionally combined with a music player module into a single module (e.g., Figure 1A In some embodiments, the memory 102 optionally stores a subset of the above modules and data structures. In addition, the memory 102 optionally stores additional modules and data structures not described above.

[0174] In some embodiments, the device 100 is a device where the operation of a predefined set of functions on the device is performed exclusively through a touch screen and / or a touch pad. By using a touch screen and / or a touch pad as the primary input control device for operating the device 100, the number of physical input control devices (e.g., push buttons, dials, etc.) on the device 100 is optionally reduced.

[0175] A predefined set of functions that are performed exclusively through the touch screen and / or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by the user, navigates the device 100 to a main menu, a home menu, or a root menu from any user interface displayed on the 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.

[0176] Figure 1B is a block diagram illustrating exemplary components for event processing according to some embodiments. In some embodiments, memory 102 ( Figure 1A ) or memory 370( Figure 3 ) includes an event classifier 170 (e.g., in the operating system 126) and a corresponding application 136-1 (e.g., any one of the aforementioned applications 137 to 151, 155, 380 to 390).

[0177] Event classifier 170 receives event information and determines the application 136-1 and the application view 191 of application 136-1 to which the event information is to be delivered. Event classifier 170 includes event monitor 171 and event distributor module 174. In some embodiments, application 136-1 includes application internal state 192, which indicates one or more current application views displayed on touch-sensitive display 112 when the application is active or executing. In some embodiments, device / global internal state 157 is used by event classifier 170 to determine which application(s) is currently active, and application internal state 192 is used by event classifier 170 to determine the application view 191 to which the event information is to be delivered.

[0178] In some embodiments, the application internal state 192 includes additional information, such as one or more of the following: resumption information to be used when application 136-1 resumes execution, user interface state information indicating that information is being displayed or is ready to be displayed by application 136-1, a state queue for enabling a user to return to a previous state or view of application 136-1, and a repeat / undo queue of previous actions taken by the user.

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

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

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

[0182] When the touch-sensitive display 112 displays more than one view, the hit view determination module 172 provides software procedures for determining where within one or more views a sub-event has occurred. A view consists of controls and other elements that a user can see on the display.

[0183] Another aspect of the user interface associated with an application is a set of views, sometimes also referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application views (of the respective application) in which a touch is detected optionally correspond to a programmatic level within the programmatic or view hierarchy of the application. For example, the lowest level view in which a touch is detected is optionally referred to as a hit view, and the set of events that are identified as correct input is optionally determined at least in part based on the hit view of the initial touch that started the touch-based gesture.

[0184] Hit view determination module 172 receives information related to sub-events of touch-based gestures. When an application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should handle the sub-events. In most cases, the hit view is the lowest level view in which the initiating sub-event (e.g., the first sub-event in a sequence of sub-events that form an event or potential event) occurs. 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 for which it is identified as the hit view.

[0185] Active event recognizer determination module 173 determines which view or views within 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 include 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 an area associated with one particular view, higher views in the hierarchy will still remain as actively participating views.

[0186] Event distributor module 174 distributes event information to event recognizers (e.g., event recognizers 180). In embodiments including active event recognizer determination module 173, event distributor module 174 delivers the event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event distributor module 174 stores the event information in an event queue, which is retrieved by corresponding event receivers 182.

[0187] In some embodiments, operating system 126 includes event classifier 170. Alternatively, application 136-1 includes event classifier 170. In yet another embodiment, event classifier 170 is a standalone module or is part of another module stored in memory 102, such as contact / motion module 130.

[0188] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each of which includes instructions for handling touch events occurring within a corresponding view of the user interface of the application. Each application view 191 of application 136-1 includes one or more event identifiers 180. Typically, the corresponding application view 191 includes multiple event identifiers 180. In other embodiments, one or more event identifiers in event identifiers 180 are part of an independent module, which is a higher-level object such as a user interface toolkit or application 136-1 from which methods and other properties are inherited. In some embodiments, the corresponding event handler 190 includes one or more of the following: data updater 176, object updater 177, GUI updater 178 and / or event data 179 received from event classifier 170. Event handler 190 optionally utilizes or calls 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 corresponding event handlers 190. In addition, in some embodiments, one or more of the data updater 176, the object updater 177, and the GUI updater 178 are included in the corresponding application view 191.

[0189] The corresponding event identifier 180 receives event information (e.g., event data 179) from the event classifier 170 and identifies the event based on the event information. The event identifier 180 includes an event receiver 182 and an event comparator 184. In some embodiments, the event identifier 180 also includes metadata 183 and at least a subset of event delivery instructions 188 (which optionally includes sub-event delivery instructions).

[0190] Event receiver 182 receives event information from event classifier 170. Event information includes information about sub-events such as touch or touch movement. Depending on the sub-event, the event information also includes additional information, such as the location of the sub-event. When the sub-event involves the movement of the touch, the event information optionally also includes the speed and direction of the sub-event. In some embodiments, the event includes the device rotating from one orientation to another orientation (for example, from a longitudinal orientation to a transverse orientation, or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the device posture).

[0191] Event comparator 184 compares event information with predefined event or sub-event definitions, and determines an event or sub-event based on the comparison, or determines or updates the state of an event or sub-event. In some embodiments, event comparator 184 includes event definition 186. Event definition 186 includes the definition of an event (e.g., a predefined sub-event sequence), such as event 1 (187-1), event 2 (187-2), and others. In some embodiments, sub-events in events (e.g., 187-1 and / or 187-2) include, for example, touch start, touch end, touch move, touch cancel, and multi-touch. In one example, the definition of event 1 (187-1) is a double-click on a displayed object. For example, a double-click includes a first touch (touch start) of a predetermined duration on a displayed object, a first lift-off (touch end) of a predetermined duration, a second touch (touch start) of a predetermined duration on a displayed object, and a second lift-off (touch end) of a predetermined duration. In another example, the definition of event 2 (187-2) is a drag on a displayed object. For example, dragging includes a touch (or contact) of a predetermined duration on a displayed object, movement of the touch on the touch-sensitive display 112, and lifting of the touch (touch end). In some embodiments, the event also includes information for one or more associated event handlers 190.

[0192] In some embodiments, event definition 186 includes a definition of an event for a corresponding user interface object. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with a sub-event. For example, in an application view displaying three user interface objects on touch-sensitive display 112, when a touch is detected 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 corresponding event handler 190, the event comparator uses the result of the hit test to determine which event handler 190 should be activated. For example, event comparator 184 selects an event handler associated with a sub-event and the object that triggered the hit test.

[0193] In some embodiments, the definition of the corresponding event (187) also includes a delay action that delays the delivery of the event information until it has been determined that the sub-event sequence does or does not correspond to the event type of the event identifier.

[0194] When a corresponding event recognizer 180 determines that a sequence of sub-events does not match any event in event definition 186, the corresponding event recognizer 180 enters an event impossible, event failed, or event ended state, after which subsequent sub-events of the touch-based gesture are ignored. In this case, other event recognizers (if any) that remain active for the hit view continue to track and process sub-events of the ongoing touch-based gesture.

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

[0196] In some embodiments, when one or more specific sub-events of an event are identified, the corresponding event recognizer 180 activates an event handler 190 associated with the event. In some embodiments, the corresponding event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is different from sending (and deferred sending) the sub-events to the corresponding hit view. In some embodiments, the event recognizer 180 throws a flag associated with the identified event, and the event handler 190 associated with the flag obtains the flag and executes a predefined process.

[0197] In some embodiments, the event delivery instructions 188 include a sub-event delivery instruction that delivers event information about a sub-event without activating an event handler. Instead, the sub-event delivery instruction delivers the event information to an event handler associated with a sub-event sequence or to an actively participating view. The event handler associated with the sub-event sequence or with an actively participating view receives the event information and executes a predetermined process.

[0198] In some embodiments, data updater 176 creates and updates data used in application 136-1. For example, data updater 176 updates phone numbers used in contact module 137 or stores video files used in video player module. In some embodiments, object updater 177 creates and updates objects used in application 136-1. For example, object updater 177 creates new user interface objects or updates the positioning 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 a touch-sensitive display.

[0199] In some embodiments, event handler 190 includes or has 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 included in a single module of the corresponding application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.

[0200] It should be understood that the above discussion of event processing of user touches on a touch-sensitive display also applies to other forms of user input that utilize input devices to operate the multifunction device 100, and not all user input is initiated on the touch screen. For example, mouse movement and mouse button presses, optionally in conjunction with single or multiple keyboard presses or holddowns; contact movement on a touch pad, such as tapping, dragging, scrolling, etc.; stylus input; movement of the device; verbal commands; detected eye movement; biometric input; and / or any combination thereof are optionally used as input corresponding to sub-events that define the event to be distinguished.

[0201] Figure 2A portable multifunction device 100 with a touch screen 112 according to some embodiments is illustrated. The touch screen optionally displays one or more graphics within a user interface (UI) 200. In this embodiment and other embodiments described below, a user can select one or more of these graphics by, for example, making gestures on the graphics using one or more fingers 202 (not drawn to scale in the figure) or one or more styluses 203 (not drawn to scale in the figure). In some embodiments, when the user interrupts contact with one or more graphics, selection of one or more graphics will occur. In some embodiments, gestures optionally include one or more taps, one or more swipes (from left to right, from right to left, up and / or down) and / or rolling of fingers that have been in contact with the device 100 (from right to left, from left to right, up and / or down). In some specific implementations or in some cases, inadvertent contact with a graphic will not select the graphic. For example, when the gesture corresponding to the selection is a tap, a swipe gesture that sweeps over an application icon optionally does not select the corresponding application.

[0202] The device 100 optionally also includes one or more physical buttons, such as a "home" or menu button 204. As previously described, the menu button 204 is optionally used to navigate to any application 136 in a set of applications that are optionally executed on the device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on the touch screen 112.

[0203] In some embodiments, the device 100 includes a touch screen 112, a menu button 204, a push button 206 for turning the device on / off and for locking the device, one or more volume adjustment buttons 208, a user identity module (SIM) card slot 210, an earphone jack 212, and a docking / charging external port 124. The push button 206 is optionally used to turn the device on / off by pressing the button and keeping the button in a pressed state for a predefined time interval; lock the device by pressing the button and releasing the button before the predefined time interval passes; and / or unlock the device or initiate an unlocking process. In an alternative embodiment, the device 100 also accepts voice input for activating or deactivating certain functions through a microphone 113. The device 100 also optionally includes one or more contact strength sensors 165 for detecting the strength of contact on the touch screen 112, and / or one or more tactile output generators 167 for generating tactile output for a user of the device 100.

[0204] Figure 3300 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface according to some embodiments. Device 300 does not have to 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 children's learning toy), a game system, or a control device (e.g., a home controller or an industrial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, a memory 370, and one or more communication buses 320 for interconnecting these components. The communication bus 320 optionally includes circuits (sometimes referred to as a chipset) that interconnect system components and control communications between system components. Device 300 includes an input / output (I / O) interface 330 with a display 340, which is typically a touch screen display. The I / O interface 330 also optionally includes a keyboard and / or a mouse (or other pointing device) 350 and a touchpad 355, a tactile output generator 357 for generating tactile output on the device 300 (e.g., similar to the above reference Figure 1A The tactile output generator 167 described above), the sensor 359 (e.g., an optical sensor, an acceleration sensor, a proximity sensor, a touch sensitive sensor, and / or a contact intensity sensor (similar to the above reference Figure 1A Memory 370 optionally includes one or more storage devices located away from CPU 310. In some embodiments, memory 370 stores data related to portable multifunction device 100 ( Figure 1A ) or a subset thereof. In addition, 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 a drawing module 380, a presentation module 382, ​​a word processing module 384, a website creation module 386, a disk editing module 388, and / or a spreadsheet module 390, while portable multifunction device 100 ( Figure 1A )'s memory 102 optionally does not store these modules.

[0205] Figure 3Each element in the above-mentioned elements in is optionally stored in one or more memory devices of the previously mentioned memory device. Each module in the above-mentioned modules corresponds to the instruction set for performing the function described above. The above-mentioned modules or computer programs (for example, instruction sets or including instructions) do not have to be realized with separate software programs (such as computer programs (for example, including instructions)), processes or modules, and therefore the various subsets of these modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, memory 370 optionally stores the subset of the above-mentioned modules and data structures. In addition, memory 370 optionally stores additional modules and data structures not described above.

[0206] Attention is now turned to an embodiment of a user interface that is optionally implemented on, for example, portable multifunction device 100.

[0207] Figure 4A An exemplary user interface of an application menu on portable multifunction device 100 according to some embodiments is illustrated. 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:

[0208] Signal strength indicators 402 for wireless communications such as cellular signals and Wi-Fi signals;

[0209] Time 404;

[0210] Bluetooth indicator 405;

[0211] Battery status indicator 406;

[0212] A tray 408 with icons for commonly used applications, such as:

[0213] o an icon 416 of the phone module 138 labeled “Phone”, which optionally includes an indicator 414 of the number of missed calls or voicemail messages;

[0214] o an icon 418 of the email client module 140 labeled “Mail”, which optionally includes an indicator 410 of the number of unread emails;

[0215] o an icon 420 labeled "Browser" of the browser module 147; and

[0216] o Video and music player module 152 (also known as iPod (trademark of Apple Inc.)

[0217] module 152) and an icon 422 labeled "iPod"; and

[0218] Icons for other apps, such as:

[0219] o Icon 424 labeled “Messages” of IM module 141;

[0220] o Icon 426 labeled “Calendar” of calendar module 148;

[0221] o Icon 428 labeled “Photos” of the image management module 144;

[0222] o Icon 430 labeled “Camera” of camera module 143;

[0223] o Icon 432 labeled “Online Video” of the online video module 155;

[0224] o Icon 434 labeled “Stock Market” of the stock market widget 149 - 2 ;

[0225] o an icon 436 labeled “MAP” of the map module 154;

[0226] o Icon 438 labeled “Weather” of the weather widget 149 - 1 ;

[0227] o Icon 440 labeled “Clock” of the alarm clock widget 149 - 4 ;

[0228] o an icon 442 labeled “Fitness Support” of the fitness support module 142;

[0229] o an icon 444 labeled “Memo” of the memo module 153; and

[0230] o An icon 446 of a settings application or module labeled “Settings” that provides access to settings for the device 100 and its various applications 136 .

[0231] It should be noted that Figure 4A The illustrated icon labels are exemplary only. For example, the icon 422 of the 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 of the corresponding application icon includes the name of the application corresponding to the corresponding application icon. In some embodiments, the label of a particular application icon is different from the name of the application corresponding to the particular application icon.

[0232] Figure 4B The example embodiment has a touch-sensitive surface 451 (eg, touch screen display 112) that is separate from a display 450 (eg, touch screen display 112). Figure 3 a tablet device or a touch pad 355) (e.g., Figure 3Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) for detecting intensity of contacts on touch-sensitive surface 451 and / or one or more tactile output generators 357 for generating tactile output for a user of device 300.

[0233] Although some of the examples below are given with reference to input on a touch screen display 112 (where a touch-sensitive surface and a display are combined), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display, such as Figure 4B In some embodiments, the touch-sensitive surface (e.g., Figure 4B 451) has a main axis (e.g., Figure 4B 453) corresponding to the principal axis (for example, Figure 4B According to these embodiments, the device detects a position corresponding to a corresponding position on the display (e.g., Figure 4B 460 corresponds to 468 and 462 corresponds to 470) in contact with touch-sensitive surface 451 (e.g., Figure 4B Thus, when the touch-sensitive surface (e.g., Figure 4B 451) and a display of a multi-function device (e.g., Figure 4B When the user input detected by the device on the touch-sensitive surface (e.g., contacts 460 and 462 and their movement) is separated, the device is used to manipulate the user interface on the display. It should be understood that similar methods are optionally used for other user interfaces described herein.

[0234] Additionally, although the following examples are primarily given with reference to finger inputs (e.g., finger contacts, single-finger tap gestures, finger swipe gestures), it should be understood that in some embodiments, one or more of these finger inputs are replaced by 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 contact), followed by movement of the 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 when the cursor is over the location of the tap gesture (e.g., instead of detecting contact, followed by ceasing to detect contact). Similarly, when multiple user inputs are detected simultaneously, it should be understood that multiple computer mice are optionally used simultaneously, or mice and finger contacts are optionally used simultaneously.

[0235] Figure 5AAn exemplary personal electronic device 500 is illustrated. Device 500 includes a body 502. In some embodiments, device 500 may include a body 502 relative to devices 100 and 300 (e.g., Figures 1A to 4B ) some or all of the features described in the foregoing. In some embodiments, device 500 has a touch-sensitive display screen 504, referred to hereinafter as touch screen 504. Alternatively, or in addition to touch screen 504, device 500 also has a display and a touch-sensitive surface. As with devices 100 and 300, in some embodiments, touch screen 504 (or touch-sensitive surface) optionally includes one or more intensity sensors for detecting the intensity of contact (e.g., touch) applied. One or more intensity sensors of touch screen 504 (or touch-sensitive surface) can provide output data representing the intensity of touch. The user interface of device 500 can respond to touch based on the intensity of the touch, which means that touches of different intensities can invoke different user interface operations on device 500.

[0236] Exemplary techniques for detecting and processing touch intensity are found, for example, in the following related applications: International patent application serial number PCT / US2013 / 040061, entitled “Device, Method, and Graphical User Interface for Displaying UserInterface Objects Corresponding to an Application,” filed on May 8, 2013, published as WIPO publication number WO / 2013 / 169849; and International patent application serial number PCT / US2013 / 069483, entitled “Device, Method, and Graphical User Interface for Transitioning Between TouchInput to Display Output Relationships,” filed on November 11, 2013, published as WIPO publication number WO / 2014 / 105276, each of which is hereby incorporated by reference in its entirety.

[0237] In some embodiments, the device 500 has one or more input mechanisms 506 and 508. The input mechanisms 506 and 508 (if included) can be physical. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, the device 500 has one or more attachment mechanisms. Such attachment mechanisms (if included) can allow the device 500 to be attached to, for example, hats, glasses, earrings, necklaces, shirts, jackets, bracelets, watchbands, bracelets, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow the user to wear the device 500.

[0238] Figure 5B An exemplary personal electronic device 500 is depicted. In some embodiments, the device 500 may include a Figure 1A , Figure 1B and Figure 3 Some or all of the components described. Device 500 has a bus 512 that operatively couples an I / O portion 514 to one or more computer processors 516 and a memory 518. I / O portion 514 may be connected to a display 504, which may have a touch-sensitive component 522 and optionally a strength sensor 524 (e.g., a contact strength sensor). In addition, I / O portion 514 may be connected to a communication unit 530 for receiving application and operating system data using Wi-Fi, Bluetooth, near field communication (NFC), cellular and / or other wireless communication technologies. Device 500 may include input mechanisms 506 and / or 508. For example, input mechanism 506 is optionally a rotatable input device or a depressible input device and a rotatable input device. In some examples, input mechanism 508 is optionally a button.

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

[0240] 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, may cause the computer processors to perform the following techniques, including processes 700-900, 1100-1200, 1400-1500, and 1700-1800 ( Figures 7 to 9 , Figure 11 to Figure 12 , Figure 14 to Figure 15 and Figure 17 to Figure 18). Computer-readable storage media can be any medium that can tangibly contain or store computer-executable instructions for use by or in conjunction with instruction execution systems, devices, and apparatuses. In some examples, the storage medium is a transient computer-readable storage medium. In some examples, 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, optical disks based on CD, DVD, or Blu-ray technology, and persistent solid-state memories such as flash memory, solid-state drives, and the like. Personal electronic device 500 is not limited to Figure 5B components and configurations, but may include other components or additional components in a variety of configurations.

[0241] As used herein, the term "indicative representation" refers to an optional feature of the apparatus 100, 300, and / or 500 ( Figure 1A , Figure 3 and FIG. 5A to FIG. 5B ) is a user-interactive graphical user interface object displayed on a display screen of a computer. For example, an image (e.g., an icon), a button, and text (e.g., a hyperlink) optionally each constitute an affordance.

[0242] As used herein, the term "focus selector" refers to an input element used to indicate the current portion of a user interface that a user is interacting with. In some implementations that include a cursor or other position marker, the cursor acts as a "focus selector" such that when the cursor is over a particular user interface element (e.g., a button, window, slider, or other user interface element), a focus selector is displayed on a touch-sensitive surface (e.g., Figure 3 Touchpad 355 or Figure 4B In the event that an input (e.g., a press input) is detected on the touch-sensitive surface 451 in the display, the particular user interface element is adjusted according to the detected input. In the case that a touch-screen display (e.g., Figure 1A A touch-sensitive display system 112 or Figure 4AIn some implementations of the touch screen 112 in FIG. 1 , a contact detected on the touch screen acts as a “focus selector” such that when an input (e.g., a press input by the 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 touch screen display, the particular user interface element is adjusted in accordance with the detected input. In some implementations, the focus moves from one area of ​​the user interface to another area of ​​the user interface without corresponding movement of a cursor or movement of a contact on the touch screen display (e.g., by using a tab key or arrow keys to move the focus from one button to another); in these implementations, the focus selector moves in accordance with the movement of the focus between different areas of the user interface. Regardless of the specific form the focus selector takes, the focus selector is typically a user interface element (or contact on the touch screen display) that is controlled by the user to deliver the user's intended interaction with the user interface (e.g., by indicating to the device the element of the user interface with which the user desires to interact). For example, when a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen), the position of a focus selector (e.g., a cursor, contact, or selection box) over a corresponding button will indicate that the user intends to activate the corresponding button (rather than other user interface elements shown on the device display).

[0243] As used in the specification and claims, the term "characteristic intensity" of a contact refers to a characteristic of a contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on multiple intensity samples. The characteristic intensity is optionally based on a predefined number of intensity samples or a set of intensity samples collected during a predetermined time period (e.g., 0.05 seconds, 0.1 seconds, 0.2 seconds, 0.5 seconds, 1 second, 2 seconds, 5 seconds, 10 seconds) relative to a predefined event (e.g., after contact is detected, before contact is detected to be lifted off, before or after contact starts to move, before contact ends, before or after contact intensity is detected to increase, and / or before or after contact intensity is detected to decrease). The characteristic intensity of a contact is optionally based on one or more of the following: the maximum value of the intensity of the contact, the mean value of the intensity of the contact, the average value of the intensity of the contact, the value at the top 10% of the intensity of the contact, the half-maximum value of the intensity of the contact, the 90% maximum value of the intensity of the contact, etc. In some embodiments, the duration of the contact is used when determining the characteristic intensity (e.g., when the characteristic intensity is the average value of the intensity of the contact over time). In some embodiments, the feature strength is compared to a set of one or more strength thresholds to determine whether the user has performed an operation. For example, the set of one or more strength thresholds optionally includes a first strength threshold and a second strength threshold. In this example, a contact whose feature strength does not exceed the first threshold results in a first operation, a contact whose feature strength exceeds the first strength threshold but does not exceed the second strength threshold results in a second operation, and a contact whose feature strength exceeds the second threshold results in a third operation. In some embodiments, a comparison between the feature strength and one or more thresholds is used to determine whether to perform one or more operations (e.g., whether to perform the corresponding operation or give up performing the corresponding operation) rather than to determine whether to perform the first operation or the second operation.

[0244] Figure 5C Detecting multiple contacts 552A-552E on touch-sensitive display screen 504 using multiple intensity sensors 524A-524D is illustrated. Figure 5C Also included is an intensity graph that shows the current intensity measurements of intensity sensors 524A-524D relative to intensity units. In this example, the intensity measurements of intensity sensors 524A and 524D are each 9 intensity units, and the intensity measurements of intensity sensors 524B and 524C are each 7 intensity units. In some implementations, the cumulative intensity is the sum of the intensity measurements of multiple intensity sensors 524A-524D, which is 32 intensity units in this example. In some embodiments, each contact is assigned a corresponding intensity, which is a portion of the cumulative intensity. Figure 5DThe assignment of cumulative strengths to contacts 552A-552E based on their distances from the center of force 554 is illustrated. In this example, each of contacts 552A, 552B, and 552E is assigned a contact strength of 8 strength units of the cumulative strength, and each of contacts 552C and 552D is assigned a contact strength of 4 strength units of the cumulative strength. More generally, in some implementations, each contact j is assigned a corresponding strength Ij, which is a portion of the cumulative strength A, according to a predefined mathematical function Ij=A·(Dj / ΣDi), where Dj is the distance of the corresponding contact j from the center of force, and ΣDi is the sum of the distances of all corresponding contacts (e.g., i=1 to the last) from the center of force. Reference may be performed using an electronic device similar to or equivalent to device 100, 300, or 500. FIG. 5C to FIG. 5D In some embodiments, the characteristic intensity of the contact is based on one or more intensities of the contact. In some embodiments, the intensity sensor is used to determine a single characteristic intensity (e.g., a single characteristic intensity of a single contact). It should be noted that the intensity map is not part of the displayed user interface, but is included in the FIG. 5C to FIG. 5D To assist the readers.

[0245] In some embodiments, a portion of a gesture is identified for determining characteristic strength. For example, the touch-sensitive surface optionally receives a continuous swipe contact that transitions from a starting position and reaches an end position, where the contact strength increases. In this example, the characteristic strength of the contact at the end position is optionally based only on a portion of the continuous swipe contact, rather than the entire swipe contact (e.g., only the portion of the swipe contact at the end position). In some embodiments, a smoothing algorithm is optionally applied to the strength of the swipe contact before determining the characteristic strength of the contact. For example, a smoothing algorithm optionally includes one or more of the following: an unweighted sliding average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some cases, these smoothing algorithms eliminate narrow peaks or depressions in the strength of the swipe contact to achieve the purpose of determining the characteristic strength.

[0246] The intensity of contact on the touch-sensitive surface is optionally characterized relative to one or more intensity thresholds such as a contact detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to an intensity at which the device will perform an operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device will perform an operation different from the operation typically associated with clicking a button of a physical mouse or trackpad. In some embodiments, when a contact having a characteristic intensity lower than the light press intensity threshold (e.g., and higher than a nominal contact detection intensity threshold, contacts lower than the nominal contact detection intensity threshold are no longer detected) is detected, the device will move the focus selector according to the movement of the contact on the touch-sensitive surface without performing an operation associated with the light press intensity threshold or the deep press intensity threshold. Generally speaking, unless otherwise stated, these intensity thresholds are consistent between different groups of user interface illustrations.

[0247] An increase in contact feature intensity from an intensity below a light press intensity threshold to an intensity between the light press intensity threshold and the deep press intensity threshold is sometimes referred to as a "light press" input. An increase in contact feature intensity from an intensity below a deep press intensity threshold to an intensity above the deep press intensity threshold is sometimes referred to as a "deep press" input. An increase in contact feature intensity from an intensity below a contact detection intensity threshold to an intensity between the contact detection intensity threshold and the light press intensity threshold is sometimes referred to as detecting contact on the touch surface. A decrease in contact feature intensity from an intensity above the contact detection intensity threshold to an intensity below the contact detection intensity threshold is sometimes referred to as detecting contact lifted from the touch surface. In some embodiments, the contact detection intensity threshold is zero. In some embodiments, the contact detection intensity threshold is greater than zero.

[0248] In some embodiments described herein, one or more operations are performed in response to detecting a gesture that includes a corresponding press input or in response to detecting a corresponding press input performed using a corresponding contact (or multiple contacts), wherein the corresponding press input is detected at least in part based on detecting that the strength of the contact (or multiple contacts) increases to above a press input strength threshold. In some embodiments, the corresponding operation is performed in response to detecting that the strength of the corresponding contact increases to above the press input strength threshold (e.g., a "down stroke" of the corresponding press input). In some embodiments, the press input includes an increase in the strength of the corresponding contact to above the press input strength threshold and the strength of the contact subsequently decreases to below the press input strength threshold, and the corresponding operation is performed in response to detecting that the strength of the corresponding contact subsequently decreases to below the press input threshold (e.g., an "up stroke" of the corresponding press input).

[0249] FIG. 5E to FIG. 5HDetection of a gesture is illustrated, the gesture comprising contact 562 with an intensity ranging from less than Figure 5E The light press intensity threshold in L ”) increases to a strength higher than Figure 5H The deep compression intensity threshold in D ”). On the displayed user interface 570 including application icons 572A-572D displayed in the predefined area 574, when the cursor 576 is displayed above the application icon 572B corresponding to application 2, a gesture performed using contact 562 is detected on the touch-sensitive surface 560. In some embodiments, the gesture is detected on the touch-sensitive display 504. The intensity sensor detects the intensity of the contact on the touch-sensitive surface 560. The device determines whether the intensity of the contact 562 is within the deep press intensity threshold (for example, “IT D ”) reaches a peak above. Contact 562 is maintained on touch-sensitive surface 560. In response to detecting the gesture, and according to the intensity increasing to a deep press intensity threshold (e.g., “IT D ”) above contact 562, displays scaled representations 578A-578C (e.g., thumbnails) of documents recently opened for application 2, such as FIG. 5F to FIG. 5H In some embodiments, the intensity is a characteristic intensity of the contact compared to one or more intensity thresholds. It should be noted that the intensity map for contact 562 is not part of the displayed user interface, but is included in the FIG. 5E to FIG. 5H To assist the readers.

[0250] In some embodiments, the display of representations 578A-578C includes animation. For example, representation 578A is initially displayed near application icon 572B, such as Fig. 5F As the animation progresses, representation 578A moves upward and representation 578B is displayed near application icon 572B, as shown. Figure 5G Then, representation 578A moves upward, 578B moves upward toward representation 578A, and representation 578C is displayed near application icon 572B, as shown in FIG. Figure 5H 578A-578C form an array above icon 572B. In some embodiments, the animation progresses according to the intensity of contact 562, such as Figure 5F to Figure 5G , where representations 578A-578C appear and increase as the strength of contact 562 approaches a deep press strength threshold (eg, “IT D ”) increases and moves upward. In some embodiments, the intensity according to which the animation progresses is the characteristic intensity of the contact. The reference may be performed using an electronic device similar to or equivalent to device 100, 300, or 500. FIG. 5E to FIG. 5H The operation described.

[0251] In some embodiments, the device employs intensity hysteresis to avoid unexpected inputs sometimes referred to as "jitter," where the device defines or selects a hysteresis intensity threshold that has a predefined relationship to a press input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units lower than the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable proportion of the press input intensity threshold). Thus, in some embodiments, a press input includes an increase in the intensity of the corresponding contact to above the press input intensity threshold and a subsequent decrease in the intensity of the contact to below the hysteresis intensity threshold corresponding to the press input intensity threshold, and a corresponding operation is performed in response to detecting that the intensity of the corresponding contact subsequently decreases to below the hysteresis intensity threshold (e.g., an "upward stroke" of the corresponding press input). Similarly, in some embodiments, a press input is detected only when the device detects that the contact intensity increases from an intensity equal to or below the hysteresis intensity threshold to an intensity equal to or above the press input intensity threshold and, optionally, that the contact intensity subsequently decreases to an intensity equal to or below the hysteresis intensity, and a corresponding operation is performed in response to detecting the press input (e.g., an increase in contact intensity or a decrease in contact intensity, depending on the circumstances).

[0252] For ease of explanation, a description of an operation performed in response to a press input associated with a press input intensity threshold or in response to a gesture including a press input is optionally triggered in response to detecting any of the following: contact intensity increasing to above the press input intensity threshold, contact intensity increasing from an intensity below a hysteresis intensity threshold to an intensity above the press input intensity threshold, contact intensity decreasing to below the press input intensity threshold, and / or contact intensity decreasing to below a hysteresis intensity threshold corresponding to the press input intensity threshold. Additionally, in examples where an operation is described as being performed in response to detecting that the intensity of the contact decreases below the press input intensity threshold, the operation is optionally performed in response to detecting that the intensity of the contact decreases below a hysteresis intensity threshold that corresponds to and is less than the press input intensity threshold.

[0253] As used herein, an "installed application" refers to a software application that has been downloaded to an electronic device (e.g., device 100, 300, and / or 500) and is ready to be launched (e.g., become open) on the device. In some embodiments, a downloaded application becomes an installed application using an installer that extracts program portions from a downloaded software package and integrates the extracted portions with the operating system of a computer system.

[0254] As used herein, the term "open application" or "executing application" refers to a software application that has retained state information (e.g., as part of device / global internal state 157 and / or application internal state 192). An open or executing application is optionally any of the following types of applications:

[0255] The active application currently displayed on the display of the device on which the application is being used;

[0256] Background applications (or background processes) that are not currently displayed but whose processes are being processed by one or more processors; and

[0257] Not running but stored in memory (volatile and non-volatile respectively)

[0258] A suspended or dormant application that contains status information that can be used to resume execution of the application.

[0259] As used herein, the term "closed application" refers to a software application that does not have retained state information (e.g., the state information of a closed application is not stored in the memory of the device). Therefore, closing an application includes stopping and / or removing the application process of the application and removing the state information of the application from the memory of the device. Generally speaking, when in a first application, opening a second application does not close the first application. When the second application is displayed and the first application stops being displayed, the first application becomes a background application.

[0260] Attention is now turned to embodiments of a user interface ("UI") and associated processes implemented on an electronic device, such as portable multifunction device 100, device 300, or device 500.

[0261] FIG. 6A to FIG. 6L 600 for navigating in a physical environment according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in 700, 800, and 900. With the exemplary user interface, user inputs (e.g., Fig. 6A 625a in FIG. 625b). It should be appreciated that the user input can be any type of user input, including a tap on a touch-sensitive screen, a button press, a gaze toward a control, a voice request with a control identifier, a gesture made by a user and captured by a camera, and / or any other affirmative action performed by a user. In some examples, a single representation of user input in the figure (1) includes one or more different types of user input and / or (2) represents different types of user input that result in different operations. For example, a single illustrated user input can be a tap input, a tap and hold input, and / or a swipe gesture.

[0262] Fig. 6A An exemplary user interface 610 for navigating to a destination using a computer system 600 is shown according to some embodiments. The user interface 610 includes multiple sections, including an instruction section 620, a navigation section 622, and an options section 624. It should be appreciated that the user interface 610 may include more than one Fig. 6A More or fewer user interface elements may be shown in . For example, user interface 610 may include additional portions for providing additional information and / or controls and / or may not include one or more portions.

[0263] Instruction section 620 may provide navigation instructions when navigating to a destination. For example, Fig. 6A The navigation instruction shown in is "Go Forward," indicating that the user of computer system 600 should go forward to continue on the current path to reach the destination.

[0264] In some examples, the navigation instructions in instruction portion 620 provide information to the user and are intended to be used by the user to navigate computer system 600 and / or the mode of transportation the user is using (e.g., vehicle, walking, swimming, or riding public transportation). In other examples, the navigation instructions are used by the computer system (or sent to another computer system as a request to perform an action) to navigate the physical environment without user input.

[0265] The navigation portion 622 may include a live camera feed and / or a map of the physical environment. In some examples, the map includes one or more objects in the physical environment. For example, Fig. 6A The map shown in 622a includes a road 622a, which represents a road in the physical environment. In some examples, one or more objects are included in the map and are determined to be displayed based on the location determined for the computer system 600. For example, the computer system 600 may identify the current location of the computer system 600 (e.g., via GPS or other location services) and select a portion of the map corresponding to the current location. In such examples, the map includes an object determined to be located in the portion of the map. In some examples, one or more objects included in the map and / or navigation portion 622 are detected via one or more sensors communicating with the computer system 600. For example, a camera, a lidar, a radar, and / or one or more other sensors that capture data about the physical environment may identify nearby objects, and the computer system 600 may place the nearby objects in the map and / or navigation portion 622 in a location determined by these sensors. In some examples, the representation of the object is computer-generated so that it looks different from the actual object (e.g., generalized and / or generated with less detail) and is added to the map. In some examples, the object can be navigated to by a user of the computer system 600. For example, a camera may be used to detect a building, and a user of computer system 600 may navigate to the building based on instructions displayed by computer system 600. As another example, a camera may be used to detect a vehicle, and a user of computer system 600 may navigate to the vehicle based on instructions displayed by computer system 600 even when the vehicle is moving (e.g., the navigation may be updated as the vehicle moves).

[0266] like Fig. 6A , navigation portion 622 includes a representation 622c of computer system 600 that indicates the current location of computer system 600. In some examples, the current location is determined by computer system 600 or by a device in communication with computer system 600 (e.g., via GPS or other location services). In addition to representation 622c, navigation portion 622 also includes a path 622b that indicates a path taken by a user of computer system 600 to reach a destination. The path can be distinguished from other portions of the map, such as other areas that the user of computer system 600 should not or will not follow to reach the destination (as shown by the portion of road 622a behind representation 622c).

[0267] Options section 624 may include information and / or selectable user interface elements to assist in navigating to a destination. Fig. 6A In the embodiment, the options section 624 includes a plurality of controls that estimate the arrival time and provide additional functionality. For example, the options section 624 includes a parking control 624a that, when selected via user input, causes a display of possible parking options (e.g., Figure 6K ) and / or automatically select a parking space to navigate to (e.g., as shown in Figure 6L ). As another example, options portion 624 includes more controls 624b, which, when selected via user input, causes additional controls to be displayed. Fig. 6A User input 625a is shown selecting more controls 624b, causing the computer system 600 to cause Figure 6B The transition of the user interface shown in .

[0268] Figure 6B An exemplary user interface 610 for viewing additional options when navigating to a destination using a computer system 600 is shown according to some embodiments. In some examples, Figure 6B The user interface 610 is after selecting more controls 624b Fig. 6A In other examples, Figure 6B User interface 610 is a different user interface displayed in response to selecting more control 624b.

[0269] like Figure 6B As shown in , options portion 624 has expanded from the bottom of user interface 610 and now overlaps a portion of navigation portion 622. Additionally, as shown relative to the remainder of navigation portion 622 and instruction portion 620, a portion of user interface 610 has been de-emphasized (e.g., dimmed so that it is no longer the focus of user interface 610).

[0270] Such expansion of the options section 624 allows one or more additional controls to be displayed. For example, Figure 6B The options portion 624 in the user interface 610 includes an add stop point control 624b1 and a final route affordance 624b2. In some examples, the add stop point control 624b1, when selected via user input, causes a user interface to be displayed for modifying the current navigation (e.g., adding additional stop points that exist before reaching the destination and / or changing the destination to a different location), as discussed more below. It should be appreciated that the add stop point control 624b1 can be displayed in other portions of the user interface 610, such as simultaneously with the navigation portion 622 and / or the instructions portion 620, so that the add stop point affordance can be selected while viewing the map and / or navigation instructions. Figure 6B User input 625b is shown selecting the add stop control 624b1, causing the computer system 600 to cause the Figure 6C The transition of the user interface shown in .

[0271] Figure 6C An exemplary user interface 626 for adding a stop when navigating to a destination using computer system 600 is shown according to some embodiments. Figure 6B After adding the stop point control 624b1 in the flowchart, the user interface 626 is displayed.

[0272] The user interface 626 includes a plurality of controls for adding different types of stopovers to the current navigation. In some examples, adding a stopover causes the current destination to be removed from the current plan and the new destination to be added. In other examples, the stopover is added as an intermediate destination, so that the destination before the new stopover is added is still the final destination after the new stopover is added, with the new stopover being the destination before the final destination.

[0273] As shown, user interface 626 utilizes different controls to classify different types of stop points to select between desired stop point categories. Examples of stop point categories include gas stations, coffee breaks, driveways, people, and parking spaces. For example, selecting a gas station may cause a user of computer system 600 to navigate to the gas station. In some examples, selecting different controls causes objects corresponding to the category to be highlighted in the map. For example, a computer-generated representation of an object (where the objects are detected by a camera) may be included in the map, and such objects may be emphasized. For another example, selecting a first type of object causes objects of a different type to be excluded from the map. Such filtering reduces what the user sees when attempting to select an object.

[0274] Figure 6CMultiple user inputs are shown selecting different stop point categories. For example, user input 627a is selecting lane control 626a, user input 627b is selecting person control 626b, and user input 627c is selecting parking space control 626c. It should be appreciated that for simplicity, all three controls are shown as being selected, and user interface 626 can be configured to allow only a single stop point category to be selected at a time. In some examples, computer system 600 detects user input 627a such that computer system 600 causes Fig.6D or Fig. 6E The computer system 600 detects user input 627b, causing the computer system 600 to cause the user interface to change. Fig. 6F , Figure 6H , Fig.6I or Figure 6K , and the computer system 600 detects user input 627c so that the computer system 600 causes the user interface 627c to be changed. Figure 6K or Figure 6L , as discussed further below.

[0275] Fig.6D An exemplary user interface 628 is shown for selecting a different lane when navigating to a destination using the computer system 600 according to some embodiments. In some examples, when selecting Figure 6C 626a in the lane control 626a is followed by displaying user interface 628. In other examples, portions of user interface 628 (e.g., portions that allow changing the current lane for navigation) are incorporated into the user interfaces discussed above, such as Fig. 6A The navigation portion 622 in the navigation system allows the user to change the lane being used while viewing the current path to the destination. In such examples, the navigation portion 622 will include representations of different lanes of the current road, rather than a representation of a single lane (e.g., a road). In some examples, the representations of the different lanes are computer-generated, such that each lane is a computer-generated representation. In other examples, the representations of the different lanes are part of a live camera feed (e.g., the live camera feed is of the different lanes), and user input is detected relative to the live camera feed to select a lane.

[0276] The user interface 628 includes a lane selection portion 630 (as described above, the lane selection portion 630 may be integrated into the Fig. 6A The navigation section 622 of the example program may be used to allow the user to change the lane currently being used. Fig.6DAs shown in , lane selection portion 630 includes representations of multiple lanes (e.g., left lane 630a, middle lane 630b, and right lane 630c). In some examples, lane selection portion 630 includes more or fewer lanes (e.g., the number of lanes present at the current location), and each individual lane may appear different (e.g., a lane not currently in use may be smaller (e.g., thinner) than a lane currently in use).

[0277] like Fig.6D , lane selection portion 630 includes a representation 632 of computer system 600 that represents the current location of computer system 600. Similar to the above, the current location can be determined by computer system 600 or by a device in communication with computer system 600 (e.g., via GPS or other location services). In addition to representation 632, lane selection portion 630 also includes a portion of a highlighted middle lane 630b that represents the path taken by the user of computer system 600 to reach the destination. This path is distinguished from other lanes (as shown by left lane 630a and right lane 630c) that the user of computer system 600 should not follow to reach the destination.

[0278] Fig.6D User input 633 is shown selecting right lane 630c, causing computer system 600 to cause Fig. 6E . In some examples, user input 633 is a tap input and can be located anywhere within right lane 630c. In other examples, user input 633 is a swipe gesture from left to right or right to left and can be located at one or more locations within lane selection portion 630. For example, user input 633 can start in left lane 630a and end in right lane 630c to indicate a lane change to the right. Although shown as selecting right lane 630c, it should be appreciated that in Fig.6D Any lane may be selected, such as the left lane 630a.

[0279] Fig. 6E An exemplary user interface 610 for changing lanes while navigating to a destination using a computer system 600 is shown according to some embodiments. In some examples, upon selecting Fig.6D In other examples, in response to selecting Figure 6CThe user interface 628 is displayed without the lane control 626a in the display, such as when (1) there is only one other possible lane or (2) the next navigation instruction is within a certain threshold distance and the next navigation instruction will require being in a specific lane (e.g., changing lanes in advance). In other words, it is not always necessary to select a specific lane, but rather, when there is only a single other lane or when there is an upcoming navigation instruction and a specific lane is available for the upcoming navigation instruction, the specific lane can be automatically selected without user input.

[0280] Fig. 6E The user interface 610 in FIG. 6 includes navigation instructions in the navigation portion 622 indicating the next driving maneuver (eg, “change lane”). Fig. 6E The navigation instructions are different from Fig. 6A Navigation instructions. Fig. 6E The user interface 610 in also includes a navigation portion 622 having a map corresponding to the current location. In some examples, Fig. 6E Maps and Fig.6D The map shown in is the same, but the path to the destination is updated (e.g., the path is no longer in the middle lane 634b, but is now in the right lane 634c). In other examples, Fig. 6E Maps and Fig. 6A The map shown in is the same, without indicating that the path within the map has changed (e.g., the navigation portion 622 or audio instructions would indicate what to do).

[0281] FIG. 6F to FIG. 6G An exemplary user interface for selecting a person when navigating to a destination using computer system 600 is shown according to some embodiments. For example, Fig. 6F A user interface 636 is shown with a person selection portion 638. In some examples, in response to selecting Figure 6C In other examples, the person selection portion 638 is incorporated into the user interface discussed above, including Fig. 6A The navigation section 622 in the navigation diagram allows the user to select a person when viewing the current path to the destination. In such an example, the navigation section 622 includes representations of different people.

[0282] In some examples, the people selection portion 638 is a map of the physical environment. The map includes a representation of one or more objects (e.g., people, parking spaces, buildings, signs, or vehicles) detected via one or more sensors communicating with the computer system 600. In such examples, the computer system 600 may communicate with cameras, lidars, radars, and / or other sensors that can detect objects in the physical environment. After detection, the representation of the object is placed in the map to represent the object. In some examples, the representation of the object is a computer-generated representation of the object based on data detected by one or more sensors. In such examples, the representation may include less details than the actual object, so that the representation is a generalized representation of the object. In other examples, the representation of the object is included in a live camera feed (e.g., the live camera feed is of the object), and a user input is detected relative to the live camera feed to select a person.

[0283] In some examples, the map emphasizes objects that are determined to be navigable by a user of computer system 600. This determination may be based on a number of factors, such as the distance to the particular object, the direction of the particular object relative to computer system 600, the speed of computer system 600, the speed of the particular object, the type of the particular object (e.g., whether the object is stationary or non-stationary), and / or the manipulations that the user of computer system 600 will need to perform to reach the particular object. Fig. 6F As shown in , the crowd including person 646 and person 648 is emphasized using circle 646a. In addition, person 650 is also emphasized via circle 650a, while person 652 is not emphasized. In some examples, the crowd and person 650 are determined to be able to be navigated to by the user of computer system 600, while person 652 is determined to be unable to be navigated to by the user of computer system 600. For example, person 652 can be determined to be unable to be navigated to because the user of computer system 600 will need to turn around to navigate to person 652. On the other hand, the user of computer system 600 will not need to turn around to navigate to the crowd and person 650, and therefore both groups of people are emphasized. It should be recognized that more or less people can be included in the crowd and are regarded as single objects. In some examples, when people are determined to be within a threshold distance from each other, these people are grouped together. In some examples, the representation displayed in the map indicates more than two people, and does not include a separate representation of each person in the crowd. For example, the representation can depict three people, but actually includes more people.

[0284] In some examples, the map is filtered by a particular type of object so that only objects of the particular type are included or emphasized in the map. In some examples, objects of the particular type are included in the map along with one or more other objects that provide context. In such examples, some representations of objects of other types are included, but other representations of objects of other types are not included (e.g., a representation of a first object of a particular type is included in the people selection portion 638, but a representation of a second object of the particular type is not included). As shown, Fig. 6F The map in includes road 640 and the above-mentioned person. The map also includes a representation 644 of computer system 600 and a path 642 from the representation 644 to the destination. It should be appreciated that the map may include more or fewer elements.

[0285] Figure 6G Example user interface 636 is shown with person 648 separated from person 646. Fig. 6F As shown in FIG. 6 , person 646 and person 648 are grouped together and emphasized together. Figure 6G It is shown that as objects spread out and get farther and farther away from each other, the map can represent the objects as separate objects and emphasize each object separately. For example, person 646 is emphasized by circle 646a1, and person 648 is emphasized by circle 648a. It should be recognized that people can be combined together and no longer emphasized individually. For example, multiple people can be within a threshold distance of each other and be treated as a single object for navigation. In some examples, even after navigating to one or more of the people, the representation of these people continues to be updated. For example, the person being navigated to can join a group and then navigate to the group.

[0286] Figure 6G Also shown is user input 647 selecting person 646, causing computer system 600 to cause Figure 6H or Fig.6I . In some examples, user input selecting a non-emphasized person (e.g., person 652) will not result in changing the navigation. For example, when a non-emphasized person is selected, nothing will happen, or an error or warning message may be displayed.

[0287] Figure 6H An exemplary user interface 656 for selecting how to navigate relative to a person using the computer system 600 is shown according to some embodiments. In some examples, upon selecting a person (e.g., Figure 6G In some examples, user interface 656 is displayed when a person is selected with a particular type of user input (e.g., a tap and hold gesture as opposed to a tap gesture). In such examples, different types of gestures (e.g., taps) cause different functions to occur, such as navigating to a person (e.g., Fig.6I ) and does not display the user interface 656. Different functions may be default operations and / or user configurable.

[0288] User interface 656 includes a selection portion 658, which has a variety of different ways to navigate relative to a person. For example, selection portion 658 includes a pick-up control 660 and a wait control 662.

[0289] In some examples, selecting the pick up control 660 causes the computer system to determine a location to navigate to, to pick up a person and navigate to that location. The location may be a place near the person and / or an available place. In some examples, selecting the wait control 662 causes the computer system to determine a location near the person and causes the user to navigate to that location. In such examples, the location may move as the person moves, so that the navigation is updated to ensure that the location is near the person. In some examples, the location corresponding to the pick up control 660 is closer to the person than the location corresponding to the wait control 662.

[0290] Figure 6H Multiple user inputs are shown selecting different controls. For example, user input 661 is selecting the connect control 660, and user input 663 is selecting the wait control 662. It should be appreciated that for simplicity, both controls are shown as being selected, and that user interface 656 can be configured to allow only a single control to be selected at a time. In some examples, computer system 600 detects user input 661 such that computer system 600 causes Fig.6I , and the computer system 600 detects the user input 663 so that the computer system 600 causes the user input 664 to Figure 6J , as discussed further below.

[0291] Fig.6I An exemplary user interface 610 for navigating to connect to person 646 using computer system 600 is shown according to some embodiments. In some examples, in response to selecting (1) Figure 6G 646 or (2) Figure 6H The access control 660 in the Fig.6I As shown, path 642 from representation 644 of computer system 600 is updated to reach the vicinity of person 646. In some examples, before being updated, path 642 leads to a different destination (e.g., Figure 6G ). Fig.6I In the navigation portion 622 of the user interface 610 in FIG. 6 , the person 646 is emphasized, but other people in the map are not emphasized. In some examples, selecting a person to navigate to causes other people to no longer be emphasized (e.g., Figure 6G648 and 650 are shown as highlighted. In some examples, once a person is selected as a destination, the emphasis of the person changes to a different emphasis than before the person was selected. For example, once navigation to the person is determined, the color of the emphasis may change.

[0292] Figure 6J An exemplary user interface 610 for navigating to a waiting person 646 using a computer system 600 is shown according to some embodiments. In some examples, in response to selecting Figure 6H The user interface 656 is displayed by activating the wait control 662 in the display. As shown, the path 642 from the representation 644 of the computer system 600 is updated to reach the vicinity of the person 646. In some examples, before being updated, the path 642 leads to a different destination (e.g., Figure 6G ). Figure 6J In the navigation portion 622 of the user interface 610 in FIG. 6 , the person 646 is emphasized, but other people in the map are not emphasized. In some examples, selecting a person to navigate to causes other people to no longer be emphasized (e.g., Figure 6G 648 and 650 are shown as highlighted). It should be appreciated that Figure 6J Navigating to wait for the computer system 600 to display the Fig.6I 646. This type of navigation means that instructions to wait for a person do not need to be as close to the person as when picking them up.

[0293] Figure 6K An exemplary user interface 670 is shown for selecting a parking space when navigating to a destination using computer system 600 according to some embodiments. In some examples, in response to selecting Figure 6C The parking space control 626c in the display unit 670 is displayed. In other examples, a portion of the user interface 670 is incorporated into the user interface discussed above, including Fig. 6A The navigation section 622 in the example above can be used to select a parking space when viewing the current path to the destination. In such an example, the navigation section 622 will include representations of different parking spaces, as discussed further below.

[0294] In some examples, user interface 670 includes a map of the physical environment that includes representations of one or more parking spaces detected via one or more sensors in communication with computer system 600. In such examples, computer system 600 may communicate with cameras, lidars, radars, and / or other sensors capable of detecting parking spaces in the physical environment. After a parking space is detected, a representation of the parking space is placed into the map to represent the parking space. In some examples, the representation of the parking space is a computer-generated representation of the parking space based on data detected by the one or more sensors. In other examples, the representation of the parking space is included in a live camera feed (e.g., the live camera feed is of the parking space), and user input is detected relative to the live camera feed to select a parking space.

[0295] In some examples, the map emphasizes parking spaces that are determined to be able to be navigated to by the user of the computer system 600. This determination may be based on several factors, such as the distance to the parking space, the direction of the parking space relative to the computer system 600, the speed of the computer system 600, the type of parking space, the maneuvers that the computer system 600 will need to perform to reach a particular parking space, and / or whether the parking space is currently occupied. As shown, the user interface 670 includes four representations of parking spaces (e.g., parking spaces 672, 674, 676, and 678). Of these parking spaces, two of the parking spaces (e.g., parking spaces 672 and 676) are emphasized via rectangles 672a and 676a, thereby indicating that the user of the computer system 600 can navigate to two of these parking spaces. The remaining parking spaces either already have cars parked there (e.g., parking space 674), or are determined to be in a position that the user of the computer system 600 cannot navigate to (e.g., parking space 678). For example, it may be determined that parking space 678 cannot be navigated to because person 652 is in the way and / or the user of computer system 600 will need to turn around to navigate to parking space 678. On the other hand, the user of computer system 600 will not need to turn around to navigate to parking spaces 672 and 676, and therefore these parking spaces are both highlighted.

[0296] Figure 6K Also shown is user input 673 selecting a parking space 672, causing the computer system 600 to cause Figure 6L . In some examples, user input selecting a non-emphasized parking space (e.g., parking space 678) will not result in changing the navigation. For example, when a non-emphasized parking space is selected, nothing will happen, or an error or warning message may be displayed.

[0297] Figure 6LAn exemplary user interface 610 for navigating to a parking space 672 using a computer system 600 is shown according to some embodiments. In some examples, in response to selecting (1) Fig. 6A Parking controls 624a, Figure 6C Parking space control 626c or (3) Figure 6K Parking spaces in 672 are displayed Figure 6L The user interface 610 in FIG. Figure 6L As shown in , path 642 from representation 644 of computer system 600 is updated to reach parking space 672. In some examples, before being updated, path 642 leads to a different destination (e.g., Figure 6K ). Figure 6L In the navigation portion 622 of the user interface 610 in FIG. 4 , parking space 672 is emphasized, but other parking spaces in the map (e.g., parking space 676) are not emphasized. In some examples, selecting a parking space to navigate to causes other parking spaces to no longer be emphasized.

[0298] In some examples, navigating to a parking space is based on one or more other vehicles detected near the parking space. For example, car 674a may be detected as parked with the nose of car 674a in front. In such examples, navigating to parking space 672 may cause a user of computer system 600 to navigate in a direction similar to car 674a. In other examples, navigating to a parking space is based on a user preference when parking, such as a user preference when parking in a particular type of parking space rather than another type of parking space. For example, computer system 600 may identify a user preference for backing into a parking space. In such examples, navigating to parking space 672 may cause a user of computer system 600 to navigate backward in the parking space.

[0299] Figure 7 700 is a flowchart showing a method 700 for navigating to an object using a computer system according to some embodiments. Method 700 is performed at a computer system (e.g., 100, 300, 500) that communicates with a display generation component (e.g., a display screen and / or a touch-sensitive display) and one or more sensors (e.g., a microphone, a camera, a radar, a lidar, a touch-sensitive display, a rotatable input mechanism, and / or a physical button). In some examples, the computer system is a watch, a fitness tracking device, a phone, a tablet computer, a processor, a head-mounted display (HMD) device, and / or a personal computing device. In some examples, one of the one or more sensors is a display generation component, such as a touch-sensitive display. Some operations in method 700 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0300] As described below, method 700 provides an intuitive way to navigate to an object. The method reduces the cognitive burden of navigating to an object by the user, thereby creating a more efficient human-computer interface. For battery-powered computing devices, it enables users to navigate to objects faster, save power more efficiently, and increase the time interval between battery charges.

[0301] At 710 of method 700, a computer system displays, via a display generation component, a representation (622, 630, 638) of a physical environment (e.g., a map, an image, a video, a three-dimensional representation, a two-dimensional representation, and / or a computer-generated representation), wherein the representation includes one or more objects (622a, 630a, 630b, 630c, 634a, 634b, 634c, 640, 646, 648, 650, 652, 672, 674, 676, 678, 674a) (e.g., one or more people, equipment such as a car, or a parking space) detected via at least one of the one or more sensors.

[0302] At 720 of method 700, the computer system receives (e.g., and / or detects) via at least one of the one or more sensors (e.g., while displaying a representation of a physical environment) a set of one or more inputs including an input corresponding to a selection of an object of the one or more objects (e.g., in a representation thereof) (e.g., an input pointing to the selection, an input to the selection, an input detected at a location corresponding to the selection, and / or an input overlaid on a location corresponding to the selection) (633, 646, 673). In some examples, as part of receiving the input, the computer system detects an audio instruction via a microphone of one or more sensors. In some examples, as part of receiving the input, the computer system detects a touch input, such as a tap input and / or a tap and hold input, via a display generation component. In some examples, as part of receiving the input, the computer system detects a gesture performed by a user (e.g., an air gesture and / or an air input, such as an air tap input and / or a finger pointing input) and / or a gaze of the user via a camera of one or more sensors. In some examples, as part of receiving the input, the computer system detects the input via a hardware component (e.g., a button and / or a rotatable input mechanism).

[0303] At 730 of method 700, the computer system displays, via the display generation component, a path to a location corresponding to (e.g., relative to, directly to, near, and / or adjacent to) an object in the representation of the physical environment (e.g., an object that was not previously displayed prior to receiving the set of one or more user inputs) in response to receiving the set of one or more user inputs (e.g., and / or input corresponding to a selection of an object). Fig. 6E , Fig.6I, Figure 6J or Figure 6L In some examples, the one or more directions (620) (e.g., a maneuver) are displayed simultaneously with the path. In some examples, the path is displayed in response to receiving a confirmation of navigating to the object, wherein the confirmation is the same as or different from the user input corresponding to the selection of the object. In some examples, in response to receiving the set of one or more user inputs, the computer system does not display, via the display generation component, the path to the different objects in the representation of the physical environment.

[0304] Displaying a path to a location corresponding to an object detected via at least one of the one or more sensors in response to detecting an input provides a user with control of the computer system to select for which object a path should be generated, which provides additional control options without cluttering the user interface with additional displayed controls.

[0305] In some examples, the object is located at a predefined location in the physical environment. In some examples, the object is a stationary object (672) located at a predefined location in the environment (e.g., a statue, a monument, a business, a tire shop, a store, a parking space, a bus stop, a building, a school, and / or a street corner). In some examples, the object is a non-stationary object (e.g., an object that is capable of moving) in the physical environment (646). In some examples, the non-stationary object is not at a predefined location in the environment.

[0306] Displaying paths to locations corresponding to objects at predefined locations in the physical environment in response to detecting input provides the user with control of the computer system to select for which predefined location the path should be generated, which provides additional control options without cluttering the user interface with additional displayed controls.

[0307] In some examples, a computer system: navigates to a predefined location in a physical environment, wherein the navigation includes: navigating in a first direction along a first portion of a path (e.g., as the computer system travels along the path) (e.g., obtaining (e.g., determining, acquiring, and / or formulating) a navigation plan that indicates that the computer system is configured to navigate in the first direction while traveling the first portion of the path (e.g., the computer system navigates in the first direction while traveling the first portion of the path), and / or moving into); and navigating in a second direction along the first portion of the path (e.g., obtaining (e.g., determining, acquiring, and / or formulating) a navigation plan that indicates that the computer system is configured to navigate in the second direction while traveling the first portion of the path (e.g., the computer system navigates in the second direction (rather than navigating in the first direction) while traveling the first portion of the path), and / or moving into) based on determining that the computer system is configured to navigate to the predefined location based on a second preference different from the first preference, wherein the second direction is different from the first direction. In some examples, the computer system displays a navigation plan associated with the route and / or displays instructions for the navigation plan (eg, back, forward, left, and / or right).

[0308] Navigating to predefined locations in a physical environment based on different preferences according to a set of criteria provides users with control over a computer system to choose how to navigate, which provides additional control options without cluttering the user interface with additional displayed controls, reduces the number of inputs required to perform operations, and performs operations without further user input when a set of conditions have been met.

[0309] In some examples, a computer system navigates to a predefined location in a physical environment, where the navigation includes: navigating in a second orientation direction based on determining that a second object in the physical environment is oriented in a first direction (e.g., obtaining a navigation plan that indicates that the computer system is configured to orient in the second direction and / or move while traveling along a second portion of the path); and navigating in a fourth orientation direction different from the second orientation direction based on determining that the second object in the physical environment is oriented in a third direction different from the first direction (e.g., obtaining a navigation plan that indicates that the computer system is configured to orient in the fourth direction and / or move while traveling along a fourth portion of the path).

[0310] Navigating to predefined locations in a physical environment based on how objects are oriented in the physical environment according to a set of criteria provides a user with control over a computer system to select how to navigate, which provides additional control options without cluttering the user interface with additional displayed controls, reduces the number of inputs required to perform an operation, and performs an operation without further user input when a set of conditions have been met.

[0311] In some examples, the object includes (eg, represents and / or indicates) one or more people (646) (eg, detected in a field of view of one or more cameras).

[0312] Displaying paths to one or more persons in a physical environment in response to detecting input provides the user with control of the computer system to select which objects paths should be generated for, which provides additional control options without cluttering the user interface with additional displayed controls.

[0313] In some examples, a computer system: while displaying an object (and / or representation of the object) that includes one or more people (and before, during, and / or after detecting a second input corresponding to a selection of the object), detects movement of a first subset of one or more people relative to a second subset of one or more people (646, 648); and in response to detecting movement of the first subset of one or more people from the second subset of one or more people (and based on determining that the first subset of one or more people is farther than a predetermined distance from the second subset of one or more people): stops displaying the object; and displays a first object corresponding to a first group of one or more people; and displays a second object corresponding to a second group of one or more people, wherein the second object is different from the first object.

[0314] In some examples, in response to detecting movement of a first subset of one or more people from a second subset of one or more people, and based on determining that the first subset of one or more people is no farther than a predetermined distance from the second subset of one or more people, the computer system continues to display the objects and does not display objects corresponding to the first group of one or more people and objects corresponding to the second group of one or more people. In some examples, while displaying the first object and the second object, based on determining that the first group of one or more people is less than a predetermined distance from the second group of one or more people, the computer system: (1) stops displaying the first object and the second object, and (2) displays a third object corresponding to a group including the first group and the second group.

[0315] Displaying different objects corresponding to different subsets of people in response to detecting movement of the first subset from the second subset allows the user to have more control in navigating to a particular object, providing additional control options without cluttering the user interface with additional displayed controls.

[0316] In some examples, a computer system: while displaying an object including one or more people, detects a second input corresponding to selection of the object (e.g., input corresponding to a long press, a press and hold, gazing at a location for a predetermined period of time, and / or an air gesture, such as a long tap air gesture and / or a pointing gesture); in response to detecting the second input corresponding to selection of the object, displays multiple options (660, 662); while displaying multiple options, detects an input corresponding to selection of a first option of the multiple options (661, 663) (e.g., input corresponding to a long press, a press and hold, gazing at a location for a predetermined period of time, and / or an air gesture, such as a long tap air gesture and / or a pointing gesture); and in response to detecting the second input corresponding to selection of the object, displays multiple options (660, 662); Selecting corresponding inputs: based on determining that the corresponding option is a first option among multiple options, navigating (e.g., obtaining a navigation plan that indicates that the computer system is configured to follow the one or more people and / or move) to follow the one or more people (662); and based on determining that the corresponding option is a second option among multiple options, navigating (e.g., obtaining a navigation plan that indicates that the computer system is configured to navigate to a predefined location relative to the one or more people and / or move) (e.g., not navigating to follow the one or more people) to a predefined location relative to the one or more people (e.g., a location corresponding to a location of a business, tire shop, store, parking space, bus stop, building, school, and / or street corner) (660), wherein the second option is different from the first option.

[0317] Providing the option to follow one or more persons or navigate to a predefined location relative to one or more persons in response to detecting input provides the user with control over the computer system to select how to navigate to an object, which provides additional control options without cluttering the user interface with additional displayed controls, and performs actions without further user input when a set of conditions have been met.

[0318] In some examples, the object includes a second computer system different from the computer system. In some examples, the location of the object is detected by communicating with the second computer system. In some examples, the location of the object is detected by analyzing an image.

[0319] Displaying a path to a second computer system in the physical environment in response to detecting an input provides the user with control of the computer system to select for which object a path should be generated, which provides additional control options without cluttering the user interface with additional displayed controls.

[0320] In some examples, the object includes one or more markers (672) in the physical environment (e.g., a warning lane, a passing lane, one or more signs, and / or a sidewalk) (e.g., the computer system is not included therein). In some examples, the location of the object is detected by analyzing the image.

[0321] Displaying paths to one or more markers in the physical environment in response to detecting input provides the user with control of the computer system to select which object a path should be generated for, which provides additional control options without cluttering the user interface with additional displayed controls.

[0322] In some examples, displaying a path to an object (e.g., a navigation and / or route path) in a representation of a physical environment includes: detecting movement of the object; and in response to detecting the movement of the object: updating the path relative to the first movement based on determining that the movement of the object includes a first movement; and updating the path relative to the second movement (e.g., not updating the path relative to the first movement) based on determining that the movement of the object includes a second movement that is different from (and in some embodiments does not include) the first movement, wherein the path updated relative to the first movement is different from the path updated relative to the second movement.

[0323] Updating the path to an object relative to the movement of the object allows the user more control when navigating to a particular object, providing additional control options without cluttering the user interface with additional displayed controls.

[0324] In some examples, a computer system: receives (e.g., and / or detects) via at least one of the one or more sensors (e.g., while displaying a representation of a physical environment including one or more objects) a second set of one or more inputs including inputs corresponding to selection of a second object among the one or more objects (e.g., corresponding to selection of it (e.g., in its representation)); and in response to detecting the input corresponding to selection of the second object among the one or more objects, abandons displaying a path to the location corresponding to the second object.

[0325] Displaying paths to specific objects only in response to detecting input provides the user with control of the computer system to select which object a path should be generated for, which provides additional control options without cluttering the user interface with additional displayed controls.

[0326] In some examples, displaying the representation of the physical environment includes: displaying a representation of the object; displaying the representation of the object in a first appearance before receiving the set of one or more user inputs; and displaying the representation of the object in a second appearance different from the first appearance via a display generation component in response to receiving the set of one or more user inputs. In some examples, in response to receiving the set of one or more user inputs, displaying the representation of the object via a display generation component is emphasized (e.g., highlighted, bolded, enlarged, and / or popped).

[0327] After selecting an object, changing the appearance of the representation of the object provides feedback to the user regarding the state of the computer system and which object was selected, which provides improved visual feedback to the user.

[0328] In some examples, the computer system: in response to receiving the set of one or more user inputs, navigates to the object via the path. In some examples, the computer system navigates to the object in response to detecting an input corresponding to a selection of an object in the one or more objects (e.g., in a representation thereof) and / or in response to detecting an input different from the input corresponding to the selection of the object (e.g., a confirmation input, such as a tap input, a voice input, and / or a gaze input).

[0329] Navigating to objects in the physical environment in response to detecting input provides the user with control of the computer system to select how to navigate, which provides additional control options without cluttering the user interface with additional displayed controls.

[0330] In some examples, navigating to the object via the path includes ceasing execution of a previous navigation process initiated prior to receiving the set of one or more inputs.

[0331] Navigating to the object via the path by ceasing execution of a previous navigation process initiated prior to receiving the set of one or more inputs provides the user with control of the computer system to select how to navigate, which provides additional control options without cluttering the user interface with additional displayed controls.

[0332] In some examples, the representation of the physical environment includes computer-generated representations of one or more non-stationary objects (e.g., temporary objects (e.g., vehicles, people, animals, bicycles, balls, bats, and / or clothing) and / or objects that are not fixed to locations in the physical environment). In some examples, the computer-generated representation of the object includes less detail about the object than the actual object. In some examples, the computer-generated representation of the object is a proxy object (e.g., a representation of the object that includes details of the object rather than details captured by one or more sensors).

[0333] Displaying computer-generated representations of one or more non-stationary objects in response to detecting an input provides a user with control of the computer system to select for which object a path should be generated, which provides additional control options without cluttering the user interface with additional displayed controls.

[0334] In some examples, the representation of the physical environment includes computer-generated representations of one or more stationary objects, e.g., temporary objects (e.g., buildings, ground surfaces, roads, trees, monuments, mountains, and / or hills) and / or objects that are fixed (e.g., reasonably fixed and / or cannot be reasonably moved by a person without tools) to locations in the physical environment.

[0335] Displaying computer-generated representations of one or more stationary objects in response to detecting an input provides the user with context when controlling the computer system to select for which object a path should be generated, which provides improved visual feedback to the user.

[0336] In some examples, the one or more sensors include one or more cameras, and wherein the representation of the physical environment is a live feed captured by the one or more cameras.

[0337] Displaying a live feed captured by one or more cameras in response to detecting an input provides the user with control of the computer system to select for which object a path should be generated, which provides additional control options without cluttering the user interface with additional displayed controls.

[0338] It should be noted that the process described above with respect to method 700 (eg Figure 7 ) also applies in a similar manner to the methods described below. For example, method 800 optionally includes one or more features of the various methods described above with reference to method 700. For example, the emphasized first object of method 800 can be the object selected in method 700. For the sake of brevity, these details are not repeated below.

[0339] Figure 8800 is a flowchart showing a method 800 for navigating to an object using a computer system according to some embodiments. Method 800 is performed at a computer system (e.g., 100, 300, 500) that communicates with a display generation component (e.g., a display screen and / or a touch-sensitive display) and one or more sensors (e.g., a microphone, a camera, a radar, a lidar, a touch-sensitive display, a rotatable input mechanism, and / or a physical button). In some examples, the computer system is a watch, a fitness tracking device, a phone, a tablet computer, a processor, a head-mounted display (HMD) device, and / or a personal computing device. In some examples, one of the one or more sensors is a display generation component, such as a touch-sensitive display. Some operations in method 800 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0340] As described below, method 800 provides an intuitive way to navigate to an object. The method reduces the cognitive burden of navigating to an object by the user, thereby creating a more efficient human-computer interface. For battery-powered computing devices, it enables users to navigate to objects faster, save power more efficiently, and increase the time interval between battery charges.

[0341] At 810 of method 800 , the computer system displays a representation of the physical environment via a display generation component ( 622 , 638 ) (eg, as described above with respect to method 700 ).

[0342] At 820 of method 800 , the computer system detects a first object in the physical environment via at least one of the one or more sensors while displaying the representation of the physical environment (eg, as described above with respect to method 700 ).

[0343] At 830 of method 800, the computer system emphasizes (646a) (e.g., highlights, bolds, enlarges, pops up, and / or displays a shape around) the first object in conjunction with detecting (e.g., after and / or in response to) a first object in the physical environment and in accordance with determining that a path to the first object is a first type of path (e.g., a safe path, a path that does not include a particular maneuver (or a particular type of maneuver) such as a U-turn and / or a sharp turn, and / or a path that does not include a maneuver within at least a threshold amount of distance or time). In some examples, in accordance with determining that the path to the first object is the first type of path, the computer system displays an indication that the path to the first object is the first type.

[0344] At 840 of method 800, the computer system, in conjunction with (e.g., subsequent to and / or in response to) detecting the first object in the physical environment and in accordance with determining that the path to the first object is a second type of path different from the first type of path, relinquishes emphasis on the first object (652). In some examples, in accordance with determining that the path to the first object is the first type of path, the computer system does not display an indication that the path to the first object is of the first type.

[0345] Conditionally emphasizing a first object based on the type of path to the first object provides a user with control of a computer system to select for which object a path should be generated, which provides additional control options without cluttering the user interface with additional displayed controls, and performs an operation without further user input when a set of conditions have been met.

[0346] In some examples, the path to the first object is determined to be a first type of path or a second type of path based at least on a distance between the computer system and the first object. In some examples, the path to the first object is determined to be a first type of path based on determining that the distance between the computer system and the first object is a first distance; and the path to the first object is determined to be a second type of path based on determining that the distance between the computer system and the first object is a second distance different from the first distance.

[0347] A path type that determines a path to a first object based at least on a distance between the computer system and the first object provides a user with control of the computer system to select for which object a path should be generated, provides additional control options without cluttering the user interface with additional displayed controls, and performs an operation without further user input when a set of conditions have been met.

[0348] In some examples, the path to the first object is determined to be a first type of path or a second type of path based at least on the speed of the first object. In some examples, the path to the first object is determined to be the first type of path based on determining that the speed of the object is a first speed; and the path to the first object is determined to be the second type of path based on determining that the speed of the object is a second speed different from the first speed.

[0349] Determining a path type to a first object based at least on a velocity of the first object provides a user with control of a computer system to select for which object a path should be generated, provides additional control options without cluttering the user interface with additional displayed controls, and performs an operation without further user input when a set of conditions have been met.

[0350] In some examples, the path to the first object is determined to be the first type of path or the second type of path based at least on the speed of the computer system. In some examples, the path to the first object is determined to be the first type of path based on determining that the speed of the computer system is a third speed; and the path to the first object is determined to be the second type of path based on determining that the speed of the computer system is a fourth speed different from the third speed.

[0351] Determining a path type for a path to a first object based at least on a speed of the computer system provides a user with control of the computer system to select for which object a path should be generated, provides additional control options without cluttering the user interface with additional displayed controls, and performs an operation without further user input when a set of conditions have been met.

[0352] In some examples, a path to the first object is determined to be a first type of path or a second type of path based at least on a determination of whether the first object is stationary (e.g., whether the object is a stationary object or a non-stationary object (e.g., as described above with respect to method 700)). In some examples, based on a determination that the first object is a stationary object, the path to the first object is determined to be a first type of path; and based on a determination that the path to the first object is a non-stationary object, the path to the first object is determined to be a second type of path.

[0353] Determining a path type for a path to a first object based at least on a determination of whether the first object is stationary provides a user with control of a computer system to select for which object a path should be generated, provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0354] In some examples, a path to a first object is determined to be a first type of path or a second type of path based at least on a direction of the first object from a computer system (or a direction of the computer system from an object). In some examples, a path to a first object is determined to be a first type of path based on determining that the direction from the computer system to the first object is a first direction; and a path to a first object is determined to be a second type of path based on determining that the direction from the computer system to the first object is a second direction different from the first direction. In some examples, a path to a first object is determined to be a first type of path or a second type of path based on whether the first object is selectable.

[0355] A path type that determines a path to a first object based at least on a direction of the object from the computer system provides a user with control of the computer system to select for which object a path should be generated, provides additional control options without cluttering the user interface with additional displayed controls, and performs an operation without further user input when a set of conditions have been met.

[0356] In some examples, a computer system: while displaying a representation of a first object, detects input directed to the first object; and in response to detecting the input directed to the first object: based on determining that the first object is selectable (e.g., and / or the first object is emphasized and / or is a first object type), initiates navigation to the first object (e.g., as described above with respect to method 700); and based on determining that the first object is not selectable, abandons navigating to the first object.

[0357] Conditionally navigating to a first object based on whether the first object is selectable provides a user with control of the computer system to select which object a path should be generated for, provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0358] In some examples, initiating navigation to the first object includes displaying a path to the first object (e.g., as described above with respect to method 700) (e.g., on a map and / or overlaying a map). In some examples, based on determining that the first object is not selectable, the computer system does not display the path to the first object.

[0359] Displaying the path to the first object when navigating to the first object provides feedback to the user regarding the status of the computer system and which object is selected, which provides improved visual feedback to the user.

[0360] Note that the above description is relative to method 800 (eg, Figure 8 ) also apply in a similar manner to the methods described above and below. For example, method 700 optionally includes one or more features of the various methods described above with reference to method 800. For example, an object selectable in method 700 may be an object highlighted in method 800. For the sake of brevity, these details are not repeated below.

[0361] Fig. 9is a flowchart showing a method 900 for navigating to an object using a computer system according to some embodiments. Method 900 is performed at a computer system (e.g., 100, 300, 500) that communicates with a display generation component (e.g., a display screen and / or a touch-sensitive display) and one or more sensors (e.g., a microphone, a camera, a radar, a lidar, a touch-sensitive display, a rotatable input mechanism, and / or a physical button). In some examples, the computer system is a watch, a fitness tracking device, a phone, a tablet computer, a processor, a head-mounted display (HMD) device, and / or a personal computing device. In some examples, one of the one or more sensors is a display generation component, such as a touch-sensitive display. Some operations in method 900 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0362] As described below, method 900 provides an intuitive way to navigate to an object. The method reduces the cognitive burden of navigating to an object by the user, thereby creating a more efficient human-computer interface. For battery-powered computing devices, it enables users to navigate to objects faster, save power more efficiently, and increase the time interval between battery charges.

[0363] At 910 of method 900 , a computer system detects a plurality of objects in a physical environment via at least one sensor of one or more sensors (eg, as described above with respect to method 700 ).

[0364] At 920 of method 900 , the computer system displays, via a display generation component, a representation of a physical environment including a plurality of objects.

[0365] At 930 of method 900, the computer system, after displaying a representation of a physical environment including a plurality of objects, displays, via a display generation component, a plurality of user interface objects (e.g., selectable user interface objects and / or affordances), the plurality of user interface objects including: a first user interface object (626a, 626b, 626c) corresponding to a first object type (e.g., a person, an animal, a police officer, an electronic device, a driveway, a building, a store, a restaurant, and / or a parking space); and a second user interface object (626a, 626b, 626c) corresponding to a second object type different from the first object type;

[0366] At 940 of method 900, the computer system receives a set of one or more user inputs via at least one of the one or more sensors, the set of one or more user inputs including inputs directed to multiple user interface objects (627a, 627b, 627c). In some examples, receiving user input corresponding to selection of the first enable representation or the second enable representation includes detecting audio instructions via a microphone of one or more sensor components. In some examples, receiving user input corresponding to selection of the first enable representation or the second enable representation includes detecting touch input via a display generation component. In some examples, receiving user input corresponding to selection of the first enable representation or the second enable representation includes detecting a gesture performed by a user via a camera of one or more sensors. In some examples, receiving user input corresponding to selection of the first enable representation or the second enable representation includes detecting user input via a hardware component (e.g., a button and / or a rotatable input mechanism).

[0367] At 950 of method 900, the computer system, while displaying a representation of a physical environment including a plurality of objects, in response to receiving the set of one or more user inputs and based on determining that the input points to a first user interface object, emphasizes (650a, 630a, 672a) (e.g., as described above with respect to method 700) a first group of one or more objects in the plurality of objects (e.g., de-emphasizing a group of objects in the plurality of objects having an object type different from the first object type), wherein the first group of one or more objects are of the first object type. In some examples, based on determining that the input points to the first user interface object, the computer system displays an indication that a particular object (e.g., in the first group of objects) is of the first object type.

[0368] At 960 of method 900, the computer system, while displaying a representation of a physical environment including a plurality of objects, in response to receiving the set of one or more user inputs and based on determining that the input points to a second user interface object, emphasizes (e.g., as described above with respect to method 700) a second set of one or more objects in the plurality of objects (e.g., de-emphasizing a set of objects in the plurality of objects that have an object type different from the second object type), wherein the second set of one or more objects are of the second object type. In some examples, based on determining that the input points to the second user interface object, the computer system displays an indication that a particular object (e.g., in the second set of objects) is of the second object type.

[0369] Selecting an object type and then highlighting detected objects of that type provides the user with control of the computer system to see which objects are nearby, providing additional control options without cluttering the user interface with additional displayed controls.

[0370] In some examples, the representation of the physical environment is a computer-generated representation, and wherein the computer-generated representation is generated based on data detected via at least one of the one or more sensors. In some examples, the representation of the physical environment is not a live feed and / or has been enhanced by a computer system to show less detail than a live feed of the physical environment (e.g., detected by a camera sensor and / or another sensor) would include.

[0371] Displaying a computer-generated representation generated based on data detected via at least one of the one or more sensors provides a user with a representation of things near the computer system, which provides additional control options without cluttering the user interface with additional displayed controls.

[0372] In some examples, the plurality of objects includes a third group of objects of a third object type. In such examples, the computer system: in response to detecting the group of one or more inputs: based on determining that the input is directed to the first user interface object, stops displaying the third group of one or more objects in the plurality of objects while emphasizing the first group of one or more objects in the plurality of objects.

[0373] Ceasing to display a third group of one or more objects in a plurality of objects while emphasizing a first group of one or more objects in the plurality of objects in response to detecting an input provides a user with less distraction when viewing a particular type of object, providing additional control options without cluttering the user interface with additional displayed controls.

[0374] In some examples, the plurality of objects includes a fourth group of objects of a fourth object type. In such examples, the computer system: in response to detecting the group of one or more inputs: based on determining that the input is directed to the first user interface object, continue to display the fourth group of one or more objects in the plurality of objects while emphasizing the first group of one or more objects in the plurality of objects. In some examples, based on determining that the input is directed to the first user interface object, de-emphasizing the fourth group of one or more objects relative to the first group of one or more objects.

[0375] Continuing to display a fourth group of one or more objects in the plurality of objects while emphasizing a first group of one or more objects in the plurality of objects in response to detecting an input provides the user with less distraction when viewing a particular type of object, providing additional control options without cluttering the user interface with additional displayed controls.

[0376] In some examples, the first object type or the second object type corresponds to a predefined location in the physical environment (eg, as described above with respect to method 700 ).

[0377] Emphasizing detected objects corresponding to predefined locations in response to detecting input provides a user controlling the computer system to see which objects are nearby, providing additional control options without cluttering the user interface with additional displayed controls.

[0378] In some examples, the first object type or the second object type corresponds to one or more persons (eg, as described above with respect to method 700).

[0379] Emphasizing detected persons in response to detecting input provides the user with control of the computer system to see which persons are nearby, providing additional control options without cluttering the user interface with additional displayed controls.

[0380] In some examples, the first object type or the second object type corresponds to a type of electronic device (eg, as described above with respect to method 700).

[0381] Emphasizing a specific type of detected electronic device in response to detecting an input provides a user with control of the computer system to see which specific types of electronic devices are nearby, providing additional control options without cluttering the user interface with additional displayed controls.

[0382] In some examples, the first object type or the second object type corresponds to a type of symbol in the physical environment (e.g., a sign, a marking (such as a lane, boundary, and / or crosswalk), a hazardous materials symbol, a recycling symbol, and / or a utility symbol) (e.g., as described above with respect to method 700).

[0383] Emphasizing a particular type of detected symbol in response to detecting an input provides a user with control of the computer system to see which particular types of symbols are nearby, providing additional control options without cluttering the user interface with additional displayed controls.

[0384] In some examples, a computer system: after receiving the group of one or more user inputs and while displaying a representation of a physical environment including the multiple objects, detects a corresponding input pointing to a first object among the multiple objects; and in response to detecting the corresponding input: based on determining that the first object is emphasized when the corresponding input is detected, performs an operation corresponding to the first object (e.g., navigating to the selected object and / or following the selected object (e.g., as described above with respect to method 700) and / or displaying a selectable user interface object for navigating to the object and a selectable user interface for following the selected object (e.g., as described above with respect to method 700)); and based on determining that the first object is not emphasized when the corresponding input is detected, abandons execution of the operation.

[0385] Performing an operation corresponding to an emphasized object in response to detecting input provides the user with control over the computer system to conditionally perform operations, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0386] Note that the above description is relative to method 900 (eg, Fig. 9 ) also apply in a similar manner to the methods described above. For example, method 700 optionally includes one or more features of the various methods described above with reference to method 800. For example, the first group of one or more objects of method 900 may include the objects highlighted in method 800. For the sake of brevity, these details are not repeated below.

[0387] FIG. 10A to FIG. 10C 1000 are shown in accordance with some embodiments for using the computer system 1000 to manipulate a physical input mechanism. The user interfaces in these figures are used to illustrate the processes described below, including Fig.11 and Fig.12 Such a user interface shows a user performing a gesture and causing the rotatable input mechanism 1002 of the computer system 1000 to rotate. In some examples, such a gesture is not physically contacted with the rotatable input mechanism 1002, but is performed in the air, such as Fig. 10A For example, person 1030 may make a downward gesture, and computer system 1000 may detect the downward gesture so that rotatable input mechanism 1002 rotates in a direction corresponding to the downward gesture. In such examples, the downward gesture may be detected by an electronic device worn by person 1030 and / or a camera that captures a field of view that includes person 1030.

[0388] like Fig. 10A As shown in FIG. 1 , computer system 1000 is displaying user interface 1010 with a scrollable list. To view more items in the scrollable list, person 1030 performs a downward gesture, and rotatable input mechanism 1002 responds to person 1030 by scrolling the list, as shown in FIG. Fig. 10B . In some examples, person 1030 is only allowed to reposition rotatable input mechanism 1002 a certain amount using such an in-air gesture, and will need to physically touch rotatable input mechanism 1002 to scroll beyond the certain amount. In other examples, computer system 1000 can interpret the magnitude corresponding to the gesture to determine how much to reposition rotatable input mechanism 1002. For example, a quick gesture can be interpreted as requiring more movement than a slow or short gesture.

[0389] In some examples, other people in the physical environment cannot control the rotatable input mechanism 1002 similarly to the person 1030. For example, Fig. 10A 1040 may attempt to scroll up the list, but computer system 1000 responds to person 1030 instead of person 1040. In such examples, computer system 1000 identifies person 1030 as a particular type of person, such as a privileged user, and identifies person 1040 as a different type of person, such as a non-privileged person. In some examples, identification is performed based on one or more electronic devices local to person 1030 and / or 1040. For example, computer system 1000 may identify that person 1030 has a device registered to a privileged user, while computer system 1000 cannot identify person 1040.

[0390] In some examples, different people can control the rotatable input mechanism 1002 by different amounts. For example, person 1030 may have the privilege of controlling the rotatable input mechanism 1002 as they wish, while person 1040 may be limited to what they can do with respect to the rotatable input mechanism 1002, such as being limited to certain movements and / or certain amounts of movement. In some examples, the amount of movement performed due to the air gesture is measured from a point where there is another type of movement (such as a manual movement). In some examples, person 1040 may cause the rotatable input mechanism 1002 to move less in a certain direction than person 1030. In such examples, person 1040 may cause the rotatable input mechanism 1002 to rotate only 180 degrees, while person 1030 may cause the rotatable input mechanism 1002 to rotate more than 360 degrees. Therefore, in some examples, person 1040 may be limited to causing the rotatable input mechanism 1002 to rotate only within a specific rotation angle and / or boundary.

[0391] In some examples, the computer system 1000 may detect different gestures being performed. For example, the computer system 1000 may distinguish between an up gesture and a down gesture to cause a list to scroll up or scroll down. In such examples, certain people identified by the computer system 1000 may not be given permission for all gestures, but may only be able to control the rotatable input mechanism 1002 in a specific way (or different gestures may have the same effect for some users, while other users will have different effects for different gestures, such as moving more or even completely different operations, such as closing).

[0392] For another example, the computer system 1000 can distinguish finger pointing (such as Fig. 10B ) and fists (as shown in Fig. 10C In such examples, different users may have different permissions to control the rotatable input mechanism 1002 using different gestures. Fig. 10CAs shown in , person 1030 is performing a fist gesture, which causes a button on the side of computer system 1000 to be pressed.

[0393] In some examples, some gestures are not recognized by the computer system 1000 and do not result in any movement. In some examples, the distance from the rotatable input mechanism 1002 is taken into account as to whether to make a movement based on the gesture. For example, a gesture may be detected, but the computer system 1000 chooses not to move the rotatable input mechanism 1002 because the gesture occurs too far from the computer system 1000. In some examples, the context of the rotatable input mechanism 1002 and / or the computer system 1000 determines whether a gesture can cause movement. For example, the computer system 1000 may be worn on a person's wrist while they are moving. In such examples, non-physical user input detected as moving the rotatable input mechanism 1002 will not be processed while the person is moving.

[0394] Although discussed above with respect to a rotatable input mechanism, it should be appreciated that other devices may be manipulated with user input without physical contact, such as windows in a home, autonomous devices such as a vacuum cleaner, a vehicle, or any other device that is capable of moving on its own.

[0395] Fig.11 1 is a flowchart illustrating a method for gesture-based repositioning using a computer system according to some embodiments. Method 1100 is performed at a computer system (e.g., 100, 300, 500, 600, and / or 1000) that communicates with a display generation component (e.g., a display screen, a touch-sensitive display) (in some examples, the computer system is a watch, a fitness tracking device, a phone, a tablet computer, a processor, a head-mounted display (HMD) device, and / or a personal computing device) and one or more sensors (e.g., a microphone, a camera, a radar, a lidar, a touch-sensitive display, and / or a physical button) (in some examples, one of the one or more sensors is a display generation component, such as a touch-sensitive display). Some operations in method 1100 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0396] As described below, method 1100 provides an intuitive way for gesture-based repositioning. The method reduces the cognitive burden on the user to reposition physical components, thereby creating a more efficient human-computer interface. For battery-powered computing devices, it enables users to reposition physical components faster, save power more efficiently, and increase the time interval between battery charges.

[0397] At 1110 of method 1100, a computer system (e.g., 1000) detects gestures (e.g., air gestures, tap air gestures, waving air gestures, pushing motion gestures, sweeping motion gestures, gestures of the user's hands closing or spreading together, flicking air gestures, twisting air gestures, and / or gestures that provide direction (e.g., left to right, up to down, and / or front to back) and / or non-air gestures such as mouse clicks, gaze gestures, voice input, and / or touch input) via one or more sensors (e.g., a camera of the computer system and / or a component of a device worn by a user separate from the computer system (e.g., a wearable device such as a wrist-worn device, a watch, and / or a fitness tracking device)).

[0398] At 1120 of method 1100, the computer system, in response to detecting a gesture and in accordance with determining that a first set of one or more criteria are satisfied, wherein the set of criteria includes criteria that are satisfied when it is determined that the gesture is a particular type of gesture, causes a portion (e.g., 1002) of a computer system (e.g., 1000) (e.g., one or more physical components or all of the computer system) to move in a physical environment (e.g., from a first position (e.g., a first location and / or orientation) to a second position (e.g., a second location and / or orientation)). In some examples, as part of causing the computer system to move, the computer system is moved by an actuator, an arm, a lever, wheels, and / or a lift, and / or the computer system traverses the physical environment in a direction parallel to the ground.

[0399] At 1130 of method 1100, the computer system, in response to detecting the gesture and based on determining that a second set of one or more criteria is satisfied, forgoes causing the portion of the computer system to move in the physical environment, wherein the second set of one or more criteria is different than the first set of one or more criteria. In some examples, based on determining that the second set of one or more criteria is satisfied, the computer system stays in the same location and / or does not move in the physical environment.

[0400] Conditionally causing a portion of a computer system to move within a physical environment in response to input provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0401] In some examples, the first set of one or more criteria includes criteria that are met when a gesture is determined to be within a predetermined threshold distance (e.g., 0.1 meters-10 meters) from the computer system.

[0402] Conditionally causing a portion of a computer system to move within a physical environment in response to input when within a predetermined threshold provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0403] In some examples, the first set of one or more criteria includes criteria that are satisfied when it is determined that the computer system is in a particular context, e.g., a particular state (e.g., the computer system is not moving and / or is prompted to move) and / or the computer system is in a particular mode (e.g., a sleep mode, a hibernation mode, a reduced power mode, a high power mode, and / or a low power mode)).

[0404] Conditionally causing a portion of a computer system to move within a physical environment in response to input when in a particular context provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0405] In some examples, detecting a gesture includes detecting a user making the gesture, and wherein the first set of one or more criteria includes criteria that are met when it is determined that the user is a particular type of user (e.g., a user with permission to move the computer system, an owner of the computer system, a family member and / or friend of the owner of the computer system, and / or an emergency responder such as a police department, firefighters, and / or a healthcare professional).

[0406] Conditionally causing a portion of a computer system to move within a physical environment in response to input from a particular person provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0407] In some examples, the first set of one or more criteria includes criteria that are satisfied when it is determined that the portion of the computer system has moved (e.g., has moved) less than a predefined amount (e.g., establishing a geofence around an original location of the computer system (e.g., a location where the computer system was located for a predetermined time period (e.g., 1 minute-10 minutes), a location where the computer system navigated to and / or was placed, and / or a location where the computer system was located before being moved based on the air gesture) (e.g., an area and / or bounding box around the computer system in which the computer system may move no more than a predetermined distance (e.g., 1 meter-5 meters)). In some examples, the size of the geofence is based on the location of the computer system before the air gesture is detected. In some examples, the size of the geofence is based on the time when the air gesture is detected (e.g., so that the computer system moves more during the day than at night).

[0408] Conditionally causing a portion of a computer system to move a predefined amount in a physical environment in response to input provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0409] In some examples, in response to detecting the gesture: based on determining that a third set of one or more criteria is satisfied, wherein the third set of one or more criteria is different from the first set of one or more criteria and the second set of one or more criteria: based on determining that the gesture corresponds to a first direction, causing the portion of the computer system to move in the first direction; and based on determining that the gesture corresponds to a second direction different from the first direction, causing the portion of the computer system to move in the second direction. In some examples, the second direction is opposite to the first direction.

[0410] Conditionally causing a portion of a computer system to move within a physical environment in response to input in an input direction provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0411] In some examples, in response to detecting a gesture: abandoning moving the portion of the computer system (e.g., in a third direction) based on determining that one or more criteria of a third set are satisfied and based on determining that the gesture corresponds to a third direction (e.g., not back and forth, side to side, or some combination thereof).

[0412] Conditionally causing a portion of a computer system to move in a subset of directions in a physical environment in response to input provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0413] In some examples, in response to detecting a gesture: based on determining that a fourth set of one or more criteria are satisfied, wherein the fourth set of one or more criteria are different from the first set of one or more criteria, the second set of one or more criteria, and the third set of one or more criteria: based on determining that the gesture is detected within a first time period, the portion of the computer system moves a first amount (e.g., a distance amount and / or a speed amount); and based on determining that the gesture is detected within a second time period different from the first time period, the portion of the computer system moves a second amount different from the first amount (e.g., a distance amount and / or a speed amount).

[0414] Conditionally causing a portion of a computer system to move within a physical environment based on time in response to input provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0415] In some examples, a computer system, in response to detecting a gesture: based on determining that a fifth set of one or more criteria are satisfied, where the fifth set of one or more criteria are different from the first set of one or more criteria, the second set of one or more criteria, the third set of one or more criteria, and the fourth set of one or more criteria: based on determining that the gesture is a first type of gesture (e.g., a push motion air gesture, a swipe motion air gesture, and / or an air gesture that increases and / or decreases the distance between a user's hands), causes the portion of the computer system to move (e.g., laterally (e.g., along the ground, along the floor, and / or along a table) from a corresponding position) to a first position in the physical environment; and based on determining that the gesture is a second type of gesture different from the first type of gesture, causes the portion of the computer system to move to a second position (e.g., and / or location) in the physical environment that is different from the first position.

[0416] Conditionally causing a portion of a computer system to move within a physical environment based on a gesture type in response to input provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0417] In some examples, the computer system communicates with a wearable device, and wherein the gesture is detected by one or more sensors of the wearable device (e.g., via one or more sensors (e.g., accelerometers, gyroscopes, and / or heart rate sensors)).

[0418] In some examples, the computer system is in communication with a camera (eg, a telephoto, wide angle, ultra wide angle camera), and wherein the gesture is detected via the camera (eg, detected in the camera's field of view).

[0419] Note that the above description is relative to method 1100 (eg, Fig.11 ) also apply in a similar manner to the methods described below. For example, method 1200 optionally includes one or more of the characteristics of the various methods described above with reference to method 1100. For example, the criteria of method 1200 may be included in a set of criteria of method 1100. For the sake of brevity, these details are not repeated below.

[0420] Fig.12 1200 is a flowchart illustrating a method for identity-based relocation using a computer system according to some embodiments. Method 1200 is performed at a computer system (e.g., 100, 300, 500, 600, and / or 1000) that communicates with a display generation component (e.g., a display screen, a touch-sensitive display) (in some examples, the computer system is a watch, a fitness tracking device, a phone, a tablet computer, a processor, a head-mounted display (HMD) device, and / or a personal computing device) and one or more sensors (e.g., a microphone, a camera, a radar, a lidar, a touch-sensitive display, and / or a physical button) (in some examples, one of the one or more sensors is a display generation component, such as a touch-sensitive display). Some operations in method 1200 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0421] As described below, method 1200 provides an intuitive way for identity-based repositioning. The method reduces the cognitive burden on the user to reposition physical components, thereby creating a more efficient human-computer interface. For battery-powered computing devices, users are enabled to reposition physical components faster, save power more efficiently, and increase the time interval between battery charges.

[0422] At 1210 of method 1200, when the computer system is in a first position in the physical environment, the computer system detects a gesture (e.g., as described above with respect to the gesture) via one or more sensors (e.g., a camera of the computer system and / or a component of a device worn by a user that is separate from the computer system (e.g., a wearable device such as a wrist-worn device, a watch, and / or a fitness tracking device)). Fig. 10CThe gestures discussed herein) (e.g., air gestures, tap air gestures, waving air gestures, pushing motion gestures, sweeping motion gestures, gestures of the user's hands closing or spreading together, flicking air gestures, twisting air gestures, and / or gestures that provide direction (e.g., left to right, up to down, and / or front to back) and / or non-air gestures such as tap input, mouse click, touch input, and / or voice input).

[0423] At 1220 of method 1200, the computer system, in response to detecting a gesture and based on determining that a first set of one or more criteria are satisfied, causes a portion (e.g., 1002) of the computer system (e.g., 1000) to move from a first position (e.g., a first location and / or orientation) to a second position (e.g., a second location and / or orientation) within a physical environment, wherein the second position is different from the first position, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user (e.g., 1030 and / or 1040) is detected (e.g., performing a gesture and / or being detected within a predetermined distance from the computer system).

[0424] At 1230 of method 1200, the computer system, in response to detecting the gesture and based on determining that a second set of one or more criteria is satisfied, forgoes causing the portion (e.g., 1002) of the computer system (e.g., 1000) to move from the first position to the second position, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user (e.g., 1030 and / or 1040) is detected (e.g., performing the gesture and / or being detected within a predetermined distance from the computer system), wherein the second user (e.g., 1040) is different from the first user (e.g., 1030), and wherein the second set of one or more criteria is different from the first set of one or more criteria. In some examples, based on determining that the second set of one or more criteria is satisfied, the computer system is caused to move from the first position to a third position (e.g., a third location and / or orientation) within the physical environment (e.g., without causing the computer system to move to the second position). In some examples, the third position is closer (or farther) from the first position than the second position (e.g., angular distance and / or linear distance). In some examples, based on determining that the second set of one or more criteria is satisfied, the computer system is not caused to move at all.

[0425] Conditionally causing a portion of a computer system to move within a physical environment in response to input from a particular person provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0426] In some examples, a computer system, in response to detecting a gesture, moves the portion of the computer system from a first position (e.g., a first location and / or orientation) to a third position (e.g., a second location and / or orientation) within a physical environment based on determining that a third set of one or more criteria is satisfied, wherein a distance between the third position and the first position is less than a distance between the second position and the first position, wherein the third set of one or more criteria includes criteria that are satisfied when it is determined that the second user is a first type of user, and wherein the third set of one or more criteria are different from the first set of one or more criteria and the second set of one or more criteria.

[0427] Conditionally causing a portion of a computer system to move within a physical environment in response to input from a particular person provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0428] In some examples, a computer system, in response to detecting a gesture, abandons causing the computer system to move (e.g., not move at all) based on determining that a fourth set of one or more criteria is satisfied, wherein the fourth set of one or more criteria includes criteria that are satisfied when it is determined that the second user is a second type of user that is different from the first type of user, and wherein the fourth set of one or more criteria is different from the first set of one or more criteria, the second set of one or more criteria, and the third set of one or more criteria.

[0429] Conditionally causing a portion of a computer system to move within a physical environment in response to input from a particular person provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0430] In some examples, the second position is in a first direction from the first position, and wherein the first direction is selected from a subset of predefined directions (eg, only front to back, back to front, side to side, or some combination thereof).

[0431] Conditionally causing a portion of a computer system to move within a physical environment in response to input from a particular person provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0432] In some examples, the second position is in a second direction from the first position, and wherein: in response to detecting a gesture: selecting the second direction from the first set of one or more predefined directions based on determining that a fifth set of one or more criteria are satisfied, wherein the fifth set of criteria includes criteria that are satisfied when it is determined that the first user is a third type of user (e.g., having a first set of permissions, an owner, a family member, a friend, and / or associated with an owner and / or as described with respect to method 1100), and wherein the fifth set of one or more criteria are different from the first set of one or more criteria, the second set of one or more criteria, the third set of one or more criteria, and the fourth set of one or more criteria; and selecting the second direction from the second set of one or more predefined directions based on determining that a sixth set of one or more criteria are satisfied, wherein the second set of one or more predefined directions is smaller than the first set of one or more predefined directions, wherein the fifth set of criteria includes criteria that are satisfied when it is determined that the first user is a fourth type of user different from the third type of user (e.g., having a first set of permissions, an owner, a family member, a friend, and / or associated with an owner and / or as described with respect to method 1100), and wherein the sixth set of one or more criteria are different from the first set of one or more criteria, the second set of one or more criteria, the third set of one or more criteria, the fourth set of one or more criteria, and the fifth set of one or more criteria.

[0433] Conditionally causing a portion of a computer system to move within a physical environment in response to input from a particular person provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0434] In some examples, when the computer system is at a first location in the physical environment, the computer system detects a second gesture (e.g., an air gesture, a tap air gesture, a waving air gesture, a push motion gesture, a swiping motion gesture, a gesture of a user's hands closing or spreading together, a flick air gesture, a twist air gesture, and / or a gesture that provides direction (e.g., left to right, up to down, and / or front to back)) via one or more sensors; and in response to detecting the second gesture, causes the computer system to move from the first location to a fourth location, regardless of whether the second gesture is detected to be performed by the first user or the second user. In some examples, the fourth location is different from the first location, the second location, and / or the third location.

[0435] Conditionally causing a portion of a computer system to move within a physical environment in response to input from a particular person provides user control of the computer system, which provides additional control options without cluttering the user interface with additional displayed controls, and performs operations without further user input when a set of conditions have been met.

[0436] In some examples, when the computer system is at a first position in the physical environment, the computer system detects a third gesture (e.g., an air gesture, a tap air gesture, a waving air gesture, a pushing motion gesture, a sweeping motion gesture, a gesture of the user's hands closing or spreading, a flick air gesture, a twist air gesture, and / or a gesture that provides direction (e.g., left to right, up to down, and / or front to back)) via one or more sensors, the third gesture being a gesture of a different type from t...

Claims

1. A method, comprising: At a computer system in communication with a display generating component and one or more sensors: displaying, via the display generation component, a representation of a physical environment, wherein the representation includes one or more objects detected via at least one of the one or more sensors; receiving, via at least one of the one or more sensors, a set of one or more inputs including an input corresponding to a selection of an object of the one or more objects; as well as In response to receiving the set of one or more user inputs, a path to a location corresponding to the object in the representation of the physical environment is displayed via the display generation component. The method of claim 1 , wherein the object is located at a predefined location in the physical environment.

3. The method according to claim 2, further comprising: Navigating to the predefined location in the physical environment, comprising: navigating in a first direction along a first portion of the path in accordance with determining that the computer system is configured to navigate to the predefined location based on a first preference; Based on determining that the computer system is configured to navigate to the predefined location based on a second preference different from the first preference, navigate along the first portion of the path in a second direction, wherein the second direction is different from the first direction.

4. The method according to any one of claims 2 to 3, further comprising: Navigating to the predefined location in the physical environment, comprising: navigating in a second oriented direction based on determining that a second object in the physical environment is oriented in the first direction; and Based on determining that the second object in the physical environment is oriented in a third direction different from the first direction, navigating in a fourth orientation direction different from the second orientation direction.

5. The method of any one of claims 1 to 4, wherein the subject comprises one or more humans.

6. The method according to claim 5, further comprising: while displaying the object including one or more persons, detecting movement of a first subset of the one or more persons relative to a second subset of the one or more persons; as well as In response to detecting movement of the first subset of the one or more persons relative to the second subset of the one or more persons: ceasing to display said object; displaying a first object corresponding to the first group of the one or more persons; and A second object corresponding to a second group of the one or more persons is displayed, wherein the second object is different from the first object.

7. The method according to any one of claims 5 to 6, further comprising: while displaying the object including the one or more persons, detecting a second input corresponding to a selection of the object; in response to detecting the second input corresponding to selection of the object, displaying a plurality of options; while displaying the plurality of options, detecting an input corresponding to a selection of a first option of the plurality of options; as well as In response to detecting the input corresponding to selection of a corresponding option of the plurality of options: navigating to follow the one or more persons based on determining that the corresponding option is a first option among the plurality of options; as well as Based on determining that the corresponding option is a second option among the plurality of options, navigating to the predefined location relative to the one or more persons, wherein the second option is different from the first option.

8. The method of any one of claims 1 to 7, wherein the object comprises a second computer system different from the computer system.

9. The method of any one of claims 1 to 8, wherein the object comprises one or more markers in the physical environment.

10. The method of any one of claims 1 to 9, wherein displaying the path to the object in the representation of the physical environment comprises: detecting movement of the object; as well as In response to detecting movement of the object: updating the path relative to the first movement based on determining that the movement of the object includes a first movement; as well as Based on determining that the movement of the object includes a second movement different from the first movement, the path is updated relative to the second movement, wherein the path updated relative to the first movement is different from the path updated relative to the second movement.

11. The method according to any one of claims 1 to 10, further comprising: receiving, via at least one of the one or more sensors, a second set of one or more inputs including an input corresponding to a selection of a second object of the one or more objects; as well as In response to detecting the input corresponding to selection of the second object of the one or more objects, displaying a path to a location corresponding to the second object is abandoned.

12. The method according to any one of claims 1 to 11, wherein: Displaying the representation of the physical environment includes: displaying a representation of the object; prior to receiving the set of one or more user inputs, displaying the representation of the object in a first appearance; and In response to receiving the set of one or more user inputs, the representation of the object is displayed, via the display generation component, in a second appearance different from the first appearance.

13. The method according to any one of claims 1 to 12, further comprising: In response to receiving the set of one or more user inputs, navigating to the object via the path.

14. The method of any one of claims 1 to 13, wherein navigating to the object via the path comprises ceasing execution of a previous navigation process that was initiated prior to receiving the set of one or more inputs.

15. The method of any one of claims 1 to 14, wherein the representation of the physical environment comprises a computer-generated representation of one or more non-stationary objects.

16. The method of any one of claims 1 to 15, the representation of the physical environment comprising a computer-generated representation of one or more fixed objects.

17. The method of any one of claims 1 to 16, wherein the one or more sensors include one or more cameras, and wherein the representation of the physical environment is a live feed captured by the one or more cameras.

18. 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 and one or more sensors, the one or more programs comprising instructions for executing the method according to any one of claims 1 to 17.

19. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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 comprising instructions for executing the method according to any one of claims 1 to 17.

20. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: Components for carrying out the method according to any one of claims 1 to 17.

21. 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 one or more sensors, the one or more programs comprising instructions for executing a method according to any one of claims 1 to 17.

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 a display generation component and one or more sensors, the one or more programs comprising instructions for: displaying, via the display generation component, a representation of a physical environment, wherein the representation includes one or more objects detected via at least one of the one or more sensors; receiving, via at least one of the one or more sensors, a set of one or more inputs including an input corresponding to a selection of an object of the one or more objects; as well as In response to receiving the set of one or more user inputs, a path to a location corresponding to the object in the representation of the physical environment is displayed via the display generation component.

23. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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 generation component, a representation of a physical environment, wherein the representation includes one or more objects detected via at least one of the one or more sensors; receiving, via at least one of the one or more sensors, a set of one or more inputs including an input corresponding to a selection of an object of the one or more objects; as well as In response to receiving the set of one or more user inputs, a path to a location corresponding to the object in the representation of the physical environment is displayed via the display generation component.

24. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: Means for: displaying, via the display generation component, a representation of a physical environment, wherein the representation includes one or more objects detected via at least one of the one or more sensors; means for receiving, via at least one of the one or more sensors, a set of one or more inputs including an input corresponding to a selection of an object of the one or more objects; and Means for displaying, via the display generation component, a path to a location corresponding to the object in the representation of the physical environment in response to receiving the set of one or more user inputs.

25. 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 and one or more sensors, the one or more programs comprising instructions for: displaying, via the display generation component, a representation of a physical environment, wherein the representation includes one or more objects detected via at least one of the one or more sensors; receiving, via at least one of the one or more sensors, a set of one or more inputs including an input corresponding to a selection of an object of the one or more objects; as well as In response to receiving the set of one or more user inputs, a path to a location corresponding to the object in the representation of the physical environment is displayed via the display generation component.

26. A method comprising: At a computer system in communication with a display generating component and one or more sensors: displaying, via the display generation component, a representation of a physical environment; while displaying the representation of the physical environment, detecting, via at least one of the one or more sensors, a first object in the physical environment; as well as In conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that the path to the first object is a first type of path; as well as Based on determining that the path to the first object is a second type of path different from the first type of path, emphasis on the first object is dropped.

27. The method of claim 26, wherein determining whether the path to the first object is the first type of path or the second type of path is based at least on a distance between the computer system and the first object.

28. The method of any one of claims 26 to 27, wherein whether the path to the first object is the first type of path or the second type of path is determined based at least on a speed of the first object.

29. The method of any one of claims 26 to 28, wherein determining whether the path to the first object is the first type of path or the second type of path is based at least on a speed of the computer system.

30. The method of any one of claims 26 to 29, wherein determining whether the path to the first object is the first type of path or the second type of path is based at least on a determination of whether the first object is stationary.

31. The method of any one of claims 26 to 30, wherein whether the path to the first object is the first type of path or the second type of path is determined based at least on a direction of the first object relative to the computer system.

32. The method according to any one of claims 26 to 31, further comprising: while displaying the representation of the first object, detecting input directed to the first object; as well as In response to detecting the input directed to the first object: Initiating navigation to the first object based on determining that the first object is selectable; as well as Based on determining that the first object is not selectable, navigation to the first object is abandoned.

33. The method of any one of claims 26 to 32, wherein initiating navigation to the first object comprises displaying a path to the first object.

34. 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 that communicates with a display generation component and one or more sensors, the one or more programs comprising instructions for executing the method of any one of claims 26 to 33.

35. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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 comprising instructions for executing the method according to any one of claims 26 to 33.

36. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: Means for carrying out the method according to any one of claims 26 to 33.

37. 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 one or more sensors, the one or more programs comprising instructions for performing the method according to any one of claims 26 to 33.

38. 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 and one or more sensors, the one or more programs comprising instructions for: displaying, via the display generation component, a representation of a physical environment; while displaying the representation of the physical environment, detecting, via at least one of the one or more sensors, a first object in the physical environment; as well as In conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that the path to the first object is a first type of path; as well as Based on determining that the path to the first object is a second type of path different from the first type of path, emphasis on the first object is dropped.

39. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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 generation component, a representation of a physical environment; while displaying the representation of the physical environment, detecting, via at least one of the one or more sensors, a first object in the physical environment; as well as In conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that the path to the first object is a first type of path; as well as Based on determining that the path to the first object is a second type of path different from the first type of path, emphasis on the first object is dropped.

40. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: Means for: displaying, via the display generation component, a representation of a physical environment; means for: while displaying the representation of the physical environment, detecting via at least one of the one or more sensors a first object in the physical environment; and Means for: in conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that the path to the first object is a first type of path; as well as Based on determining that the path to the first object is a second type of path different from the first type of path, emphasis on the first object is dropped.

41. 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 and one or more sensors, the one or more programs comprising instructions for: displaying, via the display generation component, a representation of a physical environment; while displaying the representation of the physical environment, detecting, via at least one of the one or more sensors, a first object in the physical environment; as well as In conjunction with detecting the first object in the physical environment: emphasizing the first object based on determining that the path to the first object is a first type of path; as well as Based on determining that the path to the first object is a second type of path different from the first type of path, emphasis on the first object is dropped.

42. A method comprising: At a computer system in communication with a display generating component and one or more sensors: detecting a plurality of objects in a physical environment via at least one of the one or more sensors; displaying, via the display generation component, a representation of the physical environment including the plurality of objects; After displaying the representation of the physical environment including the plurality of objects, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object corresponding to the first object type; and a second user interface object corresponding to a second object type different from the first object type; receiving, via at least one of the one or more sensors, a set of one or more user inputs, the set of one or more user inputs comprising inputs directed to the plurality of user interface objects; and While displaying the representation of the physical environment including the plurality of objects, and in response to receiving the set of one or more user inputs: based on determining that the input was directed to the first user interface object, emphasizing a first group of one or more objects in the plurality of objects, wherein the first group of one or more objects are of the first object type; and Based on determining that the input was directed to the second user interface object, a second group of one or more objects in the plurality of objects is emphasized, wherein the second group of one or more objects are of the second object type.

43. The method of claim 42, wherein the representation of the physical environment is a computer-generated representation, and wherein the computer-generated representation is generated based on data detected via at least one of the one or more sensors.

44. The method of any one of claims 42 to 43, wherein the plurality of objects comprises a third group of objects of a third object type, the method further comprising: In response to detecting the set of one or more inputs: Based on determining that the input was directed to the first user interface object, the third group of one or more objects in the plurality of objects is stopped from being displayed while the first group of one or more objects in the plurality of objects is emphasized.

45. The method of any one of claims 42 to 44, wherein the plurality of objects comprises a fourth group of objects of a fourth object type, the method further comprising: In response to detecting the set of one or more inputs: Based on determining that the input was directed to the first user interface object, continue to display the fourth group of one or more objects in the plurality of objects while emphasizing the first group of one or more objects in the plurality of objects.

46. ​​The method of any one of claims 42 to 45, wherein the first object type or the second object type corresponds to a predefined location in the physical environment.

47. The method of any one of claims 42 to 46, wherein the first object type or the second object type corresponds to one or more persons.

48. The method of any one of claims 42 to 47, wherein the first object type or the second object type corresponds to a type of electronic device.

49. A method according to any one of claims 42 to 48, wherein the first object type or the second object type corresponds to a type of symbol in the physical environment.

50. The method according to any one of claims 42 to 49, further comprising: After receiving the set of one or more user inputs and while displaying the representation of the physical environment including the plurality of objects, detecting a corresponding input directed to a first object of the plurality of objects; and In response to detecting the corresponding input: performing an operation corresponding to the first object in accordance with determining that the first object was emphasized when the corresponding input was detected; as well as Based on determining that the first object was not emphasized when the corresponding input was detected, performance of the operation is abandoned.

51. 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 that communicates with a display generation component and one or more sensors, the one or more programs comprising instructions for executing a method according to any one of claims 42 to 50.

52. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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 comprising instructions for executing the method according to any one of claims 42 to 50.

53. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: Apparatus for carrying out the method according to any one of claims 42 to 50.

54. 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 one or more sensors, the one or more programs including instructions for performing the method of any one of claims 42 to 50.

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 and one or more sensors, the one or more programs comprising instructions for: detecting a plurality of objects in a physical environment via at least one of the one or more sensors; displaying, via the display generation component, a representation of the physical environment including the plurality of objects; After displaying the representation of the physical environment including the plurality of objects, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object corresponding to the first object type; and a second user interface object corresponding to a second object type different from the first object type; receiving, via at least one of the one or more sensors, a set of one or more user inputs, the set of one or more user inputs comprising inputs directed to the plurality of user interface objects; and While displaying the representation of the physical environment including the plurality of objects, and in response to receiving the set of one or more user inputs: based on determining that the input was directed to the first user interface object, emphasizing a first group of one or more objects in the plurality of objects, wherein the first group of one or more objects are of the first object type; and Based on determining that the input was directed to the second user interface object, a second group of one or more objects in the plurality of objects is emphasized, wherein the second group of one or more objects are of the second object type.

56. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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: detecting a plurality of objects in a physical environment via at least one of the one or more sensors; displaying, via the display generation component, a representation of the physical environment including the plurality of objects; After displaying the representation of the physical environment including the plurality of objects, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object corresponding to the first object type; and a second user interface object corresponding to a second object type different from the first object type; receiving, via at least one of the one or more sensors, a set of one or more user inputs, the set of one or more user inputs comprising inputs directed to the plurality of user interface objects; and While displaying the representation of the physical environment including the plurality of objects, and in response to receiving the set of one or more user inputs: based on determining that the input was directed to the first user interface object, emphasizing a first group of one or more objects in the plurality of objects, wherein the first group of one or more objects are of the first object type; and Based on determining that the input was directed to the second user interface object, a second group of one or more objects in the plurality of objects is emphasized, wherein the second group of one or more objects are of the second object type.

57. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: means for: detecting a plurality of objects in a physical environment via at least one of the one or more sensors; means for: displaying, via the display generation component, a representation of the physical environment including the plurality of objects; Means for: after displaying the representation of the physical environment including the plurality of objects, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object corresponding to the first object type; and a second user interface object corresponding to a second object type different from the first object type; means for receiving, via at least one of the one or more sensors, a set of one or more user inputs, the set of one or more user inputs comprising inputs directed to the plurality of user interface objects; and Means for: while displaying the representation of the physical environment including the plurality of objects, and in response to receiving the set of one or more user inputs: based on determining that the input was directed to the first user interface object, emphasizing a first group of one or more objects in the plurality of objects, wherein the first group of one or more objects are of the first object type; and Based on determining that the input was directed to the second user interface object, a second group of one or more objects in the plurality of objects is emphasized, wherein the second group of one or more objects are of the second object type.

58. 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 and one or more sensors, the one or more programs comprising instructions for: detecting a plurality of objects in a physical environment via at least one of the one or more sensors; displaying, via the display generation component, a representation of the physical environment including the plurality of objects; After displaying the representation of the physical environment including the plurality of objects, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object corresponding to the first object type; and a second user interface object corresponding to a second object type different from the first object type; receiving, via at least one of the one or more sensors, a set of one or more user inputs, the set of one or more user inputs comprising inputs directed to the plurality of user interface objects; and While displaying the representation of the physical environment including the plurality of objects, and in response to receiving the set of one or more user inputs: based on determining that the input was directed to the first user interface object, emphasizing a first group of one or more objects in the plurality of objects, wherein the first group of one or more objects are of the first object type; and Based on determining that the input was directed to the second user interface object, a second group of one or more objects in the plurality of objects is emphasized, wherein the second group of one or more objects are of the second object type.

59. A method comprising: At a computer system in communication with a display generating component and one or more sensors: detecting a gesture via the one or more sensors, and In response to detecting the gesture: causing a portion of the computer system to move in the physical environment based on a determination that a first set of one or more criteria is satisfied, wherein the set of criteria includes criteria that are satisfied when the gesture is determined to be a particular type of gesture; and Based on determining that a second set of one or more criteria is satisfied, causing the portion of the computer system to move within the physical environment is abandoned, wherein the second set of one or more criteria is different than the first set of one or more criteria.

60. The method of claim 59, wherein the first set of one or more criteria includes criteria that are satisfied when the gesture is determined to be within a predetermined threshold distance from the computer system.

61. The method of any one of claims 59 to 60, wherein the first set of one or more criteria includes criteria that are satisfied when determining that the computer system is in a particular context.

62. A method according to any one of claims 59 to 61, wherein detecting the gesture includes detecting a user performing the gesture, and wherein the first set of one or more criteria includes criteria that are met when determining that the user is a particular type of user.

63. A method according to any one of claims 59 to 62, wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that the portion of the computer system has moved less than a predefined amount.

64. A method according to any one of claims 59 to 63, wherein: In response to detecting the gesture: Based on determining that a third set of one or more criteria is satisfied, wherein the third set of one or more criteria is different from the first set of one or more criteria and the second set of one or more criteria: causing the portion of the computer system to move in a first direction based on determining that the gesture corresponds to the first direction; as well as Based on determining that the gesture corresponds to a second direction different from the first direction, the portion of the computer system is caused to move in the second direction.

65. The method of claim 64, wherein: In response to detecting the gesture: Based on determining that the third set of one or more criteria is satisfied and based on determining that the gesture corresponds to a third direction, causing the portion of the computer system to move is abandoned.

66. A method according to any one of claims 59 to 65, wherein: In response to detecting the gesture: Based on determining that a fourth set of one or more criteria is satisfied, wherein the fourth set of one or more criteria is different from the first set of one or more criteria, the second set of one or more criteria, and the third set of one or more criteria: causing the portion of the computer system to move a first amount based on determining that the gesture was detected within a first time period; and Based on determining that the gesture was detected during a second time period different from the first time period, the portion of the computer system is moved a second amount different from the first amount.

67. The method according to any one of claims 59 to 66, further comprising: In response to detecting the gesture: Based on determining that a fifth set of one or more criteria is satisfied, wherein the fifth set of one or more criteria is different from the first set of one or more criteria, the second set of one or more criteria, the third set of one or more criteria, and the fourth set of one or more criteria: Based on determining that the gesture is a first type of gesture, causing the portion of the computer system to move to a first position in the physical environment; and Based on determining that the gesture is a second type of gesture different from the first type of gesture, the portion of the computer system is caused to move to a second position in the physical environment different from the first position.

68. A method according to any one of claims 59 to 67, wherein the computer system is in communication with a wearable device, and wherein the gesture is detected by one or more sensors of the wearable device.

69. The method of any one of claims 59 to 68, wherein the computer system is in communication with a camera, and wherein the gesture is detected via the camera.

70. 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 and one or more input devices, the one or more programs comprising instructions for executing the method according to any one of claims 59 to 69.

71. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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 comprising instructions for executing the method according to any one of claims 59 to 69.

72. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: Means for performing a method according to any one of claims 59 to 69.

73. 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 one or more sensors, the one or more programs comprising instructions for performing a method according to any one of claims 59 to 69.

74. 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 and one or more sensors, the one or more programs comprising instructions for: detecting a gesture via the one or more sensors, and In response to detecting the gesture: causing a portion of the computer system to move in the physical environment based on a determination that a first set of one or more criteria is satisfied, wherein the set of criteria includes criteria that are satisfied when the gesture is determined to be a particular type of gesture; and Based on determining that a second set of one or more criteria is satisfied, causing the portion of the computer system to move within the physical environment is abandoned, wherein the second set of one or more criteria is different than the first set of one or more criteria.

75. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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: detecting a gesture via the one or more sensors, and In response to detecting the gesture: causing a portion of the computer system to move in the physical environment based on a determination that a first set of one or more criteria is satisfied, wherein the set of criteria includes criteria that are satisfied when the gesture is determined to be a particular type of gesture; and Based on determining that a second set of one or more criteria is satisfied, causing the portion of the computer system to move within the physical environment is abandoned, wherein the second set of one or more criteria is different than the first set of one or more criteria.

76. A computer system configured to communicate with a display generation component and one or more input devices, the computer system comprising: means for detecting a gesture via the one or more sensors, and In response to detecting the gesture: means for causing a portion of the computer system to move in the physical environment based on determining that a first set of one or more criteria is satisfied, wherein the set of criteria includes criteria that are satisfied when determining that the gesture is a particular type of gesture; and Based on a determination that a second set of one or more criteria are satisfied, a component for: Abandoning causes the portion of the computer system to move within the physical environment, wherein the second set of one or more criteria is different than the first set of one or more criteria.

77. 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 and one or more sensors, the one or more programs comprising instructions for: detecting a gesture via the one or more sensors, and In response to detecting the gesture: causing a portion of the computer system to move in the physical environment based on a determination that a first set of one or more criteria is satisfied, wherein the set of criteria includes criteria that are satisfied when the gesture is determined to be a particular type of gesture; and Based on determining that a second set of one or more criteria is satisfied, causing the portion of the computer system to move within the physical environment is abandoned, wherein the second set of one or more criteria is different than the first set of one or more criteria.

78. A method comprising: At a computer system in communication with a display generating component and one or more sensors: detecting a gesture via the one or more sensors when the computer system is at a first location in a physical environment; and In response to detecting the gesture: causing a portion of the computer system to move from the first location to a second location within the physical environment based on a determination that a first set of one or more criteria is satisfied, wherein the second location is different than the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user is detected; and Based on determining that a second set of one or more criteria are satisfied, abandoning causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

79. The method of claim 78, further comprising: In response to detecting the gesture: Based on determining that a third set of one or more criteria are satisfied, the portion of the computer system is moved from the first location to a third location within the physical environment, wherein a distance between the third location and the first location is less than a distance between the second location and the first location, wherein the third set of one or more criteria includes criteria that are satisfied when it is determined that the second user is a first type of user, and wherein the third set of one or more criteria are different from the first set of one or more criteria and the second set of one or more criteria.

80. The method of claim 79, further comprising: In response to detecting the gesture: Based on determining that a fourth set of one or more criteria are satisfied, abandoning moving the computer system, wherein the fourth set of one or more criteria includes criteria that are satisfied when it is determined that the second user is a second type of user different from the first type of user, and wherein the fourth set of one or more criteria is different from the first set of one or more criteria, the second set of one or more criteria, and the third set of one or more criteria.

81. The method of any one of claims 78 to 80, wherein the second position is in a first direction relative to the first position, and wherein the first direction was selected from a subset of predefined directions.

82. The method of any one of claims 78 to 81, wherein the second positioning is in a second direction relative to the first positioning, and wherein: In response to detecting the gesture: selecting the second direction from the first set of one or more predefined directions based on determining that a fifth set of one or more criteria is satisfied, wherein the fifth set of criteria includes criteria that are satisfied when it is determined that the first user is a third type of user, and wherein the fifth set of one or more criteria is different from the first set of one or more criteria, the second set of one or more criteria, the third set of one or more criteria, and the fourth set of one or more criteria; as well as The second direction was selected from a second group of one or more predefined directions based on determining that a sixth group of one or more criteria are satisfied, wherein the second group of one or more predefined directions are smaller than the first group of one or more predefined directions, wherein the fifth group of criteria includes criteria that are satisfied when it is determined that the first user is a fourth type of user different from the third type of user, and wherein the sixth group of one or more criteria are different from the first group of one or more criteria, the second group of one or more criteria, the third group of one or more criteria, the fourth group of one or more criteria, and the fifth group of one or more criteria.

83. The method of any one of claims 78 to 82, further comprising: detecting, via the one or more sensors, a second gesture while the computer system is at the first location in the physical environment; as well as In response to detecting the second gesture, causing the computer system to move from the first position to a fourth position, regardless of whether the second gesture was detected to be performed by the first user or the second user.

84. The method of any one of claims 78 to 83, further comprising: detecting, via the one or more sensors, a third gesture when the computer system is in the first position in the physical environment, the third gesture being a different type of gesture than the first gesture; as well as In response to detecting the third gesture: causing the computer system to move from the first location to the second location based on determining that a seventh set of one or more criteria is satisfied, wherein the seventh set of one or more criteria includes criteria that are satisfied when the first user is determined to be a fifth type of user, and wherein the seventh set of one or more criteria is different from the first set of one or more criteria, the second set of one or more criteria, the third set of one or more criteria, the fourth set of one or more criteria, the fifth set of one or more criteria, and the sixth set of one or more criteria; and Based on determining that the eighth group of one or more criteria are satisfied, the computer system moves from the first position to a fifth position, wherein the fifth position is different from the second position, wherein the eighth group of one or more criteria includes criteria that are satisfied when it is determined that the first user is a sixth type of user that is different from the fifth type of user, and wherein the eighth group of one or more criteria is different from the first group of one or more criteria, the second group of one or more criteria, the third group of one or more criteria, the fourth group of one or more criteria, the fifth group of one or more criteria, the sixth group of one or more criteria, and the seventh group of one or more criteria.

85. The method of any one of claims 78 to 84, wherein one or more of the first user and the second user is detected based on detecting an electronic device in the direction of the gesture.

86. The method of any one of claims 78 to 85, wherein: In response to detecting the third gesture: the second location being a first distance from the first location based on determining that a ninth set of one or more criteria is satisfied, wherein the ninth set of one or more criteria includes criteria that are satisfied when a corresponding type of electronic device is determined to be within a predetermined distance from the first user, and wherein the ninth set of one or more criteria is different from the first set of one or more criteria, the second set of one or more criteria, the third set of one or more criteria, the fourth set of one or more criteria, the fifth set of one or more criteria, the sixth set of one or more criteria, the seventh set of one or more criteria, and the eighth set of one or more criteria; and Based on determining that a tenth group of one or more standards are satisfied, the second location is a second distance from the first location, wherein the first distance from the first location is greater than the second distance from the second location, wherein the tenth group of one or more standards includes standards that are satisfied when it is determined that the electronic device of the corresponding type is not within a predetermined distance from the first user, and wherein the tenth group of one or more standards is different from the first group of one or more standards, the second group of one or more standards, the third group of one or more standards, the fourth group of one or more standards, the fifth group of one or more standards, the sixth group of one or more standards, the seventh group of one or more standards, the eighth group of one or more standards and the ninth group of one or more standards.

87. A method according to any one of claims 78 to 86, wherein the computer system is in communication with a wearable device, and wherein the gesture is detected by one or more sensors of the wearable device. A method according to any one of claims 20 to 29, wherein the computer system is in communication with a camera, and wherein the gesture is detected via the camera.

88. 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 that communicates with a display generation component and one or more input devices, the one or more programs comprising instructions for executing the method according to any one of claims 78 to 30.

89. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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 comprising instructions for executing the method according to any one of claims 78 to 30.

90. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: Components for performing a method according to any one of claims 78 to 30.

91. 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 one or more sensors, the one or more programs comprising instructions for performing a method according to any one of claims 78 to 30.

92. 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 and one or more sensors, the one or more programs comprising instructions for: detecting a gesture via the one or more sensors when the computer system is at a first location in a physical environment; and In response to detecting the gesture: causing a portion of the computer system to move from the first location to a second location within the physical environment based on a determination that a first set of one or more criteria is satisfied, wherein the second location is different than the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user is detected; and Based on determining that a second set of one or more criteria are satisfied, abandoning causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

93. A computer system configured to communicate with a display generation component and one or more sensors, the computer system comprising: 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: detecting a gesture via the one or more sensors when the computer system is at a first location in a physical environment; and In response to detecting the gesture: causing a portion of the computer system to move from the first location to a second location within the physical environment based on a determination that a first set of one or more criteria is satisfied, wherein the second location is different than the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that a first user is detected; and Based on determining that a second set of one or more criteria are satisfied, abandoning causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

94. A computer system configured to communicate with a display generation component and one or more input devices, the computer system comprising: When the computer system is at a first location in a physical environment, means for: detecting a gesture via the one or more sensors; as well as In response to detecting the gesture: Based on determining that a first set of one or more criteria are satisfied, a component for the following operations: causing a portion of the computer system to move from the first location to the second location within the physical environment; abandoning causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

95. 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 and one or more sensors, the one or more programs comprising instructions for: detecting a gesture via the one or more sensors when the computer system is at a first location in a physical environment; and In response to detecting the gesture: causing a portion of the computer system to move from the first location to a second location within the physical environment based on determining that a first set of one or more criteria are satisfied, wherein the second location is different from the first location, and wherein the first set of one or more criteria includes criteria that are satisfied when it is determined that the first user is detected; and Based on determining that a second set of one or more criteria are satisfied, abandoning causing the portion of the computer system to move from the first location to the second location, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that a second user is detected, wherein the second user is different from the first user, and wherein the second set of one or more criteria are different from the first set of one or more criteria.

96. A method comprising: At a computer system in communication with a display generation component and one or more sensor components: upon navigating to the destination, displaying, via the display generation component, a first user interface including a representation of the physical environment; When at the destination, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on a current state of the physical environment; receiving, via at least one of the one or more sensor components, a set of one or more user inputs, the set of one or more user inputs comprising a first input directed to the plurality of user interface objects; and While displaying the representation of the physical environment, and in response to receiving the set of one or more user inputs: Based on determining that the first input pointed to the first user interface object, displaying, via the display generation component, a path to the predefined location; and Based on determining that the first input was directed to the second user interface object, a path to the non-predefined location is displayed via the display generation component.

97. The method of claim 96, wherein: Based on determining that the first input was directed to the first user interface object, the path to the non-predefined location is displayed simultaneously with the representation of the physical environment and the representation of the computer system; and Based on determining that the first input was directed to the second user interface object, the path to the non-predefined location is displayed simultaneously with the representation of the physical environment and the representation of the computer system.

98. The method of claim 97, further comprising: prior to detecting the first input and while navigating to the destination, displaying, via the display generation component, a path to the destination that is not a path to the predefined location; as well as In response to detecting the first input and based on determining that the first input was directed to the first user interface object, replacing display of the path to the destination that is not a path to the predefined location with display of the path to the predefined location, wherein the path to the destination that is not a path to the predefined location has a first visual characteristic, and the path to the predefined location has a second visual characteristic different from the first visual characteristic.

99. The method of any one of claims 96 to 98, wherein: the path to the predefined location being a first path based on determining that a user of the device has a first preference; as well as Based on determining that a user of the device has a second preference different from the first preference, the path to the predefined location is a second path different from the first path.

100. The method of any one of claims 96 to 99, wherein: the path to the predefined location is a third path based on determining that a set of one or more devices at the destination are at a first location; as well as Based on determining that a set of one or more devices at the destination is at a second location different from the first location, the path to the predefined location is a fourth path different from the third path.

101. The method of any one of claims 96 to 100, further comprising: prior to detecting the first input and while navigating to the destination, displaying, via the display generation component, a path to the destination that is not a path to the non-predefined location; as well as In response to detecting the first input and based on determining that the first input was directed to the second user interface object, replacing display of the path to the destination that is not a path to the non-predefined location with display of the path to the non-predefined location, wherein the path to the destination that is not a path to the non-predefined location has a third visual characteristic, and the path to the non-predefined location has a fourth visual characteristic different from the third visual characteristic.

102. The method of claim 101, further comprising: displaying, via the display generation component, a third user interface object while displaying the path to the non-predefined location; while displaying the third user interface object, detecting an input directed to the third user interface object; as well as In response to detecting the input directed to the third user interface object, display of the path to the non-predefined location is replaced with display of the path to the destination that is not the path to the non-predefined location.

103. The method of any one of claims 96 to 102, wherein the current state of the physical environment is based on a sensor of the computer system.

104. The method of any one of claims 96 to 103, wherein the predefined location is selected from the group consisting of a plurality of predefined locations corresponding to the destination.

105. The method of any one of claims 96 to 104, further comprising: displaying, via the display generation component, a fourth user interface object while displaying the path to the predefined location; while displaying the fourth user interface object, detecting an input directed to the fourth user interface object; as well as In response to detecting the input directed to the fourth user interface object, ceasing to display the path to the predefined location.

106. The method of any one of claims 96 to 105, further comprising: while displaying the plurality of user interface objects, detecting a second input directed to the plurality of user interface objects, wherein the second input corresponds to an input of a different type than the first input; as well as In response to detecting the second input directed to the plurality of selectable user interface objects: Based on determining that the second input points to the first user interface object, displaying a second plurality of user interface objects, the second plurality of user interface objects comprising: a user interface object for a first predefined location, the user interface object, when selected, causing the computer system to display a path to the first predefined location; and A user interface object for a second predefined location, the user interface object, when selected, causes the computer system to display a path to a second predefined location different from the first predefined location.

107. 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 that communicates with a display generation component and one or more sensor components, the one or more programs comprising instructions for executing a method according to any one of claims 96 to 106.

108. A computer system configured to communicate with a display generation component and one or more sensor components, the computer system comprising: 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 comprising instructions for executing the method according to any one of claims 96 to 106.

109. A computer system configured to communicate with a display generation component and one or more sensor components, the computer system comprising: Components for performing a method according to any one of claims 96 to 106.

110. 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 one or more sensor components, the one or more programs comprising instructions for executing a method according to any one of claims 96 to 106.

111. 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 and one or more sensor components, the one or more programs comprising instructions for: upon navigating to the destination, displaying, via the display generation component, a first user interface including a representation of the physical environment; When at the destination, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on a current state of the physical environment; receiving, via at least one of the one or more sensor components, a set of one or more user inputs, the set of one or more user inputs comprising a first input directed to the plurality of user interface objects; and While displaying the representation of the physical environment, and in response to receiving the set of one or more user inputs: Based on determining that the first input was directed to the first user interface object, displaying, via the display generation component, a path to the predefined location; and Based on determining that the first input was directed to the second user interface object, a path to the non-predefined location is displayed via the display generation component.

112. A computer system configured to communicate with a display generation component and one or more sensor components, the computer system comprising: 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: upon navigating to the destination, displaying, via the display generation component, a first user interface including a representation of the physical environment; When at the destination, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on a current state of the physical environment; receiving, via at least one of the one or more sensor components, a set of one or more user inputs, the set of one or more user inputs comprising a first input directed to the plurality of user interface objects; and While displaying the representation of the physical environment, and in response to receiving the set of one or more user inputs: Based on determining that the first input pointed to the first user interface object, displaying, via the display generation component, a path to the predefined location; and Based on determining that the first input was directed to the second user interface object, a path to the non-predefined location is displayed via the display generation component.

113. A computer system configured to communicate with a display generation component and one or more sensor components, the computer system comprising: means for: displaying, via the display generation component, a first user interface including a representation of a physical environment while navigating to a destination; Means for: while at the destination, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on a current state of the physical environment; means for receiving, via at least one of the one or more sensor components, a set of one or more user inputs, the set of one or more user inputs comprising a first input directed to the plurality of user interface objects; and Means for: while displaying the representation of the physical environment and in response to receiving the set of one or more user inputs: Based on determining that the first input was directed to the first user interface object, displaying, via the display generation component, a path to the predefined location; and Based on determining that the first input was directed to the second user interface object, a path to the non-predefined location is displayed via the display generation component.

114. 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 and one or more sensor components, the one or more programs comprising instructions for: upon navigating to the destination, displaying, via the display generation component, a first user interface including a representation of the physical environment; When at the destination, displaying, via the display generation component, a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object for navigating to a predefined location of the destination; and a second user interface object for navigating to a non-predefined location, wherein the non-predefined location is determined based on a current state of the physical environment; receiving, via at least one of the one or more sensor components, a set of one or more user inputs, the set of one or more user inputs comprising a first input directed to the plurality of user interface objects; and While displaying the representation of the physical environment, and in response to receiving the set of one or more user inputs: Based on determining that the first input was directed to the first user interface object, displaying, via the display generation component, a path to the predefined location; and Based on determining that the first input was directed to the second user interface object, a path to the non-predefined location is displayed via the display generation component.

115. A method comprising: At a computer system in communication with a display generation component and one or more sensor components: upon navigating to a destination, displaying, via the display generation component, a representation of the physical environment; while displaying the representation, detecting, via at least one of the one or more sensor components, an input corresponding to the representation; as well as In response to detecting the input: Based on determining that a first set of one or more criteria are satisfied, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and Based on determining that a second set of one or more criteria are satisfied, the change in the lateral positioning within the navigation is abandoned, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that the first set of one or more criteria are not satisfied.

116. The method of claim 115, wherein: In response to detecting the input: the second predefined lateral area being in a second direction relative to the first predefined lateral area based on determining that the first set of one or more criteria are satisfied and based on determining that the input was moved in a first direction; as well as Based on determining that the first set of one or more criteria are satisfied and based on determining that the input moved in a third direction different from the second direction, the second predefined lateral area is in a fourth direction relative to the first predefined lateral area, wherein the first direction is different from the third direction, and wherein the second direction is different from the fourth direction.

117. A method according to any one of claims 115 to 116, prior to detecting the input, displaying a first portion of a route to a destination, the method comprising: In response to detecting the input and based on determining that the first set of one or more criteria are satisfied, replacing the first portion of the path with a portion of the path indicating the change in the lateral positioning within the navigation from the first predefined lateral area to the second predefined lateral area.

118. The method of any one of claims 115 to 117, wherein the first predefined lateral area and the second predefined lateral area are parallel.

119. The method according to any one of claims 115 to 118, further comprising: detecting a second input corresponding to the representation after changing the lateral positioning within the navigation from the first predefined lateral area to the second predefined lateral area; as well as In response to detecting the second input corresponding to the representation and based on determining that the first set of one or more criteria are satisfied, changing the lateral positioning within the navigation from the second predefined lateral area to a third predefined lateral area, wherein the second input is in the same direction as the input.

120. The method of any one of claims 115 to 119, further comprising: detecting a third input corresponding to the representation after changing the lateral positioning within the navigation from the first predefined lateral area to the second predefined lateral area; as well as In response to detecting the third input corresponding to the representation and based on determining that a third set of one or more criteria are satisfied, performing a navigation operation to navigate in a manner other than simply changing the lateral positioning, wherein the third input is in the same direction as the input.

121. The method of any one of claims 115 to 120, further comprising: after changing the lateral positioning within the navigation from the first predefined lateral area to the second predefined lateral area, detecting a fourth input corresponding to the representation, wherein the fourth input is in a direction different from the direction of the input; as well as In response to detecting the fourth input and based on determining that a fourth set of one or more criteria is satisfied, changing the lateral positioning within the navigation from the second predefined lateral area to the first predefined lateral area.

122. A method according to any one of claims 115 to 121, wherein the first set of criteria comprises criteria which are satisfied when at least one predefined lateral area is available in a corresponding direction of movement of the input.

123. 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 that communicates with a display generation component and one or more sensor components, the one or more programs comprising instructions for executing a method according to any one of claims 115 to 122.

124. A computer system configured to communicate with a display generation component and one or more sensor components, the computer system comprising: 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 comprising instructions for executing the method according to any one of claims 115 to 122.

125. A computer system configured to communicate with a display generation component and one or more sensor components, the computer system comprising: Components for performing the method according to any one of claims 115 to 122.

126. 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 one or more sensor components, the one or more programs comprising instructions for executing a method according to any one of claims 115 to 122.

127. 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 and one or more sensor components, the one or more programs comprising instructions for: upon navigating to a destination, displaying, via the display generation component, a representation of the physical environment; While displaying the representation, detecting, via at least one of the one or more sensor components, an input corresponding to the representation; and In response to detecting the input: Based on determining that a first set of one or more criteria are satisfied, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and Based on determining that a second set of one or more criteria are satisfied, the change in the lateral positioning within the navigation is abandoned, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that the first set of one or more criteria are not satisfied.

128. A computer system configured to communicate with a display generation component and one or more sensor components, the computer system comprising: 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: upon navigating to a destination, displaying, via the display generation component, a representation of the physical environment; while displaying the representation, detecting, via at least one of the one or more sensor components, an input corresponding to the representation; as well as In response to detecting the input: Based on determining that a first set of one or more criteria are satisfied, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and Based on determining that a second set of one or more criteria are satisfied, the change in the lateral positioning within the navigation is abandoned, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that the first set of one or more criteria are not satisfied.

129. A computer system configured to communicate with a display generation component and one or more sensor components, the computer system comprising: means for: displaying, via the display generation component, a representation of the physical environment while navigating to a destination; means for: while displaying the representation, detecting, via at least one of the one or more sensor components, an input corresponding to the representation; as well as In response to detecting the input, a component for: Based on determining that a first set of one or more criteria are satisfied, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and Based on determining that a second set of one or more criteria are satisfied, the change in the lateral positioning within the navigation is abandoned, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that the first set of one or more criteria are not satisfied.

130. 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 and one or more sensor components, the one or more programs comprising instructions for: upon navigating to a destination, displaying, via the display generation component, a representation of the physical environment; While displaying the representation, detecting, via at least one of the one or more sensor components, an input corresponding to the representation; and In response to detecting the input: Based on determining that a first set of one or more criteria are satisfied, changing the lateral positioning within the navigation from a first predefined lateral area to a second predefined lateral area; and Based on determining that a second set of one or more criteria are satisfied, the change in the lateral positioning within the navigation is abandoned, wherein the second set of one or more criteria includes criteria that are satisfied when it is determined that the first set of one or more criteria are not satisfied.

131. A method comprising: At a computer system in communication with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices: detecting a request to navigate to a destination comprising a plurality of locations; navigating to the destination in response to detecting the request; in conjunction with reaching the destination, navigating to a first location among the plurality of locations; in conjunction with navigating to the first location, automatically and without intervening user input, activating the first set of one or more devices without activating the second set of one or more devices; After navigating to the first location, navigating to a second location among the plurality of locations, wherein the second location is different from the first location; as well as In conjunction with navigating to the second location, automatically and without intervening user input, activating the second set of one or more devices without activating the first set of one or more devices.

132. The method of claim 131, wherein: Combine navigation to the first location: Based on determining that the first location corresponds to a first type of location, wherein the first type of location is a location for viewing information related to the destination: activating the first set of one or more devices comprises displaying, via a display generating component, the information associated with the destination, wherein the first set of one or more devices comprises the display generating component when the first location corresponds to the first type of location; as well as Based on determining that the first position does not correspond to the first type of position: Activating the first set of one or more devices does not include displaying information from the environment via the display generating component, wherein the first set of one or more devices does not include the display generating component when the first location does not correspond to the first type of location.

133. The method of any one of claims 131 to 132, wherein: Combine navigation to the first location: Based on determining that the first location corresponds to a second type of location, wherein the second type of location is a location for viewing information in an environment: activating the first set of one or more devices comprises initiating capture of an environment via one or more cameras, wherein the first set of one or more devices comprises the one or more cameras when the first location corresponds to the second type of location; as well as Based on determining that the first position does not correspond to the second type of position: Activating the first set of one or more devices does not include initiating capture of the environment via the one or more cameras, wherein the first set of one or more devices does not include the one or more cameras when the first location does not correspond to the second type of location.

134. The method of any one of claims 131 to 133, wherein: Combine navigation to the first location: Based on determining that the first position corresponds to a third type of position, wherein the third type of position is a position for outputting visual information to an area outside of a housing of the computer system: activating the first set of one or more devices comprises initiating a capture of an internal portion of the computer system via one or more cameras, wherein the first set of one or more devices comprises the one or more cameras when the first location corresponds to the third type of location; as well as Based on determining that the first position does not correspond to the third type of position: Activating the first set of one or more devices does not include initiating capture of the internal portion of the computer system via the one or more cameras, wherein the first set of one or more devices does not include the one or more cameras when the first position does not correspond to the third type of position.

135. The method of any one of claims 131 to 133, wherein: Combine navigation to the first location: According to determining that the first position corresponds to a fourth type of position, wherein the fourth type of position is a position for outputting audio information: activating the first set of one or more devices comprises outputting audio information via a corresponding speaker, wherein the first set of one or more devices comprises the corresponding speaker when the first location corresponds to the fourth type of location; and Based on determining that the first position does not correspond to the fourth type of position: Activating the first set of one or more devices does not include outputting audio information from the environment via the corresponding speaker, wherein the first set of one or more devices does not include the corresponding speaker when the first location does not correspond to the fourth type of location.

136. The method of claim 135, wherein the computer system is in communication with an external speaker and an internal speaker, and wherein: based on determining that the first location corresponds to the fourth type of location and based on the audio information being provided to the environment, the corresponding speaker is the external speaker; as well as Based on determining that the first position corresponds to the fourth type of position and based on the audio information being provided from the environment, the corresponding speaker is the internal speaker.

137. The method of any one of claims 131 to 136, further comprising: Combine navigation to the first location: According to determining that the first location corresponds to a fifth type of location, wherein the fifth type of location is a location for providing audio information to the environment: activating the first set of one or more devices includes capturing audio information from the computer system via a first microphone, wherein the first set of one or more devices includes the first microphone when the first location corresponds to the fifth type of location; as well as Based on determining that the first position does not correspond to the fifth type of position: Activating the first set of one or more devices does not include capturing audio information from the computer system via the first microphone, wherein the first set of one or more devices does not include the first microphone when the first location does not correspond to the fifth type of location.

138. The method of claim 137, wherein the computer system is in communication with an external microphone and an internal microphone, and wherein: based on determining that the first location corresponds to the fifth type of location and based on determining that the audio information should be provided to the environment, the first microphone is the internal microphone; as well as Based on determining that the first position corresponds to the fifth type of position and based on determining that the audio information should be provided from the environment, the first microphone is the external microphone.

139. The method of any one of claims 131 to 138, further comprising: Combine navigation to the first location: Based on determining that the first location corresponds to a sixth type of location, wherein the sixth type of location corresponds to a location for sending or receiving an object: activating the first set of one or more devices comprises causing a first portion of the computer system to move from the first position to a second position different from the first position via a first actuator, wherein the first set of one or more devices comprises the first actuator when the first position corresponds to the sixth type of position; as well as Based on determining that the first position does not correspond to the sixth type of position: Activating the first set of one or more devices does not include causing movement via the first actuator, wherein the first set of one or more devices does not include the first actuator when the first position does not correspond to the sixth type of position. After causing the first portion of the computer system to move from the first position to the second position and in conjunction with navigating away from the first position, causing the first portion to move back to the first position via the first actuator.

140. The method of any one of claims 139 to 10, wherein: Based on determining that the first position corresponds to the sixth type of position and based on determining that an object is to be received or sent from a first side of the computer system, the first actuator is an actuator on the first side of the computer system, and the first portion is on the first side of the computer system; as well as Based on determining that the first position corresponds to the sixth type of position and based on determining that an object will be received or sent from a second side of the computer system, the first actuator is an actuator on the second side of the computer system and the first part is on the second side of the computer system, wherein the first side is different from the second side.

141. The method of any one of claims 131 to 140, further comprising: deactivating the first set of one or more devices in conjunction with navigating away from the first location; as well as In conjunction with navigating away from the second location, the second set of one or more devices is deactivated.

142. 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 that communicates with a first group of one or more devices and a second group of one or more devices that are different from the first group of one or more devices, the one or more programs including instructions for executing a method according to any one of claims 131 to 141.

143. A computer system configured to communicate with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the computer system comprising: 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 comprising instructions for executing the method according to any one of claims 131 to 141.

144. A computer system configured to communicate with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the computer system comprising: Components for performing the method according to any one of claims 131 to 141.

145. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system that communicates with a first group of one or more devices and a second group of one or more devices different from the first group of one or more devices, the one or more programs comprising instructions for executing a method according to any one of claims 131 to 141.

146. 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 that communicates with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the one or more programs comprising instructions for: detecting a request to navigate to a destination comprising a plurality of locations; navigating to the destination in response to detecting the request; in conjunction with reaching the destination, navigating to a first location among the plurality of locations; in conjunction with navigating to the first location, automatically and without intervening user input, activating the first set of one or more devices without activating the second set of one or more devices; After navigating to the first location, navigating to a second location among the plurality of locations, wherein the second location is different from the first location; as well as In conjunction with navigating to the second location, automatically and without intervening user input, activating the second set of one or more devices without activating the first set of one or more devices.

147. A computer system configured to communicate with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the computer system comprising: 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: detecting a request to navigate to a destination comprising a plurality of locations; navigating to the destination in response to detecting the request; in conjunction with reaching the destination, navigating to a first location among the plurality of locations; in conjunction with navigating to the first location, automatically and without intervening user input, activating the first set of one or more devices without activating the second set of one or more devices; After navigating to the first location, navigating to a second location among the plurality of locations, wherein the second location is different from the first location; as well as In conjunction with navigating to the second location, automatically and without intervening user input, activating the second set of one or more devices without activating the first set of one or more devices.

148. A computer system configured to communicate with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the computer system comprising: Means for: detecting a request to navigate to a destination comprising a plurality of locations; means for: in response to detecting the request, navigating to the destination; means for: navigating to a first location among the plurality of locations in conjunction with reaching the destination; means for: in conjunction with navigating to the first location, automatically and without intervening user input, activating the first set of one or more devices without activating the second set of one or more devices; means for: after navigating to the first location, navigating to a second location of the plurality of locations, wherein the second location is different from the first location; and Means for automatically and without intervening user input activating the second set of one or more devices without activating the first set of one or more devices in conjunction with navigating to the second location.

149. 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 first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the one or more programs comprising instructions for: detecting a request to navigate to a destination comprising a plurality of locations; navigating to the destination in response to detecting the request; in conjunction with reaching the destination, navigating to a first location among the plurality of locations; in conjunction with navigating to the first location, automatically and without intervening user input, activating the first set of one or more devices without activating the second set of one or more devices; After navigating to the first location, navigating to a second location among the plurality of locations, wherein the second location is different from the first location; as well as In conjunction with navigating to the second location, automatically and without intervening user input, activating the second set of one or more devices without activating the first set of one or more devices.

150. A method comprising: At a computer system in communication with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; When navigating to the destination, a plurality of user interface objects are displayed, the plurality of user interface objects comprising: a first user interface object corresponding to a first predefined activity of the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity among the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity; receiving a set of one or more user inputs, the set of one or more user inputs comprising respective inputs directed to the plurality of user interface objects; and In response to receiving the set of one or more user inputs: Based on determining that the corresponding input pointed to the first user interface element: navigating to a first predefined location of the plurality of predefined locations, wherein the first predefined location corresponds to the first predefined activity; and in conjunction with being at the first predefined location, activating the first set of one or more devices; and Based on determining that the corresponding input pointed to the second user interface element: navigating to a second predefined location of the plurality of predefined locations, wherein the second predefined location corresponds to the second predefined activity, and wherein the second predefined location is different from the first predefined location; and In conjunction with being at the second predefined location, the second set of one or more devices is activated.

151. The method of claim 150, further comprising: In response to receiving the set of one or more user inputs: based on determining that the corresponding input was directed to the first user interface object, and in combination with being at the first predefined location, forgoing activating the second set of one or more devices; as well as Based on determining that the corresponding input was directed to the second user interface object, and in combination with being at the second predefined location, activating the first set of one or more devices is abandoned.

152. The method of any one of claims 150 to 151, wherein the computer system communicates with a third set of one or more devices that is different from the first set of one or more devices and the second set of one or more devices, the method comprising: In response to receiving the set of one or more user inputs: activating the third set of one or more devices based on determining that the corresponding input was directed to the first user interface object, in combination with being at the first predefined location; as well as Based on determining that the corresponding input was directed to the second user interface object, in combination with being at the second predefined location, the third set of one or more devices is activated.

153. The method of any one of claims 150 to 152, wherein the computer system communicates with a fourth set of one or more devices that is different from the first set of one or more devices and the second set of one or more devices, the method comprising: In response to receiving the set of one or more user inputs: based on determining that the corresponding input was directed to the first user interface object, combined with being at the first predefined location, abandoning activating the fourth set of one or more devices; as well as Based on determining that the corresponding input was directed to the second user interface object, and in combination with being at the second predefined location, activating the fourth group of one or more devices is abandoned.

154. The method of any one of claims 150 to 153, wherein the first set of one or more devices comprises a first device and a second device different from the first device, and wherein activating the first set of one or more devices comprises: during a first time period and in conjunction with being in the first predefined position, activating the first device without activating the second device; as well as After the first time period, during a second time period and in conjunction with being at the second predefined location, the first device is deactivated and the second device is activated.

155. The method of any one of claims 150 to 154, wherein: The combination is at the first predefined position: activating the first set of one or more devices, based on determining that the first predefined location corresponds to a first type of location, comprises displaying, via a second display generating component, information related to the environment, wherein the first set of one or more devices includes the second display generating component when the first predefined location corresponds to the first type of location; as well as Based on determining that the first predefined location does not correspond to the first type of location, activating the first group of one or more devices does not include displaying information from the environment via the second display generating component, wherein when the first predefined location does not correspond to the first type of location, the first group of one or more devices does not include the second display generating component.

156. A method according to claim 155, wherein the information related to the environment is a representation of the field of view of one or more cameras capturing the environment, and wherein when the information is displayed, the first group of one or more devices includes the one or more cameras.

157. The method of any one of claims 150 to 156, wherein: The combination is at the first predefined position: activating the first set of one or more devices comprises capturing data via a first sensor based on determining that the first predefined location corresponds to a second type of location, wherein the first set of one or more devices comprises the first sensor when the first predefined location corresponds to the second type of location; and Based on determining that the first predefined location does not correspond to the second type of location, activating the first group of one or more devices does not include capturing data via the first sensor, wherein when the first predefined location does not correspond to the second type of location, the first group of one or more devices does not include the first sensor.

158. The method of any one of claims 150 to 157, wherein: The combination is at the first predefined position: activating the first set of one or more devices comprises outputting data via a second sensor based on determining that the first predefined location corresponds to a third type of location, wherein the first set of one or more devices comprises the second sensor when the first predefined location corresponds to the third type of location; as well as Based on determining that the first predefined location does not correspond to the third type of location, activating the second group of one or more devices does not include outputting data via the second sensor, wherein when the first predefined location does not correspond to the third type of location, the first group of one or more devices does not include the second sensor.

159. The method of any one of claims 150 to 158, wherein: The combination is at the first predefined position: activating the first set of one or more devices comprises causing an actuator to move a portion of the computer system from a first position to a second position different from the first position based on determining that the first predefined position corresponds to a fourth type of position, wherein the first set of one or more devices comprises the actuator when the first predefined position corresponds to the fourth type of position; and Based on determining that the first predefined position does not correspond to the fourth type of position, activating the second group of one or more devices does not include causing the actuator to move the portion of the computer system from the first position to the second position, wherein when the first predefined position does not correspond to the fourth type of position, the first group of one or more devices does not include the actuator.

160. The method of any one of claims 150 to 159, further comprising: In response to receiving the set of one or more user inputs: displaying, via the display generation component, a representation of the first predefined location in response to determining that the corresponding input was directed to the first user interface object; as well as Based on determining that the corresponding input was directed to the second user interface object, displaying, via the display generation component, a representation of the second predefined location.

161. The method of any one of claims 150 to 160, further comprising: While at the first predefined location, a third user interface object is displayed via the display generation component, the third user interface object, when activated, causing the computer system to navigate away from the first predefined location.

162. The method of claim 161, further comprising: while at the first predefined position and while the third user interface object is displayed, detecting an input directed to the third user interface object; as well as In response to detecting the input directed to the third user interface object, the first set of one or more devices is deactivated.

163. The method of any one of claims 150 to 162, further comprising: When at the first predefined position: Based on determining that the second predetermined location is a remaining location of the destination, displaying, via the display generation component, the second user interface object; and Based on determining that the second predefined location is not a remaining location of the destination, displaying the second user interface object is abandoned.

164. 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 that communicates with a first group of one or more devices and a second group of one or more devices that are different from the first group of one or more devices, the one or more programs comprising instructions for executing a method according to any one of claims 150 to 163.

165. A computer system configured to communicate with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the computer system comprising: 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 comprising instructions for executing the method according to any one of claims 150 to 163.

166. A computer system configured to communicate with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the computer system comprising: Components for performing a method according to any one of claims 150 to 163.

167. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system that communicates with a first group of one or more devices and a second group of one or more devices different from the first group of one or more devices, the one or more programs comprising instructions for executing a method according to any one of claims 150 to 163.

168. 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 that communicates with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the one or more programs comprising instructions for: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; When navigating to the destination, a plurality of user interface objects are displayed, the plurality of user interface objects comprising: a first user interface object corresponding to a first predefined activity of the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity among the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity; receiving a set of one or more user inputs, the set of one or more user inputs comprising respective inputs directed to the plurality of user interface objects; and In response to receiving the set of one or more user inputs: Based on determining that the corresponding input pointed to the first user interface element: navigating to a first predefined location of the plurality of predefined locations, wherein the first predefined location corresponds to the first predefined activity; and in conjunction with being at the first predefined location, activating the first set of one or more devices; and Based on determining that the corresponding input pointed to the second user interface element: navigating to a second predefined location of the plurality of predefined locations, wherein the second predefined location corresponds to the second predefined activity, and wherein the second predefined location is different from the first predefined location; and In conjunction with being at the second predefined location, the second set of one or more devices is activated.

169. A computer system configured to communicate with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the computer system comprising: 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: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; When navigating to the destination, a plurality of user interface objects are displayed, the plurality of user interface objects comprising: a first user interface object corresponding to a first predefined activity of the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity among the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity; receiving a set of one or more user inputs, the set of one or more user inputs comprising respective inputs directed to the plurality of user interface objects; and In response to receiving the set of one or more user inputs: Based on determining that the corresponding input pointed to the first user interface element: navigating to a first predefined location of the plurality of predefined locations, wherein the first predefined location corresponds to the first predefined activity; and in conjunction with being at the first predefined location, activating the first set of one or more devices; and Based on determining that the corresponding input pointed to the second user interface element: navigating to a second predefined location of the plurality of predefined locations, wherein the second predefined location corresponds to the second predefined activity, and wherein the second predefined location is different from the first predefined location; and In conjunction with being at the second predefined location, the second set of one or more devices is activated.

170. A computer system configured to communicate with a first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the computer system comprising: A component for: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; A component for the following operation: when navigating to the destination, displaying a plurality of user interface objects, the plurality of user interface objects comprising: a first user interface object corresponding to a first predefined activity of the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity among the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity; Means for: receiving a set of one or more user inputs, the set of one or more user inputs comprising respective inputs directed to the plurality of user interface objects; and In response to receiving the set of one or more user inputs: Based on determining that the corresponding input pointed to the first user interface element: means for: navigating to a first predefined location of the plurality of predefined locations, wherein the first predefined location corresponds to the first predefined activity; and means for: activating the first set of one or more devices in conjunction with being at the first predefined location; and Based on determining that the corresponding input pointed to the second user interface element: means for: navigating to a second predefined location of the plurality of predefined locations, wherein the second predefined location corresponds to the second predefined activity, and wherein the second predefined location is different from the first predefined location; and Means for: activating the second set of one or more devices in conjunction with being in the second predefined location.

171. 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 first set of one or more devices and a second set of one or more devices different from the first set of one or more devices, the one or more programs comprising instructions for: navigating to a destination, wherein the destination includes a plurality of predefined activities and a plurality of predefined locations; When navigating to the destination, a plurality of user interface objects are displayed, the plurality of user interface objects comprising: a first user interface object corresponding to a first predefined activity of the plurality of predefined activities; and a second user interface object corresponding to a second predefined activity among the plurality of predefined activities, wherein the second user interface object is different from the first user interface object, and wherein the second predefined activity is different from the first predefined activity; receiving a set of one or more user inputs, the set of one or more user inputs comprising respective inputs directed to the plurality of user interface objects; and In response to receiving the set of one or more user inputs: Based on determining that the corresponding input pointed to the first user interface element: navigating to a first predefined location of the plurality of predefined locations, wherein the first predefined location corresponds to the first predefined activity; and in conjunction with being at the first predefined location, activating the first set of one or more devices; and Based on determining that the corresponding input pointed to the second user interface element: navigating to a second predefined location of the plurality of predefined locations, wherein the second predefined location corresponds to the second predefined activity, and wherein the second predefined location is different from the first predefined location; and In conjunction with being at the second predefined location, the second set of one or more devices is activated.

Citation Information

Patent Citations

  • Method and apparatus for integrating manual input

    US20020015024A1

  • Gestures for touch sensitive input devices

    US20060026521A1

  • Gestures for touch sensitive input devices

    US20060026536A1

  • Virtual input device placement on a touch screen user interface

    US20060033724A1

  • Multipoint touchscreen

    US20060097991A1