DEVICE, METHOD, AND GRAPHICAL USER INTERFACE FOR ACCESSING SYSTEM FUNCTIONALITY OF A COMPUTER SYSTEM WHILE DISPLAYING A THREE-DIMENSIONAL ENVIRONMENT - Patent application

The computer system addresses inefficiencies in virtual and augmented reality interactions by using gaze and hand-tracking to conditionally display user interface elements, improving efficiency and reducing power consumption.

JP7825727B2Active Publication Date: 2026-03-06APPLE INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024547770
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2023-02-15
Filing Date
2023-02-16
Publication Date
2026-03-06
Estimated Expiration
2043-02-16

AI Technical Summary

Technical Problem

Existing methods for interacting with virtual and augmented reality environments are cumbersome, inefficient, and complex, requiring multiple inputs and leading to cognitive burden and energy wastage, particularly in battery-operated devices.

Method used

A computer system that utilizes gaze and hand-tracking inputs to conditionally display user interface objects and affordances within a three-dimensional environment, reducing the number and type of user inputs by providing intuitive feedback based on attention and timing criteria.

Benefits of technology

Enhances user interaction efficiency, reduces cognitive load, and conserves power by minimizing unnecessary inputs and visual clutter, allowing quicker and more relevant system responses.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007825727000001
    Figure 0007825727000001
  • Figure 0007825727000002
    Figure 0007825727000002
  • Figure 0007825727000003
    Figure 0007825727000003
Patent Text Reader

Abstract

The computer system displays a first user interface object at a first position within the three-dimensional environment having a first spatial arrangement relative to a distinct portion of the user. While displaying the first user interface object, the computer system detects an input corresponding to a movement of the user's viewpoint and, in response, maintains the display of the first user interface object at the distinct position within the three-dimensional environment having the first spatial arrangement relative to the distinct portion of the user. While displaying the first user interface object, the computer system detects a first gaze input directed at the first user interface object and, in response, displays a plurality of affordances for accessing system functionality of the computer system according to a determination that the first gaze input satisfies an attention criterion for the first user interface object.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] (Related Applications) This application is a continuation of U.S. Provisional Patent Application No. 18 / 110,323, filed February 15, 2023, which claims priority to U.S. Provisional Patent Application No. 63 / 445,698, filed February 14, 2023, U.S. Provisional Patent Application No. 63 / 409,594, filed September 23, 2022, and U.S. Provisional Patent Application No. 63 / 310,970, filed February 16, 2022, each of which is incorporated by reference herein in its entirety.

[0002] The present disclosure generally relates to computer systems in communication with display generation components, including but not limited to electronic devices that provide virtual reality and mixed reality experiences via displays, and optionally one or more input devices that provide computer-generated experiences. [Background technology]

[0003] The development of computer systems for augmented reality has progressed significantly in recent years. Exemplary extended reality environments include at least some virtual elements that replace or augment the physical world. Input devices such as cameras, controllers, joysticks, touch-sensitive surfaces, and touchscreen displays for computer systems and other electronic computing devices are used to interact with the virtual / extended reality environment. Exemplary virtual elements include virtual objects such as digital images, video, text, icons, and control elements such as buttons and other graphics. Summary of the Invention

[0004] Some methods and interfaces for interacting with environments that include at least some virtual elements (e.g., applications, augmented reality environments, mixed reality environments, and virtual reality environments) are cumbersome, inefficient, and limited. For example, systems that provide insufficient feedback for performing actions associated with virtual objects, systems that require a series of inputs to achieve a desired result in an augmented reality environment, and systems in which manipulating virtual objects is complex and error-prone create a significant cognitive burden for users and detract from the experience of the virtual / augmented reality environment. In addition, these methods are unnecessarily time-consuming, thereby wasting computer system energy. This latter consideration is particularly important in battery-operated devices.

[0005] Therefore, there is a need for a computer system having improved methods and interfaces for providing users with computer-generated experiences that make interaction with the computer system more efficient and intuitive for the user. Such methods and interfaces can optionally complement or replace conventional methods of providing users with extended reality experiences. Such methods and interfaces reduce the number, extent, and / or type of inputs from the user by helping the user understand the connection between the input provided and the device response to that input, thereby creating a more efficient human-machine interface.

[0006] The above-mentioned drawbacks and other problems associated with user interfaces of computer systems are reduced or eliminated by the disclosed system. In some embodiments, the computer system is a desktop computer with an associated display. In some embodiments, the computer system is a portable device (e.g., a notebook computer, a tablet computer, or a handheld device). In some embodiments, the computer system is a personal electronic device (e.g., a wearable electronic device such as a wristwatch or a head-mounted device). In some embodiments, the computer system has a touchpad. In some embodiments, the computer system has one or more cameras. In some embodiments, the computer system has a touch-sensitive display (also known as a "touch screen" or "touchscreen display"). In some embodiments, the computer system has one or more eye-tracking components. In some embodiments, the computer system has one or more hand-tracking components. In some embodiments, the computer system has one or more output devices in addition to the display generating components, the output devices including one or more tactile output generators and / or one or more audio output devices. In some embodiments, the computer system has a graphical user interface (GUI), one or more processors, memory, and one or more modules, programs, or instruction sets stored in the memory for performing a plurality of functions. In some embodiments, a user interacts with the GUI through stylus and / or finger contacts and gestures on the touch-sensitive surface, the movement of the user's eyes and hands in space relative to the GUI (and / or computer system) or the user's body as captured by cameras and other movement sensors, and voice input as captured by one or more audio input devices.In some embodiments, the functions performed through the interactions optionally include image editing, drawing, presenting, word processing, creating spreadsheets, playing games, making phone calls, video conferencing, emailing, instant messaging, training support, digital photography, digital videography, web browsing, playing digital music, note taking, and / or playing digital videos, and executable instructions to perform those functions are optionally contained in a transient and / or non-transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors.

[0007] There is a need for electronic devices with improved methods and interfaces for interacting with computer systems displaying one or more portions of a three-dimensional environment. Such methods and interfaces can complement or replace conventional methods for interacting with computer systems displaying one or more portions of a three-dimensional environment. Such methods and interfaces reduce the number, extent, and / or type of inputs from a user, creating a more efficient human-machine interface. In the case of battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges.

[0008] In some embodiments, the computer system, via a first display generation component, displays a first user interface object while a first view of the three-dimensional environment is visible, the first user interface object being displayed at a first position within the three-dimensional environment, the first position within the three-dimensional environment having a first spatial arrangement relative to a distinct portion of a user. While displaying the first user interface object within the first view of the three-dimensional environment, the computer system detects, via one or more input devices, an input corresponding to a movement of the user's viewpoint from a first perspective to a second perspective within the three-dimensional environment. In response to detecting the input corresponding to a movement of the user's viewpoint from the first perspective to the second perspective within the three-dimensional environment, the computer system maintains the display of the first user interface object at a distinct position within the three-dimensional environment having the first spatial arrangement relative to a distinct portion of the user while the second view of the three-dimensional environment is visible. While a second view of the three-dimensional environment is visible and the computer system is displaying a first user interface object within the second view of the three-dimensional environment, the computer system detects, via one or more input devices, a first gaze input directed toward the first user interface object. In response to detecting the first gaze input directed toward the first user interface object, and in accordance with a determination that the first gaze input satisfies an attention criterion for the first user interface object, the computer system displays a plurality of affordances for accessing system functionality of the first computer system.

[0009] In some embodiments, the computer system displays, via a first display generation component, a first user interface object while a first view of the three-dimensional environment is visible, the first user interface object being displayed at a first position within the three-dimensional environment, the first position within the three-dimensional environment having a first spatial arrangement relative to a distinct portion of a user. While displaying the first user interface object within the first view of the three-dimensional environment, the computer system detects, via one or more input devices, a first gaze input directed toward the first user interface object. In response to detecting the first gaze input directed toward the first user interface object, in accordance with a determination that a first event related to the first notification satisfies a timing criterion, the computer system displays content associated with the first notification, and in accordance with a determination that the first event related to the first notification does not satisfy the timing criterion, the computer system displays a plurality of affordances for performing a system operation associated with the first computer system without displaying the content associated with the first notification.

[0010] In some embodiments, the computer system displays, via a first display generating component, a first user interface object while a first view of the three-dimensional environment is visible, the first user interface object being displayed at a first position within the three-dimensional environment, the first position within the three-dimensional environment having a first spatial arrangement relative to a distinct portion of a user. While displaying the first user interface object within the first view of the three-dimensional environment, the computer system detects, via one or more input devices, a first gaze input directed toward the first user interface object. In response to detecting the first gaze input directed toward the first user interface object, in accordance with a determination that a request exists for the first computer system to join a first communication session that satisfies a timing criterion, the computer system displays a first user interface including an affordance for joining the first communication session, and in accordance with a determination that a request does not exist for joining a communication session that satisfies the timing criterion, the computer system displays a plurality of affordances for performing a system operation associated with the first computer system without displaying an affordance for joining the communication session.

[0011] In some embodiments, the computer system displays, via a first display generation component, a first view of the three-dimensional environment corresponding to a first viewpoint of a user. The first view of the three-dimensional environment includes a first user interface element displayed at a first position within the three-dimensional environment, the first user interface element having a first spatial relationship with the first viewpoint of the user while the first user interface element is displayed at the first position within the three-dimensional environment, and the first user interface element includes at least a first affordance. While displaying the first view of the three-dimensional environment, including displaying the first user interface element at the first position within the three-dimensional environment, the computer system detects a first movement of the user's viewpoint from the first viewpoint to a second viewpoint. In response to detecting a first movement of the user's viewpoint from the first viewpoint to the second viewpoint, the computer system displays a first user interface element at a second position within the three-dimensional environment while a second view of the three-dimensional environment corresponding to the user's second viewpoint is visible via one or more display generation components, the first user interface element having a first spatial relationship with the user's second viewpoint while the first user interface element is displayed at the second position within the three-dimensional environment. While displaying the first user interface element within the second view of the three-dimensional environment, the computer system detects, via one or more input devices, a first input corresponding to activation of the first affordance. In response to detecting the first input corresponding to activation of the first affordance, the computer system displays a second user interface element within the second view of the three-dimensional environment, the second user interface element being displayed at a third position within the three-dimensional environment. While displaying a second view of the three-dimensional environment, which includes displaying a second user interface element at a third position within the three-dimensional environment, the computer system detects a second movement of the user's viewpoint from the second viewpoint to a third viewpoint.In response to detecting a second movement of the user's viewpoint from the second viewpoint to a third viewpoint, while a third view of the three-dimensional environment corresponding to the user's third viewpoint is visible via one or more display generation components, the computer system displays a second user interface element at a location within the third view of the three-dimensional environment corresponding to a third position within the three-dimensional environment.

[0012] In some embodiments, while a first view of the three-dimensional environment is visible via the first display generating component, the computer system detects a first user input, including detecting a first gaze input directed toward a first position within the three-dimensional environment via one or more input devices. In response to detecting a first user input, including detecting a first gaze input, in accordance with a determination that the first position within the three-dimensional environment is a viewport through which the three-dimensional environment is visible and has a first spatial relationship to the viewport, the computer system displays a first user interface object within the first view of the three-dimensional environment, the first user interface object including one or more affordances for accessing a first set of functionality of the first computer system, the first user interface object being displayed at a second position within the three-dimensional environment having a second spatial relationship to the viewport through which the three-dimensional environment is visible that is different from the first spatial relationship; and in accordance with a determination that the first position within the three-dimensional environment is a viewport through which the three-dimensional environment is visible and does not have the first spatial relationship to the viewport, the computer system ceases displaying the first user interface object within the first view of the three-dimensional environment.

[0013] In some embodiments, while a first view of the three-dimensional environment is visible via a first display generating component, the computer system detects, via one or more input devices, that a user of the computer system's attention is directed to a first portion of the first view of the three-dimensional environment. In response to detecting that the user's attention is directed to a first portion of the first view of the three-dimensional environment, in accordance with a determination that the first portion of the first view of the three-dimensional environment is a viewport and has a first spatial relationship to the viewport through which the three-dimensional environment is visible, while a first set of one or more contextual conditions are satisfied when the user's attention is directed to the first portion of the first view of the three-dimensional environment, the computer system displays a first set of one or more user interface objects corresponding to the first set of one or more contextual conditions; and in accordance with a determination that the first portion of the first view of the three-dimensional environment is a viewport and has a first spatial relationship to the viewport through which the three-dimensional environment is visible, while a second set of one or more contextual conditions different from the first set of one or more contextual conditions are satisfied when the user's attention is directed to the first portion of the first view of the three-dimensional environment, the computer system displays a second set of one or more user interface objects corresponding to the second set of one or more contextual conditions, the second set of one or more user interface objects being different from the first set of one or more user interface objects.

[0014] In some embodiments, while a first view of the environment is visible via one or more display generating components, the computer system detects an occurrence of a first event, and in response to detecting the occurrence of the first event, the computer system displays, via the first display generating component, a first indication of a first notification corresponding to the first event. After displaying a first indication of a first notification corresponding to a first event via the first display generation component, in accordance with a determination that a user of the computer system's attention is directed to the first indication within a first threshold amount of time and then moves away from the first indication before a first criterion is met, the computer system maintains the display of the first indication for a first duration and ceases displaying the first indication after expiration of the first duration, and in accordance with a determination that the user of the computer system's attention is not directed to the first indication within the first threshold amount of time, the computer system maintains the display of the first indication for a second duration, the second duration being different from the first duration, and ceases displaying the first indication after expiration of the second duration.

[0015] In some embodiments, while a separate view of a three-dimensional environment including one or more physical objects is visible via a first display generation component, the computer system detects a first input corresponding to a request to display one or more notifications within the separate view of the three-dimensional environment. In response to detecting the first input, the computer system displays a separate notification at a separate location within the three-dimensional environment corresponding to a previously detected event. In response to determining that a representation of the physical environment at the separate location where the separate notification is displayed has a first set of values ​​for a first visual characteristic, the computer system displays the separate notification with a first visual appearance based at least in part on the first set of values ​​for the first visual characteristic of the representation of the physical environment at the separate location, and in response to determining that the representation of the physical environment at the separate location where the separate notification is displayed has a second set of values ​​for the first visual characteristic that is different from the first set of values, the computer system displays the separate notification with a second visual appearance that is different from the first visual appearance based at least in part on the second set of values ​​for the first visual characteristic of the representation of the physical environment at the separate location.

[0016] In some embodiments, the computer system displays, via a first display generation component, a first user interface object within a first view of the three-dimensional environment corresponding to a first viewpoint of the user, the first user interface object being displayed at a first position within the three-dimensional environment and having a first spatial relationship to the first viewpoint of the user. While displaying the first user interface object within the first view of the three-dimensional environment, the computer system performs, via one or more input devices, a first movement of the user's current viewpoint from the first viewpoint to a second viewpoint of the user. In response to detecting a first movement of the user's current viewpoint from the first viewpoint to the second viewpoint, the computer system replaces the display of the first view of the three-dimensional environment with a display of a second view of the three-dimensional environment corresponding to the user's second viewpoint; displays a first user interface object in the second view of the three-dimensional environment in accordance with a determination that the first movement of the user's current viewpoint from the first viewpoint to the second viewpoint does not satisfy a first criterion and that the first user interface object is of a first type, the first user interface object being displayed at a second position within the three-dimensional environment that is different from the first position and having a first spatial relationship with the user's second viewpoint; and ceases displaying the first user interface object at the second position within the three-dimensional environment in the second view of the three-dimensional environment in accordance with a determination that the first movement of the user's current viewpoint from the first viewpoint to the second viewpoint does not satisfy the first criterion and that the first user interface object is of a second type that is different from the first type. The computer system detects, via the one or more input devices, a second movement of the user's current viewpoint from the user's second viewpoint to a third viewpoint.In response to detecting a second movement of the user's current viewpoint from the second viewpoint to a third viewpoint, the computer system replaces the display of the second view of the three-dimensional environment with a display of a third view of the three-dimensional environment corresponding to the user's third viewpoint, and in accordance with a determination that the second movement of the user's current viewpoint from the second viewpoint to the third viewpoint satisfies a first criterion, displays within the third view of the three-dimensional environment a first user interface object, regardless of whether the first user interface object is of the first type or the second type, the first user interface object being displayed at a third position different from the first position and the second position within the three-dimensional environment and having a first spatial relationship with the user's third viewpoint.

[0017] It should be noted that the various embodiments described above can be combined with any other embodiment described herein. The features and advantages described herein are not exhaustive, and many additional features and advantages will become apparent to those skilled in the art, particularly in light of the drawings, specification, and claims. Furthermore, it should be noted that the language used in this specification has been selected solely for the purposes of readability and explanation, and not to define or limit the subject matter of the present invention. [Brief explanation of the drawings]

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

[0019] [Figure 1] FIG. 1 is a block diagram illustrating an operating environment for a computer system for providing an XR experience, according to some embodiments.

[0020] [Figure 2]FIG. 1 is a block diagram illustrating a controller of a computer system configured to manage and coordinate a user's XR experience, according to some embodiments.

[0021] [Figure 3] FIG. 1 is a block diagram illustrating display generation components of a computer system configured to provide a user with visual components of an XR experience, according to some embodiments.

[0022] [Figure 4] FIG. 1 is a block diagram illustrating a hand tracking unit of a computer system configured to capture a user's gesture input, according to some embodiments.

[0023] [Figure 5] FIG. 1 is a block diagram illustrating an eye-tracking unit of a computer system configured to capture a user's gaze input, according to some embodiments.

[0024] [Figure 6] FIG. 1 is a flow diagram illustrating a glint-assisted gaze tracking pipeline, according to some embodiments.

[0025] [Figure 7A] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7B] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7C] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7D]1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7E] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7F] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7G] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7H] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7I] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7J] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments. [Figure 7K] 1 illustrates an exemplary technique for displaying multiple affordances for accessing system functionality of a computer system, according to some embodiments.

[0026] [Figure 7L] 1 illustrates an example technique for displaying content associated with a first notification, according to some embodiments. [Figure 7M] 1 illustrates an example technique for displaying content associated with a first notification, according to some embodiments. [Figure 7N] 1 illustrates an example technique for displaying content associated with a first notification, according to some embodiments. [Figure 7O] 1 illustrates an example technique for displaying content associated with a first notification, according to some embodiments. [Figure 7P] 1 illustrates an example technique for displaying content associated with a first notification, according to some embodiments. [Figure 7Q] 1 illustrates an example technique for displaying content associated with a first notification, according to some embodiments.

[0027] [Figure 7R] 1 illustrates an example technique for displaying a first user interface including affordances for joining a communication session, according to some embodiments. [Figure 7S] 1 illustrates an example technique for displaying a first user interface including affordances for joining a communication session, according to some embodiments. [Figure 7T] 1 illustrates an example technique for displaying a first user interface including affordances for joining a communication session, according to some embodiments. [Figure 7U] 1 illustrates an example technique for displaying a first user interface including affordances for joining a communication session, according to some embodiments. [Figure 7V] 1 illustrates an example technique for displaying a first user interface including affordances for joining a communication session, according to some embodiments. [Figure 7W] 1 illustrates an example technique for displaying a first user interface including affordances for joining a communication session, according to some embodiments. [Figure 7X] 1 illustrates an example technique for displaying a first user interface including affordances for joining a communication session, according to some embodiments.

[0028] [Figure 7Y]1 illustrates an exemplary technique for initiating the display of an environment-locked user interface from a head-locked user interface, according to some embodiments. [Figure 7Z] 1 illustrates an exemplary technique for initiating the display of an environment-locked user interface from a head-locked user interface, according to some embodiments. [Figure 7AA] 1 illustrates an exemplary technique for initiating the display of an environment-locked user interface from a head-locked user interface, according to some embodiments. [Figure 7AB] 1 illustrates an exemplary technique for initiating the display of an environment-locked user interface from a head-locked user interface, according to some embodiments. [Figure 7AC] 1 illustrates an exemplary technique for initiating the display of an environment-locked user interface from a head-locked user interface, according to some embodiments. [Figure 7AD] 1 illustrates an exemplary technique for initiating the display of an environment-locked user interface from a head-locked user interface, according to some embodiments. [Figure 7AE] 1 illustrates an exemplary technique for initiating the display of an environment-locked user interface from a head-locked user interface, according to some embodiments. [Figure 7AF] 1 illustrates an exemplary technique for initiating the display of an environment-locked user interface from a head-locked user interface, according to some embodiments.

[0029] [Figure 7AG] 1 illustrates an exemplary area for triggering the display of one or more user interface elements, according to some embodiments. [Figure 7AH] 1 illustrates an exemplary area for triggering the display of one or more user interface elements, according to some embodiments. [Figure 7AI]1 illustrates an exemplary area for triggering the display of one or more user interface elements, according to some embodiments. [Figure 7AJ] 1 illustrates an exemplary area for triggering the display of one or more user interface elements, according to some embodiments. [Figure 7AK] 1 illustrates an exemplary area for triggering the display of one or more user interface elements, according to some embodiments. [Figure 7AL] 1 illustrates an exemplary area for triggering the display of one or more user interface elements, according to some embodiments. [Figure 7AM] 1 illustrates an exemplary area for triggering the display of one or more user interface elements, according to some embodiments.

[0030] [Figure 7AN] 10A-10C illustrate exemplary contextual user interfaces that are displayed when different contextual criteria are met, according to some embodiments. [Figure 7AO] 10A-10C illustrate exemplary contextual user interfaces that are displayed when different contextual criteria are met, according to some embodiments. [Figure 7AP] 10A-10C illustrate exemplary contextual user interfaces that are displayed when different contextual criteria are met, according to some embodiments. [Figure 7AQ] 10A-10C illustrate exemplary contextual user interfaces that are displayed when different contextual criteria are met, according to some embodiments. [Figure 7AR] 10A-10C illustrate exemplary contextual user interfaces that are displayed when different contextual criteria are met, according to some embodiments. [Figure 7AS] 10A-10C illustrate exemplary contextual user interfaces that are displayed when different contextual criteria are met, according to some embodiments. [Figure 7AT]10A-10C illustrate exemplary contextual user interfaces that are displayed when different contextual criteria are met, according to some embodiments.

[0031] [Figure 7AU] 1 illustrates an example method for clearing an indication of a notification, according to some embodiments. [Figure 7AV] 1 illustrates an example method for clearing an indication of a notification, according to some embodiments. [Figure 7AW] 1 illustrates an example method for clearing an indication of a notification, according to some embodiments. [Figure 7AX] 1 illustrates an example method for clearing an indication of a notification, according to some embodiments. [Figure 7AY] 1 illustrates an example method for clearing an indication of a notification, according to some embodiments. [Figure 7AZ] 1 illustrates an example method for clearing an indication of a notification, according to some embodiments.

[0032] [Figure 7BA] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments. [Figure 7BB] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments. [Figure 7BC] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments. [Figure 7BD] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments. [Figure 7BE] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments. [Figure 7BF] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments. [Figure 7BG] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments. [Figure 7BH] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments. [Figure 7BI] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments. [Figure 7BJ] 1 illustrates an exemplary method for displaying and interacting with previously received notifications, according to some embodiments.

[0033] [Figure 7BK] 1 illustrates an exemplary method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments. [Figure 7BL] 1 illustrates an exemplary method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments. [Figure 7BM] 1 illustrates an exemplary method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments. [Figure 7BN] 1 illustrates an exemplary method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments. [Figure 7BO] 1 illustrates an exemplary method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments. [Figure 7BP] 1 illustrates an exemplary method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments. [Figure 7BQ]1 illustrates an exemplary method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments. [Figure 7BR] 1 illustrates an exemplary method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments.

[0034] [Figure 8] FIG. 1 is a flow diagram of a method for displaying multiple affordances for accessing system functionality of a computer system, according to various embodiments.

[0035] [Figure 9] FIG. 1 is a flow diagram of a method for displaying content associated with a first notification, according to various embodiments.

[0036] [Figure 10] FIG. 1 is a flow diagram of a method for displaying a first user interface including affordances for joining a communication session, according to various embodiments.

[0037] [Figure 11A] FIG. 10 is a flow diagram of a method for initiating the display of an environment-locked user interface from a head-locked user interface, according to various embodiments. [Figure 11B] FIG. 10 is a flow diagram of a method for initiating the display of an environment-locked user interface from a head-locked user interface, according to various embodiments.

[0038] [Figure 12] FIG. 1 is a flow diagram of a method for initiating the display of a user interface in response to detecting that a user's attention is directed to a distinct region of a three-dimensional environment, according to various embodiments.

[0039] [Figure 13]FIG. 1 is a flow diagram of a method for displaying and interacting with a contextual user interface, according to some embodiments.

[0040] [Figure 14] FIG. 1 is a flow diagram of a method for clearing an indication of a notification, according to various embodiments.

[0041] [Figure 15] FIG. 1 is a flow diagram of a method for displaying and interacting with previously received notifications in a notification history user interface, according to various embodiments.

[0042] [Figure 16A] FIG. 2 is a flow diagram of a method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments. [Figure 16B] FIG. 2 is a flow diagram of a method for moving, hiding, and redisplaying user interface objects according to movement of a user's viewpoint, according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION

[0043] The present disclosure relates to a user interface that provides an extended reality (XR) experience to a user, according to some embodiments.

[0044] The systems, methods, and GUIs described herein improve user interface interaction with virtual / augmented reality environments in several ways.

[0045] In some embodiments, the computer system displays multiple affordances for executing system functions of the computer system (e.g., system settings such as audio volume, a focused notification user interface, a search function, a virtual assistant, etc.) in response to a user directing gaze input toward a first user interface object (e.g., a system control indicator) and if the gaze input meets (e.g., is maintained long enough) an attention criterion for the first user interface object. Conditionally displaying a set of affordances for accessing system functions of the computer system based on whether the user is paying sufficient attention to the first user interface object used to trigger the display of the multiple affordances reduces the number of inputs required to access system functions (e.g., provide shortcuts) without cluttering the three-dimensional environment with visual controls (e.g., by displaying a single, less intrusive element that provides the user with visual feedback about where to look to present the multiple affordances, without sequentially displaying the multiple affordances).

[0046] In some embodiments, if the event for the notification meets the timing criteria (e.g., occurred recently within a threshold amount of time), the computer system displays content associated with the notification in response to gaze input directed at the first user interface object. If the event for the notification does not meet the timing criteria, the computer system displays multiple affordances for accessing system functionality in response to gaze input directed at the first user interface object without displaying content associated with the notification. Conditionally displaying content of the notification for a trigger event based on whether the event occurred recently enough allows the user to control whether the notification is displayed based on whether the user gazes at the first user interface object, causing the computer system to automatically and timely display information and / or controls that are more likely to be relevant to the current context of the computer system.

[0047] In some embodiments, if the computer system has received a request to join a communication session and the request remains active, then in response to gaze input directed at a first user interface object, the computer system displays a user interface including an affordance for joining the communication session. If the request to join the communication session is not active, then in response to gaze input directed at the first user interface object, the computer system displays multiple affordances for accessing system functionality without displaying a user interface having an affordance for joining the communication session. Conditionally displaying a user interface including an affordance for joining an actively requested communication session allows for control over whether the user views the request based on whether the user gazes at the first user interface object, causing the computer system to automatically and timely display information and / or controls that are likely to be more relevant to the current context of the computer system (e.g., by allowing the user to respond more quickly to the active request or by simply displaying system controls).

[0048] 1-6 illustrate an exemplary computer system for providing an XR experience to a user. FIGS. 7A-7K illustrate an exemplary technique for displaying multiple affordances for accessing system functions of a first computer system in response to detecting a first gaze input directed toward a first user interface object and according to a determination that the first gaze input satisfies an attention criterion for the first user interface object, according to some embodiments. FIGS. 7L-7Q illustrate an exemplary technique for displaying content associated with a first notification in response to detecting a first gaze input directed toward a first user interface object in accordance with a determination that a first event for the first notification satisfies a timing criterion, according to some embodiments. FIGS. 7R-7X illustrate an exemplary technique for displaying a first user interface including an affordance for joining a communication session, according to some embodiments. FIGS. 7Y-7AF illustrate an exemplary technique for initiating the display of an environment-locked user interface from a head-locked user interface, according to some embodiments. FIGS. 7AG-7AM illustrate exemplary regions for triggering the display of one or more user interface elements, according to some embodiments. Figures 7AN-7AT show exemplary contextual user interfaces that are displayed when different context criteria are met, according to some embodiments. Figures 7AU-7AZ show exemplary methods for dismissing an indication of a notification, according to some embodiments. Figures 7BA-7BJ show exemplary methods for displaying and interacting with previously received notifications, according to some embodiments. Figures 7BK-7BR show exemplary methods for moving, hiding, and redisplaying user interface objects as a user's viewpoint moves, according to some embodiments.Figure 8 is a flow diagram of a method for displaying multiple affordances for accessing system functions of a first computer system in response to detecting a first gaze input directed at a first user interface object and in accordance with a determination that the first gaze input satisfies an attention criterion for the first user interface object, according to various embodiments. Figure 9 is a flow diagram of a method for displaying content associated with a first notification in response to detecting a first gaze input directed at a first user interface object in accordance with a determination that a first event for the first notification satisfies a timing criterion, according to various embodiments. Figure 10 is a flow diagram of a method for displaying a first user interface including an affordance for joining a communication session in response to detecting a first gaze input directed at a first user interface object and in accordance with a determination that a request exists for the first computer system to join a first communication session that satisfies a timing criterion, according to various embodiments. Figures 11A-11B are flow diagrams of a method for initiating the display of an environment-locked user interface from a head-locked user interface, according to various embodiments. FIG. 12 is a flow diagram of a method for initiating the display of a user interface in response to detecting that a user's attention is directed to a distinct region of a three-dimensional environment, according to various embodiments. FIG. 13 is a flow diagram of a method for displaying and interacting with a contextual user interface, according to various embodiments. FIG. 14 is a flow diagram of a method for dismissing an indication of a notification, according to various embodiments. FIG. 15 is a flow diagram of a method for displaying and interacting with previously received notifications in a notification history user interface, according to various embodiments. FIGS. 16A-16B are flow diagrams of a method for moving, hiding, and redisplaying user interface objects according to movements of a user's viewpoint, according to some embodiments. FIGS. 7A-7B are used to illustrate various aspects of the process described with respect to FIGS. 8-16, according to some embodiments.

[0049] The processes described below enhance the usability of the device and streamline the user-device interface (e.g., by helping the user provide appropriate inputs and reducing user errors when operating / interacting with the device) through various techniques, including 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 controls that are displayed, performing an operation without requiring further user input when a set of conditions is met, improving privacy and / or security, and / or other techniques. These techniques also reduce power usage and improve the device's battery life by allowing the user to use the device more quickly and efficiently.

[0050] Furthermore, for methods described herein in which one or more steps are conditioned on one or more conditions being satisfied, it should be understood that the described method can be repeated in multiple iterations, such that over the course of the iterations, all of the conditions on which the method steps are conditioned are satisfied in different iterations of the method. For example, if a method requires performing a first step if a condition is satisfied and a second step if the condition is not satisfied, one skilled in the art will understand that the steps described in I are repeated in a particular order until the conditions are met and are no longer met. Thus, a method described with one or more steps that depend on one or more conditions being satisfied can be rewritten as a method that is repeated until each condition described in the method is met. However, this is not required for system or computer-readable medium claims in which the system or computer-readable medium includes instructions for performing a conditional action based on the satisfaction of the corresponding one or more conditions, and thus can determine whether a contingency is met without explicitly repeating the method steps until all conditions on which the method steps are conditioned are satisfied. Those skilled in the art will also understand that, as with methods having conditional steps, the system or computer-readable storage medium may repeat the steps of the method as many times as necessary to ensure that all of the conditional steps have been performed.

[0051] 1, an XR experience is provided to a user via an operating environment 100 that includes a computer system 101. The computer system 101 includes a controller 110 (e.g., a processor of a portable electronic device or a remote server), a display generation component 120 (e.g., a head-mounted device (HMD), a display, a projector, a touchscreen, etc.), one or more input devices 125 (e.g., an eye-tracking device 130, a hand-tracking device 140, other input devices 150), one or more output devices 155 (e.g., a speaker 160, a tactile output generator 170, and other output devices 180), one or more sensors 190 (e.g., an image sensor, a light sensor, a depth sensor, a tactile sensor, an orientation sensor, a proximity sensor, a temperature sensor, a location sensor, a motion sensor, a velocity sensor, etc.), and optionally one or more peripheral devices 195 (e.g., a consumer electronics device, a wearable device, etc.). In some embodiments, one or more of input device 125, output device 155, sensor 190, and peripheral device 195 are integrated with display generation component 120 (e.g., within a head-mounted or handheld device).

[0052] When describing an XR experience, various terms are used to individually refer to several related, but distinct, environments that a user senses and / or can interact with (e.g., using inputs detected by computer system 101 that cause the computer system generating the XR experience to generate audio, visual, and / or haptic feedback corresponding to various inputs provided to computer system 101 generating the XR experience). The following is a subset of these terms:

[0053] Physical Environment: The physical environment refers to the physical world that people can sense and / or interact with without the aid of electronic systems. A physical environment, such as a physical park, includes physical objects such as physical trees, physical buildings, and physical people. People can directly sense and / or interact with the physical environment through their senses, such as sight, touch, hearing, taste, and smell.

[0054] Extended reality: In contrast, an extended reality (XR) environment refers to a wholly or partially mimicked environment that people sense and / or interact with through electronic systems. In XR, a subset of a person's body movements or representations thereof are tracked, and one or more properties of one or more virtual objects simulated within the XR environment are adjusted accordingly to behave according to at least one law of physics. For example, an XR system may detect a person's head rotation and adjust the graphical content and sound field presented to the person accordingly, in a manner similar to how such views and sounds change in a physical environment. In some circumstances (e.g., for accessibility reasons), adjustments to property(ies) of virtual object(s) in the XR environment may be made in response to representations of body movements (e.g., voice commands). A person may sense and / or interact with an XR object using any one of these senses, including sight, hearing, touch, taste, and smell. For example, a person may sense and / or interact with audio objects that create a 3D or spatial audio environment that provides the perception of a point audio source in 3D space. In another example, audio objects may enable audio transparency that selectively incorporates ambient sounds from the physical environment, with or without computer-generated audio. In some XR environments, a person may sense and / or interact with only audio objects.

[0055] Examples of XR include virtual reality and mixed reality.

[0056] Virtual Reality: A virtual reality (VR) environment refers to an emulated environment designed to be based entirely on computer-generated sensory input for one or more senses. A VR environment includes multiple virtual objects that a person can sense and / or interact with. For example, computer-generated images of trees, buildings, and avatars representing people are examples of virtual objects. A person can sense and / or interact with virtual objects in the VR environment through a simulation of the person's presence in the computer-generated environment and / or through a simulation of a subset of the person's physical movement within the computer-generated environment.

[0057] Mixed Reality: A mixed reality (MR) environment refers to a mimicked environment designed to incorporate sensory input from or representations of a physical environment in addition to including computer-generated sensory input (e.g., virtual objects), as opposed to a VR environment designed to be based entirely on computer-generated sensory input. On a virtuality continuum, a mixed reality environment is anywhere between, but not including, a complete physical environment at one end and a virtual reality environment at the other. In some MR environments, computer-generated sensory input may respond to changes in sensory input from the physical environment. Some electronic systems for presenting MR environments may also track location and / or orientation relative to the physical environment to allow virtual objects to interact with real objects (i.e., physical items or representations thereof from the physical environment). For example, the system may take into account movement so that a virtual tree appears stationary relative to the physical ground.

[0058] Examples of mixed reality include extended reality and augmented virtuality.

[0059] Extended reality: An extended reality (AR) environment refers to a simulated environment in which one or more virtual objects are superimposed on a physical environment or a representation thereof. For example, an electronic system for presenting an AR environment may have a transparent or translucent display through which a person can directly view the physical environment. The system may be configured to present virtual objects on the transparent or translucent display, whereby a person uses the system to perceive the virtual objects superimposed on the physical environment. Alternatively, the system may have an opaque display and one or more imaging sensors that capture images or videos of the physical environment, which are representations of the physical environment. The system composites the images or videos with the virtual objects and presents the composite on the opaque display. The person uses the system to indirectly view the physical environment through the images or videos of the physical environment and perceive the virtual objects superimposed on the physical environment. As used herein, video of a physical environment shown on an opaque display is referred to as "pass-through video," meaning that the system captures images of the physical environment using one or more image sensors and uses those images in presenting the AR environment on the opaque display. Alternatively, the system may include a projection system that projects virtual objects, e.g., as holograms, into the physical environment or onto a physical surface, such that a person using the system perceives the virtual objects superimposed on the physical environment. An extended reality environment also refers to an imitative environment in which a representation of the physical environment is transformed by computer-generated sensory information. For example, when providing pass-through video, the system may distort one or more sensor images to impose a selected perspective (e.g., viewpoint) other than the perspective captured by the imaging sensor. As another example, the representation of the physical environment may be distorted by graphically modifying (e.g., enlarging) a portion thereof, such that the modified portion becomes a non-photorealistic, altered version that represents the originally captured image.As a further example, the representation of the physical environment may be altered by graphically removing or obscuring portions of it.

[0060] Augmented Virtuality: An augmented virtuality (AV) environment refers to a mimicking environment in which a virtual or computer-generated environment incorporates one or more sensory inputs from a physical environment. The sensory inputs may be representations of one or more characteristics of the physical environment. For example, an AV park may have virtual trees and virtual buildings, while people with faces are realistically recreated from images of physical people. As another example, virtual objects may adopt the shape or color of physical items imaged by one or more imaging sensors. As a further example, virtual objects may adopt shadows that match the position of the sun in the physical environment.

[0061] Perspective-Locked Virtual Object: A virtual object is perspective-locked when the computer system displays the virtual object in the same location and / or position within the user's perspective, even as the user's perspective shifts (e.g., changes). In embodiments in which the computer system is a head-mounted device, the user's perspective is locked to the forward-facing orientation of the user's head (e.g., the user's perspective is at least a portion of the user's field of view when the user is looking straight ahead). Thus, the user's perspective remains fixed even as the user's line of sight moves without moving the user's head. In embodiments in which the computer system has a display generating component (e.g., a display screen) that can be repositioned relative to the user's head, the user's perspective is the extended reality view being presented to the user on the display generating component of the computer system. For example, a perspective-locked virtual object displayed in the upper left corner of the user's perspective when the user's perspective is in a first orientation (e.g., the user's head is facing north) will continue to be displayed in the upper left corner of the user's perspective even if the user's perspective changes to a second orientation (e.g., the user's head is facing west). In other words, the location and / or position at which a viewpoint-locked virtual object is displayed in a user's viewpoint is independent of the user's position and / or orientation in the physical environment. In embodiments in which the computer system is a head-mounted device, the user's viewpoint is locked to the orientation of the user's head, such that the virtual object is also referred to as a "head-locked virtual object."

[0062] Environment-Locked Virtual Object: A virtual object is environment-locked (or "world-locked") when a computer system displays the virtual object at a location and / or position within a user's viewpoint that is based on (e.g., selected with reference to and / or anchored to) locations and / or objects within a three-dimensional environment (e.g., a physical environment or a virtual environment). As the user's viewpoint shifts, the locations and / or objects within the environment relative to the user's viewpoint change, resulting in the environment-locked virtual object appearing at a different location and / or position within the user's viewpoint. For example, an environment-locked virtual object locked to a tree directly in front of the user will appear centered within the user's viewpoint. If the user's viewpoint shifts to the right (e.g., the user's head is turned to the right) and the tree becomes more left-leaning within the user's viewpoint (e.g., the position of the tree within the user's viewpoint shifts), the environment-locked virtual object locked to the tree will appear more left-leaning within the user's viewpoint. In other words, the location and / or position at which the environment-locked virtual object appears within the user's viewpoint depends on the position and / or orientation of the location and / or object in the environment to which the virtual object is locked. In some embodiments, the computer system uses a stationary reference frame (e.g., a coordinate system fixed to a fixed location and / or object in the physical environment) to determine a position at which to display an environment-locked virtual object in the user's viewpoint. The environment-locked virtual object can be locked to a stationary portion of the environment (e.g., a floor, wall, table, or other stationary object) or can be locked to a moving portion of the environment (e.g., a vehicle, an animal, a person, or a representation of a part of the user's body that moves independent of the user's viewpoint, such as the user's hand, wrist, arm, or leg), so that the virtual object moves as the viewpoint or part of the environment moves in order to maintain a fixed relationship between the virtual object and the part of the environment.

[0063] In some embodiments, an environment-locked or viewpoint-locked virtual object exhibits lazy-following behavior, which reduces or delays the movement of the environment-locked or viewpoint-locked virtual object relative to movement of a reference point that the virtual object is following. In some embodiments, when exhibiting lazy-following behavior, the computer system intentionally slows the movement of the virtual object when it detects movement of a reference point that the virtual object is following (e.g., a part of the environment, the viewpoint, or a point fixed relative to the viewpoint, such as a point between 5 and 300 cm from the viewpoint). For example, when the reference point (e.g., a part of the environment or the viewpoint) moves at a first speed, the virtual object is moved by the device to remain locked to the reference point, but at a second speed that is slower than the first speed (e.g., until the reference point stops or slows down, at which point the virtual object begins to catch up with the reference point). In some embodiments, when a virtual object exhibits lazy-following behavior, the device ignores small amounts of movement of the reference point (e.g., ignores movement of the reference point that is less than a threshold amount, such as movement between 0 and 5 degrees or movement between 0 and 50 cm). For example, when the reference point (e.g., the portion of the environment or viewpoint to which the virtual object is locked) moves by a first amount, the distance between the reference point and the virtual object increases (e.g., because the virtual object is displayed to maintain a fixed or substantially fixed position relative to a viewpoint or portion of the environment different from the reference point to which the virtual object is locked), and when the reference point (e.g., the portion of the environment or viewpoint to which the virtual object is locked) moves by a second amount greater than the first amount, the distance between the reference point and the virtual object initially increases (e.g., because the virtual object is displayed to maintain a fixed or substantially fixed position relative to a viewpoint or portion of the environment different from the reference point to which the virtual object is locked), and then decreases as the amount of movement of the reference point increases beyond a threshold (e.g., a “lazy following” threshold) as the virtual object is moved by the computer system to maintain a fixed or substantially fixed position relative to the reference point.In some embodiments, a virtual object maintaining a substantially fixed position relative to a reference point includes the virtual object being displayed within a threshold distance (e.g., 1, 2, 3, 5, 15, 20, 50 cm) of the reference point in one or more dimensions (e.g., above / below, left / right, and / or forward / backward relative to the position of the reference point).

[0064] Hardware: There are many different types of electronic systems that enable a person to sense and / or interact with various XR environments. Examples include head-mounted systems, projection-based systems, head-up displays, vehicle windshields with integrated display capabilities, windows with integrated display capabilities, displays formed as lenses designed to be placed over a person's eyes (e.g., similar to contact lenses), headphones / earphones, speaker arrays, input systems (e.g., wearable or handheld controllers with or without haptic feedback), smartphones, tablets, and desktop / laptop computers. A head-mounted system may have one or more speaker(s) and an integrated opaque display. Alternatively, a head-mounted system may be configured to accept an external opaque display (e.g., a smartphone). A head-mounted system may incorporate one or more imaging sensors for capturing images or video of the physical environment and / or one or more microphones for capturing audio of the physical environment. A head-mounted system may have a transparent or translucent display rather than an opaque display. A transparent or translucent display may have a medium through which light representing an image is directed toward a person's eyes. The display may utilize digital light projection, OLED, LED, uLED, liquid crystal on silicon, laser-scanned light source, or any combination of these technologies. The medium may be a light guide, a holographic medium, an optical combiner, an optical reflector, or any combination thereof. In one embodiment, the transparent or translucent display may be configured to be selectively opaque. A projection-based system may employ retinal projection technology that projects graphical images onto a person's retina. The projection system may also be configured to project virtual objects into the physical environment, for example, as holograms or onto physical surfaces. In some embodiments, the controller 110 is configured to manage and coordinate the XR experience for the user.In some embodiments, controller 110 includes a suitable combination of software, firmware, and / or hardware. Controller 110 is described in more detail below with reference to FIG. 2. In some embodiments, controller 110 is a computing device that is local or remote to scene 105 (e.g., the physical environment). For example, controller 110 is a local server located within scene 105. In another example, controller 110 is a remote server (e.g., a cloud server, a central server, etc.) located outside scene 105. In some embodiments, controller 110 is communicatively coupled to display generation component 120 (e.g., an HMD, a display, a projector, a touchscreen, etc.) via one or more wired or wireless communication channels 144 (e.g., BLUETOOTH, IEEE 802.11x, IEEE 802.16x, IEEE 802.3x, etc.). In another example, the controller 110 is contained within the housing (e.g., physical housing) of one or more of the display generating component 120 (e.g., an HMD or a portable electronic device including a display and one or more processors), one or more of the input devices 125, one or more of the output devices 155, one or more of the sensors 190, and / or one or more of the peripheral devices 195, or shares the same physical housing or support structure as one or more of the foregoing.

[0065] In some embodiments, display generation component 120 is configured to provide an XR experience (e.g., at least a visual component of the XR experience) to a user. In some embodiments, display generation component 120 includes a suitable combination of software, firmware, and / or hardware. Display generation component 120 is described in more detail below with reference to FIG. 3. In some embodiments, the functionality of controller 110 is provided by and / or combined with display generation component 120.

[0066] According to some embodiments, the display generation component 120 provides an XR experience to the user while the user is virtually and / or physically present in the scene 105.

[0067] In some embodiments, the display generating component is worn on a part of the user's body (e.g., on their head, their hand, etc.). Thus, display generating component 120 includes one or more XR displays provided for displaying XR content. For example, in various embodiments, display generating component 120 surrounds the user's field of view. In some embodiments, display generating component 120 is a handheld device (e.g., a smartphone or tablet) configured to present XR content, where the user holds the device with a display pointed toward the user's field of view and a camera pointed toward scene 105. In some embodiments, the handheld device is optionally located within a housing worn on the user's head. In some embodiments, the handheld device is optionally located on a support (e.g., a tripod) in front of the user. In some embodiments, display generating component 120 is an XR chamber, housing, or room configured to present XR content without the user wearing or holding display generating component 120. Many user interfaces described with reference to one type of hardware for displaying XR content (e.g., a handheld device or a device on a tripod) may be implemented on another type of hardware for displaying XR content (e.g., an HMD or other wearable computing device). For example, a user interface illustrating interactions with XR content that are triggered based on interactions occurring in the space in front of a handheld or tripod-mounted device may be implemented similarly to an HMD in which the interactions occur in the space in front of the HMD and the XR content responses are displayed via the HMD. Similarly, a user interface illustrating interactions with XR content that are triggered based on movement of a handheld or tripod-mounted device relative to the physical environment (e.g., scene 105 or a part of the user's body (e.g., the user's eye(s), head, or hands)) may be implemented similarly to an HMD in which the movement is caused by movement of the HMD relative to the physical environment (e.g., scene 105 or a part of the user's body (e.g., the user's eye(s), head, or hands)).

[0068] While relevant features of operating environment 100 are shown in FIG. 1, those skilled in the art will understand from this disclosure that for the sake of brevity, various other features are not shown so as to not obscure more pertinent aspects of the exemplary embodiments disclosed herein.

[0069] 2 is a block diagram of an example controller 110, according to some embodiments. While certain features are shown, those skilled in the art will understand from this disclosure that various other features are not shown for the sake of brevity so as not to obscure more pertinent aspects of the embodiments disclosed herein. Thus, by way of non-limiting example, in some embodiments, the controller 110 includes one or more processing units 202 (e.g., a microprocessor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a graphics processing unit (GPU), a central processing unit (CPU), a processing core, etc.), one or more input / output (I / O) devices 206, one or more communication interfaces 208 (e.g., Universal Serial Bus (USB), FIREWIRE, THUNDERBOLT, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Global Positioning System (GPS), Infrared (IR), BLUETOOTH, ZIGBEE, or similar types of interfaces), one or more programming (e.g., I / O) interfaces 210, memory 220, and one or more communication buses 204 for interconnecting these and various other components.

[0070] In some embodiments, one or more communication buses 204 include circuitry that interconnects and controls communications between system components. In some embodiments, one or more I / O devices 206 include at least one of a keyboard, a mouse, a touchpad, a joystick, one or more microphones, one or more speakers, one or more image sensors, one or more displays, etc.

[0071] Memory 220 includes high-speed random-access memory, such as dynamic random-access memory (DRAM), static random-access memory (SRAM), double-data-rate random-access memory (DDRRAM), or other random-access solid-state memory devices. In some embodiments, memory 220 includes non-volatile memory, such as one or more magnetic storage devices, optical storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 220 optionally includes one or more storage devices located remotely from the one or more processing units 202. Memory 220 includes a non-transitory computer-readable storage medium. In some embodiments, memory 220, or its non-transitory computer-readable storage medium, stores the following programs, modules, and data structures, or a subset thereof, including an optional operating system 230 and an XR experience module 240:

[0072] Operating system 230 includes instructions for handling various basic system services and performing hardware-dependent tasks. In some embodiments, XR experience module 240 is configured to manage and coordinate one or more XR experiences for one or more users (e.g., a single XR experience for one or more users, or multiple XR experiences for respective groups of one or more users). To that end, in various embodiments, XR experience module 240 includes a data acquisition unit 241, a tracking unit 242, an adjustment unit 246, and a data transmission unit 248.

[0073] 1 , and optionally one or more of input device 125, output device 155, sensor 190, and / or peripheral device 195. To that end, in various embodiments, data acquisition unit 241 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0074] In some embodiments, tracking unit 242 is configured to map scene 105 and track the position / location of at least display generating component 120 relative to scene 105 of FIG. 1 , and optionally relative to one or more of input device 125, output device 155, sensor 190, and / or peripheral device 195. To that end, in various embodiments, tracking unit 242 includes instructions and / or logic therefor, as well as heuristics and metadata therefor. In some embodiments, tracking unit 242 includes hand tracking unit 244 and / or eye tracking unit 243. In some embodiments, hand tracking unit 244 is configured to track the position / location of one or more parts of a user's hand and / or the movement of one or more parts of a user's hand relative to scene 105 of FIG. 1 , relative to display generating component 120, and / or relative to a coordinate system defined relative to the user's hand. Hand tracking unit 244 is described in more detail below with respect to FIG. 4. In some embodiments, eye tracking unit 243 is configured to track the position and movement of the user's gaze (or, more broadly, the user's eyes, face, or head) relative to scene 105 (e.g., relative to the physical environment and / or the user (e.g., the user's hands)), or relative to XR content displayed via display generation component 120. Eye tracking unit 243 is described in more detail below with respect to FIG. 5.

[0075] In some embodiments, coordination unit 246 is configured to manage and coordinate the XR experience presented to the user by display generation component 120 and, optionally, by one or more of output devices 155 and / or peripheral devices 195. To that end, in various embodiments, coordination unit 246 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0076] In some embodiments, data transmission unit 248 is configured to transmit data (e.g., presentation data, location data, etc.) to at least display generation component 120, and optionally to one or more of input device 125, output device 155, sensor 190, and / or peripheral device 195. To that end, in various embodiments, data transmission unit 248 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0077] Although the data acquisition unit 241, the tracking unit 242 (e.g., including the eye tracking unit 243 and the hand tracking unit 244), the adjustment unit 246, and the data transmission unit 248 are shown as being present on a single device (e.g., the controller 110), it should be understood that in other embodiments, any combination of the data acquisition unit 241, the tracking unit 242 (e.g., including the eye tracking unit 243 and the hand tracking unit 244), the adjustment unit 246, and the data transmission unit 248 can be located within separate computing devices.

[0078] Furthermore, Figure 2 is intended more to illustrate the functionality of various features that may be present in particular embodiments, as opposed to a structural overview of the embodiments described herein. As will be recognized by those skilled in the art, items shown separately can be combined and some items can be separated. For example, some functional modules shown separately in Figure 2 can be implemented in a single module, and various functions of a single functional block can be implemented by one or more functional blocks in various embodiments. The actual number of modules, as well as the division of specific functions and how functions are allocated among them, will vary depending on implementation and, in some embodiments, will depend in part on the particular combination of hardware, software, and / or firmware selected for a particular implementation.

[0079] 3 is a block diagram of an example of a display generation component 120, according to some embodiments. While certain features are shown, those skilled in the art will understand from this disclosure that, for the sake of brevity, various other features are not shown so as to not obscure more pertinent aspects of the embodiments disclosed herein. To that end, by way of non-limiting example, in some embodiments, the display generation component 120 (e.g., an HMD) includes one or more processing units 302 (e.g., microprocessors, ASICs, FPGAs, GPUs, CPUs, processing cores, etc.), one or more input / output (I / O) devices and sensors 306, one or more communication interfaces 308 (e.g., USB, FIREWIRE, THUNDERBOLT, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, GSM, CDMA, TDMA, GPS, infrared, BLUETOOTH, ZIGBEE, and / or similar types of interfaces), one or more programming (e.g., I / O) interfaces 310, one or more XR displays 312, one or more optional inward-facing and / or outward-facing image sensors 314, memory 320, and one or more communication buses 304 for interconnecting these and various other components.

[0080] In some embodiments, the one or more communication buses 304 include circuitry that interconnects and controls communications between system components. In some embodiments, the one or more I / O devices and sensors 306 include at least one of an inertial measurement unit (IMU), an accelerometer, a gyroscope, a thermometer, one or more physiological sensors (e.g., a blood pressure monitor, a heart rate monitor, a blood oxygen sensor, a blood glucose sensor, etc.), one or more microphones, one or more speakers, a haptic engine, one or more depth sensors (e.g., structured light, time of flight, etc.), etc.

[0081] In some embodiments, the one or more XR displays 312 are configured to provide an XR experience to a user. In some embodiments, the one or more XR displays 312 correspond to holographic, digital light processing (DLP), liquid crystal display (LCD), liquid crystal on silicon (LCoS), organic light-emitting field-effect transistor (OLET), organic light-emitting diode (OLED), surface-conduction electron-emissive element display (SED), field-emission display (FED), quantum dot light-emitting diode (QD-LED), microelectromechanical system (MEMS), and / or similar display types. In some embodiments, the one or more XR displays 312 correspond to a waveguide display, such as a diffractive, reflective, polarized, holographic, etc. For example, the display generation component 120 (e.g., an HMD) includes a single XR display. In another example, the display generation component 120 includes an XR display for each eye of the user. In some embodiments, the one or more XR displays 312 are capable of presenting mixed reality (MR) or virtual reality (VR) content. In some embodiments, the one or more XR displays 312 are capable of presenting mixed reality (MR) or virtual reality (VR) content.

[0082] In some embodiments, the one or more image sensors 314 are configured to acquire image data corresponding to at least a portion of the user's face, including the user's eyes (and may be referred to as eye-tracking cameras). In some embodiments, the one or more image sensors 314 are configured to acquire image data corresponding to at least a portion of the user's hand(s) and optionally the user's arm(s) (and may be referred to as hand-tracking cameras). In some embodiments, the one or more image sensors 314 are configured to face forward to acquire image data corresponding to a scene as the user would view it if the display generating component 120 (e.g., an HMD) were not present (and may be referred to as a scene camera). The one or more optional image sensors 314 may include one or more RGB cameras (e.g., with a complementary metal-oxide semiconductor (CMOS) image sensor or a charge-coupled device (CCD) image sensor), one or more infrared (IR) cameras, one or more event-based cameras, and / or the like.

[0083] Memory 320 includes high-speed random-access memory, such as DRAM, SRAM, DDR RAM, or other random-access solid-state memory devices. In some embodiments, memory 320 includes non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 320 optionally includes one or more storage devices located remotely from the one or more processing units 302. Memory 320 includes a non-transitory computer-readable storage medium. In some embodiments, memory 320, or its non-transitory computer-readable storage medium, stores the following programs, modules, and data structures, or a subset thereof, including an optional operating system 330 and an XR presentation module 340:

[0084] The operating system 330 includes instructions for handling various basic system services and for performing hardware-dependent tasks. In some embodiments, the XR presentation module 340 is configured to present XR content to a user via one or more XR displays 312. To that end, in various embodiments, the XR presentation module 340 includes a data acquisition unit 342, an XR presentation unit 344, an XR map generation unit 346, and a data transmission unit 348.

[0085] In some embodiments, the data acquisition unit 342 is configured to acquire data (e.g., presentation data, interaction data, sensor data, location data, etc.) from at least the controller 110 of Figure 1. To that end, in various embodiments, the data acquisition unit 342 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0086] In some embodiments, the XR presentation unit 344 is configured to present XR content via one or more XR displays 312. To that end, in various embodiments, the XR presentation unit 344 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0087] In some embodiments, the XR map generation unit 346 is configured to generate an XR map (e.g., a 3D map of a mixed reality scene or a map of a physical environment in which computer-generated objects can be placed to generate an extended reality) based on the media content data. To that end, in various embodiments, the XR map generation unit 346 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0088] In some embodiments, data transmission unit 348 is configured to transmit data (e.g., presentation data, location data, etc.) to at least controller 110, and optionally to one or more of input device 125, output device 155, sensor 190, and / or peripheral device 195. To that end, in various embodiments, data transmission unit 348 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0089] Although the data acquisition unit 342, the XR presentation unit 344, the XR map generation unit 346, and the data transmission unit 348 are shown as residing on a single device (e.g., the display generation component 120 of FIG. 1), it should be understood that in other embodiments, any combination of the data acquisition unit 342, the XR presentation unit 344, the XR map generation unit 346, and the data transmission unit 348 may be located in separate computing devices.

[0090] Furthermore, Figure 3 is intended more to illustrate the functionality of various features that may be present in particular implementations, as opposed to a structural overview of the embodiments described herein. As will be recognized by those skilled in the art, items shown separately can be combined and some items can be separated. For example, some functional modules shown separately in Figure 3 can be implemented within a single module, and various functions of a single functional block can be performed by one or more functional blocks in various embodiments. The actual number of modules, as well as the division of specific functions and how functions are allocated among them, will vary from implementation to implementation and, in some embodiments, will depend in part on the particular combination of hardware, software, and / or firmware selected for a particular implementation.

[0091] 4 is a schematic diagram of an example embodiment of a hand tracking device 140. In some embodiments, hand tracking device 140 (FIG. 1) is controlled by hand tracking unit 244 (FIG. 2) to track the location / position of one or more parts of a user's hand and / or the movement of one or more parts of a user's hand relative to scene 105 of FIG. 1 (e.g., relative to a portion of the physical environment surrounding the user, relative to display generating components 120, or relative to a portion of the user (e.g., the user's face, eyes, or head), and / or relative to the user's hand). In some embodiments, hand tracking device 140 is part of display generating components 120 (e.g., embedded in or attached to a head-mounted device). In some embodiments, hand tracking device 140 is separate from display generating components 120 (e.g., located in a separate housing or attached to a separate physical support structure).

[0092] In some embodiments, the hand tracking device 140 includes an image sensor 404 (e.g., one or more IR cameras, 3D cameras, depth cameras, and / or color cameras) that captures three-dimensional scene information including at least the hand 406 of a human user. The image sensor 404 captures hand images with sufficient resolution to allow for differentiation of the fingers and their respective positions. The image sensor 404 typically captures images of other parts of the user's body, or all of the body, and can have either zoom capabilities or a dedicated sensor with high magnification to capture hand images at a desired resolution. In some embodiments, the image sensor 404 also captures 2D color video images of the hand 406 and other elements of the scene. In some embodiments, the image sensor 404 is used in conjunction with or functions as an image sensor that captures the physical environment of the scene 105. In some embodiments, the image sensor 404 is positioned relative to the user or the user's environment such that the field of view of the image sensor, or a portion thereof, is used to define an interaction space in which hand movements captured by the image sensor are processed as inputs to the controller 110.

[0093] In some embodiments, image sensor 404 outputs a sequence of frames containing 3D map data (and possibly color image data) to controller 110, which extracts high-level information from the map data. This high-level information is typically provided via an application program interface (API) to an application running on the controller, which drives display generation component 120 accordingly. For example, a user can interact with software running on controller 110 by moving their hand 406 and changing the posture of their hand.

[0094] In some embodiments, the image sensor 404 projects a spot pattern onto a scene including the hand 406 and captures an image of the projected pattern. In some embodiments, the controller 110 calculates the 3D coordinates of points in the scene (including points on the surface of the user's hand) by triangulation based on the lateral shift of the pattern's spots. This approach is advantageous in that it does not require the user to hold or wear any type of beacon, sensor, or other marker. This provides depth coordinates of points in the scene relative to a predetermined reference plane at a specific distance from the image sensor 404. In this disclosure, the image sensor 404 is assumed to define a set of orthogonal x, y, and z axes such that the depth coordinate of a point in the scene corresponds to the z component measured by the image sensor. Alternatively, the image sensor 404 (e.g., a hand tracking device) can use other 3D mapping methods, such as stereoscopic imaging or time-of-flight measurement, based on single or multiple cameras or other types of sensors.

[0095] In some embodiments, the hand tracking device 140 captures and processes a time sequence of depth maps containing the user's hand while the user moves the hand (e.g., the entire hand or one or more fingers). Software running on the image sensor 404 and / or a processor in the controller 110 processes the 3D map data to extract patch descriptors of the hand in these depth maps. The software matches these descriptors with patch descriptors stored in the database 408, based on a previous learning process, to estimate the pose of the hand in each frame. The pose typically includes the 3D locations of the user's wrist joints and fingertips.

[0096] The software can also analyze hand and / or finger trajectories across multiple frames in a sequence to identify gestures. The pose estimation functionality described herein may be interleaved with motion tracking functionality, whereby patch-based pose estimation is performed only once every two (or more) frames, while tracking is used to discover pose changes that occur across the remaining frames. The pose, motion, and gesture information is provided to an application program running on controller 110 via the API described above. This program can, for example, move and modify an image presented on display generation component 120 or perform other functions in response to the pose and / or gesture information.

[0097] In some embodiments, the gesture includes an air gesture, which is detected without (or independent of) the user touching an input element that is part of a device (e.g., computer system 101, one or more input devices 125, and / or hand tracking device 140) and is based on detected movement of a part of the user's body in the air (e.g., head, one or more arms, one or more hands, one or more fingers, and / or one or more legs), including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground or the distance of the user's hand relative to the ground), movement of the user's body relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of one of the user's hands relative to another of the user's hands, and / or movement of a user's finger relative to another finger or part of the user's hand), and / or absolute movement of the user's body part (e.g., a tap gesture involving movement of a hand in a predetermined posture by a predetermined amount and / or speed, or a shake gesture involving a predetermined speed or amount of rotation of the user's body part).

[0098] In some embodiments, input gestures used in various examples and embodiments described herein include air gestures performed by movement of a user's finger(s) relative to other finger(s) or part(s) of the user's hand to interact with an XR environment (e.g., a virtual or mixed reality environment), according to some embodiments. In some embodiments, an air gesture is a gesture that is detected without the user touching an input element that is part of the device (or independent of an input element that is part of the device) and is based on detected movement of a part of the user's body in the air, including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground or the distance of the user's hand relative to the ground), movement of the user's body relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of the user's other hand relative to one of the user's hands, and / or movement of the user's fingers relative to another finger or part of the user's hand), and / or absolute movement of the user's body part (e.g., a tap gesture that includes movement of the hand in a predetermined pose by a predetermined amount and / or speed, or a shake gesture that includes rotation of the user's body part at a predetermined speed or amount).

[0099] In some embodiments where the input gesture is an air gesture (e.g., in the absence of physical contact with an input device that provides a computer system with information about which user interface element is the target of the user input, such as contact with a user interface element displayed on a touchscreen or contact with a mouse or trackpad to move a cursor to a user interface element), the gesture takes into account the user's attention (e.g., gaze) to determine the target of the user input (e.g., in the case of direct input, as described below). Thus, in implementations that include air gestures, the input gesture is detected attention (e.g., gaze) to a user interface element in combination with (e.g., simultaneous with) movement of the user's finger(s) and / or hand to perform pinch and / or tap input, as described in more detail below.

[0100] In some embodiments, an input gesture directed at a user interface object is performed directly or indirectly with reference to the user interface object. For example, user input is performed directly at a user interface object in response to performing an input gesture with the user's hand at a position corresponding to the user interface object's position in the three-dimensional environment (e.g., as determined based on the user's current viewpoint). In some embodiments, an input gesture is performed indirectly at a user interface object in response to detecting the user's attention (e.g., gaze) to the user interface object while performing the input gesture while the user's hand position is not at a position corresponding to the user interface object's position in the three-dimensional environment. For example, for a direct input gesture, a user can direct the user's input at a user interface object by initiating the gesture at or near a position corresponding to the user interface object's displayed position (e.g., within a distance of 0.5 cm, 1 cm, 5 cm, or 0-5 cm, measured from an outer edge of the option or a central portion of the option). For indirect input gestures, a user can direct their input to a user interface object by paying attention to the user interface object (e.g., by gazing at the user interface object), and while paying attention to the option, the user initiates an input gesture (e.g., at any position detectable by the computer system) (e.g., at a position that does not correspond to the displayed position of the user interface object).

[0101] In some embodiments, input gestures (e.g., air gestures) used in various examples and embodiments described herein include pinch inputs and tap inputs for interacting with a virtual or mixed reality environment, according to some embodiments. For example, pinch inputs and tap inputs, as described below, are performed as air gestures.

[0102] In some embodiments, the pinch input is part of an air gesture, including one or more of a pinch gesture, a long pinch gesture, a pinch-and-drag gesture, or a double pinch gesture. For example, a pinch gesture that is an air gesture includes moving two or more fingers of a hand to contact each other, i.e., optionally with a short break (e.g., within 0-1 second) after contact with each other. A long pinch gesture that is an air gesture includes moving two or more fingers of a hand to contact each other for at least a threshold amount of time (e.g., at least 1 second) before detecting a break in contact with each other. For example, a long pinch gesture includes a user holding a pinch gesture (e.g., when two or more fingers are in contact), and the long pinch gesture continues until a break in contact between the two or more fingers is detected. In some embodiments, a double pinch gesture that is an air gesture includes two (e.g., or more) pinch inputs (e.g., performed by the same hand) that are detected immediately (e.g., within separate periods) after each other. For example, a user performs a first pinch input (e.g., a pinch input or a long pinch input), releases the first pinch input (e.g., breaking contact between two or more fingers), and performs a second pinch input within a discrete period of time (e.g., within 1 second or 2 seconds) after releasing the first pinch input.

[0103] In some embodiments, a pinch-and-drag gesture that is an air gesture includes a pinch gesture (e.g., a pinch gesture or a long pinch gesture) performed in conjunction with (e.g., followed by) a drag input that changes the position of a user's hand from a first position (e.g., a start position of the drag) to a second position (e.g., an end position of the drag). In some embodiments, a user maintains the pinch gesture while performing the drag input and releases the pinch gesture (e.g., spreading two or more fingers apart) to end the drag gesture (e.g., at the second position). In some embodiments, the pinch input and the drag input are performed by the same hand (e.g., a user pinches two or more fingers together and moves the same hand to a second position in the air with a drag gesture). In some embodiments, the pinch input is performed by a user's first hand and the drag input is performed by the user's second hand (e.g., the user's second hand moves from a first position to a second position in the air while the user continues the pinch input with the user's first hand). In some embodiments, an input gesture that is an air gesture includes an input (e.g., a pinch input and / or a tap input) performed using both of a user's hands. For example, the input gesture includes two (e.g., or more) pinch inputs performed in conjunction with each other (e.g., simultaneously over a predetermined period of time or within separate periods of time). For example, a first pinch gesture (e.g., a pinch input, a long pinch input, or a pinch-and-drag input) performed using a first hand of the user and a second pinch input performed using the other hand (e.g., a second hand of the user) in conjunction with performing the pinch input using the first hand. In some embodiments, a movement between a user's hands (e.g., to increase and / or decrease the distance or relative orientation between the user's hands).

[0104] In some embodiments, a tap input (e.g., directed toward a user interface element) performed as an air gesture includes movement(s) of a user's finger(s) toward the user interface element, movement of a user's hand toward a user interface element, optionally with the user's finger(s) extended toward the user interface element, a downward movement of a user's finger (e.g., mimicking a mouse click movement or a tap on a touchscreen), or other movement of the user's hand. In some embodiments, a tap input performed as an air gesture is detected based on movement characteristics of the finger or hand performing the tap gesture, movement of the finger or hand away from the user's viewpoint and / or toward the object that is the target of the tap input followed by an end of the movement. In some embodiments, an end of the movement is detected based on a change in movement characteristics of the finger or hand performing the tap gesture (e.g., an end of movement away from the user's viewpoint and / or toward the object that is the target of the tap input, a reversal of the direction of movement of the finger or hand, and / or a reversal of the direction of acceleration of the movement of the finger or hand).

[0105] In some embodiments, the user's attention is determined to be directed to a portion of the three-dimensional environment based on detecting a gaze directed to the portion of the three-dimensional environment (optionally, without requiring other conditions). In some embodiments, the device determines that the user's attention is directed to the portion of the three-dimensional environment based on detecting a gaze directed to the portion of the three-dimensional environment with one or more additional conditions, such as requiring the gaze to be directed to the portion of the three-dimensional environment for at least a threshold duration (e.g., dwell time) while the user's viewpoint is within a distance threshold from the portion of the three-dimensional environment, and / or requiring the gaze to be directed to the portion of the three-dimensional environment, and if one of the additional conditions is not met, the device determines that the user's attention is not directed to the portion of the three-dimensional environment to which the gaze is directed (e.g., until one or more additional conditions are met).

[0106] In some embodiments, detection of a ready configuration of a user or a portion of a user is detected by a computer system, and detection of a ready configuration of the hands is used by the computer system as an indication that the user is likely preparing to interact with the computer system using one or more air gesture inputs performed with the hands (e.g., a pinch, a tap, a pinch-and-drag, a double pinch, a long pinch, or other air gestures described herein). For example, the ready state of a hand is determined based on whether the hand has a predetermined hand geometry (e.g., a pre-pinch geometry with the thumb and one or more fingers extended and spaced apart, ready to perform a pinch or grab gesture, or a pre-tap geometry with one or more fingers extended and the palm facing away from the user), whether the hand is in a predetermined position relative to the user's viewpoint (e.g., below the user's head, above the user's waist, extended at least 15 cm, 20 cm, 25 cm, 30 cm, or 50 cm from the body), and / or whether the hand has moved in a particular manner (e.g., above the user's waist, moved toward an area in front of the user below the user's head, or away from the user's body or legs). In some embodiments, the ready state is used to determine whether an interactive element of a user interface is responsive to attentional (e.g., gaze) input.

[0107] In scenarios where input is described with reference to air gestures, it will be understood that similar gestures may be detected using a hardware input device attached to or held by one or more of the user's hands, the position of the hardware input device in space may be tracked using optical tracking, one or more accelerometers, one or more gyroscopes, one or more magnetometers, and / or one or more inertial measurement units, and the position and / or movement of the hardware input device is substituted for the position and / or movement of the hand or hands in the corresponding air gesture(s). In scenarios where input is described with reference to air gestures, it should be understood that similar gestures may be detected using hardware input devices attached to or held by one or more hands of a user, and user input may be detected using controls included in the hardware input device, such as one or more touch-sensitive input elements, one or more pressure-sensitive input elements, one or more buttons, one or more knobs, one or more dials, one or more joysticks, one or more hand or finger covers capable of detecting the position or change in position of parts of the hands and / or fingers relative to each other, relative to the user's body, and / or relative to the user's physical environment, and / or other hardware input device controls, and user input using controls included in the hardware input device is used in place of a hand and / or finger gesture, such as an air tap or air pinch, in the corresponding air gesture(s). For example, a selection input described as being performed with an air tap or air pinch input may alternatively be detected with a button press, a tap on a touch-sensitive surface, a press on a pressure-sensitive surface, or other hardware input. As another example, a movement input described as being performed using an air pinch and drag may alternatively be detected based on an interaction with a hardware input control, such as a button press and hold, a touch on a touch-sensitive surface, a press on a pressure-sensitive surface, or other hardware input followed by movement of a hardware input device through space (e.g., along the hand with which the hardware input device is associated).Similarly, bimanual input, which involves moving the hands relative to one another, may be performed using one air gesture and one hardware input device in the hand not performing the air gesture, two hardware input devices held in different hands, or two air gestures performed by different hands using various combinations of air gestures and / or inputs detected by one or more hardware input devices described above.

[0108] In some embodiments, the software may be downloaded to the controller 110 in electronic form, for example, over a network, or alternatively may be provided on a tangible, non-transitory medium, such as an optical, magnetic, or electronic memory medium. In some embodiments, the database 408 is similarly stored in memory associated with the controller 110. Alternatively, or additionally, some or all of the described functionality of the computer may be implemented in dedicated hardware, such as a custom or semi-custom integrated circuit or a programmable digital signal processor (DSP). While the controller 110 is shown in FIG. 4 as, by way of example, a separate unit from the image sensor 404, some or all of the processing functionality of the controller may be implemented by a suitable microprocessor and software, or by dedicated circuitry within the housing of the image sensor 404 (e.g., a hand tracking device), or otherwise associated with the image sensor 404. In some embodiments, at least some of these processing functions may be performed by a suitable processor integrated with the display generation component 120 (e.g., in a television set, handheld device, or head-mounted device) or using any other suitable computerized device, such as a game console or media player. The sensing function of the image sensor 404 may likewise be integrated into a computer or other computerized device that is controlled by the sensor output.

[0109] FIG. 4 also includes a schematic diagram of a depth map 410 captured by the image sensor 404, according to some embodiments. The depth map includes a matrix of pixels having respective depth values, as described above. A pixel 412 corresponding to the hand 406 is segmented from the background and wrist in this map. The intensity of each pixel in the depth map 410 is inversely proportional to the depth value, i.e., the measured z-distance from the image sensor 404, with increasing intensity as the depth increases. The controller 110 processes these depth values ​​to identify and segment components of the image (i.e., groups of adjacent pixels) that have characteristics of a human hand. These characteristics can include, for example, the overall size, shape, and frame-to-frame motion of the depth map sequence.

[0110] 4 also schematically illustrates a hand skeleton 414 that the controller 110 ultimately extracts from the depth map 410 of the hand 406, according to some embodiments. In FIG. 4, the hand skeleton 414 is overlaid on a hand background 416 that was segmented from the original depth map. In some embodiments, key feature points on the hand (e.g., knuckles, fingertips, center of the palm, end of the hand where it connects to the wrist, etc.), and optionally the wrist or arm connected to the hand, are identified and positioned on the hand skeleton 414. In some embodiments, the location and movement of these key feature points over multiple image frames are used by the controller 110 to determine hand gestures performed by the hand or the current state of the hand, according to some embodiments.

[0111] FIG. 5 shows an exemplary embodiment of eye tracking device 130 ( FIG. 1 ). In some embodiments, eye tracking device 130 is controlled by eye tracking unit 243 ( FIG. 2 ) to track the position and movement of a user's gaze relative to scene 105 or relative to XR content displayed via display generation component 120. In some embodiments, eye tracking device 130 is integrated with display generation component 120. For example, in some embodiments, if display generation component 120 is a head-mounted device such as a headset, helmet, goggles, or glasses, or a handheld device disposed in a wearable frame, the head-mounted device includes both components for generating XR content for viewing by the user and components for tracking the user's gaze relative to the XR content. In some embodiments, eye tracking device 130 is separate from display generation component 120. For example, if the display generation component is a handheld device or an XR chamber, eye tracking device 130 is optionally a device separate from the handheld device or the XR chamber. In some embodiments, eye tracking device 130 is a head-mounted device or part of a head-mounted device. In some embodiments, head-mounted eye tracking device 130 is optionally used in conjunction with head-mounted or non-head-mounted display generating components. In some embodiments, eye tracking device 130 is not a head-mounted device, and is optionally used in combination with head-mounted display generating components. In some embodiments, eye tracking device 130 is not a head-mounted device, and is optionally part of non-head-mounted display generating components.

[0112] In some embodiments, the display generation component 120 uses a display mechanism (e.g., left and right near-eye display panels) that displays frames including left and right images in front of the user's eyes to provide the user with a 3D virtual view. For example, the head-mounted display generation component may include left and right optical lenses (referred to herein as eyepieces) positioned between the display and the user's eyes. In some embodiments, the display generation component may include or be coupled to one or more external video cameras that capture video of the user's environment for display. In some embodiments, the head-mounted display generation component may have a transparent or translucent display that allows the user to view the physical environment directly and display virtual objects on the transparent or translucent display. In some embodiments, the display generation component projects virtual objects into the physical environment. The virtual objects are projected, for example, onto a physical surface or as a hologram, allowing an individual using the system to observe the virtual objects superimposed on the physical environment. In such cases, separate display panels and image frames for the left and right eyes may not be required.

[0113] As shown in FIG. 5 , in some embodiments, eye tracking device 130 (e.g., gaze tracking device) includes at least one eye tracking camera (e.g., an infrared (IR) camera or near-IR (NIR) camera) and an illumination source (e.g., an IR or NIR light source such as an array or ring of LEDs) that emits light (e.g., IR or NIR light) toward the user's eyes. The eye tracking camera may be aimed at the user's eyes to receive reflected IR or NIR light from the light source directly from the eyes, or alternatively, may be aimed at a “hot” mirror positioned between the user's eyes and a display panel that reflects the IR or NIR light from the eyes to the eye tracking camera while allowing visible light to pass through. Eye tracking device 130 optionally captures images of the user's eyes (e.g., as a video stream captured at 60-120 frames per second (fps)), analyzes the images to generate eye tracking information, and communicates the eye tracking information to controller 110. In some embodiments, the user's eyes are tracked separately by their respective eye tracking cameras and illumination sources. In some embodiments, only one eye of the user is tracked by a separate eye-tracking camera and lighting source.

[0114] In some embodiments, the eye tracking device 130 is calibrated using a device-specific calibration process to determine the eye tracking device's parameters for the particular operating environment 100, such as the 3D geometric relationships and parameters of the LEDs, camera, hot mirror (if present), eyepiece, and display screen. The device-specific calibration process may be performed at a factory or another facility before delivery of the AR / VR equipment to the end user. The device-specific calibration process may be an automatic or manual calibration process. The user-specific calibration process may include estimation of a particular user's eye parameters, such as pupil location, central visual location, optical axis, visual axis, eye spacing, etc. According to some embodiments, once the device-specific and user-specific parameters for the eye tracking device 130 have been determined, images captured by the eye tracking camera can be processed using glint-assisted methods to determine the user's current visual axis and viewpoint relative to the display.

[0115] As shown in FIG. 5, eye tracking device 130 (e.g., 130A or 130B) includes an eyepiece(s) 520 and a gaze tracking system including at least one eye tracking camera 540 (e.g., an infrared (IR) or near-IR (NIR) camera) positioned on the side of the user's face where eye tracking occurs and an illumination source 530 (e.g., an IR or NIR light source such as an array or ring of NIR light emitting diodes (LEDs)) that emits light (e.g., IR or NIR light) toward the user's eye(s) 592. The eye tracking camera 540 may be positioned between the user's eye(s) 592 and the display 510 (e.g., the left or right display panel of a head-mounted display, or the display of a handheld device, a projector, etc.) and may be directed at a mirror 550 that reflects IR or NIR light from the eye(s) 592 while transmitting visible light (e.g., as shown at the top of FIG. 5), or may be directed at the user's eye(s) 592 to receive reflected IR or NIR light from the eye(s) 592 (e.g., as shown at the bottom of FIG. 5).

[0116] In some embodiments, controller 110 renders AR or VR frames 562 (e.g., left and right frames for left and right display panels) and provides frames 562 to display 510. Controller 110 uses gaze tracking input 542 from eye tracking camera 540 for various purposes, such as in processing frames 562 for display. Controller 110 optionally estimates the user's viewpoint on display 510 based on gaze tracking input 542 obtained from eye tracking camera 540, using a glint-assisted method or other suitable method. The viewpoint estimated from gaze tracking input 542 is optionally used to determine the direction the user is currently looking.

[0117] Some possible use cases of the user's current gaze direction are described below, but are not intended to be limiting. As an exemplary use case, the controller 110 can render virtual content differently based on the determined user's gaze direction. For example, the controller 110 may generate virtual content with higher resolution in a central visual area determined from the user's current gaze direction than in a peripheral area. As another example, the controller may position or move virtual content within a view based at least in part on the user's current gaze direction. As another example, the controller may display particular virtual content within a view based at least in part on the user's current gaze direction. As another exemplary use case in an AR application, the controller 110 can orient an external camera to capture the physical environment of the XR experience and focus in the determined direction. The external camera's autofocus mechanism can then focus on an object or surface within the environment the user is currently viewing on the display 510. As another exemplary use case, eyepiece 520 may be a focusable lens, and eye-tracking information is used by the controller to adjust the focus of eyepiece 520 so that the virtual object the user is currently looking at has the proper binocular coordination to match the convergence of the user's eyes 592. Controller 110 can utilize the eye-tracking information to orient and focus eyepiece 520 so that close objects the user is looking at appear at the correct distance.

[0118] In some embodiments, the eye tracking device is part of a head-mounted device that includes a display (e.g., display 510), two eyepieces (e.g., eyepiece(s) 520), an eye tracking camera (e.g., eye tracking camera(s) 540), and a light source (e.g., light source 530 (e.g., IR or NIR LED)) attached to the wearable housing. The light source emits light (e.g., IR or NIR light) toward the user's eye(s) 592. In some embodiments, the light sources may be arranged in a ring or circle around each lens, as shown in FIG. 5. In some embodiments, eight light sources 530 (e.g., LEDs) are arranged around each lens 520, as an example. However, more or fewer light sources 530 may be used, and other arrangements and locations of the light sources 530 may be used.

[0119] In some embodiments, the display 510 emits light in the visible light range and not in the IR or NIR range, and therefore does not introduce noise into the gaze tracking system. Note that the location and angle of the eye tracking camera(s) 540 are given by way of example and are not intended to be limiting. In some embodiments, a single eye tracking camera 540 is located on each side of the user's face. In some embodiments, two or more NIR cameras 540 may be used on each side of the user's face. In some embodiments, a camera 540 with a wider field of view (FOV) and a camera 540 with a narrower FOV may be used on each side of the user's face. In some embodiments, a camera 540 operating at one wavelength (e.g., 850 nm) and a camera 540 operating at a different wavelength (e.g., 940 nm) may be used on each side of the user's face.

[0120] Embodiments of an eye tracking system such as that shown in FIG. 5 may be used, for example, in computer-generated reality, virtual reality, and / or mixed reality applications to provide a user with a computer-generated reality, virtual reality, augmented reality, and / or augmented virtual experience.

[0121] FIG. 6 illustrates a glint-assisted gaze tracking pipeline according to some embodiments. In some embodiments, the gaze tracking pipeline is implemented by a glint-assisted gaze tracking system (e.g., eye tracking device 130 as shown in FIGS. 1 and 5). The glint-assisted gaze tracking system can maintain a tracking state. Initially, the tracking state is off or "no." When in the tracking state, the glint-assisted gaze tracking system tracks the pupil contour and glint in the current frame using prior information from the previous frame when analyzing the current frame. When not in the tracking state, the glint-assisted gaze tracking system attempts to detect the pupil and glint in the current frame, and if successful, initializes the tracking state to "yes" and continues to the next frame in the tracking state.

[0122] As shown in FIG. 6, an eye-tracking camera can capture left and right images of a user's left and right eyes. The captured images are then input into an eye-tracking pipeline for processing beginning at 610. As indicated by the arrow returning to element 600, the eye-tracking system can continue to capture images of the user's eyes at a rate of, for example, 60-120 frames per second. In some embodiments, each set of captured images may be input into the pipeline for processing. However, in some embodiments, or under some conditions, not all captured frames are processed by the pipeline.

[0123] At 610, if the tracking status is yes for the currently captured image, the method proceeds to element 640. If the tracking status is no at 610, the image is analyzed to detect the user's pupil and glint in the image, as shown at 620. If the pupil and glint are successfully detected at 630, the method proceeds to element 640. If not, the method returns to element 610 to process the next image of the user's eyes.

[0124] At 640, proceeding from element 610, the current frame is analyzed to track pupils and glints based in part on previous information from the previous frame. At 640, proceeding from element 630, a tracking state is initialized based on the detected pupils and glints in the current frame. The results of the processing at element 640 are checked to ensure that the tracking or detection results are reliable. For example, the results can be checked to determine whether a sufficient number of glints are successfully tracked or detected in the current frame to perform pupil and gaze estimation. At 650, if the results are not reliable, the tracking state is set to no at element 660 and the method returns to element 610 to process the next image of the user's eyes. At 650, if the results are reliable, the method proceeds to element 670. At 670, the tracking state is set to yes (if not already yes) and the pupil and glint information is passed to element 680 to estimate the user's gaze point.

[0125] 6 is intended to serve as an example of eye-tracking technology that may be used in particular implementations. As will be recognized by those skilled in the art, other eye-tracking technologies, now existing or developed in the future, may be used in place of or in combination with the glint-assisted eye-tracking technology described herein in computer system 101 to provide a user with an XR experience according to various embodiments.

[0126] In this disclosure, various input methods are described with respect to interaction with a computer system. Where one example is provided using one input device or input method and another example is provided using a different input device or input method, it should be understood that each example may be compatible with, and optionally utilize, the input device or input method described with respect to the other example. Similarly, various output methods are described with respect to interaction with a computer system. Where one example is provided using one output device or output method and another example is provided using a different output device or output method, it should be understood that each example may be compatible with, and optionally utilize, the output device or output method described with respect to the other example. Similarly, various methods are described with respect to interaction with a virtual environment or a mixed reality environment via a computer system. Where one example is provided using interaction with a virtual environment and another example is provided using a mixed reality environment, it should be understood that each example may be compatible with, and optionally utilize, the method described with respect to the other example. Thus, this disclosure discloses embodiments that are combinations of features of multiple examples, without exhaustively listing all features of the embodiments in the description of each exemplary embodiment. User Interface and Related Processes

[0127] Attention is now directed to embodiments of user interfaces (“UIs”) and associated processes that may be implemented on a computer system, such as a portable multifunction device or a head-mounted device, in communication with display generating components, one or more input devices, and optionally one or more cameras.

[0128] 7A-7AF include diagrams of a three-dimensional environment viewable through a display generating component (e.g., display generating component 120) and interactions occurring within the three-dimensional environment caused by user input directed at the three-dimensional environment and / or input received from other computer systems and / or sensors. In some embodiments, the portion of the three-dimensional environment visible to the user through the display generating component is referred to as a viewport (e.g., a virtual viewport corresponding to the portion of the three-dimensional environment visible to the user of the device when viewing the three-dimensional environment through the display generating component). In some embodiments, input is directed to a virtual object in the three-dimensional environment by the user's gaze being detected within an area occupied by the virtual object or by hand gestures made at a location in the physical environment corresponding to the area of ​​the virtual object. In some embodiments, input is directed at a virtual object in the three-dimensional environment by a hand gesture (e.g., optionally at a location in the physical environment independent of the region of the virtual object in the three-dimensional environment) while the virtual object has input focus (e.g., while the virtual object is selected by simultaneously and / or previously detected gaze input, simultaneously or previously detected pointer input, and / or simultaneously and / or previously detected gesture input). In some embodiments, input is directed at a virtual object in the three-dimensional environment by an input device that has positioned a focus selector object (e.g., a pointer object or a selector object) at the position of the virtual object. In some embodiments, input is directed at a virtual object in the three-dimensional environment via other means (e.g., voice and / or control buttons).In some embodiments, input is directed toward a physical object or a representation of a virtual object corresponding to a physical object by a user's hand movements (e.g., movement of the entire hand, movement of the entire hand in a discrete pose, movement of a portion of the user's hand relative to another portion of the hand, and / or relative movement between the two hands) and / or manipulations of the physical object (e.g., touching, swiping, tapping, opening, moving toward, and / or moving relative to it). In some embodiments, the computer system modifies the display in the three-dimensional environment in some way (e.g., displaying additional virtual content or ceasing to display existing virtual content, and / or transitioning between different immersion levels displaying visual content) according to input from sensors (e.g., image sensors, temperature sensors, biometric sensors, motion sensors, and / or proximity sensors) and contextual conditions (e.g., location, time, and / or presence of others in the environment). In some embodiments, the computer system displays some changes in the three-dimensional environment (e.g., displaying additional virtual content, ceasing to display existing virtual content, and / or transitioning between different immersion levels in which visual content is being displayed) according to input from other computers used by other users sharing the computer-generated environment with the user of the computer system (e.g., in a shared computer-generated experience, in a shared virtual environment, and / or in a shared virtual or augmented reality environment of a communication session). In some embodiments, the computer system displays some changes in the three-dimensional environment (e.g., displaying movement, deformation, and / or changes in visual characteristics of the user interface, virtual surfaces, user interface objects, and / or virtual scenery) according to input from sensors that detect movement of other people and objects and movement of the user, which may not qualify as recognized gestural input for triggering an associated action of the computer system.

[0129] In some embodiments, the three-dimensional environment visible through a viewport provided by the display generation components described herein is a virtual three-dimensional environment that includes virtual objects and content at different virtual positions within the three-dimensional environment, without a representation of the physical environment. In some embodiments, the three-dimensional environment is a mixed reality environment that displays virtual objects at different virtual positions within the three-dimensional environment constrained by one or more physical aspects of the physical environment (e.g., the position and orientation of walls, floors, surfaces, the direction of gravity, the time of day, and / or the spatial relationships between physical objects). In some embodiments, the three-dimensional environment is an augmented reality environment that includes a representation of the physical environment. In some embodiments, the representation of the physical environment includes respective representations of physical objects and surfaces at different positions within the three-dimensional environment, such that the spatial relationships between the different physical objects and surfaces in the physical environment are reflected by the spatial relationships between the representations of the physical objects and surfaces in the three-dimensional environment. In some embodiments, when virtual objects are positioned relative to the positions of the representations of the physical objects and surfaces in the three-dimensional environment, they appear to have corresponding spatial relationships with the physical objects and surfaces in the physical environment. In some embodiments, the computer system transitions between displaying different types of environments (e.g., transitioning between presenting computer-generated environments or experiences with different levels of immersion and / or adjusting the relative salience of audio / visual sensory inputs from virtual content and from representations of the physical environment) based on user input and / or contextual conditions.

[0130] In some embodiments, the display generating components include a pass-through portion through which a representation of the physical environment is displayed. In some embodiments, the pass-through portion of the display generating components is a transparent or translucent (e.g., see-through) portion of the display generating components that exposes at least a portion of the physical environment surrounding and within the user's field of view. For example, the pass-through portion is a translucent (e.g., less than 50%, 40%, 30%, 20%, 15%, 10%, or 5% opacity) or transparent portion of a head-mounted or head-up display, allowing a user to view the real world surrounding the user through it without removing or detaching from the head-mounted display. In some embodiments, the pass-through portion gradually transitions from translucent or transparent to fully opaque when displaying a virtual or mixed reality environment. In some embodiments, the pass-through portion of the display generating components displays a live feed of images or video of at least a portion of the physical environment captured by one or more cameras (e.g., rear-facing camera(s) of a mobile device or associated with a head-mounted display, or other cameras that provide image data to a computer system). In some embodiments, one or more cameras are aimed at a portion of the physical environment that is directly in front of the user (e.g., behind the display generating component, relative to the user of the display generating component). In some embodiments, one or more cameras are aimed at a portion of the physical environment that is not directly in front of the user (e.g., in a different physical environment, or to the side or behind the user).

[0131] In some embodiments, when displaying a virtual object in a position corresponding to the location of one or more physical objects in the physical environment (e.g., a position in a virtual reality environment, a mixed reality environment, or an augmented reality environment), at least a portion of the virtual object is displayed in place of (e.g., replaces) a portion of the camera's live view (e.g., a portion of the physical environment captured in the live view). In some embodiments, at least a portion of the virtual object and content is projected onto a physical surface or empty space in the physical environment and is visible through a pass-through portion of the display generation components (e.g., as part of the camera view of the physical environment or through a transparent or semi-transparent portion of the display generation components). In some embodiments, at least some of the virtual object and virtual content is displayed to overlay a portion of the display, blocking the view of at least a portion of the physical environment that is visible through the transparent or semi-transparent portion of the display generation components.

[0132] In some embodiments, the display generating component displays different views of the three-dimensional environment according to user input or movement to change the virtual position of the viewpoint of the currently displayed view of the three-dimensional environment relative to the three-dimensional environment. In some embodiments, when the three-dimensional environment is a virtual environment, the viewpoint moves according to a navigation or movement request (e.g., an air hand gesture and / or a gesture made by moving one part of a hand relative to another part of the hand) without requiring movement of the user's head, torso, and / or display generating component within the physical environment. In some embodiments, movement of the user's head and / or torso relative to the physical environment and / or movement of the display generating component or other location-sensing element of a computer system (e.g., by the user holding a display generating component or wearing an HMD) causes a corresponding movement of the viewpoint relative to the three-dimensional environment (e.g., with a corresponding change in direction, distance, speed, and / or orientation of movement), resulting in a corresponding change in the currently displayed view of the three-dimensional environment. In some embodiments, when a virtual object has a distinct spatial relationship to the viewpoint (e.g., is fixed or anchored to the viewpoint and / or viewport through which the three-dimensional environment is visible, and maintains its spatial relationship to the viewport), movement of the viewpoint relative to the three-dimensional environment will cause the virtual object to move relative to the three-dimensional environment while the position of the virtual object within the viewpoint and / or viewport is maintained (e.g., the virtual object is said to be head-locked). In some embodiments, the virtual object is body-locked to the user, moving relative to the three-dimensional environment as the user moves as a whole within the physical environment (e.g., carrying or wearing the display generating components and / or other location sensing components of the computer system), but does not move within the three-dimensional environment solely in response to movement of the user's head (e.g., the display generating components and / or other location sensing components of the computer system rotating around the user's fixed location within the physical environment).In some embodiments, the virtual object is optionally locked to another part of the user, such as the user's hand or the user's wrist, and moves within the three-dimensional environment in accordance with movements of that part of the user in the physical environment, maintaining a spatial relationship between the position of the virtual object in the three-dimensional environment and the virtual position of that part of the user. In some embodiments, the virtual object is locked to a portion of the field of view provided by the display generation component (e.g., a viewport through which the three-dimensional environment is visible, has a fixed spatial relationship to the viewport, and / or has a fixed spatial relationship to the user's viewpoint), and moves within the three-dimensional environment in accordance with movements of the field of view within the viewport, regardless of user movements that do not cause a change of the field of view within the viewport.

[0133] In some embodiments, as shown in FIGS. 7A-7X, the view of the three-dimensional environment sometimes does not include representation(s) of the user's hand(s), arm(s), and / or wrist(s). In some embodiments, representation(s) of the user's hand(s), arm(s), and / or wrist(s) are included in the view of the three-dimensional environment. In some embodiments, representation(s) of the user's hand(s), arm(s), and / or wrist(s) are included in the view of the three-dimensional environment as part of a representation of the physical environment provided via a display generation component. In some embodiments, the representations are not part of the representation of the physical environment but are captured separately (e.g., by one or more cameras pointing at the user's hand(s), arm(s), and wrist(s)) and displayed within the three-dimensional environment independently of the currently displayed view of the three-dimensional environment. In some embodiments, the representation(s) include a stylized version of the arm(s), wrist(s), and / or hand(s) based on camera images captured by one or more cameras of the computer system(s) or information captured by various sensors. In some embodiments, the representation(s) replace the display of, overlap with, or block the view of a portion of the representation of the physical environment. In some embodiments, if the display generation component does not provide a view of the physical environment but provides a completely virtual environment (e.g., no camera view or transparent portions), a real-time visual representation (e.g., a stylized representation or segmented camera image) of one or both of the user's arms, wrists, and / or hands is optionally still displayed in the virtual environment. In some embodiments, if a representation of the user's hand is not provided within the view of the three-dimensional environment, a position corresponding to the user's hand is optionally indicated within the three-dimensional environment, for example, by the changing appearance (e.g., through changes in translucency and / or simulated reflectivity) of virtual content at a position in the three-dimensional environment that corresponds to the location of the user's hand in the physical environment.In some embodiments, a representation of the user's hand or wrist is outside the currently displayed view of the three-dimensional environment while a virtual position in the three-dimensional environment corresponding to the location of the user's hand or wrist is outside the current field of view provided via the display generation component, and the representation of the user's hand or wrist is made visible within the view of the three-dimensional environment in response to the virtual position corresponding to the location of the user's hand or wrist being moved within the current field of view due to movement of the display generation component, the user's hand or wrist, the user's head, and / or the user as a whole.

[0134] 7A-7K illustrate examples of displaying multiple affordances for accessing system functionality of a computer system in response to detecting a first gaze input directed toward a first user interface object that satisfies an attention criterion for the first user interface object. FIG. 8 is a flow diagram of an example method 8000 for displaying multiple affordances for accessing system functionality of a computer system in response to detecting a first gaze input directed toward a user interface object that satisfies an attention criterion for the first user interface object. The user interfaces of FIGS. 7A-7K are used to illustrate processes described below, including the process of FIG. 8.

[0135] FIG. 7A illustrates a physical environment 7000 including a user 7002 interacting with a computer system 7100. The user 7002 has two hands, hand 7020 and hand 7022. The user's left arm 7028, connected to the user's left hand 7020, is also shown. The physical environment 7000 includes a physical object 7014 and physical walls 7004 and 7006. The physical environment 7000 further includes a physical floor 7008. As shown in the examples of FIGS. 7A-7X, the display generating component of the computer system 7100 is a touchscreen held by the user 7002. In some embodiments, the display generating component of the computer system 7100 is a head-mounted display worn on the head of the user 7002 (e.g., what is shown in FIGS. 7A-7X as being visible through the display generating component of the computer system 7100 corresponds to the field of view of the user 7002 when wearing the head-mounted display). In some embodiments, the display generation component is a standalone display, a projector, or another type of display. In some embodiments, the computer system communicates with one or more input devices, including cameras or other sensors and input devices, that detect the movement of a user's hand(s), the movement of the user's entire body, and / or the movement of the user's head in the physical environment. In some embodiments, the one or more input devices detect the movement of the user's hand(s), face, and / or entire body, as well as their current posture, orientation, and position. In some embodiments, user input is detected via a touch-sensitive surface or touchscreen. In some embodiments, the one or more input devices include an eye-tracking component that detects the location and movement of the user's gaze. In some embodiments, the display generation component, and optionally the one or more input devices and the computer system, are part of a head-mounted device that moves and rotates with the user's head in the physical environment, changing the user's viewpoint within the three-dimensional environment provided via the display generation component.In some embodiments, the display generating components are head-up displays that do not move or rotate as a whole with the user's head or body, but optionally change the user's viewpoint within the three-dimensional environment according to movement of the user's head or body relative to the display generating components. In some embodiments, the display generating components are optionally moved and rotated by the user's hands relative to the physical environment or relative to the user's head, changing the user's viewpoint within the three-dimensional environment according to movement of the display generating components relative to the user's head or face or relative to the physical environment.

[0136] 7B illustrates a first view of a three-dimensional environment (e.g., a virtual three-dimensional environment, an augmented reality environment, a pass-through view of a physical environment, or a camera view of a physical environment) visible to a user 7002 via a computer system 7100, including an indicator 7010 of a system function menu. For example, the indicator 7010 is, according to some embodiments, a dot, graphic object, or other type of indication of a responsive area for triggering display of a system function menu including affordances corresponding to one or more system functions. The view of the three-dimensional environment illustrated in FIG. 7B is visible to a user 7002 via a computer system 7100 in accordance with the user 7002 being at a location 7026-a within the physical environment 7000. In some embodiments, the three-dimensional environment is a virtual three-dimensional environment without a representation of the physical environment 7000. In some embodiments, the three-dimensional environment is a mixed reality environment, which is a virtual environment augmented by sensor data corresponding to the physical environment. In some embodiments, the three-dimensional environment is an augmented reality environment that includes one or more virtual objects and a representation of at least a portion of the physical environment (e.g., representations of walls 7004', 7006', representations of floors 7008', and / or representations of physical objects 7014'). For example, in some embodiments, the representation of the physical environment includes a camera view of the physical environment. In some embodiments, the representation of the physical environment includes a view of the physical environment through a transparent or semi-transparent portion of the computer system or the first display generating component.

[0137] In some embodiments, the system function menu indicator 7010 is displayed in a peripheral region (e.g., within a threshold distance of the edge (e.g., 0.5 mm, 1 cm, 2 cm, 5 cm, or any threshold distance between 0 and 5 cm)) of the viewport provided by the first display generating component (e.g., relative to the field of view of a user using the first display generating component) through which the three-dimensional environment is visible. As shown in FIG. 7B , the system function menu indicator 7010 is displayed in a peripheral region at the top edge of the display of the computer system 7100. In embodiments where the display generating component of the computer system 7100 is a head-mounted display, the system function menu indicator 7010 is displayed in a peripheral region of the field of view of the user's eyes while viewing the three-dimensional environment through the display generating component. In some embodiments, the system function menu indicator 7010 has a default appearance (e.g., a gray system function menu indicator). In some embodiments, the appearance of the system function menu indicator 7010 changes in response to one or more sets of criteria (e.g., in response to a determination that a first event of a first notification satisfies a timing criterion, the system function menu indicator 7010 has a first appearance (e.g., as described in further detail below with reference to Figures 7L-7Q), and / or in response to a determination that there is a request for the computer system to join a first communication session that satisfies a timing criterion (e.g., as described in further detail below with reference to Figures 7R-7X). 7B , for example, system function menu indicator 7010 has an appearance based on the appearance of wall 7004′ (e.g., “below” or “behind” system function menu indicator 7010 in the three-dimensional environment). In some embodiments, system function menu indicator 7010 is translucent or otherwise has an appearance that is based at least in part on a portion of the three-dimensional environment in which system function menu indicator 7010 is displayed (e.g., based on a representation of the surrounding physical environment (e.g., real-world content) and / or computer-generated virtual content). In FIG. 7B , for example, system function menu indicator 7010 has an appearance that is based on the appearance of wall 7004′ (e.g., “below” or “behind” system function menu indicator 7010 in the three-dimensional environment).

[0138] In some embodiments, the system function menu indicator 7010 remains displayed even when the user interacts with other user interfaces, user interface objects, and / or user interface elements within the three-dimensional environment. For example, the system function menu indicator 7010 remains displayed even when the user's attention is directed to the virtual object 7012. The user can interact with or manipulate the virtual object 7012 (e.g., using the user's gaze, air gestures, and / or verbal input), and the computer system 7100 continues to display the system function menu indicator 7010. In some embodiments, the system function menu indicator 7010 is visually de-emphasized (e.g., dimmed and / or blurred) when the user interacts with other user interfaces, user interface objects, and / or user interface elements (e.g., to avoid distracting the user while the user's attention (e.g., gaze) is directed to other user interface elements).

[0139] In some embodiments, system function menu indicator 7010 is displayed while the user's attention meets the proximity criterion for system function menu indicator 7010, and system function menu indicator 7010 is no longer displayed in response to detecting that the user's attention no longer meets the proximity criterion for system function menu indicator 7010. For example, if the user's attention moves to the center of a display generating component of computer system 7100, computer system 7100 ceases displaying system function menu indicator 7010. In some embodiments, after ceasing to display system function menu indicator 7010, system function menu indicator 7010 is re-displayed in response to the user's attention again meeting the proximity criterion (e.g., in response to detecting that the user's attention has returned to a location near system function menu indicator 7010 (e.g., as shown in FIG. 7D )).

[0140] In Figure 7C, user 7002 has moved from a first location 7026-a (shown in Figure 7B) to a new location 7026-b in physical environment 7000. As shown in Figure 7C, a second view of the three-dimensional environment reflecting user 7002's new location is visible via computer system 7100. For example, virtual object 7012 (e.g., a virtual ball) is shown in a different position (e.g., shifted to the left relative to computer system 7100 in Figure 7B), and object 7014' (e.g., a representation of physical object 7014) is now visible in its entirety. In contrast to virtual object 7012 and object 7014', indicator 7010 of the system function menu maintains the same spatial relationship to the user's viewpoint (e.g., remains in the same position on the screen of a display generating component, a viewport through which the three-dimensional environment is visible, maintains the same spatial relationship to the viewport, and / or maintains the same position in the user's field of view via a head-mounted display, also referred to as "viewpoint lock"). In some embodiments, system function menu indicator 7010 exhibits "lazy follow" behavior. For example, location 7016 in Figure 7C reflects the previous position (in Figure 7B) of system function menu indicator 7010 within the three-dimensional environment, and location 7018 reflects an intermediate position of system function menu indicator 7010 (e.g., as user 7002 moves from location 7026-a to new location 7026-b, system function menu indicator 7010 is displayed moving from location 7016 to the location of system function menu indicator 7010 in Figure 7C more slowly than the movement of the user's viewpoint).

[0141] In some embodiments, the system function menu indicator 7010 changes appearance as the system function menu indicator 7010 moves from location 7016 to location 7018 and / or from location 7018 to the final position shown in Figure 7C. In some embodiments, the system function menu indicator 7010 fades out, becomes blurred, or is otherwise visually obscured as the system function menu indicator 7010 moves from location 7016 to location 7018 and / or from location 7018 to the position shown in Figure 7C. In some embodiments, the system function menu indicator 7010 disappears during user movement (e.g., moving the user's gaze point) and reappears (e.g., at the location shown in Figure 7C) after the user (e.g., the user's gaze point) has moved.

[0142] 7D shows a user's attention 7116 (e.g., sometimes referred to as a "user's gaze"). In FIG. 7E, the user's attention 7116 is directed to a system function menu indicator 7010 (e.g., the user gazes at the system function menu indicator 7010). If the user's 7002 gaze meets the attention criterion, the computer system 7100 displays a system function menu 7024 that includes one or more affordances for triggering a corresponding system function. In some embodiments, the user's gaze meets the attention criterion when the user gazes (e.g., the user's attention 7116 is directed at) the location of the system function menu indicator 7010 for a threshold amount of time (e.g., at least 0.1, 0.2, 0.5, 1, 2, 5, 10, 30, or 60 seconds). In some embodiments, the user's gaze meets the attention criterion when the user gazes (e.g., the user's attention 7116 is directed) within a first region within the view of the three-dimensional environment (e.g., a first region defined to be within or substantially within a visible region surrounding the system function menu indicator 7010) for a threshold amount of time (e.g., 0.1, 0.2, 0.5, 1, 2, 5, 10, 30, or 60 seconds). In some embodiments, the user's gaze meets the attention criterion when the user gazes (e.g., the user's attention 7116 is directed) at the system function menu indicator 7010 and places their hands in a specified configuration (e.g., a ready configuration) or performs a specified hand gesture (e.g., an air gesture such as an air tap or air pinch, or another selection input). The system function menu indicator 7010 may also be referred to as a "system control indicator" in that the system function menu indicator 7010 indicates a location within the user's field of view that the user can interact with (e.g., gaze at) to trigger the display of the system function menu 7024 (and / or the display of other user interface elements as described herein).In contrast, in FIG. 7D , the user's attention 7116 is not directed to the system function menu indicator 7010 (e.g., the user has not directed to the system function menu indicator 7010 recently enough and / or long enough to meet the attention criteria), and therefore the system function menu 7024 is not displayed.

[0143] The system function menu 7024 includes multiple affordances for accessing system functions of the computer system 7100. For example, as shown in FIG. 7E, the system function menu 7024 includes a home affordance 7124 (e.g., for accessing one or more applications of the computer system 7100, for starting a communication session with one or more contacts stored in the memory of the computer system 7100, and / or for starting the display of a virtual environment), a volume affordance 7038 for adjusting the volume settings of the computer system 7100, a search affordance 7042 for searching content (e.g., documents, photos, media files, and / or applications) stored on the computer system 7100 and / or content from the Internet (e.g., Internet search results), a notification affordance 7044 for displaying multiple notifications (e.g., notifications recently received or generated by the computer system 7100), a control affordance 7046 for accessing additional settings of the computer system 7100 (e.g., less frequently used settings not displayed in the system function menu 7024), and a virtual assistant affordance 7048 for invoking and accessing the functionality of a virtual assistant. In some embodiments, the system function menu 7024 includes different affordances than those shown in Figure 7E (e.g., additional affordances, fewer affordances, and / or some affordances replaced with other affordances associated with different system functions). In some embodiments, the system function menu 7024 is at least partially customizable such that a user can add one or more affordances to the system function menu 7024 and / or remove one or more of the affordances (e.g., shown in Figure 7E) from the system function menu 7024. User interaction with the affordances in the system function menu 7024 is described in further detail below with respect to Figures 7J and 7K.In some embodiments, the system function menu 7024 includes status information about the computer system 7100 (e.g., Wi-Fi connection status, cellular connection status, current time, and / or battery charge status) in addition to multiple affordances for accessing system functions of the computer system 7100.

[0144] In some embodiments, the system function menu 7024 is displayed within a threshold distance (e.g., within 0.5 cm, 1 cm, 2 cm, or 5 cm) of the system function menu indicator 7010. In some embodiments, the system function menu 7024 is displayed in a distinct spatial relationship (e.g., directly below, directly above, to the right, or to the left, or other desired spatial relationship) to the system function menu indicator 7010. In some embodiments, the system function menu 7024 is displayed over other visible user interfaces in a distinct view of the three-dimensional environment. For example, when an application launch user interface and / or application user interface is displayed (e.g., before displaying the system function menu 7024 and at least partially overlapping the area in which the system function menu 7024 is displayed), the system function menu 7024, when invoked, is displayed over at least a portion of the application launch user interface and / or application user interface. In some embodiments, the system function menu 7024 is displayed to appear closer to the user's viewpoint than the application launch user interface and / or application user interface (e.g., because the system function menu 7024 is displayed over at least a portion of the application launch user interface and / or application user interface and / or because the system function menu 7024 appears larger than the application launch user interface and / or application user interface).

[0145] In some embodiments, displaying the system function menu 7024 includes displaying an animated transition (e.g., of the system function menu 7024 appearing). For example, the animated transition may include an animation of the system function menu 7024 extending downward from the system function menu indicator 7010. Alternatively, or in addition, the animated transition may include an animation of the system function menu 7024 gradually appearing or fading. In some embodiments, the animated transition displayed depends on the position of the system function menu indicator 7010. For example, if the system function menu indicator 7010 is instead displayed near the left edge of the display generation component, the animated transition optionally includes an animation of the system function menu 7024 extending outward to the right from the system function menu indicator 7010. More generally, the animated transition optionally includes an animation of the system function menu 7024 extending from the system function menu indicator 7010 (e.g., toward the center of the view of the visible three-dimensional environment). In some embodiments, the system features menu indicator 7010 is visually de-emphasized (e.g., dimmed, faded, grayed out, and / or blurred) or not displayed while the system features menu 7024 is displayed, as indicated by the dotted outline of the system features menu indicator 7010 in FIG. 7E.

[0146] In some embodiments, as shown in Figure 7F, system function menu 7024 exhibits lazy-follow behavior. Specifically, Figure 7F illustrates an exemplary embodiment in which both system function menu 7024 and system function menu indicator 7010 exhibit lazy-follow behavior. In some embodiments, the lazy-follow behavior of system function menu indicator 7010 differs from the lazy-follow behavior of system function menu 7024. For example, Figure 7F illustrates that as system function menu indicator 7010 moves over time from indicator position 7030 to indicator position 7032 to the current position of system function menu indicator 7010 in Figure 7F, system function menu 7024 moves from system function menu position 7034 to system function menu position 7036 to the current position of system function menu 7024 in Figure 7F (e.g., over the same time period). Indicator positions 7030 and 7032 are closer to the current position of system function menu indicator 7010 in FIG. 7F than system function menu positions 7034 and 7036 are to the current position of system function menu 7024 in FIG. 7F, indicating that system function menu indicator 7010 follows the user's viewpoint more closely (e.g., more quickly) than system function menu 7024.

[0147] In some embodiments, the computer system 7100 ceases displaying the system function menu 7024 when (e.g., in response to detecting) the user's gaze no longer meets the attention criterion (e.g., the user's attention 7116 is no longer directed at the system function menu indicator 7010 or the system function menu 7024). In some embodiments, the system function menu 7024 may remain displayed for a period of time (e.g., a number of seconds, optionally taking into account lazy-following behavior to allow the system function menu 7024 to finish settling into a new viewpoint lock position) even after the user's gaze no longer meets the attention criterion, and may remain displayed if the user's gaze subsequently meets the attention criterion again (e.g., within a threshold amount of time that ceases to meet the attention criterion). For example, in embodiments in which the system function menu indicator 7010 exhibits lazy-following behavior, the system function menu 7024 may remain displayed when the user's viewpoint moves (e.g., when the user moves a touchscreen device or turns their head while wearing a head-mounted display), even if the user's gaze does not remain continuously directed at the system function menu indicator 7010 (e.g., the user's gaze does not accurately track the system function menu indicator 7010).

[0148] 7G illustrates a user's attention 7116 being directed to a volume affordance 7038 included in the system function menu 7024. In some embodiments, as shown in FIG. 7H , in response to detecting a user's attention 7116 being directed to the volume affordance 7038, the computer system 7100 alters the appearance of the volume affordance 7038 (e.g., highlighting the volume affordance 7038, increasing the thickness of the border of the volume affordance 7038, adding a selection outline to the volume affordance 7038, changing the color of the volume affordance 7038, and / or changing the size of the volume affordance 7038) to indicate that the volume affordance 7038 has been selected for further user interaction. In some embodiments, the computer system 7100 alters the appearance of the volume affordance 7038 in response to detecting that the user's hands are in the ready state configuration. In some embodiments, the computer system 7100 changes the appearance of the volume affordance 7038 in response to detecting both that the user's attention 7116 is directed toward the volume affordance 7038 and that the user's hands are in the ready state configuration. In some embodiments, the computer system 7100 does not change the appearance of the volume affordance 7038 (e.g., regardless of whether the user's attention 7116 is directed toward the volume affordance 7038 and / or the user's hands are in the ready state configuration).

[0149] In some embodiments, in response to detecting that the user's attention 7116 is directed to the volume affordance 7038, the computer system 7100 outputs additional content associated with the volume affordance 7038 (e.g., a description of the volume setting associated with the volume affordance 7038, instructions to adjust the volume setting associated with the volume affordance 7038, and / or the current value of the volume setting associated with the volume affordance 7038), which may be referred to as a "tooltip." In some embodiments, the tooltip is displayed after a delay (e.g., 1 second, 5 seconds, or any threshold time between 0 and 10 seconds) in response to detecting that the user's attention 7116 is directed to the volume affordance 7038. In some embodiments, the tooltip is displayed adjacent to (e.g., immediately above, below, to the left, or to the right of) the volume affordance 7038. In some embodiments, the tooltip is displayed partially overlaid on at least a portion of the volume affordance 7038 (and / or other affordances in the system functions menu 7024).

[0150] 7H also shows that in response to detecting an activation input directed toward volume affordance 7038, the computer system displays system space 7040. In some embodiments, detecting the activation input includes detecting that user's attention 7116 is directed toward volume affordance 7038. In some embodiments, detecting the activation input includes detecting an input performed by user 7002 (e.g., as shown by hand 7020 indicated with a moving arrow in FIG. 7H ) while volume affordance 7038 is selected (e.g., based on user's 7002's attention 7116 being directed toward volume affordance 7038). Examples of inputs performed by user 7002 include an air gesture (e.g., an air pinch gesture or an air tap gesture), a tap gesture on a touch-sensitive surface, a button press or other switch input, and / or a voice command. Because the activation input was directed to volume affordance 7038, system space 7040 is a system space for adjusting the volume setting of computer system 7100. In some embodiments, the system space 7040 displayed changes depending on the particular affordance associated with system space 7040 that was activated from the system functions menu 7024. For example, if the user's attention 7116 had instead been directed to control affordance 7046, system space 7040 would be a system space having a control panel user interface rather than a system space for adjusting the volume setting of computer system 7100. Examples of different system spaces displayed in response to activation of different affordances within system functions menu 7024 are described in more detail herein with reference to FIG. 7K.In some embodiments, the system space 7040 or additional controls displayed based on interaction with the system function menu are displayed in a distinct spatial location relative to the system function menu (e.g., to the left, right, above, or below the system function menu), and optionally adjacent to the system function menu (e.g., less than a threshold distance from the system function menu but not overlapping the system function menu, where the threshold distance is less than half, less than a quarter, or less than an eighth of the height and / or width of the system function menu).

[0151] In some embodiments, the system space 7040 remains displayed while the user's attention is directed to the system space 7040, the volume affordance 7038, or the system function menu indicator 7010. In some embodiments, the system space 7040 disappears in response to the user's attention 7116 moving away from the volume affordance 7038 or the system space 7040. In some embodiments, system space 7040 is hidden for a threshold amount of time (e.g., 0.1, 0.2, 0.5, 1, 2, 5, 10, 30, or 60 seconds) after the user's attention moves away from volume affordance 7038 or system space 7040 (e.g., for less than the threshold amount of time if the user did not intend to dismiss system space 7040, to avoid disappearing system space 7040 if, for example, the user becomes temporarily distracted, or to take hardware limitations into account (e.g., the camera of computer system 7100 temporarily loses the user's focus due to camera movement and / or changes in ambient lighting)).

[0152] In some embodiments, if system space 7040 is already being displayed (e.g., in response to detecting an activation input directed to volume affordance 7038) and computer system 7100 detects that the user's attention has shifted to another affordance (e.g., control affordance 7046 or any other affordance in system function menu 7024), computer system 7100 ceases displaying system space 7040 and displays a new system space for the other affordance (and optionally replaces the display of system space 7040 with the system space for the other affordance). In some embodiments, the system space for the other affordance is displayed in response to another activation input while the user's attention is directed to the other affordance.

[0153] In some embodiments, in response to detecting the user's attention being directed to the system functions menu 7024 while the system space 7040 is displayed, the system space 7040 is visually de-emphasized (e.g., dimmed, faded, and / or blurred). In response to detecting the user's attention being directed to the system space 7040 while the system space 7040 is displayed, the system functions menu 7024 is visually de-emphasized (and, optionally, the system space 7040 is no longer visually de-emphasized). In some embodiments, the system functions menu indicator 7010 is visually de-emphasized (e.g., dimmed, faded, and / or blurred) or is not displayed when the user 7002 is gazing at or interacting with the system functions menu 7024 or the system space 7040.

[0154] In some scenarios, computer system 7100 displays an application launch user interface (e.g., a home user interface that optionally includes one or more affordances that each correspond to one or more applications that may be launched on computer system 7100). In some embodiments, system functions menu indicator 7010 is displayed while the application launch user interface is displayed, and the application launch user interface remains displayed while system functions menu 7024 is displayed (e.g., before displaying system space 7040) in response to user interaction with system functions menu indicator 7010 as described herein. In some such embodiments, in response to detecting an activation input directed at volume affordance 7038, computer system 7100 replaces the display of the application launch user interface with a display of system space 7040 (e.g., by ceasing display of the application launch user interface and displaying system space 7040), as described herein with reference to FIG. 7H .

[0155] In some scenarios, the computer system 7100 displays the application user interface (e.g., simultaneously with the system function menu indicator 7010 and / or the system function menu 7024) before displaying the system space 7040. In response to detecting an activation input directed at the volume affordance 7038, the computer system 7100 displays the system space 7040 superimposed on at least a portion of the application user interface.

[0156] 7I , in response to detecting an interaction input (e.g., a gaze input, a hand gesture, or a combination of gaze and hand gestures) directed toward the system space 7040, particularly the slider, the computer system 7100 adjusts the volume of the computer system 7100 according to the movement of the interaction input. In some embodiments, the interaction input includes a gaze input (e.g., as the user's gaze shifts to the right, the volume level of the computer system 7100 increases). In some embodiments, the interaction input includes the user's gaze in conjunction with an air gesture (e.g., a pinch, or a pinch-and-drag). In some embodiments, the volume of the computer system 7100 is adjusted according to the movement of a hand gesture (e.g., a drag gesture or a swipe gesture) of the user's hand 7020. In some embodiments, a first air gesture (e.g., an air pinch gesture or an air tap gesture) activates the volume affordance 7038, and a second air gesture (e.g., a second air pinch gesture or an air tap gesture combined with a change in the position of the user's hand 7020 from a first position to a second position) adjusts a slider in system space 7040. In some embodiments, while the user maintains the first air gesture that activates the volume affordance 7038, the change in the position of the user's hand 7020 adjusts the slider in system space 7040.

[0157] In some embodiments, the system space 7040 includes multiple sliders for adjusting the volume of the computer system 7100. For example, the system space 7040 includes a first slider for adjusting the volume associated with an application (e.g., the volume of content or media within the application user interface or the volume of notifications associated with the application), a second slider for adjusting the volume associated with people / contacts (e.g., the volume of audio calls, video calls, and AR / VR communication sessions with other users), and a third slider for adjusting the volume associated with the environment (e.g., the volume of an AR or VR experience). In some embodiments, the computer system 7100 determines an active context (e.g., an application user interface is displayed and / or the user's attention is directed to the application user interface, there is an active communication session, and / or an AR or VR experience is active) and displays a single slider for adjusting the volume of the active context. In some embodiments, the computer system 7100 determines that no contexts are active (e.g., no application user interface is displayed, no communication session is active, and no AR / VR experience is active) and displays multiple sliders for adjusting the volume of different contexts (e.g., the three contexts described above).

[0158] Figure 7J illustrates user interactions (e.g., a user performing a distinct activation input, such as by gazing and / or performing a gesture) directed at different affordances within system function menu 7024. Figure 7K illustrates exemplary system spaces (e.g., user interfaces) associated with and displayed in response to activation of affordances within system function menu 7024. In some embodiments, distinct system spaces are displayed in response to detecting that a user's attention is directed to a distinct affordance of multiple affordances within system function menu 7024 (e.g., optionally in combination with air gestures and / or verbal input).

[0159] 7K(a) illustrates a system space 7040 associated with a volume affordance 7038 and displayed in response to detecting an activation input directed toward the volume affordance 7038, as described herein with reference to FIGS. 7H-7I. While FIG. 7K(a) illustrates a single slider (e.g., for adjusting the volume level of the computer system 7100), in some embodiments, the system space 7040 includes additional sliders for adjusting related settings of the computer system 7100 (e.g., equalizer controls, separate volume controls for two or more speakers of the computer system 7100, and / or spatial audio controls). In some embodiments, the system space 7040 includes one or more dials, sliders, and / or buttons for adjusting settings of the computer system 7100 (e.g., in addition to and / or instead of the single slider illustrated in FIG. 7K(a)). In some embodiments, the system space 7054 or additional controls displayed based on interaction with the system function menu are displayed in a distinct spatial location relative to the system function menu (e.g., to the left, right, above, or below the system function menu), and optionally adjacent to the system function menu (e.g., less than a threshold distance from the system function menu but not overlapping the system function menu, where the threshold distance is less than half, less than a quarter, or less than an eighth of the height and / or width of the system function menu).

[0160] 7K(b) illustrates a system space 7050 that is displayed in response to detecting an activation input directed at the search affordance 7042 and includes a text field for text entry. In some embodiments, the text field of the system space 7050 displays the text of a search term or search query entered by the user, such as text associated with (e.g., transcribed from) detected verbal input from the user (e.g., as indicated by the speech bubble with the term "weather" in FIG. 7K(b)). In some embodiments, the search affordance 7042 provides visual feedback when the user 7002 is speaking (e.g., as indicated by the dotted circle around the search affordance 7042 in FIG. 7K(b)). In some embodiments, the visual feedback varies based on at least one characteristic (e.g., volume, rate, and / or length) of the verbal input (e.g., the dotted circle in FIG. 7K(b) changes size according to the volume of the detected verbal input). In some embodiments, the system space 7050 or additional controls displayed based on interaction with the system function menu are displayed in a distinct spatial location relative to the system function menu (e.g., to the left, right, above, or below the system function menu), and optionally adjacent to the system function menu (e.g., less than a threshold distance from the system function menu but not overlapping the system function menu, where the threshold distance is less than half, less than a quarter, or less than an eighth of the height and / or width of the system function menu).

[0161] In some embodiments, the text field of the system space 7050 updates in real time (e.g., as the user 7002 speaks). In some embodiments, the text field of the system space 7050 displays the text of the detected verbal input only after (e.g., in response to) detecting completion of the verbal input (and optionally after detecting that the user 7002 has stopped speaking for a threshold amount of time). In some embodiments, in response to detecting (e.g., completion of) the verbal input, the computer system 7100 automatically performs one or more functions associated with the verbal input (e.g., an internet search, an application search, a document or file search, or other content search). In some embodiments, the computer system 7100 performs one or more functions associated with the verbal input in response to detecting a first portion of the verbal input, and continues to perform the one or more functions while the verbal input continues (e.g., the search is continually updated as additional portions of the verbal input are detected). For example, the computer system 7100 performs a search function in response to detecting verbal input (e.g., presenting search results for the word "weather" in FIG. 7K(b)), and continues to update the search results as the verbal input continues (e.g., as the verbal input continues to add the word "Cupertino," the computer system 7100 presents updated search results for the term "weather in Cupertino").

[0162] 7K(c) illustrates system space 7052, a notification center that is displayed in response to detecting an activation input directed at notification affordance 7044. In some embodiments, system space 7052 includes multiple notifications (e.g., recently generated or received notifications). In some embodiments, the notifications that appear in system space 7052 can be configured by the user. For example, a user can configure system space 7052 to display only notifications within a particular amount of time (e.g., the past 30 minutes, the past hour, or the past 12 hours), a user can configure system space 7052 to display only notifications from selected applications (e.g., allowing notifications from messaging and / or email applications to display while suppressing notifications from other applications), and / or a user can configure how notifications in system space 7052 are displayed (e.g., grouped by application, grouped by contact, and / or grouped by a particular time window (e.g., received between 9:00 AM and 5:00 PM)). In some embodiments, the system space 7052 or additional controls displayed based on interaction with the system function menu are displayed in a distinct spatial location relative to the system function menu (e.g., to the left, right, above, or below the system function menu), and optionally adjacent to the system function menu (e.g., less than a threshold distance from the system function menu but not overlapping the system function menu, where the threshold distance is less than half, less than a quarter, or less than an eighth of the height and / or width of the system function menu).

[0163] 7K(d) illustrates system space 7054, a control panel that is displayed in response to detecting an activation input directed at control affordance 7046. In some embodiments, system space 7054 includes one or more affordances, such as sliders, buttons, dials, toggles, and / or other controls, for adjusting additional system settings of computer system 7100 (e.g., additional system settings that do not appear in system functions menu 7024 itself). In some embodiments, system space 7054 includes an affordance for transitioning computer system 7100 into airplane mode, an affordance for enabling or disabling cellular functionality of computer system 7100, an affordance for enabling or disabling Wi-Fi functionality of computer system 7100, and / or an affordance for enabling or disabling Bluetooth functionality of computer system 7100. In some embodiments, system space 7054 includes a slider for adjusting the brightness of the display of computer system 7100. In some embodiments, system space 7054 includes one or more controls associated with hardware functions (e.g., flashlight and / or camera functions) of computer system 7100 and / or one or more controls associated with software functions (e.g., alarm, timer, clock, and / or calculator functions) of computer system 7100. In some embodiments, system space 7054 includes one or more affordances for controlling system settings of computer system 7100 that are also accessible using another affordance in system functions menu 7024. For example, system space 7054 optionally includes a slider for adjusting the output volume level of computer system 7100, similar to the slider in system space 7040 that can also be accessed using the volume affordance 7038 in system functions menu 7024 (as described herein with reference to FIGS. 7H-7I and 7K(a)).In some embodiments, the system space 7054 or additional controls displayed based on interaction with the system function menu are displayed in a distinct spatial location relative to the system function menu (e.g., to the left, right, above, or below the system function menu), and optionally adjacent to the system function menu (e.g., less than a threshold distance from the system function menu but not overlapping the system function menu, where the threshold distance is less than half, less than a quarter, or less than an eighth of the height and / or width of the system function menu).

[0164] In some embodiments, for individual affordances within the system function menu 7024, the system space is not displayed in response to an activation input directed to the individual affordance. For example, as shown in FIG. 7K(e), the computer system 7100 does not display the system space associated with the virtual assistant affordance 7048. In some embodiments, instead of displaying the system space associated with the virtual assistant affordance 7048, the computer system 7100 displays visual feedback to visually emphasize the virtual assistant affordance 7048 upon activation, for example, by highlighting the affordance and displaying, enlarging, and / or animating a selection outline around it. In some embodiments, the computer system 7100 displays visual feedback indicating that a verbal input to the virtual assistant has been detected, as shown by the dotted circle around the virtual assistant affordance 7048 in FIG. 7K(e), to indicate the detection of a voice command indicated by a speech bubble with the phrase "Call John Smith". In some embodiments, in response to detecting completion of the verbal input, the virtual assistant associated with virtual assistant affordance 7048 automatically performs one or more functions associated with the verbal input (e.g., executes a voice command).

[0165] In some embodiments, a system space (e.g., one of the system spaces shown in FIGS. 7K(a)-7K(d)) displayed in response to activation of an affordance within the system function menu 7024 is displayed over at least a portion of the system function menu 7024 (e.g., to give focus to the system space and increase its visibility). In some embodiments, the computer system 7100 displays an animated transition of the invoked system space (e.g., one of the system spaces shown in FIGS. 7K(a)-7K(d)) extending outward (e.g., downward, according to the example of FIG. 7J ) from the system function menu 7024, or more specifically, from the associated affordance within the system function menu 7024 that was activated to invoke the system space. For example, the computer system 7100 displays an animated transition of the system space 7040 extending from the volume affordance 7038 to cover at least a portion of the system function menu 7024.

[0166] Additional discussion regarding FIGS. 7A-7K is provided below with reference to method 8000 described with respect to FIGS. 7A-7K, among other figures and methods described herein.

[0167] 7L-7Q illustrate examples of displaying content associated with a first notification in response to detecting a first gaze input directed at a first user interface object in accordance with a determination that a first event related to the first notification satisfies a timing criterion. FIG. 9 is a flow diagram of an example method 9000 for displaying content associated with a first notification in response to detecting a first gaze input directed at a first user interface object in accordance with a determination that a first event related to the first notification satisfies a timing criterion. The user interfaces of FIGS. 7L-7Q are used to illustrate processes described below, including the process of FIG. 9.

[0168] As shown in the examples of FIGS. 7L-7Q, content visible through the display generating components of computer system 7100 is displayed on a touchscreen held by user 7002. In some embodiments, the display generating components of computer system 7100 are head-mounted displays worn on the head of user 7002 (e.g., what is shown in FIGS. 7L-7Q as visible through the display generating components of computer system 7100 corresponds to the field of view of user 7002 when wearing the head-mounted display). FIG. 7L illustrates an exemplary user interface object 7056 (e.g., notification indicator 7056) when there is a first event for a first notification that meets timing criteria (e.g., for notifying user 7002 about a notification recently received or generated by computer system 7100). For example, user interface object 7056 is displayed when computer system 7100 recently received a text message from another user (and optionally generated a notification corresponding to the recently received text message). 7L illustrates user interface object 7056 having a different appearance (e.g., a square) than system function menu indicator 7010 (e.g., as described above with reference to FIGS. 7A-7K). System function menu indicator 7010 (e.g., the first appearance, optionally the default appearance, of the system control indicator) is displayed when a notification has not been recently received (e.g., the first event for the first notification does not meet the timing criteria), and user interface object 7056 is displayed (e.g., as the second or alternate appearance of the system control indicator, instead of system function menu indicator 7010) when a notification has recently been received (e.g., the first event for the first notification meets the timing criteria). In some embodiments, user interface object 7056 has an appearance that indicates the application associated with the first notification (e.g., user interface object 7056 appears as the application icon of a messaging application in which a text message was recently received).In some such embodiments, the user interface object 7056 optionally includes different indications for different applications (e.g., if a first notification is associated with a first application, the user interface object 7056 has a first appearance that indicates the first application, and if the first notification is associated with a second application, the user interface object 7056 has a second appearance (different from the first appearance) that indicates the second application (different from the first application). In some embodiments, the user interface object 7056 is displayed with an appearance that indicates the application associated with the first notification, but after a threshold amount of time (e.g., 5 seconds, 10 seconds, 30 seconds, or 1 minute) has elapsed (e.g., from the occurrence, generation, or detection of a first event for the first notification), it ceases to be displayed with that appearance (e.g., is instead displayed with a default appearance, such as the appearance of the indicator 7010 in the system functions menu).

[0169] In some scenarios, the computer system displays other user interfaces within the three-dimensional environment, such as user interface 7058. In some scenarios, user interface 7058 is an application user interface. In some scenarios, user interface 7058 is an application launch user interface (e.g., a home user interface).

[0170] In response to detecting a first gaze input directed at user interface object 7056, as indicated by user attention 7116 directed at user interface object 7056 in FIG. 7M (e.g., in contrast to FIG. 7L , where user attention 7116 is instead directed at user interface object 7058), computer system 7100 displays notification content 7060 (e.g., message content for a notification of a received message in a messaging application and / or event information for a notification of a calendar event in a calendar application). In some embodiments, notification content 7060 includes additional information associated with the notification (e.g., a timestamp of the first event for the first notification and / or an application associated with the first notification). In some embodiments, notification content 7060 represents a preview or excerpt of the information associated with the received notification (e.g., showing a portion of a received text message or key event information for a received calendar invitation), and the user can further interact with notification content 7060 to view additional (e.g., more complete) information and / or additional context regarding the received notification, as described herein.

[0171] In some embodiments, notification content 7060 is displayed over a portion of user interface 7058 (and / or over other displayed user interfaces in the view of the three-dimensional environment). In some embodiments, notification content 7060 is displayed within a threshold distance (e.g., 0.5 cm, 1 cm, 2 cm, or 5 cm) of user interface object 7056. In some embodiments, notification content 7060 is displayed in a distinct spatial relationship (e.g., directly below, directly above, to the right, or to the left) with user interface object 7056. In some embodiments, notification content 7060 is displayed closer to the user's viewpoint than other user interface objects, such as user interface 7058 (e.g., to simulate being "on top" of other user interface elements relative to the user's viewpoint).

[0172] In some embodiments, the notification content 7060 is displayed simultaneously with the user interface object 7056. In some embodiments, the user interface object 7056 is visually de-highlighted or disappears when (and / or while) the notification content 7060 is displayed, as indicated by the dashed outline of the user interface object 7056 in FIG. 7M . In some embodiments, displaying the notification content 7060 includes displaying an animated transition (e.g., of the notification content 7060 appearing). For example, the animated transition may include an animation of the notification content 7060 extending downward from the user interface object 7056. Alternatively, or in addition, the animated transition may include an animation of the notification content 7060 gradually growing and / or gradually fading. In some embodiments, the animated transition that is displayed depends on the position of the user interface object 7056. For example, if user interface object 7056 is instead displayed near the left edge of the display generating component, the animated transition optionally includes an animation of notification content 7060 extending outward from user interface object 7056 toward the right edge of the display generating component.

[0173] 7M indicates that, in some embodiments, the system function menu 7024 is displayed simultaneously with notification content 7060 and, optionally, user interface object 7056 in response to detecting a first gaze input directed at user interface object 7056 (e.g., optionally, the system function menu 7024 is invoked using an input directed at a system control indicator, whether it has the appearance of system function menu indicator 7010 or the appearance of notification indicator 7056 as described above with reference to FIGS. 7A-7K). In some such embodiments, the notification content 7060 is displayed within a threshold distance (e.g., 0.5 cm, 1 cm, 2 cm, or 5 cm) of the system function menu 7024 (e.g., instead of within the threshold distance of the user interface object 7056, or in addition to being displayed within a greater threshold distance of the user interface object 7056 (e.g., for embodiments in which the system function menu 7024 is not displayed)). In some such embodiments, the notification content 7060 is optionally displayed in a distinct spatial relationship (e.g., directly below, directly above, to the right, or to the left) relative to the system functions menu 7024 and / or the user interface object 7056. In other embodiments, the notification content 7060 is displayed without displaying the system functions menu 7024 (e.g., as shown in FIG. 7N ). In some embodiments, the computer system 7100 initially displays the notification content 7060 in response to the first gaze input without displaying the system functions menu 7024. After displaying the notification content 7060 in response to the first gaze input, in response to detecting that the user's gaze remains directed at the user interface object 7056 (e.g., for a threshold amount of time (e.g., 0.1, 0.2, 0.5, 1, 2, 5, 10, 30, or 60 seconds), the computer system 7100 also displays the system functions menu 7024 (e.g., in addition to and simultaneously with the notification content 7060).In some such embodiments, the threshold distance and / or individual spatial relationship of the notification content 7060 relative to the user interface object 7056 changes (e.g., when the system function menu 7024 is added, the placement of the notification content 7060 is updated to accommodate any threshold distance and / or individual spatial relationship requirements of the system function menu 7024 relative to the user interface object 7056 and / or relative to the notification content 7060). For example, if notification content 7060 is initially displayed in response to gaze input directed at user interface object 7056 (e.g., meeting timing criteria for displaying notification content 7060), and notification content 7060 is positioned relative to user interface object 7056 as shown in FIG. 7N, and system function menu 7024 is added after additional timing criteria are met by gaze input directed at user interface object 7056, then notification content 7060 is optionally moved to be positioned relative to user interface object 7056 and system function menu 7024 as shown in FIG. 7M (e.g., corresponding to displaying system function menu 7024 closer to user interface object 7056 than notification content 7060 for user interface object 7056).

[0174] In some embodiments, the computer system 7100 switches between displaying the notification content 7060 and the system functions menu 7024 in response to successive gaze inputs directed at the user interface object 7056. In response to detecting a first gaze input directed at the user interface object 7056, the computer system 7100 displays the notification content 7060. After displaying the notification content 7060, the user moves their gaze away from the user interface object 7056 (and, optionally, the notification content 7060 is no longer displayed). After gazing away from the user interface object 7056, the user's gaze returns to the user interface object 7056, and in response, the computer system 7100 displays the system functions menu 7024 (e.g., without displaying the notification content 7060). If the user repeats this process (e.g., looks away from user interface object 7056, then looks back at user interface object 7056), computer system 7100 displays (e.g., re-displays) notification content 7060 (e.g., without displaying system functions menu 7024). This allows the user to switch between displaying notification content 7060 and system functions menu 7024 without cluttering the displayed user interface (e.g., having the simultaneous display of notification content 7060 and system functions menu 7024 occupy too much of the user's field of view).

[0175] In some embodiments, the computer system 7100 switches between displaying the notification content 7060 and the additional notification content (e.g., for a second event for a second notification that also meets the timing criteria). In some such embodiments, the computer 7100 optionally switches between displaying (e.g., cycles through these different user interfaces) the notification content 7060, the additional notification content, and the system function menu 7024 in response to successive gaze inputs to the user interface object 7056 (e.g., the displayed user interface may change each time the user looks away from and then back to the user interface object 7056).

[0176] In some embodiments, the user's attention 7116 is directed to notification content 7060, as shown in FIG. 7N. In some embodiments, the user performs a user input (e.g., an air gesture (e.g., an air tap or air pinch) or a touch input) while gazing at the notification content 7060. In some embodiments, the user input includes a pinch-and-drag gesture. In some embodiments, the computer system performs different functions depending on the characteristics of the user input (e.g., the direction, speed, and / or amount of movement of the drag portion of the pinch-and-drag gesture). For example, in response to a pinch-and-drag toward the user (e.g., toward the user's viewpoint), the computer system 7100 launches an application and displays an application user interface 7062 of the application associated with the notification, as shown in FIG. 7O. In another example, in response to a downward pinch and drag (e.g., toward a representation of floor 7008′ as shown in FIG. 7N, relative to the view displayed on the display generation component), computer system 7100 ceases displaying (e.g., erases) notification content 7060 (e.g., as shown when transitioning directly from FIG. 7N to FIG. 7P).

[0177] In some embodiments, the user interface objects 7056, notification content 7060, system function menu 7024, and / or application user interface 7062 follow (e.g., one or more are gaze-locked to) the user's 7002 gaze point as the user's 7002 gaze point moves (e.g., as the user moves a touchscreen device or turns their head while wearing a head-mounted display). In some embodiments, the follow behavior of the user interface objects 7056, notification content 7060, system function menu 7024, and / or application user interface 7062 is a lazy follow behavior. In some embodiments, the user interface objects 7056 have a lazy follow behavior. 7A-7K , the lazy-follow behavior of the system control indicator is the same regardless of whether the first event of the first notification satisfies the timing criterion, and thus regardless of whether the system control indicator has the appearance of the system function menu indicator 7010 or the appearance of the user interface object 7056. In some embodiments, the following behavior of the system function menu indicator 7010 (e.g., the default appearance of the first user interface object), which is optionally a lazy-follow behavior as described herein, differs from the following (e.g., lazy-follow) behavior of the user interface object 7056 (e.g., the user interface object 7056 that is displayed when the first event of the first notification satisfies the timing criterion follows the user's gaze more closely (or less closely) than the system function menu indicator 7010.

[0178] In some embodiments, user interface object 7056 has a different following (e.g., lazy follow) behavior than system functions menu 7024 (e.g., similar to how indicator 7010 of the system functions menu optionally has a different following behavior than system functions menu 7024, as described above and shown in FIG. 7F ). In some embodiments, system functions menu 7024 has a different following behavior than notification content 7060. In some embodiments, notification content 7060 has a different following behavior than application user interface 7062. In some embodiments, the following behavior of user interface object 7056 is different from the following behavior of notification content 7060. In some embodiments, user interface object 7056, notification content 7060, system functions menu 7024, and application user interface 7062 each have a separate following (e.g., lazy follow) behavior (e.g., with respect to each other's user interface elements that exhibit following behavior). Optionally, one user interface element (e.g., application user interface 7062) is world-locked and therefore exhibits a different following behavior (e.g., by not exhibiting gaze-following behavior) than another element that exhibits gaze-following behavior.

[0179] In some embodiments, the computer system 7100 ceases displaying the notification content 7060 when (e.g., in response to detecting) the user's attention 7116 is no longer directed to the user interface object 7056 (or the notification content 7060). In some embodiments, the notification content 7060 may remain displayed for a discrete period of time (e.g., a number of seconds, optionally accounting for lazy-following behavior) even after the user's attention 7116 is no longer directed to the user interface object 7056 (or the notification content 7060), and remains displayed if the user's attention 7116 is subsequently directed back to the user interface object 7056 (or the notification content 7060) (e.g., the discrete period of time is restarted when the user's attention 7116 returns to the user interface object 7056 before the expiration of the discrete period of time). In some such embodiments, if the computer system 7100 detects that the user's attention 7116 is no longer directed to the user interface object 7056 (or notification content 7060) and has not returned to the user interface object 7056 (or notification content 7060) within a discrete period of time, the notification content 7060 is no longer displayed. In some embodiments, after the notification content 7060 is no longer displayed, the computer system 7100 re-displays the notification content 7060 in response to the user's attention 7116 subsequently being directed to the user interface object 7056 (e.g., while a first event for a first notification meets the timing criteria).

[0180] For example, in embodiments in which user interface object 7056 (and / or notification content 7060) exhibits lazy follow behavior, notification content 7060 may remain displayed without the user's attention 7116 remaining continually directed at user interface object 7056 (or notification content 7060). This is advantageous because, for example, user's attention 7116 does not need to accurately track user interface object 7056 (or notification content 7060) while the user (and / or user's viewpoint) moves in order for notification content 7060 to remain displayed, thus preventing a situation in which user's attention 7116 moves away for too long, causing notification content 7060 to disappear and the user having to perform another gaze input directed at user interface object 7056 to redisplay notification content 7060.

[0181] After the first event for the first notification no longer meets the timing criteria (e.g., the notification is no longer considered recent enough), the user interface object 7056 reverts to its default appearance (e.g., as indicated by indicator 7010 in the system functions menu of Figures 7P and 7Q). Figure 7P shows an example transition from Figure 7L after a threshold amount of time has passed since the first event for the first notification occurred. As shown in FIG. 7Q, if the user's attention 7116 is directed to the system control indicator while it is displayed in its default appearance (e.g., the system control indicator appears as indicator 7010 in the system function menu), the computer system 7100 displays the system function menu 7024 (e.g., the computer system 7100 behaves as described above with reference to FIGS. 7A-7K) and does not display the notification content 7060 (e.g., as described above with reference to FIG. 7K(c), in some embodiments, the user can access content associated with the notification through notification affordance 7044 in the system function menu 7024, but the notification corresponding to the notification content 7060 is no longer up-to-date).

[0182] In some embodiments, the user interface object 7056 reverts to its default appearance (e.g., appears instead as indicator 7010 in the system functions menu of FIGS. 7P and 7Q) after the computer system 7100 displays the notification content 7060. In some embodiments, the user interface object 7056 reverts to its default appearance after the notification content 7060 is no longer displayed (e.g., the user dismisses the display of the notification content 7060). FIG. 7P also illustrates an exemplary transition from FIG. 7N in response to the user 7002 dismissing the notification content 7060.

[0183] Additional discussion regarding Figures 7L-7Q is provided below with reference to the method 9000 described with respect to Figures 7L-7Q, among other figures and methods described herein.

[0184] 7R-7X illustrate examples of displaying a first user interface including an affordance for joining a communication session. FIG. 9 is a flow diagram of an example method 9000 for displaying a first user interface including an affordance for joining a communication session. The user interfaces of FIGS. 7R-7X are used to illustrate processes described below, including the process of FIG. 9.

[0185] As shown in the examples of FIGS. 7R-7X, content visible through the display generating components of computer system 7100 is displayed on a touchscreen held by user 7002. In some embodiments, the display generating components of computer system 7100 are head-mounted displays worn on the head of user 7002 (e.g., what is shown in FIGS. 7R-7X as visible through the display generating components of computer system 7100 corresponds to the field of view of user 7002 when wearing the head-mounted display). FIG. 7R illustrates an exemplary user interface object 7064 (e.g., a communication session indicator) when there is a request for computer system 7100 to join a communication session that meets timing criteria. For example, user interface object 7064 is displayed in response to computer system 7100 receiving a request for computer system 7100 to join a communication session (e.g., a phone call, a video call, and / or a shared virtual experience). In some embodiments, a communication session request meets the timing criteria if less than a threshold amount of time TH1 (e.g., 5 seconds, 10 seconds, 20 seconds, 30 seconds, 1 minute, 2 minutes, or any threshold time between 0 and 2 minutes, which may vary depending on the type of communication session being requested) has elapsed since the request was first received, and the request remains active (e.g., the initiating user has not canceled the request). Timer 7066-1 in FIG. 7R indicates time t=0, when the communication session request is received. FIG. 7R illustrates user interface object 7064 with a diamond shape to distinguish it from system function menu indicator 7010 (e.g., as described above with reference to FIGS. 7A-7K) and user interface object 7056 (e.g., as described above with reference to FIGS. 7L-7Q).User interface object 7064 represents an appearance (e.g., a third appearance) of a system control indicator that is different from system function menu indicator 7010 (e.g., a first, optionally default appearance) and user interface object 7056 (e.g., a second appearance).

[0186] In some embodiments, user interface object 7064 is displayed when a request for computer system 7100 to join a communication session satisfies a first timing criterion (e.g., the communication session request has been active for less than a threshold amount of time), user interface object 7056 is displayed when a first event for the first notification satisfies a second timing criterion (e.g., different from the first timing criterion) (e.g., a timing criterion described herein with reference to Figures 7L-7Q), and system functions menu indicator 7010 is displayed when there is neither a request for computer system 7100 to join a communication session that satisfies the first timing criterion nor a first event for the first notification that satisfies the second timing criterion. In some embodiments, if there is both a request for computer system 7100 to join a communication session that satisfies the first timing criterion and a first event for the first notification that satisfies the second timing criterion, user interface object 7064 is displayed (e.g., because the incoming communication session request is considered more urgent than the incoming notification). In some embodiments, user interface object 7056 is displayed instead. In some embodiments, a user can configure computer system 7100 to display either user interface object 7064 (e.g., to prioritize alerts for incoming communication session requests) or user interface object 7056 (e.g., to prioritize alerts for notifications) based on the user's preferences.

[0187] In some embodiments, user interface object 7064 has an appearance that includes an indication of an application associated with the request for computer system 7100 to join the communication session (e.g., user interface object 7064 appears as an application icon for the application associated with the communication session). In some such embodiments, user interface object 7064 optionally includes different indications for different types of communication sessions (e.g., phone calls, video calls, and / or shared virtual experiences). In some embodiments, user interface object 7064 has an appearance that indicates a user associated with the request for computer system 7100 to join the communication session (e.g., the user who initiated the request) (e.g., as the initiating user's name, initials, username, avatar, photo, etc.).

[0188] In some embodiments, following a determination that the request to the computer system 7100 to join the communication session meets the timing criteria, the user interface object 7064 has a different color (e.g., green or another color) than when the request to join the communication session no longer meets the timing criteria. In some embodiments, in addition to or instead of having a different color, the user interface object 7064 has a different shape (e.g., compared to the indicator 7010 of the system functions menu). In some embodiments, following a determination that the request to the computer system 7100 to join the communication session meets the timing criteria, the user interface object 7064 displays (e.g., is animated) an animation. For example, the user interface object 7064 bounces up and down, the border of the user interface object 7064 pulsates, the size of the user interface object 7064 changes, and / or the user interface object 7064 rotates. In some embodiments, the animation is displayed in combination with an audio output (e.g., a beep, a series of tones (e.g., optionally repeated), and / or a ringtone). In some embodiments, the animation is displayed without a corresponding audio output.

[0189] If user's attention 7116 is directed to user interface object 7064 while computer system 7100's request to join the communication session satisfies a timing criterion (e.g., as indicated by timer 7066-2 (FIG. 7S) indicating that the current time is before time threshold TH1), computer system 7100 displays incoming call user interface 7068 for joining the communication session, as shown in FIG. 7S. User interface 7068 includes an affordance for joining the communication session (e.g., as indicated by a "Join" affordance in user interface 7068) and, optionally, also includes an indication of a user associated with computer system 7100's request to join the communication session (e.g., the name and avatar of user "John Smith") and / or additional information about the communication session (e.g., the type of communication session, a list of one or more other users active in the communication session, and / or contact information associated with one or more other users active in the communication session).

[0190] In some embodiments, user interface 7068 is displayed within a threshold distance (e.g., 0.5 cm, 1 cm, 2 cm, or 5 cm) of user interface object 7064. In some embodiments, user interface 7068 is displayed in a distinct spatial relationship (e.g., directly below, directly above, to the right, to the left, or other desired spatial relationship) to user interface object 7064. In some embodiments, user interface 7068 is displayed over at least a portion of other visible user interfaces in a distinct view of the three-dimensional environment (e.g., as shown in FIG. 7S where user interface 7068 is displayed over a portion of user interface 7058).

[0191] The dashed outline of user interface object 7064 in Figure 7S indicates that, in some embodiments, user interface object 7064 remains displayed while user interface 7068 is displayed, while in some embodiments, user interface object 7064 is visually de-emphasized (e.g., faded, grayed out, blurred, and / or reduced in size) or disappears while user interface 7068 is displayed. Similarly, the dashed outline of system function menu 7024 in Figure 7S indicates that, in some embodiments, system function menu 7024 is displayed simultaneously with user interface 7068, optionally simultaneously with user interface object 7064, in response to detecting a first gaze input directed at user interface object 7064 (e.g., optionally, system function menu 7024 is invoked using an input directed at the system control indicator, whether it has the appearance of system function menu indicator 7010 as described above with reference to Figures 7A-7K or the appearance of user interface object 7064). In some such embodiments, user interface 7068 is displayed within a threshold distance (e.g., 0.5 cm, 1 cm, 2 cm, or 5 cm) of system function menu 7024 (e.g., instead of within the threshold distance of user interface object 7064, or in addition to being displayed within a greater threshold distance of user interface object 7064 (e.g., for embodiments in which system function menu 7024 is not displayed)). In some such embodiments, user interface 7068 is optionally displayed in a distinct spatial relationship (e.g., directly below, directly above, to the right, or to the left) to system function menu 7024 and / or user interface object 7064. In other embodiments, user interface 7068 is displayed without displaying system function menu 7024.In some embodiments, in response to user 7002's gaze on user interface object 7064, computer system 7100 first displays user interface 7068 without displaying system functions menu 7024. After displaying user interface 7068, in response to detecting that the user's attention 7116 remains directed at user interface object 7064 (e.g., for a threshold amount of time (e.g., 0.1, 0.2, 0.5, 1, 2, 5, 10, 30, or 60 seconds)), computer system 7100 also displays system functions menu 7024 (e.g., in addition to and simultaneously with user interface 7068). In some such embodiments, the threshold distance and / or individual spatial relationship of user interface 7068 to user interface object 7064 changes (e.g., when system function menu 7024 is added, the placement of user interface 7068 is updated to accommodate any threshold distance and / or spatial relationship requirements of system function menu 7024 to user interface object 7064 and / or to user interface 7068).

[0192] In some embodiments, displaying user interface 7068 includes displaying an animated transition (e.g., of user interface 7068 appearing). For example, the animated transition may include an animation of user interface 7068 extending downward from user interface object 7064. Alternatively, or in addition, the animated transition may include an animation of user interface 7068 gradually growing and / or gradually fading. In some embodiments, the animated transition depends on the position of user interface object 7064. For example, if user interface object 7064 is instead displayed near the left edge of the display generating component, the animated transition optionally includes an animation of user interface 7068 extending outward from user interface object 7064 toward the right edge of the display generating component.

[0193] In some embodiments, the user interface objects 7064, the system function menu 7024, and / or the user interface 7068 follow the viewpoint of the user 7002 as the viewpoint of the user 7002 moves (e.g., one or more are viewpoint locked). In some embodiments, the following behavior of the user interface objects 7064, the system function menu 7024, and / or the user interface 7068 is lazy following behavior. In some embodiments, the user interface objects 7064, the system function menu 7024, and / or the user interface 7068 exhibit different following (e.g., lazy following) behaviors from one another (e.g., following the user's viewpoint more or less closely than another user interface element).

[0194] In some embodiments, after displaying user interface 7068, computer system 7100 ceases displaying user interface 7068 in response to user 7002 dismissing user interface 7068 (e.g., by no longer gazing at user interface object 7064 or user interface 7068), or after displaying user interface 7068 for a threshold amount of time. After user interface 7068 is no longer displayed, user interface object 7064 optionally reverts to a default appearance (e.g., the appearance of system functions menu indicator 7010) to indicate that the user has viewed a request to join a communication session (e.g., FIG. 7V shows an illustrative transition from FIG. 7S). In some embodiments, if computer system 7100 was displaying user interface object 7064 with an appearance that indicated a user associated with a request to join a communication session (e.g., a user that initiated the request) (before attention 7116 was directed to user interface object 7064), when computer system 7100 ceases displaying user interface 7068, the default appearance of user interface object 7064 does not indicate the user associated with the request (e.g., user interface object 7064 returning to its default appearance includes user interface object 7064 ceasing to indicate a user that initiated the communication session request). In some embodiments, so long as the request to join a communication session meets the timing criteria, the user can cause user interface 7068 to be redisplayed by redirecting user's attention 7116 to user interface object 7064.

[0195] In some embodiments, if the user's attention 7116 is not directed to the user interface object 7064 and / or the timing criteria are no longer met (e.g., more than a threshold amount of time TH1 has elapsed since the request was first received) before the computer system 7100's request to join the communication session expires (e.g., before the initiating user cancels the communication session request), the computer system 7100 ceases displaying the user interface 7068 for joining the communication session (e.g., even in response to the user's attention 7116 being directed to the user interface object 7064). As shown in FIG. 7T, an exemplary transition from FIG. 7R in response to detecting user attention 7116 directed to user interface object 7064 after a threshold amount of time TH1 has elapsed since the communication session request was initially received (e.g., before a second threshold amount of time TH2 has elapsed since the communication session request expired), as indicated by timer 7066-3 indicating that the current time is after the threshold amount of time TH1, causes computer system 7100 to display missed call user interface 7070 for initiating a communication session (e.g., for computer system 7100 to call back the user associated with the initial request to join the communication session). In some embodiments, user interface 7070 is displayed pursuant to a determination that user's attention 7116 is directed to user interface object 7064 within a threshold amount of time (e.g., 5 seconds, 10 seconds, 20 seconds, 30 seconds, 60 seconds, or any threshold amount of time between 0 and 60 seconds) that computer system 7100 received a request to join a communication session (e.g., threshold TH2), but after a different threshold amount of time (e.g., threshold TH1) during which the incoming call can be answered (e.g., as shown in FIG. 7S, the incoming call user interface 7068 will be displayed).In some embodiments, if the user's attention 7116 is not directed to the user interface object 7064 within a threshold amount of time (e.g., threshold TH2), the user interface 7070 is not displayed even if the user subsequently directs the user's attention 7116 to the user interface object 7064. Those skilled in the art will readily appreciate that the time thresholds can be defined in a number of ways, such that a rapid interaction with user interface object 7064 results in the display of an incoming call user interface 7068, while a delayed interaction with user interface object 7064 results in the display of a missed call user interface 7070 (e.g., both time thresholds are measured relative to the time corresponding to receipt of the communication session request, time threshold TH2 occurs after time threshold TH1, or time threshold TH2 is measured relative to the time the communication session request becomes inactive (e.g., due to reaching time threshold TH1 or due to the requesting user canceling the request)), and optionally, as described in further detail herein, a further delayed interaction with user interface object 7064 after a return to the default appearance of system function menu indicator 7010 results in the display of system function menu 7024 without the incoming, missed call, or ongoing call user interfaces.

[0196] For example, if a communication session request to computer system 7100 lasts for one minute and user attention 7116 is directed to user interface object 7064 within that one minute, computer system 7100 displays user interface 7068 for joining the communication session (e.g., as shown in FIG. 7S). If user attention 7116 is not directed to user interface object 7064 within that one minute, the request expires (e.g., automatically times out, not necessarily due to the initiating user canceling the request). However, if user attention 7116 is directed to user interface object 7064 within 30 seconds after the request expires, computer system 7100 displays user interface 7070 for initiating a second communication session (e.g., for calling back a user who missed a previous request to join a communication session). If the user does not direct user attention 7116 to user interface object 7064 within 30 seconds after the initial request expires (e.g., if a total time of more than 1 minute and 30 seconds has elapsed since the initial request was received), computer system 7100 will not display user interface 7070 (e.g., even if user attention 7116 is directed to user interface object 7064), but instead will display system function menu 7024 accordingly (without displaying user interface 7068 or user interface 7070) if user attention 7116 is directed to user interface object 7064.

[0197] In the example shown in FIG. 7T , user interface 7070 includes an “INVITE” affordance (e.g., to call back the user who sent the initial communication session request and, optionally, invite one or more other users to join the new communication session) and an indication (e.g., the text “Missed Video Call”) that the request for computer system 7100 to join the communication session was not viewed in time (e.g., within a threshold amount of time TH1 from receiving the request). In some embodiments, user interface 7070 also includes an indication of the user associated with the missed request for computer system 7100 to join the communication session (e.g., the name and avatar of user “John Smith”) and / or additional information about the missed request (e.g., the type of communication session and / or contact information associated with one or more other users associated with the communication session for the missed request). In some embodiments, user interface 7070 is displayed concurrently with system functions menu 7024 and / or user interface object 7064 (e.g., as shown in FIG. 7T ). In some embodiments, the display characteristics of user interface 7070 (e.g., displayed location, spatial relationship to other user interface elements, displayed animation(s), and / or tracking behavior) are similar to the display characteristics of user interface 7068 described above.

[0198] 7U shows an exemplary transition from FIG. 7S. As shown in FIG. 7U, if the user activates the “Join” affordance in user interface 7068 (FIG. 7S), computer system 7100 displays call control user interface 7072. In some embodiments, if the user activates the “Invite” affordance in user interface 7070 (FIG. 7T), computer system 7100 displays call control user interface 7072 (e.g., even before another user has joined the communication session), and, optionally, user interface object 7064 has a color associated with an active communication session request that meets the timing criteria (e.g., user interface object 7064 is green), even if user 7002 initiated the communication session (as opposed to, e.g., receiving a request to join the communication session). In some embodiments, the same call control user interface 7072 is displayed regardless of how user 7002 joins the communication session (e.g., by joining via a request from another user or by initiating the communication session).

[0199] Figure 7U also shows an example transition from Figure 7T. In some embodiments, when user 7002 of computer system 7100 initiates a communication session (e.g., by activating the "Invite" affordance of user interface 7070 as shown in Figure 7T) and another user (e.g., another user who received a request to join the communication session when the "Invite" affordance was activated, e.g., a user with a failed call (Figure 7T)) joins the communication session, computer system 7100 displays a visual representation (e.g., avatar, profile picture) of the other user. In some embodiments, displaying the visual representation of the other user includes displaying an animated transition (e.g., the visual representation fades into view and / or the visual representation appears to extend from user interface object 7064, from user interface 7070, or from another displayed user interface element).

[0200] The call control user interface 7072 includes multiple affordances for accessing features of an active communication session. For example, the call control user interface 7072 includes any combination of messaging affordances (e.g., for launching a separate application (e.g., a text messaging application) for communicating with one or more other users in the communication session and / or for viewing previous communications (e.g., a conversation transcript) with one or more other users in the communication session), information affordances for displaying additional information about the communication session (e.g., a list of the users in the communication session and / or an indication of the duration of the communication session), a microphone affordance (e.g., for muting or unmuting user 7002 in the communication session), a session history affordance (e.g., for viewing shared content previously shared between one or more users in the communication session), a sharing affordance (e.g., for sharing content with other users in the communication session and / or for viewing one or more shared content items previously shared (e.g., with other users in the communication session)), and / or an exit affordance (e.g., labeled “Leave” for removing a user from the communication session and / or for ending the communication session for all users).

[0201] In some embodiments, the call control user interface 7072 is displayed simultaneously with the system features menu 7024 and / or user interface object 7064 (e.g., as shown in FIG. 7U). In some such embodiments, when the user's attention 7116 is directed to the call control user interface 7072, the system features menu 7024 (and / or user interface object 7064) is optionally visually de-emphasized (e.g., blurred or faded), while the call control user interface 7072 is displayed with a default visual emphasis. When the user's attention 7116 is directed to the system features menu 7024 (or user interface object 7064), the call control user interface 7072 is optionally visually de-emphasized (e.g., blurred or faded), and the system features menu 7024 (or user interface object 7064) is displayed with a default visual emphasis.

[0202] In some embodiments, the display characteristics of call control interface 7072 (e.g., displayed location, spatial relationship to other user interface elements, displayed animation(s), and / or follow or lazy follow behavior) are similar to the display characteristics of user interface 7068 and / or user interface 7070 described above.

[0203] In some embodiments, the call control user interface 7072 includes affordances for switching between different representations of one or more users in a communication session (e.g., a profile picture, a two-dimensional image of the user, the user's name, and / or the user's initials). In some embodiments, the affordances are used to switch between displaying a realistic likeness of the user (e.g., including an image of the user, a video or video stream of the user, and / or an avatar that looks like the user and / or is animated based on the user's movements, which may be two-dimensional or three-dimensional) and an abstract likeness or representation of the user (e.g., an image not based on the user's name, the user's initials, and / or the user's likeness). For example, if an individual user's avatar is displayed when the affordance for switching between the realistic and abstract portraits is activated, the individual user's avatar is replaced by the abstract portrait. If an abstract portrait is displayed when the affordance for switching between the realistic and abstract portraits is activated, the abstract portrait is replaced by the individual user's avatar. In some embodiments, the call control user interface 7072 includes affordances for switching between different visual representations of one or more users in a communication session (e.g., switching between one or more of an avatar, a three-dimensional character, an icon, a profile picture, the user's name, and the user's initials).

[0204] In some embodiments, the computer system 7100 ceases displaying the call control user interface 7072 when (e.g., in response to detecting) the user's attention 7116 is no longer directed to the user interface object 7064 (or the call control user interface 7072). In some embodiments, the call control user interface 7072 remains displayed for a discrete period of time (e.g., 1 second, 5 seconds, or a period that accounts for lazy follow behavior) even after the user's attention 7116 is no longer directed to the user interface object 7064 (or the call control user interface 7072), and remains displayed if the user's attention 7116 is subsequently directed back to the user interface object 7064 (or the call control user interface 7072) (e.g., the discrete period of time is restarted when the user's attention 7116 returns to the user interface object 7064 before the expiration of the discrete period of time). In some such embodiments, if the computer system 7100 detects that the user's attention 7116 is no longer directed to the user interface object 7064 (or the call control user interface 7072) and has not returned to the user interface object 7064 (or the user interface 7072) within a discrete period of time, the call control user interface 7072 is no longer displayed, and the user interface object 7064 remains displayed or is redisplayed if the user interface object 7072 was not displayed when the computer system 7100 ceased displaying the call control user interface 7064 (e.g., so that the call control user interface 7072 can be redisplayed when the user's attention 7116 is subsequently directed to the user interface object 7072).In some embodiments, after call control user interface 7072 has disappeared, if the user's attention 7116 is subsequently directed to user interface object 7064 while computer system 7100 is still in a communication session, computer system 7100 will accordingly re-display call control user interface 7072. While this behavior is described above with reference to call control user interface 7072, this behavior also pertains to user interface 7068 and / or user interface 7070, which may optionally be displayed simultaneously with or instead of call control user interface 7072.

[0205] In some embodiments, user interface object 7064, system functions menu 7024, incoming call user interface 7068, missed call user interface 7070, and / or call control user interface 7072 are head-locked virtual objects (e.g., viewpoint-locked virtual objects as described herein). In some embodiments, as the user's viewpoint changes (e.g., the user turns and / or moves to a new position within the three-dimensional environment such that the view of the three-dimensional environment changes), user interface object 7064 moves in conjunction with system functions menu 7024, incoming call user interface 7068, missed call user interface 7070, and / or call control user interface 7072, if displayed (e.g., thereby maintaining their respective required spatial relationships with user interface object 7064, if displayed, as described herein). In some embodiments, the system function menu 7024, the incoming call user interface 7068, the missed call user interface 7070, and / or the call control user interface 7072 move in conjunction with one another (e.g., when the system function menu 7024 and the call control user interface 7072 are displayed simultaneously, the system function menu 7024 moves in conjunction with the call control user interface 7072 such that the call control user interface 7072 maintains an individual spatial relationship with the system function menu 7024 (e.g., in a manner similar to how it maintains an individual spatial relationship with user interface object 7064)).

[0206] In some embodiments, after the request for the computer system 7100 to join the communication session no longer meets the timing criteria (e.g., the request to join the communication session expires or times out), the user interface object 7064 reverts to its default appearance (e.g., as shown by the indicator 7010 in the system functions menu of Figures 7V and 7W). For example, Figures 7V and 7W show the system control indicator appearing as the indicator 7010 in the system functions menu after the expiration of the communication session request of Figure 7R (e.g., Figure 7V shows an illustrative transition from Figure 7R). In some embodiments, the system control indicator appears as the system features menu indicator 7010 both after a threshold amount of time TH1 has first elapsed (e.g., the period during which interaction with the system control indicator results in the display of the incoming call user interface 7068 of FIG. 7S), and then after a threshold amount of time TH2 has elapsed (e.g., the period during which interaction with the system control indicator results in the display of the missed call user interface 7070 of FIG. 7T) (e.g., after a total amount of time TH1+TH2 has elapsed since the communication session request was first received). In some embodiments, the user interface object 7056 reverts to its default appearance (e.g., appears instead as the system features menu indicator 7010 of FIGS. 7V and 7W) after the computer system 7100 leaves the communication session (e.g., left a communication session during which it was joined via the “Join” affordance of the incoming call user interface 7068 of FIG. 7S, and optionally, during which the call control user interface 7072 of FIG. 7U was displayed).As shown in Figures 7V and 7W, when the user's attention 7116 is directed to the system function menu indicator 7010 (e.g., after expiration of both the period for invoking the incoming call user interface and the period for invoking the missed call user interface), because there is no pending request to join a communication session and the computer system 7100 is not in an active communication session, the computer system 7100 displays the system function menu 7024 (e.g., the computer system 7100 behaves as described above with reference to Figures 7A-7K) and does not display the user interface 7068, the user interface 7070, or the call control user interface 7072.

[0207] In some embodiments, the computer system 7100 toggles the display of the user interface 7068, the system function menu 7024, and optionally one or more additional user interface elements (e.g., notification content 7060 described above with reference to FIGS. 7L-7Q when a request to join a communication session meets a first timing criterion and a first event for the first notification meets a second timing criterion) in response to, for example, continuous gaze input directed at the system control indicator. Those skilled in the art will readily appreciate that the following description made with reference to the incoming call user interface 7068 similarly applies to the missed call user interface 7070 (e.g., when a user misses a request to join a communication session but is still within time period TH2, as described with reference to FIG. 7T, while a first event for the first notification meets the second timing criterion, as described herein with reference to FIGS. 7L-7Q), and / or the call control user interface 7072 (e.g., when a user joins a communication session while a first event for the first notification meets the second timing criterion).

[0208] In an exemplary scenario in which the request to join a communication session meets a first timing criterion (e.g., received less than time TH1, as described herein with reference to FIG. 7S) and the first event for the first notification meets a second timing criterion, in response to detecting a first gaze input directed at the system control indicator, the computer system 7100 displays the user interface 7068 (e.g., without displaying the notification content 7060 or the system function menu 7024) (e.g., as described herein with reference to FIG. 7R-7S). As described herein with reference to FIG. 7R, the system control indicator may have an appearance indicating an incoming call or, alternatively, an application associated with the first notification, based on the relative priority of the alert and / or the user's preferences. After displaying the user interface 7068, the user looks away from the system control indicator (e.g., draws the user's attention away from the system control indicator) (and, optionally, the system control indicator is no longer displayed). After gazing away from the system control indicator, the user's gaze returns to the system control indicator, and in response, computer system 7100 displays notification content 7060 (e.g., without displaying user interface 7068 or system functions menu 7024). After displaying notification content 7060, the user moves their gaze away from the system control indicator (and, optionally, notification content 7060 is no longer displayed). After gazing away from the system control indicator, the user's gaze returns to the system control indicator, and in response, computer system 7100 displays system functions menu 7024 (e.g., without displaying notification content 7060 or user interface 7068). This indicates the end of one cycle of user interface elements (e.g., starting with user interface 7068 and ending with system functions menu 7024).If the user repeats this process (e.g., looks away from the system control indicator, then looks back at the system control indicator), the computer system 7100 begins a new cycle, displaying user interface elements in the same order (e.g., in response to successive gaze inputs, user interface 7068, then notification content 7060, then system functions menu 7024). This allows the user to switch between displaying user interface 7068, notification content 7060, and system functions menu 7024 without cluttering the displayed user interface (e.g., without simultaneously displaying multiple user interface elements, such as notification content 7060 and system functions menu 7024, which would unduly occupy the user's field of view).

[0209] In some embodiments, the computer system 7100 switches between displaying the user interface 7068 and another request to join a communication session (e.g., a second request to join a second communication session that also meets the timing criteria). In some such embodiments, the computer 7100 optionally switches between displaying the user interface 7068, a second user interface for joining the second communication session (e.g., a similar but separate user interface including a representation of a different user who initiated the request for the second communication session), and the system functions menu 7024 (e.g., the displayed user interface elements may change each time the user looks away from the user interface object 7064 and then back to it).

[0210] Figure 7X illustrates exemplary timing for the duration of a request to join a communication session (e.g., the period of time the request is active before timing out) based on the type of communication session, according to some embodiments. Figure 7X further illustrates the concepts discussed above with reference to Figures 7A-7W, and particularly Figures 7R-7W. In Figure 7X, the horizontal axis is the time axis, with time progressing from left to right.

[0211] In the case of a telephony session (e.g., a telephone call), in step 7074, the computer system 7100 detects (e.g., initially) an incoming request to join the telephony session. A first time threshold TH C1 (e.g., while the request to join the telephone call is ringing), the request to join the telephone communication session satisfies the timing criterion. As shown in step 7076, in response to detecting the incoming request to join the telephone communication session, the computer system 7100 displays the request to join the telephone communication session (e.g., incoming call user interface 7068 (FIG. 7S)). In some embodiments, the current time is displayed as TH regardless of whether the user's gaze is directed at user interface object 7064 (FIG. 7R) (or more generally, a system control indicator). C1 , a request to join the telephony session is displayed (and optionally remains displayed) (e.g., in FIG. 7R, the incoming call user interface 7068 of FIG. 7S is also displayed in the scenario shown in FIG. 7R, even though the user 7002's gaze is not directed at user interface object 7064).

[0212] time TH C1 After TH, the request to join the telephony session no longer meets the timing criteria (e.g., the request times out). In step 7078, the current time is calculated as TH C1 , but after a second time threshold TH C2 As in step 7078, the user sets the time threshold TH C1 and the time threshold TH C2 If the user gazes at user interface object 7064 between the two, computer system 7100 responsively displays a missed call user interface (e.g., user interface 7070 (FIG. 7T)) indicating the missed request to join the telephone communication session and including an affordance for starting a second communication session (e.g., a new communication session), as in step 7080.

[0213] When the user gazes at the user interface object 7064 as in step 7082, the current time is TH C1 and TH C2 The request to join the telephony session does not meet the timing criteria (e.g., the amount of time since the request was received is less than TH C1 or more), no gaze input is detected within a threshold amount of time after receiving the request (e.g., the amount of time after receiving the request is TH C2 That's all.) Thus, in response to detecting the gaze input of step 7082, as shown in step 7084, computer system 7100 does not display either an incoming call user interface or a missed call user interface, but instead displays system function menu 7024 (e.g., including multiple affordances for performing system operations associated with computer system 7100, e.g., as described herein with reference to FIGS. 7V-7W).

[0214] In the case of a video communication session (e.g., a video call), in step 7086, the computer system 7100 detects (e.g., initially) an incoming request to join the video communication session. A first time threshold TH V1 (e.g., while the request to join the video call is ringing), the request to join the video communication session meets the timing criterion. V1 If the user's gaze is directed at the user interface object 7064 before the current time, in response to detecting the user's gaze directed at the user interface object 7064 (e.g., if the current time is TH V1 7S), the computer system 7100 displays an incoming call user interface (e.g., user interface 7068 (FIG. 7S)) that includes affordances for joining the video communication session, as in step 7090.

[0215] time TH V1 After TH, the request to join the video communication session no longer meets the timing criteria (e.g., the request times out). In step 7092, the current time is V1 , but after a second time threshold TH V2 As in step 7092, the user sets the time threshold TH V1 and the time threshold TH V2 If the user gazes at user interface object 7064 between the two, computer system 7100 responsively displays a missed call user interface (e.g., user interface 7070 (FIG. 7T)) indicating the missed request to join the video communication session and including an affordance for starting a second communication session (e.g., a new communication session), as in step 7094.

[0216] When the user gazes at the user interface object 7064 as in step 7096, the current time is TH V1 and TH V2 The request to join the video communication session does not meet the timing criteria (e.g., the amount of time since the request was received is less than TH V1 or more), no gaze input is detected within a threshold amount of time after receiving the request (e.g., the amount of time after receiving the request is TH V2That's all.) Thus, in response to detecting the gaze input in step 7096, as shown in step 7098, the computer system 7100 displays neither an incoming call user interface nor a missed call user interface, but instead displays the system functions menu 7024. As used herein, a "video communication session" or "video call" refers to a video telephony protocol or a telephony protocol in which video is supported but can be enabled or disabled by a user (e.g., within the same telephony service, a user can choose between video telephony and audio-only telephony, or turn off their own and / or another user's video). As used herein, a "telephone communication session" or "telephone call" refers to audio-only telephony in which video is not supported (e.g., including some cellular and Internet telephony). Those skilled in the art will readily understand that an audio-only call over a video telephony protocol may instead be considered a "telephone call" rather than a "video call."

[0217] For an extended reality (XR) communication session, in step 7102, the computer system 7100 detects an incoming request to join an XR communication session. X (e.g., while the requesting user has an invitation to join the XR communication session open), the request to join the XR communication session satisfies the timing criterion. As shown in step 7104, if the user's gaze crosses the time threshold TH X If the user's gaze is directed at a system control indicator (e.g., user interface object 7064 (FIG. 7R)) before the current time, in response to detecting the user's gaze directed at user interface object 7064 (e.g., the current time is TH X7S), the computer system 7100 displays an incoming call user interface (e.g., user interface 7068 (FIG. 7S)) that includes affordances for joining the XR communication session, as in step 7106.

[0218] time TH X After the time threshold TH , the request to join the XR communication session no longer meets the timing criteria (e.g., the request times out). X If the user gazes at user interface object 7064 after this time, computer system 7100 displays system function menu 7024, as in step 7110. In the example shown in FIG. 7X, XR communication session requests occur within a single time threshold TH x , before which an incoming call user interface is displayed and after which the system features menu 7024 is displayed instead of the missed call user interface. X There is a period of time after and before the second time threshold during which the computer system, in response to the gaze input at user interface object 7064, displays a missed call user interface for the XR communication session request (e.g., user interface 7070 (FIG. 7T)), in a manner similar to steps 7078-7080 described above with reference to the phone call and steps 7092-7094 described above with reference to the video call.

[0219] In some embodiments, video communication requests are more persistent than telephone communication requests in that an incoming video call will ring longer than an incoming telephone call. V1 TH C1 is further along the time axis than (e.g., TH V1is visually indicated by the time threshold TH C1 (to the right of THC1). In some embodiments, a request to join an XR communication session remains active as long as the requesting user keeps the invitation open (e.g., the request does not automatically time out and must be manually canceled by the requesting user). Thus, FIG. 7X illustrates the time threshold TH C1 (to the right of THC1) being exceeded as a result of the requesting user having an XR communication session request pending beyond the timeout threshold for phone and video calls. X is the furthest along the time axis (e.g., TH X TH C1 and T.H. V1 1 illustrates an exemplary scenario in which an XR communication session request is more persistent than a request to join a telephone communication session or a video communication session, in that the time threshold TH X is based on when the requesting user determines to cancel the XR communication session request (e.g., a time threshold TH C1 and / or TH V1 , and the time threshold TH C1 and / or time threshold TH V1 Those skilled in the art will readily appreciate that other embodiments are possible in which the XR communication session request automatically times out (e.g., similar to phone and video calls) before or after . In some embodiments, the request to join a phone communication session is the shortest lasting (e.g., TH C1 is the lowest / earliest (leftmost) time threshold), but is displayed most prominently (in that, for example, a request to join a telephony session is displayed whether or not the user's gaze is directed at the system control indicator).

[0220] Additional discussion regarding Figures 7R-7X is provided below with reference to method 10000 described with respect to Figures 7R-7X, among other figures and methods described herein.

[0221] 7Y-7AF illustrate an example of initiating the display of an environment-locked user interface from a head-locked user interface. FIGS. 11A-11B are a flow diagram of an example method 11000 for initiating the display of an environment-locked user interface from a head-locked user interface. The user interfaces of FIGS. 7Y-7AF are used to illustrate the processes described below, including the processes of FIGS. 11A-11B. For ease of discussion, FIGS. 7Y-7AF illustrate user interactions with particular affordances that initiate the display of particular user interfaces, but the following description is generally applicable to any suitable affordance (e.g., that, when selected, initiates the display of a particular user interface), according to some embodiments.

[0222] 7Y illustrates a physical environment 7000 including a user 7002 interacting with a computer system 7100. The user 7002 is located at location 7026-c within the physical environment 7000.

[0223] In some embodiments (e.g., as described above with reference to FIG. 7B ), the system function menu indicator 7010 is displayed in a peripheral area in the top center of the display of the computer system 7100. In some embodiments (e.g., as in FIG. 7Y ), the system function menu indicator 7010 is displayed in a peripheral area in the upper right corner of the display of the computer system 7100 (e.g., in peripheral areas on both the top and right edges of the computer system 7100). It will be appreciated that in some embodiments, the system function menu indicator 7010 is displayed in alternative peripheral areas of the display of the computer system 7100.

[0224] 7Z , user's attention 7116 is directed to system function menu indicator 7010. In some embodiments, if user's attention 7116 meets an attention criterion (e.g., user's 7002 attention is continuously directed to system function menu indicator 7010 for a threshold amount of time, or user's 7002 attention is directed to system function menu indicator 7010 while user 7002 performs a required gesture (e.g., bringing hands into a specified configuration or performing an air gesture such as an air tap or air pinch)), computer system 7100 displays system function menu 7024. Some features of system function menu 7024 are different (e.g., system function menu 7024 has a different appearance, a different set of affordances, and a different location in FIG. 7Z compared to FIGS. 7H-7W ), but other previously described features of system function menu 7024 (e.g., features discussed above with reference to FIGS. 7A-7X ) remain applicable to system function menu 7024.

[0225] In some embodiments, the system functions menu 7024 includes multiple affordances for accessing system functions of the computer system 7100. For example, as shown in FIG. 7Z , the system functions menu 7024 includes a search affordance 7042, a volume affordance 7038, a notification affordance 7044, a control affordance 7046, and a virtual assistant affordance 7048 (e.g., corresponding to the affordances of the example system functions menu described with reference to FIG. 7E above), as well as a home affordance 7124 (e.g., for accessing one or more applications of the computer system 7100, for initiating a communication session with one or more contacts stored in the memory of the computer system 7100, and / or for initiating the display of a virtual environment). In some embodiments, the system functions menu 7024 includes different affordances than those shown in FIG. 7AC (e.g., additional affordances, fewer affordances (e.g., as in the system functions menu of FIG. 7E), and / or some affordances replaced with other affordances associated with different functions of the computer system 7100).

[0226] 7AA, user's attention 7116 is directed to control affordance 7046. In response to detecting that user's attention 7116 meets selection criteria (e.g., optionally the same as or different from the attention criteria described above for displaying system functions menu 7024), computer system 7100 displays (e.g., simultaneously with system functions menu 7024) user interface 7136 associated with control affordance 7046 (e.g., user interface 7136 is a control user interface). In some embodiments, user interface 7136 includes affordances 7138, 7140, 7142, and 7144 for interacting with user interface 7136, and / or for accessing or adjusting settings of user interface 7136 (e.g., position, brightness or other display characteristics, and / or content of user interface 7136) and / or settings of computer system 7100 (e.g., accessing additional system settings of computer system 7100 not included in system functions menu 7024), and / or for displaying other user interfaces (e.g., additional content associated with user interface 7136, application user interfaces, and / or user interfaces for adjusting settings of computer system 7100).

[0227] In some embodiments, user selection of a respective one of the affordances displayed within system function menu 7024 (e.g., home affordance 7124, search affordance 7042, volume affordance 7038, notification affordance 7044, control affordance 7046, virtual assistant affordance 7048, and / or any other affordance) causes computer system 101 to display a user interface corresponding to the selected affordance. For example, user interface 7136 is a home user interface (e.g., as described in more detail below with reference to FIG. 7AD) that is displayed in response to detecting user selection of home affordance 7124.

[0228] In some embodiments, user interface 7136 is a search user interface for performing a search operation (e.g., when the user's attention is directed to search affordance 7042 but not to control affordance 7046). In some embodiments, user interface 7136 includes a search bar that provides visual feedback regarding search terms. In some embodiments, user 7002 enters search terms through verbal input (e.g., at least one input device of the one or more input devices of computer system 7100 is a microphone configured to detect verbal input). In some embodiments, user 7002 enters search terms by gazing at a search bar displayed in user interface 7136 (e.g., computer system 7100 detects the user's attention directed to the search bar and determines that user 7002 intends to perform a search function) and / or performs verbal input (e.g., speaks desired search terms aloud). In some embodiments, the search bar updates in real time as the user performs verbal input (e.g., each spoken word of the search term is displayed in the search bar as the user finishes speaking the word).

[0229] In some embodiments, the user interface 7136 includes a virtual keyboard (e.g., optionally in addition to a search bar), and the user 7002 manually enters search terms into the search bar using the virtual keyboard. In some embodiments, the user 7002 enters search terms through verbal input or through a virtual keyboard. In some embodiments, the user 7002 enters search terms through a combination of input devices (e.g., the user begins entering search terms through verbal input and edits and / or completes the search terms via a virtual keyboard, or vice versa).

[0230] In some embodiments, user interface 7136 is a user interface for adjusting a volume setting of computer system 7100 (e.g., in response to detecting that a user's gaze is directed toward volume affordance 7038 rather than control affordance 7046). In some embodiments, user interface 7136 includes one or more controls (e.g., a volume slider, a dial, and / or one or more buttons) for adjusting a volume setting of computer system 7100.

[0231] In some embodiments, user interface 7136 is a notification user interface for displaying content from one or more notifications received by computer system 7100 (e.g., in response to detecting that the user's attention is directed to notification affordance 7044 rather than control affordance 7046).

[0232] In some embodiments, user interface 7136 is a system user interface for accessing additional system settings of computer system 7100 that are not included in system functions menu 7024. For example, affordances 7138, 7140, 7142, and / or 7144 of user interface 7136 allow a user to access and / or adjust different settings of computer system 7100 (e.g., optionally corresponding to settings that are not directly accessible or adjustable from system functions menu 7024).

[0233] 7AB, user's attention 7116 is directed to affordance 7142 of user interface 7136. In some embodiments, in response to detecting that the user is interacting with user interface elements other than those displayed in system function menu 7024 and / or that the user's attention is no longer directed to system function menu indicator 7010 or system function menu 7024, computer system 7100 ceases displaying system function menu 7024. In some embodiments, system function menu 7024 remains displayed but is reduced in prominence (e.g., partially blurred, dimmed, or otherwise visually de-emphasized) to reflect that the user's attention (e.g., based on gaze) is no longer directed to system function menu 7024 and to reduce the risk that system function menu 7024 obstructs visibility as the user interacts with other user interface elements displayed outside of system function menu 7024. In some embodiments, as shown in FIG. 7AC, in response to detecting that the user's attention 7116 has returned to the system functions menu indicator 7010, the computer system 7100 redisplays the system functions menu 7024.

[0234] 7AD, user 7002 moves to a new location 7026-d within physical environment 7000. In some embodiments, after moving to the new location, a different view of physical environment 7000 is visible (e.g., via a viewport provided by a display generation component of computer system 7100) (e.g., as compared to the view of physical environment 7000 visible in FIGS. 7Z-7AC) as user 7002 moves from third location 7026-c to new location 7026-d (e.g., such that the user's viewpoint is updated). For example, user 7002 has moved farther from physical object 7014 (e.g., closer to physical wall 7006 and farther from physical wall 7004) such that representation 7014′ of physical object 7014 appears at a smaller size (e.g., compared to the size of representation 7014′ in FIG. 7AC) and at a different relative location compared to the user (e.g., further to the right in the view of the three-dimensional environment visible in FIG. 7AD than in the view of the three-dimensional environment visible in FIG. 7AC) in a view of the physical environment visible via the display generation components of computer system 7100. For example, the representations of the physical objects are displayed at respective sizes corresponding to the updated physical sizes of the objects as perceived by the user as the physical distance between the physical objects and the user changes.

[0235] In some embodiments, one or more virtual objects (e.g., optionally locked or fixed to the three-dimensional environment) are displayed at a simulated size that corresponds to the distance between where the virtual objects are located in the three-dimensional environment and the user's current position. For example, if virtual object 7012 and user interface 7136 are both environment-locked (e.g., also referred to herein as being fixed in position in the three-dimensional environment), and the user moves to new location 7026-d, virtual object 7012 and user interface 7136 are displayed at a smaller size (e.g., compared to their respective sizes in FIG. 7AC) and a new location (e.g., further to the right in the view of the three-dimensional environment currently visible in FIG. 7AD than in the view of the three-dimensional environment visible in FIG. 7AC) to reflect the increased simulated distance and change in position between virtual object 7012 and user 7002.

[0236] In some embodiments, the system function menu 7024 is not environment locked, but instead head locked, such that the system function menu 7024 has the same size and is in the same location even if the user changes physical location within the physical environment 7000 (e.g., compared to the size of the system function menu 7024 in FIG. 7AC). In some embodiments, the system function menu 7024 has the same size and is in the same location regardless of the physical location of the user 7002 (e.g., the user can move to any location within the physical environment 7000 and the system function menu 7024 will be displayed at the same size and location as shown in FIGS. 7AC and 7AD, or at a different size and / or location). A head-locked system function menu 7024 allows the user 7002 to easily interact with the system function menu 7024 regardless of the user's 7002 location, whereas if the system function menu 7024 were instead environment-locked, the user 7002 could move to a location in the physical environment corresponding to a location where the system function menu 7024 is no longer visible (e.g., the user 7002 rotates 180 degrees from the orientation shown in FIG. 7AC) or where the system function menu 7024 is so small (e.g., far away) that the user cannot successfully interact with the system function menu elements of the system function menu 7024.

[0237] 7AD, user's attention 7116 is directed to home affordance 7124. In response to detecting that user's attention 7116 meets selection criteria (e.g., optionally the same or different selection criteria as described above with reference to FIG. 7AA), computer system 7100 displays user interface 7146 (e.g., optionally being a home user interface) corresponding to home affordance 7124. In some embodiments, user interface 7146 includes affordances 7148, 7150, 7152, and 7154. In some embodiments, displaying user interface 7146 optionally includes ceasing to display user interface 7136 (e.g., user interface 7146 replaces user interface 7136), which is represented by the dashed outline of user interface 7136 in FIGS. 7AD-7AF.

[0238] In some embodiments, affordances 7148, 7150, 7152, and 7154 correspond to respective applications of computer system 7100 (e.g., the affordances are application icons and / or other representations of the applications), and the user interacts with the respective affordances corresponding to the respective applications to launch the application user interface of the respective applications (e.g., by opening the application and / or displaying a new application window for the application). In some embodiments, affordances 7148, 7150, 7152, and 7154 correspond to respective contacts of respective other users stored in the memory of computer system 7100 (e.g., the affordances are user avatars, contact information, phone numbers, user IDs, or entity names), and user 7002 interacts with the respective affordances corresponding to the respective contacts to initiate a communication session with the contact (e.g., another user associated with another computer system different from computer system 7100). In some embodiments, affordances 7148, 7150, 7152, and 7154 correspond to respective virtual environments (e.g., different AR environments, different VR environments, different AR experiences, and / or different VR experiences), and user 7002 interacts with a respective affordance corresponding to the respective virtual environment to initiate a display of the respective virtual environment within the three-dimensional environment.

[0239] In some embodiments, user interface 7146 includes different groups of affordances (e.g., a first group of affordances for launching an application user interface, a second group of affordances for initiating a communication session with another user, and / or a third group of affordances for initiating the display of a different virtual environment). In some embodiments, the different groups of affordances are displayed in user interface 7146 in different contexts (e.g., not all affordances are displayed at all times and / or not all groups of affordances are displayed at all times). In some embodiments, user 7002 switches between different groups of affordances (e.g., by performing an air gesture (e.g., an air tap or air pinch), by interacting with a particular affordance to switch between groups of affordances, and / or by interacting with an individual affordance to display an individual group of affordances). In some embodiments, user interface 7146 includes additional affordances (e.g., in addition to or instead of affordances 7148, 7150, 7152, and 7154), and user 7002 scrolls through the display of the additional affordances within user interface 7146 (e.g., by performing an air gesture such as an air tap or an air pinch). In some embodiments, user 7002 performs a first type of air gesture (e.g., a tap gesture) to switch between different groups of affordances, and user 7002 performs a second type of air gesture (e.g., a pinch-and-drag gesture) to scroll through the display of affordances (e.g., optionally within the displayed group of affordances).

[0240] In some embodiments, affordances of user interface 7146 that are within a threshold distance of (e.g., proximate to, near, and / or next to) a particular boundary (or boundaries) of user interface 7146 are displayed with different visual characteristics (e.g., displayed with some degree of fading or blurring, or other visual de-emphasis) than affordances that are outside the threshold distance. In some embodiments, the particular boundary (or boundaries) of user interface 7146 near which affordances with different visual characteristics are displayed are associated with directions in which the display of affordances of user interface 7146 can be scrolled. For example, if user 7002 can scroll the display of affordances of user interface 7146 upward and / or downward, affordances near the bottom boundary (and / or top boundary) of user interface 7146 (e.g., affordances 7150 and 7154) are displayed with some degree of fading or blurring. In some embodiments, user 7002 can scroll the display of affordances of user interface 7146 leftward (and / or rightward), and affordances near the right boundary (and / or left boundary) of user interface 7146 (e.g., affordances 7152 and 7154) are displayed with some degree of fading or blurring. In some embodiments, affordances within a threshold distance of any of multiple boundaries (e.g., the top and bottom boundaries, left and right boundaries, top and bottom boundaries, bottom left boundary, top left boundary, or bottom right boundary of user interface 7146, or another combination of boundaries) are displayed with different visual characteristics (e.g., visual de-emphasis). In some embodiments, the boundary (or boundaries) are not straight edges (e.g., user interface 7146 is circular, and affordances near the outer boundary of the circle are displayed with different visual characteristics, while affordances closer to the center of user interface 7146 are not displayed with different visual characteristics).In some embodiments, optionally, only some, but not all, of the affordances proximate a particular boundary of user interface 7146 are displayed with different visual characteristics (e.g., the lower portions of affordances 7150 and 7154 are displayed faded or blurred, while the upper portions of affordances 7150 and 7154 are displayed without fading or blurring (e.g., with the same or different visual characteristics as affordances 7148 and 7152)).

[0241] In some embodiments, the visual characteristics of affordances within a threshold distance of a particular boundary of user interface 7146 vary according to distance from the particular boundary. For example, the bottom portions of affordances 7150 and 7154 (e.g., closest to the bottom boundary of user interface 7146) are displayed with a first degree (e.g., a high degree) of blur or fade, the top portions of affordances 7150 and 7154 are displayed with a second degree of blur or fade (e.g., not blur or fade at all), and the portions of affordances 7150 and 7154 between the bottom and top portions of affordances 7150 and 7154 are displayed with a third degree of blur or fade (optionally an intermediate level of blur or fade between the first and second degrees) (e.g., less blur or fade than the bottom portions of affordances 7150 and 7154, but more blur or fade than the top portions).

[0242] In some embodiments, affordances of user interface 7146 that are within a threshold distance of a simulated boundary (or boundaries) of user interface 7146 are displayed with different visual characteristics (e.g., displayed with some degree of fading or blurring) than affordances that are outside the threshold distance from the simulated boundary. For example, if user interface 7146 had a circular shape, the simulated boundary could be the right "edge" of user interface 7146 (even though user interface 7146 itself has no corresponding boundary), and affordances near the 2 o'clock, 3 o'clock, and 4 o'clock positions are displayed with different visual characteristics (e.g., and optionally, affordances near the 3 o'clock position are displayed with a greater change in visual characteristics (e.g., more blurred or faded) than affordances near the 2 o'clock and 4 o'clock positions).

[0243] In some embodiments, the visual characteristic includes simulated thickness (e.g., affordances with high levels of simulated thickness appear more or fully three-dimensional, while affordances with low levels of simulated thickness appear flatter or more two-dimensional).

[0244] 7AE shows user attention 7116 directed to affordance 7148 of user interface 7146. In response to detecting that the user's gaze satisfies selection criteria (e.g., optionally the same attention criteria described above for displaying system functions menu 7024 and / or the same selection criteria for displaying user interface 7136 or user interface 7146), computer system 7100 displays user interface 7156 associated with affordance 7148.

[0245] In some embodiments, user interface 7156 is an application user interface (e.g., affordance 7148 is an application icon and the user launches application user interface 7156 by selecting affordance 7148). In some embodiments, user interface 7156 is a user interface that includes controls for a phone call or virtual reality session and / or includes video for a video call or other communication session with another user (e.g., affordance 7148 is a user avatar and user 7002 initiates a communication session with another user via affordance 7148). In some embodiments, user interface 7156 is associated with (e.g., is or is an element of) a virtual environment (e.g., a three-dimensional environment displayed on a display of computer system 7100).

[0246] Figure 7AF illustrates user 7002's movement to a new location 7026-e (e.g., in some embodiments, the same as location 7026-c) within physical environment 7000. As user 7002 moves from location 7026-d to location 7026-e, a different view of physical environment 7000 (e.g., optionally the same view as in Figures 7Y-7AC) is visible (e.g., via a viewport provided by a display generation component of computer system 7100). Based on user 7002's movement, the sizes of physical object 7014, virtual object 7012, and representation 7014' of user interface 7136 are displayed at the same respective sizes (e.g., at their "original" sizes prior to any movement of user 7002) in the view of the three-dimensional environment visible in Figure 7AC.

[0247] For example, similar to user interface 7136 described above, user interface 7146 (and / or user interface 7156) is also environment-locked. In response to user 7002 moving to location 7026-e, user interface 7146 (and optionally, user interface 7156) have a different size and position in the view of the three-dimensional environment visible through a viewport provided by a display generation component of computer system 7100. In Figure 7AF, based on location 7026-e (relative to location 7026-d), user interface 7146 and user interface 7156 have a larger size and are displayed further to the right of the user's current view of the three-dimensional environment visible in Figure 7AF (e.g., compared to the size and position of user interface 7146 and user interface 7156 in the view of the three-dimensional environment visible in Figure 7AE).

[0248] The user's attention 7116 is directed to system function menu indicator 7010, and in response to the user's attention 7116 meeting attention criteria for system function menu indicator 7010 (e.g., the same attention criteria as described above with reference to FIG. 7Z), system function menu 7024 is displayed. As explained above, in some embodiments, system function menu 7024 is head-locked, and thus system function menu 7024 remains displayed at the same size and / or in the same location relative to the user's current view (e.g., the same size and / or location as system function menu 7024 in FIG. 7AC when the user was previously at third location 7026-c, or as in FIG. 7AD when the user moved to location 7026-d).

[0249] Additional discussion regarding Figures 7Y-7AF is provided below with reference to method 11000 described with respect to Figures 7Y-7AF, among other figures and methods described herein.

[0250] 7AG-7AM illustrate exemplary regions for triggering the display of one or more user interface elements. Figure 12 is a flow diagram of an exemplary method 12000 for initiating the display of a user interface in response to detecting that a user's attention is directed to a distinct region within a three-dimensional environment. The user interfaces of Figures 7AG-7AM are used to illustrate processes described below, including the process of Figure 12.

[0251] FIG. 7AG shows two exemplary regions, region 7158 and region 7160, for triggering the display of one or more user interface elements (e.g., indicator 7010 of the system function menu as shown in FIG. 7A).

[0252] In some embodiments, regions 7158 and 7160 are invisible (e.g., as shown by the dotted outlines of regions 7158 and 7160 in FIG. 7AG), and the dotted outlines in FIGS. 7AG-7AM are visual representations of where regions 7158 and 7160 are located on the display of computer system 7100.

[0253] In some embodiments, region 7158 is larger than region 7160. In some embodiments, region 7158 includes region 7160 (e.g., region 7160 is a sub-region of region 7158). In some embodiments, region 7158 and region 7160 are viewpoint lock regions and behave similarly to system function menu indicator 7010 and / or system function menu 7024, as described above with reference to Figures 7A-7D and / or 7E-7G.

[0254] In some embodiments, one or both of region 7158 and region 7160 have a shape that is different from the substantially square shape shown in Figure 7AG. Other exemplary shapes include a polygon (e.g., a triangle, a non-square rectangle, or an irregular polygon), a circle or oval, or an irregular shape (e.g., to avoid overlap with other displayed user interface elements).

[0255] 7AG, user's attention 7116 is not directed to either region 7158 or region 7160, and no user interface objects or user interface elements are displayed within region 7158 or region 7160. In some embodiments, when user's attention 7116 is not directed to either region 7158 or region 7160, but user's attention 7116 is directed to a displayed user interface (e.g., an application launch user interface, an application user interface, or system space) (e.g., in conjunction with an air gesture (e.g., an air tap or air pinch), input from a hardware controller, and / or verbal input), the computer system performs an operation corresponding to the displayed user interface (e.g., launches an application, performs an application-specific operation, or adjusts a system setting of computer system 7100).

[0256] In Figure 7AH, user's attention 7116 is directed to a location within region 7158 (rather than region 7160). In response to detecting that user's attention 7116 is directed to region 7158, computer system 7100 displays system function menu indicator 7010. In some embodiments, computer system 7100 displays system function menu indicator 7010 in response to detecting that user's attention 7116 has been directed to a location within region 7158 for a threshold amount of time (e.g., 0.1, 0.2, 0.5, 1, 2, or 5 seconds). In some embodiments, as shown in Figure 7AH, system function menu indicator 7010 is initially displayed at a smaller size (e.g., relative to the "normal" or steady-state size of system function menu indicator 7010 of Figure 7A). System function menu indicator 7010 provides visual feedback to the user that computer system 7100 has detected the user's attention being directed to region 7158. System function menu indicator 7010 also provides a hint (e.g., visual feedback or indication) that the user's attention 7116 is near (smaller) area 7160 and / or that further user interaction (e.g., access to system function menu 7024 via full-sized system function menu indicator 7010 as shown in FIG. 7E and / or as described in further detail below with reference to FIG. 7AM) is available (e.g., via area 7160 and / or system function menu indicator 7010).

[0257] In some embodiments, the computer system 7100 displays (e.g., simultaneously with the system function menu indicator 7010) instructions (e.g., text-based instructions, visual or pictorial instructions) for expanding the system function menu indicator 7010 and / or invoking the system function menu 7024 (e.g., via one or more inputs, as described below with reference to FIGS. 7A-7A-7B). In some embodiments, the instructions are non-visual (e.g., auditory) instructions. In some embodiments, the computer system 7100 provides multiple forms of instructions (e.g., visual instructions and audio instructions). In some embodiments, the instructions are persistently displayed until the user's attention is directed to the displayed instructions. In some embodiments, after the user's attention is directed to the displayed instructions, the computer system detects that the user's attention moves away from the displayed instructions (e.g., for a threshold amount of time, such as 0.1, 0.2, 0.5, 1, 2, 5, or 10 seconds), and in response, the computer system 7100 ceases displaying the instructions. In some embodiments, the instructions are provided before the user normally displays the system function menu indicator 7010 (e.g., at full size as in FIG. 7A or 7AM) and / or invokes the system function menu 7024, and the instructions are not provided again thereafter (e.g., to avoid unnecessary repetition and distraction to the user if the user is already familiar with how to invoke the system function menu 7024).

[0258] In some embodiments, system function menu indicator 7010 is not displayed if it overlaps with an existing user interface element. For example, if user interface 7136 ( FIG. 7AA ) is displayed in an upper left location of the display (e.g., overlapping the location of system function menu indicator 7010 in FIG. 7AH ), system function menu indicator 7010 is not displayed. Because user interface 7136 includes affordances 7138, 7140, 7142, and 7144, which are interactable user interface elements, simultaneously displaying system function menu indicator 7010 in addition to the affordances of user interface 7136 may create a scenario in which it is difficult for a user to accurately interact with the user interface elements (e.g., via eye gaze input or other input that includes a gaze component), which is avoided by ceasing to display system function menu indicator 7010 when another user interface overlaps system function menu indicator 7010 (and / or system function menu indicator 7010 is displayed on top of another user interface).

[0259] In some embodiments, the indicator 7010 of the system function menu is viewpoint locked (e.g., similar to area 7158 and area 7160) and has similar behavior as described with reference to and shown in Figures 7B-7D.

[0260] In some embodiments, the location of the system function menu indicator 7010 is selected based at least in part on the user's position relative to the computer system 7100. In some embodiments, the system function menu indicator 7010 is displayed in a consistent region of the computer system 7100's display (e.g., the upper right corner, or another region consistently selected by the computer system), but the exact location of the system function menu indicator 7010 varies within the region (e.g., the exact location of the system function menu indicator 7010 can be up to a threshold distance away from a particular default position) based at least in part on the user's position relative to the computer system 7100. In some embodiments, the computer system 7100 can include one or more cameras (or other sensors) to track the user's position and determine the orientation (e.g., amount of tilt and / or rotation) of the computer system 7100 relative to the user.

[0261] For example, if the computer system 7100 is a handheld device, the computer system 7100 detects that the orientation of the computer system 7100 is not precisely aligned with the user (e.g., when the user holds only the right side of the computer system 7100 (relative to the user's view) with only the user's right hand, the horizontal axis of the computer system 7100 (which normally extends from left to right in the user's view) is slightly rotated (e.g., extending slightly from the bottom left to slightly right in the user's view) due to the weight of the computer system 7100 and the lack of support on the left side of the computer system 7100 (e.g., via the user's left hand). According to some embodiments, the computer system 7100 displays the system function menu indicator 7010 in the adjusted location (e.g., closer to the top and / or right edge of the computer system 7100).

[0262] In some embodiments, the computer system 7100 is a head-mounted display (HMD), and the computer system 7100 responds to how the device is worn by the user. For example, the computer system 7100 may be oriented differently for different users due to differences in each user's physical characteristics (e.g., different sizes and positions of each user's ears, eyes, and / or nose), asymmetries in the users' physical characteristics (e.g., ears having slightly different heights, eyes having different sizes, and / or eye lines that are not perfectly horizontal), or other external factors (e.g., the presence of earphones / headphones, glasses, or other accessories worn on or around the user's head). For example, the computer system 7100 detects that the head-mounted display is seated lower on a user's face than another user (or lower than the default or average height), and the computer system 7100 displays the indicator 7010 of the system function menu in an adjusted location (e.g., closer to the top edge of the computer system 7100).

[0263] Displaying the system function menu indicator 7010 at the adjusted location allows the system function menu indicator 7010 to be displayed in a consistent location (e.g., relative to the user) even when the computer system 7100 is not "perfectly" aligned with the user (e.g., there is no tilt or rotation relative to the user), and also maintains the system function menu indicator 7010 in a consistent location through slight movements of the computer system 7100 (e.g., due to unsteadiness of the user's hand(s)). In some embodiments, the adjusted location of the system function menu indicator 7010 is within a threshold distance (e.g., 0.5 mm, 1 mm, 2 mm, 5 mm, or 1 cm) of a particular location (e.g., the center point of a particular upper right portion of the display of the computer system 7100). If the adjusted location of the system function menu indicator 7010 requires the system function menu indicator 7010 to be displayed at a location greater than the threshold distance, the computer system 7100 refrains from displaying the system function menu indicator 7010 at the adjusted location (e.g., because the adjusted location requires the system function menu indicator 7010 to be displayed somewhere beyond the physical boundaries of the computer system 7100's display, or because the system function menu indicator 7010 cannot be easily interacted with at the adjusted location (e.g., the system function menu indicator 7010 is displayed in a location that is uncomfortable for the user to interact with, and / or the system function menu indicator 7010 is displayed in a location where other user interface elements generally appear (e.g., somewhere near the center of the computer system 7100's display) and / or other user interface elements are already displayed).Instead of displaying the system function menu indicator 7010 at an adjusted location that is more than a threshold distance from the individual location, the computer system 7100 displays a visual indication to the user (e.g., instructions to correct the orientation and / or position of the computer system 7100 relative to the user to enable the system function menu indicator 7010 to be displayed at a location that is within a threshold distance of the individual location).

[0264] In some embodiments, when the location of system function menu indicator 7010 is adjusted (e.g., system function menu indicator 7010 is displayed in an adjusted location as described above), system function menu 7024 is also adjusted by the same amount (e.g., in the same direction(s)). In some embodiments, when the location of system function menu indicator 7010 is adjusted (e.g., system function menu indicator 7010 is displayed in an adjusted location as described above), other user interface elements (e.g., user interface 7058 of FIG. 7L, application user interface 7062 of FIG. 7O, user interface 7136 of FIG. 7AA, and / or user interface 7146 of FIG. 7AD) are adjusted by the same amount (e.g., in the same direction(s)). In some embodiments, when the location of the system function menu indicator 7010 is adjusted, the system function menu 7024 is adjusted by the same amount (e.g., in the same direction(s)), but other user interface elements are not adjusted (e.g., displayed in a normal or default position such that only the system function menu indicator 7010 and the system function menu 7024 are adjusted).

[0265] In Figure 7AI, according to some embodiments, user's attention 7116 remains directed to a location within region 7158 but outside of region 7160, and system function menu indicator 7010 remains the same size (as in Figure 7AH). Maintaining the size of system function menu indicator 7010 the same size as in Figure 7AH provides visual feedback to the user that computer system 7100 has detected the user's attention directed to region 7158, but that no further progress (e.g., toward displaying full-sized system function menu indicator 7010 and / or system function menu 7024) has been detected (e.g., the user's attention is not directed to a location within region 7160).

[0266] In FIG. 7AJ, user's attention 7116 is now directed to a location within region 7160, and computer system 7100 displays system function menu indicator 7010 at an intermediate size (e.g., an intermediate size between the size of system function menu indicator 7010 as shown in FIG. 7AI and the size of system function menu indicator 7010 as shown in FIG. 7A (or FIGS. 7AL-7AM, as described in more detail below). In some embodiments, computer system 7100 displays an animation of system function menu indicator 7010 expanding (e.g., from the size of system function menu indicator 7010 in FIG. 7AI to the size of system function menu indicator 7010 in FIG. 7AJ). In some embodiments, region 7160 also increases in size (e.g., optionally proportionally to the increase in the size of system function menu indicator 7010). In some embodiments, region 7160 increases in size but remains a sub-region of region 7158.

[0267] In some embodiments, region 7160 extends in an at least partially symmetrical manner relative to system function menu indicator 7010. For example, as shown in FIG. 7AJ , region 7160 extends symmetrically to the left and right of system function menu indicator 7010 in addition to extending downward relative to system function menu indicator 7010. In some embodiments, region 7160 extends in an at least partially asymmetrical manner. For example, in FIG. 7AJ , region 7160 does not extend upward relative to system function menu indicator 7010 (e.g., to avoid overlap with existing user interface elements, such as display indicators above system function menu indicator 7010 on the display of computer system 7100). In some embodiments, region 7160 extends uniformly around system function menu indicator 7010 (e.g., system function menu indicator 7010 is centered in region 7160, and region 7160 extends such that system function menu indicator 7010 remains centered in region 7160).

[0268] 7AK, user's attention 7116 moves away from region 7160 (and region 7158), and system function menu indicator 7010 begins to shrink (e.g., because user's attention 7116 is no longer within region 7158 or region 7160). In some embodiments, system function menu indicator 7010 shrinks when user's attention 7116 is outside of both region 7158 and region 7160. In some embodiments, user's attention 7162 (shown as a shaded arrow to distinguish it from user's attention 7116) is within region 7158 but outside region 7160, and system function menu indicator 7010 has begun to shrink (e.g., system function menu indicator 7010 has begun to shrink when user's attention is not directed to a location within region 7160, even if user's attention is still directed to a location within region 7158).

[0269] In some embodiments, the system function menu indicator 7010 shrinks at a continuous rate while the user's attention 7116 is outside of region 7158 (and / or region 7160). In some embodiments, the system function menu indicator 7010 shrinks at a different rate (e.g., faster or slower) compared to the rate at which it expands while the user's attention 7116 is within region 7160. In some embodiments, the system function menu indicator 7010 begins to shrink after the user's attention 7116 is outside of region 7158 (and / or region 7160) for a threshold amount of time (e.g., 0.1, 0.2, 0.5, 1, 2, 5, 10, 30, or 60 seconds), which prevents the system function menu indicator 7010 from shrinking if the user's attention is temporarily redirected from region 7158 (and / or region 7160) (e.g., if the user is momentarily distracted by something in the real world or the virtual / three-dimensional environment). While the user's attention 7116 is outside of region 7158 (and / or region 7160) and before the threshold amount of time has elapsed, the system function menu indicator 7010 remains at the individual size (e.g., the size of the system function menu indicator 7010 when the user's attention 7116 moved away from region 7160). In some embodiments, if the user's attention 7116 moves back to region 7160 before the threshold amount of time has elapsed, the system function menu indicator 7010 resumes expanding.

[0270] In Figure 7AL, user's attention 7116 returns to the location within region 7160. According to some embodiments, while user's attention 7116 remains directed at the location within region 7160, system function menu indicator 7010 continues to expand until it reaches a maximum size (as shown in Figure 7AL, system function menu indicator 7010 has the same size as system function menu indicator 7010 in Figures 7A-7G).

[0271] 7AM, the user's attention is drawn to the (full-size) system function menu indicator 7010, and in response, the computer system 7100 displays the system function menu 7024. In some embodiments, the system function menu indicator 7010 and the system function menu 7024 are similar to and have the same properties and behavior as the system function menu indicator 7010 and the system function menu 7024 described above with reference to FIGS.

[0272] In some embodiments, system function menu indicator 7010 is not displayed (e.g., in any of Figures 7AG-7AM), and computer system 7100 displays system function menu 7024 in response to detecting that user's attention 7116 is directed to a location within region 7158 (e.g., the location occupied by system function menu indicator 7010 in Figure 7AM) or to any location within region 7160 (e.g., and optionally, region 7160 instead has approximately the same size as the full size of system function menu indicator 7010). In some embodiments, system function menu indicator 7010 is displayed (e.g., as described above with reference to Figures 7AG-7AM) if user 7002 has not previously interacted with system function menu indicator 7010 and / or system function menu 7024 (e.g., when system function menu 7024 is initially displayed), and optionally is not displayed again after system function menu 7024 is initially displayed (e.g., to avoid cluttering the display of the computer system with system function menu indicator 7010 when user 7002 already knows how to access system function menu 7024 (e.g., by directing user's attention 7116 to area 7160 and / or the location within area 7160 where system function menu indicator 7010 is shown in Figure 7AM)).

[0273] In some embodiments, if system function menu indicator 701...

Claims

1. A computer system in communication with a first display generating component and one or more input devices, Detecting an occurrence of a first event while a first view of the environment is visible via one or more display generating components; In response to detecting the occurrence of the first event, displaying, via the first display generation component, a first indication of a first notification corresponding to the first event; after displaying, via the first display generation component, the first indication of the first notification corresponding to the first event; pursuant to a determination that a user of the computer system has their attention directed to the first indication within a first threshold amount of time and then moved away from the first indication before a first criterion is met, maintaining display of the first indication for a first duration after the user's attention has moved away from the first indication, and ceasing display of the first indication following expiration of the first duration after the user's attention has moved away from the first indication; in accordance with a determination that the attention of the user of the computer system has not been directed to the first indication within the first threshold amount of time, maintaining the display of the first indication for a second duration, the second duration being different from the first duration, and ceasing the display of the first indication after expiration of the second duration, wherein the first duration and the second duration are non-zero durations.

2. The method of claim 1 , wherein the second duration is longer than the first duration.

3. The method of claim 1 , wherein the occurrence of the first event comprises at least one of receiving an incoming communication request, the occurrence of a change in the state of an application, or the occurrence of a change in the state of the computer system.

4. after displaying, via the first display generation component, the first indication of the first notification corresponding to the first event; 2. The method of claim 1, further comprising: displaying the first notification including first notification content in accordance with a determination that the attention of the user of the computer system is directed to the first indication and the first criteria are met.

5. 5. The method of claim 4, wherein the first notification including the first notification content is displayed concurrently with one or more user interface objects corresponding to a first set of one or more contextual conditions that were satisfied when the user's attention was directed to the first indication.

6. Detecting a first user input that satisfies a second criterion for the first notification while displaying the first notification including the first notification content; 5. The method of claim 4, further comprising: in response to detecting the first user input that satisfies the second criterion, expanding the first notification to display at least a portion of the first notification content and additional content corresponding to the first notification that was not included in the first notification content.

7. 7. The method of claim 6, wherein the second criteria comprises a first criterion that, to be met, requires the user's attention to the first notification to be maintained for at least a second threshold amount of time.

8. The method of claim 6 , wherein the second criteria include a second criterion requiring a user input directed to the first notification to be of a first input type in order to be satisfied.

9. Displaying the first indication of the first notification in response to detecting the occurrence of the first event includes displaying the first indication of the first notification at a first location within the environment, the first location having a first spatial relationship with the first view of the environment; The method comprises: detecting that the attention of the user is directed to the first location within the first view of the environment prior to detecting the occurrence of the first event; and displaying a first user interface object at the first location within the first view of the environment in response to detecting that the user's attention is directed to the first location within the first view of the environment.

10. Displaying the first indication of the first notification in response to detecting the occurrence of the first event includes displaying the first indication of the first notification at a first location within the first view of the environment; The method comprises: detecting that the attention of the user is directed to the first location after ceasing to display the first indication; and displaying a representation of the first notification in response to detecting that the attention of the user is directed to the first location.

11. 11. The method of claim 10, further comprising: in response to detecting that the user's attention is directed to the first location, displaying a first set of one or more user interface objects corresponding to a first set of one or more contextual conditions simultaneously with the representation of the first notification.

12. the environment includes a three-dimensional environment, and displaying the first indication of the first notification in response to detecting the occurrence of the first event includes displaying the first indication of the first notification at a first location within the three-dimensional environment; The method comprises: detecting that the attention of the user is directed to the first location after ceasing to display the first indication of the first notification after expiration of the first duration or the second duration; In response to detecting that the attention of the user is directed to the first location, displaying a representation of the first notification in accordance with a determination that the attention of the user has been directed to the first location within a third threshold amount of time of ceasing to display the first indication of the first notification; and and displaying a second set of one or more user interface objects without displaying the representation of the first notification in accordance with a determination that the user's attention has not been directed to the first location within the third threshold amount of time of ceasing to display the first indication of the first notification.

13. 13. The method of claim 12, wherein the second set of user interface objects includes one or more user interface objects corresponding to a respective set of one or more contextual conditions that are satisfied when the attention of the user is directed to the first location.

14. The method of claim 12 , wherein the second set of user interface objects includes one or more affordances for accessing system functionality of the computer system.

15. detecting a first request to display a notification user interface after ceasing to display the first indication of the first notification after expiration of the first duration or the second duration; 10. The method of claim 1, further comprising: in response to detecting the first request to display the notification user interface, displaying the notification user interface, the notification user interface including a plurality of previously received notifications and the first notification.

16. 16. The method of claim 15, wherein detecting the first request to display the notification user interface comprises detecting user interaction with a system user interface displayed in response to detecting that the user's attention is directed to a discrete region of the first view of the environment.

17. the distinct region of the first view of the environment is located at a first position within the environment having a first spatial relationship to the first view of the environment; The method comprises: Detecting a change in the user's current viewpoint from a first viewpoint corresponding to the first view of the environment to a second viewpoint corresponding to a second view of the environment; updating a currently displayed view of the environment from the first view to the second view of the environment in response to detecting the change in the current viewpoint of the user from the first viewpoint to the second viewpoint; While displaying the second view of the environment, detecting that the attention of the user is directed to a distinct region of the second view of the environment, the distinct region of the second view of the environment having the first spatial relationship to the second view of the environment; and displaying the notification user interface in response to detecting that the user's attention is directed to the distinct region of the second view of the environment.

18. the first event is an event of a first type; the first indication of the first notification corresponding to the first event is displayed at a first position within the environment; The method comprises: Detecting an occurrence of a second event of a second type different from the first type; 10. The method of claim 1, further comprising: in response to detecting the occurrence of the second event, displaying a second indication of the first alert corresponding to the second event at a second position within the environment different from the first position within the environment, the first position being within an area for displaying notifications and the second position being within an area for displaying alerts.

19. ceasing to display the second indication of the first alert corresponding to the second event; and detecting a second request to display a notification user interface after ceasing to display the second indication of the first alert corresponding to the second event; 20. The method of claim 18, comprising: in response to detecting the second request to display the notification user interface, displaying the notification user interface, the notification user interface including one or more notifications corresponding to the first type of event, and the notification user interface not including any alerts corresponding to the second type of event.

20. detecting, while displaying the second indication of the first alert, that the user's attention is directed to a distinct region within the first view of the environment that includes a plurality of affordances for accessing system functionality of the computer system; ceasing to display the second indication for the first alert in response to detecting that the user's attention is directed to the discrete area containing the plurality of affordances for accessing system functionality of the computer system.

21. 20. The method of claim 18, wherein the second indication of the first alert includes one or more selectable options for performing an action corresponding to the first alert or the second event.

22. 1. A computer system comprising: a first display generation component; one or more input devices; one or more processors; a memory storing one or more programs, the one or more programs being configured to be executed by the one or more processors, the one or more programs comprising: Detecting the occurrence of a first event while a first view of the environment is visible via one or more display generating components; In response to detecting the occurrence of the first event, displaying, via the first display generation component, a first indication of a first notification corresponding to the first event; after displaying, via the first display generation component, the first indication of the first notification corresponding to the first event; pursuant to a determination that a user of the computer system has their attention directed to the first indication within a first threshold amount of time and then moved away from the first indication before a first criterion is met, maintaining display of the first indication for a first duration after the user's attention has moved away from the first indication, and ceasing display of the first indication following expiration of the first duration after the user's attention has moved away from the first indication; pursuant to a determination that the attention of the user of the computer system has not been directed to the first indication within the first threshold amount of time, maintaining the display of the first indication for a second duration, the second duration being different from the first duration, and ceasing the display of the first indication after expiration of the second duration, wherein the first duration and the second duration are non-zero durations.

23. 23. A computer system according to claim 22, wherein the one or more programs comprise instructions for carrying out the method of any one of claims 2 to 21.

24. The program, when executed by a computer system including and / or in communication with a first display generating component and one or more input devices, causes the computer system to: detecting an occurrence of a first event while a first view of the environment is visible via one or more display generating components; In response to detecting the occurrence of the first event, displaying, via the first display generation component, a first indication of a first notification corresponding to the first event; after displaying, via the first display generation component, the first indication of the first notification corresponding to the first event; pursuant to a determination that a user of the computer system has their attention directed to the first indication within a first threshold amount of time and then moved away from the first indication before a first criterion is met, maintaining display of the first indication for a first duration after the user's attention has moved away from the first indication, and ceasing display of the first indication following expiration of the first duration after the user's attention has moved away from the first indication; a computer program product that, in accordance with a determination that the attention of the user of the computer system has not been directed to the first indication within the first threshold amount of time, maintains display of the first indication for a second duration, the second duration being different from the first duration, and ceases display of the first indication after expiration of the second duration, the first duration and the second duration being non-zero durations.

25. 25. A computer program according to claim 24, which when executed by the computer system causes the computer system to carry out the method of any one of claims 2 to 21.

Citation Information

Patent Citations

  • Method for calling function in portable terminal and portable terminal using the same

    JP2003298715A

  • Notification of mobile device event

    JP2014197401A

  • Terminal device, control method, and program

    JP2021086460A

  • Information processing device, information processing method, and program

    JP2021096490A

  • Information processing device, information processing method, and program

    US20220180571A1